brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.6 KiB · d318ea0 Raw
68 lines · yaml
1# RUN: yaml2obj %s -o %t2# RUN: llvm-objdump %t -d --symbolize-operands --no-show-raw-insn --no-leading-addr | \3# RUN:   FileCheck %s --match-full-lines -DABS_ADRP_VAL=0x60004# RUN: llvm-objdump %t -d --symbolize-operands --no-show-raw-insn --no-leading-addr --adjust-vma=0x2000 | \5# RUN:   FileCheck %s --match-full-lines -DABS_ADRP_VAL=0x80006 7## Expect to find the branch labels and global variable name.8# CHECK:      <_start>:9# CHECK-NEXT:   ldr x0, <symbol>10# CHECK-NEXT: <L0>:11# CHECK-NEXT:   adrp x1, [[ABS_ADRP_VAL]] <symbol+0xff4>12# CHECK-NEXT:   adr x2, <symbol>13# CHECK-NEXT:   cmp x1, x214# CHECK-NEXT:   b.eq <L1>15# CHECK-NEXT:   b <L0>16# CHECK-NEXT: <L1>:17# CHECK-NEXT:   cbz x2, <L0>18# CHECK-NEXT:   ret19 20## Machine code generated with:21# llvm-mc --arch=aarch64 --filetype=obj -o tmp.o <<EOF22#   .text23#   .p2align 1424#   .globl .start25# _start:26#   ldr x0, symbol27# 1:28#   adrp x1, symbol + 0x100029#   adr x2, symbol30#   cmp x1, x231#   b.eq 2f32#   b 1b33# 2:34#   cbz x2, 1b35#   ret36#37#   .data38#   .p2align 1239#   .skip 1240# symbol:41# EOF42# ld.lld -shared --nmagic -o tmp.so tmp.o43# llvm-objdump -s tmp.so --section=.text44 45--- !ELF46FileHeader:47  Class:   ELFCLASS6448  Data:    ELFDATA2LSB49  Type:    ET_EXEC50  Machine: EM_AARCH6451Sections:52  - Name:    .text53    Type:    SHT_PROGBITS54    Address: 0x400055    Flags:   [SHF_ALLOC, SHF_EXECINSTR]56    Content: '60800058010000d0228000103f0002eb40000054fcffff1762ffffb4c0035fd6'57  - Name:    .data58    Type:    SHT_PROGBITS59    Flags:   [SHF_ALLOC, SHF_WRITE]60    Address: 0x500061Symbols:62  - Name:    _start63    Section: .text64    Value:   0x400065  - Name:    symbol66    Section: .data67    Value:   0x500c68