aboutsummaryrefslogtreecommitdiffstats
path: root/testing/brotli/optimize-mips-s390x.patch
Commit message (Collapse)AuthorAgeFilesLines
* testing/brotli: optimize on mips*, s390xalpine-mips-patches2018-12-181-0/+115
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.