Commit Graph

323 Commits

Author SHA1 Message Date
YAMAMOTO Takashi
33987a76a9 regen for toywasm v29.0.0
```
REF=12b9e518cd18c9fee09a521afa96eb15cd11edac ./regen.sh
```
2023-07-23 01:08:45 +08:00
YAMAMOTO Takashi
f41873223c toywasm: bump the version to v29.0.0 2023-07-23 01:08:45 +08:00
YAMAMOTO Takashi
7cacd569e5 Revert "toywasm: disable tail call and explain why"
This reverts commit fcda92ebc7.

because it isn't necessary for the latest versions of toywasm.
2023-07-23 01:08:45 +08:00
chao an
4d79a5cbaf add initial cmake build system
Co-authored-by: Daniel Agar <daniel@agar.ca>
Signed-off-by: chao an <anchao@xiaomi.com>
2023-07-08 13:52:02 +08:00
YAMAMOTO Takashi
c078b2ee7a wamr: add a kconfig to control wasi-threads
cf. https://github.com/bytecodealliance/wasm-micro-runtime/blob/main/doc/pthread_impls.md
2023-07-06 09:25:14 -03:00
Huang Qi
be0e677699 interpreters/wamr: New option for configurable bounds checks
Works with https://github.com/bytecodealliance/wasm-micro-runtime/pull/2289

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2023-07-05 16:25:56 +08:00
Xiang Xiao
7986f66006 build: Replace "$(shell $(INCDIR) $(CC) ...)" with $(INCDIR_PREFIX)
to unify the way to get include directories

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-06-22 23:27:26 +03:00
YAMAMOTO Takashi
3bd106081f toywasm: regen after bumping the version
```
REF=99468253ca11c9b8df444e3e23865b5030f6af69 ./regen.sh
```
2023-06-22 09:52:02 +03:00
YAMAMOTO Takashi
5c9e8d6352 toywasm: bump the version 2023-06-22 09:52:02 +03:00
YAMAMOTO Takashi
3d598fce6c toywasm: regen after a change to the script
```
REF=031ac96574bf95c5ec31e5aeb02787a84e6d4af0 ./regen.sh
```
2023-06-17 22:59:32 +03:00
YAMAMOTO Takashi
fcda92ebc7 toywasm: disable tail call and explain why 2023-06-17 22:59:32 +03:00
YAMAMOTO Takashi
900b32c908 toywasm: regen
```
REF=031ac96574bf95c5ec31e5aeb02787a84e6d4af0 ./regen.sh
```
2023-06-12 13:36:48 +08:00
YAMAMOTO Takashi
2c9939920b toywasm: bump version
this includes SIMD support.
2023-06-12 13:36:48 +08:00
Huang Qi
dec2cd9635 tools/Wasm: Decouple the wasm compilation and runtime specific AOT compilation
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2023-05-13 10:15:40 -03:00
Huang Qi
e287e4bb9e wamr: Simplify target handling by LLVM style arch info
Depends on: https://github.com/apache/nuttx/pull/8928

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2023-05-13 10:15:40 -03:00
Xiang Xiao
f95d60366a Fix the nxstyle warning
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-05-08 21:35:16 +03:00
Xiang Xiao
73701cd7cd Replace all strncpy with strlcpy
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-05-08 21:35:16 +03:00
Xiang Xiao
7c37421266 Replace all sprintf with snprintf
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-05-08 21:35:16 +03:00
Xiang Xiao
134b8b538f Replace all strcat with strlcat
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-05-08 21:35:16 +03:00
YAMAMOTO Takashi
15df04083e toywasm: regen
REF=80d43dfa3377810fff0ff143b2e8be2e229bf7f2 ./regen.sh
2023-04-24 23:47:13 +08:00
YAMAMOTO Takashi
b7ac752cca bump toywasm version 2023-04-24 23:47:13 +08:00
Gustavo Henrique Nihei
d650d3276f luamodules: Fix implicit declaration warning for strncasecmp
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-28 14:54:16 -03:00
Huang Qi
95acf6c904 interpreters/wamr: New option to dump call stack
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2023-03-24 11:37:22 +08:00
Huang Qi
8ae5a1b148 Fix some hard coded buffer len of snprintf
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2023-03-21 20:57:56 -03:00
Xu Xingliang
f32aa2df59 lua: download tarball from github release tag
The tarball from github has same file layout as git repo while the tarball from ftp doesn't.
Update Makefile to accommodate this change.

Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
2023-03-21 20:38:29 -03:00
Xiang Xiao
f3c104b99a Fix nxstyle warning
Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-03-19 14:53:44 -06:00
Xiang Xiao
86080a110e apps: Remove the check of CONFIG_SERIAL_TERMIOS
If the code only change c_oflag, c_iflag and c_lflag, not c_cflag in termios.
Follow up the change from kernel: https://github.com/apache/nuttx/pull/8843

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-03-19 14:53:44 -06:00
YAMAMOTO Takashi
04a156e0d0 toywasm: regen config-dependent files
With the regen script:

```
REF=7c6ff3925d0b0f4d5122df9b1b5761bc2954e014 ./regen.sh
```
2023-03-17 12:07:02 -03:00
YAMAMOTO Takashi
b962c02c05 toywasm: add a script to regenerate config-dependent files
This is a manual step mainly because it involves extra
tools including cmake.
2023-03-17 12:07:02 -03:00
Huang Qi
4b1d59d40d bas: Don't ECHO input in repl
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2023-03-17 12:00:55 -03:00
jturnsek
e599bbcd24 Initial LuaJIT interpreter load 2023-03-17 09:28:58 +08:00
YAMAMOTO Takashi
ad9a44d606 interpreter/toywasm: Update toywasm version
Tested on esp32-devkitc.
2023-03-09 01:40:38 +08:00
simbit18
73301dd16d apps/interpreters/bas/Makefile: Fix mistakes in comments
Fix mistakes in comments
2023-03-08 13:50:23 -03:00
simbit18
2a255db413 apps/interpreters/ficl/Make.defs: Add missing Apache Foundation copyright header
Add missing Apache Foundation copyright header
2023-03-08 13:50:23 -03:00
simbit18
c1d859c249 apps/interpreters/bas/Make.defs: Add missing Apache Foundation copyright header
Add missing Apache Foundation copyright header
2023-03-08 13:50:23 -03:00
chao an
4f11f38c38 interpreters/wamr: add compile role of WebAssembly
Add compilation rules to support WebAssembly(WASM/WAMR):

1. Compile Toolchain
 1> Download WASI sdk and export the WASI_SDK_PATH path:

$ wget https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-19/wasi-sdk-19.0-linux.tar.gz
$ tar xf wasi-sdk-19.0-linux.tar.gz
Put wasi-sdk-19.0 to your host WASI_SDK_PATH environment variable, like:
$ export WASI_SDK_PATH=`pwd`/wasi-sdk-19.0

 2> Download Wamr "wamrc" AOT compiler and export to the PATH:
$ mkdir wamrc
$ wget https://github.com/bytecodealliance/wasm-micro-runtime/releases/download/WAMR-1.1.2/wamrc-1.1.2-x86_64-ubuntu-20.04.tar.gz
$ tar xf wamrc-1.1.2-x86_64-ubuntu-20.04.tar.gz
$ export PATH=$PATH:$PWD

2. Configuring and running

 1> Configuring sim/wamr and compile:

nuttx$ ./tools/configure.sh  sim/wamr
nuttx$ make
...
Wamrc Generate AoT: /home/archer/code/nuttx/n5/apps/wasm/hello.aot
Wamrc Generate AoT: /home/archer/code/nuttx/n5/apps/wasm/coremark.aot
LD:  nuttx

 2> Copy the generated wasm file(Interpreter/AoT)

nuttx$ cp ../apps/wasm/hello.aot .
nuttx$ cp ../apps/wasm/hello.wasm .
nuttx$ cp ../apps/wasm/coremark.wasm .

 3> Run iwasm

nuttx$ ./nuttx
NuttShell (NSH) NuttX-10.4.0
nsh> iwasm /data/hello.wasm
Hello, World!!
nsh> iwasm /data/hello.aot
Hello, World!!
nsh> iwasm /data/coremark.wasm
2K performance run parameters for coremark.
CoreMark Size    : 666
Total ticks      : 12000
Total time (secs): 12.000000
Iterations/Sec   : 5.000000
Iterations       : 60
Compiler version : Clang 15.0.7
Compiler flags   : Using NuttX compilation options
Memory location  : Defined by the NuttX configuration
seedcrc          : 0xe9f5
[0]crclist       : 0xe714
[0]crcmatrix     : 0x1fd7
[0]crcstate      : 0x8e3a
[0]crcfinal      : 0xa14c
Correct operation validated. See README.md for run and reporting rules.
CoreMark 1.0 : 5.000000 / Clang 15.0.7 Using NuttX compilation options / Defined by the NuttX configuration

Co-Authored-By: Huang Qi <huangqi3@xiaomi.com>
Signed-off-by: chao an <anchao@xiaomi.com>
2023-03-06 13:23:44 +02:00
Gustavo Henrique Nihei
fe7b57aa11 wamr: Fix INTERPRETERS_WAMR_LIBC_WASI dependency on PSEUDOFS_SOFTLINKS
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-04 01:47:33 +08:00
Xiang Xiao
df2db2e410 interpreters/bas: Fix the nxstyle warning
except "Mixed case identifier found"

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2023-02-24 08:36:58 +02:00
Huang Qi
7f67ee8c88 bas_fs.c: Fix nxstyle: Multiple data definitions
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2023-02-23 17:21:19 +08:00
Huang Qi
db22e07d07 stdio: Remove CONFIG_EOL_IS_XXX
Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2023-02-23 17:21:19 +08:00
lilei19
41f60bd669 change strcpy to strlcpy
Change-Id: I8b9429a3c225a82842fce136bdb14b8b135066d3
Signed-off-by: lilei19 <lilei19@xiaomi.com>
2023-02-22 23:09:55 +08:00
YAMAMOTO Takashi
6aef7fc0a3 interpreter/toywasm: Update toywasm version
Tested on esp32-devkitc.
2023-01-11 17:05:01 +02:00
Xuxingliang
6e67d8ab78 luamodules: fix compile warning in cjson
Signed-off-by: Xuxingliang <xuxingliang@xiaomi.com>
2022-12-22 13:39:35 +08:00
Neo Xu
6725d481b2 interpreters/lua: fix unpack on incremental build
Signed-off-by: Neo Xu <neo.xu1990@gmail.com>
2022-12-21 17:48:29 +08:00
Xu Xingliang
167672c783 interpreters/lua: support lua module list register
Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
2022-12-21 17:48:13 +08:00
Neo Xu
311b4210b7 luamodules/cjson: add lua cjson module
Signed-off-by: Neo Xu <neo.xu1990@gmail.com>
2022-12-21 17:47:14 +08:00
Neo Xu
6d7761f274 luamodules/lsyslog: add lua syslog module
Signed-off-by: Neo Xu <neo.xu1990@gmail.com>
2022-12-21 17:46:59 +08:00
Neo Xu
7a2774b75a luamodules/lfs: add luafilesystem module
Signed-off-by: Neo Xu <neo.xu1990@gmail.com>
2022-12-21 17:46:44 +08:00
Xiang Xiao
d1e46c2d3e compiler.h: Add _ between format|printf|syslog|scanf|strftime and like
align with other macro naming style

Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com>
2022-12-21 01:05:12 +02:00
YAMAMOTO Takashi
867897ad53 interpreters/toywasm/src/toywasm_config.c: add an empty section
I feel this should be fixed in nxstyle.
This is a separate commit to make a revert easier.
2022-12-20 10:45:07 +08:00