SWDEV-429802 - add address sanitizer build option to hip-tests

Change-Id: I5662e1d7a08c81239e043ddc7b48853a414a3556


[ROCm/hip-tests commit: 7cfc4a3664]
Этот коммит содержится в:
Jatin Chaudhary
2023-11-02 15:51:58 +00:00
коммит произвёл Rakesh Roy
родитель 2c41a3c2f4
Коммит 3057d60aec
2 изменённых файлов: 21 добавлений и 8 удалений
+3
Просмотреть файл
@@ -57,3 +57,6 @@ hipcc $HIP_TESTS_DIR/catch/unit/memory/hipPointerGetAttributes.cc -I ./catch/inc
./hipPointerGetAttributes
```
### Building with address sanitizer
To build catch tests with Address Sanitizer options, use the cmake option `-DASAN_BUILD=ON`
+18 -8
Просмотреть файл
@@ -6,6 +6,8 @@ set(CMAKE_CXX_COMPILER_WORKS 1)
project(hiptests)
option(ASAN_BUILD "Option to enable ASAN build" OFF)
# flag to generate standalone exe per src file.
message(STATUS "STANDALONE_TESTS : ${STANDALONE_TESTS}")
@@ -19,15 +21,15 @@ if(WIN32)
endif()
if(HIP_PLATFORM STREQUAL "amd")
if(UNIX AND DEFINED ROCM_PATH)
# Read -DROCM_PATH and set CXX_FLAGS for amd platform only
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --rocm-path=${ROCM_PATH}")
endif()
if(UNIX AND DEFINED ROCM_PATH)
# Read -DROCM_PATH and set CXX_FLAGS for amd platform only
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --rocm-path=${ROCM_PATH}")
endif()
if(DEFINED HIP_PATH)
# Read -DHIP_PATH and set CXX_FLAGS for amd platform only
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --hip-path=${HIP_PATH}")
endif()
if(DEFINED HIP_PATH)
# Read -DHIP_PATH and set CXX_FLAGS for amd platform only
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --hip-path=${HIP_PATH}")
endif()
endif()
# Read -DHIP_PATH
@@ -65,6 +67,14 @@ execute_process(COMMAND ${HIPCONFIG_EXECUTABLE} --version
# enforce c++17
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --std=c++17")
# Address sanitizer options
if(ASAN_BUILD)
message(STATUS "Building catch tests with Address Sanitizer options")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address -shared-libasan -g -gz")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address -shared-libasan -g -gz")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--enable-new-dtags -fuse-ld=lld -fsanitize=address -shared-libasan -g -gz -Wl,--build-id=sha1 -L${ROCM_PATH}/lib/asan")
endif()
string(REPLACE "." ";" VERSION_LIST ${HIP_VERSION})
list(GET VERSION_LIST 0 HIP_VERSION_MAJOR)
list(GET VERSION_LIST 1 HIP_VERSION_MINOR)