ab3dc9ccac
Change-Id: Iebc9766f71f20148d2d4b6e08de7745111393a97
81 linhas
3.2 KiB
CMake
81 linhas
3.2 KiB
CMake
# Common Tests - Test independent of all platforms
|
|
set(TEST_SRC
|
|
floatMath.cc
|
|
anyAll.cc
|
|
ballot.cc
|
|
clz.cc
|
|
ffs.cc
|
|
funnelshift.cc
|
|
brev.cc
|
|
popc.cc
|
|
ldg.cc
|
|
threadfence_system.cc
|
|
syncthreadsand.cc
|
|
syncthreadscount.cc
|
|
syncthreadsor.cc
|
|
)
|
|
|
|
# AMD only tests
|
|
set(AMD_TEST_SRC
|
|
unsafeAtomicAdd.cc
|
|
vectorTypesDevice.cc
|
|
mbcnt.cc
|
|
bitExtract.cc
|
|
bitInsert.cc
|
|
floatTM.cc
|
|
)
|
|
set(AMD_ARCH_SPEC_TEST_SRC
|
|
AtomicAdd_Coherent_withunsafeflag.cc
|
|
AtomicAdd_Coherent_withoutflag.cc
|
|
AtomicAdd_Coherent_withnoUnsafeflag.cc
|
|
AtomicAdd_NonCoherent_withoutflag.cc
|
|
AtomicAdd_NonCoherent_withnoUnsafeflag.cc
|
|
AtomicAdd_NonCoherent_withunsafeflag.cc
|
|
BuiltIns_fmax.cc
|
|
BuiltIns_fmin.cc
|
|
BuiltIns_fadd.cc
|
|
unsafeAtomicAdd_RTC.cc
|
|
unsafeAtomicAdd_Coherent_withunsafeflag.cc
|
|
unsafeAtomicAdd_Coherent_withoutflag.cc
|
|
unsafeAtomicAdd_Coherent_withnounsafeflag.cc
|
|
unsafeAtomicAdd_NonCoherent_withoutflag.cc
|
|
unsafeAtomicAdd_NonCoherent_withnounsafeflag.cc
|
|
unsafeAtomicAdd_NonCoherent_withunsafeflag.cc
|
|
)
|
|
|
|
if(HIP_PLATFORM MATCHES "amd")
|
|
if (DEFINED OFFLOAD_ARCH_STR)
|
|
string(FIND ${OFFLOAD_ARCH_STR} "gfx90a" ARCH_CHECK)
|
|
elseif(DEFINED $ENV{HCC_AMDGPU_TARGET})
|
|
string(FIND $ENV{HCC_AMDGPU_TARGET} "gfx90a" ARCH_CHECK)
|
|
else()
|
|
set(ARCH_CHECK -1)
|
|
endif()
|
|
set(TEST_SRC ${TEST_SRC} ${AMD_TEST_SRC})
|
|
set_source_files_properties(floatTM.cc PROPERTIES COMPILE_FLAGS -std=c++17)
|
|
if(${ARCH_CHECK} GREATER_EQUAL 0)
|
|
set(TEST_SRC ${TEST_SRC} ${AMD_ARCH_SPEC_TEST_SRC})
|
|
set_source_files_properties(AtomicAdd_Coherent_withunsafeflag.cc PROPERTIES COMPILE_OPTIONS "-munsafe-fp-atomics")
|
|
set_source_files_properties(AtomicAdd_NonCoherent_withunsafeflag.cc PROPERTIES COMPILE_OPTIONS "-munsafe-fp-atomics")
|
|
set_source_files_properties(AtomicAdd_Coherent_withnoUnsafeflag.cc PROPERTIES COMPILE_OPTIONS "-mno-unsafe-fp-atomics")
|
|
set_source_files_properties(AtomicAdd_NonCoherent_withnoUnsafeflag.cc PROPERTIES COMPILE_OPTIONS "-mno-unsafe-fp-atomics")
|
|
set_source_files_properties(unsafeAtomicAdd_Coherent_withunsafeflag.cc PROPERTIES COMPILE_OPTIONS "-munsafe-fp-atomics")
|
|
set_source_files_properties(unsafeAtomicAdd_NonCoherent_withunsafeflag.cc PROPERTIES COMPILE_OPTIONS "-munsafe-fp-atomics")
|
|
set_source_files_properties(unsafeAtomicAdd_Coherent_withnounsafeflag.cc PROPERTIES COMPILE_OPTIONS "-mno-unsafe-fp-atomics")
|
|
set_source_files_properties(unsafeAtomicAdd_NonCoherent_withnounsafeflag.cc PROPERTIES COMPILE_OPTIONS "-mno-unsafe-fp-atomics")
|
|
file(GLOB AtomicAdd_files *AtomicAdd_*_*.cc)
|
|
set_property(SOURCE ${AtomicAdd_files} PROPERTY COMPILE_FLAGS --save-temps)
|
|
file(GLOB unsafeAtomicAdd_files *unsafeAtomicAdd_*_*.cc)
|
|
set_property(SOURCE ${unsafeAtomicAdd_files} PROPERTY COMPILE_FLAGS --save-temps)
|
|
endif()
|
|
hip_add_exe_to_target(NAME UnitDeviceTests
|
|
TEST_SRC ${TEST_SRC}
|
|
TEST_TARGET_NAME build_tests
|
|
LINKER_LIBS hiprtc)
|
|
elseif(HIP_PLATFORM MATCHES "nvidia")
|
|
hip_add_exe_to_target(NAME UnitDeviceTests
|
|
TEST_SRC ${TEST_SRC}
|
|
TEST_TARGET_NAME build_tests
|
|
COMPILE_OPTIONS --Wno-deprecated-declarations)
|
|
endif()
|