Commit Graph
89 Commits
Author SHA1 Message Date
Wenyong HuangandGitHub 8c820730ba Add cmake variable to set the max app thread stack size (#346) 2020-08-11 14:47:24 +08:00
Wenyong HuangandGitHub 1b6ddb37d0 Implement libc-WASI for Linux SGX platform and update documents (#343) 2020-08-10 15:12:26 +08:00
Wenyong HuangandGitHub aa7b0ba6b6 Fix wamrc link error and arm assembly code issue (#335) 2020-08-05 09:07:30 +08:00
Wenyong HuangandGitHub ed8ddb2cea Disable some components in llvm build script to decrease binary size (#330) 2020-08-03 12:38:22 +08:00
Wenyong HuangandGitHub 93ca9d8c62 Disable memory shrink opt when memory.size opcode is found (#323) 2020-07-30 10:18:55 +08:00
Wenyong HuangandGitHub 88af12501d Implement ecall to handle commands from host to call enclave runtime APIs (#320) 2020-07-28 16:18:54 +08:00
Wenyong HuangandGitHub 056b824ac4 Fix fast interpreter i64 shift issue for non-x86 arch (#319) 2020-07-28 13:46:37 +08:00
wenyonghandGitHub 16a284a67c Fix compile issue of zephyr (#306) 2020-07-09 16:07:41 +08:00
wenyonghandGitHub 2fc7230009 Enhance the native stack overflow check (#302) 2020-07-07 09:56:46 +08:00
wenyonghandGitHub ee3d448eb6 Fix aot issue in 32-bit platform (#297)
fix aot 32-bit boundary check issue
2020-07-01 12:22:13 +08:00
wenyonghandGitHub 847dccaa34 Refine get/set global opcodes for interpreter (#294) 2020-06-29 14:17:27 +08:00
wenyonghandGitHub ee315e4049 Implement memory access bound check with hardware trap for 64-bit platforms (#293)
Also implement native stack overflow check with hardware trap for 64-bit platforms
Refine classic interpreter and fast interpreter to improve performance
Update document
2020-06-28 15:41:25 +08:00
wenyonghandGitHub 10980a1dd7 Fix app manager parse applet name issue (#280) 2020-06-11 14:19:55 +08:00
wenyonghandGitHub 7a287fd1a9 Implement wasm mini loader and refine footprint of loader and runtime (#276) 2020-06-08 11:19:09 +08:00
wenyonghandGitHub 752826a667 Implement multi-module feature and bulk-memory feature (#271)
Refine wasm loader and aot loader
Fix potential issue of os_mmap/os_munmap
Update document
2020-06-02 14:53:06 +08:00
wenyonghandGitHub a0bb761beb Update API comments, refine footprint of wasm loader (#256)
and fix issues of get native stack boundary
2020-05-15 17:44:36 +08:00
wenyonghandGitHub 7abd1ca813 Change llvm void pointer to i8 pointer to avoid assert failed (#250) 2020-05-08 13:40:04 +08:00
wenyonghandGitHub 44ccfd20ad Fix issue of condition settings of app boundary check (#249) 2020-05-08 13:34:07 +08:00
wenyonghandGitHub e8e45aeecd Refine aot stack overflow check and enhance wasm loader malformed checks (#248)
And separate global data from wasm memory instance
2020-05-08 12:38:59 +08:00
wenyonghandGitHub d381b0fdec Implement post-MVP features and native stack overflow check (#243)
Implement native thread stack overflow check
Implement post-MVP: Non-trapping float-to-int conversions
Implement post-MVP: Sign-extension operators
Enhance WASM loader checks
2020-04-30 17:52:11 +08:00
wenyonghandGitHub f72e848114 Refine aot memory boundary check, add more llvm passes (#236)
Fix issue of some error info mismatch with spec cases
2020-04-22 18:43:50 +08:00
wenyonghandGitHub b40e79c160 Make heap and linear memory contiguous to refine compilation time and footprint (#233)
Use FastISel for JIT mode
Use united aot version in aot file and aot runtime
Disable check signature failed warning for wamrc
Fix fast interpreter x86_32 float issue
Remove unused empty lvgl folder
2020-04-13 10:49:40 +08:00
wenyonghandGitHub c1a0e6d877 Implement register/call native API with raw (unextracted) arguments (#222) 2020-04-01 12:52:08 +08:00
wenyonghandGitHub 01e85144f4 Enable aarch64 support, add component test framework and test suite (#211)
and refine aot call indirect op
2020-03-24 19:04:29 +08:00
wenyonghandGitHub c6042c45a3 Sync with internal feature (#204) 2020-03-18 17:49:23 +08:00
wenyonghandGitHub 751a3b5865 Enhance interpreter performance (#196) 2020-03-12 08:59:02 +08:00
wenyonghandGitHub 0fdd49ea31 Re-org memory allocation interfaces, add --stack-size and --heap-size option (#193) 2020-03-10 19:54:44 +08:00
wenyonghandGitHub 180ee4c78a Add realloc func argument for memory allocator (#191) 2020-03-08 21:18:18 +08:00
wenyonghandGitHub cfcaca3d35 Refine build script of zephyr product-mini, enable aot soft-float support (#188) 2020-03-05 21:46:24 +08:00
wenyonghandGitHub 0d3f304191 Implement native function pointer check, addr conversion and register, update documents (#185)
Modified WASM runtime API:
- wasm_runtime_module_malloc()
- wasm_runtime_lookup_function()
Introduced runtime API
- wasm_runtime_register_natives()
2020-03-04 20:12:38 +08:00
wenyonghandGitHub 9a961c4843 Enable ARM and THUMB AOT support, enable Android platform support (#182)
* Sync with internal/feature: enable arm aot and android platform
2020-02-27 16:38:44 +08:00
wenyonghandGitHub 4dbe7c44d0 Fix block addr cache uninitialized issue in aot compiler (#181) 2020-02-27 15:33:56 +08:00
wenyonghandGitHub 72d9e886e8 Merge two levels of hash cache of branch block address into one (#173) 2020-02-22 21:05:08 +08:00
wenyonghandGitHub 4979379246 Update iwasm_main.c 2020-02-22 09:39:46 +08:00
wenyonghandGitHub 0fb40f3f9a Remove unused build folders (#168)
Former-commit-id: 227d49486acda8b73fb55c99356f329fad128961
Former-commit-id: 375c1ac00078baac1bae481e26eabbf8428bfa5e
2020-02-18 15:57:21 +08:00
wenyonghandGitHub e62bbeb9e8 Refine wasm loader and interpreter, enhance wamrc to support SGX (#167)
Former-commit-id: 76f4a121d3c2a67114414fc60e80eba4bf49aa8e [formerly b1ab47945a40e6b249c9aa205d61281301585ea6]
Former-commit-id: 8e5c6e895eae22051a79a8d337a87cd2f431b6bc
2020-02-18 15:15:24 +08:00
wenyonghandGitHub b5cbc02e90 Refine interpreter to improve performance (#162) 2020-02-10 15:42:37 +08:00
wenyonghandGitHub 256ecdfdf9 Refine interpreter to improve performance, refine memory usage (#161) 2020-02-10 12:36:45 +08:00
wenyonghandGitHub 130d7d07d0 Update document, fix typo of wamrc help info (#158) 2020-01-21 14:24:10 +08:00
wenyonghandWang Xin 46b93b9d22 Enable AoT and wamr-sdk, and change arguments of call wasm API (#157)
* Implement memory profiler, optimize memory usage, modify code indent

* Implement memory.grow and limit heap space base offset to 1G; modify iwasm build type to Release and 64 bit by default

* Add a new extension library: connection

* Fix bug of reading magic number and version in big endian platform

* Re-org platform APIs: move most platform APIs from iwasm to shared-lib

* Enhance wasm loader to fix some security issues

* Fix issue about illegal load of EXC_RETURN into PC on stm32 board

* Updates that let a restricted version of the interpreter run in SGX

* Enable native/app address validation and conversion for wasm app

* Remove wasm_application_exectue_* APIs from wasm_export.h which makes confused

* Refine binary size and fix several minor issues

Optimize interpreter LOAD/STORE opcodes to decrease the binary size
Fix issues when using iwasm library: _bh_log undefined, bh_memory.h not found
Remove unused _stdin/_stdout/_stderr global variables resolve in libc wrapper
Add macros of global heap size, stack size, heap size for Zephyr main.c
Clear compile warning of wasm_application.c

* Add more strict security checks for libc wrapper API's

* Use one libc wrapper copy for sgx and other platforms; remove bh_printf macro for other platform header files

* Enhance security of libc strcpy/sprintf wrapper function

* Fix issue of call native for x86_64/arm/mips, add module inst parameter for native wrapper functions

* Remove get_module_inst() and fix issue of call native

* Refine wgl lib: remove module_inst parameter from widget functions; move function index check to runtime instantiate

* Refine interpreter call native process, refine memory boudary check

* Fix issues of invokeNative function of arm/mips/general version

* Add a switch to build simple sample without gui support

* Add BUILD_TARGET setting in makefile to replace cpu compiler flags in source code

* Re-org shared lib header files, remove unused info; fix compile issues of vxworks

* Add build target general

* Remove unused files

* Update license header

* test push

* Restore file

* Sync up with internal/feature

* Sync up with internal/feature

* Rename build_wamr_app to build_wasm_app

* Fix small issues of README

* Enhance malformed wasm file checking
Fix issue of print hex int and implement utf8 string check
Fix wasi file read/write right issue
Fix minor issue of build wasm app doc

* Sync up with internal/feature

* Sync up with internal/feature: fix interpreter arm issue, fix read leb issue

* Sync up with internal/feature

* Fix bug of config.h and rename wasi config.h to ssp_config.h

* Sync up with internal/feature

* Import wamr aot

* update document

* update document

* Update document, disable WASI in 32bit

* update document

* remove files

* update document

* Update document

* update document

* update document

* update samples

* Sync up with internal repo
2020-01-21 13:26:14 +08:00
wenyonghandGitHub 2b12e2c957 Add thumb target, implement xtensa invokeNative asm code and update makefiles (#151) 2019-12-24 11:09:54 +08:00
wenyonghandGitHub 5875a37f34 Remove iwasm/runtime/platform src files, refine interpreter and fix issue of --repl option (#150) 2019-12-18 11:53:43 +08:00
wenyonghandGitHub 631b7a2403 Enhance wasm loader and interpreter, enhance code security and update document (#149) 2019-12-13 15:30:30 +08:00
wenyonghandGitHub 1c81ad6da5 Enhance wasm loader and update build app document (#147) 2019-11-27 10:52:12 +08:00
wenyonghandGitHub 7c5a84cf75 Update README, change wasi primitive lib position and add some exception checks (#146)
Add exception throw when some initial checks fail in executing main or specific function
2019-11-25 23:16:40 +08:00
wenyonghandGitHub be15c08cf3 Remove unused files and update license header of some files (#138) 2019-11-11 20:38:49 -06:00
wenyonghandGitHub 49127efa99 Re-org shared lib header files, remove unused info (#136)
And fix compile issues of vxworks
2019-11-04 18:56:27 -06:00
wenyonghandGitHub 28993946ad Add BUILD_TARGET setting in makefile (#135) 2019-11-01 00:38:45 -05:00
wenyonghandGitHub f8f61dc898 Add a switch to build simple sample without gui support (#126)
* Implement memory profiler, optimize memory usage, modify code indent

* Implement memory.grow and limit heap space base offset to 1G; modify iwasm build type to Release and 64 bit by default

* Add a new extension library: connection

* Fix bug of reading magic number and version in big endian platform

* Re-org platform APIs: move most platform APIs from iwasm to shared-lib

* Enhance wasm loader to fix some security issues

* Fix issue about illegal load of EXC_RETURN into PC on stm32 board

* Updates that let a restricted version of the interpreter run in SGX

* Enable native/app address validation and conversion for wasm app

* Remove wasm_application_exectue_* APIs from wasm_export.h which makes confused

* Refine binary size and fix several minor issues

Optimize interpreter LOAD/STORE opcodes to decrease the binary size
Fix issues when using iwasm library: _bh_log undefined, bh_memory.h not found
Remove unused _stdin/_stdout/_stderr global variables resolve in libc wrapper
Add macros of global heap size, stack size, heap size for Zephyr main.c
Clear compile warning of wasm_application.c

* Add more strict security checks for libc wrapper API's

* Use one libc wrapper copy for sgx and other platforms; remove bh_printf macro for other platform header files

* Enhance security of libc strcpy/sprintf wrapper function

* Fix issue of call native for x86_64/arm/mips, add module inst parameter for native wrapper functions

* Remove get_module_inst() and fix issue of call native

* Refine wgl lib: remove module_inst parameter from widget functions; move function index check to runtime instantiate

* Refine interpreter call native process, refine memory boudary check

* Fix issues of invokeNative function of arm/mips/general version

* Add a switch to build simple sample without gui support
2019-09-25 03:42:56 -05:00
wenyonghandGitHub 2fca3aa3f5 Re-implement invokeNative function of arm/mips/general version (#125)
Re-implement them due to the function prototype was changed.
Fix typo of sample/gui/README.
2019-09-22 21:52:39 -05:00
wenyonghandGitHub 42dc2d65a1 Refine interpreter call native process and memory boundary check (#124) 2019-09-19 04:05:15 -05:00
wenyonghandGitHub 6e99a37bf2 Refine wgl lib and refine wasm function index check (#122)
Refine wgl lib: remove module_inst parameter from widget functions
Refine wasm function check: move function index check from interpreter call_indirect to runtime instantiate
2019-09-16 14:49:17 +08:00
wenyonghandGitHub ff0267b7e6 Remove get_module_inst() and fix issue of call native (#120) 2019-09-11 15:56:47 +08:00
wenyonghandGitHub 26149021ff Add parameter module inst for native wrapper functions (#117)
And add asm code of em64/arm/mips version to call native wrapper functions;
Fix some issues of calling wrapper functions;
2019-09-10 10:23:46 +08:00
wenyonghandGitHub 4a14e54e86 Enhance security of libc strcpy/sprintf wrapper function (#108) 2019-08-29 14:31:15 +08:00
wenyonghandGitHub 5257dd8a48 Use one libc wrapper copy for sgx and other platforms (#107)
And remove bh_printf macro for other platform header files
2019-08-28 15:19:52 +08:00
wenyonghandGitHub 5c69543c54 Add Linux SGX support (#106) 2019-08-28 15:08:52 +08:00
wenyonghandGitHub c808aa2ebb Add more security checks for libc wrapper API's (#105) 2019-08-28 15:06:04 +08:00
wenyonghandGitHub 92cbecbec8 Refine binary size and fix several minor issues (#104)
* Implement memory profiler, optimize memory usage, modify code indent

* Implement memory.grow and limit heap space base offset to 1G; modify iwasm build type to Release and 64 bit by default

* Add a new extension library: connection

* Fix bug of reading magic number and version in big endian platform

* Re-org platform APIs: move most platform APIs from iwasm to shared-lib

* Enhance wasm loader to fix some security issues

* Fix issue about illegal load of EXC_RETURN into PC on stm32 board

* Updates that let a restricted version of the interpreter run in SGX

* Enable native/app address validation and conversion for wasm app

* Remove wasm_application_exectue_* APIs from wasm_export.h which makes confused

* Refine binary size and fix several minor issues

Optimize interpreter LOAD/STORE opcodes to decrease the binary size
Fix issues when using iwasm library: _bh_log undefined, bh_memory.h not found
Remove unused _stdin/_stdout/_stderr global variables resolve in libc wrapper
Add macros of global heap size, stack size, heap size for Zephyr main.c
Clear compile warning of wasm_application.c
2019-08-27 14:09:23 +08:00
wenyonghandGitHub de81b95ab8 Enable native/app address validation and conversion for wasm app (#102)
Enable setting external memory space for wasm app, the feature is disabled by default;
Remove wasm_application_exectue_* APIs from wasm_export.h which makes confused.
2019-08-21 16:39:50 +08:00
wenyonghandGitHub 9ed6d6af0a Fix issue about illegal load of EXC_RETURN into PC on stm32 board (#98) 2019-08-14 16:14:44 +08:00
wenyonghandGitHub 3f15fb3424 Enhance wasm loader to fix some security issues (#91)
* Implement memory profiler, optimize memory usage, modify code indent

* Implement memory.grow and limit heap space base offset to 1G; modify iwasm build type to Release and 64 bit by default

* Add a new extension library: connection

* Fix bug of reading magic number and version in big endian platform

* Re-org platform APIs: move most platform APIs from iwasm to shared-lib

* Enhance wasm loader to fix some security issues
2019-08-08 16:53:56 +08:00
wenyonghandGitHub 1db5a2f697 Re-org platform APIs: move most platform APIs of iwasm to shared-lib (#45) 2019-07-22 11:32:51 +08:00
wenyonghandGitHub 5b0c8fa0ba Fix bug of reading magic number and version in big endian platform (#41) 2019-06-13 22:29:08 -05:00
wenyonghandGitHub 7f1e024fce Add a new extension library: connection (#39) 2019-06-10 21:52:15 -05:00
wenyonghandGitHub 504268b297 Implement memory.grow and limit heap space base offset to 1G (#36)
* Implement memory profiler, optimize memory usage, modify code indent

* Implement memory.grow and limit heap space base offset to 1G; modify iwasm build type to Release and 64 bit by default
2019-05-31 01:21:39 -05:00
wenyonghandGitHub ff7cbdd2fb Implement memory profiler, optimize memory usage, modify code indent (#35) 2019-05-23 05:03:31 -05:00
wenyonghandGitHub 77073162b4 Merge pull request #30 from Weining2019/master
Update the README.md
2019-05-20 01:38:45 -05:00
wenyonghandGitHub e4c6b53d50 Update README.md 2019-05-20 14:37:55 +08:00
wenyonghandGitHub 271253f940 Merge pull request #28 from lucshi/patch-2
Update README.md
2019-05-17 07:59:27 -05:00
wenyonghandGitHub 4fb47e9005 Update README.md 2019-05-17 20:58:57 +08:00
wenyonghandGitHub 608be44626 Merge pull request #27 from lucshi/patch-1
Update README.md
2019-05-17 06:24:55 -05:00
wenyonghandGitHub d177ee9733 Merge pull request #26 from wenyongh/master
Fix minor compile warning
2019-05-17 05:15:24 -05:00
wenyongh fbeaf8f589 Fix compile warning 2019-05-17 18:14:13 +08:00
wenyonghandGitHub 28692fc40a Merge pull request #6 from intel/master
Merge pull request #25 from wenyongh/master
2019-05-17 05:06:02 -05:00
wenyonghandGitHub 19a27618ab Merge pull request #25 from wenyongh/master
Fix some compile errors
2019-05-17 05:03:50 -05:00
wenyongh 36741a7392 Fix some compile errors 2019-05-17 18:01:35 +08:00
wenyonghandGitHub faff72c287 Merge pull request #5 from intel/master
Sync up with from main repo.
2019-05-17 04:36:30 -05:00
wenyonghandGitHub 42d621168c Merge pull request #24 from offercomes/patch-1
Update README.md
2019-05-17 04:34:22 -05:00
wenyonghandGitHub 6d8a9ffdc4 Merge pull request #23 from wenyongh/master
Import app manager, samples and test-tools, and re-org directories and files
2019-05-17 04:19:50 -05:00
wenyongh dd5b133fa5 Import app manager, samples and test-tools 2019-05-17 17:15:25 +08:00
wenyongh b6e29e2153 Merge branch 'master' of https://github.com/wenyongh/wasm-micro-runtime 2019-05-15 14:32:52 +08:00
wenyongh 40e7c627aa implement printf syscall wrapper for linux 2019-05-15 14:32:35 +08:00
wenyonghandGitHub 48134eafcd Merge pull request #4 from intel/master
Merge pull request #22 from wenyongh/master
2019-05-14 08:32:50 -05:00
wenyonghandGitHub b84f20a4d4 Merge pull request #22 from wenyongh/master
Fix code indent issue and compile error in 64-bit
2019-05-14 08:30:52 -05:00
wenyongh a595ec79ab Fix code indent issue and 64-bit compiler error in libc wrapper src 2019-05-14 21:17:12 +08:00
wenyonghandGitHub dc6441c55d Merge pull request #3 from intel/master
Sync up with main repo.
2019-05-13 20:45:35 -05:00
wenyonghandGitHub cd188ade7d Merge pull request #2 from intel/master
Sync up with repo master.
2019-05-10 08:21:02 +08:00
wenyonghandGitHub c437c58c5e Merge pull request #1 from intel/master
Merge from main repo
2019-05-08 17:08:13 +08:00