diff --git a/opcodes-shuffling b/opcodes-shuffling new file mode 100644 index 00000000..8b7b996c --- /dev/null +++ b/opcodes-shuffling @@ -0,0 +1,20 @@ +# Floating-point shuffling instructions + +# format of a line in this file: +# +# +# is given by specifying one or more range/value pairs: +# hi..lo=value or bit=value or arg=value (e.g. 6..2=0x45 10=1 rd=0) +# +# is one of rd, rs1, rs2, rs3, aqrl, fm, pred, succ, rm, +# funct3, imm20, jimm20, imm12, imm12hi, bimm12hi, imm12lo, +# bimm12lo, zimm, shamt, shamtw, imm5, imm6, vd, vs3, vs1, vs2, +# vm, wd, amoop, nf, simm5, zimm11, prs3, L, uimms, Luimm5, +# vseglen, stagger_max, stagger_mask + +vfshuffle.s rd rs1 rs2 31..30=2 29..25=0x1F 14=0 13..12=0 6..2=0x0C 1..0=3 +vfshuffle.h rd rs1 rs2 31..30=2 29..25=0x1F 14=0 13..12=2 6..2=0x0C 1..0=3 +vfshuffle.b rd rs1 rs2 31..30=2 29..25=0x1F 14=0 13..12=3 6..2=0x0C 1..0=3 +vfshuffle2.s rd rs1 rs2 31..30=2 29..25=0x1F 14=1 13..12=0 6..2=0x0C 1..0=3 +vfshuffle2.h rd rs1 rs2 31..30=2 29..25=0x1F 14=1 13..12=2 6..2=0x0C 1..0=3 +vfshuffle2.b rd rs1 rs2 31..30=2 29..25=0x1F 14=1 13..12=3 6..2=0x0C 1..0=3