summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/tools/llvm-objcopy/adjacent-segments.test62
-rw-r--r--llvm/test/tools/llvm-objcopy/identical-segments.test82
-rw-r--r--llvm/test/tools/llvm-objcopy/overlap-chain.test117
-rw-r--r--llvm/test/tools/llvm-objcopy/pt-phdr.test71
-rw-r--r--llvm/test/tools/llvm-objcopy/triple-overlap.test123
5 files changed, 0 insertions, 455 deletions
diff --git a/llvm/test/tools/llvm-objcopy/adjacent-segments.test b/llvm/test/tools/llvm-objcopy/adjacent-segments.test
deleted file mode 100644
index 45f4224f7e8..00000000000
--- a/llvm/test/tools/llvm-objcopy/adjacent-segments.test
+++ /dev/null
@@ -1,62 +0,0 @@
-# This test tests that if two non-overlapping segments are right next to each
-# other no problems arise.
-
-# RUN: yaml2obj %s -o %t
-# RUN: llvm-objcopy %t %t2
-# RUN: llvm-readobj --program-headers %t2 | FileCheck %s
-
-!ELF
-FileHeader:
- Class: ELFCLASS64
- Data: ELFDATA2LSB
- Type: ET_EXEC
- Machine: EM_X86_64
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 24
- - Name: .text2
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x10
- Size: 16
-ProgramHeaders:
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text2
-
-#CHECK: ProgramHeaders [
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x1000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 24
-#CHECK-NEXT: MemSize: 24
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x1020
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 16
-#CHECK-NEXT: MemSize: 16
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 16
-#CHECK-NEXT: }
-#CHECK-NEXT:]
diff --git a/llvm/test/tools/llvm-objcopy/identical-segments.test b/llvm/test/tools/llvm-objcopy/identical-segments.test
deleted file mode 100644
index 7273416da7a..00000000000
--- a/llvm/test/tools/llvm-objcopy/identical-segments.test
+++ /dev/null
@@ -1,82 +0,0 @@
-# This test tests that if two possible parent segments have the same offset that
-# they're disambiguated based on their original index. This ensures that cycles
-# do not occur.
-
-# RUN: yaml2obj %s -o %t
-# RUN: llvm-objcopy %t %t2
-# RUN: llvm-readobj --program-headers %t2 | FileCheck %s
-
-!ELF
-FileHeader:
- Class: ELFCLASS64
- Data: ELFDATA2LSB
- Type: ET_EXEC
- Machine: EM_X86_64
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
- - Name: .text2
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
-ProgramHeaders:
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text2
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text
- - Section: .text2
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text
- - Section: .text2
-
-#CHECK: ProgramHeaders [
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x2000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 4096
-#CHECK-NEXT: MemSize: 4096
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x1000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 8192
-#CHECK-NEXT: MemSize: 8192
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x1000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 8192
-#CHECK-NEXT: MemSize: 8192
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT:]
diff --git a/llvm/test/tools/llvm-objcopy/overlap-chain.test b/llvm/test/tools/llvm-objcopy/overlap-chain.test
deleted file mode 100644
index a084abbb5ba..00000000000
--- a/llvm/test/tools/llvm-objcopy/overlap-chain.test
+++ /dev/null
@@ -1,117 +0,0 @@
-# This test tests how ParentSegment is set for Segments. In particular this test
-# tests that if a chain of parents forms, the offsets are chosen for parents
-# first despite the order of the list. It also tests multiple branches of the
-# code that assigns parents.
-
-# RUN: yaml2obj %s -o %t
-# RUN: llvm-objcopy %t %t2
-# RUN: llvm-readobj -program-headers %t2 | FileCheck %s
-
-!ELF
-FileHeader:
- Class: ELFCLASS64
- Data: ELFDATA2LSB
- Type: ET_EXEC
- Machine: EM_X86_64
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
- - Name: .text2
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
- - Name: .text3
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
- - Name: .text4
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
- - Name: .text5
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
-ProgramHeaders:
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text
- - Section: .text2
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text4
- - Section: .text5
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text3
- - Section: .text4
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text2
- - Section: .text3
-
-#CHECK: ProgramHeaders [
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x1000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 8192
-#CHECK-NEXT: MemSize: 8192
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x4000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 8192
-#CHECK-NEXT: MemSize: 8192
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x3000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 8192
-#CHECK-NEXT: MemSize: 8192
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x2000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 8192
-#CHECK-NEXT: MemSize: 8192
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT:]
diff --git a/llvm/test/tools/llvm-objcopy/pt-phdr.test b/llvm/test/tools/llvm-objcopy/pt-phdr.test
deleted file mode 100644
index 336ce769770..00000000000
--- a/llvm/test/tools/llvm-objcopy/pt-phdr.test
+++ /dev/null
@@ -1,71 +0,0 @@
-# This test simply tests a simple but common real world example of overlapping
-# segments.
-
-# RUN: llvm-objcopy %p/Inputs/pt-phdr.elf %t
-# RUN: llvm-readobj -program-headers %t | FileCheck %s
-
-#CHECK: ProgramHeaders [
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_PHDR
-#CHECK-NEXT: Offset: 0x40
-#CHECK-NEXT: VirtualAddress: 0x200040
-#CHECK-NEXT: PhysicalAddress: 0x200040
-#CHECK-NEXT: FileSize: 280
-#CHECK-NEXT: MemSize: 280
-#CHECK-NEXT: Flags [
-#CHECK-NEXT: PF_R
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 8
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD
-#CHECK-NEXT: Offset: 0x0
-#CHECK-NEXT: VirtualAddress: 0x200000
-#CHECK-NEXT: PhysicalAddress: 0x200000
-#CHECK-NEXT: FileSize: 344
-#CHECK-NEXT: MemSize: 344
-#CHECK-NEXT: Flags [
-#CHECK-NEXT: PF_R
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD
-#CHECK-NEXT: Offset: 0x1000
-#CHECK-NEXT: VirtualAddress: 0x201000
-#CHECK-NEXT: PhysicalAddress: 0x201000
-#CHECK-NEXT: FileSize: 1
-#CHECK-NEXT: MemSize: 1
-#CHECK-NEXT: Flags [
-#CHECK-NEXT: PF_R
-#CHECK-NEXT: PF_X
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD
-#CHECK-NEXT: Offset: 0x2000
-#CHECK-NEXT: VirtualAddress: 0x202000
-#CHECK-NEXT: PhysicalAddress: 0x202000
-#CHECK-NEXT: FileSize: 14
-#CHECK-NEXT: MemSize: 14
-#CHECK-NEXT: Flags [
-#CHECK-NEXT: PF_R
-#CHECK-NEXT: PF_W
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_GNU_STACK (0x6474E551)
-#CHECK-NEXT: Offset: 0x0
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 0
-#CHECK-NEXT: MemSize: 0
-#CHECK-NEXT: Flags [
-#CHECK-NEXT: PF_R
-#CHECK-NEXT: PF_W
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 0
-#CHECK-NEXT: }
-#CHECK-NEXT:]
diff --git a/llvm/test/tools/llvm-objcopy/triple-overlap.test b/llvm/test/tools/llvm-objcopy/triple-overlap.test
deleted file mode 100644
index 503a9075f4a..00000000000
--- a/llvm/test/tools/llvm-objcopy/triple-overlap.test
+++ /dev/null
@@ -1,123 +0,0 @@
-# This test tests that each segment is assigned a canonical parent segment.
-# Importantly if two segments could be the parent segment of a segment this test
-# should cover the case where a new parent replaces the old parent and the case
-# where an old parent is not replaced by a new parent.
-
-# RUN: yaml2obj %s -o %t
-# RUN: llvm-objcopy %t %t2
-# RUN: llvm-readobj --program-headers %t2 | FileCheck %s
-
-!ELF
-FileHeader:
- Class: ELFCLASS64
- Data: ELFDATA2LSB
- Type: ET_EXEC
- Machine: EM_X86_64
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
- - Name: .text2
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
- - Name: .text3
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
- - Name: .text4
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
- - Name: .text5
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x1000
- Size: 4096
-ProgramHeaders:
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text4
- - Section: .text5
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text3
- - Section: .text4
- - Section: .text5
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text
- - Section: .text2
- - Section: .text3
- - Section: .text4
- - Section: .text5
- - Type: PT_LOAD
- Flags: [ PF_X, PF_R ]
- Sections:
- - Section: .text2
- - Section: .text3
- - Section: .text4
- - Section: .text5
-
-#CHECK: ProgramHeaders [
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x4000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 8192
-#CHECK-NEXT: MemSize: 8192
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x3000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 12288
-#CHECK-NEXT: MemSize: 12288
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x1000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 20480
-#CHECK-NEXT: MemSize: 20480
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT: ProgramHeader {
-#CHECK-NEXT: Type: PT_LOAD (0x1)
-#CHECK-NEXT: Offset: 0x2000
-#CHECK-NEXT: VirtualAddress: 0x0
-#CHECK-NEXT: PhysicalAddress: 0x0
-#CHECK-NEXT: FileSize: 16384
-#CHECK-NEXT: MemSize: 16384
-#CHECK-NEXT: Flags [ (0x5)
-#CHECK-NEXT: PF_R (0x4)
-#CHECK-NEXT: PF_X (0x1)
-#CHECK-NEXT: ]
-#CHECK-NEXT: Alignment: 4096
-#CHECK-NEXT: }
-#CHECK-NEXT:]
OpenPOWER on IntegriCloud