summaryrefslogtreecommitdiffstats
path: root/llvm/test/tools/llvm-objdump
diff options
context:
space:
mode:
authorSam Clegg <sbc@chromium.org>2018-02-23 05:08:34 +0000
committerSam Clegg <sbc@chromium.org>2018-02-23 05:08:34 +0000
commit6c899ba6dee1a6cd1e1a49900bb5f3b6353a5487 (patch)
tree565c8241b9b4a62f0ae1a227d26b4d8f1bbd1023 /llvm/test/tools/llvm-objdump
parent0fd6a530a0b61501ad0da1177e2e4c9dbf138a74 (diff)
downloadbcm5719-llvm-6c899ba6dee1a6cd1e1a49900bb5f3b6353a5487.tar.gz
bcm5719-llvm-6c899ba6dee1a6cd1e1a49900bb5f3b6353a5487.zip
[WebAssembly] Add first claass symbol table to wasm objects
This is combination of two patches by Nicholas Wilson: 1. https://reviews.llvm.org/D41954 2. https://reviews.llvm.org/D42495 Along with a few local modifications: - One change I made was to add the UNDEFINED bit to the binary format to avoid the extra byte used when writing data symbols. Although this bit is redundant for other symbols types (i.e. undefined can be implied if a function or global is a wasm import) - I prefer to be explicit and consistent and not have derived flags. - Some field renaming. - Some reverting of unrelated minor changes. - No test output differences. Differential Revision: https://reviews.llvm.org/D43147 llvm-svn: 325860
Diffstat (limited to 'llvm/test/tools/llvm-objdump')
-rw-r--r--llvm/test/tools/llvm-objdump/Inputs/trivial.obj.wasmbin303 -> 327 bytes
-rw-r--r--llvm/test/tools/llvm-objdump/WebAssembly/symbol-table.test2
-rw-r--r--llvm/test/tools/llvm-objdump/wasm.txt19
3 files changed, 8 insertions, 13 deletions
diff --git a/llvm/test/tools/llvm-objdump/Inputs/trivial.obj.wasm b/llvm/test/tools/llvm-objdump/Inputs/trivial.obj.wasm
index 1f3947ac472..9aba700336f 100644
--- a/llvm/test/tools/llvm-objdump/Inputs/trivial.obj.wasm
+++ b/llvm/test/tools/llvm-objdump/Inputs/trivial.obj.wasm
Binary files differ
diff --git a/llvm/test/tools/llvm-objdump/WebAssembly/symbol-table.test b/llvm/test/tools/llvm-objdump/WebAssembly/symbol-table.test
index a24fd1e5e73..0dc31e1a629 100644
--- a/llvm/test/tools/llvm-objdump/WebAssembly/symbol-table.test
+++ b/llvm/test/tools/llvm-objdump/WebAssembly/symbol-table.test
@@ -4,5 +4,5 @@ CHECK: SYMBOL TABLE:
CHECK-NEXT: 00000000 g F *UND* puts
CHECK-NEXT: 00000000 g F *UND* SomeOtherFunction
CHECK-NEXT: 00000002 g F CODE main
+CHECK-NEXT: 00000000 l DATA .L.str
CHECK-NEXT: 00000010 g DATA var
-
diff --git a/llvm/test/tools/llvm-objdump/wasm.txt b/llvm/test/tools/llvm-objdump/wasm.txt
index 828fa34b2b4..e31e6371ef1 100644
--- a/llvm/test/tools/llvm-objdump/wasm.txt
+++ b/llvm/test/tools/llvm-objdump/wasm.txt
@@ -2,18 +2,13 @@
# 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
+# CHECK-NEXT: 0 TYPE 0000000e 0000000000000000
+# CHECK-NEXT: 1 IMPORT 0000005d 0000000000000000
+# CHECK-NEXT: 2 FUNCTION 00000002 0000000000000000
+# CHECK-NEXT: 3 CODE 00000019 0000000000000000 TEXT
+# CHECK-NEXT: 4 DATA 0000001c 0000000000000000 DATA
+# CHECK-NEXT: 5 reloc.CODE 00000017 0000000000000000
+# CHECK-NEXT: 6 linking 0000005c 0000000000000000
# RUN: llvm-objdump -p %p/Inputs/trivial.obj.wasm | FileCheck %s -check-prefix CHECK-HEADER
OpenPOWER on IntegriCloud