diff options
author | Fangrui Song <i@maskray.me> | 2022-02-26 04:41:49 +0000 |
---|---|---|
committer | Fangrui Song <i@maskray.me> | 2022-02-26 04:41:49 +0000 |
commit | 71c4b8dfe1dd7c20242d303cd33cc022b7af9331 (patch) | |
tree | 80a4ab9012811880a868550962a3701620e51ba1 /libcxx/include/__algorithm/replace.h | |
parent | 9d7001eba9c4cb311e03cd8cdc231f9e579f2d0f (diff) | |
download | llvm-71c4b8dfe1dd7c20242d303cd33cc022b7af9331.zip llvm-71c4b8dfe1dd7c20242d303cd33cc022b7af9331.tar.gz llvm-71c4b8dfe1dd7c20242d303cd33cc022b7af9331.tar.bz2 |
[crt][test] Add -no-pie to avoid wacky linking with crt1.o if (musl || CLANG_DEFAULT_PIE_ON_LINUX)
This works with glibc crt1.o (its crt1.o is essentially Scrt1.o plus (if static
PIE is supported for the arch) _dl_relocate_static_pie) but looks wacky.
musl crt1.o is not built with an explicit -fno-pic/-fpie/-fpic. If it was built
with a non-default-pie GCC/Clang, the linker might complain about absolute
relocations referencing _init/_fini for the -pie link:
```
ld: error: relocation R_X86_64_32 cannot be used against symbol '_fini'; recompile with -fPIC
>>> defined in obj/crt/crt1.o
>>> referenced by crt1.c
>>> obj/crt/crt1.o:(_start_c)
```
Diffstat (limited to 'libcxx/include/__algorithm/replace.h')
0 files changed, 0 insertions, 0 deletions