mirror of
https://github.com/rust-lang/rust.git
synced 2025-10-28 03:24:11 +00:00
* Add wasm32 simd128 intrinsics * test wasm32 simd128 instructions * Run wasm tests like all other tests * use modules instead of types to access wasm simd128 interpretations * generate docs for wasm32-unknown-unknown * fix typo * Enable #[assert_instr] on wasm32 * Shell out to Node's `execSync` to execute `wasm2wat` over our wasm file * Parse the wasm file line-by-line, looking for various function markers and such * Use the `elem` section to build a function pointer table, allowing us to map exactly from function pointer to a function * Avoid losing debug info (the names section) in release mode by stripping `--strip-debug` from `rust-lld`. * remove exclude list from Cargo.toml * fix assert_instr for non-wasm targets * re-format assert-instr changes * add crate that uses assert_instr * Fix instructions having extra quotes * Add assert_instr for wasm memory intrinsics * Remove hacks for git wasm-bindgen * add wasm_simd128 feature * make wasm32 build correctly * run simd128 tests on ci * remove wasm-assert-instr-tests
38 lines
927 B
Bash
Executable File
38 lines
927 B
Bash
Executable File
# Small script to run tests for a target (or all targets) inside all the
|
|
# respective docker images.
|
|
|
|
set -ex
|
|
|
|
run() {
|
|
echo "Building docker container for TARGET=${1}"
|
|
docker build -t stdsimd -f ci/docker/$1/Dockerfile ci/
|
|
mkdir -p target
|
|
target=$(echo $1 | sed 's/-emulated//')
|
|
echo "Running docker"
|
|
docker run \
|
|
--user `id -u`:`id -g` \
|
|
--rm \
|
|
--init \
|
|
--volume $HOME/.cargo:/cargo-h \
|
|
--env CARGO_HOME=/cargo-h \
|
|
--volume `rustc --print sysroot`:/rust:ro \
|
|
--env TARGET=$target \
|
|
--env STDSIMD_TEST_EVERYTHING \
|
|
--env STDSIMD_ASSERT_INSTR_IGNORE \
|
|
--volume `pwd`:/checkout:ro \
|
|
--volume `pwd`/target:/checkout/target \
|
|
--workdir /checkout \
|
|
--privileged \
|
|
stdsimd \
|
|
bash \
|
|
-c 'PATH=/rust/bin:$PATH exec ci/run.sh'
|
|
}
|
|
|
|
if [ -z "$1" ]; then
|
|
for d in `ls ci/docker/`; do
|
|
run $d
|
|
done
|
|
else
|
|
run $1
|
|
fi
|