brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.9 KiB · 17af1bf Raw
80 lines · plain
1# RUN: llvm-mc --triple=aarch64-elf --filetype=obj < %s | \2# RUN:   llvm-objdump -d -r --symbolize-operands --no-show-raw-insn --no-leading-addr - | \3# RUN:   FileCheck %s --match-full-lines4 5# CHECK:      <fn1>:6# CHECK-NEXT:   b <L0>7# CHECK-NEXT:   tbz x0, #0x2c, <L2>8# CHECK-NEXT: <L0>:9# CHECK-NEXT:   b.eq <L1>10# CHECK-NEXT: <L1>:11# CHECK-NEXT:   cbz x1, <L0>12# CHECK-NEXT: <L2>:13# CHECK-NEXT:   nop14# CHECK-NEXT: <L3>:15# CHECK-NEXT:   bl <L3>16# CHECK-NEXT:     R_AARCH64_CALL26 fn217# CHECK-NEXT:   bl <fn2>18# CHECK-NEXT:   adr x0, <L2>19# CHECK-NEXT: <L4>:20# CHECK-NEXT:   adr x1, <L4>21# CHECK-NEXT:     R_AARCH64_ADR_PREL_LO21 fn222# CHECK-NEXT:   adr x2, <fn2>23# CHECK-NEXT:   ldr w0, <L2>24# CHECK-NEXT: <L5>:25# CHECK-NEXT:   ldr w0, <L5>26# CHECK-NEXT:     R_AARCH64_LD_PREL_LO19 fn227# CHECK-NEXT:   ret28# CHECK-NEXT:   nop29# CHECK-NEXT:   nop30# CHECK-NEXT:   nop31# CHECK-EMPTY:32# CHECK-NEXT: <fn2>:33# CHECK-NEXT:   bl <L0>34# CHECK-NEXT:   adrp x3, 0x0 <fn1>35# CHECK-NEXT:     R_AARCH64_ADR_PREL_PG_HI21 fn236# CHECK-NEXT:   add x3, x3, #0x037# CHECK-NEXT:     R_AARCH64_ADD_ABS_LO12_NC fn238# CHECK-NEXT:   adrp x3, 0x0 <fn1>39# CHECK-NEXT:     R_AARCH64_ADR_PREL_PG_HI21 fn240# CHECK-NEXT:   ldr x0, [x3]41# CHECK-NEXT:     R_AARCH64_LDST64_ABS_LO12_NC fn242# CHECK-NEXT:   ret43# CHECK-NEXT:   nop44# CHECK-NEXT:   nop45# CHECK-NEXT: <L0>:46# CHECK-NEXT:   ret47 48    .p2align 449    .global fn150fn1:51    b 0f52    tbz x0, 44, 2f530:  b.eq 1f541:  cbz x1, 0b552:  nop56    bl fn257    bl .Lfn258    adr x0, 2b59    adr x1, fn260    adr x2, .Lfn261    ldr w0, 2b62    ldr w0, fn263    ret64 65    .p2align 466    .global fn267fn2:68.Lfn2: ## Local label for non-interposable call.69    bl .Lfn370    ## In future, we might identify the pairs and symbolize the operands properly.71    adrp x3, fn272    add x3, x3, :lo12:fn273    adrp x3, fn274    ldr x0, [x3, :lo12:fn2]75    ret76 77    .p2align 478.Lfn3: ## Private function79    ret80