blob: 8c750f802c282c67b722bf6cf90bf52df5d564ae (
plain)
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
# Vector loads & stores
vlb.v vm vd rs1 28..26=4 vmimm 24..20=0 14..12=0 6..0=0x07
vlh.v vm vd rs1 28..26=4 vmimm 24..20=0 14..12=5 6..0=0x07
vlw.v vm vd rs1 28..26=4 vmimm 24..20=0 14..12=6 6..0=0x07
vle.v vm vd rs1 28..26=4 vmimm 24..20=0 14..12=7 6..0=0x07
vlbu.v vm vd rs1 28..26=0 vmimm 24..20=0 14..12=0 6..0=0x07
vlhu.v vm vd rs1 28..26=0 vmimm 24..20=0 14..12=5 6..0=0x07
vlwu.v vm vd rs1 28..26=0 vmimm 24..20=0 14..12=6 6..0=0x07
vlsb.v vm vd rs1 28..26=6 vmimm rs2 14..12=0 6..0=0x07
vlsh.v vm vd rs1 28..26=6 vmimm rs2 14..12=5 6..0=0x07
vlsw.v vm vd rs1 28..26=6 vmimm rs2 14..12=6 6..0=0x07
vlse.v vm vd rs1 28..26=6 vmimm rs2 14..12=7 6..0=0x07
vlsbu.v vm vd rs1 28..26=2 vmimm rs2 14..12=0 6..0=0x07
vlshu.v vm vd rs1 28..26=2 vmimm rs2 14..12=5 6..0=0x07
vlswu.v vm vd rs1 28..26=2 vmimm rs2 14..12=6 6..0=0x07
vlxb.v vm vd rs1 28..26=7 vmimm vs2 14..12=0 6..0=0x07
vlxh.v vm vd rs1 28..26=7 vmimm vs2 14..12=5 6..0=0x07
vlxw.v vm vd rs1 28..26=7 vmimm vs2 14..12=6 6..0=0x07
vlxe.v vm vd rs1 28..26=7 vmimm vs2 14..12=7 6..0=0x07
vlxbu.v vm vd rs1 28..26=3 vmimm vs2 14..12=0 6..0=0x07
vlxhu.v vm vd rs1 28..26=3 vmimm vs2 14..12=5 6..0=0x07
vlxwu.v vm vd rs1 28..26=3 vmimm vs2 14..12=6 6..0=0x07
vsb.v vm vd rs1 28..26=0 vmimm 24..20=0 14..12=0 6..0=0x27
vsh.v vm vd rs1 28..26=0 vmimm 24..20=0 14..12=5 6..0=0x27
vsw.v vm vd rs1 28..26=0 vmimm 24..20=0 14..12=6 6..0=0x27
vse.v vm vd rs1 28..26=0 vmimm 24..20=0 14..12=7 6..0=0x27
vssb.v vm vd rs1 28..26=2 vmimm rs2 14..12=0 6..0=0x27
vssh.v vm vd rs1 28..26=2 vmimm rs2 14..12=5 6..0=0x27
vssw.v vm vd rs1 28..26=2 vmimm rs2 14..12=6 6..0=0x27
vsse.v vm vd rs1 28..26=2 vmimm rs2 14..12=7 6..0=0x27
vsxb.v vm vd rs1 28..26=3 vmimm vs2 14..12=0 6..0=0x27
vsxh.v vm vd rs1 28..26=3 vmimm vs2 14..12=5 6..0=0x27
vsxw.v vm vd rs1 28..26=3 vmimm vs2 14..12=6 6..0=0x27
vsxe.v vm vd rs1 28..26=3 vmimm vs2 14..12=7 6..0=0x27
vsuxb.v vm vd rs1 28..26=7 vmimm vs2 14..12=0 6..0=0x27
vsuxh.v vm vd rs1 28..26=7 vmimm vs2 14..12=5 6..0=0x27
vsuxw.v vm vd rs1 28..26=7 vmimm vs2 14..12=6 6..0=0x27
vsuxe.v vm vd rs1 28..26=7 vmimm vs2 14..12=7 6..0=0x27
# Vector AMOs
vamoadd.w vm vwd vd rs1 vs2 31..29=0 28..27=0 14..12=6 6..0=0x2F
vamoxor.w vm vwd vd rs1 vs2 31..29=1 28..27=0 14..12=6 6..0=0x2F
vamoor.w vm vwd vd rs1 vs2 31..29=2 28..27=0 14..12=6 6..0=0x2F
vamoand.w vm vwd vd rs1 vs2 31..29=3 28..27=0 14..12=6 6..0=0x2F
vamomin.w vm vwd vd rs1 vs2 31..29=4 28..27=0 14..12=6 6..0=0x2F
vamomax.w vm vwd vd rs1 vs2 31..29=5 28..27=0 14..12=6 6..0=0x2F
vamominu.w vm vwd vd rs1 vs2 31..29=6 28..27=0 14..12=6 6..0=0x2F
vamomaxu.w vm vwd vd rs1 vs2 31..29=7 28..27=0 14..12=6 6..0=0x2F
vamoswap.w vm vwd vd rs1 vs2 31..29=0 28..27=1 14..12=6 6..0=0x2F
vamoadd.d vm vwd vd rs1 vs2 31..29=0 28..27=0 14..12=7 6..0=0x2F
vamoxor.d vm vwd vd rs1 vs2 31..29=1 28..27=0 14..12=7 6..0=0x2F
vamoor.d vm vwd vd rs1 vs2 31..29=2 28..27=0 14..12=7 6..0=0x2F
vamoand.d vm vwd vd rs1 vs2 31..29=3 28..27=0 14..12=7 6..0=0x2F
vamomin.d vm vwd vd rs1 vs2 31..29=4 28..27=0 14..12=7 6..0=0x2F
vamomax.d vm vwd vd rs1 vs2 31..29=5 28..27=0 14..12=7 6..0=0x2F
vamominu.d vm vwd vd rs1 vs2 31..29=6 28..27=0 14..12=7 6..0=0x2F
vamomaxu.d vm vwd vd rs1 vs2 31..29=7 28..27=0 14..12=7 6..0=0x2F
vamoswap.d vm vwd vd rs1 vs2 31..29=0 28..27=1 14..12=7 6..0=0x2F
vamoadd.q vm vwd vd rs1 vs2 31..29=0 28..27=0 14..12=0 6..0=0x2F
vamoxor.q vm vwd vd rs1 vs2 31..29=1 28..27=0 14..12=0 6..0=0x2F
vamoor.q vm vwd vd rs1 vs2 31..29=2 28..27=0 14..12=0 6..0=0x2F
vamoand.q vm vwd vd rs1 vs2 31..29=3 28..27=0 14..12=0 6..0=0x2F
vamomin.q vm vwd vd rs1 vs2 31..29=4 28..27=0 14..12=0 6..0=0x2F
vamomax.q vm vwd vd rs1 vs2 31..29=5 28..27=0 14..12=0 6..0=0x2F
vamominu.q vm vwd vd rs1 vs2 31..29=6 28..27=0 14..12=0 6..0=0x2F
vamomaxu.q vm vwd vd rs1 vs2 31..29=7 28..27=0 14..12=0 6..0=0x2F
vamoswap.q vm vwd vd rs1 vs2 31..29=0 28..27=1 14..12=0 6..0=0x2F
# Vector arithmetic with OPI funct6 field
vadd.vv vm vd vs1 vs2 14..12=2 31..26=0x00 6..0=0x57
vadd.vs vm vd rs1 vs2 14..12=0 31..26=0x00 6..0=0x57
vadd.vi vm vd vimm vs2 14..12=1 31..26=0x00 6..0=0x57
vwadd.vv vm vd vs1 vs2 14..12=2 31..26=0x04 6..0=0x57
vwadd.vs vm vd rs1 vs2 14..12=0 31..26=0x04 6..0=0x57
vwadd.vi vm vd vimm vs2 14..12=1 31..26=0x04 6..0=0x57
vnsrl.vv vm vd vs1 vs2 14..12=2 31..26=0x18 6..0=0x57
vnsrl.vs vm vd rs1 vs2 14..12=0 31..26=0x18 6..0=0x57
vnsrl.vi vm vd vimm vs2 14..12=1 31..26=0x18 6..0=0x57
# Vector arithmetic with OPM funct6 field
vmul.vv vm vd vs1 vs2 14..12=6 31..26=0x00 6..0=0x57
vmul.vs vm vd rs1 vs2 14..12=4 31..26=0x00 6..0=0x57
vmadd.vv vm vd vs1 vs2 14..12=6 31..26=0x09 6..0=0x57
vmadd.vs vm vd rs1 vs2 14..12=4 31..26=0x09 6..0=0x57
# Vector arithmetic with OPF funct6 field
vfadd.vv vm vd vs1 vs2 14..12=3 31..26=0x00 6..0=0x57
vfadd.vs vm vd rs1 vs2 14..12=7 31..26=0x00 6..0=0x57
# Vector config
vsetvli rd rs1 vcimmlo 14..12=5 25=1 vcimmhi 6..0=0x57
vsetvl rd rs1 rs2 14..12=5 25=0 31..26=0x00 6..0=0x57
|