Skip to content

Releases: bytecodealliance/wasm-micro-runtime

WAMR-1.1.1

18 Oct 01:53
dc4dcc3

Choose a tag to compare

Implement Linux SGX socket API getpeername, recvfrom and sendto
Implement Linux SGX POSIX calls based on getsockname and set/getbool
Integrate WASI-NN into WAMR: support TensorFlow/CPU/F32 in the first stage
Add timeout send/recv and multicast client/server socket examples
Support cross building and linking LLVM shared libs for wamrc
Add darwin support for app_framework
Add ios support for product-mini
Update export_native_api.md: Relax the "ground rule"
wasm_export.h: Add comments on wasm_runtime_register_natives
Remove unused wasm_runtime_is_module_registered
samples/multi-module: Examine module registration a bit
samples/native-lib: Fix exec_env type
Fix Linux SGX directional OCALL parameter for getsockname
Fix threads issue to enable running threads spec proposal test cases
Fix the "register native with iwasm" stuff for macOS
Fix issues in assemblyscript lib
Wrap wasi_socket_ext api with extern "C" to fix link failure with cxx project
Fix invalid size of memory allocated in wasi init
posix_thread.c: Avoid sem_getvalue deprecation warning on macOS

WAMR-1.1.0

30 Sep 09:26
a9e5150

Choose a tag to compare

Extend support for Socket API:

  • Implement IPv6 (along with IPv4) for all the socket-related operations
  • Enable resolving host name IP address by adding a host call to WASI
    Implement a security feature for controlling what domains are allowed to be resolved
  • Allow configuring socket options by adding host calls to WASI for setting and reading the options
  • Enable connection-less communication between hosts by adding host calls to WASI for sending
    data directly to a given address and receiving messages from a specific address
  • Fix verification of the address in the address pool
  • Add more samples and update the documents

Implement SGX IPFS as POSIX backend for file interaction for linux-sgx

  • Integrates the Intel SGX feature called Intel Protection File System Library (IPFS) into the runtime
    to create, operate and delete files inside the enclave, while guaranteeing the confidentiality and
    integrity of the data persisted

Make libc-builtin buffered printf be a common feature
Enable passing through arguments for build_llvm.sh
Update __wasi_sock_accept signature to match wasi_snapshot_preview1
Enable build wasi_socket_ext.c with both clang and clang++
Add check for code section size, fix interpreter float operations
Prevent an already detached thread from being detached again for thread manager
Fix several issues related to AOT debug and update source_debugging.md
Fix Windows/MSVC build issues and compile warnings
Fix wasm loader: function sub local count can be 0
Fix crash in dumping call stack when the AOT file doesn't contain custom name section
Fix Dockerfile lint errors and suppress hadolint warnings for pinning versions part
Fix Fast JIT issues reported by instrument test
Fix link error for ESP-IDF 4.4.2
Fix syntax errors and undefined names in Python code
Fix issues reported by Coverity
Fix Go binding build error
Fix a wrongly named parameter and enhance the docs in bh_hashmap.h

WAMR-1.0.0

10 Sep 04:39
7593668

Choose a tag to compare

Implement Python language binding
Implement Go language binding
Implement Fast JIT engine
Implement hw bound check for interpreter and Fast JIT
Enable the semantic version mechanism for WAMR
Implement POSIX semaphore support for linux platform
Implement SGX getrandom/getentropy without ocall
Enable remote attestation by librats in SGX mode
Upgrade WAMR-IDE and source debugging
Support print exception info in source debugger
Support emit specified custom sections into AoT file
Refactor spec test script and CI workflows
Support integrate 3rd-party toolchains into wamrc
Enable dump call stack to a buffer
Enable aot compiler with llvm-14/15
Don't suppress prev signal handler in hw bound check
Remove unnecessary memset after mmap
Refine wasm_runtime_call_wasm_a/v
Enable app management and thread support for esp32 arch
Enable libc-wasi support for esp-idf arch
Implement xtensa XIP
Enable memory leak check
Introduce basic CI for nuttx
Update documents
Fix module_realloc with NULL ptr issue
Fix a typo of macro in wasm_application.c
nuttx: add CONFIG_INTERPRETERS_WAMR_PERF_PROFILING
aot_reloc_xtensa.c: define __packed if not available
Fix bh_vector extend_vector not locked issue
Enable build libc-wasi for nuttx
Fix typo in embed_wamr.md
Fix drop opcode issue in fast interpreter
Fix typos in wasm_mini_loader.c
Fix issues reported by Coverity and Klocwork
Add missing aot relocation symbols for xtensa target
Add arc compiler-rt functions and reloc type for mwdt
Fix get invokeNative float ret value issue with clang compiler
Make robust on choosing target assumption for X86_32 support
Fix an issue of wasm_cluster_spread_custom_data when called before exec
Fix socket api verification of addresses in the address pool
Add API wasm_runtime_set_module_inst
Set noexecstack CXX link flags for wamrc
Add import subtyping validation
Fix libc-wasi/uvwasi poll/environ_get issues
Add missing symbol for aot_reloc_arc.c
Add a dev docker container for WAMR repo
Fix dump call stack issue in interpreter
Fix windows thread data issue and enhance windows os_mmap
Support custom stack guard size
Implement i64.div and i64.rem intrinsics
Let iwasm return non-zero value when running failed
Reserve one pointer size for fast-interp code_compiled_size
Enable libc-wasi support for esp-idf
Expose wasm_runtime_get_exec_env_singleton to the API users
Normalize wasm types to refine interpreter call_indirect
Remove unused wasm_runtime_create_exec_env_and_call_wasm
Fix linear memory page count issues
debug: Retire wasm_debug_(get|set)_engine_active mechanism
wasm_application.c: Do not start debug instance automatically
Fix typo in simd_conversions.c
nuttx: Add CONFIG_INTERPRETERS_WAMR_DEBUG_INTERP
Add a new API to get free memory in memory pool
Fix multi-module and some other issues
Fix build issue of the meshoptimizer workload
Fix build error on alios platform

fast-jit-06-29-2022

29 Jun 04:03
a9658c2

Choose a tag to compare

The first version of WAMR fast jit, which implements most wasm opcodes
like the AOT except threads and simd related opcodes.

WAMR-05-18-2022

18 May 01:38
d7a2888

Choose a tag to compare

Refactor Orc JIT to enable lazy compilation
Use LLVM new pass manager for wamrc
Implement WAMR-IDE with vscode extension
Implement Berkeley Socket API based on libc-wasi for Posix platforms
Implement Berkeley Socket API for Intel SGX
Refactor externref related APIs of reference types feature
Implement pthread_cond_broadcast wrapper for lib-pthread
Enable Windows MinGW support
Refine call native function from AOT code
Refine opcode br_table for classic interpreter
Enable register native shared library with iwasm
Add benchmark coremark, polybench, sightglass and jetstream2
Add log info for heap and stack like wasm loader in aot loader
Fix debug thread not created issue
Improve riscv target option compatibility for NuttX
Fix win_thread.c timed wait always return 0 issue
Fix attr_container forward declaration issue
Fix pthread_getspecific return value issue
Correct RIOT os_mmap size type to size_t
Fix native stack overflow check failed in interpreter
Fix wasm_runtime_call_wasm_a issue
Fix build jit error when interp is disabled
[debugger enhance] don't block gdbserver thread while executing
Fix ‘MADV_HUGEPAGE’ undeclared compilation error
Fix wasm-c-api wasm_module_imports issues
Correct DPFPU and FPU handling for NuttX
Use nanosecond for atomic wait
Fix Windows failed to relocate __ymm symbol error
Fix classic interpreter handling BLOCK/IF/LOOP issue
Fix libc-wasi not working in spawned exec_env
Update document of embed wamr and code format check
Enable lock for Vector to protect wasm-c-api read/write/extend operations
Fix wasm_runtime_load argument type invalid issue
Fix issues found by GC and Fast JIT, and refine some codes
Fix issues reported by klocwork and Coverity
Fix fast interpreter constant space overflow issue
Preserve execution memory for debug instance
source debugging: Fix step over was treated as step in issue
Fix wasi implementation issues
Enhance printf_wrapper in libc-builtin
Add aot relocation for ".rodata.str" symbol to support more cases
Fix aot compiler block/value stack destroy issue
aot_loader.c: Fix issues in "Refine interp/aot string storage"
aot_get_module_mem_consumption: Fix const strings size
wamr-compiler: Fix ubsan on macOS
core/iwasm/aot/aot_loader.c: Fix a zero-sized malloc warning
wasm_runtime.c: Fix fault modification on data segment
Fix build wamrc for xtensa failure
Support va_args in libc-builtin
Fix ref-types sample invalid externref signature
sandboxed-system-primitives: make CPT/TCT clock ids optional
sandboxed-system-primitives: Use d_ino=0 for NuttX
Store import function pointer in module instance
product-mini/platforms/nuttx/wamr.mk: Provide BH_MALLOC/BH_FREE
Fix execute_main not wait for other threads
Fix wamrc build error with llvm-14
Fix atomic wait not thread safe issue
aot_emit_aot_file.c: Convert switch lookup table relocation
aot_reloc_arm.c: Implement R_ARM_MOVW_ABS_NC and R_ARM_MOVT_ABS
Enlarge max pool size and fix bh_memcpy_s dest max size check
Auto dump mem/perf profiling in execute_main/execute_func
doc/wasm_c_api.md: Mention relationship with wasm_export.h
Add check for stack_min_addr in bound check with hardware trap

WAMR-01-18-2022

18 Jan 08:56
d856af6

Choose a tag to compare

Fix some ESP-IDF issues, enable AOT and native stack overflow check
Automatically detect the host platform in CMakeLists.txt
Update document of multi-module
Remove hardcoded stack size in thread_manager.c
Upgrade uvwasi to 1.42.0 and fix Android link issues
Fix some issues on MacOS platform
Enable XIP on Windows platform
GetCurrentThreadStackLimits dynamically for Windows platform
Use clang+llvm released binaries instead of "apt install" in Dockerfile
Update document about building wasm app with wasi-sdk
Fix pointer unchecked issue in thread-mgr.c
Correct stack base calculation on MacOS and NuttX
Fix __wasi_subscription_t inconsistent with wasi-libc issue
Fix aarch64 build support
Refine llvm pass order
Fix thread manager issues
Refine is_xip_file and pointer range check
Specify a commit ID for XNNPACK workload

WAMR-12-30-2021

30 Dec 03:40
cdf3063

Choose a tag to compare

Implement XIP feature and Implement float and integer conversion intrinsics
Enable ARC target support
Fix bug of invokeNative assembly on target arm_vfp/thumb/thumb_vfp
Fix pthread_create callback arg issue
Add missing aot relocation symbols for arm/thumb/riscv/xtensa
Implement float and integer conversion intrinsics
Appease some UBSan complaints
Add ia32 support and fix compiling issue for RT-Thread
Enable lazy Orc JIT
Import test suites to test spec cases
Enable wamr-test-suites on MacOS
Allocate correct space for results before native callback is run
Fix calling multi-module import func issue
Implement missing wasm-c-api APIs and align to latest spec proposal
Implement SIMD latest opcodes and update LLVM to 13.0
Implement source debugging for interpreter and AOT
Customize clang-format coding styles based on Mozilla template
Apply clang-format for C/C++ source files
Refactor CI rules
Set APP_THREAD_STACK_SIZE_DEFAULT/MIN for POSIX platforms
Fix WASI type/macro misalignments
Update wabt to latest version
Simplify build setup for zephyr
Fix app heap corrupted unchecked issue
Fix a wrong alignment assumption when emitting aot file
Enable emitting custom name section to aot file
Enable source debugging for windows platform
Remove duplicated wasi_dircookie_t typedef in libc_wasi_wrapper.h
Support random debug port by assigning port = 0
Simplify some string size calculation when emitting AOT file
Implement os_time_get_boot_microsecond() for sgx platform
Refine interp/aot string storage and emitting to reduce footprint
Fix some potential pointer overflow issues
Enable huge page memory map for posix platforms
Enable LLVM link time optimization (LTO) for AOT
Enable ref types and bulk memory by default for wamrc
Fix Win32 build error, endian, machine type, bit-width check errors
Fix duplicated debug instance id in multiple native thread issue
Implement atomic and memset/memmove/memcpy intrinsic for riscv
Fix issue of wasm/aot file malformed format
Refine code when aux stack global isn't found
Don't throw exception while module_malloc failed
Implement relocation R_AARCH64_JUMP26 for aarch64
Update IoT cloud demo
Add new E_TYPE_XIP to indicate XIP mode
Remove hardcoded stack size while creating pthread
Add mipsel to wamrc supported target list
libc-builtin: Fix the signature of strncasecmp native function
Fix definition of int64_t in libc-builtin-sysroot
Clear compile warnings reported by -Wshadow flag
Port WAMR to ESP-IDF platform
xip: Lookup float constants from table to reduce relocations
Fix sensor framework timer issue and update sensor sample
Implement GetCurrentThreadStackLimits() for Windows 7
Add WASI ABI compatibility check for multi-module
Fix XNNPACK workload build error
Update Zephyr document, add esp32c3 and particle_argon support
Fix compile warning on non-x86 targets, fix alios build error

WAMR-08-10-2021

10 Aug 02:47
8fd89bd

Choose a tag to compare

Implement post-MVP reference-types feature
Implement most missing wasm-c-api APIs and enable Envoy integration
Implement RISCV AOT support
Implement boundary check with hardware trap feature on Windows platform
Implement Windows thread/mutex/cond related APIs to support multi-thread
Implement wasm_runtime_init_thread_env for Windows platform
Refine AOT call function process
Refine wasm-c-api call native function process
Fix timer integer overflow issue on Zephyr platform
Fix os_cond_timedwait and other issues for NuttX sim/macOS
Fix build warnings on Linux, SGX and Windows
Move wasm_application entry APIs out of wasm_runtime_common.c
Enable multi-thread for tensorflow sample
Enable populate file descriptors into WASM application in WASI mode
Enable mpu stack for latest zephyr to enable app manager
Enable spread module custom data to all threads
Unify product-mini main.c implementation for POSIX compatible system
Fix issues reported by gcc -fsanitize flag
Implement clock()/clock_gettime() wrapper function for libc built-in
Enable print float/double value in libc-builtin printf() wrapper
Fix compile issues of samples
Create TSC_Charter.md and add TSC members

WAMR-04-15-2021

15 Apr 01:22
7706e4b

Choose a tag to compare

Re-org fast-interpreter to support unaligned address access for some CPUs
Implement auxiliary stack overflow/underflow check for AOT/JIT/interpreter
Enable SIMD128 feature for AARCH64 target
Implement realloc wrapper in builtin libc
Update sample workload's scripts to align with latest emcc
Fix aot code failed to run on darwin/android issue
Fix aux stack overwritten issue when lib-pthread is enabled
Fix pthread_join overwrite issue when lib-pthread is enabled
Fix compile warnings on windows platform: dll linkage and others
Fix llvm target vendor-sys-abi not correctly set issue on windows platform

WAMR-03-25-2021

25 Mar 04:14
5a13e1b

Choose a tag to compare

Enable SIMD by default for wamrc and iwasm
Upgrade llvm version from 10.x to 11.x for wamrc and iwasm JIT
Enable libc-wasi support for Windows platform based on uvwasi
Enable Windows platform JIT and SIMD support
Enable Android libc-wasi support
Enable to use BH_VPRINTF macro to redirect stdout output
Fix windows AOT resolve symbol issues and relocation issues
Fix wasm loader fail to lookup registered native symbol issue
Set AOT code and data read-only after relocation
Update global initialization process for latest spec cases
Fix app manager fail to install large app file issue
Remove unnecessary heap size check when creating wasi ctx
Fix interpreter not update memory size after call native func
Fix sample littlevgl/gui build issues on zephyr platform
Fix some compilation warnings and enable Windows JIT