summaryrefslogtreecommitdiff
path: root/src/wasm-binary-reader-ast.c
diff options
context:
space:
mode:
authorBen Smith <binji@chromium.org>2016-04-25 13:21:58 -0700
committerBen Smith <binji@chromium.org>2016-04-28 23:46:14 -0700
commitee599aecbbc6d1d61bfb7485ba40c404937c4727 (patch)
tree2cdcd5caf01bd14058d4b9ce819c58fa26cefe06 /src/wasm-binary-reader-ast.c
parentec184a350f52f96ea11130822967d03a9b16c68a (diff)
downloadwabt-ee599aecbbc6d1d61bfb7485ba40c404937c4727.tar.gz
wabt-ee599aecbbc6d1d61bfb7485ba40c404937c4727.tar.bz2
wabt-ee599aecbbc6d1d61bfb7485ba40c404937c4727.zip
support br_table with value
Diffstat (limited to 'src/wasm-binary-reader-ast.c')
-rw-r--r--src/wasm-binary-reader-ast.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/wasm-binary-reader-ast.c b/src/wasm-binary-reader-ast.c
index 587dc709..4aec583f 100644
--- a/src/wasm-binary-reader-ast.c
+++ b/src/wasm-binary-reader-ast.c
@@ -585,12 +585,14 @@ static WasmResult on_br_table_expr(uint32_t num_targets,
uint32_t default_target_depth,
void* user_data) {
WasmContext* ctx = user_data;
- WasmExpr *result, *key;
+ WasmExpr *result, *expr, *key;
CHECK_RESULT(pop_expr(ctx, &key));
+ CHECK_RESULT(pop_expr(ctx, &expr));
CHECK_ALLOC_NULL(result = wasm_new_br_table_expr(ctx->allocator));
CHECK_ALLOC(wasm_reserve_vars(ctx->allocator, &result->br_table.targets,
num_targets));
- result->br_table.expr = key;
+ result->br_table.key = key;
+ result->br_table.expr = expr;
result->br_table.targets.size = num_targets;
uint32_t i;
for (i = 0; i < num_targets; ++i) {