forked from OSchip/llvm-project
[PR] Update skipRelocationProcess
Summary: The ELF::R_AARCH64_TLSDESC_LD64_LO12 and ELF::R_AARCH64_TLSDESC_ADR_PAGE21 relocations might also be relaxed to mov instructions, handle these cases Vladislav Khmelevsky, Advanced Software Technology Lab, Huawei (cherry picked from FBD31353063)
This commit is contained in:
parent
c637fcf24e
commit
848f07792c
|
@ -178,11 +178,13 @@ bool skipRelocationProcessAArch64(uint64_t Type, uint64_t Contents) {
|
|||
// to initial exec), thus changing the instructions. The static
|
||||
// relocations might be invalid at this point and we might no
|
||||
// need to proccess these relocations anymore.
|
||||
// More information could be find by searching
|
||||
// More information could be found by searching
|
||||
// elfNN_aarch64_tls_relax in bfd
|
||||
switch (Type) {
|
||||
default:
|
||||
break;
|
||||
case ELF::R_AARCH64_TLSDESC_LD64_LO12:
|
||||
case ELF::R_AARCH64_TLSDESC_ADR_PAGE21:
|
||||
case ELF::R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC:
|
||||
case ELF::R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21: {
|
||||
if (IsMov(Contents))
|
||||
|
|
|
@ -24,7 +24,6 @@ int main() {
|
|||
}
|
||||
|
||||
// REQUIRES: system-linux
|
||||
// XFAIL: *
|
||||
// RUN: %clang %cflags -no-pie %s -o %t.exe -Wl,-q \
|
||||
// RUN: -Wl,--unresolved-symbols=ignore-all \
|
||||
// RUN: -target aarch64-linux -fuse-ld=ld.lld \
|
||||
|
|
Loading…
Reference in New Issue