3 add gcc builtins for alpha instructions
8 custom expand byteswap into nifty
9 extract/insert/mask byte/word/longword/quadword low/high
14 see if any of the extract/insert/mask operations can be added
18 match more interesting things for cmovlbc cmovlbs (move if low bit clear/set)
24 remq(i,j): i - (j * divq(i,j)) if j != 0
25 remqu(i,j): i - (j * divqu(i,j)) if j != 0
26 reml(i,j): i - (j * divl(i,j)) if j != 0
27 remlu(i,j): i - (j * divlu(i,j)) if j != 0
31 add crazy vector instructions (MVI):
33 (MIN|MAX)(U|S)(B8|W4) min and max, signed and unsigned, byte and word
34 PKWB, UNPKBW pack/unpack word to byte
35 PKLB UNPKBL pack/unpack long to byte
36 PERR pixel error (sum across bytes of bytewise abs(i8v8 a - i8v8 b))
38 cmpbytes bytewise cmpeq of i8v8 a and i8v8 b (not part of MVI extensions)
40 this has some good examples for other operations that can be synthesised well
41 from these rather meager vector ops (such as saturating add).
42 http://www.alphalinux.org/docs/MVI-full.html