## Check sections consisting only of .symidx directives. The test checks that ## indices in the sections are updated after stripping as the symbol table could ## be changed during stripping. # RUN: yaml2obj %s -o %t.in.o # RUN: llvm-objcopy --strip-debug %t.in.o %t.out.o # RUN: llvm-readobj -s -x '.gehcont$y' -x '.gfids$y' -x '.giats$y' -x '.gljmp$y' %t.out.o | FileCheck %s # CHECK: Symbols [ # CHECK: Name: .text # CHECK: Name: .gehcont$y # CHECK: AuxSectionDef { # CHECK: Checksum: 0x82EA2D2 # CHECK: } # CHECK: Name: $ehgcr_0_1 # CHECK: Name: .gfids$y # CHECK: AuxSectionDef { # CHECK: Checksum: 0xAF00C48B # CHECK: } # CHECK: Name: .giats$y # CHECK: AuxSectionDef { # CHECK: Checksum: 0x4AD6BFB8 # CHECK: } # CHECK: Name: .gljmp$y # CHECK: AuxSectionDef { # CHECK: Checksum: 0xD457699C # CHECK: } # CHECK: Name: foo # CHECK: ] # CHECK: Hex dump of section '.gehcont$y': # CHECK-NEXT: 0x00000000 04000000 04000000 04000000 # CHECK: Hex dump of section '.gfids$y': # CHECK-NEXT: 0x00000000 0b000000 0d000000 # CHECK: Hex dump of section '.giats$y': # CHECK-NEXT: 0x00000000 0c000000 # CHECK: Hex dump of section '.gljmp$y': # CHECK-NEXT: 0x00000000 0b000000 0c000000 0d000000 --- !COFF header: Machine: IMAGE_FILE_MACHINE_AMD64 Characteristics: [ ] sections: - Name: .text Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ] - Name: '.debug$S' Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_DISCARDABLE, IMAGE_SCN_MEM_READ ] Alignment: 4 SectionData: 04000000F100000044656275672073656374696F6E20746F20626520737472697070656400 SizeOfRawData: 37 - Name: '.gehcont$y' Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ] Alignment: 4 SectionData: '060000000600000006000000' SizeOfRawData: 12 - Name: '.gfids$y' Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ] Alignment: 4 SectionData: '0d0000000f000000' SizeOfRawData: 8 - Name: '.giats$y' Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ] Alignment: 4 SectionData: '0e000000' SizeOfRawData: 4 - Name: '.gljmp$y' Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ ] Alignment: 4 SectionData: '0d0000000e0000000f000000' SizeOfRawData: 12 symbols: - Name: .text Value: 0 SectionNumber: 1 SimpleType: IMAGE_SYM_TYPE_NULL ComplexType: IMAGE_SYM_DTYPE_NULL StorageClass: IMAGE_SYM_CLASS_STATIC SectionDefinition: Length: 0 NumberOfRelocations: 0 NumberOfLinenumbers: 0 CheckSum: 0 Number: 1 - Name: '.debug$S' Value: 0 SectionNumber: 2 SimpleType: IMAGE_SYM_TYPE_NULL ComplexType: IMAGE_SYM_DTYPE_NULL StorageClass: IMAGE_SYM_CLASS_STATIC SectionDefinition: Length: 37 NumberOfRelocations: 0 NumberOfLinenumbers: 0 CheckSum: 820498156 Number: 2 - Name: '.gehcont$y' Value: 0 SectionNumber: 3 SimpleType: IMAGE_SYM_TYPE_NULL ComplexType: IMAGE_SYM_DTYPE_NULL StorageClass: IMAGE_SYM_CLASS_STATIC SectionDefinition: Length: 12 NumberOfRelocations: 0 NumberOfLinenumbers: 0 CheckSum: 0x30E7CEEC Number: 3 - Name: '$ehgcr_0_1' Value: 0 SectionNumber: 1 SimpleType: IMAGE_SYM_TYPE_NULL ComplexType: IMAGE_SYM_DTYPE_NULL StorageClass: IMAGE_SYM_CLASS_STATIC - Name: '.gfids$y' Value: 0 SectionNumber: 4 SimpleType: IMAGE_SYM_TYPE_NULL ComplexType: IMAGE_SYM_DTYPE_NULL StorageClass: IMAGE_SYM_CLASS_STATIC SectionDefinition: Length: 8 NumberOfRelocations: 0 NumberOfLinenumbers: 0 CheckSum: 0x459345AD Number: 4 - Name: '.giats$y' Value: 0 SectionNumber: 5 SimpleType: IMAGE_SYM_TYPE_NULL ComplexType: IMAGE_SYM_DTYPE_NULL StorageClass: IMAGE_SYM_CLASS_STATIC SectionDefinition: Length: 8 NumberOfRelocations: 0 NumberOfLinenumbers: 0 CheckSum: 0x31852256 Number: 5 - Name: '.gljmp$y' Value: 0 SectionNumber: 6 SimpleType: IMAGE_SYM_TYPE_NULL ComplexType: IMAGE_SYM_DTYPE_NULL StorageClass: IMAGE_SYM_CLASS_STATIC SectionDefinition: Length: 16 NumberOfRelocations: 0 NumberOfLinenumbers: 0 CheckSum: 0xC608680B Number: 6 - Name: foo Value: 0 SectionNumber: 0 SimpleType: IMAGE_SYM_TYPE_NULL ComplexType: IMAGE_SYM_DTYPE_NULL StorageClass: IMAGE_SYM_CLASS_EXTERNAL - Name: bar Value: 0 SectionNumber: 0 SimpleType: IMAGE_SYM_TYPE_NULL ComplexType: IMAGE_SYM_DTYPE_NULL StorageClass: IMAGE_SYM_CLASS_EXTERNAL - Name: baz Value: 0 SectionNumber: 0 SimpleType: IMAGE_SYM_TYPE_NULL ComplexType: IMAGE_SYM_DTYPE_NULL StorageClass: IMAGE_SYM_CLASS_EXTERNAL ...