annotate lld/test/ELF/mips-32.s @ 150:1d019706d866

LLVM10
author anatofuz
date Thu, 13 Feb 2020 15:10:13 +0900
parents
children 0572611fdcc8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
anatofuz
parents:
diff changeset
1 # REQUIRES: mips
anatofuz
parents:
diff changeset
2 # Check R_MIPS_32 relocation calculation.
anatofuz
parents:
diff changeset
3
anatofuz
parents:
diff changeset
4 # RUN: echo "SECTIONS { \
anatofuz
parents:
diff changeset
5 # RUN: . = 0x10000; .data ALIGN(0x1000) : { *(.data) } \
anatofuz
parents:
diff changeset
6 # RUN: }" > %t.script
anatofuz
parents:
diff changeset
7
anatofuz
parents:
diff changeset
8 # RUN: llvm-mc -filetype=obj -triple=mips-unknown-linux %s -o %t-be.o
anatofuz
parents:
diff changeset
9 # RUN: ld.lld -shared %t-be.o -script %t.script -o %t-be.so
anatofuz
parents:
diff changeset
10 # RUN: llvm-objdump -t -s %t-be.so | FileCheck -check-prefixes=SYM,BE %s
anatofuz
parents:
diff changeset
11 # RUN: llvm-readelf -r -s --dynamic-table -A %t-be.so \
anatofuz
parents:
diff changeset
12 # RUN: | FileCheck -check-prefix=REL %s
anatofuz
parents:
diff changeset
13
anatofuz
parents:
diff changeset
14 # RUN: llvm-mc -filetype=obj -triple=mipsel-unknown-linux %s -o %t-el.o
anatofuz
parents:
diff changeset
15 # RUN: ld.lld -shared %t-el.o -script %t.script -o %t-el.so
anatofuz
parents:
diff changeset
16 # RUN: llvm-objdump -t -s %t-el.so | FileCheck -check-prefixes=SYM,EL %s
anatofuz
parents:
diff changeset
17 # RUN: llvm-readelf -r -s --dynamic-table -A %t-el.so \
anatofuz
parents:
diff changeset
18 # RUN: | FileCheck -check-prefix=REL %s
anatofuz
parents:
diff changeset
19
anatofuz
parents:
diff changeset
20 .data
anatofuz
parents:
diff changeset
21 .globl v2
anatofuz
parents:
diff changeset
22 v1:
anatofuz
parents:
diff changeset
23 .word v2+4 # R_MIPS_32 target v2 addend 4
anatofuz
parents:
diff changeset
24 v2:
anatofuz
parents:
diff changeset
25 .word v1 # R_MIPS_32 target v1 addend 0
anatofuz
parents:
diff changeset
26
anatofuz
parents:
diff changeset
27 # SYM: SYMBOL TABLE:
anatofuz
parents:
diff changeset
28 # SYM: 00011000 .data 00000000 v1
anatofuz
parents:
diff changeset
29
anatofuz
parents:
diff changeset
30 # BE: Contents of section .data:
anatofuz
parents:
diff changeset
31 # BE-NEXT: {{.*}} 00000004 00011000
anatofuz
parents:
diff changeset
32 # ^-- v2+4 ^-- v1
anatofuz
parents:
diff changeset
33
anatofuz
parents:
diff changeset
34 # EL: Contents of section .data:
anatofuz
parents:
diff changeset
35 # EL-NEXT: {{.*}} 04000000 00100100
anatofuz
parents:
diff changeset
36 # ^-- v2+4 ^-- v1
anatofuz
parents:
diff changeset
37 # REL: Relocation section
anatofuz
parents:
diff changeset
38 # REL: {{.*}} R_MIPS_REL32
anatofuz
parents:
diff changeset
39 # REL-NEXT: {{.*}} R_MIPS_REL32 [[V2:[0-9a-f]+]]
anatofuz
parents:
diff changeset
40
anatofuz
parents:
diff changeset
41 # REL: Symbol table
anatofuz
parents:
diff changeset
42 # REL: {{.*}}: [[V2]] {{.*}} v2
anatofuz
parents:
diff changeset
43
anatofuz
parents:
diff changeset
44 # REL: Dynamic section
anatofuz
parents:
diff changeset
45 # REL: (RELSZ) 16
anatofuz
parents:
diff changeset
46 # REL: (RELENT) 8
anatofuz
parents:
diff changeset
47 # REL-NOT: (RELCOUNT)
anatofuz
parents:
diff changeset
48
anatofuz
parents:
diff changeset
49 # REL: Global entries
anatofuz
parents:
diff changeset
50 # REL: {{.*}} -32744(gp) [[V2]] {{.*}} v2