diff options
| author | Henry Gressmann <mail@henrygressmann.de> | 2023-12-10 23:11:07 +0100 |
|---|---|---|
| committer | Henry Gressmann <mail@henrygressmann.de> | 2023-12-10 23:11:07 +0100 |
| commit | f203c4a3890a6555e63e4224198a240ddf6d238d (patch) | |
| tree | 36de4b6bffebcb0fc26b3fd806468abf1569f9a3 /crates/parser/src/conversion.rs | |
| parent | 4ba9393ec6f28ee81c80b504ca2ac2c164cc87c9 (diff) | |
test(tinywasm): create wasm spec test harness
Signed-off-by: Henry Gressmann <mail@henrygressmann.de>
Diffstat (limited to 'crates/parser/src/conversion.rs')
| -rw-r--r-- | crates/parser/src/conversion.rs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/crates/parser/src/conversion.rs b/crates/parser/src/conversion.rs index 432909c..abc401c 100644 --- a/crates/parser/src/conversion.rs +++ b/crates/parser/src/conversion.rs @@ -46,7 +46,7 @@ pub(crate) fn convert_module_code( } let body_reader = func.get_operators_reader()?; - let body = process_operators(body_reader.into_iter(), validator)?; + let body = process_operators(body_reader.original_position(), body_reader.into_iter(), validator)?; Ok(CodeSection { locals: locals.into_boxed_slice(), @@ -111,12 +111,13 @@ pub(crate) fn convert_memarg(memarg: wasmparser::MemArg) -> MemArg { } pub fn process_operators<'a>( + offset: usize, ops: impl Iterator<Item = Result<wasmparser::Operator<'a>, wasmparser::BinaryReaderError>>, mut validator: FuncValidator<ValidatorResources>, ) -> Result<Box<[Instruction]>> { let mut instructions = Vec::new(); - let mut offset = 0; + let mut offset = offset.into(); for op in ops { let op = op?; validator.op(offset, &op)?; |
