mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-06-17 02:29:12 +00:00
clean up incompatible running mode checks in test script and ci (#4342)
Rearrange the content of do_execute_in_running_mode() in alphabetical order. Add an incompatible check for x86_32. Now, all belows will be bypassed: - jit, fast-jit, multi-tier-jit - memory64 - multi-memory - simd
This commit is contained in:
parent
78e68cec83
commit
9becf65d1e
|
@ -618,49 +618,6 @@ jobs:
|
|||
llvm_cache_key: ${{ needs.build_llvm_libraries_on_ubuntu_2204.outputs.cache_key }}
|
||||
running_mode: aot
|
||||
test_option: $WAMR_COMPILER_TEST_OPTIONS
|
||||
exclude:
|
||||
# incompatible modes and features
|
||||
# classic-interp doesn't support simd
|
||||
- running_mode: "classic-interp"
|
||||
test_option: $SIMD_TEST_OPTIONS
|
||||
# llvm jit doesn't support multi module
|
||||
- running_mode: "jit"
|
||||
test_option: $MULTI_MODULES_TEST_OPTIONS
|
||||
# fast-jit doesn't support multi module, simd
|
||||
- running_mode: "fast-jit"
|
||||
test_option: $MULTI_MODULES_TEST_OPTIONS
|
||||
- running_mode: "fast-jit"
|
||||
test_option: $SIMD_TEST_OPTIONS
|
||||
# multi-tier-jit doesn't support multi module, simd
|
||||
- running_mode: "multi-tier-jit"
|
||||
test_option: $MULTI_MODULES_TEST_OPTIONS
|
||||
- running_mode: "multi-tier-jit"
|
||||
test_option: $SIMD_TEST_OPTIONS
|
||||
# fast-jit and multi-tier-jit don't support GC
|
||||
- running_mode: "fast-jit"
|
||||
test_option: $GC_TEST_OPTIONS
|
||||
- running_mode: "multi-tier-jit"
|
||||
test_option: $GC_TEST_OPTIONS
|
||||
# fast-interp, fast-jit, llvm-jit, multi-tier-jit don't support Memory64
|
||||
- running_mode: "fast-interp"
|
||||
test_option: $MEMORY64_TEST_OPTIONS
|
||||
- running_mode: "fast-jit"
|
||||
test_option: $MEMORY64_TEST_OPTIONS
|
||||
- running_mode: "jit"
|
||||
test_option: $MEMORY64_TEST_OPTIONS
|
||||
- running_mode: "multi-tier-jit"
|
||||
test_option: $MEMORY64_TEST_OPTIONS
|
||||
# aot, fast-interp, fast-jit, llvm-jit, multi-tier-jit don't support Multi Memory
|
||||
- running_mode: "aot"
|
||||
test_option: $MULTI_MEMORY_TEST_OPTIONS
|
||||
- running_mode: "fast-interp"
|
||||
test_option: $MULTI_MEMORY_TEST_OPTIONS
|
||||
- running_mode: "fast-jit"
|
||||
test_option: $MULTI_MEMORY_TEST_OPTIONS
|
||||
- running_mode: "jit"
|
||||
test_option: $MULTI_MEMORY_TEST_OPTIONS
|
||||
- running_mode: "multi-tier-jit"
|
||||
test_option: $MULTI_MEMORY_TEST_OPTIONS
|
||||
|
||||
steps:
|
||||
- name: checkout
|
||||
|
|
21
.github/workflows/nightly_run.yml
vendored
21
.github/workflows/nightly_run.yml
vendored
|
@ -617,24 +617,11 @@ jobs:
|
|||
sanitizer: tsan
|
||||
- running_mode: "multi-tier-jit"
|
||||
sanitizer: tsan
|
||||
# classic-interp and fast-interp don't support simd
|
||||
- running_mode: "classic-interp"
|
||||
test_option: $SIMD_TEST_OPTIONS
|
||||
# simd128.h brings ubsan errors
|
||||
# like: negation of XXXcannot be represented in type 'long int';
|
||||
# cast to an unsigned type to negate this value to itself
|
||||
- running_mode: "fast-interp"
|
||||
test_option: $SIMD_TEST_OPTIONS
|
||||
# llvm jit doesn't support multi module
|
||||
- running_mode: "jit"
|
||||
test_option: $MULTI_MODULES_TEST_OPTIONS
|
||||
# fast-jit doesn't support multi module, simd
|
||||
- running_mode: "fast-jit"
|
||||
test_option: $MULTI_MODULES_TEST_OPTIONS
|
||||
- running_mode: "fast-jit"
|
||||
test_option: $SIMD_TEST_OPTIONS
|
||||
# multi-tier-jit doesn't support multi module, simd
|
||||
- running_mode: "multi-tier-jit"
|
||||
test_option: $MULTI_MODULES_TEST_OPTIONS
|
||||
- running_mode: "multi-tier-jit"
|
||||
test_option: $SIMD_TEST_OPTIONS
|
||||
sanitizer: ubsan
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
|
|
|
@ -877,51 +877,12 @@ function do_execute_in_running_mode()
|
|||
{
|
||||
local RUNNING_MODE="$1"
|
||||
|
||||
if [[ ${ENABLE_MULTI_MEMORY} -eq 1 ]]; then
|
||||
if [[ "${RUNNING_MODE}" != "classic-interp" \
|
||||
&& "${RUNNING_MODE}" != "aot" ]]; then
|
||||
echo "support multi-memory in classic-interp mode and aot mode"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
# filter out uncompatible running mode based on targeting proposal features
|
||||
# keep alpha order
|
||||
|
||||
if [[ ${ENABLE_MEMORY64} -eq 1 ]]; then
|
||||
if [[ "${RUNNING_MODE}" != "classic-interp" \
|
||||
&& "${RUNNING_MODE}" != "aot" ]]; then
|
||||
echo "support memory64(wasm64) in classic-interp mode and aot mode"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${ENABLE_MULTI_MODULE} -eq 1 ]]; then
|
||||
if [[ "${RUNNING_MODE}" != "classic-interp" \
|
||||
&& "${RUNNING_MODE}" != "fast-interp" \
|
||||
&& "${RUNNING_MODE}" != "aot" ]]; then
|
||||
echo "support multi-module in both interp modes"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${SGX_OPT} == "--sgx" ]]; then
|
||||
if [[ "${RUNNING_MODE}" != "classic-interp" \
|
||||
&& "${RUNNING_MODE}" != "fast-interp" \
|
||||
&& "${RUNNING_MODE}" != "aot" \
|
||||
&& "${RUNNING_MODE}" != "fast-jit" ]]; then
|
||||
echo "support sgx in both interp modes, fast-jit mode and aot mode"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${ENABLE_SIMD} -eq 1 ]]; then
|
||||
if [[ "${RUNNING_MODE}" != "jit" && "${RUNNING_MODE}" != "aot" && "${RUNNING_MODE}" != "fast-interp" ]]; then
|
||||
echo "support simd in llvm-jit, aot and fast-interp mode"
|
||||
return 0;
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${TARGET} == "X86_32" ]]; then
|
||||
if [[ "${RUNNING_MODE}" == "jit" || "${RUNNING_MODE}" == "fast-jit" ]]; then
|
||||
echo "both llvm-jit mode and fast-jit mode do not support X86_32 target"
|
||||
if [[ ${ENABLE_EH} -eq 1 ]]; then
|
||||
if [[ "${RUNNING_MODE}" != "classic-interp" ]]; then
|
||||
echo "support exception handling in classic-interp"
|
||||
return 0;
|
||||
fi
|
||||
fi
|
||||
|
@ -936,9 +897,67 @@ function do_execute_in_running_mode()
|
|||
fi
|
||||
fi
|
||||
|
||||
if [[ ${ENABLE_EH} -eq 1 ]]; then
|
||||
if [[ ${ENABLE_MEMORY64} -eq 1 ]]; then
|
||||
if [[ "${RUNNING_MODE}" != "classic-interp" \
|
||||
&& "${RUNNING_MODE}" != "aot" ]]; then
|
||||
echo "support memory64(wasm64) in classic-interp mode and aot mode"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${ENABLE_MULTI_MEMORY} -eq 1 ]]; then
|
||||
if [[ "${RUNNING_MODE}" != "classic-interp" ]]; then
|
||||
echo "support exception handling in classic-interp"
|
||||
echo "support multi-memory in classic-interp mode mode"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${ENABLE_MULTI_MODULE} -eq 1 ]]; then
|
||||
if [[ "${RUNNING_MODE}" != "classic-interp" \
|
||||
&& "${RUNNING_MODE}" != "fast-interp" \
|
||||
&& "${RUNNING_MODE}" != "aot" ]]; then
|
||||
echo "support multi-module in both interp modes"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${ENABLE_SIMD} -eq 1 ]]; then
|
||||
if [[ "${RUNNING_MODE}" != "jit" && "${RUNNING_MODE}" != "aot" && "${RUNNING_MODE}" != "fast-interp" ]]; then
|
||||
echo "support simd in llvm-jit, aot and fast-interp mode"
|
||||
return 0;
|
||||
fi
|
||||
fi
|
||||
|
||||
# filter out uncompatible running mode based on SGX support
|
||||
if [[ ${SGX_OPT} == "--sgx" ]]; then
|
||||
if [[ "${RUNNING_MODE}" != "classic-interp" \
|
||||
&& "${RUNNING_MODE}" != "fast-interp" \
|
||||
&& "${RUNNING_MODE}" != "aot" \
|
||||
&& "${RUNNING_MODE}" != "fast-jit" ]]; then
|
||||
echo "support sgx in both interp modes, fast-jit mode and aot mode"
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
|
||||
# filter out uncompatible running mode based on architecture
|
||||
if [[ ${TARGET} == "X86_32" ]]; then
|
||||
if [[ "${RUNNING_MODE}" == "jit" || "${RUNNING_MODE}" == "fast-jit" || "${RUNNING_MODE}" == "multi-tier-jit" ]]; then
|
||||
echo "both llvm-jit, fast-jit and multi-tier-jit mode do not support X86_32 target"
|
||||
return 0;
|
||||
fi
|
||||
|
||||
if [[ ${ENABLE_MEMORY64} -eq 1 ]]; then
|
||||
echo "memory64 does not support X86_32 target"
|
||||
return 0;
|
||||
fi
|
||||
|
||||
if [[ ${ENABLE_MULTI_MEMORY} -eq 1 ]]; then
|
||||
echo "multi-memory does not support X86_32 target"
|
||||
return 0;
|
||||
fi
|
||||
|
||||
if [[ ${ENABLE_SIMD} -eq 1 ]]; then
|
||||
echo "simd does not support X86_32 target"
|
||||
return 0;
|
||||
fi
|
||||
fi
|
||||
|
|
Loading…
Reference in New Issue
Block a user