1 Commits

Author SHA1 Message Date
alpine-mips-patches
7f7b310f53 testing/brotli: optimize on mips*, s390x
1) Recognize s390x and mips64* as 64-bit architectures to enable 64-bit code path.
2) Enable direct unaligned loads/stores for s390x. See "Integral Boundaries"
   in SA22-7832-xx.
3) Enable unaligned access using LWL/LWR/etc instructions on pre-R6 mips*.
   This doubles "brotli -1" compression speed on P5600 (~30% for "brotli --best")
   and makes the brotli executable smaller by ~10%.
4) Use gcc/clang __builtin_bswapXX on big-endian architectures.
   On s390x this reduces byte-swapped unaligned loads/stores to single LRVx/STRVx
   instruction. On current big-endian mips* (pre-R2) this changes nothing however
   allows for shorter byte swap sequences on R2+.

Test suite still passes on x86_64, mipseln8hf (hardware) and under qemu-s390x.
2018-12-18 14:35:11 +00:00