9494 - { target: i586-pc-windows-msvc, target_feature: +sse2, os: windows-latest }
9595
9696 # Annoyingly, the x86_64-unknown-linux-gnu runner *almost* always has
97- # avx512vl, but occasionally doesn't. As a result, we still run that
98- # one under travis.
97+ # avx512vl, but occasionally doesn't. Maybe one day we can enable it.
9998
10099 steps :
101100 - uses : actions/checkout@v2
@@ -141,6 +140,31 @@ jobs:
141140 - name : Test (release)
142141 run : cargo test --verbose --target=${{ matrix.target }} --release
143142
143+ wasm-tests :
144+ name : " wasm (firefox, ${{ matrix.name }})"
145+ runs-on : ubuntu-latest
146+ strategy :
147+ matrix :
148+ include :
149+ - { name: default, RUSTFLAGS: "" }
150+ - { name: simd128, RUSTFLAGS: "-C target-feature=+simd128" }
151+ steps :
152+ - uses : actions/checkout@v2
153+ - name : Setup Rust
154+ run : |
155+ rustup update nightly --no-self-update
156+ rustup default nightly
157+ - name : Install wasm-pack
158+ run : curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh
159+ - name : Test (debug)
160+ run : wasm-pack test --firefox --headless crates/core_simd
161+ env :
162+ RUSTFLAGS : ${{ matrix.rustflags }}
163+ - name : Test (release)
164+ run : wasm-pack test --firefox --headless crates/core_simd --release
165+ env :
166+ RUSTFLAGS : ${{ matrix.rustflags }}
167+
144168 cross-tests :
145169 name : " ${{ matrix.target }} (via cross)"
146170 runs-on : ubuntu-latest
@@ -163,12 +187,19 @@ jobs:
163187 # 32-bit arm has a few idiosyncracies like having subnormal flushing
164188 # to zero on by default. Ideally we'd set
165189 - armv7-unknown-linux-gnueabihf
190+ - aarch64-unknown-linux-gnu
166191 # Note: The issue above means neither of these mips targets will use
167192 # MSA (mips simd) but MIPS uses a nonstandard binary representation
168193 # for NaNs which makes it worth testing on despite that.
169194 - mips-unknown-linux-gnu
170195 - mips64-unknown-linux-gnuabi64
171196 - riscv64gc-unknown-linux-gnu
197+ # TODO this test works, but it appears to time out
198+ # - powerpc-unknown-linux-gnu
199+ # TODO this test is broken, but it appears to be a problem with QEMU, not us.
200+ # - powerpc64le-unknown-linux-gnu
201+ # TODO enable this once a new version of cross is released
202+ # - powerpc64-unknown-linux-gnu
172203
173204 steps :
174205 - uses : actions/checkout@v2
0 commit comments