annotate lld/test/ELF/riscv-ifunc-nonpreemptible.s @ 173:0572611fdcc8 llvm10 llvm12

reorgnization done
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 11:55:54 +0900
parents 1d019706d866
children 2e18cbf3894f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
anatofuz
parents:
diff changeset
1 # REQUIRES: riscv
anatofuz
parents:
diff changeset
2 # RUN: llvm-mc -filetype=obj -triple=riscv32 %s -o %t.32.o
anatofuz
parents:
diff changeset
3 # RUN: ld.lld -pie %t.32.o -o %t.32
anatofuz
parents:
diff changeset
4 # RUN: llvm-readobj -r %t.32 | FileCheck --check-prefix=RELOC32 %s
anatofuz
parents:
diff changeset
5 # RUN: llvm-readelf -s %t.32 | FileCheck --check-prefix=SYM32 %s
anatofuz
parents:
diff changeset
6 # RUN: llvm-objdump -d --no-show-raw-insn %t.32 | FileCheck --check-prefix=DIS32 %s
anatofuz
parents:
diff changeset
7
anatofuz
parents:
diff changeset
8 # RUN: llvm-mc -filetype=obj -triple=riscv64 %s -o %t.64.o
anatofuz
parents:
diff changeset
9 # RUN: ld.lld -pie %t.64.o -o %t.64
anatofuz
parents:
diff changeset
10 # RUN: llvm-readobj -r %t.64 | FileCheck --check-prefix=RELOC64 %s
anatofuz
parents:
diff changeset
11 # RUN: llvm-readelf -s %t.64 | FileCheck --check-prefix=SYM64 %s
anatofuz
parents:
diff changeset
12 # RUN: llvm-objdump -d --no-show-raw-insn %t.64 | FileCheck --check-prefix=DIS64 %s
anatofuz
parents:
diff changeset
13
anatofuz
parents:
diff changeset
14 # RELOC32: .rela.dyn {
anatofuz
parents:
diff changeset
15 # RELOC32-NEXT: 0x3218 R_RISCV_IRELATIVE - 0x117C
anatofuz
parents:
diff changeset
16 # RELOC32-NEXT: }
anatofuz
parents:
diff changeset
17
anatofuz
parents:
diff changeset
18 # SYM32: 0001190 0 FUNC GLOBAL DEFAULT {{.*}} func
anatofuz
parents:
diff changeset
19
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
20 # DIS32: <_start>:
150
anatofuz
parents:
diff changeset
21 # DIS32-NEXT: 1180: auipc a0, 0
anatofuz
parents:
diff changeset
22 # DIS32-NEXT: addi a0, a0, 16
anatofuz
parents:
diff changeset
23 # DIS32: Disassembly of section .iplt:
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
24 # DIS32: <func>:
150
anatofuz
parents:
diff changeset
25 ## 32-bit: &.got.plt[func]-. = 0x3218-0x1190 = 4096*2+136
anatofuz
parents:
diff changeset
26 # DIS32-NEXT: 1190: auipc t3, 2
anatofuz
parents:
diff changeset
27 # DIS32-NEXT: lw t3, 136(t3)
anatofuz
parents:
diff changeset
28 # DIS32-NEXT: jalr t1, t3
anatofuz
parents:
diff changeset
29 # DIS32-NEXT: nop
anatofuz
parents:
diff changeset
30
anatofuz
parents:
diff changeset
31 # RELOC64: .rela.dyn {
anatofuz
parents:
diff changeset
32 # RELOC64-NEXT: 0x3370 R_RISCV_IRELATIVE - 0x1260
anatofuz
parents:
diff changeset
33 # RELOC64-NEXT: }
anatofuz
parents:
diff changeset
34
anatofuz
parents:
diff changeset
35 # SYM64: 000000000001270 0 FUNC GLOBAL DEFAULT {{.*}} func
anatofuz
parents:
diff changeset
36
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
37 # DIS64: <_start>:
150
anatofuz
parents:
diff changeset
38 # DIS64-NEXT: 1264: auipc a0, 0
anatofuz
parents:
diff changeset
39 # DIS64-NEXT: addi a0, a0, 12
anatofuz
parents:
diff changeset
40 # DIS64: Disassembly of section .iplt:
173
0572611fdcc8 reorgnization done
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 150
diff changeset
41 # DIS64: <func>:
150
anatofuz
parents:
diff changeset
42 ## 64-bit: &.got.plt[func]-. = 0x3370-0x1270 = 4096*2+256
anatofuz
parents:
diff changeset
43 # DIS64-NEXT: 1270: auipc t3, 2
anatofuz
parents:
diff changeset
44 # DIS64-NEXT: ld t3, 256(t3)
anatofuz
parents:
diff changeset
45 # DIS64-NEXT: jalr t1, t3
anatofuz
parents:
diff changeset
46 # DIS64-NEXT: nop
anatofuz
parents:
diff changeset
47
anatofuz
parents:
diff changeset
48 .text
anatofuz
parents:
diff changeset
49 .globl func
anatofuz
parents:
diff changeset
50 .type func, @gnu_indirect_function
anatofuz
parents:
diff changeset
51 func:
anatofuz
parents:
diff changeset
52 ret
anatofuz
parents:
diff changeset
53
anatofuz
parents:
diff changeset
54 .globl _start
anatofuz
parents:
diff changeset
55 _start:
anatofuz
parents:
diff changeset
56 .L:
anatofuz
parents:
diff changeset
57 auipc a0, %pcrel_hi(func)
anatofuz
parents:
diff changeset
58 addi a0, a0, %pcrel_lo(.L)