Skip to content

Commit e305dcc

Browse files
CaseySmalleyDanielKristofKiss
authored andcommitted
Do not link asan_rtl_x86_64.S for non x86_64 platforms.
Do not link asan_rtl_x86_64.S for non x86_64 platforms. Prior to this CL asan_rtl_x86_64.S would be always be linked when building compiler-rt for non x86_64 platforms, this normally isn't an issue since at that link time is an empty file anyway. When attempting to link a Aarch64 program with branch protection enabled with the address sanitizer. E.g. ``` clang --target=aarch64 \ -fsanitize=address \ -mbranch-protection=standard \ -Wl,-z,force-bti -o test \ test.cc ``` Results in the linking error from the sections generated from the empty asan_rtl_x86_64.S owed to missing a .note.gnu.property Also see [[ https://bugs.chromium.org/p/chromium/issues/detail?id=1427165 | https://bugs.chromium.org/p/chromium/issues/detail?id=1427165 ]] Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D149957
1 parent 3204740 commit e305dcc

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

compiler-rt/lib/asan/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ set(ASAN_STATIC_SOURCES
4646
asan_rtl_static.cpp
4747
)
4848

49-
if (NOT WIN32 AND NOT APPLE)
49+
if (ASAN_SUPPORTED_ARCH STREQUAL "x86_64" AND NOT WIN32 AND NOT APPLE)
5050
list(APPEND ASAN_STATIC_SOURCES
5151
asan_rtl_x86_64.S
5252
)

0 commit comments

Comments
 (0)