Index: llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp =================================================================== --- llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp +++ llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp @@ -34,7 +34,9 @@ case LLVMDisassembler_VariantKind_ARM64_GOTPAGEOFF: return MCSymbolRefExpr::VK_GOTPAGEOFF; case LLVMDisassembler_VariantKind_ARM64_TLVP: + return MCSymbolRefExpr::VK_TLVPPAGE; case LLVMDisassembler_VariantKind_ARM64_TLVOFF: + return MCSymbolRefExpr::VK_TLVPPAGEOFF; default: llvm_unreachable("bad LLVMDisassembler_VariantKind"); } Index: llvm/test/MC/AArch64/arm64-tls-modifiers-darwin.s =================================================================== --- llvm/test/MC/AArch64/arm64-tls-modifiers-darwin.s +++ llvm/test/MC/AArch64/arm64-tls-modifiers-darwin.s @@ -1,5 +1,4 @@ ; RUN: llvm-mc -triple=arm64-apple-ios7.0 %s -o - | FileCheck %s -; RUN: llvm-mc -triple=arm64-apple-ios7.0 -filetype=obj %s -o - | llvm-objdump -r - | FileCheck %s --check-prefix=CHECK-OBJ adrp x2, _var@TLVPPAGE ldr x0, [x15, _var@TLVPPAGEOFF] @@ -7,7 +6,3 @@ ; CHECK: adrp x2, _var@TLVPPAG ; CHECK: ldr x0, [x15, _var@TLVPPAGEOFF] ; CHECK: add x30, x0, _var@TLVPPAGEOFF - -; CHECK-OBJ: 8 ARM64_RELOC_TLVP_LOAD_PAGEOFF12 _var -; CHECK-OBJ: 4 ARM64_RELOC_TLVP_LOAD_PAGEOFF12 _var -; CHECK-OBJ: 0 ARM64_RELOC_TLVP_LOAD_PAGE21 _var Index: llvm/test/tools/llvm-objdump/MachO/disassemble-arm64-tlv-modifers.test =================================================================== --- /dev/null +++ llvm/test/tools/llvm-objdump/MachO/disassemble-arm64-tlv-modifers.test @@ -0,0 +1,18 @@ +; %p/Inputs/macho-tlv.o was created with +; `llvm-mc -triple=arm64-apple-ios7.0 -filetype=obj tlv.s` with this tlv.s: +; adrp x2, _var@TLVPPAGE +; ldr x0, [x15, _var@TLVPPAGEOFF] +; add x30, x0, _var@TLVPPAGEOFF + +; RUN: llvm-objdump -r %p/Inputs/macho-tlv.o \ +; RUN: | FileCheck %s --check-prefix=CHECK-OBJ +; RUN: llvm-otool -tV %p/Inputs/macho-tlv.o \ +; RUN: | FileCheck %s --check-prefix=CHECK-DIS + +; CHECK-OBJ: 8 ARM64_RELOC_TLVP_LOAD_PAGEOFF12 _var +; CHECK-OBJ: 4 ARM64_RELOC_TLVP_LOAD_PAGEOFF12 _var +; CHECK-OBJ: 0 ARM64_RELOC_TLVP_LOAD_PAGE21 _var + +; CHECK-DIS: 0000000000000000 adrp x2, _var@TLVPPAGE +; CHECK-DIS-NEXT: 0000000000000004 ldr x0, [x15, _var@TLVPPAGEOFF] +; CHECK-DIS-NEXT: 0000000000000008 add x30, x0, _var@TLVPPAGEOFF