|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|