• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// REQUIRES: aarch64
2// RUN: llvm-mc -filetype=obj -triple=aarch64-unknown-freebsd %s -o %t.o
3// RUN: ld.lld %t.o -o %t.so -shared
4// RUN: llvm-readobj -r %t.so | FileCheck %s
5
6.p2align 4
7  adr     x8, .Lfoo                 // R_AARCH64_ADR_PREL_LO21
8  adrp    x8, .Lfoo                 // R_AARCH64_ADR_PREL_PG_HI21
9  strb    w9, [x8, :lo12:.Lfoo]     // R_AARCH64_LDST8_ABS_LO12_NC
10  ldr     h17, [x19, :lo12:.Lfoo]   // R_AARCH64_LDST16_ABS_LO12_NC
11  ldr     w0, [x8, :lo12:.Lfoo]     // R_AARCH64_LDST32_ABS_LO12_NC
12  ldr     x0, [x8, :lo12:.Lfoo]     // R_AARCH64_LDST64_ABS_LO12_NC
13  ldr     q20, [x19, #:lo12:.Lfoo]  // R_AARCH64_LDST128_ABS_LO12_NC
14  add     x0, x0, :lo12:.Lfoo       // R_AARCH64_ADD_ABS_LO12_NC
15  bl      .Lfoo                     // R_AARCH64_CALL26
16  b       .Lfoo                     // R_AARCH64_JUMP26
17  beq     .Lfoo                     // R_AARCH64_CONDBR19
18.Lbranch:
19  tbz     x1, 7, .Lbranch           // R_AARCH64_TSTBR14
20.data
21.Lfoo:
22
23.rodata
24.long .Lfoo - .
25.xword .Lfoo - .                    // R_AARCH64_PREL64
26// CHECK:      Relocations [
27// CHECK-NEXT: ]
28