summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorHubert Tong <hubert.reinterpretcast@gmail.com>2019-04-04 00:53:21 +0000
committerHubert Tong <hubert.reinterpretcast@gmail.com>2019-04-04 00:53:21 +0000
commitab2eb2bfacb4b2a3642e7716ddaf2638149aa0b4 (patch)
tree08b208b82c24c6722d0288752c5703ba06c4e86a /llvm/test
parent7f8b3bf2475624c4bd1140a4b48c83b738ddd0ec (diff)
downloadbcm5719-llvm-ab2eb2bfacb4b2a3642e7716ddaf2638149aa0b4.tar.gz
bcm5719-llvm-ab2eb2bfacb4b2a3642e7716ddaf2638149aa0b4.zip
[XCOFF] Add functionality for parsing AIX XCOFF object file headers
Summary: 1. Add functionality for parsing AIX XCOFF object files headers. 2. Only support 32-bit AIX XCOFF object files in this patch. 3. Print out the AIX XCOFF object file header in YAML format. Reviewers: sfertile, hubert.reinterpretcast, jasonliu, mstorsjo, zturner, rnk Reviewed By: sfertile, hubert.reinterpretcast Subscribers: jsji, mgorny, hiraditya, jdoerfert, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D59419 Patch by Digger Lin llvm-svn: 357663
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/tools/obj2yaml/Inputs/aix_xcoff.obin0 -> 588 bytes
-rw-r--r--llvm/test/tools/obj2yaml/Inputs/aix_xcoff_truncated_file_header.obin0 -> 6 bytes
-rw-r--r--llvm/test/tools/obj2yaml/aix_xcoff.test11
-rw-r--r--llvm/test/tools/obj2yaml/aix_xcoff_truncated_file_header.test2
4 files changed, 13 insertions, 0 deletions
diff --git a/llvm/test/tools/obj2yaml/Inputs/aix_xcoff.o b/llvm/test/tools/obj2yaml/Inputs/aix_xcoff.o
new file mode 100644
index 00000000000..3712f7f853e
--- /dev/null
+++ b/llvm/test/tools/obj2yaml/Inputs/aix_xcoff.o
Binary files differ
diff --git a/llvm/test/tools/obj2yaml/Inputs/aix_xcoff_truncated_file_header.o b/llvm/test/tools/obj2yaml/Inputs/aix_xcoff_truncated_file_header.o
new file mode 100644
index 00000000000..a9a79b8c3b2
--- /dev/null
+++ b/llvm/test/tools/obj2yaml/Inputs/aix_xcoff_truncated_file_header.o
Binary files differ
diff --git a/llvm/test/tools/obj2yaml/aix_xcoff.test b/llvm/test/tools/obj2yaml/aix_xcoff.test
new file mode 100644
index 00000000000..1ad89e9c5d3
--- /dev/null
+++ b/llvm/test/tools/obj2yaml/aix_xcoff.test
@@ -0,0 +1,11 @@
+# RUN: obj2yaml %S/Inputs/aix_xcoff.o | FileCheck %s
+# Test that we can parse the XCOFF object file correctly.
+# CHECK: --- !XCOFF
+# CHECK-NEXT: FileHeader:
+# CHECK-NEXT: MagicNumber: 0x01DF
+# CHECK-NEXT: NumberOfSections: 2
+# CHECK-NEXT: CreationTime: 1548692020
+# CHECK-NEXT: OffsetToSymbolTable: 0x00000108
+# CHECK-NEXT: EntriesInSymbolTable: 18
+# CHECK-NEXT: AuxiliaryHeaderSize: 0
+# CHECK-NEXT: Flags: 0x0000
diff --git a/llvm/test/tools/obj2yaml/aix_xcoff_truncated_file_header.test b/llvm/test/tools/obj2yaml/aix_xcoff_truncated_file_header.test
new file mode 100644
index 00000000000..a59660b4e7b
--- /dev/null
+++ b/llvm/test/tools/obj2yaml/aix_xcoff_truncated_file_header.test
@@ -0,0 +1,2 @@
+# RUN: not obj2yaml %S/Inputs/aix_xcoff_truncated_file_header.o 2>&1 | FileCheck %s
+# CHECK: The end of the file was unexpectedly encountered
OpenPOWER on IntegriCloud