somewhat working

This commit is contained in:
NikVolf
2017-05-15 19:15:09 +03:00
parent 1083eaa65d
commit 20496ae9b2
6 changed files with 139 additions and 22 deletions
+22
View File
@@ -53,7 +53,29 @@ fn main() {
closure: Box::new(runtime.allocator()),
}
);
user_functions.insert("_storage_size".to_owned(),
interpreter::UserFunction {
params: vec![elements::ValueType::I32],
result: Some(elements::ValueType::I32),
closure: Box::new(runtime.storage().sizer()),
}
);
user_functions.insert("_storage_read".to_owned(),
interpreter::UserFunction {
params: vec![elements::ValueType::I32],
result: Some(elements::ValueType::I32),
closure: Box::new(runtime.storage().reader()),
}
);
user_functions.insert("_storage_write".to_owned(),
interpreter::UserFunction {
params: vec![elements::ValueType::I32],
result: Some(elements::ValueType::I32),
closure: Box::new(runtime.storage().writer()),
}
);
runtime::user_trap(&mut user_functions, "_emscripten_memcpy_big");
runtime::user_noop(&mut user_functions, "_free");
let program = parity_wasm::interpreter::ProgramInstance::with_functions(user_functions)
.expect("Program instance to be created");