summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--llvm/test/Object/Inputs/openbsd-phdrs.elf-x86-64bin544 -> 600 bytes
-rw-r--r--llvm/test/tools/llvm-readobj/program-headers.test16
-rw-r--r--llvm/tools/llvm-readobj/ELFDumper.cpp1
3 files changed, 16 insertions, 1 deletions
diff --git a/llvm/test/Object/Inputs/openbsd-phdrs.elf-x86-64 b/llvm/test/Object/Inputs/openbsd-phdrs.elf-x86-64
index 757d49055a7..dab75bf9669 100644
--- a/llvm/test/Object/Inputs/openbsd-phdrs.elf-x86-64
+++ b/llvm/test/Object/Inputs/openbsd-phdrs.elf-x86-64
Binary files differ
diff --git a/llvm/test/tools/llvm-readobj/program-headers.test b/llvm/test/tools/llvm-readobj/program-headers.test
index 9bcd133bc44..e507442029b 100644
--- a/llvm/test/tools/llvm-readobj/program-headers.test
+++ b/llvm/test/tools/llvm-readobj/program-headers.test
@@ -13,7 +13,10 @@ RUN: | FileCheck %s -check-prefix ELF-MIPS64
##
## test.s is an empty file.
## linker.script:
-## PHDRS { text PT_LOAD FILEHDR PHDRS; foo 0x65a3dbe6; bar 0x65a3dbe7; }
+## PHDRS { text PT_LOAD FILEHDR PHDRS; foo 0x65a3dbe6; bar 0x65a3dbe7; zed 0x65a41be6; }
+## Where 0x65a3dbe6 is the value of PT_OPENBSD_RANDOMIZE,
+## 0x65a3dbe7 is the value of PT_OPENBSD_WXNEEDED,
+## 0x65a41be6 is the value of PT_OPENBSD_BOOTDATA
## SECTIONS { . = SIZEOF_HEADERS; .all : { *(.*) } : text }
RUN: llvm-readobj -program-headers %p/../../Object/Inputs/openbsd-phdrs.elf-x86-64 \
RUN: | FileCheck %s -check-prefix OPENBSD-X86-64
@@ -175,3 +178,14 @@ OPENBSD-X86-64-NEXT: Flags [
OPENBSD-X86-64-NEXT: ]
OPENBSD-X86-64-NEXT: Alignment:
OPENBSD-X86-64-NEXT: }
+OPENBSD-X86-64-NEXT: ProgramHeader {
+OPENBSD-X86-64-NEXT: Type: PT_OPENBSD_BOOTDATA
+OPENBSD-X86-64-NEXT: Offset:
+OPENBSD-X86-64-NEXT: VirtualAddress:
+OPENBSD-X86-64-NEXT: PhysicalAddress:
+OPENBSD-X86-64-NEXT: FileSize:
+OPENBSD-X86-64-NEXT: MemSize:
+OPENBSD-X86-64-NEXT: Flags [
+OPENBSD-X86-64-NEXT: ]
+OPENBSD-X86-64-NEXT: Alignment:
+OPENBSD-X86-64-NEXT: }
diff --git a/llvm/tools/llvm-readobj/ELFDumper.cpp b/llvm/tools/llvm-readobj/ELFDumper.cpp
index 5d7f92212ad..dbeb03df9f4 100644
--- a/llvm/tools/llvm-readobj/ELFDumper.cpp
+++ b/llvm/tools/llvm-readobj/ELFDumper.cpp
@@ -1160,6 +1160,7 @@ static const char *getElfSegmentType(unsigned Arch, unsigned Type) {
LLVM_READOBJ_ENUM_CASE(ELF, PT_OPENBSD_RANDOMIZE);
LLVM_READOBJ_ENUM_CASE(ELF, PT_OPENBSD_WXNEEDED);
+ LLVM_READOBJ_ENUM_CASE(ELF, PT_OPENBSD_BOOTDATA);
default: return "";
}
OpenPOWER on IntegriCloud