diff options
Diffstat (limited to 'test/tools/llvm-objdump')
-rw-r--r-- | test/tools/llvm-objdump/ARM/Inputs/reloc-half.obj.macho-arm | bin | 0 -> 360 bytes | |||
-rw-r--r-- | test/tools/llvm-objdump/ARM/macho-reloc-half.test | 4 | ||||
-rw-r--r-- | test/tools/llvm-objdump/Inputs/test.wasm | bin | 181 -> 0 bytes | |||
-rw-r--r-- | test/tools/llvm-objdump/Inputs/trivial.ll | 19 | ||||
-rw-r--r-- | test/tools/llvm-objdump/Inputs/trivial.obj.wasm | bin | 0 -> 303 bytes | |||
-rw-r--r-- | test/tools/llvm-objdump/WebAssembly/symbol-table.test | 17 | ||||
-rw-r--r-- | test/tools/llvm-objdump/wasm.txt | 35 |
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 Binary files differnew file mode 100644 index 0000000000000..79d19962e00b0 --- /dev/null +++ b/test/tools/llvm-objdump/ARM/Inputs/reloc-half.obj.macho-arm 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 Binary files differdeleted file mode 100644 index d3906eeaf6f86..0000000000000 --- a/test/tools/llvm-objdump/Inputs/test.wasm +++ /dev/null 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 Binary files differnew file mode 100644 index 0000000000000..1f3947ac472e0 --- /dev/null +++ b/test/tools/llvm-objdump/Inputs/trivial.obj.wasm 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.. |