summaryrefslogtreecommitdiffstats
path: root/lld/test
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-11-03 21:35:14 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-11-03 21:35:14 +0000
commit443f50a8339a28ea4b05f9177f678d57aa37a7ef (patch)
treea4cbea1dcaa99a5e96cb724d7140d1cd334acf23 /lld/test
parentd5fa22620b4669e54c9b91844cf15178bc02fab0 (diff)
downloadbcm5719-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.s34
-rw-r--r--lld/test/elf2/basic.s32
-rw-r--r--lld/test/elf2/basic32.s34
-rw-r--r--lld/test/elf2/basic64be.s32
-rw-r--r--lld/test/elf2/merge-shared.s2
-rw-r--r--lld/test/elf2/string-table.s6
-rw-r--r--lld/test/elf2/tls.s9
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.
OpenPOWER on IntegriCloud