Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CI: Add test matrix of gcc versions and QEMU architectures #624

Closed
t-mat opened this issue Nov 30, 2021 · 2 comments · Fixed by #640
Closed

CI: Add test matrix of gcc versions and QEMU architectures #624

t-mat opened this issue Nov 30, 2021 · 2 comments · Fixed by #640

Comments

@t-mat
Copy link
Contributor

t-mat commented Nov 30, 2021

#622 (comment)

should we test PPC64LE + gcc v4.8.5 in CI ? and is that even possible btw ?

  • It seems we can easily install gcc-[5,11] cross compiler via apt-get.
  • I don't know much about gcc-4.8 cross compiler so far.
  • We should watch total time of tests.
@t-mat
Copy link
Contributor Author

t-mat commented Dec 1, 2021

I'm working on this issue in my branch
https://github.com/t-mat/xxHash/tree/gha/qemu-gcc-versions

gcc cross compiler versions

  • ubuntu-20.04 supports gcc-{8,9,10} cross compiler.
  • ubuntu-18.04 supports gcc-{6,7,8} cross compiler.
  • I don't know how we can find package of gcc-4.8 and gcc-5 cross compiler for ubunutu-18.04 or 20.04.
  • For some reason, ubnutu-20.04 fails to retrieve gcc-8-mips-linux-gnu. As a workaround, I use ubuntu-18.04 for it.
    • We can install all other gcc-8 cross compilers on ubuntu-20.04 though.

Speed

Since all QEMU tests are running in parallel, total duration of CI script isn't changed much.

Ability

Our CI will be able to catch the following error of the issue #622 and PR #631.

xxhash.h: In function ‘XXH3_accumulate_512_vsx’:
xxhash.h:4148:9: error: invalid parameter combination for AltiVec intrinsic
         xxh_u64x2 acc_vec        = vec_xl(0, xacc + 2 * i);
         ^~~~~~~~~
xxhash.h:4158:9: error: invalid parameter combination for AltiVec intrinsic
         vec_xst(acc_vec, 0, xacc + 2 * i);
         ^~~~~~~
<builtin>: recipe for target 'xxhash.o' failed
make: *** [xxhash.o] Error 1

Here's actual build log of "QEMU PPC64, gcc-6".

@Cyan4973
Copy link
Owner

Cyan4973 commented Dec 1, 2021

Excellent @t-mat !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants