samples and html fix

This commit is contained in:
NikVolf
2017-04-12 16:03:06 +03:00
parent 08ac853719
commit a0f5f59bc0
3 changed files with 16 additions and 4 deletions

View File

@@ -3,4 +3,13 @@
# "Compile rust source and put it as a tested contract"
mkdir -p out
rustc $1 -o out/contract.js -O --target wasm32-unknown-emscripten
file=$1
if [ ${file: -3} == ".rs" ]
then
# Rust is compiled with rustc
rustc $file -o out/contract.js -O --target wasm32-unknown-emscripten
else
# c/c++ can be compiled directly by emcc
emcc $file -Os -s WASM=1 -s SIDE_MODULE=1 -o out/contract.wasm
fi

View File

@@ -35,7 +35,7 @@
env.DYNAMICTOP_PTR = env.DYNAMICTOP_PTR || 0;
env.STACKTOP = env.STACKTOP || 0;
env.STACK_MAX = env.STACK_MAX || 0;
env.STACK_MAX = env.STACK_MAX || 5*1024*1024;
env.enlargeMemory = env.enlargeMemory || function() { throw "error enlarging memory"; };
env.getTotalMemory = env.getTotalMemory || function() { return 65536 * 256; };
env.abortOnCannotGrowMemory = env.abortOnCannotGrowMemory || function() { throw "abort growing memory"; };
@@ -45,10 +45,10 @@
env.tableBase = env.tableBase || 0;
if (!imports.env.memory) {
imports.env.memory = new WebAssembly.Memory({ initial: 256 });
imports.env.memory = new WebAssembly.Memory({ initial: 256, maximum: 256 });
}
if (!imports.env.table) {
imports.env.table = new WebAssembly.Table({ initial: 0, element: 'anyfunc' });
imports.env.table = new WebAssembly.Table({ initial: 0, maximum: 0, element: 'anyfunc' });
}
return new WebAssembly.Instance(module, imports);
});

3
samples/hello_world.c Normal file
View File

@@ -0,0 +1,3 @@
int call(int x) {
return 2 * x;
}