Add standalone cases (#3536)
This commit is contained in:
133
tests/standalone/test-pthread/run.sh
Executable file
133
tests/standalone/test-pthread/run.sh
Executable file
@ -0,0 +1,133 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Copyright (C) 2019 Intel Corporation. All rights reserved.
|
||||
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
||||
#
|
||||
|
||||
if [[ $2 == "--sgx" ]]; then
|
||||
readonly IWASM_CMD="../../../product-mini/platforms/linux-sgx/enclave-sample/iwasm"
|
||||
else
|
||||
readonly IWASM_CMD="../../../product-mini/platforms/linux/build/iwasm"
|
||||
fi
|
||||
readonly WAMRC_CMD="../../../wamr-compiler/build/wamrc"
|
||||
|
||||
if [[ $1 != "--aot" ]]; then
|
||||
echo "============> run create_join.wasm"
|
||||
${IWASM_CMD} --heap-size=16384 create_join.wasm
|
||||
echo "============> run main_thread_return.wasm"
|
||||
${IWASM_CMD} --heap-size=16384 main_thread_return.wasm
|
||||
echo "============> run thread_cancel.wasm"
|
||||
${IWASM_CMD} --heap-size=16384 thread_cancel.wasm
|
||||
echo "============> run thread_exit.wasm"
|
||||
${IWASM_CMD} --heap-size=16384 thread_exit.wasm
|
||||
echo "============> run wasi.wasm"
|
||||
${IWASM_CMD} --heap-size=16384 wasi.wasm
|
||||
echo "============> run pthread_mutex.wasm"
|
||||
${IWASM_CMD} --heap-size=16384 pthread_mutex.wasm
|
||||
echo "============> run pthread_cond.wasm"
|
||||
${IWASM_CMD} --heap-size=16384 pthread_cond.wasm
|
||||
echo "============> run pthread_key.wasm"
|
||||
${IWASM_CMD} --heap-size=16384 pthread_key.wasm
|
||||
else
|
||||
echo "============> compile create_join.wasm to aot"
|
||||
if [[ $2 == "--sgx" ]]; then
|
||||
${WAMRC_CMD} -sgx --enable-multi-thread -o create_join.aot create_join.wasm
|
||||
else
|
||||
${WAMRC_CMD} --enable-multi-thread -o create_join.aot create_join.wasm
|
||||
fi
|
||||
echo "============> run create_join.aot"
|
||||
${IWASM_CMD} --heap-size=16384 create_join.aot
|
||||
|
||||
echo "============> compile main_thread_return.wasm to aot"
|
||||
if [[ $2 == "--sgx" ]]; then
|
||||
${WAMRC_CMD} -sgx --enable-multi-thread -o main_thread_return.aot main_thread_return.wasm
|
||||
else
|
||||
${WAMRC_CMD} --enable-multi-thread -o main_thread_return.aot main_thread_return.wasm
|
||||
fi
|
||||
echo "============> run main_thread_return.aot"
|
||||
${IWASM_CMD} --heap-size=16384 main_thread_return.aot
|
||||
|
||||
echo "============> compile thread_cancel.wasm to aot"
|
||||
if [[ $2 == "--sgx" ]]; then
|
||||
${WAMRC_CMD} -sgx --enable-multi-thread -o thread_cancel.aot thread_cancel.wasm
|
||||
else
|
||||
${WAMRC_CMD} --enable-multi-thread -o thread_cancel.aot thread_cancel.wasm
|
||||
fi
|
||||
echo "============> run thread_cancel.aot"
|
||||
${IWASM_CMD} --heap-size=16384 thread_cancel.aot
|
||||
|
||||
echo "============> compile thread_exit.wasm to aot"
|
||||
if [[ $2 == "--sgx" ]]; then
|
||||
${WAMRC_CMD} -sgx --enable-multi-thread -o thread_exit.aot thread_exit.wasm
|
||||
else
|
||||
${WAMRC_CMD} --enable-multi-thread -o thread_exit.aot thread_exit.wasm
|
||||
fi
|
||||
echo "============> run thread_exit.aot"
|
||||
${IWASM_CMD} --heap-size=16384 thread_exit.aot
|
||||
|
||||
echo "============> compile wasi.wasm to aot"
|
||||
if [[ $2 == "--sgx" ]]; then
|
||||
${WAMRC_CMD} -sgx --enable-multi-thread -o wasi.aot wasi.wasm
|
||||
else
|
||||
${WAMRC_CMD} --enable-multi-thread -o wasi.aot wasi.wasm
|
||||
fi
|
||||
echo "============> run wasi.aot"
|
||||
${IWASM_CMD} --heap-size=16384 wasi.aot
|
||||
|
||||
echo "============> compile pthread_mutex.wasm to aot"
|
||||
if [[ $2 == "--sgx" ]]; then
|
||||
${WAMRC_CMD} -sgx --enable-multi-thread -o pthread_mutex.aot pthread_mutex.wasm
|
||||
else
|
||||
${WAMRC_CMD} --enable-multi-thread -o pthread_mutex.aot pthread_mutex.wasm
|
||||
fi
|
||||
echo "============> run pthread_mutex.aot"
|
||||
${IWASM_CMD} --heap-size=16384 pthread_mutex.aot
|
||||
|
||||
echo "============> compile pthread_cond.wasm to aot"
|
||||
if [[ $2 == "--sgx" ]]; then
|
||||
${WAMRC_CMD} -sgx --enable-multi-thread -o pthread_cond.aot pthread_cond.wasm
|
||||
else
|
||||
${WAMRC_CMD} --enable-multi-thread -o pthread_cond.aot pthread_cond.wasm
|
||||
fi
|
||||
echo "============> run pthread_cond.aot"
|
||||
${IWASM_CMD} --heap-size=16384 pthread_cond.aot
|
||||
|
||||
echo "============> compile pthread_key.wasm to aot"
|
||||
if [[ $2 == "--sgx" ]]; then
|
||||
${WAMRC_CMD} -sgx --enable-multi-thread -o pthread_key.aot pthread_key.wasm
|
||||
else
|
||||
${WAMRC_CMD} --enable-multi-thread -o pthread_key.aot pthread_key.wasm
|
||||
fi
|
||||
echo "============> run pthread_key.aot"
|
||||
${IWASM_CMD} --heap-size=16384 pthread_key.aot
|
||||
fi
|
||||
|
||||
cd threads-opcode-wasm-apps
|
||||
rm -rf build && mkdir build && cd build
|
||||
cmake .. && make
|
||||
cd ../..
|
||||
|
||||
wasm_files=$(ls threads-opcode-wasm-apps/build/*.wasm)
|
||||
|
||||
for wasm_file in $wasm_files; do
|
||||
wasm_file_name="${wasm_file%.wasm}"
|
||||
# avoid keep printing warning: warning: SGX pthread_cond_timedwait isn't supported, calling pthread_cond_wait instead!
|
||||
if [[ $2 == "--sgx" ]] && [[ ${wasm_file_name} == *"atomic_wait_notify"* ]]; then
|
||||
echo "============> didn't run ${wasm_file_name} on sgx aot mode, it will output too much warning info"
|
||||
continue
|
||||
fi
|
||||
|
||||
if [[ $1 != "--aot" ]]; then
|
||||
echo "============> run ${wasm_file_name}.wasm"
|
||||
${IWASM_CMD} --heap-size=16384 ${wasm_file_name}.wasm
|
||||
else
|
||||
echo "============> compile ${wasm_file_name}.wasm to aot"
|
||||
if [[ $2 == "--sgx" ]]; then
|
||||
${WAMRC_CMD} -sgx --enable-multi-thread --opt-level=0 -o ${wasm_file_name}.aot ${wasm_file_name}.wasm
|
||||
else
|
||||
${WAMRC_CMD} --enable-multi-thread --opt-level=0 -o ${wasm_file_name}.aot ${wasm_file_name}.wasm
|
||||
fi
|
||||
echo "============> run ${wasm_file_name}.aot"
|
||||
${IWASM_CMD} --heap-size=16384 ${wasm_file_name}.aot
|
||||
fi
|
||||
done
|
||||
Reference in New Issue
Block a user