| ## Report errors when specified file offsets are invalid. |
| |
| # RUN: not yaml2obj %s -DTEXTRAWDATAOFFSET=0xFFFFFFF0 -o %t 2>&1 | \ |
| # RUN: FileCheck %s --check-prefix=ERROR1 |
| # ERROR1: current file offset (4294967288) is bigger than the specified FileOffsetToData for the .data section (108) |
| |
| # RUN: not yaml2obj %s -DDATARAWDATAOFFSET=0xFFFFFFF0 -o %t 2>&1 | \ |
| # RUN: FileCheck %s --check-prefix=ERROR2 |
| # ERROR2: current file offset (4294967284) is bigger than the specified FileOffsetToRelocations for the .text section (112) |
| |
| # RUN: not yaml2obj %s -DRELOCOFFSET=0xFFFFFFF0 -o %t 2>&1 | \ |
| # RUN: FileCheck %s --check-prefix=ERROR3 |
| # ERROR3: current file offset (4294967290) is bigger than the specified SymbolTableOffset (122) |
| |
| # RUN: not yaml2obj %s -DSYMTABOFFSET=0x100000000 -o %t 2>&1 | \ |
| # RUN: FileCheck %s --check-prefix=ERROR4 |
| # ERROR4: maximum object size of 4294967295 exceeded when writing symbols |
| |
| # RUN: not yaml2obj %s -DRELOCOFFSET=0x100000000 -o %t 2>&1 | \ |
| # RUN: FileCheck %s --check-prefix=ERROR5 |
| # ERROR5: maximum object size (4294967295) exceeded when writing relocation data for section .text |
| |
| # RUN: not yaml2obj %s -DDATARAWDATAOFFSET=0x100000000 -o %t 2>&1 | \ |
| # RUN: FileCheck %s --check-prefix=ERROR6 |
| # ERROR6: maximum object size (4294967295) exceeded when writing data for section 2 (.data) |
| |
| --- !XCOFF |
| FileHeader: |
| MagicNumber: 0x1DF |
| NumberOfSections: 2 |
| OffsetToSymbolTable: [[SYMTABOFFSET=0x7A]] |
| EntriesInSymbolTable: 6 |
| AuxiliaryHeaderSize: 0 |
| Flags: 0x0 |
| Sections: |
| - Name: .text |
| Address: 0x0 |
| Size: 0x8 |
| FileOffsetToData: [[TEXTRAWDATAOFFSET=0x64]] |
| FileOffsetToRelocations: [[RELOCOFFSET=0x70]] |
| NumberOfRelocations: 0x1 |
| Flags: [ STYP_TEXT ] |
| SectionData: 386000004BFFFFFC |
| Relocations: |
| - Address: 0x4 |
| Symbol: 0x2 |
| Info: 0x99 |
| Type: 0x1A |
| - Name: .data |
| Address: 0x0 |
| Size: 0x4 |
| FileOffsetToData: [[DATARAWDATAOFFSET=0x6C]] |
| FileOffsetToRelocations: 0 |
| Flags: [ STYP_DATA ] |
| SectionData: 3210ABCD |
| Symbols: |
| - Name: .bar |
| Value: 0x0 |
| Section: N_UNDEF |
| Type: 0x0 |
| StorageClass: C_EXT |
| NumberOfAuxEntries: 1 |
| AuxEntries: |
| - Type: AUX_CSECT |
| SymbolAlignmentAndType: 0 |
| StorageMappingClass: XMC_PR |
| SectionOrLength: 0 |
| - Name: '' |
| Value: 0x0 |
| Section: .text |
| Type: 0x0 |
| StorageClass: C_HIDEXT |
| NumberOfAuxEntries: 1 |
| AuxEntries: |
| - Type: AUX_CSECT |
| SymbolAlignmentAndType: 17 |
| StorageMappingClass: XMC_PR |
| SectionOrLength: 8 |
| - Name: .foo |
| Value: 0x0 |
| Section: .text |
| Type: 0x0 |
| StorageClass: C_EXT |
| NumberOfAuxEntries: 1 |
| AuxEntries: |
| - Type: AUX_CSECT |
| SymbolAlignmentAndType: 2 |
| StorageMappingClass: XMC_PR |
| SectionOrLength: 2 |
| StringTable: {} |
| ... |