blob: 71b6b06cbc0895377f2aebc11e7a444645a560bd [file] [log] [blame]
Simon Atanasyan940cc712014-01-05 13:40:17 +00001// Check dynamic section tags in case of shared library file.
2RUN: llvm-readobj -dynamic-table %p/Inputs/dynamic-table-so.mips \
Simon Atanasyan5c8377f2013-11-11 20:51:48 +00003RUN: | FileCheck %s -check-prefix ELF-MIPS
4
5ELF-MIPS: Format: ELF32-mips
6ELF-MIPS: Arch: mipsel
7ELF-MIPS: AddressSize: 32bit
8ELF-MIPS: LoadName:
9ELF-MIPS: DynamicSection [ (23 entries)
10ELF-MIPS: Tag Type Name/Value
George Rimarefd3ffb2017-07-14 16:00:16 +000011ELF-MIPS: 0x00000001 NEEDED Shared library: [libc.so.6]
Simon Atanasyan5c8377f2013-11-11 20:51:48 +000012ELF-MIPS: 0x0000000C INIT 0x528
13ELF-MIPS: 0x0000000D FINI 0x860
14ELF-MIPS: 0x00000004 HASH 0x210
15ELF-MIPS: 0x00000005 STRTAB 0x3D8
16ELF-MIPS: 0x00000006 SYMTAB 0x2A8
17ELF-MIPS: 0x0000000A STRSZ 231 (bytes)
18ELF-MIPS: 0x0000000B SYMENT 16 (bytes)
19ELF-MIPS: 0x00000003 PLTGOT 0x108E0
20ELF-MIPS: 0x00000011 REL 0x518
21ELF-MIPS: 0x00000012 RELSZ 16 (bytes)
22ELF-MIPS: 0x00000013 RELENT 8 (bytes)
23ELF-MIPS: 0x70000001 MIPS_RLD_VERSION 1
Simon Atanasyanca8b5622014-05-11 08:48:09 +000024ELF-MIPS: 0x70000005 MIPS_FLAGS NOTPOT
Simon Atanasyan5c8377f2013-11-11 20:51:48 +000025ELF-MIPS: 0x70000006 MIPS_BASE_ADDRESS 0x0
26ELF-MIPS: 0x7000000A MIPS_LOCAL_GOTNO 10
27ELF-MIPS: 0x70000011 MIPS_SYMTABNO 19
28ELF-MIPS: 0x70000012 MIPS_UNREFEXTNO 26
29ELF-MIPS: 0x70000013 MIPS_GOTSYM 0xD
30ELF-MIPS: 0x6FFFFFFE VERNEED 0x4E8
31ELF-MIPS: 0x6FFFFFFF VERNEEDNUM 1
32ELF-MIPS: 0x6FFFFFF0 VERSYM 0x4C0
33ELF-MIPS: 0x00000000 NULL 0x0
34ELF-MIPS: ]
Simon Atanasyan728d2162014-01-05 13:40:27 +000035
36// Check dynamic section tags in case of non-pic executable file.
37RUN: llvm-readobj -dynamic-table %p/Inputs/dynamic-table-exe.mips \
38RUN: | FileCheck %s -check-prefix ELF-MIPS-EXE
39
40ELF-MIPS-EXE: Format: ELF32-mips
41ELF-MIPS-EXE: Arch: mipsel
42ELF-MIPS-EXE: AddressSize: 32bit
43ELF-MIPS-EXE: LoadName:
44ELF-MIPS-EXE: DynamicSection [ (26 entries)
45ELF-MIPS-EXE: Tag Type Name/Value
George Rimarefd3ffb2017-07-14 16:00:16 +000046ELF-MIPS-EXE: 0x00000001 NEEDED Shared library: [libc.so.6]
Simon Atanasyan728d2162014-01-05 13:40:27 +000047ELF-MIPS-EXE: 0x0000000C INIT 0x400418
48ELF-MIPS-EXE: 0x0000000D FINI 0x4007B0
49ELF-MIPS-EXE: 0x00000004 HASH 0x4002B8
50ELF-MIPS-EXE: 0x00000005 STRTAB 0x40036C
51ELF-MIPS-EXE: 0x00000006 SYMTAB 0x4002EC
52ELF-MIPS-EXE: 0x0000000A STRSZ 107 (bytes)
53ELF-MIPS-EXE: 0x0000000B SYMENT 16 (bytes)
54ELF-MIPS-EXE: 0x70000016 MIPS_RLD_MAP 0x410880
55ELF-MIPS-EXE: 0x00000015 DEBUG 0x0
56ELF-MIPS-EXE: 0x00000003 PLTGOT 0x410890
57ELF-MIPS-EXE: 0x70000001 MIPS_RLD_VERSION 1
Simon Atanasyanca8b5622014-05-11 08:48:09 +000058ELF-MIPS-EXE: 0x70000005 MIPS_FLAGS NOTPOT
Simon Atanasyan728d2162014-01-05 13:40:27 +000059ELF-MIPS-EXE: 0x70000006 MIPS_BASE_ADDRESS 0x400000
60ELF-MIPS-EXE: 0x7000000A MIPS_LOCAL_GOTNO 5
61ELF-MIPS-EXE: 0x70000011 MIPS_SYMTABNO 8
62ELF-MIPS-EXE: 0x70000012 MIPS_UNREFEXTNO 32
63ELF-MIPS-EXE: 0x70000013 MIPS_GOTSYM 0x7
64ELF-MIPS-EXE: 0x00000014 PLTREL REL
65ELF-MIPS-EXE: 0x00000017 JMPREL 0x400408
66ELF-MIPS-EXE: 0x00000002 PLTRELSZ 16 (bytes)
67ELF-MIPS-EXE: 0x70000032 MIPS_PLTGOT 0x410854
68ELF-MIPS-EXE: 0x6FFFFFFE VERNEED 0x4003E8
69ELF-MIPS-EXE: 0x6FFFFFFF VERNEEDNUM 1
70ELF-MIPS-EXE: 0x6FFFFFF0 VERSYM 0x4003D8
71ELF-MIPS-EXE: 0x00000000 NULL 0x0
72ELF-MIPS-EXE: ]
Simon Atanasyanca8b5622014-05-11 08:48:09 +000073
74RUN: llvm-readobj -dynamic-table %p/Inputs/dynamic-table-exe.x86 \
75RUN: | FileCheck %s -check-prefix ELF-X86-EXE
76
77ELF-X86-EXE: Format: ELF32-i386
78ELF-X86-EXE: Arch: i386
79ELF-X86-EXE: AddressSize: 32bit
80ELF-X86-EXE: LoadName:
81ELF-X86-EXE: DynamicSection [ (30 entries)
82ELF-X86-EXE: Tag Type Name/Value
George Rimarefd3ffb2017-07-14 16:00:16 +000083ELF-X86-EXE: 0x00000001 NEEDED Shared library: [libstdc++.so.6]
84ELF-X86-EXE: 0x00000001 NEEDED Shared library: [libgcc_s.so.1]
85ELF-X86-EXE: 0x00000001 NEEDED Shared library: [libc.so.6]
Simon Atanasyanca8b5622014-05-11 08:48:09 +000086ELF-X86-EXE: 0x0000000C INIT 0x62C
87ELF-X86-EXE: 0x0000000D FINI 0x920
88ELF-X86-EXE: 0x00000019 INIT_ARRAY 0x19FC
89ELF-X86-EXE: 0x0000001B INIT_ARRAYSZ 4 (bytes)
90ELF-X86-EXE: 0x0000001A FINI_ARRAY 0x1A00
91ELF-X86-EXE: 0x0000001C FINI_ARRAYSZ 4 (bytes)
92ELF-X86-EXE: 0x00000004 HASH 0x18C
93ELF-X86-EXE: 0x6FFFFEF5 GNU_HASH 0x1E4
94ELF-X86-EXE: 0x00000005 STRTAB 0x328
95ELF-X86-EXE: 0x00000006 SYMTAB 0x218
96ELF-X86-EXE: 0x0000000A STRSZ 408 (bytes)
97ELF-X86-EXE: 0x0000000B SYMENT 16 (bytes)
98ELF-X86-EXE: 0x00000015 DEBUG 0x0
99ELF-X86-EXE: 0x00000003 PLTGOT 0x1B30
100ELF-X86-EXE: 0x00000002 PLTRELSZ 64 (bytes)
101ELF-X86-EXE: 0x00000014 PLTREL REL
102ELF-X86-EXE: 0x00000017 JMPREL 0x5EC
103ELF-X86-EXE: 0x00000011 REL 0x564
104ELF-X86-EXE: 0x00000012 RELSZ 136 (bytes)
105ELF-X86-EXE: 0x00000013 RELENT 8 (bytes)
106ELF-X86-EXE: 0x00000016 TEXTREL
107ELF-X86-EXE: 0x0000001E FLAGS TEXTREL
108ELF-X86-EXE: 0x6FFFFFFE VERNEED 0x4E4
109ELF-X86-EXE: 0x6FFFFFFF VERNEEDNUM 3
110ELF-X86-EXE: 0x6FFFFFF0 VERSYM 0x4C0
George Rimare05fcec2016-01-16 10:38:32 +0000111ELF-X86-EXE: 0x6FFFFFFA RELCOUNT 6
112ELF-X86-EXE: 0x00000000 NULL 0x0
113ELF-X86-EXE: ]
114
George Rimard8a4eca2016-09-02 07:35:19 +0000115RUN: llvm-readobj -dynamic-table %p/Inputs/dynamic-table-so.x86 \
116RUN: | FileCheck %s -check-prefix ELF-X86-SO
117
118ELF-X86-SO: Format: ELF64-x86-64
119ELF-X86-SO: Arch: x86_64
120ELF-X86-SO: AddressSize: 64bit
121ELF-X86-SO: LoadName:
George Rimarefd3ffb2017-07-14 16:00:16 +0000122ELF-X86-SO: DynamicSection [ ({{[0-9]+}} entries)
George Rimard8a4eca2016-09-02 07:35:19 +0000123ELF-X86-SO: Tag Type Name/Value
George Rimarefd3ffb2017-07-14 16:00:16 +0000124ELF-X86-SO: 0x0000000000000001 NEEDED Shared library: [libc.so.6]
125ELF-X86-SO: 0x0000000000000001 NEEDED Shared library: [ld-linux-x86-64.so.2]
126ELF-X86-SO: 0x000000007FFFFFFF FILTER Filter library: [filter.so]
127ELF-X86-SO: 0x000000007FFFFFFD AUXILIARY Auxiliary library: [aux.so]
128ELF-X86-SO: 0x000000000000000C INIT 0x{{[0-9A-F]+}}
129ELF-X86-SO: 0x000000000000000D FINI 0x{{[0-9A-F]+}}
130ELF-X86-SO: 0x0000000000000019 INIT_ARRAY 0x{{[0-9A-F]+}}
George Rimard8a4eca2016-09-02 07:35:19 +0000131ELF-X86-SO: 0x000000000000001B INIT_ARRAYSZ 8 (bytes)
George Rimarefd3ffb2017-07-14 16:00:16 +0000132ELF-X86-SO: 0x000000000000001A FINI_ARRAY 0x{{[0-9A-F]+}}
George Rimard8a4eca2016-09-02 07:35:19 +0000133ELF-X86-SO: 0x000000000000001C FINI_ARRAYSZ 8 (bytes)
134ELF-X86-SO: 0x000000006FFFFEF5 GNU_HASH 0x1C8
135ELF-X86-SO: 0x0000000000000005 STRTAB 0x3A0
136ELF-X86-SO: 0x0000000000000006 SYMTAB 0x208
George Rimarefd3ffb2017-07-14 16:00:16 +0000137ELF-X86-SO: 0x000000000000000A STRSZ {{[0-9]+}} (bytes)
George Rimard8a4eca2016-09-02 07:35:19 +0000138ELF-X86-SO: 0x000000000000000B SYMENT 24 (bytes)
139ELF-X86-SO: 0x0000000000000003 PLTGOT 0x201000
140ELF-X86-SO: 0x0000000000000002 PLTRELSZ 48 (bytes)
141ELF-X86-SO: 0x0000000000000014 PLTREL RELA
George Rimarefd3ffb2017-07-14 16:00:16 +0000142ELF-X86-SO: 0x0000000000000017 JMPREL 0x{{[0-9A-F]+}}
143ELF-X86-SO: 0x0000000000000007 RELA 0x{{[0-9A-F]+}}
George Rimard8a4eca2016-09-02 07:35:19 +0000144ELF-X86-SO: 0x0000000000000008 RELASZ 240 (bytes)
145ELF-X86-SO: 0x0000000000000009 RELAENT 24 (bytes)
George Rimarefd3ffb2017-07-14 16:00:16 +0000146ELF-X86-SO: 0x000000006FFFFFFE VERNEED 0x{{[0-9A-F]+}}
George Rimard8a4eca2016-09-02 07:35:19 +0000147ELF-X86-SO: 0x000000006FFFFFFF VERNEEDNUM 2
George Rimarefd3ffb2017-07-14 16:00:16 +0000148ELF-X86-SO: 0x000000006FFFFFF0 VERSYM 0x{{[0-9A-F]+}}
George Rimard8a4eca2016-09-02 07:35:19 +0000149ELF-X86-SO: 0x000000006FFFFFF9 RELACOUNT 3
150ELF-X86-SO: 0x0000000000000000 NULL 0x0
151
George Rimare05fcec2016-01-16 10:38:32 +0000152RUN: llvm-readobj -dynamic-table %p/Inputs/dynamic-table-so.aarch64 \
153RUN: | FileCheck %s -check-prefix ELF-AARCH64-SO
154
155ELF-AARCH64-SO: Format: ELF64-aarch64-little
156ELF-AARCH64-SO: Arch: aarch64
157ELF-AARCH64-SO: AddressSize: 64bit
158ELF-AARCH64-SO: LoadName:
159ELF-AARCH64-SO: DynamicSection [ (26 entries)
160ELF-AARCH64-SO: Tag Type Name/Value
George Rimarefd3ffb2017-07-14 16:00:16 +0000161ELF-AARCH64-SO: 0x0000000000000001 NEEDED Shared library: [libc.so.6]
George Rimare05fcec2016-01-16 10:38:32 +0000162ELF-AARCH64-SO: 0x000000000000000C INIT 0x660
163ELF-AARCH64-SO: 0x000000000000000D FINI 0x83C
164ELF-AARCH64-SO: 0x0000000000000019 INIT_ARRAY 0x10DB8
165ELF-AARCH64-SO: 0x000000000000001B INIT_ARRAYSZ 8 (bytes)
166ELF-AARCH64-SO: 0x000000000000001A FINI_ARRAY 0x10DC0
167ELF-AARCH64-SO: 0x000000000000001C FINI_ARRAYSZ 8 (bytes)
168ELF-AARCH64-SO: 0x000000006FFFFEF5 GNU_HASH 0x1F0
169ELF-AARCH64-SO: 0x0000000000000005 STRTAB 0x420
170ELF-AARCH64-SO: 0x0000000000000006 SYMTAB 0x240
171ELF-AARCH64-SO: 0x000000000000000A STRSZ 210 (bytes)
172ELF-AARCH64-SO: 0x000000000000000B SYMENT 24 (bytes)
173ELF-AARCH64-SO: 0x0000000000000003 PLTGOT 0x10FE8
174ELF-AARCH64-SO: 0x0000000000000002 PLTRELSZ 96 (bytes)
175ELF-AARCH64-SO: 0x0000000000000014 PLTREL RELA
176ELF-AARCH64-SO: 0x0000000000000017 JMPREL 0x600
177ELF-AARCH64-SO: 0x000000006FFFFEF6 TLSDESC_PLT 0x6D0
178ELF-AARCH64-SO: 0x000000006FFFFEF7 TLSDESC_GOT 0x10FE0
179ELF-AARCH64-SO: 0x0000000000000007 RELA 0x540
180ELF-AARCH64-SO: 0x0000000000000008 RELASZ 192 (bytes)
181ELF-AARCH64-SO: 0x0000000000000009 RELAENT 24 (bytes)
182ELF-AARCH64-SO: 0x000000006FFFFFFE VERNEED 0x520
183ELF-AARCH64-SO: 0x000000006FFFFFFF VERNEEDNUM 1
184ELF-AARCH64-SO: 0x000000006FFFFFF0 VERSYM 0x4F2
Davide Italiano8c503672016-01-16 06:06:36 +0000185ELF-AARCH64-SO: 0x000000006FFFFFF9 RELACOUNT 3
George Rimare05fcec2016-01-16 10:38:32 +0000186ELF-AARCH64-SO: 0x0000000000000000 NULL 0x0
187ELF-AARCH64-SO: ]