diff options
Diffstat (limited to 'test/tools/llvm-readobj')
-rw-r--r-- | test/tools/llvm-readobj/Inputs/relocs.py | 25 | ||||
-rw-r--r-- | test/tools/llvm-readobj/Inputs/trivial.exe.coff-i386 | bin | 0 -> 2560 bytes | |||
-rw-r--r-- | test/tools/llvm-readobj/file-headers.test | 85 | ||||
-rw-r--r-- | test/tools/llvm-readobj/reloc-types.test | 23 |
4 files changed, 85 insertions, 48 deletions
diff --git a/test/tools/llvm-readobj/Inputs/relocs.py b/test/tools/llvm-readobj/Inputs/relocs.py index 232d080..af9459d 100644 --- a/test/tools/llvm-readobj/Inputs/relocs.py +++ b/test/tools/llvm-readobj/Inputs/relocs.py @@ -533,30 +533,6 @@ class Relocs_Elf_i386(Enum): R_386_IRELATIVE = 42 R_386_NUM = 43 -class Relocs_Elf_MBlaze(Enum): - R_MICROBLAZE_NONE = 0 - R_MICROBLAZE_32 = 1 - R_MICROBLAZE_32_PCREL = 2 - R_MICROBLAZE_64_PCREL = 3 - R_MICROBLAZE_32_PCREL_LO = 4 - R_MICROBLAZE_64 = 5 - R_MICROBLAZE_32_LO = 6 - R_MICROBLAZE_SRO32 = 7 - R_MICROBLAZE_SRW32 = 8 - R_MICROBLAZE_64_NONE = 9 - R_MICROBLAZE_32_SYM_OP_SYM = 10 - R_MICROBLAZE_GNU_VTINHERIT = 11 - R_MICROBLAZE_GNU_VTENTRY = 12 - R_MICROBLAZE_GOTPC_64 = 13 - R_MICROBLAZE_GOT_64 = 14 - R_MICROBLAZE_PLT_64 = 15 - R_MICROBLAZE_REL = 16 - R_MICROBLAZE_JUMP_SLOT = 17 - R_MICROBLAZE_GLOB_DAT = 18 - R_MICROBLAZE_GOTOFF_64 = 19 - R_MICROBLAZE_GOTOFF_32 = 20 - R_MICROBLAZE_COPY = 21 - class Relocs_Elf_PPC32(Enum): R_PPC_NONE = 0 R_PPC_ADDR32 = 1 @@ -1071,7 +1047,6 @@ craftElf("relocs.obj.elf-aarch64", "aarch64", Relocs_Elf_AA craftElf("relocs.obj.elf-arm", "arm-unknown-unknown", Relocs_Elf_ARM.entries(), "b sym") craftElf("relocs.obj.elf-mips", "mips-unknown-linux", Relocs_Elf_Mips.entries(), "lui $2, %hi(sym)") craftElf("relocs.obj.elf-mips64el", "mips64el-unknown-linux", Relocs_Elf_Mips.entries(), "lui $2, %hi(sym)") -#craftElf("relocs.obj.elf-mblaze", "mblaze-unknown-unknown", Relocs_Elf_MBlaze.entries(), ...) #craftElf("relocs.obj.elf-hexagon", "hexagon-unknown-unknown", Relocs_Elf_Hexagon.entries(), ...) craftCoff("relocs.obj.coff-i386", "i386-pc-win32", Relocs_Coff_i386.entries(), "mov foo@imgrel(%ebx, %ecx, 4), %eax") diff --git a/test/tools/llvm-readobj/Inputs/trivial.exe.coff-i386 b/test/tools/llvm-readobj/Inputs/trivial.exe.coff-i386 Binary files differnew file mode 100644 index 0000000..1558d24 --- /dev/null +++ b/test/tools/llvm-readobj/Inputs/trivial.exe.coff-i386 diff --git a/test/tools/llvm-readobj/file-headers.test b/test/tools/llvm-readobj/file-headers.test index 226eb93..b900e36 100644 --- a/test/tools/llvm-readobj/file-headers.test +++ b/test/tools/llvm-readobj/file-headers.test @@ -2,6 +2,8 @@ RUN: llvm-readobj -h %p/Inputs/trivial.obj.coff-i386 \ RUN: | FileCheck %s -check-prefix COFF32 RUN: llvm-readobj -h %p/Inputs/trivial.obj.coff-x86-64 \ RUN: | FileCheck %s -check-prefix COFF64 +RUN: llvm-readobj -h %p/Inputs/trivial.exe.coff-i386 \ +RUN: | FileCheck %s -check-prefix PE32 RUN: llvm-readobj -h %p/Inputs/trivial.obj.elf-i386 \ RUN: | FileCheck %s -check-prefix ELF32 RUN: llvm-readobj -h %p/Inputs/trivial.obj.elf-x86-64 \ @@ -98,3 +100,86 @@ ELF64-NEXT: SectionHeaderEntrySize: 64 ELF64-NEXT: SectionHeaderCount: 10 ELF64-NEXT: StringTableSectionIndex: 7 ELF64-NEXT: } + +PE32: File: {{(.*[/\\])?}}trivial.exe.coff-i386 +PE32-NEXT: Format: COFF-i386 +PE32-NEXT: Arch: i386 +PE32-NEXT: AddressSize: 32bit +PE32-NEXT: ImageFileHeader { +PE32-NEXT: Machine: IMAGE_FILE_MACHINE_I386 (0x14C) +PE32-NEXT: SectionCount: 3 +PE32-NEXT: TimeDateStamp: 2013-07-16 00:39:15 (0x51E49633) +PE32-NEXT: PointerToSymbolTable: 0x0 +PE32-NEXT: SymbolCount: 0 +PE32-NEXT: OptionalHeaderSize: 224 +PE32-NEXT: Characteristics [ (0x102) +PE32-NEXT: IMAGE_FILE_32BIT_MACHINE (0x100) +PE32-NEXT: IMAGE_FILE_EXECUTABLE_IMAGE (0x2) +PE32-NEXT: ] +PE32-NEXT: } +PE32-NEXT: ImageOptionalHeader { +PE32-NEXT: MajorLinkerVersion: 11 +PE32-NEXT: MinorLinkerVersion: 0 +PE32-NEXT: SizeOfCode: 512 +PE32-NEXT: SizeOfInitializedData: 1024 +PE32-NEXT: SizeOfUninitializedData: 0 +PE32-NEXT: AddressOfEntryPoint: 0x1000 +PE32-NEXT: BaseOfCode: 0x1000 +PE32-NEXT: BaseOfData: 0x2000 +PE32-NEXT: ImageBase: 0x400000 +PE32-NEXT: SectionAlignment: 4096 +PE32-NEXT: FileAlignment: 512 +PE32-NEXT: MajorOperatingSystemVersion: 6 +PE32-NEXT: MinorOperatingSystemVersion: 0 +PE32-NEXT: MajorImageVersion: 0 +PE32-NEXT: MinorImageVersion: 0 +PE32-NEXT: MajorSubsystemVersion: 6 +PE32-NEXT: MinorSubsystemVersion: 0 +PE32-NEXT: SizeOfImage: 16384 +PE32-NEXT: SizeOfHeaders: 1024 +PE32-NEXT: Subsystem: IMAGE_SUBSYSTEM_WINDOWS_CUI (0x3) +PE32-NEXT: Subsystem [ (0x8140) +PE32-NEXT: IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE (0x40) +PE32-NEXT: IMAGE_DLL_CHARACTERISTICS_NX_COMPAT (0x100) +PE32-NEXT: IMAGE_DLL_CHARACTERISTICS_TERMINAL_SERVER_AWARE (0x8000) +PE32-NEXT: ] +PE32-NEXT: SizeOfStackReserve: 1048576 +PE32-NEXT: SizeOfStackCommit: 4096 +PE32-NEXT: SizeOfHeapReserve: 1048576 +PE32-NEXT: SizeOfHeapCommit: 4096 +PE32-NEXT: NumberOfRvaAndSize: 16 +PE32-NEXT: DataDirectory { +PE32-NEXT: ExportTableRVA: 0x0 +PE32-NEXT: ExportTableSize: 0x0 +PE32-NEXT: ImportTableRVA: 0x0 +PE32-NEXT: ImportTableSize: 0x0 +PE32-NEXT: ResourceTableRVA: 0x0 +PE32-NEXT: ResourceTableSize: 0x0 +PE32-NEXT: ExceptionTableRVA: 0x0 +PE32-NEXT: ExceptionTableSize: 0x0 +PE32-NEXT: CertificateTableRVA: 0x0 +PE32-NEXT: CertificateTableSize: 0x0 +PE32-NEXT: BaseRelocationTableRVA: 0x3000 +PE32-NEXT: BaseRelocationTableSize: 0xC +PE32-NEXT: DebugRVA: 0x0 +PE32-NEXT: DebugSize: 0x0 +PE32-NEXT: ArchitectureRVA: 0x0 +PE32-NEXT: ArchitectureSize: 0x0 +PE32-NEXT: GlobalPtrRVA: 0x0 +PE32-NEXT: GlobalPtrSize: 0x0 +PE32-NEXT: TLSTableRVA: 0x0 +PE32-NEXT: TLSTableSize: 0x0 +PE32-NEXT: LoadConfigTableRVA: 0x0 +PE32-NEXT: LoadConfigTableSize: 0x0 +PE32-NEXT: BoundImportRVA: 0x0 +PE32-NEXT: BoundImportSize: 0x0 +PE32-NEXT: IATRVA: 0x0 +PE32-NEXT: IATSize: 0x0 +PE32-NEXT: DelayImportDescriptorRVA: 0x0 +PE32-NEXT: DelayImportDescriptorSize: 0x0 +PE32-NEXT: CLRRuntimeHeaderRVA: 0x0 +PE32-NEXT: CLRRuntimeHeaderSize: 0x0 +PE32-NEXT: ReservedRVA: 0x0 +PE32-NEXT: ReservedSize: 0x0 +PE32-NEXT: } +PE32-NEXT: } diff --git a/test/tools/llvm-readobj/reloc-types.test b/test/tools/llvm-readobj/reloc-types.test index 08603bc..0c8b54d 100644 --- a/test/tools/llvm-readobj/reloc-types.test +++ b/test/tools/llvm-readobj/reloc-types.test @@ -460,29 +460,6 @@ ELF-MIPS64EL: Type: R_MIPS_COPY/R_MIPS_COPY/R_MIPS_COPY (8289918) ELF-MIPS64EL: Type: R_MIPS_JUMP_SLOT/R_MIPS_JUMP_SLOT/R_MIPS_JUMP_SLOT (8355711) ELF-MIPS64EL: Type: R_MIPS_NUM/R_MIPS_NUM/R_MIPS_NUM (14342874) -ELF-MBLAZE: Type: R_MICROBLAZE_NONE (0) -ELF-MBLAZE: Type: R_MICROBLAZE_32 (1) -ELF-MBLAZE: Type: R_MICROBLAZE_32_PCREL (2) -ELF-MBLAZE: Type: R_MICROBLAZE_64_PCREL (3) -ELF-MBLAZE: Type: R_MICROBLAZE_32_PCREL_LO (4) -ELF-MBLAZE: Type: R_MICROBLAZE_64 (5) -ELF-MBLAZE: Type: R_MICROBLAZE_32_LO (6) -ELF-MBLAZE: Type: R_MICROBLAZE_SRO32 (7) -ELF-MBLAZE: Type: R_MICROBLAZE_SRW32 (8) -ELF-MBLAZE: Type: R_MICROBLAZE_64_NONE (9) -ELF-MBLAZE: Type: R_MICROBLAZE_32_SYM_OP_SYM (10) -ELF-MBLAZE: Type: R_MICROBLAZE_GNU_VTINHERIT (11) -ELF-MBLAZE: Type: R_MICROBLAZE_GNU_VTENTRY (12) -ELF-MBLAZE: Type: R_MICROBLAZE_GOTPC_64 (13) -ELF-MBLAZE: Type: R_MICROBLAZE_GOT_64 (14) -ELF-MBLAZE: Type: R_MICROBLAZE_PLT_64 (15) -ELF-MBLAZE: Type: R_MICROBLAZE_REL (16) -ELF-MBLAZE: Type: R_MICROBLAZE_JUMP_SLOT (17) -ELF-MBLAZE: Type: R_MICROBLAZE_GLOB_DAT (18) -ELF-MBLAZE: Type: R_MICROBLAZE_GOTOFF_64 (19) -ELF-MBLAZE: Type: R_MICROBLAZE_GOTOFF_32 (20) -ELF-MBLAZE: Type: R_MICROBLAZE_COPY (21) - ELF-HEXAGON: Type: R_HEX_NONE (0) ELF-HEXAGON: Type: R_HEX_B22_PCREL (1) ELF-HEXAGON: Type: R_HEX_B15_PCREL (2) |