list(APPEND gpu_list gfx908 gfx90a gfx940 gfx941 gfx942)
set(target 0)
foreach(gpu IN LISTS GPU_TARGETS)
 if(gpu IN_LIST gpu_list AND target EQUAL 0)
   add_custom_target(example_splitK_gemm_xdl)

  add_example_executable(example_splitK_gemm_xdl_fp32 splitK_gemm_xdl_fp32.cpp)
  if(result EQUAL 0)
    add_dependencies(example_splitK_gemm_xdl example_splitK_gemm_xdl_fp32)
   endif()
  add_example_executable(example_splitK_gemm_xdl_fp16 splitK_gemm_xdl_fp16.cpp)
  if(result EQUAL 0)
    add_dependencies(example_splitK_gemm_xdl example_splitK_gemm_xdl_fp16)
   endif()
  add_example_executable(example_splitK_gemm_xdl_bf16 splitK_gemm_xdl_bf16.cpp)
  if(result EQUAL 0)
    add_dependencies(example_splitK_gemm_xdl example_splitK_gemm_xdl_bf16)
   endif()
  add_example_executable(example_splitK_gemm_xdl_int8 splitK_gemm_xdl_int8.cpp)
  if(result EQUAL 0)
    add_dependencies(example_splitK_gemm_xdl example_splitK_gemm_xdl_int8)
   endif()
   if(USE_BITINT_EXTENSION_INT4)
      add_example_executable(example_splitK_gemm_xdl_int4 splitK_gemm_xdl_int4.cpp)
      if(result EQUAL 0)
        add_dependencies(example_splitK_gemm_xdl example_splitK_gemm_xdl_int4)
      endif()
   endif()
   set(target 1)
 endif()
endforeach()
