xref: /llvm-project/bolt/test/RISCV/reloc-pcrel.s (revision ab14eb23b6b4939cefa01f8cb16d7540f9686144)
1// RUN: %clang %cflags -o %t %s
2// RUN: llvm-bolt --print-cfg --print-only=_start -o %t.null %t \
3// RUN:    | FileCheck %s
4
5  .data
6  .globl d
7  .p2align 3
8d:
9  .dword 0
10
11  .text
12  .globl _start
13  .p2align 1
14// CHECK: Binary Function "_start" after building cfg {
15_start:
16  nop // Here to not make the _start and .Ltmp0 symbols coincide
17// CHECK: auipc t0, %pcrel_hi(d) # Label: .Ltmp0
18// CHECK-NEXT: ld t0, %pcrel_lo(.Ltmp0)(t0)
19  ld t0, d
20// CHECK-NEXT: auipc t1, %pcrel_hi(d) # Label: .Ltmp1
21// CHECK-NEXT: sd t0, %pcrel_lo(.Ltmp1)(t1)
22  sd t0, d, t1
23  ret
24  .size _start, .-_start
25