add_executable(tile_example_grouped_flatmm EXCLUDE_FROM_ALL grouped_flatmm.cpp)

set(EXAMPLE_GROUPED_FLATMM_COMPILE_OPTIONS)
# list(APPEND EXAMPLE_GROUPED_FLATMM_COMPILE_OPTIONS -Wno-undefined-func-template -Wno-float-equal)
list(APPEND EXAMPLE_GROUPED_FLATMM_COMPILE_OPTIONS -Wno-nrvo -Wno-unused-variable -Wno-unused-parameter -Wno-unused-local-typedef)
if(CK_USE_OCP_FP8)
    list(APPEND EXAMPLE_GROUPED_FLATMM_COMPILE_OPTIONS -DCK_TILE_USE_OCP_FP8)
endif()
list(APPEND EXAMPLE_GROUPED_FLATMM_COMPILE_OPTIONS --save-temps)
list(APPEND EXAMPLE_GROUPED_FLATMM_COMPILE_OPTIONS "SHELL: -mllvm -greedy-reverse-local-assignment=1 -mllvm --slp-threshold=-32 -mllvm -enable-noalias-to-md-conversion=0")
#list(APPEND EXAMPLE_GROUPED_FLATMM_COMPILE_OPTIONS "SHELL: -mllvm -greedy-reverse-local-assignment=1 -mllvm --slp-threshold=-32 -mllvm --disable-schedmodel-in-sched-mi=1 -mllvm --amdgpu-sched-strategy=gcn-iterative-max-occupancy-experimental -mllvm --misched-bottomup=1")
target_compile_options(tile_example_grouped_flatmm PRIVATE ${EXAMPLE_GROUPED_FLATMM_COMPILE_OPTIONS})
