base/asm-common.h: Add some macros for shifting entire NEON vectors.
authorMark Wooding <mdw@distorted.org.uk>
Sat, 7 Sep 2019 13:20:19 +0000 (14:20 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Sun, 8 Sep 2019 10:38:19 +0000 (11:38 +0100)
commit1a03119625f23b0f6fa3f6a2044343d325f6c7f6
tree8e5c6d098c9eca7333b96fcf47f4a651963e699f
parent1f1fd8845afef39000b08a0f79ff14fae7690d41
base/asm-common.h: Add some macros for shifting entire NEON vectors.

The `vext' (A32 NEON) or `ext' (A64) instructions can be (ab)used for
shifting vectors left and right if you have a spare zero vector lying
around.  But using them is kind of confusing: left shifts, especially,
need a reversed shift quantity, and the shift is measured in bytes
rather than bits.

Add a couple of macros to make this less strange.
base/asm-common.h