[llvm-readobj] - Simplify stack-sizes.test test case.
[llvm-complete.git] / test / Object / objdump-symbol-table.test
blob9c8a6b7ec1dc21a5f1887f6cce7e0d6f96ca9a50
1 # RUN: yaml2obj %p/Inputs/COFF/i386.yaml | llvm-objdump -t - \
2 # RUN:              | FileCheck %s -check-prefix COFF-i386
4 # COFF-i386: file format
5 # COFF-i386: SYMBOL TABLE:
6 # COFF-i386: [  0](sec  1)(fl 0x00)(ty   0)(scl   3) (nx 1) 0x00000000 .text
7 # COFF-i386: AUX scnlen 0x24 nreloc 3 nlnno 0 checksum 0x0 assoc 1 comdat 0
8 # COFF-i386: [  2](sec  2)(fl 0x00)(ty   0)(scl   3) (nx 1) 0x00000000 .data
9 # COFF-i386: AUX scnlen 0xd nreloc 0 nlnno 0 checksum 0x0 assoc 2 comdat 0
10 # COFF-i386: [  4](sec  1)(fl 0x00)(ty  20)(scl   2) (nx 0) 0x00000000 _main
11 # COFF-i386: [  5](sec  2)(fl 0x00)(ty   0)(scl   3) (nx 0) 0x00000000 L_.str
12 # COFF-i386: [  6](sec  0)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 _puts
13 # COFF-i386: [  7](sec  0)(fl 0x00)(ty   0)(scl   2) (nx 0) 0x00000000 _SomeOtherFunction
15 # RUN: yaml2obj %s > %t.elf-i386
16 # RUN: llvm-objdump -t %t.elf-i386 | FileCheck %s -check-prefix ELF-i386
18 # ELF-i386: {{.*}}elf-i386:     file format
19 # ELF-i386: SYMBOL TABLE:
20 # ELF-i386: 00000000 l    df *ABS*  00000000 trivial-object-test.s
21 # ELF-i386: 00000000 l    d  .text  00000000 .text
22 # ELF-i386: 00000024 l    d  .rodata.str1.1 00000000 .rodata.str1.1
23 # ELF-i386: 00000031 l    d  .note.GNU-stack        00000000 .note.GNU-stack
24 # ELF-i386: 00000000 g     F .text  00000024 main
25 # ELF-i386: 00000000         *UND*  00000000 SomeOtherFunction
26 # ELF-i386: 00000000         *UND*  00000000 puts
28 --- !ELF
29 FileHeader:
30   Class:   ELFCLASS32
31   Data:    ELFDATA2LSB
32   Type:    ET_REL
33   Machine: EM_386
34 Sections:
35   - Name:    .text
36     Type:    SHT_PROGBITS
37     Flags:   [ SHF_ALLOC, SHF_EXECINSTR ]
38   - Name:    .rodata.str1.1
39     Type:    SHT_PROGBITS
40     Flags:   [ SHF_ALLOC, SHF_MERGE, SHF_STRINGS ]
41     Address: 0x0000000000000024
42   - Name:    .note.GNU-stack
43     Type:    SHT_PROGBITS
44     Address: 0x0000000000000031
45 Symbols:
46   - Name:    trivial-object-test.s
47     Type:    STT_FILE
48     Index:   SHN_ABS
49   - Name:    .text
50     Type:    STT_SECTION
51     Section: .text
52   - Name:    .rodata.str1.1
53     Type:    STT_SECTION
54     Section: .rodata.str1.1
55   - Name:    .note.GNU-stack
56     Type:    STT_SECTION
57     Section: .note.GNU-stack
58   - Name:    main
59     Type:    STT_FUNC
60     Section: .text
61     Binding: STB_GLOBAL
62     Size:    0x0000000000000024
63   - Name:    SomeOtherFunction
64     Binding: STB_GLOBAL
65   - Name:    puts
66     Binding: STB_GLOBAL
68 # RUN: llvm-objdump -t %p/Inputs/trivial-object-test.macho-i386 \
69 # RUN:              | FileCheck %s -check-prefix macho-i386
71 # macho-i386: trivial-object-test.macho-i386:        file format Mach-O 32-bit i386
72 # macho-i386: SYMBOL TABLE:
73 # macho-i386: 00000000 g     F __TEXT,__text  _main
74 # macho-i386: 00000000         *UND*          _SomeOtherFunction
75 # macho-i386: 00000000         *UND*          _puts
77 # RUN: llvm-objdump -t %p/Inputs/shared-object-test.elf-i386 \
78 # RUN:              | FileCheck %s -check-prefix ELF-shared
80 # ELF-shared: shared-object-test.elf-i386:     file format
81 # ELF-shared: SYMBOL TABLE:
82 # ELF-shared: 00000200 l     F .text 00000003 local_func
83 # ELF-shared: 000012b8 l     O *ABS*           00000000 .hidden _GLOBAL_OFFSET_TABLE_
84 # ELF-shared: 00001248 l     O *ABS*           00000000 .hidden _DYNAMIC
85 # ELF-shared: 000012c4 g     O .data           00000004 defined_sym
86 # ELF-shared: 000001f0 g     F .text 00000003 global_func