diff options
| author | Rafael Espindola <rafael.espindola@gmail.com> | 2015-11-03 21:35:14 +0000 |
|---|---|---|
| committer | Rafael Espindola <rafael.espindola@gmail.com> | 2015-11-03 21:35:14 +0000 |
| commit | 443f50a8339a28ea4b05f9177f678d57aa37a7ef (patch) | |
| tree | a4cbea1dcaa99a5e96cb724d7140d1cd334acf23 /lld/test | |
| parent | d5fa22620b4669e54c9b91844cf15178bc02fab0 (diff) | |
| download | bcm5719-llvm-443f50a8339a28ea4b05f9177f678d57aa37a7ef.tar.gz bcm5719-llvm-443f50a8339a28ea4b05f9177f678d57aa37a7ef.zip | |
Create .bss only when needed.
This is a small complication, but produces nicer output and is a step to
handling zero size sections uniformly.
llvm-svn: 251980
Diffstat (limited to 'lld/test')
| -rw-r--r-- | lld/test/elf2/basic-aarch64.s | 34 | ||||
| -rw-r--r-- | lld/test/elf2/basic.s | 32 | ||||
| -rw-r--r-- | lld/test/elf2/basic32.s | 34 | ||||
| -rw-r--r-- | lld/test/elf2/basic64be.s | 32 | ||||
| -rw-r--r-- | lld/test/elf2/merge-shared.s | 2 | ||||
| -rw-r--r-- | lld/test/elf2/string-table.s | 6 | ||||
| -rw-r--r-- | lld/test/elf2/tls.s | 9 |
7 files changed, 38 insertions, 111 deletions
diff --git a/lld/test/elf2/basic-aarch64.s b/lld/test/elf2/basic-aarch64.s index cc4119730c7..6eb42a1ed49 100644 --- a/lld/test/elf2/basic-aarch64.s +++ b/lld/test/elf2/basic-aarch64.s @@ -26,15 +26,15 @@ _start: # CHECK-NEXT: Version: 1 # CHECK-NEXT: Entry: [[ENTRY:0x[0-9A-F]+]] # CHECK-NEXT: ProgramHeaderOffset: 0x40 -# CHECK-NEXT: SectionHeaderOffset: 0x1090 +# CHECK-NEXT: SectionHeaderOffset: 0x1088 # CHECK-NEXT: Flags [ (0x0) # CHECK-NEXT: ] # CHECK-NEXT: HeaderSize: 64 # CHECK-NEXT: ProgramHeaderEntrySize: 56 # CHECK-NEXT: ProgramHeaderCount: 3 # CHECK-NEXT: SectionHeaderEntrySize: 64 -# CHECK-NEXT: SectionHeaderCount: 6 -# CHECK-NEXT: StringTableSectionIndex: 4 +# CHECK-NEXT: SectionHeaderCount: 5 +# CHECK-NEXT: StringTableSectionIndex: 3 # CHECK-NEXT: } # CHECK-NEXT: Sections [ # CHECK-NEXT: Section { @@ -69,22 +69,6 @@ _start: # CHECK-NEXT: } # CHECK-NEXT: Section { # CHECK-NEXT: Index: 2 -# CHECK-NEXT: Name: .bss -# CHECK-NEXT: Type: SHT_NOBITS (0x8) -# CHECK-NEXT: Flags [ (0x3) -# CHECK-NEXT: SHF_ALLOC (0x2) -# CHECK-NEXT: SHF_WRITE (0x1) -# CHECK-NEXT: ] -# CHECK-NEXT: Address: 0x1100C -# CHECK-NEXT: Offset: 0x100C -# CHECK-NEXT: Size: 0 -# CHECK-NEXT: Link: 0 -# CHECK-NEXT: Info: 0 -# CHECK-NEXT: AddressAlignment: 0 -# CHECK-NEXT: EntrySize: 0 -# CHECK-NEXT: } -# CHECK-NEXT: Section { -# CHECK-NEXT: Index: 3 # CHECK-NEXT: Name: .symtab # CHECK-NEXT: Type: SHT_SYMTAB (0x2) # CHECK-NEXT: Flags [ (0x0) @@ -92,33 +76,33 @@ _start: # CHECK-NEXT: Address: 0x0 # CHECK-NEXT: Offset: 0x1010 # CHECK-NEXT: Size: 72 -# CHECK-NEXT: Link: 5 +# CHECK-NEXT: Link: 4 # CHECK-NEXT: Info: 2 # CHECK-NEXT: AddressAlignment: 8 # CHECK-NEXT: EntrySize: 24 # CHECK-NEXT: } # CHECK-NEXT: Section { -# CHECK-NEXT: Index: 4 +# CHECK-NEXT: Index: 3 # CHECK-NEXT: Name: .shstrtab # CHECK-NEXT: Type: SHT_STRTAB (0x3) # CHECK-NEXT: Flags [ (0x0) # CHECK-NEXT: ] # CHECK-NEXT: Address: 0x0 # CHECK-NEXT: Offset: 0x1058 -# CHECK-NEXT: Size: 38 +# CHECK-NEXT: Size: 33 # CHECK-NEXT: Link: 0 # CHECK-NEXT: Info: 0 # CHECK-NEXT: AddressAlignment: 1 # CHECK-NEXT: EntrySize: 0 # CHECK-NEXT: } # CHECK-NEXT: Section { -# CHECK-NEXT: Index: 5 -# CHECK-NEXT: Name: .strtab (22) +# CHECK-NEXT: Index: 4 +# CHECK-NEXT: Name: .strtab (17) # CHECK-NEXT: Type: SHT_STRTAB (0x3) # CHECK-NEXT: Flags [ (0x0) # CHECK-NEXT: ] # CHECK-NEXT: Address: 0x0 -# CHECK-NEXT: Offset: 0x107E +# CHECK-NEXT: Offset: 0x1079 # CHECK-NEXT: Size: 13 # CHECK-NEXT: Link: 0 # CHECK-NEXT: Info: 0 diff --git a/lld/test/elf2/basic.s b/lld/test/elf2/basic.s index 58023e8ad6f..8a97d4d4a1e 100644 --- a/lld/test/elf2/basic.s +++ b/lld/test/elf2/basic.s @@ -34,8 +34,8 @@ _start: # CHECK-NEXT: ProgramHeaderEntrySize: 56 # CHECK-NEXT: ProgramHeaderCount: 3 # CHECK-NEXT: SectionHeaderEntrySize: 64 -# CHECK-NEXT: SectionHeaderCount: 6 -# CHECK-NEXT: StringTableSectionIndex: 4 +# CHECK-NEXT: SectionHeaderCount: 5 +# CHECK-NEXT: StringTableSectionIndex: 3 # CHECK-NEXT: } # CHECK-NEXT: Sections [ # CHECK-NEXT: Section { @@ -70,22 +70,6 @@ _start: # CHECK-NEXT: } # CHECK-NEXT: Section { # CHECK-NEXT: Index: 2 -# CHECK-NEXT: Name: .bss -# CHECK-NEXT: Type: SHT_NOBITS (0x8) -# CHECK-NEXT: Flags [ (0x3) -# CHECK-NEXT: SHF_ALLOC (0x2) -# CHECK-NEXT: SHF_WRITE (0x1) -# CHECK-NEXT: ] -# CHECK-NEXT: Address: 0x11010 -# CHECK-NEXT: Offset: 0x1010 -# CHECK-NEXT: Size: 0 -# CHECK-NEXT: Link: 0 -# CHECK-NEXT: Info: 0 -# CHECK-NEXT: AddressAlignment: 0 -# CHECK-NEXT: EntrySize: 0 -# CHECK-NEXT: } -# CHECK-NEXT: Section { -# CHECK-NEXT: Index: 3 # CHECK-NEXT: Name: .symtab # CHECK-NEXT: Type: SHT_SYMTAB (0x2) # CHECK-NEXT: Flags [ (0x0) @@ -93,33 +77,33 @@ _start: # CHECK-NEXT: Address: 0x0 # CHECK-NEXT: Offset: 0x1010 # CHECK-NEXT: Size: 48 -# CHECK-NEXT: Link: 5 +# CHECK-NEXT: Link: 4 # CHECK-NEXT: Info: 1 # CHECK-NEXT: AddressAlignment: 8 # CHECK-NEXT: EntrySize: 24 # CHECK-NEXT: } # CHECK-NEXT: Section { -# CHECK-NEXT: Index: 4 +# CHECK-NEXT: Index: 3 # CHECK-NEXT: Name: .shstrtab # CHECK-NEXT: Type: SHT_STRTAB (0x3) # CHECK-NEXT: Flags [ (0x0) # CHECK-NEXT: ] # CHECK-NEXT: Address: 0x0 # CHECK-NEXT: Offset: 0x1040 -# CHECK-NEXT: Size: 38 +# CHECK-NEXT: Size: 33 # CHECK-NEXT: Link: 0 # CHECK-NEXT: Info: 0 # CHECK-NEXT: AddressAlignment: 1 # CHECK-NEXT: EntrySize: 0 # CHECK-NEXT: } # CHECK-NEXT: Section { -# CHECK-NEXT: Index: 5 -# CHECK-NEXT: Name: .strtab (22) +# CHECK-NEXT: Index: 4 +# CHECK-NEXT: Name: .strtab (17) # CHECK-NEXT: Type: SHT_STRTAB (0x3) # CHECK-NEXT: Flags [ (0x0) # CHECK-NEXT: ] # CHECK-NEXT: Address: 0x0 -# CHECK-NEXT: Offset: 0x1066 +# CHECK-NEXT: Offset: 0x1061 # CHECK-NEXT: Size: 8 # CHECK-NEXT: Link: 0 # CHECK-NEXT: Info: 0 diff --git a/lld/test/elf2/basic32.s b/lld/test/elf2/basic32.s index 5b1f534ac59..498d04b4776 100644 --- a/lld/test/elf2/basic32.s +++ b/lld/test/elf2/basic32.s @@ -25,15 +25,15 @@ _start: # CHECK-NEXT: Version: 1 # CHECK-NEXT: Entry: 0x11000 # CHECK-NEXT: ProgramHeaderOffset: 0x34 -# CHECK-NEXT: SectionHeaderOffset: 0x105C +# CHECK-NEXT: SectionHeaderOffset: 0x1058 # CHECK-NEXT: Flags [ (0x0) # CHECK-NEXT: ] # CHECK-NEXT: HeaderSize: 52 # CHECK-NEXT: ProgramHeaderEntrySize: 32 # CHECK-NEXT: ProgramHeaderCount: 3 # CHECK-NEXT: SectionHeaderEntrySize: 40 -# CHECK-NEXT: SectionHeaderCount: 6 -# CHECK-NEXT: StringTableSectionIndex: 4 +# CHECK-NEXT: SectionHeaderCount: 5 +# CHECK-NEXT: StringTableSectionIndex: 3 # CHECK-NEXT: } # CHECK-NEXT: Sections [ # CHECK-NEXT: Section { @@ -68,22 +68,6 @@ _start: # CHECK-NEXT: } # CHECK-NEXT: Section { # CHECK-NEXT: Index: 2 -# CHECK-NEXT: Name: .bss -# CHECK-NEXT: Type: SHT_NOBITS (0x8) -# CHECK-NEXT: Flags [ (0x3) -# CHECK-NEXT: SHF_ALLOC (0x2) -# CHECK-NEXT: SHF_WRITE (0x1) -# CHECK-NEXT: ] -# CHECK-NEXT: Address: 0x1100C -# CHECK-NEXT: Offset: 0x100C -# CHECK-NEXT: Size: 0 -# CHECK-NEXT: Link: 0 -# CHECK-NEXT: Info: 0 -# CHECK-NEXT: AddressAlignment: 0 -# CHECK-NEXT: EntrySize: 0 -# CHECK-NEXT: } -# CHECK-NEXT: Section { -# CHECK-NEXT: Index: 3 # CHECK-NEXT: Name: .symtab # CHECK-NEXT: Type: SHT_SYMTAB # CHECK-NEXT: Flags [ @@ -91,33 +75,33 @@ _start: # CHECK-NEXT: Address: 0x0 # CHECK-NEXT: Offset: 0x100C # CHECK-NEXT: Size: 32 -# CHECK-NEXT: Link: 5 +# CHECK-NEXT: Link: 4 # CHECK-NEXT: Info: 1 # CHECK-NEXT: AddressAlignment: 4 # CHECK-NEXT: EntrySize: 16 # CHECK-NEXT: } # CHECK-NEXT: Section { -# CHECK-NEXT: Index: 4 +# CHECK-NEXT: Index: 3 # CHECK-NEXT: Name: .shstrtab # CHECK-NEXT: Type: SHT_STRTAB (0x3) # CHECK-NEXT: Flags [ (0x0) # CHECK-NEXT: ] # CHECK-NEXT: Address: 0x0 # CHECK-NEXT: Offset: 0x102C -# CHECK-NEXT: Size: 38 +# CHECK-NEXT: Size: 33 # CHECK-NEXT: Link: 0 # CHECK-NEXT: Info: 0 # CHECK-NEXT: AddressAlignment: 1 # CHECK-NEXT: EntrySize: 0 # CHECK-NEXT: } # CHECK-NEXT: Section { -# CHECK-NEXT: Index: 5 -# CHECK-NEXT: Name: .strtab (22) +# CHECK-NEXT: Index: 4 +# CHECK-NEXT: Name: .strtab (17) # CHECK-NEXT: Type: SHT_STRTAB (0x3) # CHECK-NEXT: Flags [ (0x0) # CHECK-NEXT: ] # CHECK-NEXT: Address: 0x0 -# CHECK-NEXT: Offset: 0x1052 +# CHECK-NEXT: Offset: 0x104D # CHECK-NEXT: Size: 8 # CHECK-NEXT: Link: 0 # CHECK-NEXT: Info: 0 diff --git a/lld/test/elf2/basic64be.s b/lld/test/elf2/basic64be.s index 6e77114eb58..ebacc614ad6 100644 --- a/lld/test/elf2/basic64be.s +++ b/lld/test/elf2/basic64be.s @@ -45,8 +45,8 @@ _start: # CHECK-NEXT: ProgramHeaderEntrySize: 56 # CHECK-NEXT: ProgramHeaderCount: 4 # CHECK-NEXT: SectionHeaderEntrySize: 64 -# CHECK-NEXT: SectionHeaderCount: 9 -# CHECK-NEXT: StringTableSectionIndex: 7 +# CHECK-NEXT: SectionHeaderCount: 8 +# CHECK-NEXT: StringTableSectionIndex: 6 # CHECK-NEXT: } # CHECK-NEXT: Sections [ # CHECK-NEXT: Section { @@ -145,22 +145,6 @@ _start: # CHECK-NEXT: } # CHECK-NEXT: Section { # CHECK-NEXT: Index: 5 -# CHECK-NEXT: Name: .bss -# CHECK-NEXT: Type: SHT_NOBITS (0x8) -# CHECK-NEXT: Flags [ (0x3) -# CHECK-NEXT: SHF_ALLOC (0x2) -# CHECK-NEXT: SHF_WRITE (0x1) -# CHECK-NEXT: ] -# CHECK-NEXT: Address: 0x10020058 -# CHECK-NEXT: Offset: 0x20058 -# CHECK-NEXT: Size: 0 -# CHECK-NEXT: Link: 0 -# CHECK-NEXT: Info: 0 -# CHECK-NEXT: AddressAlignment: 0 -# CHECK-NEXT: EntrySize: 0 -# CHECK-NEXT: } -# CHECK-NEXT: Section { -# CHECK-NEXT: Index: 6 # CHECK-NEXT: Name: .symtab # CHECK-NEXT: Type: SHT_SYMTAB (0x2) # CHECK-NEXT: Flags [ (0x0) @@ -168,7 +152,7 @@ _start: # CHECK-NEXT: Address: 0x0 # CHECK-NEXT: Offset: 0x20058 # CHECK-NEXT: Size: 48 -# CHECK-NEXT: Link: 8 +# CHECK-NEXT: Link: 7 # CHECK-NEXT: Info: 1 # CHECK-NEXT: AddressAlignment: 8 # CHECK-NEXT: EntrySize: 24 @@ -176,14 +160,14 @@ _start: # CHECK: ) # CHECK-NEXT: } # CHECK-NEXT: Section { -# CHECK-NEXT: Index: 7 +# CHECK-NEXT: Index: 6 # CHECK-NEXT: Name: .shstrtab # CHECK-NEXT: Type: SHT_STRTAB (0x3) # CHECK-NEXT: Flags [ (0x0) # CHECK-NEXT: ] # CHECK-NEXT: Address: 0x0 # CHECK-NEXT: Offset: 0x20088 -# CHECK-NEXT: Size: 54 +# CHECK-NEXT: Size: 49 # CHECK-NEXT: Link: 0 # CHECK-NEXT: Info: 0 # CHECK-NEXT: AddressAlignment: 1 @@ -192,13 +176,13 @@ _start: # CHECK: ) # CHECK-NEXT: } # CHECK-NEXT: Section { -# CHECK-NEXT: Index: 8 -# CHECK-NEXT: Name: .strtab (32) +# CHECK-NEXT: Index: 7 +# CHECK-NEXT: Name: .strtab (27) # CHECK-NEXT: Type: SHT_STRTAB (0x3) # CHECK-NEXT: Flags [ (0x0) # CHECK-NEXT: ] # CHECK-NEXT: Address: 0x0 -# CHECK-NEXT: Offset: 0x200BE +# CHECK-NEXT: Offset: 0x200B9 # CHECK-NEXT: Size: 8 # CHECK-NEXT: Link: 0 # CHECK-NEXT: Info: 0 diff --git a/lld/test/elf2/merge-shared.s b/lld/test/elf2/merge-shared.s index 55168bf4685..7984e94c83c 100644 --- a/lld/test/elf2/merge-shared.s +++ b/lld/test/elf2/merge-shared.s @@ -11,7 +11,7 @@ .quad foo + 6 -// CHECK: Name: foo (20) +// CHECK: Name: foo // CHECK-NEXT: Type: SHT_PROGBITS // CHECK-NEXT: Flags [ // CHECK-NEXT: SHF_ALLOC diff --git a/lld/test/elf2/string-table.s b/lld/test/elf2/string-table.s index e4907ae9669..9db95b2a701 100644 --- a/lld/test/elf2/string-table.s +++ b/lld/test/elf2/string-table.s @@ -58,9 +58,9 @@ _start: // CHECK-NEXT: AddressAlignment: 1 // CHECK-NEXT: EntrySize: 0 // CHECK-NEXT: SectionData ( -// CHECK-NEXT: 0000: 002E7465 7874002E 62737300 666F6F62 |..text..bss.foob| -// CHECK-NEXT: 0010: 6172002E 73687374 72746162 002E7374 |ar..shstrtab..st| -// CHECK-NEXT: 0020: 72746162 002E7379 6D746162 00 |rtab..symtab.| +// CHECK-NEXT: 0000: 002E7465 78740066 6F6F6261 72002E73 |..text.foobar..s| +// CHECK-NEXT: 0010: 68737472 74616200 2E737472 74616200 |hstrtab..strtab.| +// CHECK-NEXT: 0020: 2E73796D 74616200 |.symtab.| // CHECK-NEXT: ) // CHECK-NEXT:} // CHECK: Name: .strtab diff --git a/lld/test/elf2/tls.s b/lld/test/elf2/tls.s index f0ed89a909f..5b5fc4f822a 100644 --- a/lld/test/elf2/tls.s +++ b/lld/test/elf2/tls.s @@ -87,15 +87,6 @@ _start: // CHECK-NEXT: AddressAlignment: // CHECK-NEXT: EntrySize: // CHECK-NEXT: } -// CHECK-NEXT: Section { -// CHECK-NEXT: Index: -// CHECK-NEXT: Name: -// CHECK-NEXT: Type: -// CHECK-NEXT: Flags [ -// CHECK-NEXT: SHF_ALLOC -// CHECK-NEXT: SHF_WRITE -// CHECK-NEXT: ] -// CHECK-NEXT: Address: [[TBSS_ADDR]] // Check that the TLS NOBITS sections weren't added to the R/W PT_LOAD's size. |

