forked from riscv/riscv-opcodes
-
Notifications
You must be signed in to change notification settings - Fork 7
/
opcodes-xpulpbitopsmall_CUSTOM
27 lines (23 loc) · 1.22 KB
/
opcodes-xpulpbitopsmall_CUSTOM
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# Xpulp extension subset: bit manipulation operations
# format of a line in this file:
# <instruction name> <args> <opcode>
#
# <opcode> 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)
#
# <args> 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
# INFO: overlaps with opcodes-rvv, opcodes-rv32b_CUSTOM
# INFO: this is a subset of opcodes-xpulpbitop_CUSTOM
p.cnt rd rs1 rs2 31..25=8 14..12=3 6..2=0x0C 1..0=3
p.clb rd rs1 31..25=8 24..20=0 14..12=2 6..2=0x0C 1..0=3
p.fl1 rd rs1 31..25=8 24..20=0 14..12=1 6..2=0x0C 1..0=3
p.ff1 rd rs1 31..25=8 24..20=0 14..12=0 6..2=0x0C 1..0=3
p.ror rd rs1 31..25=4 24..20=0 14..12=5 6..2=0x0C 1..0=3
p.exths rd rs1 31..25=8 24..20=0 14..12=4 6..2=0x0C 1..0=3
p.exthz rd rs1 31..25=8 24..20=0 14..12=5 6..2=0x0C 1..0=3
p.extbs rd rs1 31..25=8 24..20=0 14..12=6 6..2=0x0C 1..0=3
p.extbz rd rs1 31..25=8 24..20=0 14..12=7 6..2=0x0C 1..0=3