Index: include/llvm/BinaryFormat/ELFRelocs/AArch64.def =================================================================== --- include/llvm/BinaryFormat/ELFRelocs/AArch64.def +++ include/llvm/BinaryFormat/ELFRelocs/AArch64.def @@ -124,8 +124,11 @@ ELF_RELOC(R_AARCH64_GLOB_DAT, 0x401) ELF_RELOC(R_AARCH64_JUMP_SLOT, 0x402) ELF_RELOC(R_AARCH64_RELATIVE, 0x403) -ELF_RELOC(R_AARCH64_TLS_DTPREL64, 0x404) -ELF_RELOC(R_AARCH64_TLS_DTPMOD64, 0x405) +// 0x404 and 0x405 are now R_AARCH64_TLS_IMPDEF1 and R_AARCH64_TLS_IMPDEF2 +// We follow GNU and define TLS_IMPDEF1 as TLS_DTPMOD64 and TLS_IMPDEF2 as +// TLS_DTPREL64 +ELF_RELOC(R_AARCH64_TLS_DTPMOD64, 0x404) +ELF_RELOC(R_AARCH64_TLS_DTPREL64, 0x405) ELF_RELOC(R_AARCH64_TLS_TPREL64, 0x406) ELF_RELOC(R_AARCH64_TLSDESC, 0x407) ELF_RELOC(R_AARCH64_IRELATIVE, 0x408) Index: test/tools/llvm-readobj/Inputs/relocs.py =================================================================== --- test/tools/llvm-readobj/Inputs/relocs.py +++ test/tools/llvm-readobj/Inputs/relocs.py @@ -710,8 +710,8 @@ R_AARCH64_GLOB_DAT = 0x401 R_AARCH64_JUMP_SLOT = 0x402 R_AARCH64_RELATIVE = 0x403 - R_AARCH64_TLS_DTPREL64 = 0x404 - R_AARCH64_TLS_DTPMOD64 = 0x405 + R_AARCH64_TLS_DTPMOD64 = 0x404 + R_AARCH64_TLS_DTPREL64 = 0x405 R_AARCH64_TLS_TPREL64 = 0x406 R_AARCH64_TLSDESC = 0x407 R_AARCH64_IRELATIVE = 0x408 Index: test/tools/llvm-readobj/reloc-types-elf-aarch64.test =================================================================== --- test/tools/llvm-readobj/reloc-types-elf-aarch64.test +++ test/tools/llvm-readobj/reloc-types-elf-aarch64.test @@ -122,8 +122,8 @@ # CHECK: Type: R_AARCH64_GLOB_DAT (1025) # CHECK: Type: R_AARCH64_JUMP_SLOT (1026) # CHECK: Type: R_AARCH64_RELATIVE (1027) -# CHECK: Type: R_AARCH64_TLS_DTPREL64 (1028) -# CHECK: Type: R_AARCH64_TLS_DTPMOD64 (1029) +# CHECK: Type: R_AARCH64_TLS_DTPMOD64 (1028) +# CHECK: Type: R_AARCH64_TLS_DTPREL64 (1029) # CHECK: Type: R_AARCH64_TLS_TPREL64 (1030) # CHECK: Type: R_AARCH64_TLSDESC (1031) # CHECK: Type: R_AARCH64_IRELATIVE (1032) @@ -382,9 +382,9 @@ - Offset: 0x00000000000001D4 Type: R_AARCH64_RELATIVE - Offset: 0x00000000000001D8 - Type: R_AARCH64_TLS_DTPREL64 - - Offset: 0x00000000000001DC Type: R_AARCH64_TLS_DTPMOD64 + - Offset: 0x00000000000001DC + Type: R_AARCH64_TLS_DTPREL64 - Offset: 0x00000000000001E0 Type: R_AARCH64_TLS_TPREL64 - Offset: 0x00000000000001E4