mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-05-09 13:16:26 +00:00
wamr-test-suites/test_wamr.sh: Add an option to specify wamrc binary (#3635)
This commit is contained in:
parent
2879e67aa9
commit
9f637e6f0a
|
@ -129,7 +129,7 @@ def ignore_the_case(
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
||||||
def preflight_check(aot_flag, eh_flag):
|
def preflight_check(aot_flag, aot_compiler, eh_flag):
|
||||||
if not pathlib.Path(SPEC_TEST_DIR).resolve().exists():
|
if not pathlib.Path(SPEC_TEST_DIR).resolve().exists():
|
||||||
print(f"Can not find {SPEC_TEST_DIR}")
|
print(f"Can not find {SPEC_TEST_DIR}")
|
||||||
return False
|
return False
|
||||||
|
@ -138,8 +138,8 @@ def preflight_check(aot_flag, eh_flag):
|
||||||
print(f"Can not find {WAST2WASM_CMD}")
|
print(f"Can not find {WAST2WASM_CMD}")
|
||||||
return False
|
return False
|
||||||
|
|
||||||
if aot_flag and not pathlib.Path(WAMRC_CMD).resolve().exists():
|
if aot_flag and not pathlib.Path(aot_compiler).resolve().exists():
|
||||||
print(f"Can not find {WAMRC_CMD}")
|
print(f"Can not find {aot_compiler}")
|
||||||
return False
|
return False
|
||||||
|
|
||||||
return True
|
return True
|
||||||
|
@ -149,6 +149,7 @@ def test_case(
|
||||||
case_path,
|
case_path,
|
||||||
target,
|
target,
|
||||||
aot_flag=False,
|
aot_flag=False,
|
||||||
|
aot_compiler=WAMRC_CMD,
|
||||||
sgx_flag=False,
|
sgx_flag=False,
|
||||||
multi_module_flag=False,
|
multi_module_flag=False,
|
||||||
multi_thread_flag=False,
|
multi_thread_flag=False,
|
||||||
|
@ -177,7 +178,7 @@ def test_case(
|
||||||
if no_pty:
|
if no_pty:
|
||||||
CMD.append("--no-pty")
|
CMD.append("--no-pty")
|
||||||
CMD.append("--aot-compiler")
|
CMD.append("--aot-compiler")
|
||||||
CMD.append(WAMRC_CMD)
|
CMD.append(aot_compiler)
|
||||||
|
|
||||||
if aot_flag:
|
if aot_flag:
|
||||||
CMD.append("--aot")
|
CMD.append("--aot")
|
||||||
|
@ -274,6 +275,7 @@ def test_case(
|
||||||
def test_suite(
|
def test_suite(
|
||||||
target,
|
target,
|
||||||
aot_flag=False,
|
aot_flag=False,
|
||||||
|
aot_compiler=WAMRC_CMD,
|
||||||
sgx_flag=False,
|
sgx_flag=False,
|
||||||
multi_module_flag=False,
|
multi_module_flag=False,
|
||||||
multi_thread_flag=False,
|
multi_thread_flag=False,
|
||||||
|
@ -348,6 +350,7 @@ def test_suite(
|
||||||
str(case_path),
|
str(case_path),
|
||||||
target,
|
target,
|
||||||
aot_flag,
|
aot_flag,
|
||||||
|
aot_compiler,
|
||||||
sgx_flag,
|
sgx_flag,
|
||||||
multi_module_flag,
|
multi_module_flag,
|
||||||
multi_thread_flag,
|
multi_thread_flag,
|
||||||
|
@ -389,6 +392,7 @@ def test_suite(
|
||||||
str(case_path),
|
str(case_path),
|
||||||
target,
|
target,
|
||||||
aot_flag,
|
aot_flag,
|
||||||
|
aot_compiler,
|
||||||
sgx_flag,
|
sgx_flag,
|
||||||
multi_module_flag,
|
multi_module_flag,
|
||||||
multi_thread_flag,
|
multi_thread_flag,
|
||||||
|
@ -470,6 +474,12 @@ def main():
|
||||||
dest="aot_flag",
|
dest="aot_flag",
|
||||||
help="Running with AOT mode",
|
help="Running with AOT mode",
|
||||||
)
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"--aot-compiler",
|
||||||
|
default=WAMRC_CMD,
|
||||||
|
dest="aot_compiler",
|
||||||
|
help="AOT compiler",
|
||||||
|
)
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
"-x",
|
"-x",
|
||||||
action="store_true",
|
action="store_true",
|
||||||
|
@ -550,7 +560,7 @@ def main():
|
||||||
if options.target == "x86_32":
|
if options.target == "x86_32":
|
||||||
options.target = "i386"
|
options.target = "i386"
|
||||||
|
|
||||||
if not preflight_check(options.aot_flag, options.eh_flag):
|
if not preflight_check(options.aot_flag, options.aot_compiler, options.eh_flag):
|
||||||
return False
|
return False
|
||||||
|
|
||||||
if not options.cases:
|
if not options.cases:
|
||||||
|
@ -564,6 +574,7 @@ def main():
|
||||||
ret = test_suite(
|
ret = test_suite(
|
||||||
options.target,
|
options.target,
|
||||||
options.aot_flag,
|
options.aot_flag,
|
||||||
|
options.aot_compiler,
|
||||||
options.sgx_flag,
|
options.sgx_flag,
|
||||||
options.multi_module_flag,
|
options.multi_module_flag,
|
||||||
options.multi_thread_flag,
|
options.multi_thread_flag,
|
||||||
|
@ -591,6 +602,7 @@ def main():
|
||||||
case,
|
case,
|
||||||
options.target,
|
options.target,
|
||||||
options.aot_flag,
|
options.aot_flag,
|
||||||
|
options.aot_compiler,
|
||||||
options.sgx_flag,
|
options.sgx_flag,
|
||||||
options.multi_module_flag,
|
options.multi_module_flag,
|
||||||
options.multi_thread_flag,
|
options.multi_thread_flag,
|
||||||
|
|
|
@ -39,6 +39,7 @@ function help()
|
||||||
echo "-C enable code coverage collect"
|
echo "-C enable code coverage collect"
|
||||||
echo "-j set the platform to test"
|
echo "-j set the platform to test"
|
||||||
echo "-T set sanitizer to use in tests(ubsan|tsan|asan)"
|
echo "-T set sanitizer to use in tests(ubsan|tsan|asan)"
|
||||||
|
echo "-A use the specified wamrc command instead of building it"
|
||||||
echo "-r [requirement name] [N [N ...]] specify a requirement name followed by one or more"
|
echo "-r [requirement name] [N [N ...]] specify a requirement name followed by one or more"
|
||||||
echo " subrequirement IDs, if no subrequirement is specificed,"
|
echo " subrequirement IDs, if no subrequirement is specificed,"
|
||||||
echo " it will run all subrequirements. When this optin is used,"
|
echo " it will run all subrequirements. When this optin is used,"
|
||||||
|
@ -75,6 +76,7 @@ fi
|
||||||
PARALLELISM=0
|
PARALLELISM=0
|
||||||
ENABLE_QEMU=0
|
ENABLE_QEMU=0
|
||||||
QEMU_FIRMWARE=""
|
QEMU_FIRMWARE=""
|
||||||
|
WAMRC_CMD=""
|
||||||
# prod/testsuite-all branch
|
# prod/testsuite-all branch
|
||||||
WASI_TESTSUITE_COMMIT="ee807fc551978490bf1c277059aabfa1e589a6c2"
|
WASI_TESTSUITE_COMMIT="ee807fc551978490bf1c277059aabfa1e589a6c2"
|
||||||
TARGET_LIST=("AARCH64" "AARCH64_VFP" "ARMV7" "ARMV7_VFP" "THUMBV7" "THUMBV7_VFP" \
|
TARGET_LIST=("AARCH64" "AARCH64_VFP" "ARMV7" "ARMV7_VFP" "THUMBV7" "THUMBV7_VFP" \
|
||||||
|
@ -83,7 +85,7 @@ REQUIREMENT_NAME=""
|
||||||
# Initialize an empty array for subrequirement IDs
|
# Initialize an empty array for subrequirement IDs
|
||||||
SUBREQUIREMENT_IDS=()
|
SUBREQUIREMENT_IDS=()
|
||||||
|
|
||||||
while getopts ":s:cabgvt:m:MCpSXexwWPGQF:j:T:r:" opt
|
while getopts ":s:cabgvt:m:MCpSXexwWPGQF:j:T:r:A:" opt
|
||||||
do
|
do
|
||||||
OPT_PARSED="TRUE"
|
OPT_PARSED="TRUE"
|
||||||
case $opt in
|
case $opt in
|
||||||
|
@ -214,6 +216,10 @@ do
|
||||||
echo "Only Test requirement name: ${REQUIREMENT_NAME}"
|
echo "Only Test requirement name: ${REQUIREMENT_NAME}"
|
||||||
[[ ${#SUBREQUIREMENT_IDS[@]} -ne 0 ]] && echo "Choose subrequirement IDs: ${SUBREQUIREMENT_IDS[@]}"
|
[[ ${#SUBREQUIREMENT_IDS[@]} -ne 0 ]] && echo "Choose subrequirement IDs: ${SUBREQUIREMENT_IDS[@]}"
|
||||||
;;
|
;;
|
||||||
|
A)
|
||||||
|
echo "Using wamrc ${OPTARG}"
|
||||||
|
WAMRC_CMD=${OPTARG}
|
||||||
|
;;
|
||||||
?)
|
?)
|
||||||
help
|
help
|
||||||
exit 1
|
exit 1
|
||||||
|
@ -251,7 +257,7 @@ else
|
||||||
readonly IWASM_CMD="${WAMR_DIR}/product-mini/platforms/${PLATFORM}/build/iwasm"
|
readonly IWASM_CMD="${WAMR_DIR}/product-mini/platforms/${PLATFORM}/build/iwasm"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
readonly WAMRC_CMD="${WAMR_DIR}/wamr-compiler/build/wamrc"
|
readonly WAMRC_CMD_DEFAULT="${WAMR_DIR}/wamr-compiler/build/wamrc"
|
||||||
|
|
||||||
readonly CLASSIC_INTERP_COMPILE_FLAGS="\
|
readonly CLASSIC_INTERP_COMPILE_FLAGS="\
|
||||||
-DWAMR_BUILD_TARGET=${TARGET} \
|
-DWAMR_BUILD_TARGET=${TARGET} \
|
||||||
|
@ -550,6 +556,7 @@ function spec_test()
|
||||||
# require warmc only in aot mode
|
# require warmc only in aot mode
|
||||||
if [[ $1 == 'aot' ]]; then
|
if [[ $1 == 'aot' ]]; then
|
||||||
ARGS_FOR_SPEC_TEST+="-t "
|
ARGS_FOR_SPEC_TEST+="-t "
|
||||||
|
ARGS_FOR_SPEC_TEST+="--aot-compiler ${WAMRC_CMD} "
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ ${PARALLELISM} == 1 ]]; then
|
if [[ ${PARALLELISM} == 1 ]]; then
|
||||||
|
@ -1052,7 +1059,10 @@ function trigger()
|
||||||
if [[ ${ENABLE_QEMU} == 0 ]]; then
|
if [[ ${ENABLE_QEMU} == 0 ]]; then
|
||||||
build_iwasm_with_cfg $BUILD_FLAGS
|
build_iwasm_with_cfg $BUILD_FLAGS
|
||||||
fi
|
fi
|
||||||
|
if [ -z "${WAMRC_CMD}" ]; then
|
||||||
build_wamrc
|
build_wamrc
|
||||||
|
WAMRC_CMD=${WAMRC_CMD_DEFAULT}
|
||||||
|
fi
|
||||||
for suite in "${TEST_CASE_ARR[@]}"; do
|
for suite in "${TEST_CASE_ARR[@]}"; do
|
||||||
$suite"_test" aot
|
$suite"_test" aot
|
||||||
done
|
done
|
||||||
|
|
Loading…
Reference in New Issue
Block a user