mirror of
https://github.com/pezkuwichain/wasm-instrument.git
synced 2026-05-01 02:57:56 +00:00
contract3 with heap
This commit is contained in:
+1
-1
@@ -80,7 +80,7 @@
|
||||
imports.env.memory = new WebAssembly.Memory({ initial: 256, maximum: 256 });
|
||||
}
|
||||
if (!imports.env.table) {
|
||||
imports.env.table = new WebAssembly.Table({ initial: 8, maximum: 8, element: 'anyfunc' });
|
||||
imports.env.table = new WebAssembly.Table({ initial: 0, maximum: 0, element: 'anyfunc' });
|
||||
}
|
||||
return new WebAssembly.Instance(module, imports);
|
||||
});
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
#![feature(link_args)]
|
||||
#![feature(drop_types_in_const)]
|
||||
#![no_main]
|
||||
|
||||
use std::slice;
|
||||
|
||||
#[link_args = "-s WASM=1 -s NO_EXIT_RUNTIME=1 -s NO_FILESYSTEM=1"]
|
||||
extern {}
|
||||
|
||||
#[no_mangle]
|
||||
pub fn call(input: *mut u8) {
|
||||
let mut slice = unsafe { slice::from_raw_parts_mut(input, 8192) }; // 8kb input data
|
||||
for i in 0..slice.len() {
|
||||
slice[i] = slice[i] + 2;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user