add compliancy level column
[libreriscv.git] / openpower / sv / rfc / ls012 / optable.csv
1 op, rfc, priority, cost, SVP64, group, PO1, page, regs, Level
2 # LD/ST-Postincrement
3 lbzup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD
4 lbzupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD
5 lhzup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD
6 lhzupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD
7 lhaup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD
8 lhaupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD
9 lwzup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD
10 lwzupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD
11 lwaupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD
12 ldup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD
13 ldupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD
14 stbup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD
15 stbupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD
16 sthup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD
17 sthupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD
18 stwup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD
19 stwupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD
20 stdup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD
21 stdupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD
22 # FP LD/ST-Postincrement
23 lfdu, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD
24 lfsup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedload, 1R2W, TBD
25 lfdupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD
26 lsdupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedload, 2R2W, TBD
27 stfdup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD
28 stfsup, ls011, high, PO, yes, EXT2xx, no, isa/pifixedstore, 2R1W, TBD
29 stfdupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD
30 stfsupx, ls011, high, 10, yes, EXT2xx, no, isa/pifixedstore, 3R1W, TBD
31 # LD/ST-Shifted-Postincrement
32 lbzuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD
33 lhzuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD
34 lhauspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD
35 lwzuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD
36 lwauspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD
37 lduspx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD
38 stbuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD
39 sthuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD
40 stwuspx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD
41 stduspx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD
42 # FP LD/ST-Shifted-Postincrement
43 lfdupsx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD
44 lsdupsx, ls011, med, 9, yes, EXT2xx, no, ls011, 2R2W, TBD
45 stfdupsx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD
46 stfsupsx, ls011, med, 9, yes, EXT2xx, no, ls011, 3R1W, TBD
47 # LD/ST-Index-Shifted (w/Update)
48 lbzsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
49 lbzusx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD
50 lhzsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
51 lhzusx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD
52 lhasx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
53 lhausx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD
54 lwzsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
55 lwzusx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD
56 lwasx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
57 lwausx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD
58 ldsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
59 ldusx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R2W, TBD
60 lhbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
61 lwbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
62 ldbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
63 stbsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD
64 stbusx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD
65 sthsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD
66 sthusx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD
67 stwsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD
68 stwusx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD
69 stdsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD
70 stdusx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD
71 sthbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD
72 stwbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD
73 stdbrsx, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD
74 # FP LD/ST-Index-Shifted (w/Update)
75 lfsxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
76 lfsuxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
77 lfdxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
78 lfduxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
79 lfiwaxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
80 lfiwzxs, ls004, high, 9, yes, EXT0xx, no, ls004, 2R1W, TBD
81 stfsxs, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD
82 stfsuxs, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD
83 stfdxs, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD
84 stfduxs, ls004, high, 9, yes, EXT0xx, no, ls004, 3R1W, TBD
85 stfiwxs, ls004, high, 9, yes, EXT0xx, no, ls004, 3R, TBD
86 # Bitmanip LUT2/3 operations. high cost high reward
87 grevlut, TBD, high, 3, yes, TBD, no, sv/bitmanip, 2R1W, TBD
88 grevluti, TBD, high, 3, yes, TBD, yes, sv/bitmanip, 1R1W, TBD
89 ternlogi, ls007, high, 2, yes, TBD, yes, sv/bitmanip, 3R1W1w, TBD
90 crternlogi, ls007, high, 5, yes, TBD, yes, sv/bitmanip, 3r1w, TBD
91 binlut, ls007, high, 6, yes, TBD, no, sv/bitmanip, 3R1W, TBD
92 crbinlut, ls007, high, 5, yes, TBD, no, sv/bitmanip, 3r1w, TBD
93 # Float-Load-Immediate (always saves one LD L1/2/3 D-Cache op)
94 fmvis, ls002, high, 5, yes, TBD, no, sv/bitmanip, 1W, TBD
95 fishmv, ls002, high, 5, yes, TBD, no, sv/bitmanip, 1R1W, TBD
96 # Shift-and-Add (mitigates LD-ST-Shift; Cryptography e.g. twofish)
97 shadd, ls003, med, 7, yes, TBD, no, sv/bitmanip, 2R1W1w, TBD
98 shadduw, ls003, med, 7, yes, TBD, no, sv/bitmanip, 2R1W1w, TBD
99 shaddw, ls003, med, 7, yes, TBD, no, sv/bitmanip, 2R1W1w, TBD
100 # Audio-Video
101 absdu, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 2R1W1w, TBD
102 avgadd, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 2R1W1w, TBD
103 minmax, ls013, high, 10, yes, TBD, no, sv/av_opcodes, 2R1W1w, TBD
104 absaccs, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 3R1W1w, TBD
105 absaccu, TBD, TBD, 10, yes, TBD, no, sv/av_opcodes, 3R1W1w, TBD
106 # BMI group
107 bmask, TBD, high, 5, yes, TBD, yes, sv/vector_ops, 2R1W1w, TBD
108 cprop, TBD, high, 5, yes, TBD, yes, sv/vector_ops, 2R1W1w, TBD
109 # SVP64 Management.
110 setvl, ls008, high, 5, no, EXT0xx, yes, sv/setvl, 3R2W1w, TBD
111 svstep, ls008, high, 5, no, EXT0xx, yes, sv/svstep, 1R2W1w, TBD
112 svremap, ls009, high, 5, no, EXT0xx, yes, sv/remap, 1R1W, TBD
113 svshape, ls009, high, 5, no, EXT0xx, yes, sv/remap, 5R5W, TBD
114 svshape2, ls009, high, 5, no, EXT0xx, yes, sv/remap, 5R5W, TBD
115 svindex, ls009, high, 5, no, EXT0xx, yes, sv/remap, 5R5W, TBD
116 # GPU swizzle
117 mv.swizzle, TBD, TBD, 4, yes, TBD, yes, sv/mv.swizzle, 2R2W, TBD
118 fmv.swizzle, TBD, TBD, 4, yes, TBD, yes, sv/mv.swizzle, 2R2W, TBD
119 # CR weirds
120 crrweird, TBD, high, 8, yes, TBD, no, sv/cr_int_predication, 1r1W1w, TBD
121 mfcrweird, TBD, high, 8, yes, TBD, no, sv/cr_int_predication, 1r1W1w, TBD
122 mtcrrweird, TBD, high, 9, yes, TBD, no, sv/cr_int_predication, 1R1r1w, TBD
123 mtcrweird, TBD, high, 9, yes, TBD, no, sv/cr_int_predication, 1R1r1w, TBD
124 crweirder, TBD, high, 9, yes, TBD, no, sv/cr_int_predication, 2r1w, TBD
125 mcrfm, TBD, high, 9, yes, EXT0xx, no, sv/cr_int_predication, 2r1w, TBD
126 # fclass (Scalar variant of xvtstdcsp)
127 fptstp(s), TBD, high, 10, yes, EXT0xx, no, sv/fclass, 1R1w, TBD
128 # INT<->FP mv
129 fmvfg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, TBD
130 fcvtfg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, TBD
131 fcvttg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, TBD
132 fcvtstg(s), ls006, high, 10, yes, EXT0xx, no, sv/int_fp_mv, 1R1W1w, TBD
133 # Big-Integer Chained 3-in 2-out (64-bit Carry)
134 dsld, ls003, high, 5, yes, EXT0xx, no, sv/biginteger, 3R2W1w, TBD
135 dsrd, ls003, high, 5, yes, EXT0xx, no, sv/biginteger, 3R2W1w, TBD
136 maddedu, ls003, high, 6, yes, EXT0xx, no, sv/biginteger, 3R2W, TBD
137 maddedus, ls003, high, 6, yes, EXT0xx, no, sv/biginteger, 3R2W, TBD
138 divmod2du, ls003, high, 6, yes, EXT0xx, no, sv/biginteger, 3R2W1w, TBD
139 # FP DCT/FFT Butterfly (2/3-in 2-out)
140 ffadd(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, TBD
141 ffsub(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, TBD
142 ffmul(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, TBD
143 ffdiv(s), TBD, med, 10, yes, EXT2xx, no, isa/svfparith, 2R1W1w, TBD
144 fdmadd(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith, 3R2W1w, TBD
145 ffmadd(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith, 3R2W1w, TBD
146 ffmsub(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith, 3R2W1w, TBD
147 ffnmadd(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith, 3R2W1w, TBD
148 ffnmsub(s), TBD, med, 5, yes, EXT2xx, no, isa/svfparith, 3R2W1w, TBD
149 # Trigonometric (1-arg)
150 fsin(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, TBD
151 fcos(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, TBD
152 ftan(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, TBD
153 fasin(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
154 facos(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
155 fatan(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
156 fsinpi(s), TBD, high, 10, yes, TBD, no, transcendentals, 1R1W1w, TBD
157 fcospi(s), TBD, high, 10, yes, TBD, no, transcendentals, 1R1W1w, TBD
158 ftanpi(s), TBD, high, 10, yes, TBD, no, transcendentals, 1R1W1w, TBD
159 fasinpi(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
160 facospi(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
161 fatanpi(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
162 fsinh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
163 fcosh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
164 ftanh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
165 fasinh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
166 facosh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
167 fatanh(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
168 # Transcendentals (1-arg)
169 frsqrt(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, TBD
170 fcbrt(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 1R1W1w, TBD
171 frecip(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, TBD
172 fexp2m1(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, TBD
173 flog2p1(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, TBD
174 fexp2(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, TBD
175 flog2(s), TBD, high, 10, yes, EXT0xx, no, transcendentals, 1R1W1w, TBD
176 fexpm1(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w, TBD
177 flogp1(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w, TBD
178 fexp(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w, TBD
179 flog(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w, TBD
180 fexp10m1(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w, TBD
181 flog10p1(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w, TBD
182 fexp10(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w, TBD
183 flog10(s), TBD, med, 10, yes, TBD, no, transcendentals, 1R1W1w, TBD
184 # Transcendentals (2-arg)
185 fatan2(s), TBD, med, 10, yes, EXT2xx, no, transcendentals, 2R1W1w, TBD
186 fatan2pi(s), TBD, med, 10, yes, EXT2xx, no, transcendentals, 2R1W1w, TBD
187 fpow(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 2R1W1w, TBD
188 fpown(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 2R1W1w, TBD
189 fpowr(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 2R1W1w, TBD
190 frootn(s), TBD, low, 10, yes, EXT2xx, no, transcendentals, 2R1W1w, TBD
191 fhypot(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
192 fminnum08(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
193 fmaxnum08(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
194 fmin19(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
195 fmax19(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
196 fminnum19(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
197 fmaxnum19(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
198 fminc(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
199 fmaxc(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
200 fminmagnum08(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
201 fmaxmagnum08(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
202 fminmag19(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
203 fmaxmag19(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
204 fminmagnum19(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
205 fmaxmagnum19(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
206 fminmagc(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
207 fmaxmagc(s), ls013, high, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
208 fmod(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD
209 fremainder(s), TBD, TBD, 10, yes, TBD, no, transcendentals, 2R1W1w, TBD