1 // Code generated by 'simdgen -o godefs -goroot $GOROOT -arch arm64 -arm64Path $ARM64_ISA_PATH go_arm64.yaml types.yaml categories.yaml'; DO NOT EDIT.
2
3 (VFCVTL4S (VDUPDextr [1] x)) => (VFCVTL2_4S x)
4 (VMOVDins0 [1] dst (VDUPDextr [0] (VFCVTN2D y))) => (VFCVTN2_2D dst y)
5 (VMOVDins0 [1] dst (VDUPDextr [0] (VSHRN2D [c] y))) => (VSHRN2_2D dst [c] y)
6 (VMOVDins0 [1] dst (VDUPDextr [0] (VSHRN4S [c] y))) => (VSHRN2_4S dst [c] y)
7 (VMOVDins0 [1] dst (VDUPDextr [0] (VSHRN8H [c] y))) => (VSHRN2_8H dst [c] y)
8 (VMOVDins0 [1] dst (VDUPDextr [0] (VSQXTN2D y))) => (VSQXTN2_2D dst y)
9 (VMOVDins0 [1] dst (VDUPDextr [0] (VSQXTN4S y))) => (VSQXTN2_4S dst y)
10 (VMOVDins0 [1] dst (VDUPDextr [0] (VSQXTN8H y))) => (VSQXTN2_8H dst y)
11 (VMOVDins0 [1] dst (VDUPDextr [0] (VSQXTUN2D y))) => (VSQXTUN2_2D dst y)
12 (VMOVDins0 [1] dst (VDUPDextr [0] (VSQXTUN4S y))) => (VSQXTUN2_4S dst y)
13 (VMOVDins0 [1] dst (VDUPDextr [0] (VSQXTUN8H y))) => (VSQXTUN2_8H dst y)
14 (VMOVDins0 [1] dst (VDUPDextr [0] (VUQXTN2D y))) => (VUQXTN2_2D dst y)
15 (VMOVDins0 [1] dst (VDUPDextr [0] (VUQXTN4S y))) => (VUQXTN2_4S dst y)
16 (VMOVDins0 [1] dst (VDUPDextr [0] (VUQXTN8H y))) => (VUQXTN2_8H dst y)
17 (VMOVDins0 [1] dst (VDUPDextr [0] (VXTN2D y))) => (VXTN2_2D dst y)
18 (VMOVDins0 [1] dst (VDUPDextr [0] (VXTN4S y))) => (VXTN2_4S dst y)
19 (VMOVDins0 [1] dst (VDUPDextr [0] (VXTN8H y))) => (VXTN2_8H dst y)
20 (VSMULL16B (VDUPDextr [1] x) (VDUPDextr [1] y)) => (VSMULL2_16B x y)
21 (VSMULL4S (VDUPDextr [1] x) (VDUPDextr [1] y)) => (VSMULL2_4S x y)
22 (VSMULL8H (VDUPDextr [1] x) (VDUPDextr [1] y)) => (VSMULL2_8H x y)
23 (VSSHLL16B [a] (VDUPDextr [1] x)) => (VSSHLL2_16B [a] x)
24 (VSSHLL4S [a] (VDUPDextr [1] x)) => (VSSHLL2_4S [a] x)
25 (VSSHLL8H [a] (VDUPDextr [1] x)) => (VSSHLL2_8H [a] x)
26 (VSXTL16B (VDUPDextr [1] x)) => (VSXTL2_16B x)
27 (VSXTL4S (VDUPDextr [1] x)) => (VSXTL2_4S x)
28 (VSXTL8H (VDUPDextr [1] x)) => (VSXTL2_8H x)
29 (VUMULL16B (VDUPDextr [1] x) (VDUPDextr [1] y)) => (VUMULL2_16B x y)
30 (VUMULL4S (VDUPDextr [1] x) (VDUPDextr [1] y)) => (VUMULL2_4S x y)
31 (VUMULL8H (VDUPDextr [1] x) (VDUPDextr [1] y)) => (VUMULL2_8H x y)
32 (VUSHLL16B [a] (VDUPDextr [1] x)) => (VUSHLL2_16B [a] x)
33 (VUSHLL4S [a] (VDUPDextr [1] x)) => (VUSHLL2_4S [a] x)
34 (VUSHLL8H [a] (VDUPDextr [1] x)) => (VUSHLL2_8H [a] x)
35 (VUXTL16B (VDUPDextr [1] x)) => (VUXTL2_16B x)
36 (VUXTL4S (VDUPDextr [1] x)) => (VUXTL2_4S x)
37 (VUXTL8H (VDUPDextr [1] x)) => (VUXTL2_8H x)
38 (AbsFloat32x4 ...) => (VFABS4S ...) // pureVreg
39 (AbsFloat64x2 ...) => (VFABS2D ...) // pureVreg
40 (AbsInt8x16 ...) => (VABS16B ...) // pureVreg
41 (AbsInt16x8 ...) => (VABS8H ...) // pureVreg
42 (AbsInt32x4 ...) => (VABS4S ...) // pureVreg
43 (AbsInt64x2 ...) => (VABS2D ...) // pureVreg
44 (AddFloat32x4 ...) => (VFADD4S ...) // pureVreg
45 (AddFloat64x2 ...) => (VFADD2D ...) // pureVreg
46 (AddInt8x16 ...) => (VADD16B ...) // pureVreg
47 (AddInt16x8 ...) => (VADD8H ...) // pureVreg
48 (AddInt32x4 ...) => (VADD4S ...) // pureVreg
49 (AddInt64x2 ...) => (VADD2D ...) // pureVreg
50 (AddUint8x16 ...) => (VADD16B ...) // pureVreg
51 (AddUint16x8 ...) => (VADD8H ...) // pureVreg
52 (AddUint32x4 ...) => (VADD4S ...) // pureVreg
53 (AddUint64x2 ...) => (VADD2D ...) // pureVreg
54 (AddSaturatedInt8x16 ...) => (VSQADD16B ...) // pureVreg
55 (AddSaturatedInt16x8 ...) => (VSQADD8H ...) // pureVreg
56 (AddSaturatedInt32x4 ...) => (VSQADD4S ...) // pureVreg
57 (AddSaturatedInt64x2 ...) => (VSQADD2D ...) // pureVreg
58 (AddSaturatedUint8x16 ...) => (VUQADD16B ...) // pureVreg
59 (AddSaturatedUint16x8 ...) => (VUQADD8H ...) // pureVreg
60 (AddSaturatedUint32x4 ...) => (VUQADD4S ...) // pureVreg
61 (AddSaturatedUint64x2 ...) => (VUQADD2D ...) // pureVreg
62 (AndInt8x16 ...) => (VAND16B ...) // pureVreg
63 (AndInt16x8 ...) => (VAND16B ...) // pureVreg
64 (AndInt32x4 ...) => (VAND16B ...) // pureVreg
65 (AndInt64x2 ...) => (VAND16B ...) // pureVreg
66 (AndUint8x16 ...) => (VAND16B ...) // pureVreg
67 (AndUint16x8 ...) => (VAND16B ...) // pureVreg
68 (AndUint32x4 ...) => (VAND16B ...) // pureVreg
69 (AndUint64x2 ...) => (VAND16B ...) // pureVreg
70 (AndNotInt8x16 ...) => (VBIC16B ...) // pureVreg
71 (AndNotInt16x8 ...) => (VBIC16B ...) // pureVreg
72 (AndNotInt32x4 ...) => (VBIC16B ...) // pureVreg
73 (AndNotInt64x2 ...) => (VBIC16B ...) // pureVreg
74 (AndNotUint8x16 ...) => (VBIC16B ...) // pureVreg
75 (AndNotUint16x8 ...) => (VBIC16B ...) // pureVreg
76 (AndNotUint32x4 ...) => (VBIC16B ...) // pureVreg
77 (AndNotUint64x2 ...) => (VBIC16B ...) // pureVreg
78 (AverageInt8x16 ...) => (VSRHADD16B ...) // pureVreg
79 (AverageInt16x8 ...) => (VSRHADD8H ...) // pureVreg
80 (AverageInt32x4 ...) => (VSRHADD4S ...) // pureVreg
81 (AverageUint8x16 ...) => (VURHADD16B ...) // pureVreg
82 (AverageUint16x8 ...) => (VURHADD8H ...) // pureVreg
83 (AverageUint32x4 ...) => (VURHADD4S ...) // pureVreg
84 (CeilFloat32x4 ...) => (VFRINTP4S ...) // pureVreg
85 (CeilFloat64x2 ...) => (VFRINTP2D ...) // pureVreg
86 (ConcatAddPairsFloat32x4 ...) => (VFADDP4S ...) // pureVreg
87 (ConcatAddPairsFloat64x2 ...) => (VFADDP2D ...) // pureVreg
88 (ConcatAddPairsInt16x8 ...) => (VADDP8H ...) // pureVreg
89 (ConcatAddPairsInt32x4 ...) => (VADDP4S ...) // pureVreg
90 (ConcatAddPairsInt64x2 ...) => (VADDP2D ...) // pureVreg
91 (ConcatAddPairsUint16x8 ...) => (VADDP8H ...) // pureVreg
92 (ConcatAddPairsUint32x4 ...) => (VADDP4S ...) // pureVreg
93 (ConcatAddPairsUint64x2 ...) => (VADDP2D ...) // pureVreg
94 (ConcatShiftBytesRightUint8x16 ...) => (VEXT16B ...) // pureVreg
95 (ConvertLo2ToFloat64Float32x4 ...) => (VFCVTL4S ...) // pureVreg
96 (ConvertToFloat32Float64x2 ...) => (VFCVTN2D ...) // pureVreg
97 (ConvertToFloat32Int32x4 ...) => (VSCVTF4S ...) // pureVreg
98 (ConvertToFloat32Uint32x4 ...) => (VUCVTF4S ...) // pureVreg
99 (ConvertToFloat64Int64x2 ...) => (VSCVTF2D ...) // pureVreg
100 (ConvertToFloat64Uint64x2 ...) => (VUCVTF2D ...) // pureVreg
101 (ConvertToInt32Float32x4 ...) => (VFCVTZS4S ...) // pureVreg
102 (ConvertToInt64Float64x2 ...) => (VFCVTZS2D ...) // pureVreg
103 (ConvertToUint32Float32x4 ...) => (VFCVTZU4S ...) // pureVreg
104 (ConvertToUint64Float64x2 ...) => (VFCVTZU2D ...) // pureVreg
105 (DeinterleaveEvenInt8x16 ...) => (VUZP116B ...) // pureVreg
106 (DeinterleaveEvenInt16x8 ...) => (VUZP18H ...) // pureVreg
107 (DeinterleaveEvenInt32x4 ...) => (VUZP14S ...) // pureVreg
108 (DeinterleaveEvenInt64x2 ...) => (VUZP12D ...) // pureVreg
109 (DeinterleaveEvenUint8x16 ...) => (VUZP116B ...) // pureVreg
110 (DeinterleaveEvenUint16x8 ...) => (VUZP18H ...) // pureVreg
111 (DeinterleaveEvenUint32x4 ...) => (VUZP14S ...) // pureVreg
112 (DeinterleaveEvenUint64x2 ...) => (VUZP12D ...) // pureVreg
113 (DeinterleaveOddInt8x16 ...) => (VUZP216B ...) // pureVreg
114 (DeinterleaveOddInt16x8 ...) => (VUZP28H ...) // pureVreg
115 (DeinterleaveOddInt32x4 ...) => (VUZP24S ...) // pureVreg
116 (DeinterleaveOddInt64x2 ...) => (VUZP22D ...) // pureVreg
117 (DeinterleaveOddUint8x16 ...) => (VUZP216B ...) // pureVreg
118 (DeinterleaveOddUint16x8 ...) => (VUZP28H ...) // pureVreg
119 (DeinterleaveOddUint32x4 ...) => (VUZP24S ...) // pureVreg
120 (DeinterleaveOddUint64x2 ...) => (VUZP22D ...) // pureVreg
121 (DivFloat32x4 ...) => (VFDIV4S ...) // pureVreg
122 (DivFloat64x2 ...) => (VFDIV2D ...) // pureVreg
123 (EqualFloat32x4 ...) => (VFCMEQ4S ...) // pureVreg
124 (EqualFloat64x2 ...) => (VFCMEQ2D ...) // pureVreg
125 (EqualInt8x16 ...) => (VCMEQ16B ...) // pureVreg
126 (EqualInt16x8 ...) => (VCMEQ8H ...) // pureVreg
127 (EqualInt32x4 ...) => (VCMEQ4S ...) // pureVreg
128 (EqualInt64x2 ...) => (VCMEQ2D ...) // pureVreg
129 (EqualUint8x16 ...) => (VCMEQ16B ...) // pureVreg
130 (EqualUint16x8 ...) => (VCMEQ8H ...) // pureVreg
131 (EqualUint32x4 ...) => (VCMEQ4S ...) // pureVreg
132 (EqualUint64x2 ...) => (VCMEQ2D ...) // pureVreg
133 (ExtendLo2ToInt64Int32x4 ...) => (VSXTL4S ...) // pureVreg
134 (ExtendLo2ToUint64Uint32x4 ...) => (VUXTL4S ...) // pureVreg
135 (ExtendLo4ToInt32Int16x8 ...) => (VSXTL8H ...) // pureVreg
136 (ExtendLo4ToUint32Uint16x8 ...) => (VUXTL8H ...) // pureVreg
137 (ExtendLo8ToInt16Int8x16 ...) => (VSXTL16B ...) // pureVreg
138 (ExtendLo8ToUint16Uint8x16 ...) => (VUXTL16B ...) // pureVreg
139 (FloorFloat32x4 ...) => (VFRINTM4S ...) // pureVreg
140 (FloorFloat64x2 ...) => (VFRINTM2D ...) // pureVreg
141 (GetElemFloat32x4 ...) => (VDUPSextr ...) // pureVreg
142 (GetElemFloat64x2 ...) => (VDUPDextr ...) // pureVreg
143 (GetElemInt8x16 ...) => (VMOVBextr ...) // pureVreg
144 (GetElemInt16x8 ...) => (VMOVHextr ...) // pureVreg
145 (GetElemInt32x4 ...) => (VMOVSextr ...) // pureVreg
146 (GetElemInt64x2 ...) => (VMOVDextr ...) // pureVreg
147 (GetElemUint8x16 ...) => (VMOVBextr ...) // pureVreg
148 (GetElemUint16x8 ...) => (VMOVHextr ...) // pureVreg
149 (GetElemUint32x4 ...) => (VMOVSextr ...) // pureVreg
150 (GetElemUint64x2 ...) => (VMOVDextr ...) // pureVreg
151 (GreaterFloat32x4 ...) => (VFCMGT4S ...) // pureVreg
152 (GreaterFloat64x2 ...) => (VFCMGT2D ...) // pureVreg
153 (GreaterInt8x16 ...) => (VCMGT16B ...) // pureVreg
154 (GreaterInt16x8 ...) => (VCMGT8H ...) // pureVreg
155 (GreaterInt32x4 ...) => (VCMGT4S ...) // pureVreg
156 (GreaterInt64x2 ...) => (VCMGT2D ...) // pureVreg
157 (GreaterUint8x16 ...) => (VCMHI16B ...) // pureVreg
158 (GreaterUint16x8 ...) => (VCMHI8H ...) // pureVreg
159 (GreaterUint32x4 ...) => (VCMHI4S ...) // pureVreg
160 (GreaterUint64x2 ...) => (VCMHI2D ...) // pureVreg
161 (GreaterEqualFloat32x4 ...) => (VFCMGE4S ...) // pureVreg
162 (GreaterEqualFloat64x2 ...) => (VFCMGE2D ...) // pureVreg
163 (GreaterEqualInt8x16 ...) => (VCMGE16B ...) // pureVreg
164 (GreaterEqualInt16x8 ...) => (VCMGE8H ...) // pureVreg
165 (GreaterEqualInt32x4 ...) => (VCMGE4S ...) // pureVreg
166 (GreaterEqualInt64x2 ...) => (VCMGE2D ...) // pureVreg
167 (GreaterEqualUint8x16 ...) => (VCMHS16B ...) // pureVreg
168 (GreaterEqualUint16x8 ...) => (VCMHS8H ...) // pureVreg
169 (GreaterEqualUint32x4 ...) => (VCMHS4S ...) // pureVreg
170 (GreaterEqualUint64x2 ...) => (VCMHS2D ...) // pureVreg
171 (InterleaveHiInt8x16 ...) => (VZIP216B ...) // pureVreg
172 (InterleaveHiInt16x8 ...) => (VZIP28H ...) // pureVreg
173 (InterleaveHiInt32x4 ...) => (VZIP24S ...) // pureVreg
174 (InterleaveHiInt64x2 ...) => (VZIP22D ...) // pureVreg
175 (InterleaveHiUint8x16 ...) => (VZIP216B ...) // pureVreg
176 (InterleaveHiUint16x8 ...) => (VZIP28H ...) // pureVreg
177 (InterleaveHiUint32x4 ...) => (VZIP24S ...) // pureVreg
178 (InterleaveHiUint64x2 ...) => (VZIP22D ...) // pureVreg
179 (InterleaveLoInt8x16 ...) => (VZIP116B ...) // pureVreg
180 (InterleaveLoInt16x8 ...) => (VZIP18H ...) // pureVreg
181 (InterleaveLoInt32x4 ...) => (VZIP14S ...) // pureVreg
182 (InterleaveLoInt64x2 ...) => (VZIP12D ...) // pureVreg
183 (InterleaveLoUint8x16 ...) => (VZIP116B ...) // pureVreg
184 (InterleaveLoUint16x8 ...) => (VZIP18H ...) // pureVreg
185 (InterleaveLoUint32x4 ...) => (VZIP14S ...) // pureVreg
186 (InterleaveLoUint64x2 ...) => (VZIP12D ...) // pureVreg
187 (LeadingSignBitsInt8x16 ...) => (VCLS16B ...) // pureVreg
188 (LeadingSignBitsInt16x8 ...) => (VCLS8H ...) // pureVreg
189 (LeadingSignBitsInt32x4 ...) => (VCLS4S ...) // pureVreg
190 (LeadingSignBitsUint8x16 ...) => (VCLS16B ...) // pureVreg
191 (LeadingSignBitsUint16x8 ...) => (VCLS8H ...) // pureVreg
192 (LeadingSignBitsUint32x4 ...) => (VCLS4S ...) // pureVreg
193 (LeadingZerosInt8x16 ...) => (VCLZ16B ...) // pureVreg
194 (LeadingZerosInt16x8 ...) => (VCLZ8H ...) // pureVreg
195 (LeadingZerosInt32x4 ...) => (VCLZ4S ...) // pureVreg
196 (LeadingZerosUint8x16 ...) => (VCLZ16B ...) // pureVreg
197 (LeadingZerosUint16x8 ...) => (VCLZ8H ...) // pureVreg
198 (LeadingZerosUint32x4 ...) => (VCLZ4S ...) // pureVreg
199 (LookupOrKeepInt8x16 ...) => (VTBX16B ...) // pureVreg
200 (LookupOrKeepUint8x16 ...) => (VTBX16B ...) // pureVreg
201 (LookupOrZeroInt8x16 ...) => (VTBL16B ...) // pureVreg
202 (LookupOrZeroUint8x16 ...) => (VTBL16B ...) // pureVreg
203 (MaxFloat32x4 ...) => (VFMAX4S ...) // pureVreg
204 (MaxFloat64x2 ...) => (VFMAX2D ...) // pureVreg
205 (MaxInt8x16 ...) => (VSMAX16B ...) // pureVreg
206 (MaxInt16x8 ...) => (VSMAX8H ...) // pureVreg
207 (MaxInt32x4 ...) => (VSMAX4S ...) // pureVreg
208 (MaxUint8x16 ...) => (VUMAX16B ...) // pureVreg
209 (MaxUint16x8 ...) => (VUMAX8H ...) // pureVreg
210 (MaxUint32x4 ...) => (VUMAX4S ...) // pureVreg
211 (MinFloat32x4 ...) => (VFMIN4S ...) // pureVreg
212 (MinFloat64x2 ...) => (VFMIN2D ...) // pureVreg
213 (MinInt8x16 ...) => (VSMIN16B ...) // pureVreg
214 (MinInt16x8 ...) => (VSMIN8H ...) // pureVreg
215 (MinInt32x4 ...) => (VSMIN4S ...) // pureVreg
216 (MinUint8x16 ...) => (VUMIN16B ...) // pureVreg
217 (MinUint16x8 ...) => (VUMIN8H ...) // pureVreg
218 (MinUint32x4 ...) => (VUMIN4S ...) // pureVreg
219 (MulFloat32x4 ...) => (VFMUL4S ...) // pureVreg
220 (MulFloat64x2 ...) => (VFMUL2D ...) // pureVreg
221 (MulInt8x16 ...) => (VMUL16B ...) // pureVreg
222 (MulInt16x8 ...) => (VMUL8H ...) // pureVreg
223 (MulInt32x4 ...) => (VMUL4S ...) // pureVreg
224 (MulUint8x16 ...) => (VMUL16B ...) // pureVreg
225 (MulUint16x8 ...) => (VMUL8H ...) // pureVreg
226 (MulUint32x4 ...) => (VMUL4S ...) // pureVreg
227 (MulAddFloat32x4 x y z) => (VFMLA4S z x y) // earlyMatchRule
228 (MulAddFloat64x2 x y z) => (VFMLA2D z x y) // earlyMatchRule
229 (MulAddInt8x16 x y z) => (VMLA16B z x y) // earlyMatchRule
230 (MulAddInt16x8 x y z) => (VMLA8H z x y) // earlyMatchRule
231 (MulAddInt32x4 x y z) => (VMLA4S z x y) // earlyMatchRule
232 (MulAddUint8x16 x y z) => (VMLA16B z x y) // earlyMatchRule
233 (MulAddUint16x8 x y z) => (VMLA8H z x y) // earlyMatchRule
234 (MulAddUint32x4 x y z) => (VMLA4S z x y) // earlyMatchRule
235 (MulLoLongInt8x16 ...) => (VSMULL16B ...) // pureVreg
236 (MulLoLongInt16x8 ...) => (VSMULL8H ...) // pureVreg
237 (MulLoLongInt32x4 ...) => (VSMULL4S ...) // pureVreg
238 (MulLoLongUint8x16 ...) => (VUMULL16B ...) // pureVreg
239 (MulLoLongUint16x8 ...) => (VUMULL8H ...) // pureVreg
240 (MulLoLongUint32x4 ...) => (VUMULL4S ...) // pureVreg
241 (NegFloat32x4 ...) => (VFNEG4S ...) // pureVreg
242 (NegFloat64x2 ...) => (VFNEG2D ...) // pureVreg
243 (NegInt8x16 ...) => (VNEG16B ...) // pureVreg
244 (NegInt16x8 ...) => (VNEG8H ...) // pureVreg
245 (NegInt32x4 ...) => (VNEG4S ...) // pureVreg
246 (NegInt64x2 ...) => (VNEG2D ...) // pureVreg
247 (NotInt8x16 ...) => (VNOT16B ...) // pureVreg
248 (NotInt16x8 ...) => (VNOT16B ...) // pureVreg
249 (NotInt32x4 ...) => (VNOT16B ...) // pureVreg
250 (NotInt64x2 ...) => (VNOT16B ...) // pureVreg
251 (NotUint8x16 ...) => (VNOT16B ...) // pureVreg
252 (NotUint16x8 ...) => (VNOT16B ...) // pureVreg
253 (NotUint32x4 ...) => (VNOT16B ...) // pureVreg
254 (NotUint64x2 ...) => (VNOT16B ...) // pureVreg
255 (OnesCountInt8x16 ...) => (VCNT16B ...) // pureVreg
256 (OnesCountUint8x16 ...) => (VCNT16B ...) // pureVreg
257 (OrInt8x16 ...) => (VORR16B ...) // pureVreg
258 (OrInt16x8 ...) => (VORR16B ...) // pureVreg
259 (OrInt32x4 ...) => (VORR16B ...) // pureVreg
260 (OrInt64x2 ...) => (VORR16B ...) // pureVreg
261 (OrUint8x16 ...) => (VORR16B ...) // pureVreg
262 (OrUint16x8 ...) => (VORR16B ...) // pureVreg
263 (OrUint32x4 ...) => (VORR16B ...) // pureVreg
264 (OrUint64x2 ...) => (VORR16B ...) // pureVreg
265 (OrNotInt8x16 ...) => (VORN16B ...) // pureVreg
266 (OrNotInt16x8 ...) => (VORN16B ...) // pureVreg
267 (OrNotInt32x4 ...) => (VORN16B ...) // pureVreg
268 (OrNotInt64x2 ...) => (VORN16B ...) // pureVreg
269 (OrNotUint8x16 ...) => (VORN16B ...) // pureVreg
270 (OrNotUint16x8 ...) => (VORN16B ...) // pureVreg
271 (OrNotUint32x4 ...) => (VORN16B ...) // pureVreg
272 (OrNotUint64x2 ...) => (VORN16B ...) // pureVreg
273 (ReduceMaxFloat32x4 ...) => (VFMAXV4S ...) // pureVreg
274 (ReduceMaxInt8x16 ...) => (VSMAXV16B ...) // pureVreg
275 (ReduceMaxInt16x8 ...) => (VSMAXV8H ...) // pureVreg
276 (ReduceMaxInt32x4 ...) => (VSMAXV4S ...) // pureVreg
277 (ReduceMaxUint8x16 ...) => (VUMAXV16B ...) // pureVreg
278 (ReduceMaxUint16x8 ...) => (VUMAXV8H ...) // pureVreg
279 (ReduceMaxUint32x4 ...) => (VUMAXV4S ...) // pureVreg
280 (ReduceMinFloat32x4 ...) => (VFMINV4S ...) // pureVreg
281 (ReduceMinInt8x16 ...) => (VSMINV16B ...) // pureVreg
282 (ReduceMinInt16x8 ...) => (VSMINV8H ...) // pureVreg
283 (ReduceMinInt32x4 ...) => (VSMINV4S ...) // pureVreg
284 (ReduceMinUint8x16 ...) => (VUMINV16B ...) // pureVreg
285 (ReduceMinUint16x8 ...) => (VUMINV8H ...) // pureVreg
286 (ReduceMinUint32x4 ...) => (VUMINV4S ...) // pureVreg
287 (ReduceSumInt8x16 ...) => (VADDV16B ...) // pureVreg
288 (ReduceSumInt16x8 ...) => (VADDV8H ...) // pureVreg
289 (ReduceSumInt32x4 ...) => (VADDV4S ...) // pureVreg
290 (ReduceSumUint8x16 ...) => (VADDV16B ...) // pureVreg
291 (ReduceSumUint16x8 ...) => (VADDV8H ...) // pureVreg
292 (ReduceSumUint32x4 ...) => (VADDV4S ...) // pureVreg
293 (RoundFloat32x4 ...) => (VFRINTN4S ...) // pureVreg
294 (RoundFloat64x2 ...) => (VFRINTN2D ...) // pureVreg
295 (SaturateToInt8Int16x8 ...) => (VSQXTN8H ...) // pureVreg
296 (SaturateToInt16Int32x4 ...) => (VSQXTN4S ...) // pureVreg
297 (SaturateToInt32Int64x2 ...) => (VSQXTN2D ...) // pureVreg
298 (SaturateToUint8Int16x8 ...) => (VSQXTUN8H ...) // pureVreg
299 (SaturateToUint8Uint16x8 ...) => (VUQXTN8H ...) // pureVreg
300 (SaturateToUint16Int32x4 ...) => (VSQXTUN4S ...) // pureVreg
301 (SaturateToUint16Uint32x4 ...) => (VUQXTN4S ...) // pureVreg
302 (SaturateToUint32Int64x2 ...) => (VSQXTUN2D ...) // pureVreg
303 (SaturateToUint32Uint64x2 ...) => (VUQXTN2D ...) // pureVreg
304 (SetElemFloat32x4 ...) => (VMOVSins0 ...) // pureVreg
305 (VMOVSins0 [0] (VMOVI16B [0]) y:(VDUPSextr [i] _)) => y // argsMatchRule
306 (SetElemFloat64x2 ...) => (VMOVDins0 ...) // pureVreg
307 (VMOVDins0 [0] (VMOVI16B [0]) y:(VDUPDextr [i] _)) => y // argsMatchRule
308 (SetElemInt8x16 ...) => (VMOVBins ...) // pureVreg
309 (SetElemInt16x8 ...) => (VMOVHins ...) // pureVreg
310 (SetElemInt32x4 ...) => (VMOVSins ...) // pureVreg
311 (SetElemInt64x2 ...) => (VMOVDins ...) // pureVreg
312 (SetElemUint8x16 ...) => (VMOVBins ...) // pureVreg
313 (SetElemUint16x8 ...) => (VMOVHins ...) // pureVreg
314 (SetElemUint32x4 ...) => (VMOVSins ...) // pureVreg
315 (SetElemUint64x2 ...) => (VMOVDins ...) // pureVreg
316 (ShiftInt8x16 ...) => (VSSHL16B ...) // pureVreg
317 (ShiftInt16x8 ...) => (VSSHL8H ...) // pureVreg
318 (ShiftInt32x4 ...) => (VSSHL4S ...) // pureVreg
319 (ShiftInt64x2 ...) => (VSSHL2D ...) // pureVreg
320 (ShiftUint8x16 ...) => (VUSHL16B ...) // pureVreg
321 (ShiftUint16x8 ...) => (VUSHL8H ...) // pureVreg
322 (ShiftUint32x4 ...) => (VUSHL4S ...) // pureVreg
323 (ShiftUint64x2 ...) => (VUSHL2D ...) // pureVreg
324 (ShiftAllLeftInt8x16 x y) => (VSSHL16B x (VDUPBbcast [0] (VMOVBins [0] x (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y))))) // earlyMatchRule
325 (ShiftAllLeftInt16x8 x y) => (VSSHL8H x (VDUPHbcast [0] (VMOVHins [0] x (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y))))) // earlyMatchRule
326 (ShiftAllLeftInt32x4 x y) => (VSSHL4S x (VDUPSbcast [0] (VMOVSins [0] x (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y))))) // earlyMatchRule
327 (ShiftAllLeftInt64x2 x y) => (VSSHL2D x (VDUPDbcast [0] (VMOVDins [0] x (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y))))) // earlyMatchRule
328 (ShiftAllLeftUint8x16 x y) => (VUSHL16B x (VDUPBbcast [0] (VMOVBins [0] x (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y))))) // earlyMatchRule
329 (ShiftAllLeftUint16x8 x y) => (VUSHL8H x (VDUPHbcast [0] (VMOVHins [0] x (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y))))) // earlyMatchRule
330 (ShiftAllLeftUint32x4 x y) => (VUSHL4S x (VDUPSbcast [0] (VMOVSins [0] x (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y))))) // earlyMatchRule
331 (ShiftAllLeftUint64x2 x y) => (VUSHL2D x (VDUPDbcast [0] (VMOVDins [0] x (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y))))) // earlyMatchRule
332 (ShiftAllRightInt8x16 x y) => (VSSHL16B x (VDUPBbcast [0] (VMOVBins [0] x (NEG <typ.Int64> (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y)))))) // earlyMatchRule
333 (ShiftAllRightInt16x8 x y) => (VSSHL8H x (VDUPHbcast [0] (VMOVHins [0] x (NEG <typ.Int64> (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y)))))) // earlyMatchRule
334 (ShiftAllRightInt32x4 x y) => (VSSHL4S x (VDUPSbcast [0] (VMOVSins [0] x (NEG <typ.Int64> (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y)))))) // earlyMatchRule
335 (ShiftAllRightInt64x2 x y) => (VSSHL2D x (VDUPDbcast [0] (VMOVDins [0] x (NEG <typ.Int64> (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y)))))) // earlyMatchRule
336 (ShiftAllRightUint8x16 x y) => (VUSHL16B x (VDUPBbcast [0] (VMOVBins [0] x (NEG <typ.Int64> (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y)))))) // earlyMatchRule
337 (ShiftAllRightUint16x8 x y) => (VUSHL8H x (VDUPHbcast [0] (VMOVHins [0] x (NEG <typ.Int64> (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y)))))) // earlyMatchRule
338 (ShiftAllRightUint32x4 x y) => (VUSHL4S x (VDUPSbcast [0] (VMOVSins [0] x (NEG <typ.Int64> (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y)))))) // earlyMatchRule
339 (ShiftAllRightUint64x2 x y) => (VUSHL2D x (VDUPDbcast [0] (VMOVDins [0] x (NEG <typ.Int64> (CSEL <typ.UInt64> [OpARM64LessThanU] y (MOVDconst [127]) (CMPconst [127] y)))))) // earlyMatchRule
340 (ShiftLeftConstInt8x16 ...) => (VSHL16B ...) // pureVreg
341 (VSHL16B [a] x) && a==0 => x // asmRule
342 (ShiftLeftConstInt16x8 ...) => (VSHL8H ...) // pureVreg
343 (VSHL8H [a] x) && a==0 => x // asmRule
344 (ShiftLeftConstInt32x4 ...) => (VSHL4S ...) // pureVreg
345 (VSHL4S [a] x) && a==0 => x // asmRule
346 (ShiftLeftConstInt64x2 ...) => (VSHL2D ...) // pureVreg
347 (VSHL2D [a] x) && a==0 => x // asmRule
348 (ShiftLeftConstUint8x16 ...) => (VSHL16B ...) // pureVreg
349 (ShiftLeftConstUint16x8 ...) => (VSHL8H ...) // pureVreg
350 (ShiftLeftConstUint32x4 ...) => (VSHL4S ...) // pureVreg
351 (ShiftLeftConstUint64x2 ...) => (VSHL2D ...) // pureVreg
352 (ShiftLeftLoLongConstInt8x16 ...) => (VSSHLL16B ...) // pureVreg
353 (ShiftLeftLoLongConstInt16x8 ...) => (VSSHLL8H ...) // pureVreg
354 (ShiftLeftLoLongConstInt32x4 ...) => (VSSHLL4S ...) // pureVreg
355 (ShiftLeftLoLongConstUint8x16 ...) => (VUSHLL16B ...) // pureVreg
356 (ShiftLeftLoLongConstUint16x8 ...) => (VUSHLL8H ...) // pureVreg
357 (ShiftLeftLoLongConstUint32x4 ...) => (VUSHLL4S ...) // pureVreg
358 (ShiftLeftSaturatedConstInt8x16 ...) => (VSQSHL16Bconst ...) // pureVreg
359 (VSQSHL16Bconst [a] x) && a==0 => x // asmRule
360 (ShiftLeftSaturatedConstInt16x8 ...) => (VSQSHL8Hconst ...) // pureVreg
361 (VSQSHL8Hconst [a] x) && a==0 => x // asmRule
362 (ShiftLeftSaturatedConstInt32x4 ...) => (VSQSHL4Sconst ...) // pureVreg
363 (VSQSHL4Sconst [a] x) && a==0 => x // asmRule
364 (ShiftLeftSaturatedConstInt64x2 ...) => (VSQSHL2Dconst ...) // pureVreg
365 (VSQSHL2Dconst [a] x) && a==0 => x // asmRule
366 (ShiftLeftSaturatedConstUint8x16 ...) => (VUQSHL16Bconst ...) // pureVreg
367 (VUQSHL16Bconst [a] x) && a==0 => x // asmRule
368 (ShiftLeftSaturatedConstUint16x8 ...) => (VUQSHL8Hconst ...) // pureVreg
369 (VUQSHL8Hconst [a] x) && a==0 => x // asmRule
370 (ShiftLeftSaturatedConstUint32x4 ...) => (VUQSHL4Sconst ...) // pureVreg
371 (VUQSHL4Sconst [a] x) && a==0 => x // asmRule
372 (ShiftLeftSaturatedConstUint64x2 ...) => (VUQSHL2Dconst ...) // pureVreg
373 (VUQSHL2Dconst [a] x) && a==0 => x // asmRule
374 (ShiftRightConstInt8x16 ...) => (VSSHR16B ...) // pureVreg
375 (VSSHR16B [a] x) && a==0 => x // asmRule
376 (ShiftRightConstInt16x8 ...) => (VSSHR8H ...) // pureVreg
377 (VSSHR8H [a] x) && a==0 => x // asmRule
378 (ShiftRightConstInt32x4 ...) => (VSSHR4S ...) // pureVreg
379 (VSSHR4S [a] x) && a==0 => x // asmRule
380 (ShiftRightConstInt64x2 ...) => (VSSHR2D ...) // pureVreg
381 (VSSHR2D [a] x) && a==0 => x // asmRule
382 (ShiftRightConstUint8x16 ...) => (VUSHR16B ...) // pureVreg
383 (VUSHR16B [a] x) && a==0 => x // asmRule
384 (ShiftRightConstUint16x8 ...) => (VUSHR8H ...) // pureVreg
385 (VUSHR8H [a] x) && a==0 => x // asmRule
386 (ShiftRightConstUint32x4 ...) => (VUSHR4S ...) // pureVreg
387 (VUSHR4S [a] x) && a==0 => x // asmRule
388 (ShiftRightConstUint64x2 ...) => (VUSHR2D ...) // pureVreg
389 (VUSHR2D [a] x) && a==0 => x // asmRule
390 (ShiftRightNarrowConstUint16x8 ...) => (VSHRN8H ...) // pureVreg
391 (VSHRN8H [0] x) => (VXTN8H x) // argsMatchRule
392 (ShiftRightNarrowConstUint32x4 ...) => (VSHRN4S ...) // pureVreg
393 (VSHRN4S [0] x) => (VXTN4S x) // argsMatchRule
394 (ShiftRightNarrowConstUint64x2 ...) => (VSHRN2D ...) // pureVreg
395 (VSHRN2D [0] x) => (VXTN2D x) // argsMatchRule
396 (ShiftSaturatedInt8x16 ...) => (VSQSHL16B ...) // pureVreg
397 (ShiftSaturatedInt16x8 ...) => (VSQSHL8H ...) // pureVreg
398 (ShiftSaturatedInt32x4 ...) => (VSQSHL4S ...) // pureVreg
399 (ShiftSaturatedInt64x2 ...) => (VSQSHL2D ...) // pureVreg
400 (ShiftSaturatedUint8x16 ...) => (VUQSHL16B ...) // pureVreg
401 (ShiftSaturatedUint16x8 ...) => (VUQSHL8H ...) // pureVreg
402 (ShiftSaturatedUint32x4 ...) => (VUQSHL4S ...) // pureVreg
403 (ShiftSaturatedUint64x2 ...) => (VUQSHL2D ...) // pureVreg
404 (SqrtFloat32x4 ...) => (VFSQRT4S ...) // pureVreg
405 (SqrtFloat64x2 ...) => (VFSQRT2D ...) // pureVreg
406 (SubFloat32x4 ...) => (VFSUB4S ...) // pureVreg
407 (SubFloat64x2 ...) => (VFSUB2D ...) // pureVreg
408 (SubInt8x16 ...) => (VSUB16B ...) // pureVreg
409 (SubInt16x8 ...) => (VSUB8H ...) // pureVreg
410 (SubInt32x4 ...) => (VSUB4S ...) // pureVreg
411 (SubInt64x2 ...) => (VSUB2D ...) // pureVreg
412 (SubUint8x16 ...) => (VSUB16B ...) // pureVreg
413 (SubUint16x8 ...) => (VSUB8H ...) // pureVreg
414 (SubUint32x4 ...) => (VSUB4S ...) // pureVreg
415 (SubUint64x2 ...) => (VSUB2D ...) // pureVreg
416 (SubSaturatedInt8x16 ...) => (VSQSUB16B ...) // pureVreg
417 (SubSaturatedInt16x8 ...) => (VSQSUB8H ...) // pureVreg
418 (SubSaturatedInt32x4 ...) => (VSQSUB4S ...) // pureVreg
419 (SubSaturatedInt64x2 ...) => (VSQSUB2D ...) // pureVreg
420 (SubSaturatedUint8x16 ...) => (VUQSUB16B ...) // pureVreg
421 (SubSaturatedUint16x8 ...) => (VUQSUB8H ...) // pureVreg
422 (SubSaturatedUint32x4 ...) => (VUQSUB4S ...) // pureVreg
423 (SubSaturatedUint64x2 ...) => (VUQSUB2D ...) // pureVreg
424 (TransposeEvenInt8x16 ...) => (VTRN116B ...) // pureVreg
425 (TransposeEvenInt16x8 ...) => (VTRN18H ...) // pureVreg
426 (TransposeEvenInt32x4 ...) => (VTRN14S ...) // pureVreg
427 (TransposeEvenInt64x2 ...) => (VTRN12D ...) // pureVreg
428 (TransposeEvenUint8x16 ...) => (VTRN116B ...) // pureVreg
429 (TransposeEvenUint16x8 ...) => (VTRN18H ...) // pureVreg
430 (TransposeEvenUint32x4 ...) => (VTRN14S ...) // pureVreg
431 (TransposeEvenUint64x2 ...) => (VTRN12D ...) // pureVreg
432 (TransposeOddInt8x16 ...) => (VTRN216B ...) // pureVreg
433 (TransposeOddInt16x8 ...) => (VTRN28H ...) // pureVreg
434 (TransposeOddInt32x4 ...) => (VTRN24S ...) // pureVreg
435 (TransposeOddInt64x2 ...) => (VTRN22D ...) // pureVreg
436 (TransposeOddUint8x16 ...) => (VTRN216B ...) // pureVreg
437 (TransposeOddUint16x8 ...) => (VTRN28H ...) // pureVreg
438 (TransposeOddUint32x4 ...) => (VTRN24S ...) // pureVreg
439 (TransposeOddUint64x2 ...) => (VTRN22D ...) // pureVreg
440 (TruncFloat32x4 ...) => (VFRINTZ4S ...) // pureVreg
441 (TruncFloat64x2 ...) => (VFRINTZ2D ...) // pureVreg
442 (TruncToInt8Int16x8 ...) => (VXTN8H ...) // pureVreg
443 (TruncToInt16Int32x4 ...) => (VXTN4S ...) // pureVreg
444 (TruncToInt32Int64x2 ...) => (VXTN2D ...) // pureVreg
445 (TruncToUint8Uint16x8 ...) => (VXTN8H ...) // pureVreg
446 (TruncToUint16Uint32x4 ...) => (VXTN4S ...) // pureVreg
447 (TruncToUint32Uint64x2 ...) => (VXTN2D ...) // pureVreg
448 (XorInt8x16 ...) => (VEOR16B ...) // pureVreg
449 (XorInt16x8 ...) => (VEOR16B ...) // pureVreg
450 (XorInt32x4 ...) => (VEOR16B ...) // pureVreg
451 (XorInt64x2 ...) => (VEOR16B ...) // pureVreg
452 (XorUint8x16 ...) => (VEOR16B ...) // pureVreg
453 (XorUint16x8 ...) => (VEOR16B ...) // pureVreg
454 (XorUint32x4 ...) => (VEOR16B ...) // pureVreg
455 (XorUint64x2 ...) => (VEOR16B ...) // pureVreg
456 (bitSelectInt8x16 ...) => (VBIT16B ...) // pureVreg
457 (VBIT16B x y (VNOT16B mask)) => (VBIF16B x y mask) // argsMatchRule
458 (bitSelectNotInt8x16 ...) => (VBIF16B ...) // pureVreg
459 (VBIF16B x y (VNOT16B mask)) => (VBIT16B x y mask) // argsMatchRule
460 (broadcast1To2Float64x2 x) => (VDUPDbcast [0] x) // pureVreg
461 (broadcast1To2Int64x2 x) => (VDUPDbcast [0] x) // pureVreg
462 (broadcast1To2Uint64x2 x) => (VDUPDbcast [0] x) // pureVreg
463 (broadcast1To4Float32x4 x) => (VDUPSbcast [0] x) // pureVreg
464 (broadcast1To4Int32x4 x) => (VDUPSbcast [0] x) // pureVreg
465 (broadcast1To4Uint32x4 x) => (VDUPSbcast [0] x) // pureVreg
466 (broadcast1To8Int16x8 x) => (VDUPHbcast [0] x) // pureVreg
467 (broadcast1To8Uint16x8 x) => (VDUPHbcast [0] x) // pureVreg
468 (broadcast1To16Int8x16 x) => (VDUPBbcast [0] x) // pureVreg
469 (VDUPBbcast [i] (VMOVBins [j] _ (MOVDconst [c]))) && i == j && c>=-128 && c<=255 => (VMOVI16B [uint8(c)]) // argsMatchRule
470 (broadcast1To16Uint8x16 x) => (VDUPBbcast [0] x) // pureVreg
471
View as plain text