blob: 2c0b54dca4a561055c1267f6ce5282548ae434be [file] [log] [blame]
David Meyer5c2b4ea2012-03-01 01:36:50 +00001RUN: llvm-readobj %p/Inputs/shared-object-test.elf-i386 \
2RUN: | FileCheck %s -check-prefix ELF
David Meyer97f77872012-03-01 22:19:54 +00003RUN: llvm-readobj %p/Inputs/shared-object-test.elf-i386 \
4RUN: | FileCheck %s -check-prefix ELF32
5
David Meyer5c2b4ea2012-03-01 01:36:50 +00006RUN: llvm-readobj %p/Inputs/shared-object-test.elf-x86-64 \
7RUN: | FileCheck %s -check-prefix ELF
David Meyer97f77872012-03-01 22:19:54 +00008RUN: llvm-readobj %p/Inputs/shared-object-test.elf-x86-64 \
9RUN: | FileCheck %s -check-prefix ELF64
10
11ELF64:File Format : ELF64-x86-64
12ELF64:Arch : x86_64
13ELF64:Address Size: 64 bits
14ELF64:Load Name : libfoo.so
15
16ELF32:File Format : ELF32-i386
17ELF32:Arch : i386
18ELF32:Address Size: 32 bits
19ELF32:Load Name : libfoo.so
David Meyer5c2b4ea2012-03-01 01:36:50 +000020
21ELF:Symbols:
Rafael Espindola148ee4f2012-12-31 16:05:21 +000022ELF: Name Type Address Size FileOffset Flags
David Meyer5c2b4ea2012-03-01 01:36:50 +000023ELF: .dynsym DBG {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} formatspecific
24ELF: .dynstr DBG {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} formatspecific
25ELF: .text DBG {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} formatspecific
26ELF: .eh_frame DBG {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} formatspecific
27ELF: .tdata DBG {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} formatspecific
28ELF: .dynamic DBG {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} formatspecific
29ELF: .got.plt DBG {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} formatspecific
30ELF: .data DBG {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} formatspecific
31ELF: .bss DBG {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} formatspecific
32ELF: shared.ll FILE {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} absolute,formatspecific
33ELF: local_func FUNC {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}}
34ELF: _GLOBAL_OFFSET_TABLE_ DATA {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} absolute
35ELF: _DYNAMIC DATA {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} absolute
36ELF: common_sym DATA {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global
37ELF: tls_sym DATA {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global,threadlocal
38ELF: defined_sym DATA {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global
39ELF: __bss_start ? {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global,absolute
40ELF: _end ? {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global,absolute
41ELF: global_func FUNC {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global
42ELF: _edata ? {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global,absolute
43ELF: Total: 21
44
45ELF:Dynamic Symbols:
Rafael Espindola148ee4f2012-12-31 16:05:21 +000046ELF: Name Type Address Size FileOffset Flags
David Meyer5c2b4ea2012-03-01 01:36:50 +000047ELF: common_sym DATA {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global
48ELF: tls_sym DATA {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global,threadlocal
49ELF: defined_sym DATA {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global
50ELF: __bss_start ? {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global,absolute
51ELF: _end ? {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global,absolute
52ELF: global_func FUNC {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global
53ELF: _edata ? {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} global,absolute
54ELF: Total: {{[0-9a-f]+}}
55
Rafael Espindolafc738472012-12-31 16:29:44 +000056ELF:Sections:
57ELF: Name Address Size Align Flags
58ELF: {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} rodata
59ELF: .hash {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} required,rodata
60ELF: .dynsym {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} required,rodata
61ELF: .dynstr {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} required,rodata
62ELF: .text {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} text,{{(data,)?}}required
63ELF: .eh_frame {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} data,required,rodata
64ELF: .tdata {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} data,required
65ELF: .dynamic {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} required
66ELF: .got.plt {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} data,required
67ELF: .data {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} data,required
Rafael Espindola5b712ef2012-12-31 18:20:51 +000068ELF: .bss {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} bss,required,virtual,zeroinit
Rafael Espindolafc738472012-12-31 16:29:44 +000069ELF: .shstrtab {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} rodata
70ELF: .symtab {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} rodata
71ELF: .strtab {{[0-9a-f]+}} {{[0-9a-f]+}} {{[0-9a-f]+}} rodata
72ELF: Total: 14
73
Michael J. Spencerd326d052013-02-20 02:37:12 +000074ELF:Dynamic section contains 9 entries
75ELF: Tag Type Name/Value
76ELF: 00000001 (NEEDED) Shared library: [libc.so.6]
77ELF: 00000001 (NEEDED) Shared library: [libm.so.6]
78ELF: 0000000e (SONAME) Library soname: [libfoo.so]
79ELF: 00000004 (HASH) {{[0-9a-f]+}}
80ELF: 00000005 (STRTAB) {{[0-9a-f]+}}
81ELF: 00000006 (SYMTAB) {{[0-9a-f]+}}
82ELF: 0000000a (STRSZ) {{[0-9]+}} (bytes)
83ELF: 0000000b (SYMENT) {{[0-9]+}} (bytes)
84ELF: 00000000 (NULL) 0x0
85ELF: Total: 9
86
David Meyer5c2b4ea2012-03-01 01:36:50 +000087ELF:Libraries needed:
88ELF: libc.so.6
89ELF: libm.so.6
90ELF: Total: 2
91
92