diff options
author | Ben Smith <binji@chromium.org> | 2016-04-25 13:21:58 -0700 |
---|---|---|
committer | Ben Smith <binji@chromium.org> | 2016-04-28 23:46:14 -0700 |
commit | ee599aecbbc6d1d61bfb7485ba40c404937c4727 (patch) | |
tree | 2cdcd5caf01bd14058d4b9ce819c58fa26cefe06 /src/wasm-binary-reader-ast.c | |
parent | ec184a350f52f96ea11130822967d03a9b16c68a (diff) | |
download | wabt-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.c | 6 |
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) { |