mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2026-04-19 02:28:43 +00:00
7258077ff6
3 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
520410d806
|
fix: disable unsigned integer overflow sanitization (#4785)
Some checks failed
compilation on macos / build_samples_wasm_c_api (${{ needs.build_llvm_libraries_on_arm_macos.outputs.cache_key }}, $AOT_BUILD_OPTIONS, macos-15) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (${{ needs.build_llvm_libraries_on_arm_macos.outputs.cache_key }}, $FAST_INTERP_BUILD_OPTIONS, macos-15) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $AOT_BUILD_OPTIONS, macos-15-intel) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $FAST_INTERP_BUILD_OPTIONS, macos-15-intel) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (-DWAMR_BUILD_MULTI_MODULE=0, ${{ needs.build_llvm_libraries_on_arm_macos.outputs.cache_key }}, $LLVM_EAGER_JIT_BUILD_OPTIONS, macos-15) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (-DWAMR_BUILD_MULTI_MODULE=0, ${{ needs.build_llvm_libraries_on_arm_macos.outputs.cache_key }}, $LLVM_LAZY_JIT_BUILD_OPTIONS, macos-15) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (-DWAMR_BUILD_MULTI_MODULE=0, ${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $LLVM_EAGER_JIT_BUILD_OPTIONS, macos-15-intel) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (-DWAMR_BUILD_MULTI_MODULE=0, ${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $LLVM_LAZY_JIT_BUILD_OPTIONS, macos-15-intel) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (-DWAMR_BUILD_SIMD=0, ${{ needs.build_llvm_libraries_on_arm_macos.outputs.cache_key }}, $CLASSIC_INTERP_BUILD_OPTIONS, macos-15) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (-DWAMR_BUILD_SIMD=0, ${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $CLASSIC_INTERP_BUILD_OPTIONS, macos-15-intel) (push) Has been cancelled
compilation on macos / build_samples_others (${{ needs.build_llvm_libraries_on_arm_macos.outputs.cache_key }}, macos-15) (push) Has been cancelled
compilation on macos / build_samples_others (${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, macos-15-intel) (push) Has been cancelled
compilation on SGX / run_samples_file (-DWAMR_BUILD_SGX_IPFS=1, $AOT_BUILD_OPTIONS, ${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, linux-sgx) (push) Has been cancelled
compilation on SGX / run_samples_file (-DWAMR_BUILD_SGX_IPFS=1, $CLASSIC_INTERP_BUILD_OPTIONS, ${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, linux-sgx) (push) Has been cancelled
compilation on SGX / run_samples_file (-DWAMR_BUILD_SGX_IPFS=1, $FAST_INTERP_BUILD_OPTIONS, ${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, linux-sgx) (push) Has been cancelled
compilation on SGX / run_samples_file (-DWAMR_BUILD_SGX_IPFS=1, $FAST_JIT_BUILD_OPTIONS, ${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, linux-sgx) (push) Has been cancelled
compilation on SGX / spec_test_default (${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, aot, $DEFAULT_TEST_OPTIONS) (push) Has been cancelled
compilation on SGX / spec_test_default (${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, aot, $SIMD_TEST_OPTIONS) (push) Has been cancelled
compilation on SGX / spec_test_default (${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, aot, $XIP_TEST_OPTIONS) (push) Has been cancelled
compilation on SGX / spec_test_default (${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, classic-interp, $DEFAULT_TEST_OPTIONS) (push) Has been cancelled
compilation on SGX / spec_test_default (${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, fast-jit, $DEFAULT_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / build_wamrc (${{ needs.build_llvm_libraries_on_windows.outputs.cache_key }}, windows-2022) (push) Has been cancelled
compilation on windows-2022 / test (classic-interp, $DEFAULT_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (classic-interp, $MULTI_MODULES_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (classic-interp, $THREADS_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (classic-interp, $WASI_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (fast-interp, $DEFAULT_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (fast-interp, $MULTI_MODULES_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (fast-interp, $THREADS_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (fast-interp, $WASI_TEST_OPTIONS) (push) Has been cancelled
* fix: disable unsigned integer overflow sanitization in build configurations
FYI: from https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html
`-fsanitize=unsigned-integer-overflow`: Unsigned integer overflow, where the result of an unsigned integer computation cannot be represented in its type. Unlike signed integer overflow, this is not undefined behavior, but it is often unintentional. This sanitizer does not check for lossy implicit conversions performed before such a computation.
It brings a more common question: which is better, pre-additional-check or post-additional-check to fix a potential unsigned integer overflow? A pre-additional-check involves using a check to prevent integer overflow from the very beginning. A post-additional-check involves using a check after addition to see if there is an overflow.
In this project, post-additional-checking is widely used. let's follow the routine.
for performance sensitive logic, use __builtin_add_overflow etc. provide something like
|
||
|
|
2a2dd19f32
|
Implicitly disable the SIMD flag for classic-interp and fast-jit (#4768)
Some checks failed
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, fast-jit, ubsan, $DEFAULT_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, fast-jit, ubsan, $EXTENDED_CONST_EXPR_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, fast-jit, ubsan, $MULTI_MODULES_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, fast-jit, ubsan, $SIMD_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, fast-jit, ubsan, $THREADS_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, fast-jit, ubsan, $WASI_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, , $DEFAULT_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, , $EXTENDED_CONST_EXPR_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, , $MULTI_MODULES_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, , $SIMD_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, , $THREADS_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, , $WASI_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, ubsan, $DEFAULT_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, ubsan, $EXTENDED_CONST_EXPR_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, ubsan, $MULTI_MODULES_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, ubsan, $SIMD_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, ubsan, $THREADS_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, jit, ubsan, $WASI_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, , $DEFAULT_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, , $EXTENDED_CONST_EXPR_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, , $MULTI_MODULES_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, , $SIMD_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, , $THREADS_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, , $WASI_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, ubsan, $DEFAULT_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, ubsan, $EXTENDED_CONST_EXPR_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, ubsan, $MULTI_MODULES_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, ubsan, $SIMD_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, ubsan, $THREADS_TEST_OPTIONS, 22.04) (push) Has been cancelled
nightly_run / test (${{ needs.build_llvm_libraries_on_ubuntu.outputs.cache_key }}, ubuntu-22.04, multi-tier-jit, ubsan, $WASI_TEST_OPTIONS, 22.04) (push) Has been cancelled
|
||
|
|
081c3445ef
|
feat: add support for checking unsupported build configurations (#4690)
Some checks failed
compilation on macos / build_iwasm (-DWAMR_BUILD_SIMD=0, ${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, -DWAMR_BUILD_PERF_PROFILING=1, $CLASSIC_INTERP_BUILD_OPTIONS, macos-13, darwin) (push) Has been cancelled
compilation on macos / build_iwasm (-DWAMR_BUILD_SIMD=0, ${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, -DWAMR_BUILD_TAIL_CALL=1, $CLASSIC_INTERP_BUILD_OPTIONS, macos-13, darwin) (push) Has been cancelled
compilation on macos / build_iwasm (-DWAMR_BUILD_SIMD=0, ${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, -DWAMR_DISABLE_HW_BOUND_CHECK=1, $CLASSIC_INTERP_BUILD_OPTIONS, macos-13, darwin) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $AOT_BUILD_OPTIONS, macos-13) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $FAST_INTERP_BUILD_OPTIONS, macos-13) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (-DWAMR_BUILD_MULTI_MODULE=0, ${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $LLVM_EAGER_JIT_BUILD_OPTIONS, macos-13) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (-DWAMR_BUILD_MULTI_MODULE=0, ${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $LLVM_LAZY_JIT_BUILD_OPTIONS, macos-13) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (-DWAMR_BUILD_SIMD=0 -DWAMR_BUILD_MULTI_MODULE=0, ${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $FAST_JIT_BUILD_OPTIONS, macos-13) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (-DWAMR_BUILD_SIMD=0 -DWAMR_BUILD_MULTI_MODULE=0, ${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $MULTI_TIER_JIT_BUILD_OPTIONS, macos-13) (push) Has been cancelled
compilation on macos / build_samples_wasm_c_api (-DWAMR_BUILD_SIMD=0, ${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, $CLASSIC_INTERP_BUILD_OPTIONS, macos-13) (push) Has been cancelled
compilation on macos / build_samples_others (${{ needs.build_llvm_libraries_on_arm_macos.outputs.cache_key }}, macos-14) (push) Has been cancelled
compilation on macos / build_samples_others (${{ needs.build_llvm_libraries_on_intel_macos.outputs.cache_key }}, macos-13) (push) Has been cancelled
compilation on SGX / run_samples_file (-DWAMR_BUILD_SGX_IPFS=1, $AOT_BUILD_OPTIONS, ${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, linux-sgx) (push) Has been cancelled
compilation on SGX / run_samples_file (-DWAMR_BUILD_SGX_IPFS=1, $CLASSIC_INTERP_BUILD_OPTIONS, ${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, linux-sgx) (push) Has been cancelled
compilation on SGX / run_samples_file (-DWAMR_BUILD_SGX_IPFS=1, $FAST_INTERP_BUILD_OPTIONS, ${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, linux-sgx) (push) Has been cancelled
compilation on SGX / run_samples_file (-DWAMR_BUILD_SGX_IPFS=1, $FAST_JIT_BUILD_OPTIONS, ${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, linux-sgx) (push) Has been cancelled
compilation on SGX / spec_test_default (${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, aot, $DEFAULT_TEST_OPTIONS) (push) Has been cancelled
compilation on SGX / spec_test_default (${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, aot, $SIMD_TEST_OPTIONS) (push) Has been cancelled
compilation on SGX / spec_test_default (${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, aot, $XIP_TEST_OPTIONS) (push) Has been cancelled
compilation on SGX / spec_test_default (${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, classic-interp, $DEFAULT_TEST_OPTIONS) (push) Has been cancelled
compilation on SGX / spec_test_default (${{ needs.build_llvm_libraries.outputs.cache_key }}, ubuntu-22.04, fast-jit, $DEFAULT_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / build_wamrc (${{ needs.build_llvm_libraries_on_windows.outputs.cache_key }}, windows-2022) (push) Has been cancelled
compilation on windows-2022 / test (classic-interp, $DEFAULT_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (classic-interp, $MULTI_MODULES_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (classic-interp, $THREADS_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (classic-interp, $WASI_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (fast-interp, $DEFAULT_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (fast-interp, $MULTI_MODULES_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (fast-interp, $THREADS_TEST_OPTIONS) (push) Has been cancelled
compilation on windows-2022 / test (fast-interp, $WASI_TEST_OPTIONS) (push) Has been cancelled
* feat: add support for checking unsupported build configurations
* docs: improve clarity and formatting in build_wamr.md
* feat: add check for unsupported SHARED_HEAP + FAST_JIT configuration and update documentation warning
* feat: disable default SIMD setting for 64-bit platform in CMake configuration
* feat: update Android and macOS workflows to handle SIMD support in classic interp mode
* feat: update SGX compilation workflow to handle unsupported FAST_JIT and classic interp mode without SIMD support
* feat: enhance check for unsupported CLASSIC_INTERP configurations
* feat: disable fast interpreter for shared heap tests and update unsupported features test library
* feat: enhance unsupported combination checks and update build configurations for JIT and SIMD
* In regression tests, use llvm-jit and fast-jit to replace multi-tier-jit + running mode. Multi-tier-jit contains both fast-jit and llvm-jit. Fast-jit doesn't support SIMD, but llvm-jit does. So, should multi-tier-jit support SIMD? My answer is NO.
- The regular form of multi-tier-jit uses fast-jit as tier1 and llvm-jit as
tier2. Therefore, if fast-jit doesn't support SIMD, the entire multi-tier
doesn't support SIMD either.
- `--fast-jit` and `--llvm-jit` of multi-tier-jit should adhere to the global
limitations of multi-tier-jit.
* Explicitly specify SIMD, MULTI_MODULE, and their unsupported running modes.
- SIMD and Ref. types are enabled by default on linux and darwin. So remove duplicate feature testing from CI
- Apply new configuration for wasm-c-api compilation commands
|