Auto merge of #117267 - RalfJung:miri-tests, r=Mark-Simulacrum
update which targets we test Miri on I hope this doesn't cost too much time; running only the "pass" tests should be reasonably fast (1-2 minutes on my system). Fixes https://github.com/rust-lang/rust/issues/117167
This commit is contained in:
commit
e6e931dda5
1
.github/workflows/ci.yml
vendored
1
.github/workflows/ci.yml
vendored
@ -382,6 +382,7 @@ jobs:
|
||||
- name: x86_64-msvc-ext
|
||||
env:
|
||||
SCRIPT: python x.py --stage 2 test src/tools/cargotest src/tools/cargo && src/ci/docker/host-x86_64/x86_64-gnu-tools/checktools.sh x.py /tmp/toolstate/toolstates.json windows
|
||||
HOST_TARGET: x86_64-pc-windows-msvc
|
||||
RUST_CONFIGURE_ARGS: "--build=x86_64-pc-windows-msvc --enable-lld --save-toolstates=/tmp/toolstate/toolstates.json"
|
||||
DEPLOY_TOOLSTATES_JSON: toolstates-windows.json
|
||||
os: windows-2019-8core-32gb
|
||||
|
@ -83,6 +83,8 @@ ENV RUST_CONFIGURE_ARGS \
|
||||
--build=x86_64-unknown-linux-gnu \
|
||||
--save-toolstates=/tmp/toolstate/toolstates.json
|
||||
|
||||
ENV HOST_TARGET x86_64-unknown-linux-gnu
|
||||
|
||||
ENV SCRIPT /tmp/checktools.sh ../x.py && \
|
||||
NODE_PATH=`npm root -g` python3 ../x.py test tests/rustdoc-gui --stage 2 \
|
||||
--test-args "'--no-sandbox --jobs 1'"
|
||||
|
@ -1,4 +1,5 @@
|
||||
#!/bin/sh
|
||||
# ignore-tidy-linelength
|
||||
|
||||
set -eu
|
||||
|
||||
@ -26,8 +27,30 @@ python3 "$X_PY" test --stage 2 src/tools/clippy
|
||||
python3 "$X_PY" test --stage 2 src/tools/rustfmt
|
||||
python3 "$X_PY" test --stage 2 src/tools/miri
|
||||
# We natively run this script on x86_64-unknown-linux-gnu and x86_64-pc-windows-msvc.
|
||||
# Also cover some other targets (on both of these hosts) via cross-testing.
|
||||
# Also cover some other targets via cross-testing, in particular all tier 1 targets.
|
||||
export BOOTSTRAP_SKIP_TARGET_SANITY=1 # we don't need `cc` for these targets
|
||||
python3 "$X_PY" test --stage 2 src/tools/miri --target i686-pc-windows-msvc
|
||||
python3 "$X_PY" test --stage 2 src/tools/miri --target aarch64-apple-darwin
|
||||
case $HOST_TARGET in
|
||||
x86_64-unknown-linux-gnu)
|
||||
# Only this branch runs in PR CI.
|
||||
# Fully test all main OSes, including a 32bit target.
|
||||
python3 "$X_PY" test --stage 2 src/tools/miri --target x86_64-apple-darwin
|
||||
python3 "$X_PY" test --stage 2 src/tools/miri --target i686-pc-windows-msvc
|
||||
# Only run "pass" tests for the remaining targets, which is quite a bit faster.
|
||||
python3 "$X_PY" test --stage 2 src/tools/miri --target x86_64-pc-windows-gnu --test-args pass
|
||||
python3 "$X_PY" test --stage 2 src/tools/miri --target i686-unknown-linux-gnu --test-args pass
|
||||
python3 "$X_PY" test --stage 2 src/tools/miri --target aarch64-unknown-linux-gnu --test-args pass
|
||||
python3 "$X_PY" test --stage 2 src/tools/miri --target s390x-unknown-linux-gnu --test-args pass
|
||||
;;
|
||||
x86_64-pc-windows-msvc)
|
||||
# Strangely, Linux targets do not work here. cargo always says
|
||||
# "error: cannot produce cdylib for ... as the target ... does not support these crate types".
|
||||
# Only run "pass" tests, which is quite a bit faster.
|
||||
python3 "$X_PY" test --stage 2 src/tools/miri --target aarch64-apple-darwin --test-args pass
|
||||
python3 "$X_PY" test --stage 2 src/tools/miri --target i686-pc-windows-gnu --test-args pass
|
||||
;;
|
||||
*)
|
||||
echo "FATAL: unexpected host $HOST_TARGET"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
unset BOOTSTRAP_SKIP_TARGET_SANITY
|
||||
|
@ -582,6 +582,7 @@ jobs:
|
||||
- name: x86_64-msvc-ext
|
||||
env:
|
||||
SCRIPT: python x.py --stage 2 test src/tools/cargotest src/tools/cargo && src/ci/docker/host-x86_64/x86_64-gnu-tools/checktools.sh x.py /tmp/toolstate/toolstates.json windows
|
||||
HOST_TARGET: x86_64-pc-windows-msvc
|
||||
RUST_CONFIGURE_ARGS: --build=x86_64-pc-windows-msvc --enable-lld --save-toolstates=/tmp/toolstate/toolstates.json
|
||||
DEPLOY_TOOLSTATES_JSON: toolstates-windows.json
|
||||
<<: *job-windows-8c
|
||||
|
Loading…
Reference in New Issue
Block a user