summaryrefslogtreecommitdiff
path: root/test/tools/llvm-objdump
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-07-13 19:25:18 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-07-13 19:25:18 +0000
commitca089b24d48ef6fa8da2d0bb8c25bb802c4a95c0 (patch)
tree3a28a772df9b17aef34f49e3c727965ad28c0c93 /test/tools/llvm-objdump
parent9df3605dea17e84f8183581f6103bd0c79e2a606 (diff)
Notes
Diffstat (limited to 'test/tools/llvm-objdump')
-rw-r--r--test/tools/llvm-objdump/ARM/Inputs/reloc-half.obj.macho-armbin0 -> 360 bytes
-rw-r--r--test/tools/llvm-objdump/ARM/macho-reloc-half.test4
-rw-r--r--test/tools/llvm-objdump/Inputs/test.wasmbin181 -> 0 bytes
-rw-r--r--test/tools/llvm-objdump/Inputs/trivial.ll19
-rw-r--r--test/tools/llvm-objdump/Inputs/trivial.obj.wasmbin0 -> 303 bytes
-rw-r--r--test/tools/llvm-objdump/WebAssembly/symbol-table.test17
-rw-r--r--test/tools/llvm-objdump/wasm.txt35
7 files changed, 52 insertions, 23 deletions
diff --git a/test/tools/llvm-objdump/ARM/Inputs/reloc-half.obj.macho-arm b/test/tools/llvm-objdump/ARM/Inputs/reloc-half.obj.macho-arm
new file mode 100644
index 0000000000000..79d19962e00b0
--- /dev/null
+++ b/test/tools/llvm-objdump/ARM/Inputs/reloc-half.obj.macho-arm
Binary files differ
diff --git a/test/tools/llvm-objdump/ARM/macho-reloc-half.test b/test/tools/llvm-objdump/ARM/macho-reloc-half.test
new file mode 100644
index 0000000000000..888c7f5891168
--- /dev/null
+++ b/test/tools/llvm-objdump/ARM/macho-reloc-half.test
@@ -0,0 +1,4 @@
+RUN: llvm-objdump -r %p/Inputs/reloc-half.obj.macho-arm | FileCheck %s
+
+CHECK-DAG: 00000004 ARM_RELOC_HALF :upper16:(_stringbuf)
+CHECK-DAG: 00000000 ARM_RELOC_HALF :lower16:(_stringbuf)
diff --git a/test/tools/llvm-objdump/Inputs/test.wasm b/test/tools/llvm-objdump/Inputs/test.wasm
deleted file mode 100644
index d3906eeaf6f86..0000000000000
--- a/test/tools/llvm-objdump/Inputs/test.wasm
+++ /dev/null
Binary files differ
diff --git a/test/tools/llvm-objdump/Inputs/trivial.ll b/test/tools/llvm-objdump/Inputs/trivial.ll
new file mode 100644
index 0000000000000..6dd510a12b66b
--- /dev/null
+++ b/test/tools/llvm-objdump/Inputs/trivial.ll
@@ -0,0 +1,19 @@
+; Input used for generating checked-in binaries (trivial.obj.*)
+; llc -mtriple=wasm32-unknown-unknown-wasm trivial.ll -filetype=obj -o trivial.obj.wasm
+
+@.str = private unnamed_addr constant [13 x i8] c"Hello World\0A\00", align 1
+
+define i32 @main() nounwind {
+entry:
+ %call = tail call i32 @puts(i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str, i32 0, i32 0)) nounwind
+ tail call void bitcast (void (...)* @SomeOtherFunction to void ()*)() nounwind
+ ret i32 0
+}
+
+declare i32 @puts(i8* nocapture) nounwind
+
+declare void @SomeOtherFunction(...)
+
+@var = global i32 0
+@llvm.used = appending global [1 x i8*] [i8* bitcast (i32* @var to i8*)], section "llvm.metadata"
+@llvm.global_ctors = appending global [1 x { i32, void ()*, i8* }] [{ i32, void ()*, i8* } { i32 65535, void ()* null, i8* null }]
diff --git a/test/tools/llvm-objdump/Inputs/trivial.obj.wasm b/test/tools/llvm-objdump/Inputs/trivial.obj.wasm
new file mode 100644
index 0000000000000..1f3947ac472e0
--- /dev/null
+++ b/test/tools/llvm-objdump/Inputs/trivial.obj.wasm
Binary files differ
diff --git a/test/tools/llvm-objdump/WebAssembly/symbol-table.test b/test/tools/llvm-objdump/WebAssembly/symbol-table.test
index 8936c7a12e4c6..2c49d5d65c5d7 100644
--- a/test/tools/llvm-objdump/WebAssembly/symbol-table.test
+++ b/test/tools/llvm-objdump/WebAssembly/symbol-table.test
@@ -1,8 +1,11 @@
-RUN: llvm-objdump -t %p/../Inputs/test.wasm | FileCheck %s
+RUN: llvm-objdump -t %p/../Inputs/trivial.obj.wasm | FileCheck %s
+
+CHECK: SYMBOL TABLE:
+CHECK-NEXT: 00000000 l F IMPORT puts
+CHECK-NEXT: 00000000 l F IMPORT SomeOtherFunction
+CHECK-NEXT: 00000002 g F EXPORT main
+CHECK-NEXT: 00000001 g EXPORT var
+CHECK-NEXT: 00000000 l F name puts
+CHECK-NEXT: 00000001 l F name SomeOtherFunction
+CHECK-NEXT: 00000002 l F name main
-CHECK: SYMBOL TABLE:
-CHECK: 00000000 l F IMPORT bar
-CHECK: 00000000 g F EXPORT baz
-CHECK: 00000001 g F EXPORT quux
-CHECK: 00000000 l F name $import
-CHECK: 00000001 l F name $func0
diff --git a/test/tools/llvm-objdump/wasm.txt b/test/tools/llvm-objdump/wasm.txt
index 4aa40c6c9df8c..828fa34b2b46f 100644
--- a/test/tools/llvm-objdump/wasm.txt
+++ b/test/tools/llvm-objdump/wasm.txt
@@ -1,24 +1,27 @@
-# RUN: llvm-objdump -h %p/Inputs/test.wasm | FileCheck %s
+# RUN: llvm-objdump -h %p/Inputs/trivial.obj.wasm | FileCheck %s
-# CHECK: Sections:
-# CHECK: Idx Name Size Address Type
-# CHECK: 0 TYPE 0000000f 0000000000000000
-# CHECK: 1 IMPORT 0000000b 0000000000000000
-# CHECK: 2 FUNCTION 00000003 0000000000000000
-# CHECK: 3 TABLE 00000005 0000000000000000
-# CHECK: 4 EXPORT 0000000e 0000000000000000
-# CHECK: 5 ELEM 00000007 0000000000000000
-# CHECK: 6 CODE 0000002a 0000000000000000 TEXT
-# CHECK: 7 name 0000003c 0000000000000000
+# CHECK: Sections:
+# CHECK-NEXT: Idx Name Size Address Type
+# CHECK-NEXT: 0 TYPE 0000000e 0000000000000000
+# CHECK-NEXT: 1 IMPORT 00000024 0000000000000000
+# CHECK-NEXT: 2 FUNCTION 00000002 0000000000000000
+# CHECK-NEXT: 3 TABLE 00000004 0000000000000000
+# CHECK-NEXT: 4 MEMORY 00000003 0000000000000000
+# CHECK-NEXT: 5 GLOBAL 0000000b 0000000000000000
+# CHECK-NEXT: 6 EXPORT 0000000e 0000000000000000
+# CHECK-NEXT: 7 CODE 00000019 0000000000000000 TEXT
+# CHECK-NEXT: 8 DATA 0000001a 0000000000000000 DATA
+# CHECK-NEXT: 9 name 0000002b 0000000000000000
+# CHECK-NEXT: 10 reloc.CODE 00000017 0000000000000000
+# CHECK-NEXT: 11 linking 00000016 0000000000000000
-# RUN: llvm-objdump -p %p/Inputs/test.wasm | FileCheck %s -check-prefix CHECK-HEADER
+# RUN: llvm-objdump -p %p/Inputs/trivial.obj.wasm | FileCheck %s -check-prefix CHECK-HEADER
# CHECK-HEADER: Program Header:
# CHECK-HEADER: Version: 0x1
-# RUN: llvm-objdump -s --section=CODE %p/Inputs/test.wasm | FileCheck %s -check-prefix CHECK-SECTIONS
+# RUN: llvm-objdump -s --section=CODE %p/Inputs/trivial.obj.wasm | FileCheck %s -check-prefix CHECK-SECTIONS
# CHECK-SECTIONS: Contents of section CODE:
-# CHECK-SECTIONS: 0000 02070043 0000803f 0b200201 7d017c10 ...C...?. ..}.|.
-# CHECK-SECTIONS: 0010 001a4100 10011a41 00410111 00001a20 ..A....A.A.....
-# CHECK-SECTIONS: 0020 011a4300 00000021 020b ..C....!..
+# CHECK-SECTIONS: 0000 01170041 80808080 00108080 8080001a ...A............
+# CHECK-SECTIONS: 0010 10818080 80004100 0b ......A..