Skip to content

a webassembly vitrual machine using std-c, and can support multi-thread preliminarily

Notifications You must be signed in to change notification settings

TONYSKYZENG/stdWasmVM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a multi-thread webassembly virtual-machine, and may be a component of forge-compute in the future The original version is LHBS's ewasmVM from github, however, this one IS NOT A COPY, hasing its own unique features, which are as follows: 1.can support multi-thread(in this early version, just a switch of task0 and task1). 2.managed with cmake, more compitable and configureble. 3.using dynamic memory allocation for stacks/callstacks/branch-table. To build(linux-x64): mkdir build cmake ..(if you do not want the stack imformation to be printed, using -DVM_BUILD_DEBUG_VM=OFF) make (if the vos is not generated, do these again) To run: cd bin ./webasm To transplant: edit the CMakelists in each folder, to match your commpiler and host's behavior(eg:esp32,win32...) Bugs: Still can not handle a thread's return value, may cause core dump. Note: The tonydatapack (will be in extlib) is made for the future, this is not used and completed yet, so far it is not uploaded. You can use source insight(3.5 or above) to edit the code. The Posix features are also for the future.

About

a webassembly vitrual machine using std-c, and can support multi-thread preliminarily

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published