file-headers.test revision 76e70f340c09ba759ad96d8dfe416b64f24bc287
1RUN: llvm-readobj -h %p/Inputs/trivial.obj.coff-i386 \ 2RUN: | FileCheck %s -check-prefix COFF32 3RUN: llvm-readobj -h %p/Inputs/trivial.obj.coff-x86-64 \ 4RUN: | FileCheck %s -check-prefix COFF64 5RUN: llvm-readobj -h %p/Inputs/trivial.obj.elf-i386 \ 6RUN: | FileCheck %s -check-prefix ELF32 7RUN: llvm-readobj -h %p/Inputs/trivial.obj.elf-x86-64 \ 8RUN: | FileCheck %s -check-prefix ELF64 9 10COFF32: File: {{(.*[/\\])?}}trivial.obj.coff-i386 11COFF32-NEXT: Format: COFF-i386 12COFF32-NEXT: Arch: i386 13COFF32-NEXT: AddressSize: 32bit 14COFF32-NEXT: ImageFileHeader { 15COFF32-NEXT: Machine: IMAGE_FILE_MACHINE_I386 (0x14C) 16COFF32-NEXT: SectionCount: 2 17COFF32-NEXT: TimeDateStamp: 2013-03-20 17:56:46 (0x5149F85E) 18COFF32-NEXT: PointerToSymbolTable: 0xA5 19COFF32-NEXT: SymbolCount: 7 20COFF32-NEXT: OptionalHeaderSize: 0 21COFF32-NEXT: Characteristics [ (0x0) 22COFF32-NEXT: ] 23COFF32-NEXT: } 24 25COFF64: File: {{(.*[/\\])?}}trivial.obj.coff-x86-64 26COFF64-NEXT: Format: COFF-x86-64 27COFF64-NEXT: Arch: x86_64 28COFF64-NEXT: AddressSize: 64bit 29COFF64-NEXT: ImageFileHeader { 30COFF64-NEXT: Machine: IMAGE_FILE_MACHINE_AMD64 (0x8664) 31COFF64-NEXT: SectionCount: 2 32COFF64-NEXT: TimeDateStamp: 2013-03-20 17:56:46 (0x5149F85E) 33COFF64-NEXT: PointerToSymbolTable: 0xAB 34COFF64-NEXT: SymbolCount: 7 35COFF64-NEXT: OptionalHeaderSize: 0 36COFF64-NEXT: Characteristics [ (0x0) 37COFF64-NEXT: ] 38COFF64-NEXT: } 39 40ELF32: File: {{(.*[/\\])?}}trivial.obj.elf-i386 41ELF32-NEXT: Format: ELF32-i386 42ELF32-NEXT: Arch: i386 43ELF32-NEXT: AddressSize: 32bit 44ELF32-NEXT: LoadName: 45ELF32-NEXT: ElfHeader { 46ELF32-NEXT: Ident { 47ELF32-NEXT: Magic: (7F 45 4C 46) 48ELF32-NEXT: Class: 32-bit (0x1) 49ELF32-NEXT: DataEncoding: LittleEndian (0x1) 50ELF32-NEXT: FileVersion: 1 51ELF32-NEXT: OS/ABI: GNU/Linux (0x3) 52ELF32-NEXT: ABIVersion: 0 53ELF32-NEXT: Unused: (00 00 00 00 00 00 00) 54ELF32-NEXT: } 55ELF32-NEXT: Type: Relocatable (0x1) 56ELF32-NEXT: Machine: EM_386 (0x3) 57ELF32-NEXT: Version: 1 58ELF32-NEXT: Entry: 0x0 59ELF32-NEXT: ProgramHeaderOffset: 0x0 60ELF32-NEXT: SectionHeaderOffset: 0xC8 61ELF32-NEXT: Flags [ (0x0) 62ELF32-NEXT: ] 63ELF32-NEXT: HeaderSize: 52 64ELF32-NEXT: ProgramHeaderEntrySize: 0 65ELF32-NEXT: ProgramHeaderCount: 0 66ELF32-NEXT: SectionHeaderEntrySize: 40 67ELF32-NEXT: SectionHeaderCount: 10 68ELF32-NEXT: StringTableSectionIndex: 7 69ELF32-NEXT: } 70 71ELF64: File: {{(.*[/\\])?}}trivial.obj.elf-x86-64 72ELF64-NEXT: Format: ELF64-x86-64 73ELF64-NEXT: Arch: x86_64 74ELF64-NEXT: AddressSize: 64bit 75ELF64-NEXT: LoadName: 76ELF64-NEXT: ElfHeader { 77ELF64-NEXT: Ident { 78ELF64-NEXT: Magic: (7F 45 4C 46) 79ELF64-NEXT: Class: 64-bit (0x2) 80ELF64-NEXT: DataEncoding: LittleEndian (0x1) 81ELF64-NEXT: FileVersion: 1 82ELF64-NEXT: OS/ABI: GNU/Linux (0x3) 83ELF64-NEXT: ABIVersion: 0 84ELF64-NEXT: Unused: (00 00 00 00 00 00 00) 85ELF64-NEXT: } 86ELF64-NEXT: Type: Relocatable (0x1) 87ELF64-NEXT: Machine: EM_X86_64 (0x3E) 88ELF64-NEXT: Version: 1 89ELF64-NEXT: Entry: 0x0 90ELF64-NEXT: ProgramHeaderOffset: 0x0 91ELF64-NEXT: SectionHeaderOffset: 0xB8 92ELF64-NEXT: Flags [ (0x0) 93ELF64-NEXT: ] 94ELF64-NEXT: HeaderSize: 64 95ELF64-NEXT: ProgramHeaderEntrySize: 0 96ELF64-NEXT: ProgramHeaderCount: 0 97ELF64-NEXT: SectionHeaderEntrySize: 64 98ELF64-NEXT: SectionHeaderCount: 10 99ELF64-NEXT: StringTableSectionIndex: 7 100ELF64-NEXT: } 101