rust-lang / packed_simd

Portable Packed SIMD Vectors for Rust standard library
https://rust-lang.github.io/packed_simd/packed_simd_2/
Apache License 2.0
589 stars 74 forks source link

Port ci from travis to github actions #352

Closed jhorstmann closed 1 year ago

jhorstmann commented 1 year ago

This sets up github actions workflows that should run the same tests as were previously setup for travis ci. Luckily none of the shell scripts needed changing, only a new set of yaml files.

There are a few FIXME issues, where I could use some help or which could maybe be solved in followup:

There is a mostly unrelated change in the instruction verification tests for vector rotates, that turned out to be a red herring. The verify tests for i586 and i686 were failing because the verifier did not expect a call instruction in the code. That call instruction however was only needed to support relocations, the code was getting inlined correctly. However, I think the target features are more correct after the change, the 128bit type m64x2 should require avx512vl, the other two tests use 512bit vectors where avx512f should suffice.

jhorstmann commented 1 year ago

The last run of the actions can also be seen in my fork: https://github.com/jhorstmann/packed_simd/actions Would be nice if these could be somehow compared with the last successful run in travis. Especially the wrong results in some of the mips or powerpc tests are a bit worrying.

workingjubilee commented 1 year ago

Oof, this has some errors on master, judging by https://github.com/rust-lang/packed_simd/actions/runs/5673019417

workingjubilee commented 1 year ago

https://github.com/rust-lang/packed_simd/pull/355 gets us half of the way there.