aboutsummaryrefslogtreecommitdiff
path: root/private_include
diff options
context:
space:
mode:
authorXavier Del Campo Romero <xavi92@disroot.org>2025-11-15 18:48:16 +0100
committerXavier Del Campo Romero <xavi92@disroot.org>2025-11-15 18:48:16 +0100
commit0b2a1fd9439d5ab1cdc076d7b9f1e763c4900b74 (patch)
treea0a1724b1a8b2dbde94e938bb18b6ca4bb5ce800 /private_include
parent4a356bf56051361f2c72037f4fb043f8fdaa576c (diff)
downloadnanowasm-0b2a1fd9439d5ab1cdc076d7b9f1e763c4900b74.tar.gz
Add br_table
br_table is in fact a generalization of other branch types like br or br_if, since br_table contains several branches for the same pc inside the nw_lo section. Therefore, this kind of branch forced some changes to nwp_break and those relying on it.
Diffstat (limited to 'private_include')
-rw-r--r--private_include/nw/routines.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/private_include/nw/routines.h b/private_include/nw/routines.h
index 6938fc4..0baee65 100644
--- a/private_include/nw/routines.h
+++ b/private_include/nw/routines.h
@@ -55,7 +55,8 @@ void nwp_get_import_type(struct nw_interp *i, struct nw_get_import_type *t,
nw_varuint32 index, enum nw_state (*next)(struct nw_interp *));
void nwp_mem_imm(struct nw_interp *i, void (*next)(struct nw_interp *));
void nwp_unwind(struct nw_interp *i);
-void nwp_break(struct nw_interp *i, nw_varuint32 relative_depth);
+void nwp_break(struct nw_interp *i, nw_varuint32 relative_depth,
+ nw_varuint32 table_offset);
void nwp_find_param(struct nw_interp *i, struct nw_find_param *f,
nw_varuint32 index, enum nw_state (*next)(struct nw_interp *), void *args);
void nwp_find_local(struct nw_interp *i, struct nw_find_local *f,