summaryrefslogtreecommitdiff
path: root/test/old-elf/linkerscript/phdrs-has-program.test
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2015-12-30 11:57:38 +0000
committerDimitry Andric <dim@FreeBSD.org>2015-12-30 11:57:38 +0000
commit5a5c549fe9a3fef595297bd21d36bed8409dc37d (patch)
treea964c8f5ac85b7b641cac022c5f9bf4eed3d2b9b /test/old-elf/linkerscript/phdrs-has-program.test
parentfb911942f1434f3d1750f83f25f5e42c80e60638 (diff)
Notes
Diffstat (limited to 'test/old-elf/linkerscript/phdrs-has-program.test')
-rw-r--r--test/old-elf/linkerscript/phdrs-has-program.test33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/old-elf/linkerscript/phdrs-has-program.test b/test/old-elf/linkerscript/phdrs-has-program.test
new file mode 100644
index 0000000000000..83fe94c70614c
--- /dev/null
+++ b/test/old-elf/linkerscript/phdrs-has-program.test
@@ -0,0 +1,33 @@
+/*
+Test when program segment is set it's generated.
+
+RUN: yaml2obj -format=elf %p/Inputs/simple.o.yaml -o=%t.o
+
+RUN: lld -flavor old-gnu -target x86_64 -T %s %t.o -static -o %t1
+RUN: llvm-readobj -program-headers %t1 | FileCheck -check-prefix PROGRAM-PHDR %s
+*/
+
+ENTRY(_start)
+
+PHDRS
+{
+ header PT_PHDR FILEHDR PHDRS;
+ text PT_LOAD PHDRS;
+}
+
+SECTIONS
+{
+ .text : { *(.text) } :text
+ .data : { *(.data) }
+}
+
+/*
+PROGRAM-PHDR: ProgramHeader {
+PROGRAM-PHDR: Type: PT_PHDR (0x6)
+PROGRAM-PHDR: VirtualAddress: 0x400040
+PROGRAM-PHDR: Flags [ (0x5)
+PROGRAM-PHDR: PF_R (0x4)
+PROGRAM-PHDR: PF_X (0x1)
+PROGRAM-PHDR: ]
+PROGRAM-PHDR: }
+*/