if((source MATCHES "_fp16" OR source MATCHES "_f16") AND NOT "fp16" IN_LIST DTYPES)
if(type MATCHES "fp16")
set(test 1)
set(type1 "_f16")
endif()
elseif(type MATCHES "fp32")
if((source MATCHES "_fp32" OR source MATCHES "_f32") AND NOT "fp32" IN_LIST DTYPES)
set(type1 "_f32")
set(test 1)
elseif(type MATCHES "fp8")
endif()
set(type1 "_f8")
if((source MATCHES "_fp64" OR source MATCHES "_f64") AND NOT "fp64" IN_LIST DTYPES)
elseif(type MATCHES "bf16")
set(test 1)
set(type1 "_b16")
endif()
elseif(type MATCHES "fp64")
if((source MATCHES "_fp8" OR source MATCHES "_f8") AND NOT "fp8" IN_LIST DTYPES)
set(type1 "_f64")
set(test 1)
elseif(type MATCHES "int8")
endif()
set(type1 "_i8")
if((source MATCHES "_bf8" OR source MATCHES "_bf8") AND NOT "bf8" IN_LIST DTYPES)
endif()
set(test 1)
if("${source}" MATCHES "${type}" OR "${source}" MATCHES "${type1}")
endif()
#if filename matches any selected type, exit type loop and do no exclude the file from the list
if((source MATCHES "_bf16" OR source MATCHES "_b16") AND NOT "bf16" IN_LIST DTYPES)
set(test 0)
set(test 1)
break()
endif()
elseif((source MATCHES "fp8" OR source MATCHES "fp32" OR source MATCHES "fp64" OR source MATCHES "bf16" OR source MATCHES "int8" OR source MATCHES "fp16" OR
if((source MATCHES "_int8" OR source MATCHES "_i8") AND NOT "int8" IN_LIST DTYPES)
source MATCHES "_f8" OR source MATCHES "_f32" OR source MATCHES "_f64" OR source MATCHES "_i8" OR source MATCHES "_f16" OR source MATCHES "_b16") AND
set(test 1)
NOT(source MATCHES type OR source MATCHES type1))
endif()
#if filename contains a type which doesn't match any selected type, mark it for removal
if(test EQUAL 1)
set(test 1)
message("removing test ${source} ")
list(REMOVE_ITEM ARGN "${source}")
endif()
endif()
endforeach()
endforeach()
if(test EQUAL 1)
endif()
message("removing test ${source} ")
foreach(source IN LISTS ARGN)
list(REMOVE_ITEM ARGN "${source}")
endif()
endforeach()
endif()
foreach(source IN LISTS ARGN)
if(NOT DEFINED DL_KERNELS AND source MATCHES "_dl")
if(NOT DEFINED DL_KERNELS AND source MATCHES "_dl")
if((source MATCHES "_fp16" OR source MATCHES "_f16") AND NOT "fp16" IN_LIST DTYPES)
if(type MATCHES "fp16")
set(test 1)
set(type1 "_f16")
endif()
elseif(type MATCHES "fp32")
if((source MATCHES "_fp32" OR source MATCHES "_f32") AND NOT "fp32" IN_LIST DTYPES)
set(type1 "_f32")
set(test 1)
elseif(type MATCHES "fp8")
endif()
set(type1 "_f8")
if((source MATCHES "_fp64" OR source MATCHES "_f64") AND NOT "fp64" IN_LIST DTYPES)
elseif(type MATCHES "bf16")
set(test 1)
set(type1 "_b16")
endif()
elseif(type MATCHES "fp64")
if((source MATCHES "_fp8" OR source MATCHES "_f8") AND NOT "fp8" IN_LIST DTYPES)
set(type1 "_f64")
set(test 1)
elseif(type MATCHES "int8")
endif()
set(type1 "_i8")
if((source MATCHES "_bf8" OR source MATCHES "_bf8") AND NOT "bf8" IN_LIST DTYPES)
endif()
set(test 1)
if("${source}" MATCHES "${type}" OR "${source}" MATCHES "${type1}")
endif()
#if filename matches any selected type, exit type loop and do no exclude the file from the list
if((source MATCHES "_bf16" OR source MATCHES "_b16") AND NOT "bf16" IN_LIST DTYPES)
set(test 0)
set(test 1)
break()
endif()
elseif((source MATCHES "fp8" OR source MATCHES "fp32" OR source MATCHES "fp64" OR source MATCHES "bf16" OR source MATCHES "int8" OR source MATCHES "fp16" OR
if((source MATCHES "_int8" OR source MATCHES "_i8") AND NOT "int8" IN_LIST DTYPES)
source MATCHES "_f8" OR source MATCHES "_f32" OR source MATCHES "_f64" OR source MATCHES "_i8" OR source MATCHES "_f16" OR source MATCHES "_b16") AND
set(test 1)
NOT(source MATCHES type OR source MATCHES type1))
endif()
#if filename contains a type which doesn't match any selected type, mark it for removal
if(test EQUAL 1)
set(test 1)
message("removing gtest ${source} ")
list(REMOVE_ITEM ARGN "${source}")
endif()
endif()
endforeach()
endforeach()
if(test EQUAL 1)
message("removing gtest ${source} ")
list(REMOVE_ITEM ARGN "${source}")
endif()
endforeach()
endif()
endif()
foreach(source IN LISTS ARGN)
foreach(source IN LISTS ARGN)
if(NOT DEFINED DL_KERNELS AND source MATCHES "_dl")
if(NOT DEFINED DL_KERNELS AND source MATCHES "_dl")