Skip to content

fuzz: Add host operations for testing x87_f80 #67

fuzz: Add host operations for testing x87_f80

fuzz: Add host operations for testing x87_f80 #67

Workflow file for this run

name: CI
on:
push: { branches: [main] }
pull_request:
merge_group:
env:
CARGO_TERM_COLOR: always
RUSTDOCFLAGS: -Dwarnings
RUSTFLAGS: -Dwarnings
RUST_BACKTRACE: full
jobs:
test:
name: Test
runs-on: ${{ matrix.os }}
timeout-minutes: 20
strategy:
matrix:
include:
- target: x86_64-unknown-linux-gnu
os: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- name: Install Dependencies
run: |
rustup update nightly --no-self-update
rustup default nightly
sudo apt-get install -y llvm # Needed to build the C++ APFloat
# This should also cache LLVM since it downloads to `target/llvm-downloads`
- uses: Swatinem/rust-cache@v2
with:
key: ${{ matrix.target }}
- name: Download llvm source
run: ./etc/download-llvm.sh
- name: Build and run tests
run: cargo test --workspace
msrv:
name: Check the MSRV
runs-on: ubuntu-24.04
timeout-minutes: 20
env:
RUSTFLAGS: # No need to check warnings on old MSRV, unset `-Dwarnings`
steps:
- uses: actions/checkout@v6
- run: |
msrv="$(
cargo metadata --no-deps --format-version 1 |
jq -r '.packages | .[] | select(.name == "rustc_apfloat") | .rust_version'
)"
echo "MSRV: $msrv"
echo "MSRV=$msrv" >> "$GITHUB_ENV"
- name: Install Rust
run: rustup update "$MSRV" --no-self-update && rustup default "$MSRV"
- uses: Swatinem/rust-cache@v2
- run: |
# strip the fuzz crate that uses a newer edition
sed -i '/members =/d' Cargo.toml
cargo build --package rustc_apfloat
rustfmt:
name: Rustfmt
runs-on: ubuntu-24.04
timeout-minutes: 10
steps:
- uses: actions/checkout@v6
- name: Install Rust
run: rustup update stable --no-self-update && rustup default stable && rustup component add rustfmt
- run: cargo fmt --check