2019-07-08 18:53:39 +02:00
|
|
|
# RUN: yaml2obj %p/Inputs/COFF/i386.yaml | llvm-objdump -t - \
|
|
|
|
# RUN: | FileCheck %s -check-prefix COFF-i386
|
|
|
|
|
|
|
|
# COFF-i386: file format
|
|
|
|
# COFF-i386: SYMBOL TABLE:
|
|
|
|
# COFF-i386: [ 0](sec 1)(fl 0x00)(ty 0)(scl 3) (nx 1) 0x00000000 .text
|
|
|
|
# COFF-i386: AUX scnlen 0x24 nreloc 3 nlnno 0 checksum 0x0 assoc 1 comdat 0
|
|
|
|
# COFF-i386: [ 2](sec 2)(fl 0x00)(ty 0)(scl 3) (nx 1) 0x00000000 .data
|
|
|
|
# COFF-i386: AUX scnlen 0xd nreloc 0 nlnno 0 checksum 0x0 assoc 2 comdat 0
|
|
|
|
# COFF-i386: [ 4](sec 1)(fl 0x00)(ty 20)(scl 2) (nx 0) 0x00000000 _main
|
|
|
|
# COFF-i386: [ 5](sec 2)(fl 0x00)(ty 0)(scl 3) (nx 0) 0x00000000 L_.str
|
|
|
|
# COFF-i386: [ 6](sec 0)(fl 0x00)(ty 0)(scl 2) (nx 0) 0x00000000 _puts
|
|
|
|
# COFF-i386: [ 7](sec 0)(fl 0x00)(ty 0)(scl 2) (nx 0) 0x00000000 _SomeOtherFunction
|
|
|
|
|
2020-01-22 02:02:25 +01:00
|
|
|
# RUN: yaml2obj %s -o %t.elf-i386
|
2020-03-16 00:17:52 +01:00
|
|
|
# RUN: llvm-objdump -t %t.elf-i386 | FileCheck %s --check-prefix=ELF-i386
|
2019-07-08 18:53:39 +02:00
|
|
|
|
|
|
|
# ELF-i386: {{.*}}elf-i386: file format
|
|
|
|
# ELF-i386: SYMBOL TABLE:
|
|
|
|
# ELF-i386: 00000000 l df *ABS* 00000000 trivial-object-test.s
|
|
|
|
# ELF-i386: 00000000 l d .text 00000000 .text
|
|
|
|
# ELF-i386: 00000024 l d .rodata.str1.1 00000000 .rodata.str1.1
|
|
|
|
# ELF-i386: 00000031 l d .note.GNU-stack 00000000 .note.GNU-stack
|
|
|
|
# ELF-i386: 00000000 g F .text 00000024 main
|
|
|
|
# ELF-i386: 00000000 *UND* 00000000 SomeOtherFunction
|
|
|
|
# ELF-i386: 00000000 *UND* 00000000 puts
|
|
|
|
|
|
|
|
--- !ELF
|
|
|
|
FileHeader:
|
|
|
|
Class: ELFCLASS32
|
|
|
|
Data: ELFDATA2LSB
|
|
|
|
Type: ET_REL
|
|
|
|
Machine: EM_386
|
|
|
|
Sections:
|
|
|
|
- Name: .text
|
|
|
|
Type: SHT_PROGBITS
|
|
|
|
Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
|
|
|
|
- Name: .rodata.str1.1
|
|
|
|
Type: SHT_PROGBITS
|
|
|
|
Flags: [ SHF_ALLOC, SHF_MERGE, SHF_STRINGS ]
|
|
|
|
Address: 0x0000000000000024
|
|
|
|
- Name: .note.GNU-stack
|
|
|
|
Type: SHT_PROGBITS
|
|
|
|
Address: 0x0000000000000031
|
|
|
|
Symbols:
|
|
|
|
- Name: trivial-object-test.s
|
|
|
|
Type: STT_FILE
|
|
|
|
Index: SHN_ABS
|
|
|
|
- Name: .text
|
|
|
|
Type: STT_SECTION
|
|
|
|
Section: .text
|
|
|
|
- Name: .rodata.str1.1
|
|
|
|
Type: STT_SECTION
|
|
|
|
Section: .rodata.str1.1
|
|
|
|
- Name: .note.GNU-stack
|
|
|
|
Type: STT_SECTION
|
|
|
|
Section: .note.GNU-stack
|
|
|
|
- Name: main
|
|
|
|
Type: STT_FUNC
|
|
|
|
Section: .text
|
|
|
|
Binding: STB_GLOBAL
|
|
|
|
Size: 0x0000000000000024
|
|
|
|
- Name: SomeOtherFunction
|
|
|
|
Binding: STB_GLOBAL
|
|
|
|
- Name: puts
|
|
|
|
Binding: STB_GLOBAL
|
|
|
|
|
|
|
|
# RUN: llvm-objdump -t %p/Inputs/trivial-object-test.macho-i386 \
|
|
|
|
# RUN: | FileCheck %s -check-prefix macho-i386
|
|
|
|
|
[llvm-objdump] Print file format in lowercase to match GNU output.
Summary:
GNU objdump prints the file format in lowercase, e.g. `elf64-x86-64`. llvm-objdump prints `ELF64-x86-64` right now, even though piping that into llvm-objcopy refuses that as a valid arch to use.
As an example of a problem this causes, see: https://github.com/ClangBuiltLinux/linux/issues/779
Reviewers: MaskRay, jhenderson, alexshap
Reviewed By: MaskRay
Subscribers: tpimh, sbc100, grimar, jvesely, nhaehnle, kerbowa, cfe-commits, llvm-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D74433
2020-02-11 20:55:40 +01:00
|
|
|
# macho-i386: trivial-object-test.macho-i386: file format mach-o 32-bit i386
|
2019-07-08 18:53:39 +02:00
|
|
|
# macho-i386: SYMBOL TABLE:
|
|
|
|
# macho-i386: 00000000 g F __TEXT,__text _main
|
|
|
|
# macho-i386: 00000000 *UND* _SomeOtherFunction
|
|
|
|
# macho-i386: 00000000 *UND* _puts
|
|
|
|
|
|
|
|
# RUN: llvm-objdump -t %p/Inputs/shared-object-test.elf-i386 \
|
|
|
|
# RUN: | FileCheck %s -check-prefix ELF-shared
|
|
|
|
|
|
|
|
# ELF-shared: shared-object-test.elf-i386: file format
|
|
|
|
# ELF-shared: SYMBOL TABLE:
|
|
|
|
# ELF-shared: 00000200 l F .text 00000003 local_func
|
|
|
|
# ELF-shared: 000012b8 l O *ABS* 00000000 .hidden _GLOBAL_OFFSET_TABLE_
|
|
|
|
# ELF-shared: 00001248 l O *ABS* 00000000 .hidden _DYNAMIC
|
|
|
|
# ELF-shared: 000012c4 g O .data 00000004 defined_sym
|
|
|
|
# ELF-shared: 000001f0 g F .text 00000003 global_func
|