aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/ObjectYAML
diff options
context:
space:
mode:
authorSam Clegg <sbc@chromium.org>2022-03-09 18:11:44 -0800
committerSam Clegg <sbc@chromium.org>2022-03-14 08:55:47 -0700
commit9504ab32b76646116585cae4298f700cf46721ab (patch)
treef61eb0df890fe36ce4458f6599ac12e24d0713f5 /llvm/test/ObjectYAML
parent8361c5da30588d3d4a48eae648f53be1feb5cfad (diff)
downloadllvm-9504ab32b76646116585cae4298f700cf46721ab.zip
llvm-9504ab32b76646116585cae4298f700cf46721ab.tar.gz
llvm-9504ab32b76646116585cae4298f700cf46721ab.tar.bz2
[WebAssembly] Second phase of implemented extended const proposal
This change continues to lay the ground work for supporting extended const expressions in the linker. The included test covers object file reading and writing and the YAML representation. Differential Revision: https://reviews.llvm.org/D121349
Diffstat (limited to 'llvm/test/ObjectYAML')
-rw-r--r--llvm/test/ObjectYAML/wasm/extended_const_expressions.yaml42
1 files changed, 42 insertions, 0 deletions
diff --git a/llvm/test/ObjectYAML/wasm/extended_const_expressions.yaml b/llvm/test/ObjectYAML/wasm/extended_const_expressions.yaml
new file mode 100644
index 0000000..60db925
--- /dev/null
+++ b/llvm/test/ObjectYAML/wasm/extended_const_expressions.yaml
@@ -0,0 +1,42 @@
+# RUN: yaml2obj %s | obj2yaml | FileCheck %s
+--- !WASM
+FileHeader:
+ Version: 0x00000001
+Sections:
+ - Type: GLOBAL
+ Globals:
+ - Index: 0
+ Type: I32
+ Mutable: false
+ InitExpr:
+ # "extended" encoding of init expression:
+ # (global.get[0x23] 0x1 end[0x0b])
+ Extended: true
+ Body: 23010b
+ - Index: 1
+ Type: I64
+ Mutable: false
+ InitExpr:
+ # (global.get[0x23] 0x1 i32.const[0x41] 0x2 i32.add[0x6a] end[0x0b])
+ Extended: true
+ Body: 230141026a0b
+...
+# CHECK: --- !WASM
+# CHECK: FileHeader:
+# CHECK: Version: 0x1
+# CHECK: Sections:
+# CHECK: - Type: GLOBAL
+# CHECK: Globals:
+# CHECK: - Index: 0
+# CHECK: Type: I32
+# CHECK: Mutable: false
+# CHECK: InitExpr:
+# CHECK: Opcode: GLOBAL_GET
+# CHECK: Index: 1
+# CHECK: - Index: 1
+# CHECK: Type: I64
+# CHECK: Mutable: false
+# CHECK: InitExpr:
+# CHECK: Extended: true
+# CHECK: Body: 230141026A0B
+# CHECK: ...