[llvm-branch-commits] [llvm-objdump] Support --symbolize-operand on AArch64 (PR #145009)
James Henderson via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Mon Jun 23 00:35:37 PDT 2025
================
@@ -0,0 +1,42 @@
+# RUN: yaml2obj %s -o %t
+# RUN: llvm-objdump %t -d --symbolize-operands --no-show-raw-insn --no-leading-addr | \
+# RUN: FileCheck %s --match-full-lines
+# RUN: llvm-objdump %t -d --symbolize-operands --no-show-raw-insn --no-leading-addr --adjust-vma=0x2000 | \
+# RUN: FileCheck %s --match-full-lines
+
+## Expect to find the branch labels and global variable name.
+# CHECK: <_start>:
+# CHECK-NEXT: ldr x0, <symbol>
+# CHECK-NEXT: <L0>:
+# CHECK-NEXT: adrp x1, 0x{{[68]}}000 <symbol+0xff4>
+# CHECK-NEXT: adr x2, <symbol>
+# CHECK-NEXT: cmp x1, x2
+# CHECK-NEXT: b.eq <L1>
+# CHECK-NEXT: b <L0>
+# CHECK-NEXT: <L1>:
+# CHECK-NEXT: cbz x2, <L0>
+# CHECK-NEXT: ret
+
+--- !ELF
+FileHeader:
+ Class: ELFCLASS64
+ Data: ELFDATA2LSB
+ Type: ET_EXEC
+ Machine: EM_AARCH64
+Sections:
+ - Name: .text
+ Type: SHT_PROGBITS
+ Address: 0x4000
+ Flags: [SHF_ALLOC, SHF_EXECINSTR]
+ Content: '60800058010000d0228000103f0002eb40000054fcffff1762ffffb4c0035fd6'
----------------
jh7370 wrote:
Assuming that using llvm-mc and relying on relocations is not sufficient to test the desired behaviour, I think this is mostly okay, as it's not an especially long block, but I do think you need to describe somewhere what these instructions map to or in other words, how to regenerate this hex.
https://github.com/llvm/llvm-project/pull/145009
More information about the llvm-branch-commits
mailing list