| # RUN: yaml2obj %s | llvm-readobj --file-headers -r --expand-relocs - | FileCheck %s --check-prefix COFF-I386 | |
| # RUN: yaml2obj -o %t %s | |
| # RUN: llvm-readobj --file-headers -r --expand-relocs %t | FileCheck %s --check-prefix COFF-I386 | |
| # COFF-I386: Characteristics [ (0x200) | |
| # COFF-I386-NEXT: IMAGE_FILE_DEBUG_STRIPPED (0x200) | |
| # COFF-I386-NEXT: ] | |
| # COFF-I386: Relocations [ | |
| # COFF-I386-NEXT: Section (1) .text { | |
| # COFF-I386-NEXT: Relocation { | |
| # COFF-I386-NEXT: Offset: 0xE | |
| # COFF-I386-NEXT: Type: IMAGE_REL_I386_DIR32 (6) | |
| # COFF-I386-NEXT: Symbol: L_.str | |
| # COFF-I386-NEXT: SymbolIndex: 5 | |
| # COFF-I386-NEXT: } | |
| # COFF-I386-NEXT: Relocation { | |
| # COFF-I386-NEXT: Offset: 0x13 | |
| # COFF-I386-NEXT: Type: IMAGE_REL_I386_REL32 (20) | |
| # COFF-I386-NEXT: Symbol: _puts | |
| # COFF-I386-NEXT: SymbolIndex: 6 | |
| # COFF-I386-NEXT: } | |
| # COFF-I386-NEXT: Relocation { | |
| # COFF-I386-NEXT: Offset: 0x18 | |
| # COFF-I386-NEXT: Type: IMAGE_REL_I386_REL32 (20) | |
| # COFF-I386-NEXT: Symbol: _SomeOtherFunction | |
| # COFF-I386-NEXT: SymbolIndex: 7 | |
| # COFF-I386-NEXT: } | |
| # COFF-I386-NEXT: } | |
| # COFF-I386-NEXT: ] | |
| !COFF | |
| header: !Header | |
| Machine: IMAGE_FILE_MACHINE_I386 # (0x14c) | |
| Characteristics: [ IMAGE_FILE_DEBUG_STRIPPED ] | |
| sections: | |
| - !Section | |
| Name: .text | |
| Alignment: 16 | |
| Characteristics: [IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ, ] # 0x60500020 | |
| SectionData: !hex "83EC0CC744240800000000C7042400000000E800000000E8000000008B44240883C40CC3" # |....D$.......$...............D$.....| | |
| Relocations: | |
| - !Relocation | |
| VirtualAddress: 0xe | |
| SymbolName: L_.str | |
| Type: IMAGE_REL_I386_DIR32 | |
| - !Relocation | |
| VirtualAddress: 0x13 | |
| SymbolName: _puts | |
| Type: IMAGE_REL_I386_REL32 | |
| - !Relocation | |
| VirtualAddress: 0x18 | |
| SymbolName: _SomeOtherFunction | |
| Type: IMAGE_REL_I386_REL32 | |
| - !Section | |
| Name: .data | |
| Alignment: 1 | |
| Characteristics: [IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE, ] # 0xc0100040 | |
| SectionData: !hex "48656C6C6F20576F726C642100" # |Hello World!.| | |
| symbols: | |
| - !Symbol | |
| Name: .text | |
| Value: 0 | |
| SectionNumber: 1 | |
| SimpleType: IMAGE_SYM_TYPE_NULL # (0) | |
| ComplexType: IMAGE_SYM_DTYPE_NULL # (0) | |
| StorageClass: IMAGE_SYM_CLASS_STATIC # (3) | |
| SectionDefinition: | |
| Length: 36 | |
| NumberOfRelocations: 3 | |
| NumberOfLinenumbers: 0 | |
| CheckSum: 0 | |
| Number: 1 | |
| - !Symbol | |
| Name: .data | |
| Value: 0 | |
| SectionNumber: 2 | |
| SimpleType: IMAGE_SYM_TYPE_NULL # (0) | |
| ComplexType: IMAGE_SYM_DTYPE_NULL # (0) | |
| StorageClass: IMAGE_SYM_CLASS_STATIC # (3) | |
| SectionDefinition: | |
| Length: 13 | |
| NumberOfRelocations: 0 | |
| NumberOfLinenumbers: 0 | |
| CheckSum: 0 | |
| Number: 2 | |
| - !Symbol | |
| Name: _main | |
| Value: 0 | |
| SectionNumber: 1 | |
| SimpleType: IMAGE_SYM_TYPE_NULL # (0) | |
| ComplexType: IMAGE_SYM_DTYPE_FUNCTION # (2) | |
| StorageClass: IMAGE_SYM_CLASS_EXTERNAL # (2) | |
| - !Symbol | |
| Name: L_.str | |
| Value: 0 | |
| SectionNumber: 2 | |
| SimpleType: IMAGE_SYM_TYPE_NULL # (0) | |
| ComplexType: IMAGE_SYM_DTYPE_NULL # (0) | |
| StorageClass: IMAGE_SYM_CLASS_STATIC # (3) | |
| - !Symbol | |
| Name: _puts | |
| Value: 0 | |
| SectionNumber: 0 | |
| SimpleType: IMAGE_SYM_TYPE_NULL # (0) | |
| ComplexType: IMAGE_SYM_DTYPE_NULL # (0) | |
| StorageClass: IMAGE_SYM_CLASS_EXTERNAL # (2) | |
| - !Symbol | |
| Name: _SomeOtherFunction | |
| Value: 0 | |
| SectionNumber: 0 | |
| SimpleType: IMAGE_SYM_TYPE_NULL # (0) | |
| ComplexType: IMAGE_SYM_DTYPE_NULL # (0) | |
| StorageClass: IMAGE_SYM_CLASS_EXTERNAL # (2) |