[PATCH] D102453: [CMake][ELF] Add -fno-semantic-interposition for GCC and Clang>=13
Luís Ferreira via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 12 11:15:13 PST 2022
ljmf00 added a comment.
This patch makes compilation fail when running with sanitization and debug mode, it seems. Brief log here:
FAILED: lib/libLTO.so.14git
: && /usr/bin/clang++ -fPIC -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -
Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthroug
h -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -fn
o-omit-frame-pointer -O1 -fsanitize=address -fsanitize=undefined -fno-sanitize=vptr,function -fno-sanitize-recover=all -fsanitize-address-use-after-scope -fsa
nitize=fuzzer-no-link -fsanitize-blacklist=/mnt/Workspace/Repos/collab/github/llvm/llvm-project/llvm/utils/sanitizers/ubsan_ignorelist.txt -fdiagnostics-color
-g -Wl,-z,nodelete -fuse-ld=lld -Wl,--gdb-index -Wl,--color-diagnostics -Wl,--version-script,"/mnt/Workspace/Repos/collab/github/llvm/llvm-project/build/
tools/lto/LTO.exports" -shared -Wl,-soname,libLTO.so.14git -o lib/libLTO.so.14git tools/lto/CMakeFiles/LTO.dir/LTODisassembler.cpp.o tools/lto/CMakeFiles/LTO.
dir/lto.cpp.o -Wl,-rpath,"\$ORIGIN/../lib" lib/libLLVM-14git.so && :
ld.lld: error: relocation R_X86_64_PC32 cannot be used against symbol lto_module_is_object_file_for_target; recompile with -fPIC
>>> defined in tools/lto/CMakeFiles/LTO.dir/lto.cpp.o
>>> referenced by lto.cpp:175 (/mnt/Workspace/Repos/collab/github/llvm/llvm-project/llvm/tools/lto/lto.cpp:175)
>>> tools/lto/CMakeFiles/LTO.dir/lto.cpp.o:(lto_module_is_object_file_for_target)
ld.lld: error: relocation R_X86_64_PC32 cannot be used against symbol lto_module_has_objc_category; recompile with -fPIC
>>> defined in tools/lto/CMakeFiles/LTO.dir/lto.cpp.o
>>> referenced by lto.cpp:183 (/mnt/Workspace/Repos/collab/github/llvm/llvm-project/llvm/tools/lto/lto.cpp:183)
>>> tools/lto/CMakeFiles/LTO.dir/lto.cpp.o:(lto_module_has_objc_category)
ld.lld: error: relocation R_X86_64_PC32 cannot be used against symbol lto_module_is_object_file_in_memory_for_target; recompile with -fPIC
>>> defined in tools/lto/CMakeFiles/LTO.dir/lto.cpp.o
>>> referenced by lto.cpp:200 (/mnt/Workspace/Repos/collab/github/llvm/llvm-project/llvm/tools/lto/lto.cpp:200)
>>> tools/lto/CMakeFiles/LTO.dir/lto.cpp.o:(lto_module_is_object_file_in_memory_for_target)
ld.lld: error: relocation R_X86_64_PC32 cannot be used against symbol lto_module_create; recompile with -fPIC
>>> defined in tools/lto/CMakeFiles/LTO.dir/lto.cpp.o
>>> referenced by lto.cpp:208 (/mnt/Workspace/Repos/collab/github/llvm/llvm-project/llvm/tools/lto/lto.cpp:208)
>>> tools/lto/CMakeFiles/LTO.dir/lto.cpp.o:(lto_module_create)
ld.lld: error: relocation R_X86_64_PC32 cannot be used against symbol lto_module_create_from_fd; recompile with -fPIC
>>> defined in tools/lto/CMakeFiles/LTO.dir/lto.cpp.o
>>> referenced by lto.cpp:219 (/mnt/Workspace/Repos/collab/github/llvm/llvm-project/llvm/tools/lto/lto.cpp:219)
>>> tools/lto/CMakeFiles/LTO.dir/lto.cpp.o:(lto_module_create_from_fd)
ld.lld: error: relocation R_X86_64_PC32 cannot be used against symbol lto_module_create_from_fd_at_offset; recompile with -fPIC
>>> defined in tools/lto/CMakeFiles/LTO.dir/lto.cpp.o
>>> referenced by lto.cpp:233 (/mnt/Workspace/Repos/collab/github/llvm/llvm-project/llvm/tools/lto/lto.cpp:233)
>>> tools/lto/CMakeFiles/LTO.dir/lto.cpp.o:(lto_module_create_from_fd_at_offset)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D102453/new/
https://reviews.llvm.org/D102453
More information about the llvm-commits
mailing list