Skip to content

Commit 2314f3b

Browse files
committed
test stage-1 in ci
1 parent a7468c6 commit 2314f3b

File tree

3 files changed

+59
-0
lines changed

3 files changed

+59
-0
lines changed

.github/workflows/ci.yml

+3
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,9 @@ jobs:
4646
- name: x86_64-gnu-llvm-12
4747
os: ubuntu-20.04-xl
4848
env: {}
49+
- name: x86_64-gnu-llvm-12-stage1
50+
os: ubuntu-20.04-xl
51+
env: {}
4952
- name: x86_64-gnu-tools
5053
env:
5154
CI_ONLY_WHEN_SUBMODULES_CHANGED: 1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
FROM ubuntu:20.04
2+
3+
ARG DEBIAN_FRONTEND=noninteractive
4+
RUN apt-get update && apt-get install -y --no-install-recommends \
5+
g++ \
6+
gcc-multilib \
7+
make \
8+
ninja-build \
9+
file \
10+
curl \
11+
ca-certificates \
12+
python2.7 \
13+
git \
14+
cmake \
15+
sudo \
16+
gdb \
17+
llvm-12-tools \
18+
llvm-12-dev \
19+
libedit-dev \
20+
libssl-dev \
21+
pkg-config \
22+
zlib1g-dev \
23+
xz-utils \
24+
nodejs
25+
26+
COPY scripts/sccache.sh /scripts/
27+
RUN sh /scripts/sccache.sh
28+
29+
# using llvm-link-shared due to libffi issues -- see #34486
30+
ENV RUST_CONFIGURE_ARGS \
31+
--build=x86_64-unknown-linux-gnu \
32+
--llvm-root=/usr/lib/llvm-12 \
33+
--enable-llvm-link-shared \
34+
--set rust.thin-lto-import-instr-limit=10
35+
36+
ENV SCRIPT python2.7 ../x.py --stage 1 test --exclude src/tools/tidy && \
37+
# Run the `mir-opt` tests again but this time for a 32-bit target.
38+
# This enforces that tests using `// EMIT_MIR_FOR_EACH_BIT_WIDTH` have
39+
# both 32-bit and 64-bit outputs updated by the PR author, before
40+
# the PR is approved and tested for merging.
41+
# It will also detect tests lacking `// EMIT_MIR_FOR_EACH_BIT_WIDTH`,
42+
# despite having different output on 32-bit vs 64-bit targets.
43+
python2.7 ../x.py --stage 1 test src/test/mir-opt \
44+
--host='' --target=i686-unknown-linux-gnu && \
45+
# Run the UI test suite again, but in `--pass=check` mode
46+
#
47+
# This is intended to make sure that both `--pass=check` continues to
48+
# work.
49+
#
50+
python2.7 ../x.py --stage 1 test src/test/ui --pass=check \
51+
--host='' --target=i686-unknown-linux-gnu && \
52+
# Run tidy at the very end, after all the other tests.
53+
python2.7 ../x.py --stage 1 test src/tools/tidy

src/ci/github-actions/ci.yml

+3
Original file line numberDiff line numberDiff line change
@@ -287,6 +287,9 @@ jobs:
287287
- name: x86_64-gnu-llvm-12
288288
<<: *job-linux-xl
289289

290+
- name: x86_64-gnu-llvm-12-stage1
291+
<<: *job-linux-xl
292+
290293
- name: x86_64-gnu-tools
291294
env:
292295
CI_ONLY_WHEN_SUBMODULES_CHANGED: 1

0 commit comments

Comments
 (0)