annotate lld/test/ELF/many-sections.s @ 192:d7606dcf6fce

Added tag llvm10 for changeset 0572611fdcc8
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 14 Dec 2020 18:01:34 +0900
parents 1d019706d866
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
anatofuz
parents:
diff changeset
1 // REQUIRES: x86
anatofuz
parents:
diff changeset
2 // RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o %t
anatofuz
parents:
diff changeset
3 // RUN: llvm-readobj --symbols %t | FileCheck %s
anatofuz
parents:
diff changeset
4
anatofuz
parents:
diff changeset
5 // Verify that the symbol _start is in a section with an index >= SHN_LORESERVE.
anatofuz
parents:
diff changeset
6 // CHECK: Name: _start
anatofuz
parents:
diff changeset
7 // CHECK-NEXT: Value: 0x0
anatofuz
parents:
diff changeset
8 // CHECK-NEXT: Size: 0
anatofuz
parents:
diff changeset
9 // CHECK-NEXT: Binding: Global
anatofuz
parents:
diff changeset
10 // CHECK-NEXT: Type: None
anatofuz
parents:
diff changeset
11 // CHECK-NEXT: Other: 0
anatofuz
parents:
diff changeset
12 // CHECK-NEXT: Section: dm (0xFF00)
anatofuz
parents:
diff changeset
13
anatofuz
parents:
diff changeset
14 // RUN: ld.lld %t -o %t2
anatofuz
parents:
diff changeset
15 // RUN: llvm-readobj --symbols %t2 | FileCheck --check-prefix=LINKED %s
anatofuz
parents:
diff changeset
16
anatofuz
parents:
diff changeset
17 // Test also with a linker script.
anatofuz
parents:
diff changeset
18 // RUN: echo "SECTIONS { . = SIZEOF_HEADERS; .text : { *(.text) } }" > %t.script
anatofuz
parents:
diff changeset
19 // RUN: ld.lld -T %t.script %t -o %t2
anatofuz
parents:
diff changeset
20 // RUN: llvm-readobj --symbols %t2 | FileCheck --check-prefix=LINKED %s
anatofuz
parents:
diff changeset
21
anatofuz
parents:
diff changeset
22 // Test that _start is in the correct section.
anatofuz
parents:
diff changeset
23 // LINKED: Name: _start
anatofuz
parents:
diff changeset
24 // LINKED-NEXT: Value: 0x0
anatofuz
parents:
diff changeset
25 // LINKED-NEXT: Size: 0
anatofuz
parents:
diff changeset
26 // LINKED-NEXT: Binding: Global
anatofuz
parents:
diff changeset
27 // LINKED-NEXT: Type: None
anatofuz
parents:
diff changeset
28 // LINKED-NEXT: Other: 0
anatofuz
parents:
diff changeset
29 // LINKED-NEXT: Section: dm
anatofuz
parents:
diff changeset
30
anatofuz
parents:
diff changeset
31 .macro gen_sections4 x
anatofuz
parents:
diff changeset
32 .section a\x
anatofuz
parents:
diff changeset
33 .section b\x
anatofuz
parents:
diff changeset
34 .section c\x
anatofuz
parents:
diff changeset
35 .section d\x
anatofuz
parents:
diff changeset
36 .endm
anatofuz
parents:
diff changeset
37
anatofuz
parents:
diff changeset
38 .macro gen_sections8 x
anatofuz
parents:
diff changeset
39 gen_sections4 a\x
anatofuz
parents:
diff changeset
40 gen_sections4 b\x
anatofuz
parents:
diff changeset
41 .endm
anatofuz
parents:
diff changeset
42
anatofuz
parents:
diff changeset
43 .macro gen_sections16 x
anatofuz
parents:
diff changeset
44 gen_sections8 a\x
anatofuz
parents:
diff changeset
45 gen_sections8 b\x
anatofuz
parents:
diff changeset
46 .endm
anatofuz
parents:
diff changeset
47
anatofuz
parents:
diff changeset
48 .macro gen_sections32 x
anatofuz
parents:
diff changeset
49 gen_sections16 a\x
anatofuz
parents:
diff changeset
50 gen_sections16 b\x
anatofuz
parents:
diff changeset
51 .endm
anatofuz
parents:
diff changeset
52
anatofuz
parents:
diff changeset
53 .macro gen_sections64 x
anatofuz
parents:
diff changeset
54 gen_sections32 a\x
anatofuz
parents:
diff changeset
55 gen_sections32 b\x
anatofuz
parents:
diff changeset
56 .endm
anatofuz
parents:
diff changeset
57
anatofuz
parents:
diff changeset
58 .macro gen_sections128 x
anatofuz
parents:
diff changeset
59 gen_sections64 a\x
anatofuz
parents:
diff changeset
60 gen_sections64 b\x
anatofuz
parents:
diff changeset
61 .endm
anatofuz
parents:
diff changeset
62
anatofuz
parents:
diff changeset
63 .macro gen_sections256 x
anatofuz
parents:
diff changeset
64 gen_sections128 a\x
anatofuz
parents:
diff changeset
65 gen_sections128 b\x
anatofuz
parents:
diff changeset
66 .endm
anatofuz
parents:
diff changeset
67
anatofuz
parents:
diff changeset
68 .macro gen_sections512 x
anatofuz
parents:
diff changeset
69 gen_sections256 a\x
anatofuz
parents:
diff changeset
70 gen_sections256 b\x
anatofuz
parents:
diff changeset
71 .endm
anatofuz
parents:
diff changeset
72
anatofuz
parents:
diff changeset
73 .macro gen_sections1024 x
anatofuz
parents:
diff changeset
74 gen_sections512 a\x
anatofuz
parents:
diff changeset
75 gen_sections512 b\x
anatofuz
parents:
diff changeset
76 .endm
anatofuz
parents:
diff changeset
77
anatofuz
parents:
diff changeset
78 .macro gen_sections2048 x
anatofuz
parents:
diff changeset
79 gen_sections1024 a\x
anatofuz
parents:
diff changeset
80 gen_sections1024 b\x
anatofuz
parents:
diff changeset
81 .endm
anatofuz
parents:
diff changeset
82
anatofuz
parents:
diff changeset
83 .macro gen_sections4096 x
anatofuz
parents:
diff changeset
84 gen_sections2048 a\x
anatofuz
parents:
diff changeset
85 gen_sections2048 b\x
anatofuz
parents:
diff changeset
86 .endm
anatofuz
parents:
diff changeset
87
anatofuz
parents:
diff changeset
88 .macro gen_sections8192 x
anatofuz
parents:
diff changeset
89 gen_sections4096 a\x
anatofuz
parents:
diff changeset
90 gen_sections4096 b\x
anatofuz
parents:
diff changeset
91 .endm
anatofuz
parents:
diff changeset
92
anatofuz
parents:
diff changeset
93 .macro gen_sections16384 x
anatofuz
parents:
diff changeset
94 gen_sections8192 a\x
anatofuz
parents:
diff changeset
95 gen_sections8192 b\x
anatofuz
parents:
diff changeset
96 .endm
anatofuz
parents:
diff changeset
97
anatofuz
parents:
diff changeset
98 .macro gen_sections32768 x
anatofuz
parents:
diff changeset
99 gen_sections16384 a\x
anatofuz
parents:
diff changeset
100 gen_sections16384 b\x
anatofuz
parents:
diff changeset
101 .endm
anatofuz
parents:
diff changeset
102
anatofuz
parents:
diff changeset
103 .bss
anatofuz
parents:
diff changeset
104 .section bar
anatofuz
parents:
diff changeset
105
anatofuz
parents:
diff changeset
106 gen_sections32768 a
anatofuz
parents:
diff changeset
107 gen_sections16384 b
anatofuz
parents:
diff changeset
108 gen_sections8192 c
anatofuz
parents:
diff changeset
109 gen_sections4096 d
anatofuz
parents:
diff changeset
110 gen_sections2048 e
anatofuz
parents:
diff changeset
111 gen_sections1024 f
anatofuz
parents:
diff changeset
112 gen_sections512 g
anatofuz
parents:
diff changeset
113 gen_sections128 h
anatofuz
parents:
diff changeset
114 gen_sections64 i
anatofuz
parents:
diff changeset
115 gen_sections32 j
anatofuz
parents:
diff changeset
116 gen_sections16 k
anatofuz
parents:
diff changeset
117 gen_sections8 l
anatofuz
parents:
diff changeset
118 gen_sections4 m
anatofuz
parents:
diff changeset
119
anatofuz
parents:
diff changeset
120 .global _start
anatofuz
parents:
diff changeset
121 _start: