x86 fast checking for alpha singularity #277
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "Build" | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
on: | |
push: | |
branches: | |
- 'master' | |
- '!ci_test_*' | |
tags-ignore: | |
- '*' | |
pull_request: | |
branches: | |
- 'master' | |
jobs: | |
build: | |
name: Build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
- run: rustup target add aarch64-unknown-linux-gnu x86_64-unknown-linux-gnu i686-unknown-linux-gnu powerpc-unknown-linux-gnu riscv64gc-unknown-linux-gnu | |
- run: RUSTFLAGS="-C target-feature=+neon,-fp16" cargo build --target aarch64-unknown-linux-gnu --features half | |
- run: RUSTFLAGS="-C target-feature=+neon,+fp16" cargo build --target aarch64-unknown-linux-gnu --features half | |
- run: RUSTFLAGS="-C target-feature=+sse4.1" cargo build --target i686-unknown-linux-gnu | |
- run: cargo build --target powerpc-unknown-linux-gnu | |
- run: cargo build --target riscv64gc-unknown-linux-gnu | |
- run: RUSTFLAGS="-C target-feature=+sse4.1" cargo build --target x86_64-unknown-linux-gnu | |
- run: RUSTFLAGS="-C target-feature=+sse4.1,+f16c" cargo build --features half --target x86_64-unknown-linux-gnu | |
- run: RUSTFLAGS="-C target-feature=+avx2,+f16c" cargo build --features half --target x86_64-unknown-linux-gnu | |
- run: RUSTFLAGS="-C target-feature=+avx2" cargo build --target x86_64-unknown-linux-gnu | |
clippy: | |
name: Clippy | |
strategy: | |
matrix: | |
os: [ ubuntu-latest, macos-latest ] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- run: cargo clippy | |
fuzz_rgba_8bit: | |
name: Fuzzing 8bit | |
strategy: | |
matrix: | |
os: [ ubuntu-latest, macos-latest ] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
- run: cargo install cargo-fuzz | |
- run: cargo fuzz run resize_rgba -- -max_total_time=30 | |
- run: cargo fuzz run resize_rgb -- -max_total_time=30 | |
- run: cargo fuzz run resize_plane -- -max_total_time=30 | |
- run: cargo fuzz run colorspaces -- -max_total_time=10 | |
fuzz_rgba_high_bit: | |
name: Fuzzing High bit-depth | |
strategy: | |
matrix: | |
os: [ ubuntu-latest, macos-latest ] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
- run: cargo install cargo-fuzz | |
- run: cargo fuzz run resize_rgba_u16 -- -max_total_time=30 | |
- run: cargo fuzz run resize_rgb_u16 -- -max_total_time=30 | |
- run: cargo fuzz run resize_plane_u16 -- -max_total_time=30 | |
fuzz_rgba_f32: | |
name: Fuzzing floating point | |
strategy: | |
matrix: | |
os: [ ubuntu-latest, macos-latest ] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
- run: cargo install cargo-fuzz | |
- run: cargo fuzz run resize_rgba_f32 -- -max_total_time=30 | |
- run: cargo fuzz run resize_rgb_f32 -- -max_total_time=30 | |
- run: cargo fuzz run resize_plane_f32 -- -max_total_time=30 |