Skip to content

Improve function reuse #8

Improve function reuse

Improve function reuse #8

Workflow file for this run

name: Tests
on:
push:
pull_request:
workflow_dispatch:
jobs:
test-accelerated:
name: Test accelerated (aarch64, x86_64)
strategy:
matrix:
os: [ubuntu-latest, ubuntu-22.04-arm, ubuntu-24.04-arm, macos-latest]
rust-toolchain:
- "1.81" # minimum for this crate
- "stable"
- "nightly"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4 # not pinning to commit hash since this is a GitHub action, which we trust
- uses: actions-rust-lang/setup-rust-toolchain@9d7e65c320fdb52dcd45ffaa68deb6c02c8754d9 # v1.12.0
with:
toolchain: ${{ matrix.rust-toolchain }}
components: rustfmt, clippy
- name: Check
run: cargo check
- name: Architecture check
run: cargo run arch-check
- name: Architecture check (Optimized)
run: cargo run arch-check
- if: ${{ matrix.rust-toolchain != 'nightly' }}
name: Format
run: cargo fmt -- --check
- if: ${{ matrix.rust-toolchain != 'nightly' }}
name: Clippy
run: cargo clippy
- name: Test
run: cargo test
test-x86:
name: Test accelerated (x86)
runs-on: ubuntu-latest
strategy:
matrix:
target: [i586-unknown-linux-gnu, i686-unknown-linux-gnu]
rust-toolchain:
- "1.81" # minimum for this crate
- "stable"
- "nightly"
steps:
- uses: actions/checkout@v4 # not pinning to commit hash since this is a GitHub action, which we trust
- uses: actions-rust-lang/setup-rust-toolchain@9d7e65c320fdb52dcd45ffaa68deb6c02c8754d9 # v1.12.0
with:
toolchain: ${{ matrix.rust-toolchain }}
components: rustfmt, clippy
- name: Set up cross
run: cargo install cross --locked --version 0.2.5
- name: Check
run: cross check --target ${{ matrix.target }}
- name: Test
run: cross test --target ${{ matrix.target }}
test-software:
name: Test software fallback
runs-on: ubuntu-latest
strategy:
matrix:
target: [powerpc-unknown-linux-gnu, powerpc64-unknown-linux-gnu]
rust-toolchain:
- "1.81" # minimum for this crate
- "stable"
- "nightly"
steps:
- uses: actions/checkout@v4 # not pinning to commit hash since this is a GitHub action, which we trust
- uses: actions-rust-lang/setup-rust-toolchain@9d7e65c320fdb52dcd45ffaa68deb6c02c8754d9 # v1.12.0
with:
toolchain: ${{ matrix.rust-toolchain }}
components: rustfmt, clippy
- name: Set up cross
run: cargo install cross --locked --version 0.2.5
- name: Check
run: cross check --target ${{ matrix.target }}
- name: Test
run: cross test --target ${{ matrix.target }}