Javascript implementation of an eWASM VM
JavaScript WebAssembly
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
deps remove kenerl vertex Nov 22, 2016
docs Update design.md Nov 22, 2016
examples interface tests are passing Jan 13, 2018
precompiles interface tests are passing Jan 13, 2018
tests lint fix Jan 21, 2018
tools update wabt and rebuild for wasm version 0x1 Oct 21, 2017
wasm update wabt and rebuild for wasm version 0x1 Oct 21, 2017
.gitmodules update submodules Dec 28, 2016
.travis.yml add debug logs for import functions Oct 21, 2017
EVMimports.js
README.md clarify test --files argument in readme Dec 21, 2017
debugInterface.js converet interface to bigendian only Nov 11, 2016
environment.js
fakeBlockChain.js interface tests are passing Jan 13, 2018
index.js remove kenerl vertex Nov 22, 2016
opcodes.js
package.json add option to run a subset of the tests Nov 4, 2017
runBlock.js
runTx.js fix lint Nov 22, 2016
testEnvironment.js fix all tests Nov 22, 2016
vm.js use callback table export, not func exports Jan 26, 2018

README.md

SYNOPSIS - WIP

NPM Package Build Status

js-standard-style

This is a JS prototype of the eWASM kernal.

INSTALL

You need to compile nodejs from master (9983af03470a89cc925781279be40898efae3f31 is known to be working) to run npm install ewasm-kernel

clone and run npm install

CLONE

  • mango git clone mango://0xf75056c8c84d993434a2f19251df9ea2a8708df0
  • git-ssb git clone ssb://%ffhV6DU5qTXl7+fER4qztY37+/C2/6dsFALkREjb2MU=.sha256
  • git git clone https://github.com/ethereumjs/ewasm-kernel.git

TESTS

The tests are written in wasm's text format (.wast) which are then compiled into binary format and ran in node.

To run the test you need

  • git submodule update --init --recursive
  • cd tools/sexpr-wasm-prototype
  • git checkout origin/binary_0xa
  • make
  • cd ../..
  • npm test

A subset of tests can be run by modifying the test script in package.json using the --files argument with comma-separated filenames.

API

todo

LICENSE

MPL-2.0