CI: Ensure that the built peepmatic peephole optimizers are up to date
Beyond just ensuring that they can still be built, ensure that rebuilding them doesn't result in a different built artifact.
This commit is contained in:
34
.github/workflows/main.yml
vendored
34
.github/workflows/main.yml
vendored
@@ -207,12 +207,16 @@ jobs:
|
|||||||
- uses: actions/checkout@v1
|
- uses: actions/checkout@v1
|
||||||
with:
|
with:
|
||||||
submodules: true
|
submodules: true
|
||||||
- name: Build
|
- name: Rebuild peepmatic peephole optimizers
|
||||||
run: |
|
run: |
|
||||||
cd cranelift && cargo build --features 'cranelift-codegen/rebuild-peephole-optimizers'
|
cd cranelift/
|
||||||
- name: Test
|
cargo build --features 'enable-peepmatic cranelift-codegen/rebuild-peephole-optimizers'
|
||||||
|
- name: Check that peephole optimizers are up to date
|
||||||
|
run: git diff --exit-code
|
||||||
|
- name: Test with peepmatic
|
||||||
run: |
|
run: |
|
||||||
cd cranelift && cargo test --features 'cranelift-codegen/rebuild-peephole-optimizers'
|
cd cranelift/
|
||||||
|
cargo test --features 'enable-peepmatic'
|
||||||
|
|
||||||
# Perform all tests (debug mode) for `wasmtime`. This runs stable/beta/nightly
|
# Perform all tests (debug mode) for `wasmtime`. This runs stable/beta/nightly
|
||||||
# channels of Rust as well as macOS/Linux/Windows.
|
# channels of Rust as well as macOS/Linux/Windows.
|
||||||
@@ -383,11 +387,29 @@ jobs:
|
|||||||
# Build `wasmtime` and executables
|
# Build `wasmtime` and executables
|
||||||
- run: $CENTOS cargo build --release --bin wasmtime
|
- run: $CENTOS cargo build --release --bin wasmtime
|
||||||
shell: bash
|
shell: bash
|
||||||
|
|
||||||
# Build `libwasmtime.so`
|
# Build `libwasmtime.so`
|
||||||
- run: $CENTOS cargo build --release --manifest-path crates/c-api/Cargo.toml
|
- run: $CENTOS cargo build --release --manifest-path crates/c-api/Cargo.toml
|
||||||
shell: bash
|
shell: bash
|
||||||
# Test what we just built
|
|
||||||
- run: $CENTOS cargo test --features test-programs/test_programs --release --all --exclude lightbeam
|
# Test what we just built.
|
||||||
|
#
|
||||||
|
# Ignore some optional dependencies that are used by features that aren't
|
||||||
|
# enabled by default, are tested in other, dedicated CI jobs, and which
|
||||||
|
# would increase build times here.
|
||||||
|
- run: |
|
||||||
|
$CENTOS cargo test \
|
||||||
|
--features test-programs/test_programs \
|
||||||
|
--release \
|
||||||
|
--all \
|
||||||
|
--exclude lightbeam \
|
||||||
|
--exclude peepmatic \
|
||||||
|
--exclude peepmatic-automata \
|
||||||
|
--exclude peepmatic-fuzzing \
|
||||||
|
--exclude peepmatic-macro \
|
||||||
|
--exclude peepmatic-runtime \
|
||||||
|
--exclude peepmatic-test \
|
||||||
|
--exclude wasmtime-fuzz
|
||||||
shell: bash
|
shell: bash
|
||||||
env:
|
env:
|
||||||
RUST_BACKTRACE: 1
|
RUST_BACKTRACE: 1
|
||||||
|
|||||||
Reference in New Issue
Block a user