mirror of
https://github.com/fastfloat/fast_float.git
synced 2026-09-14 22:52:47 +08:00
Mirrors the SSE2/NEON backends. Enabled for the full V extension with RVV intrinsics spec 0.11+ (GCC 13+, Clang 16+). Also enables the test suite in the RISC-V CI workflow, which previously built but ran no tests, and adds a VLEN=256 QEMU pass.
29 lines
1.1 KiB
YAML
29 lines
1.1 KiB
YAML
name: Ubuntu RISC-V rvv (clang 17)
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-24.04
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
- name: Install packages
|
|
run: |
|
|
sudo apt-get update -q -y
|
|
sudo apt-get install -y cmake make g++-riscv64-linux-gnu qemu-user-static clang-17
|
|
- name: Build
|
|
run: |
|
|
CXX=clang++-17 CXXFLAGS="--target=riscv64-linux-gnu -march=rv64gcv" \
|
|
cmake --toolchain=cmake/toolchains-ci/riscv64-linux-gnu.cmake -DCMAKE_BUILD_TYPE=Release -DFASTFLOAT_TEST=ON -B build
|
|
cmake --build build/ -j$(nproc)
|
|
- name: Test VLEN=128
|
|
run: |
|
|
export QEMU_LD_PREFIX="/usr/riscv64-linux-gnu"
|
|
export QEMU_CPU="rv64,v=on,vlen=128,rvv_ta_all_1s=on,rvv_ma_all_1s=on"
|
|
ctest --timeout 1800 --output-on-failure --test-dir build -j $(nproc)
|
|
- name: Test VLEN=256
|
|
run: |
|
|
export QEMU_LD_PREFIX="/usr/riscv64-linux-gnu"
|
|
export QEMU_CPU="rv64,v=on,vlen=256,rvv_ta_all_1s=on,rvv_ma_all_1s=on"
|
|
ctest --timeout 1800 --output-on-failure --test-dir build -j $(nproc)
|