1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* DAG Instruction Selector for the LoongArch target *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* *|
7\*===----------------------------------------------------------------------===*/
8
9// *** NOTE: This file is #included into the middle of the target
10// *** instruction selector class. These functions are really methods.
11
12// If GET_DAGISEL_DECL is #defined with any value, only function
13// declarations will be included when this file is included.
14// If GET_DAGISEL_BODY is #defined, its value should be the name of
15// the instruction selector class. Function bodies will be emitted
16// and each function's name will be qualified with the name of the
17// class.
18//
19// When neither of the GET_DAGISEL* macros is defined, the functions
20// are emitted inline.
21
22#if defined(GET_DAGISEL_DECL) && defined(GET_DAGISEL_BODY)
23#error GET_DAGISEL_DECL and GET_DAGISEL_BODY cannot be both defined, undef both for inline definitions
24#endif
25
26#ifdef GET_DAGISEL_BODY
27#define LOCAL_DAGISEL_STRINGIZE(X) LOCAL_DAGISEL_STRINGIZE_(X)
28#define LOCAL_DAGISEL_STRINGIZE_(X) #X
29static_assert(sizeof(LOCAL_DAGISEL_STRINGIZE(GET_DAGISEL_BODY)) > 1,
30 "GET_DAGISEL_BODY is empty: it should be defined with the class name");
31#undef LOCAL_DAGISEL_STRINGIZE_
32#undef LOCAL_DAGISEL_STRINGIZE
33#endif
34
35#if !defined(GET_DAGISEL_DECL) && !defined(GET_DAGISEL_BODY)
36#define DAGISEL_INLINE 1
37#else
38#define DAGISEL_INLINE 0
39#endif
40
41#if !DAGISEL_INLINE
42#define DAGISEL_CLASS_COLONCOLON GET_DAGISEL_BODY ::
43#else
44#define DAGISEL_CLASS_COLONCOLON
45#endif
46
47#ifdef GET_DAGISEL_DECL
48void SelectCode(SDNode *N);
49#endif
50#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
51void DAGISEL_CLASS_COLONCOLON SelectCode(SDNode *N)
52{
53 // Some target values are emitted as 2 bytes, TARGET_VAL handles
54 // this. Coverage indexes are emitted as 4 bytes,
55 // COVERAGE_IDX_VAL handles this.
56 #define TARGET_VAL(X) X & 255, unsigned(X) >> 8
57 #define COVERAGE_IDX_VAL(X) X & 255, (unsigned(X) >> 8) & 255, (unsigned(X) >> 16) & 255, (unsigned(X) >> 24) & 255
58 static const unsigned char MatcherTable[] = {
59 OPC_SwitchOpcode , 38|128,18, TARGET_VAL(ISD::MUL),
60 OPC_Scope, 58,
61 OPC_MoveChild0,
62 OPC_SwitchOpcode , 26, TARGET_VAL(LoongArchISD::BSTRPICK),
63 OPC_RecordChild0,
64 OPC_CheckChild1Integer, 62,
65 OPC_CheckChild1TypeI64,
66 OPC_CheckChild2Integer, 0,
67 OPC_MoveSibling1,
68 OPC_CheckOpcode, TARGET_VAL(LoongArchISD::BSTRPICK),
69 OPC_RecordChild0,
70 OPC_CheckChild1Integer, 62,
71 OPC_CheckChild1TypeI64,
72 OPC_CheckChild2Integer, 0,
73 OPC_MoveParent,
74 OPC_CheckTypeI64,
75 OPC_CheckPatternPredicate6,
76 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MULW_D_WU),
77 8, 2, 0, 1,
78 23, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
79 OPC_RecordChild0,
80 OPC_MoveChild1,
81 OPC_CheckValueType, 7,
82 OPC_MoveParent,
83 OPC_MoveSibling1,
84 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
85 OPC_RecordChild0,
86 OPC_MoveChild1,
87 OPC_CheckValueType, 7,
88 OPC_MoveParent,
89 OPC_MoveParent,
90 OPC_CheckPatternPredicate6,
91 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MULW_D_W),
92 8, 2, 0, 1,
93 0,
94 103|128,17,
95 OPC_RecordChild0,
96 OPC_Scope, 53,
97 OPC_CheckChild1Integer, 14,
98 OPC_CheckPredicate, 13,
99 OPC_SwitchType , 22, 7,
100 OPC_CheckPatternPredicate, 16,
101 OPC_EmitInteger32, 2,
102 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
103 7, 3, 0, 0, 1,
104 OPC_EmitInteger32, 2,
105 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
106 7, 3, 2, 0, 3,
107 21, 8,
108 OPC_CheckPatternPredicate6,
109 OPC_EmitInteger64, 2,
110 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
111 8, 3, 0, 0, 1,
112 OPC_EmitInteger64, 2,
113 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
114 8, 3, 2, 0, 3,
115 0,
116 53,
117 OPC_CheckChild1Integer, 26,
118 OPC_CheckPredicate, 13,
119 OPC_SwitchType , 22, 7,
120 OPC_CheckPatternPredicate, 16,
121 OPC_EmitInteger32, 2,
122 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
123 7, 3, 0, 0, 1,
124 OPC_EmitInteger32, 4,
125 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
126 7, 3, 2, 0, 3,
127 21, 8,
128 OPC_CheckPatternPredicate6,
129 OPC_EmitInteger64, 2,
130 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
131 8, 3, 0, 0, 1,
132 OPC_EmitInteger64, 4,
133 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
134 8, 3, 2, 0, 3,
135 0,
136 121,
137 OPC_CheckChild1Integer, 50,
138 OPC_CheckPredicate, 13,
139 OPC_SwitchType , 56, 7,
140 OPC_CheckPatternPredicate, 16,
141 OPC_Scope, 20,
142 OPC_EmitInteger32, 2,
143 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
144 7, 3, 0, 0, 1,
145 OPC_EmitInteger32, 6,
146 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
147 7, 3, 2, 0, 3,
148 30,
149 OPC_EmitInteger32, 4,
150 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
151 7, 3, 0, 0, 1,
152 OPC_EmitInteger32, 4,
153 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
154 7, 3, 0, 0, 3,
155 OPC_EmitInteger32, 4,
156 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
157 7, 3, 2, 4, 5,
158 0,
159 55, 8,
160 OPC_CheckPatternPredicate6,
161 OPC_Scope, 20,
162 OPC_EmitInteger64, 2,
163 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
164 8, 3, 0, 0, 1,
165 OPC_EmitInteger64, 6,
166 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
167 8, 3, 2, 0, 3,
168 30,
169 OPC_EmitInteger64, 4,
170 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
171 8, 3, 0, 0, 1,
172 OPC_EmitInteger64, 4,
173 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
174 8, 3, 0, 0, 3,
175 OPC_EmitInteger64, 4,
176 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
177 8, 3, 2, 4, 5,
178 0,
179 0,
180 53,
181 OPC_CheckChild1Integer, 98,
182 OPC_CheckPredicate, 13,
183 OPC_SwitchType , 22, 7,
184 OPC_CheckPatternPredicate, 16,
185 OPC_EmitInteger32, 2,
186 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
187 7, 3, 0, 0, 1,
188 OPC_EmitInteger32, 8,
189 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
190 7, 3, 2, 0, 3,
191 21, 8,
192 OPC_CheckPatternPredicate6,
193 OPC_EmitInteger64, 2,
194 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
195 8, 3, 0, 0, 1,
196 OPC_EmitInteger64, 8,
197 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
198 8, 3, 2, 0, 3,
199 0,
200 53,
201 OPC_CheckChild1Integer, 22,
202 OPC_CheckPredicate, 13,
203 OPC_SwitchType , 22, 7,
204 OPC_CheckPatternPredicate, 16,
205 OPC_EmitInteger32, 4,
206 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
207 7, 3, 0, 0, 1,
208 OPC_EmitInteger32, 2,
209 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
210 7, 3, 2, 0, 3,
211 21, 8,
212 OPC_CheckPatternPredicate6,
213 OPC_EmitInteger64, 4,
214 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
215 8, 3, 0, 0, 1,
216 OPC_EmitInteger64, 2,
217 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
218 8, 3, 2, 0, 3,
219 0,
220 53,
221 OPC_CheckChild1Integer, 42,
222 OPC_CheckPredicate, 13,
223 OPC_SwitchType , 22, 7,
224 OPC_CheckPatternPredicate, 16,
225 OPC_EmitInteger32, 4,
226 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
227 7, 3, 0, 0, 1,
228 OPC_EmitInteger32, 4,
229 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
230 7, 3, 2, 0, 3,
231 21, 8,
232 OPC_CheckPatternPredicate6,
233 OPC_EmitInteger64, 4,
234 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
235 8, 3, 0, 0, 1,
236 OPC_EmitInteger64, 4,
237 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
238 8, 3, 2, 0, 3,
239 0,
240 53,
241 OPC_CheckChild1Integer, 82,
242 OPC_CheckPredicate, 13,
243 OPC_SwitchType , 22, 7,
244 OPC_CheckPatternPredicate, 16,
245 OPC_EmitInteger32, 4,
246 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
247 7, 3, 0, 0, 1,
248 OPC_EmitInteger32, 6,
249 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
250 7, 3, 2, 0, 3,
251 21, 8,
252 OPC_CheckPatternPredicate6,
253 OPC_EmitInteger64, 4,
254 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
255 8, 3, 0, 0, 1,
256 OPC_EmitInteger64, 6,
257 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
258 8, 3, 2, 0, 3,
259 0,
260 122,
261 OPC_CheckChild1Integer, 34|128,1,
262 OPC_CheckPredicate, 13,
263 OPC_SwitchType , 56, 7,
264 OPC_CheckPatternPredicate, 16,
265 OPC_Scope, 20,
266 OPC_EmitInteger32, 4,
267 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
268 7, 3, 0, 0, 1,
269 OPC_EmitInteger32, 8,
270 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
271 7, 3, 2, 0, 3,
272 30,
273 OPC_EmitInteger32, 6,
274 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
275 7, 3, 0, 0, 1,
276 OPC_EmitInteger32, 6,
277 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
278 7, 3, 0, 0, 3,
279 OPC_EmitInteger32, 6,
280 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
281 7, 3, 2, 4, 5,
282 0,
283 55, 8,
284 OPC_CheckPatternPredicate6,
285 OPC_Scope, 20,
286 OPC_EmitInteger64, 4,
287 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
288 8, 3, 0, 0, 1,
289 OPC_EmitInteger64, 8,
290 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
291 8, 3, 2, 0, 3,
292 30,
293 OPC_EmitInteger64, 6,
294 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
295 8, 3, 0, 0, 1,
296 OPC_EmitInteger64, 6,
297 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
298 8, 3, 0, 0, 3,
299 OPC_EmitInteger64, 6,
300 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
301 8, 3, 2, 4, 5,
302 0,
303 0,
304 53,
305 OPC_CheckChild1Integer, 38,
306 OPC_CheckPredicate, 13,
307 OPC_SwitchType , 22, 7,
308 OPC_CheckPatternPredicate, 16,
309 OPC_EmitInteger32, 6,
310 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
311 7, 3, 0, 0, 1,
312 OPC_EmitInteger32, 2,
313 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
314 7, 3, 2, 0, 3,
315 21, 8,
316 OPC_CheckPatternPredicate6,
317 OPC_EmitInteger64, 6,
318 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
319 8, 3, 0, 0, 1,
320 OPC_EmitInteger64, 2,
321 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
322 8, 3, 2, 0, 3,
323 0,
324 53,
325 OPC_CheckChild1Integer, 74,
326 OPC_CheckPredicate, 13,
327 OPC_SwitchType , 22, 7,
328 OPC_CheckPatternPredicate, 16,
329 OPC_EmitInteger32, 6,
330 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
331 7, 3, 0, 0, 1,
332 OPC_EmitInteger32, 4,
333 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
334 7, 3, 2, 0, 3,
335 21, 8,
336 OPC_CheckPatternPredicate6,
337 OPC_EmitInteger64, 6,
338 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
339 8, 3, 0, 0, 1,
340 OPC_EmitInteger64, 4,
341 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
342 8, 3, 2, 0, 3,
343 0,
344 54,
345 OPC_CheckChild1Integer, 18|128,1,
346 OPC_CheckPredicate, 13,
347 OPC_SwitchType , 22, 7,
348 OPC_CheckPatternPredicate, 16,
349 OPC_EmitInteger32, 6,
350 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
351 7, 3, 0, 0, 1,
352 OPC_EmitInteger32, 6,
353 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
354 7, 3, 2, 0, 3,
355 21, 8,
356 OPC_CheckPatternPredicate6,
357 OPC_EmitInteger64, 6,
358 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
359 8, 3, 0, 0, 1,
360 OPC_EmitInteger64, 6,
361 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
362 8, 3, 2, 0, 3,
363 0,
364 54,
365 OPC_CheckChild1Integer, 34|128,2,
366 OPC_CheckPredicate, 13,
367 OPC_SwitchType , 22, 7,
368 OPC_CheckPatternPredicate, 16,
369 OPC_EmitInteger32, 6,
370 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
371 7, 3, 0, 0, 1,
372 OPC_EmitInteger32, 8,
373 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
374 7, 3, 2, 0, 3,
375 21, 8,
376 OPC_CheckPatternPredicate6,
377 OPC_EmitInteger64, 6,
378 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
379 8, 3, 0, 0, 1,
380 OPC_EmitInteger64, 8,
381 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
382 8, 3, 2, 0, 3,
383 0,
384 53,
385 OPC_CheckChild1Integer, 70,
386 OPC_CheckPredicate, 13,
387 OPC_SwitchType , 22, 7,
388 OPC_CheckPatternPredicate, 16,
389 OPC_EmitInteger32, 8,
390 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
391 7, 3, 0, 0, 1,
392 OPC_EmitInteger32, 2,
393 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
394 7, 3, 2, 0, 3,
395 21, 8,
396 OPC_CheckPatternPredicate6,
397 OPC_EmitInteger64, 8,
398 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
399 8, 3, 0, 0, 1,
400 OPC_EmitInteger64, 2,
401 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
402 8, 3, 2, 0, 3,
403 0,
404 54,
405 OPC_CheckChild1Integer, 10|128,1,
406 OPC_CheckPredicate, 13,
407 OPC_SwitchType , 22, 7,
408 OPC_CheckPatternPredicate, 16,
409 OPC_EmitInteger32, 8,
410 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
411 7, 3, 0, 0, 1,
412 OPC_EmitInteger32, 4,
413 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
414 7, 3, 2, 0, 3,
415 21, 8,
416 OPC_CheckPatternPredicate6,
417 OPC_EmitInteger64, 8,
418 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
419 8, 3, 0, 0, 1,
420 OPC_EmitInteger64, 4,
421 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
422 8, 3, 2, 0, 3,
423 0,
424 54,
425 OPC_CheckChild1Integer, 18|128,2,
426 OPC_CheckPredicate, 13,
427 OPC_SwitchType , 22, 7,
428 OPC_CheckPatternPredicate, 16,
429 OPC_EmitInteger32, 8,
430 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
431 7, 3, 0, 0, 1,
432 OPC_EmitInteger32, 6,
433 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
434 7, 3, 2, 0, 3,
435 21, 8,
436 OPC_CheckPatternPredicate6,
437 OPC_EmitInteger64, 8,
438 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
439 8, 3, 0, 0, 1,
440 OPC_EmitInteger64, 6,
441 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
442 8, 3, 2, 0, 3,
443 0,
444 54,
445 OPC_CheckChild1Integer, 34|128,4,
446 OPC_CheckPredicate, 13,
447 OPC_SwitchType , 22, 7,
448 OPC_CheckPatternPredicate, 16,
449 OPC_EmitInteger32, 8,
450 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
451 7, 3, 0, 0, 1,
452 OPC_EmitInteger32, 8,
453 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
454 7, 3, 2, 0, 3,
455 21, 8,
456 OPC_CheckPatternPredicate6,
457 OPC_EmitInteger64, 8,
458 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
459 8, 3, 0, 0, 1,
460 OPC_EmitInteger64, 8,
461 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
462 8, 3, 2, 0, 3,
463 0,
464 73,
465 OPC_CheckChild1Integer, 18,
466 OPC_CheckPredicate, 13,
467 OPC_SwitchType , 32, 7,
468 OPC_CheckPatternPredicate, 16,
469 OPC_EmitInteger32, 2,
470 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
471 7, 3, 0, 0, 1,
472 OPC_EmitInteger32, 2,
473 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
474 7, 3, 0, 0, 3,
475 OPC_EmitInteger32, 2,
476 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
477 7, 3, 2, 4, 5,
478 31, 8,
479 OPC_CheckPatternPredicate6,
480 OPC_EmitInteger64, 2,
481 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
482 8, 3, 0, 0, 1,
483 OPC_EmitInteger64, 2,
484 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
485 8, 3, 0, 0, 3,
486 OPC_EmitInteger64, 2,
487 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
488 8, 3, 2, 4, 5,
489 0,
490 13|128,1,
491 OPC_CheckChild1Integer, 30,
492 OPC_CheckPredicate, 13,
493 OPC_SwitchType , 66, 7,
494 OPC_CheckPatternPredicate, 16,
495 OPC_Scope, 30,
496 OPC_EmitInteger32, 2,
497 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
498 7, 3, 0, 0, 1,
499 OPC_EmitInteger32, 2,
500 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
501 7, 3, 0, 0, 3,
502 OPC_EmitInteger32, 4,
503 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
504 7, 3, 2, 4, 5,
505 30,
506 OPC_EmitInteger32, 4,
507 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
508 7, 3, 0, 0, 1,
509 OPC_EmitInteger32, 4,
510 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
511 7, 3, 0, 0, 3,
512 OPC_EmitInteger32, 2,
513 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
514 7, 3, 2, 4, 5,
515 0,
516 65, 8,
517 OPC_CheckPatternPredicate6,
518 OPC_Scope, 30,
519 OPC_EmitInteger64, 2,
520 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
521 8, 3, 0, 0, 1,
522 OPC_EmitInteger64, 2,
523 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
524 8, 3, 0, 0, 3,
525 OPC_EmitInteger64, 4,
526 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
527 8, 3, 2, 4, 5,
528 30,
529 OPC_EmitInteger64, 4,
530 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
531 8, 3, 0, 0, 1,
532 OPC_EmitInteger64, 4,
533 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
534 8, 3, 0, 0, 3,
535 OPC_EmitInteger64, 2,
536 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
537 8, 3, 2, 4, 5,
538 0,
539 0,
540 13|128,1,
541 OPC_CheckChild1Integer, 54,
542 OPC_CheckPredicate, 13,
543 OPC_SwitchType , 66, 7,
544 OPC_CheckPatternPredicate, 16,
545 OPC_Scope, 30,
546 OPC_EmitInteger32, 2,
547 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
548 7, 3, 0, 0, 1,
549 OPC_EmitInteger32, 2,
550 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
551 7, 3, 0, 0, 3,
552 OPC_EmitInteger32, 6,
553 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
554 7, 3, 2, 4, 5,
555 30,
556 OPC_EmitInteger32, 6,
557 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
558 7, 3, 0, 0, 1,
559 OPC_EmitInteger32, 6,
560 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
561 7, 3, 0, 0, 3,
562 OPC_EmitInteger32, 2,
563 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
564 7, 3, 2, 4, 5,
565 0,
566 65, 8,
567 OPC_CheckPatternPredicate6,
568 OPC_Scope, 30,
569 OPC_EmitInteger64, 2,
570 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
571 8, 3, 0, 0, 1,
572 OPC_EmitInteger64, 2,
573 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
574 8, 3, 0, 0, 3,
575 OPC_EmitInteger64, 6,
576 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
577 8, 3, 2, 4, 5,
578 30,
579 OPC_EmitInteger64, 6,
580 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
581 8, 3, 0, 0, 1,
582 OPC_EmitInteger64, 6,
583 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
584 8, 3, 0, 0, 3,
585 OPC_EmitInteger64, 2,
586 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
587 8, 3, 2, 4, 5,
588 0,
589 0,
590 13|128,1,
591 OPC_CheckChild1Integer, 102,
592 OPC_CheckPredicate, 13,
593 OPC_SwitchType , 66, 7,
594 OPC_CheckPatternPredicate, 16,
595 OPC_Scope, 30,
596 OPC_EmitInteger32, 2,
597 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
598 7, 3, 0, 0, 1,
599 OPC_EmitInteger32, 2,
600 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
601 7, 3, 0, 0, 3,
602 OPC_EmitInteger32, 8,
603 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
604 7, 3, 2, 4, 5,
605 30,
606 OPC_EmitInteger32, 8,
607 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
608 7, 3, 0, 0, 1,
609 OPC_EmitInteger32, 8,
610 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
611 7, 3, 0, 0, 3,
612 OPC_EmitInteger32, 2,
613 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
614 7, 3, 2, 4, 5,
615 0,
616 65, 8,
617 OPC_CheckPatternPredicate6,
618 OPC_Scope, 30,
619 OPC_EmitInteger64, 2,
620 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
621 8, 3, 0, 0, 1,
622 OPC_EmitInteger64, 2,
623 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
624 8, 3, 0, 0, 3,
625 OPC_EmitInteger64, 8,
626 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
627 8, 3, 2, 4, 5,
628 30,
629 OPC_EmitInteger64, 8,
630 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
631 8, 3, 0, 0, 1,
632 OPC_EmitInteger64, 8,
633 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
634 8, 3, 0, 0, 3,
635 OPC_EmitInteger64, 2,
636 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
637 8, 3, 2, 4, 5,
638 0,
639 0,
640 13|128,1,
641 OPC_CheckChild1Integer, 90,
642 OPC_CheckPredicate, 13,
643 OPC_SwitchType , 66, 7,
644 OPC_CheckPatternPredicate, 16,
645 OPC_Scope, 30,
646 OPC_EmitInteger32, 4,
647 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
648 7, 3, 0, 0, 1,
649 OPC_EmitInteger32, 4,
650 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
651 7, 3, 0, 0, 3,
652 OPC_EmitInteger32, 6,
653 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
654 7, 3, 2, 4, 5,
655 30,
656 OPC_EmitInteger32, 6,
657 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
658 7, 3, 0, 0, 1,
659 OPC_EmitInteger32, 6,
660 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
661 7, 3, 0, 0, 3,
662 OPC_EmitInteger32, 4,
663 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
664 7, 3, 2, 4, 5,
665 0,
666 65, 8,
667 OPC_CheckPatternPredicate6,
668 OPC_Scope, 30,
669 OPC_EmitInteger64, 4,
670 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
671 8, 3, 0, 0, 1,
672 OPC_EmitInteger64, 4,
673 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
674 8, 3, 0, 0, 3,
675 OPC_EmitInteger64, 6,
676 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
677 8, 3, 2, 4, 5,
678 30,
679 OPC_EmitInteger64, 6,
680 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
681 8, 3, 0, 0, 1,
682 OPC_EmitInteger64, 6,
683 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
684 8, 3, 0, 0, 3,
685 OPC_EmitInteger64, 4,
686 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
687 8, 3, 2, 4, 5,
688 0,
689 0,
690 14|128,1,
691 OPC_CheckChild1Integer, 42|128,1,
692 OPC_CheckPredicate, 13,
693 OPC_SwitchType , 66, 7,
694 OPC_CheckPatternPredicate, 16,
695 OPC_Scope, 30,
696 OPC_EmitInteger32, 4,
697 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
698 7, 3, 0, 0, 1,
699 OPC_EmitInteger32, 4,
700 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
701 7, 3, 0, 0, 3,
702 OPC_EmitInteger32, 8,
703 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
704 7, 3, 2, 4, 5,
705 30,
706 OPC_EmitInteger32, 8,
707 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
708 7, 3, 0, 0, 1,
709 OPC_EmitInteger32, 8,
710 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
711 7, 3, 0, 0, 3,
712 OPC_EmitInteger32, 4,
713 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
714 7, 3, 2, 4, 5,
715 0,
716 65, 8,
717 OPC_CheckPatternPredicate6,
718 OPC_Scope, 30,
719 OPC_EmitInteger64, 4,
720 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
721 8, 3, 0, 0, 1,
722 OPC_EmitInteger64, 4,
723 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
724 8, 3, 0, 0, 3,
725 OPC_EmitInteger64, 8,
726 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
727 8, 3, 2, 4, 5,
728 30,
729 OPC_EmitInteger64, 8,
730 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
731 8, 3, 0, 0, 1,
732 OPC_EmitInteger64, 8,
733 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
734 8, 3, 0, 0, 3,
735 OPC_EmitInteger64, 4,
736 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
737 8, 3, 2, 4, 5,
738 0,
739 0,
740 14|128,1,
741 OPC_CheckChild1Integer, 50|128,2,
742 OPC_CheckPredicate, 13,
743 OPC_SwitchType , 66, 7,
744 OPC_CheckPatternPredicate, 16,
745 OPC_Scope, 30,
746 OPC_EmitInteger32, 6,
747 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
748 7, 3, 0, 0, 1,
749 OPC_EmitInteger32, 6,
750 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
751 7, 3, 0, 0, 3,
752 OPC_EmitInteger32, 8,
753 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
754 7, 3, 2, 4, 5,
755 30,
756 OPC_EmitInteger32, 8,
757 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
758 7, 3, 0, 0, 1,
759 OPC_EmitInteger32, 8,
760 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
761 7, 3, 0, 0, 3,
762 OPC_EmitInteger32, 6,
763 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
764 7, 3, 2, 4, 5,
765 0,
766 65, 8,
767 OPC_CheckPatternPredicate6,
768 OPC_Scope, 30,
769 OPC_EmitInteger64, 6,
770 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
771 8, 3, 0, 0, 1,
772 OPC_EmitInteger64, 6,
773 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
774 8, 3, 0, 0, 3,
775 OPC_EmitInteger64, 8,
776 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
777 8, 3, 2, 4, 5,
778 30,
779 OPC_EmitInteger64, 8,
780 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
781 8, 3, 0, 0, 1,
782 OPC_EmitInteger64, 8,
783 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
784 8, 3, 0, 0, 3,
785 OPC_EmitInteger64, 6,
786 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
787 8, 3, 2, 4, 5,
788 0,
789 0,
790 74,
791 OPC_CheckChild1Integer, 66|128,4,
792 OPC_CheckPredicate, 13,
793 OPC_SwitchType , 32, 7,
794 OPC_CheckPatternPredicate, 16,
795 OPC_EmitInteger32, 8,
796 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
797 7, 3, 0, 0, 1,
798 OPC_EmitInteger32, 8,
799 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
800 7, 3, 0, 0, 3,
801 OPC_EmitInteger32, 8,
802 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
803 7, 3, 2, 4, 5,
804 31, 8,
805 OPC_CheckPatternPredicate6,
806 OPC_EmitInteger64, 8,
807 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
808 8, 3, 0, 0, 1,
809 OPC_EmitInteger64, 8,
810 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
811 8, 3, 0, 0, 3,
812 OPC_EmitInteger64, 8,
813 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
814 8, 3, 2, 4, 5,
815 0,
816 3|128,2,
817 OPC_RecordChild1,
818 OPC_Scope, 120,
819 OPC_MoveChild1,
820 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
821 OPC_CheckPredicate, 57,
822 OPC_MoveParent,
823 OPC_SwitchType , 53, 8,
824 OPC_Scope, 25,
825 OPC_CheckPatternPredicate, 20,
826 OPC_EmitConvertToTarget1,
827 OPC_EmitNodeXForm, 0, 2,
828 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
829 8, 3, 0, 0, 3,
830 OPC_EmitConvertToTarget1,
831 OPC_EmitNodeXForm, 1, 5,
832 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLLI_W),
833 8, 2, 4, 6,
834 24,
835 OPC_CheckPatternPredicate6,
836 OPC_EmitConvertToTarget1,
837 OPC_EmitNodeXForm, 0, 2,
838 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
839 8, 3, 0, 0, 3,
840 OPC_EmitConvertToTarget1,
841 OPC_EmitNodeXForm, 1, 5,
842 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLLI_D),
843 8, 2, 4, 6,
844 0,
845 54, 7,
846 OPC_Scope, 25,
847 OPC_CheckPatternPredicate, 16,
848 OPC_EmitConvertToTarget1,
849 OPC_EmitNodeXForm, 0, 2,
850 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
851 7, 3, 0, 0, 3,
852 OPC_EmitConvertToTarget1,
853 OPC_EmitNodeXForm, 1, 5,
854 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLLI_W),
855 7, 2, 4, 6,
856 25,
857 OPC_CheckPatternPredicate, 9,
858 OPC_EmitConvertToTarget1,
859 OPC_EmitNodeXForm, 0, 2,
860 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_D),
861 7, 3, 0, 0, 3,
862 OPC_EmitConvertToTarget1,
863 OPC_EmitNodeXForm, 1, 5,
864 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLLI_D),
865 7, 2, 4, 6,
866 0,
867 0,
868 22,
869 OPC_CheckTypeI64,
870 OPC_Scope, 9,
871 OPC_CheckPatternPredicate, 15,
872 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MUL_W),
873 8, 2, 0, 1,
874 8,
875 OPC_CheckPatternPredicate6,
876 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MUL_D),
877 8, 2, 0, 1,
878 0,
879 23,
880 OPC_CheckTypeI32,
881 OPC_Scope, 9,
882 OPC_CheckPatternPredicate, 10,
883 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MUL_W),
884 7, 2, 0, 1,
885 9,
886 OPC_CheckPatternPredicate, 9,
887 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MUL_D),
888 7, 2, 0, 1,
889 0,
890 10,
891 OPC_CheckType, 40,
892 OPC_CheckPatternPredicate1,
893 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUL_B),
894 40, 2, 0, 1,
895 10,
896 OPC_CheckType, 51,
897 OPC_CheckPatternPredicate1,
898 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUL_H),
899 51, 2, 0, 1,
900 10,
901 OPC_CheckType, 62,
902 OPC_CheckPatternPredicate1,
903 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUL_W),
904 62, 2, 0, 1,
905 10,
906 OPC_CheckType, 81,
907 OPC_CheckPatternPredicate1,
908 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUL_D),
909 81, 2, 0, 1,
910 10,
911 OPC_CheckType, 41,
912 OPC_CheckPatternPredicate0,
913 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUL_B),
914 41, 2, 0, 1,
915 10,
916 OPC_CheckType, 52,
917 OPC_CheckPatternPredicate0,
918 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUL_H),
919 52, 2, 0, 1,
920 10,
921 OPC_CheckType, 66,
922 OPC_CheckPatternPredicate0,
923 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUL_W),
924 66, 2, 0, 1,
925 10,
926 OPC_CheckType, 83,
927 OPC_CheckPatternPredicate0,
928 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUL_D),
929 83, 2, 0, 1,
930 0,
931 0,
932 0,
933 83|128,12, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
934 OPC_Scope, 8|128,12,
935 OPC_MoveChild0,
936 OPC_SwitchOpcode , 61|128,1, TARGET_VAL(ISD::OR),
937 OPC_MoveChild0,
938 OPC_SwitchOpcode , 93, TARGET_VAL(ISD::SHL),
939 OPC_RecordChild0,
940 OPC_Scope, 29,
941 OPC_CheckChild1Integer, 16,
942 OPC_CheckChild1TypeI64,
943 OPC_MoveSibling1,
944 OPC_CheckOpcode, TARGET_VAL(LoongArchISD::BSTRPICK),
945 OPC_RecordChild0,
946 OPC_CheckChild1Integer, 62,
947 OPC_CheckChild1TypeI64,
948 OPC_CheckChild2Integer, 48,
949 OPC_MoveParent,
950 OPC_MoveSibling1,
951 OPC_CheckValueType, 7,
952 OPC_MoveParent,
953 OPC_CheckPatternPredicate6,
954 OPC_EmitInteger64, 2,
955 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
956 8, 3, 1, 0, 2,
957 29,
958 OPC_CheckChild1Integer, 32,
959 OPC_CheckChild1TypeI64,
960 OPC_MoveSibling1,
961 OPC_CheckOpcode, TARGET_VAL(LoongArchISD::BSTRPICK),
962 OPC_RecordChild0,
963 OPC_CheckChild1Integer, 62,
964 OPC_CheckChild1TypeI64,
965 OPC_CheckChild2Integer, 32,
966 OPC_MoveParent,
967 OPC_MoveSibling1,
968 OPC_CheckValueType, 7,
969 OPC_MoveParent,
970 OPC_CheckPatternPredicate6,
971 OPC_EmitInteger64, 4,
972 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
973 8, 3, 1, 0, 2,
974 29,
975 OPC_CheckChild1Integer, 48,
976 OPC_CheckChild1TypeI64,
977 OPC_MoveSibling1,
978 OPC_CheckOpcode, TARGET_VAL(LoongArchISD::BSTRPICK),
979 OPC_RecordChild0,
980 OPC_CheckChild1Integer, 62,
981 OPC_CheckChild1TypeI64,
982 OPC_CheckChild2Integer, 16,
983 OPC_MoveParent,
984 OPC_MoveSibling1,
985 OPC_CheckValueType, 7,
986 OPC_MoveParent,
987 OPC_CheckPatternPredicate6,
988 OPC_EmitInteger64, 6,
989 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
990 8, 3, 1, 0, 2,
991 0,
992 87, TARGET_VAL(LoongArchISD::BSTRPICK),
993 OPC_RecordChild0,
994 OPC_CheckChild1Integer, 62,
995 OPC_CheckChild1TypeI64,
996 OPC_Scope, 26,
997 OPC_CheckChild2Integer, 48,
998 OPC_MoveSibling1,
999 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
1000 OPC_RecordChild0,
1001 OPC_CheckChild1Integer, 16,
1002 OPC_CheckChild1TypeI64,
1003 OPC_MoveParent,
1004 OPC_MoveSibling1,
1005 OPC_CheckValueType, 7,
1006 OPC_MoveParent,
1007 OPC_CheckPatternPredicate6,
1008 OPC_EmitInteger64, 2,
1009 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
1010 8, 3, 0, 1, 2,
1011 26,
1012 OPC_CheckChild2Integer, 32,
1013 OPC_MoveSibling1,
1014 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
1015 OPC_RecordChild0,
1016 OPC_CheckChild1Integer, 32,
1017 OPC_CheckChild1TypeI64,
1018 OPC_MoveParent,
1019 OPC_MoveSibling1,
1020 OPC_CheckValueType, 7,
1021 OPC_MoveParent,
1022 OPC_CheckPatternPredicate6,
1023 OPC_EmitInteger64, 4,
1024 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
1025 8, 3, 0, 1, 2,
1026 26,
1027 OPC_CheckChild2Integer, 16,
1028 OPC_MoveSibling1,
1029 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
1030 OPC_RecordChild0,
1031 OPC_CheckChild1Integer, 48,
1032 OPC_CheckChild1TypeI64,
1033 OPC_MoveParent,
1034 OPC_MoveSibling1,
1035 OPC_CheckValueType, 7,
1036 OPC_MoveParent,
1037 OPC_CheckPatternPredicate6,
1038 OPC_EmitInteger64, 6,
1039 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
1040 8, 3, 0, 1, 2,
1041 0,
1042 0,
1043 27, TARGET_VAL(ISD::SDIV),
1044 OPC_MoveChild0,
1045 OPC_CheckOpcode, TARGET_VAL(ISD::AssertSext),
1046 OPC_RecordChild0,
1047 OPC_CheckPredicate, 44,
1048 OPC_MoveSibling1,
1049 OPC_CheckOpcode, TARGET_VAL(ISD::AssertSext),
1050 OPC_RecordChild0,
1051 OPC_CheckPredicate, 44,
1052 OPC_MoveParent,
1053 OPC_MoveSibling1,
1054 OPC_CheckValueType, 7,
1055 OPC_MoveParent,
1056 OPC_CheckPatternPredicate6,
1057 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::DIV_W),
1058 8, 2, 0, 1,
1059 27, TARGET_VAL(ISD::SREM),
1060 OPC_MoveChild0,
1061 OPC_CheckOpcode, TARGET_VAL(ISD::AssertSext),
1062 OPC_RecordChild0,
1063 OPC_CheckPredicate, 44,
1064 OPC_MoveSibling1,
1065 OPC_CheckOpcode, TARGET_VAL(ISD::AssertSext),
1066 OPC_RecordChild0,
1067 OPC_CheckPredicate, 44,
1068 OPC_MoveParent,
1069 OPC_MoveSibling1,
1070 OPC_CheckValueType, 7,
1071 OPC_MoveParent,
1072 OPC_CheckPatternPredicate6,
1073 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOD_W),
1074 8, 2, 0, 1,
1075 5|128,1, TARGET_VAL(ISD::ADD),
1076 OPC_Scope, 30,
1077 OPC_RecordChild0,
1078 OPC_MoveChild1,
1079 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
1080 OPC_RecordChild0,
1081 OPC_RecordChild1,
1082 OPC_MoveChild1,
1083 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1084 OPC_CheckPredicate, 43,
1085 OPC_CheckTypeI64,
1086 OPC_MoveParent,
1087 OPC_MoveParent,
1088 OPC_MoveSibling1,
1089 OPC_CheckValueType, 7,
1090 OPC_MoveParent,
1091 OPC_CheckPatternPredicate6,
1092 OPC_EmitConvertToTarget2,
1093 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1094 8, 3, 1, 0, 3,
1095 30,
1096 OPC_MoveChild0,
1097 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
1098 OPC_RecordChild0,
1099 OPC_RecordChild1,
1100 OPC_MoveChild1,
1101 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1102 OPC_CheckPredicate, 43,
1103 OPC_CheckTypeI64,
1104 OPC_MoveParent,
1105 OPC_MoveParent,
1106 OPC_RecordChild1,
1107 OPC_MoveSibling1,
1108 OPC_CheckValueType, 7,
1109 OPC_MoveParent,
1110 OPC_CheckPatternPredicate6,
1111 OPC_EmitConvertToTarget1,
1112 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1113 8, 3, 0, 2, 3,
1114 68,
1115 OPC_RecordChild0,
1116 OPC_RecordChild1,
1117 OPC_MoveChild1,
1118 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1119 OPC_Scope, 28,
1120 OPC_CheckPredicate, 58,
1121 OPC_MoveParent,
1122 OPC_MoveSibling1,
1123 OPC_CheckValueType, 7,
1124 OPC_MoveParent,
1125 OPC_CheckPatternPredicate6,
1126 OPC_EmitNodeXForm, 2, 1,
1127 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDU16I_D),
1128 8, 2, 0, 2,
1129 OPC_EmitNodeXForm, 3, 1,
1130 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_W),
1131 8, 2, 3, 4,
1132 30,
1133 OPC_CheckPredicate, 59,
1134 OPC_MoveParent,
1135 OPC_MoveSibling1,
1136 OPC_CheckValueType, 7,
1137 OPC_MoveParent,
1138 OPC_CheckPatternPredicate6,
1139 OPC_EmitConvertToTarget1,
1140 OPC_EmitNodeXForm, 4, 2,
1141 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_W),
1142 8, 2, 0, 3,
1143 OPC_EmitConvertToTarget1,
1144 OPC_EmitNodeXForm, 5, 5,
1145 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_W),
1146 8, 2, 4, 6,
1147 0,
1148 0,
1149 97|128,8, TARGET_VAL(ISD::MUL),
1150 OPC_RecordChild0,
1151 OPC_Scope, 29,
1152 OPC_CheckChild1Integer, 14,
1153 OPC_CheckPredicate, 13,
1154 OPC_MoveSibling1,
1155 OPC_CheckValueType, 7,
1156 OPC_MoveParent,
1157 OPC_CheckPatternPredicate6,
1158 OPC_EmitInteger64, 2,
1159 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1160 8, 3, 0, 0, 1,
1161 OPC_EmitInteger64, 2,
1162 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1163 8, 3, 2, 0, 3,
1164 29,
1165 OPC_CheckChild1Integer, 26,
1166 OPC_CheckPredicate, 13,
1167 OPC_MoveSibling1,
1168 OPC_CheckValueType, 7,
1169 OPC_MoveParent,
1170 OPC_CheckPatternPredicate6,
1171 OPC_EmitInteger64, 2,
1172 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1173 8, 3, 0, 0, 1,
1174 OPC_EmitInteger64, 4,
1175 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1176 8, 3, 2, 0, 3,
1177 63,
1178 OPC_CheckChild1Integer, 50,
1179 OPC_CheckPredicate, 13,
1180 OPC_MoveSibling1,
1181 OPC_CheckValueType, 7,
1182 OPC_MoveParent,
1183 OPC_CheckPatternPredicate6,
1184 OPC_Scope, 20,
1185 OPC_EmitInteger64, 2,
1186 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1187 8, 3, 0, 0, 1,
1188 OPC_EmitInteger64, 6,
1189 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1190 8, 3, 2, 0, 3,
1191 30,
1192 OPC_EmitInteger64, 4,
1193 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1194 8, 3, 0, 0, 1,
1195 OPC_EmitInteger64, 4,
1196 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1197 8, 3, 0, 0, 3,
1198 OPC_EmitInteger64, 4,
1199 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1200 8, 3, 2, 4, 5,
1201 0,
1202 29,
1203 OPC_CheckChild1Integer, 98,
1204 OPC_CheckPredicate, 13,
1205 OPC_MoveSibling1,
1206 OPC_CheckValueType, 7,
1207 OPC_MoveParent,
1208 OPC_CheckPatternPredicate6,
1209 OPC_EmitInteger64, 2,
1210 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1211 8, 3, 0, 0, 1,
1212 OPC_EmitInteger64, 8,
1213 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1214 8, 3, 2, 0, 3,
1215 29,
1216 OPC_CheckChild1Integer, 22,
1217 OPC_CheckPredicate, 13,
1218 OPC_MoveSibling1,
1219 OPC_CheckValueType, 7,
1220 OPC_MoveParent,
1221 OPC_CheckPatternPredicate6,
1222 OPC_EmitInteger64, 4,
1223 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1224 8, 3, 0, 0, 1,
1225 OPC_EmitInteger64, 2,
1226 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1227 8, 3, 2, 0, 3,
1228 29,
1229 OPC_CheckChild1Integer, 42,
1230 OPC_CheckPredicate, 13,
1231 OPC_MoveSibling1,
1232 OPC_CheckValueType, 7,
1233 OPC_MoveParent,
1234 OPC_CheckPatternPredicate6,
1235 OPC_EmitInteger64, 4,
1236 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1237 8, 3, 0, 0, 1,
1238 OPC_EmitInteger64, 4,
1239 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1240 8, 3, 2, 0, 3,
1241 29,
1242 OPC_CheckChild1Integer, 82,
1243 OPC_CheckPredicate, 13,
1244 OPC_MoveSibling1,
1245 OPC_CheckValueType, 7,
1246 OPC_MoveParent,
1247 OPC_CheckPatternPredicate6,
1248 OPC_EmitInteger64, 4,
1249 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1250 8, 3, 0, 0, 1,
1251 OPC_EmitInteger64, 6,
1252 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1253 8, 3, 2, 0, 3,
1254 64,
1255 OPC_CheckChild1Integer, 34|128,1,
1256 OPC_CheckPredicate, 13,
1257 OPC_MoveSibling1,
1258 OPC_CheckValueType, 7,
1259 OPC_MoveParent,
1260 OPC_CheckPatternPredicate6,
1261 OPC_Scope, 20,
1262 OPC_EmitInteger64, 4,
1263 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1264 8, 3, 0, 0, 1,
1265 OPC_EmitInteger64, 8,
1266 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1267 8, 3, 2, 0, 3,
1268 30,
1269 OPC_EmitInteger64, 6,
1270 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1271 8, 3, 0, 0, 1,
1272 OPC_EmitInteger64, 6,
1273 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1274 8, 3, 0, 0, 3,
1275 OPC_EmitInteger64, 6,
1276 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1277 8, 3, 2, 4, 5,
1278 0,
1279 29,
1280 OPC_CheckChild1Integer, 38,
1281 OPC_CheckPredicate, 13,
1282 OPC_MoveSibling1,
1283 OPC_CheckValueType, 7,
1284 OPC_MoveParent,
1285 OPC_CheckPatternPredicate6,
1286 OPC_EmitInteger64, 6,
1287 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1288 8, 3, 0, 0, 1,
1289 OPC_EmitInteger64, 2,
1290 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1291 8, 3, 2, 0, 3,
1292 29,
1293 OPC_CheckChild1Integer, 74,
1294 OPC_CheckPredicate, 13,
1295 OPC_MoveSibling1,
1296 OPC_CheckValueType, 7,
1297 OPC_MoveParent,
1298 OPC_CheckPatternPredicate6,
1299 OPC_EmitInteger64, 6,
1300 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1301 8, 3, 0, 0, 1,
1302 OPC_EmitInteger64, 4,
1303 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1304 8, 3, 2, 0, 3,
1305 30,
1306 OPC_CheckChild1Integer, 18|128,1,
1307 OPC_CheckPredicate, 13,
1308 OPC_MoveSibling1,
1309 OPC_CheckValueType, 7,
1310 OPC_MoveParent,
1311 OPC_CheckPatternPredicate6,
1312 OPC_EmitInteger64, 6,
1313 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1314 8, 3, 0, 0, 1,
1315 OPC_EmitInteger64, 6,
1316 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1317 8, 3, 2, 0, 3,
1318 30,
1319 OPC_CheckChild1Integer, 34|128,2,
1320 OPC_CheckPredicate, 13,
1321 OPC_MoveSibling1,
1322 OPC_CheckValueType, 7,
1323 OPC_MoveParent,
1324 OPC_CheckPatternPredicate6,
1325 OPC_EmitInteger64, 6,
1326 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1327 8, 3, 0, 0, 1,
1328 OPC_EmitInteger64, 8,
1329 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1330 8, 3, 2, 0, 3,
1331 29,
1332 OPC_CheckChild1Integer, 70,
1333 OPC_CheckPredicate, 13,
1334 OPC_MoveSibling1,
1335 OPC_CheckValueType, 7,
1336 OPC_MoveParent,
1337 OPC_CheckPatternPredicate6,
1338 OPC_EmitInteger64, 8,
1339 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1340 8, 3, 0, 0, 1,
1341 OPC_EmitInteger64, 2,
1342 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1343 8, 3, 2, 0, 3,
1344 30,
1345 OPC_CheckChild1Integer, 10|128,1,
1346 OPC_CheckPredicate, 13,
1347 OPC_MoveSibling1,
1348 OPC_CheckValueType, 7,
1349 OPC_MoveParent,
1350 OPC_CheckPatternPredicate6,
1351 OPC_EmitInteger64, 8,
1352 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1353 8, 3, 0, 0, 1,
1354 OPC_EmitInteger64, 4,
1355 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1356 8, 3, 2, 0, 3,
1357 30,
1358 OPC_CheckChild1Integer, 18|128,2,
1359 OPC_CheckPredicate, 13,
1360 OPC_MoveSibling1,
1361 OPC_CheckValueType, 7,
1362 OPC_MoveParent,
1363 OPC_CheckPatternPredicate6,
1364 OPC_EmitInteger64, 8,
1365 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1366 8, 3, 0, 0, 1,
1367 OPC_EmitInteger64, 6,
1368 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1369 8, 3, 2, 0, 3,
1370 30,
1371 OPC_CheckChild1Integer, 34|128,4,
1372 OPC_CheckPredicate, 13,
1373 OPC_MoveSibling1,
1374 OPC_CheckValueType, 7,
1375 OPC_MoveParent,
1376 OPC_CheckPatternPredicate6,
1377 OPC_EmitInteger64, 8,
1378 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1379 8, 3, 0, 0, 1,
1380 OPC_EmitInteger64, 8,
1381 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1382 8, 3, 2, 0, 3,
1383 39,
1384 OPC_CheckChild1Integer, 18,
1385 OPC_CheckPredicate, 13,
1386 OPC_MoveSibling1,
1387 OPC_CheckValueType, 7,
1388 OPC_MoveParent,
1389 OPC_CheckPatternPredicate6,
1390 OPC_EmitInteger64, 2,
1391 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1392 8, 3, 0, 0, 1,
1393 OPC_EmitInteger64, 2,
1394 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1395 8, 3, 0, 0, 3,
1396 OPC_EmitInteger64, 2,
1397 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1398 8, 3, 2, 4, 5,
1399 73,
1400 OPC_CheckChild1Integer, 30,
1401 OPC_CheckPredicate, 13,
1402 OPC_MoveSibling1,
1403 OPC_CheckValueType, 7,
1404 OPC_MoveParent,
1405 OPC_CheckPatternPredicate6,
1406 OPC_Scope, 30,
1407 OPC_EmitInteger64, 2,
1408 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1409 8, 3, 0, 0, 1,
1410 OPC_EmitInteger64, 2,
1411 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1412 8, 3, 0, 0, 3,
1413 OPC_EmitInteger64, 4,
1414 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1415 8, 3, 2, 4, 5,
1416 30,
1417 OPC_EmitInteger64, 4,
1418 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1419 8, 3, 0, 0, 1,
1420 OPC_EmitInteger64, 4,
1421 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1422 8, 3, 0, 0, 3,
1423 OPC_EmitInteger64, 2,
1424 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1425 8, 3, 2, 4, 5,
1426 0,
1427 73,
1428 OPC_CheckChild1Integer, 54,
1429 OPC_CheckPredicate, 13,
1430 OPC_MoveSibling1,
1431 OPC_CheckValueType, 7,
1432 OPC_MoveParent,
1433 OPC_CheckPatternPredicate6,
1434 OPC_Scope, 30,
1435 OPC_EmitInteger64, 2,
1436 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1437 8, 3, 0, 0, 1,
1438 OPC_EmitInteger64, 2,
1439 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1440 8, 3, 0, 0, 3,
1441 OPC_EmitInteger64, 6,
1442 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1443 8, 3, 2, 4, 5,
1444 30,
1445 OPC_EmitInteger64, 6,
1446 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1447 8, 3, 0, 0, 1,
1448 OPC_EmitInteger64, 6,
1449 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1450 8, 3, 0, 0, 3,
1451 OPC_EmitInteger64, 2,
1452 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1453 8, 3, 2, 4, 5,
1454 0,
1455 73,
1456 OPC_CheckChild1Integer, 102,
1457 OPC_CheckPredicate, 13,
1458 OPC_MoveSibling1,
1459 OPC_CheckValueType, 7,
1460 OPC_MoveParent,
1461 OPC_CheckPatternPredicate6,
1462 OPC_Scope, 30,
1463 OPC_EmitInteger64, 2,
1464 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1465 8, 3, 0, 0, 1,
1466 OPC_EmitInteger64, 2,
1467 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1468 8, 3, 0, 0, 3,
1469 OPC_EmitInteger64, 8,
1470 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1471 8, 3, 2, 4, 5,
1472 30,
1473 OPC_EmitInteger64, 8,
1474 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1475 8, 3, 0, 0, 1,
1476 OPC_EmitInteger64, 8,
1477 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1478 8, 3, 0, 0, 3,
1479 OPC_EmitInteger64, 2,
1480 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1481 8, 3, 2, 4, 5,
1482 0,
1483 73,
1484 OPC_CheckChild1Integer, 90,
1485 OPC_CheckPredicate, 13,
1486 OPC_MoveSibling1,
1487 OPC_CheckValueType, 7,
1488 OPC_MoveParent,
1489 OPC_CheckPatternPredicate6,
1490 OPC_Scope, 30,
1491 OPC_EmitInteger64, 4,
1492 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1493 8, 3, 0, 0, 1,
1494 OPC_EmitInteger64, 4,
1495 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1496 8, 3, 0, 0, 3,
1497 OPC_EmitInteger64, 6,
1498 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1499 8, 3, 2, 4, 5,
1500 30,
1501 OPC_EmitInteger64, 6,
1502 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1503 8, 3, 0, 0, 1,
1504 OPC_EmitInteger64, 6,
1505 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1506 8, 3, 0, 0, 3,
1507 OPC_EmitInteger64, 4,
1508 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1509 8, 3, 2, 4, 5,
1510 0,
1511 74,
1512 OPC_CheckChild1Integer, 42|128,1,
1513 OPC_CheckPredicate, 13,
1514 OPC_MoveSibling1,
1515 OPC_CheckValueType, 7,
1516 OPC_MoveParent,
1517 OPC_CheckPatternPredicate6,
1518 OPC_Scope, 30,
1519 OPC_EmitInteger64, 4,
1520 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1521 8, 3, 0, 0, 1,
1522 OPC_EmitInteger64, 4,
1523 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1524 8, 3, 0, 0, 3,
1525 OPC_EmitInteger64, 8,
1526 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1527 8, 3, 2, 4, 5,
1528 30,
1529 OPC_EmitInteger64, 8,
1530 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1531 8, 3, 0, 0, 1,
1532 OPC_EmitInteger64, 8,
1533 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1534 8, 3, 0, 0, 3,
1535 OPC_EmitInteger64, 4,
1536 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1537 8, 3, 2, 4, 5,
1538 0,
1539 74,
1540 OPC_CheckChild1Integer, 50|128,2,
1541 OPC_CheckPredicate, 13,
1542 OPC_MoveSibling1,
1543 OPC_CheckValueType, 7,
1544 OPC_MoveParent,
1545 OPC_CheckPatternPredicate6,
1546 OPC_Scope, 30,
1547 OPC_EmitInteger64, 6,
1548 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1549 8, 3, 0, 0, 1,
1550 OPC_EmitInteger64, 6,
1551 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1552 8, 3, 0, 0, 3,
1553 OPC_EmitInteger64, 8,
1554 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1555 8, 3, 2, 4, 5,
1556 30,
1557 OPC_EmitInteger64, 8,
1558 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1559 8, 3, 0, 0, 1,
1560 OPC_EmitInteger64, 8,
1561 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1562 8, 3, 0, 0, 3,
1563 OPC_EmitInteger64, 6,
1564 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1565 8, 3, 2, 4, 5,
1566 0,
1567 40,
1568 OPC_CheckChild1Integer, 66|128,4,
1569 OPC_CheckPredicate, 13,
1570 OPC_MoveSibling1,
1571 OPC_CheckValueType, 7,
1572 OPC_MoveParent,
1573 OPC_CheckPatternPredicate6,
1574 OPC_EmitInteger64, 8,
1575 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1576 8, 3, 0, 0, 1,
1577 OPC_EmitInteger64, 8,
1578 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1579 8, 3, 0, 0, 3,
1580 OPC_EmitInteger64, 8,
1581 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
1582 8, 3, 2, 4, 5,
1583 36,
1584 OPC_RecordChild1,
1585 OPC_MoveChild1,
1586 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1587 OPC_CheckPredicate, 57,
1588 OPC_MoveParent,
1589 OPC_MoveSibling1,
1590 OPC_CheckValueType, 7,
1591 OPC_MoveParent,
1592 OPC_CheckPatternPredicate6,
1593 OPC_EmitConvertToTarget1,
1594 OPC_EmitNodeXForm, 0, 2,
1595 OPC_EmitNode1None, TARGET_VAL(LoongArch::ALSL_W),
1596 8, 3, 0, 0, 3,
1597 OPC_EmitConvertToTarget1,
1598 OPC_EmitNodeXForm, 1, 5,
1599 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLLI_W),
1600 8, 2, 4, 6,
1601 0,
1602 23, TARGET_VAL(ISD::ROTR),
1603 OPC_RecordChild0,
1604 OPC_RecordChild1,
1605 OPC_MoveChild1,
1606 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1607 OPC_CheckPredicate, 25,
1608 OPC_CheckTypeI64,
1609 OPC_MoveParent,
1610 OPC_MoveSibling1,
1611 OPC_CheckValueType, 7,
1612 OPC_MoveParent,
1613 OPC_CheckPatternPredicate6,
1614 OPC_EmitConvertToTarget1,
1615 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTRI_W),
1616 8, 2, 0, 2,
1617 0,
1618 70,
1619 OPC_RecordChild0,
1620 OPC_MoveChild1,
1621 OPC_Scope, 25,
1622 OPC_CheckValueType, 5,
1623 OPC_MoveParent,
1624 OPC_SwitchType , 8, 8,
1625 OPC_CheckPatternPredicate, 23,
1626 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::EXT_W_B),
1627 8, 1, 0,
1628 8, 7,
1629 OPC_CheckPatternPredicate, 24,
1630 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::EXT_W_B),
1631 7, 1, 0,
1632 0,
1633 25,
1634 OPC_CheckValueType, 6,
1635 OPC_MoveParent,
1636 OPC_SwitchType , 8, 8,
1637 OPC_CheckPatternPredicate, 23,
1638 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::EXT_W_H),
1639 8, 1, 0,
1640 8, 7,
1641 OPC_CheckPatternPredicate, 24,
1642 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::EXT_W_H),
1643 7, 1, 0,
1644 0,
1645 13,
1646 OPC_CheckValueType, 7,
1647 OPC_MoveParent,
1648 OPC_CheckPatternPredicate6,
1649 OPC_EmitInteger64, 0,
1650 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_W),
1651 8, 2, 0, 1,
1652 0,
1653 0,
1654 97, TARGET_VAL(ISD::PREFETCH),
1655 OPC_RecordMemRef,
1656 OPC_RecordNode,
1657 OPC_RecordChild1,
1658 OPC_Scope, 45,
1659 OPC_CheckChild2Integer, 0,
1660 OPC_CheckChild2TypeI32,
1661 OPC_MoveChild3,
1662 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
1663 OPC_MoveParent,
1664 OPC_CheckChild4Integer, 2,
1665 OPC_Scope, 15,
1666 OPC_CheckPatternPredicate7,
1667 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
1668 OPC_EmitMergeInputChains1_0,
1669 OPC_EmitInteger64, 0,
1670 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PRELD), 0|OPFL_Chain|OPFL_MemRefs,
1671 3, 4, 2, 3,
1672 16,
1673 OPC_CheckPatternPredicate, 8,
1674 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
1675 OPC_EmitMergeInputChains1_0,
1676 OPC_EmitInteger32, 0,
1677 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PRELD), 0|OPFL_Chain|OPFL_MemRefs,
1678 3, 4, 2, 3,
1679 0,
1680 45,
1681 OPC_CheckChild2Integer, 2,
1682 OPC_CheckChild2TypeI32,
1683 OPC_MoveChild3,
1684 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
1685 OPC_MoveParent,
1686 OPC_CheckChild4Integer, 2,
1687 OPC_Scope, 15,
1688 OPC_CheckPatternPredicate7,
1689 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
1690 OPC_EmitMergeInputChains1_0,
1691 OPC_EmitInteger64, 16,
1692 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PRELD), 0|OPFL_Chain|OPFL_MemRefs,
1693 3, 4, 2, 3,
1694 16,
1695 OPC_CheckPatternPredicate, 8,
1696 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
1697 OPC_EmitMergeInputChains1_0,
1698 OPC_EmitInteger32, 16,
1699 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PRELD), 0|OPFL_Chain|OPFL_MemRefs,
1700 3, 4, 2, 3,
1701 0,
1702 0,
1703 126|128,59, TARGET_VAL(ISD::STORE),
1704 OPC_RecordMemRef,
1705 OPC_RecordNode,
1706 OPC_Scope, 45|128,19,
1707 OPC_MoveChild1,
1708 OPC_CheckOpcode, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
1709 OPC_RecordChild0,
1710 OPC_Scope, 81|128,1,
1711 OPC_CheckChild0Type, 40,
1712 OPC_RecordChild1,
1713 OPC_MoveChild1,
1714 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1715 OPC_CheckPredicate, 27,
1716 OPC_SwitchType , 97, 8,
1717 OPC_MoveParent,
1718 OPC_CheckTypeI64,
1719 OPC_Scope, 71,
1720 OPC_MoveSibling2,
1721 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
1722 OPC_RecordChild0,
1723 OPC_RecordChild1,
1724 OPC_MoveChild1,
1725 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1726 OPC_CheckPredicate, 38,
1727 OPC_MoveParent,
1728 OPC_CheckPredicate3,
1729 OPC_CheckTypeI64,
1730 OPC_MoveParent,
1731 OPC_CheckPredicate0,
1732 OPC_CheckPredicate, 9,
1733 OPC_CheckPredicate4,
1734 OPC_CheckPatternPredicate2,
1735 OPC_CheckComplexPat0, /*#*/3,
1736 OPC_EmitMergeInputChains1_0,
1737 OPC_EmitConvertToTarget4,
1738 OPC_EmitConvertToTarget2,
1739 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
1740 4, 1, 5, 6, 7,
1741 31, TARGET_VAL(ISD::OR),
1742 OPC_RecordChild0,
1743 OPC_RecordChild1,
1744 OPC_MoveChild1,
1745 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1746 OPC_CheckPredicate, 38,
1747 OPC_MoveParent,
1748 OPC_CheckPredicate3,
1749 OPC_CheckTypeI64,
1750 OPC_MoveParent,
1751 OPC_CheckPredicate0,
1752 OPC_CheckPredicate, 9,
1753 OPC_CheckPredicate4,
1754 OPC_CheckPatternPredicate2,
1755 OPC_CheckComplexPat0, /*#*/3,
1756 OPC_EmitMergeInputChains1_0,
1757 OPC_EmitConvertToTarget4,
1758 OPC_EmitConvertToTarget2,
1759 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
1760 4, 1, 5, 6, 7,
1761 0,
1762 20,
1763 OPC_MoveParent,
1764 OPC_RecordChild2,
1765 OPC_CheckPredicate0,
1766 OPC_CheckPredicate, 9,
1767 OPC_CheckPredicate4,
1768 OPC_CheckPatternPredicate2,
1769 OPC_CheckComplexPat2, /*#*/3,
1770 OPC_EmitMergeInputChains1_0,
1771 OPC_EmitConvertToTarget2,
1772 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
1773 4, 1, 4, 5, 6,
1774 0,
1775 97, 7,
1776 OPC_MoveParent,
1777 OPC_CheckTypeI64,
1778 OPC_Scope, 71,
1779 OPC_MoveSibling2,
1780 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
1781 OPC_RecordChild0,
1782 OPC_RecordChild1,
1783 OPC_MoveChild1,
1784 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1785 OPC_CheckPredicate, 38,
1786 OPC_MoveParent,
1787 OPC_CheckPredicate3,
1788 OPC_CheckTypeI32,
1789 OPC_MoveParent,
1790 OPC_CheckPredicate0,
1791 OPC_CheckPredicate, 9,
1792 OPC_CheckPredicate4,
1793 OPC_CheckPatternPredicate4,
1794 OPC_CheckComplexPat0, /*#*/3,
1795 OPC_EmitMergeInputChains1_0,
1796 OPC_EmitConvertToTarget4,
1797 OPC_EmitConvertToTarget2,
1798 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
1799 4, 1, 5, 6, 7,
1800 31, TARGET_VAL(ISD::OR),
1801 OPC_RecordChild0,
1802 OPC_RecordChild1,
1803 OPC_MoveChild1,
1804 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1805 OPC_CheckPredicate, 38,
1806 OPC_MoveParent,
1807 OPC_CheckPredicate3,
1808 OPC_CheckTypeI32,
1809 OPC_MoveParent,
1810 OPC_CheckPredicate0,
1811 OPC_CheckPredicate, 9,
1812 OPC_CheckPredicate4,
1813 OPC_CheckPatternPredicate4,
1814 OPC_CheckComplexPat0, /*#*/3,
1815 OPC_EmitMergeInputChains1_0,
1816 OPC_EmitConvertToTarget4,
1817 OPC_EmitConvertToTarget2,
1818 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
1819 4, 1, 5, 6, 7,
1820 0,
1821 20,
1822 OPC_MoveParent,
1823 OPC_RecordChild2,
1824 OPC_CheckPredicate0,
1825 OPC_CheckPredicate, 9,
1826 OPC_CheckPredicate4,
1827 OPC_CheckPatternPredicate4,
1828 OPC_CheckComplexPat2, /*#*/3,
1829 OPC_EmitMergeInputChains1_0,
1830 OPC_EmitConvertToTarget2,
1831 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
1832 4, 1, 4, 5, 6,
1833 0,
1834 0,
1835 81|128,1,
1836 OPC_CheckChild0Type, 51,
1837 OPC_RecordChild1,
1838 OPC_MoveChild1,
1839 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1840 OPC_CheckPredicate, 19,
1841 OPC_SwitchType , 97, 8,
1842 OPC_MoveParent,
1843 OPC_CheckTypeI64,
1844 OPC_Scope, 71,
1845 OPC_MoveSibling2,
1846 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
1847 OPC_RecordChild0,
1848 OPC_RecordChild1,
1849 OPC_MoveChild1,
1850 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1851 OPC_CheckPredicate, 39,
1852 OPC_MoveParent,
1853 OPC_CheckPredicate3,
1854 OPC_CheckTypeI64,
1855 OPC_MoveParent,
1856 OPC_CheckPredicate0,
1857 OPC_CheckPredicate, 9,
1858 OPC_CheckPredicate5,
1859 OPC_CheckPatternPredicate2,
1860 OPC_CheckComplexPat0, /*#*/3,
1861 OPC_EmitMergeInputChains1_0,
1862 OPC_EmitConvertToTarget4,
1863 OPC_EmitConvertToTarget2,
1864 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
1865 4, 1, 5, 6, 7,
1866 31, TARGET_VAL(ISD::OR),
1867 OPC_RecordChild0,
1868 OPC_RecordChild1,
1869 OPC_MoveChild1,
1870 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1871 OPC_CheckPredicate, 39,
1872 OPC_MoveParent,
1873 OPC_CheckPredicate3,
1874 OPC_CheckTypeI64,
1875 OPC_MoveParent,
1876 OPC_CheckPredicate0,
1877 OPC_CheckPredicate, 9,
1878 OPC_CheckPredicate5,
1879 OPC_CheckPatternPredicate2,
1880 OPC_CheckComplexPat0, /*#*/3,
1881 OPC_EmitMergeInputChains1_0,
1882 OPC_EmitConvertToTarget4,
1883 OPC_EmitConvertToTarget2,
1884 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
1885 4, 1, 5, 6, 7,
1886 0,
1887 20,
1888 OPC_MoveParent,
1889 OPC_RecordChild2,
1890 OPC_CheckPredicate0,
1891 OPC_CheckPredicate, 9,
1892 OPC_CheckPredicate5,
1893 OPC_CheckPatternPredicate2,
1894 OPC_CheckComplexPat2, /*#*/3,
1895 OPC_EmitMergeInputChains1_0,
1896 OPC_EmitConvertToTarget2,
1897 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
1898 4, 1, 4, 5, 6,
1899 0,
1900 97, 7,
1901 OPC_MoveParent,
1902 OPC_CheckTypeI64,
1903 OPC_Scope, 71,
1904 OPC_MoveSibling2,
1905 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
1906 OPC_RecordChild0,
1907 OPC_RecordChild1,
1908 OPC_MoveChild1,
1909 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1910 OPC_CheckPredicate, 39,
1911 OPC_MoveParent,
1912 OPC_CheckPredicate3,
1913 OPC_CheckTypeI32,
1914 OPC_MoveParent,
1915 OPC_CheckPredicate0,
1916 OPC_CheckPredicate, 9,
1917 OPC_CheckPredicate5,
1918 OPC_CheckPatternPredicate4,
1919 OPC_CheckComplexPat0, /*#*/3,
1920 OPC_EmitMergeInputChains1_0,
1921 OPC_EmitConvertToTarget4,
1922 OPC_EmitConvertToTarget2,
1923 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
1924 4, 1, 5, 6, 7,
1925 31, TARGET_VAL(ISD::OR),
1926 OPC_RecordChild0,
1927 OPC_RecordChild1,
1928 OPC_MoveChild1,
1929 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1930 OPC_CheckPredicate, 39,
1931 OPC_MoveParent,
1932 OPC_CheckPredicate3,
1933 OPC_CheckTypeI32,
1934 OPC_MoveParent,
1935 OPC_CheckPredicate0,
1936 OPC_CheckPredicate, 9,
1937 OPC_CheckPredicate5,
1938 OPC_CheckPatternPredicate4,
1939 OPC_CheckComplexPat0, /*#*/3,
1940 OPC_EmitMergeInputChains1_0,
1941 OPC_EmitConvertToTarget4,
1942 OPC_EmitConvertToTarget2,
1943 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
1944 4, 1, 5, 6, 7,
1945 0,
1946 20,
1947 OPC_MoveParent,
1948 OPC_RecordChild2,
1949 OPC_CheckPredicate0,
1950 OPC_CheckPredicate, 9,
1951 OPC_CheckPredicate5,
1952 OPC_CheckPatternPredicate4,
1953 OPC_CheckComplexPat2, /*#*/3,
1954 OPC_EmitMergeInputChains1_0,
1955 OPC_EmitConvertToTarget2,
1956 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
1957 4, 1, 4, 5, 6,
1958 0,
1959 0,
1960 81|128,1,
1961 OPC_CheckChild0Type, 62,
1962 OPC_RecordChild1,
1963 OPC_MoveChild1,
1964 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1965 OPC_CheckPredicate, 18,
1966 OPC_SwitchType , 97, 8,
1967 OPC_MoveParent,
1968 OPC_CheckTypeI64,
1969 OPC_Scope, 71,
1970 OPC_MoveSibling2,
1971 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
1972 OPC_RecordChild0,
1973 OPC_RecordChild1,
1974 OPC_MoveChild1,
1975 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1976 OPC_CheckPredicate, 30,
1977 OPC_MoveParent,
1978 OPC_CheckPredicate3,
1979 OPC_CheckTypeI64,
1980 OPC_MoveParent,
1981 OPC_CheckPredicate0,
1982 OPC_CheckPredicate, 9,
1983 OPC_CheckPredicate2,
1984 OPC_CheckPatternPredicate2,
1985 OPC_CheckComplexPat0, /*#*/3,
1986 OPC_EmitMergeInputChains1_0,
1987 OPC_EmitConvertToTarget4,
1988 OPC_EmitConvertToTarget2,
1989 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
1990 4, 1, 5, 6, 7,
1991 31, TARGET_VAL(ISD::OR),
1992 OPC_RecordChild0,
1993 OPC_RecordChild1,
1994 OPC_MoveChild1,
1995 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1996 OPC_CheckPredicate, 30,
1997 OPC_MoveParent,
1998 OPC_CheckPredicate3,
1999 OPC_CheckTypeI64,
2000 OPC_MoveParent,
2001 OPC_CheckPredicate0,
2002 OPC_CheckPredicate, 9,
2003 OPC_CheckPredicate2,
2004 OPC_CheckPatternPredicate2,
2005 OPC_CheckComplexPat0, /*#*/3,
2006 OPC_EmitMergeInputChains1_0,
2007 OPC_EmitConvertToTarget4,
2008 OPC_EmitConvertToTarget2,
2009 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2010 4, 1, 5, 6, 7,
2011 0,
2012 20,
2013 OPC_MoveParent,
2014 OPC_RecordChild2,
2015 OPC_CheckPredicate0,
2016 OPC_CheckPredicate, 9,
2017 OPC_CheckPredicate2,
2018 OPC_CheckPatternPredicate2,
2019 OPC_CheckComplexPat2, /*#*/3,
2020 OPC_EmitMergeInputChains1_0,
2021 OPC_EmitConvertToTarget2,
2022 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2023 4, 1, 4, 5, 6,
2024 0,
2025 97, 7,
2026 OPC_MoveParent,
2027 OPC_CheckTypeI64,
2028 OPC_Scope, 71,
2029 OPC_MoveSibling2,
2030 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
2031 OPC_RecordChild0,
2032 OPC_RecordChild1,
2033 OPC_MoveChild1,
2034 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2035 OPC_CheckPredicate, 30,
2036 OPC_MoveParent,
2037 OPC_CheckPredicate3,
2038 OPC_CheckTypeI32,
2039 OPC_MoveParent,
2040 OPC_CheckPredicate0,
2041 OPC_CheckPredicate, 9,
2042 OPC_CheckPredicate2,
2043 OPC_CheckPatternPredicate4,
2044 OPC_CheckComplexPat0, /*#*/3,
2045 OPC_EmitMergeInputChains1_0,
2046 OPC_EmitConvertToTarget4,
2047 OPC_EmitConvertToTarget2,
2048 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2049 4, 1, 5, 6, 7,
2050 31, TARGET_VAL(ISD::OR),
2051 OPC_RecordChild0,
2052 OPC_RecordChild1,
2053 OPC_MoveChild1,
2054 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2055 OPC_CheckPredicate, 30,
2056 OPC_MoveParent,
2057 OPC_CheckPredicate3,
2058 OPC_CheckTypeI32,
2059 OPC_MoveParent,
2060 OPC_CheckPredicate0,
2061 OPC_CheckPredicate, 9,
2062 OPC_CheckPredicate2,
2063 OPC_CheckPatternPredicate4,
2064 OPC_CheckComplexPat0, /*#*/3,
2065 OPC_EmitMergeInputChains1_0,
2066 OPC_EmitConvertToTarget4,
2067 OPC_EmitConvertToTarget2,
2068 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2069 4, 1, 5, 6, 7,
2070 0,
2071 20,
2072 OPC_MoveParent,
2073 OPC_RecordChild2,
2074 OPC_CheckPredicate0,
2075 OPC_CheckPredicate, 9,
2076 OPC_CheckPredicate2,
2077 OPC_CheckPatternPredicate4,
2078 OPC_CheckComplexPat2, /*#*/3,
2079 OPC_EmitMergeInputChains1_0,
2080 OPC_EmitConvertToTarget2,
2081 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2082 4, 1, 4, 5, 6,
2083 0,
2084 0,
2085 69|128,1,
2086 OPC_CheckChild0Type, 81,
2087 OPC_RecordChild1,
2088 OPC_MoveChild1,
2089 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2090 OPC_CheckPredicate, 34,
2091 OPC_SwitchType , 91, 8,
2092 OPC_MoveParent,
2093 OPC_CheckTypeI64,
2094 OPC_Scope, 67,
2095 OPC_MoveSibling2,
2096 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
2097 OPC_RecordChild0,
2098 OPC_RecordChild1,
2099 OPC_MoveChild1,
2100 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2101 OPC_CheckPredicate, 31,
2102 OPC_MoveParent,
2103 OPC_CheckPredicate3,
2104 OPC_CheckTypeI64,
2105 OPC_MoveParent,
2106 OPC_CheckPredicate0,
2107 OPC_CheckPredicate1,
2108 OPC_CheckPatternPredicate2,
2109 OPC_CheckComplexPat0, /*#*/3,
2110 OPC_EmitMergeInputChains1_0,
2111 OPC_EmitConvertToTarget4,
2112 OPC_EmitConvertToTarget2,
2113 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2114 4, 1, 5, 6, 7,
2115 29, TARGET_VAL(ISD::OR),
2116 OPC_RecordChild0,
2117 OPC_RecordChild1,
2118 OPC_MoveChild1,
2119 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2120 OPC_CheckPredicate, 31,
2121 OPC_MoveParent,
2122 OPC_CheckPredicate3,
2123 OPC_CheckTypeI64,
2124 OPC_MoveParent,
2125 OPC_CheckPredicate0,
2126 OPC_CheckPredicate1,
2127 OPC_CheckPatternPredicate2,
2128 OPC_CheckComplexPat0, /*#*/3,
2129 OPC_EmitMergeInputChains1_0,
2130 OPC_EmitConvertToTarget4,
2131 OPC_EmitConvertToTarget2,
2132 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2133 4, 1, 5, 6, 7,
2134 0,
2135 18,
2136 OPC_MoveParent,
2137 OPC_RecordChild2,
2138 OPC_CheckPredicate0,
2139 OPC_CheckPredicate1,
2140 OPC_CheckPatternPredicate2,
2141 OPC_CheckComplexPat2, /*#*/3,
2142 OPC_EmitMergeInputChains1_0,
2143 OPC_EmitConvertToTarget2,
2144 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2145 4, 1, 4, 5, 6,
2146 0,
2147 91, 7,
2148 OPC_MoveParent,
2149 OPC_CheckTypeI64,
2150 OPC_Scope, 67,
2151 OPC_MoveSibling2,
2152 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
2153 OPC_RecordChild0,
2154 OPC_RecordChild1,
2155 OPC_MoveChild1,
2156 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2157 OPC_CheckPredicate, 31,
2158 OPC_MoveParent,
2159 OPC_CheckPredicate3,
2160 OPC_CheckTypeI32,
2161 OPC_MoveParent,
2162 OPC_CheckPredicate0,
2163 OPC_CheckPredicate1,
2164 OPC_CheckPatternPredicate4,
2165 OPC_CheckComplexPat0, /*#*/3,
2166 OPC_EmitMergeInputChains1_0,
2167 OPC_EmitConvertToTarget4,
2168 OPC_EmitConvertToTarget2,
2169 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2170 4, 1, 5, 6, 7,
2171 29, TARGET_VAL(ISD::OR),
2172 OPC_RecordChild0,
2173 OPC_RecordChild1,
2174 OPC_MoveChild1,
2175 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2176 OPC_CheckPredicate, 31,
2177 OPC_MoveParent,
2178 OPC_CheckPredicate3,
2179 OPC_CheckTypeI32,
2180 OPC_MoveParent,
2181 OPC_CheckPredicate0,
2182 OPC_CheckPredicate1,
2183 OPC_CheckPatternPredicate4,
2184 OPC_CheckComplexPat0, /*#*/3,
2185 OPC_EmitMergeInputChains1_0,
2186 OPC_EmitConvertToTarget4,
2187 OPC_EmitConvertToTarget2,
2188 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2189 4, 1, 5, 6, 7,
2190 0,
2191 18,
2192 OPC_MoveParent,
2193 OPC_RecordChild2,
2194 OPC_CheckPredicate0,
2195 OPC_CheckPredicate1,
2196 OPC_CheckPatternPredicate4,
2197 OPC_CheckComplexPat2, /*#*/3,
2198 OPC_EmitMergeInputChains1_0,
2199 OPC_EmitConvertToTarget2,
2200 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2201 4, 1, 4, 5, 6,
2202 0,
2203 0,
2204 71|128,1,
2205 OPC_CheckChild0Type, 116,
2206 OPC_RecordChild1,
2207 OPC_MoveChild1,
2208 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2209 OPC_CheckPredicate, 18,
2210 OPC_SwitchType , 92, 8,
2211 OPC_MoveParent,
2212 OPC_CheckType, 12,
2213 OPC_Scope, 67,
2214 OPC_MoveSibling2,
2215 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
2216 OPC_RecordChild0,
2217 OPC_RecordChild1,
2218 OPC_MoveChild1,
2219 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2220 OPC_CheckPredicate, 30,
2221 OPC_MoveParent,
2222 OPC_CheckPredicate3,
2223 OPC_CheckTypeI64,
2224 OPC_MoveParent,
2225 OPC_CheckPredicate0,
2226 OPC_CheckPredicate1,
2227 OPC_CheckPatternPredicate2,
2228 OPC_CheckComplexPat0, /*#*/3,
2229 OPC_EmitMergeInputChains1_0,
2230 OPC_EmitConvertToTarget4,
2231 OPC_EmitConvertToTarget2,
2232 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2233 4, 1, 5, 6, 7,
2234 29, TARGET_VAL(ISD::OR),
2235 OPC_RecordChild0,
2236 OPC_RecordChild1,
2237 OPC_MoveChild1,
2238 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2239 OPC_CheckPredicate, 30,
2240 OPC_MoveParent,
2241 OPC_CheckPredicate3,
2242 OPC_CheckTypeI64,
2243 OPC_MoveParent,
2244 OPC_CheckPredicate0,
2245 OPC_CheckPredicate1,
2246 OPC_CheckPatternPredicate2,
2247 OPC_CheckComplexPat0, /*#*/3,
2248 OPC_EmitMergeInputChains1_0,
2249 OPC_EmitConvertToTarget4,
2250 OPC_EmitConvertToTarget2,
2251 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2252 4, 1, 5, 6, 7,
2253 0,
2254 18,
2255 OPC_MoveParent,
2256 OPC_RecordChild2,
2257 OPC_CheckPredicate0,
2258 OPC_CheckPredicate1,
2259 OPC_CheckPatternPredicate2,
2260 OPC_CheckComplexPat2, /*#*/3,
2261 OPC_EmitMergeInputChains1_0,
2262 OPC_EmitConvertToTarget2,
2263 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2264 4, 1, 4, 5, 6,
2265 0,
2266 92, 7,
2267 OPC_MoveParent,
2268 OPC_CheckType, 12,
2269 OPC_Scope, 67,
2270 OPC_MoveSibling2,
2271 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
2272 OPC_RecordChild0,
2273 OPC_RecordChild1,
2274 OPC_MoveChild1,
2275 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2276 OPC_CheckPredicate, 30,
2277 OPC_MoveParent,
2278 OPC_CheckPredicate3,
2279 OPC_CheckTypeI32,
2280 OPC_MoveParent,
2281 OPC_CheckPredicate0,
2282 OPC_CheckPredicate1,
2283 OPC_CheckPatternPredicate4,
2284 OPC_CheckComplexPat0, /*#*/3,
2285 OPC_EmitMergeInputChains1_0,
2286 OPC_EmitConvertToTarget4,
2287 OPC_EmitConvertToTarget2,
2288 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2289 4, 1, 5, 6, 7,
2290 29, TARGET_VAL(ISD::OR),
2291 OPC_RecordChild0,
2292 OPC_RecordChild1,
2293 OPC_MoveChild1,
2294 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2295 OPC_CheckPredicate, 30,
2296 OPC_MoveParent,
2297 OPC_CheckPredicate3,
2298 OPC_CheckTypeI32,
2299 OPC_MoveParent,
2300 OPC_CheckPredicate0,
2301 OPC_CheckPredicate1,
2302 OPC_CheckPatternPredicate4,
2303 OPC_CheckComplexPat0, /*#*/3,
2304 OPC_EmitMergeInputChains1_0,
2305 OPC_EmitConvertToTarget4,
2306 OPC_EmitConvertToTarget2,
2307 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2308 4, 1, 5, 6, 7,
2309 0,
2310 18,
2311 OPC_MoveParent,
2312 OPC_RecordChild2,
2313 OPC_CheckPredicate0,
2314 OPC_CheckPredicate1,
2315 OPC_CheckPatternPredicate4,
2316 OPC_CheckComplexPat2, /*#*/3,
2317 OPC_EmitMergeInputChains1_0,
2318 OPC_EmitConvertToTarget2,
2319 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2320 4, 1, 4, 5, 6,
2321 0,
2322 0,
2323 72|128,1,
2324 OPC_CheckChild0Type, 6|128,1,
2325 OPC_RecordChild1,
2326 OPC_MoveChild1,
2327 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2328 OPC_CheckPredicate, 34,
2329 OPC_SwitchType , 92, 8,
2330 OPC_MoveParent,
2331 OPC_CheckType, 13,
2332 OPC_Scope, 67,
2333 OPC_MoveSibling2,
2334 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
2335 OPC_RecordChild0,
2336 OPC_RecordChild1,
2337 OPC_MoveChild1,
2338 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2339 OPC_CheckPredicate, 31,
2340 OPC_MoveParent,
2341 OPC_CheckPredicate3,
2342 OPC_CheckTypeI64,
2343 OPC_MoveParent,
2344 OPC_CheckPredicate0,
2345 OPC_CheckPredicate1,
2346 OPC_CheckPatternPredicate2,
2347 OPC_CheckComplexPat0, /*#*/3,
2348 OPC_EmitMergeInputChains1_0,
2349 OPC_EmitConvertToTarget4,
2350 OPC_EmitConvertToTarget2,
2351 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2352 4, 1, 5, 6, 7,
2353 29, TARGET_VAL(ISD::OR),
2354 OPC_RecordChild0,
2355 OPC_RecordChild1,
2356 OPC_MoveChild1,
2357 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2358 OPC_CheckPredicate, 31,
2359 OPC_MoveParent,
2360 OPC_CheckPredicate3,
2361 OPC_CheckTypeI64,
2362 OPC_MoveParent,
2363 OPC_CheckPredicate0,
2364 OPC_CheckPredicate1,
2365 OPC_CheckPatternPredicate2,
2366 OPC_CheckComplexPat0, /*#*/3,
2367 OPC_EmitMergeInputChains1_0,
2368 OPC_EmitConvertToTarget4,
2369 OPC_EmitConvertToTarget2,
2370 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2371 4, 1, 5, 6, 7,
2372 0,
2373 18,
2374 OPC_MoveParent,
2375 OPC_RecordChild2,
2376 OPC_CheckPredicate0,
2377 OPC_CheckPredicate1,
2378 OPC_CheckPatternPredicate2,
2379 OPC_CheckComplexPat2, /*#*/3,
2380 OPC_EmitMergeInputChains1_0,
2381 OPC_EmitConvertToTarget2,
2382 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2383 4, 1, 4, 5, 6,
2384 0,
2385 92, 7,
2386 OPC_MoveParent,
2387 OPC_CheckType, 13,
2388 OPC_Scope, 67,
2389 OPC_MoveSibling2,
2390 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
2391 OPC_RecordChild0,
2392 OPC_RecordChild1,
2393 OPC_MoveChild1,
2394 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2395 OPC_CheckPredicate, 31,
2396 OPC_MoveParent,
2397 OPC_CheckPredicate3,
2398 OPC_CheckTypeI32,
2399 OPC_MoveParent,
2400 OPC_CheckPredicate0,
2401 OPC_CheckPredicate1,
2402 OPC_CheckPatternPredicate4,
2403 OPC_CheckComplexPat0, /*#*/3,
2404 OPC_EmitMergeInputChains1_0,
2405 OPC_EmitConvertToTarget4,
2406 OPC_EmitConvertToTarget2,
2407 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2408 4, 1, 5, 6, 7,
2409 29, TARGET_VAL(ISD::OR),
2410 OPC_RecordChild0,
2411 OPC_RecordChild1,
2412 OPC_MoveChild1,
2413 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2414 OPC_CheckPredicate, 31,
2415 OPC_MoveParent,
2416 OPC_CheckPredicate3,
2417 OPC_CheckTypeI32,
2418 OPC_MoveParent,
2419 OPC_CheckPredicate0,
2420 OPC_CheckPredicate1,
2421 OPC_CheckPatternPredicate4,
2422 OPC_CheckComplexPat0, /*#*/3,
2423 OPC_EmitMergeInputChains1_0,
2424 OPC_EmitConvertToTarget4,
2425 OPC_EmitConvertToTarget2,
2426 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2427 4, 1, 5, 6, 7,
2428 0,
2429 18,
2430 OPC_MoveParent,
2431 OPC_RecordChild2,
2432 OPC_CheckPredicate0,
2433 OPC_CheckPredicate1,
2434 OPC_CheckPatternPredicate4,
2435 OPC_CheckComplexPat2, /*#*/3,
2436 OPC_EmitMergeInputChains1_0,
2437 OPC_EmitConvertToTarget2,
2438 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2439 4, 1, 4, 5, 6,
2440 0,
2441 0,
2442 81|128,1,
2443 OPC_CheckChild0Type, 41,
2444 OPC_RecordChild1,
2445 OPC_MoveChild1,
2446 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2447 OPC_CheckPredicate, 25,
2448 OPC_SwitchType , 97, 8,
2449 OPC_MoveParent,
2450 OPC_CheckTypeI64,
2451 OPC_Scope, 71,
2452 OPC_MoveSibling2,
2453 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
2454 OPC_RecordChild0,
2455 OPC_RecordChild1,
2456 OPC_MoveChild1,
2457 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2458 OPC_CheckPredicate, 38,
2459 OPC_MoveParent,
2460 OPC_CheckPredicate3,
2461 OPC_CheckTypeI64,
2462 OPC_MoveParent,
2463 OPC_CheckPredicate0,
2464 OPC_CheckPredicate, 9,
2465 OPC_CheckPredicate4,
2466 OPC_CheckPatternPredicate3,
2467 OPC_CheckComplexPat0, /*#*/3,
2468 OPC_EmitMergeInputChains1_0,
2469 OPC_EmitConvertToTarget4,
2470 OPC_EmitConvertToTarget2,
2471 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
2472 4, 1, 5, 6, 7,
2473 31, TARGET_VAL(ISD::OR),
2474 OPC_RecordChild0,
2475 OPC_RecordChild1,
2476 OPC_MoveChild1,
2477 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2478 OPC_CheckPredicate, 38,
2479 OPC_MoveParent,
2480 OPC_CheckPredicate3,
2481 OPC_CheckTypeI64,
2482 OPC_MoveParent,
2483 OPC_CheckPredicate0,
2484 OPC_CheckPredicate, 9,
2485 OPC_CheckPredicate4,
2486 OPC_CheckPatternPredicate3,
2487 OPC_CheckComplexPat0, /*#*/3,
2488 OPC_EmitMergeInputChains1_0,
2489 OPC_EmitConvertToTarget4,
2490 OPC_EmitConvertToTarget2,
2491 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
2492 4, 1, 5, 6, 7,
2493 0,
2494 20,
2495 OPC_MoveParent,
2496 OPC_RecordChild2,
2497 OPC_CheckPredicate0,
2498 OPC_CheckPredicate, 9,
2499 OPC_CheckPredicate4,
2500 OPC_CheckPatternPredicate3,
2501 OPC_CheckComplexPat2, /*#*/3,
2502 OPC_EmitMergeInputChains1_0,
2503 OPC_EmitConvertToTarget2,
2504 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
2505 4, 1, 4, 5, 6,
2506 0,
2507 97, 7,
2508 OPC_MoveParent,
2509 OPC_CheckTypeI64,
2510 OPC_Scope, 71,
2511 OPC_MoveSibling2,
2512 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
2513 OPC_RecordChild0,
2514 OPC_RecordChild1,
2515 OPC_MoveChild1,
2516 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2517 OPC_CheckPredicate, 38,
2518 OPC_MoveParent,
2519 OPC_CheckPredicate3,
2520 OPC_CheckTypeI32,
2521 OPC_MoveParent,
2522 OPC_CheckPredicate0,
2523 OPC_CheckPredicate, 9,
2524 OPC_CheckPredicate4,
2525 OPC_CheckPatternPredicate5,
2526 OPC_CheckComplexPat0, /*#*/3,
2527 OPC_EmitMergeInputChains1_0,
2528 OPC_EmitConvertToTarget4,
2529 OPC_EmitConvertToTarget2,
2530 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
2531 4, 1, 5, 6, 7,
2532 31, TARGET_VAL(ISD::OR),
2533 OPC_RecordChild0,
2534 OPC_RecordChild1,
2535 OPC_MoveChild1,
2536 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2537 OPC_CheckPredicate, 38,
2538 OPC_MoveParent,
2539 OPC_CheckPredicate3,
2540 OPC_CheckTypeI32,
2541 OPC_MoveParent,
2542 OPC_CheckPredicate0,
2543 OPC_CheckPredicate, 9,
2544 OPC_CheckPredicate4,
2545 OPC_CheckPatternPredicate5,
2546 OPC_CheckComplexPat0, /*#*/3,
2547 OPC_EmitMergeInputChains1_0,
2548 OPC_EmitConvertToTarget4,
2549 OPC_EmitConvertToTarget2,
2550 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
2551 4, 1, 5, 6, 7,
2552 0,
2553 20,
2554 OPC_MoveParent,
2555 OPC_RecordChild2,
2556 OPC_CheckPredicate0,
2557 OPC_CheckPredicate, 9,
2558 OPC_CheckPredicate4,
2559 OPC_CheckPatternPredicate5,
2560 OPC_CheckComplexPat2, /*#*/3,
2561 OPC_EmitMergeInputChains1_0,
2562 OPC_EmitConvertToTarget2,
2563 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
2564 4, 1, 4, 5, 6,
2565 0,
2566 0,
2567 81|128,1,
2568 OPC_CheckChild0Type, 52,
2569 OPC_RecordChild1,
2570 OPC_MoveChild1,
2571 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2572 OPC_CheckPredicate, 27,
2573 OPC_SwitchType , 97, 8,
2574 OPC_MoveParent,
2575 OPC_CheckTypeI64,
2576 OPC_Scope, 71,
2577 OPC_MoveSibling2,
2578 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
2579 OPC_RecordChild0,
2580 OPC_RecordChild1,
2581 OPC_MoveChild1,
2582 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2583 OPC_CheckPredicate, 39,
2584 OPC_MoveParent,
2585 OPC_CheckPredicate3,
2586 OPC_CheckTypeI64,
2587 OPC_MoveParent,
2588 OPC_CheckPredicate0,
2589 OPC_CheckPredicate, 9,
2590 OPC_CheckPredicate5,
2591 OPC_CheckPatternPredicate3,
2592 OPC_CheckComplexPat0, /*#*/3,
2593 OPC_EmitMergeInputChains1_0,
2594 OPC_EmitConvertToTarget4,
2595 OPC_EmitConvertToTarget2,
2596 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
2597 4, 1, 5, 6, 7,
2598 31, TARGET_VAL(ISD::OR),
2599 OPC_RecordChild0,
2600 OPC_RecordChild1,
2601 OPC_MoveChild1,
2602 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2603 OPC_CheckPredicate, 39,
2604 OPC_MoveParent,
2605 OPC_CheckPredicate3,
2606 OPC_CheckTypeI64,
2607 OPC_MoveParent,
2608 OPC_CheckPredicate0,
2609 OPC_CheckPredicate, 9,
2610 OPC_CheckPredicate5,
2611 OPC_CheckPatternPredicate3,
2612 OPC_CheckComplexPat0, /*#*/3,
2613 OPC_EmitMergeInputChains1_0,
2614 OPC_EmitConvertToTarget4,
2615 OPC_EmitConvertToTarget2,
2616 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
2617 4, 1, 5, 6, 7,
2618 0,
2619 20,
2620 OPC_MoveParent,
2621 OPC_RecordChild2,
2622 OPC_CheckPredicate0,
2623 OPC_CheckPredicate, 9,
2624 OPC_CheckPredicate5,
2625 OPC_CheckPatternPredicate3,
2626 OPC_CheckComplexPat2, /*#*/3,
2627 OPC_EmitMergeInputChains1_0,
2628 OPC_EmitConvertToTarget2,
2629 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
2630 4, 1, 4, 5, 6,
2631 0,
2632 97, 7,
2633 OPC_MoveParent,
2634 OPC_CheckTypeI64,
2635 OPC_Scope, 71,
2636 OPC_MoveSibling2,
2637 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
2638 OPC_RecordChild0,
2639 OPC_RecordChild1,
2640 OPC_MoveChild1,
2641 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2642 OPC_CheckPredicate, 39,
2643 OPC_MoveParent,
2644 OPC_CheckPredicate3,
2645 OPC_CheckTypeI32,
2646 OPC_MoveParent,
2647 OPC_CheckPredicate0,
2648 OPC_CheckPredicate, 9,
2649 OPC_CheckPredicate5,
2650 OPC_CheckPatternPredicate5,
2651 OPC_CheckComplexPat0, /*#*/3,
2652 OPC_EmitMergeInputChains1_0,
2653 OPC_EmitConvertToTarget4,
2654 OPC_EmitConvertToTarget2,
2655 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
2656 4, 1, 5, 6, 7,
2657 31, TARGET_VAL(ISD::OR),
2658 OPC_RecordChild0,
2659 OPC_RecordChild1,
2660 OPC_MoveChild1,
2661 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2662 OPC_CheckPredicate, 39,
2663 OPC_MoveParent,
2664 OPC_CheckPredicate3,
2665 OPC_CheckTypeI32,
2666 OPC_MoveParent,
2667 OPC_CheckPredicate0,
2668 OPC_CheckPredicate, 9,
2669 OPC_CheckPredicate5,
2670 OPC_CheckPatternPredicate5,
2671 OPC_CheckComplexPat0, /*#*/3,
2672 OPC_EmitMergeInputChains1_0,
2673 OPC_EmitConvertToTarget4,
2674 OPC_EmitConvertToTarget2,
2675 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
2676 4, 1, 5, 6, 7,
2677 0,
2678 20,
2679 OPC_MoveParent,
2680 OPC_RecordChild2,
2681 OPC_CheckPredicate0,
2682 OPC_CheckPredicate, 9,
2683 OPC_CheckPredicate5,
2684 OPC_CheckPatternPredicate5,
2685 OPC_CheckComplexPat2, /*#*/3,
2686 OPC_EmitMergeInputChains1_0,
2687 OPC_EmitConvertToTarget2,
2688 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
2689 4, 1, 4, 5, 6,
2690 0,
2691 0,
2692 81|128,1,
2693 OPC_CheckChild0Type, 66,
2694 OPC_RecordChild1,
2695 OPC_MoveChild1,
2696 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2697 OPC_CheckPredicate, 19,
2698 OPC_SwitchType , 97, 8,
2699 OPC_MoveParent,
2700 OPC_CheckTypeI64,
2701 OPC_Scope, 71,
2702 OPC_MoveSibling2,
2703 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
2704 OPC_RecordChild0,
2705 OPC_RecordChild1,
2706 OPC_MoveChild1,
2707 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2708 OPC_CheckPredicate, 30,
2709 OPC_MoveParent,
2710 OPC_CheckPredicate3,
2711 OPC_CheckTypeI64,
2712 OPC_MoveParent,
2713 OPC_CheckPredicate0,
2714 OPC_CheckPredicate, 9,
2715 OPC_CheckPredicate2,
2716 OPC_CheckPatternPredicate3,
2717 OPC_CheckComplexPat0, /*#*/3,
2718 OPC_EmitMergeInputChains1_0,
2719 OPC_EmitConvertToTarget4,
2720 OPC_EmitConvertToTarget2,
2721 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2722 4, 1, 5, 6, 7,
2723 31, TARGET_VAL(ISD::OR),
2724 OPC_RecordChild0,
2725 OPC_RecordChild1,
2726 OPC_MoveChild1,
2727 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2728 OPC_CheckPredicate, 30,
2729 OPC_MoveParent,
2730 OPC_CheckPredicate3,
2731 OPC_CheckTypeI64,
2732 OPC_MoveParent,
2733 OPC_CheckPredicate0,
2734 OPC_CheckPredicate, 9,
2735 OPC_CheckPredicate2,
2736 OPC_CheckPatternPredicate3,
2737 OPC_CheckComplexPat0, /*#*/3,
2738 OPC_EmitMergeInputChains1_0,
2739 OPC_EmitConvertToTarget4,
2740 OPC_EmitConvertToTarget2,
2741 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2742 4, 1, 5, 6, 7,
2743 0,
2744 20,
2745 OPC_MoveParent,
2746 OPC_RecordChild2,
2747 OPC_CheckPredicate0,
2748 OPC_CheckPredicate, 9,
2749 OPC_CheckPredicate2,
2750 OPC_CheckPatternPredicate3,
2751 OPC_CheckComplexPat2, /*#*/3,
2752 OPC_EmitMergeInputChains1_0,
2753 OPC_EmitConvertToTarget2,
2754 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2755 4, 1, 4, 5, 6,
2756 0,
2757 97, 7,
2758 OPC_MoveParent,
2759 OPC_CheckTypeI64,
2760 OPC_Scope, 71,
2761 OPC_MoveSibling2,
2762 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::ADD),
2763 OPC_RecordChild0,
2764 OPC_RecordChild1,
2765 OPC_MoveChild1,
2766 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2767 OPC_CheckPredicate, 30,
2768 OPC_MoveParent,
2769 OPC_CheckPredicate3,
2770 OPC_CheckTypeI32,
2771 OPC_MoveParent,
2772 OPC_CheckPredicate0,
2773 OPC_CheckPredicate, 9,
2774 OPC_CheckPredicate2,
2775 OPC_CheckPatternPredicate5,
2776 OPC_CheckComplexPat0, /*#*/3,
2777 OPC_EmitMergeInputChains1_0,
2778 OPC_EmitConvertToTarget4,
2779 OPC_EmitConvertToTarget2,
2780 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2781 4, 1, 5, 6, 7,
2782 31, TARGET_VAL(ISD::OR),
2783 OPC_RecordChild0,
2784 OPC_RecordChild1,
2785 OPC_MoveChild1,
2786 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2787 OPC_CheckPredicate, 30,
2788 OPC_MoveParent,
2789 OPC_CheckPredicate3,
2790 OPC_CheckTypeI32,
2791 OPC_MoveParent,
2792 OPC_CheckPredicate0,
2793 OPC_CheckPredicate, 9,
2794 OPC_CheckPredicate2,
2795 OPC_CheckPatternPredicate5,
2796 OPC_CheckComplexPat0, /*#*/3,
2797 OPC_EmitMergeInputChains1_0,
2798 OPC_EmitConvertToTarget4,
2799 OPC_EmitConvertToTarget2,
2800 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2801 4, 1, 5, 6, 7,
2802 0,
2803 20,
2804 OPC_MoveParent,
2805 OPC_RecordChild2,
2806 OPC_CheckPredicate0,
2807 OPC_CheckPredicate, 9,
2808 OPC_CheckPredicate2,
2809 OPC_CheckPatternPredicate5,
2810 OPC_CheckComplexPat2, /*#*/3,
2811 OPC_EmitMergeInputChains1_0,
2812 OPC_EmitConvertToTarget2,
2813 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2814 4, 1, 4, 5, 6,
2815 0,
2816 0,
2817 69|128,1,
2818 OPC_CheckChild0Type, 83,
2819 OPC_RecordChild1,
2820 OPC_MoveChild1,
2821 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2822 OPC_CheckPredicate, 18,
2823 OPC_SwitchType , 91, 8,
2824 OPC_MoveParent,
2825 OPC_CheckTypeI64,
2826 OPC_Scope, 67,
2827 OPC_MoveSibling2,
2828 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
2829 OPC_RecordChild0,
2830 OPC_RecordChild1,
2831 OPC_MoveChild1,
2832 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2833 OPC_CheckPredicate, 31,
2834 OPC_MoveParent,
2835 OPC_CheckPredicate3,
2836 OPC_CheckTypeI64,
2837 OPC_MoveParent,
2838 OPC_CheckPredicate0,
2839 OPC_CheckPredicate1,
2840 OPC_CheckPatternPredicate3,
2841 OPC_CheckComplexPat0, /*#*/3,
2842 OPC_EmitMergeInputChains1_0,
2843 OPC_EmitConvertToTarget4,
2844 OPC_EmitConvertToTarget2,
2845 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2846 4, 1, 5, 6, 7,
2847 29, TARGET_VAL(ISD::OR),
2848 OPC_RecordChild0,
2849 OPC_RecordChild1,
2850 OPC_MoveChild1,
2851 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2852 OPC_CheckPredicate, 31,
2853 OPC_MoveParent,
2854 OPC_CheckPredicate3,
2855 OPC_CheckTypeI64,
2856 OPC_MoveParent,
2857 OPC_CheckPredicate0,
2858 OPC_CheckPredicate1,
2859 OPC_CheckPatternPredicate3,
2860 OPC_CheckComplexPat0, /*#*/3,
2861 OPC_EmitMergeInputChains1_0,
2862 OPC_EmitConvertToTarget4,
2863 OPC_EmitConvertToTarget2,
2864 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2865 4, 1, 5, 6, 7,
2866 0,
2867 18,
2868 OPC_MoveParent,
2869 OPC_RecordChild2,
2870 OPC_CheckPredicate0,
2871 OPC_CheckPredicate1,
2872 OPC_CheckPatternPredicate3,
2873 OPC_CheckComplexPat2, /*#*/3,
2874 OPC_EmitMergeInputChains1_0,
2875 OPC_EmitConvertToTarget2,
2876 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2877 4, 1, 4, 5, 6,
2878 0,
2879 91, 7,
2880 OPC_MoveParent,
2881 OPC_CheckTypeI64,
2882 OPC_Scope, 67,
2883 OPC_MoveSibling2,
2884 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
2885 OPC_RecordChild0,
2886 OPC_RecordChild1,
2887 OPC_MoveChild1,
2888 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2889 OPC_CheckPredicate, 31,
2890 OPC_MoveParent,
2891 OPC_CheckPredicate3,
2892 OPC_CheckTypeI32,
2893 OPC_MoveParent,
2894 OPC_CheckPredicate0,
2895 OPC_CheckPredicate1,
2896 OPC_CheckPatternPredicate5,
2897 OPC_CheckComplexPat0, /*#*/3,
2898 OPC_EmitMergeInputChains1_0,
2899 OPC_EmitConvertToTarget4,
2900 OPC_EmitConvertToTarget2,
2901 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2902 4, 1, 5, 6, 7,
2903 29, TARGET_VAL(ISD::OR),
2904 OPC_RecordChild0,
2905 OPC_RecordChild1,
2906 OPC_MoveChild1,
2907 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2908 OPC_CheckPredicate, 31,
2909 OPC_MoveParent,
2910 OPC_CheckPredicate3,
2911 OPC_CheckTypeI32,
2912 OPC_MoveParent,
2913 OPC_CheckPredicate0,
2914 OPC_CheckPredicate1,
2915 OPC_CheckPatternPredicate5,
2916 OPC_CheckComplexPat0, /*#*/3,
2917 OPC_EmitMergeInputChains1_0,
2918 OPC_EmitConvertToTarget4,
2919 OPC_EmitConvertToTarget2,
2920 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2921 4, 1, 5, 6, 7,
2922 0,
2923 18,
2924 OPC_MoveParent,
2925 OPC_RecordChild2,
2926 OPC_CheckPredicate0,
2927 OPC_CheckPredicate1,
2928 OPC_CheckPatternPredicate5,
2929 OPC_CheckComplexPat2, /*#*/3,
2930 OPC_EmitMergeInputChains1_0,
2931 OPC_EmitConvertToTarget2,
2932 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
2933 4, 1, 4, 5, 6,
2934 0,
2935 0,
2936 71|128,1,
2937 OPC_CheckChild0Type, 120,
2938 OPC_RecordChild1,
2939 OPC_MoveChild1,
2940 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2941 OPC_CheckPredicate, 19,
2942 OPC_SwitchType , 92, 8,
2943 OPC_MoveParent,
2944 OPC_CheckType, 12,
2945 OPC_Scope, 67,
2946 OPC_MoveSibling2,
2947 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
2948 OPC_RecordChild0,
2949 OPC_RecordChild1,
2950 OPC_MoveChild1,
2951 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2952 OPC_CheckPredicate, 30,
2953 OPC_MoveParent,
2954 OPC_CheckPredicate3,
2955 OPC_CheckTypeI64,
2956 OPC_MoveParent,
2957 OPC_CheckPredicate0,
2958 OPC_CheckPredicate1,
2959 OPC_CheckPatternPredicate3,
2960 OPC_CheckComplexPat0, /*#*/3,
2961 OPC_EmitMergeInputChains1_0,
2962 OPC_EmitConvertToTarget4,
2963 OPC_EmitConvertToTarget2,
2964 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2965 4, 1, 5, 6, 7,
2966 29, TARGET_VAL(ISD::OR),
2967 OPC_RecordChild0,
2968 OPC_RecordChild1,
2969 OPC_MoveChild1,
2970 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2971 OPC_CheckPredicate, 30,
2972 OPC_MoveParent,
2973 OPC_CheckPredicate3,
2974 OPC_CheckTypeI64,
2975 OPC_MoveParent,
2976 OPC_CheckPredicate0,
2977 OPC_CheckPredicate1,
2978 OPC_CheckPatternPredicate3,
2979 OPC_CheckComplexPat0, /*#*/3,
2980 OPC_EmitMergeInputChains1_0,
2981 OPC_EmitConvertToTarget4,
2982 OPC_EmitConvertToTarget2,
2983 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2984 4, 1, 5, 6, 7,
2985 0,
2986 18,
2987 OPC_MoveParent,
2988 OPC_RecordChild2,
2989 OPC_CheckPredicate0,
2990 OPC_CheckPredicate1,
2991 OPC_CheckPatternPredicate3,
2992 OPC_CheckComplexPat2, /*#*/3,
2993 OPC_EmitMergeInputChains1_0,
2994 OPC_EmitConvertToTarget2,
2995 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
2996 4, 1, 4, 5, 6,
2997 0,
2998 92, 7,
2999 OPC_MoveParent,
3000 OPC_CheckType, 12,
3001 OPC_Scope, 67,
3002 OPC_MoveSibling2,
3003 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
3004 OPC_RecordChild0,
3005 OPC_RecordChild1,
3006 OPC_MoveChild1,
3007 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3008 OPC_CheckPredicate, 30,
3009 OPC_MoveParent,
3010 OPC_CheckPredicate3,
3011 OPC_CheckTypeI32,
3012 OPC_MoveParent,
3013 OPC_CheckPredicate0,
3014 OPC_CheckPredicate1,
3015 OPC_CheckPatternPredicate5,
3016 OPC_CheckComplexPat0, /*#*/3,
3017 OPC_EmitMergeInputChains1_0,
3018 OPC_EmitConvertToTarget4,
3019 OPC_EmitConvertToTarget2,
3020 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
3021 4, 1, 5, 6, 7,
3022 29, TARGET_VAL(ISD::OR),
3023 OPC_RecordChild0,
3024 OPC_RecordChild1,
3025 OPC_MoveChild1,
3026 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3027 OPC_CheckPredicate, 30,
3028 OPC_MoveParent,
3029 OPC_CheckPredicate3,
3030 OPC_CheckTypeI32,
3031 OPC_MoveParent,
3032 OPC_CheckPredicate0,
3033 OPC_CheckPredicate1,
3034 OPC_CheckPatternPredicate5,
3035 OPC_CheckComplexPat0, /*#*/3,
3036 OPC_EmitMergeInputChains1_0,
3037 OPC_EmitConvertToTarget4,
3038 OPC_EmitConvertToTarget2,
3039 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
3040 4, 1, 5, 6, 7,
3041 0,
3042 18,
3043 OPC_MoveParent,
3044 OPC_RecordChild2,
3045 OPC_CheckPredicate0,
3046 OPC_CheckPredicate1,
3047 OPC_CheckPatternPredicate5,
3048 OPC_CheckComplexPat2, /*#*/3,
3049 OPC_EmitMergeInputChains1_0,
3050 OPC_EmitConvertToTarget2,
3051 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
3052 4, 1, 4, 5, 6,
3053 0,
3054 0,
3055 72|128,1,
3056 OPC_CheckChild0Type, 8|128,1,
3057 OPC_RecordChild1,
3058 OPC_MoveChild1,
3059 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3060 OPC_CheckPredicate, 18,
3061 OPC_SwitchType , 92, 8,
3062 OPC_MoveParent,
3063 OPC_CheckType, 13,
3064 OPC_Scope, 67,
3065 OPC_MoveSibling2,
3066 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
3067 OPC_RecordChild0,
3068 OPC_RecordChild1,
3069 OPC_MoveChild1,
3070 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3071 OPC_CheckPredicate, 31,
3072 OPC_MoveParent,
3073 OPC_CheckPredicate3,
3074 OPC_CheckTypeI64,
3075 OPC_MoveParent,
3076 OPC_CheckPredicate0,
3077 OPC_CheckPredicate1,
3078 OPC_CheckPatternPredicate3,
3079 OPC_CheckComplexPat0, /*#*/3,
3080 OPC_EmitMergeInputChains1_0,
3081 OPC_EmitConvertToTarget4,
3082 OPC_EmitConvertToTarget2,
3083 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
3084 4, 1, 5, 6, 7,
3085 29, TARGET_VAL(ISD::OR),
3086 OPC_RecordChild0,
3087 OPC_RecordChild1,
3088 OPC_MoveChild1,
3089 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3090 OPC_CheckPredicate, 31,
3091 OPC_MoveParent,
3092 OPC_CheckPredicate3,
3093 OPC_CheckTypeI64,
3094 OPC_MoveParent,
3095 OPC_CheckPredicate0,
3096 OPC_CheckPredicate1,
3097 OPC_CheckPatternPredicate3,
3098 OPC_CheckComplexPat0, /*#*/3,
3099 OPC_EmitMergeInputChains1_0,
3100 OPC_EmitConvertToTarget4,
3101 OPC_EmitConvertToTarget2,
3102 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
3103 4, 1, 5, 6, 7,
3104 0,
3105 18,
3106 OPC_MoveParent,
3107 OPC_RecordChild2,
3108 OPC_CheckPredicate0,
3109 OPC_CheckPredicate1,
3110 OPC_CheckPatternPredicate3,
3111 OPC_CheckComplexPat2, /*#*/3,
3112 OPC_EmitMergeInputChains1_0,
3113 OPC_EmitConvertToTarget2,
3114 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
3115 4, 1, 4, 5, 6,
3116 0,
3117 92, 7,
3118 OPC_MoveParent,
3119 OPC_CheckType, 13,
3120 OPC_Scope, 67,
3121 OPC_MoveSibling2,
3122 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::ADD),
3123 OPC_RecordChild0,
3124 OPC_RecordChild1,
3125 OPC_MoveChild1,
3126 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3127 OPC_CheckPredicate, 31,
3128 OPC_MoveParent,
3129 OPC_CheckPredicate3,
3130 OPC_CheckTypeI32,
3131 OPC_MoveParent,
3132 OPC_CheckPredicate0,
3133 OPC_CheckPredicate1,
3134 OPC_CheckPatternPredicate5,
3135 OPC_CheckComplexPat0, /*#*/3,
3136 OPC_EmitMergeInputChains1_0,
3137 OPC_EmitConvertToTarget4,
3138 OPC_EmitConvertToTarget2,
3139 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
3140 4, 1, 5, 6, 7,
3141 29, TARGET_VAL(ISD::OR),
3142 OPC_RecordChild0,
3143 OPC_RecordChild1,
3144 OPC_MoveChild1,
3145 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3146 OPC_CheckPredicate, 31,
3147 OPC_MoveParent,
3148 OPC_CheckPredicate3,
3149 OPC_CheckTypeI32,
3150 OPC_MoveParent,
3151 OPC_CheckPredicate0,
3152 OPC_CheckPredicate1,
3153 OPC_CheckPatternPredicate5,
3154 OPC_CheckComplexPat0, /*#*/3,
3155 OPC_EmitMergeInputChains1_0,
3156 OPC_EmitConvertToTarget4,
3157 OPC_EmitConvertToTarget2,
3158 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
3159 4, 1, 5, 6, 7,
3160 0,
3161 18,
3162 OPC_MoveParent,
3163 OPC_RecordChild2,
3164 OPC_CheckPredicate0,
3165 OPC_CheckPredicate1,
3166 OPC_CheckPatternPredicate5,
3167 OPC_CheckComplexPat2, /*#*/3,
3168 OPC_EmitMergeInputChains1_0,
3169 OPC_EmitConvertToTarget2,
3170 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
3171 4, 1, 4, 5, 6,
3172 0,
3173 0,
3174 0,
3175 15|128,15,
3176 OPC_RecordChild1,
3177 OPC_Scope, 4|128,2,
3178 OPC_CheckChild1TypeI64,
3179 OPC_MoveChild2,
3180 OPC_SwitchOpcode , 125, TARGET_VAL(ISD::ADD),
3181 OPC_RecordChild0,
3182 OPC_RecordChild1,
3183 OPC_MoveChild1,
3184 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3185 OPC_Scope, 74,
3186 OPC_CheckPredicate, 11,
3187 OPC_MoveParent,
3188 OPC_CheckPredicate3,
3189 OPC_CheckTypeI64,
3190 OPC_MoveParent,
3191 OPC_CheckPredicate0,
3192 OPC_Scope, 49,
3193 OPC_CheckPredicate, 9,
3194 OPC_Scope, 14,
3195 OPC_CheckPredicate4,
3196 OPC_CheckPatternPredicate7,
3197 OPC_CheckComplexPat0, /*#*/2,
3198 OPC_EmitMergeInputChains1_0,
3199 OPC_EmitConvertToTarget3,
3200 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
3201 3, 1, 4, 5,
3202 14,
3203 OPC_CheckPredicate5,
3204 OPC_CheckPatternPredicate7,
3205 OPC_CheckComplexPat0, /*#*/2,
3206 OPC_EmitMergeInputChains1_0,
3207 OPC_EmitConvertToTarget3,
3208 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
3209 3, 1, 4, 5,
3210 14,
3211 OPC_CheckPredicate2,
3212 OPC_CheckPatternPredicate6,
3213 OPC_CheckComplexPat0, /*#*/2,
3214 OPC_EmitMergeInputChains1_0,
3215 OPC_EmitConvertToTarget3,
3216 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
3217 3, 1, 4, 5,
3218 0,
3219 14,
3220 OPC_CheckPredicate1,
3221 OPC_CheckPatternPredicate6,
3222 OPC_CheckComplexPat0, /*#*/2,
3223 OPC_EmitMergeInputChains1_0,
3224 OPC_EmitConvertToTarget3,
3225 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_D), 0|OPFL_Chain|OPFL_MemRefs,
3226 3, 1, 4, 5,
3227 0,
3228 41,
3229 OPC_CheckPredicate, 45,
3230 OPC_MoveParent,
3231 OPC_CheckPredicate3,
3232 OPC_CheckTypeI64,
3233 OPC_MoveParent,
3234 OPC_CheckPredicate0,
3235 OPC_Scope, 16,
3236 OPC_CheckPredicate, 9,
3237 OPC_CheckPredicate2,
3238 OPC_CheckPatternPredicate6,
3239 OPC_CheckComplexPat0, /*#*/2,
3240 OPC_EmitMergeInputChains1_0,
3241 OPC_EmitConvertToTarget3,
3242 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STPTR_W), 0|OPFL_Chain|OPFL_MemRefs,
3243 3, 1, 4, 5,
3244 14,
3245 OPC_CheckPredicate1,
3246 OPC_CheckPatternPredicate6,
3247 OPC_CheckComplexPat0, /*#*/2,
3248 OPC_EmitMergeInputChains1_0,
3249 OPC_EmitConvertToTarget3,
3250 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STPTR_D), 0|OPFL_Chain|OPFL_MemRefs,
3251 3, 1, 4, 5,
3252 0,
3253 0,
3254 125, TARGET_VAL(ISD::OR),
3255 OPC_RecordChild0,
3256 OPC_RecordChild1,
3257 OPC_MoveChild1,
3258 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3259 OPC_Scope, 74,
3260 OPC_CheckPredicate, 11,
3261 OPC_MoveParent,
3262 OPC_CheckPredicate3,
3263 OPC_CheckTypeI64,
3264 OPC_MoveParent,
3265 OPC_CheckPredicate0,
3266 OPC_Scope, 49,
3267 OPC_CheckPredicate, 9,
3268 OPC_Scope, 14,
3269 OPC_CheckPredicate4,
3270 OPC_CheckPatternPredicate7,
3271 OPC_CheckComplexPat0, /*#*/2,
3272 OPC_EmitMergeInputChains1_0,
3273 OPC_EmitConvertToTarget3,
3274 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
3275 3, 1, 4, 5,
3276 14,
3277 OPC_CheckPredicate5,
3278 OPC_CheckPatternPredicate7,
3279 OPC_CheckComplexPat0, /*#*/2,
3280 OPC_EmitMergeInputChains1_0,
3281 OPC_EmitConvertToTarget3,
3282 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
3283 3, 1, 4, 5,
3284 14,
3285 OPC_CheckPredicate2,
3286 OPC_CheckPatternPredicate6,
3287 OPC_CheckComplexPat0, /*#*/2,
3288 OPC_EmitMergeInputChains1_0,
3289 OPC_EmitConvertToTarget3,
3290 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
3291 3, 1, 4, 5,
3292 0,
3293 14,
3294 OPC_CheckPredicate1,
3295 OPC_CheckPatternPredicate6,
3296 OPC_CheckComplexPat0, /*#*/2,
3297 OPC_EmitMergeInputChains1_0,
3298 OPC_EmitConvertToTarget3,
3299 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_D), 0|OPFL_Chain|OPFL_MemRefs,
3300 3, 1, 4, 5,
3301 0,
3302 41,
3303 OPC_CheckPredicate, 45,
3304 OPC_MoveParent,
3305 OPC_CheckPredicate3,
3306 OPC_CheckTypeI64,
3307 OPC_MoveParent,
3308 OPC_CheckPredicate0,
3309 OPC_Scope, 16,
3310 OPC_CheckPredicate, 9,
3311 OPC_CheckPredicate2,
3312 OPC_CheckPatternPredicate6,
3313 OPC_CheckComplexPat0, /*#*/2,
3314 OPC_EmitMergeInputChains1_0,
3315 OPC_EmitConvertToTarget3,
3316 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STPTR_W), 0|OPFL_Chain|OPFL_MemRefs,
3317 3, 1, 4, 5,
3318 14,
3319 OPC_CheckPredicate1,
3320 OPC_CheckPatternPredicate6,
3321 OPC_CheckComplexPat0, /*#*/2,
3322 OPC_EmitMergeInputChains1_0,
3323 OPC_EmitConvertToTarget3,
3324 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STPTR_D), 0|OPFL_Chain|OPFL_MemRefs,
3325 3, 1, 4, 5,
3326 0,
3327 0,
3328 0,
3329 18|128,1,
3330 OPC_CheckChild1TypeI32,
3331 OPC_MoveChild2,
3332 OPC_SwitchOpcode , 68, TARGET_VAL(ISD::ADD),
3333 OPC_RecordChild0,
3334 OPC_RecordChild1,
3335 OPC_MoveChild1,
3336 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3337 OPC_CheckPredicate, 11,
3338 OPC_MoveParent,
3339 OPC_CheckPredicate3,
3340 OPC_CheckTypeI32,
3341 OPC_MoveParent,
3342 OPC_CheckPredicate0,
3343 OPC_Scope, 36,
3344 OPC_CheckPredicate, 9,
3345 OPC_Scope, 15,
3346 OPC_CheckPredicate4,
3347 OPC_CheckPatternPredicate, 8,
3348 OPC_CheckComplexPat0, /*#*/2,
3349 OPC_EmitMergeInputChains1_0,
3350 OPC_EmitConvertToTarget3,
3351 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
3352 3, 1, 4, 5,
3353 15,
3354 OPC_CheckPredicate5,
3355 OPC_CheckPatternPredicate, 8,
3356 OPC_CheckComplexPat0, /*#*/2,
3357 OPC_EmitMergeInputChains1_0,
3358 OPC_EmitConvertToTarget3,
3359 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
3360 3, 1, 4, 5,
3361 0,
3362 15,
3363 OPC_CheckPredicate1,
3364 OPC_CheckPatternPredicate, 10,
3365 OPC_CheckComplexPat0, /*#*/2,
3366 OPC_EmitMergeInputChains1_0,
3367 OPC_EmitConvertToTarget3,
3368 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
3369 3, 1, 4, 5,
3370 0,
3371 68, TARGET_VAL(ISD::OR),
3372 OPC_RecordChild0,
3373 OPC_RecordChild1,
3374 OPC_MoveChild1,
3375 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3376 OPC_CheckPredicate, 11,
3377 OPC_MoveParent,
3378 OPC_CheckPredicate3,
3379 OPC_CheckTypeI32,
3380 OPC_MoveParent,
3381 OPC_CheckPredicate0,
3382 OPC_Scope, 36,
3383 OPC_CheckPredicate, 9,
3384 OPC_Scope, 15,
3385 OPC_CheckPredicate4,
3386 OPC_CheckPatternPredicate, 8,
3387 OPC_CheckComplexPat0, /*#*/2,
3388 OPC_EmitMergeInputChains1_0,
3389 OPC_EmitConvertToTarget3,
3390 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
3391 3, 1, 4, 5,
3392 15,
3393 OPC_CheckPredicate5,
3394 OPC_CheckPatternPredicate, 8,
3395 OPC_CheckComplexPat0, /*#*/2,
3396 OPC_EmitMergeInputChains1_0,
3397 OPC_EmitConvertToTarget3,
3398 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
3399 3, 1, 4, 5,
3400 0,
3401 15,
3402 OPC_CheckPredicate1,
3403 OPC_CheckPatternPredicate, 10,
3404 OPC_CheckComplexPat0, /*#*/2,
3405 OPC_EmitMergeInputChains1_0,
3406 OPC_EmitConvertToTarget3,
3407 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
3408 3, 1, 4, 5,
3409 0,
3410 0,
3411 111,
3412 OPC_CheckChild1Type, 12,
3413 OPC_MoveChild2,
3414 OPC_SwitchOpcode , 50, TARGET_VAL(ISD::ADD),
3415 OPC_RecordChild0,
3416 OPC_RecordChild1,
3417 OPC_MoveChild1,
3418 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3419 OPC_CheckPredicate, 11,
3420 OPC_MoveParent,
3421 OPC_CheckPredicate3,
3422 OPC_SwitchType , 17, 8,
3423 OPC_MoveParent,
3424 OPC_CheckPredicate0,
3425 OPC_CheckPredicate1,
3426 OPC_CheckPatternPredicate, 11,
3427 OPC_CheckComplexPat0, /*#*/2,
3428 OPC_EmitMergeInputChains1_0,
3429 OPC_EmitConvertToTarget3,
3430 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_S), 0|OPFL_Chain|OPFL_MemRefs,
3431 3, 1, 4, 5,
3432 17, 7,
3433 OPC_MoveParent,
3434 OPC_CheckPredicate0,
3435 OPC_CheckPredicate1,
3436 OPC_CheckPatternPredicate, 12,
3437 OPC_CheckComplexPat0, /*#*/2,
3438 OPC_EmitMergeInputChains1_0,
3439 OPC_EmitConvertToTarget3,
3440 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_S), 0|OPFL_Chain|OPFL_MemRefs,
3441 3, 1, 4, 5,
3442 0,
3443 50, TARGET_VAL(ISD::OR),
3444 OPC_RecordChild0,
3445 OPC_RecordChild1,
3446 OPC_MoveChild1,
3447 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3448 OPC_CheckPredicate, 11,
3449 OPC_MoveParent,
3450 OPC_CheckPredicate3,
3451 OPC_SwitchType , 17, 8,
3452 OPC_MoveParent,
3453 OPC_CheckPredicate0,
3454 OPC_CheckPredicate1,
3455 OPC_CheckPatternPredicate, 11,
3456 OPC_CheckComplexPat0, /*#*/2,
3457 OPC_EmitMergeInputChains1_0,
3458 OPC_EmitConvertToTarget3,
3459 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_S), 0|OPFL_Chain|OPFL_MemRefs,
3460 3, 1, 4, 5,
3461 17, 7,
3462 OPC_MoveParent,
3463 OPC_CheckPredicate0,
3464 OPC_CheckPredicate1,
3465 OPC_CheckPatternPredicate, 12,
3466 OPC_CheckComplexPat0, /*#*/2,
3467 OPC_EmitMergeInputChains1_0,
3468 OPC_EmitConvertToTarget3,
3469 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_S), 0|OPFL_Chain|OPFL_MemRefs,
3470 3, 1, 4, 5,
3471 0,
3472 0,
3473 111,
3474 OPC_CheckChild1Type, 13,
3475 OPC_MoveChild2,
3476 OPC_SwitchOpcode , 50, TARGET_VAL(ISD::ADD),
3477 OPC_RecordChild0,
3478 OPC_RecordChild1,
3479 OPC_MoveChild1,
3480 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3481 OPC_CheckPredicate, 11,
3482 OPC_MoveParent,
3483 OPC_CheckPredicate3,
3484 OPC_SwitchType , 17, 8,
3485 OPC_MoveParent,
3486 OPC_CheckPredicate0,
3487 OPC_CheckPredicate1,
3488 OPC_CheckPatternPredicate, 13,
3489 OPC_CheckComplexPat0, /*#*/2,
3490 OPC_EmitMergeInputChains1_0,
3491 OPC_EmitConvertToTarget3,
3492 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_D), 0|OPFL_Chain|OPFL_MemRefs,
3493 3, 1, 4, 5,
3494 17, 7,
3495 OPC_MoveParent,
3496 OPC_CheckPredicate0,
3497 OPC_CheckPredicate1,
3498 OPC_CheckPatternPredicate, 14,
3499 OPC_CheckComplexPat0, /*#*/2,
3500 OPC_EmitMergeInputChains1_0,
3501 OPC_EmitConvertToTarget3,
3502 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_D), 0|OPFL_Chain|OPFL_MemRefs,
3503 3, 1, 4, 5,
3504 0,
3505 50, TARGET_VAL(ISD::OR),
3506 OPC_RecordChild0,
3507 OPC_RecordChild1,
3508 OPC_MoveChild1,
3509 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3510 OPC_CheckPredicate, 11,
3511 OPC_MoveParent,
3512 OPC_CheckPredicate3,
3513 OPC_SwitchType , 17, 8,
3514 OPC_MoveParent,
3515 OPC_CheckPredicate0,
3516 OPC_CheckPredicate1,
3517 OPC_CheckPatternPredicate, 13,
3518 OPC_CheckComplexPat0, /*#*/2,
3519 OPC_EmitMergeInputChains1_0,
3520 OPC_EmitConvertToTarget3,
3521 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_D), 0|OPFL_Chain|OPFL_MemRefs,
3522 3, 1, 4, 5,
3523 17, 7,
3524 OPC_MoveParent,
3525 OPC_CheckPredicate0,
3526 OPC_CheckPredicate1,
3527 OPC_CheckPatternPredicate, 14,
3528 OPC_CheckComplexPat0, /*#*/2,
3529 OPC_EmitMergeInputChains1_0,
3530 OPC_EmitConvertToTarget3,
3531 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_D), 0|OPFL_Chain|OPFL_MemRefs,
3532 3, 1, 4, 5,
3533 0,
3534 0,
3535 107,
3536 OPC_CheckChild1Type, 40,
3537 OPC_MoveChild2,
3538 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
3539 OPC_RecordChild0,
3540 OPC_RecordChild1,
3541 OPC_MoveChild1,
3542 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3543 OPC_CheckPredicate, 11,
3544 OPC_MoveParent,
3545 OPC_CheckPredicate3,
3546 OPC_SwitchType , 16, 8,
3547 OPC_MoveParent,
3548 OPC_CheckPredicate0,
3549 OPC_CheckPredicate1,
3550 OPC_CheckPatternPredicate2,
3551 OPC_CheckComplexPat0, /*#*/2,
3552 OPC_EmitMergeInputChains1_0,
3553 OPC_EmitConvertToTarget3,
3554 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3555 3, 1, 4, 5,
3556 16, 7,
3557 OPC_MoveParent,
3558 OPC_CheckPredicate0,
3559 OPC_CheckPredicate1,
3560 OPC_CheckPatternPredicate4,
3561 OPC_CheckComplexPat0, /*#*/2,
3562 OPC_EmitMergeInputChains1_0,
3563 OPC_EmitConvertToTarget3,
3564 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3565 3, 1, 4, 5,
3566 0,
3567 48, TARGET_VAL(ISD::OR),
3568 OPC_RecordChild0,
3569 OPC_RecordChild1,
3570 OPC_MoveChild1,
3571 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3572 OPC_CheckPredicate, 11,
3573 OPC_MoveParent,
3574 OPC_CheckPredicate3,
3575 OPC_SwitchType , 16, 8,
3576 OPC_MoveParent,
3577 OPC_CheckPredicate0,
3578 OPC_CheckPredicate1,
3579 OPC_CheckPatternPredicate2,
3580 OPC_CheckComplexPat0, /*#*/2,
3581 OPC_EmitMergeInputChains1_0,
3582 OPC_EmitConvertToTarget3,
3583 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3584 3, 1, 4, 5,
3585 16, 7,
3586 OPC_MoveParent,
3587 OPC_CheckPredicate0,
3588 OPC_CheckPredicate1,
3589 OPC_CheckPatternPredicate4,
3590 OPC_CheckComplexPat0, /*#*/2,
3591 OPC_EmitMergeInputChains1_0,
3592 OPC_EmitConvertToTarget3,
3593 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3594 3, 1, 4, 5,
3595 0,
3596 0,
3597 107,
3598 OPC_CheckChild1Type, 51,
3599 OPC_MoveChild2,
3600 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
3601 OPC_RecordChild0,
3602 OPC_RecordChild1,
3603 OPC_MoveChild1,
3604 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3605 OPC_CheckPredicate, 11,
3606 OPC_MoveParent,
3607 OPC_CheckPredicate3,
3608 OPC_SwitchType , 16, 8,
3609 OPC_MoveParent,
3610 OPC_CheckPredicate0,
3611 OPC_CheckPredicate1,
3612 OPC_CheckPatternPredicate2,
3613 OPC_CheckComplexPat0, /*#*/2,
3614 OPC_EmitMergeInputChains1_0,
3615 OPC_EmitConvertToTarget3,
3616 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3617 3, 1, 4, 5,
3618 16, 7,
3619 OPC_MoveParent,
3620 OPC_CheckPredicate0,
3621 OPC_CheckPredicate1,
3622 OPC_CheckPatternPredicate4,
3623 OPC_CheckComplexPat0, /*#*/2,
3624 OPC_EmitMergeInputChains1_0,
3625 OPC_EmitConvertToTarget3,
3626 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3627 3, 1, 4, 5,
3628 0,
3629 48, TARGET_VAL(ISD::OR),
3630 OPC_RecordChild0,
3631 OPC_RecordChild1,
3632 OPC_MoveChild1,
3633 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3634 OPC_CheckPredicate, 11,
3635 OPC_MoveParent,
3636 OPC_CheckPredicate3,
3637 OPC_SwitchType , 16, 8,
3638 OPC_MoveParent,
3639 OPC_CheckPredicate0,
3640 OPC_CheckPredicate1,
3641 OPC_CheckPatternPredicate2,
3642 OPC_CheckComplexPat0, /*#*/2,
3643 OPC_EmitMergeInputChains1_0,
3644 OPC_EmitConvertToTarget3,
3645 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3646 3, 1, 4, 5,
3647 16, 7,
3648 OPC_MoveParent,
3649 OPC_CheckPredicate0,
3650 OPC_CheckPredicate1,
3651 OPC_CheckPatternPredicate4,
3652 OPC_CheckComplexPat0, /*#*/2,
3653 OPC_EmitMergeInputChains1_0,
3654 OPC_EmitConvertToTarget3,
3655 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3656 3, 1, 4, 5,
3657 0,
3658 0,
3659 107,
3660 OPC_CheckChild1Type, 62,
3661 OPC_MoveChild2,
3662 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
3663 OPC_RecordChild0,
3664 OPC_RecordChild1,
3665 OPC_MoveChild1,
3666 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3667 OPC_CheckPredicate, 11,
3668 OPC_MoveParent,
3669 OPC_CheckPredicate3,
3670 OPC_SwitchType , 16, 8,
3671 OPC_MoveParent,
3672 OPC_CheckPredicate0,
3673 OPC_CheckPredicate1,
3674 OPC_CheckPatternPredicate2,
3675 OPC_CheckComplexPat0, /*#*/2,
3676 OPC_EmitMergeInputChains1_0,
3677 OPC_EmitConvertToTarget3,
3678 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3679 3, 1, 4, 5,
3680 16, 7,
3681 OPC_MoveParent,
3682 OPC_CheckPredicate0,
3683 OPC_CheckPredicate1,
3684 OPC_CheckPatternPredicate4,
3685 OPC_CheckComplexPat0, /*#*/2,
3686 OPC_EmitMergeInputChains1_0,
3687 OPC_EmitConvertToTarget3,
3688 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3689 3, 1, 4, 5,
3690 0,
3691 48, TARGET_VAL(ISD::OR),
3692 OPC_RecordChild0,
3693 OPC_RecordChild1,
3694 OPC_MoveChild1,
3695 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3696 OPC_CheckPredicate, 11,
3697 OPC_MoveParent,
3698 OPC_CheckPredicate3,
3699 OPC_SwitchType , 16, 8,
3700 OPC_MoveParent,
3701 OPC_CheckPredicate0,
3702 OPC_CheckPredicate1,
3703 OPC_CheckPatternPredicate2,
3704 OPC_CheckComplexPat0, /*#*/2,
3705 OPC_EmitMergeInputChains1_0,
3706 OPC_EmitConvertToTarget3,
3707 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3708 3, 1, 4, 5,
3709 16, 7,
3710 OPC_MoveParent,
3711 OPC_CheckPredicate0,
3712 OPC_CheckPredicate1,
3713 OPC_CheckPatternPredicate4,
3714 OPC_CheckComplexPat0, /*#*/2,
3715 OPC_EmitMergeInputChains1_0,
3716 OPC_EmitConvertToTarget3,
3717 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3718 3, 1, 4, 5,
3719 0,
3720 0,
3721 107,
3722 OPC_CheckChild1Type, 81,
3723 OPC_MoveChild2,
3724 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
3725 OPC_RecordChild0,
3726 OPC_RecordChild1,
3727 OPC_MoveChild1,
3728 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3729 OPC_CheckPredicate, 11,
3730 OPC_MoveParent,
3731 OPC_CheckPredicate3,
3732 OPC_SwitchType , 16, 8,
3733 OPC_MoveParent,
3734 OPC_CheckPredicate0,
3735 OPC_CheckPredicate1,
3736 OPC_CheckPatternPredicate2,
3737 OPC_CheckComplexPat0, /*#*/2,
3738 OPC_EmitMergeInputChains1_0,
3739 OPC_EmitConvertToTarget3,
3740 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3741 3, 1, 4, 5,
3742 16, 7,
3743 OPC_MoveParent,
3744 OPC_CheckPredicate0,
3745 OPC_CheckPredicate1,
3746 OPC_CheckPatternPredicate4,
3747 OPC_CheckComplexPat0, /*#*/2,
3748 OPC_EmitMergeInputChains1_0,
3749 OPC_EmitConvertToTarget3,
3750 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3751 3, 1, 4, 5,
3752 0,
3753 48, TARGET_VAL(ISD::OR),
3754 OPC_RecordChild0,
3755 OPC_RecordChild1,
3756 OPC_MoveChild1,
3757 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3758 OPC_CheckPredicate, 11,
3759 OPC_MoveParent,
3760 OPC_CheckPredicate3,
3761 OPC_SwitchType , 16, 8,
3762 OPC_MoveParent,
3763 OPC_CheckPredicate0,
3764 OPC_CheckPredicate1,
3765 OPC_CheckPatternPredicate2,
3766 OPC_CheckComplexPat0, /*#*/2,
3767 OPC_EmitMergeInputChains1_0,
3768 OPC_EmitConvertToTarget3,
3769 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3770 3, 1, 4, 5,
3771 16, 7,
3772 OPC_MoveParent,
3773 OPC_CheckPredicate0,
3774 OPC_CheckPredicate1,
3775 OPC_CheckPatternPredicate4,
3776 OPC_CheckComplexPat0, /*#*/2,
3777 OPC_EmitMergeInputChains1_0,
3778 OPC_EmitConvertToTarget3,
3779 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3780 3, 1, 4, 5,
3781 0,
3782 0,
3783 107,
3784 OPC_CheckChild1Type, 116,
3785 OPC_MoveChild2,
3786 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
3787 OPC_RecordChild0,
3788 OPC_RecordChild1,
3789 OPC_MoveChild1,
3790 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3791 OPC_CheckPredicate, 11,
3792 OPC_MoveParent,
3793 OPC_CheckPredicate3,
3794 OPC_SwitchType , 16, 8,
3795 OPC_MoveParent,
3796 OPC_CheckPredicate0,
3797 OPC_CheckPredicate1,
3798 OPC_CheckPatternPredicate2,
3799 OPC_CheckComplexPat0, /*#*/2,
3800 OPC_EmitMergeInputChains1_0,
3801 OPC_EmitConvertToTarget3,
3802 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3803 3, 1, 4, 5,
3804 16, 7,
3805 OPC_MoveParent,
3806 OPC_CheckPredicate0,
3807 OPC_CheckPredicate1,
3808 OPC_CheckPatternPredicate4,
3809 OPC_CheckComplexPat0, /*#*/2,
3810 OPC_EmitMergeInputChains1_0,
3811 OPC_EmitConvertToTarget3,
3812 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3813 3, 1, 4, 5,
3814 0,
3815 48, TARGET_VAL(ISD::OR),
3816 OPC_RecordChild0,
3817 OPC_RecordChild1,
3818 OPC_MoveChild1,
3819 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3820 OPC_CheckPredicate, 11,
3821 OPC_MoveParent,
3822 OPC_CheckPredicate3,
3823 OPC_SwitchType , 16, 8,
3824 OPC_MoveParent,
3825 OPC_CheckPredicate0,
3826 OPC_CheckPredicate1,
3827 OPC_CheckPatternPredicate2,
3828 OPC_CheckComplexPat0, /*#*/2,
3829 OPC_EmitMergeInputChains1_0,
3830 OPC_EmitConvertToTarget3,
3831 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3832 3, 1, 4, 5,
3833 16, 7,
3834 OPC_MoveParent,
3835 OPC_CheckPredicate0,
3836 OPC_CheckPredicate1,
3837 OPC_CheckPatternPredicate4,
3838 OPC_CheckComplexPat0, /*#*/2,
3839 OPC_EmitMergeInputChains1_0,
3840 OPC_EmitConvertToTarget3,
3841 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3842 3, 1, 4, 5,
3843 0,
3844 0,
3845 108,
3846 OPC_CheckChild1Type, 6|128,1,
3847 OPC_MoveChild2,
3848 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
3849 OPC_RecordChild0,
3850 OPC_RecordChild1,
3851 OPC_MoveChild1,
3852 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3853 OPC_CheckPredicate, 11,
3854 OPC_MoveParent,
3855 OPC_CheckPredicate3,
3856 OPC_SwitchType , 16, 8,
3857 OPC_MoveParent,
3858 OPC_CheckPredicate0,
3859 OPC_CheckPredicate1,
3860 OPC_CheckPatternPredicate2,
3861 OPC_CheckComplexPat0, /*#*/2,
3862 OPC_EmitMergeInputChains1_0,
3863 OPC_EmitConvertToTarget3,
3864 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3865 3, 1, 4, 5,
3866 16, 7,
3867 OPC_MoveParent,
3868 OPC_CheckPredicate0,
3869 OPC_CheckPredicate1,
3870 OPC_CheckPatternPredicate4,
3871 OPC_CheckComplexPat0, /*#*/2,
3872 OPC_EmitMergeInputChains1_0,
3873 OPC_EmitConvertToTarget3,
3874 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3875 3, 1, 4, 5,
3876 0,
3877 48, TARGET_VAL(ISD::OR),
3878 OPC_RecordChild0,
3879 OPC_RecordChild1,
3880 OPC_MoveChild1,
3881 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3882 OPC_CheckPredicate, 11,
3883 OPC_MoveParent,
3884 OPC_CheckPredicate3,
3885 OPC_SwitchType , 16, 8,
3886 OPC_MoveParent,
3887 OPC_CheckPredicate0,
3888 OPC_CheckPredicate1,
3889 OPC_CheckPatternPredicate2,
3890 OPC_CheckComplexPat0, /*#*/2,
3891 OPC_EmitMergeInputChains1_0,
3892 OPC_EmitConvertToTarget3,
3893 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3894 3, 1, 4, 5,
3895 16, 7,
3896 OPC_MoveParent,
3897 OPC_CheckPredicate0,
3898 OPC_CheckPredicate1,
3899 OPC_CheckPatternPredicate4,
3900 OPC_CheckComplexPat0, /*#*/2,
3901 OPC_EmitMergeInputChains1_0,
3902 OPC_EmitConvertToTarget3,
3903 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
3904 3, 1, 4, 5,
3905 0,
3906 0,
3907 107,
3908 OPC_CheckChild1Type, 41,
3909 OPC_MoveChild2,
3910 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
3911 OPC_RecordChild0,
3912 OPC_RecordChild1,
3913 OPC_MoveChild1,
3914 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3915 OPC_CheckPredicate, 11,
3916 OPC_MoveParent,
3917 OPC_CheckPredicate3,
3918 OPC_SwitchType , 16, 8,
3919 OPC_MoveParent,
3920 OPC_CheckPredicate0,
3921 OPC_CheckPredicate1,
3922 OPC_CheckPatternPredicate3,
3923 OPC_CheckComplexPat0, /*#*/2,
3924 OPC_EmitMergeInputChains1_0,
3925 OPC_EmitConvertToTarget3,
3926 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
3927 3, 1, 4, 5,
3928 16, 7,
3929 OPC_MoveParent,
3930 OPC_CheckPredicate0,
3931 OPC_CheckPredicate1,
3932 OPC_CheckPatternPredicate5,
3933 OPC_CheckComplexPat0, /*#*/2,
3934 OPC_EmitMergeInputChains1_0,
3935 OPC_EmitConvertToTarget3,
3936 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
3937 3, 1, 4, 5,
3938 0,
3939 48, TARGET_VAL(ISD::OR),
3940 OPC_RecordChild0,
3941 OPC_RecordChild1,
3942 OPC_MoveChild1,
3943 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3944 OPC_CheckPredicate, 11,
3945 OPC_MoveParent,
3946 OPC_CheckPredicate3,
3947 OPC_SwitchType , 16, 8,
3948 OPC_MoveParent,
3949 OPC_CheckPredicate0,
3950 OPC_CheckPredicate1,
3951 OPC_CheckPatternPredicate3,
3952 OPC_CheckComplexPat0, /*#*/2,
3953 OPC_EmitMergeInputChains1_0,
3954 OPC_EmitConvertToTarget3,
3955 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
3956 3, 1, 4, 5,
3957 16, 7,
3958 OPC_MoveParent,
3959 OPC_CheckPredicate0,
3960 OPC_CheckPredicate1,
3961 OPC_CheckPatternPredicate5,
3962 OPC_CheckComplexPat0, /*#*/2,
3963 OPC_EmitMergeInputChains1_0,
3964 OPC_EmitConvertToTarget3,
3965 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
3966 3, 1, 4, 5,
3967 0,
3968 0,
3969 107,
3970 OPC_CheckChild1Type, 52,
3971 OPC_MoveChild2,
3972 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
3973 OPC_RecordChild0,
3974 OPC_RecordChild1,
3975 OPC_MoveChild1,
3976 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
3977 OPC_CheckPredicate, 11,
3978 OPC_MoveParent,
3979 OPC_CheckPredicate3,
3980 OPC_SwitchType , 16, 8,
3981 OPC_MoveParent,
3982 OPC_CheckPredicate0,
3983 OPC_CheckPredicate1,
3984 OPC_CheckPatternPredicate3,
3985 OPC_CheckComplexPat0, /*#*/2,
3986 OPC_EmitMergeInputChains1_0,
3987 OPC_EmitConvertToTarget3,
3988 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
3989 3, 1, 4, 5,
3990 16, 7,
3991 OPC_MoveParent,
3992 OPC_CheckPredicate0,
3993 OPC_CheckPredicate1,
3994 OPC_CheckPatternPredicate5,
3995 OPC_CheckComplexPat0, /*#*/2,
3996 OPC_EmitMergeInputChains1_0,
3997 OPC_EmitConvertToTarget3,
3998 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
3999 3, 1, 4, 5,
4000 0,
4001 48, TARGET_VAL(ISD::OR),
4002 OPC_RecordChild0,
4003 OPC_RecordChild1,
4004 OPC_MoveChild1,
4005 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4006 OPC_CheckPredicate, 11,
4007 OPC_MoveParent,
4008 OPC_CheckPredicate3,
4009 OPC_SwitchType , 16, 8,
4010 OPC_MoveParent,
4011 OPC_CheckPredicate0,
4012 OPC_CheckPredicate1,
4013 OPC_CheckPatternPredicate3,
4014 OPC_CheckComplexPat0, /*#*/2,
4015 OPC_EmitMergeInputChains1_0,
4016 OPC_EmitConvertToTarget3,
4017 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4018 3, 1, 4, 5,
4019 16, 7,
4020 OPC_MoveParent,
4021 OPC_CheckPredicate0,
4022 OPC_CheckPredicate1,
4023 OPC_CheckPatternPredicate5,
4024 OPC_CheckComplexPat0, /*#*/2,
4025 OPC_EmitMergeInputChains1_0,
4026 OPC_EmitConvertToTarget3,
4027 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4028 3, 1, 4, 5,
4029 0,
4030 0,
4031 107,
4032 OPC_CheckChild1Type, 66,
4033 OPC_MoveChild2,
4034 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
4035 OPC_RecordChild0,
4036 OPC_RecordChild1,
4037 OPC_MoveChild1,
4038 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4039 OPC_CheckPredicate, 11,
4040 OPC_MoveParent,
4041 OPC_CheckPredicate3,
4042 OPC_SwitchType , 16, 8,
4043 OPC_MoveParent,
4044 OPC_CheckPredicate0,
4045 OPC_CheckPredicate1,
4046 OPC_CheckPatternPredicate3,
4047 OPC_CheckComplexPat0, /*#*/2,
4048 OPC_EmitMergeInputChains1_0,
4049 OPC_EmitConvertToTarget3,
4050 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4051 3, 1, 4, 5,
4052 16, 7,
4053 OPC_MoveParent,
4054 OPC_CheckPredicate0,
4055 OPC_CheckPredicate1,
4056 OPC_CheckPatternPredicate5,
4057 OPC_CheckComplexPat0, /*#*/2,
4058 OPC_EmitMergeInputChains1_0,
4059 OPC_EmitConvertToTarget3,
4060 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4061 3, 1, 4, 5,
4062 0,
4063 48, TARGET_VAL(ISD::OR),
4064 OPC_RecordChild0,
4065 OPC_RecordChild1,
4066 OPC_MoveChild1,
4067 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4068 OPC_CheckPredicate, 11,
4069 OPC_MoveParent,
4070 OPC_CheckPredicate3,
4071 OPC_SwitchType , 16, 8,
4072 OPC_MoveParent,
4073 OPC_CheckPredicate0,
4074 OPC_CheckPredicate1,
4075 OPC_CheckPatternPredicate3,
4076 OPC_CheckComplexPat0, /*#*/2,
4077 OPC_EmitMergeInputChains1_0,
4078 OPC_EmitConvertToTarget3,
4079 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4080 3, 1, 4, 5,
4081 16, 7,
4082 OPC_MoveParent,
4083 OPC_CheckPredicate0,
4084 OPC_CheckPredicate1,
4085 OPC_CheckPatternPredicate5,
4086 OPC_CheckComplexPat0, /*#*/2,
4087 OPC_EmitMergeInputChains1_0,
4088 OPC_EmitConvertToTarget3,
4089 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4090 3, 1, 4, 5,
4091 0,
4092 0,
4093 107,
4094 OPC_CheckChild1Type, 83,
4095 OPC_MoveChild2,
4096 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
4097 OPC_RecordChild0,
4098 OPC_RecordChild1,
4099 OPC_MoveChild1,
4100 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4101 OPC_CheckPredicate, 11,
4102 OPC_MoveParent,
4103 OPC_CheckPredicate3,
4104 OPC_SwitchType , 16, 8,
4105 OPC_MoveParent,
4106 OPC_CheckPredicate0,
4107 OPC_CheckPredicate1,
4108 OPC_CheckPatternPredicate3,
4109 OPC_CheckComplexPat0, /*#*/2,
4110 OPC_EmitMergeInputChains1_0,
4111 OPC_EmitConvertToTarget3,
4112 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4113 3, 1, 4, 5,
4114 16, 7,
4115 OPC_MoveParent,
4116 OPC_CheckPredicate0,
4117 OPC_CheckPredicate1,
4118 OPC_CheckPatternPredicate5,
4119 OPC_CheckComplexPat0, /*#*/2,
4120 OPC_EmitMergeInputChains1_0,
4121 OPC_EmitConvertToTarget3,
4122 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4123 3, 1, 4, 5,
4124 0,
4125 48, TARGET_VAL(ISD::OR),
4126 OPC_RecordChild0,
4127 OPC_RecordChild1,
4128 OPC_MoveChild1,
4129 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4130 OPC_CheckPredicate, 11,
4131 OPC_MoveParent,
4132 OPC_CheckPredicate3,
4133 OPC_SwitchType , 16, 8,
4134 OPC_MoveParent,
4135 OPC_CheckPredicate0,
4136 OPC_CheckPredicate1,
4137 OPC_CheckPatternPredicate3,
4138 OPC_CheckComplexPat0, /*#*/2,
4139 OPC_EmitMergeInputChains1_0,
4140 OPC_EmitConvertToTarget3,
4141 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4142 3, 1, 4, 5,
4143 16, 7,
4144 OPC_MoveParent,
4145 OPC_CheckPredicate0,
4146 OPC_CheckPredicate1,
4147 OPC_CheckPatternPredicate5,
4148 OPC_CheckComplexPat0, /*#*/2,
4149 OPC_EmitMergeInputChains1_0,
4150 OPC_EmitConvertToTarget3,
4151 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4152 3, 1, 4, 5,
4153 0,
4154 0,
4155 107,
4156 OPC_CheckChild1Type, 120,
4157 OPC_MoveChild2,
4158 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
4159 OPC_RecordChild0,
4160 OPC_RecordChild1,
4161 OPC_MoveChild1,
4162 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4163 OPC_CheckPredicate, 11,
4164 OPC_MoveParent,
4165 OPC_CheckPredicate3,
4166 OPC_SwitchType , 16, 8,
4167 OPC_MoveParent,
4168 OPC_CheckPredicate0,
4169 OPC_CheckPredicate1,
4170 OPC_CheckPatternPredicate3,
4171 OPC_CheckComplexPat0, /*#*/2,
4172 OPC_EmitMergeInputChains1_0,
4173 OPC_EmitConvertToTarget3,
4174 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4175 3, 1, 4, 5,
4176 16, 7,
4177 OPC_MoveParent,
4178 OPC_CheckPredicate0,
4179 OPC_CheckPredicate1,
4180 OPC_CheckPatternPredicate5,
4181 OPC_CheckComplexPat0, /*#*/2,
4182 OPC_EmitMergeInputChains1_0,
4183 OPC_EmitConvertToTarget3,
4184 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4185 3, 1, 4, 5,
4186 0,
4187 48, TARGET_VAL(ISD::OR),
4188 OPC_RecordChild0,
4189 OPC_RecordChild1,
4190 OPC_MoveChild1,
4191 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4192 OPC_CheckPredicate, 11,
4193 OPC_MoveParent,
4194 OPC_CheckPredicate3,
4195 OPC_SwitchType , 16, 8,
4196 OPC_MoveParent,
4197 OPC_CheckPredicate0,
4198 OPC_CheckPredicate1,
4199 OPC_CheckPatternPredicate3,
4200 OPC_CheckComplexPat0, /*#*/2,
4201 OPC_EmitMergeInputChains1_0,
4202 OPC_EmitConvertToTarget3,
4203 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4204 3, 1, 4, 5,
4205 16, 7,
4206 OPC_MoveParent,
4207 OPC_CheckPredicate0,
4208 OPC_CheckPredicate1,
4209 OPC_CheckPatternPredicate5,
4210 OPC_CheckComplexPat0, /*#*/2,
4211 OPC_EmitMergeInputChains1_0,
4212 OPC_EmitConvertToTarget3,
4213 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4214 3, 1, 4, 5,
4215 0,
4216 0,
4217 108,
4218 OPC_CheckChild1Type, 8|128,1,
4219 OPC_MoveChild2,
4220 OPC_SwitchOpcode , 48, TARGET_VAL(ISD::ADD),
4221 OPC_RecordChild0,
4222 OPC_RecordChild1,
4223 OPC_MoveChild1,
4224 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4225 OPC_CheckPredicate, 11,
4226 OPC_MoveParent,
4227 OPC_CheckPredicate3,
4228 OPC_SwitchType , 16, 8,
4229 OPC_MoveParent,
4230 OPC_CheckPredicate0,
4231 OPC_CheckPredicate1,
4232 OPC_CheckPatternPredicate3,
4233 OPC_CheckComplexPat0, /*#*/2,
4234 OPC_EmitMergeInputChains1_0,
4235 OPC_EmitConvertToTarget3,
4236 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4237 3, 1, 4, 5,
4238 16, 7,
4239 OPC_MoveParent,
4240 OPC_CheckPredicate0,
4241 OPC_CheckPredicate1,
4242 OPC_CheckPatternPredicate5,
4243 OPC_CheckComplexPat0, /*#*/2,
4244 OPC_EmitMergeInputChains1_0,
4245 OPC_EmitConvertToTarget3,
4246 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4247 3, 1, 4, 5,
4248 0,
4249 48, TARGET_VAL(ISD::OR),
4250 OPC_RecordChild0,
4251 OPC_RecordChild1,
4252 OPC_MoveChild1,
4253 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4254 OPC_CheckPredicate, 11,
4255 OPC_MoveParent,
4256 OPC_CheckPredicate3,
4257 OPC_SwitchType , 16, 8,
4258 OPC_MoveParent,
4259 OPC_CheckPredicate0,
4260 OPC_CheckPredicate1,
4261 OPC_CheckPatternPredicate3,
4262 OPC_CheckComplexPat0, /*#*/2,
4263 OPC_EmitMergeInputChains1_0,
4264 OPC_EmitConvertToTarget3,
4265 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4266 3, 1, 4, 5,
4267 16, 7,
4268 OPC_MoveParent,
4269 OPC_CheckPredicate0,
4270 OPC_CheckPredicate1,
4271 OPC_CheckPatternPredicate5,
4272 OPC_CheckComplexPat0, /*#*/2,
4273 OPC_EmitMergeInputChains1_0,
4274 OPC_EmitConvertToTarget3,
4275 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
4276 3, 1, 4, 5,
4277 0,
4278 0,
4279 0,
4280 121|128,5,
4281 OPC_MoveChild1,
4282 OPC_CheckOpcode, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
4283 OPC_RecordChild0,
4284 OPC_Scope, 63,
4285 OPC_CheckChild0Type, 40,
4286 OPC_RecordChild1,
4287 OPC_MoveChild1,
4288 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4289 OPC_CheckPredicate, 27,
4290 OPC_SwitchType , 24, 8,
4291 OPC_MoveParent,
4292 OPC_CheckTypeI64,
4293 OPC_MoveParent,
4294 OPC_RecordChild2,
4295 OPC_CheckPredicate0,
4296 OPC_CheckPredicate, 9,
4297 OPC_CheckPredicate4,
4298 OPC_CheckPatternPredicate2,
4299 OPC_CheckComplexPat0, /*#*/3,
4300 OPC_EmitMergeInputChains1_0,
4301 OPC_EmitInteger64, 0,
4302 OPC_EmitConvertToTarget2,
4303 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
4304 4, 1, 4, 5, 6,
4305 24, 7,
4306 OPC_MoveParent,
4307 OPC_CheckTypeI64,
4308 OPC_MoveParent,
4309 OPC_RecordChild2,
4310 OPC_CheckPredicate0,
4311 OPC_CheckPredicate, 9,
4312 OPC_CheckPredicate4,
4313 OPC_CheckPatternPredicate4,
4314 OPC_CheckComplexPat0, /*#*/3,
4315 OPC_EmitMergeInputChains1_0,
4316 OPC_EmitInteger32, 0,
4317 OPC_EmitConvertToTarget2,
4318 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
4319 4, 1, 4, 5, 6,
4320 0,
4321 63,
4322 OPC_CheckChild0Type, 51,
4323 OPC_RecordChild1,
4324 OPC_MoveChild1,
4325 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4326 OPC_CheckPredicate, 19,
4327 OPC_SwitchType , 24, 8,
4328 OPC_MoveParent,
4329 OPC_CheckTypeI64,
4330 OPC_MoveParent,
4331 OPC_RecordChild2,
4332 OPC_CheckPredicate0,
4333 OPC_CheckPredicate, 9,
4334 OPC_CheckPredicate5,
4335 OPC_CheckPatternPredicate2,
4336 OPC_CheckComplexPat0, /*#*/3,
4337 OPC_EmitMergeInputChains1_0,
4338 OPC_EmitInteger64, 0,
4339 OPC_EmitConvertToTarget2,
4340 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
4341 4, 1, 4, 5, 6,
4342 24, 7,
4343 OPC_MoveParent,
4344 OPC_CheckTypeI64,
4345 OPC_MoveParent,
4346 OPC_RecordChild2,
4347 OPC_CheckPredicate0,
4348 OPC_CheckPredicate, 9,
4349 OPC_CheckPredicate5,
4350 OPC_CheckPatternPredicate4,
4351 OPC_CheckComplexPat0, /*#*/3,
4352 OPC_EmitMergeInputChains1_0,
4353 OPC_EmitInteger32, 0,
4354 OPC_EmitConvertToTarget2,
4355 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
4356 4, 1, 4, 5, 6,
4357 0,
4358 63,
4359 OPC_CheckChild0Type, 62,
4360 OPC_RecordChild1,
4361 OPC_MoveChild1,
4362 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4363 OPC_CheckPredicate, 18,
4364 OPC_SwitchType , 24, 8,
4365 OPC_MoveParent,
4366 OPC_CheckTypeI64,
4367 OPC_MoveParent,
4368 OPC_RecordChild2,
4369 OPC_CheckPredicate0,
4370 OPC_CheckPredicate, 9,
4371 OPC_CheckPredicate2,
4372 OPC_CheckPatternPredicate2,
4373 OPC_CheckComplexPat0, /*#*/3,
4374 OPC_EmitMergeInputChains1_0,
4375 OPC_EmitInteger64, 0,
4376 OPC_EmitConvertToTarget2,
4377 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
4378 4, 1, 4, 5, 6,
4379 24, 7,
4380 OPC_MoveParent,
4381 OPC_CheckTypeI64,
4382 OPC_MoveParent,
4383 OPC_RecordChild2,
4384 OPC_CheckPredicate0,
4385 OPC_CheckPredicate, 9,
4386 OPC_CheckPredicate2,
4387 OPC_CheckPatternPredicate4,
4388 OPC_CheckComplexPat0, /*#*/3,
4389 OPC_EmitMergeInputChains1_0,
4390 OPC_EmitInteger32, 0,
4391 OPC_EmitConvertToTarget2,
4392 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
4393 4, 1, 4, 5, 6,
4394 0,
4395 59,
4396 OPC_CheckChild0Type, 81,
4397 OPC_RecordChild1,
4398 OPC_MoveChild1,
4399 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4400 OPC_CheckPredicate, 34,
4401 OPC_SwitchType , 22, 8,
4402 OPC_MoveParent,
4403 OPC_CheckTypeI64,
4404 OPC_MoveParent,
4405 OPC_RecordChild2,
4406 OPC_CheckPredicate0,
4407 OPC_CheckPredicate1,
4408 OPC_CheckPatternPredicate2,
4409 OPC_CheckComplexPat0, /*#*/3,
4410 OPC_EmitMergeInputChains1_0,
4411 OPC_EmitInteger64, 0,
4412 OPC_EmitConvertToTarget2,
4413 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
4414 4, 1, 4, 5, 6,
4415 22, 7,
4416 OPC_MoveParent,
4417 OPC_CheckTypeI64,
4418 OPC_MoveParent,
4419 OPC_RecordChild2,
4420 OPC_CheckPredicate0,
4421 OPC_CheckPredicate1,
4422 OPC_CheckPatternPredicate4,
4423 OPC_CheckComplexPat0, /*#*/3,
4424 OPC_EmitMergeInputChains1_0,
4425 OPC_EmitInteger32, 0,
4426 OPC_EmitConvertToTarget2,
4427 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
4428 4, 1, 4, 5, 6,
4429 0,
4430 61,
4431 OPC_CheckChild0Type, 116,
4432 OPC_RecordChild1,
4433 OPC_MoveChild1,
4434 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4435 OPC_CheckPredicate, 18,
4436 OPC_SwitchType , 23, 8,
4437 OPC_MoveParent,
4438 OPC_CheckType, 12,
4439 OPC_MoveParent,
4440 OPC_RecordChild2,
4441 OPC_CheckPredicate0,
4442 OPC_CheckPredicate1,
4443 OPC_CheckPatternPredicate2,
4444 OPC_CheckComplexPat0, /*#*/3,
4445 OPC_EmitMergeInputChains1_0,
4446 OPC_EmitInteger64, 0,
4447 OPC_EmitConvertToTarget2,
4448 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
4449 4, 1, 4, 5, 6,
4450 23, 7,
4451 OPC_MoveParent,
4452 OPC_CheckType, 12,
4453 OPC_MoveParent,
4454 OPC_RecordChild2,
4455 OPC_CheckPredicate0,
4456 OPC_CheckPredicate1,
4457 OPC_CheckPatternPredicate4,
4458 OPC_CheckComplexPat0, /*#*/3,
4459 OPC_EmitMergeInputChains1_0,
4460 OPC_EmitInteger32, 0,
4461 OPC_EmitConvertToTarget2,
4462 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
4463 4, 1, 4, 5, 6,
4464 0,
4465 62,
4466 OPC_CheckChild0Type, 6|128,1,
4467 OPC_RecordChild1,
4468 OPC_MoveChild1,
4469 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4470 OPC_CheckPredicate, 34,
4471 OPC_SwitchType , 23, 8,
4472 OPC_MoveParent,
4473 OPC_CheckType, 13,
4474 OPC_MoveParent,
4475 OPC_RecordChild2,
4476 OPC_CheckPredicate0,
4477 OPC_CheckPredicate1,
4478 OPC_CheckPatternPredicate2,
4479 OPC_CheckComplexPat0, /*#*/3,
4480 OPC_EmitMergeInputChains1_0,
4481 OPC_EmitInteger64, 0,
4482 OPC_EmitConvertToTarget2,
4483 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
4484 4, 1, 4, 5, 6,
4485 23, 7,
4486 OPC_MoveParent,
4487 OPC_CheckType, 13,
4488 OPC_MoveParent,
4489 OPC_RecordChild2,
4490 OPC_CheckPredicate0,
4491 OPC_CheckPredicate1,
4492 OPC_CheckPatternPredicate4,
4493 OPC_CheckComplexPat0, /*#*/3,
4494 OPC_EmitMergeInputChains1_0,
4495 OPC_EmitInteger32, 0,
4496 OPC_EmitConvertToTarget2,
4497 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
4498 4, 1, 4, 5, 6,
4499 0,
4500 63,
4501 OPC_CheckChild0Type, 41,
4502 OPC_RecordChild1,
4503 OPC_MoveChild1,
4504 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4505 OPC_CheckPredicate, 25,
4506 OPC_SwitchType , 24, 8,
4507 OPC_MoveParent,
4508 OPC_CheckTypeI64,
4509 OPC_MoveParent,
4510 OPC_RecordChild2,
4511 OPC_CheckPredicate0,
4512 OPC_CheckPredicate, 9,
4513 OPC_CheckPredicate4,
4514 OPC_CheckPatternPredicate3,
4515 OPC_CheckComplexPat0, /*#*/3,
4516 OPC_EmitMergeInputChains1_0,
4517 OPC_EmitInteger64, 0,
4518 OPC_EmitConvertToTarget2,
4519 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
4520 4, 1, 4, 5, 6,
4521 24, 7,
4522 OPC_MoveParent,
4523 OPC_CheckTypeI64,
4524 OPC_MoveParent,
4525 OPC_RecordChild2,
4526 OPC_CheckPredicate0,
4527 OPC_CheckPredicate, 9,
4528 OPC_CheckPredicate4,
4529 OPC_CheckPatternPredicate5,
4530 OPC_CheckComplexPat0, /*#*/3,
4531 OPC_EmitMergeInputChains1_0,
4532 OPC_EmitInteger32, 0,
4533 OPC_EmitConvertToTarget2,
4534 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_B), 0|OPFL_Chain|OPFL_MemRefs,
4535 4, 1, 4, 5, 6,
4536 0,
4537 63,
4538 OPC_CheckChild0Type, 52,
4539 OPC_RecordChild1,
4540 OPC_MoveChild1,
4541 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4542 OPC_CheckPredicate, 27,
4543 OPC_SwitchType , 24, 8,
4544 OPC_MoveParent,
4545 OPC_CheckTypeI64,
4546 OPC_MoveParent,
4547 OPC_RecordChild2,
4548 OPC_CheckPredicate0,
4549 OPC_CheckPredicate, 9,
4550 OPC_CheckPredicate5,
4551 OPC_CheckPatternPredicate3,
4552 OPC_CheckComplexPat0, /*#*/3,
4553 OPC_EmitMergeInputChains1_0,
4554 OPC_EmitInteger64, 0,
4555 OPC_EmitConvertToTarget2,
4556 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
4557 4, 1, 4, 5, 6,
4558 24, 7,
4559 OPC_MoveParent,
4560 OPC_CheckTypeI64,
4561 OPC_MoveParent,
4562 OPC_RecordChild2,
4563 OPC_CheckPredicate0,
4564 OPC_CheckPredicate, 9,
4565 OPC_CheckPredicate5,
4566 OPC_CheckPatternPredicate5,
4567 OPC_CheckComplexPat0, /*#*/3,
4568 OPC_EmitMergeInputChains1_0,
4569 OPC_EmitInteger32, 0,
4570 OPC_EmitConvertToTarget2,
4571 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_H), 0|OPFL_Chain|OPFL_MemRefs,
4572 4, 1, 4, 5, 6,
4573 0,
4574 63,
4575 OPC_CheckChild0Type, 66,
4576 OPC_RecordChild1,
4577 OPC_MoveChild1,
4578 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4579 OPC_CheckPredicate, 19,
4580 OPC_SwitchType , 24, 8,
4581 OPC_MoveParent,
4582 OPC_CheckTypeI64,
4583 OPC_MoveParent,
4584 OPC_RecordChild2,
4585 OPC_CheckPredicate0,
4586 OPC_CheckPredicate, 9,
4587 OPC_CheckPredicate2,
4588 OPC_CheckPatternPredicate3,
4589 OPC_CheckComplexPat0, /*#*/3,
4590 OPC_EmitMergeInputChains1_0,
4591 OPC_EmitInteger64, 0,
4592 OPC_EmitConvertToTarget2,
4593 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
4594 4, 1, 4, 5, 6,
4595 24, 7,
4596 OPC_MoveParent,
4597 OPC_CheckTypeI64,
4598 OPC_MoveParent,
4599 OPC_RecordChild2,
4600 OPC_CheckPredicate0,
4601 OPC_CheckPredicate, 9,
4602 OPC_CheckPredicate2,
4603 OPC_CheckPatternPredicate5,
4604 OPC_CheckComplexPat0, /*#*/3,
4605 OPC_EmitMergeInputChains1_0,
4606 OPC_EmitInteger32, 0,
4607 OPC_EmitConvertToTarget2,
4608 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
4609 4, 1, 4, 5, 6,
4610 0,
4611 59,
4612 OPC_CheckChild0Type, 83,
4613 OPC_RecordChild1,
4614 OPC_MoveChild1,
4615 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4616 OPC_CheckPredicate, 18,
4617 OPC_SwitchType , 22, 8,
4618 OPC_MoveParent,
4619 OPC_CheckTypeI64,
4620 OPC_MoveParent,
4621 OPC_RecordChild2,
4622 OPC_CheckPredicate0,
4623 OPC_CheckPredicate1,
4624 OPC_CheckPatternPredicate3,
4625 OPC_CheckComplexPat0, /*#*/3,
4626 OPC_EmitMergeInputChains1_0,
4627 OPC_EmitInteger64, 0,
4628 OPC_EmitConvertToTarget2,
4629 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
4630 4, 1, 4, 5, 6,
4631 22, 7,
4632 OPC_MoveParent,
4633 OPC_CheckTypeI64,
4634 OPC_MoveParent,
4635 OPC_RecordChild2,
4636 OPC_CheckPredicate0,
4637 OPC_CheckPredicate1,
4638 OPC_CheckPatternPredicate5,
4639 OPC_CheckComplexPat0, /*#*/3,
4640 OPC_EmitMergeInputChains1_0,
4641 OPC_EmitInteger32, 0,
4642 OPC_EmitConvertToTarget2,
4643 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
4644 4, 1, 4, 5, 6,
4645 0,
4646 61,
4647 OPC_CheckChild0Type, 120,
4648 OPC_RecordChild1,
4649 OPC_MoveChild1,
4650 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4651 OPC_CheckPredicate, 19,
4652 OPC_SwitchType , 23, 8,
4653 OPC_MoveParent,
4654 OPC_CheckType, 12,
4655 OPC_MoveParent,
4656 OPC_RecordChild2,
4657 OPC_CheckPredicate0,
4658 OPC_CheckPredicate1,
4659 OPC_CheckPatternPredicate3,
4660 OPC_CheckComplexPat0, /*#*/3,
4661 OPC_EmitMergeInputChains1_0,
4662 OPC_EmitInteger64, 0,
4663 OPC_EmitConvertToTarget2,
4664 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
4665 4, 1, 4, 5, 6,
4666 23, 7,
4667 OPC_MoveParent,
4668 OPC_CheckType, 12,
4669 OPC_MoveParent,
4670 OPC_RecordChild2,
4671 OPC_CheckPredicate0,
4672 OPC_CheckPredicate1,
4673 OPC_CheckPatternPredicate5,
4674 OPC_CheckComplexPat0, /*#*/3,
4675 OPC_EmitMergeInputChains1_0,
4676 OPC_EmitInteger32, 0,
4677 OPC_EmitConvertToTarget2,
4678 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_W), 0|OPFL_Chain|OPFL_MemRefs,
4679 4, 1, 4, 5, 6,
4680 0,
4681 62,
4682 OPC_CheckChild0Type, 8|128,1,
4683 OPC_RecordChild1,
4684 OPC_MoveChild1,
4685 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4686 OPC_CheckPredicate, 18,
4687 OPC_SwitchType , 23, 8,
4688 OPC_MoveParent,
4689 OPC_CheckType, 13,
4690 OPC_MoveParent,
4691 OPC_RecordChild2,
4692 OPC_CheckPredicate0,
4693 OPC_CheckPredicate1,
4694 OPC_CheckPatternPredicate3,
4695 OPC_CheckComplexPat0, /*#*/3,
4696 OPC_EmitMergeInputChains1_0,
4697 OPC_EmitInteger64, 0,
4698 OPC_EmitConvertToTarget2,
4699 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
4700 4, 1, 4, 5, 6,
4701 23, 7,
4702 OPC_MoveParent,
4703 OPC_CheckType, 13,
4704 OPC_MoveParent,
4705 OPC_RecordChild2,
4706 OPC_CheckPredicate0,
4707 OPC_CheckPredicate1,
4708 OPC_CheckPatternPredicate5,
4709 OPC_CheckComplexPat0, /*#*/3,
4710 OPC_EmitMergeInputChains1_0,
4711 OPC_EmitInteger32, 0,
4712 OPC_EmitConvertToTarget2,
4713 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTELM_D), 0|OPFL_Chain|OPFL_MemRefs,
4714 4, 1, 4, 5, 6,
4715 0,
4716 0,
4717 61|128,19,
4718 OPC_RecordChild1,
4719 OPC_Scope, 22|128,2,
4720 OPC_CheckChild1TypeI64,
4721 OPC_Scope, 65,
4722 OPC_RecordChild2,
4723 OPC_CheckPredicate0,
4724 OPC_Scope, 46,
4725 OPC_CheckPredicate, 9,
4726 OPC_Scope, 13,
4727 OPC_CheckPredicate4,
4728 OPC_CheckPatternPredicate7,
4729 OPC_CheckComplexPat2, /*#*/2,
4730 OPC_EmitMergeInputChains1_0,
4731 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
4732 3, 1, 3, 4,
4733 13,
4734 OPC_CheckPredicate5,
4735 OPC_CheckPatternPredicate7,
4736 OPC_CheckComplexPat2, /*#*/2,
4737 OPC_EmitMergeInputChains1_0,
4738 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
4739 3, 1, 3, 4,
4740 13,
4741 OPC_CheckPredicate2,
4742 OPC_CheckPatternPredicate6,
4743 OPC_CheckComplexPat2, /*#*/2,
4744 OPC_EmitMergeInputChains1_0,
4745 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
4746 3, 1, 3, 4,
4747 0,
4748 13,
4749 OPC_CheckPredicate1,
4750 OPC_CheckPatternPredicate6,
4751 OPC_CheckComplexPat2, /*#*/2,
4752 OPC_EmitMergeInputChains1_0,
4753 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_D), 0|OPFL_Chain|OPFL_MemRefs,
4754 3, 1, 3, 4,
4755 0,
4756 5|128,1,
4757 OPC_MoveChild2,
4758 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
4759 OPC_RecordChild0,
4760 OPC_RecordChild1,
4761 OPC_CheckTypeI64,
4762 OPC_MoveParent,
4763 OPC_CheckPredicate0,
4764 OPC_Scope, 46,
4765 OPC_CheckPredicate, 9,
4766 OPC_Scope, 13,
4767 OPC_CheckPredicate4,
4768 OPC_CheckPatternPredicate6,
4769 OPC_CheckComplexPat3, /*#*/2,
4770 OPC_EmitMergeInputChains1_0,
4771 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STX_B), 0|OPFL_Chain|OPFL_MemRefs,
4772 3, 1, 4, 3,
4773 13,
4774 OPC_CheckPredicate5,
4775 OPC_CheckPatternPredicate6,
4776 OPC_CheckComplexPat3, /*#*/2,
4777 OPC_EmitMergeInputChains1_0,
4778 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STX_H), 0|OPFL_Chain|OPFL_MemRefs,
4779 3, 1, 4, 3,
4780 13,
4781 OPC_CheckPredicate2,
4782 OPC_CheckPatternPredicate6,
4783 OPC_CheckComplexPat3, /*#*/2,
4784 OPC_EmitMergeInputChains1_0,
4785 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STX_W), 0|OPFL_Chain|OPFL_MemRefs,
4786 3, 1, 4, 3,
4787 0,
4788 13,
4789 OPC_CheckPredicate1,
4790 OPC_CheckPatternPredicate6,
4791 OPC_CheckComplexPat3, /*#*/2,
4792 OPC_EmitMergeInputChains1_0,
4793 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STX_D), 0|OPFL_Chain|OPFL_MemRefs,
4794 3, 1, 4, 3,
4795 46,
4796 OPC_CheckPredicate, 9,
4797 OPC_Scope, 13,
4798 OPC_CheckPredicate4,
4799 OPC_CheckPatternPredicate6,
4800 OPC_CheckComplexPat3, /*#*/3,
4801 OPC_EmitMergeInputChains1_0,
4802 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STX_B), 0|OPFL_Chain|OPFL_MemRefs,
4803 3, 1, 4, 2,
4804 13,
4805 OPC_CheckPredicate5,
4806 OPC_CheckPatternPredicate6,
4807 OPC_CheckComplexPat3, /*#*/3,
4808 OPC_EmitMergeInputChains1_0,
4809 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STX_H), 0|OPFL_Chain|OPFL_MemRefs,
4810 3, 1, 4, 2,
4811 13,
4812 OPC_CheckPredicate2,
4813 OPC_CheckPatternPredicate6,
4814 OPC_CheckComplexPat3, /*#*/3,
4815 OPC_EmitMergeInputChains1_0,
4816 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STX_W), 0|OPFL_Chain|OPFL_MemRefs,
4817 3, 1, 4, 2,
4818 0,
4819 13,
4820 OPC_CheckPredicate1,
4821 OPC_CheckPatternPredicate6,
4822 OPC_CheckComplexPat3, /*#*/3,
4823 OPC_EmitMergeInputChains1_0,
4824 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::STX_D), 0|OPFL_Chain|OPFL_MemRefs,
4825 3, 1, 4, 2,
4826 0,
4827 73,
4828 OPC_RecordChild2,
4829 OPC_CheckPredicate0,
4830 OPC_Scope, 52,
4831 OPC_CheckPredicate, 9,
4832 OPC_Scope, 15,
4833 OPC_CheckPredicate4,
4834 OPC_CheckPatternPredicate7,
4835 OPC_CheckComplexPat0, /*#*/2,
4836 OPC_EmitMergeInputChains1_0,
4837 OPC_EmitInteger64, 0,
4838 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
4839 3, 1, 3, 4,
4840 15,
4841 OPC_CheckPredicate5,
4842 OPC_CheckPatternPredicate7,
4843 OPC_CheckComplexPat0, /*#*/2,
4844 OPC_EmitMergeInputChains1_0,
4845 OPC_EmitInteger64, 0,
4846 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
4847 3, 1, 3, 4,
4848 15,
4849 OPC_CheckPredicate2,
4850 OPC_CheckPatternPredicate6,
4851 OPC_CheckComplexPat0, /*#*/2,
4852 OPC_EmitMergeInputChains1_0,
4853 OPC_EmitInteger64, 0,
4854 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
4855 3, 1, 3, 4,
4856 0,
4857 15,
4858 OPC_CheckPredicate1,
4859 OPC_CheckPatternPredicate6,
4860 OPC_CheckComplexPat0, /*#*/2,
4861 OPC_EmitMergeInputChains1_0,
4862 OPC_EmitInteger64, 0,
4863 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_D), 0|OPFL_Chain|OPFL_MemRefs,
4864 3, 1, 3, 4,
4865 0,
4866 0,
4867 111,
4868 OPC_CheckChild1TypeI32,
4869 OPC_RecordChild2,
4870 OPC_CheckPredicate0,
4871 OPC_Scope, 34,
4872 OPC_CheckPredicate, 9,
4873 OPC_Scope, 14,
4874 OPC_CheckPredicate4,
4875 OPC_CheckPatternPredicate, 8,
4876 OPC_CheckComplexPat2, /*#*/2,
4877 OPC_EmitMergeInputChains1_0,
4878 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
4879 3, 1, 3, 4,
4880 14,
4881 OPC_CheckPredicate5,
4882 OPC_CheckPatternPredicate, 8,
4883 OPC_CheckComplexPat2, /*#*/2,
4884 OPC_EmitMergeInputChains1_0,
4885 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
4886 3, 1, 3, 4,
4887 0,
4888 14,
4889 OPC_CheckPredicate1,
4890 OPC_CheckPatternPredicate, 10,
4891 OPC_CheckComplexPat2, /*#*/2,
4892 OPC_EmitMergeInputChains1_0,
4893 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
4894 3, 1, 3, 4,
4895 38,
4896 OPC_CheckPredicate, 9,
4897 OPC_Scope, 16,
4898 OPC_CheckPredicate4,
4899 OPC_CheckPatternPredicate, 8,
4900 OPC_CheckComplexPat0, /*#*/2,
4901 OPC_EmitMergeInputChains1_0,
4902 OPC_EmitInteger32, 0,
4903 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
4904 3, 1, 3, 4,
4905 16,
4906 OPC_CheckPredicate5,
4907 OPC_CheckPatternPredicate, 8,
4908 OPC_CheckComplexPat0, /*#*/2,
4909 OPC_EmitMergeInputChains1_0,
4910 OPC_EmitInteger32, 0,
4911 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
4912 3, 1, 3, 4,
4913 0,
4914 16,
4915 OPC_CheckPredicate1,
4916 OPC_CheckPatternPredicate, 10,
4917 OPC_CheckComplexPat0, /*#*/2,
4918 OPC_EmitMergeInputChains1_0,
4919 OPC_EmitInteger32, 0,
4920 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
4921 3, 1, 3, 4,
4922 0,
4923 23|128,1,
4924 OPC_CheckChild1Type, 12,
4925 OPC_Scope, 33,
4926 OPC_RecordChild2,
4927 OPC_CheckPredicate0,
4928 OPC_CheckPredicate1,
4929 OPC_Scope, 13,
4930 OPC_CheckPatternPredicate, 11,
4931 OPC_CheckComplexPat2, /*#*/2,
4932 OPC_EmitMergeInputChains1_0,
4933 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_S), 0|OPFL_Chain|OPFL_MemRefs,
4934 3, 1, 3, 4,
4935 13,
4936 OPC_CheckPatternPredicate, 12,
4937 OPC_CheckComplexPat2, /*#*/2,
4938 OPC_EmitMergeInputChains1_0,
4939 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_S), 0|OPFL_Chain|OPFL_MemRefs,
4940 3, 1, 3, 4,
4941 0,
4942 74,
4943 OPC_MoveChild2,
4944 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
4945 OPC_RecordChild0,
4946 OPC_RecordChild1,
4947 OPC_SwitchType , 31, 8,
4948 OPC_MoveParent,
4949 OPC_CheckPredicate0,
4950 OPC_CheckPredicate1,
4951 OPC_CheckPatternPredicate, 11,
4952 OPC_Scope, 11,
4953 OPC_CheckComplexPat3, /*#*/2,
4954 OPC_EmitMergeInputChains1_0,
4955 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FSTX_S), 0|OPFL_Chain|OPFL_MemRefs,
4956 3, 1, 4, 3,
4957 11,
4958 OPC_CheckComplexPat3, /*#*/3,
4959 OPC_EmitMergeInputChains1_0,
4960 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FSTX_S), 0|OPFL_Chain|OPFL_MemRefs,
4961 3, 1, 4, 2,
4962 0,
4963 31, 7,
4964 OPC_MoveParent,
4965 OPC_CheckPredicate0,
4966 OPC_CheckPredicate1,
4967 OPC_CheckPatternPredicate, 12,
4968 OPC_Scope, 11,
4969 OPC_CheckComplexPat3, /*#*/2,
4970 OPC_EmitMergeInputChains1_0,
4971 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FSTX_S), 0|OPFL_Chain|OPFL_MemRefs,
4972 3, 1, 4, 3,
4973 11,
4974 OPC_CheckComplexPat3, /*#*/3,
4975 OPC_EmitMergeInputChains1_0,
4976 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FSTX_S), 0|OPFL_Chain|OPFL_MemRefs,
4977 3, 1, 4, 2,
4978 0,
4979 0,
4980 37,
4981 OPC_RecordChild2,
4982 OPC_CheckPredicate0,
4983 OPC_CheckPredicate1,
4984 OPC_Scope, 15,
4985 OPC_CheckPatternPredicate, 11,
4986 OPC_CheckComplexPat0, /*#*/2,
4987 OPC_EmitMergeInputChains1_0,
4988 OPC_EmitInteger64, 0,
4989 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_S), 0|OPFL_Chain|OPFL_MemRefs,
4990 3, 1, 3, 4,
4991 15,
4992 OPC_CheckPatternPredicate, 12,
4993 OPC_CheckComplexPat0, /*#*/2,
4994 OPC_EmitMergeInputChains1_0,
4995 OPC_EmitInteger32, 0,
4996 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_S), 0|OPFL_Chain|OPFL_MemRefs,
4997 3, 1, 3, 4,
4998 0,
4999 0,
5000 23|128,1,
5001 OPC_CheckChild1Type, 13,
5002 OPC_Scope, 33,
5003 OPC_RecordChild2,
5004 OPC_CheckPredicate0,
5005 OPC_CheckPredicate1,
5006 OPC_Scope, 13,
5007 OPC_CheckPatternPredicate, 13,
5008 OPC_CheckComplexPat2, /*#*/2,
5009 OPC_EmitMergeInputChains1_0,
5010 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_D), 0|OPFL_Chain|OPFL_MemRefs,
5011 3, 1, 3, 4,
5012 13,
5013 OPC_CheckPatternPredicate, 14,
5014 OPC_CheckComplexPat2, /*#*/2,
5015 OPC_EmitMergeInputChains1_0,
5016 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_D), 0|OPFL_Chain|OPFL_MemRefs,
5017 3, 1, 3, 4,
5018 0,
5019 74,
5020 OPC_MoveChild2,
5021 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5022 OPC_RecordChild0,
5023 OPC_RecordChild1,
5024 OPC_SwitchType , 31, 8,
5025 OPC_MoveParent,
5026 OPC_CheckPredicate0,
5027 OPC_CheckPredicate1,
5028 OPC_CheckPatternPredicate, 13,
5029 OPC_Scope, 11,
5030 OPC_CheckComplexPat3, /*#*/2,
5031 OPC_EmitMergeInputChains1_0,
5032 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FSTX_D), 0|OPFL_Chain|OPFL_MemRefs,
5033 3, 1, 4, 3,
5034 11,
5035 OPC_CheckComplexPat3, /*#*/3,
5036 OPC_EmitMergeInputChains1_0,
5037 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FSTX_D), 0|OPFL_Chain|OPFL_MemRefs,
5038 3, 1, 4, 2,
5039 0,
5040 31, 7,
5041 OPC_MoveParent,
5042 OPC_CheckPredicate0,
5043 OPC_CheckPredicate1,
5044 OPC_CheckPatternPredicate, 14,
5045 OPC_Scope, 11,
5046 OPC_CheckComplexPat3, /*#*/2,
5047 OPC_EmitMergeInputChains1_0,
5048 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FSTX_D), 0|OPFL_Chain|OPFL_MemRefs,
5049 3, 1, 4, 3,
5050 11,
5051 OPC_CheckComplexPat3, /*#*/3,
5052 OPC_EmitMergeInputChains1_0,
5053 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FSTX_D), 0|OPFL_Chain|OPFL_MemRefs,
5054 3, 1, 4, 2,
5055 0,
5056 0,
5057 37,
5058 OPC_RecordChild2,
5059 OPC_CheckPredicate0,
5060 OPC_CheckPredicate1,
5061 OPC_Scope, 15,
5062 OPC_CheckPatternPredicate, 13,
5063 OPC_CheckComplexPat0, /*#*/2,
5064 OPC_EmitMergeInputChains1_0,
5065 OPC_EmitInteger64, 0,
5066 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_D), 0|OPFL_Chain|OPFL_MemRefs,
5067 3, 1, 3, 4,
5068 15,
5069 OPC_CheckPatternPredicate, 14,
5070 OPC_CheckComplexPat0, /*#*/2,
5071 OPC_EmitMergeInputChains1_0,
5072 OPC_EmitInteger32, 0,
5073 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::FST_D), 0|OPFL_Chain|OPFL_MemRefs,
5074 3, 1, 3, 4,
5075 0,
5076 0,
5077 30|128,1,
5078 OPC_CheckChild1Type, 40,
5079 OPC_Scope, 42,
5080 OPC_MoveChild2,
5081 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5082 OPC_RecordChild0,
5083 OPC_RecordChild1,
5084 OPC_SwitchType , 15, 8,
5085 OPC_MoveParent,
5086 OPC_CheckPredicate0,
5087 OPC_CheckPredicate1,
5088 OPC_CheckPatternPredicate2,
5089 OPC_CheckComplexPat3, /*#*/2,
5090 OPC_EmitMergeInputChains1_0,
5091 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5092 3, 1, 4, 3,
5093 15, 7,
5094 OPC_MoveParent,
5095 OPC_CheckPredicate0,
5096 OPC_CheckPredicate1,
5097 OPC_CheckPatternPredicate4,
5098 OPC_CheckComplexPat3, /*#*/2,
5099 OPC_EmitMergeInputChains1_0,
5100 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5101 3, 1, 4, 3,
5102 0,
5103 31,
5104 OPC_RecordChild2,
5105 OPC_CheckPredicate0,
5106 OPC_CheckPredicate1,
5107 OPC_Scope, 12,
5108 OPC_CheckPatternPredicate2,
5109 OPC_CheckComplexPat2, /*#*/2,
5110 OPC_EmitMergeInputChains1_0,
5111 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5112 3, 1, 3, 4,
5113 12,
5114 OPC_CheckPatternPredicate4,
5115 OPC_CheckComplexPat2, /*#*/2,
5116 OPC_EmitMergeInputChains1_0,
5117 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5118 3, 1, 3, 4,
5119 0,
5120 42,
5121 OPC_MoveChild2,
5122 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5123 OPC_RecordChild0,
5124 OPC_RecordChild1,
5125 OPC_SwitchType , 15, 8,
5126 OPC_MoveParent,
5127 OPC_CheckPredicate0,
5128 OPC_CheckPredicate1,
5129 OPC_CheckPatternPredicate2,
5130 OPC_CheckComplexPat3, /*#*/3,
5131 OPC_EmitMergeInputChains1_0,
5132 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5133 3, 1, 4, 2,
5134 15, 7,
5135 OPC_MoveParent,
5136 OPC_CheckPredicate0,
5137 OPC_CheckPredicate1,
5138 OPC_CheckPatternPredicate4,
5139 OPC_CheckComplexPat3, /*#*/3,
5140 OPC_EmitMergeInputChains1_0,
5141 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5142 3, 1, 4, 2,
5143 0,
5144 35,
5145 OPC_RecordChild2,
5146 OPC_CheckPredicate0,
5147 OPC_CheckPredicate1,
5148 OPC_Scope, 14,
5149 OPC_CheckPatternPredicate2,
5150 OPC_CheckComplexPat0, /*#*/2,
5151 OPC_EmitMergeInputChains1_0,
5152 OPC_EmitInteger64, 0,
5153 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5154 3, 1, 3, 4,
5155 14,
5156 OPC_CheckPatternPredicate4,
5157 OPC_CheckComplexPat0, /*#*/2,
5158 OPC_EmitMergeInputChains1_0,
5159 OPC_EmitInteger32, 0,
5160 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5161 3, 1, 3, 4,
5162 0,
5163 0,
5164 17|128,1,
5165 OPC_CheckChild1Type, 51,
5166 OPC_Scope, 31,
5167 OPC_RecordChild2,
5168 OPC_CheckPredicate0,
5169 OPC_CheckPredicate1,
5170 OPC_Scope, 12,
5171 OPC_CheckPatternPredicate2,
5172 OPC_CheckComplexPat2, /*#*/2,
5173 OPC_EmitMergeInputChains1_0,
5174 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5175 3, 1, 3, 4,
5176 12,
5177 OPC_CheckPatternPredicate4,
5178 OPC_CheckComplexPat2, /*#*/2,
5179 OPC_EmitMergeInputChains1_0,
5180 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5181 3, 1, 3, 4,
5182 0,
5183 72,
5184 OPC_MoveChild2,
5185 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5186 OPC_RecordChild0,
5187 OPC_RecordChild1,
5188 OPC_SwitchType , 30, 8,
5189 OPC_MoveParent,
5190 OPC_CheckPredicate0,
5191 OPC_CheckPredicate1,
5192 OPC_CheckPatternPredicate2,
5193 OPC_Scope, 11,
5194 OPC_CheckComplexPat3, /*#*/2,
5195 OPC_EmitMergeInputChains1_0,
5196 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5197 3, 1, 4, 3,
5198 11,
5199 OPC_CheckComplexPat3, /*#*/3,
5200 OPC_EmitMergeInputChains1_0,
5201 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5202 3, 1, 4, 2,
5203 0,
5204 30, 7,
5205 OPC_MoveParent,
5206 OPC_CheckPredicate0,
5207 OPC_CheckPredicate1,
5208 OPC_CheckPatternPredicate4,
5209 OPC_Scope, 11,
5210 OPC_CheckComplexPat3, /*#*/2,
5211 OPC_EmitMergeInputChains1_0,
5212 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5213 3, 1, 4, 3,
5214 11,
5215 OPC_CheckComplexPat3, /*#*/3,
5216 OPC_EmitMergeInputChains1_0,
5217 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5218 3, 1, 4, 2,
5219 0,
5220 0,
5221 35,
5222 OPC_RecordChild2,
5223 OPC_CheckPredicate0,
5224 OPC_CheckPredicate1,
5225 OPC_Scope, 14,
5226 OPC_CheckPatternPredicate2,
5227 OPC_CheckComplexPat0, /*#*/2,
5228 OPC_EmitMergeInputChains1_0,
5229 OPC_EmitInteger64, 0,
5230 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5231 3, 1, 3, 4,
5232 14,
5233 OPC_CheckPatternPredicate4,
5234 OPC_CheckComplexPat0, /*#*/2,
5235 OPC_EmitMergeInputChains1_0,
5236 OPC_EmitInteger32, 0,
5237 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5238 3, 1, 3, 4,
5239 0,
5240 0,
5241 17|128,1,
5242 OPC_CheckChild1Type, 62,
5243 OPC_Scope, 31,
5244 OPC_RecordChild2,
5245 OPC_CheckPredicate0,
5246 OPC_CheckPredicate1,
5247 OPC_Scope, 12,
5248 OPC_CheckPatternPredicate2,
5249 OPC_CheckComplexPat2, /*#*/2,
5250 OPC_EmitMergeInputChains1_0,
5251 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5252 3, 1, 3, 4,
5253 12,
5254 OPC_CheckPatternPredicate4,
5255 OPC_CheckComplexPat2, /*#*/2,
5256 OPC_EmitMergeInputChains1_0,
5257 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5258 3, 1, 3, 4,
5259 0,
5260 72,
5261 OPC_MoveChild2,
5262 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5263 OPC_RecordChild0,
5264 OPC_RecordChild1,
5265 OPC_SwitchType , 30, 8,
5266 OPC_MoveParent,
5267 OPC_CheckPredicate0,
5268 OPC_CheckPredicate1,
5269 OPC_CheckPatternPredicate2,
5270 OPC_Scope, 11,
5271 OPC_CheckComplexPat3, /*#*/2,
5272 OPC_EmitMergeInputChains1_0,
5273 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5274 3, 1, 4, 3,
5275 11,
5276 OPC_CheckComplexPat3, /*#*/3,
5277 OPC_EmitMergeInputChains1_0,
5278 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5279 3, 1, 4, 2,
5280 0,
5281 30, 7,
5282 OPC_MoveParent,
5283 OPC_CheckPredicate0,
5284 OPC_CheckPredicate1,
5285 OPC_CheckPatternPredicate4,
5286 OPC_Scope, 11,
5287 OPC_CheckComplexPat3, /*#*/2,
5288 OPC_EmitMergeInputChains1_0,
5289 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5290 3, 1, 4, 3,
5291 11,
5292 OPC_CheckComplexPat3, /*#*/3,
5293 OPC_EmitMergeInputChains1_0,
5294 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5295 3, 1, 4, 2,
5296 0,
5297 0,
5298 35,
5299 OPC_RecordChild2,
5300 OPC_CheckPredicate0,
5301 OPC_CheckPredicate1,
5302 OPC_Scope, 14,
5303 OPC_CheckPatternPredicate2,
5304 OPC_CheckComplexPat0, /*#*/2,
5305 OPC_EmitMergeInputChains1_0,
5306 OPC_EmitInteger64, 0,
5307 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5308 3, 1, 3, 4,
5309 14,
5310 OPC_CheckPatternPredicate4,
5311 OPC_CheckComplexPat0, /*#*/2,
5312 OPC_EmitMergeInputChains1_0,
5313 OPC_EmitInteger32, 0,
5314 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5315 3, 1, 3, 4,
5316 0,
5317 0,
5318 17|128,1,
5319 OPC_CheckChild1Type, 81,
5320 OPC_Scope, 31,
5321 OPC_RecordChild2,
5322 OPC_CheckPredicate0,
5323 OPC_CheckPredicate1,
5324 OPC_Scope, 12,
5325 OPC_CheckPatternPredicate2,
5326 OPC_CheckComplexPat2, /*#*/2,
5327 OPC_EmitMergeInputChains1_0,
5328 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5329 3, 1, 3, 4,
5330 12,
5331 OPC_CheckPatternPredicate4,
5332 OPC_CheckComplexPat2, /*#*/2,
5333 OPC_EmitMergeInputChains1_0,
5334 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5335 3, 1, 3, 4,
5336 0,
5337 72,
5338 OPC_MoveChild2,
5339 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5340 OPC_RecordChild0,
5341 OPC_RecordChild1,
5342 OPC_SwitchType , 30, 8,
5343 OPC_MoveParent,
5344 OPC_CheckPredicate0,
5345 OPC_CheckPredicate1,
5346 OPC_CheckPatternPredicate2,
5347 OPC_Scope, 11,
5348 OPC_CheckComplexPat3, /*#*/2,
5349 OPC_EmitMergeInputChains1_0,
5350 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5351 3, 1, 4, 3,
5352 11,
5353 OPC_CheckComplexPat3, /*#*/3,
5354 OPC_EmitMergeInputChains1_0,
5355 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5356 3, 1, 4, 2,
5357 0,
5358 30, 7,
5359 OPC_MoveParent,
5360 OPC_CheckPredicate0,
5361 OPC_CheckPredicate1,
5362 OPC_CheckPatternPredicate4,
5363 OPC_Scope, 11,
5364 OPC_CheckComplexPat3, /*#*/2,
5365 OPC_EmitMergeInputChains1_0,
5366 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5367 3, 1, 4, 3,
5368 11,
5369 OPC_CheckComplexPat3, /*#*/3,
5370 OPC_EmitMergeInputChains1_0,
5371 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5372 3, 1, 4, 2,
5373 0,
5374 0,
5375 35,
5376 OPC_RecordChild2,
5377 OPC_CheckPredicate0,
5378 OPC_CheckPredicate1,
5379 OPC_Scope, 14,
5380 OPC_CheckPatternPredicate2,
5381 OPC_CheckComplexPat0, /*#*/2,
5382 OPC_EmitMergeInputChains1_0,
5383 OPC_EmitInteger64, 0,
5384 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5385 3, 1, 3, 4,
5386 14,
5387 OPC_CheckPatternPredicate4,
5388 OPC_CheckComplexPat0, /*#*/2,
5389 OPC_EmitMergeInputChains1_0,
5390 OPC_EmitInteger32, 0,
5391 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5392 3, 1, 3, 4,
5393 0,
5394 0,
5395 17|128,1,
5396 OPC_CheckChild1Type, 116,
5397 OPC_Scope, 31,
5398 OPC_RecordChild2,
5399 OPC_CheckPredicate0,
5400 OPC_CheckPredicate1,
5401 OPC_Scope, 12,
5402 OPC_CheckPatternPredicate2,
5403 OPC_CheckComplexPat2, /*#*/2,
5404 OPC_EmitMergeInputChains1_0,
5405 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5406 3, 1, 3, 4,
5407 12,
5408 OPC_CheckPatternPredicate4,
5409 OPC_CheckComplexPat2, /*#*/2,
5410 OPC_EmitMergeInputChains1_0,
5411 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5412 3, 1, 3, 4,
5413 0,
5414 72,
5415 OPC_MoveChild2,
5416 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5417 OPC_RecordChild0,
5418 OPC_RecordChild1,
5419 OPC_SwitchType , 30, 8,
5420 OPC_MoveParent,
5421 OPC_CheckPredicate0,
5422 OPC_CheckPredicate1,
5423 OPC_CheckPatternPredicate2,
5424 OPC_Scope, 11,
5425 OPC_CheckComplexPat3, /*#*/2,
5426 OPC_EmitMergeInputChains1_0,
5427 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5428 3, 1, 4, 3,
5429 11,
5430 OPC_CheckComplexPat3, /*#*/3,
5431 OPC_EmitMergeInputChains1_0,
5432 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5433 3, 1, 4, 2,
5434 0,
5435 30, 7,
5436 OPC_MoveParent,
5437 OPC_CheckPredicate0,
5438 OPC_CheckPredicate1,
5439 OPC_CheckPatternPredicate4,
5440 OPC_Scope, 11,
5441 OPC_CheckComplexPat3, /*#*/2,
5442 OPC_EmitMergeInputChains1_0,
5443 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5444 3, 1, 4, 3,
5445 11,
5446 OPC_CheckComplexPat3, /*#*/3,
5447 OPC_EmitMergeInputChains1_0,
5448 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5449 3, 1, 4, 2,
5450 0,
5451 0,
5452 35,
5453 OPC_RecordChild2,
5454 OPC_CheckPredicate0,
5455 OPC_CheckPredicate1,
5456 OPC_Scope, 14,
5457 OPC_CheckPatternPredicate2,
5458 OPC_CheckComplexPat0, /*#*/2,
5459 OPC_EmitMergeInputChains1_0,
5460 OPC_EmitInteger64, 0,
5461 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5462 3, 1, 3, 4,
5463 14,
5464 OPC_CheckPatternPredicate4,
5465 OPC_CheckComplexPat0, /*#*/2,
5466 OPC_EmitMergeInputChains1_0,
5467 OPC_EmitInteger32, 0,
5468 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5469 3, 1, 3, 4,
5470 0,
5471 0,
5472 18|128,1,
5473 OPC_CheckChild1Type, 6|128,1,
5474 OPC_Scope, 31,
5475 OPC_RecordChild2,
5476 OPC_CheckPredicate0,
5477 OPC_CheckPredicate1,
5478 OPC_Scope, 12,
5479 OPC_CheckPatternPredicate2,
5480 OPC_CheckComplexPat2, /*#*/2,
5481 OPC_EmitMergeInputChains1_0,
5482 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5483 3, 1, 3, 4,
5484 12,
5485 OPC_CheckPatternPredicate4,
5486 OPC_CheckComplexPat2, /*#*/2,
5487 OPC_EmitMergeInputChains1_0,
5488 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5489 3, 1, 3, 4,
5490 0,
5491 72,
5492 OPC_MoveChild2,
5493 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5494 OPC_RecordChild0,
5495 OPC_RecordChild1,
5496 OPC_SwitchType , 30, 8,
5497 OPC_MoveParent,
5498 OPC_CheckPredicate0,
5499 OPC_CheckPredicate1,
5500 OPC_CheckPatternPredicate2,
5501 OPC_Scope, 11,
5502 OPC_CheckComplexPat3, /*#*/2,
5503 OPC_EmitMergeInputChains1_0,
5504 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5505 3, 1, 4, 3,
5506 11,
5507 OPC_CheckComplexPat3, /*#*/3,
5508 OPC_EmitMergeInputChains1_0,
5509 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5510 3, 1, 4, 2,
5511 0,
5512 30, 7,
5513 OPC_MoveParent,
5514 OPC_CheckPredicate0,
5515 OPC_CheckPredicate1,
5516 OPC_CheckPatternPredicate4,
5517 OPC_Scope, 11,
5518 OPC_CheckComplexPat3, /*#*/2,
5519 OPC_EmitMergeInputChains1_0,
5520 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5521 3, 1, 4, 3,
5522 11,
5523 OPC_CheckComplexPat3, /*#*/3,
5524 OPC_EmitMergeInputChains1_0,
5525 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VSTX), 0|OPFL_Chain|OPFL_MemRefs,
5526 3, 1, 4, 2,
5527 0,
5528 0,
5529 35,
5530 OPC_RecordChild2,
5531 OPC_CheckPredicate0,
5532 OPC_CheckPredicate1,
5533 OPC_Scope, 14,
5534 OPC_CheckPatternPredicate2,
5535 OPC_CheckComplexPat0, /*#*/2,
5536 OPC_EmitMergeInputChains1_0,
5537 OPC_EmitInteger64, 0,
5538 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5539 3, 1, 3, 4,
5540 14,
5541 OPC_CheckPatternPredicate4,
5542 OPC_CheckComplexPat0, /*#*/2,
5543 OPC_EmitMergeInputChains1_0,
5544 OPC_EmitInteger32, 0,
5545 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::VST), 0|OPFL_Chain|OPFL_MemRefs,
5546 3, 1, 3, 4,
5547 0,
5548 0,
5549 30|128,1,
5550 OPC_CheckChild1Type, 41,
5551 OPC_Scope, 42,
5552 OPC_MoveChild2,
5553 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5554 OPC_RecordChild0,
5555 OPC_RecordChild1,
5556 OPC_SwitchType , 15, 8,
5557 OPC_MoveParent,
5558 OPC_CheckPredicate0,
5559 OPC_CheckPredicate1,
5560 OPC_CheckPatternPredicate3,
5561 OPC_CheckComplexPat3, /*#*/2,
5562 OPC_EmitMergeInputChains1_0,
5563 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5564 3, 1, 4, 3,
5565 15, 7,
5566 OPC_MoveParent,
5567 OPC_CheckPredicate0,
5568 OPC_CheckPredicate1,
5569 OPC_CheckPatternPredicate5,
5570 OPC_CheckComplexPat3, /*#*/2,
5571 OPC_EmitMergeInputChains1_0,
5572 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5573 3, 1, 4, 3,
5574 0,
5575 31,
5576 OPC_RecordChild2,
5577 OPC_CheckPredicate0,
5578 OPC_CheckPredicate1,
5579 OPC_Scope, 12,
5580 OPC_CheckPatternPredicate3,
5581 OPC_CheckComplexPat2, /*#*/2,
5582 OPC_EmitMergeInputChains1_0,
5583 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5584 3, 1, 3, 4,
5585 12,
5586 OPC_CheckPatternPredicate5,
5587 OPC_CheckComplexPat2, /*#*/2,
5588 OPC_EmitMergeInputChains1_0,
5589 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5590 3, 1, 3, 4,
5591 0,
5592 42,
5593 OPC_MoveChild2,
5594 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5595 OPC_RecordChild0,
5596 OPC_RecordChild1,
5597 OPC_SwitchType , 15, 8,
5598 OPC_MoveParent,
5599 OPC_CheckPredicate0,
5600 OPC_CheckPredicate1,
5601 OPC_CheckPatternPredicate3,
5602 OPC_CheckComplexPat3, /*#*/3,
5603 OPC_EmitMergeInputChains1_0,
5604 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5605 3, 1, 4, 2,
5606 15, 7,
5607 OPC_MoveParent,
5608 OPC_CheckPredicate0,
5609 OPC_CheckPredicate1,
5610 OPC_CheckPatternPredicate5,
5611 OPC_CheckComplexPat3, /*#*/3,
5612 OPC_EmitMergeInputChains1_0,
5613 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5614 3, 1, 4, 2,
5615 0,
5616 35,
5617 OPC_RecordChild2,
5618 OPC_CheckPredicate0,
5619 OPC_CheckPredicate1,
5620 OPC_Scope, 14,
5621 OPC_CheckPatternPredicate3,
5622 OPC_CheckComplexPat0, /*#*/2,
5623 OPC_EmitMergeInputChains1_0,
5624 OPC_EmitInteger64, 0,
5625 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5626 3, 1, 3, 4,
5627 14,
5628 OPC_CheckPatternPredicate5,
5629 OPC_CheckComplexPat0, /*#*/2,
5630 OPC_EmitMergeInputChains1_0,
5631 OPC_EmitInteger32, 0,
5632 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5633 3, 1, 3, 4,
5634 0,
5635 0,
5636 17|128,1,
5637 OPC_CheckChild1Type, 52,
5638 OPC_Scope, 31,
5639 OPC_RecordChild2,
5640 OPC_CheckPredicate0,
5641 OPC_CheckPredicate1,
5642 OPC_Scope, 12,
5643 OPC_CheckPatternPredicate3,
5644 OPC_CheckComplexPat2, /*#*/2,
5645 OPC_EmitMergeInputChains1_0,
5646 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5647 3, 1, 3, 4,
5648 12,
5649 OPC_CheckPatternPredicate5,
5650 OPC_CheckComplexPat2, /*#*/2,
5651 OPC_EmitMergeInputChains1_0,
5652 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5653 3, 1, 3, 4,
5654 0,
5655 72,
5656 OPC_MoveChild2,
5657 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5658 OPC_RecordChild0,
5659 OPC_RecordChild1,
5660 OPC_SwitchType , 30, 8,
5661 OPC_MoveParent,
5662 OPC_CheckPredicate0,
5663 OPC_CheckPredicate1,
5664 OPC_CheckPatternPredicate3,
5665 OPC_Scope, 11,
5666 OPC_CheckComplexPat3, /*#*/2,
5667 OPC_EmitMergeInputChains1_0,
5668 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5669 3, 1, 4, 3,
5670 11,
5671 OPC_CheckComplexPat3, /*#*/3,
5672 OPC_EmitMergeInputChains1_0,
5673 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5674 3, 1, 4, 2,
5675 0,
5676 30, 7,
5677 OPC_MoveParent,
5678 OPC_CheckPredicate0,
5679 OPC_CheckPredicate1,
5680 OPC_CheckPatternPredicate5,
5681 OPC_Scope, 11,
5682 OPC_CheckComplexPat3, /*#*/2,
5683 OPC_EmitMergeInputChains1_0,
5684 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5685 3, 1, 4, 3,
5686 11,
5687 OPC_CheckComplexPat3, /*#*/3,
5688 OPC_EmitMergeInputChains1_0,
5689 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5690 3, 1, 4, 2,
5691 0,
5692 0,
5693 35,
5694 OPC_RecordChild2,
5695 OPC_CheckPredicate0,
5696 OPC_CheckPredicate1,
5697 OPC_Scope, 14,
5698 OPC_CheckPatternPredicate3,
5699 OPC_CheckComplexPat0, /*#*/2,
5700 OPC_EmitMergeInputChains1_0,
5701 OPC_EmitInteger64, 0,
5702 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5703 3, 1, 3, 4,
5704 14,
5705 OPC_CheckPatternPredicate5,
5706 OPC_CheckComplexPat0, /*#*/2,
5707 OPC_EmitMergeInputChains1_0,
5708 OPC_EmitInteger32, 0,
5709 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5710 3, 1, 3, 4,
5711 0,
5712 0,
5713 17|128,1,
5714 OPC_CheckChild1Type, 66,
5715 OPC_Scope, 31,
5716 OPC_RecordChild2,
5717 OPC_CheckPredicate0,
5718 OPC_CheckPredicate1,
5719 OPC_Scope, 12,
5720 OPC_CheckPatternPredicate3,
5721 OPC_CheckComplexPat2, /*#*/2,
5722 OPC_EmitMergeInputChains1_0,
5723 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5724 3, 1, 3, 4,
5725 12,
5726 OPC_CheckPatternPredicate5,
5727 OPC_CheckComplexPat2, /*#*/2,
5728 OPC_EmitMergeInputChains1_0,
5729 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5730 3, 1, 3, 4,
5731 0,
5732 72,
5733 OPC_MoveChild2,
5734 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5735 OPC_RecordChild0,
5736 OPC_RecordChild1,
5737 OPC_SwitchType , 30, 8,
5738 OPC_MoveParent,
5739 OPC_CheckPredicate0,
5740 OPC_CheckPredicate1,
5741 OPC_CheckPatternPredicate3,
5742 OPC_Scope, 11,
5743 OPC_CheckComplexPat3, /*#*/2,
5744 OPC_EmitMergeInputChains1_0,
5745 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5746 3, 1, 4, 3,
5747 11,
5748 OPC_CheckComplexPat3, /*#*/3,
5749 OPC_EmitMergeInputChains1_0,
5750 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5751 3, 1, 4, 2,
5752 0,
5753 30, 7,
5754 OPC_MoveParent,
5755 OPC_CheckPredicate0,
5756 OPC_CheckPredicate1,
5757 OPC_CheckPatternPredicate5,
5758 OPC_Scope, 11,
5759 OPC_CheckComplexPat3, /*#*/2,
5760 OPC_EmitMergeInputChains1_0,
5761 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5762 3, 1, 4, 3,
5763 11,
5764 OPC_CheckComplexPat3, /*#*/3,
5765 OPC_EmitMergeInputChains1_0,
5766 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5767 3, 1, 4, 2,
5768 0,
5769 0,
5770 35,
5771 OPC_RecordChild2,
5772 OPC_CheckPredicate0,
5773 OPC_CheckPredicate1,
5774 OPC_Scope, 14,
5775 OPC_CheckPatternPredicate3,
5776 OPC_CheckComplexPat0, /*#*/2,
5777 OPC_EmitMergeInputChains1_0,
5778 OPC_EmitInteger64, 0,
5779 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5780 3, 1, 3, 4,
5781 14,
5782 OPC_CheckPatternPredicate5,
5783 OPC_CheckComplexPat0, /*#*/2,
5784 OPC_EmitMergeInputChains1_0,
5785 OPC_EmitInteger32, 0,
5786 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5787 3, 1, 3, 4,
5788 0,
5789 0,
5790 17|128,1,
5791 OPC_CheckChild1Type, 83,
5792 OPC_Scope, 31,
5793 OPC_RecordChild2,
5794 OPC_CheckPredicate0,
5795 OPC_CheckPredicate1,
5796 OPC_Scope, 12,
5797 OPC_CheckPatternPredicate3,
5798 OPC_CheckComplexPat2, /*#*/2,
5799 OPC_EmitMergeInputChains1_0,
5800 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5801 3, 1, 3, 4,
5802 12,
5803 OPC_CheckPatternPredicate5,
5804 OPC_CheckComplexPat2, /*#*/2,
5805 OPC_EmitMergeInputChains1_0,
5806 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5807 3, 1, 3, 4,
5808 0,
5809 72,
5810 OPC_MoveChild2,
5811 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5812 OPC_RecordChild0,
5813 OPC_RecordChild1,
5814 OPC_SwitchType , 30, 8,
5815 OPC_MoveParent,
5816 OPC_CheckPredicate0,
5817 OPC_CheckPredicate1,
5818 OPC_CheckPatternPredicate3,
5819 OPC_Scope, 11,
5820 OPC_CheckComplexPat3, /*#*/2,
5821 OPC_EmitMergeInputChains1_0,
5822 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5823 3, 1, 4, 3,
5824 11,
5825 OPC_CheckComplexPat3, /*#*/3,
5826 OPC_EmitMergeInputChains1_0,
5827 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5828 3, 1, 4, 2,
5829 0,
5830 30, 7,
5831 OPC_MoveParent,
5832 OPC_CheckPredicate0,
5833 OPC_CheckPredicate1,
5834 OPC_CheckPatternPredicate5,
5835 OPC_Scope, 11,
5836 OPC_CheckComplexPat3, /*#*/2,
5837 OPC_EmitMergeInputChains1_0,
5838 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5839 3, 1, 4, 3,
5840 11,
5841 OPC_CheckComplexPat3, /*#*/3,
5842 OPC_EmitMergeInputChains1_0,
5843 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5844 3, 1, 4, 2,
5845 0,
5846 0,
5847 35,
5848 OPC_RecordChild2,
5849 OPC_CheckPredicate0,
5850 OPC_CheckPredicate1,
5851 OPC_Scope, 14,
5852 OPC_CheckPatternPredicate3,
5853 OPC_CheckComplexPat0, /*#*/2,
5854 OPC_EmitMergeInputChains1_0,
5855 OPC_EmitInteger64, 0,
5856 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5857 3, 1, 3, 4,
5858 14,
5859 OPC_CheckPatternPredicate5,
5860 OPC_CheckComplexPat0, /*#*/2,
5861 OPC_EmitMergeInputChains1_0,
5862 OPC_EmitInteger32, 0,
5863 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5864 3, 1, 3, 4,
5865 0,
5866 0,
5867 17|128,1,
5868 OPC_CheckChild1Type, 120,
5869 OPC_Scope, 31,
5870 OPC_RecordChild2,
5871 OPC_CheckPredicate0,
5872 OPC_CheckPredicate1,
5873 OPC_Scope, 12,
5874 OPC_CheckPatternPredicate3,
5875 OPC_CheckComplexPat2, /*#*/2,
5876 OPC_EmitMergeInputChains1_0,
5877 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5878 3, 1, 3, 4,
5879 12,
5880 OPC_CheckPatternPredicate5,
5881 OPC_CheckComplexPat2, /*#*/2,
5882 OPC_EmitMergeInputChains1_0,
5883 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5884 3, 1, 3, 4,
5885 0,
5886 72,
5887 OPC_MoveChild2,
5888 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5889 OPC_RecordChild0,
5890 OPC_RecordChild1,
5891 OPC_SwitchType , 30, 8,
5892 OPC_MoveParent,
5893 OPC_CheckPredicate0,
5894 OPC_CheckPredicate1,
5895 OPC_CheckPatternPredicate3,
5896 OPC_Scope, 11,
5897 OPC_CheckComplexPat3, /*#*/2,
5898 OPC_EmitMergeInputChains1_0,
5899 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5900 3, 1, 4, 3,
5901 11,
5902 OPC_CheckComplexPat3, /*#*/3,
5903 OPC_EmitMergeInputChains1_0,
5904 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5905 3, 1, 4, 2,
5906 0,
5907 30, 7,
5908 OPC_MoveParent,
5909 OPC_CheckPredicate0,
5910 OPC_CheckPredicate1,
5911 OPC_CheckPatternPredicate5,
5912 OPC_Scope, 11,
5913 OPC_CheckComplexPat3, /*#*/2,
5914 OPC_EmitMergeInputChains1_0,
5915 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5916 3, 1, 4, 3,
5917 11,
5918 OPC_CheckComplexPat3, /*#*/3,
5919 OPC_EmitMergeInputChains1_0,
5920 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5921 3, 1, 4, 2,
5922 0,
5923 0,
5924 35,
5925 OPC_RecordChild2,
5926 OPC_CheckPredicate0,
5927 OPC_CheckPredicate1,
5928 OPC_Scope, 14,
5929 OPC_CheckPatternPredicate3,
5930 OPC_CheckComplexPat0, /*#*/2,
5931 OPC_EmitMergeInputChains1_0,
5932 OPC_EmitInteger64, 0,
5933 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5934 3, 1, 3, 4,
5935 14,
5936 OPC_CheckPatternPredicate5,
5937 OPC_CheckComplexPat0, /*#*/2,
5938 OPC_EmitMergeInputChains1_0,
5939 OPC_EmitInteger32, 0,
5940 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5941 3, 1, 3, 4,
5942 0,
5943 0,
5944 18|128,1,
5945 OPC_CheckChild1Type, 8|128,1,
5946 OPC_Scope, 31,
5947 OPC_RecordChild2,
5948 OPC_CheckPredicate0,
5949 OPC_CheckPredicate1,
5950 OPC_Scope, 12,
5951 OPC_CheckPatternPredicate3,
5952 OPC_CheckComplexPat2, /*#*/2,
5953 OPC_EmitMergeInputChains1_0,
5954 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5955 3, 1, 3, 4,
5956 12,
5957 OPC_CheckPatternPredicate5,
5958 OPC_CheckComplexPat2, /*#*/2,
5959 OPC_EmitMergeInputChains1_0,
5960 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
5961 3, 1, 3, 4,
5962 0,
5963 72,
5964 OPC_MoveChild2,
5965 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
5966 OPC_RecordChild0,
5967 OPC_RecordChild1,
5968 OPC_SwitchType , 30, 8,
5969 OPC_MoveParent,
5970 OPC_CheckPredicate0,
5971 OPC_CheckPredicate1,
5972 OPC_CheckPatternPredicate3,
5973 OPC_Scope, 11,
5974 OPC_CheckComplexPat3, /*#*/2,
5975 OPC_EmitMergeInputChains1_0,
5976 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5977 3, 1, 4, 3,
5978 11,
5979 OPC_CheckComplexPat3, /*#*/3,
5980 OPC_EmitMergeInputChains1_0,
5981 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5982 3, 1, 4, 2,
5983 0,
5984 30, 7,
5985 OPC_MoveParent,
5986 OPC_CheckPredicate0,
5987 OPC_CheckPredicate1,
5988 OPC_CheckPatternPredicate5,
5989 OPC_Scope, 11,
5990 OPC_CheckComplexPat3, /*#*/2,
5991 OPC_EmitMergeInputChains1_0,
5992 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5993 3, 1, 4, 3,
5994 11,
5995 OPC_CheckComplexPat3, /*#*/3,
5996 OPC_EmitMergeInputChains1_0,
5997 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVSTX), 0|OPFL_Chain|OPFL_MemRefs,
5998 3, 1, 4, 2,
5999 0,
6000 0,
6001 35,
6002 OPC_RecordChild2,
6003 OPC_CheckPredicate0,
6004 OPC_CheckPredicate1,
6005 OPC_Scope, 14,
6006 OPC_CheckPatternPredicate3,
6007 OPC_CheckComplexPat0, /*#*/2,
6008 OPC_EmitMergeInputChains1_0,
6009 OPC_EmitInteger64, 0,
6010 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
6011 3, 1, 3, 4,
6012 14,
6013 OPC_CheckPatternPredicate5,
6014 OPC_CheckComplexPat0, /*#*/2,
6015 OPC_EmitMergeInputChains1_0,
6016 OPC_EmitInteger32, 0,
6017 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::XVST), 0|OPFL_Chain|OPFL_MemRefs,
6018 3, 1, 3, 4,
6019 0,
6020 0,
6021 0,
6022 0,
6023 110|128,1, TARGET_VAL(LoongArchISD::BSTRPICK),
6024 OPC_Scope, 125,
6025 OPC_MoveChild0,
6026 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
6027 OPC_Scope, 58,
6028 OPC_RecordChild0,
6029 OPC_MoveChild1,
6030 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6031 OPC_RecordChild0,
6032 OPC_RecordChild1,
6033 OPC_MoveChild1,
6034 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6035 OPC_CheckPredicate, 43,
6036 OPC_SwitchType , 19, 8,
6037 OPC_MoveParent,
6038 OPC_MoveParent,
6039 OPC_MoveParent,
6040 OPC_CheckChild1Integer, 62,
6041 OPC_CheckChild1TypeI64,
6042 OPC_CheckChild2Integer, 0,
6043 OPC_CheckTypeI64,
6044 OPC_CheckPatternPredicate6,
6045 OPC_EmitConvertToTarget2,
6046 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_WU),
6047 8, 3, 1, 0, 3,
6048 20, 7,
6049 OPC_MoveParent,
6050 OPC_MoveParent,
6051 OPC_MoveParent,
6052 OPC_CheckChild1Integer, 62,
6053 OPC_CheckChild1TypeI64,
6054 OPC_CheckChild2Integer, 0,
6055 OPC_CheckTypeI32,
6056 OPC_CheckPatternPredicate, 9,
6057 OPC_EmitConvertToTarget2,
6058 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_WU),
6059 7, 3, 1, 0, 3,
6060 0,
6061 59,
6062 OPC_MoveChild0,
6063 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6064 OPC_RecordChild0,
6065 OPC_RecordChild1,
6066 OPC_MoveChild1,
6067 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6068 OPC_CheckPredicate, 43,
6069 OPC_SwitchType , 20, 8,
6070 OPC_MoveParent,
6071 OPC_MoveParent,
6072 OPC_RecordChild1,
6073 OPC_MoveParent,
6074 OPC_CheckChild1Integer, 62,
6075 OPC_CheckChild1TypeI64,
6076 OPC_CheckChild2Integer, 0,
6077 OPC_CheckTypeI64,
6078 OPC_CheckPatternPredicate6,
6079 OPC_EmitConvertToTarget1,
6080 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_WU),
6081 8, 3, 0, 2, 3,
6082 21, 7,
6083 OPC_MoveParent,
6084 OPC_MoveParent,
6085 OPC_RecordChild1,
6086 OPC_MoveParent,
6087 OPC_CheckChild1Integer, 62,
6088 OPC_CheckChild1TypeI64,
6089 OPC_CheckChild2Integer, 0,
6090 OPC_CheckTypeI32,
6091 OPC_CheckPatternPredicate, 9,
6092 OPC_EmitConvertToTarget1,
6093 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_WU),
6094 7, 3, 0, 2, 3,
6095 0,
6096 0,
6097 109,
6098 OPC_RecordChild0,
6099 OPC_RecordChild1,
6100 OPC_MoveChild1,
6101 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6102 OPC_Scope, 50,
6103 OPC_CheckPredicate, 25,
6104 OPC_SwitchType , 21, 8,
6105 OPC_MoveSibling2,
6106 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6107 OPC_RecordNode,
6108 OPC_CheckPredicate, 25,
6109 OPC_MoveParent,
6110 OPC_CheckTypeI64,
6111 OPC_CheckPatternPredicate, 20,
6112 OPC_EmitConvertToTarget1,
6113 OPC_EmitConvertToTarget2,
6114 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRPICK_W),
6115 8, 3, 0, 3, 4,
6116 21, 7,
6117 OPC_MoveSibling2,
6118 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6119 OPC_RecordNode,
6120 OPC_CheckPredicate, 25,
6121 OPC_MoveParent,
6122 OPC_CheckTypeI32,
6123 OPC_CheckPatternPredicate, 16,
6124 OPC_EmitConvertToTarget1,
6125 OPC_EmitConvertToTarget2,
6126 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRPICK_W),
6127 7, 3, 0, 3, 4,
6128 0,
6129 49,
6130 OPC_CheckPredicate, 33,
6131 OPC_SwitchType , 20, 8,
6132 OPC_MoveSibling2,
6133 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6134 OPC_RecordNode,
6135 OPC_CheckPredicate, 33,
6136 OPC_MoveParent,
6137 OPC_CheckTypeI64,
6138 OPC_CheckPatternPredicate6,
6139 OPC_EmitConvertToTarget1,
6140 OPC_EmitConvertToTarget2,
6141 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRPICK_D),
6142 8, 3, 0, 3, 4,
6143 21, 7,
6144 OPC_MoveSibling2,
6145 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6146 OPC_RecordNode,
6147 OPC_CheckPredicate, 33,
6148 OPC_MoveParent,
6149 OPC_CheckTypeI32,
6150 OPC_CheckPatternPredicate, 9,
6151 OPC_EmitConvertToTarget1,
6152 OPC_EmitConvertToTarget2,
6153 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRPICK_D),
6154 7, 3, 0, 3, 4,
6155 0,
6156 0,
6157 0,
6158 22|128,22, TARGET_VAL(ISD::OR),
6159 OPC_Scope, 101|128,6,
6160 OPC_MoveChild0,
6161 OPC_SwitchOpcode , 45|128,3, TARGET_VAL(ISD::SHL),
6162 OPC_RecordChild0,
6163 OPC_Scope, 85,
6164 OPC_CheckChild1Integer, 16,
6165 OPC_Scope, 40,
6166 OPC_CheckChild1TypeI32,
6167 OPC_MoveSibling1,
6168 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
6169 OPC_RecordChild0,
6170 OPC_CheckChild1Integer, 48,
6171 OPC_CheckChild1TypeI32,
6172 OPC_MoveParent,
6173 OPC_SwitchType , 12, 8,
6174 OPC_CheckPatternPredicate, 20,
6175 OPC_EmitInteger64, 2,
6176 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6177 8, 3, 1, 0, 2,
6178 12, 7,
6179 OPC_CheckPatternPredicate, 16,
6180 OPC_EmitInteger32, 2,
6181 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6182 7, 3, 1, 0, 2,
6183 0,
6184 39,
6185 OPC_CheckChild1TypeI64,
6186 OPC_MoveSibling1,
6187 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
6188 OPC_RecordChild0,
6189 OPC_CheckChild1Integer, 112,
6190 OPC_CheckChild1TypeI64,
6191 OPC_MoveParent,
6192 OPC_SwitchType , 11, 8,
6193 OPC_CheckPatternPredicate6,
6194 OPC_EmitInteger64, 2,
6195 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6196 8, 3, 1, 0, 2,
6197 12, 7,
6198 OPC_CheckPatternPredicate, 9,
6199 OPC_EmitInteger32, 2,
6200 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6201 7, 3, 1, 0, 2,
6202 0,
6203 0,
6204 85,
6205 OPC_CheckChild1Integer, 32,
6206 OPC_Scope, 40,
6207 OPC_CheckChild1TypeI32,
6208 OPC_MoveSibling1,
6209 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
6210 OPC_RecordChild0,
6211 OPC_CheckChild1Integer, 32,
6212 OPC_CheckChild1TypeI32,
6213 OPC_MoveParent,
6214 OPC_SwitchType , 12, 8,
6215 OPC_CheckPatternPredicate, 20,
6216 OPC_EmitInteger64, 4,
6217 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6218 8, 3, 1, 0, 2,
6219 12, 7,
6220 OPC_CheckPatternPredicate, 16,
6221 OPC_EmitInteger32, 4,
6222 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6223 7, 3, 1, 0, 2,
6224 0,
6225 39,
6226 OPC_CheckChild1TypeI64,
6227 OPC_MoveSibling1,
6228 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
6229 OPC_RecordChild0,
6230 OPC_CheckChild1Integer, 96,
6231 OPC_CheckChild1TypeI64,
6232 OPC_MoveParent,
6233 OPC_SwitchType , 11, 8,
6234 OPC_CheckPatternPredicate6,
6235 OPC_EmitInteger64, 4,
6236 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6237 8, 3, 1, 0, 2,
6238 12, 7,
6239 OPC_CheckPatternPredicate, 9,
6240 OPC_EmitInteger32, 4,
6241 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6242 7, 3, 1, 0, 2,
6243 0,
6244 0,
6245 85,
6246 OPC_CheckChild1Integer, 48,
6247 OPC_Scope, 40,
6248 OPC_CheckChild1TypeI32,
6249 OPC_MoveSibling1,
6250 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
6251 OPC_RecordChild0,
6252 OPC_CheckChild1Integer, 16,
6253 OPC_CheckChild1TypeI32,
6254 OPC_MoveParent,
6255 OPC_SwitchType , 12, 8,
6256 OPC_CheckPatternPredicate, 20,
6257 OPC_EmitInteger64, 6,
6258 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6259 8, 3, 1, 0, 2,
6260 12, 7,
6261 OPC_CheckPatternPredicate, 16,
6262 OPC_EmitInteger32, 6,
6263 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6264 7, 3, 1, 0, 2,
6265 0,
6266 39,
6267 OPC_CheckChild1TypeI64,
6268 OPC_MoveSibling1,
6269 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
6270 OPC_RecordChild0,
6271 OPC_CheckChild1Integer, 80,
6272 OPC_CheckChild1TypeI64,
6273 OPC_MoveParent,
6274 OPC_SwitchType , 11, 8,
6275 OPC_CheckPatternPredicate6,
6276 OPC_EmitInteger64, 6,
6277 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6278 8, 3, 1, 0, 2,
6279 12, 7,
6280 OPC_CheckPatternPredicate, 9,
6281 OPC_EmitInteger32, 6,
6282 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6283 7, 3, 1, 0, 2,
6284 0,
6285 0,
6286 41,
6287 OPC_CheckChild1Integer, 64,
6288 OPC_CheckChild1TypeI64,
6289 OPC_MoveSibling1,
6290 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
6291 OPC_RecordChild0,
6292 OPC_CheckChild1Integer, 64,
6293 OPC_CheckChild1TypeI64,
6294 OPC_MoveParent,
6295 OPC_SwitchType , 11, 8,
6296 OPC_CheckPatternPredicate6,
6297 OPC_EmitInteger64, 8,
6298 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6299 8, 3, 1, 0, 2,
6300 12, 7,
6301 OPC_CheckPatternPredicate, 9,
6302 OPC_EmitInteger32, 8,
6303 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6304 7, 3, 1, 0, 2,
6305 0,
6306 41,
6307 OPC_CheckChild1Integer, 80,
6308 OPC_CheckChild1TypeI64,
6309 OPC_MoveSibling1,
6310 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
6311 OPC_RecordChild0,
6312 OPC_CheckChild1Integer, 48,
6313 OPC_CheckChild1TypeI64,
6314 OPC_MoveParent,
6315 OPC_SwitchType , 11, 8,
6316 OPC_CheckPatternPredicate6,
6317 OPC_EmitInteger64, 10,
6318 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6319 8, 3, 1, 0, 2,
6320 12, 7,
6321 OPC_CheckPatternPredicate, 9,
6322 OPC_EmitInteger32, 10,
6323 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6324 7, 3, 1, 0, 2,
6325 0,
6326 41,
6327 OPC_CheckChild1Integer, 96,
6328 OPC_CheckChild1TypeI64,
6329 OPC_MoveSibling1,
6330 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
6331 OPC_RecordChild0,
6332 OPC_CheckChild1Integer, 32,
6333 OPC_CheckChild1TypeI64,
6334 OPC_MoveParent,
6335 OPC_SwitchType , 11, 8,
6336 OPC_CheckPatternPredicate6,
6337 OPC_EmitInteger64, 12,
6338 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6339 8, 3, 1, 0, 2,
6340 12, 7,
6341 OPC_CheckPatternPredicate, 9,
6342 OPC_EmitInteger32, 12,
6343 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6344 7, 3, 1, 0, 2,
6345 0,
6346 41,
6347 OPC_CheckChild1Integer, 112,
6348 OPC_CheckChild1TypeI64,
6349 OPC_MoveSibling1,
6350 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
6351 OPC_RecordChild0,
6352 OPC_CheckChild1Integer, 16,
6353 OPC_CheckChild1TypeI64,
6354 OPC_MoveParent,
6355 OPC_SwitchType , 11, 8,
6356 OPC_CheckPatternPredicate6,
6357 OPC_EmitInteger64, 14,
6358 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6359 8, 3, 1, 0, 2,
6360 12, 7,
6361 OPC_CheckPatternPredicate, 9,
6362 OPC_EmitInteger32, 14,
6363 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6364 7, 3, 1, 0, 2,
6365 0,
6366 0,
6367 45|128,3, TARGET_VAL(ISD::SRL),
6368 OPC_RecordChild0,
6369 OPC_Scope, 85,
6370 OPC_CheckChild1Integer, 48,
6371 OPC_Scope, 40,
6372 OPC_CheckChild1TypeI32,
6373 OPC_MoveSibling1,
6374 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6375 OPC_RecordChild0,
6376 OPC_CheckChild1Integer, 16,
6377 OPC_CheckChild1TypeI32,
6378 OPC_MoveParent,
6379 OPC_SwitchType , 12, 8,
6380 OPC_CheckPatternPredicate, 20,
6381 OPC_EmitInteger64, 2,
6382 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6383 8, 3, 0, 1, 2,
6384 12, 7,
6385 OPC_CheckPatternPredicate, 16,
6386 OPC_EmitInteger32, 2,
6387 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6388 7, 3, 0, 1, 2,
6389 0,
6390 39,
6391 OPC_CheckChild1TypeI64,
6392 OPC_MoveSibling1,
6393 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6394 OPC_RecordChild0,
6395 OPC_CheckChild1Integer, 80,
6396 OPC_CheckChild1TypeI64,
6397 OPC_MoveParent,
6398 OPC_SwitchType , 11, 8,
6399 OPC_CheckPatternPredicate6,
6400 OPC_EmitInteger64, 10,
6401 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6402 8, 3, 0, 1, 2,
6403 12, 7,
6404 OPC_CheckPatternPredicate, 9,
6405 OPC_EmitInteger32, 10,
6406 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6407 7, 3, 0, 1, 2,
6408 0,
6409 0,
6410 85,
6411 OPC_CheckChild1Integer, 32,
6412 OPC_Scope, 40,
6413 OPC_CheckChild1TypeI32,
6414 OPC_MoveSibling1,
6415 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6416 OPC_RecordChild0,
6417 OPC_CheckChild1Integer, 32,
6418 OPC_CheckChild1TypeI32,
6419 OPC_MoveParent,
6420 OPC_SwitchType , 12, 8,
6421 OPC_CheckPatternPredicate, 20,
6422 OPC_EmitInteger64, 4,
6423 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6424 8, 3, 0, 1, 2,
6425 12, 7,
6426 OPC_CheckPatternPredicate, 16,
6427 OPC_EmitInteger32, 4,
6428 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6429 7, 3, 0, 1, 2,
6430 0,
6431 39,
6432 OPC_CheckChild1TypeI64,
6433 OPC_MoveSibling1,
6434 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6435 OPC_RecordChild0,
6436 OPC_CheckChild1Integer, 96,
6437 OPC_CheckChild1TypeI64,
6438 OPC_MoveParent,
6439 OPC_SwitchType , 11, 8,
6440 OPC_CheckPatternPredicate6,
6441 OPC_EmitInteger64, 12,
6442 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6443 8, 3, 0, 1, 2,
6444 12, 7,
6445 OPC_CheckPatternPredicate, 9,
6446 OPC_EmitInteger32, 12,
6447 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6448 7, 3, 0, 1, 2,
6449 0,
6450 0,
6451 85,
6452 OPC_CheckChild1Integer, 16,
6453 OPC_Scope, 40,
6454 OPC_CheckChild1TypeI32,
6455 OPC_MoveSibling1,
6456 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6457 OPC_RecordChild0,
6458 OPC_CheckChild1Integer, 48,
6459 OPC_CheckChild1TypeI32,
6460 OPC_MoveParent,
6461 OPC_SwitchType , 12, 8,
6462 OPC_CheckPatternPredicate, 20,
6463 OPC_EmitInteger64, 6,
6464 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6465 8, 3, 0, 1, 2,
6466 12, 7,
6467 OPC_CheckPatternPredicate, 16,
6468 OPC_EmitInteger32, 6,
6469 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_W),
6470 7, 3, 0, 1, 2,
6471 0,
6472 39,
6473 OPC_CheckChild1TypeI64,
6474 OPC_MoveSibling1,
6475 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6476 OPC_RecordChild0,
6477 OPC_CheckChild1Integer, 112,
6478 OPC_CheckChild1TypeI64,
6479 OPC_MoveParent,
6480 OPC_SwitchType , 11, 8,
6481 OPC_CheckPatternPredicate6,
6482 OPC_EmitInteger64, 14,
6483 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6484 8, 3, 0, 1, 2,
6485 12, 7,
6486 OPC_CheckPatternPredicate, 9,
6487 OPC_EmitInteger32, 14,
6488 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6489 7, 3, 0, 1, 2,
6490 0,
6491 0,
6492 41,
6493 OPC_CheckChild1Integer, 112,
6494 OPC_CheckChild1TypeI64,
6495 OPC_MoveSibling1,
6496 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6497 OPC_RecordChild0,
6498 OPC_CheckChild1Integer, 16,
6499 OPC_CheckChild1TypeI64,
6500 OPC_MoveParent,
6501 OPC_SwitchType , 11, 8,
6502 OPC_CheckPatternPredicate6,
6503 OPC_EmitInteger64, 2,
6504 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6505 8, 3, 0, 1, 2,
6506 12, 7,
6507 OPC_CheckPatternPredicate, 9,
6508 OPC_EmitInteger32, 2,
6509 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6510 7, 3, 0, 1, 2,
6511 0,
6512 41,
6513 OPC_CheckChild1Integer, 96,
6514 OPC_CheckChild1TypeI64,
6515 OPC_MoveSibling1,
6516 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6517 OPC_RecordChild0,
6518 OPC_CheckChild1Integer, 32,
6519 OPC_CheckChild1TypeI64,
6520 OPC_MoveParent,
6521 OPC_SwitchType , 11, 8,
6522 OPC_CheckPatternPredicate6,
6523 OPC_EmitInteger64, 4,
6524 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6525 8, 3, 0, 1, 2,
6526 12, 7,
6527 OPC_CheckPatternPredicate, 9,
6528 OPC_EmitInteger32, 4,
6529 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6530 7, 3, 0, 1, 2,
6531 0,
6532 41,
6533 OPC_CheckChild1Integer, 80,
6534 OPC_CheckChild1TypeI64,
6535 OPC_MoveSibling1,
6536 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6537 OPC_RecordChild0,
6538 OPC_CheckChild1Integer, 48,
6539 OPC_CheckChild1TypeI64,
6540 OPC_MoveParent,
6541 OPC_SwitchType , 11, 8,
6542 OPC_CheckPatternPredicate6,
6543 OPC_EmitInteger64, 6,
6544 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6545 8, 3, 0, 1, 2,
6546 12, 7,
6547 OPC_CheckPatternPredicate, 9,
6548 OPC_EmitInteger32, 6,
6549 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6550 7, 3, 0, 1, 2,
6551 0,
6552 41,
6553 OPC_CheckChild1Integer, 64,
6554 OPC_CheckChild1TypeI64,
6555 OPC_MoveSibling1,
6556 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6557 OPC_RecordChild0,
6558 OPC_CheckChild1Integer, 64,
6559 OPC_CheckChild1TypeI64,
6560 OPC_MoveParent,
6561 OPC_SwitchType , 11, 8,
6562 OPC_CheckPatternPredicate6,
6563 OPC_EmitInteger64, 8,
6564 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6565 8, 3, 0, 1, 2,
6566 12, 7,
6567 OPC_CheckPatternPredicate, 9,
6568 OPC_EmitInteger32, 8,
6569 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BYTEPICK_D),
6570 7, 3, 0, 1, 2,
6571 0,
6572 0,
6573 0,
6574 74,
6575 OPC_RecordChild0,
6576 OPC_Scope, 38,
6577 OPC_RecordChild1,
6578 OPC_MoveChild1,
6579 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6580 OPC_CheckPredicate, 11,
6581 OPC_MoveParent,
6582 OPC_CheckPredicate3,
6583 OPC_SwitchType , 12, 7,
6584 OPC_CheckPatternPredicate, 10,
6585 OPC_CheckComplexPat0, /*#*/0,
6586 OPC_EmitConvertToTarget1,
6587 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_W),
6588 7, 2, 2, 3,
6589 11, 8,
6590 OPC_CheckPatternPredicate6,
6591 OPC_CheckComplexPat0, /*#*/0,
6592 OPC_EmitConvertToTarget1,
6593 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_D),
6594 8, 2, 2, 3,
6595 0,
6596 31,
6597 OPC_MoveChild1,
6598 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6599 OPC_RecordChild0,
6600 OPC_CheckChild1Integer, 3,
6601 OPC_MoveParent,
6602 OPC_SwitchType , 8, 8,
6603 OPC_CheckPatternPredicate7,
6604 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ORN),
6605 8, 2, 0, 1,
6606 9, 7,
6607 OPC_CheckPatternPredicate, 8,
6608 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ORN),
6609 7, 2, 0, 1,
6610 0,
6611 0,
6612 32,
6613 OPC_MoveChild0,
6614 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6615 OPC_RecordChild0,
6616 OPC_CheckChild1Integer, 3,
6617 OPC_MoveParent,
6618 OPC_RecordChild1,
6619 OPC_SwitchType , 8, 8,
6620 OPC_CheckPatternPredicate7,
6621 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ORN),
6622 8, 2, 1, 0,
6623 9, 7,
6624 OPC_CheckPatternPredicate, 8,
6625 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ORN),
6626 7, 2, 1, 0,
6627 0,
6628 127|128,1,
6629 OPC_RecordChild0,
6630 OPC_Scope, 57,
6631 OPC_RecordChild1,
6632 OPC_Scope, 32,
6633 OPC_MoveChild1,
6634 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6635 OPC_CheckPredicate, 49,
6636 OPC_MoveParent,
6637 OPC_SwitchType , 9, 8,
6638 OPC_CheckPatternPredicate7,
6639 OPC_EmitConvertToTarget1,
6640 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ORI),
6641 8, 2, 0, 2,
6642 10, 7,
6643 OPC_CheckPatternPredicate, 8,
6644 OPC_EmitConvertToTarget1,
6645 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ORI),
6646 7, 2, 0, 2,
6647 0,
6648 9,
6649 OPC_CheckTypeI64,
6650 OPC_CheckPatternPredicate7,
6651 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::OR),
6652 8, 2, 0, 1,
6653 10,
6654 OPC_CheckTypeI32,
6655 OPC_CheckPatternPredicate, 8,
6656 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::OR),
6657 7, 2, 0, 1,
6658 0,
6659 64|128,1,
6660 OPC_MoveChild1,
6661 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6662 OPC_MoveChild0,
6663 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6664 OPC_CheckPredicate, 12,
6665 OPC_MoveSibling1,
6666 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6667 OPC_Scope, 23|128,1,
6668 OPC_RecordChild0,
6669 OPC_MoveChild1,
6670 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6671 OPC_Scope, 17,
6672 OPC_CheckPredicate, 14,
6673 OPC_MoveParent,
6674 OPC_CheckType, 40,
6675 OPC_MoveParent,
6676 OPC_MoveParent,
6677 OPC_CheckType, 40,
6678 OPC_CheckPatternPredicate1,
6679 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_B),
6680 40, 2, 0, 1,
6681 17,
6682 OPC_CheckPredicate, 15,
6683 OPC_MoveParent,
6684 OPC_CheckType, 51,
6685 OPC_MoveParent,
6686 OPC_MoveParent,
6687 OPC_CheckType, 51,
6688 OPC_CheckPatternPredicate1,
6689 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_H),
6690 51, 2, 0, 1,
6691 17,
6692 OPC_CheckPredicate, 16,
6693 OPC_MoveParent,
6694 OPC_CheckType, 62,
6695 OPC_MoveParent,
6696 OPC_MoveParent,
6697 OPC_CheckType, 62,
6698 OPC_CheckPatternPredicate1,
6699 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_W),
6700 62, 2, 0, 1,
6701 17,
6702 OPC_CheckPredicate, 17,
6703 OPC_MoveParent,
6704 OPC_CheckType, 81,
6705 OPC_MoveParent,
6706 OPC_MoveParent,
6707 OPC_CheckType, 81,
6708 OPC_CheckPatternPredicate1,
6709 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_D),
6710 81, 2, 0, 1,
6711 17,
6712 OPC_CheckPredicate, 14,
6713 OPC_MoveParent,
6714 OPC_CheckType, 41,
6715 OPC_MoveParent,
6716 OPC_MoveParent,
6717 OPC_CheckType, 41,
6718 OPC_CheckPatternPredicate0,
6719 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_B),
6720 41, 2, 0, 1,
6721 17,
6722 OPC_CheckPredicate, 15,
6723 OPC_MoveParent,
6724 OPC_CheckType, 52,
6725 OPC_MoveParent,
6726 OPC_MoveParent,
6727 OPC_CheckType, 52,
6728 OPC_CheckPatternPredicate0,
6729 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_H),
6730 52, 2, 0, 1,
6731 17,
6732 OPC_CheckPredicate, 16,
6733 OPC_MoveParent,
6734 OPC_CheckType, 66,
6735 OPC_MoveParent,
6736 OPC_MoveParent,
6737 OPC_CheckType, 66,
6738 OPC_CheckPatternPredicate0,
6739 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_W),
6740 66, 2, 0, 1,
6741 17,
6742 OPC_CheckPredicate, 17,
6743 OPC_MoveParent,
6744 OPC_CheckType, 83,
6745 OPC_MoveParent,
6746 OPC_MoveParent,
6747 OPC_CheckType, 83,
6748 OPC_CheckPatternPredicate0,
6749 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_D),
6750 83, 2, 0, 1,
6751 0,
6752 22,
6753 OPC_MoveChild0,
6754 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6755 OPC_CheckPredicate, 14,
6756 OPC_MoveParent,
6757 OPC_RecordChild1,
6758 OPC_CheckType, 40,
6759 OPC_MoveParent,
6760 OPC_MoveParent,
6761 OPC_CheckType, 40,
6762 OPC_CheckPatternPredicate1,
6763 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_B),
6764 40, 2, 0, 1,
6765 0,
6766 0,
6767 64,
6768 OPC_MoveChild0,
6769 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6770 OPC_MoveChild0,
6771 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6772 OPC_CheckPredicate, 12,
6773 OPC_MoveSibling1,
6774 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6775 OPC_Scope, 23,
6776 OPC_RecordChild0,
6777 OPC_MoveChild1,
6778 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6779 OPC_CheckPredicate, 14,
6780 OPC_MoveParent,
6781 OPC_CheckType, 40,
6782 OPC_MoveParent,
6783 OPC_MoveParent,
6784 OPC_RecordChild1,
6785 OPC_CheckType, 40,
6786 OPC_CheckPatternPredicate1,
6787 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_B),
6788 40, 2, 1, 0,
6789 23,
6790 OPC_MoveChild0,
6791 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6792 OPC_CheckPredicate, 14,
6793 OPC_MoveParent,
6794 OPC_RecordChild1,
6795 OPC_CheckType, 40,
6796 OPC_MoveParent,
6797 OPC_MoveParent,
6798 OPC_RecordChild1,
6799 OPC_CheckType, 40,
6800 OPC_CheckPatternPredicate1,
6801 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_B),
6802 40, 2, 1, 0,
6803 0,
6804 37,
6805 OPC_RecordChild0,
6806 OPC_MoveChild1,
6807 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6808 OPC_MoveChild0,
6809 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6810 OPC_CheckPredicate, 12,
6811 OPC_MoveSibling1,
6812 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6813 OPC_MoveChild0,
6814 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6815 OPC_CheckPredicate, 15,
6816 OPC_MoveParent,
6817 OPC_RecordChild1,
6818 OPC_CheckType, 51,
6819 OPC_MoveParent,
6820 OPC_MoveParent,
6821 OPC_CheckType, 51,
6822 OPC_CheckPatternPredicate1,
6823 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_H),
6824 51, 2, 0, 1,
6825 64,
6826 OPC_MoveChild0,
6827 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6828 OPC_MoveChild0,
6829 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6830 OPC_CheckPredicate, 12,
6831 OPC_MoveSibling1,
6832 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6833 OPC_Scope, 23,
6834 OPC_RecordChild0,
6835 OPC_MoveChild1,
6836 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6837 OPC_CheckPredicate, 15,
6838 OPC_MoveParent,
6839 OPC_CheckType, 51,
6840 OPC_MoveParent,
6841 OPC_MoveParent,
6842 OPC_RecordChild1,
6843 OPC_CheckType, 51,
6844 OPC_CheckPatternPredicate1,
6845 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_H),
6846 51, 2, 1, 0,
6847 23,
6848 OPC_MoveChild0,
6849 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6850 OPC_CheckPredicate, 15,
6851 OPC_MoveParent,
6852 OPC_RecordChild1,
6853 OPC_CheckType, 51,
6854 OPC_MoveParent,
6855 OPC_MoveParent,
6856 OPC_RecordChild1,
6857 OPC_CheckType, 51,
6858 OPC_CheckPatternPredicate1,
6859 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_H),
6860 51, 2, 1, 0,
6861 0,
6862 37,
6863 OPC_RecordChild0,
6864 OPC_MoveChild1,
6865 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6866 OPC_MoveChild0,
6867 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6868 OPC_CheckPredicate, 12,
6869 OPC_MoveSibling1,
6870 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6871 OPC_MoveChild0,
6872 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6873 OPC_CheckPredicate, 16,
6874 OPC_MoveParent,
6875 OPC_RecordChild1,
6876 OPC_CheckType, 62,
6877 OPC_MoveParent,
6878 OPC_MoveParent,
6879 OPC_CheckType, 62,
6880 OPC_CheckPatternPredicate1,
6881 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_W),
6882 62, 2, 0, 1,
6883 64,
6884 OPC_MoveChild0,
6885 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6886 OPC_MoveChild0,
6887 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6888 OPC_CheckPredicate, 12,
6889 OPC_MoveSibling1,
6890 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6891 OPC_Scope, 23,
6892 OPC_RecordChild0,
6893 OPC_MoveChild1,
6894 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6895 OPC_CheckPredicate, 16,
6896 OPC_MoveParent,
6897 OPC_CheckType, 62,
6898 OPC_MoveParent,
6899 OPC_MoveParent,
6900 OPC_RecordChild1,
6901 OPC_CheckType, 62,
6902 OPC_CheckPatternPredicate1,
6903 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_W),
6904 62, 2, 1, 0,
6905 23,
6906 OPC_MoveChild0,
6907 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6908 OPC_CheckPredicate, 16,
6909 OPC_MoveParent,
6910 OPC_RecordChild1,
6911 OPC_CheckType, 62,
6912 OPC_MoveParent,
6913 OPC_MoveParent,
6914 OPC_RecordChild1,
6915 OPC_CheckType, 62,
6916 OPC_CheckPatternPredicate1,
6917 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_W),
6918 62, 2, 1, 0,
6919 0,
6920 37,
6921 OPC_RecordChild0,
6922 OPC_MoveChild1,
6923 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6924 OPC_MoveChild0,
6925 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6926 OPC_CheckPredicate, 12,
6927 OPC_MoveSibling1,
6928 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6929 OPC_MoveChild0,
6930 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6931 OPC_CheckPredicate, 17,
6932 OPC_MoveParent,
6933 OPC_RecordChild1,
6934 OPC_CheckType, 81,
6935 OPC_MoveParent,
6936 OPC_MoveParent,
6937 OPC_CheckType, 81,
6938 OPC_CheckPatternPredicate1,
6939 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_D),
6940 81, 2, 0, 1,
6941 64,
6942 OPC_MoveChild0,
6943 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6944 OPC_MoveChild0,
6945 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6946 OPC_CheckPredicate, 12,
6947 OPC_MoveSibling1,
6948 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6949 OPC_Scope, 23,
6950 OPC_RecordChild0,
6951 OPC_MoveChild1,
6952 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6953 OPC_CheckPredicate, 17,
6954 OPC_MoveParent,
6955 OPC_CheckType, 81,
6956 OPC_MoveParent,
6957 OPC_MoveParent,
6958 OPC_RecordChild1,
6959 OPC_CheckType, 81,
6960 OPC_CheckPatternPredicate1,
6961 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_D),
6962 81, 2, 1, 0,
6963 23,
6964 OPC_MoveChild0,
6965 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6966 OPC_CheckPredicate, 17,
6967 OPC_MoveParent,
6968 OPC_RecordChild1,
6969 OPC_CheckType, 81,
6970 OPC_MoveParent,
6971 OPC_MoveParent,
6972 OPC_RecordChild1,
6973 OPC_CheckType, 81,
6974 OPC_CheckPatternPredicate1,
6975 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_D),
6976 81, 2, 1, 0,
6977 0,
6978 37,
6979 OPC_RecordChild0,
6980 OPC_MoveChild1,
6981 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
6982 OPC_MoveChild0,
6983 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6984 OPC_CheckPredicate, 12,
6985 OPC_MoveSibling1,
6986 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6987 OPC_MoveChild0,
6988 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
6989 OPC_CheckPredicate, 14,
6990 OPC_MoveParent,
6991 OPC_RecordChild1,
6992 OPC_CheckType, 41,
6993 OPC_MoveParent,
6994 OPC_MoveParent,
6995 OPC_CheckType, 41,
6996 OPC_CheckPatternPredicate0,
6997 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_B),
6998 41, 2, 0, 1,
6999 64,
7000 OPC_MoveChild0,
7001 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
7002 OPC_MoveChild0,
7003 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7004 OPC_CheckPredicate, 12,
7005 OPC_MoveSibling1,
7006 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7007 OPC_Scope, 23,
7008 OPC_RecordChild0,
7009 OPC_MoveChild1,
7010 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7011 OPC_CheckPredicate, 14,
7012 OPC_MoveParent,
7013 OPC_CheckType, 41,
7014 OPC_MoveParent,
7015 OPC_MoveParent,
7016 OPC_RecordChild1,
7017 OPC_CheckType, 41,
7018 OPC_CheckPatternPredicate0,
7019 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_B),
7020 41, 2, 1, 0,
7021 23,
7022 OPC_MoveChild0,
7023 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7024 OPC_CheckPredicate, 14,
7025 OPC_MoveParent,
7026 OPC_RecordChild1,
7027 OPC_CheckType, 41,
7028 OPC_MoveParent,
7029 OPC_MoveParent,
7030 OPC_RecordChild1,
7031 OPC_CheckType, 41,
7032 OPC_CheckPatternPredicate0,
7033 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_B),
7034 41, 2, 1, 0,
7035 0,
7036 37,
7037 OPC_RecordChild0,
7038 OPC_MoveChild1,
7039 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
7040 OPC_MoveChild0,
7041 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7042 OPC_CheckPredicate, 12,
7043 OPC_MoveSibling1,
7044 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7045 OPC_MoveChild0,
7046 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7047 OPC_CheckPredicate, 15,
7048 OPC_MoveParent,
7049 OPC_RecordChild1,
7050 OPC_CheckType, 52,
7051 OPC_MoveParent,
7052 OPC_MoveParent,
7053 OPC_CheckType, 52,
7054 OPC_CheckPatternPredicate0,
7055 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_H),
7056 52, 2, 0, 1,
7057 64,
7058 OPC_MoveChild0,
7059 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
7060 OPC_MoveChild0,
7061 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7062 OPC_CheckPredicate, 12,
7063 OPC_MoveSibling1,
7064 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7065 OPC_Scope, 23,
7066 OPC_RecordChild0,
7067 OPC_MoveChild1,
7068 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7069 OPC_CheckPredicate, 15,
7070 OPC_MoveParent,
7071 OPC_CheckType, 52,
7072 OPC_MoveParent,
7073 OPC_MoveParent,
7074 OPC_RecordChild1,
7075 OPC_CheckType, 52,
7076 OPC_CheckPatternPredicate0,
7077 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_H),
7078 52, 2, 1, 0,
7079 23,
7080 OPC_MoveChild0,
7081 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7082 OPC_CheckPredicate, 15,
7083 OPC_MoveParent,
7084 OPC_RecordChild1,
7085 OPC_CheckType, 52,
7086 OPC_MoveParent,
7087 OPC_MoveParent,
7088 OPC_RecordChild1,
7089 OPC_CheckType, 52,
7090 OPC_CheckPatternPredicate0,
7091 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_H),
7092 52, 2, 1, 0,
7093 0,
7094 37,
7095 OPC_RecordChild0,
7096 OPC_MoveChild1,
7097 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
7098 OPC_MoveChild0,
7099 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7100 OPC_CheckPredicate, 12,
7101 OPC_MoveSibling1,
7102 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7103 OPC_MoveChild0,
7104 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7105 OPC_CheckPredicate, 16,
7106 OPC_MoveParent,
7107 OPC_RecordChild1,
7108 OPC_CheckType, 66,
7109 OPC_MoveParent,
7110 OPC_MoveParent,
7111 OPC_CheckType, 66,
7112 OPC_CheckPatternPredicate0,
7113 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_W),
7114 66, 2, 0, 1,
7115 64,
7116 OPC_MoveChild0,
7117 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
7118 OPC_MoveChild0,
7119 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7120 OPC_CheckPredicate, 12,
7121 OPC_MoveSibling1,
7122 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7123 OPC_Scope, 23,
7124 OPC_RecordChild0,
7125 OPC_MoveChild1,
7126 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7127 OPC_CheckPredicate, 16,
7128 OPC_MoveParent,
7129 OPC_CheckType, 66,
7130 OPC_MoveParent,
7131 OPC_MoveParent,
7132 OPC_RecordChild1,
7133 OPC_CheckType, 66,
7134 OPC_CheckPatternPredicate0,
7135 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_W),
7136 66, 2, 1, 0,
7137 23,
7138 OPC_MoveChild0,
7139 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7140 OPC_CheckPredicate, 16,
7141 OPC_MoveParent,
7142 OPC_RecordChild1,
7143 OPC_CheckType, 66,
7144 OPC_MoveParent,
7145 OPC_MoveParent,
7146 OPC_RecordChild1,
7147 OPC_CheckType, 66,
7148 OPC_CheckPatternPredicate0,
7149 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_W),
7150 66, 2, 1, 0,
7151 0,
7152 37,
7153 OPC_RecordChild0,
7154 OPC_MoveChild1,
7155 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
7156 OPC_MoveChild0,
7157 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7158 OPC_CheckPredicate, 12,
7159 OPC_MoveSibling1,
7160 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7161 OPC_MoveChild0,
7162 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7163 OPC_CheckPredicate, 17,
7164 OPC_MoveParent,
7165 OPC_RecordChild1,
7166 OPC_CheckType, 83,
7167 OPC_MoveParent,
7168 OPC_MoveParent,
7169 OPC_CheckType, 83,
7170 OPC_CheckPatternPredicate0,
7171 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_D),
7172 83, 2, 0, 1,
7173 64,
7174 OPC_MoveChild0,
7175 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
7176 OPC_MoveChild0,
7177 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7178 OPC_CheckPredicate, 12,
7179 OPC_MoveSibling1,
7180 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7181 OPC_Scope, 23,
7182 OPC_RecordChild0,
7183 OPC_MoveChild1,
7184 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7185 OPC_CheckPredicate, 17,
7186 OPC_MoveParent,
7187 OPC_CheckType, 83,
7188 OPC_MoveParent,
7189 OPC_MoveParent,
7190 OPC_RecordChild1,
7191 OPC_CheckType, 83,
7192 OPC_CheckPatternPredicate0,
7193 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_D),
7194 83, 2, 1, 0,
7195 23,
7196 OPC_MoveChild0,
7197 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7198 OPC_CheckPredicate, 17,
7199 OPC_MoveParent,
7200 OPC_RecordChild1,
7201 OPC_CheckType, 83,
7202 OPC_MoveParent,
7203 OPC_MoveParent,
7204 OPC_RecordChild1,
7205 OPC_CheckType, 83,
7206 OPC_CheckPatternPredicate0,
7207 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_D),
7208 83, 2, 1, 0,
7209 0,
7210 127,
7211 OPC_RecordChild0,
7212 OPC_MoveChild1,
7213 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
7214 OPC_MoveChild0,
7215 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7216 OPC_CheckPredicate, 12,
7217 OPC_MoveParent,
7218 OPC_RecordChild1,
7219 OPC_Scope, 13,
7220 OPC_CheckChild1Type, 40,
7221 OPC_MoveParent,
7222 OPC_CheckType, 40,
7223 OPC_CheckPatternPredicate1,
7224 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_B),
7225 40, 2, 0, 1,
7226 13,
7227 OPC_CheckChild1Type, 51,
7228 OPC_MoveParent,
7229 OPC_CheckType, 51,
7230 OPC_CheckPatternPredicate1,
7231 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_H),
7232 51, 2, 0, 1,
7233 13,
7234 OPC_CheckChild1Type, 62,
7235 OPC_MoveParent,
7236 OPC_CheckType, 62,
7237 OPC_CheckPatternPredicate1,
7238 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_W),
7239 62, 2, 0, 1,
7240 13,
7241 OPC_CheckChild1Type, 81,
7242 OPC_MoveParent,
7243 OPC_CheckType, 81,
7244 OPC_CheckPatternPredicate1,
7245 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_D),
7246 81, 2, 0, 1,
7247 13,
7248 OPC_CheckChild1Type, 41,
7249 OPC_MoveParent,
7250 OPC_CheckType, 41,
7251 OPC_CheckPatternPredicate0,
7252 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_B),
7253 41, 2, 0, 1,
7254 13,
7255 OPC_CheckChild1Type, 52,
7256 OPC_MoveParent,
7257 OPC_CheckType, 52,
7258 OPC_CheckPatternPredicate0,
7259 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_H),
7260 52, 2, 0, 1,
7261 13,
7262 OPC_CheckChild1Type, 66,
7263 OPC_MoveParent,
7264 OPC_CheckType, 66,
7265 OPC_CheckPatternPredicate0,
7266 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_W),
7267 66, 2, 0, 1,
7268 13,
7269 OPC_CheckChild1Type, 83,
7270 OPC_MoveParent,
7271 OPC_CheckType, 83,
7272 OPC_CheckPatternPredicate0,
7273 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_D),
7274 83, 2, 0, 1,
7275 0,
7276 6|128,1,
7277 OPC_MoveChild0,
7278 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
7279 OPC_MoveChild0,
7280 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
7281 OPC_CheckPredicate, 12,
7282 OPC_MoveParent,
7283 OPC_RecordChild1,
7284 OPC_Scope, 14,
7285 OPC_CheckChild1Type, 40,
7286 OPC_MoveParent,
7287 OPC_RecordChild1,
7288 OPC_CheckType, 40,
7289 OPC_CheckPatternPredicate1,
7290 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_B),
7291 40, 2, 1, 0,
7292 14,
7293 OPC_CheckChild1Type, 51,
7294 OPC_MoveParent,
7295 OPC_RecordChild1,
7296 OPC_CheckType, 51,
7297 OPC_CheckPatternPredicate1,
7298 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_H),
7299 51, 2, 1, 0,
7300 14,
7301 OPC_CheckChild1Type, 62,
7302 OPC_MoveParent,
7303 OPC_RecordChild1,
7304 OPC_CheckType, 62,
7305 OPC_CheckPatternPredicate1,
7306 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_W),
7307 62, 2, 1, 0,
7308 14,
7309 OPC_CheckChild1Type, 81,
7310 OPC_MoveParent,
7311 OPC_RecordChild1,
7312 OPC_CheckType, 81,
7313 OPC_CheckPatternPredicate1,
7314 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSET_D),
7315 81, 2, 1, 0,
7316 14,
7317 OPC_CheckChild1Type, 41,
7318 OPC_MoveParent,
7319 OPC_RecordChild1,
7320 OPC_CheckType, 41,
7321 OPC_CheckPatternPredicate0,
7322 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_B),
7323 41, 2, 1, 0,
7324 14,
7325 OPC_CheckChild1Type, 52,
7326 OPC_MoveParent,
7327 OPC_RecordChild1,
7328 OPC_CheckType, 52,
7329 OPC_CheckPatternPredicate0,
7330 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_H),
7331 52, 2, 1, 0,
7332 14,
7333 OPC_CheckChild1Type, 66,
7334 OPC_MoveParent,
7335 OPC_RecordChild1,
7336 OPC_CheckType, 66,
7337 OPC_CheckPatternPredicate0,
7338 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_W),
7339 66, 2, 1, 0,
7340 14,
7341 OPC_CheckChild1Type, 83,
7342 OPC_MoveParent,
7343 OPC_RecordChild1,
7344 OPC_CheckType, 83,
7345 OPC_CheckPatternPredicate0,
7346 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSET_D),
7347 83, 2, 1, 0,
7348 0,
7349 36|128,4,
7350 OPC_RecordChild0,
7351 OPC_RecordChild1,
7352 OPC_SwitchType , 99, 40,
7353 OPC_Scope, 10,
7354 OPC_CheckPatternPredicate2,
7355 OPC_CheckComplexPat5, /*#*/1,
7356 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_B),
7357 40, 2, 0, 2,
7358 10,
7359 OPC_CheckPatternPredicate4,
7360 OPC_CheckComplexPat5, /*#*/1,
7361 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_B),
7362 40, 2, 0, 2,
7363 10,
7364 OPC_CheckPatternPredicate2,
7365 OPC_CheckComplexPat5, /*#*/0,
7366 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_B),
7367 40, 2, 1, 2,
7368 10,
7369 OPC_CheckPatternPredicate4,
7370 OPC_CheckComplexPat5, /*#*/0,
7371 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_B),
7372 40, 2, 1, 2,
7373 10,
7374 OPC_CheckPatternPredicate2,
7375 OPC_CheckComplexPat7, /*#*/1,
7376 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VORI_B),
7377 40, 2, 0, 2,
7378 10,
7379 OPC_CheckPatternPredicate4,
7380 OPC_CheckComplexPat7, /*#*/1,
7381 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VORI_B),
7382 40, 2, 0, 2,
7383 10,
7384 OPC_CheckPatternPredicate2,
7385 OPC_CheckComplexPat7, /*#*/0,
7386 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VORI_B),
7387 40, 2, 1, 2,
7388 10,
7389 OPC_CheckPatternPredicate4,
7390 OPC_CheckComplexPat7, /*#*/0,
7391 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VORI_B),
7392 40, 2, 1, 2,
7393 8,
7394 OPC_CheckPatternPredicate1,
7395 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VOR_V),
7396 40, 2, 0, 1,
7397 0,
7398 55, 51,
7399 OPC_Scope, 10,
7400 OPC_CheckPatternPredicate2,
7401 OPC_CheckComplexPat5, /*#*/1,
7402 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_H),
7403 51, 2, 0, 2,
7404 10,
7405 OPC_CheckPatternPredicate4,
7406 OPC_CheckComplexPat5, /*#*/1,
7407 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_H),
7408 51, 2, 0, 2,
7409 10,
7410 OPC_CheckPatternPredicate2,
7411 OPC_CheckComplexPat5, /*#*/0,
7412 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_H),
7413 51, 2, 1, 2,
7414 10,
7415 OPC_CheckPatternPredicate4,
7416 OPC_CheckComplexPat5, /*#*/0,
7417 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_H),
7418 51, 2, 1, 2,
7419 8,
7420 OPC_CheckPatternPredicate1,
7421 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VOR_V),
7422 51, 2, 0, 1,
7423 0,
7424 55, 62,
7425 OPC_Scope, 10,
7426 OPC_CheckPatternPredicate2,
7427 OPC_CheckComplexPat5, /*#*/1,
7428 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_W),
7429 62, 2, 0, 2,
7430 10,
7431 OPC_CheckPatternPredicate4,
7432 OPC_CheckComplexPat5, /*#*/1,
7433 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_W),
7434 62, 2, 0, 2,
7435 10,
7436 OPC_CheckPatternPredicate2,
7437 OPC_CheckComplexPat5, /*#*/0,
7438 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_W),
7439 62, 2, 1, 2,
7440 10,
7441 OPC_CheckPatternPredicate4,
7442 OPC_CheckComplexPat5, /*#*/0,
7443 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_W),
7444 62, 2, 1, 2,
7445 8,
7446 OPC_CheckPatternPredicate1,
7447 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VOR_V),
7448 62, 2, 0, 1,
7449 0,
7450 55, 81,
7451 OPC_Scope, 10,
7452 OPC_CheckPatternPredicate2,
7453 OPC_CheckComplexPat5, /*#*/1,
7454 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_D),
7455 81, 2, 0, 2,
7456 10,
7457 OPC_CheckPatternPredicate4,
7458 OPC_CheckComplexPat5, /*#*/1,
7459 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_D),
7460 81, 2, 0, 2,
7461 10,
7462 OPC_CheckPatternPredicate2,
7463 OPC_CheckComplexPat5, /*#*/0,
7464 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_D),
7465 81, 2, 1, 2,
7466 10,
7467 OPC_CheckPatternPredicate4,
7468 OPC_CheckComplexPat5, /*#*/0,
7469 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSETI_D),
7470 81, 2, 1, 2,
7471 8,
7472 OPC_CheckPatternPredicate1,
7473 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VOR_V),
7474 81, 2, 0, 1,
7475 0,
7476 99, 41,
7477 OPC_Scope, 10,
7478 OPC_CheckPatternPredicate3,
7479 OPC_CheckComplexPat5, /*#*/1,
7480 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_B),
7481 41, 2, 0, 2,
7482 10,
7483 OPC_CheckPatternPredicate5,
7484 OPC_CheckComplexPat5, /*#*/1,
7485 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_B),
7486 41, 2, 0, 2,
7487 10,
7488 OPC_CheckPatternPredicate3,
7489 OPC_CheckComplexPat5, /*#*/0,
7490 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_B),
7491 41, 2, 1, 2,
7492 10,
7493 OPC_CheckPatternPredicate5,
7494 OPC_CheckComplexPat5, /*#*/0,
7495 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_B),
7496 41, 2, 1, 2,
7497 10,
7498 OPC_CheckPatternPredicate3,
7499 OPC_CheckComplexPat7, /*#*/1,
7500 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVORI_B),
7501 41, 2, 0, 2,
7502 10,
7503 OPC_CheckPatternPredicate5,
7504 OPC_CheckComplexPat7, /*#*/1,
7505 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVORI_B),
7506 41, 2, 0, 2,
7507 10,
7508 OPC_CheckPatternPredicate3,
7509 OPC_CheckComplexPat7, /*#*/0,
7510 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVORI_B),
7511 41, 2, 1, 2,
7512 10,
7513 OPC_CheckPatternPredicate5,
7514 OPC_CheckComplexPat7, /*#*/0,
7515 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVORI_B),
7516 41, 2, 1, 2,
7517 8,
7518 OPC_CheckPatternPredicate0,
7519 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVOR_V),
7520 41, 2, 0, 1,
7521 0,
7522 55, 52,
7523 OPC_Scope, 10,
7524 OPC_CheckPatternPredicate3,
7525 OPC_CheckComplexPat5, /*#*/1,
7526 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_H),
7527 52, 2, 0, 2,
7528 10,
7529 OPC_CheckPatternPredicate5,
7530 OPC_CheckComplexPat5, /*#*/1,
7531 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_H),
7532 52, 2, 0, 2,
7533 10,
7534 OPC_CheckPatternPredicate3,
7535 OPC_CheckComplexPat5, /*#*/0,
7536 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_H),
7537 52, 2, 1, 2,
7538 10,
7539 OPC_CheckPatternPredicate5,
7540 OPC_CheckComplexPat5, /*#*/0,
7541 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_H),
7542 52, 2, 1, 2,
7543 8,
7544 OPC_CheckPatternPredicate0,
7545 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVOR_V),
7546 52, 2, 0, 1,
7547 0,
7548 55, 66,
7549 OPC_Scope, 10,
7550 OPC_CheckPatternPredicate3,
7551 OPC_CheckComplexPat5, /*#*/1,
7552 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_W),
7553 66, 2, 0, 2,
7554 10,
7555 OPC_CheckPatternPredicate5,
7556 OPC_CheckComplexPat5, /*#*/1,
7557 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_W),
7558 66, 2, 0, 2,
7559 10,
7560 OPC_CheckPatternPredicate3,
7561 OPC_CheckComplexPat5, /*#*/0,
7562 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_W),
7563 66, 2, 1, 2,
7564 10,
7565 OPC_CheckPatternPredicate5,
7566 OPC_CheckComplexPat5, /*#*/0,
7567 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_W),
7568 66, 2, 1, 2,
7569 8,
7570 OPC_CheckPatternPredicate0,
7571 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVOR_V),
7572 66, 2, 0, 1,
7573 0,
7574 55, 83,
7575 OPC_Scope, 10,
7576 OPC_CheckPatternPredicate3,
7577 OPC_CheckComplexPat5, /*#*/1,
7578 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_D),
7579 83, 2, 0, 2,
7580 10,
7581 OPC_CheckPatternPredicate5,
7582 OPC_CheckComplexPat5, /*#*/1,
7583 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_D),
7584 83, 2, 0, 2,
7585 10,
7586 OPC_CheckPatternPredicate3,
7587 OPC_CheckComplexPat5, /*#*/0,
7588 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_D),
7589 83, 2, 1, 2,
7590 10,
7591 OPC_CheckPatternPredicate5,
7592 OPC_CheckComplexPat5, /*#*/0,
7593 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSETI_D),
7594 83, 2, 1, 2,
7595 8,
7596 OPC_CheckPatternPredicate0,
7597 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVOR_V),
7598 83, 2, 0, 1,
7599 0,
7600 0,
7601 0,
7602 102|128,38, TARGET_VAL(ISD::LOAD),
7603 OPC_RecordMemRef,
7604 OPC_RecordNode,
7605 OPC_Scope, 19|128,6,
7606 OPC_MoveChild1,
7607 OPC_SwitchOpcode , 4|128,3, TARGET_VAL(ISD::ADD),
7608 OPC_RecordChild0,
7609 OPC_RecordChild1,
7610 OPC_MoveChild1,
7611 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
7612 OPC_Scope, 78|128,2,
7613 OPC_CheckPredicate, 11,
7614 OPC_MoveParent,
7615 OPC_CheckPredicate3,
7616 OPC_SwitchType , 63|128,1, 8,
7617 OPC_MoveParent,
7618 OPC_CheckPredicate, 8,
7619 OPC_CheckTypeI64,
7620 OPC_Scope, 16,
7621 OPC_CheckPredicate, 20,
7622 OPC_CheckPredicate4,
7623 OPC_CheckPatternPredicate7,
7624 OPC_CheckComplexPat0, /*#*/1,
7625 OPC_EmitMergeInputChains1_0,
7626 OPC_EmitConvertToTarget2,
7627 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
7628 8, 2, 3, 4,
7629 16,
7630 OPC_CheckPredicate, 26,
7631 OPC_CheckPredicate4,
7632 OPC_CheckPatternPredicate7,
7633 OPC_CheckComplexPat0, /*#*/1,
7634 OPC_EmitMergeInputChains1_0,
7635 OPC_EmitConvertToTarget2,
7636 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
7637 8, 2, 3, 4,
7638 16,
7639 OPC_CheckPredicate, 20,
7640 OPC_CheckPredicate5,
7641 OPC_CheckPatternPredicate7,
7642 OPC_CheckComplexPat0, /*#*/1,
7643 OPC_EmitMergeInputChains1_0,
7644 OPC_EmitConvertToTarget2,
7645 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
7646 8, 2, 3, 4,
7647 16,
7648 OPC_CheckPredicate, 26,
7649 OPC_CheckPredicate5,
7650 OPC_CheckPatternPredicate7,
7651 OPC_CheckComplexPat0, /*#*/1,
7652 OPC_EmitMergeInputChains1_0,
7653 OPC_EmitConvertToTarget2,
7654 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
7655 8, 2, 3, 4,
7656 15,
7657 OPC_CheckPredicate7,
7658 OPC_CheckPatternPredicate, 15,
7659 OPC_CheckComplexPat0, /*#*/1,
7660 OPC_EmitMergeInputChains1_0,
7661 OPC_EmitConvertToTarget2,
7662 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
7663 8, 2, 3, 4,
7664 34,
7665 OPC_CheckPredicate, 32,
7666 OPC_Scope, 14,
7667 OPC_CheckPredicate4,
7668 OPC_CheckPatternPredicate7,
7669 OPC_CheckComplexPat0, /*#*/1,
7670 OPC_EmitMergeInputChains1_0,
7671 OPC_EmitConvertToTarget2,
7672 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_BU), 0|OPFL_Chain|OPFL_MemRefs,
7673 8, 2, 3, 4,
7674 14,
7675 OPC_CheckPredicate5,
7676 OPC_CheckPatternPredicate7,
7677 OPC_CheckComplexPat0, /*#*/1,
7678 OPC_EmitMergeInputChains1_0,
7679 OPC_EmitConvertToTarget2,
7680 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_HU), 0|OPFL_Chain|OPFL_MemRefs,
7681 8, 2, 3, 4,
7682 0,
7683 16,
7684 OPC_CheckPredicate, 20,
7685 OPC_CheckPredicate2,
7686 OPC_CheckPatternPredicate6,
7687 OPC_CheckComplexPat0, /*#*/1,
7688 OPC_EmitMergeInputChains1_0,
7689 OPC_EmitConvertToTarget2,
7690 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
7691 8, 2, 3, 4,
7692 16,
7693 OPC_CheckPredicate, 26,
7694 OPC_CheckPredicate2,
7695 OPC_CheckPatternPredicate6,
7696 OPC_CheckComplexPat0, /*#*/1,
7697 OPC_EmitMergeInputChains1_0,
7698 OPC_EmitConvertToTarget2,
7699 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
7700 8, 2, 3, 4,
7701 16,
7702 OPC_CheckPredicate, 32,
7703 OPC_CheckPredicate2,
7704 OPC_CheckPatternPredicate6,
7705 OPC_CheckComplexPat0, /*#*/1,
7706 OPC_EmitMergeInputChains1_0,
7707 OPC_EmitConvertToTarget2,
7708 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_WU), 0|OPFL_Chain|OPFL_MemRefs,
7709 8, 2, 3, 4,
7710 14,
7711 OPC_CheckPredicate7,
7712 OPC_CheckPatternPredicate6,
7713 OPC_CheckComplexPat0, /*#*/1,
7714 OPC_EmitMergeInputChains1_0,
7715 OPC_EmitConvertToTarget2,
7716 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
7717 8, 2, 3, 4,
7718 0,
7719 3|128,1, 7,
7720 OPC_MoveParent,
7721 OPC_CheckPredicate, 8,
7722 OPC_CheckTypeI32,
7723 OPC_Scope, 17,
7724 OPC_CheckPredicate, 20,
7725 OPC_CheckPredicate4,
7726 OPC_CheckPatternPredicate, 8,
7727 OPC_CheckComplexPat0, /*#*/1,
7728 OPC_EmitMergeInputChains1_0,
7729 OPC_EmitConvertToTarget2,
7730 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
7731 7, 2, 3, 4,
7732 17,
7733 OPC_CheckPredicate, 26,
7734 OPC_CheckPredicate4,
7735 OPC_CheckPatternPredicate, 8,
7736 OPC_CheckComplexPat0, /*#*/1,
7737 OPC_EmitMergeInputChains1_0,
7738 OPC_EmitConvertToTarget2,
7739 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
7740 7, 2, 3, 4,
7741 17,
7742 OPC_CheckPredicate, 20,
7743 OPC_CheckPredicate5,
7744 OPC_CheckPatternPredicate, 8,
7745 OPC_CheckComplexPat0, /*#*/1,
7746 OPC_EmitMergeInputChains1_0,
7747 OPC_EmitConvertToTarget2,
7748 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
7749 7, 2, 3, 4,
7750 17,
7751 OPC_CheckPredicate, 26,
7752 OPC_CheckPredicate5,
7753 OPC_CheckPatternPredicate, 8,
7754 OPC_CheckComplexPat0, /*#*/1,
7755 OPC_EmitMergeInputChains1_0,
7756 OPC_EmitConvertToTarget2,
7757 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
7758 7, 2, 3, 4,
7759 15,
7760 OPC_CheckPredicate7,
7761 OPC_CheckPatternPredicate, 10,
7762 OPC_CheckComplexPat0, /*#*/1,
7763 OPC_EmitMergeInputChains1_0,
7764 OPC_EmitConvertToTarget2,
7765 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
7766 7, 2, 3, 4,
7767 36,
7768 OPC_CheckPredicate, 32,
7769 OPC_Scope, 15,
7770 OPC_CheckPredicate4,
7771 OPC_CheckPatternPredicate, 8,
7772 OPC_CheckComplexPat0, /*#*/1,
7773 OPC_EmitMergeInputChains1_0,
7774 OPC_EmitConvertToTarget2,
7775 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_BU), 0|OPFL_Chain|OPFL_MemRefs,
7776 7, 2, 3, 4,
7777 15,
7778 OPC_CheckPredicate5,
7779 OPC_CheckPatternPredicate, 8,
7780 OPC_CheckComplexPat0, /*#*/1,
7781 OPC_EmitMergeInputChains1_0,
7782 OPC_EmitConvertToTarget2,
7783 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_HU), 0|OPFL_Chain|OPFL_MemRefs,
7784 7, 2, 3, 4,
7785 0,
7786 0,
7787 0,
7788 43,
7789 OPC_CheckPredicate, 45,
7790 OPC_MoveParent,
7791 OPC_CheckPredicate3,
7792 OPC_CheckTypeI64,
7793 OPC_MoveParent,
7794 OPC_CheckPredicate, 8,
7795 OPC_CheckTypeI64,
7796 OPC_Scope, 16,
7797 OPC_CheckPredicate, 20,
7798 OPC_CheckPredicate2,
7799 OPC_CheckPatternPredicate6,
7800 OPC_CheckComplexPat0, /*#*/1,
7801 OPC_EmitMergeInputChains1_0,
7802 OPC_EmitConvertToTarget2,
7803 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDPTR_W), 0|OPFL_Chain|OPFL_MemRefs,
7804 8, 2, 3, 4,
7805 14,
7806 OPC_CheckPredicate7,
7807 OPC_CheckPatternPredicate6,
7808 OPC_CheckComplexPat0, /*#*/1,
7809 OPC_EmitMergeInputChains1_0,
7810 OPC_EmitConvertToTarget2,
7811 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDPTR_D), 0|OPFL_Chain|OPFL_MemRefs,
7812 8, 2, 3, 4,
7813 0,
7814 0,
7815 4|128,3, TARGET_VAL(ISD::OR),
7816 OPC_RecordChild0,
7817 OPC_RecordChild1,
7818 OPC_MoveChild1,
7819 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
7820 OPC_Scope, 78|128,2,
7821 OPC_CheckPredicate, 11,
7822 OPC_MoveParent,
7823 OPC_CheckPredicate3,
7824 OPC_SwitchType , 63|128,1, 8,
7825 OPC_MoveParent,
7826 OPC_CheckPredicate, 8,
7827 OPC_CheckTypeI64,
7828 OPC_Scope, 16,
7829 OPC_CheckPredicate, 20,
7830 OPC_CheckPredicate4,
7831 OPC_CheckPatternPredicate7,
7832 OPC_CheckComplexPat0, /*#*/1,
7833 OPC_EmitMergeInputChains1_0,
7834 OPC_EmitConvertToTarget2,
7835 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
7836 8, 2, 3, 4,
7837 16,
7838 OPC_CheckPredicate, 26,
7839 OPC_CheckPredicate4,
7840 OPC_CheckPatternPredicate7,
7841 OPC_CheckComplexPat0, /*#*/1,
7842 OPC_EmitMergeInputChains1_0,
7843 OPC_EmitConvertToTarget2,
7844 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
7845 8, 2, 3, 4,
7846 16,
7847 OPC_CheckPredicate, 20,
7848 OPC_CheckPredicate5,
7849 OPC_CheckPatternPredicate7,
7850 OPC_CheckComplexPat0, /*#*/1,
7851 OPC_EmitMergeInputChains1_0,
7852 OPC_EmitConvertToTarget2,
7853 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
7854 8, 2, 3, 4,
7855 16,
7856 OPC_CheckPredicate, 26,
7857 OPC_CheckPredicate5,
7858 OPC_CheckPatternPredicate7,
7859 OPC_CheckComplexPat0, /*#*/1,
7860 OPC_EmitMergeInputChains1_0,
7861 OPC_EmitConvertToTarget2,
7862 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
7863 8, 2, 3, 4,
7864 15,
7865 OPC_CheckPredicate7,
7866 OPC_CheckPatternPredicate, 15,
7867 OPC_CheckComplexPat0, /*#*/1,
7868 OPC_EmitMergeInputChains1_0,
7869 OPC_EmitConvertToTarget2,
7870 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
7871 8, 2, 3, 4,
7872 34,
7873 OPC_CheckPredicate, 32,
7874 OPC_Scope, 14,
7875 OPC_CheckPredicate4,
7876 OPC_CheckPatternPredicate7,
7877 OPC_CheckComplexPat0, /*#*/1,
7878 OPC_EmitMergeInputChains1_0,
7879 OPC_EmitConvertToTarget2,
7880 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_BU), 0|OPFL_Chain|OPFL_MemRefs,
7881 8, 2, 3, 4,
7882 14,
7883 OPC_CheckPredicate5,
7884 OPC_CheckPatternPredicate7,
7885 OPC_CheckComplexPat0, /*#*/1,
7886 OPC_EmitMergeInputChains1_0,
7887 OPC_EmitConvertToTarget2,
7888 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_HU), 0|OPFL_Chain|OPFL_MemRefs,
7889 8, 2, 3, 4,
7890 0,
7891 16,
7892 OPC_CheckPredicate, 20,
7893 OPC_CheckPredicate2,
7894 OPC_CheckPatternPredicate6,
7895 OPC_CheckComplexPat0, /*#*/1,
7896 OPC_EmitMergeInputChains1_0,
7897 OPC_EmitConvertToTarget2,
7898 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
7899 8, 2, 3, 4,
7900 16,
7901 OPC_CheckPredicate, 26,
7902 OPC_CheckPredicate2,
7903 OPC_CheckPatternPredicate6,
7904 OPC_CheckComplexPat0, /*#*/1,
7905 OPC_EmitMergeInputChains1_0,
7906 OPC_EmitConvertToTarget2,
7907 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
7908 8, 2, 3, 4,
7909 16,
7910 OPC_CheckPredicate, 32,
7911 OPC_CheckPredicate2,
7912 OPC_CheckPatternPredicate6,
7913 OPC_CheckComplexPat0, /*#*/1,
7914 OPC_EmitMergeInputChains1_0,
7915 OPC_EmitConvertToTarget2,
7916 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_WU), 0|OPFL_Chain|OPFL_MemRefs,
7917 8, 2, 3, 4,
7918 14,
7919 OPC_CheckPredicate7,
7920 OPC_CheckPatternPredicate6,
7921 OPC_CheckComplexPat0, /*#*/1,
7922 OPC_EmitMergeInputChains1_0,
7923 OPC_EmitConvertToTarget2,
7924 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
7925 8, 2, 3, 4,
7926 0,
7927 3|128,1, 7,
7928 OPC_MoveParent,
7929 OPC_CheckPredicate, 8,
7930 OPC_CheckTypeI32,
7931 OPC_Scope, 17,
7932 OPC_CheckPredicate, 20,
7933 OPC_CheckPredicate4,
7934 OPC_CheckPatternPredicate, 8,
7935 OPC_CheckComplexPat0, /*#*/1,
7936 OPC_EmitMergeInputChains1_0,
7937 OPC_EmitConvertToTarget2,
7938 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
7939 7, 2, 3, 4,
7940 17,
7941 OPC_CheckPredicate, 26,
7942 OPC_CheckPredicate4,
7943 OPC_CheckPatternPredicate, 8,
7944 OPC_CheckComplexPat0, /*#*/1,
7945 OPC_EmitMergeInputChains1_0,
7946 OPC_EmitConvertToTarget2,
7947 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
7948 7, 2, 3, 4,
7949 17,
7950 OPC_CheckPredicate, 20,
7951 OPC_CheckPredicate5,
7952 OPC_CheckPatternPredicate, 8,
7953 OPC_CheckComplexPat0, /*#*/1,
7954 OPC_EmitMergeInputChains1_0,
7955 OPC_EmitConvertToTarget2,
7956 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
7957 7, 2, 3, 4,
7958 17,
7959 OPC_CheckPredicate, 26,
7960 OPC_CheckPredicate5,
7961 OPC_CheckPatternPredicate, 8,
7962 OPC_CheckComplexPat0, /*#*/1,
7963 OPC_EmitMergeInputChains1_0,
7964 OPC_EmitConvertToTarget2,
7965 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
7966 7, 2, 3, 4,
7967 15,
7968 OPC_CheckPredicate7,
7969 OPC_CheckPatternPredicate, 10,
7970 OPC_CheckComplexPat0, /*#*/1,
7971 OPC_EmitMergeInputChains1_0,
7972 OPC_EmitConvertToTarget2,
7973 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
7974 7, 2, 3, 4,
7975 36,
7976 OPC_CheckPredicate, 32,
7977 OPC_Scope, 15,
7978 OPC_CheckPredicate4,
7979 OPC_CheckPatternPredicate, 8,
7980 OPC_CheckComplexPat0, /*#*/1,
7981 OPC_EmitMergeInputChains1_0,
7982 OPC_EmitConvertToTarget2,
7983 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_BU), 0|OPFL_Chain|OPFL_MemRefs,
7984 7, 2, 3, 4,
7985 15,
7986 OPC_CheckPredicate5,
7987 OPC_CheckPatternPredicate, 8,
7988 OPC_CheckComplexPat0, /*#*/1,
7989 OPC_EmitMergeInputChains1_0,
7990 OPC_EmitConvertToTarget2,
7991 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_HU), 0|OPFL_Chain|OPFL_MemRefs,
7992 7, 2, 3, 4,
7993 0,
7994 0,
7995 0,
7996 43,
7997 OPC_CheckPredicate, 45,
7998 OPC_MoveParent,
7999 OPC_CheckPredicate3,
8000 OPC_CheckTypeI64,
8001 OPC_MoveParent,
8002 OPC_CheckPredicate, 8,
8003 OPC_CheckTypeI64,
8004 OPC_Scope, 16,
8005 OPC_CheckPredicate, 20,
8006 OPC_CheckPredicate2,
8007 OPC_CheckPatternPredicate6,
8008 OPC_CheckComplexPat0, /*#*/1,
8009 OPC_EmitMergeInputChains1_0,
8010 OPC_EmitConvertToTarget2,
8011 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDPTR_W), 0|OPFL_Chain|OPFL_MemRefs,
8012 8, 2, 3, 4,
8013 14,
8014 OPC_CheckPredicate7,
8015 OPC_CheckPatternPredicate6,
8016 OPC_CheckComplexPat0, /*#*/1,
8017 OPC_EmitMergeInputChains1_0,
8018 OPC_EmitConvertToTarget2,
8019 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDPTR_D), 0|OPFL_Chain|OPFL_MemRefs,
8020 8, 2, 3, 4,
8021 0,
8022 0,
8023 0,
8024 60|128,2,
8025 OPC_RecordChild1,
8026 OPC_CheckPredicate, 8,
8027 OPC_Scope, 34,
8028 OPC_CheckPredicate, 20,
8029 OPC_CheckPredicate4,
8030 OPC_SwitchType , 12, 8,
8031 OPC_CheckPatternPredicate7,
8032 OPC_CheckComplexPat2, /*#*/1,
8033 OPC_EmitMergeInputChains1_0,
8034 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
8035 8, 2, 2, 3,
8036 13, 7,
8037 OPC_CheckPatternPredicate, 8,
8038 OPC_CheckComplexPat2, /*#*/1,
8039 OPC_EmitMergeInputChains1_0,
8040 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
8041 7, 2, 2, 3,
8042 0,
8043 34,
8044 OPC_CheckPredicate, 26,
8045 OPC_CheckPredicate4,
8046 OPC_SwitchType , 12, 8,
8047 OPC_CheckPatternPredicate7,
8048 OPC_CheckComplexPat2, /*#*/1,
8049 OPC_EmitMergeInputChains1_0,
8050 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
8051 8, 2, 2, 3,
8052 13, 7,
8053 OPC_CheckPatternPredicate, 8,
8054 OPC_CheckComplexPat2, /*#*/1,
8055 OPC_EmitMergeInputChains1_0,
8056 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
8057 7, 2, 2, 3,
8058 0,
8059 34,
8060 OPC_CheckPredicate, 20,
8061 OPC_CheckPredicate5,
8062 OPC_SwitchType , 12, 8,
8063 OPC_CheckPatternPredicate7,
8064 OPC_CheckComplexPat2, /*#*/1,
8065 OPC_EmitMergeInputChains1_0,
8066 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
8067 8, 2, 2, 3,
8068 13, 7,
8069 OPC_CheckPatternPredicate, 8,
8070 OPC_CheckComplexPat2, /*#*/1,
8071 OPC_EmitMergeInputChains1_0,
8072 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
8073 7, 2, 2, 3,
8074 0,
8075 34,
8076 OPC_CheckPredicate, 26,
8077 OPC_CheckPredicate5,
8078 OPC_SwitchType , 12, 8,
8079 OPC_CheckPatternPredicate7,
8080 OPC_CheckComplexPat2, /*#*/1,
8081 OPC_EmitMergeInputChains1_0,
8082 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
8083 8, 2, 2, 3,
8084 13, 7,
8085 OPC_CheckPatternPredicate, 8,
8086 OPC_CheckComplexPat2, /*#*/1,
8087 OPC_EmitMergeInputChains1_0,
8088 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
8089 7, 2, 2, 3,
8090 0,
8091 33,
8092 OPC_CheckPredicate7,
8093 OPC_SwitchType , 13, 8,
8094 OPC_CheckPatternPredicate, 15,
8095 OPC_CheckComplexPat2, /*#*/1,
8096 OPC_EmitMergeInputChains1_0,
8097 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
8098 8, 2, 2, 3,
8099 13, 7,
8100 OPC_CheckPatternPredicate, 10,
8101 OPC_CheckComplexPat2, /*#*/1,
8102 OPC_EmitMergeInputChains1_0,
8103 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
8104 7, 2, 2, 3,
8105 0,
8106 70,
8107 OPC_CheckPredicate, 32,
8108 OPC_Scope, 32,
8109 OPC_CheckPredicate4,
8110 OPC_SwitchType , 12, 8,
8111 OPC_CheckPatternPredicate7,
8112 OPC_CheckComplexPat2, /*#*/1,
8113 OPC_EmitMergeInputChains1_0,
8114 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_BU), 0|OPFL_Chain|OPFL_MemRefs,
8115 8, 2, 2, 3,
8116 13, 7,
8117 OPC_CheckPatternPredicate, 8,
8118 OPC_CheckComplexPat2, /*#*/1,
8119 OPC_EmitMergeInputChains1_0,
8120 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_BU), 0|OPFL_Chain|OPFL_MemRefs,
8121 7, 2, 2, 3,
8122 0,
8123 32,
8124 OPC_CheckPredicate5,
8125 OPC_SwitchType , 12, 8,
8126 OPC_CheckPatternPredicate7,
8127 OPC_CheckComplexPat2, /*#*/1,
8128 OPC_EmitMergeInputChains1_0,
8129 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_HU), 0|OPFL_Chain|OPFL_MemRefs,
8130 8, 2, 2, 3,
8131 13, 7,
8132 OPC_CheckPatternPredicate, 8,
8133 OPC_CheckComplexPat2, /*#*/1,
8134 OPC_EmitMergeInputChains1_0,
8135 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_HU), 0|OPFL_Chain|OPFL_MemRefs,
8136 7, 2, 2, 3,
8137 0,
8138 0,
8139 16,
8140 OPC_CheckPredicate, 20,
8141 OPC_CheckPredicate2,
8142 OPC_CheckTypeI64,
8143 OPC_CheckPatternPredicate6,
8144 OPC_CheckComplexPat2, /*#*/1,
8145 OPC_EmitMergeInputChains1_0,
8146 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
8147 8, 2, 2, 3,
8148 16,
8149 OPC_CheckPredicate, 26,
8150 OPC_CheckPredicate2,
8151 OPC_CheckTypeI64,
8152 OPC_CheckPatternPredicate6,
8153 OPC_CheckComplexPat2, /*#*/1,
8154 OPC_EmitMergeInputChains1_0,
8155 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
8156 8, 2, 2, 3,
8157 16,
8158 OPC_CheckPredicate, 32,
8159 OPC_CheckPredicate2,
8160 OPC_CheckTypeI64,
8161 OPC_CheckPatternPredicate6,
8162 OPC_CheckComplexPat2, /*#*/1,
8163 OPC_EmitMergeInputChains1_0,
8164 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_WU), 0|OPFL_Chain|OPFL_MemRefs,
8165 8, 2, 2, 3,
8166 14,
8167 OPC_CheckPredicate7,
8168 OPC_CheckTypeI64,
8169 OPC_CheckPatternPredicate6,
8170 OPC_CheckComplexPat2, /*#*/1,
8171 OPC_EmitMergeInputChains1_0,
8172 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
8173 8, 2, 2, 3,
8174 0,
8175 73|128,2,
8176 OPC_MoveChild1,
8177 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
8178 OPC_RecordChild0,
8179 OPC_RecordChild1,
8180 OPC_CheckTypeI64,
8181 OPC_MoveParent,
8182 OPC_CheckPredicate, 8,
8183 OPC_CheckTypeI64,
8184 OPC_Scope, 15,
8185 OPC_CheckPredicate, 26,
8186 OPC_CheckPredicate4,
8187 OPC_CheckPatternPredicate6,
8188 OPC_CheckComplexPat3, /*#*/1,
8189 OPC_EmitMergeInputChains1_0,
8190 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_B), 0|OPFL_Chain|OPFL_MemRefs,
8191 8, 2, 3, 2,
8192 15,
8193 OPC_CheckPredicate, 20,
8194 OPC_CheckPredicate4,
8195 OPC_CheckPatternPredicate6,
8196 OPC_CheckComplexPat3, /*#*/1,
8197 OPC_EmitMergeInputChains1_0,
8198 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_B), 0|OPFL_Chain|OPFL_MemRefs,
8199 8, 2, 3, 2,
8200 15,
8201 OPC_CheckPredicate, 32,
8202 OPC_CheckPredicate4,
8203 OPC_CheckPatternPredicate6,
8204 OPC_CheckComplexPat3, /*#*/1,
8205 OPC_EmitMergeInputChains1_0,
8206 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_BU), 0|OPFL_Chain|OPFL_MemRefs,
8207 8, 2, 3, 2,
8208 15,
8209 OPC_CheckPredicate, 26,
8210 OPC_CheckPredicate5,
8211 OPC_CheckPatternPredicate6,
8212 OPC_CheckComplexPat3, /*#*/1,
8213 OPC_EmitMergeInputChains1_0,
8214 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_H), 0|OPFL_Chain|OPFL_MemRefs,
8215 8, 2, 3, 2,
8216 15,
8217 OPC_CheckPredicate, 20,
8218 OPC_CheckPredicate5,
8219 OPC_CheckPatternPredicate6,
8220 OPC_CheckComplexPat3, /*#*/1,
8221 OPC_EmitMergeInputChains1_0,
8222 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_H), 0|OPFL_Chain|OPFL_MemRefs,
8223 8, 2, 3, 2,
8224 15,
8225 OPC_CheckPredicate, 32,
8226 OPC_CheckPredicate5,
8227 OPC_CheckPatternPredicate6,
8228 OPC_CheckComplexPat3, /*#*/1,
8229 OPC_EmitMergeInputChains1_0,
8230 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_HU), 0|OPFL_Chain|OPFL_MemRefs,
8231 8, 2, 3, 2,
8232 15,
8233 OPC_CheckPredicate, 26,
8234 OPC_CheckPredicate2,
8235 OPC_CheckPatternPredicate6,
8236 OPC_CheckComplexPat3, /*#*/1,
8237 OPC_EmitMergeInputChains1_0,
8238 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_W), 0|OPFL_Chain|OPFL_MemRefs,
8239 8, 2, 3, 2,
8240 15,
8241 OPC_CheckPredicate, 20,
8242 OPC_CheckPredicate2,
8243 OPC_CheckPatternPredicate6,
8244 OPC_CheckComplexPat3, /*#*/1,
8245 OPC_EmitMergeInputChains1_0,
8246 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_W), 0|OPFL_Chain|OPFL_MemRefs,
8247 8, 2, 3, 2,
8248 15,
8249 OPC_CheckPredicate, 32,
8250 OPC_CheckPredicate2,
8251 OPC_CheckPatternPredicate6,
8252 OPC_CheckComplexPat3, /*#*/1,
8253 OPC_EmitMergeInputChains1_0,
8254 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_WU), 0|OPFL_Chain|OPFL_MemRefs,
8255 8, 2, 3, 2,
8256 13,
8257 OPC_CheckPredicate7,
8258 OPC_CheckPatternPredicate6,
8259 OPC_CheckComplexPat3, /*#*/1,
8260 OPC_EmitMergeInputChains1_0,
8261 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_D), 0|OPFL_Chain|OPFL_MemRefs,
8262 8, 2, 3, 2,
8263 15,
8264 OPC_CheckPredicate, 26,
8265 OPC_CheckPredicate4,
8266 OPC_CheckPatternPredicate6,
8267 OPC_CheckComplexPat3, /*#*/2,
8268 OPC_EmitMergeInputChains1_0,
8269 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_B), 0|OPFL_Chain|OPFL_MemRefs,
8270 8, 2, 3, 1,
8271 15,
8272 OPC_CheckPredicate, 20,
8273 OPC_CheckPredicate4,
8274 OPC_CheckPatternPredicate6,
8275 OPC_CheckComplexPat3, /*#*/2,
8276 OPC_EmitMergeInputChains1_0,
8277 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_B), 0|OPFL_Chain|OPFL_MemRefs,
8278 8, 2, 3, 1,
8279 15,
8280 OPC_CheckPredicate, 32,
8281 OPC_CheckPredicate4,
8282 OPC_CheckPatternPredicate6,
8283 OPC_CheckComplexPat3, /*#*/2,
8284 OPC_EmitMergeInputChains1_0,
8285 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_BU), 0|OPFL_Chain|OPFL_MemRefs,
8286 8, 2, 3, 1,
8287 15,
8288 OPC_CheckPredicate, 26,
8289 OPC_CheckPredicate5,
8290 OPC_CheckPatternPredicate6,
8291 OPC_CheckComplexPat3, /*#*/2,
8292 OPC_EmitMergeInputChains1_0,
8293 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_H), 0|OPFL_Chain|OPFL_MemRefs,
8294 8, 2, 3, 1,
8295 15,
8296 OPC_CheckPredicate, 20,
8297 OPC_CheckPredicate5,
8298 OPC_CheckPatternPredicate6,
8299 OPC_CheckComplexPat3, /*#*/2,
8300 OPC_EmitMergeInputChains1_0,
8301 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_H), 0|OPFL_Chain|OPFL_MemRefs,
8302 8, 2, 3, 1,
8303 15,
8304 OPC_CheckPredicate, 32,
8305 OPC_CheckPredicate5,
8306 OPC_CheckPatternPredicate6,
8307 OPC_CheckComplexPat3, /*#*/2,
8308 OPC_EmitMergeInputChains1_0,
8309 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_HU), 0|OPFL_Chain|OPFL_MemRefs,
8310 8, 2, 3, 1,
8311 15,
8312 OPC_CheckPredicate, 26,
8313 OPC_CheckPredicate2,
8314 OPC_CheckPatternPredicate6,
8315 OPC_CheckComplexPat3, /*#*/2,
8316 OPC_EmitMergeInputChains1_0,
8317 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_W), 0|OPFL_Chain|OPFL_MemRefs,
8318 8, 2, 3, 1,
8319 15,
8320 OPC_CheckPredicate, 20,
8321 OPC_CheckPredicate2,
8322 OPC_CheckPatternPredicate6,
8323 OPC_CheckComplexPat3, /*#*/2,
8324 OPC_EmitMergeInputChains1_0,
8325 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_W), 0|OPFL_Chain|OPFL_MemRefs,
8326 8, 2, 3, 1,
8327 15,
8328 OPC_CheckPredicate, 32,
8329 OPC_CheckPredicate2,
8330 OPC_CheckPatternPredicate6,
8331 OPC_CheckComplexPat3, /*#*/2,
8332 OPC_EmitMergeInputChains1_0,
8333 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_WU), 0|OPFL_Chain|OPFL_MemRefs,
8334 8, 2, 3, 1,
8335 13,
8336 OPC_CheckPredicate7,
8337 OPC_CheckPatternPredicate6,
8338 OPC_CheckComplexPat3, /*#*/2,
8339 OPC_EmitMergeInputChains1_0,
8340 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LDX_D), 0|OPFL_Chain|OPFL_MemRefs,
8341 8, 2, 3, 1,
8342 0,
8343 96|128,2,
8344 OPC_RecordChild1,
8345 OPC_CheckPredicate, 8,
8346 OPC_Scope, 38,
8347 OPC_CheckPredicate, 20,
8348 OPC_CheckPredicate4,
8349 OPC_SwitchType , 14, 8,
8350 OPC_CheckPatternPredicate7,
8351 OPC_CheckComplexPat0, /*#*/1,
8352 OPC_EmitMergeInputChains1_0,
8353 OPC_EmitInteger64, 0,
8354 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
8355 8, 2, 2, 3,
8356 15, 7,
8357 OPC_CheckPatternPredicate, 8,
8358 OPC_CheckComplexPat0, /*#*/1,
8359 OPC_EmitMergeInputChains1_0,
8360 OPC_EmitInteger32, 0,
8361 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
8362 7, 2, 2, 3,
8363 0,
8364 38,
8365 OPC_CheckPredicate, 26,
8366 OPC_CheckPredicate4,
8367 OPC_SwitchType , 14, 8,
8368 OPC_CheckPatternPredicate7,
8369 OPC_CheckComplexPat0, /*#*/1,
8370 OPC_EmitMergeInputChains1_0,
8371 OPC_EmitInteger64, 0,
8372 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
8373 8, 2, 2, 3,
8374 15, 7,
8375 OPC_CheckPatternPredicate, 8,
8376 OPC_CheckComplexPat0, /*#*/1,
8377 OPC_EmitMergeInputChains1_0,
8378 OPC_EmitInteger32, 0,
8379 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
8380 7, 2, 2, 3,
8381 0,
8382 38,
8383 OPC_CheckPredicate, 20,
8384 OPC_CheckPredicate5,
8385 OPC_SwitchType , 14, 8,
8386 OPC_CheckPatternPredicate7,
8387 OPC_CheckComplexPat0, /*#*/1,
8388 OPC_EmitMergeInputChains1_0,
8389 OPC_EmitInteger64, 0,
8390 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
8391 8, 2, 2, 3,
8392 15, 7,
8393 OPC_CheckPatternPredicate, 8,
8394 OPC_CheckComplexPat0, /*#*/1,
8395 OPC_EmitMergeInputChains1_0,
8396 OPC_EmitInteger32, 0,
8397 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
8398 7, 2, 2, 3,
8399 0,
8400 38,
8401 OPC_CheckPredicate, 26,
8402 OPC_CheckPredicate5,
8403 OPC_SwitchType , 14, 8,
8404 OPC_CheckPatternPredicate7,
8405 OPC_CheckComplexPat0, /*#*/1,
8406 OPC_EmitMergeInputChains1_0,
8407 OPC_EmitInteger64, 0,
8408 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
8409 8, 2, 2, 3,
8410 15, 7,
8411 OPC_CheckPatternPredicate, 8,
8412 OPC_CheckComplexPat0, /*#*/1,
8413 OPC_EmitMergeInputChains1_0,
8414 OPC_EmitInteger32, 0,
8415 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
8416 7, 2, 2, 3,
8417 0,
8418 37,
8419 OPC_CheckPredicate7,
8420 OPC_SwitchType , 15, 8,
8421 OPC_CheckPatternPredicate, 15,
8422 OPC_CheckComplexPat0, /*#*/1,
8423 OPC_EmitMergeInputChains1_0,
8424 OPC_EmitInteger64, 0,
8425 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
8426 8, 2, 2, 3,
8427 15, 7,
8428 OPC_CheckPatternPredicate, 10,
8429 OPC_CheckComplexPat0, /*#*/1,
8430 OPC_EmitMergeInputChains1_0,
8431 OPC_EmitInteger32, 0,
8432 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
8433 7, 2, 2, 3,
8434 0,
8435 78,
8436 OPC_CheckPredicate, 32,
8437 OPC_Scope, 36,
8438 OPC_CheckPredicate4,
8439 OPC_SwitchType , 14, 8,
8440 OPC_CheckPatternPredicate7,
8441 OPC_CheckComplexPat0, /*#*/1,
8442 OPC_EmitMergeInputChains1_0,
8443 OPC_EmitInteger64, 0,
8444 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_BU), 0|OPFL_Chain|OPFL_MemRefs,
8445 8, 2, 2, 3,
8446 15, 7,
8447 OPC_CheckPatternPredicate, 8,
8448 OPC_CheckComplexPat0, /*#*/1,
8449 OPC_EmitMergeInputChains1_0,
8450 OPC_EmitInteger32, 0,
8451 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_BU), 0|OPFL_Chain|OPFL_MemRefs,
8452 7, 2, 2, 3,
8453 0,
8454 36,
8455 OPC_CheckPredicate5,
8456 OPC_SwitchType , 14, 8,
8457 OPC_CheckPatternPredicate7,
8458 OPC_CheckComplexPat0, /*#*/1,
8459 OPC_EmitMergeInputChains1_0,
8460 OPC_EmitInteger64, 0,
8461 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_HU), 0|OPFL_Chain|OPFL_MemRefs,
8462 8, 2, 2, 3,
8463 15, 7,
8464 OPC_CheckPatternPredicate, 8,
8465 OPC_CheckComplexPat0, /*#*/1,
8466 OPC_EmitMergeInputChains1_0,
8467 OPC_EmitInteger32, 0,
8468 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_HU), 0|OPFL_Chain|OPFL_MemRefs,
8469 7, 2, 2, 3,
8470 0,
8471 0,
8472 18,
8473 OPC_CheckPredicate, 20,
8474 OPC_CheckPredicate2,
8475 OPC_CheckTypeI64,
8476 OPC_CheckPatternPredicate6,
8477 OPC_CheckComplexPat0, /*#*/1,
8478 OPC_EmitMergeInputChains1_0,
8479 OPC_EmitInteger64, 0,
8480 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
8481 8, 2, 2, 3,
8482 18,
8483 OPC_CheckPredicate, 26,
8484 OPC_CheckPredicate2,
8485 OPC_CheckTypeI64,
8486 OPC_CheckPatternPredicate6,
8487 OPC_CheckComplexPat0, /*#*/1,
8488 OPC_EmitMergeInputChains1_0,
8489 OPC_EmitInteger64, 0,
8490 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
8491 8, 2, 2, 3,
8492 18,
8493 OPC_CheckPredicate, 32,
8494 OPC_CheckPredicate2,
8495 OPC_CheckTypeI64,
8496 OPC_CheckPatternPredicate6,
8497 OPC_CheckComplexPat0, /*#*/1,
8498 OPC_EmitMergeInputChains1_0,
8499 OPC_EmitInteger64, 0,
8500 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_WU), 0|OPFL_Chain|OPFL_MemRefs,
8501 8, 2, 2, 3,
8502 16,
8503 OPC_CheckPredicate7,
8504 OPC_CheckTypeI64,
8505 OPC_CheckPatternPredicate6,
8506 OPC_CheckComplexPat0, /*#*/1,
8507 OPC_EmitMergeInputChains1_0,
8508 OPC_EmitInteger64, 0,
8509 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
8510 8, 2, 2, 3,
8511 0,
8512 65|128,1,
8513 OPC_MoveChild1,
8514 OPC_SwitchOpcode , 92, TARGET_VAL(ISD::ADD),
8515 OPC_RecordChild0,
8516 OPC_RecordChild1,
8517 OPC_MoveChild1,
8518 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8519 OPC_CheckPredicate, 11,
8520 OPC_MoveParent,
8521 OPC_CheckPredicate3,
8522 OPC_SwitchType , 38, 8,
8523 OPC_MoveParent,
8524 OPC_CheckPredicate, 8,
8525 OPC_CheckPredicate7,
8526 OPC_SwitchType , 14, 12,
8527 OPC_CheckPatternPredicate, 11,
8528 OPC_CheckComplexPat0, /*#*/1,
8529 OPC_EmitMergeInputChains1_0,
8530 OPC_EmitConvertToTarget2,
8531 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_S), 0|OPFL_Chain|OPFL_MemRefs,
8532 12, 2, 3, 4,
8533 14, 13,
8534 OPC_CheckPatternPredicate, 13,
8535 OPC_CheckComplexPat0, /*#*/1,
8536 OPC_EmitMergeInputChains1_0,
8537 OPC_EmitConvertToTarget2,
8538 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_D), 0|OPFL_Chain|OPFL_MemRefs,
8539 13, 2, 3, 4,
8540 0,
8541 38, 7,
8542 OPC_MoveParent,
8543 OPC_CheckPredicate, 8,
8544 OPC_CheckPredicate7,
8545 OPC_SwitchType , 14, 12,
8546 OPC_CheckPatternPredicate, 12,
8547 OPC_CheckComplexPat0, /*#*/1,
8548 OPC_EmitMergeInputChains1_0,
8549 OPC_EmitConvertToTarget2,
8550 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_S), 0|OPFL_Chain|OPFL_MemRefs,
8551 12, 2, 3, 4,
8552 14, 13,
8553 OPC_CheckPatternPredicate, 14,
8554 OPC_CheckComplexPat0, /*#*/1,
8555 OPC_EmitMergeInputChains1_0,
8556 OPC_EmitConvertToTarget2,
8557 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_D), 0|OPFL_Chain|OPFL_MemRefs,
8558 13, 2, 3, 4,
8559 0,
8560 0,
8561 92, TARGET_VAL(ISD::OR),
8562 OPC_RecordChild0,
8563 OPC_RecordChild1,
8564 OPC_MoveChild1,
8565 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8566 OPC_CheckPredicate, 11,
8567 OPC_MoveParent,
8568 OPC_CheckPredicate3,
8569 OPC_SwitchType , 38, 8,
8570 OPC_MoveParent,
8571 OPC_CheckPredicate, 8,
8572 OPC_CheckPredicate7,
8573 OPC_SwitchType , 14, 12,
8574 OPC_CheckPatternPredicate, 11,
8575 OPC_CheckComplexPat0, /*#*/1,
8576 OPC_EmitMergeInputChains1_0,
8577 OPC_EmitConvertToTarget2,
8578 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_S), 0|OPFL_Chain|OPFL_MemRefs,
8579 12, 2, 3, 4,
8580 14, 13,
8581 OPC_CheckPatternPredicate, 13,
8582 OPC_CheckComplexPat0, /*#*/1,
8583 OPC_EmitMergeInputChains1_0,
8584 OPC_EmitConvertToTarget2,
8585 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_D), 0|OPFL_Chain|OPFL_MemRefs,
8586 13, 2, 3, 4,
8587 0,
8588 38, 7,
8589 OPC_MoveParent,
8590 OPC_CheckPredicate, 8,
8591 OPC_CheckPredicate7,
8592 OPC_SwitchType , 14, 12,
8593 OPC_CheckPatternPredicate, 12,
8594 OPC_CheckComplexPat0, /*#*/1,
8595 OPC_EmitMergeInputChains1_0,
8596 OPC_EmitConvertToTarget2,
8597 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_S), 0|OPFL_Chain|OPFL_MemRefs,
8598 12, 2, 3, 4,
8599 14, 13,
8600 OPC_CheckPatternPredicate, 14,
8601 OPC_CheckComplexPat0, /*#*/1,
8602 OPC_EmitMergeInputChains1_0,
8603 OPC_EmitConvertToTarget2,
8604 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_D), 0|OPFL_Chain|OPFL_MemRefs,
8605 13, 2, 3, 4,
8606 0,
8607 0,
8608 0,
8609 36,
8610 OPC_RecordChild1,
8611 OPC_CheckPredicate, 8,
8612 OPC_CheckPredicate7,
8613 OPC_CheckType, 12,
8614 OPC_Scope, 13,
8615 OPC_CheckPatternPredicate, 11,
8616 OPC_CheckComplexPat2, /*#*/1,
8617 OPC_EmitMergeInputChains1_0,
8618 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_S), 0|OPFL_Chain|OPFL_MemRefs,
8619 12, 2, 2, 3,
8620 13,
8621 OPC_CheckPatternPredicate, 12,
8622 OPC_CheckComplexPat2, /*#*/1,
8623 OPC_EmitMergeInputChains1_0,
8624 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_S), 0|OPFL_Chain|OPFL_MemRefs,
8625 12, 2, 2, 3,
8626 0,
8627 50,
8628 OPC_MoveChild1,
8629 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
8630 OPC_RecordChild0,
8631 OPC_RecordChild1,
8632 OPC_SwitchType , 19, 8,
8633 OPC_MoveParent,
8634 OPC_CheckPredicate, 8,
8635 OPC_CheckPredicate7,
8636 OPC_CheckType, 12,
8637 OPC_CheckPatternPredicate, 11,
8638 OPC_CheckComplexPat3, /*#*/1,
8639 OPC_EmitMergeInputChains1_0,
8640 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLDX_S), 0|OPFL_Chain|OPFL_MemRefs,
8641 12, 2, 3, 2,
8642 19, 7,
8643 OPC_MoveParent,
8644 OPC_CheckPredicate, 8,
8645 OPC_CheckPredicate7,
8646 OPC_CheckType, 12,
8647 OPC_CheckPatternPredicate, 12,
8648 OPC_CheckComplexPat3, /*#*/1,
8649 OPC_EmitMergeInputChains1_0,
8650 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLDX_S), 0|OPFL_Chain|OPFL_MemRefs,
8651 12, 2, 3, 2,
8652 0,
8653 36,
8654 OPC_RecordChild1,
8655 OPC_CheckPredicate, 8,
8656 OPC_CheckPredicate7,
8657 OPC_CheckType, 13,
8658 OPC_Scope, 13,
8659 OPC_CheckPatternPredicate, 13,
8660 OPC_CheckComplexPat2, /*#*/1,
8661 OPC_EmitMergeInputChains1_0,
8662 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_D), 0|OPFL_Chain|OPFL_MemRefs,
8663 13, 2, 2, 3,
8664 13,
8665 OPC_CheckPatternPredicate, 14,
8666 OPC_CheckComplexPat2, /*#*/1,
8667 OPC_EmitMergeInputChains1_0,
8668 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_D), 0|OPFL_Chain|OPFL_MemRefs,
8669 13, 2, 2, 3,
8670 0,
8671 114,
8672 OPC_MoveChild1,
8673 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
8674 OPC_RecordChild0,
8675 OPC_RecordChild1,
8676 OPC_SwitchType , 51, 8,
8677 OPC_MoveParent,
8678 OPC_CheckPredicate, 8,
8679 OPC_CheckPredicate7,
8680 OPC_SwitchType , 28, 13,
8681 OPC_CheckPatternPredicate, 13,
8682 OPC_Scope, 11,
8683 OPC_CheckComplexPat3, /*#*/1,
8684 OPC_EmitMergeInputChains1_0,
8685 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLDX_D), 0|OPFL_Chain|OPFL_MemRefs,
8686 13, 2, 3, 2,
8687 11,
8688 OPC_CheckComplexPat3, /*#*/2,
8689 OPC_EmitMergeInputChains1_0,
8690 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLDX_D), 0|OPFL_Chain|OPFL_MemRefs,
8691 13, 2, 3, 1,
8692 0,
8693 13, 12,
8694 OPC_CheckPatternPredicate, 11,
8695 OPC_CheckComplexPat3, /*#*/2,
8696 OPC_EmitMergeInputChains1_0,
8697 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLDX_S), 0|OPFL_Chain|OPFL_MemRefs,
8698 12, 2, 3, 1,
8699 0,
8700 51, 7,
8701 OPC_MoveParent,
8702 OPC_CheckPredicate, 8,
8703 OPC_CheckPredicate7,
8704 OPC_SwitchType , 28, 13,
8705 OPC_CheckPatternPredicate, 14,
8706 OPC_Scope, 11,
8707 OPC_CheckComplexPat3, /*#*/1,
8708 OPC_EmitMergeInputChains1_0,
8709 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLDX_D), 0|OPFL_Chain|OPFL_MemRefs,
8710 13, 2, 3, 2,
8711 11,
8712 OPC_CheckComplexPat3, /*#*/2,
8713 OPC_EmitMergeInputChains1_0,
8714 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLDX_D), 0|OPFL_Chain|OPFL_MemRefs,
8715 13, 2, 3, 1,
8716 0,
8717 13, 12,
8718 OPC_CheckPatternPredicate, 12,
8719 OPC_CheckComplexPat3, /*#*/2,
8720 OPC_EmitMergeInputChains1_0,
8721 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLDX_S), 0|OPFL_Chain|OPFL_MemRefs,
8722 12, 2, 3, 1,
8723 0,
8724 0,
8725 78,
8726 OPC_RecordChild1,
8727 OPC_CheckPredicate, 8,
8728 OPC_CheckPredicate7,
8729 OPC_SwitchType , 34, 12,
8730 OPC_Scope, 15,
8731 OPC_CheckPatternPredicate, 11,
8732 OPC_CheckComplexPat0, /*#*/1,
8733 OPC_EmitMergeInputChains1_0,
8734 OPC_EmitInteger64, 0,
8735 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_S), 0|OPFL_Chain|OPFL_MemRefs,
8736 12, 2, 2, 3,
8737 15,
8738 OPC_CheckPatternPredicate, 12,
8739 OPC_CheckComplexPat0, /*#*/1,
8740 OPC_EmitMergeInputChains1_0,
8741 OPC_EmitInteger32, 0,
8742 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_S), 0|OPFL_Chain|OPFL_MemRefs,
8743 12, 2, 2, 3,
8744 0,
8745 34, 13,
8746 OPC_Scope, 15,
8747 OPC_CheckPatternPredicate, 13,
8748 OPC_CheckComplexPat0, /*#*/1,
8749 OPC_EmitMergeInputChains1_0,
8750 OPC_EmitInteger64, 0,
8751 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_D), 0|OPFL_Chain|OPFL_MemRefs,
8752 13, 2, 2, 3,
8753 15,
8754 OPC_CheckPatternPredicate, 14,
8755 OPC_CheckComplexPat0, /*#*/1,
8756 OPC_EmitMergeInputChains1_0,
8757 OPC_EmitInteger32, 0,
8758 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::FLD_D), 0|OPFL_Chain|OPFL_MemRefs,
8759 13, 2, 2, 3,
8760 0,
8761 0,
8762 79|128,4,
8763 OPC_MoveChild1,
8764 OPC_SwitchOpcode , 56|128,2, TARGET_VAL(ISD::ADD),
8765 OPC_RecordChild0,
8766 OPC_RecordChild1,
8767 OPC_Scope, 10|128,2,
8768 OPC_MoveChild1,
8769 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8770 OPC_CheckPredicate, 11,
8771 OPC_MoveParent,
8772 OPC_CheckPredicate3,
8773 OPC_SwitchType , 126, 8,
8774 OPC_MoveParent,
8775 OPC_CheckPredicate, 8,
8776 OPC_CheckPredicate7,
8777 OPC_SwitchType , 13, 40,
8778 OPC_CheckPatternPredicate2,
8779 OPC_CheckComplexPat0, /*#*/1,
8780 OPC_EmitMergeInputChains1_0,
8781 OPC_EmitConvertToTarget2,
8782 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8783 40, 2, 3, 4,
8784 13, 51,
8785 OPC_CheckPatternPredicate2,
8786 OPC_CheckComplexPat0, /*#*/1,
8787 OPC_EmitMergeInputChains1_0,
8788 OPC_EmitConvertToTarget2,
8789 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8790 51, 2, 3, 4,
8791 13, 62,
8792 OPC_CheckPatternPredicate2,
8793 OPC_CheckComplexPat0, /*#*/1,
8794 OPC_EmitMergeInputChains1_0,
8795 OPC_EmitConvertToTarget2,
8796 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8797 62, 2, 3, 4,
8798 13, 81,
8799 OPC_CheckPatternPredicate2,
8800 OPC_CheckComplexPat0, /*#*/1,
8801 OPC_EmitMergeInputChains1_0,
8802 OPC_EmitConvertToTarget2,
8803 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8804 81, 2, 3, 4,
8805 13, 41,
8806 OPC_CheckPatternPredicate3,
8807 OPC_CheckComplexPat0, /*#*/1,
8808 OPC_EmitMergeInputChains1_0,
8809 OPC_EmitConvertToTarget2,
8810 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8811 41, 2, 3, 4,
8812 13, 52,
8813 OPC_CheckPatternPredicate3,
8814 OPC_CheckComplexPat0, /*#*/1,
8815 OPC_EmitMergeInputChains1_0,
8816 OPC_EmitConvertToTarget2,
8817 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8818 52, 2, 3, 4,
8819 13, 66,
8820 OPC_CheckPatternPredicate3,
8821 OPC_CheckComplexPat0, /*#*/1,
8822 OPC_EmitMergeInputChains1_0,
8823 OPC_EmitConvertToTarget2,
8824 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8825 66, 2, 3, 4,
8826 13, 83,
8827 OPC_CheckPatternPredicate3,
8828 OPC_CheckComplexPat0, /*#*/1,
8829 OPC_EmitMergeInputChains1_0,
8830 OPC_EmitConvertToTarget2,
8831 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8832 83, 2, 3, 4,
8833 0,
8834 126, 7,
8835 OPC_MoveParent,
8836 OPC_CheckPredicate, 8,
8837 OPC_CheckPredicate7,
8838 OPC_SwitchType , 13, 40,
8839 OPC_CheckPatternPredicate4,
8840 OPC_CheckComplexPat0, /*#*/1,
8841 OPC_EmitMergeInputChains1_0,
8842 OPC_EmitConvertToTarget2,
8843 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8844 40, 2, 3, 4,
8845 13, 51,
8846 OPC_CheckPatternPredicate4,
8847 OPC_CheckComplexPat0, /*#*/1,
8848 OPC_EmitMergeInputChains1_0,
8849 OPC_EmitConvertToTarget2,
8850 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8851 51, 2, 3, 4,
8852 13, 62,
8853 OPC_CheckPatternPredicate4,
8854 OPC_CheckComplexPat0, /*#*/1,
8855 OPC_EmitMergeInputChains1_0,
8856 OPC_EmitConvertToTarget2,
8857 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8858 62, 2, 3, 4,
8859 13, 81,
8860 OPC_CheckPatternPredicate4,
8861 OPC_CheckComplexPat0, /*#*/1,
8862 OPC_EmitMergeInputChains1_0,
8863 OPC_EmitConvertToTarget2,
8864 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8865 81, 2, 3, 4,
8866 13, 41,
8867 OPC_CheckPatternPredicate5,
8868 OPC_CheckComplexPat0, /*#*/1,
8869 OPC_EmitMergeInputChains1_0,
8870 OPC_EmitConvertToTarget2,
8871 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8872 41, 2, 3, 4,
8873 13, 52,
8874 OPC_CheckPatternPredicate5,
8875 OPC_CheckComplexPat0, /*#*/1,
8876 OPC_EmitMergeInputChains1_0,
8877 OPC_EmitConvertToTarget2,
8878 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8879 52, 2, 3, 4,
8880 13, 66,
8881 OPC_CheckPatternPredicate5,
8882 OPC_CheckComplexPat0, /*#*/1,
8883 OPC_EmitMergeInputChains1_0,
8884 OPC_EmitConvertToTarget2,
8885 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8886 66, 2, 3, 4,
8887 13, 83,
8888 OPC_CheckPatternPredicate5,
8889 OPC_CheckComplexPat0, /*#*/1,
8890 OPC_EmitMergeInputChains1_0,
8891 OPC_EmitConvertToTarget2,
8892 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8893 83, 2, 3, 4,
8894 0,
8895 0,
8896 19,
8897 OPC_CheckTypeI64,
8898 OPC_MoveParent,
8899 OPC_CheckPredicate, 8,
8900 OPC_CheckPredicate7,
8901 OPC_CheckType, 40,
8902 OPC_CheckPatternPredicate2,
8903 OPC_CheckComplexPat3, /*#*/1,
8904 OPC_EmitMergeInputChains1_0,
8905 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
8906 40, 2, 3, 2,
8907 19,
8908 OPC_CheckTypeI32,
8909 OPC_MoveParent,
8910 OPC_CheckPredicate, 8,
8911 OPC_CheckPredicate7,
8912 OPC_CheckType, 40,
8913 OPC_CheckPatternPredicate4,
8914 OPC_CheckComplexPat3, /*#*/1,
8915 OPC_EmitMergeInputChains1_0,
8916 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
8917 40, 2, 3, 2,
8918 0,
8919 12|128,2, TARGET_VAL(ISD::OR),
8920 OPC_RecordChild0,
8921 OPC_RecordChild1,
8922 OPC_MoveChild1,
8923 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8924 OPC_CheckPredicate, 11,
8925 OPC_MoveParent,
8926 OPC_CheckPredicate3,
8927 OPC_SwitchType , 126, 8,
8928 OPC_MoveParent,
8929 OPC_CheckPredicate, 8,
8930 OPC_CheckPredicate7,
8931 OPC_SwitchType , 13, 40,
8932 OPC_CheckPatternPredicate2,
8933 OPC_CheckComplexPat0, /*#*/1,
8934 OPC_EmitMergeInputChains1_0,
8935 OPC_EmitConvertToTarget2,
8936 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8937 40, 2, 3, 4,
8938 13, 51,
8939 OPC_CheckPatternPredicate2,
8940 OPC_CheckComplexPat0, /*#*/1,
8941 OPC_EmitMergeInputChains1_0,
8942 OPC_EmitConvertToTarget2,
8943 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8944 51, 2, 3, 4,
8945 13, 62,
8946 OPC_CheckPatternPredicate2,
8947 OPC_CheckComplexPat0, /*#*/1,
8948 OPC_EmitMergeInputChains1_0,
8949 OPC_EmitConvertToTarget2,
8950 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8951 62, 2, 3, 4,
8952 13, 81,
8953 OPC_CheckPatternPredicate2,
8954 OPC_CheckComplexPat0, /*#*/1,
8955 OPC_EmitMergeInputChains1_0,
8956 OPC_EmitConvertToTarget2,
8957 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8958 81, 2, 3, 4,
8959 13, 41,
8960 OPC_CheckPatternPredicate3,
8961 OPC_CheckComplexPat0, /*#*/1,
8962 OPC_EmitMergeInputChains1_0,
8963 OPC_EmitConvertToTarget2,
8964 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8965 41, 2, 3, 4,
8966 13, 52,
8967 OPC_CheckPatternPredicate3,
8968 OPC_CheckComplexPat0, /*#*/1,
8969 OPC_EmitMergeInputChains1_0,
8970 OPC_EmitConvertToTarget2,
8971 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8972 52, 2, 3, 4,
8973 13, 66,
8974 OPC_CheckPatternPredicate3,
8975 OPC_CheckComplexPat0, /*#*/1,
8976 OPC_EmitMergeInputChains1_0,
8977 OPC_EmitConvertToTarget2,
8978 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8979 66, 2, 3, 4,
8980 13, 83,
8981 OPC_CheckPatternPredicate3,
8982 OPC_CheckComplexPat0, /*#*/1,
8983 OPC_EmitMergeInputChains1_0,
8984 OPC_EmitConvertToTarget2,
8985 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
8986 83, 2, 3, 4,
8987 0,
8988 126, 7,
8989 OPC_MoveParent,
8990 OPC_CheckPredicate, 8,
8991 OPC_CheckPredicate7,
8992 OPC_SwitchType , 13, 40,
8993 OPC_CheckPatternPredicate4,
8994 OPC_CheckComplexPat0, /*#*/1,
8995 OPC_EmitMergeInputChains1_0,
8996 OPC_EmitConvertToTarget2,
8997 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
8998 40, 2, 3, 4,
8999 13, 51,
9000 OPC_CheckPatternPredicate4,
9001 OPC_CheckComplexPat0, /*#*/1,
9002 OPC_EmitMergeInputChains1_0,
9003 OPC_EmitConvertToTarget2,
9004 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9005 51, 2, 3, 4,
9006 13, 62,
9007 OPC_CheckPatternPredicate4,
9008 OPC_CheckComplexPat0, /*#*/1,
9009 OPC_EmitMergeInputChains1_0,
9010 OPC_EmitConvertToTarget2,
9011 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9012 62, 2, 3, 4,
9013 13, 81,
9014 OPC_CheckPatternPredicate4,
9015 OPC_CheckComplexPat0, /*#*/1,
9016 OPC_EmitMergeInputChains1_0,
9017 OPC_EmitConvertToTarget2,
9018 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9019 81, 2, 3, 4,
9020 13, 41,
9021 OPC_CheckPatternPredicate5,
9022 OPC_CheckComplexPat0, /*#*/1,
9023 OPC_EmitMergeInputChains1_0,
9024 OPC_EmitConvertToTarget2,
9025 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9026 41, 2, 3, 4,
9027 13, 52,
9028 OPC_CheckPatternPredicate5,
9029 OPC_CheckComplexPat0, /*#*/1,
9030 OPC_EmitMergeInputChains1_0,
9031 OPC_EmitConvertToTarget2,
9032 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9033 52, 2, 3, 4,
9034 13, 66,
9035 OPC_CheckPatternPredicate5,
9036 OPC_CheckComplexPat0, /*#*/1,
9037 OPC_EmitMergeInputChains1_0,
9038 OPC_EmitConvertToTarget2,
9039 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9040 66, 2, 3, 4,
9041 13, 83,
9042 OPC_CheckPatternPredicate5,
9043 OPC_CheckComplexPat0, /*#*/1,
9044 OPC_EmitMergeInputChains1_0,
9045 OPC_EmitConvertToTarget2,
9046 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9047 83, 2, 3, 4,
9048 0,
9049 0,
9050 0,
9051 66,
9052 OPC_RecordChild1,
9053 OPC_CheckPredicate, 8,
9054 OPC_CheckPredicate7,
9055 OPC_SwitchType , 28, 40,
9056 OPC_Scope, 12,
9057 OPC_CheckPatternPredicate2,
9058 OPC_CheckComplexPat2, /*#*/1,
9059 OPC_EmitMergeInputChains1_0,
9060 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9061 40, 2, 2, 3,
9062 12,
9063 OPC_CheckPatternPredicate4,
9064 OPC_CheckComplexPat2, /*#*/1,
9065 OPC_EmitMergeInputChains1_0,
9066 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9067 40, 2, 2, 3,
9068 0,
9069 28, 51,
9070 OPC_Scope, 12,
9071 OPC_CheckPatternPredicate2,
9072 OPC_CheckComplexPat2, /*#*/1,
9073 OPC_EmitMergeInputChains1_0,
9074 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9075 51, 2, 2, 3,
9076 12,
9077 OPC_CheckPatternPredicate4,
9078 OPC_CheckComplexPat2, /*#*/1,
9079 OPC_EmitMergeInputChains1_0,
9080 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9081 51, 2, 2, 3,
9082 0,
9083 0,
9084 48,
9085 OPC_MoveChild1,
9086 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
9087 OPC_RecordChild0,
9088 OPC_RecordChild1,
9089 OPC_SwitchType , 18, 8,
9090 OPC_MoveParent,
9091 OPC_CheckPredicate, 8,
9092 OPC_CheckPredicate7,
9093 OPC_CheckType, 51,
9094 OPC_CheckPatternPredicate2,
9095 OPC_CheckComplexPat3, /*#*/1,
9096 OPC_EmitMergeInputChains1_0,
9097 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9098 51, 2, 3, 2,
9099 18, 7,
9100 OPC_MoveParent,
9101 OPC_CheckPredicate, 8,
9102 OPC_CheckPredicate7,
9103 OPC_CheckType, 51,
9104 OPC_CheckPatternPredicate4,
9105 OPC_CheckComplexPat3, /*#*/1,
9106 OPC_EmitMergeInputChains1_0,
9107 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9108 51, 2, 3, 2,
9109 0,
9110 34,
9111 OPC_RecordChild1,
9112 OPC_CheckPredicate, 8,
9113 OPC_CheckPredicate7,
9114 OPC_CheckType, 62,
9115 OPC_Scope, 12,
9116 OPC_CheckPatternPredicate2,
9117 OPC_CheckComplexPat2, /*#*/1,
9118 OPC_EmitMergeInputChains1_0,
9119 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9120 62, 2, 2, 3,
9121 12,
9122 OPC_CheckPatternPredicate4,
9123 OPC_CheckComplexPat2, /*#*/1,
9124 OPC_EmitMergeInputChains1_0,
9125 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9126 62, 2, 2, 3,
9127 0,
9128 48,
9129 OPC_MoveChild1,
9130 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
9131 OPC_RecordChild0,
9132 OPC_RecordChild1,
9133 OPC_SwitchType , 18, 8,
9134 OPC_MoveParent,
9135 OPC_CheckPredicate, 8,
9136 OPC_CheckPredicate7,
9137 OPC_CheckType, 62,
9138 OPC_CheckPatternPredicate2,
9139 OPC_CheckComplexPat3, /*#*/1,
9140 OPC_EmitMergeInputChains1_0,
9141 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9142 62, 2, 3, 2,
9143 18, 7,
9144 OPC_MoveParent,
9145 OPC_CheckPredicate, 8,
9146 OPC_CheckPredicate7,
9147 OPC_CheckType, 62,
9148 OPC_CheckPatternPredicate4,
9149 OPC_CheckComplexPat3, /*#*/1,
9150 OPC_EmitMergeInputChains1_0,
9151 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9152 62, 2, 3, 2,
9153 0,
9154 34,
9155 OPC_RecordChild1,
9156 OPC_CheckPredicate, 8,
9157 OPC_CheckPredicate7,
9158 OPC_CheckType, 81,
9159 OPC_Scope, 12,
9160 OPC_CheckPatternPredicate2,
9161 OPC_CheckComplexPat2, /*#*/1,
9162 OPC_EmitMergeInputChains1_0,
9163 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9164 81, 2, 2, 3,
9165 12,
9166 OPC_CheckPatternPredicate4,
9167 OPC_CheckComplexPat2, /*#*/1,
9168 OPC_EmitMergeInputChains1_0,
9169 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9170 81, 2, 2, 3,
9171 0,
9172 80,
9173 OPC_MoveChild1,
9174 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
9175 OPC_RecordChild0,
9176 OPC_RecordChild1,
9177 OPC_SwitchType , 34, 8,
9178 OPC_MoveParent,
9179 OPC_CheckPredicate, 8,
9180 OPC_CheckPredicate7,
9181 OPC_SwitchType , 12, 81,
9182 OPC_CheckPatternPredicate2,
9183 OPC_CheckComplexPat3, /*#*/1,
9184 OPC_EmitMergeInputChains1_0,
9185 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9186 81, 2, 3, 2,
9187 12, 41,
9188 OPC_CheckPatternPredicate3,
9189 OPC_CheckComplexPat3, /*#*/1,
9190 OPC_EmitMergeInputChains1_0,
9191 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9192 41, 2, 3, 2,
9193 0,
9194 34, 7,
9195 OPC_MoveParent,
9196 OPC_CheckPredicate, 8,
9197 OPC_CheckPredicate7,
9198 OPC_SwitchType , 12, 81,
9199 OPC_CheckPatternPredicate4,
9200 OPC_CheckComplexPat3, /*#*/1,
9201 OPC_EmitMergeInputChains1_0,
9202 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9203 81, 2, 3, 2,
9204 12, 41,
9205 OPC_CheckPatternPredicate5,
9206 OPC_CheckComplexPat3, /*#*/1,
9207 OPC_EmitMergeInputChains1_0,
9208 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9209 41, 2, 3, 2,
9210 0,
9211 0,
9212 66,
9213 OPC_RecordChild1,
9214 OPC_CheckPredicate, 8,
9215 OPC_CheckPredicate7,
9216 OPC_SwitchType , 28, 41,
9217 OPC_Scope, 12,
9218 OPC_CheckPatternPredicate3,
9219 OPC_CheckComplexPat2, /*#*/1,
9220 OPC_EmitMergeInputChains1_0,
9221 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9222 41, 2, 2, 3,
9223 12,
9224 OPC_CheckPatternPredicate5,
9225 OPC_CheckComplexPat2, /*#*/1,
9226 OPC_EmitMergeInputChains1_0,
9227 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9228 41, 2, 2, 3,
9229 0,
9230 28, 52,
9231 OPC_Scope, 12,
9232 OPC_CheckPatternPredicate3,
9233 OPC_CheckComplexPat2, /*#*/1,
9234 OPC_EmitMergeInputChains1_0,
9235 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9236 52, 2, 2, 3,
9237 12,
9238 OPC_CheckPatternPredicate5,
9239 OPC_CheckComplexPat2, /*#*/1,
9240 OPC_EmitMergeInputChains1_0,
9241 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9242 52, 2, 2, 3,
9243 0,
9244 0,
9245 48,
9246 OPC_MoveChild1,
9247 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
9248 OPC_RecordChild0,
9249 OPC_RecordChild1,
9250 OPC_SwitchType , 18, 8,
9251 OPC_MoveParent,
9252 OPC_CheckPredicate, 8,
9253 OPC_CheckPredicate7,
9254 OPC_CheckType, 52,
9255 OPC_CheckPatternPredicate3,
9256 OPC_CheckComplexPat3, /*#*/1,
9257 OPC_EmitMergeInputChains1_0,
9258 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9259 52, 2, 3, 2,
9260 18, 7,
9261 OPC_MoveParent,
9262 OPC_CheckPredicate, 8,
9263 OPC_CheckPredicate7,
9264 OPC_CheckType, 52,
9265 OPC_CheckPatternPredicate5,
9266 OPC_CheckComplexPat3, /*#*/1,
9267 OPC_EmitMergeInputChains1_0,
9268 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9269 52, 2, 3, 2,
9270 0,
9271 34,
9272 OPC_RecordChild1,
9273 OPC_CheckPredicate, 8,
9274 OPC_CheckPredicate7,
9275 OPC_CheckType, 66,
9276 OPC_Scope, 12,
9277 OPC_CheckPatternPredicate3,
9278 OPC_CheckComplexPat2, /*#*/1,
9279 OPC_EmitMergeInputChains1_0,
9280 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9281 66, 2, 2, 3,
9282 12,
9283 OPC_CheckPatternPredicate5,
9284 OPC_CheckComplexPat2, /*#*/1,
9285 OPC_EmitMergeInputChains1_0,
9286 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9287 66, 2, 2, 3,
9288 0,
9289 48,
9290 OPC_MoveChild1,
9291 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
9292 OPC_RecordChild0,
9293 OPC_RecordChild1,
9294 OPC_SwitchType , 18, 8,
9295 OPC_MoveParent,
9296 OPC_CheckPredicate, 8,
9297 OPC_CheckPredicate7,
9298 OPC_CheckType, 66,
9299 OPC_CheckPatternPredicate3,
9300 OPC_CheckComplexPat3, /*#*/1,
9301 OPC_EmitMergeInputChains1_0,
9302 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9303 66, 2, 3, 2,
9304 18, 7,
9305 OPC_MoveParent,
9306 OPC_CheckPredicate, 8,
9307 OPC_CheckPredicate7,
9308 OPC_CheckType, 66,
9309 OPC_CheckPatternPredicate5,
9310 OPC_CheckComplexPat3, /*#*/1,
9311 OPC_EmitMergeInputChains1_0,
9312 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9313 66, 2, 3, 2,
9314 0,
9315 34,
9316 OPC_RecordChild1,
9317 OPC_CheckPredicate, 8,
9318 OPC_CheckPredicate7,
9319 OPC_CheckType, 83,
9320 OPC_Scope, 12,
9321 OPC_CheckPatternPredicate3,
9322 OPC_CheckComplexPat2, /*#*/1,
9323 OPC_EmitMergeInputChains1_0,
9324 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9325 83, 2, 2, 3,
9326 12,
9327 OPC_CheckPatternPredicate5,
9328 OPC_CheckComplexPat2, /*#*/1,
9329 OPC_EmitMergeInputChains1_0,
9330 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9331 83, 2, 2, 3,
9332 0,
9333 24|128,2,
9334 OPC_MoveChild1,
9335 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
9336 OPC_RecordChild0,
9337 OPC_RecordChild1,
9338 OPC_SwitchType , 5|128,1, 8,
9339 OPC_MoveParent,
9340 OPC_CheckPredicate, 8,
9341 OPC_CheckPredicate7,
9342 OPC_SwitchType , 27, 83,
9343 OPC_CheckPatternPredicate3,
9344 OPC_Scope, 11,
9345 OPC_CheckComplexPat3, /*#*/1,
9346 OPC_EmitMergeInputChains1_0,
9347 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9348 83, 2, 3, 2,
9349 11,
9350 OPC_CheckComplexPat3, /*#*/2,
9351 OPC_EmitMergeInputChains1_0,
9352 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9353 83, 2, 3, 1,
9354 0,
9355 12, 40,
9356 OPC_CheckPatternPredicate2,
9357 OPC_CheckComplexPat3, /*#*/2,
9358 OPC_EmitMergeInputChains1_0,
9359 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9360 40, 2, 3, 1,
9361 12, 51,
9362 OPC_CheckPatternPredicate2,
9363 OPC_CheckComplexPat3, /*#*/2,
9364 OPC_EmitMergeInputChains1_0,
9365 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9366 51, 2, 3, 1,
9367 12, 62,
9368 OPC_CheckPatternPredicate2,
9369 OPC_CheckComplexPat3, /*#*/2,
9370 OPC_EmitMergeInputChains1_0,
9371 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9372 62, 2, 3, 1,
9373 12, 81,
9374 OPC_CheckPatternPredicate2,
9375 OPC_CheckComplexPat3, /*#*/2,
9376 OPC_EmitMergeInputChains1_0,
9377 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9378 81, 2, 3, 1,
9379 12, 41,
9380 OPC_CheckPatternPredicate3,
9381 OPC_CheckComplexPat3, /*#*/2,
9382 OPC_EmitMergeInputChains1_0,
9383 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9384 41, 2, 3, 1,
9385 12, 52,
9386 OPC_CheckPatternPredicate3,
9387 OPC_CheckComplexPat3, /*#*/2,
9388 OPC_EmitMergeInputChains1_0,
9389 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9390 52, 2, 3, 1,
9391 12, 66,
9392 OPC_CheckPatternPredicate3,
9393 OPC_CheckComplexPat3, /*#*/2,
9394 OPC_EmitMergeInputChains1_0,
9395 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9396 66, 2, 3, 1,
9397 0,
9398 5|128,1, 7,
9399 OPC_MoveParent,
9400 OPC_CheckPredicate, 8,
9401 OPC_CheckPredicate7,
9402 OPC_SwitchType , 27, 83,
9403 OPC_CheckPatternPredicate5,
9404 OPC_Scope, 11,
9405 OPC_CheckComplexPat3, /*#*/1,
9406 OPC_EmitMergeInputChains1_0,
9407 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9408 83, 2, 3, 2,
9409 11,
9410 OPC_CheckComplexPat3, /*#*/2,
9411 OPC_EmitMergeInputChains1_0,
9412 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9413 83, 2, 3, 1,
9414 0,
9415 12, 40,
9416 OPC_CheckPatternPredicate4,
9417 OPC_CheckComplexPat3, /*#*/2,
9418 OPC_EmitMergeInputChains1_0,
9419 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9420 40, 2, 3, 1,
9421 12, 51,
9422 OPC_CheckPatternPredicate4,
9423 OPC_CheckComplexPat3, /*#*/2,
9424 OPC_EmitMergeInputChains1_0,
9425 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9426 51, 2, 3, 1,
9427 12, 62,
9428 OPC_CheckPatternPredicate4,
9429 OPC_CheckComplexPat3, /*#*/2,
9430 OPC_EmitMergeInputChains1_0,
9431 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9432 62, 2, 3, 1,
9433 12, 81,
9434 OPC_CheckPatternPredicate4,
9435 OPC_CheckComplexPat3, /*#*/2,
9436 OPC_EmitMergeInputChains1_0,
9437 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9438 81, 2, 3, 1,
9439 12, 41,
9440 OPC_CheckPatternPredicate5,
9441 OPC_CheckComplexPat3, /*#*/2,
9442 OPC_EmitMergeInputChains1_0,
9443 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9444 41, 2, 3, 1,
9445 12, 52,
9446 OPC_CheckPatternPredicate5,
9447 OPC_CheckComplexPat3, /*#*/2,
9448 OPC_EmitMergeInputChains1_0,
9449 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9450 52, 2, 3, 1,
9451 12, 66,
9452 OPC_CheckPatternPredicate5,
9453 OPC_CheckComplexPat3, /*#*/2,
9454 OPC_EmitMergeInputChains1_0,
9455 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9456 66, 2, 3, 1,
9457 0,
9458 0,
9459 22|128,2,
9460 OPC_RecordChild1,
9461 OPC_CheckPredicate, 8,
9462 OPC_CheckPredicate7,
9463 OPC_SwitchType , 32, 40,
9464 OPC_Scope, 14,
9465 OPC_CheckPatternPredicate2,
9466 OPC_CheckComplexPat0, /*#*/1,
9467 OPC_EmitMergeInputChains1_0,
9468 OPC_EmitInteger64, 0,
9469 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9470 40, 2, 2, 3,
9471 14,
9472 OPC_CheckPatternPredicate4,
9473 OPC_CheckComplexPat0, /*#*/1,
9474 OPC_EmitMergeInputChains1_0,
9475 OPC_EmitInteger32, 0,
9476 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9477 40, 2, 2, 3,
9478 0,
9479 32, 51,
9480 OPC_Scope, 14,
9481 OPC_CheckPatternPredicate2,
9482 OPC_CheckComplexPat0, /*#*/1,
9483 OPC_EmitMergeInputChains1_0,
9484 OPC_EmitInteger64, 0,
9485 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9486 51, 2, 2, 3,
9487 14,
9488 OPC_CheckPatternPredicate4,
9489 OPC_CheckComplexPat0, /*#*/1,
9490 OPC_EmitMergeInputChains1_0,
9491 OPC_EmitInteger32, 0,
9492 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9493 51, 2, 2, 3,
9494 0,
9495 32, 62,
9496 OPC_Scope, 14,
9497 OPC_CheckPatternPredicate2,
9498 OPC_CheckComplexPat0, /*#*/1,
9499 OPC_EmitMergeInputChains1_0,
9500 OPC_EmitInteger64, 0,
9501 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9502 62, 2, 2, 3,
9503 14,
9504 OPC_CheckPatternPredicate4,
9505 OPC_CheckComplexPat0, /*#*/1,
9506 OPC_EmitMergeInputChains1_0,
9507 OPC_EmitInteger32, 0,
9508 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9509 62, 2, 2, 3,
9510 0,
9511 32, 81,
9512 OPC_Scope, 14,
9513 OPC_CheckPatternPredicate2,
9514 OPC_CheckComplexPat0, /*#*/1,
9515 OPC_EmitMergeInputChains1_0,
9516 OPC_EmitInteger64, 0,
9517 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9518 81, 2, 2, 3,
9519 14,
9520 OPC_CheckPatternPredicate4,
9521 OPC_CheckComplexPat0, /*#*/1,
9522 OPC_EmitMergeInputChains1_0,
9523 OPC_EmitInteger32, 0,
9524 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9525 81, 2, 2, 3,
9526 0,
9527 32, 41,
9528 OPC_Scope, 14,
9529 OPC_CheckPatternPredicate3,
9530 OPC_CheckComplexPat0, /*#*/1,
9531 OPC_EmitMergeInputChains1_0,
9532 OPC_EmitInteger64, 0,
9533 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9534 41, 2, 2, 3,
9535 14,
9536 OPC_CheckPatternPredicate5,
9537 OPC_CheckComplexPat0, /*#*/1,
9538 OPC_EmitMergeInputChains1_0,
9539 OPC_EmitInteger32, 0,
9540 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9541 41, 2, 2, 3,
9542 0,
9543 32, 52,
9544 OPC_Scope, 14,
9545 OPC_CheckPatternPredicate3,
9546 OPC_CheckComplexPat0, /*#*/1,
9547 OPC_EmitMergeInputChains1_0,
9548 OPC_EmitInteger64, 0,
9549 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9550 52, 2, 2, 3,
9551 14,
9552 OPC_CheckPatternPredicate5,
9553 OPC_CheckComplexPat0, /*#*/1,
9554 OPC_EmitMergeInputChains1_0,
9555 OPC_EmitInteger32, 0,
9556 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9557 52, 2, 2, 3,
9558 0,
9559 32, 66,
9560 OPC_Scope, 14,
9561 OPC_CheckPatternPredicate3,
9562 OPC_CheckComplexPat0, /*#*/1,
9563 OPC_EmitMergeInputChains1_0,
9564 OPC_EmitInteger64, 0,
9565 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9566 66, 2, 2, 3,
9567 14,
9568 OPC_CheckPatternPredicate5,
9569 OPC_CheckComplexPat0, /*#*/1,
9570 OPC_EmitMergeInputChains1_0,
9571 OPC_EmitInteger32, 0,
9572 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9573 66, 2, 2, 3,
9574 0,
9575 32, 83,
9576 OPC_Scope, 14,
9577 OPC_CheckPatternPredicate3,
9578 OPC_CheckComplexPat0, /*#*/1,
9579 OPC_EmitMergeInputChains1_0,
9580 OPC_EmitInteger64, 0,
9581 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9582 83, 2, 2, 3,
9583 14,
9584 OPC_CheckPatternPredicate5,
9585 OPC_CheckComplexPat0, /*#*/1,
9586 OPC_EmitMergeInputChains1_0,
9587 OPC_EmitInteger32, 0,
9588 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9589 83, 2, 2, 3,
9590 0,
9591 0,
9592 67|128,2,
9593 OPC_MoveChild1,
9594 OPC_SwitchOpcode , 28|128,1, TARGET_VAL(ISD::ADD),
9595 OPC_RecordChild0,
9596 OPC_RecordChild1,
9597 OPC_MoveChild1,
9598 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9599 OPC_CheckPredicate, 11,
9600 OPC_MoveParent,
9601 OPC_CheckPredicate3,
9602 OPC_SwitchType , 70, 8,
9603 OPC_MoveParent,
9604 OPC_CheckPredicate, 8,
9605 OPC_CheckPredicate7,
9606 OPC_SwitchType , 13, 116,
9607 OPC_CheckPatternPredicate2,
9608 OPC_CheckComplexPat0, /*#*/1,
9609 OPC_EmitMergeInputChains1_0,
9610 OPC_EmitConvertToTarget2,
9611 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9612 116, 2, 3, 4,
9613 14, 6|128,1,
9614 OPC_CheckPatternPredicate2,
9615 OPC_CheckComplexPat0, /*#*/1,
9616 OPC_EmitMergeInputChains1_0,
9617 OPC_EmitConvertToTarget2,
9618 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9619 6|128,1, 2, 3, 4,
9620 13, 120,
9621 OPC_CheckPatternPredicate3,
9622 OPC_CheckComplexPat0, /*#*/1,
9623 OPC_EmitMergeInputChains1_0,
9624 OPC_EmitConvertToTarget2,
9625 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9626 120, 2, 3, 4,
9627 14, 8|128,1,
9628 OPC_CheckPatternPredicate3,
9629 OPC_CheckComplexPat0, /*#*/1,
9630 OPC_EmitMergeInputChains1_0,
9631 OPC_EmitConvertToTarget2,
9632 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9633 8|128,1, 2, 3, 4,
9634 0,
9635 70, 7,
9636 OPC_MoveParent,
9637 OPC_CheckPredicate, 8,
9638 OPC_CheckPredicate7,
9639 OPC_SwitchType , 13, 116,
9640 OPC_CheckPatternPredicate4,
9641 OPC_CheckComplexPat0, /*#*/1,
9642 OPC_EmitMergeInputChains1_0,
9643 OPC_EmitConvertToTarget2,
9644 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9645 116, 2, 3, 4,
9646 14, 6|128,1,
9647 OPC_CheckPatternPredicate4,
9648 OPC_CheckComplexPat0, /*#*/1,
9649 OPC_EmitMergeInputChains1_0,
9650 OPC_EmitConvertToTarget2,
9651 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9652 6|128,1, 2, 3, 4,
9653 13, 120,
9654 OPC_CheckPatternPredicate5,
9655 OPC_CheckComplexPat0, /*#*/1,
9656 OPC_EmitMergeInputChains1_0,
9657 OPC_EmitConvertToTarget2,
9658 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9659 120, 2, 3, 4,
9660 14, 8|128,1,
9661 OPC_CheckPatternPredicate5,
9662 OPC_CheckComplexPat0, /*#*/1,
9663 OPC_EmitMergeInputChains1_0,
9664 OPC_EmitConvertToTarget2,
9665 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9666 8|128,1, 2, 3, 4,
9667 0,
9668 0,
9669 28|128,1, TARGET_VAL(ISD::OR),
9670 OPC_RecordChild0,
9671 OPC_RecordChild1,
9672 OPC_MoveChild1,
9673 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9674 OPC_CheckPredicate, 11,
9675 OPC_MoveParent,
9676 OPC_CheckPredicate3,
9677 OPC_SwitchType , 70, 8,
9678 OPC_MoveParent,
9679 OPC_CheckPredicate, 8,
9680 OPC_CheckPredicate7,
9681 OPC_SwitchType , 13, 116,
9682 OPC_CheckPatternPredicate2,
9683 OPC_CheckComplexPat0, /*#*/1,
9684 OPC_EmitMergeInputChains1_0,
9685 OPC_EmitConvertToTarget2,
9686 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9687 116, 2, 3, 4,
9688 14, 6|128,1,
9689 OPC_CheckPatternPredicate2,
9690 OPC_CheckComplexPat0, /*#*/1,
9691 OPC_EmitMergeInputChains1_0,
9692 OPC_EmitConvertToTarget2,
9693 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9694 6|128,1, 2, 3, 4,
9695 13, 120,
9696 OPC_CheckPatternPredicate3,
9697 OPC_CheckComplexPat0, /*#*/1,
9698 OPC_EmitMergeInputChains1_0,
9699 OPC_EmitConvertToTarget2,
9700 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9701 120, 2, 3, 4,
9702 14, 8|128,1,
9703 OPC_CheckPatternPredicate3,
9704 OPC_CheckComplexPat0, /*#*/1,
9705 OPC_EmitMergeInputChains1_0,
9706 OPC_EmitConvertToTarget2,
9707 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9708 8|128,1, 2, 3, 4,
9709 0,
9710 70, 7,
9711 OPC_MoveParent,
9712 OPC_CheckPredicate, 8,
9713 OPC_CheckPredicate7,
9714 OPC_SwitchType , 13, 116,
9715 OPC_CheckPatternPredicate4,
9716 OPC_CheckComplexPat0, /*#*/1,
9717 OPC_EmitMergeInputChains1_0,
9718 OPC_EmitConvertToTarget2,
9719 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9720 116, 2, 3, 4,
9721 14, 6|128,1,
9722 OPC_CheckPatternPredicate4,
9723 OPC_CheckComplexPat0, /*#*/1,
9724 OPC_EmitMergeInputChains1_0,
9725 OPC_EmitConvertToTarget2,
9726 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9727 6|128,1, 2, 3, 4,
9728 13, 120,
9729 OPC_CheckPatternPredicate5,
9730 OPC_CheckComplexPat0, /*#*/1,
9731 OPC_EmitMergeInputChains1_0,
9732 OPC_EmitConvertToTarget2,
9733 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9734 120, 2, 3, 4,
9735 14, 8|128,1,
9736 OPC_CheckPatternPredicate5,
9737 OPC_CheckComplexPat0, /*#*/1,
9738 OPC_EmitMergeInputChains1_0,
9739 OPC_EmitConvertToTarget2,
9740 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9741 8|128,1, 2, 3, 4,
9742 0,
9743 0,
9744 0,
9745 34,
9746 OPC_RecordChild1,
9747 OPC_CheckPredicate, 8,
9748 OPC_CheckPredicate7,
9749 OPC_CheckType, 116,
9750 OPC_Scope, 12,
9751 OPC_CheckPatternPredicate2,
9752 OPC_CheckComplexPat2, /*#*/1,
9753 OPC_EmitMergeInputChains1_0,
9754 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9755 116, 2, 2, 3,
9756 12,
9757 OPC_CheckPatternPredicate4,
9758 OPC_CheckComplexPat2, /*#*/1,
9759 OPC_EmitMergeInputChains1_0,
9760 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9761 116, 2, 2, 3,
9762 0,
9763 48,
9764 OPC_MoveChild1,
9765 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
9766 OPC_RecordChild0,
9767 OPC_RecordChild1,
9768 OPC_SwitchType , 18, 8,
9769 OPC_MoveParent,
9770 OPC_CheckPredicate, 8,
9771 OPC_CheckPredicate7,
9772 OPC_CheckType, 116,
9773 OPC_CheckPatternPredicate2,
9774 OPC_CheckComplexPat3, /*#*/1,
9775 OPC_EmitMergeInputChains1_0,
9776 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9777 116, 2, 3, 2,
9778 18, 7,
9779 OPC_MoveParent,
9780 OPC_CheckPredicate, 8,
9781 OPC_CheckPredicate7,
9782 OPC_CheckType, 116,
9783 OPC_CheckPatternPredicate4,
9784 OPC_CheckComplexPat3, /*#*/1,
9785 OPC_EmitMergeInputChains1_0,
9786 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9787 116, 2, 3, 2,
9788 0,
9789 37,
9790 OPC_RecordChild1,
9791 OPC_CheckPredicate, 8,
9792 OPC_CheckPredicate7,
9793 OPC_CheckType, 6|128,1,
9794 OPC_Scope, 13,
9795 OPC_CheckPatternPredicate2,
9796 OPC_CheckComplexPat2, /*#*/1,
9797 OPC_EmitMergeInputChains1_0,
9798 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9799 6|128,1, 2, 2, 3,
9800 13,
9801 OPC_CheckPatternPredicate4,
9802 OPC_CheckComplexPat2, /*#*/1,
9803 OPC_EmitMergeInputChains1_0,
9804 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9805 6|128,1, 2, 2, 3,
9806 0,
9807 52,
9808 OPC_MoveChild1,
9809 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
9810 OPC_RecordChild0,
9811 OPC_RecordChild1,
9812 OPC_SwitchType , 20, 8,
9813 OPC_MoveParent,
9814 OPC_CheckPredicate, 8,
9815 OPC_CheckPredicate7,
9816 OPC_CheckType, 6|128,1,
9817 OPC_CheckPatternPredicate2,
9818 OPC_CheckComplexPat3, /*#*/1,
9819 OPC_EmitMergeInputChains1_0,
9820 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9821 6|128,1, 2, 3, 2,
9822 20, 7,
9823 OPC_MoveParent,
9824 OPC_CheckPredicate, 8,
9825 OPC_CheckPredicate7,
9826 OPC_CheckType, 6|128,1,
9827 OPC_CheckPatternPredicate4,
9828 OPC_CheckComplexPat3, /*#*/1,
9829 OPC_EmitMergeInputChains1_0,
9830 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9831 6|128,1, 2, 3, 2,
9832 0,
9833 34,
9834 OPC_RecordChild1,
9835 OPC_CheckPredicate, 8,
9836 OPC_CheckPredicate7,
9837 OPC_CheckType, 120,
9838 OPC_Scope, 12,
9839 OPC_CheckPatternPredicate3,
9840 OPC_CheckComplexPat2, /*#*/1,
9841 OPC_EmitMergeInputChains1_0,
9842 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9843 120, 2, 2, 3,
9844 12,
9845 OPC_CheckPatternPredicate5,
9846 OPC_CheckComplexPat2, /*#*/1,
9847 OPC_EmitMergeInputChains1_0,
9848 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9849 120, 2, 2, 3,
9850 0,
9851 48,
9852 OPC_MoveChild1,
9853 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
9854 OPC_RecordChild0,
9855 OPC_RecordChild1,
9856 OPC_SwitchType , 18, 8,
9857 OPC_MoveParent,
9858 OPC_CheckPredicate, 8,
9859 OPC_CheckPredicate7,
9860 OPC_CheckType, 120,
9861 OPC_CheckPatternPredicate3,
9862 OPC_CheckComplexPat3, /*#*/1,
9863 OPC_EmitMergeInputChains1_0,
9864 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9865 120, 2, 3, 2,
9866 18, 7,
9867 OPC_MoveParent,
9868 OPC_CheckPredicate, 8,
9869 OPC_CheckPredicate7,
9870 OPC_CheckType, 120,
9871 OPC_CheckPatternPredicate5,
9872 OPC_CheckComplexPat3, /*#*/1,
9873 OPC_EmitMergeInputChains1_0,
9874 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9875 120, 2, 3, 2,
9876 0,
9877 37,
9878 OPC_RecordChild1,
9879 OPC_CheckPredicate, 8,
9880 OPC_CheckPredicate7,
9881 OPC_CheckType, 8|128,1,
9882 OPC_Scope, 13,
9883 OPC_CheckPatternPredicate3,
9884 OPC_CheckComplexPat2, /*#*/1,
9885 OPC_EmitMergeInputChains1_0,
9886 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9887 8|128,1, 2, 2, 3,
9888 13,
9889 OPC_CheckPatternPredicate5,
9890 OPC_CheckComplexPat2, /*#*/1,
9891 OPC_EmitMergeInputChains1_0,
9892 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
9893 8|128,1, 2, 2, 3,
9894 0,
9895 48|128,1,
9896 OPC_MoveChild1,
9897 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
9898 OPC_RecordChild0,
9899 OPC_RecordChild1,
9900 OPC_SwitchType , 82, 8,
9901 OPC_MoveParent,
9902 OPC_CheckPredicate, 8,
9903 OPC_CheckPredicate7,
9904 OPC_SwitchType , 29, 8|128,1,
9905 OPC_CheckPatternPredicate3,
9906 OPC_Scope, 12,
9907 OPC_CheckComplexPat3, /*#*/1,
9908 OPC_EmitMergeInputChains1_0,
9909 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9910 8|128,1, 2, 3, 2,
9911 12,
9912 OPC_CheckComplexPat3, /*#*/2,
9913 OPC_EmitMergeInputChains1_0,
9914 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9915 8|128,1, 2, 3, 1,
9916 0,
9917 12, 116,
9918 OPC_CheckPatternPredicate2,
9919 OPC_CheckComplexPat3, /*#*/2,
9920 OPC_EmitMergeInputChains1_0,
9921 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9922 116, 2, 3, 1,
9923 13, 6|128,1,
9924 OPC_CheckPatternPredicate2,
9925 OPC_CheckComplexPat3, /*#*/2,
9926 OPC_EmitMergeInputChains1_0,
9927 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9928 6|128,1, 2, 3, 1,
9929 12, 120,
9930 OPC_CheckPatternPredicate3,
9931 OPC_CheckComplexPat3, /*#*/2,
9932 OPC_EmitMergeInputChains1_0,
9933 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9934 120, 2, 3, 1,
9935 0,
9936 82, 7,
9937 OPC_MoveParent,
9938 OPC_CheckPredicate, 8,
9939 OPC_CheckPredicate7,
9940 OPC_SwitchType , 29, 8|128,1,
9941 OPC_CheckPatternPredicate5,
9942 OPC_Scope, 12,
9943 OPC_CheckComplexPat3, /*#*/1,
9944 OPC_EmitMergeInputChains1_0,
9945 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9946 8|128,1, 2, 3, 2,
9947 12,
9948 OPC_CheckComplexPat3, /*#*/2,
9949 OPC_EmitMergeInputChains1_0,
9950 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9951 8|128,1, 2, 3, 1,
9952 0,
9953 12, 116,
9954 OPC_CheckPatternPredicate4,
9955 OPC_CheckComplexPat3, /*#*/2,
9956 OPC_EmitMergeInputChains1_0,
9957 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9958 116, 2, 3, 1,
9959 13, 6|128,1,
9960 OPC_CheckPatternPredicate4,
9961 OPC_CheckComplexPat3, /*#*/2,
9962 OPC_EmitMergeInputChains1_0,
9963 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDX), 0|OPFL_Chain|OPFL_MemRefs,
9964 6|128,1, 2, 3, 1,
9965 12, 120,
9966 OPC_CheckPatternPredicate5,
9967 OPC_CheckComplexPat3, /*#*/2,
9968 OPC_EmitMergeInputChains1_0,
9969 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDX), 0|OPFL_Chain|OPFL_MemRefs,
9970 120, 2, 3, 1,
9971 0,
9972 0,
9973 20|128,1,
9974 OPC_RecordChild1,
9975 OPC_CheckPredicate, 8,
9976 OPC_CheckPredicate7,
9977 OPC_SwitchType , 32, 116,
9978 OPC_Scope, 14,
9979 OPC_CheckPatternPredicate2,
9980 OPC_CheckComplexPat0, /*#*/1,
9981 OPC_EmitMergeInputChains1_0,
9982 OPC_EmitInteger64, 0,
9983 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9984 116, 2, 2, 3,
9985 14,
9986 OPC_CheckPatternPredicate4,
9987 OPC_CheckComplexPat0, /*#*/1,
9988 OPC_EmitMergeInputChains1_0,
9989 OPC_EmitInteger32, 0,
9990 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
9991 116, 2, 2, 3,
9992 0,
9993 34, 6|128,1,
9994 OPC_Scope, 15,
9995 OPC_CheckPatternPredicate2,
9996 OPC_CheckComplexPat0, /*#*/1,
9997 OPC_EmitMergeInputChains1_0,
9998 OPC_EmitInteger64, 0,
9999 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
10000 6|128,1, 2, 2, 3,
10001 15,
10002 OPC_CheckPatternPredicate4,
10003 OPC_CheckComplexPat0, /*#*/1,
10004 OPC_EmitMergeInputChains1_0,
10005 OPC_EmitInteger32, 0,
10006 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLD), 0|OPFL_Chain|OPFL_MemRefs,
10007 6|128,1, 2, 2, 3,
10008 0,
10009 32, 120,
10010 OPC_Scope, 14,
10011 OPC_CheckPatternPredicate3,
10012 OPC_CheckComplexPat0, /*#*/1,
10013 OPC_EmitMergeInputChains1_0,
10014 OPC_EmitInteger64, 0,
10015 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
10016 120, 2, 2, 3,
10017 14,
10018 OPC_CheckPatternPredicate5,
10019 OPC_CheckComplexPat0, /*#*/1,
10020 OPC_EmitMergeInputChains1_0,
10021 OPC_EmitInteger32, 0,
10022 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
10023 120, 2, 2, 3,
10024 0,
10025 34, 8|128,1,
10026 OPC_Scope, 15,
10027 OPC_CheckPatternPredicate3,
10028 OPC_CheckComplexPat0, /*#*/1,
10029 OPC_EmitMergeInputChains1_0,
10030 OPC_EmitInteger64, 0,
10031 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
10032 8|128,1, 2, 2, 3,
10033 15,
10034 OPC_CheckPatternPredicate5,
10035 OPC_CheckComplexPat0, /*#*/1,
10036 OPC_EmitMergeInputChains1_0,
10037 OPC_EmitInteger32, 0,
10038 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLD), 0|OPFL_Chain|OPFL_MemRefs,
10039 8|128,1, 2, 2, 3,
10040 0,
10041 0,
10042 0,
10043 84|128,9, TARGET_VAL(ISD::ATOMIC_LOAD),
10044 OPC_RecordMemRef,
10045 OPC_RecordNode,
10046 OPC_Scope, 117|128,4,
10047 OPC_MoveChild1,
10048 OPC_SwitchOpcode , 53|128,2, TARGET_VAL(ISD::ADD),
10049 OPC_RecordChild0,
10050 OPC_RecordChild1,
10051 OPC_MoveChild1,
10052 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10053 OPC_CheckPredicate, 11,
10054 OPC_MoveParent,
10055 OPC_CheckPredicate3,
10056 OPC_SwitchType , 14|128,1, 8,
10057 OPC_MoveParent,
10058 OPC_CheckTypeI64,
10059 OPC_Scope, 16,
10060 OPC_CheckPredicate, 28,
10061 OPC_CheckPredicate4,
10062 OPC_CheckPatternPredicate7,
10063 OPC_CheckComplexPat0, /*#*/1,
10064 OPC_EmitMergeInputChains1_0,
10065 OPC_EmitConvertToTarget2,
10066 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10067 8, 2, 3, 4,
10068 16,
10069 OPC_CheckPredicate, 29,
10070 OPC_CheckPredicate4,
10071 OPC_CheckPatternPredicate7,
10072 OPC_CheckComplexPat0, /*#*/1,
10073 OPC_EmitMergeInputChains1_0,
10074 OPC_EmitConvertToTarget2,
10075 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10076 8, 2, 3, 4,
10077 16,
10078 OPC_CheckPredicate, 28,
10079 OPC_CheckPredicate5,
10080 OPC_CheckPatternPredicate7,
10081 OPC_CheckComplexPat0, /*#*/1,
10082 OPC_EmitMergeInputChains1_0,
10083 OPC_EmitConvertToTarget2,
10084 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10085 8, 2, 3, 4,
10086 16,
10087 OPC_CheckPredicate, 29,
10088 OPC_CheckPredicate5,
10089 OPC_CheckPatternPredicate7,
10090 OPC_CheckComplexPat0, /*#*/1,
10091 OPC_EmitMergeInputChains1_0,
10092 OPC_EmitConvertToTarget2,
10093 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10094 8, 2, 3, 4,
10095 17,
10096 OPC_CheckPredicate, 35,
10097 OPC_CheckPredicate2,
10098 OPC_CheckPatternPredicate, 15,
10099 OPC_CheckComplexPat0, /*#*/1,
10100 OPC_EmitMergeInputChains1_0,
10101 OPC_EmitConvertToTarget2,
10102 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10103 8, 2, 3, 4,
10104 16,
10105 OPC_CheckPredicate, 28,
10106 OPC_CheckPredicate2,
10107 OPC_CheckPatternPredicate6,
10108 OPC_CheckComplexPat0, /*#*/1,
10109 OPC_EmitMergeInputChains1_0,
10110 OPC_EmitConvertToTarget2,
10111 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10112 8, 2, 3, 4,
10113 16,
10114 OPC_CheckPredicate, 29,
10115 OPC_CheckPredicate2,
10116 OPC_CheckPatternPredicate6,
10117 OPC_CheckComplexPat0, /*#*/1,
10118 OPC_EmitMergeInputChains1_0,
10119 OPC_EmitConvertToTarget2,
10120 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10121 8, 2, 3, 4,
10122 17,
10123 OPC_CheckPredicate, 35,
10124 OPC_CheckPredicate, 10,
10125 OPC_CheckPatternPredicate6,
10126 OPC_CheckComplexPat0, /*#*/1,
10127 OPC_EmitMergeInputChains1_0,
10128 OPC_EmitConvertToTarget2,
10129 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
10130 8, 2, 3, 4,
10131 0,
10132 21|128,1, 7,
10133 OPC_MoveParent,
10134 OPC_CheckTypeI32,
10135 OPC_Scope, 17,
10136 OPC_CheckPredicate, 28,
10137 OPC_CheckPredicate4,
10138 OPC_CheckPatternPredicate, 8,
10139 OPC_CheckComplexPat0, /*#*/1,
10140 OPC_EmitMergeInputChains1_0,
10141 OPC_EmitConvertToTarget2,
10142 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10143 7, 2, 3, 4,
10144 17,
10145 OPC_CheckPredicate, 29,
10146 OPC_CheckPredicate4,
10147 OPC_CheckPatternPredicate, 8,
10148 OPC_CheckComplexPat0, /*#*/1,
10149 OPC_EmitMergeInputChains1_0,
10150 OPC_EmitConvertToTarget2,
10151 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10152 7, 2, 3, 4,
10153 17,
10154 OPC_CheckPredicate, 28,
10155 OPC_CheckPredicate5,
10156 OPC_CheckPatternPredicate, 8,
10157 OPC_CheckComplexPat0, /*#*/1,
10158 OPC_EmitMergeInputChains1_0,
10159 OPC_EmitConvertToTarget2,
10160 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10161 7, 2, 3, 4,
10162 17,
10163 OPC_CheckPredicate, 29,
10164 OPC_CheckPredicate5,
10165 OPC_CheckPatternPredicate, 8,
10166 OPC_CheckComplexPat0, /*#*/1,
10167 OPC_EmitMergeInputChains1_0,
10168 OPC_EmitConvertToTarget2,
10169 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10170 7, 2, 3, 4,
10171 17,
10172 OPC_CheckPredicate, 35,
10173 OPC_CheckPredicate2,
10174 OPC_CheckPatternPredicate, 10,
10175 OPC_CheckComplexPat0, /*#*/1,
10176 OPC_EmitMergeInputChains1_0,
10177 OPC_EmitConvertToTarget2,
10178 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10179 7, 2, 3, 4,
10180 17,
10181 OPC_CheckPredicate, 28,
10182 OPC_CheckPredicate2,
10183 OPC_CheckPatternPredicate, 9,
10184 OPC_CheckComplexPat0, /*#*/1,
10185 OPC_EmitMergeInputChains1_0,
10186 OPC_EmitConvertToTarget2,
10187 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10188 7, 2, 3, 4,
10189 17,
10190 OPC_CheckPredicate, 29,
10191 OPC_CheckPredicate2,
10192 OPC_CheckPatternPredicate, 9,
10193 OPC_CheckComplexPat0, /*#*/1,
10194 OPC_EmitMergeInputChains1_0,
10195 OPC_EmitConvertToTarget2,
10196 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10197 7, 2, 3, 4,
10198 18,
10199 OPC_CheckPredicate, 35,
10200 OPC_CheckPredicate, 10,
10201 OPC_CheckPatternPredicate, 9,
10202 OPC_CheckComplexPat0, /*#*/1,
10203 OPC_EmitMergeInputChains1_0,
10204 OPC_EmitConvertToTarget2,
10205 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
10206 7, 2, 3, 4,
10207 0,
10208 0,
10209 53|128,2, TARGET_VAL(ISD::OR),
10210 OPC_RecordChild0,
10211 OPC_RecordChild1,
10212 OPC_MoveChild1,
10213 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10214 OPC_CheckPredicate, 11,
10215 OPC_MoveParent,
10216 OPC_CheckPredicate3,
10217 OPC_SwitchType , 14|128,1, 8,
10218 OPC_MoveParent,
10219 OPC_CheckTypeI64,
10220 OPC_Scope, 16,
10221 OPC_CheckPredicate, 28,
10222 OPC_CheckPredicate4,
10223 OPC_CheckPatternPredicate7,
10224 OPC_CheckComplexPat0, /*#*/1,
10225 OPC_EmitMergeInputChains1_0,
10226 OPC_EmitConvertToTarget2,
10227 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10228 8, 2, 3, 4,
10229 16,
10230 OPC_CheckPredicate, 29,
10231 OPC_CheckPredicate4,
10232 OPC_CheckPatternPredicate7,
10233 OPC_CheckComplexPat0, /*#*/1,
10234 OPC_EmitMergeInputChains1_0,
10235 OPC_EmitConvertToTarget2,
10236 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10237 8, 2, 3, 4,
10238 16,
10239 OPC_CheckPredicate, 28,
10240 OPC_CheckPredicate5,
10241 OPC_CheckPatternPredicate7,
10242 OPC_CheckComplexPat0, /*#*/1,
10243 OPC_EmitMergeInputChains1_0,
10244 OPC_EmitConvertToTarget2,
10245 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10246 8, 2, 3, 4,
10247 16,
10248 OPC_CheckPredicate, 29,
10249 OPC_CheckPredicate5,
10250 OPC_CheckPatternPredicate7,
10251 OPC_CheckComplexPat0, /*#*/1,
10252 OPC_EmitMergeInputChains1_0,
10253 OPC_EmitConvertToTarget2,
10254 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10255 8, 2, 3, 4,
10256 17,
10257 OPC_CheckPredicate, 35,
10258 OPC_CheckPredicate2,
10259 OPC_CheckPatternPredicate, 15,
10260 OPC_CheckComplexPat0, /*#*/1,
10261 OPC_EmitMergeInputChains1_0,
10262 OPC_EmitConvertToTarget2,
10263 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10264 8, 2, 3, 4,
10265 16,
10266 OPC_CheckPredicate, 28,
10267 OPC_CheckPredicate2,
10268 OPC_CheckPatternPredicate6,
10269 OPC_CheckComplexPat0, /*#*/1,
10270 OPC_EmitMergeInputChains1_0,
10271 OPC_EmitConvertToTarget2,
10272 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10273 8, 2, 3, 4,
10274 16,
10275 OPC_CheckPredicate, 29,
10276 OPC_CheckPredicate2,
10277 OPC_CheckPatternPredicate6,
10278 OPC_CheckComplexPat0, /*#*/1,
10279 OPC_EmitMergeInputChains1_0,
10280 OPC_EmitConvertToTarget2,
10281 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10282 8, 2, 3, 4,
10283 17,
10284 OPC_CheckPredicate, 35,
10285 OPC_CheckPredicate, 10,
10286 OPC_CheckPatternPredicate6,
10287 OPC_CheckComplexPat0, /*#*/1,
10288 OPC_EmitMergeInputChains1_0,
10289 OPC_EmitConvertToTarget2,
10290 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
10291 8, 2, 3, 4,
10292 0,
10293 21|128,1, 7,
10294 OPC_MoveParent,
10295 OPC_CheckTypeI32,
10296 OPC_Scope, 17,
10297 OPC_CheckPredicate, 28,
10298 OPC_CheckPredicate4,
10299 OPC_CheckPatternPredicate, 8,
10300 OPC_CheckComplexPat0, /*#*/1,
10301 OPC_EmitMergeInputChains1_0,
10302 OPC_EmitConvertToTarget2,
10303 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10304 7, 2, 3, 4,
10305 17,
10306 OPC_CheckPredicate, 29,
10307 OPC_CheckPredicate4,
10308 OPC_CheckPatternPredicate, 8,
10309 OPC_CheckComplexPat0, /*#*/1,
10310 OPC_EmitMergeInputChains1_0,
10311 OPC_EmitConvertToTarget2,
10312 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10313 7, 2, 3, 4,
10314 17,
10315 OPC_CheckPredicate, 28,
10316 OPC_CheckPredicate5,
10317 OPC_CheckPatternPredicate, 8,
10318 OPC_CheckComplexPat0, /*#*/1,
10319 OPC_EmitMergeInputChains1_0,
10320 OPC_EmitConvertToTarget2,
10321 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10322 7, 2, 3, 4,
10323 17,
10324 OPC_CheckPredicate, 29,
10325 OPC_CheckPredicate5,
10326 OPC_CheckPatternPredicate, 8,
10327 OPC_CheckComplexPat0, /*#*/1,
10328 OPC_EmitMergeInputChains1_0,
10329 OPC_EmitConvertToTarget2,
10330 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10331 7, 2, 3, 4,
10332 17,
10333 OPC_CheckPredicate, 35,
10334 OPC_CheckPredicate2,
10335 OPC_CheckPatternPredicate, 10,
10336 OPC_CheckComplexPat0, /*#*/1,
10337 OPC_EmitMergeInputChains1_0,
10338 OPC_EmitConvertToTarget2,
10339 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10340 7, 2, 3, 4,
10341 17,
10342 OPC_CheckPredicate, 28,
10343 OPC_CheckPredicate2,
10344 OPC_CheckPatternPredicate, 9,
10345 OPC_CheckComplexPat0, /*#*/1,
10346 OPC_EmitMergeInputChains1_0,
10347 OPC_EmitConvertToTarget2,
10348 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10349 7, 2, 3, 4,
10350 17,
10351 OPC_CheckPredicate, 29,
10352 OPC_CheckPredicate2,
10353 OPC_CheckPatternPredicate, 9,
10354 OPC_CheckComplexPat0, /*#*/1,
10355 OPC_EmitMergeInputChains1_0,
10356 OPC_EmitConvertToTarget2,
10357 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10358 7, 2, 3, 4,
10359 18,
10360 OPC_CheckPredicate, 35,
10361 OPC_CheckPredicate, 10,
10362 OPC_CheckPatternPredicate, 9,
10363 OPC_CheckComplexPat0, /*#*/1,
10364 OPC_EmitMergeInputChains1_0,
10365 OPC_EmitConvertToTarget2,
10366 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
10367 7, 2, 3, 4,
10368 0,
10369 0,
10370 0,
10371 87|128,4,
10372 OPC_RecordChild1,
10373 OPC_Scope, 34,
10374 OPC_CheckPredicate, 28,
10375 OPC_CheckPredicate4,
10376 OPC_SwitchType , 12, 8,
10377 OPC_CheckPatternPredicate7,
10378 OPC_CheckComplexPat2, /*#*/1,
10379 OPC_EmitMergeInputChains1_0,
10380 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10381 8, 2, 2, 3,
10382 13, 7,
10383 OPC_CheckPatternPredicate, 8,
10384 OPC_CheckComplexPat2, /*#*/1,
10385 OPC_EmitMergeInputChains1_0,
10386 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10387 7, 2, 2, 3,
10388 0,
10389 34,
10390 OPC_CheckPredicate, 29,
10391 OPC_CheckPredicate4,
10392 OPC_SwitchType , 12, 8,
10393 OPC_CheckPatternPredicate7,
10394 OPC_CheckComplexPat2, /*#*/1,
10395 OPC_EmitMergeInputChains1_0,
10396 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10397 8, 2, 2, 3,
10398 13, 7,
10399 OPC_CheckPatternPredicate, 8,
10400 OPC_CheckComplexPat2, /*#*/1,
10401 OPC_EmitMergeInputChains1_0,
10402 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10403 7, 2, 2, 3,
10404 0,
10405 34,
10406 OPC_CheckPredicate, 28,
10407 OPC_CheckPredicate5,
10408 OPC_SwitchType , 12, 8,
10409 OPC_CheckPatternPredicate7,
10410 OPC_CheckComplexPat2, /*#*/1,
10411 OPC_EmitMergeInputChains1_0,
10412 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10413 8, 2, 2, 3,
10414 13, 7,
10415 OPC_CheckPatternPredicate, 8,
10416 OPC_CheckComplexPat2, /*#*/1,
10417 OPC_EmitMergeInputChains1_0,
10418 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10419 7, 2, 2, 3,
10420 0,
10421 34,
10422 OPC_CheckPredicate, 29,
10423 OPC_CheckPredicate5,
10424 OPC_SwitchType , 12, 8,
10425 OPC_CheckPatternPredicate7,
10426 OPC_CheckComplexPat2, /*#*/1,
10427 OPC_EmitMergeInputChains1_0,
10428 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10429 8, 2, 2, 3,
10430 13, 7,
10431 OPC_CheckPatternPredicate, 8,
10432 OPC_CheckComplexPat2, /*#*/1,
10433 OPC_EmitMergeInputChains1_0,
10434 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10435 7, 2, 2, 3,
10436 0,
10437 35,
10438 OPC_CheckPredicate, 35,
10439 OPC_CheckPredicate2,
10440 OPC_SwitchType , 13, 8,
10441 OPC_CheckPatternPredicate, 15,
10442 OPC_CheckComplexPat2, /*#*/1,
10443 OPC_EmitMergeInputChains1_0,
10444 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10445 8, 2, 2, 3,
10446 13, 7,
10447 OPC_CheckPatternPredicate, 10,
10448 OPC_CheckComplexPat2, /*#*/1,
10449 OPC_EmitMergeInputChains1_0,
10450 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10451 7, 2, 2, 3,
10452 0,
10453 34,
10454 OPC_CheckPredicate, 28,
10455 OPC_CheckPredicate2,
10456 OPC_SwitchType , 12, 8,
10457 OPC_CheckPatternPredicate6,
10458 OPC_CheckComplexPat2, /*#*/1,
10459 OPC_EmitMergeInputChains1_0,
10460 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10461 8, 2, 2, 3,
10462 13, 7,
10463 OPC_CheckPatternPredicate, 9,
10464 OPC_CheckComplexPat2, /*#*/1,
10465 OPC_EmitMergeInputChains1_0,
10466 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10467 7, 2, 2, 3,
10468 0,
10469 34,
10470 OPC_CheckPredicate, 29,
10471 OPC_CheckPredicate2,
10472 OPC_SwitchType , 12, 8,
10473 OPC_CheckPatternPredicate6,
10474 OPC_CheckComplexPat2, /*#*/1,
10475 OPC_EmitMergeInputChains1_0,
10476 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10477 8, 2, 2, 3,
10478 13, 7,
10479 OPC_CheckPatternPredicate, 9,
10480 OPC_CheckComplexPat2, /*#*/1,
10481 OPC_EmitMergeInputChains1_0,
10482 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10483 7, 2, 2, 3,
10484 0,
10485 35,
10486 OPC_CheckPredicate, 35,
10487 OPC_CheckPredicate, 10,
10488 OPC_SwitchType , 12, 8,
10489 OPC_CheckPatternPredicate6,
10490 OPC_CheckComplexPat2, /*#*/1,
10491 OPC_EmitMergeInputChains1_0,
10492 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
10493 8, 2, 2, 3,
10494 13, 7,
10495 OPC_CheckPatternPredicate, 9,
10496 OPC_CheckComplexPat2, /*#*/1,
10497 OPC_EmitMergeInputChains1_0,
10498 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
10499 7, 2, 2, 3,
10500 0,
10501 38,
10502 OPC_CheckPredicate, 28,
10503 OPC_CheckPredicate4,
10504 OPC_SwitchType , 14, 8,
10505 OPC_CheckPatternPredicate7,
10506 OPC_CheckComplexPat0, /*#*/1,
10507 OPC_EmitMergeInputChains1_0,
10508 OPC_EmitInteger64, 0,
10509 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10510 8, 2, 2, 3,
10511 15, 7,
10512 OPC_CheckPatternPredicate, 8,
10513 OPC_CheckComplexPat0, /*#*/1,
10514 OPC_EmitMergeInputChains1_0,
10515 OPC_EmitInteger32, 0,
10516 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10517 7, 2, 2, 3,
10518 0,
10519 38,
10520 OPC_CheckPredicate, 29,
10521 OPC_CheckPredicate4,
10522 OPC_SwitchType , 14, 8,
10523 OPC_CheckPatternPredicate7,
10524 OPC_CheckComplexPat0, /*#*/1,
10525 OPC_EmitMergeInputChains1_0,
10526 OPC_EmitInteger64, 0,
10527 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10528 8, 2, 2, 3,
10529 15, 7,
10530 OPC_CheckPatternPredicate, 8,
10531 OPC_CheckComplexPat0, /*#*/1,
10532 OPC_EmitMergeInputChains1_0,
10533 OPC_EmitInteger32, 0,
10534 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_B), 0|OPFL_Chain|OPFL_MemRefs,
10535 7, 2, 2, 3,
10536 0,
10537 38,
10538 OPC_CheckPredicate, 28,
10539 OPC_CheckPredicate5,
10540 OPC_SwitchType , 14, 8,
10541 OPC_CheckPatternPredicate7,
10542 OPC_CheckComplexPat0, /*#*/1,
10543 OPC_EmitMergeInputChains1_0,
10544 OPC_EmitInteger64, 0,
10545 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10546 8, 2, 2, 3,
10547 15, 7,
10548 OPC_CheckPatternPredicate, 8,
10549 OPC_CheckComplexPat0, /*#*/1,
10550 OPC_EmitMergeInputChains1_0,
10551 OPC_EmitInteger32, 0,
10552 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10553 7, 2, 2, 3,
10554 0,
10555 38,
10556 OPC_CheckPredicate, 29,
10557 OPC_CheckPredicate5,
10558 OPC_SwitchType , 14, 8,
10559 OPC_CheckPatternPredicate7,
10560 OPC_CheckComplexPat0, /*#*/1,
10561 OPC_EmitMergeInputChains1_0,
10562 OPC_EmitInteger64, 0,
10563 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10564 8, 2, 2, 3,
10565 15, 7,
10566 OPC_CheckPatternPredicate, 8,
10567 OPC_CheckComplexPat0, /*#*/1,
10568 OPC_EmitMergeInputChains1_0,
10569 OPC_EmitInteger32, 0,
10570 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_H), 0|OPFL_Chain|OPFL_MemRefs,
10571 7, 2, 2, 3,
10572 0,
10573 39,
10574 OPC_CheckPredicate, 35,
10575 OPC_CheckPredicate2,
10576 OPC_SwitchType , 15, 8,
10577 OPC_CheckPatternPredicate, 15,
10578 OPC_CheckComplexPat0, /*#*/1,
10579 OPC_EmitMergeInputChains1_0,
10580 OPC_EmitInteger64, 0,
10581 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10582 8, 2, 2, 3,
10583 15, 7,
10584 OPC_CheckPatternPredicate, 10,
10585 OPC_CheckComplexPat0, /*#*/1,
10586 OPC_EmitMergeInputChains1_0,
10587 OPC_EmitInteger32, 0,
10588 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10589 7, 2, 2, 3,
10590 0,
10591 38,
10592 OPC_CheckPredicate, 28,
10593 OPC_CheckPredicate2,
10594 OPC_SwitchType , 14, 8,
10595 OPC_CheckPatternPredicate6,
10596 OPC_CheckComplexPat0, /*#*/1,
10597 OPC_EmitMergeInputChains1_0,
10598 OPC_EmitInteger64, 0,
10599 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10600 8, 2, 2, 3,
10601 15, 7,
10602 OPC_CheckPatternPredicate, 9,
10603 OPC_CheckComplexPat0, /*#*/1,
10604 OPC_EmitMergeInputChains1_0,
10605 OPC_EmitInteger32, 0,
10606 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10607 7, 2, 2, 3,
10608 0,
10609 38,
10610 OPC_CheckPredicate, 29,
10611 OPC_CheckPredicate2,
10612 OPC_SwitchType , 14, 8,
10613 OPC_CheckPatternPredicate6,
10614 OPC_CheckComplexPat0, /*#*/1,
10615 OPC_EmitMergeInputChains1_0,
10616 OPC_EmitInteger64, 0,
10617 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10618 8, 2, 2, 3,
10619 15, 7,
10620 OPC_CheckPatternPredicate, 9,
10621 OPC_CheckComplexPat0, /*#*/1,
10622 OPC_EmitMergeInputChains1_0,
10623 OPC_EmitInteger32, 0,
10624 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_W), 0|OPFL_Chain|OPFL_MemRefs,
10625 7, 2, 2, 3,
10626 0,
10627 39,
10628 OPC_CheckPredicate, 35,
10629 OPC_CheckPredicate, 10,
10630 OPC_SwitchType , 14, 8,
10631 OPC_CheckPatternPredicate6,
10632 OPC_CheckComplexPat0, /*#*/1,
10633 OPC_EmitMergeInputChains1_0,
10634 OPC_EmitInteger64, 0,
10635 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
10636 8, 2, 2, 3,
10637 15, 7,
10638 OPC_CheckPatternPredicate, 9,
10639 OPC_CheckComplexPat0, /*#*/1,
10640 OPC_EmitMergeInputChains1_0,
10641 OPC_EmitInteger32, 0,
10642 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::LD_D), 0|OPFL_Chain|OPFL_MemRefs,
10643 7, 2, 2, 3,
10644 0,
10645 0,
10646 0,
10647 119|128,4, TARGET_VAL(ISD::ATOMIC_STORE),
10648 OPC_RecordMemRef,
10649 OPC_RecordNode,
10650 OPC_RecordChild1,
10651 OPC_Scope, 84|128,2,
10652 OPC_CheckChild1TypeI64,
10653 OPC_Scope, 39|128,1,
10654 OPC_MoveChild2,
10655 OPC_SwitchOpcode , 79, TARGET_VAL(ISD::ADD),
10656 OPC_RecordChild0,
10657 OPC_RecordChild1,
10658 OPC_MoveChild1,
10659 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10660 OPC_CheckPredicate, 11,
10661 OPC_MoveParent,
10662 OPC_CheckPredicate3,
10663 OPC_CheckTypeI64,
10664 OPC_MoveParent,
10665 OPC_Scope, 14,
10666 OPC_CheckPredicate4,
10667 OPC_CheckPatternPredicate7,
10668 OPC_CheckComplexPat0, /*#*/2,
10669 OPC_EmitMergeInputChains1_0,
10670 OPC_EmitConvertToTarget3,
10671 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
10672 3, 1, 4, 5,
10673 14,
10674 OPC_CheckPredicate5,
10675 OPC_CheckPatternPredicate7,
10676 OPC_CheckComplexPat0, /*#*/2,
10677 OPC_EmitMergeInputChains1_0,
10678 OPC_EmitConvertToTarget3,
10679 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
10680 3, 1, 4, 5,
10681 16,
10682 OPC_CheckPredicate2,
10683 OPC_CheckPredicate, 36,
10684 OPC_CheckPatternPredicate6,
10685 OPC_CheckComplexPat0, /*#*/2,
10686 OPC_EmitMergeInputChains1_0,
10687 OPC_EmitConvertToTarget3,
10688 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
10689 3, 1, 4, 5,
10690 17,
10691 OPC_CheckPredicate, 10,
10692 OPC_CheckPredicate, 36,
10693 OPC_CheckPatternPredicate6,
10694 OPC_CheckComplexPat0, /*#*/2,
10695 OPC_EmitMergeInputChains1_0,
10696 OPC_EmitConvertToTarget3,
10697 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_D), 0|OPFL_Chain|OPFL_MemRefs,
10698 3, 1, 4, 5,
10699 0,
10700 79, TARGET_VAL(ISD::OR),
10701 OPC_RecordChild0,
10702 OPC_RecordChild1,
10703 OPC_MoveChild1,
10704 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10705 OPC_CheckPredicate, 11,
10706 OPC_MoveParent,
10707 OPC_CheckPredicate3,
10708 OPC_CheckTypeI64,
10709 OPC_MoveParent,
10710 OPC_Scope, 14,
10711 OPC_CheckPredicate4,
10712 OPC_CheckPatternPredicate7,
10713 OPC_CheckComplexPat0, /*#*/2,
10714 OPC_EmitMergeInputChains1_0,
10715 OPC_EmitConvertToTarget3,
10716 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
10717 3, 1, 4, 5,
10718 14,
10719 OPC_CheckPredicate5,
10720 OPC_CheckPatternPredicate7,
10721 OPC_CheckComplexPat0, /*#*/2,
10722 OPC_EmitMergeInputChains1_0,
10723 OPC_EmitConvertToTarget3,
10724 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
10725 3, 1, 4, 5,
10726 16,
10727 OPC_CheckPredicate2,
10728 OPC_CheckPredicate, 36,
10729 OPC_CheckPatternPredicate6,
10730 OPC_CheckComplexPat0, /*#*/2,
10731 OPC_EmitMergeInputChains1_0,
10732 OPC_EmitConvertToTarget3,
10733 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
10734 3, 1, 4, 5,
10735 17,
10736 OPC_CheckPredicate, 10,
10737 OPC_CheckPredicate, 36,
10738 OPC_CheckPatternPredicate6,
10739 OPC_CheckComplexPat0, /*#*/2,
10740 OPC_EmitMergeInputChains1_0,
10741 OPC_EmitConvertToTarget3,
10742 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_D), 0|OPFL_Chain|OPFL_MemRefs,
10743 3, 1, 4, 5,
10744 0,
10745 0,
10746 38|128,1,
10747 OPC_RecordChild2,
10748 OPC_Scope, 13,
10749 OPC_CheckPredicate4,
10750 OPC_CheckPatternPredicate7,
10751 OPC_CheckComplexPat2, /*#*/2,
10752 OPC_EmitMergeInputChains1_0,
10753 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
10754 3, 1, 3, 4,
10755 13,
10756 OPC_CheckPredicate5,
10757 OPC_CheckPatternPredicate7,
10758 OPC_CheckComplexPat2, /*#*/2,
10759 OPC_EmitMergeInputChains1_0,
10760 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
10761 3, 1, 3, 4,
10762 15,
10763 OPC_CheckPredicate2,
10764 OPC_CheckPredicate, 36,
10765 OPC_CheckPatternPredicate6,
10766 OPC_CheckComplexPat2, /*#*/2,
10767 OPC_EmitMergeInputChains1_0,
10768 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
10769 3, 1, 3, 4,
10770 16,
10771 OPC_CheckPredicate, 10,
10772 OPC_CheckPredicate, 36,
10773 OPC_CheckPatternPredicate6,
10774 OPC_CheckComplexPat2, /*#*/2,
10775 OPC_EmitMergeInputChains1_0,
10776 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_D), 0|OPFL_Chain|OPFL_MemRefs,
10777 3, 1, 3, 4,
10778 15,
10779 OPC_CheckPredicate4,
10780 OPC_CheckPatternPredicate7,
10781 OPC_CheckComplexPat0, /*#*/2,
10782 OPC_EmitMergeInputChains1_0,
10783 OPC_EmitInteger64, 0,
10784 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
10785 3, 1, 3, 4,
10786 15,
10787 OPC_CheckPredicate5,
10788 OPC_CheckPatternPredicate7,
10789 OPC_CheckComplexPat0, /*#*/2,
10790 OPC_EmitMergeInputChains1_0,
10791 OPC_EmitInteger64, 0,
10792 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
10793 3, 1, 3, 4,
10794 17,
10795 OPC_CheckPredicate2,
10796 OPC_CheckPredicate, 36,
10797 OPC_CheckPatternPredicate6,
10798 OPC_CheckComplexPat0, /*#*/2,
10799 OPC_EmitMergeInputChains1_0,
10800 OPC_EmitInteger64, 0,
10801 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
10802 3, 1, 3, 4,
10803 18,
10804 OPC_CheckPredicate, 10,
10805 OPC_CheckPredicate, 36,
10806 OPC_CheckPatternPredicate6,
10807 OPC_CheckComplexPat0, /*#*/2,
10808 OPC_EmitMergeInputChains1_0,
10809 OPC_EmitInteger64, 0,
10810 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_D), 0|OPFL_Chain|OPFL_MemRefs,
10811 3, 1, 3, 4,
10812 32,
10813 OPC_CheckChild2TypeI64,
10814 OPC_Scope, 13,
10815 OPC_CheckPredicate2,
10816 OPC_CheckPredicate, 46,
10817 OPC_CheckPatternPredicate7,
10818 OPC_EmitMergeInputChains1_0,
10819 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::PseudoAtomicStoreW), 0|OPFL_Chain|OPFL_MemRefs,
10820 8, 2, 1, 2,
10821 14,
10822 OPC_CheckPredicate, 10,
10823 OPC_CheckPredicate, 46,
10824 OPC_CheckPatternPredicate6,
10825 OPC_EmitMergeInputChains1_0,
10826 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::PseudoAtomicStoreD), 0|OPFL_Chain|OPFL_MemRefs,
10827 8, 2, 1, 2,
10828 0,
10829 0,
10830 0,
10831 26|128,2,
10832 OPC_CheckChild1TypeI32,
10833 OPC_Scope, 9|128,1,
10834 OPC_MoveChild2,
10835 OPC_SwitchOpcode , 64, TARGET_VAL(ISD::ADD),
10836 OPC_RecordChild0,
10837 OPC_RecordChild1,
10838 OPC_MoveChild1,
10839 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10840 OPC_CheckPredicate, 11,
10841 OPC_MoveParent,
10842 OPC_CheckPredicate3,
10843 OPC_CheckTypeI32,
10844 OPC_MoveParent,
10845 OPC_Scope, 15,
10846 OPC_CheckPredicate4,
10847 OPC_CheckPatternPredicate, 8,
10848 OPC_CheckComplexPat0, /*#*/2,
10849 OPC_EmitMergeInputChains1_0,
10850 OPC_EmitConvertToTarget3,
10851 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
10852 3, 1, 4, 5,
10853 15,
10854 OPC_CheckPredicate5,
10855 OPC_CheckPatternPredicate, 8,
10856 OPC_CheckComplexPat0, /*#*/2,
10857 OPC_EmitMergeInputChains1_0,
10858 OPC_EmitConvertToTarget3,
10859 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
10860 3, 1, 4, 5,
10861 17,
10862 OPC_CheckPredicate2,
10863 OPC_CheckPredicate, 36,
10864 OPC_CheckPatternPredicate, 10,
10865 OPC_CheckComplexPat0, /*#*/2,
10866 OPC_EmitMergeInputChains1_0,
10867 OPC_EmitConvertToTarget3,
10868 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
10869 3, 1, 4, 5,
10870 0,
10871 64, TARGET_VAL(ISD::OR),
10872 OPC_RecordChild0,
10873 OPC_RecordChild1,
10874 OPC_MoveChild1,
10875 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10876 OPC_CheckPredicate, 11,
10877 OPC_MoveParent,
10878 OPC_CheckPredicate3,
10879 OPC_CheckTypeI32,
10880 OPC_MoveParent,
10881 OPC_Scope, 15,
10882 OPC_CheckPredicate4,
10883 OPC_CheckPatternPredicate, 8,
10884 OPC_CheckComplexPat0, /*#*/2,
10885 OPC_EmitMergeInputChains1_0,
10886 OPC_EmitConvertToTarget3,
10887 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
10888 3, 1, 4, 5,
10889 15,
10890 OPC_CheckPredicate5,
10891 OPC_CheckPatternPredicate, 8,
10892 OPC_CheckComplexPat0, /*#*/2,
10893 OPC_EmitMergeInputChains1_0,
10894 OPC_EmitConvertToTarget3,
10895 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
10896 3, 1, 4, 5,
10897 17,
10898 OPC_CheckPredicate2,
10899 OPC_CheckPredicate, 36,
10900 OPC_CheckPatternPredicate, 10,
10901 OPC_CheckComplexPat0, /*#*/2,
10902 OPC_EmitMergeInputChains1_0,
10903 OPC_EmitConvertToTarget3,
10904 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
10905 3, 1, 4, 5,
10906 0,
10907 0,
10908 10|128,1,
10909 OPC_RecordChild2,
10910 OPC_Scope, 14,
10911 OPC_CheckPredicate4,
10912 OPC_CheckPatternPredicate, 8,
10913 OPC_CheckComplexPat2, /*#*/2,
10914 OPC_EmitMergeInputChains1_0,
10915 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
10916 3, 1, 3, 4,
10917 14,
10918 OPC_CheckPredicate5,
10919 OPC_CheckPatternPredicate, 8,
10920 OPC_CheckComplexPat2, /*#*/2,
10921 OPC_EmitMergeInputChains1_0,
10922 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
10923 3, 1, 3, 4,
10924 16,
10925 OPC_CheckPredicate2,
10926 OPC_CheckPredicate, 36,
10927 OPC_CheckPatternPredicate, 10,
10928 OPC_CheckComplexPat2, /*#*/2,
10929 OPC_EmitMergeInputChains1_0,
10930 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
10931 3, 1, 3, 4,
10932 16,
10933 OPC_CheckPredicate4,
10934 OPC_CheckPatternPredicate, 8,
10935 OPC_CheckComplexPat0, /*#*/2,
10936 OPC_EmitMergeInputChains1_0,
10937 OPC_EmitInteger32, 0,
10938 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_B), 0|OPFL_Chain|OPFL_MemRefs,
10939 3, 1, 3, 4,
10940 16,
10941 OPC_CheckPredicate5,
10942 OPC_CheckPatternPredicate, 8,
10943 OPC_CheckComplexPat0, /*#*/2,
10944 OPC_EmitMergeInputChains1_0,
10945 OPC_EmitInteger32, 0,
10946 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_H), 0|OPFL_Chain|OPFL_MemRefs,
10947 3, 1, 3, 4,
10948 36,
10949 OPC_CheckPredicate2,
10950 OPC_Scope, 17,
10951 OPC_CheckPredicate, 36,
10952 OPC_CheckPatternPredicate, 10,
10953 OPC_CheckComplexPat0, /*#*/2,
10954 OPC_EmitMergeInputChains1_0,
10955 OPC_EmitInteger32, 0,
10956 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ST_W), 0|OPFL_Chain|OPFL_MemRefs,
10957 3, 1, 3, 4,
10958 14,
10959 OPC_CheckChild2TypeI32,
10960 OPC_CheckPredicate, 46,
10961 OPC_CheckPatternPredicate, 8,
10962 OPC_EmitMergeInputChains1_0,
10963 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::PseudoAtomicStoreW), 0|OPFL_Chain|OPFL_MemRefs,
10964 7, 2, 1, 2,
10965 0,
10966 16,
10967 OPC_CheckChild2TypeI32,
10968 OPC_CheckPredicate, 10,
10969 OPC_CheckPredicate, 46,
10970 OPC_CheckPatternPredicate, 9,
10971 OPC_EmitMergeInputChains1_0,
10972 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::PseudoAtomicStoreD), 0|OPFL_Chain|OPFL_MemRefs,
10973 7, 2, 1, 2,
10974 0,
10975 0,
10976 0,
10977 42|128,9, TARGET_VAL(ISD::ADD),
10978 OPC_Scope, 118,
10979 OPC_RecordChild0,
10980 OPC_Scope, 38,
10981 OPC_RecordChild1,
10982 OPC_MoveChild1,
10983 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10984 OPC_CheckPredicate, 11,
10985 OPC_MoveParent,
10986 OPC_CheckPredicate3,
10987 OPC_SwitchType , 12, 7,
10988 OPC_CheckPatternPredicate, 10,
10989 OPC_CheckComplexPat0, /*#*/0,
10990 OPC_EmitConvertToTarget1,
10991 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_W),
10992 7, 2, 2, 3,
10993 11, 8,
10994 OPC_CheckPatternPredicate6,
10995 OPC_CheckComplexPat0, /*#*/0,
10996 OPC_EmitConvertToTarget1,
10997 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_D),
10998 8, 2, 2, 3,
10999 0,
11000 75,
11001 OPC_MoveChild1,
11002 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
11003 OPC_RecordChild0,
11004 OPC_RecordChild1,
11005 OPC_MoveChild1,
11006 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
11007 OPC_CheckPredicate, 43,
11008 OPC_SwitchType , 28, 8,
11009 OPC_MoveParent,
11010 OPC_MoveParent,
11011 OPC_CheckTypeI64,
11012 OPC_Scope, 11,
11013 OPC_CheckPatternPredicate, 20,
11014 OPC_EmitConvertToTarget2,
11015 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
11016 8, 3, 1, 0, 3,
11017 10,
11018 OPC_CheckPatternPredicate6,
11019 OPC_EmitConvertToTarget2,
11020 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
11021 8, 3, 1, 0, 3,
11022 0,
11023 29, 7,
11024 OPC_MoveParent,
11025 OPC_MoveParent,
11026 OPC_CheckTypeI32,
11027 OPC_Scope, 11,
11028 OPC_CheckPatternPredicate, 16,
11029 OPC_EmitConvertToTarget2,
11030 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
11031 7, 3, 1, 0, 3,
11032 11,
11033 OPC_CheckPatternPredicate, 9,
11034 OPC_EmitConvertToTarget2,
11035 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
11036 7, 3, 1, 0, 3,
11037 0,
11038 0,
11039 0,
11040 77,
11041 OPC_MoveChild0,
11042 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
11043 OPC_RecordChild0,
11044 OPC_RecordChild1,
11045 OPC_MoveChild1,
11046 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
11047 OPC_CheckPredicate, 43,
11048 OPC_SwitchType , 29, 8,
11049 OPC_MoveParent,
11050 OPC_MoveParent,
11051 OPC_RecordChild1,
11052 OPC_CheckTypeI64,
11053 OPC_Scope, 11,
11054 OPC_CheckPatternPredicate, 20,
11055 OPC_EmitConvertToTarget1,
11056 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
11057 8, 3, 0, 2, 3,
11058 10,
11059 OPC_CheckPatternPredicate6,
11060 OPC_EmitConvertToTarget1,
11061 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
11062 8, 3, 0, 2, 3,
11063 0,
11064 30, 7,
11065 OPC_MoveParent,
11066 OPC_MoveParent,
11067 OPC_RecordChild1,
11068 OPC_CheckTypeI32,
11069 OPC_Scope, 11,
11070 OPC_CheckPatternPredicate, 16,
11071 OPC_EmitConvertToTarget1,
11072 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_W),
11073 7, 3, 0, 2, 3,
11074 11,
11075 OPC_CheckPatternPredicate, 9,
11076 OPC_EmitConvertToTarget1,
11077 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ALSL_D),
11078 7, 3, 0, 2, 3,
11079 0,
11080 0,
11081 41|128,6,
11082 OPC_RecordChild0,
11083 OPC_Scope, 66|128,5,
11084 OPC_RecordChild1,
11085 OPC_Scope, 6|128,2,
11086 OPC_MoveChild1,
11087 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
11088 OPC_Scope, 56,
11089 OPC_CheckPredicate, 11,
11090 OPC_MoveParent,
11091 OPC_SwitchType , 23, 8,
11092 OPC_Scope, 10,
11093 OPC_CheckPatternPredicate, 15,
11094 OPC_EmitConvertToTarget1,
11095 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_W),
11096 8, 2, 0, 2,
11097 9,
11098 OPC_CheckPatternPredicate6,
11099 OPC_EmitConvertToTarget1,
11100 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_D),
11101 8, 2, 0, 2,
11102 0,
11103 24, 7,
11104 OPC_Scope, 10,
11105 OPC_CheckPatternPredicate, 10,
11106 OPC_EmitConvertToTarget1,
11107 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_W),
11108 7, 2, 0, 2,
11109 10,
11110 OPC_CheckPatternPredicate, 9,
11111 OPC_EmitConvertToTarget1,
11112 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_D),
11113 7, 2, 0, 2,
11114 0,
11115 0,
11116 32,
11117 OPC_CheckPredicate, 65,
11118 OPC_MoveParent,
11119 OPC_SwitchType , 11, 8,
11120 OPC_CheckPatternPredicate6,
11121 OPC_EmitNodeXForm, 6, 1,
11122 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDU16I_D),
11123 8, 2, 0, 2,
11124 12, 7,
11125 OPC_CheckPatternPredicate, 9,
11126 OPC_EmitNodeXForm, 6, 1,
11127 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDU16I_D),
11128 7, 2, 0, 2,
11129 0,
11130 52,
11131 OPC_CheckPredicate, 58,
11132 OPC_MoveParent,
11133 OPC_SwitchType , 21, 8,
11134 OPC_CheckPatternPredicate6,
11135 OPC_EmitNodeXForm, 2, 1,
11136 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDU16I_D),
11137 8, 2, 0, 2,
11138 OPC_EmitNodeXForm, 3, 1,
11139 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_D),
11140 8, 2, 3, 4,
11141 22, 7,
11142 OPC_CheckPatternPredicate, 9,
11143 OPC_EmitNodeXForm, 2, 1,
11144 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDU16I_D),
11145 7, 2, 0, 2,
11146 OPC_EmitNodeXForm, 3, 1,
11147 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_D),
11148 7, 2, 3, 4,
11149 0,
11150 112,
11151 OPC_CheckPredicate, 59,
11152 OPC_MoveParent,
11153 OPC_SwitchType , 51, 8,
11154 OPC_Scope, 24,
11155 OPC_CheckPatternPredicate, 15,
11156 OPC_EmitConvertToTarget1,
11157 OPC_EmitNodeXForm, 4, 2,
11158 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_W),
11159 8, 2, 0, 3,
11160 OPC_EmitConvertToTarget1,
11161 OPC_EmitNodeXForm, 5, 5,
11162 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_W),
11163 8, 2, 4, 6,
11164 23,
11165 OPC_CheckPatternPredicate6,
11166 OPC_EmitConvertToTarget1,
11167 OPC_EmitNodeXForm, 4, 2,
11168 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_D),
11169 8, 2, 0, 3,
11170 OPC_EmitConvertToTarget1,
11171 OPC_EmitNodeXForm, 5, 5,
11172 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_D),
11173 8, 2, 4, 6,
11174 0,
11175 52, 7,
11176 OPC_Scope, 24,
11177 OPC_CheckPatternPredicate, 10,
11178 OPC_EmitConvertToTarget1,
11179 OPC_EmitNodeXForm, 4, 2,
11180 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_W),
11181 7, 2, 0, 3,
11182 OPC_EmitConvertToTarget1,
11183 OPC_EmitNodeXForm, 5, 5,
11184 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_W),
11185 7, 2, 4, 6,
11186 24,
11187 OPC_CheckPatternPredicate, 9,
11188 OPC_EmitConvertToTarget1,
11189 OPC_EmitNodeXForm, 4, 2,
11190 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_D),
11191 7, 2, 0, 3,
11192 OPC_EmitConvertToTarget1,
11193 OPC_EmitNodeXForm, 5, 5,
11194 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADDI_D),
11195 7, 2, 4, 6,
11196 0,
11197 0,
11198 0,
11199 22,
11200 OPC_CheckTypeI64,
11201 OPC_Scope, 9,
11202 OPC_CheckPatternPredicate, 15,
11203 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADD_W),
11204 8, 2, 0, 1,
11205 8,
11206 OPC_CheckPatternPredicate6,
11207 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADD_D),
11208 8, 2, 0, 1,
11209 0,
11210 23,
11211 OPC_CheckTypeI32,
11212 OPC_Scope, 9,
11213 OPC_CheckPatternPredicate, 10,
11214 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADD_W),
11215 7, 2, 0, 1,
11216 9,
11217 OPC_CheckPatternPredicate, 9,
11218 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ADD_D),
11219 7, 2, 0, 1,
11220 0,
11221 48,
11222 OPC_CheckType, 40,
11223 OPC_Scope, 10,
11224 OPC_CheckPatternPredicate2,
11225 OPC_CheckComplexPat1, /*#*/1,
11226 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_BU),
11227 40, 2, 0, 2,
11228 10,
11229 OPC_CheckPatternPredicate4,
11230 OPC_CheckComplexPat1, /*#*/1,
11231 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_BU),
11232 40, 2, 0, 2,
11233 10,
11234 OPC_CheckPatternPredicate2,
11235 OPC_CheckComplexPat1, /*#*/0,
11236 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_BU),
11237 40, 2, 1, 2,
11238 10,
11239 OPC_CheckPatternPredicate4,
11240 OPC_CheckComplexPat1, /*#*/0,
11241 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_BU),
11242 40, 2, 1, 2,
11243 0,
11244 48,
11245 OPC_CheckType, 51,
11246 OPC_Scope, 10,
11247 OPC_CheckPatternPredicate2,
11248 OPC_CheckComplexPat1, /*#*/1,
11249 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_HU),
11250 51, 2, 0, 2,
11251 10,
11252 OPC_CheckPatternPredicate4,
11253 OPC_CheckComplexPat1, /*#*/1,
11254 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_HU),
11255 51, 2, 0, 2,
11256 10,
11257 OPC_CheckPatternPredicate2,
11258 OPC_CheckComplexPat1, /*#*/0,
11259 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_HU),
11260 51, 2, 1, 2,
11261 10,
11262 OPC_CheckPatternPredicate4,
11263 OPC_CheckComplexPat1, /*#*/0,
11264 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_HU),
11265 51, 2, 1, 2,
11266 0,
11267 48,
11268 OPC_CheckType, 62,
11269 OPC_Scope, 10,
11270 OPC_CheckPatternPredicate2,
11271 OPC_CheckComplexPat1, /*#*/1,
11272 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_WU),
11273 62, 2, 0, 2,
11274 10,
11275 OPC_CheckPatternPredicate4,
11276 OPC_CheckComplexPat1, /*#*/1,
11277 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_WU),
11278 62, 2, 0, 2,
11279 10,
11280 OPC_CheckPatternPredicate2,
11281 OPC_CheckComplexPat1, /*#*/0,
11282 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_WU),
11283 62, 2, 1, 2,
11284 10,
11285 OPC_CheckPatternPredicate4,
11286 OPC_CheckComplexPat1, /*#*/0,
11287 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_WU),
11288 62, 2, 1, 2,
11289 0,
11290 48,
11291 OPC_CheckType, 81,
11292 OPC_Scope, 10,
11293 OPC_CheckPatternPredicate2,
11294 OPC_CheckComplexPat1, /*#*/1,
11295 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_DU),
11296 81, 2, 0, 2,
11297 10,
11298 OPC_CheckPatternPredicate4,
11299 OPC_CheckComplexPat1, /*#*/1,
11300 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_DU),
11301 81, 2, 0, 2,
11302 10,
11303 OPC_CheckPatternPredicate2,
11304 OPC_CheckComplexPat1, /*#*/0,
11305 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_DU),
11306 81, 2, 1, 2,
11307 10,
11308 OPC_CheckPatternPredicate4,
11309 OPC_CheckComplexPat1, /*#*/0,
11310 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDI_DU),
11311 81, 2, 1, 2,
11312 0,
11313 48,
11314 OPC_CheckType, 41,
11315 OPC_Scope, 10,
11316 OPC_CheckPatternPredicate3,
11317 OPC_CheckComplexPat1, /*#*/1,
11318 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_BU),
11319 41, 2, 0, 2,
11320 10,
11321 OPC_CheckPatternPredicate5,
11322 OPC_CheckComplexPat1, /*#*/1,
11323 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_BU),
11324 41, 2, 0, 2,
11325 10,
11326 OPC_CheckPatternPredicate3,
11327 OPC_CheckComplexPat1, /*#*/0,
11328 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_BU),
11329 41, 2, 1, 2,
11330 10,
11331 OPC_CheckPatternPredicate5,
11332 OPC_CheckComplexPat1, /*#*/0,
11333 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_BU),
11334 41, 2, 1, 2,
11335 0,
11336 48,
11337 OPC_CheckType, 52,
11338 OPC_Scope, 10,
11339 OPC_CheckPatternPredicate3,
11340 OPC_CheckComplexPat1, /*#*/1,
11341 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_HU),
11342 52, 2, 0, 2,
11343 10,
11344 OPC_CheckPatternPredicate5,
11345 OPC_CheckComplexPat1, /*#*/1,
11346 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_HU),
11347 52, 2, 0, 2,
11348 10,
11349 OPC_CheckPatternPredicate3,
11350 OPC_CheckComplexPat1, /*#*/0,
11351 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_HU),
11352 52, 2, 1, 2,
11353 10,
11354 OPC_CheckPatternPredicate5,
11355 OPC_CheckComplexPat1, /*#*/0,
11356 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_HU),
11357 52, 2, 1, 2,
11358 0,
11359 48,
11360 OPC_CheckType, 66,
11361 OPC_Scope, 10,
11362 OPC_CheckPatternPredicate3,
11363 OPC_CheckComplexPat1, /*#*/1,
11364 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_WU),
11365 66, 2, 0, 2,
11366 10,
11367 OPC_CheckPatternPredicate5,
11368 OPC_CheckComplexPat1, /*#*/1,
11369 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_WU),
11370 66, 2, 0, 2,
11371 10,
11372 OPC_CheckPatternPredicate3,
11373 OPC_CheckComplexPat1, /*#*/0,
11374 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_WU),
11375 66, 2, 1, 2,
11376 10,
11377 OPC_CheckPatternPredicate5,
11378 OPC_CheckComplexPat1, /*#*/0,
11379 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_WU),
11380 66, 2, 1, 2,
11381 0,
11382 48,
11383 OPC_CheckType, 83,
11384 OPC_Scope, 10,
11385 OPC_CheckPatternPredicate3,
11386 OPC_CheckComplexPat1, /*#*/1,
11387 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_DU),
11388 83, 2, 0, 2,
11389 10,
11390 OPC_CheckPatternPredicate5,
11391 OPC_CheckComplexPat1, /*#*/1,
11392 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_DU),
11393 83, 2, 0, 2,
11394 10,
11395 OPC_CheckPatternPredicate3,
11396 OPC_CheckComplexPat1, /*#*/0,
11397 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_DU),
11398 83, 2, 1, 2,
11399 10,
11400 OPC_CheckPatternPredicate5,
11401 OPC_CheckComplexPat1, /*#*/0,
11402 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDI_DU),
11403 83, 2, 1, 2,
11404 0,
11405 0,
11406 97,
11407 OPC_MoveChild1,
11408 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
11409 OPC_RecordChild0,
11410 OPC_RecordChild1,
11411 OPC_MoveParent,
11412 OPC_SwitchType , 9, 40,
11413 OPC_CheckPatternPredicate1,
11414 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADD_B),
11415 40, 3, 0, 1, 2,
11416 9, 51,
11417 OPC_CheckPatternPredicate1,
11418 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADD_H),
11419 51, 3, 0, 1, 2,
11420 9, 62,
11421 OPC_CheckPatternPredicate1,
11422 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADD_W),
11423 62, 3, 0, 1, 2,
11424 9, 81,
11425 OPC_CheckPatternPredicate1,
11426 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADD_D),
11427 81, 3, 0, 1, 2,
11428 9, 41,
11429 OPC_CheckPatternPredicate0,
11430 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADD_B),
11431 41, 3, 0, 1, 2,
11432 9, 52,
11433 OPC_CheckPatternPredicate0,
11434 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADD_H),
11435 52, 3, 0, 1, 2,
11436 9, 66,
11437 OPC_CheckPatternPredicate0,
11438 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADD_W),
11439 66, 3, 0, 1, 2,
11440 9, 83,
11441 OPC_CheckPatternPredicate0,
11442 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADD_D),
11443 83, 3, 0, 1, 2,
11444 0,
11445 0,
11446 98,
11447 OPC_MoveChild0,
11448 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
11449 OPC_RecordChild0,
11450 OPC_RecordChild1,
11451 OPC_MoveParent,
11452 OPC_RecordChild1,
11453 OPC_SwitchType , 9, 40,
11454 OPC_CheckPatternPredicate1,
11455 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADD_B),
11456 40, 3, 2, 0, 1,
11457 9, 51,
11458 OPC_CheckPatternPredicate1,
11459 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADD_H),
11460 51, 3, 2, 0, 1,
11461 9, 62,
11462 OPC_CheckPatternPredicate1,
11463 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADD_W),
11464 62, 3, 2, 0, 1,
11465 9, 81,
11466 OPC_CheckPatternPredicate1,
11467 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADD_D),
11468 81, 3, 2, 0, 1,
11469 9, 41,
11470 OPC_CheckPatternPredicate0,
11471 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADD_B),
11472 41, 3, 2, 0, 1,
11473 9, 52,
11474 OPC_CheckPatternPredicate0,
11475 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADD_H),
11476 52, 3, 2, 0, 1,
11477 9, 66,
11478 OPC_CheckPatternPredicate0,
11479 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADD_W),
11480 66, 3, 2, 0, 1,
11481 9, 83,
11482 OPC_CheckPatternPredicate0,
11483 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADD_D),
11484 83, 3, 2, 0, 1,
11485 0,
11486 84,
11487 OPC_RecordChild0,
11488 OPC_RecordChild1,
11489 OPC_SwitchType , 8, 40,
11490 OPC_CheckPatternPredicate1,
11491 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADD_B),
11492 40, 2, 0, 1,
11493 8, 51,
11494 OPC_CheckPatternPredicate1,
11495 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADD_H),
11496 51, 2, 0, 1,
11497 8, 62,
11498 OPC_CheckPatternPredicate1,
11499 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADD_W),
11500 62, 2, 0, 1,
11501 8, 81,
11502 OPC_CheckPatternPredicate1,
11503 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADD_D),
11504 81, 2, 0, 1,
11505 8, 41,
11506 OPC_CheckPatternPredicate0,
11507 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADD_B),
11508 41, 2, 0, 1,
11509 8, 52,
11510 OPC_CheckPatternPredicate0,
11511 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADD_H),
11512 52, 2, 0, 1,
11513 8, 66,
11514 OPC_CheckPatternPredicate0,
11515 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADD_W),
11516 66, 2, 0, 1,
11517 8, 83,
11518 OPC_CheckPatternPredicate0,
11519 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADD_D),
11520 83, 2, 0, 1,
11521 0,
11522 0,
11523 111|128,5, TARGET_VAL(ISD::INTRINSIC_VOID),
11524 OPC_RecordNode,
11525 OPC_Scope, 25,
11526 OPC_CheckChild1Integer, 124|128,94,
11527 OPC_RecordChild2,
11528 OPC_MoveChild2,
11529 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11530 OPC_MoveParent,
11531 OPC_RecordChild3,
11532 OPC_RecordChild4,
11533 OPC_MoveChild4,
11534 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11535 OPC_MoveParent,
11536 OPC_CheckPatternPredicate7,
11537 OPC_EmitMergeInputChains1_0,
11538 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::CACOP),
11539 3, 1, 2, 3,
11540 65,
11541 OPC_CheckChild1Integer, 102|128,117,
11542 OPC_RecordChild2,
11543 OPC_RecordChild3,
11544 OPC_Scope, 28,
11545 OPC_CheckChild3TypeI64,
11546 OPC_RecordChild4,
11547 OPC_MoveChild4,
11548 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11549 OPC_MoveSibling5,
11550 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11551 OPC_RecordNode,
11552 OPC_MoveParent,
11553 OPC_CheckPatternPredicate2,
11554 OPC_EmitMergeInputChains1_0,
11555 OPC_EmitNodeXForm, 7, 3,
11556 OPC_EmitNodeXForm, 7, 4,
11557 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::VSTELM_B),
11558 4, 1, 2, 5, 6,
11559 28,
11560 OPC_CheckChild3TypeI32,
11561 OPC_RecordChild4,
11562 OPC_MoveChild4,
11563 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11564 OPC_MoveSibling5,
11565 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11566 OPC_RecordNode,
11567 OPC_MoveParent,
11568 OPC_CheckPatternPredicate4,
11569 OPC_EmitMergeInputChains1_0,
11570 OPC_EmitNodeXForm, 7, 3,
11571 OPC_EmitNodeXForm, 7, 4,
11572 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::VSTELM_B),
11573 4, 1, 2, 5, 6,
11574 0,
11575 65,
11576 OPC_CheckChild1Integer, 106|128,117,
11577 OPC_RecordChild2,
11578 OPC_RecordChild3,
11579 OPC_Scope, 28,
11580 OPC_CheckChild3TypeI64,
11581 OPC_RecordChild4,
11582 OPC_MoveChild4,
11583 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11584 OPC_MoveSibling5,
11585 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11586 OPC_RecordNode,
11587 OPC_MoveParent,
11588 OPC_CheckPatternPredicate2,
11589 OPC_EmitMergeInputChains1_0,
11590 OPC_EmitNodeXForm, 7, 3,
11591 OPC_EmitNodeXForm, 7, 4,
11592 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::VSTELM_H),
11593 4, 1, 2, 5, 6,
11594 28,
11595 OPC_CheckChild3TypeI32,
11596 OPC_RecordChild4,
11597 OPC_MoveChild4,
11598 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11599 OPC_MoveSibling5,
11600 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11601 OPC_RecordNode,
11602 OPC_MoveParent,
11603 OPC_CheckPatternPredicate4,
11604 OPC_EmitMergeInputChains1_0,
11605 OPC_EmitNodeXForm, 7, 3,
11606 OPC_EmitNodeXForm, 7, 4,
11607 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::VSTELM_H),
11608 4, 1, 2, 5, 6,
11609 0,
11610 65,
11611 OPC_CheckChild1Integer, 108|128,117,
11612 OPC_RecordChild2,
11613 OPC_RecordChild3,
11614 OPC_Scope, 28,
11615 OPC_CheckChild3TypeI64,
11616 OPC_RecordChild4,
11617 OPC_MoveChild4,
11618 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11619 OPC_MoveSibling5,
11620 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11621 OPC_RecordNode,
11622 OPC_MoveParent,
11623 OPC_CheckPatternPredicate2,
11624 OPC_EmitMergeInputChains1_0,
11625 OPC_EmitNodeXForm, 7, 3,
11626 OPC_EmitNodeXForm, 7, 4,
11627 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::VSTELM_W),
11628 4, 1, 2, 5, 6,
11629 28,
11630 OPC_CheckChild3TypeI32,
11631 OPC_RecordChild4,
11632 OPC_MoveChild4,
11633 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11634 OPC_MoveSibling5,
11635 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11636 OPC_RecordNode,
11637 OPC_MoveParent,
11638 OPC_CheckPatternPredicate4,
11639 OPC_EmitMergeInputChains1_0,
11640 OPC_EmitNodeXForm, 7, 3,
11641 OPC_EmitNodeXForm, 7, 4,
11642 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::VSTELM_W),
11643 4, 1, 2, 5, 6,
11644 0,
11645 65,
11646 OPC_CheckChild1Integer, 104|128,117,
11647 OPC_RecordChild2,
11648 OPC_RecordChild3,
11649 OPC_Scope, 28,
11650 OPC_CheckChild3TypeI64,
11651 OPC_RecordChild4,
11652 OPC_MoveChild4,
11653 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11654 OPC_MoveSibling5,
11655 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11656 OPC_RecordNode,
11657 OPC_MoveParent,
11658 OPC_CheckPatternPredicate2,
11659 OPC_EmitMergeInputChains1_0,
11660 OPC_EmitNodeXForm, 7, 3,
11661 OPC_EmitNodeXForm, 7, 4,
11662 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::VSTELM_D),
11663 4, 1, 2, 5, 6,
11664 28,
11665 OPC_CheckChild3TypeI32,
11666 OPC_RecordChild4,
11667 OPC_MoveChild4,
11668 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11669 OPC_MoveSibling5,
11670 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11671 OPC_RecordNode,
11672 OPC_MoveParent,
11673 OPC_CheckPatternPredicate4,
11674 OPC_EmitMergeInputChains1_0,
11675 OPC_EmitNodeXForm, 7, 3,
11676 OPC_EmitNodeXForm, 7, 4,
11677 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::VSTELM_D),
11678 4, 1, 2, 5, 6,
11679 0,
11680 65,
11681 OPC_CheckChild1Integer, 66|128,106,
11682 OPC_RecordChild2,
11683 OPC_RecordChild3,
11684 OPC_Scope, 28,
11685 OPC_CheckChild3TypeI64,
11686 OPC_RecordChild4,
11687 OPC_MoveChild4,
11688 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11689 OPC_MoveSibling5,
11690 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11691 OPC_RecordNode,
11692 OPC_MoveParent,
11693 OPC_CheckPatternPredicate3,
11694 OPC_EmitMergeInputChains1_0,
11695 OPC_EmitNodeXForm, 7, 3,
11696 OPC_EmitNodeXForm, 7, 4,
11697 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::XVSTELM_B),
11698 4, 1, 2, 5, 6,
11699 28,
11700 OPC_CheckChild3TypeI32,
11701 OPC_RecordChild4,
11702 OPC_MoveChild4,
11703 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11704 OPC_MoveSibling5,
11705 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11706 OPC_RecordNode,
11707 OPC_MoveParent,
11708 OPC_CheckPatternPredicate5,
11709 OPC_EmitMergeInputChains1_0,
11710 OPC_EmitNodeXForm, 7, 3,
11711 OPC_EmitNodeXForm, 7, 4,
11712 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::XVSTELM_B),
11713 4, 1, 2, 5, 6,
11714 0,
11715 65,
11716 OPC_CheckChild1Integer, 70|128,106,
11717 OPC_RecordChild2,
11718 OPC_RecordChild3,
11719 OPC_Scope, 28,
11720 OPC_CheckChild3TypeI64,
11721 OPC_RecordChild4,
11722 OPC_MoveChild4,
11723 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11724 OPC_MoveSibling5,
11725 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11726 OPC_RecordNode,
11727 OPC_MoveParent,
11728 OPC_CheckPatternPredicate3,
11729 OPC_EmitMergeInputChains1_0,
11730 OPC_EmitNodeXForm, 7, 3,
11731 OPC_EmitNodeXForm, 7, 4,
11732 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::XVSTELM_H),
11733 4, 1, 2, 5, 6,
11734 28,
11735 OPC_CheckChild3TypeI32,
11736 OPC_RecordChild4,
11737 OPC_MoveChild4,
11738 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11739 OPC_MoveSibling5,
11740 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11741 OPC_RecordNode,
11742 OPC_MoveParent,
11743 OPC_CheckPatternPredicate5,
11744 OPC_EmitMergeInputChains1_0,
11745 OPC_EmitNodeXForm, 7, 3,
11746 OPC_EmitNodeXForm, 7, 4,
11747 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::XVSTELM_H),
11748 4, 1, 2, 5, 6,
11749 0,
11750 65,
11751 OPC_CheckChild1Integer, 72|128,106,
11752 OPC_RecordChild2,
11753 OPC_RecordChild3,
11754 OPC_Scope, 28,
11755 OPC_CheckChild3TypeI64,
11756 OPC_RecordChild4,
11757 OPC_MoveChild4,
11758 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11759 OPC_MoveSibling5,
11760 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11761 OPC_RecordNode,
11762 OPC_MoveParent,
11763 OPC_CheckPatternPredicate3,
11764 OPC_EmitMergeInputChains1_0,
11765 OPC_EmitNodeXForm, 7, 3,
11766 OPC_EmitNodeXForm, 7, 4,
11767 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::XVSTELM_W),
11768 4, 1, 2, 5, 6,
11769 28,
11770 OPC_CheckChild3TypeI32,
11771 OPC_RecordChild4,
11772 OPC_MoveChild4,
11773 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11774 OPC_MoveSibling5,
11775 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11776 OPC_RecordNode,
11777 OPC_MoveParent,
11778 OPC_CheckPatternPredicate5,
11779 OPC_EmitMergeInputChains1_0,
11780 OPC_EmitNodeXForm, 7, 3,
11781 OPC_EmitNodeXForm, 7, 4,
11782 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::XVSTELM_W),
11783 4, 1, 2, 5, 6,
11784 0,
11785 65,
11786 OPC_CheckChild1Integer, 68|128,106,
11787 OPC_RecordChild2,
11788 OPC_RecordChild3,
11789 OPC_Scope, 28,
11790 OPC_CheckChild3TypeI64,
11791 OPC_RecordChild4,
11792 OPC_MoveChild4,
11793 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11794 OPC_MoveSibling5,
11795 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11796 OPC_RecordNode,
11797 OPC_MoveParent,
11798 OPC_CheckPatternPredicate3,
11799 OPC_EmitMergeInputChains1_0,
11800 OPC_EmitNodeXForm, 7, 3,
11801 OPC_EmitNodeXForm, 7, 4,
11802 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::XVSTELM_D),
11803 4, 1, 2, 5, 6,
11804 28,
11805 OPC_CheckChild3TypeI32,
11806 OPC_RecordChild4,
11807 OPC_MoveChild4,
11808 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11809 OPC_MoveSibling5,
11810 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11811 OPC_RecordNode,
11812 OPC_MoveParent,
11813 OPC_CheckPatternPredicate5,
11814 OPC_EmitMergeInputChains1_0,
11815 OPC_EmitNodeXForm, 7, 3,
11816 OPC_EmitNodeXForm, 7, 4,
11817 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::XVSTELM_D),
11818 4, 1, 2, 5, 6,
11819 0,
11820 18,
11821 OPC_CheckChild1Integer, 4|128,107,
11822 OPC_RecordChild2,
11823 OPC_RecordChild3,
11824 OPC_MoveChild3,
11825 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11826 OPC_MoveParent,
11827 OPC_CheckPatternPredicate6,
11828 OPC_EmitMergeInputChains1_0,
11829 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::LDPTE),
11830 2, 1, 2,
11831 47,
11832 OPC_CheckChild1Integer, 100|128,117,
11833 OPC_RecordChild2,
11834 OPC_RecordChild3,
11835 OPC_Scope, 19,
11836 OPC_CheckChild3TypeI64,
11837 OPC_RecordChild4,
11838 OPC_MoveChild4,
11839 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11840 OPC_MoveParent,
11841 OPC_CheckPatternPredicate2,
11842 OPC_EmitMergeInputChains1_0,
11843 OPC_EmitNodeXForm, 7, 3,
11844 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::VST),
11845 3, 1, 2, 4,
11846 19,
11847 OPC_CheckChild3TypeI32,
11848 OPC_RecordChild4,
11849 OPC_MoveChild4,
11850 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11851 OPC_MoveParent,
11852 OPC_CheckPatternPredicate4,
11853 OPC_EmitMergeInputChains1_0,
11854 OPC_EmitNodeXForm, 7, 3,
11855 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::VST),
11856 3, 1, 2, 4,
11857 0,
11858 47,
11859 OPC_CheckChild1Integer, 64|128,106,
11860 OPC_RecordChild2,
11861 OPC_RecordChild3,
11862 OPC_Scope, 19,
11863 OPC_CheckChild3TypeI64,
11864 OPC_RecordChild4,
11865 OPC_MoveChild4,
11866 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11867 OPC_MoveParent,
11868 OPC_CheckPatternPredicate3,
11869 OPC_EmitMergeInputChains1_0,
11870 OPC_EmitNodeXForm, 7, 3,
11871 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::XVST),
11872 3, 1, 2, 4,
11873 19,
11874 OPC_CheckChild3TypeI32,
11875 OPC_RecordChild4,
11876 OPC_MoveChild4,
11877 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
11878 OPC_MoveParent,
11879 OPC_CheckPatternPredicate5,
11880 OPC_EmitMergeInputChains1_0,
11881 OPC_EmitNodeXForm, 7, 3,
11882 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::XVST),
11883 3, 1, 2, 4,
11884 0,
11885 16,
11886 OPC_CheckChild1Integer, 126|128,94,
11887 OPC_RecordChild2,
11888 OPC_RecordChild3,
11889 OPC_RecordChild4,
11890 OPC_CheckPatternPredicate, 8,
11891 OPC_EmitMergeInputChains1_0,
11892 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::CACOP),
11893 3, 1, 2, 3,
11894 13,
11895 OPC_CheckChild1Integer, 120|128,94,
11896 OPC_RecordChild2,
11897 OPC_RecordChild3,
11898 OPC_CheckPatternPredicate6,
11899 OPC_EmitMergeInputChains1_0,
11900 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::ASRTLE_D),
11901 2, 1, 2,
11902 13,
11903 OPC_CheckChild1Integer, 118|128,94,
11904 OPC_RecordChild2,
11905 OPC_RecordChild3,
11906 OPC_CheckPatternPredicate6,
11907 OPC_EmitMergeInputChains1_0,
11908 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::ASRTGT_D),
11909 2, 1, 2,
11910 16,
11911 OPC_CheckChild1Integer, 110|128,117,
11912 OPC_RecordChild2,
11913 OPC_RecordChild3,
11914 OPC_CheckChild3TypeI64,
11915 OPC_RecordChild4,
11916 OPC_CheckPatternPredicate2,
11917 OPC_EmitMergeInputChains1_0,
11918 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::VSTX),
11919 3, 1, 2, 3,
11920 16,
11921 OPC_CheckChild1Integer, 74|128,106,
11922 OPC_RecordChild2,
11923 OPC_RecordChild3,
11924 OPC_CheckChild3TypeI64,
11925 OPC_RecordChild4,
11926 OPC_CheckPatternPredicate3,
11927 OPC_EmitMergeInputChains1_0,
11928 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::XVSTX),
11929 3, 1, 2, 3,
11930 0,
11931 113|128,23, TARGET_VAL(ISD::BRCOND),
11932 OPC_RecordNode,
11933 OPC_Scope, 39|128,23,
11934 OPC_MoveChild1,
11935 OPC_SwitchOpcode , 101|128,9, TARGET_VAL(ISD::XOR),
11936 OPC_MoveChild0,
11937 OPC_CheckOpcode, TARGET_VAL(ISD::SETCC),
11938 OPC_RecordChild0,
11939 OPC_Scope, 109|128,4,
11940 OPC_CheckChild0Type, 12,
11941 OPC_RecordChild1,
11942 OPC_Scope, 55,
11943 OPC_CheckChild2CondCode, ISD::SETOEQ,
11944 OPC_MoveParent,
11945 OPC_CheckChild1Integer, 3,
11946 OPC_SwitchType , 22, 8,
11947 OPC_MoveSibling2,
11948 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
11949 OPC_RecordNode,
11950 OPC_MoveParent,
11951 OPC_CheckPatternPredicate, 11,
11952 OPC_EmitMergeInputChains1_0,
11953 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_S),
11954 8, 2, 1, 2,
11955 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
11956 2, 4, 3,
11957 22, 7,
11958 OPC_MoveSibling2,
11959 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
11960 OPC_RecordNode,
11961 OPC_MoveParent,
11962 OPC_CheckPatternPredicate, 12,
11963 OPC_EmitMergeInputChains1_0,
11964 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_S),
11965 7, 2, 1, 2,
11966 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
11967 2, 4, 3,
11968 0,
11969 55,
11970 OPC_CheckChild2CondCode, ISD::SETOLT,
11971 OPC_MoveParent,
11972 OPC_CheckChild1Integer, 3,
11973 OPC_SwitchType , 22, 8,
11974 OPC_MoveSibling2,
11975 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
11976 OPC_RecordNode,
11977 OPC_MoveParent,
11978 OPC_CheckPatternPredicate, 11,
11979 OPC_EmitMergeInputChains1_0,
11980 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
11981 8, 2, 1, 2,
11982 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
11983 2, 4, 3,
11984 22, 7,
11985 OPC_MoveSibling2,
11986 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
11987 OPC_RecordNode,
11988 OPC_MoveParent,
11989 OPC_CheckPatternPredicate, 12,
11990 OPC_EmitMergeInputChains1_0,
11991 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
11992 7, 2, 1, 2,
11993 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
11994 2, 4, 3,
11995 0,
11996 55,
11997 OPC_CheckChild2CondCode, ISD::SETOLE,
11998 OPC_MoveParent,
11999 OPC_CheckChild1Integer, 3,
12000 OPC_SwitchType , 22, 8,
12001 OPC_MoveSibling2,
12002 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12003 OPC_RecordNode,
12004 OPC_MoveParent,
12005 OPC_CheckPatternPredicate, 11,
12006 OPC_EmitMergeInputChains1_0,
12007 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_S),
12008 8, 2, 1, 2,
12009 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12010 2, 4, 3,
12011 22, 7,
12012 OPC_MoveSibling2,
12013 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12014 OPC_RecordNode,
12015 OPC_MoveParent,
12016 OPC_CheckPatternPredicate, 12,
12017 OPC_EmitMergeInputChains1_0,
12018 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_S),
12019 7, 2, 1, 2,
12020 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12021 2, 4, 3,
12022 0,
12023 55,
12024 OPC_CheckChild2CondCode, ISD::SETONE,
12025 OPC_MoveParent,
12026 OPC_CheckChild1Integer, 3,
12027 OPC_SwitchType , 22, 8,
12028 OPC_MoveSibling2,
12029 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12030 OPC_RecordNode,
12031 OPC_MoveParent,
12032 OPC_CheckPatternPredicate, 11,
12033 OPC_EmitMergeInputChains1_0,
12034 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_S),
12035 8, 2, 1, 2,
12036 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12037 2, 4, 3,
12038 22, 7,
12039 OPC_MoveSibling2,
12040 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12041 OPC_RecordNode,
12042 OPC_MoveParent,
12043 OPC_CheckPatternPredicate, 12,
12044 OPC_EmitMergeInputChains1_0,
12045 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_S),
12046 7, 2, 1, 2,
12047 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12048 2, 4, 3,
12049 0,
12050 55,
12051 OPC_CheckChild2CondCode, ISD::SETO,
12052 OPC_MoveParent,
12053 OPC_CheckChild1Integer, 3,
12054 OPC_SwitchType , 22, 8,
12055 OPC_MoveSibling2,
12056 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12057 OPC_RecordNode,
12058 OPC_MoveParent,
12059 OPC_CheckPatternPredicate, 11,
12060 OPC_EmitMergeInputChains1_0,
12061 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_S),
12062 8, 2, 1, 2,
12063 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12064 2, 4, 3,
12065 22, 7,
12066 OPC_MoveSibling2,
12067 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12068 OPC_RecordNode,
12069 OPC_MoveParent,
12070 OPC_CheckPatternPredicate, 12,
12071 OPC_EmitMergeInputChains1_0,
12072 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_S),
12073 7, 2, 1, 2,
12074 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12075 2, 4, 3,
12076 0,
12077 55,
12078 OPC_CheckChild2CondCode, ISD::SETUEQ,
12079 OPC_MoveParent,
12080 OPC_CheckChild1Integer, 3,
12081 OPC_SwitchType , 22, 8,
12082 OPC_MoveSibling2,
12083 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12084 OPC_RecordNode,
12085 OPC_MoveParent,
12086 OPC_CheckPatternPredicate, 11,
12087 OPC_EmitMergeInputChains1_0,
12088 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_S),
12089 8, 2, 1, 2,
12090 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12091 2, 4, 3,
12092 22, 7,
12093 OPC_MoveSibling2,
12094 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12095 OPC_RecordNode,
12096 OPC_MoveParent,
12097 OPC_CheckPatternPredicate, 12,
12098 OPC_EmitMergeInputChains1_0,
12099 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_S),
12100 7, 2, 1, 2,
12101 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12102 2, 4, 3,
12103 0,
12104 55,
12105 OPC_CheckChild2CondCode, ISD::SETULT,
12106 OPC_MoveParent,
12107 OPC_CheckChild1Integer, 3,
12108 OPC_SwitchType , 22, 8,
12109 OPC_MoveSibling2,
12110 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12111 OPC_RecordNode,
12112 OPC_MoveParent,
12113 OPC_CheckPatternPredicate, 11,
12114 OPC_EmitMergeInputChains1_0,
12115 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_S),
12116 8, 2, 1, 2,
12117 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12118 2, 4, 3,
12119 22, 7,
12120 OPC_MoveSibling2,
12121 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12122 OPC_RecordNode,
12123 OPC_MoveParent,
12124 OPC_CheckPatternPredicate, 12,
12125 OPC_EmitMergeInputChains1_0,
12126 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_S),
12127 7, 2, 1, 2,
12128 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12129 2, 4, 3,
12130 0,
12131 55,
12132 OPC_CheckChild2CondCode, ISD::SETULE,
12133 OPC_MoveParent,
12134 OPC_CheckChild1Integer, 3,
12135 OPC_SwitchType , 22, 8,
12136 OPC_MoveSibling2,
12137 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12138 OPC_RecordNode,
12139 OPC_MoveParent,
12140 OPC_CheckPatternPredicate, 11,
12141 OPC_EmitMergeInputChains1_0,
12142 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_S),
12143 8, 2, 1, 2,
12144 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12145 2, 4, 3,
12146 22, 7,
12147 OPC_MoveSibling2,
12148 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12149 OPC_RecordNode,
12150 OPC_MoveParent,
12151 OPC_CheckPatternPredicate, 12,
12152 OPC_EmitMergeInputChains1_0,
12153 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_S),
12154 7, 2, 1, 2,
12155 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12156 2, 4, 3,
12157 0,
12158 55,
12159 OPC_CheckChild2CondCode, ISD::SETUNE,
12160 OPC_MoveParent,
12161 OPC_CheckChild1Integer, 3,
12162 OPC_SwitchType , 22, 8,
12163 OPC_MoveSibling2,
12164 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12165 OPC_RecordNode,
12166 OPC_MoveParent,
12167 OPC_CheckPatternPredicate, 11,
12168 OPC_EmitMergeInputChains1_0,
12169 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_S),
12170 8, 2, 1, 2,
12171 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12172 2, 4, 3,
12173 22, 7,
12174 OPC_MoveSibling2,
12175 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12176 OPC_RecordNode,
12177 OPC_MoveParent,
12178 OPC_CheckPatternPredicate, 12,
12179 OPC_EmitMergeInputChains1_0,
12180 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_S),
12181 7, 2, 1, 2,
12182 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12183 2, 4, 3,
12184 0,
12185 55,
12186 OPC_CheckChild2CondCode, ISD::SETUO,
12187 OPC_MoveParent,
12188 OPC_CheckChild1Integer, 3,
12189 OPC_SwitchType , 22, 8,
12190 OPC_MoveSibling2,
12191 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12192 OPC_RecordNode,
12193 OPC_MoveParent,
12194 OPC_CheckPatternPredicate, 11,
12195 OPC_EmitMergeInputChains1_0,
12196 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_S),
12197 8, 2, 1, 2,
12198 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12199 2, 4, 3,
12200 22, 7,
12201 OPC_MoveSibling2,
12202 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12203 OPC_RecordNode,
12204 OPC_MoveParent,
12205 OPC_CheckPatternPredicate, 12,
12206 OPC_EmitMergeInputChains1_0,
12207 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_S),
12208 7, 2, 1, 2,
12209 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12210 2, 4, 3,
12211 0,
12212 55,
12213 OPC_CheckChild2CondCode, ISD::SETLT,
12214 OPC_MoveParent,
12215 OPC_CheckChild1Integer, 3,
12216 OPC_SwitchType , 22, 8,
12217 OPC_MoveSibling2,
12218 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12219 OPC_RecordNode,
12220 OPC_MoveParent,
12221 OPC_CheckPatternPredicate, 11,
12222 OPC_EmitMergeInputChains1_0,
12223 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
12224 8, 2, 1, 2,
12225 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12226 2, 4, 3,
12227 22, 7,
12228 OPC_MoveSibling2,
12229 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12230 OPC_RecordNode,
12231 OPC_MoveParent,
12232 OPC_CheckPatternPredicate, 12,
12233 OPC_EmitMergeInputChains1_0,
12234 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
12235 7, 2, 1, 2,
12236 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12237 2, 4, 3,
12238 0,
12239 0,
12240 109|128,4,
12241 OPC_CheckChild0Type, 13,
12242 OPC_RecordChild1,
12243 OPC_Scope, 55,
12244 OPC_CheckChild2CondCode, ISD::SETOEQ,
12245 OPC_MoveParent,
12246 OPC_CheckChild1Integer, 3,
12247 OPC_SwitchType , 22, 8,
12248 OPC_MoveSibling2,
12249 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12250 OPC_RecordNode,
12251 OPC_MoveParent,
12252 OPC_CheckPatternPredicate, 13,
12253 OPC_EmitMergeInputChains1_0,
12254 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_D),
12255 8, 2, 1, 2,
12256 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12257 2, 4, 3,
12258 22, 7,
12259 OPC_MoveSibling2,
12260 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12261 OPC_RecordNode,
12262 OPC_MoveParent,
12263 OPC_CheckPatternPredicate, 14,
12264 OPC_EmitMergeInputChains1_0,
12265 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_D),
12266 7, 2, 1, 2,
12267 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12268 2, 4, 3,
12269 0,
12270 55,
12271 OPC_CheckChild2CondCode, ISD::SETOLT,
12272 OPC_MoveParent,
12273 OPC_CheckChild1Integer, 3,
12274 OPC_SwitchType , 22, 8,
12275 OPC_MoveSibling2,
12276 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12277 OPC_RecordNode,
12278 OPC_MoveParent,
12279 OPC_CheckPatternPredicate, 13,
12280 OPC_EmitMergeInputChains1_0,
12281 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
12282 8, 2, 1, 2,
12283 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12284 2, 4, 3,
12285 22, 7,
12286 OPC_MoveSibling2,
12287 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12288 OPC_RecordNode,
12289 OPC_MoveParent,
12290 OPC_CheckPatternPredicate, 14,
12291 OPC_EmitMergeInputChains1_0,
12292 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
12293 7, 2, 1, 2,
12294 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12295 2, 4, 3,
12296 0,
12297 55,
12298 OPC_CheckChild2CondCode, ISD::SETOLE,
12299 OPC_MoveParent,
12300 OPC_CheckChild1Integer, 3,
12301 OPC_SwitchType , 22, 8,
12302 OPC_MoveSibling2,
12303 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12304 OPC_RecordNode,
12305 OPC_MoveParent,
12306 OPC_CheckPatternPredicate, 13,
12307 OPC_EmitMergeInputChains1_0,
12308 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_D),
12309 8, 2, 1, 2,
12310 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12311 2, 4, 3,
12312 22, 7,
12313 OPC_MoveSibling2,
12314 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12315 OPC_RecordNode,
12316 OPC_MoveParent,
12317 OPC_CheckPatternPredicate, 14,
12318 OPC_EmitMergeInputChains1_0,
12319 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_D),
12320 7, 2, 1, 2,
12321 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12322 2, 4, 3,
12323 0,
12324 55,
12325 OPC_CheckChild2CondCode, ISD::SETONE,
12326 OPC_MoveParent,
12327 OPC_CheckChild1Integer, 3,
12328 OPC_SwitchType , 22, 8,
12329 OPC_MoveSibling2,
12330 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12331 OPC_RecordNode,
12332 OPC_MoveParent,
12333 OPC_CheckPatternPredicate, 13,
12334 OPC_EmitMergeInputChains1_0,
12335 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_D),
12336 8, 2, 1, 2,
12337 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12338 2, 4, 3,
12339 22, 7,
12340 OPC_MoveSibling2,
12341 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12342 OPC_RecordNode,
12343 OPC_MoveParent,
12344 OPC_CheckPatternPredicate, 14,
12345 OPC_EmitMergeInputChains1_0,
12346 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_D),
12347 7, 2, 1, 2,
12348 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12349 2, 4, 3,
12350 0,
12351 55,
12352 OPC_CheckChild2CondCode, ISD::SETO,
12353 OPC_MoveParent,
12354 OPC_CheckChild1Integer, 3,
12355 OPC_SwitchType , 22, 8,
12356 OPC_MoveSibling2,
12357 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12358 OPC_RecordNode,
12359 OPC_MoveParent,
12360 OPC_CheckPatternPredicate, 13,
12361 OPC_EmitMergeInputChains1_0,
12362 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_D),
12363 8, 2, 1, 2,
12364 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12365 2, 4, 3,
12366 22, 7,
12367 OPC_MoveSibling2,
12368 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12369 OPC_RecordNode,
12370 OPC_MoveParent,
12371 OPC_CheckPatternPredicate, 14,
12372 OPC_EmitMergeInputChains1_0,
12373 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_D),
12374 7, 2, 1, 2,
12375 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12376 2, 4, 3,
12377 0,
12378 55,
12379 OPC_CheckChild2CondCode, ISD::SETUEQ,
12380 OPC_MoveParent,
12381 OPC_CheckChild1Integer, 3,
12382 OPC_SwitchType , 22, 8,
12383 OPC_MoveSibling2,
12384 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12385 OPC_RecordNode,
12386 OPC_MoveParent,
12387 OPC_CheckPatternPredicate, 13,
12388 OPC_EmitMergeInputChains1_0,
12389 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_D),
12390 8, 2, 1, 2,
12391 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12392 2, 4, 3,
12393 22, 7,
12394 OPC_MoveSibling2,
12395 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12396 OPC_RecordNode,
12397 OPC_MoveParent,
12398 OPC_CheckPatternPredicate, 14,
12399 OPC_EmitMergeInputChains1_0,
12400 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_D),
12401 7, 2, 1, 2,
12402 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12403 2, 4, 3,
12404 0,
12405 55,
12406 OPC_CheckChild2CondCode, ISD::SETULT,
12407 OPC_MoveParent,
12408 OPC_CheckChild1Integer, 3,
12409 OPC_SwitchType , 22, 8,
12410 OPC_MoveSibling2,
12411 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12412 OPC_RecordNode,
12413 OPC_MoveParent,
12414 OPC_CheckPatternPredicate, 13,
12415 OPC_EmitMergeInputChains1_0,
12416 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_D),
12417 8, 2, 1, 2,
12418 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12419 2, 4, 3,
12420 22, 7,
12421 OPC_MoveSibling2,
12422 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12423 OPC_RecordNode,
12424 OPC_MoveParent,
12425 OPC_CheckPatternPredicate, 14,
12426 OPC_EmitMergeInputChains1_0,
12427 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_D),
12428 7, 2, 1, 2,
12429 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12430 2, 4, 3,
12431 0,
12432 55,
12433 OPC_CheckChild2CondCode, ISD::SETULE,
12434 OPC_MoveParent,
12435 OPC_CheckChild1Integer, 3,
12436 OPC_SwitchType , 22, 8,
12437 OPC_MoveSibling2,
12438 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12439 OPC_RecordNode,
12440 OPC_MoveParent,
12441 OPC_CheckPatternPredicate, 13,
12442 OPC_EmitMergeInputChains1_0,
12443 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_D),
12444 8, 2, 1, 2,
12445 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12446 2, 4, 3,
12447 22, 7,
12448 OPC_MoveSibling2,
12449 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12450 OPC_RecordNode,
12451 OPC_MoveParent,
12452 OPC_CheckPatternPredicate, 14,
12453 OPC_EmitMergeInputChains1_0,
12454 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_D),
12455 7, 2, 1, 2,
12456 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12457 2, 4, 3,
12458 0,
12459 55,
12460 OPC_CheckChild2CondCode, ISD::SETUNE,
12461 OPC_MoveParent,
12462 OPC_CheckChild1Integer, 3,
12463 OPC_SwitchType , 22, 8,
12464 OPC_MoveSibling2,
12465 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12466 OPC_RecordNode,
12467 OPC_MoveParent,
12468 OPC_CheckPatternPredicate, 13,
12469 OPC_EmitMergeInputChains1_0,
12470 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_D),
12471 8, 2, 1, 2,
12472 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12473 2, 4, 3,
12474 22, 7,
12475 OPC_MoveSibling2,
12476 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12477 OPC_RecordNode,
12478 OPC_MoveParent,
12479 OPC_CheckPatternPredicate, 14,
12480 OPC_EmitMergeInputChains1_0,
12481 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_D),
12482 7, 2, 1, 2,
12483 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12484 2, 4, 3,
12485 0,
12486 55,
12487 OPC_CheckChild2CondCode, ISD::SETUO,
12488 OPC_MoveParent,
12489 OPC_CheckChild1Integer, 3,
12490 OPC_SwitchType , 22, 8,
12491 OPC_MoveSibling2,
12492 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12493 OPC_RecordNode,
12494 OPC_MoveParent,
12495 OPC_CheckPatternPredicate, 13,
12496 OPC_EmitMergeInputChains1_0,
12497 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_D),
12498 8, 2, 1, 2,
12499 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12500 2, 4, 3,
12501 22, 7,
12502 OPC_MoveSibling2,
12503 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12504 OPC_RecordNode,
12505 OPC_MoveParent,
12506 OPC_CheckPatternPredicate, 14,
12507 OPC_EmitMergeInputChains1_0,
12508 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_D),
12509 7, 2, 1, 2,
12510 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12511 2, 4, 3,
12512 0,
12513 55,
12514 OPC_CheckChild2CondCode, ISD::SETLT,
12515 OPC_MoveParent,
12516 OPC_CheckChild1Integer, 3,
12517 OPC_SwitchType , 22, 8,
12518 OPC_MoveSibling2,
12519 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12520 OPC_RecordNode,
12521 OPC_MoveParent,
12522 OPC_CheckPatternPredicate, 13,
12523 OPC_EmitMergeInputChains1_0,
12524 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
12525 8, 2, 1, 2,
12526 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12527 2, 4, 3,
12528 22, 7,
12529 OPC_MoveSibling2,
12530 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12531 OPC_RecordNode,
12532 OPC_MoveParent,
12533 OPC_CheckPatternPredicate, 14,
12534 OPC_EmitMergeInputChains1_0,
12535 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
12536 7, 2, 1, 2,
12537 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCEQZ),
12538 2, 4, 3,
12539 0,
12540 0,
12541 0,
12542 55|128,13, TARGET_VAL(ISD::SETCC),
12543 OPC_RecordChild0,
12544 OPC_Scope, 4|128,2,
12545 OPC_CheckChild0TypeI64,
12546 OPC_CheckTypeI64,
12547 OPC_Scope, 70,
12548 OPC_CheckChild1Integer, 0,
12549 OPC_Scope, 32,
12550 OPC_CheckChild2CondCode, ISD::SETEQ,
12551 OPC_MoveSibling2,
12552 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12553 OPC_RecordNode,
12554 OPC_MoveParent,
12555 OPC_Scope, 9,
12556 OPC_CheckPatternPredicate, 23,
12557 OPC_EmitMergeInputChains1_0,
12558 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BEQZ),
12559 2, 1, 2,
12560 11,
12561 OPC_CheckPatternPredicate7,
12562 OPC_EmitMergeInputChains1_0,
12563 OPC_EmitRegisterI64, LoongArch::R0,
12564 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BEQ),
12565 3, 1, 3, 2,
12566 0,
12567 32,
12568 OPC_CheckChild2CondCode, ISD::SETNE,
12569 OPC_MoveSibling2,
12570 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12571 OPC_RecordNode,
12572 OPC_MoveParent,
12573 OPC_Scope, 9,
12574 OPC_CheckPatternPredicate, 23,
12575 OPC_EmitMergeInputChains1_0,
12576 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BNEZ),
12577 2, 1, 2,
12578 11,
12579 OPC_CheckPatternPredicate7,
12580 OPC_EmitMergeInputChains1_0,
12581 OPC_EmitRegisterI64, LoongArch::R0,
12582 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BNE),
12583 3, 1, 3, 2,
12584 0,
12585 0,
12586 55|128,1,
12587 OPC_RecordChild1,
12588 OPC_Scope, 17,
12589 OPC_CheckChild2CondCode, ISD::SETEQ,
12590 OPC_MoveSibling2,
12591 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12592 OPC_RecordNode,
12593 OPC_MoveParent,
12594 OPC_CheckPatternPredicate7,
12595 OPC_EmitMergeInputChains1_0,
12596 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BEQ),
12597 3, 1, 2, 3,
12598 17,
12599 OPC_CheckChild2CondCode, ISD::SETNE,
12600 OPC_MoveSibling2,
12601 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12602 OPC_RecordNode,
12603 OPC_MoveParent,
12604 OPC_CheckPatternPredicate7,
12605 OPC_EmitMergeInputChains1_0,
12606 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BNE),
12607 3, 1, 2, 3,
12608 17,
12609 OPC_CheckChild2CondCode, ISD::SETLT,
12610 OPC_MoveSibling2,
12611 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12612 OPC_RecordNode,
12613 OPC_MoveParent,
12614 OPC_CheckPatternPredicate7,
12615 OPC_EmitMergeInputChains1_0,
12616 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BLT),
12617 3, 1, 2, 3,
12618 17,
12619 OPC_CheckChild2CondCode, ISD::SETGE,
12620 OPC_MoveSibling2,
12621 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12622 OPC_RecordNode,
12623 OPC_MoveParent,
12624 OPC_CheckPatternPredicate7,
12625 OPC_EmitMergeInputChains1_0,
12626 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BGE),
12627 3, 1, 2, 3,
12628 17,
12629 OPC_CheckChild2CondCode, ISD::SETULT,
12630 OPC_MoveSibling2,
12631 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12632 OPC_RecordNode,
12633 OPC_MoveParent,
12634 OPC_CheckPatternPredicate7,
12635 OPC_EmitMergeInputChains1_0,
12636 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BLTU),
12637 3, 1, 2, 3,
12638 17,
12639 OPC_CheckChild2CondCode, ISD::SETUGE,
12640 OPC_MoveSibling2,
12641 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12642 OPC_RecordNode,
12643 OPC_MoveParent,
12644 OPC_CheckPatternPredicate7,
12645 OPC_EmitMergeInputChains1_0,
12646 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BGEU),
12647 3, 1, 2, 3,
12648 17,
12649 OPC_CheckChild2CondCode, ISD::SETGT,
12650 OPC_MoveSibling2,
12651 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12652 OPC_RecordNode,
12653 OPC_MoveParent,
12654 OPC_CheckPatternPredicate7,
12655 OPC_EmitMergeInputChains1_0,
12656 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BLT),
12657 3, 2, 1, 3,
12658 17,
12659 OPC_CheckChild2CondCode, ISD::SETLE,
12660 OPC_MoveSibling2,
12661 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12662 OPC_RecordNode,
12663 OPC_MoveParent,
12664 OPC_CheckPatternPredicate7,
12665 OPC_EmitMergeInputChains1_0,
12666 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BGE),
12667 3, 2, 1, 3,
12668 17,
12669 OPC_CheckChild2CondCode, ISD::SETUGT,
12670 OPC_MoveSibling2,
12671 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12672 OPC_RecordNode,
12673 OPC_MoveParent,
12674 OPC_CheckPatternPredicate7,
12675 OPC_EmitMergeInputChains1_0,
12676 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BLTU),
12677 3, 2, 1, 3,
12678 17,
12679 OPC_CheckChild2CondCode, ISD::SETULE,
12680 OPC_MoveSibling2,
12681 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12682 OPC_RecordNode,
12683 OPC_MoveParent,
12684 OPC_CheckPatternPredicate7,
12685 OPC_EmitMergeInputChains1_0,
12686 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BGEU),
12687 3, 2, 1, 3,
12688 0,
12689 0,
12690 16|128,2,
12691 OPC_CheckChild0TypeI32,
12692 OPC_CheckTypeI32,
12693 OPC_Scope, 72,
12694 OPC_CheckChild1Integer, 0,
12695 OPC_Scope, 33,
12696 OPC_CheckChild2CondCode, ISD::SETEQ,
12697 OPC_MoveSibling2,
12698 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12699 OPC_RecordNode,
12700 OPC_MoveParent,
12701 OPC_Scope, 9,
12702 OPC_CheckPatternPredicate, 24,
12703 OPC_EmitMergeInputChains1_0,
12704 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BEQZ),
12705 2, 1, 2,
12706 12,
12707 OPC_CheckPatternPredicate, 8,
12708 OPC_EmitMergeInputChains1_0,
12709 OPC_EmitRegisterI32, LoongArch::R0,
12710 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BEQ),
12711 3, 1, 3, 2,
12712 0,
12713 33,
12714 OPC_CheckChild2CondCode, ISD::SETNE,
12715 OPC_MoveSibling2,
12716 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12717 OPC_RecordNode,
12718 OPC_MoveParent,
12719 OPC_Scope, 9,
12720 OPC_CheckPatternPredicate, 24,
12721 OPC_EmitMergeInputChains1_0,
12722 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BNEZ),
12723 2, 1, 2,
12724 12,
12725 OPC_CheckPatternPredicate, 8,
12726 OPC_EmitMergeInputChains1_0,
12727 OPC_EmitRegisterI32, LoongArch::R0,
12728 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BNE),
12729 3, 1, 3, 2,
12730 0,
12731 0,
12732 65|128,1,
12733 OPC_RecordChild1,
12734 OPC_Scope, 18,
12735 OPC_CheckChild2CondCode, ISD::SETEQ,
12736 OPC_MoveSibling2,
12737 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12738 OPC_RecordNode,
12739 OPC_MoveParent,
12740 OPC_CheckPatternPredicate, 8,
12741 OPC_EmitMergeInputChains1_0,
12742 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BEQ),
12743 3, 1, 2, 3,
12744 18,
12745 OPC_CheckChild2CondCode, ISD::SETNE,
12746 OPC_MoveSibling2,
12747 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12748 OPC_RecordNode,
12749 OPC_MoveParent,
12750 OPC_CheckPatternPredicate, 8,
12751 OPC_EmitMergeInputChains1_0,
12752 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BNE),
12753 3, 1, 2, 3,
12754 18,
12755 OPC_CheckChild2CondCode, ISD::SETLT,
12756 OPC_MoveSibling2,
12757 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12758 OPC_RecordNode,
12759 OPC_MoveParent,
12760 OPC_CheckPatternPredicate, 8,
12761 OPC_EmitMergeInputChains1_0,
12762 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BLT),
12763 3, 1, 2, 3,
12764 18,
12765 OPC_CheckChild2CondCode, ISD::SETGE,
12766 OPC_MoveSibling2,
12767 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12768 OPC_RecordNode,
12769 OPC_MoveParent,
12770 OPC_CheckPatternPredicate, 8,
12771 OPC_EmitMergeInputChains1_0,
12772 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BGE),
12773 3, 1, 2, 3,
12774 18,
12775 OPC_CheckChild2CondCode, ISD::SETULT,
12776 OPC_MoveSibling2,
12777 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12778 OPC_RecordNode,
12779 OPC_MoveParent,
12780 OPC_CheckPatternPredicate, 8,
12781 OPC_EmitMergeInputChains1_0,
12782 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BLTU),
12783 3, 1, 2, 3,
12784 18,
12785 OPC_CheckChild2CondCode, ISD::SETUGE,
12786 OPC_MoveSibling2,
12787 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12788 OPC_RecordNode,
12789 OPC_MoveParent,
12790 OPC_CheckPatternPredicate, 8,
12791 OPC_EmitMergeInputChains1_0,
12792 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BGEU),
12793 3, 1, 2, 3,
12794 18,
12795 OPC_CheckChild2CondCode, ISD::SETGT,
12796 OPC_MoveSibling2,
12797 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12798 OPC_RecordNode,
12799 OPC_MoveParent,
12800 OPC_CheckPatternPredicate, 8,
12801 OPC_EmitMergeInputChains1_0,
12802 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BLT),
12803 3, 2, 1, 3,
12804 18,
12805 OPC_CheckChild2CondCode, ISD::SETLE,
12806 OPC_MoveSibling2,
12807 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12808 OPC_RecordNode,
12809 OPC_MoveParent,
12810 OPC_CheckPatternPredicate, 8,
12811 OPC_EmitMergeInputChains1_0,
12812 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BGE),
12813 3, 2, 1, 3,
12814 18,
12815 OPC_CheckChild2CondCode, ISD::SETUGT,
12816 OPC_MoveSibling2,
12817 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12818 OPC_RecordNode,
12819 OPC_MoveParent,
12820 OPC_CheckPatternPredicate, 8,
12821 OPC_EmitMergeInputChains1_0,
12822 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BLTU),
12823 3, 2, 1, 3,
12824 18,
12825 OPC_CheckChild2CondCode, ISD::SETULE,
12826 OPC_MoveSibling2,
12827 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12828 OPC_RecordNode,
12829 OPC_MoveParent,
12830 OPC_CheckPatternPredicate, 8,
12831 OPC_EmitMergeInputChains1_0,
12832 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BGEU),
12833 3, 2, 1, 3,
12834 0,
12835 0,
12836 76|128,4,
12837 OPC_CheckChild0Type, 12,
12838 OPC_RecordChild1,
12839 OPC_Scope, 52,
12840 OPC_CheckChild2CondCode, ISD::SETOEQ,
12841 OPC_SwitchType , 22, 8,
12842 OPC_MoveSibling2,
12843 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12844 OPC_RecordNode,
12845 OPC_MoveParent,
12846 OPC_CheckPatternPredicate, 11,
12847 OPC_EmitMergeInputChains1_0,
12848 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_S),
12849 8, 2, 1, 2,
12850 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12851 2, 4, 3,
12852 22, 7,
12853 OPC_MoveSibling2,
12854 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12855 OPC_RecordNode,
12856 OPC_MoveParent,
12857 OPC_CheckPatternPredicate, 12,
12858 OPC_EmitMergeInputChains1_0,
12859 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_S),
12860 7, 2, 1, 2,
12861 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12862 2, 4, 3,
12863 0,
12864 52,
12865 OPC_CheckChild2CondCode, ISD::SETOLT,
12866 OPC_SwitchType , 22, 8,
12867 OPC_MoveSibling2,
12868 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12869 OPC_RecordNode,
12870 OPC_MoveParent,
12871 OPC_CheckPatternPredicate, 11,
12872 OPC_EmitMergeInputChains1_0,
12873 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
12874 8, 2, 1, 2,
12875 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12876 2, 4, 3,
12877 22, 7,
12878 OPC_MoveSibling2,
12879 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12880 OPC_RecordNode,
12881 OPC_MoveParent,
12882 OPC_CheckPatternPredicate, 12,
12883 OPC_EmitMergeInputChains1_0,
12884 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
12885 7, 2, 1, 2,
12886 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12887 2, 4, 3,
12888 0,
12889 52,
12890 OPC_CheckChild2CondCode, ISD::SETOLE,
12891 OPC_SwitchType , 22, 8,
12892 OPC_MoveSibling2,
12893 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12894 OPC_RecordNode,
12895 OPC_MoveParent,
12896 OPC_CheckPatternPredicate, 11,
12897 OPC_EmitMergeInputChains1_0,
12898 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_S),
12899 8, 2, 1, 2,
12900 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12901 2, 4, 3,
12902 22, 7,
12903 OPC_MoveSibling2,
12904 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12905 OPC_RecordNode,
12906 OPC_MoveParent,
12907 OPC_CheckPatternPredicate, 12,
12908 OPC_EmitMergeInputChains1_0,
12909 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_S),
12910 7, 2, 1, 2,
12911 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12912 2, 4, 3,
12913 0,
12914 52,
12915 OPC_CheckChild2CondCode, ISD::SETONE,
12916 OPC_SwitchType , 22, 8,
12917 OPC_MoveSibling2,
12918 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12919 OPC_RecordNode,
12920 OPC_MoveParent,
12921 OPC_CheckPatternPredicate, 11,
12922 OPC_EmitMergeInputChains1_0,
12923 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_S),
12924 8, 2, 1, 2,
12925 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12926 2, 4, 3,
12927 22, 7,
12928 OPC_MoveSibling2,
12929 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12930 OPC_RecordNode,
12931 OPC_MoveParent,
12932 OPC_CheckPatternPredicate, 12,
12933 OPC_EmitMergeInputChains1_0,
12934 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_S),
12935 7, 2, 1, 2,
12936 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12937 2, 4, 3,
12938 0,
12939 52,
12940 OPC_CheckChild2CondCode, ISD::SETO,
12941 OPC_SwitchType , 22, 8,
12942 OPC_MoveSibling2,
12943 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12944 OPC_RecordNode,
12945 OPC_MoveParent,
12946 OPC_CheckPatternPredicate, 11,
12947 OPC_EmitMergeInputChains1_0,
12948 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_S),
12949 8, 2, 1, 2,
12950 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12951 2, 4, 3,
12952 22, 7,
12953 OPC_MoveSibling2,
12954 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12955 OPC_RecordNode,
12956 OPC_MoveParent,
12957 OPC_CheckPatternPredicate, 12,
12958 OPC_EmitMergeInputChains1_0,
12959 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_S),
12960 7, 2, 1, 2,
12961 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12962 2, 4, 3,
12963 0,
12964 52,
12965 OPC_CheckChild2CondCode, ISD::SETUEQ,
12966 OPC_SwitchType , 22, 8,
12967 OPC_MoveSibling2,
12968 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12969 OPC_RecordNode,
12970 OPC_MoveParent,
12971 OPC_CheckPatternPredicate, 11,
12972 OPC_EmitMergeInputChains1_0,
12973 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_S),
12974 8, 2, 1, 2,
12975 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12976 2, 4, 3,
12977 22, 7,
12978 OPC_MoveSibling2,
12979 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12980 OPC_RecordNode,
12981 OPC_MoveParent,
12982 OPC_CheckPatternPredicate, 12,
12983 OPC_EmitMergeInputChains1_0,
12984 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_S),
12985 7, 2, 1, 2,
12986 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
12987 2, 4, 3,
12988 0,
12989 52,
12990 OPC_CheckChild2CondCode, ISD::SETULT,
12991 OPC_SwitchType , 22, 8,
12992 OPC_MoveSibling2,
12993 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
12994 OPC_RecordNode,
12995 OPC_MoveParent,
12996 OPC_CheckPatternPredicate, 11,
12997 OPC_EmitMergeInputChains1_0,
12998 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_S),
12999 8, 2, 1, 2,
13000 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13001 2, 4, 3,
13002 22, 7,
13003 OPC_MoveSibling2,
13004 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13005 OPC_RecordNode,
13006 OPC_MoveParent,
13007 OPC_CheckPatternPredicate, 12,
13008 OPC_EmitMergeInputChains1_0,
13009 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_S),
13010 7, 2, 1, 2,
13011 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13012 2, 4, 3,
13013 0,
13014 52,
13015 OPC_CheckChild2CondCode, ISD::SETULE,
13016 OPC_SwitchType , 22, 8,
13017 OPC_MoveSibling2,
13018 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13019 OPC_RecordNode,
13020 OPC_MoveParent,
13021 OPC_CheckPatternPredicate, 11,
13022 OPC_EmitMergeInputChains1_0,
13023 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_S),
13024 8, 2, 1, 2,
13025 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13026 2, 4, 3,
13027 22, 7,
13028 OPC_MoveSibling2,
13029 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13030 OPC_RecordNode,
13031 OPC_MoveParent,
13032 OPC_CheckPatternPredicate, 12,
13033 OPC_EmitMergeInputChains1_0,
13034 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_S),
13035 7, 2, 1, 2,
13036 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13037 2, 4, 3,
13038 0,
13039 52,
13040 OPC_CheckChild2CondCode, ISD::SETUNE,
13041 OPC_SwitchType , 22, 8,
13042 OPC_MoveSibling2,
13043 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13044 OPC_RecordNode,
13045 OPC_MoveParent,
13046 OPC_CheckPatternPredicate, 11,
13047 OPC_EmitMergeInputChains1_0,
13048 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_S),
13049 8, 2, 1, 2,
13050 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13051 2, 4, 3,
13052 22, 7,
13053 OPC_MoveSibling2,
13054 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13055 OPC_RecordNode,
13056 OPC_MoveParent,
13057 OPC_CheckPatternPredicate, 12,
13058 OPC_EmitMergeInputChains1_0,
13059 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_S),
13060 7, 2, 1, 2,
13061 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13062 2, 4, 3,
13063 0,
13064 52,
13065 OPC_CheckChild2CondCode, ISD::SETUO,
13066 OPC_SwitchType , 22, 8,
13067 OPC_MoveSibling2,
13068 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13069 OPC_RecordNode,
13070 OPC_MoveParent,
13071 OPC_CheckPatternPredicate, 11,
13072 OPC_EmitMergeInputChains1_0,
13073 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_S),
13074 8, 2, 1, 2,
13075 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13076 2, 4, 3,
13077 22, 7,
13078 OPC_MoveSibling2,
13079 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13080 OPC_RecordNode,
13081 OPC_MoveParent,
13082 OPC_CheckPatternPredicate, 12,
13083 OPC_EmitMergeInputChains1_0,
13084 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_S),
13085 7, 2, 1, 2,
13086 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13087 2, 4, 3,
13088 0,
13089 52,
13090 OPC_CheckChild2CondCode, ISD::SETLT,
13091 OPC_SwitchType , 22, 8,
13092 OPC_MoveSibling2,
13093 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13094 OPC_RecordNode,
13095 OPC_MoveParent,
13096 OPC_CheckPatternPredicate, 11,
13097 OPC_EmitMergeInputChains1_0,
13098 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
13099 8, 2, 1, 2,
13100 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13101 2, 4, 3,
13102 22, 7,
13103 OPC_MoveSibling2,
13104 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13105 OPC_RecordNode,
13106 OPC_MoveParent,
13107 OPC_CheckPatternPredicate, 12,
13108 OPC_EmitMergeInputChains1_0,
13109 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
13110 7, 2, 1, 2,
13111 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13112 2, 4, 3,
13113 0,
13114 0,
13115 76|128,4,
13116 OPC_CheckChild0Type, 13,
13117 OPC_RecordChild1,
13118 OPC_Scope, 52,
13119 OPC_CheckChild2CondCode, ISD::SETOEQ,
13120 OPC_SwitchType , 22, 8,
13121 OPC_MoveSibling2,
13122 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13123 OPC_RecordNode,
13124 OPC_MoveParent,
13125 OPC_CheckPatternPredicate, 13,
13126 OPC_EmitMergeInputChains1_0,
13127 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_D),
13128 8, 2, 1, 2,
13129 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13130 2, 4, 3,
13131 22, 7,
13132 OPC_MoveSibling2,
13133 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13134 OPC_RecordNode,
13135 OPC_MoveParent,
13136 OPC_CheckPatternPredicate, 14,
13137 OPC_EmitMergeInputChains1_0,
13138 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_D),
13139 7, 2, 1, 2,
13140 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13141 2, 4, 3,
13142 0,
13143 52,
13144 OPC_CheckChild2CondCode, ISD::SETOLT,
13145 OPC_SwitchType , 22, 8,
13146 OPC_MoveSibling2,
13147 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13148 OPC_RecordNode,
13149 OPC_MoveParent,
13150 OPC_CheckPatternPredicate, 13,
13151 OPC_EmitMergeInputChains1_0,
13152 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
13153 8, 2, 1, 2,
13154 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13155 2, 4, 3,
13156 22, 7,
13157 OPC_MoveSibling2,
13158 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13159 OPC_RecordNode,
13160 OPC_MoveParent,
13161 OPC_CheckPatternPredicate, 14,
13162 OPC_EmitMergeInputChains1_0,
13163 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
13164 7, 2, 1, 2,
13165 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13166 2, 4, 3,
13167 0,
13168 52,
13169 OPC_CheckChild2CondCode, ISD::SETOLE,
13170 OPC_SwitchType , 22, 8,
13171 OPC_MoveSibling2,
13172 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13173 OPC_RecordNode,
13174 OPC_MoveParent,
13175 OPC_CheckPatternPredicate, 13,
13176 OPC_EmitMergeInputChains1_0,
13177 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_D),
13178 8, 2, 1, 2,
13179 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13180 2, 4, 3,
13181 22, 7,
13182 OPC_MoveSibling2,
13183 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13184 OPC_RecordNode,
13185 OPC_MoveParent,
13186 OPC_CheckPatternPredicate, 14,
13187 OPC_EmitMergeInputChains1_0,
13188 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_D),
13189 7, 2, 1, 2,
13190 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13191 2, 4, 3,
13192 0,
13193 52,
13194 OPC_CheckChild2CondCode, ISD::SETONE,
13195 OPC_SwitchType , 22, 8,
13196 OPC_MoveSibling2,
13197 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13198 OPC_RecordNode,
13199 OPC_MoveParent,
13200 OPC_CheckPatternPredicate, 13,
13201 OPC_EmitMergeInputChains1_0,
13202 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_D),
13203 8, 2, 1, 2,
13204 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13205 2, 4, 3,
13206 22, 7,
13207 OPC_MoveSibling2,
13208 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13209 OPC_RecordNode,
13210 OPC_MoveParent,
13211 OPC_CheckPatternPredicate, 14,
13212 OPC_EmitMergeInputChains1_0,
13213 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_D),
13214 7, 2, 1, 2,
13215 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13216 2, 4, 3,
13217 0,
13218 52,
13219 OPC_CheckChild2CondCode, ISD::SETO,
13220 OPC_SwitchType , 22, 8,
13221 OPC_MoveSibling2,
13222 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13223 OPC_RecordNode,
13224 OPC_MoveParent,
13225 OPC_CheckPatternPredicate, 13,
13226 OPC_EmitMergeInputChains1_0,
13227 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_D),
13228 8, 2, 1, 2,
13229 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13230 2, 4, 3,
13231 22, 7,
13232 OPC_MoveSibling2,
13233 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13234 OPC_RecordNode,
13235 OPC_MoveParent,
13236 OPC_CheckPatternPredicate, 14,
13237 OPC_EmitMergeInputChains1_0,
13238 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_D),
13239 7, 2, 1, 2,
13240 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13241 2, 4, 3,
13242 0,
13243 52,
13244 OPC_CheckChild2CondCode, ISD::SETUEQ,
13245 OPC_SwitchType , 22, 8,
13246 OPC_MoveSibling2,
13247 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13248 OPC_RecordNode,
13249 OPC_MoveParent,
13250 OPC_CheckPatternPredicate, 13,
13251 OPC_EmitMergeInputChains1_0,
13252 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_D),
13253 8, 2, 1, 2,
13254 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13255 2, 4, 3,
13256 22, 7,
13257 OPC_MoveSibling2,
13258 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13259 OPC_RecordNode,
13260 OPC_MoveParent,
13261 OPC_CheckPatternPredicate, 14,
13262 OPC_EmitMergeInputChains1_0,
13263 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_D),
13264 7, 2, 1, 2,
13265 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13266 2, 4, 3,
13267 0,
13268 52,
13269 OPC_CheckChild2CondCode, ISD::SETULT,
13270 OPC_SwitchType , 22, 8,
13271 OPC_MoveSibling2,
13272 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13273 OPC_RecordNode,
13274 OPC_MoveParent,
13275 OPC_CheckPatternPredicate, 13,
13276 OPC_EmitMergeInputChains1_0,
13277 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_D),
13278 8, 2, 1, 2,
13279 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13280 2, 4, 3,
13281 22, 7,
13282 OPC_MoveSibling2,
13283 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13284 OPC_RecordNode,
13285 OPC_MoveParent,
13286 OPC_CheckPatternPredicate, 14,
13287 OPC_EmitMergeInputChains1_0,
13288 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_D),
13289 7, 2, 1, 2,
13290 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13291 2, 4, 3,
13292 0,
13293 52,
13294 OPC_CheckChild2CondCode, ISD::SETULE,
13295 OPC_SwitchType , 22, 8,
13296 OPC_MoveSibling2,
13297 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13298 OPC_RecordNode,
13299 OPC_MoveParent,
13300 OPC_CheckPatternPredicate, 13,
13301 OPC_EmitMergeInputChains1_0,
13302 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_D),
13303 8, 2, 1, 2,
13304 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13305 2, 4, 3,
13306 22, 7,
13307 OPC_MoveSibling2,
13308 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13309 OPC_RecordNode,
13310 OPC_MoveParent,
13311 OPC_CheckPatternPredicate, 14,
13312 OPC_EmitMergeInputChains1_0,
13313 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_D),
13314 7, 2, 1, 2,
13315 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13316 2, 4, 3,
13317 0,
13318 52,
13319 OPC_CheckChild2CondCode, ISD::SETUNE,
13320 OPC_SwitchType , 22, 8,
13321 OPC_MoveSibling2,
13322 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13323 OPC_RecordNode,
13324 OPC_MoveParent,
13325 OPC_CheckPatternPredicate, 13,
13326 OPC_EmitMergeInputChains1_0,
13327 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_D),
13328 8, 2, 1, 2,
13329 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13330 2, 4, 3,
13331 22, 7,
13332 OPC_MoveSibling2,
13333 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13334 OPC_RecordNode,
13335 OPC_MoveParent,
13336 OPC_CheckPatternPredicate, 14,
13337 OPC_EmitMergeInputChains1_0,
13338 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_D),
13339 7, 2, 1, 2,
13340 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13341 2, 4, 3,
13342 0,
13343 52,
13344 OPC_CheckChild2CondCode, ISD::SETUO,
13345 OPC_SwitchType , 22, 8,
13346 OPC_MoveSibling2,
13347 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13348 OPC_RecordNode,
13349 OPC_MoveParent,
13350 OPC_CheckPatternPredicate, 13,
13351 OPC_EmitMergeInputChains1_0,
13352 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_D),
13353 8, 2, 1, 2,
13354 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13355 2, 4, 3,
13356 22, 7,
13357 OPC_MoveSibling2,
13358 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13359 OPC_RecordNode,
13360 OPC_MoveParent,
13361 OPC_CheckPatternPredicate, 14,
13362 OPC_EmitMergeInputChains1_0,
13363 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_D),
13364 7, 2, 1, 2,
13365 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13366 2, 4, 3,
13367 0,
13368 52,
13369 OPC_CheckChild2CondCode, ISD::SETLT,
13370 OPC_SwitchType , 22, 8,
13371 OPC_MoveSibling2,
13372 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13373 OPC_RecordNode,
13374 OPC_MoveParent,
13375 OPC_CheckPatternPredicate, 13,
13376 OPC_EmitMergeInputChains1_0,
13377 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
13378 8, 2, 1, 2,
13379 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13380 2, 4, 3,
13381 22, 7,
13382 OPC_MoveSibling2,
13383 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13384 OPC_RecordNode,
13385 OPC_MoveParent,
13386 OPC_CheckPatternPredicate, 14,
13387 OPC_EmitMergeInputChains1_0,
13388 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
13389 7, 2, 1, 2,
13390 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BCNEZ),
13391 2, 4, 3,
13392 0,
13393 0,
13394 0,
13395 0,
13396 68,
13397 OPC_RecordChild1,
13398 OPC_Scope, 31,
13399 OPC_CheckChild1TypeI64,
13400 OPC_RecordChild2,
13401 OPC_MoveChild2,
13402 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13403 OPC_MoveParent,
13404 OPC_Scope, 9,
13405 OPC_CheckPatternPredicate, 23,
13406 OPC_EmitMergeInputChains1_0,
13407 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BNEZ),
13408 2, 1, 2,
13409 11,
13410 OPC_CheckPatternPredicate7,
13411 OPC_EmitMergeInputChains1_0,
13412 OPC_EmitRegisterI64, LoongArch::R0,
13413 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BNE),
13414 3, 1, 3, 2,
13415 0,
13416 32,
13417 OPC_CheckChild1TypeI32,
13418 OPC_RecordChild2,
13419 OPC_MoveChild2,
13420 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
13421 OPC_MoveParent,
13422 OPC_Scope, 9,
13423 OPC_CheckPatternPredicate, 24,
13424 OPC_EmitMergeInputChains1_0,
13425 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BNEZ),
13426 2, 1, 2,
13427 12,
13428 OPC_CheckPatternPredicate, 8,
13429 OPC_EmitMergeInputChains1_0,
13430 OPC_EmitRegisterI32, LoongArch::R0,
13431 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BNE),
13432 3, 1, 3, 2,
13433 0,
13434 0,
13435 0,
13436 122|128,15, TARGET_VAL(ISD::XOR),
13437 OPC_Scope, 32,
13438 OPC_MoveChild0,
13439 OPC_CheckOpcode, TARGET_VAL(ISD::OR),
13440 OPC_RecordChild0,
13441 OPC_RecordChild1,
13442 OPC_MoveParent,
13443 OPC_CheckChild1Integer, 3,
13444 OPC_SwitchType , 8, 8,
13445 OPC_CheckPatternPredicate7,
13446 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::NOR),
13447 8, 2, 0, 1,
13448 9, 7,
13449 OPC_CheckPatternPredicate, 8,
13450 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::NOR),
13451 7, 2, 0, 1,
13452 0,
13453 29|128,2,
13454 OPC_RecordChild0,
13455 OPC_Scope, 29,
13456 OPC_CheckChild1Integer, 3,
13457 OPC_SwitchType , 10, 8,
13458 OPC_CheckPatternPredicate7,
13459 OPC_EmitRegisterI64, LoongArch::R0,
13460 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::NOR),
13461 8, 2, 0, 1,
13462 11, 7,
13463 OPC_CheckPatternPredicate, 8,
13464 OPC_EmitRegisterI32, LoongArch::R0,
13465 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::NOR),
13466 7, 2, 0, 1,
13467 0,
13468 57,
13469 OPC_RecordChild1,
13470 OPC_Scope, 32,
13471 OPC_MoveChild1,
13472 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
13473 OPC_CheckPredicate, 49,
13474 OPC_MoveParent,
13475 OPC_SwitchType , 9, 8,
13476 OPC_CheckPatternPredicate7,
13477 OPC_EmitConvertToTarget1,
13478 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XORI),
13479 8, 2, 0, 2,
13480 10, 7,
13481 OPC_CheckPatternPredicate, 8,
13482 OPC_EmitConvertToTarget1,
13483 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XORI),
13484 7, 2, 0, 2,
13485 0,
13486 9,
13487 OPC_CheckTypeI64,
13488 OPC_CheckPatternPredicate7,
13489 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XOR),
13490 8, 2, 0, 1,
13491 10,
13492 OPC_CheckTypeI32,
13493 OPC_CheckPatternPredicate, 8,
13494 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XOR),
13495 7, 2, 0, 1,
13496 0,
13497 64|128,1,
13498 OPC_MoveChild1,
13499 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13500 OPC_MoveChild0,
13501 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13502 OPC_CheckPredicate, 12,
13503 OPC_MoveSibling1,
13504 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13505 OPC_Scope, 23|128,1,
13506 OPC_RecordChild0,
13507 OPC_MoveChild1,
13508 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13509 OPC_Scope, 17,
13510 OPC_CheckPredicate, 14,
13511 OPC_MoveParent,
13512 OPC_CheckType, 40,
13513 OPC_MoveParent,
13514 OPC_MoveParent,
13515 OPC_CheckType, 40,
13516 OPC_CheckPatternPredicate1,
13517 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_B),
13518 40, 2, 0, 1,
13519 17,
13520 OPC_CheckPredicate, 15,
13521 OPC_MoveParent,
13522 OPC_CheckType, 51,
13523 OPC_MoveParent,
13524 OPC_MoveParent,
13525 OPC_CheckType, 51,
13526 OPC_CheckPatternPredicate1,
13527 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_H),
13528 51, 2, 0, 1,
13529 17,
13530 OPC_CheckPredicate, 16,
13531 OPC_MoveParent,
13532 OPC_CheckType, 62,
13533 OPC_MoveParent,
13534 OPC_MoveParent,
13535 OPC_CheckType, 62,
13536 OPC_CheckPatternPredicate1,
13537 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_W),
13538 62, 2, 0, 1,
13539 17,
13540 OPC_CheckPredicate, 17,
13541 OPC_MoveParent,
13542 OPC_CheckType, 81,
13543 OPC_MoveParent,
13544 OPC_MoveParent,
13545 OPC_CheckType, 81,
13546 OPC_CheckPatternPredicate1,
13547 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_D),
13548 81, 2, 0, 1,
13549 17,
13550 OPC_CheckPredicate, 14,
13551 OPC_MoveParent,
13552 OPC_CheckType, 41,
13553 OPC_MoveParent,
13554 OPC_MoveParent,
13555 OPC_CheckType, 41,
13556 OPC_CheckPatternPredicate0,
13557 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_B),
13558 41, 2, 0, 1,
13559 17,
13560 OPC_CheckPredicate, 15,
13561 OPC_MoveParent,
13562 OPC_CheckType, 52,
13563 OPC_MoveParent,
13564 OPC_MoveParent,
13565 OPC_CheckType, 52,
13566 OPC_CheckPatternPredicate0,
13567 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_H),
13568 52, 2, 0, 1,
13569 17,
13570 OPC_CheckPredicate, 16,
13571 OPC_MoveParent,
13572 OPC_CheckType, 66,
13573 OPC_MoveParent,
13574 OPC_MoveParent,
13575 OPC_CheckType, 66,
13576 OPC_CheckPatternPredicate0,
13577 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_W),
13578 66, 2, 0, 1,
13579 17,
13580 OPC_CheckPredicate, 17,
13581 OPC_MoveParent,
13582 OPC_CheckType, 83,
13583 OPC_MoveParent,
13584 OPC_MoveParent,
13585 OPC_CheckType, 83,
13586 OPC_CheckPatternPredicate0,
13587 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_D),
13588 83, 2, 0, 1,
13589 0,
13590 22,
13591 OPC_MoveChild0,
13592 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13593 OPC_CheckPredicate, 14,
13594 OPC_MoveParent,
13595 OPC_RecordChild1,
13596 OPC_CheckType, 40,
13597 OPC_MoveParent,
13598 OPC_MoveParent,
13599 OPC_CheckType, 40,
13600 OPC_CheckPatternPredicate1,
13601 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_B),
13602 40, 2, 0, 1,
13603 0,
13604 0,
13605 64,
13606 OPC_MoveChild0,
13607 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13608 OPC_MoveChild0,
13609 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13610 OPC_CheckPredicate, 12,
13611 OPC_MoveSibling1,
13612 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13613 OPC_Scope, 23,
13614 OPC_RecordChild0,
13615 OPC_MoveChild1,
13616 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13617 OPC_CheckPredicate, 14,
13618 OPC_MoveParent,
13619 OPC_CheckType, 40,
13620 OPC_MoveParent,
13621 OPC_MoveParent,
13622 OPC_RecordChild1,
13623 OPC_CheckType, 40,
13624 OPC_CheckPatternPredicate1,
13625 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_B),
13626 40, 2, 1, 0,
13627 23,
13628 OPC_MoveChild0,
13629 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13630 OPC_CheckPredicate, 14,
13631 OPC_MoveParent,
13632 OPC_RecordChild1,
13633 OPC_CheckType, 40,
13634 OPC_MoveParent,
13635 OPC_MoveParent,
13636 OPC_RecordChild1,
13637 OPC_CheckType, 40,
13638 OPC_CheckPatternPredicate1,
13639 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_B),
13640 40, 2, 1, 0,
13641 0,
13642 37,
13643 OPC_RecordChild0,
13644 OPC_MoveChild1,
13645 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13646 OPC_MoveChild0,
13647 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13648 OPC_CheckPredicate, 12,
13649 OPC_MoveSibling1,
13650 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13651 OPC_MoveChild0,
13652 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13653 OPC_CheckPredicate, 15,
13654 OPC_MoveParent,
13655 OPC_RecordChild1,
13656 OPC_CheckType, 51,
13657 OPC_MoveParent,
13658 OPC_MoveParent,
13659 OPC_CheckType, 51,
13660 OPC_CheckPatternPredicate1,
13661 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_H),
13662 51, 2, 0, 1,
13663 64,
13664 OPC_MoveChild0,
13665 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13666 OPC_MoveChild0,
13667 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13668 OPC_CheckPredicate, 12,
13669 OPC_MoveSibling1,
13670 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13671 OPC_Scope, 23,
13672 OPC_RecordChild0,
13673 OPC_MoveChild1,
13674 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13675 OPC_CheckPredicate, 15,
13676 OPC_MoveParent,
13677 OPC_CheckType, 51,
13678 OPC_MoveParent,
13679 OPC_MoveParent,
13680 OPC_RecordChild1,
13681 OPC_CheckType, 51,
13682 OPC_CheckPatternPredicate1,
13683 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_H),
13684 51, 2, 1, 0,
13685 23,
13686 OPC_MoveChild0,
13687 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13688 OPC_CheckPredicate, 15,
13689 OPC_MoveParent,
13690 OPC_RecordChild1,
13691 OPC_CheckType, 51,
13692 OPC_MoveParent,
13693 OPC_MoveParent,
13694 OPC_RecordChild1,
13695 OPC_CheckType, 51,
13696 OPC_CheckPatternPredicate1,
13697 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_H),
13698 51, 2, 1, 0,
13699 0,
13700 37,
13701 OPC_RecordChild0,
13702 OPC_MoveChild1,
13703 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13704 OPC_MoveChild0,
13705 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13706 OPC_CheckPredicate, 12,
13707 OPC_MoveSibling1,
13708 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13709 OPC_MoveChild0,
13710 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13711 OPC_CheckPredicate, 16,
13712 OPC_MoveParent,
13713 OPC_RecordChild1,
13714 OPC_CheckType, 62,
13715 OPC_MoveParent,
13716 OPC_MoveParent,
13717 OPC_CheckType, 62,
13718 OPC_CheckPatternPredicate1,
13719 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_W),
13720 62, 2, 0, 1,
13721 64,
13722 OPC_MoveChild0,
13723 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13724 OPC_MoveChild0,
13725 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13726 OPC_CheckPredicate, 12,
13727 OPC_MoveSibling1,
13728 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13729 OPC_Scope, 23,
13730 OPC_RecordChild0,
13731 OPC_MoveChild1,
13732 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13733 OPC_CheckPredicate, 16,
13734 OPC_MoveParent,
13735 OPC_CheckType, 62,
13736 OPC_MoveParent,
13737 OPC_MoveParent,
13738 OPC_RecordChild1,
13739 OPC_CheckType, 62,
13740 OPC_CheckPatternPredicate1,
13741 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_W),
13742 62, 2, 1, 0,
13743 23,
13744 OPC_MoveChild0,
13745 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13746 OPC_CheckPredicate, 16,
13747 OPC_MoveParent,
13748 OPC_RecordChild1,
13749 OPC_CheckType, 62,
13750 OPC_MoveParent,
13751 OPC_MoveParent,
13752 OPC_RecordChild1,
13753 OPC_CheckType, 62,
13754 OPC_CheckPatternPredicate1,
13755 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_W),
13756 62, 2, 1, 0,
13757 0,
13758 37,
13759 OPC_RecordChild0,
13760 OPC_MoveChild1,
13761 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13762 OPC_MoveChild0,
13763 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13764 OPC_CheckPredicate, 12,
13765 OPC_MoveSibling1,
13766 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13767 OPC_MoveChild0,
13768 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13769 OPC_CheckPredicate, 17,
13770 OPC_MoveParent,
13771 OPC_RecordChild1,
13772 OPC_CheckType, 81,
13773 OPC_MoveParent,
13774 OPC_MoveParent,
13775 OPC_CheckType, 81,
13776 OPC_CheckPatternPredicate1,
13777 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_D),
13778 81, 2, 0, 1,
13779 64,
13780 OPC_MoveChild0,
13781 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13782 OPC_MoveChild0,
13783 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13784 OPC_CheckPredicate, 12,
13785 OPC_MoveSibling1,
13786 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13787 OPC_Scope, 23,
13788 OPC_RecordChild0,
13789 OPC_MoveChild1,
13790 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13791 OPC_CheckPredicate, 17,
13792 OPC_MoveParent,
13793 OPC_CheckType, 81,
13794 OPC_MoveParent,
13795 OPC_MoveParent,
13796 OPC_RecordChild1,
13797 OPC_CheckType, 81,
13798 OPC_CheckPatternPredicate1,
13799 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_D),
13800 81, 2, 1, 0,
13801 23,
13802 OPC_MoveChild0,
13803 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13804 OPC_CheckPredicate, 17,
13805 OPC_MoveParent,
13806 OPC_RecordChild1,
13807 OPC_CheckType, 81,
13808 OPC_MoveParent,
13809 OPC_MoveParent,
13810 OPC_RecordChild1,
13811 OPC_CheckType, 81,
13812 OPC_CheckPatternPredicate1,
13813 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_D),
13814 81, 2, 1, 0,
13815 0,
13816 37,
13817 OPC_RecordChild0,
13818 OPC_MoveChild1,
13819 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13820 OPC_MoveChild0,
13821 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13822 OPC_CheckPredicate, 12,
13823 OPC_MoveSibling1,
13824 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13825 OPC_MoveChild0,
13826 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13827 OPC_CheckPredicate, 14,
13828 OPC_MoveParent,
13829 OPC_RecordChild1,
13830 OPC_CheckType, 41,
13831 OPC_MoveParent,
13832 OPC_MoveParent,
13833 OPC_CheckType, 41,
13834 OPC_CheckPatternPredicate0,
13835 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_B),
13836 41, 2, 0, 1,
13837 64,
13838 OPC_MoveChild0,
13839 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13840 OPC_MoveChild0,
13841 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13842 OPC_CheckPredicate, 12,
13843 OPC_MoveSibling1,
13844 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13845 OPC_Scope, 23,
13846 OPC_RecordChild0,
13847 OPC_MoveChild1,
13848 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13849 OPC_CheckPredicate, 14,
13850 OPC_MoveParent,
13851 OPC_CheckType, 41,
13852 OPC_MoveParent,
13853 OPC_MoveParent,
13854 OPC_RecordChild1,
13855 OPC_CheckType, 41,
13856 OPC_CheckPatternPredicate0,
13857 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_B),
13858 41, 2, 1, 0,
13859 23,
13860 OPC_MoveChild0,
13861 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13862 OPC_CheckPredicate, 14,
13863 OPC_MoveParent,
13864 OPC_RecordChild1,
13865 OPC_CheckType, 41,
13866 OPC_MoveParent,
13867 OPC_MoveParent,
13868 OPC_RecordChild1,
13869 OPC_CheckType, 41,
13870 OPC_CheckPatternPredicate0,
13871 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_B),
13872 41, 2, 1, 0,
13873 0,
13874 37,
13875 OPC_RecordChild0,
13876 OPC_MoveChild1,
13877 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13878 OPC_MoveChild0,
13879 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13880 OPC_CheckPredicate, 12,
13881 OPC_MoveSibling1,
13882 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13883 OPC_MoveChild0,
13884 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13885 OPC_CheckPredicate, 15,
13886 OPC_MoveParent,
13887 OPC_RecordChild1,
13888 OPC_CheckType, 52,
13889 OPC_MoveParent,
13890 OPC_MoveParent,
13891 OPC_CheckType, 52,
13892 OPC_CheckPatternPredicate0,
13893 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_H),
13894 52, 2, 0, 1,
13895 64,
13896 OPC_MoveChild0,
13897 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13898 OPC_MoveChild0,
13899 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13900 OPC_CheckPredicate, 12,
13901 OPC_MoveSibling1,
13902 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13903 OPC_Scope, 23,
13904 OPC_RecordChild0,
13905 OPC_MoveChild1,
13906 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13907 OPC_CheckPredicate, 15,
13908 OPC_MoveParent,
13909 OPC_CheckType, 52,
13910 OPC_MoveParent,
13911 OPC_MoveParent,
13912 OPC_RecordChild1,
13913 OPC_CheckType, 52,
13914 OPC_CheckPatternPredicate0,
13915 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_H),
13916 52, 2, 1, 0,
13917 23,
13918 OPC_MoveChild0,
13919 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13920 OPC_CheckPredicate, 15,
13921 OPC_MoveParent,
13922 OPC_RecordChild1,
13923 OPC_CheckType, 52,
13924 OPC_MoveParent,
13925 OPC_MoveParent,
13926 OPC_RecordChild1,
13927 OPC_CheckType, 52,
13928 OPC_CheckPatternPredicate0,
13929 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_H),
13930 52, 2, 1, 0,
13931 0,
13932 37,
13933 OPC_RecordChild0,
13934 OPC_MoveChild1,
13935 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13936 OPC_MoveChild0,
13937 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13938 OPC_CheckPredicate, 12,
13939 OPC_MoveSibling1,
13940 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13941 OPC_MoveChild0,
13942 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13943 OPC_CheckPredicate, 16,
13944 OPC_MoveParent,
13945 OPC_RecordChild1,
13946 OPC_CheckType, 66,
13947 OPC_MoveParent,
13948 OPC_MoveParent,
13949 OPC_CheckType, 66,
13950 OPC_CheckPatternPredicate0,
13951 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_W),
13952 66, 2, 0, 1,
13953 64,
13954 OPC_MoveChild0,
13955 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13956 OPC_MoveChild0,
13957 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13958 OPC_CheckPredicate, 12,
13959 OPC_MoveSibling1,
13960 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13961 OPC_Scope, 23,
13962 OPC_RecordChild0,
13963 OPC_MoveChild1,
13964 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13965 OPC_CheckPredicate, 16,
13966 OPC_MoveParent,
13967 OPC_CheckType, 66,
13968 OPC_MoveParent,
13969 OPC_MoveParent,
13970 OPC_RecordChild1,
13971 OPC_CheckType, 66,
13972 OPC_CheckPatternPredicate0,
13973 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_W),
13974 66, 2, 1, 0,
13975 23,
13976 OPC_MoveChild0,
13977 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13978 OPC_CheckPredicate, 16,
13979 OPC_MoveParent,
13980 OPC_RecordChild1,
13981 OPC_CheckType, 66,
13982 OPC_MoveParent,
13983 OPC_MoveParent,
13984 OPC_RecordChild1,
13985 OPC_CheckType, 66,
13986 OPC_CheckPatternPredicate0,
13987 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_W),
13988 66, 2, 1, 0,
13989 0,
13990 37,
13991 OPC_RecordChild0,
13992 OPC_MoveChild1,
13993 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
13994 OPC_MoveChild0,
13995 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
13996 OPC_CheckPredicate, 12,
13997 OPC_MoveSibling1,
13998 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
13999 OPC_MoveChild0,
14000 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14001 OPC_CheckPredicate, 17,
14002 OPC_MoveParent,
14003 OPC_RecordChild1,
14004 OPC_CheckType, 83,
14005 OPC_MoveParent,
14006 OPC_MoveParent,
14007 OPC_CheckType, 83,
14008 OPC_CheckPatternPredicate0,
14009 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_D),
14010 83, 2, 0, 1,
14011 116,
14012 OPC_MoveChild0,
14013 OPC_SwitchOpcode , 60, TARGET_VAL(ISD::SHL),
14014 OPC_MoveChild0,
14015 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14016 OPC_CheckPredicate, 12,
14017 OPC_MoveSibling1,
14018 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
14019 OPC_Scope, 23,
14020 OPC_RecordChild0,
14021 OPC_MoveChild1,
14022 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14023 OPC_CheckPredicate, 17,
14024 OPC_MoveParent,
14025 OPC_CheckType, 83,
14026 OPC_MoveParent,
14027 OPC_MoveParent,
14028 OPC_RecordChild1,
14029 OPC_CheckType, 83,
14030 OPC_CheckPatternPredicate0,
14031 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_D),
14032 83, 2, 1, 0,
14033 23,
14034 OPC_MoveChild0,
14035 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14036 OPC_CheckPredicate, 17,
14037 OPC_MoveParent,
14038 OPC_RecordChild1,
14039 OPC_CheckType, 83,
14040 OPC_MoveParent,
14041 OPC_MoveParent,
14042 OPC_RecordChild1,
14043 OPC_CheckType, 83,
14044 OPC_CheckPatternPredicate0,
14045 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_D),
14046 83, 2, 1, 0,
14047 0,
14048 47, TARGET_VAL(ISD::OR),
14049 OPC_RecordChild0,
14050 OPC_RecordChild1,
14051 OPC_MoveSibling1,
14052 OPC_CheckImmAllOnesV,
14053 OPC_MoveParent,
14054 OPC_SwitchType , 8, 40,
14055 OPC_CheckPatternPredicate1,
14056 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VNOR_V),
14057 40, 2, 0, 1,
14058 8, 51,
14059 OPC_CheckPatternPredicate1,
14060 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VNOR_V),
14061 51, 2, 0, 1,
14062 8, 62,
14063 OPC_CheckPatternPredicate1,
14064 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VNOR_V),
14065 62, 2, 0, 1,
14066 8, 81,
14067 OPC_CheckPatternPredicate1,
14068 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VNOR_V),
14069 81, 2, 0, 1,
14070 0,
14071 0,
14072 71,
14073 OPC_RecordChild0,
14074 OPC_MoveChild1,
14075 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
14076 OPC_MoveChild0,
14077 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14078 OPC_CheckPredicate, 12,
14079 OPC_MoveParent,
14080 OPC_RecordChild1,
14081 OPC_Scope, 13,
14082 OPC_CheckChild1Type, 40,
14083 OPC_MoveParent,
14084 OPC_CheckType, 40,
14085 OPC_CheckPatternPredicate1,
14086 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_B),
14087 40, 2, 0, 1,
14088 13,
14089 OPC_CheckChild1Type, 51,
14090 OPC_MoveParent,
14091 OPC_CheckType, 51,
14092 OPC_CheckPatternPredicate1,
14093 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_H),
14094 51, 2, 0, 1,
14095 13,
14096 OPC_CheckChild1Type, 62,
14097 OPC_MoveParent,
14098 OPC_CheckType, 62,
14099 OPC_CheckPatternPredicate1,
14100 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_W),
14101 62, 2, 0, 1,
14102 13,
14103 OPC_CheckChild1Type, 81,
14104 OPC_MoveParent,
14105 OPC_CheckType, 81,
14106 OPC_CheckPatternPredicate1,
14107 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_D),
14108 81, 2, 0, 1,
14109 0,
14110 51,
14111 OPC_MoveChild0,
14112 OPC_CheckOpcode, TARGET_VAL(ISD::OR),
14113 OPC_RecordChild0,
14114 OPC_RecordChild1,
14115 OPC_MoveSibling1,
14116 OPC_CheckImmAllOnesV,
14117 OPC_MoveParent,
14118 OPC_SwitchType , 8, 41,
14119 OPC_CheckPatternPredicate0,
14120 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVNOR_V),
14121 41, 2, 0, 1,
14122 8, 52,
14123 OPC_CheckPatternPredicate0,
14124 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVNOR_V),
14125 52, 2, 0, 1,
14126 8, 66,
14127 OPC_CheckPatternPredicate0,
14128 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVNOR_V),
14129 66, 2, 0, 1,
14130 8, 83,
14131 OPC_CheckPatternPredicate0,
14132 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVNOR_V),
14133 83, 2, 0, 1,
14134 0,
14135 71,
14136 OPC_RecordChild0,
14137 OPC_MoveChild1,
14138 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
14139 OPC_MoveChild0,
14140 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14141 OPC_CheckPredicate, 12,
14142 OPC_MoveParent,
14143 OPC_RecordChild1,
14144 OPC_Scope, 13,
14145 OPC_CheckChild1Type, 41,
14146 OPC_MoveParent,
14147 OPC_CheckType, 41,
14148 OPC_CheckPatternPredicate0,
14149 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_B),
14150 41, 2, 0, 1,
14151 13,
14152 OPC_CheckChild1Type, 52,
14153 OPC_MoveParent,
14154 OPC_CheckType, 52,
14155 OPC_CheckPatternPredicate0,
14156 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_H),
14157 52, 2, 0, 1,
14158 13,
14159 OPC_CheckChild1Type, 66,
14160 OPC_MoveParent,
14161 OPC_CheckType, 66,
14162 OPC_CheckPatternPredicate0,
14163 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_W),
14164 66, 2, 0, 1,
14165 13,
14166 OPC_CheckChild1Type, 83,
14167 OPC_MoveParent,
14168 OPC_CheckType, 83,
14169 OPC_CheckPatternPredicate0,
14170 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_D),
14171 83, 2, 0, 1,
14172 0,
14173 6|128,1,
14174 OPC_MoveChild0,
14175 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
14176 OPC_MoveChild0,
14177 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14178 OPC_CheckPredicate, 12,
14179 OPC_MoveParent,
14180 OPC_RecordChild1,
14181 OPC_Scope, 14,
14182 OPC_CheckChild1Type, 40,
14183 OPC_MoveParent,
14184 OPC_RecordChild1,
14185 OPC_CheckType, 40,
14186 OPC_CheckPatternPredicate1,
14187 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_B),
14188 40, 2, 1, 0,
14189 14,
14190 OPC_CheckChild1Type, 51,
14191 OPC_MoveParent,
14192 OPC_RecordChild1,
14193 OPC_CheckType, 51,
14194 OPC_CheckPatternPredicate1,
14195 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_H),
14196 51, 2, 1, 0,
14197 14,
14198 OPC_CheckChild1Type, 62,
14199 OPC_MoveParent,
14200 OPC_RecordChild1,
14201 OPC_CheckType, 62,
14202 OPC_CheckPatternPredicate1,
14203 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_W),
14204 62, 2, 1, 0,
14205 14,
14206 OPC_CheckChild1Type, 81,
14207 OPC_MoveParent,
14208 OPC_RecordChild1,
14209 OPC_CheckType, 81,
14210 OPC_CheckPatternPredicate1,
14211 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREV_D),
14212 81, 2, 1, 0,
14213 14,
14214 OPC_CheckChild1Type, 41,
14215 OPC_MoveParent,
14216 OPC_RecordChild1,
14217 OPC_CheckType, 41,
14218 OPC_CheckPatternPredicate0,
14219 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_B),
14220 41, 2, 1, 0,
14221 14,
14222 OPC_CheckChild1Type, 52,
14223 OPC_MoveParent,
14224 OPC_RecordChild1,
14225 OPC_CheckType, 52,
14226 OPC_CheckPatternPredicate0,
14227 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_H),
14228 52, 2, 1, 0,
14229 14,
14230 OPC_CheckChild1Type, 66,
14231 OPC_MoveParent,
14232 OPC_RecordChild1,
14233 OPC_CheckType, 66,
14234 OPC_CheckPatternPredicate0,
14235 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_W),
14236 66, 2, 1, 0,
14237 14,
14238 OPC_CheckChild1Type, 83,
14239 OPC_MoveParent,
14240 OPC_RecordChild1,
14241 OPC_CheckType, 83,
14242 OPC_CheckPatternPredicate0,
14243 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREV_D),
14244 83, 2, 1, 0,
14245 0,
14246 36|128,4,
14247 OPC_RecordChild0,
14248 OPC_RecordChild1,
14249 OPC_SwitchType , 99, 40,
14250 OPC_Scope, 10,
14251 OPC_CheckPatternPredicate2,
14252 OPC_CheckComplexPat5, /*#*/1,
14253 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_B),
14254 40, 2, 0, 2,
14255 10,
14256 OPC_CheckPatternPredicate4,
14257 OPC_CheckComplexPat5, /*#*/1,
14258 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_B),
14259 40, 2, 0, 2,
14260 10,
14261 OPC_CheckPatternPredicate2,
14262 OPC_CheckComplexPat5, /*#*/0,
14263 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_B),
14264 40, 2, 1, 2,
14265 10,
14266 OPC_CheckPatternPredicate4,
14267 OPC_CheckComplexPat5, /*#*/0,
14268 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_B),
14269 40, 2, 1, 2,
14270 10,
14271 OPC_CheckPatternPredicate2,
14272 OPC_CheckComplexPat7, /*#*/1,
14273 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VXORI_B),
14274 40, 2, 0, 2,
14275 10,
14276 OPC_CheckPatternPredicate4,
14277 OPC_CheckComplexPat7, /*#*/1,
14278 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VXORI_B),
14279 40, 2, 0, 2,
14280 10,
14281 OPC_CheckPatternPredicate2,
14282 OPC_CheckComplexPat7, /*#*/0,
14283 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VXORI_B),
14284 40, 2, 1, 2,
14285 10,
14286 OPC_CheckPatternPredicate4,
14287 OPC_CheckComplexPat7, /*#*/0,
14288 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VXORI_B),
14289 40, 2, 1, 2,
14290 8,
14291 OPC_CheckPatternPredicate1,
14292 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VXOR_V),
14293 40, 2, 0, 1,
14294 0,
14295 55, 51,
14296 OPC_Scope, 10,
14297 OPC_CheckPatternPredicate2,
14298 OPC_CheckComplexPat5, /*#*/1,
14299 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_H),
14300 51, 2, 0, 2,
14301 10,
14302 OPC_CheckPatternPredicate4,
14303 OPC_CheckComplexPat5, /*#*/1,
14304 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_H),
14305 51, 2, 0, 2,
14306 10,
14307 OPC_CheckPatternPredicate2,
14308 OPC_CheckComplexPat5, /*#*/0,
14309 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_H),
14310 51, 2, 1, 2,
14311 10,
14312 OPC_CheckPatternPredicate4,
14313 OPC_CheckComplexPat5, /*#*/0,
14314 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_H),
14315 51, 2, 1, 2,
14316 8,
14317 OPC_CheckPatternPredicate1,
14318 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VXOR_V),
14319 51, 2, 0, 1,
14320 0,
14321 55, 62,
14322 OPC_Scope, 10,
14323 OPC_CheckPatternPredicate2,
14324 OPC_CheckComplexPat5, /*#*/1,
14325 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_W),
14326 62, 2, 0, 2,
14327 10,
14328 OPC_CheckPatternPredicate4,
14329 OPC_CheckComplexPat5, /*#*/1,
14330 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_W),
14331 62, 2, 0, 2,
14332 10,
14333 OPC_CheckPatternPredicate2,
14334 OPC_CheckComplexPat5, /*#*/0,
14335 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_W),
14336 62, 2, 1, 2,
14337 10,
14338 OPC_CheckPatternPredicate4,
14339 OPC_CheckComplexPat5, /*#*/0,
14340 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_W),
14341 62, 2, 1, 2,
14342 8,
14343 OPC_CheckPatternPredicate1,
14344 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VXOR_V),
14345 62, 2, 0, 1,
14346 0,
14347 55, 81,
14348 OPC_Scope, 10,
14349 OPC_CheckPatternPredicate2,
14350 OPC_CheckComplexPat5, /*#*/1,
14351 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_D),
14352 81, 2, 0, 2,
14353 10,
14354 OPC_CheckPatternPredicate4,
14355 OPC_CheckComplexPat5, /*#*/1,
14356 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_D),
14357 81, 2, 0, 2,
14358 10,
14359 OPC_CheckPatternPredicate2,
14360 OPC_CheckComplexPat5, /*#*/0,
14361 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_D),
14362 81, 2, 1, 2,
14363 10,
14364 OPC_CheckPatternPredicate4,
14365 OPC_CheckComplexPat5, /*#*/0,
14366 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_D),
14367 81, 2, 1, 2,
14368 8,
14369 OPC_CheckPatternPredicate1,
14370 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VXOR_V),
14371 81, 2, 0, 1,
14372 0,
14373 99, 41,
14374 OPC_Scope, 10,
14375 OPC_CheckPatternPredicate3,
14376 OPC_CheckComplexPat5, /*#*/1,
14377 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_B),
14378 41, 2, 0, 2,
14379 10,
14380 OPC_CheckPatternPredicate5,
14381 OPC_CheckComplexPat5, /*#*/1,
14382 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_B),
14383 41, 2, 0, 2,
14384 10,
14385 OPC_CheckPatternPredicate3,
14386 OPC_CheckComplexPat5, /*#*/0,
14387 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_B),
14388 41, 2, 1, 2,
14389 10,
14390 OPC_CheckPatternPredicate5,
14391 OPC_CheckComplexPat5, /*#*/0,
14392 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_B),
14393 41, 2, 1, 2,
14394 10,
14395 OPC_CheckPatternPredicate3,
14396 OPC_CheckComplexPat7, /*#*/1,
14397 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVXORI_B),
14398 41, 2, 0, 2,
14399 10,
14400 OPC_CheckPatternPredicate5,
14401 OPC_CheckComplexPat7, /*#*/1,
14402 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVXORI_B),
14403 41, 2, 0, 2,
14404 10,
14405 OPC_CheckPatternPredicate3,
14406 OPC_CheckComplexPat7, /*#*/0,
14407 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVXORI_B),
14408 41, 2, 1, 2,
14409 10,
14410 OPC_CheckPatternPredicate5,
14411 OPC_CheckComplexPat7, /*#*/0,
14412 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVXORI_B),
14413 41, 2, 1, 2,
14414 8,
14415 OPC_CheckPatternPredicate0,
14416 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVXOR_V),
14417 41, 2, 0, 1,
14418 0,
14419 55, 52,
14420 OPC_Scope, 10,
14421 OPC_CheckPatternPredicate3,
14422 OPC_CheckComplexPat5, /*#*/1,
14423 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_H),
14424 52, 2, 0, 2,
14425 10,
14426 OPC_CheckPatternPredicate5,
14427 OPC_CheckComplexPat5, /*#*/1,
14428 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_H),
14429 52, 2, 0, 2,
14430 10,
14431 OPC_CheckPatternPredicate3,
14432 OPC_CheckComplexPat5, /*#*/0,
14433 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_H),
14434 52, 2, 1, 2,
14435 10,
14436 OPC_CheckPatternPredicate5,
14437 OPC_CheckComplexPat5, /*#*/0,
14438 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_H),
14439 52, 2, 1, 2,
14440 8,
14441 OPC_CheckPatternPredicate0,
14442 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVXOR_V),
14443 52, 2, 0, 1,
14444 0,
14445 55, 66,
14446 OPC_Scope, 10,
14447 OPC_CheckPatternPredicate3,
14448 OPC_CheckComplexPat5, /*#*/1,
14449 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_W),
14450 66, 2, 0, 2,
14451 10,
14452 OPC_CheckPatternPredicate5,
14453 OPC_CheckComplexPat5, /*#*/1,
14454 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_W),
14455 66, 2, 0, 2,
14456 10,
14457 OPC_CheckPatternPredicate3,
14458 OPC_CheckComplexPat5, /*#*/0,
14459 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_W),
14460 66, 2, 1, 2,
14461 10,
14462 OPC_CheckPatternPredicate5,
14463 OPC_CheckComplexPat5, /*#*/0,
14464 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_W),
14465 66, 2, 1, 2,
14466 8,
14467 OPC_CheckPatternPredicate0,
14468 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVXOR_V),
14469 66, 2, 0, 1,
14470 0,
14471 55, 83,
14472 OPC_Scope, 10,
14473 OPC_CheckPatternPredicate3,
14474 OPC_CheckComplexPat5, /*#*/1,
14475 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_D),
14476 83, 2, 0, 2,
14477 10,
14478 OPC_CheckPatternPredicate5,
14479 OPC_CheckComplexPat5, /*#*/1,
14480 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_D),
14481 83, 2, 0, 2,
14482 10,
14483 OPC_CheckPatternPredicate3,
14484 OPC_CheckComplexPat5, /*#*/0,
14485 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_D),
14486 83, 2, 1, 2,
14487 10,
14488 OPC_CheckPatternPredicate5,
14489 OPC_CheckComplexPat5, /*#*/0,
14490 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_D),
14491 83, 2, 1, 2,
14492 8,
14493 OPC_CheckPatternPredicate0,
14494 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVXOR_V),
14495 83, 2, 0, 1,
14496 0,
14497 0,
14498 0,
14499 72|128,17, TARGET_VAL(ISD::AND),
14500 OPC_Scope, 32,
14501 OPC_RecordChild0,
14502 OPC_MoveChild1,
14503 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
14504 OPC_RecordChild0,
14505 OPC_CheckChild1Integer, 3,
14506 OPC_MoveParent,
14507 OPC_SwitchType , 8, 8,
14508 OPC_CheckPatternPredicate7,
14509 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ANDN),
14510 8, 2, 0, 1,
14511 9, 7,
14512 OPC_CheckPatternPredicate, 8,
14513 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ANDN),
14514 7, 2, 0, 1,
14515 0,
14516 32,
14517 OPC_MoveChild0,
14518 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
14519 OPC_RecordChild0,
14520 OPC_CheckChild1Integer, 3,
14521 OPC_MoveParent,
14522 OPC_RecordChild1,
14523 OPC_SwitchType , 8, 8,
14524 OPC_CheckPatternPredicate7,
14525 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ANDN),
14526 8, 2, 1, 0,
14527 9, 7,
14528 OPC_CheckPatternPredicate, 8,
14529 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ANDN),
14530 7, 2, 1, 0,
14531 0,
14532 8|128,3,
14533 OPC_RecordChild0,
14534 OPC_Scope, 34|128,1,
14535 OPC_RecordChild1,
14536 OPC_Scope, 8|128,1,
14537 OPC_MoveChild1,
14538 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
14539 OPC_Scope, 28,
14540 OPC_CheckPredicate, 49,
14541 OPC_MoveParent,
14542 OPC_SwitchType , 9, 8,
14543 OPC_CheckPatternPredicate7,
14544 OPC_EmitConvertToTarget1,
14545 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ANDI),
14546 8, 2, 0, 2,
14547 10, 7,
14548 OPC_CheckPatternPredicate, 8,
14549 OPC_EmitConvertToTarget1,
14550 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ANDI),
14551 7, 2, 0, 2,
14552 0,
14553 100,
14554 OPC_CheckPredicate, 66,
14555 OPC_MoveParent,
14556 OPC_SwitchType , 45, 8,
14557 OPC_Scope, 21,
14558 OPC_CheckPatternPredicate, 20,
14559 OPC_EmitRegisterI64, LoongArch::R0,
14560 OPC_EmitConvertToTarget1,
14561 OPC_EmitNodeXForm, 8, 3,
14562 OPC_EmitConvertToTarget1,
14563 OPC_EmitNodeXForm, 9, 5,
14564 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRINS_W),
14565 8, 4, 0, 2, 4, 6,
14566 20,
14567 OPC_CheckPatternPredicate6,
14568 OPC_EmitRegisterI64, LoongArch::R0,
14569 OPC_EmitConvertToTarget1,
14570 OPC_EmitNodeXForm, 8, 3,
14571 OPC_EmitConvertToTarget1,
14572 OPC_EmitNodeXForm, 9, 5,
14573 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRINS_D),
14574 8, 4, 0, 2, 4, 6,
14575 0,
14576 46, 7,
14577 OPC_Scope, 21,
14578 OPC_CheckPatternPredicate, 16,
14579 OPC_EmitRegisterI32, LoongArch::R0,
14580 OPC_EmitConvertToTarget1,
14581 OPC_EmitNodeXForm, 8, 3,
14582 OPC_EmitConvertToTarget1,
14583 OPC_EmitNodeXForm, 9, 5,
14584 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRINS_W),
14585 7, 4, 0, 2, 4, 6,
14586 21,
14587 OPC_CheckPatternPredicate, 9,
14588 OPC_EmitRegisterI32, LoongArch::R0,
14589 OPC_EmitConvertToTarget1,
14590 OPC_EmitNodeXForm, 8, 3,
14591 OPC_EmitConvertToTarget1,
14592 OPC_EmitNodeXForm, 9, 5,
14593 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRINS_D),
14594 7, 4, 0, 2, 4, 6,
14595 0,
14596 0,
14597 0,
14598 9,
14599 OPC_CheckTypeI64,
14600 OPC_CheckPatternPredicate7,
14601 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::AND),
14602 8, 2, 0, 1,
14603 10,
14604 OPC_CheckTypeI32,
14605 OPC_CheckPatternPredicate, 8,
14606 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::AND),
14607 7, 2, 0, 1,
14608 0,
14609 95|128,1,
14610 OPC_MoveChild1,
14611 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
14612 OPC_MoveChild0,
14613 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
14614 OPC_MoveChild0,
14615 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14616 OPC_CheckPredicate, 12,
14617 OPC_MoveSibling1,
14618 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
14619 OPC_Scope, 47|128,1,
14620 OPC_RecordChild0,
14621 OPC_MoveChild1,
14622 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14623 OPC_Scope, 20,
14624 OPC_CheckPredicate, 14,
14625 OPC_MoveParent,
14626 OPC_CheckType, 40,
14627 OPC_MoveParent,
14628 OPC_MoveSibling1,
14629 OPC_CheckImmAllOnesV,
14630 OPC_MoveParent,
14631 OPC_MoveParent,
14632 OPC_CheckType, 40,
14633 OPC_CheckPatternPredicate1,
14634 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_B),
14635 40, 2, 0, 1,
14636 20,
14637 OPC_CheckPredicate, 15,
14638 OPC_MoveParent,
14639 OPC_CheckType, 51,
14640 OPC_MoveParent,
14641 OPC_MoveSibling1,
14642 OPC_CheckImmAllOnesV,
14643 OPC_MoveParent,
14644 OPC_MoveParent,
14645 OPC_CheckType, 51,
14646 OPC_CheckPatternPredicate1,
14647 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_H),
14648 51, 2, 0, 1,
14649 20,
14650 OPC_CheckPredicate, 16,
14651 OPC_MoveParent,
14652 OPC_CheckType, 62,
14653 OPC_MoveParent,
14654 OPC_MoveSibling1,
14655 OPC_CheckImmAllOnesV,
14656 OPC_MoveParent,
14657 OPC_MoveParent,
14658 OPC_CheckType, 62,
14659 OPC_CheckPatternPredicate1,
14660 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_W),
14661 62, 2, 0, 1,
14662 20,
14663 OPC_CheckPredicate, 17,
14664 OPC_MoveParent,
14665 OPC_CheckType, 81,
14666 OPC_MoveParent,
14667 OPC_MoveSibling1,
14668 OPC_CheckImmAllOnesV,
14669 OPC_MoveParent,
14670 OPC_MoveParent,
14671 OPC_CheckType, 81,
14672 OPC_CheckPatternPredicate1,
14673 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_D),
14674 81, 2, 0, 1,
14675 20,
14676 OPC_CheckPredicate, 14,
14677 OPC_MoveParent,
14678 OPC_CheckType, 41,
14679 OPC_MoveParent,
14680 OPC_MoveSibling1,
14681 OPC_CheckImmAllOnesV,
14682 OPC_MoveParent,
14683 OPC_MoveParent,
14684 OPC_CheckType, 41,
14685 OPC_CheckPatternPredicate0,
14686 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_B),
14687 41, 2, 0, 1,
14688 20,
14689 OPC_CheckPredicate, 15,
14690 OPC_MoveParent,
14691 OPC_CheckType, 52,
14692 OPC_MoveParent,
14693 OPC_MoveSibling1,
14694 OPC_CheckImmAllOnesV,
14695 OPC_MoveParent,
14696 OPC_MoveParent,
14697 OPC_CheckType, 52,
14698 OPC_CheckPatternPredicate0,
14699 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_H),
14700 52, 2, 0, 1,
14701 20,
14702 OPC_CheckPredicate, 16,
14703 OPC_MoveParent,
14704 OPC_CheckType, 66,
14705 OPC_MoveParent,
14706 OPC_MoveSibling1,
14707 OPC_CheckImmAllOnesV,
14708 OPC_MoveParent,
14709 OPC_MoveParent,
14710 OPC_CheckType, 66,
14711 OPC_CheckPatternPredicate0,
14712 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_W),
14713 66, 2, 0, 1,
14714 20,
14715 OPC_CheckPredicate, 17,
14716 OPC_MoveParent,
14717 OPC_CheckType, 83,
14718 OPC_MoveParent,
14719 OPC_MoveSibling1,
14720 OPC_CheckImmAllOnesV,
14721 OPC_MoveParent,
14722 OPC_MoveParent,
14723 OPC_CheckType, 83,
14724 OPC_CheckPatternPredicate0,
14725 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_D),
14726 83, 2, 0, 1,
14727 0,
14728 25,
14729 OPC_MoveChild0,
14730 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14731 OPC_CheckPredicate, 14,
14732 OPC_MoveParent,
14733 OPC_RecordChild1,
14734 OPC_CheckType, 40,
14735 OPC_MoveParent,
14736 OPC_MoveSibling1,
14737 OPC_CheckImmAllOnesV,
14738 OPC_MoveParent,
14739 OPC_MoveParent,
14740 OPC_CheckType, 40,
14741 OPC_CheckPatternPredicate1,
14742 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_B),
14743 40, 2, 0, 1,
14744 0,
14745 0,
14746 74,
14747 OPC_MoveChild0,
14748 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
14749 OPC_MoveChild0,
14750 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
14751 OPC_MoveChild0,
14752 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14753 OPC_CheckPredicate, 12,
14754 OPC_MoveSibling1,
14755 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
14756 OPC_Scope, 26,
14757 OPC_RecordChild0,
14758 OPC_MoveChild1,
14759 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14760 OPC_CheckPredicate, 14,
14761 OPC_MoveParent,
14762 OPC_CheckType, 40,
14763 OPC_MoveParent,
14764 OPC_MoveSibling1,
14765 OPC_CheckImmAllOnesV,
14766 OPC_MoveParent,
14767 OPC_MoveParent,
14768 OPC_RecordChild1,
14769 OPC_CheckType, 40,
14770 OPC_CheckPatternPredicate1,
14771 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_B),
14772 40, 2, 1, 0,
14773 26,
14774 OPC_MoveChild0,
14775 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14776 OPC_CheckPredicate, 14,
14777 OPC_MoveParent,
14778 OPC_RecordChild1,
14779 OPC_CheckType, 40,
14780 OPC_MoveParent,
14781 OPC_MoveSibling1,
14782 OPC_CheckImmAllOnesV,
14783 OPC_MoveParent,
14784 OPC_MoveParent,
14785 OPC_RecordChild1,
14786 OPC_CheckType, 40,
14787 OPC_CheckPatternPredicate1,
14788 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_B),
14789 40, 2, 1, 0,
14790 0,
14791 44,
14792 OPC_RecordChild0,
14793 OPC_MoveChild1,
14794 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
14795 OPC_MoveChild0,
14796 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
14797 OPC_MoveChild0,
14798 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14799 OPC_CheckPredicate, 12,
14800 OPC_MoveSibling1,
14801 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
14802 OPC_MoveChild0,
14803 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14804 OPC_CheckPredicate, 15,
14805 OPC_MoveParent,
14806 OPC_RecordChild1,
14807 OPC_CheckType, 51,
14808 OPC_MoveParent,
14809 OPC_MoveSibling1,
14810 OPC_CheckImmAllOnesV,
14811 OPC_MoveParent,
14812 OPC_MoveParent,
14813 OPC_CheckType, 51,
14814 OPC_CheckPatternPredicate1,
14815 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_H),
14816 51, 2, 0, 1,
14817 74,
14818 OPC_MoveChild0,
14819 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
14820 OPC_MoveChild0,
14821 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
14822 OPC_MoveChild0,
14823 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14824 OPC_CheckPredicate, 12,
14825 OPC_MoveSibling1,
14826 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
14827 OPC_Scope, 26,
14828 OPC_RecordChild0,
14829 OPC_MoveChild1,
14830 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14831 OPC_CheckPredicate, 15,
14832 OPC_MoveParent,
14833 OPC_CheckType, 51,
14834 OPC_MoveParent,
14835 OPC_MoveSibling1,
14836 OPC_CheckImmAllOnesV,
14837 OPC_MoveParent,
14838 OPC_MoveParent,
14839 OPC_RecordChild1,
14840 OPC_CheckType, 51,
14841 OPC_CheckPatternPredicate1,
14842 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_H),
14843 51, 2, 1, 0,
14844 26,
14845 OPC_MoveChild0,
14846 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14847 OPC_CheckPredicate, 15,
14848 OPC_MoveParent,
14849 OPC_RecordChild1,
14850 OPC_CheckType, 51,
14851 OPC_MoveParent,
14852 OPC_MoveSibling1,
14853 OPC_CheckImmAllOnesV,
14854 OPC_MoveParent,
14855 OPC_MoveParent,
14856 OPC_RecordChild1,
14857 OPC_CheckType, 51,
14858 OPC_CheckPatternPredicate1,
14859 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_H),
14860 51, 2, 1, 0,
14861 0,
14862 44,
14863 OPC_RecordChild0,
14864 OPC_MoveChild1,
14865 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
14866 OPC_MoveChild0,
14867 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
14868 OPC_MoveChild0,
14869 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14870 OPC_CheckPredicate, 12,
14871 OPC_MoveSibling1,
14872 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
14873 OPC_MoveChild0,
14874 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14875 OPC_CheckPredicate, 16,
14876 OPC_MoveParent,
14877 OPC_RecordChild1,
14878 OPC_CheckType, 62,
14879 OPC_MoveParent,
14880 OPC_MoveSibling1,
14881 OPC_CheckImmAllOnesV,
14882 OPC_MoveParent,
14883 OPC_MoveParent,
14884 OPC_CheckType, 62,
14885 OPC_CheckPatternPredicate1,
14886 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_W),
14887 62, 2, 0, 1,
14888 74,
14889 OPC_MoveChild0,
14890 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
14891 OPC_MoveChild0,
14892 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
14893 OPC_MoveChild0,
14894 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14895 OPC_CheckPredicate, 12,
14896 OPC_MoveSibling1,
14897 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
14898 OPC_Scope, 26,
14899 OPC_RecordChild0,
14900 OPC_MoveChild1,
14901 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14902 OPC_CheckPredicate, 16,
14903 OPC_MoveParent,
14904 OPC_CheckType, 62,
14905 OPC_MoveParent,
14906 OPC_MoveSibling1,
14907 OPC_CheckImmAllOnesV,
14908 OPC_MoveParent,
14909 OPC_MoveParent,
14910 OPC_RecordChild1,
14911 OPC_CheckType, 62,
14912 OPC_CheckPatternPredicate1,
14913 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_W),
14914 62, 2, 1, 0,
14915 26,
14916 OPC_MoveChild0,
14917 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14918 OPC_CheckPredicate, 16,
14919 OPC_MoveParent,
14920 OPC_RecordChild1,
14921 OPC_CheckType, 62,
14922 OPC_MoveParent,
14923 OPC_MoveSibling1,
14924 OPC_CheckImmAllOnesV,
14925 OPC_MoveParent,
14926 OPC_MoveParent,
14927 OPC_RecordChild1,
14928 OPC_CheckType, 62,
14929 OPC_CheckPatternPredicate1,
14930 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_W),
14931 62, 2, 1, 0,
14932 0,
14933 44,
14934 OPC_RecordChild0,
14935 OPC_MoveChild1,
14936 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
14937 OPC_MoveChild0,
14938 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
14939 OPC_MoveChild0,
14940 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14941 OPC_CheckPredicate, 12,
14942 OPC_MoveSibling1,
14943 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
14944 OPC_MoveChild0,
14945 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14946 OPC_CheckPredicate, 17,
14947 OPC_MoveParent,
14948 OPC_RecordChild1,
14949 OPC_CheckType, 81,
14950 OPC_MoveParent,
14951 OPC_MoveSibling1,
14952 OPC_CheckImmAllOnesV,
14953 OPC_MoveParent,
14954 OPC_MoveParent,
14955 OPC_CheckType, 81,
14956 OPC_CheckPatternPredicate1,
14957 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_D),
14958 81, 2, 0, 1,
14959 74,
14960 OPC_MoveChild0,
14961 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
14962 OPC_MoveChild0,
14963 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
14964 OPC_MoveChild0,
14965 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14966 OPC_CheckPredicate, 12,
14967 OPC_MoveSibling1,
14968 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
14969 OPC_Scope, 26,
14970 OPC_RecordChild0,
14971 OPC_MoveChild1,
14972 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14973 OPC_CheckPredicate, 17,
14974 OPC_MoveParent,
14975 OPC_CheckType, 81,
14976 OPC_MoveParent,
14977 OPC_MoveSibling1,
14978 OPC_CheckImmAllOnesV,
14979 OPC_MoveParent,
14980 OPC_MoveParent,
14981 OPC_RecordChild1,
14982 OPC_CheckType, 81,
14983 OPC_CheckPatternPredicate1,
14984 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_D),
14985 81, 2, 1, 0,
14986 26,
14987 OPC_MoveChild0,
14988 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
14989 OPC_CheckPredicate, 17,
14990 OPC_MoveParent,
14991 OPC_RecordChild1,
14992 OPC_CheckType, 81,
14993 OPC_MoveParent,
14994 OPC_MoveSibling1,
14995 OPC_CheckImmAllOnesV,
14996 OPC_MoveParent,
14997 OPC_MoveParent,
14998 OPC_RecordChild1,
14999 OPC_CheckType, 81,
15000 OPC_CheckPatternPredicate1,
15001 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_D),
15002 81, 2, 1, 0,
15003 0,
15004 44,
15005 OPC_RecordChild0,
15006 OPC_MoveChild1,
15007 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15008 OPC_MoveChild0,
15009 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
15010 OPC_MoveChild0,
15011 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15012 OPC_CheckPredicate, 12,
15013 OPC_MoveSibling1,
15014 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
15015 OPC_MoveChild0,
15016 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15017 OPC_CheckPredicate, 14,
15018 OPC_MoveParent,
15019 OPC_RecordChild1,
15020 OPC_CheckType, 41,
15021 OPC_MoveParent,
15022 OPC_MoveSibling1,
15023 OPC_CheckImmAllOnesV,
15024 OPC_MoveParent,
15025 OPC_MoveParent,
15026 OPC_CheckType, 41,
15027 OPC_CheckPatternPredicate0,
15028 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_B),
15029 41, 2, 0, 1,
15030 74,
15031 OPC_MoveChild0,
15032 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15033 OPC_MoveChild0,
15034 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
15035 OPC_MoveChild0,
15036 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15037 OPC_CheckPredicate, 12,
15038 OPC_MoveSibling1,
15039 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
15040 OPC_Scope, 26,
15041 OPC_RecordChild0,
15042 OPC_MoveChild1,
15043 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15044 OPC_CheckPredicate, 14,
15045 OPC_MoveParent,
15046 OPC_CheckType, 41,
15047 OPC_MoveParent,
15048 OPC_MoveSibling1,
15049 OPC_CheckImmAllOnesV,
15050 OPC_MoveParent,
15051 OPC_MoveParent,
15052 OPC_RecordChild1,
15053 OPC_CheckType, 41,
15054 OPC_CheckPatternPredicate0,
15055 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_B),
15056 41, 2, 1, 0,
15057 26,
15058 OPC_MoveChild0,
15059 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15060 OPC_CheckPredicate, 14,
15061 OPC_MoveParent,
15062 OPC_RecordChild1,
15063 OPC_CheckType, 41,
15064 OPC_MoveParent,
15065 OPC_MoveSibling1,
15066 OPC_CheckImmAllOnesV,
15067 OPC_MoveParent,
15068 OPC_MoveParent,
15069 OPC_RecordChild1,
15070 OPC_CheckType, 41,
15071 OPC_CheckPatternPredicate0,
15072 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_B),
15073 41, 2, 1, 0,
15074 0,
15075 44,
15076 OPC_RecordChild0,
15077 OPC_MoveChild1,
15078 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15079 OPC_MoveChild0,
15080 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
15081 OPC_MoveChild0,
15082 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15083 OPC_CheckPredicate, 12,
15084 OPC_MoveSibling1,
15085 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
15086 OPC_MoveChild0,
15087 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15088 OPC_CheckPredicate, 15,
15089 OPC_MoveParent,
15090 OPC_RecordChild1,
15091 OPC_CheckType, 52,
15092 OPC_MoveParent,
15093 OPC_MoveSibling1,
15094 OPC_CheckImmAllOnesV,
15095 OPC_MoveParent,
15096 OPC_MoveParent,
15097 OPC_CheckType, 52,
15098 OPC_CheckPatternPredicate0,
15099 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_H),
15100 52, 2, 0, 1,
15101 74,
15102 OPC_MoveChild0,
15103 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15104 OPC_MoveChild0,
15105 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
15106 OPC_MoveChild0,
15107 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15108 OPC_CheckPredicate, 12,
15109 OPC_MoveSibling1,
15110 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
15111 OPC_Scope, 26,
15112 OPC_RecordChild0,
15113 OPC_MoveChild1,
15114 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15115 OPC_CheckPredicate, 15,
15116 OPC_MoveParent,
15117 OPC_CheckType, 52,
15118 OPC_MoveParent,
15119 OPC_MoveSibling1,
15120 OPC_CheckImmAllOnesV,
15121 OPC_MoveParent,
15122 OPC_MoveParent,
15123 OPC_RecordChild1,
15124 OPC_CheckType, 52,
15125 OPC_CheckPatternPredicate0,
15126 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_H),
15127 52, 2, 1, 0,
15128 26,
15129 OPC_MoveChild0,
15130 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15131 OPC_CheckPredicate, 15,
15132 OPC_MoveParent,
15133 OPC_RecordChild1,
15134 OPC_CheckType, 52,
15135 OPC_MoveParent,
15136 OPC_MoveSibling1,
15137 OPC_CheckImmAllOnesV,
15138 OPC_MoveParent,
15139 OPC_MoveParent,
15140 OPC_RecordChild1,
15141 OPC_CheckType, 52,
15142 OPC_CheckPatternPredicate0,
15143 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_H),
15144 52, 2, 1, 0,
15145 0,
15146 44,
15147 OPC_RecordChild0,
15148 OPC_MoveChild1,
15149 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15150 OPC_MoveChild0,
15151 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
15152 OPC_MoveChild0,
15153 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15154 OPC_CheckPredicate, 12,
15155 OPC_MoveSibling1,
15156 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
15157 OPC_MoveChild0,
15158 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15159 OPC_CheckPredicate, 16,
15160 OPC_MoveParent,
15161 OPC_RecordChild1,
15162 OPC_CheckType, 66,
15163 OPC_MoveParent,
15164 OPC_MoveSibling1,
15165 OPC_CheckImmAllOnesV,
15166 OPC_MoveParent,
15167 OPC_MoveParent,
15168 OPC_CheckType, 66,
15169 OPC_CheckPatternPredicate0,
15170 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_W),
15171 66, 2, 0, 1,
15172 74,
15173 OPC_MoveChild0,
15174 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15175 OPC_MoveChild0,
15176 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
15177 OPC_MoveChild0,
15178 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15179 OPC_CheckPredicate, 12,
15180 OPC_MoveSibling1,
15181 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
15182 OPC_Scope, 26,
15183 OPC_RecordChild0,
15184 OPC_MoveChild1,
15185 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15186 OPC_CheckPredicate, 16,
15187 OPC_MoveParent,
15188 OPC_CheckType, 66,
15189 OPC_MoveParent,
15190 OPC_MoveSibling1,
15191 OPC_CheckImmAllOnesV,
15192 OPC_MoveParent,
15193 OPC_MoveParent,
15194 OPC_RecordChild1,
15195 OPC_CheckType, 66,
15196 OPC_CheckPatternPredicate0,
15197 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_W),
15198 66, 2, 1, 0,
15199 26,
15200 OPC_MoveChild0,
15201 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15202 OPC_CheckPredicate, 16,
15203 OPC_MoveParent,
15204 OPC_RecordChild1,
15205 OPC_CheckType, 66,
15206 OPC_MoveParent,
15207 OPC_MoveSibling1,
15208 OPC_CheckImmAllOnesV,
15209 OPC_MoveParent,
15210 OPC_MoveParent,
15211 OPC_RecordChild1,
15212 OPC_CheckType, 66,
15213 OPC_CheckPatternPredicate0,
15214 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_W),
15215 66, 2, 1, 0,
15216 0,
15217 44,
15218 OPC_RecordChild0,
15219 OPC_MoveChild1,
15220 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15221 OPC_MoveChild0,
15222 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
15223 OPC_MoveChild0,
15224 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15225 OPC_CheckPredicate, 12,
15226 OPC_MoveSibling1,
15227 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
15228 OPC_MoveChild0,
15229 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15230 OPC_CheckPredicate, 17,
15231 OPC_MoveParent,
15232 OPC_RecordChild1,
15233 OPC_CheckType, 83,
15234 OPC_MoveParent,
15235 OPC_MoveSibling1,
15236 OPC_CheckImmAllOnesV,
15237 OPC_MoveParent,
15238 OPC_MoveParent,
15239 OPC_CheckType, 83,
15240 OPC_CheckPatternPredicate0,
15241 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_D),
15242 83, 2, 0, 1,
15243 74,
15244 OPC_MoveChild0,
15245 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15246 OPC_MoveChild0,
15247 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
15248 OPC_MoveChild0,
15249 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15250 OPC_CheckPredicate, 12,
15251 OPC_MoveSibling1,
15252 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
15253 OPC_Scope, 26,
15254 OPC_RecordChild0,
15255 OPC_MoveChild1,
15256 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15257 OPC_CheckPredicate, 17,
15258 OPC_MoveParent,
15259 OPC_CheckType, 83,
15260 OPC_MoveParent,
15261 OPC_MoveSibling1,
15262 OPC_CheckImmAllOnesV,
15263 OPC_MoveParent,
15264 OPC_MoveParent,
15265 OPC_RecordChild1,
15266 OPC_CheckType, 83,
15267 OPC_CheckPatternPredicate0,
15268 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_D),
15269 83, 2, 1, 0,
15270 26,
15271 OPC_MoveChild0,
15272 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15273 OPC_CheckPredicate, 17,
15274 OPC_MoveParent,
15275 OPC_RecordChild1,
15276 OPC_CheckType, 83,
15277 OPC_MoveParent,
15278 OPC_MoveSibling1,
15279 OPC_CheckImmAllOnesV,
15280 OPC_MoveParent,
15281 OPC_MoveParent,
15282 OPC_RecordChild1,
15283 OPC_CheckType, 83,
15284 OPC_CheckPatternPredicate0,
15285 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_D),
15286 83, 2, 1, 0,
15287 0,
15288 27|128,1,
15289 OPC_RecordChild0,
15290 OPC_MoveChild1,
15291 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15292 OPC_MoveChild0,
15293 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
15294 OPC_MoveChild0,
15295 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15296 OPC_CheckPredicate, 12,
15297 OPC_MoveParent,
15298 OPC_RecordChild1,
15299 OPC_Scope, 16,
15300 OPC_CheckChild1Type, 40,
15301 OPC_MoveSibling1,
15302 OPC_CheckImmAllOnesV,
15303 OPC_MoveParent,
15304 OPC_MoveParent,
15305 OPC_CheckType, 40,
15306 OPC_CheckPatternPredicate1,
15307 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_B),
15308 40, 2, 0, 1,
15309 16,
15310 OPC_CheckChild1Type, 51,
15311 OPC_MoveSibling1,
15312 OPC_CheckImmAllOnesV,
15313 OPC_MoveParent,
15314 OPC_MoveParent,
15315 OPC_CheckType, 51,
15316 OPC_CheckPatternPredicate1,
15317 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_H),
15318 51, 2, 0, 1,
15319 16,
15320 OPC_CheckChild1Type, 62,
15321 OPC_MoveSibling1,
15322 OPC_CheckImmAllOnesV,
15323 OPC_MoveParent,
15324 OPC_MoveParent,
15325 OPC_CheckType, 62,
15326 OPC_CheckPatternPredicate1,
15327 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_W),
15328 62, 2, 0, 1,
15329 16,
15330 OPC_CheckChild1Type, 81,
15331 OPC_MoveSibling1,
15332 OPC_CheckImmAllOnesV,
15333 OPC_MoveParent,
15334 OPC_MoveParent,
15335 OPC_CheckType, 81,
15336 OPC_CheckPatternPredicate1,
15337 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_D),
15338 81, 2, 0, 1,
15339 16,
15340 OPC_CheckChild1Type, 41,
15341 OPC_MoveSibling1,
15342 OPC_CheckImmAllOnesV,
15343 OPC_MoveParent,
15344 OPC_MoveParent,
15345 OPC_CheckType, 41,
15346 OPC_CheckPatternPredicate0,
15347 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_B),
15348 41, 2, 0, 1,
15349 16,
15350 OPC_CheckChild1Type, 52,
15351 OPC_MoveSibling1,
15352 OPC_CheckImmAllOnesV,
15353 OPC_MoveParent,
15354 OPC_MoveParent,
15355 OPC_CheckType, 52,
15356 OPC_CheckPatternPredicate0,
15357 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_H),
15358 52, 2, 0, 1,
15359 16,
15360 OPC_CheckChild1Type, 66,
15361 OPC_MoveSibling1,
15362 OPC_CheckImmAllOnesV,
15363 OPC_MoveParent,
15364 OPC_MoveParent,
15365 OPC_CheckType, 66,
15366 OPC_CheckPatternPredicate0,
15367 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_W),
15368 66, 2, 0, 1,
15369 16,
15370 OPC_CheckChild1Type, 83,
15371 OPC_MoveSibling1,
15372 OPC_CheckImmAllOnesV,
15373 OPC_MoveParent,
15374 OPC_MoveParent,
15375 OPC_CheckType, 83,
15376 OPC_CheckPatternPredicate0,
15377 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_D),
15378 83, 2, 0, 1,
15379 0,
15380 34|128,1,
15381 OPC_MoveChild0,
15382 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15383 OPC_MoveChild0,
15384 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
15385 OPC_MoveChild0,
15386 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
15387 OPC_CheckPredicate, 12,
15388 OPC_MoveParent,
15389 OPC_RecordChild1,
15390 OPC_Scope, 17,
15391 OPC_CheckChild1Type, 40,
15392 OPC_MoveSibling1,
15393 OPC_CheckImmAllOnesV,
15394 OPC_MoveParent,
15395 OPC_MoveParent,
15396 OPC_RecordChild1,
15397 OPC_CheckType, 40,
15398 OPC_CheckPatternPredicate1,
15399 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_B),
15400 40, 2, 1, 0,
15401 17,
15402 OPC_CheckChild1Type, 51,
15403 OPC_MoveSibling1,
15404 OPC_CheckImmAllOnesV,
15405 OPC_MoveParent,
15406 OPC_MoveParent,
15407 OPC_RecordChild1,
15408 OPC_CheckType, 51,
15409 OPC_CheckPatternPredicate1,
15410 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_H),
15411 51, 2, 1, 0,
15412 17,
15413 OPC_CheckChild1Type, 62,
15414 OPC_MoveSibling1,
15415 OPC_CheckImmAllOnesV,
15416 OPC_MoveParent,
15417 OPC_MoveParent,
15418 OPC_RecordChild1,
15419 OPC_CheckType, 62,
15420 OPC_CheckPatternPredicate1,
15421 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_W),
15422 62, 2, 1, 0,
15423 17,
15424 OPC_CheckChild1Type, 81,
15425 OPC_MoveSibling1,
15426 OPC_CheckImmAllOnesV,
15427 OPC_MoveParent,
15428 OPC_MoveParent,
15429 OPC_RecordChild1,
15430 OPC_CheckType, 81,
15431 OPC_CheckPatternPredicate1,
15432 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLR_D),
15433 81, 2, 1, 0,
15434 17,
15435 OPC_CheckChild1Type, 41,
15436 OPC_MoveSibling1,
15437 OPC_CheckImmAllOnesV,
15438 OPC_MoveParent,
15439 OPC_MoveParent,
15440 OPC_RecordChild1,
15441 OPC_CheckType, 41,
15442 OPC_CheckPatternPredicate0,
15443 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_B),
15444 41, 2, 1, 0,
15445 17,
15446 OPC_CheckChild1Type, 52,
15447 OPC_MoveSibling1,
15448 OPC_CheckImmAllOnesV,
15449 OPC_MoveParent,
15450 OPC_MoveParent,
15451 OPC_RecordChild1,
15452 OPC_CheckType, 52,
15453 OPC_CheckPatternPredicate0,
15454 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_H),
15455 52, 2, 1, 0,
15456 17,
15457 OPC_CheckChild1Type, 66,
15458 OPC_MoveSibling1,
15459 OPC_CheckImmAllOnesV,
15460 OPC_MoveParent,
15461 OPC_MoveParent,
15462 OPC_RecordChild1,
15463 OPC_CheckType, 66,
15464 OPC_CheckPatternPredicate0,
15465 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_W),
15466 66, 2, 1, 0,
15467 17,
15468 OPC_CheckChild1Type, 83,
15469 OPC_MoveSibling1,
15470 OPC_CheckImmAllOnesV,
15471 OPC_MoveParent,
15472 OPC_MoveParent,
15473 OPC_RecordChild1,
15474 OPC_CheckType, 83,
15475 OPC_CheckPatternPredicate0,
15476 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLR_D),
15477 83, 2, 1, 0,
15478 0,
15479 36|128,4,
15480 OPC_RecordChild0,
15481 OPC_RecordChild1,
15482 OPC_SwitchType , 99, 40,
15483 OPC_Scope, 10,
15484 OPC_CheckPatternPredicate2,
15485 OPC_CheckComplexPat6, /*#*/1,
15486 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_B),
15487 40, 2, 0, 2,
15488 10,
15489 OPC_CheckPatternPredicate4,
15490 OPC_CheckComplexPat6, /*#*/1,
15491 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_B),
15492 40, 2, 0, 2,
15493 10,
15494 OPC_CheckPatternPredicate2,
15495 OPC_CheckComplexPat6, /*#*/0,
15496 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_B),
15497 40, 2, 1, 2,
15498 10,
15499 OPC_CheckPatternPredicate4,
15500 OPC_CheckComplexPat6, /*#*/0,
15501 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_B),
15502 40, 2, 1, 2,
15503 10,
15504 OPC_CheckPatternPredicate2,
15505 OPC_CheckComplexPat7, /*#*/1,
15506 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VANDI_B),
15507 40, 2, 0, 2,
15508 10,
15509 OPC_CheckPatternPredicate4,
15510 OPC_CheckComplexPat7, /*#*/1,
15511 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VANDI_B),
15512 40, 2, 0, 2,
15513 10,
15514 OPC_CheckPatternPredicate2,
15515 OPC_CheckComplexPat7, /*#*/0,
15516 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VANDI_B),
15517 40, 2, 1, 2,
15518 10,
15519 OPC_CheckPatternPredicate4,
15520 OPC_CheckComplexPat7, /*#*/0,
15521 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VANDI_B),
15522 40, 2, 1, 2,
15523 8,
15524 OPC_CheckPatternPredicate1,
15525 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAND_V),
15526 40, 2, 0, 1,
15527 0,
15528 55, 51,
15529 OPC_Scope, 10,
15530 OPC_CheckPatternPredicate2,
15531 OPC_CheckComplexPat6, /*#*/1,
15532 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_H),
15533 51, 2, 0, 2,
15534 10,
15535 OPC_CheckPatternPredicate4,
15536 OPC_CheckComplexPat6, /*#*/1,
15537 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_H),
15538 51, 2, 0, 2,
15539 10,
15540 OPC_CheckPatternPredicate2,
15541 OPC_CheckComplexPat6, /*#*/0,
15542 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_H),
15543 51, 2, 1, 2,
15544 10,
15545 OPC_CheckPatternPredicate4,
15546 OPC_CheckComplexPat6, /*#*/0,
15547 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_H),
15548 51, 2, 1, 2,
15549 8,
15550 OPC_CheckPatternPredicate1,
15551 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAND_V),
15552 51, 2, 0, 1,
15553 0,
15554 55, 62,
15555 OPC_Scope, 10,
15556 OPC_CheckPatternPredicate2,
15557 OPC_CheckComplexPat6, /*#*/1,
15558 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_W),
15559 62, 2, 0, 2,
15560 10,
15561 OPC_CheckPatternPredicate4,
15562 OPC_CheckComplexPat6, /*#*/1,
15563 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_W),
15564 62, 2, 0, 2,
15565 10,
15566 OPC_CheckPatternPredicate2,
15567 OPC_CheckComplexPat6, /*#*/0,
15568 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_W),
15569 62, 2, 1, 2,
15570 10,
15571 OPC_CheckPatternPredicate4,
15572 OPC_CheckComplexPat6, /*#*/0,
15573 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_W),
15574 62, 2, 1, 2,
15575 8,
15576 OPC_CheckPatternPredicate1,
15577 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAND_V),
15578 62, 2, 0, 1,
15579 0,
15580 55, 81,
15581 OPC_Scope, 10,
15582 OPC_CheckPatternPredicate2,
15583 OPC_CheckComplexPat6, /*#*/1,
15584 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_D),
15585 81, 2, 0, 2,
15586 10,
15587 OPC_CheckPatternPredicate4,
15588 OPC_CheckComplexPat6, /*#*/1,
15589 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_D),
15590 81, 2, 0, 2,
15591 10,
15592 OPC_CheckPatternPredicate2,
15593 OPC_CheckComplexPat6, /*#*/0,
15594 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_D),
15595 81, 2, 1, 2,
15596 10,
15597 OPC_CheckPatternPredicate4,
15598 OPC_CheckComplexPat6, /*#*/0,
15599 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITCLRI_D),
15600 81, 2, 1, 2,
15601 8,
15602 OPC_CheckPatternPredicate1,
15603 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAND_V),
15604 81, 2, 0, 1,
15605 0,
15606 99, 41,
15607 OPC_Scope, 10,
15608 OPC_CheckPatternPredicate3,
15609 OPC_CheckComplexPat6, /*#*/1,
15610 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_B),
15611 41, 2, 0, 2,
15612 10,
15613 OPC_CheckPatternPredicate5,
15614 OPC_CheckComplexPat6, /*#*/1,
15615 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_B),
15616 41, 2, 0, 2,
15617 10,
15618 OPC_CheckPatternPredicate3,
15619 OPC_CheckComplexPat6, /*#*/0,
15620 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_B),
15621 41, 2, 1, 2,
15622 10,
15623 OPC_CheckPatternPredicate5,
15624 OPC_CheckComplexPat6, /*#*/0,
15625 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_B),
15626 41, 2, 1, 2,
15627 10,
15628 OPC_CheckPatternPredicate3,
15629 OPC_CheckComplexPat7, /*#*/1,
15630 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVANDI_B),
15631 41, 2, 0, 2,
15632 10,
15633 OPC_CheckPatternPredicate5,
15634 OPC_CheckComplexPat7, /*#*/1,
15635 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVANDI_B),
15636 41, 2, 0, 2,
15637 10,
15638 OPC_CheckPatternPredicate3,
15639 OPC_CheckComplexPat7, /*#*/0,
15640 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVANDI_B),
15641 41, 2, 1, 2,
15642 10,
15643 OPC_CheckPatternPredicate5,
15644 OPC_CheckComplexPat7, /*#*/0,
15645 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVANDI_B),
15646 41, 2, 1, 2,
15647 8,
15648 OPC_CheckPatternPredicate0,
15649 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAND_V),
15650 41, 2, 0, 1,
15651 0,
15652 55, 52,
15653 OPC_Scope, 10,
15654 OPC_CheckPatternPredicate3,
15655 OPC_CheckComplexPat6, /*#*/1,
15656 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_H),
15657 52, 2, 0, 2,
15658 10,
15659 OPC_CheckPatternPredicate5,
15660 OPC_CheckComplexPat6, /*#*/1,
15661 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_H),
15662 52, 2, 0, 2,
15663 10,
15664 OPC_CheckPatternPredicate3,
15665 OPC_CheckComplexPat6, /*#*/0,
15666 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_H),
15667 52, 2, 1, 2,
15668 10,
15669 OPC_CheckPatternPredicate5,
15670 OPC_CheckComplexPat6, /*#*/0,
15671 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_H),
15672 52, 2, 1, 2,
15673 8,
15674 OPC_CheckPatternPredicate0,
15675 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAND_V),
15676 52, 2, 0, 1,
15677 0,
15678 55, 66,
15679 OPC_Scope, 10,
15680 OPC_CheckPatternPredicate3,
15681 OPC_CheckComplexPat6, /*#*/1,
15682 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_W),
15683 66, 2, 0, 2,
15684 10,
15685 OPC_CheckPatternPredicate5,
15686 OPC_CheckComplexPat6, /*#*/1,
15687 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_W),
15688 66, 2, 0, 2,
15689 10,
15690 OPC_CheckPatternPredicate3,
15691 OPC_CheckComplexPat6, /*#*/0,
15692 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_W),
15693 66, 2, 1, 2,
15694 10,
15695 OPC_CheckPatternPredicate5,
15696 OPC_CheckComplexPat6, /*#*/0,
15697 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_W),
15698 66, 2, 1, 2,
15699 8,
15700 OPC_CheckPatternPredicate0,
15701 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAND_V),
15702 66, 2, 0, 1,
15703 0,
15704 55, 83,
15705 OPC_Scope, 10,
15706 OPC_CheckPatternPredicate3,
15707 OPC_CheckComplexPat6, /*#*/1,
15708 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_D),
15709 83, 2, 0, 2,
15710 10,
15711 OPC_CheckPatternPredicate5,
15712 OPC_CheckComplexPat6, /*#*/1,
15713 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_D),
15714 83, 2, 0, 2,
15715 10,
15716 OPC_CheckPatternPredicate3,
15717 OPC_CheckComplexPat6, /*#*/0,
15718 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_D),
15719 83, 2, 1, 2,
15720 10,
15721 OPC_CheckPatternPredicate5,
15722 OPC_CheckComplexPat6, /*#*/0,
15723 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITCLRI_D),
15724 83, 2, 1, 2,
15725 8,
15726 OPC_CheckPatternPredicate0,
15727 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAND_V),
15728 83, 2, 0, 1,
15729 0,
15730 0,
15731 0,
15732 69|128,1, TARGET_VAL(ISD::CTLZ),
15733 OPC_Scope, 56,
15734 OPC_MoveChild0,
15735 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15736 OPC_RecordChild0,
15737 OPC_CheckChild1Integer, 3,
15738 OPC_SwitchType , 21, 8,
15739 OPC_MoveParent,
15740 OPC_CheckTypeI64,
15741 OPC_Scope, 7,
15742 OPC_CheckPatternPredicate6,
15743 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLO_D),
15744 8, 1, 0,
15745 8,
15746 OPC_CheckPatternPredicate, 20,
15747 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLO_W),
15748 8, 1, 0,
15749 0,
15750 22, 7,
15751 OPC_MoveParent,
15752 OPC_CheckTypeI32,
15753 OPC_Scope, 8,
15754 OPC_CheckPatternPredicate, 9,
15755 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLO_D),
15756 7, 1, 0,
15757 8,
15758 OPC_CheckPatternPredicate, 16,
15759 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLO_W),
15760 7, 1, 0,
15761 0,
15762 0,
15763 8|128,1,
15764 OPC_RecordChild0,
15765 OPC_SwitchType , 20, 8,
15766 OPC_CheckChild0TypeI64,
15767 OPC_Scope, 7,
15768 OPC_CheckPatternPredicate6,
15769 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLZ_D),
15770 8, 1, 0,
15771 8,
15772 OPC_CheckPatternPredicate, 20,
15773 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLZ_W),
15774 8, 1, 0,
15775 0,
15776 21, 7,
15777 OPC_CheckChild0TypeI32,
15778 OPC_Scope, 8,
15779 OPC_CheckPatternPredicate, 9,
15780 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLZ_D),
15781 7, 1, 0,
15782 8,
15783 OPC_CheckPatternPredicate, 16,
15784 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLZ_W),
15785 7, 1, 0,
15786 0,
15787 9, 40,
15788 OPC_CheckChild0Type, 40,
15789 OPC_CheckPatternPredicate1,
15790 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VCLZ_B),
15791 40, 1, 0,
15792 9, 51,
15793 OPC_CheckChild0Type, 51,
15794 OPC_CheckPatternPredicate1,
15795 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VCLZ_H),
15796 51, 1, 0,
15797 9, 62,
15798 OPC_CheckChild0Type, 62,
15799 OPC_CheckPatternPredicate1,
15800 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VCLZ_W),
15801 62, 1, 0,
15802 9, 81,
15803 OPC_CheckChild0Type, 81,
15804 OPC_CheckPatternPredicate1,
15805 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VCLZ_D),
15806 81, 1, 0,
15807 9, 41,
15808 OPC_CheckChild0Type, 41,
15809 OPC_CheckPatternPredicate0,
15810 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVCLZ_B),
15811 41, 1, 0,
15812 9, 52,
15813 OPC_CheckChild0Type, 52,
15814 OPC_CheckPatternPredicate0,
15815 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVCLZ_H),
15816 52, 1, 0,
15817 9, 66,
15818 OPC_CheckChild0Type, 66,
15819 OPC_CheckPatternPredicate0,
15820 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVCLZ_W),
15821 66, 1, 0,
15822 9, 83,
15823 OPC_CheckChild0Type, 83,
15824 OPC_CheckPatternPredicate0,
15825 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVCLZ_D),
15826 83, 1, 0,
15827 0,
15828 0,
15829 108, TARGET_VAL(ISD::CTTZ),
15830 OPC_Scope, 56,
15831 OPC_MoveChild0,
15832 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15833 OPC_RecordChild0,
15834 OPC_CheckChild1Integer, 3,
15835 OPC_SwitchType , 21, 8,
15836 OPC_MoveParent,
15837 OPC_CheckTypeI64,
15838 OPC_Scope, 7,
15839 OPC_CheckPatternPredicate6,
15840 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTO_D),
15841 8, 1, 0,
15842 8,
15843 OPC_CheckPatternPredicate, 20,
15844 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTO_W),
15845 8, 1, 0,
15846 0,
15847 22, 7,
15848 OPC_MoveParent,
15849 OPC_CheckTypeI32,
15850 OPC_Scope, 8,
15851 OPC_CheckPatternPredicate, 9,
15852 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTO_D),
15853 7, 1, 0,
15854 8,
15855 OPC_CheckPatternPredicate, 16,
15856 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTO_W),
15857 7, 1, 0,
15858 0,
15859 0,
15860 48,
15861 OPC_RecordChild0,
15862 OPC_SwitchType , 20, 8,
15863 OPC_CheckChild0TypeI64,
15864 OPC_Scope, 7,
15865 OPC_CheckPatternPredicate6,
15866 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTZ_D),
15867 8, 1, 0,
15868 8,
15869 OPC_CheckPatternPredicate, 20,
15870 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTZ_W),
15871 8, 1, 0,
15872 0,
15873 21, 7,
15874 OPC_CheckChild0TypeI32,
15875 OPC_Scope, 8,
15876 OPC_CheckPatternPredicate, 9,
15877 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTZ_D),
15878 7, 1, 0,
15879 8,
15880 OPC_CheckPatternPredicate, 16,
15881 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTZ_W),
15882 7, 1, 0,
15883 0,
15884 0,
15885 0,
15886 60, TARGET_VAL(LoongArchISD::CLZ_W),
15887 OPC_Scope, 32,
15888 OPC_MoveChild0,
15889 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15890 OPC_RecordChild0,
15891 OPC_CheckChild1Integer, 3,
15892 OPC_SwitchType , 9, 8,
15893 OPC_MoveParent,
15894 OPC_CheckTypeI64,
15895 OPC_CheckPatternPredicate6,
15896 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLO_W),
15897 8, 1, 0,
15898 10, 7,
15899 OPC_MoveParent,
15900 OPC_CheckTypeI32,
15901 OPC_CheckPatternPredicate, 9,
15902 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLO_W),
15903 7, 1, 0,
15904 0,
15905 24,
15906 OPC_RecordChild0,
15907 OPC_SwitchType , 8, 8,
15908 OPC_CheckChild0TypeI64,
15909 OPC_CheckPatternPredicate6,
15910 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLZ_W),
15911 8, 1, 0,
15912 9, 7,
15913 OPC_CheckChild0TypeI32,
15914 OPC_CheckPatternPredicate, 9,
15915 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CLZ_W),
15916 7, 1, 0,
15917 0,
15918 0,
15919 60, TARGET_VAL(LoongArchISD::CTZ_W),
15920 OPC_Scope, 32,
15921 OPC_MoveChild0,
15922 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
15923 OPC_RecordChild0,
15924 OPC_CheckChild1Integer, 3,
15925 OPC_SwitchType , 9, 8,
15926 OPC_MoveParent,
15927 OPC_CheckTypeI64,
15928 OPC_CheckPatternPredicate6,
15929 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTO_W),
15930 8, 1, 0,
15931 10, 7,
15932 OPC_MoveParent,
15933 OPC_CheckTypeI32,
15934 OPC_CheckPatternPredicate, 9,
15935 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTO_W),
15936 7, 1, 0,
15937 0,
15938 24,
15939 OPC_RecordChild0,
15940 OPC_SwitchType , 8, 8,
15941 OPC_CheckChild0TypeI64,
15942 OPC_CheckPatternPredicate6,
15943 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTZ_W),
15944 8, 1, 0,
15945 9, 7,
15946 OPC_CheckChild0TypeI32,
15947 OPC_CheckPatternPredicate, 9,
15948 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::CTZ_W),
15949 7, 1, 0,
15950 0,
15951 0,
15952 114, TARGET_VAL(LoongArchISD::BSTRINS),
15953 OPC_RecordChild0,
15954 OPC_RecordChild1,
15955 OPC_RecordChild2,
15956 OPC_MoveChild2,
15957 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
15958 OPC_Scope, 52,
15959 OPC_CheckPredicate, 25,
15960 OPC_SwitchType , 22, 8,
15961 OPC_MoveSibling3,
15962 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
15963 OPC_RecordNode,
15964 OPC_CheckPredicate, 25,
15965 OPC_MoveParent,
15966 OPC_CheckTypeI64,
15967 OPC_CheckPatternPredicate, 20,
15968 OPC_EmitConvertToTarget2,
15969 OPC_EmitConvertToTarget3,
15970 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRINS_W),
15971 8, 4, 0, 1, 4, 5,
15972 22, 7,
15973 OPC_MoveSibling3,
15974 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
15975 OPC_RecordNode,
15976 OPC_CheckPredicate, 25,
15977 OPC_MoveParent,
15978 OPC_CheckTypeI32,
15979 OPC_CheckPatternPredicate, 16,
15980 OPC_EmitConvertToTarget2,
15981 OPC_EmitConvertToTarget3,
15982 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRINS_W),
15983 7, 4, 0, 1, 4, 5,
15984 0,
15985 51,
15986 OPC_CheckPredicate, 33,
15987 OPC_SwitchType , 21, 8,
15988 OPC_MoveSibling3,
15989 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
15990 OPC_RecordNode,
15991 OPC_CheckPredicate, 33,
15992 OPC_MoveParent,
15993 OPC_CheckTypeI64,
15994 OPC_CheckPatternPredicate6,
15995 OPC_EmitConvertToTarget2,
15996 OPC_EmitConvertToTarget3,
15997 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRINS_D),
15998 8, 4, 0, 1, 4, 5,
15999 22, 7,
16000 OPC_MoveSibling3,
16001 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16002 OPC_RecordNode,
16003 OPC_CheckPredicate, 33,
16004 OPC_MoveParent,
16005 OPC_CheckTypeI32,
16006 OPC_CheckPatternPredicate, 9,
16007 OPC_EmitConvertToTarget2,
16008 OPC_EmitConvertToTarget3,
16009 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BSTRINS_D),
16010 7, 4, 0, 1, 4, 5,
16011 0,
16012 0,
16013 127, TARGET_VAL(ISD::ATOMIC_FENCE),
16014 OPC_RecordNode,
16015 OPC_Scope, 30,
16016 OPC_CheckChild1Integer, 8,
16017 OPC_MoveChild2,
16018 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16019 OPC_MoveParent,
16020 OPC_Scope, 9,
16021 OPC_CheckPatternPredicate7,
16022 OPC_EmitMergeInputChains1_0,
16023 OPC_EmitInteger64, 40,
16024 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::DBAR),
16025 1, 1,
16026 10,
16027 OPC_CheckPatternPredicate, 8,
16028 OPC_EmitMergeInputChains1_0,
16029 OPC_EmitInteger32, 40,
16030 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::DBAR),
16031 1, 1,
16032 0,
16033 30,
16034 OPC_CheckChild1Integer, 10,
16035 OPC_MoveChild2,
16036 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16037 OPC_MoveParent,
16038 OPC_Scope, 9,
16039 OPC_CheckPatternPredicate7,
16040 OPC_EmitMergeInputChains1_0,
16041 OPC_EmitInteger64, 36,
16042 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::DBAR),
16043 1, 1,
16044 10,
16045 OPC_CheckPatternPredicate, 8,
16046 OPC_EmitMergeInputChains1_0,
16047 OPC_EmitInteger32, 36,
16048 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::DBAR),
16049 1, 1,
16050 0,
16051 30,
16052 OPC_CheckChild1Integer, 12,
16053 OPC_MoveChild2,
16054 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16055 OPC_MoveParent,
16056 OPC_Scope, 9,
16057 OPC_CheckPatternPredicate7,
16058 OPC_EmitMergeInputChains1_0,
16059 OPC_EmitInteger64, 32,
16060 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::DBAR),
16061 1, 1,
16062 10,
16063 OPC_CheckPatternPredicate, 8,
16064 OPC_EmitMergeInputChains1_0,
16065 OPC_EmitInteger32, 32,
16066 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::DBAR),
16067 1, 1,
16068 0,
16069 30,
16070 OPC_CheckChild1Integer, 14,
16071 OPC_MoveChild2,
16072 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16073 OPC_MoveParent,
16074 OPC_Scope, 9,
16075 OPC_CheckPatternPredicate7,
16076 OPC_EmitMergeInputChains1_0,
16077 OPC_EmitInteger64, 32,
16078 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::DBAR),
16079 1, 1,
16080 10,
16081 OPC_CheckPatternPredicate, 8,
16082 OPC_EmitMergeInputChains1_0,
16083 OPC_EmitInteger32, 32,
16084 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::DBAR),
16085 1, 1,
16086 0,
16087 0,
16088 14|128,8, TARGET_VAL(ISD::INTRINSIC_W_CHAIN),
16089 OPC_RecordNode,
16090 OPC_Scope, 25,
16091 OPC_CheckChild1Integer, 68|128,118,
16092 OPC_RecordChild2,
16093 OPC_CheckChild2TypeI64,
16094 OPC_RecordChild3,
16095 OPC_RecordChild4,
16096 OPC_RecordChild5,
16097 OPC_MoveChild5,
16098 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16099 OPC_MoveParent,
16100 OPC_CheckPatternPredicate6,
16101 OPC_EmitMergeInputChains1_0,
16102 OPC_MorphNodeTo2Chain, TARGET_VAL(LoongArch::PseudoMaskedAtomicSwap32),
16103 8, 8, 4, 1, 2, 3, 4,
16104 25,
16105 OPC_CheckChild1Integer, 40|128,118,
16106 OPC_RecordChild2,
16107 OPC_CheckChild2TypeI64,
16108 OPC_RecordChild3,
16109 OPC_RecordChild4,
16110 OPC_RecordChild5,
16111 OPC_MoveChild5,
16112 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16113 OPC_MoveParent,
16114 OPC_CheckPatternPredicate6,
16115 OPC_EmitMergeInputChains1_0,
16116 OPC_MorphNodeTo2Chain, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadAdd32),
16117 8, 8, 4, 1, 2, 3, 4,
16118 25,
16119 OPC_CheckChild1Integer, 56|128,118,
16120 OPC_RecordChild2,
16121 OPC_CheckChild2TypeI64,
16122 OPC_RecordChild3,
16123 OPC_RecordChild4,
16124 OPC_RecordChild5,
16125 OPC_MoveChild5,
16126 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16127 OPC_MoveParent,
16128 OPC_CheckPatternPredicate6,
16129 OPC_EmitMergeInputChains1_0,
16130 OPC_MorphNodeTo2Chain, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadSub32),
16131 8, 8, 4, 1, 2, 3, 4,
16132 25,
16133 OPC_CheckChild1Integer, 52|128,118,
16134 OPC_RecordChild2,
16135 OPC_CheckChild2TypeI64,
16136 OPC_RecordChild3,
16137 OPC_RecordChild4,
16138 OPC_RecordChild5,
16139 OPC_MoveChild5,
16140 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16141 OPC_MoveParent,
16142 OPC_CheckPatternPredicate6,
16143 OPC_EmitMergeInputChains1_0,
16144 OPC_MorphNodeTo2Chain, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadNand32),
16145 8, 8, 4, 1, 2, 3, 4,
16146 28,
16147 OPC_CheckChild1Integer, 60|128,118,
16148 OPC_RecordChild2,
16149 OPC_CheckChild2TypeI64,
16150 OPC_RecordChild3,
16151 OPC_RecordChild4,
16152 OPC_RecordChild5,
16153 OPC_MoveChild5,
16154 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16155 OPC_MoveParent,
16156 OPC_CheckPatternPredicate6,
16157 OPC_EmitMergeInputChains1_0,
16158 OPC_MorphNodeTo, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadUMax32), 0|OPFL_Chain,
16159 3, 8, 8, 8, 4, 1, 2, 3, 4,
16160 28,
16161 OPC_CheckChild1Integer, 64|128,118,
16162 OPC_RecordChild2,
16163 OPC_CheckChild2TypeI64,
16164 OPC_RecordChild3,
16165 OPC_RecordChild4,
16166 OPC_RecordChild5,
16167 OPC_MoveChild5,
16168 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16169 OPC_MoveParent,
16170 OPC_CheckPatternPredicate6,
16171 OPC_EmitMergeInputChains1_0,
16172 OPC_MorphNodeTo, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadUMin32), 0|OPFL_Chain,
16173 3, 8, 8, 8, 4, 1, 2, 3, 4,
16174 27,
16175 OPC_CheckChild1Integer, 72|128,118,
16176 OPC_RecordChild2,
16177 OPC_CheckChild2TypeI64,
16178 OPC_RecordChild3,
16179 OPC_RecordChild4,
16180 OPC_RecordChild5,
16181 OPC_RecordChild6,
16182 OPC_MoveChild6,
16183 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16184 OPC_MoveParent,
16185 OPC_CheckPatternPredicate6,
16186 OPC_EmitMergeInputChains1_0,
16187 OPC_MorphNodeTo2Chain, TARGET_VAL(LoongArch::PseudoMaskedCmpXchg32),
16188 8, 8, 5, 1, 2, 3, 4, 5,
16189 30,
16190 OPC_CheckChild1Integer, 44|128,118,
16191 OPC_RecordChild2,
16192 OPC_CheckChild2TypeI64,
16193 OPC_RecordChild3,
16194 OPC_RecordChild4,
16195 OPC_RecordChild5,
16196 OPC_RecordChild6,
16197 OPC_MoveChild6,
16198 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16199 OPC_MoveParent,
16200 OPC_CheckPatternPredicate6,
16201 OPC_EmitMergeInputChains1_0,
16202 OPC_MorphNodeTo, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadMax32), 0|OPFL_Chain,
16203 3, 8, 8, 8, 5, 1, 2, 3, 4, 5,
16204 30,
16205 OPC_CheckChild1Integer, 48|128,118,
16206 OPC_RecordChild2,
16207 OPC_CheckChild2TypeI64,
16208 OPC_RecordChild3,
16209 OPC_RecordChild4,
16210 OPC_RecordChild5,
16211 OPC_RecordChild6,
16212 OPC_MoveChild6,
16213 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16214 OPC_MoveParent,
16215 OPC_CheckPatternPredicate6,
16216 OPC_EmitMergeInputChains1_0,
16217 OPC_MorphNodeTo, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadMin32), 0|OPFL_Chain,
16218 3, 8, 8, 8, 5, 1, 2, 3, 4, 5,
16219 26,
16220 OPC_CheckChild1Integer, 66|128,118,
16221 OPC_RecordChild2,
16222 OPC_CheckChild2TypeI32,
16223 OPC_RecordChild3,
16224 OPC_RecordChild4,
16225 OPC_RecordChild5,
16226 OPC_MoveChild5,
16227 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16228 OPC_MoveParent,
16229 OPC_CheckPatternPredicate, 10,
16230 OPC_EmitMergeInputChains1_0,
16231 OPC_MorphNodeTo2Chain, TARGET_VAL(LoongArch::PseudoMaskedAtomicSwap32),
16232 7, 7, 4, 1, 2, 3, 4,
16233 26,
16234 OPC_CheckChild1Integer, 38|128,118,
16235 OPC_RecordChild2,
16236 OPC_CheckChild2TypeI32,
16237 OPC_RecordChild3,
16238 OPC_RecordChild4,
16239 OPC_RecordChild5,
16240 OPC_MoveChild5,
16241 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16242 OPC_MoveParent,
16243 OPC_CheckPatternPredicate, 10,
16244 OPC_EmitMergeInputChains1_0,
16245 OPC_MorphNodeTo2Chain, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadAdd32),
16246 7, 7, 4, 1, 2, 3, 4,
16247 26,
16248 OPC_CheckChild1Integer, 54|128,118,
16249 OPC_RecordChild2,
16250 OPC_CheckChild2TypeI32,
16251 OPC_RecordChild3,
16252 OPC_RecordChild4,
16253 OPC_RecordChild5,
16254 OPC_MoveChild5,
16255 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16256 OPC_MoveParent,
16257 OPC_CheckPatternPredicate, 10,
16258 OPC_EmitMergeInputChains1_0,
16259 OPC_MorphNodeTo2Chain, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadSub32),
16260 7, 7, 4, 1, 2, 3, 4,
16261 26,
16262 OPC_CheckChild1Integer, 50|128,118,
16263 OPC_RecordChild2,
16264 OPC_CheckChild2TypeI32,
16265 OPC_RecordChild3,
16266 OPC_RecordChild4,
16267 OPC_RecordChild5,
16268 OPC_MoveChild5,
16269 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16270 OPC_MoveParent,
16271 OPC_CheckPatternPredicate, 10,
16272 OPC_EmitMergeInputChains1_0,
16273 OPC_MorphNodeTo2Chain, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadNand32),
16274 7, 7, 4, 1, 2, 3, 4,
16275 29,
16276 OPC_CheckChild1Integer, 58|128,118,
16277 OPC_RecordChild2,
16278 OPC_CheckChild2TypeI32,
16279 OPC_RecordChild3,
16280 OPC_RecordChild4,
16281 OPC_RecordChild5,
16282 OPC_MoveChild5,
16283 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16284 OPC_MoveParent,
16285 OPC_CheckPatternPredicate, 10,
16286 OPC_EmitMergeInputChains1_0,
16287 OPC_MorphNodeTo, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadUMax32), 0|OPFL_Chain,
16288 3, 7, 7, 7, 4, 1, 2, 3, 4,
16289 29,
16290 OPC_CheckChild1Integer, 62|128,118,
16291 OPC_RecordChild2,
16292 OPC_CheckChild2TypeI32,
16293 OPC_RecordChild3,
16294 OPC_RecordChild4,
16295 OPC_RecordChild5,
16296 OPC_MoveChild5,
16297 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16298 OPC_MoveParent,
16299 OPC_CheckPatternPredicate, 10,
16300 OPC_EmitMergeInputChains1_0,
16301 OPC_MorphNodeTo, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadUMin32), 0|OPFL_Chain,
16302 3, 7, 7, 7, 4, 1, 2, 3, 4,
16303 31,
16304 OPC_CheckChild1Integer, 42|128,118,
16305 OPC_RecordChild2,
16306 OPC_CheckChild2TypeI32,
16307 OPC_RecordChild3,
16308 OPC_RecordChild4,
16309 OPC_RecordChild5,
16310 OPC_RecordChild6,
16311 OPC_MoveChild6,
16312 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16313 OPC_MoveParent,
16314 OPC_CheckPatternPredicate, 10,
16315 OPC_EmitMergeInputChains1_0,
16316 OPC_MorphNodeTo, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadMax32), 0|OPFL_Chain,
16317 3, 7, 7, 7, 5, 1, 2, 3, 4, 5,
16318 31,
16319 OPC_CheckChild1Integer, 46|128,118,
16320 OPC_RecordChild2,
16321 OPC_CheckChild2TypeI32,
16322 OPC_RecordChild3,
16323 OPC_RecordChild4,
16324 OPC_RecordChild5,
16325 OPC_RecordChild6,
16326 OPC_MoveChild6,
16327 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16328 OPC_MoveParent,
16329 OPC_CheckPatternPredicate, 10,
16330 OPC_EmitMergeInputChains1_0,
16331 OPC_MorphNodeTo, TARGET_VAL(LoongArch::PseudoMaskedAtomicLoadMin32), 0|OPFL_Chain,
16332 3, 7, 7, 7, 5, 1, 2, 3, 4, 5,
16333 28,
16334 OPC_CheckChild1Integer, 70|128,118,
16335 OPC_RecordChild2,
16336 OPC_CheckChild2TypeI32,
16337 OPC_RecordChild3,
16338 OPC_RecordChild4,
16339 OPC_RecordChild5,
16340 OPC_RecordChild6,
16341 OPC_MoveChild6,
16342 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16343 OPC_MoveParent,
16344 OPC_CheckPatternPredicate, 10,
16345 OPC_EmitMergeInputChains1_0,
16346 OPC_MorphNodeTo2Chain, TARGET_VAL(LoongArch::PseudoMaskedCmpXchg32),
16347 7, 7, 5, 1, 2, 3, 4, 5,
16348 19,
16349 OPC_CheckChild1Integer, 2|128,107,
16350 OPC_RecordChild2,
16351 OPC_RecordChild3,
16352 OPC_MoveChild3,
16353 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16354 OPC_MoveParent,
16355 OPC_CheckPatternPredicate6,
16356 OPC_EmitMergeInputChains1_0,
16357 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::LDDIR),
16358 8, 2, 1, 2,
16359 46,
16360 OPC_CheckChild1Integer, 90|128,111,
16361 OPC_RecordChild2,
16362 OPC_Scope, 19,
16363 OPC_CheckChild2TypeI64,
16364 OPC_RecordChild3,
16365 OPC_MoveChild3,
16366 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16367 OPC_MoveParent,
16368 OPC_CheckPatternPredicate2,
16369 OPC_EmitMergeInputChains1_0,
16370 OPC_EmitNodeXForm, 7, 2,
16371 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::VLD),
16372 40, 2, 1, 3,
16373 19,
16374 OPC_CheckChild2TypeI32,
16375 OPC_RecordChild3,
16376 OPC_MoveChild3,
16377 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16378 OPC_MoveParent,
16379 OPC_CheckPatternPredicate4,
16380 OPC_EmitMergeInputChains1_0,
16381 OPC_EmitNodeXForm, 7, 2,
16382 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::VLD),
16383 40, 2, 1, 3,
16384 0,
16385 46,
16386 OPC_CheckChild1Integer, 94|128,111,
16387 OPC_RecordChild2,
16388 OPC_Scope, 19,
16389 OPC_CheckChild2TypeI64,
16390 OPC_RecordChild3,
16391 OPC_MoveChild3,
16392 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16393 OPC_MoveParent,
16394 OPC_CheckPatternPredicate2,
16395 OPC_EmitMergeInputChains1_0,
16396 OPC_EmitNodeXForm, 7, 2,
16397 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::VLDREPL_B),
16398 40, 2, 1, 3,
16399 19,
16400 OPC_CheckChild2TypeI32,
16401 OPC_RecordChild3,
16402 OPC_MoveChild3,
16403 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16404 OPC_MoveParent,
16405 OPC_CheckPatternPredicate4,
16406 OPC_EmitMergeInputChains1_0,
16407 OPC_EmitNodeXForm, 7, 2,
16408 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::VLDREPL_B),
16409 40, 2, 1, 3,
16410 0,
16411 46,
16412 OPC_CheckChild1Integer, 98|128,111,
16413 OPC_RecordChild2,
16414 OPC_Scope, 19,
16415 OPC_CheckChild2TypeI64,
16416 OPC_RecordChild3,
16417 OPC_MoveChild3,
16418 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16419 OPC_MoveParent,
16420 OPC_CheckPatternPredicate2,
16421 OPC_EmitMergeInputChains1_0,
16422 OPC_EmitNodeXForm, 7, 2,
16423 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::VLDREPL_H),
16424 51, 2, 1, 3,
16425 19,
16426 OPC_CheckChild2TypeI32,
16427 OPC_RecordChild3,
16428 OPC_MoveChild3,
16429 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16430 OPC_MoveParent,
16431 OPC_CheckPatternPredicate4,
16432 OPC_EmitMergeInputChains1_0,
16433 OPC_EmitNodeXForm, 7, 2,
16434 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::VLDREPL_H),
16435 51, 2, 1, 3,
16436 0,
16437 46,
16438 OPC_CheckChild1Integer, 100|128,111,
16439 OPC_RecordChild2,
16440 OPC_Scope, 19,
16441 OPC_CheckChild2TypeI64,
16442 OPC_RecordChild3,
16443 OPC_MoveChild3,
16444 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16445 OPC_MoveParent,
16446 OPC_CheckPatternPredicate2,
16447 OPC_EmitMergeInputChains1_0,
16448 OPC_EmitNodeXForm, 7, 2,
16449 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::VLDREPL_W),
16450 62, 2, 1, 3,
16451 19,
16452 OPC_CheckChild2TypeI32,
16453 OPC_RecordChild3,
16454 OPC_MoveChild3,
16455 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16456 OPC_MoveParent,
16457 OPC_CheckPatternPredicate4,
16458 OPC_EmitMergeInputChains1_0,
16459 OPC_EmitNodeXForm, 7, 2,
16460 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::VLDREPL_W),
16461 62, 2, 1, 3,
16462 0,
16463 46,
16464 OPC_CheckChild1Integer, 96|128,111,
16465 OPC_RecordChild2,
16466 OPC_Scope, 19,
16467 OPC_CheckChild2TypeI64,
16468 OPC_RecordChild3,
16469 OPC_MoveChild3,
16470 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16471 OPC_MoveParent,
16472 OPC_CheckPatternPredicate2,
16473 OPC_EmitMergeInputChains1_0,
16474 OPC_EmitNodeXForm, 7, 2,
16475 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::VLDREPL_D),
16476 81, 2, 1, 3,
16477 19,
16478 OPC_CheckChild2TypeI32,
16479 OPC_RecordChild3,
16480 OPC_MoveChild3,
16481 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16482 OPC_MoveParent,
16483 OPC_CheckPatternPredicate4,
16484 OPC_EmitMergeInputChains1_0,
16485 OPC_EmitNodeXForm, 7, 2,
16486 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::VLDREPL_D),
16487 81, 2, 1, 3,
16488 0,
16489 46,
16490 OPC_CheckChild1Integer, 38|128,100,
16491 OPC_RecordChild2,
16492 OPC_Scope, 19,
16493 OPC_CheckChild2TypeI64,
16494 OPC_RecordChild3,
16495 OPC_MoveChild3,
16496 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16497 OPC_MoveParent,
16498 OPC_CheckPatternPredicate3,
16499 OPC_EmitMergeInputChains1_0,
16500 OPC_EmitNodeXForm, 7, 2,
16501 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::XVLD),
16502 41, 2, 1, 3,
16503 19,
16504 OPC_CheckChild2TypeI32,
16505 OPC_RecordChild3,
16506 OPC_MoveChild3,
16507 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16508 OPC_MoveParent,
16509 OPC_CheckPatternPredicate5,
16510 OPC_EmitMergeInputChains1_0,
16511 OPC_EmitNodeXForm, 7, 2,
16512 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::XVLD),
16513 41, 2, 1, 3,
16514 0,
16515 46,
16516 OPC_CheckChild1Integer, 42|128,100,
16517 OPC_RecordChild2,
16518 OPC_Scope, 19,
16519 OPC_CheckChild2TypeI64,
16520 OPC_RecordChild3,
16521 OPC_MoveChild3,
16522 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16523 OPC_MoveParent,
16524 OPC_CheckPatternPredicate3,
16525 OPC_EmitMergeInputChains1_0,
16526 OPC_EmitNodeXForm, 7, 2,
16527 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::XVLDREPL_B),
16528 41, 2, 1, 3,
16529 19,
16530 OPC_CheckChild2TypeI32,
16531 OPC_RecordChild3,
16532 OPC_MoveChild3,
16533 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16534 OPC_MoveParent,
16535 OPC_CheckPatternPredicate5,
16536 OPC_EmitMergeInputChains1_0,
16537 OPC_EmitNodeXForm, 7, 2,
16538 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::XVLDREPL_B),
16539 41, 2, 1, 3,
16540 0,
16541 46,
16542 OPC_CheckChild1Integer, 46|128,100,
16543 OPC_RecordChild2,
16544 OPC_Scope, 19,
16545 OPC_CheckChild2TypeI64,
16546 OPC_RecordChild3,
16547 OPC_MoveChild3,
16548 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16549 OPC_MoveParent,
16550 OPC_CheckPatternPredicate3,
16551 OPC_EmitMergeInputChains1_0,
16552 OPC_EmitNodeXForm, 7, 2,
16553 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::XVLDREPL_H),
16554 52, 2, 1, 3,
16555 19,
16556 OPC_CheckChild2TypeI32,
16557 OPC_RecordChild3,
16558 OPC_MoveChild3,
16559 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16560 OPC_MoveParent,
16561 OPC_CheckPatternPredicate5,
16562 OPC_EmitMergeInputChains1_0,
16563 OPC_EmitNodeXForm, 7, 2,
16564 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::XVLDREPL_H),
16565 52, 2, 1, 3,
16566 0,
16567 46,
16568 OPC_CheckChild1Integer, 48|128,100,
16569 OPC_RecordChild2,
16570 OPC_Scope, 19,
16571 OPC_CheckChild2TypeI64,
16572 OPC_RecordChild3,
16573 OPC_MoveChild3,
16574 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16575 OPC_MoveParent,
16576 OPC_CheckPatternPredicate3,
16577 OPC_EmitMergeInputChains1_0,
16578 OPC_EmitNodeXForm, 7, 2,
16579 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::XVLDREPL_W),
16580 66, 2, 1, 3,
16581 19,
16582 OPC_CheckChild2TypeI32,
16583 OPC_RecordChild3,
16584 OPC_MoveChild3,
16585 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16586 OPC_MoveParent,
16587 OPC_CheckPatternPredicate5,
16588 OPC_EmitMergeInputChains1_0,
16589 OPC_EmitNodeXForm, 7, 2,
16590 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::XVLDREPL_W),
16591 66, 2, 1, 3,
16592 0,
16593 46,
16594 OPC_CheckChild1Integer, 44|128,100,
16595 OPC_RecordChild2,
16596 OPC_Scope, 19,
16597 OPC_CheckChild2TypeI64,
16598 OPC_RecordChild3,
16599 OPC_MoveChild3,
16600 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16601 OPC_MoveParent,
16602 OPC_CheckPatternPredicate3,
16603 OPC_EmitMergeInputChains1_0,
16604 OPC_EmitNodeXForm, 7, 2,
16605 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::XVLDREPL_D),
16606 83, 2, 1, 3,
16607 19,
16608 OPC_CheckChild2TypeI32,
16609 OPC_RecordChild3,
16610 OPC_MoveChild3,
16611 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16612 OPC_MoveParent,
16613 OPC_CheckPatternPredicate5,
16614 OPC_EmitMergeInputChains1_0,
16615 OPC_EmitNodeXForm, 7, 2,
16616 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::XVLDREPL_D),
16617 83, 2, 1, 3,
16618 0,
16619 15,
16620 OPC_CheckChild1Integer, 102|128,111,
16621 OPC_RecordChild2,
16622 OPC_CheckChild2TypeI64,
16623 OPC_RecordChild3,
16624 OPC_CheckPatternPredicate2,
16625 OPC_EmitMergeInputChains1_0,
16626 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::VLDX),
16627 40, 2, 1, 2,
16628 15,
16629 OPC_CheckChild1Integer, 50|128,100,
16630 OPC_RecordChild2,
16631 OPC_CheckChild2TypeI64,
16632 OPC_RecordChild3,
16633 OPC_CheckPatternPredicate3,
16634 OPC_EmitMergeInputChains1_0,
16635 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::XVLDX),
16636 41, 2, 1, 2,
16637 0,
16638 7|128,36|128,1, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
16639 OPC_Scope, 21,
16640 OPC_CheckChild0Integer, 12|128,114,
16641 OPC_RecordChild1,
16642 OPC_RecordChild2,
16643 OPC_MoveChild2,
16644 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16645 OPC_MoveParent,
16646 OPC_CheckPatternPredicate2,
16647 OPC_EmitNodeXForm, 7, 1,
16648 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_D),
16649 8, 2, 0, 2,
16650 21,
16651 OPC_CheckChild0Integer, 14|128,114,
16652 OPC_RecordChild1,
16653 OPC_RecordChild2,
16654 OPC_MoveChild2,
16655 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16656 OPC_MoveParent,
16657 OPC_CheckPatternPredicate2,
16658 OPC_EmitNodeXForm, 7, 1,
16659 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_DU),
16660 8, 2, 0, 2,
16661 21,
16662 OPC_CheckChild0Integer, 98|128,102,
16663 OPC_RecordChild1,
16664 OPC_RecordChild2,
16665 OPC_MoveChild2,
16666 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16667 OPC_MoveParent,
16668 OPC_CheckPatternPredicate3,
16669 OPC_EmitNodeXForm, 7, 1,
16670 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE2GR_D),
16671 8, 2, 0, 2,
16672 21,
16673 OPC_CheckChild0Integer, 100|128,102,
16674 OPC_RecordChild1,
16675 OPC_RecordChild2,
16676 OPC_MoveChild2,
16677 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16678 OPC_MoveParent,
16679 OPC_CheckPatternPredicate3,
16680 OPC_EmitNodeXForm, 7, 1,
16681 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE2GR_DU),
16682 8, 2, 0, 2,
16683 12,
16684 OPC_CheckChild0Integer, 34|128,95,
16685 OPC_RecordChild1,
16686 OPC_CheckPatternPredicate, 18,
16687 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRECIPE_S),
16688 12, 1, 0,
16689 12,
16690 OPC_CheckChild0Integer, 38|128,95,
16691 OPC_RecordChild1,
16692 OPC_CheckPatternPredicate, 18,
16693 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRSQRTE_S),
16694 12, 1, 0,
16695 12,
16696 OPC_CheckChild0Integer, 32|128,95,
16697 OPC_RecordChild1,
16698 OPC_CheckPatternPredicate, 18,
16699 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRECIPE_D),
16700 13, 1, 0,
16701 12,
16702 OPC_CheckChild0Integer, 36|128,95,
16703 OPC_RecordChild1,
16704 OPC_CheckPatternPredicate, 18,
16705 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRSQRTE_D),
16706 13, 1, 0,
16707 33,
16708 OPC_CheckChild0Integer, 92|128,111,
16709 OPC_RecordChild1,
16710 OPC_MoveChild1,
16711 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16712 OPC_MoveParent,
16713 OPC_Scope, 10,
16714 OPC_CheckPatternPredicate2,
16715 OPC_EmitNodeXForm, 7, 0,
16716 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VLDI),
16717 81, 1, 1,
16718 10,
16719 OPC_CheckPatternPredicate4,
16720 OPC_EmitNodeXForm, 7, 0,
16721 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VLDI),
16722 81, 1, 1,
16723 0,
16724 33,
16725 OPC_CheckChild0Integer, 32|128,114,
16726 OPC_RecordChild1,
16727 OPC_MoveChild1,
16728 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16729 OPC_MoveParent,
16730 OPC_Scope, 10,
16731 OPC_CheckPatternPredicate2,
16732 OPC_EmitNodeXForm, 7, 0,
16733 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVREPLI_B),
16734 40, 1, 1,
16735 10,
16736 OPC_CheckPatternPredicate4,
16737 OPC_EmitNodeXForm, 7, 0,
16738 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVREPLI_B),
16739 40, 1, 1,
16740 0,
16741 33,
16742 OPC_CheckChild0Integer, 36|128,114,
16743 OPC_RecordChild1,
16744 OPC_MoveChild1,
16745 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16746 OPC_MoveParent,
16747 OPC_Scope, 10,
16748 OPC_CheckPatternPredicate2,
16749 OPC_EmitNodeXForm, 7, 0,
16750 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVREPLI_H),
16751 51, 1, 1,
16752 10,
16753 OPC_CheckPatternPredicate4,
16754 OPC_EmitNodeXForm, 7, 0,
16755 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVREPLI_H),
16756 51, 1, 1,
16757 0,
16758 33,
16759 OPC_CheckChild0Integer, 38|128,114,
16760 OPC_RecordChild1,
16761 OPC_MoveChild1,
16762 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16763 OPC_MoveParent,
16764 OPC_Scope, 10,
16765 OPC_CheckPatternPredicate2,
16766 OPC_EmitNodeXForm, 7, 0,
16767 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVREPLI_W),
16768 62, 1, 1,
16769 10,
16770 OPC_CheckPatternPredicate4,
16771 OPC_EmitNodeXForm, 7, 0,
16772 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVREPLI_W),
16773 62, 1, 1,
16774 0,
16775 33,
16776 OPC_CheckChild0Integer, 34|128,114,
16777 OPC_RecordChild1,
16778 OPC_MoveChild1,
16779 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16780 OPC_MoveParent,
16781 OPC_Scope, 10,
16782 OPC_CheckPatternPredicate2,
16783 OPC_EmitNodeXForm, 7, 0,
16784 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVREPLI_D),
16785 81, 1, 1,
16786 10,
16787 OPC_CheckPatternPredicate4,
16788 OPC_EmitNodeXForm, 7, 0,
16789 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVREPLI_D),
16790 81, 1, 1,
16791 0,
16792 36,
16793 OPC_CheckChild0Integer, 88|128,114,
16794 OPC_RecordChild1,
16795 OPC_RecordChild2,
16796 OPC_MoveChild2,
16797 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16798 OPC_MoveParent,
16799 OPC_Scope, 11,
16800 OPC_CheckPatternPredicate2,
16801 OPC_EmitNodeXForm, 7, 1,
16802 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_B),
16803 40, 2, 0, 2,
16804 11,
16805 OPC_CheckPatternPredicate4,
16806 OPC_EmitNodeXForm, 7, 1,
16807 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_B),
16808 40, 2, 0, 2,
16809 0,
16810 36,
16811 OPC_CheckChild0Integer, 90|128,114,
16812 OPC_RecordChild1,
16813 OPC_RecordChild2,
16814 OPC_MoveChild2,
16815 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16816 OPC_MoveParent,
16817 OPC_Scope, 11,
16818 OPC_CheckPatternPredicate2,
16819 OPC_EmitNodeXForm, 7, 1,
16820 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_BU),
16821 40, 2, 0, 2,
16822 11,
16823 OPC_CheckPatternPredicate4,
16824 OPC_EmitNodeXForm, 7, 1,
16825 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_BU),
16826 40, 2, 0, 2,
16827 0,
16828 36,
16829 OPC_CheckChild0Integer, 86|128,113,
16830 OPC_RecordChild1,
16831 OPC_RecordChild2,
16832 OPC_MoveChild2,
16833 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16834 OPC_MoveParent,
16835 OPC_Scope, 11,
16836 OPC_CheckPatternPredicate2,
16837 OPC_EmitNodeXForm, 7, 1,
16838 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VNORI_B),
16839 40, 2, 0, 2,
16840 11,
16841 OPC_CheckPatternPredicate4,
16842 OPC_EmitNodeXForm, 7, 1,
16843 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VNORI_B),
16844 40, 2, 0, 2,
16845 0,
16846 36,
16847 OPC_CheckChild0Integer, 64|128,114,
16848 OPC_RecordChild1,
16849 OPC_RecordChild2,
16850 OPC_MoveChild2,
16851 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16852 OPC_MoveParent,
16853 OPC_Scope, 11,
16854 OPC_CheckPatternPredicate2,
16855 OPC_EmitNodeXForm, 7, 1,
16856 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTRI_B),
16857 40, 2, 0, 2,
16858 11,
16859 OPC_CheckPatternPredicate4,
16860 OPC_EmitNodeXForm, 7, 1,
16861 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTRI_B),
16862 40, 2, 0, 2,
16863 0,
16864 36,
16865 OPC_CheckChild0Integer, 68|128,115,
16866 OPC_RecordChild1,
16867 OPC_RecordChild2,
16868 OPC_MoveChild2,
16869 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16870 OPC_MoveParent,
16871 OPC_Scope, 11,
16872 OPC_CheckPatternPredicate2,
16873 OPC_EmitNodeXForm, 7, 1,
16874 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_H_B),
16875 51, 2, 0, 2,
16876 11,
16877 OPC_CheckPatternPredicate4,
16878 OPC_EmitNodeXForm, 7, 1,
16879 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_H_B),
16880 51, 2, 0, 2,
16881 0,
16882 36,
16883 OPC_CheckChild0Integer, 70|128,115,
16884 OPC_RecordChild1,
16885 OPC_RecordChild2,
16886 OPC_MoveChild2,
16887 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16888 OPC_MoveParent,
16889 OPC_Scope, 11,
16890 OPC_CheckPatternPredicate2,
16891 OPC_EmitNodeXForm, 7, 1,
16892 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_HU_BU),
16893 51, 2, 0, 2,
16894 11,
16895 OPC_CheckPatternPredicate4,
16896 OPC_EmitNodeXForm, 7, 1,
16897 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_HU_BU),
16898 51, 2, 0, 2,
16899 0,
16900 36,
16901 OPC_CheckChild0Integer, 78|128,116,
16902 OPC_RecordChild1,
16903 OPC_RecordChild2,
16904 OPC_MoveChild2,
16905 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16906 OPC_MoveParent,
16907 OPC_Scope, 11,
16908 OPC_CheckPatternPredicate2,
16909 OPC_EmitNodeXForm, 7, 1,
16910 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRI_B),
16911 40, 2, 0, 2,
16912 11,
16913 OPC_CheckPatternPredicate4,
16914 OPC_EmitNodeXForm, 7, 1,
16915 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRI_B),
16916 40, 2, 0, 2,
16917 0,
16918 36,
16919 OPC_CheckChild0Integer, 18|128,116,
16920 OPC_RecordChild1,
16921 OPC_RecordChild2,
16922 OPC_MoveChild2,
16923 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16924 OPC_MoveParent,
16925 OPC_Scope, 11,
16926 OPC_CheckPatternPredicate2,
16927 OPC_EmitNodeXForm, 7, 1,
16928 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARI_B),
16929 40, 2, 0, 2,
16930 11,
16931 OPC_CheckPatternPredicate4,
16932 OPC_EmitNodeXForm, 7, 1,
16933 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARI_B),
16934 40, 2, 0, 2,
16935 0,
16936 36,
16937 OPC_CheckChild0Integer, 112|128,114,
16938 OPC_RecordChild1,
16939 OPC_RecordChild2,
16940 OPC_MoveChild2,
16941 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16942 OPC_MoveParent,
16943 OPC_Scope, 11,
16944 OPC_CheckPatternPredicate2,
16945 OPC_EmitNodeXForm, 7, 1,
16946 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_B),
16947 40, 2, 0, 2,
16948 11,
16949 OPC_CheckPatternPredicate4,
16950 OPC_EmitNodeXForm, 7, 1,
16951 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_B),
16952 40, 2, 0, 2,
16953 0,
16954 36,
16955 OPC_CheckChild0Integer, 32|128,115,
16956 OPC_RecordChild1,
16957 OPC_RecordChild2,
16958 OPC_MoveChild2,
16959 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16960 OPC_MoveParent,
16961 OPC_Scope, 11,
16962 OPC_CheckPatternPredicate2,
16963 OPC_EmitNodeXForm, 7, 1,
16964 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_B),
16965 40, 2, 0, 2,
16966 11,
16967 OPC_CheckPatternPredicate4,
16968 OPC_EmitNodeXForm, 7, 1,
16969 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_B),
16970 40, 2, 0, 2,
16971 0,
16972 36,
16973 OPC_CheckChild0Integer, 34|128,115,
16974 OPC_RecordChild1,
16975 OPC_RecordChild2,
16976 OPC_MoveChild2,
16977 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16978 OPC_MoveParent,
16979 OPC_Scope, 11,
16980 OPC_CheckPatternPredicate2,
16981 OPC_EmitNodeXForm, 7, 1,
16982 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_BU),
16983 40, 2, 0, 2,
16984 11,
16985 OPC_CheckPatternPredicate4,
16986 OPC_EmitNodeXForm, 7, 1,
16987 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_BU),
16988 40, 2, 0, 2,
16989 0,
16990 36,
16991 OPC_CheckChild0Integer, 92|128,115,
16992 OPC_RecordChild1,
16993 OPC_RecordChild2,
16994 OPC_MoveChild2,
16995 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16996 OPC_MoveParent,
16997 OPC_Scope, 11,
16998 OPC_CheckPatternPredicate2,
16999 OPC_EmitNodeXForm, 7, 1,
17000 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_B),
17001 40, 2, 0, 2,
17002 11,
17003 OPC_CheckPatternPredicate4,
17004 OPC_EmitNodeXForm, 7, 1,
17005 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_B),
17006 40, 2, 0, 2,
17007 0,
17008 36,
17009 OPC_CheckChild0Integer, 94|128,115,
17010 OPC_RecordChild1,
17011 OPC_RecordChild2,
17012 OPC_MoveChild2,
17013 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17014 OPC_MoveParent,
17015 OPC_Scope, 11,
17016 OPC_CheckPatternPredicate2,
17017 OPC_EmitNodeXForm, 7, 1,
17018 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_BU),
17019 40, 2, 0, 2,
17020 11,
17021 OPC_CheckPatternPredicate4,
17022 OPC_EmitNodeXForm, 7, 1,
17023 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_BU),
17024 40, 2, 0, 2,
17025 0,
17026 36,
17027 OPC_CheckChild0Integer, 48|128,114,
17028 OPC_RecordChild1,
17029 OPC_RecordChild2,
17030 OPC_MoveChild2,
17031 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17032 OPC_MoveParent,
17033 OPC_Scope, 11,
17034 OPC_CheckPatternPredicate2,
17035 OPC_EmitNodeXForm, 7, 1,
17036 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_B),
17037 40, 2, 0, 2,
17038 11,
17039 OPC_CheckPatternPredicate4,
17040 OPC_EmitNodeXForm, 7, 1,
17041 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_B),
17042 40, 2, 0, 2,
17043 0,
17044 36,
17045 OPC_CheckChild0Integer, 78|128,108,
17046 OPC_RecordChild1,
17047 OPC_RecordChild2,
17048 OPC_MoveChild2,
17049 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17050 OPC_MoveParent,
17051 OPC_Scope, 11,
17052 OPC_CheckPatternPredicate2,
17053 OPC_EmitNodeXForm, 7, 1,
17054 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSLL_V),
17055 40, 2, 0, 2,
17056 11,
17057 OPC_CheckPatternPredicate4,
17058 OPC_EmitNodeXForm, 7, 1,
17059 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSLL_V),
17060 40, 2, 0, 2,
17061 0,
17062 36,
17063 OPC_CheckChild0Integer, 80|128,108,
17064 OPC_RecordChild1,
17065 OPC_RecordChild2,
17066 OPC_MoveChild2,
17067 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17068 OPC_MoveParent,
17069 OPC_Scope, 11,
17070 OPC_CheckPatternPredicate2,
17071 OPC_EmitNodeXForm, 7, 1,
17072 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSRL_V),
17073 40, 2, 0, 2,
17074 11,
17075 OPC_CheckPatternPredicate4,
17076 OPC_EmitNodeXForm, 7, 1,
17077 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSRL_V),
17078 40, 2, 0, 2,
17079 0,
17080 36,
17081 OPC_CheckChild0Integer, 0|128,115,
17082 OPC_RecordChild1,
17083 OPC_RecordChild2,
17084 OPC_MoveChild2,
17085 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17086 OPC_MoveParent,
17087 OPC_Scope, 11,
17088 OPC_CheckPatternPredicate2,
17089 OPC_EmitNodeXForm, 7, 1,
17090 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_B),
17091 40, 2, 0, 2,
17092 11,
17093 OPC_CheckPatternPredicate4,
17094 OPC_EmitNodeXForm, 7, 1,
17095 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_B),
17096 40, 2, 0, 2,
17097 0,
17098 36,
17099 OPC_CheckChild0Integer, 96|128,114,
17100 OPC_RecordChild1,
17101 OPC_RecordChild2,
17102 OPC_MoveChild2,
17103 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17104 OPC_MoveParent,
17105 OPC_Scope, 11,
17106 OPC_CheckPatternPredicate2,
17107 OPC_EmitNodeXForm, 7, 1,
17108 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_H),
17109 51, 2, 0, 2,
17110 11,
17111 OPC_CheckPatternPredicate4,
17112 OPC_EmitNodeXForm, 7, 1,
17113 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_H),
17114 51, 2, 0, 2,
17115 0,
17116 36,
17117 OPC_CheckChild0Integer, 98|128,114,
17118 OPC_RecordChild1,
17119 OPC_RecordChild2,
17120 OPC_MoveChild2,
17121 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17122 OPC_MoveParent,
17123 OPC_Scope, 11,
17124 OPC_CheckPatternPredicate2,
17125 OPC_EmitNodeXForm, 7, 1,
17126 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_HU),
17127 51, 2, 0, 2,
17128 11,
17129 OPC_CheckPatternPredicate4,
17130 OPC_EmitNodeXForm, 7, 1,
17131 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_HU),
17132 51, 2, 0, 2,
17133 0,
17134 36,
17135 OPC_CheckChild0Integer, 68|128,114,
17136 OPC_RecordChild1,
17137 OPC_RecordChild2,
17138 OPC_MoveChild2,
17139 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17140 OPC_MoveParent,
17141 OPC_Scope, 11,
17142 OPC_CheckPatternPredicate2,
17143 OPC_EmitNodeXForm, 7, 1,
17144 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTRI_H),
17145 51, 2, 0, 2,
17146 11,
17147 OPC_CheckPatternPredicate4,
17148 OPC_EmitNodeXForm, 7, 1,
17149 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTRI_H),
17150 51, 2, 0, 2,
17151 0,
17152 36,
17153 OPC_CheckChild0Integer, 72|128,115,
17154 OPC_RecordChild1,
17155 OPC_RecordChild2,
17156 OPC_MoveChild2,
17157 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17158 OPC_MoveParent,
17159 OPC_Scope, 11,
17160 OPC_CheckPatternPredicate2,
17161 OPC_EmitNodeXForm, 7, 1,
17162 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_W_H),
17163 62, 2, 0, 2,
17164 11,
17165 OPC_CheckPatternPredicate4,
17166 OPC_EmitNodeXForm, 7, 1,
17167 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_W_H),
17168 62, 2, 0, 2,
17169 0,
17170 36,
17171 OPC_CheckChild0Integer, 74|128,115,
17172 OPC_RecordChild1,
17173 OPC_RecordChild2,
17174 OPC_MoveChild2,
17175 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17176 OPC_MoveParent,
17177 OPC_Scope, 11,
17178 OPC_CheckPatternPredicate2,
17179 OPC_EmitNodeXForm, 7, 1,
17180 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_WU_HU),
17181 62, 2, 0, 2,
17182 11,
17183 OPC_CheckPatternPredicate4,
17184 OPC_EmitNodeXForm, 7, 1,
17185 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_WU_HU),
17186 62, 2, 0, 2,
17187 0,
17188 36,
17189 OPC_CheckChild0Integer, 82|128,116,
17190 OPC_RecordChild1,
17191 OPC_RecordChild2,
17192 OPC_MoveChild2,
17193 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17194 OPC_MoveParent,
17195 OPC_Scope, 11,
17196 OPC_CheckPatternPredicate2,
17197 OPC_EmitNodeXForm, 7, 1,
17198 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRI_H),
17199 51, 2, 0, 2,
17200 11,
17201 OPC_CheckPatternPredicate4,
17202 OPC_EmitNodeXForm, 7, 1,
17203 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRI_H),
17204 51, 2, 0, 2,
17205 0,
17206 36,
17207 OPC_CheckChild0Integer, 22|128,116,
17208 OPC_RecordChild1,
17209 OPC_RecordChild2,
17210 OPC_MoveChild2,
17211 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17212 OPC_MoveParent,
17213 OPC_Scope, 11,
17214 OPC_CheckPatternPredicate2,
17215 OPC_EmitNodeXForm, 7, 1,
17216 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARI_H),
17217 51, 2, 0, 2,
17218 11,
17219 OPC_CheckPatternPredicate4,
17220 OPC_EmitNodeXForm, 7, 1,
17221 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARI_H),
17222 51, 2, 0, 2,
17223 0,
17224 36,
17225 OPC_CheckChild0Integer, 116|128,114,
17226 OPC_RecordChild1,
17227 OPC_RecordChild2,
17228 OPC_MoveChild2,
17229 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17230 OPC_MoveParent,
17231 OPC_Scope, 11,
17232 OPC_CheckPatternPredicate2,
17233 OPC_EmitNodeXForm, 7, 1,
17234 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_H),
17235 51, 2, 0, 2,
17236 11,
17237 OPC_CheckPatternPredicate4,
17238 OPC_EmitNodeXForm, 7, 1,
17239 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_H),
17240 51, 2, 0, 2,
17241 0,
17242 36,
17243 OPC_CheckChild0Integer, 40|128,115,
17244 OPC_RecordChild1,
17245 OPC_RecordChild2,
17246 OPC_MoveChild2,
17247 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17248 OPC_MoveParent,
17249 OPC_Scope, 11,
17250 OPC_CheckPatternPredicate2,
17251 OPC_EmitNodeXForm, 7, 1,
17252 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_H),
17253 51, 2, 0, 2,
17254 11,
17255 OPC_CheckPatternPredicate4,
17256 OPC_EmitNodeXForm, 7, 1,
17257 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_H),
17258 51, 2, 0, 2,
17259 0,
17260 36,
17261 OPC_CheckChild0Integer, 42|128,115,
17262 OPC_RecordChild1,
17263 OPC_RecordChild2,
17264 OPC_MoveChild2,
17265 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17266 OPC_MoveParent,
17267 OPC_Scope, 11,
17268 OPC_CheckPatternPredicate2,
17269 OPC_EmitNodeXForm, 7, 1,
17270 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_HU),
17271 51, 2, 0, 2,
17272 11,
17273 OPC_CheckPatternPredicate4,
17274 OPC_EmitNodeXForm, 7, 1,
17275 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_HU),
17276 51, 2, 0, 2,
17277 0,
17278 36,
17279 OPC_CheckChild0Integer, 100|128,115,
17280 OPC_RecordChild1,
17281 OPC_RecordChild2,
17282 OPC_MoveChild2,
17283 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17284 OPC_MoveParent,
17285 OPC_Scope, 11,
17286 OPC_CheckPatternPredicate2,
17287 OPC_EmitNodeXForm, 7, 1,
17288 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_H),
17289 51, 2, 0, 2,
17290 11,
17291 OPC_CheckPatternPredicate4,
17292 OPC_EmitNodeXForm, 7, 1,
17293 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_H),
17294 51, 2, 0, 2,
17295 0,
17296 36,
17297 OPC_CheckChild0Integer, 102|128,115,
17298 OPC_RecordChild1,
17299 OPC_RecordChild2,
17300 OPC_MoveChild2,
17301 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17302 OPC_MoveParent,
17303 OPC_Scope, 11,
17304 OPC_CheckPatternPredicate2,
17305 OPC_EmitNodeXForm, 7, 1,
17306 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_HU),
17307 51, 2, 0, 2,
17308 11,
17309 OPC_CheckPatternPredicate4,
17310 OPC_EmitNodeXForm, 7, 1,
17311 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_HU),
17312 51, 2, 0, 2,
17313 0,
17314 36,
17315 OPC_CheckChild0Integer, 52|128,114,
17316 OPC_RecordChild1,
17317 OPC_RecordChild2,
17318 OPC_MoveChild2,
17319 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17320 OPC_MoveParent,
17321 OPC_Scope, 11,
17322 OPC_CheckPatternPredicate2,
17323 OPC_EmitNodeXForm, 7, 1,
17324 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_H),
17325 51, 2, 0, 2,
17326 11,
17327 OPC_CheckPatternPredicate4,
17328 OPC_EmitNodeXForm, 7, 1,
17329 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_H),
17330 51, 2, 0, 2,
17331 0,
17332 36,
17333 OPC_CheckChild0Integer, 4|128,115,
17334 OPC_RecordChild1,
17335 OPC_RecordChild2,
17336 OPC_MoveChild2,
17337 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17338 OPC_MoveParent,
17339 OPC_Scope, 11,
17340 OPC_CheckPatternPredicate2,
17341 OPC_EmitNodeXForm, 7, 1,
17342 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_H),
17343 51, 2, 0, 2,
17344 11,
17345 OPC_CheckPatternPredicate4,
17346 OPC_EmitNodeXForm, 7, 1,
17347 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_H),
17348 51, 2, 0, 2,
17349 0,
17350 36,
17351 OPC_CheckChild0Integer, 100|128,114,
17352 OPC_RecordChild1,
17353 OPC_RecordChild2,
17354 OPC_MoveChild2,
17355 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17356 OPC_MoveParent,
17357 OPC_Scope, 11,
17358 OPC_CheckPatternPredicate2,
17359 OPC_EmitNodeXForm, 7, 1,
17360 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_W),
17361 62, 2, 0, 2,
17362 11,
17363 OPC_CheckPatternPredicate4,
17364 OPC_EmitNodeXForm, 7, 1,
17365 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_W),
17366 62, 2, 0, 2,
17367 0,
17368 36,
17369 OPC_CheckChild0Integer, 102|128,114,
17370 OPC_RecordChild1,
17371 OPC_RecordChild2,
17372 OPC_MoveChild2,
17373 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17374 OPC_MoveParent,
17375 OPC_Scope, 11,
17376 OPC_CheckPatternPredicate2,
17377 OPC_EmitNodeXForm, 7, 1,
17378 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_WU),
17379 62, 2, 0, 2,
17380 11,
17381 OPC_CheckPatternPredicate4,
17382 OPC_EmitNodeXForm, 7, 1,
17383 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_WU),
17384 62, 2, 0, 2,
17385 0,
17386 36,
17387 OPC_CheckChild0Integer, 70|128,114,
17388 OPC_RecordChild1,
17389 OPC_RecordChild2,
17390 OPC_MoveChild2,
17391 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17392 OPC_MoveParent,
17393 OPC_Scope, 11,
17394 OPC_CheckPatternPredicate2,
17395 OPC_EmitNodeXForm, 7, 1,
17396 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTRI_W),
17397 62, 2, 0, 2,
17398 11,
17399 OPC_CheckPatternPredicate4,
17400 OPC_EmitNodeXForm, 7, 1,
17401 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTRI_W),
17402 62, 2, 0, 2,
17403 0,
17404 36,
17405 OPC_CheckChild0Integer, 64|128,115,
17406 OPC_RecordChild1,
17407 OPC_RecordChild2,
17408 OPC_MoveChild2,
17409 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17410 OPC_MoveParent,
17411 OPC_Scope, 11,
17412 OPC_CheckPatternPredicate2,
17413 OPC_EmitNodeXForm, 7, 1,
17414 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_D_W),
17415 81, 2, 0, 2,
17416 11,
17417 OPC_CheckPatternPredicate4,
17418 OPC_EmitNodeXForm, 7, 1,
17419 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_D_W),
17420 81, 2, 0, 2,
17421 0,
17422 36,
17423 OPC_CheckChild0Integer, 66|128,115,
17424 OPC_RecordChild1,
17425 OPC_RecordChild2,
17426 OPC_MoveChild2,
17427 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17428 OPC_MoveParent,
17429 OPC_Scope, 11,
17430 OPC_CheckPatternPredicate2,
17431 OPC_EmitNodeXForm, 7, 1,
17432 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_DU_WU),
17433 81, 2, 0, 2,
17434 11,
17435 OPC_CheckPatternPredicate4,
17436 OPC_EmitNodeXForm, 7, 1,
17437 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLWIL_DU_WU),
17438 81, 2, 0, 2,
17439 0,
17440 36,
17441 OPC_CheckChild0Integer, 84|128,116,
17442 OPC_RecordChild1,
17443 OPC_RecordChild2,
17444 OPC_MoveChild2,
17445 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17446 OPC_MoveParent,
17447 OPC_Scope, 11,
17448 OPC_CheckPatternPredicate2,
17449 OPC_EmitNodeXForm, 7, 1,
17450 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRI_W),
17451 62, 2, 0, 2,
17452 11,
17453 OPC_CheckPatternPredicate4,
17454 OPC_EmitNodeXForm, 7, 1,
17455 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRI_W),
17456 62, 2, 0, 2,
17457 0,
17458 36,
17459 OPC_CheckChild0Integer, 24|128,116,
17460 OPC_RecordChild1,
17461 OPC_RecordChild2,
17462 OPC_MoveChild2,
17463 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17464 OPC_MoveParent,
17465 OPC_Scope, 11,
17466 OPC_CheckPatternPredicate2,
17467 OPC_EmitNodeXForm, 7, 1,
17468 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARI_W),
17469 62, 2, 0, 2,
17470 11,
17471 OPC_CheckPatternPredicate4,
17472 OPC_EmitNodeXForm, 7, 1,
17473 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARI_W),
17474 62, 2, 0, 2,
17475 0,
17476 36,
17477 OPC_CheckChild0Integer, 118|128,114,
17478 OPC_RecordChild1,
17479 OPC_RecordChild2,
17480 OPC_MoveChild2,
17481 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17482 OPC_MoveParent,
17483 OPC_Scope, 11,
17484 OPC_CheckPatternPredicate2,
17485 OPC_EmitNodeXForm, 7, 1,
17486 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_W),
17487 62, 2, 0, 2,
17488 11,
17489 OPC_CheckPatternPredicate4,
17490 OPC_EmitNodeXForm, 7, 1,
17491 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_W),
17492 62, 2, 0, 2,
17493 0,
17494 36,
17495 OPC_CheckChild0Integer, 44|128,115,
17496 OPC_RecordChild1,
17497 OPC_RecordChild2,
17498 OPC_MoveChild2,
17499 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17500 OPC_MoveParent,
17501 OPC_Scope, 11,
17502 OPC_CheckPatternPredicate2,
17503 OPC_EmitNodeXForm, 7, 1,
17504 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_W),
17505 62, 2, 0, 2,
17506 11,
17507 OPC_CheckPatternPredicate4,
17508 OPC_EmitNodeXForm, 7, 1,
17509 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_W),
17510 62, 2, 0, 2,
17511 0,
17512 36,
17513 OPC_CheckChild0Integer, 46|128,115,
17514 OPC_RecordChild1,
17515 OPC_RecordChild2,
17516 OPC_MoveChild2,
17517 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17518 OPC_MoveParent,
17519 OPC_Scope, 11,
17520 OPC_CheckPatternPredicate2,
17521 OPC_EmitNodeXForm, 7, 1,
17522 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_WU),
17523 62, 2, 0, 2,
17524 11,
17525 OPC_CheckPatternPredicate4,
17526 OPC_EmitNodeXForm, 7, 1,
17527 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_WU),
17528 62, 2, 0, 2,
17529 0,
17530 36,
17531 OPC_CheckChild0Integer, 104|128,115,
17532 OPC_RecordChild1,
17533 OPC_RecordChild2,
17534 OPC_MoveChild2,
17535 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17536 OPC_MoveParent,
17537 OPC_Scope, 11,
17538 OPC_CheckPatternPredicate2,
17539 OPC_EmitNodeXForm, 7, 1,
17540 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_W),
17541 62, 2, 0, 2,
17542 11,
17543 OPC_CheckPatternPredicate4,
17544 OPC_EmitNodeXForm, 7, 1,
17545 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_W),
17546 62, 2, 0, 2,
17547 0,
17548 36,
17549 OPC_CheckChild0Integer, 106|128,115,
17550 OPC_RecordChild1,
17551 OPC_RecordChild2,
17552 OPC_MoveChild2,
17553 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17554 OPC_MoveParent,
17555 OPC_Scope, 11,
17556 OPC_CheckPatternPredicate2,
17557 OPC_EmitNodeXForm, 7, 1,
17558 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_WU),
17559 62, 2, 0, 2,
17560 11,
17561 OPC_CheckPatternPredicate4,
17562 OPC_EmitNodeXForm, 7, 1,
17563 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_WU),
17564 62, 2, 0, 2,
17565 0,
17566 36,
17567 OPC_CheckChild0Integer, 54|128,114,
17568 OPC_RecordChild1,
17569 OPC_RecordChild2,
17570 OPC_MoveChild2,
17571 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17572 OPC_MoveParent,
17573 OPC_Scope, 11,
17574 OPC_CheckPatternPredicate2,
17575 OPC_EmitNodeXForm, 7, 1,
17576 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_W),
17577 62, 2, 0, 2,
17578 11,
17579 OPC_CheckPatternPredicate4,
17580 OPC_EmitNodeXForm, 7, 1,
17581 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_W),
17582 62, 2, 0, 2,
17583 0,
17584 36,
17585 OPC_CheckChild0Integer, 6|128,115,
17586 OPC_RecordChild1,
17587 OPC_RecordChild2,
17588 OPC_MoveChild2,
17589 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17590 OPC_MoveParent,
17591 OPC_Scope, 11,
17592 OPC_CheckPatternPredicate2,
17593 OPC_EmitNodeXForm, 7, 1,
17594 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_W),
17595 62, 2, 0, 2,
17596 11,
17597 OPC_CheckPatternPredicate4,
17598 OPC_EmitNodeXForm, 7, 1,
17599 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_W),
17600 62, 2, 0, 2,
17601 0,
17602 36,
17603 OPC_CheckChild0Integer, 92|128,114,
17604 OPC_RecordChild1,
17605 OPC_RecordChild2,
17606 OPC_MoveChild2,
17607 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17608 OPC_MoveParent,
17609 OPC_Scope, 11,
17610 OPC_CheckPatternPredicate2,
17611 OPC_EmitNodeXForm, 7, 1,
17612 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_D),
17613 81, 2, 0, 2,
17614 11,
17615 OPC_CheckPatternPredicate4,
17616 OPC_EmitNodeXForm, 7, 1,
17617 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_D),
17618 81, 2, 0, 2,
17619 0,
17620 36,
17621 OPC_CheckChild0Integer, 94|128,114,
17622 OPC_RecordChild1,
17623 OPC_RecordChild2,
17624 OPC_MoveChild2,
17625 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17626 OPC_MoveParent,
17627 OPC_Scope, 11,
17628 OPC_CheckPatternPredicate2,
17629 OPC_EmitNodeXForm, 7, 1,
17630 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_DU),
17631 81, 2, 0, 2,
17632 11,
17633 OPC_CheckPatternPredicate4,
17634 OPC_EmitNodeXForm, 7, 1,
17635 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSAT_DU),
17636 81, 2, 0, 2,
17637 0,
17638 36,
17639 OPC_CheckChild0Integer, 66|128,114,
17640 OPC_RecordChild1,
17641 OPC_RecordChild2,
17642 OPC_MoveChild2,
17643 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17644 OPC_MoveParent,
17645 OPC_Scope, 11,
17646 OPC_CheckPatternPredicate2,
17647 OPC_EmitNodeXForm, 7, 1,
17648 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTRI_D),
17649 81, 2, 0, 2,
17650 11,
17651 OPC_CheckPatternPredicate4,
17652 OPC_EmitNodeXForm, 7, 1,
17653 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTRI_D),
17654 81, 2, 0, 2,
17655 0,
17656 36,
17657 OPC_CheckChild0Integer, 80|128,116,
17658 OPC_RecordChild1,
17659 OPC_RecordChild2,
17660 OPC_MoveChild2,
17661 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17662 OPC_MoveParent,
17663 OPC_Scope, 11,
17664 OPC_CheckPatternPredicate2,
17665 OPC_EmitNodeXForm, 7, 1,
17666 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRI_D),
17667 81, 2, 0, 2,
17668 11,
17669 OPC_CheckPatternPredicate4,
17670 OPC_EmitNodeXForm, 7, 1,
17671 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRI_D),
17672 81, 2, 0, 2,
17673 0,
17674 36,
17675 OPC_CheckChild0Integer, 20|128,116,
17676 OPC_RecordChild1,
17677 OPC_RecordChild2,
17678 OPC_MoveChild2,
17679 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17680 OPC_MoveParent,
17681 OPC_Scope, 11,
17682 OPC_CheckPatternPredicate2,
17683 OPC_EmitNodeXForm, 7, 1,
17684 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARI_D),
17685 81, 2, 0, 2,
17686 11,
17687 OPC_CheckPatternPredicate4,
17688 OPC_EmitNodeXForm, 7, 1,
17689 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARI_D),
17690 81, 2, 0, 2,
17691 0,
17692 36,
17693 OPC_CheckChild0Integer, 114|128,114,
17694 OPC_RecordChild1,
17695 OPC_RecordChild2,
17696 OPC_MoveChild2,
17697 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17698 OPC_MoveParent,
17699 OPC_Scope, 11,
17700 OPC_CheckPatternPredicate2,
17701 OPC_EmitNodeXForm, 7, 1,
17702 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_D),
17703 81, 2, 0, 2,
17704 11,
17705 OPC_CheckPatternPredicate4,
17706 OPC_EmitNodeXForm, 7, 1,
17707 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_D),
17708 81, 2, 0, 2,
17709 0,
17710 36,
17711 OPC_CheckChild0Integer, 36|128,115,
17712 OPC_RecordChild1,
17713 OPC_RecordChild2,
17714 OPC_MoveChild2,
17715 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17716 OPC_MoveParent,
17717 OPC_Scope, 11,
17718 OPC_CheckPatternPredicate2,
17719 OPC_EmitNodeXForm, 7, 1,
17720 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_D),
17721 81, 2, 0, 2,
17722 11,
17723 OPC_CheckPatternPredicate4,
17724 OPC_EmitNodeXForm, 7, 1,
17725 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_D),
17726 81, 2, 0, 2,
17727 0,
17728 36,
17729 OPC_CheckChild0Integer, 38|128,115,
17730 OPC_RecordChild1,
17731 OPC_RecordChild2,
17732 OPC_MoveChild2,
17733 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17734 OPC_MoveParent,
17735 OPC_Scope, 11,
17736 OPC_CheckPatternPredicate2,
17737 OPC_EmitNodeXForm, 7, 1,
17738 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_DU),
17739 81, 2, 0, 2,
17740 11,
17741 OPC_CheckPatternPredicate4,
17742 OPC_EmitNodeXForm, 7, 1,
17743 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_DU),
17744 81, 2, 0, 2,
17745 0,
17746 36,
17747 OPC_CheckChild0Integer, 96|128,115,
17748 OPC_RecordChild1,
17749 OPC_RecordChild2,
17750 OPC_MoveChild2,
17751 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17752 OPC_MoveParent,
17753 OPC_Scope, 11,
17754 OPC_CheckPatternPredicate2,
17755 OPC_EmitNodeXForm, 7, 1,
17756 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_D),
17757 81, 2, 0, 2,
17758 11,
17759 OPC_CheckPatternPredicate4,
17760 OPC_EmitNodeXForm, 7, 1,
17761 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_D),
17762 81, 2, 0, 2,
17763 0,
17764 36,
17765 OPC_CheckChild0Integer, 98|128,115,
17766 OPC_RecordChild1,
17767 OPC_RecordChild2,
17768 OPC_MoveChild2,
17769 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17770 OPC_MoveParent,
17771 OPC_Scope, 11,
17772 OPC_CheckPatternPredicate2,
17773 OPC_EmitNodeXForm, 7, 1,
17774 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_DU),
17775 81, 2, 0, 2,
17776 11,
17777 OPC_CheckPatternPredicate4,
17778 OPC_EmitNodeXForm, 7, 1,
17779 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_DU),
17780 81, 2, 0, 2,
17781 0,
17782 36,
17783 OPC_CheckChild0Integer, 50|128,114,
17784 OPC_RecordChild1,
17785 OPC_RecordChild2,
17786 OPC_MoveChild2,
17787 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17788 OPC_MoveParent,
17789 OPC_Scope, 11,
17790 OPC_CheckPatternPredicate2,
17791 OPC_EmitNodeXForm, 7, 1,
17792 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_D),
17793 81, 2, 0, 2,
17794 11,
17795 OPC_CheckPatternPredicate4,
17796 OPC_EmitNodeXForm, 7, 1,
17797 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_D),
17798 81, 2, 0, 2,
17799 0,
17800 39,
17801 OPC_CheckChild0Integer, 62|128,116,
17802 OPC_RecordChild1,
17803 OPC_RecordChild2,
17804 OPC_RecordChild3,
17805 OPC_MoveChild3,
17806 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17807 OPC_MoveParent,
17808 OPC_Scope, 12,
17809 OPC_CheckPatternPredicate2,
17810 OPC_EmitNodeXForm, 7, 2,
17811 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLNI_B_H),
17812 40, 3, 0, 1, 3,
17813 12,
17814 OPC_CheckPatternPredicate4,
17815 OPC_EmitNodeXForm, 7, 2,
17816 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLNI_B_H),
17817 40, 3, 0, 1, 3,
17818 0,
17819 39,
17820 OPC_CheckChild0Integer, 2|128,116,
17821 OPC_RecordChild1,
17822 OPC_RecordChild2,
17823 OPC_RecordChild3,
17824 OPC_MoveChild3,
17825 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17826 OPC_MoveParent,
17827 OPC_Scope, 12,
17828 OPC_CheckPatternPredicate2,
17829 OPC_EmitNodeXForm, 7, 2,
17830 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRANI_B_H),
17831 40, 3, 0, 1, 3,
17832 12,
17833 OPC_CheckPatternPredicate4,
17834 OPC_EmitNodeXForm, 7, 2,
17835 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRANI_B_H),
17836 40, 3, 0, 1, 3,
17837 0,
17838 39,
17839 OPC_CheckChild0Integer, 92|128,116,
17840 OPC_RecordChild1,
17841 OPC_RecordChild2,
17842 OPC_RecordChild3,
17843 OPC_MoveChild3,
17844 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17845 OPC_MoveParent,
17846 OPC_Scope, 12,
17847 OPC_CheckPatternPredicate2,
17848 OPC_EmitNodeXForm, 7, 2,
17849 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRNI_B_H),
17850 40, 3, 0, 1, 3,
17851 12,
17852 OPC_CheckPatternPredicate4,
17853 OPC_EmitNodeXForm, 7, 2,
17854 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRNI_B_H),
17855 40, 3, 0, 1, 3,
17856 0,
17857 39,
17858 OPC_CheckChild0Integer, 32|128,116,
17859 OPC_RecordChild1,
17860 OPC_RecordChild2,
17861 OPC_RecordChild3,
17862 OPC_MoveChild3,
17863 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17864 OPC_MoveParent,
17865 OPC_Scope, 12,
17866 OPC_CheckPatternPredicate2,
17867 OPC_EmitNodeXForm, 7, 2,
17868 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARNI_B_H),
17869 40, 3, 0, 1, 3,
17870 12,
17871 OPC_CheckPatternPredicate4,
17872 OPC_EmitNodeXForm, 7, 2,
17873 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARNI_B_H),
17874 40, 3, 0, 1, 3,
17875 0,
17876 39,
17877 OPC_CheckChild0Integer, 40|128,117,
17878 OPC_RecordChild1,
17879 OPC_RecordChild2,
17880 OPC_RecordChild3,
17881 OPC_MoveChild3,
17882 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17883 OPC_MoveParent,
17884 OPC_Scope, 12,
17885 OPC_CheckPatternPredicate2,
17886 OPC_EmitNodeXForm, 7, 2,
17887 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_B_H),
17888 40, 3, 0, 1, 3,
17889 12,
17890 OPC_CheckPatternPredicate4,
17891 OPC_EmitNodeXForm, 7, 2,
17892 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_B_H),
17893 40, 3, 0, 1, 3,
17894 0,
17895 39,
17896 OPC_CheckChild0Integer, 112|128,116,
17897 OPC_RecordChild1,
17898 OPC_RecordChild2,
17899 OPC_RecordChild3,
17900 OPC_MoveChild3,
17901 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17902 OPC_MoveParent,
17903 OPC_Scope, 12,
17904 OPC_CheckPatternPredicate2,
17905 OPC_EmitNodeXForm, 7, 2,
17906 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_B_H),
17907 40, 3, 0, 1, 3,
17908 12,
17909 OPC_CheckPatternPredicate4,
17910 OPC_EmitNodeXForm, 7, 2,
17911 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_B_H),
17912 40, 3, 0, 1, 3,
17913 0,
17914 39,
17915 OPC_CheckChild0Integer, 42|128,117,
17916 OPC_RecordChild1,
17917 OPC_RecordChild2,
17918 OPC_RecordChild3,
17919 OPC_MoveChild3,
17920 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17921 OPC_MoveParent,
17922 OPC_Scope, 12,
17923 OPC_CheckPatternPredicate2,
17924 OPC_EmitNodeXForm, 7, 2,
17925 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_BU_H),
17926 40, 3, 0, 1, 3,
17927 12,
17928 OPC_CheckPatternPredicate4,
17929 OPC_EmitNodeXForm, 7, 2,
17930 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_BU_H),
17931 40, 3, 0, 1, 3,
17932 0,
17933 39,
17934 OPC_CheckChild0Integer, 114|128,116,
17935 OPC_RecordChild1,
17936 OPC_RecordChild2,
17937 OPC_RecordChild3,
17938 OPC_MoveChild3,
17939 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17940 OPC_MoveParent,
17941 OPC_Scope, 12,
17942 OPC_CheckPatternPredicate2,
17943 OPC_EmitNodeXForm, 7, 2,
17944 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_BU_H),
17945 40, 3, 0, 1, 3,
17946 12,
17947 OPC_CheckPatternPredicate4,
17948 OPC_EmitNodeXForm, 7, 2,
17949 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_BU_H),
17950 40, 3, 0, 1, 3,
17951 0,
17952 39,
17953 OPC_CheckChild0Integer, 68|128,117,
17954 OPC_RecordChild1,
17955 OPC_RecordChild2,
17956 OPC_RecordChild3,
17957 OPC_MoveChild3,
17958 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17959 OPC_MoveParent,
17960 OPC_Scope, 12,
17961 OPC_CheckPatternPredicate2,
17962 OPC_EmitNodeXForm, 7, 2,
17963 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_B_H),
17964 40, 3, 0, 1, 3,
17965 12,
17966 OPC_CheckPatternPredicate4,
17967 OPC_EmitNodeXForm, 7, 2,
17968 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_B_H),
17969 40, 3, 0, 1, 3,
17970 0,
17971 39,
17972 OPC_CheckChild0Integer, 12|128,117,
17973 OPC_RecordChild1,
17974 OPC_RecordChild2,
17975 OPC_RecordChild3,
17976 OPC_MoveChild3,
17977 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17978 OPC_MoveParent,
17979 OPC_Scope, 12,
17980 OPC_CheckPatternPredicate2,
17981 OPC_EmitNodeXForm, 7, 2,
17982 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_B_H),
17983 40, 3, 0, 1, 3,
17984 12,
17985 OPC_CheckPatternPredicate4,
17986 OPC_EmitNodeXForm, 7, 2,
17987 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_B_H),
17988 40, 3, 0, 1, 3,
17989 0,
17990 39,
17991 OPC_CheckChild0Integer, 70|128,117,
17992 OPC_RecordChild1,
17993 OPC_RecordChild2,
17994 OPC_RecordChild3,
17995 OPC_MoveChild3,
17996 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
17997 OPC_MoveParent,
17998 OPC_Scope, 12,
17999 OPC_CheckPatternPredicate2,
18000 OPC_EmitNodeXForm, 7, 2,
18001 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_BU_H),
18002 40, 3, 0, 1, 3,
18003 12,
18004 OPC_CheckPatternPredicate4,
18005 OPC_EmitNodeXForm, 7, 2,
18006 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_BU_H),
18007 40, 3, 0, 1, 3,
18008 0,
18009 39,
18010 OPC_CheckChild0Integer, 14|128,117,
18011 OPC_RecordChild1,
18012 OPC_RecordChild2,
18013 OPC_RecordChild3,
18014 OPC_MoveChild3,
18015 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18016 OPC_MoveParent,
18017 OPC_Scope, 12,
18018 OPC_CheckPatternPredicate2,
18019 OPC_EmitNodeXForm, 7, 2,
18020 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_BU_H),
18021 40, 3, 0, 1, 3,
18022 12,
18023 OPC_CheckPatternPredicate4,
18024 OPC_EmitNodeXForm, 7, 2,
18025 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_BU_H),
18026 40, 3, 0, 1, 3,
18027 0,
18028 39,
18029 OPC_CheckChild0Integer, 92|128,110,
18030 OPC_RecordChild1,
18031 OPC_RecordChild2,
18032 OPC_RecordChild3,
18033 OPC_MoveChild3,
18034 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18035 OPC_MoveParent,
18036 OPC_Scope, 12,
18037 OPC_CheckPatternPredicate2,
18038 OPC_EmitNodeXForm, 7, 2,
18039 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSTPI_B),
18040 40, 3, 0, 1, 3,
18041 12,
18042 OPC_CheckPatternPredicate4,
18043 OPC_EmitNodeXForm, 7, 2,
18044 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSTPI_B),
18045 40, 3, 0, 1, 3,
18046 0,
18047 39,
18048 OPC_CheckChild0Integer, 60|128,108,
18049 OPC_RecordChild1,
18050 OPC_RecordChild2,
18051 OPC_RecordChild3,
18052 OPC_MoveChild3,
18053 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18054 OPC_MoveParent,
18055 OPC_Scope, 12,
18056 OPC_CheckPatternPredicate2,
18057 OPC_EmitNodeXForm, 7, 2,
18058 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSELI_B),
18059 40, 3, 0, 1, 3,
18060 12,
18061 OPC_CheckPatternPredicate4,
18062 OPC_EmitNodeXForm, 7, 2,
18063 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSELI_B),
18064 40, 3, 0, 1, 3,
18065 0,
18066 39,
18067 OPC_CheckChild0Integer, 6|128,109,
18068 OPC_RecordChild1,
18069 OPC_RecordChild2,
18070 OPC_RecordChild3,
18071 OPC_MoveChild3,
18072 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18073 OPC_MoveParent,
18074 OPC_Scope, 12,
18075 OPC_CheckPatternPredicate2,
18076 OPC_EmitNodeXForm, 7, 2,
18077 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTRINS_B),
18078 40, 3, 0, 1, 3,
18079 12,
18080 OPC_CheckPatternPredicate4,
18081 OPC_EmitNodeXForm, 7, 2,
18082 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTRINS_B),
18083 40, 3, 0, 1, 3,
18084 0,
18085 39,
18086 OPC_CheckChild0Integer, 66|128,116,
18087 OPC_RecordChild1,
18088 OPC_RecordChild2,
18089 OPC_RecordChild3,
18090 OPC_MoveChild3,
18091 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18092 OPC_MoveParent,
18093 OPC_Scope, 12,
18094 OPC_CheckPatternPredicate2,
18095 OPC_EmitNodeXForm, 7, 2,
18096 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLNI_H_W),
18097 51, 3, 0, 1, 3,
18098 12,
18099 OPC_CheckPatternPredicate4,
18100 OPC_EmitNodeXForm, 7, 2,
18101 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLNI_H_W),
18102 51, 3, 0, 1, 3,
18103 0,
18104 39,
18105 OPC_CheckChild0Integer, 6|128,116,
18106 OPC_RecordChild1,
18107 OPC_RecordChild2,
18108 OPC_RecordChild3,
18109 OPC_MoveChild3,
18110 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18111 OPC_MoveParent,
18112 OPC_Scope, 12,
18113 OPC_CheckPatternPredicate2,
18114 OPC_EmitNodeXForm, 7, 2,
18115 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRANI_H_W),
18116 51, 3, 0, 1, 3,
18117 12,
18118 OPC_CheckPatternPredicate4,
18119 OPC_EmitNodeXForm, 7, 2,
18120 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRANI_H_W),
18121 51, 3, 0, 1, 3,
18122 0,
18123 39,
18124 OPC_CheckChild0Integer, 96|128,116,
18125 OPC_RecordChild1,
18126 OPC_RecordChild2,
18127 OPC_RecordChild3,
18128 OPC_MoveChild3,
18129 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18130 OPC_MoveParent,
18131 OPC_Scope, 12,
18132 OPC_CheckPatternPredicate2,
18133 OPC_EmitNodeXForm, 7, 2,
18134 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRNI_H_W),
18135 51, 3, 0, 1, 3,
18136 12,
18137 OPC_CheckPatternPredicate4,
18138 OPC_EmitNodeXForm, 7, 2,
18139 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRNI_H_W),
18140 51, 3, 0, 1, 3,
18141 0,
18142 39,
18143 OPC_CheckChild0Integer, 36|128,116,
18144 OPC_RecordChild1,
18145 OPC_RecordChild2,
18146 OPC_RecordChild3,
18147 OPC_MoveChild3,
18148 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18149 OPC_MoveParent,
18150 OPC_Scope, 12,
18151 OPC_CheckPatternPredicate2,
18152 OPC_EmitNodeXForm, 7, 2,
18153 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARNI_H_W),
18154 51, 3, 0, 1, 3,
18155 12,
18156 OPC_CheckPatternPredicate4,
18157 OPC_EmitNodeXForm, 7, 2,
18158 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARNI_H_W),
18159 51, 3, 0, 1, 3,
18160 0,
18161 39,
18162 OPC_CheckChild0Integer, 48|128,117,
18163 OPC_RecordChild1,
18164 OPC_RecordChild2,
18165 OPC_RecordChild3,
18166 OPC_MoveChild3,
18167 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18168 OPC_MoveParent,
18169 OPC_Scope, 12,
18170 OPC_CheckPatternPredicate2,
18171 OPC_EmitNodeXForm, 7, 2,
18172 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_H_W),
18173 51, 3, 0, 1, 3,
18174 12,
18175 OPC_CheckPatternPredicate4,
18176 OPC_EmitNodeXForm, 7, 2,
18177 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_H_W),
18178 51, 3, 0, 1, 3,
18179 0,
18180 39,
18181 OPC_CheckChild0Integer, 120|128,116,
18182 OPC_RecordChild1,
18183 OPC_RecordChild2,
18184 OPC_RecordChild3,
18185 OPC_MoveChild3,
18186 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18187 OPC_MoveParent,
18188 OPC_Scope, 12,
18189 OPC_CheckPatternPredicate2,
18190 OPC_EmitNodeXForm, 7, 2,
18191 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_H_W),
18192 51, 3, 0, 1, 3,
18193 12,
18194 OPC_CheckPatternPredicate4,
18195 OPC_EmitNodeXForm, 7, 2,
18196 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_H_W),
18197 51, 3, 0, 1, 3,
18198 0,
18199 39,
18200 OPC_CheckChild0Integer, 50|128,117,
18201 OPC_RecordChild1,
18202 OPC_RecordChild2,
18203 OPC_RecordChild3,
18204 OPC_MoveChild3,
18205 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18206 OPC_MoveParent,
18207 OPC_Scope, 12,
18208 OPC_CheckPatternPredicate2,
18209 OPC_EmitNodeXForm, 7, 2,
18210 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_HU_W),
18211 51, 3, 0, 1, 3,
18212 12,
18213 OPC_CheckPatternPredicate4,
18214 OPC_EmitNodeXForm, 7, 2,
18215 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_HU_W),
18216 51, 3, 0, 1, 3,
18217 0,
18218 39,
18219 OPC_CheckChild0Integer, 122|128,116,
18220 OPC_RecordChild1,
18221 OPC_RecordChild2,
18222 OPC_RecordChild3,
18223 OPC_MoveChild3,
18224 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18225 OPC_MoveParent,
18226 OPC_Scope, 12,
18227 OPC_CheckPatternPredicate2,
18228 OPC_EmitNodeXForm, 7, 2,
18229 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_HU_W),
18230 51, 3, 0, 1, 3,
18231 12,
18232 OPC_CheckPatternPredicate4,
18233 OPC_EmitNodeXForm, 7, 2,
18234 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_HU_W),
18235 51, 3, 0, 1, 3,
18236 0,
18237 39,
18238 OPC_CheckChild0Integer, 76|128,117,
18239 OPC_RecordChild1,
18240 OPC_RecordChild2,
18241 OPC_RecordChild3,
18242 OPC_MoveChild3,
18243 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18244 OPC_MoveParent,
18245 OPC_Scope, 12,
18246 OPC_CheckPatternPredicate2,
18247 OPC_EmitNodeXForm, 7, 2,
18248 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_H_W),
18249 51, 3, 0, 1, 3,
18250 12,
18251 OPC_CheckPatternPredicate4,
18252 OPC_EmitNodeXForm, 7, 2,
18253 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_H_W),
18254 51, 3, 0, 1, 3,
18255 0,
18256 39,
18257 OPC_CheckChild0Integer, 20|128,117,
18258 OPC_RecordChild1,
18259 OPC_RecordChild2,
18260 OPC_RecordChild3,
18261 OPC_MoveChild3,
18262 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18263 OPC_MoveParent,
18264 OPC_Scope, 12,
18265 OPC_CheckPatternPredicate2,
18266 OPC_EmitNodeXForm, 7, 2,
18267 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_H_W),
18268 51, 3, 0, 1, 3,
18269 12,
18270 OPC_CheckPatternPredicate4,
18271 OPC_EmitNodeXForm, 7, 2,
18272 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_H_W),
18273 51, 3, 0, 1, 3,
18274 0,
18275 39,
18276 OPC_CheckChild0Integer, 78|128,117,
18277 OPC_RecordChild1,
18278 OPC_RecordChild2,
18279 OPC_RecordChild3,
18280 OPC_MoveChild3,
18281 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18282 OPC_MoveParent,
18283 OPC_Scope, 12,
18284 OPC_CheckPatternPredicate2,
18285 OPC_EmitNodeXForm, 7, 2,
18286 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_HU_W),
18287 51, 3, 0, 1, 3,
18288 12,
18289 OPC_CheckPatternPredicate4,
18290 OPC_EmitNodeXForm, 7, 2,
18291 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_HU_W),
18292 51, 3, 0, 1, 3,
18293 0,
18294 39,
18295 OPC_CheckChild0Integer, 22|128,117,
18296 OPC_RecordChild1,
18297 OPC_RecordChild2,
18298 OPC_RecordChild3,
18299 OPC_MoveChild3,
18300 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18301 OPC_MoveParent,
18302 OPC_Scope, 12,
18303 OPC_CheckPatternPredicate2,
18304 OPC_EmitNodeXForm, 7, 2,
18305 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_HU_W),
18306 51, 3, 0, 1, 3,
18307 12,
18308 OPC_CheckPatternPredicate4,
18309 OPC_EmitNodeXForm, 7, 2,
18310 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_HU_W),
18311 51, 3, 0, 1, 3,
18312 0,
18313 39,
18314 OPC_CheckChild0Integer, 94|128,110,
18315 OPC_RecordChild1,
18316 OPC_RecordChild2,
18317 OPC_RecordChild3,
18318 OPC_MoveChild3,
18319 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18320 OPC_MoveParent,
18321 OPC_Scope, 12,
18322 OPC_CheckPatternPredicate2,
18323 OPC_EmitNodeXForm, 7, 2,
18324 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSTPI_H),
18325 51, 3, 0, 1, 3,
18326 12,
18327 OPC_CheckPatternPredicate4,
18328 OPC_EmitNodeXForm, 7, 2,
18329 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSTPI_H),
18330 51, 3, 0, 1, 3,
18331 0,
18332 39,
18333 OPC_CheckChild0Integer, 10|128,109,
18334 OPC_RecordChild1,
18335 OPC_RecordChild2,
18336 OPC_RecordChild3,
18337 OPC_MoveChild3,
18338 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18339 OPC_MoveParent,
18340 OPC_Scope, 12,
18341 OPC_CheckPatternPredicate2,
18342 OPC_EmitNodeXForm, 7, 2,
18343 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTRINS_H),
18344 51, 3, 0, 1, 3,
18345 12,
18346 OPC_CheckPatternPredicate4,
18347 OPC_EmitNodeXForm, 7, 2,
18348 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTRINS_H),
18349 51, 3, 0, 1, 3,
18350 0,
18351 39,
18352 OPC_CheckChild0Integer, 68|128,116,
18353 OPC_RecordChild1,
18354 OPC_RecordChild2,
18355 OPC_RecordChild3,
18356 OPC_MoveChild3,
18357 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18358 OPC_MoveParent,
18359 OPC_Scope, 12,
18360 OPC_CheckPatternPredicate2,
18361 OPC_EmitNodeXForm, 7, 2,
18362 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLNI_W_D),
18363 62, 3, 0, 1, 3,
18364 12,
18365 OPC_CheckPatternPredicate4,
18366 OPC_EmitNodeXForm, 7, 2,
18367 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLNI_W_D),
18368 62, 3, 0, 1, 3,
18369 0,
18370 39,
18371 OPC_CheckChild0Integer, 8|128,116,
18372 OPC_RecordChild1,
18373 OPC_RecordChild2,
18374 OPC_RecordChild3,
18375 OPC_MoveChild3,
18376 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18377 OPC_MoveParent,
18378 OPC_Scope, 12,
18379 OPC_CheckPatternPredicate2,
18380 OPC_EmitNodeXForm, 7, 2,
18381 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRANI_W_D),
18382 62, 3, 0, 1, 3,
18383 12,
18384 OPC_CheckPatternPredicate4,
18385 OPC_EmitNodeXForm, 7, 2,
18386 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRANI_W_D),
18387 62, 3, 0, 1, 3,
18388 0,
18389 39,
18390 OPC_CheckChild0Integer, 98|128,116,
18391 OPC_RecordChild1,
18392 OPC_RecordChild2,
18393 OPC_RecordChild3,
18394 OPC_MoveChild3,
18395 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18396 OPC_MoveParent,
18397 OPC_Scope, 12,
18398 OPC_CheckPatternPredicate2,
18399 OPC_EmitNodeXForm, 7, 2,
18400 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRNI_W_D),
18401 62, 3, 0, 1, 3,
18402 12,
18403 OPC_CheckPatternPredicate4,
18404 OPC_EmitNodeXForm, 7, 2,
18405 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRNI_W_D),
18406 62, 3, 0, 1, 3,
18407 0,
18408 39,
18409 OPC_CheckChild0Integer, 38|128,116,
18410 OPC_RecordChild1,
18411 OPC_RecordChild2,
18412 OPC_RecordChild3,
18413 OPC_MoveChild3,
18414 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18415 OPC_MoveParent,
18416 OPC_Scope, 12,
18417 OPC_CheckPatternPredicate2,
18418 OPC_EmitNodeXForm, 7, 2,
18419 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARNI_W_D),
18420 62, 3, 0, 1, 3,
18421 12,
18422 OPC_CheckPatternPredicate4,
18423 OPC_EmitNodeXForm, 7, 2,
18424 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARNI_W_D),
18425 62, 3, 0, 1, 3,
18426 0,
18427 39,
18428 OPC_CheckChild0Integer, 52|128,117,
18429 OPC_RecordChild1,
18430 OPC_RecordChild2,
18431 OPC_RecordChild3,
18432 OPC_MoveChild3,
18433 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18434 OPC_MoveParent,
18435 OPC_Scope, 12,
18436 OPC_CheckPatternPredicate2,
18437 OPC_EmitNodeXForm, 7, 2,
18438 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_W_D),
18439 62, 3, 0, 1, 3,
18440 12,
18441 OPC_CheckPatternPredicate4,
18442 OPC_EmitNodeXForm, 7, 2,
18443 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_W_D),
18444 62, 3, 0, 1, 3,
18445 0,
18446 39,
18447 OPC_CheckChild0Integer, 124|128,116,
18448 OPC_RecordChild1,
18449 OPC_RecordChild2,
18450 OPC_RecordChild3,
18451 OPC_MoveChild3,
18452 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18453 OPC_MoveParent,
18454 OPC_Scope, 12,
18455 OPC_CheckPatternPredicate2,
18456 OPC_EmitNodeXForm, 7, 2,
18457 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_W_D),
18458 62, 3, 0, 1, 3,
18459 12,
18460 OPC_CheckPatternPredicate4,
18461 OPC_EmitNodeXForm, 7, 2,
18462 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_W_D),
18463 62, 3, 0, 1, 3,
18464 0,
18465 39,
18466 OPC_CheckChild0Integer, 54|128,117,
18467 OPC_RecordChild1,
18468 OPC_RecordChild2,
18469 OPC_RecordChild3,
18470 OPC_MoveChild3,
18471 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18472 OPC_MoveParent,
18473 OPC_Scope, 12,
18474 OPC_CheckPatternPredicate2,
18475 OPC_EmitNodeXForm, 7, 2,
18476 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_WU_D),
18477 62, 3, 0, 1, 3,
18478 12,
18479 OPC_CheckPatternPredicate4,
18480 OPC_EmitNodeXForm, 7, 2,
18481 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_WU_D),
18482 62, 3, 0, 1, 3,
18483 0,
18484 39,
18485 OPC_CheckChild0Integer, 126|128,116,
18486 OPC_RecordChild1,
18487 OPC_RecordChild2,
18488 OPC_RecordChild3,
18489 OPC_MoveChild3,
18490 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18491 OPC_MoveParent,
18492 OPC_Scope, 12,
18493 OPC_CheckPatternPredicate2,
18494 OPC_EmitNodeXForm, 7, 2,
18495 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_WU_D),
18496 62, 3, 0, 1, 3,
18497 12,
18498 OPC_CheckPatternPredicate4,
18499 OPC_EmitNodeXForm, 7, 2,
18500 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_WU_D),
18501 62, 3, 0, 1, 3,
18502 0,
18503 39,
18504 OPC_CheckChild0Integer, 80|128,117,
18505 OPC_RecordChild1,
18506 OPC_RecordChild2,
18507 OPC_RecordChild3,
18508 OPC_MoveChild3,
18509 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18510 OPC_MoveParent,
18511 OPC_Scope, 12,
18512 OPC_CheckPatternPredicate2,
18513 OPC_EmitNodeXForm, 7, 2,
18514 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_W_D),
18515 62, 3, 0, 1, 3,
18516 12,
18517 OPC_CheckPatternPredicate4,
18518 OPC_EmitNodeXForm, 7, 2,
18519 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_W_D),
18520 62, 3, 0, 1, 3,
18521 0,
18522 39,
18523 OPC_CheckChild0Integer, 24|128,117,
18524 OPC_RecordChild1,
18525 OPC_RecordChild2,
18526 OPC_RecordChild3,
18527 OPC_MoveChild3,
18528 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18529 OPC_MoveParent,
18530 OPC_Scope, 12,
18531 OPC_CheckPatternPredicate2,
18532 OPC_EmitNodeXForm, 7, 2,
18533 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_W_D),
18534 62, 3, 0, 1, 3,
18535 12,
18536 OPC_CheckPatternPredicate4,
18537 OPC_EmitNodeXForm, 7, 2,
18538 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_W_D),
18539 62, 3, 0, 1, 3,
18540 0,
18541 39,
18542 OPC_CheckChild0Integer, 82|128,117,
18543 OPC_RecordChild1,
18544 OPC_RecordChild2,
18545 OPC_RecordChild3,
18546 OPC_MoveChild3,
18547 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18548 OPC_MoveParent,
18549 OPC_Scope, 12,
18550 OPC_CheckPatternPredicate2,
18551 OPC_EmitNodeXForm, 7, 2,
18552 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_WU_D),
18553 62, 3, 0, 1, 3,
18554 12,
18555 OPC_CheckPatternPredicate4,
18556 OPC_EmitNodeXForm, 7, 2,
18557 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_WU_D),
18558 62, 3, 0, 1, 3,
18559 0,
18560 39,
18561 OPC_CheckChild0Integer, 26|128,117,
18562 OPC_RecordChild1,
18563 OPC_RecordChild2,
18564 OPC_RecordChild3,
18565 OPC_MoveChild3,
18566 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18567 OPC_MoveParent,
18568 OPC_Scope, 12,
18569 OPC_CheckPatternPredicate2,
18570 OPC_EmitNodeXForm, 7, 2,
18571 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_WU_D),
18572 62, 3, 0, 1, 3,
18573 12,
18574 OPC_CheckPatternPredicate4,
18575 OPC_EmitNodeXForm, 7, 2,
18576 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_WU_D),
18577 62, 3, 0, 1, 3,
18578 0,
18579 39,
18580 OPC_CheckChild0Integer, 118|128,113,
18581 OPC_RecordChild1,
18582 OPC_RecordChild2,
18583 OPC_RecordChild3,
18584 OPC_MoveChild3,
18585 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18586 OPC_MoveParent,
18587 OPC_Scope, 12,
18588 OPC_CheckPatternPredicate2,
18589 OPC_EmitNodeXForm, 7, 2,
18590 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPERMI_W),
18591 62, 3, 0, 1, 3,
18592 12,
18593 OPC_CheckPatternPredicate4,
18594 OPC_EmitNodeXForm, 7, 2,
18595 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPERMI_W),
18596 62, 3, 0, 1, 3,
18597 0,
18598 39,
18599 OPC_CheckChild0Integer, 12|128,109,
18600 OPC_RecordChild1,
18601 OPC_RecordChild2,
18602 OPC_RecordChild3,
18603 OPC_MoveChild3,
18604 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18605 OPC_MoveParent,
18606 OPC_Scope, 12,
18607 OPC_CheckPatternPredicate2,
18608 OPC_EmitNodeXForm, 7, 2,
18609 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTRINS_W),
18610 62, 3, 0, 1, 3,
18611 12,
18612 OPC_CheckPatternPredicate4,
18613 OPC_EmitNodeXForm, 7, 2,
18614 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTRINS_W),
18615 62, 3, 0, 1, 3,
18616 0,
18617 39,
18618 OPC_CheckChild0Integer, 64|128,116,
18619 OPC_RecordChild1,
18620 OPC_RecordChild2,
18621 OPC_RecordChild3,
18622 OPC_MoveChild3,
18623 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18624 OPC_MoveParent,
18625 OPC_Scope, 12,
18626 OPC_CheckPatternPredicate2,
18627 OPC_EmitNodeXForm, 7, 2,
18628 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLNI_D_Q),
18629 81, 3, 0, 1, 3,
18630 12,
18631 OPC_CheckPatternPredicate4,
18632 OPC_EmitNodeXForm, 7, 2,
18633 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLNI_D_Q),
18634 81, 3, 0, 1, 3,
18635 0,
18636 39,
18637 OPC_CheckChild0Integer, 4|128,116,
18638 OPC_RecordChild1,
18639 OPC_RecordChild2,
18640 OPC_RecordChild3,
18641 OPC_MoveChild3,
18642 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18643 OPC_MoveParent,
18644 OPC_Scope, 12,
18645 OPC_CheckPatternPredicate2,
18646 OPC_EmitNodeXForm, 7, 2,
18647 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRANI_D_Q),
18648 81, 3, 0, 1, 3,
18649 12,
18650 OPC_CheckPatternPredicate4,
18651 OPC_EmitNodeXForm, 7, 2,
18652 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRANI_D_Q),
18653 81, 3, 0, 1, 3,
18654 0,
18655 39,
18656 OPC_CheckChild0Integer, 94|128,116,
18657 OPC_RecordChild1,
18658 OPC_RecordChild2,
18659 OPC_RecordChild3,
18660 OPC_MoveChild3,
18661 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18662 OPC_MoveParent,
18663 OPC_Scope, 12,
18664 OPC_CheckPatternPredicate2,
18665 OPC_EmitNodeXForm, 7, 2,
18666 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRNI_D_Q),
18667 81, 3, 0, 1, 3,
18668 12,
18669 OPC_CheckPatternPredicate4,
18670 OPC_EmitNodeXForm, 7, 2,
18671 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRNI_D_Q),
18672 81, 3, 0, 1, 3,
18673 0,
18674 39,
18675 OPC_CheckChild0Integer, 34|128,116,
18676 OPC_RecordChild1,
18677 OPC_RecordChild2,
18678 OPC_RecordChild3,
18679 OPC_MoveChild3,
18680 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18681 OPC_MoveParent,
18682 OPC_Scope, 12,
18683 OPC_CheckPatternPredicate2,
18684 OPC_EmitNodeXForm, 7, 2,
18685 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARNI_D_Q),
18686 81, 3, 0, 1, 3,
18687 12,
18688 OPC_CheckPatternPredicate4,
18689 OPC_EmitNodeXForm, 7, 2,
18690 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARNI_D_Q),
18691 81, 3, 0, 1, 3,
18692 0,
18693 39,
18694 OPC_CheckChild0Integer, 44|128,117,
18695 OPC_RecordChild1,
18696 OPC_RecordChild2,
18697 OPC_RecordChild3,
18698 OPC_MoveChild3,
18699 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18700 OPC_MoveParent,
18701 OPC_Scope, 12,
18702 OPC_CheckPatternPredicate2,
18703 OPC_EmitNodeXForm, 7, 2,
18704 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_D_Q),
18705 81, 3, 0, 1, 3,
18706 12,
18707 OPC_CheckPatternPredicate4,
18708 OPC_EmitNodeXForm, 7, 2,
18709 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_D_Q),
18710 81, 3, 0, 1, 3,
18711 0,
18712 39,
18713 OPC_CheckChild0Integer, 116|128,116,
18714 OPC_RecordChild1,
18715 OPC_RecordChild2,
18716 OPC_RecordChild3,
18717 OPC_MoveChild3,
18718 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18719 OPC_MoveParent,
18720 OPC_Scope, 12,
18721 OPC_CheckPatternPredicate2,
18722 OPC_EmitNodeXForm, 7, 2,
18723 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_D_Q),
18724 81, 3, 0, 1, 3,
18725 12,
18726 OPC_CheckPatternPredicate4,
18727 OPC_EmitNodeXForm, 7, 2,
18728 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_D_Q),
18729 81, 3, 0, 1, 3,
18730 0,
18731 39,
18732 OPC_CheckChild0Integer, 46|128,117,
18733 OPC_RecordChild1,
18734 OPC_RecordChild2,
18735 OPC_RecordChild3,
18736 OPC_MoveChild3,
18737 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18738 OPC_MoveParent,
18739 OPC_Scope, 12,
18740 OPC_CheckPatternPredicate2,
18741 OPC_EmitNodeXForm, 7, 2,
18742 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_DU_Q),
18743 81, 3, 0, 1, 3,
18744 12,
18745 OPC_CheckPatternPredicate4,
18746 OPC_EmitNodeXForm, 7, 2,
18747 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLNI_DU_Q),
18748 81, 3, 0, 1, 3,
18749 0,
18750 39,
18751 OPC_CheckChild0Integer, 118|128,116,
18752 OPC_RecordChild1,
18753 OPC_RecordChild2,
18754 OPC_RecordChild3,
18755 OPC_MoveChild3,
18756 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18757 OPC_MoveParent,
18758 OPC_Scope, 12,
18759 OPC_CheckPatternPredicate2,
18760 OPC_EmitNodeXForm, 7, 2,
18761 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_DU_Q),
18762 81, 3, 0, 1, 3,
18763 12,
18764 OPC_CheckPatternPredicate4,
18765 OPC_EmitNodeXForm, 7, 2,
18766 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRANI_DU_Q),
18767 81, 3, 0, 1, 3,
18768 0,
18769 39,
18770 OPC_CheckChild0Integer, 72|128,117,
18771 OPC_RecordChild1,
18772 OPC_RecordChild2,
18773 OPC_RecordChild3,
18774 OPC_MoveChild3,
18775 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18776 OPC_MoveParent,
18777 OPC_Scope, 12,
18778 OPC_CheckPatternPredicate2,
18779 OPC_EmitNodeXForm, 7, 2,
18780 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_D_Q),
18781 81, 3, 0, 1, 3,
18782 12,
18783 OPC_CheckPatternPredicate4,
18784 OPC_EmitNodeXForm, 7, 2,
18785 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_D_Q),
18786 81, 3, 0, 1, 3,
18787 0,
18788 39,
18789 OPC_CheckChild0Integer, 16|128,117,
18790 OPC_RecordChild1,
18791 OPC_RecordChild2,
18792 OPC_RecordChild3,
18793 OPC_MoveChild3,
18794 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18795 OPC_MoveParent,
18796 OPC_Scope, 12,
18797 OPC_CheckPatternPredicate2,
18798 OPC_EmitNodeXForm, 7, 2,
18799 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_D_Q),
18800 81, 3, 0, 1, 3,
18801 12,
18802 OPC_CheckPatternPredicate4,
18803 OPC_EmitNodeXForm, 7, 2,
18804 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_D_Q),
18805 81, 3, 0, 1, 3,
18806 0,
18807 39,
18808 OPC_CheckChild0Integer, 74|128,117,
18809 OPC_RecordChild1,
18810 OPC_RecordChild2,
18811 OPC_RecordChild3,
18812 OPC_MoveChild3,
18813 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18814 OPC_MoveParent,
18815 OPC_Scope, 12,
18816 OPC_CheckPatternPredicate2,
18817 OPC_EmitNodeXForm, 7, 2,
18818 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_DU_Q),
18819 81, 3, 0, 1, 3,
18820 12,
18821 OPC_CheckPatternPredicate4,
18822 OPC_EmitNodeXForm, 7, 2,
18823 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRNI_DU_Q),
18824 81, 3, 0, 1, 3,
18825 0,
18826 39,
18827 OPC_CheckChild0Integer, 18|128,117,
18828 OPC_RecordChild1,
18829 OPC_RecordChild2,
18830 OPC_RecordChild3,
18831 OPC_MoveChild3,
18832 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18833 OPC_MoveParent,
18834 OPC_Scope, 12,
18835 OPC_CheckPatternPredicate2,
18836 OPC_EmitNodeXForm, 7, 2,
18837 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_DU_Q),
18838 81, 3, 0, 1, 3,
18839 12,
18840 OPC_CheckPatternPredicate4,
18841 OPC_EmitNodeXForm, 7, 2,
18842 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARNI_DU_Q),
18843 81, 3, 0, 1, 3,
18844 0,
18845 39,
18846 OPC_CheckChild0Integer, 2|128,115,
18847 OPC_RecordChild1,
18848 OPC_RecordChild2,
18849 OPC_RecordChild3,
18850 OPC_MoveChild3,
18851 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18852 OPC_MoveParent,
18853 OPC_Scope, 12,
18854 OPC_CheckPatternPredicate2,
18855 OPC_EmitNodeXForm, 7, 2,
18856 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_D),
18857 81, 3, 0, 1, 3,
18858 12,
18859 OPC_CheckPatternPredicate4,
18860 OPC_EmitNodeXForm, 7, 2,
18861 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_D),
18862 81, 3, 0, 1, 3,
18863 0,
18864 39,
18865 OPC_CheckChild0Integer, 8|128,109,
18866 OPC_RecordChild1,
18867 OPC_RecordChild2,
18868 OPC_RecordChild3,
18869 OPC_MoveChild3,
18870 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18871 OPC_MoveParent,
18872 OPC_Scope, 12,
18873 OPC_CheckPatternPredicate2,
18874 OPC_EmitNodeXForm, 7, 2,
18875 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTRINS_D),
18876 81, 3, 0, 1, 3,
18877 12,
18878 OPC_CheckPatternPredicate4,
18879 OPC_EmitNodeXForm, 7, 2,
18880 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTRINS_D),
18881 81, 3, 0, 1, 3,
18882 0,
18883 33,
18884 OPC_CheckChild0Integer, 40|128,100,
18885 OPC_RecordChild1,
18886 OPC_MoveChild1,
18887 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18888 OPC_MoveParent,
18889 OPC_Scope, 10,
18890 OPC_CheckPatternPredicate3,
18891 OPC_EmitNodeXForm, 7, 0,
18892 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVLDI),
18893 83, 1, 1,
18894 10,
18895 OPC_CheckPatternPredicate5,
18896 OPC_EmitNodeXForm, 7, 0,
18897 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVLDI),
18898 83, 1, 1,
18899 0,
18900 33,
18901 OPC_CheckChild0Integer, 122|128,102,
18902 OPC_RecordChild1,
18903 OPC_MoveChild1,
18904 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18905 OPC_MoveParent,
18906 OPC_Scope, 10,
18907 OPC_CheckPatternPredicate3,
18908 OPC_EmitNodeXForm, 7, 0,
18909 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVREPLI_B),
18910 41, 1, 1,
18911 10,
18912 OPC_CheckPatternPredicate5,
18913 OPC_EmitNodeXForm, 7, 0,
18914 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVREPLI_B),
18915 41, 1, 1,
18916 0,
18917 33,
18918 OPC_CheckChild0Integer, 126|128,102,
18919 OPC_RecordChild1,
18920 OPC_MoveChild1,
18921 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18922 OPC_MoveParent,
18923 OPC_Scope, 10,
18924 OPC_CheckPatternPredicate3,
18925 OPC_EmitNodeXForm, 7, 0,
18926 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVREPLI_H),
18927 52, 1, 1,
18928 10,
18929 OPC_CheckPatternPredicate5,
18930 OPC_EmitNodeXForm, 7, 0,
18931 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVREPLI_H),
18932 52, 1, 1,
18933 0,
18934 33,
18935 OPC_CheckChild0Integer, 0|128,103,
18936 OPC_RecordChild1,
18937 OPC_MoveChild1,
18938 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18939 OPC_MoveParent,
18940 OPC_Scope, 10,
18941 OPC_CheckPatternPredicate3,
18942 OPC_EmitNodeXForm, 7, 0,
18943 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVREPLI_W),
18944 66, 1, 1,
18945 10,
18946 OPC_CheckPatternPredicate5,
18947 OPC_EmitNodeXForm, 7, 0,
18948 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVREPLI_W),
18949 66, 1, 1,
18950 0,
18951 33,
18952 OPC_CheckChild0Integer, 124|128,102,
18953 OPC_RecordChild1,
18954 OPC_MoveChild1,
18955 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18956 OPC_MoveParent,
18957 OPC_Scope, 10,
18958 OPC_CheckPatternPredicate3,
18959 OPC_EmitNodeXForm, 7, 0,
18960 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVREPLI_D),
18961 83, 1, 1,
18962 10,
18963 OPC_CheckPatternPredicate5,
18964 OPC_EmitNodeXForm, 7, 0,
18965 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVREPLI_D),
18966 83, 1, 1,
18967 0,
18968 36,
18969 OPC_CheckChild0Integer, 52|128,103,
18970 OPC_RecordChild1,
18971 OPC_RecordChild2,
18972 OPC_MoveChild2,
18973 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18974 OPC_MoveParent,
18975 OPC_Scope, 11,
18976 OPC_CheckPatternPredicate3,
18977 OPC_EmitNodeXForm, 7, 1,
18978 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_B),
18979 41, 2, 0, 2,
18980 11,
18981 OPC_CheckPatternPredicate5,
18982 OPC_EmitNodeXForm, 7, 1,
18983 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_B),
18984 41, 2, 0, 2,
18985 0,
18986 36,
18987 OPC_CheckChild0Integer, 54|128,103,
18988 OPC_RecordChild1,
18989 OPC_RecordChild2,
18990 OPC_MoveChild2,
18991 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18992 OPC_MoveParent,
18993 OPC_Scope, 11,
18994 OPC_CheckPatternPredicate3,
18995 OPC_EmitNodeXForm, 7, 1,
18996 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_BU),
18997 41, 2, 0, 2,
18998 11,
18999 OPC_CheckPatternPredicate5,
19000 OPC_EmitNodeXForm, 7, 1,
19001 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_BU),
19002 41, 2, 0, 2,
19003 0,
19004 36,
19005 OPC_CheckChild0Integer, 34|128,102,
19006 OPC_RecordChild1,
19007 OPC_RecordChild2,
19008 OPC_MoveChild2,
19009 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19010 OPC_MoveParent,
19011 OPC_Scope, 11,
19012 OPC_CheckPatternPredicate3,
19013 OPC_EmitNodeXForm, 7, 1,
19014 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVNORI_B),
19015 41, 2, 0, 2,
19016 11,
19017 OPC_CheckPatternPredicate5,
19018 OPC_EmitNodeXForm, 7, 1,
19019 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVNORI_B),
19020 41, 2, 0, 2,
19021 0,
19022 36,
19023 OPC_CheckChild0Integer, 28|128,103,
19024 OPC_RecordChild1,
19025 OPC_RecordChild2,
19026 OPC_MoveChild2,
19027 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19028 OPC_MoveParent,
19029 OPC_Scope, 11,
19030 OPC_CheckPatternPredicate3,
19031 OPC_EmitNodeXForm, 7, 1,
19032 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTRI_B),
19033 41, 2, 0, 2,
19034 11,
19035 OPC_CheckPatternPredicate5,
19036 OPC_EmitNodeXForm, 7, 1,
19037 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTRI_B),
19038 41, 2, 0, 2,
19039 0,
19040 36,
19041 OPC_CheckChild0Integer, 32|128,104,
19042 OPC_RecordChild1,
19043 OPC_RecordChild2,
19044 OPC_MoveChild2,
19045 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19046 OPC_MoveParent,
19047 OPC_Scope, 11,
19048 OPC_CheckPatternPredicate3,
19049 OPC_EmitNodeXForm, 7, 1,
19050 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_H_B),
19051 52, 2, 0, 2,
19052 11,
19053 OPC_CheckPatternPredicate5,
19054 OPC_EmitNodeXForm, 7, 1,
19055 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_H_B),
19056 52, 2, 0, 2,
19057 0,
19058 36,
19059 OPC_CheckChild0Integer, 34|128,104,
19060 OPC_RecordChild1,
19061 OPC_RecordChild2,
19062 OPC_MoveChild2,
19063 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19064 OPC_MoveParent,
19065 OPC_Scope, 11,
19066 OPC_CheckPatternPredicate3,
19067 OPC_EmitNodeXForm, 7, 1,
19068 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_HU_BU),
19069 52, 2, 0, 2,
19070 11,
19071 OPC_CheckPatternPredicate5,
19072 OPC_EmitNodeXForm, 7, 1,
19073 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_HU_BU),
19074 52, 2, 0, 2,
19075 0,
19076 36,
19077 OPC_CheckChild0Integer, 42|128,105,
19078 OPC_RecordChild1,
19079 OPC_RecordChild2,
19080 OPC_MoveChild2,
19081 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19082 OPC_MoveParent,
19083 OPC_Scope, 11,
19084 OPC_CheckPatternPredicate3,
19085 OPC_EmitNodeXForm, 7, 1,
19086 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRI_B),
19087 41, 2, 0, 2,
19088 11,
19089 OPC_CheckPatternPredicate5,
19090 OPC_EmitNodeXForm, 7, 1,
19091 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRI_B),
19092 41, 2, 0, 2,
19093 0,
19094 36,
19095 OPC_CheckChild0Integer, 110|128,104,
19096 OPC_RecordChild1,
19097 OPC_RecordChild2,
19098 OPC_MoveChild2,
19099 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19100 OPC_MoveParent,
19101 OPC_Scope, 11,
19102 OPC_CheckPatternPredicate3,
19103 OPC_EmitNodeXForm, 7, 1,
19104 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARI_B),
19105 41, 2, 0, 2,
19106 11,
19107 OPC_CheckPatternPredicate5,
19108 OPC_EmitNodeXForm, 7, 1,
19109 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARI_B),
19110 41, 2, 0, 2,
19111 0,
19112 36,
19113 OPC_CheckChild0Integer, 76|128,103,
19114 OPC_RecordChild1,
19115 OPC_RecordChild2,
19116 OPC_MoveChild2,
19117 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19118 OPC_MoveParent,
19119 OPC_Scope, 11,
19120 OPC_CheckPatternPredicate3,
19121 OPC_EmitNodeXForm, 7, 1,
19122 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_B),
19123 41, 2, 0, 2,
19124 11,
19125 OPC_CheckPatternPredicate5,
19126 OPC_EmitNodeXForm, 7, 1,
19127 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_B),
19128 41, 2, 0, 2,
19129 0,
19130 36,
19131 OPC_CheckChild0Integer, 124|128,103,
19132 OPC_RecordChild1,
19133 OPC_RecordChild2,
19134 OPC_MoveChild2,
19135 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19136 OPC_MoveParent,
19137 OPC_Scope, 11,
19138 OPC_CheckPatternPredicate3,
19139 OPC_EmitNodeXForm, 7, 1,
19140 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_B),
19141 41, 2, 0, 2,
19142 11,
19143 OPC_CheckPatternPredicate5,
19144 OPC_EmitNodeXForm, 7, 1,
19145 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_B),
19146 41, 2, 0, 2,
19147 0,
19148 36,
19149 OPC_CheckChild0Integer, 126|128,103,
19150 OPC_RecordChild1,
19151 OPC_RecordChild2,
19152 OPC_MoveChild2,
19153 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19154 OPC_MoveParent,
19155 OPC_Scope, 11,
19156 OPC_CheckPatternPredicate3,
19157 OPC_EmitNodeXForm, 7, 1,
19158 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_BU),
19159 41, 2, 0, 2,
19160 11,
19161 OPC_CheckPatternPredicate5,
19162 OPC_EmitNodeXForm, 7, 1,
19163 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_BU),
19164 41, 2, 0, 2,
19165 0,
19166 36,
19167 OPC_CheckChild0Integer, 56|128,104,
19168 OPC_RecordChild1,
19169 OPC_RecordChild2,
19170 OPC_MoveChild2,
19171 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19172 OPC_MoveParent,
19173 OPC_Scope, 11,
19174 OPC_CheckPatternPredicate3,
19175 OPC_EmitNodeXForm, 7, 1,
19176 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_B),
19177 41, 2, 0, 2,
19178 11,
19179 OPC_CheckPatternPredicate5,
19180 OPC_EmitNodeXForm, 7, 1,
19181 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_B),
19182 41, 2, 0, 2,
19183 0,
19184 36,
19185 OPC_CheckChild0Integer, 58|128,104,
19186 OPC_RecordChild1,
19187 OPC_RecordChild2,
19188 OPC_MoveChild2,
19189 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19190 OPC_MoveParent,
19191 OPC_Scope, 11,
19192 OPC_CheckPatternPredicate3,
19193 OPC_EmitNodeXForm, 7, 1,
19194 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_BU),
19195 41, 2, 0, 2,
19196 11,
19197 OPC_CheckPatternPredicate5,
19198 OPC_EmitNodeXForm, 7, 1,
19199 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_BU),
19200 41, 2, 0, 2,
19201 0,
19202 36,
19203 OPC_CheckChild0Integer, 106|128,102,
19204 OPC_RecordChild1,
19205 OPC_RecordChild2,
19206 OPC_MoveChild2,
19207 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19208 OPC_MoveParent,
19209 OPC_Scope, 11,
19210 OPC_CheckPatternPredicate3,
19211 OPC_EmitNodeXForm, 7, 1,
19212 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_B),
19213 41, 2, 0, 2,
19214 11,
19215 OPC_CheckPatternPredicate5,
19216 OPC_EmitNodeXForm, 7, 1,
19217 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_B),
19218 41, 2, 0, 2,
19219 0,
19220 36,
19221 OPC_CheckChild0Integer, 26|128,97,
19222 OPC_RecordChild1,
19223 OPC_RecordChild2,
19224 OPC_MoveChild2,
19225 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19226 OPC_MoveParent,
19227 OPC_Scope, 11,
19228 OPC_CheckPatternPredicate3,
19229 OPC_EmitNodeXForm, 7, 1,
19230 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSLL_V),
19231 41, 2, 0, 2,
19232 11,
19233 OPC_CheckPatternPredicate5,
19234 OPC_EmitNodeXForm, 7, 1,
19235 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSLL_V),
19236 41, 2, 0, 2,
19237 0,
19238 36,
19239 OPC_CheckChild0Integer, 28|128,97,
19240 OPC_RecordChild1,
19241 OPC_RecordChild2,
19242 OPC_MoveChild2,
19243 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19244 OPC_MoveParent,
19245 OPC_Scope, 11,
19246 OPC_CheckPatternPredicate3,
19247 OPC_EmitNodeXForm, 7, 1,
19248 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSRL_V),
19249 41, 2, 0, 2,
19250 11,
19251 OPC_CheckPatternPredicate5,
19252 OPC_EmitNodeXForm, 7, 1,
19253 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSRL_V),
19254 41, 2, 0, 2,
19255 0,
19256 36,
19257 OPC_CheckChild0Integer, 92|128,103,
19258 OPC_RecordChild1,
19259 OPC_RecordChild2,
19260 OPC_MoveChild2,
19261 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19262 OPC_MoveParent,
19263 OPC_Scope, 11,
19264 OPC_CheckPatternPredicate3,
19265 OPC_EmitNodeXForm, 7, 1,
19266 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_B),
19267 41, 2, 0, 2,
19268 11,
19269 OPC_CheckPatternPredicate5,
19270 OPC_EmitNodeXForm, 7, 1,
19271 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_B),
19272 41, 2, 0, 2,
19273 0,
19274 36,
19275 OPC_CheckChild0Integer, 60|128,103,
19276 OPC_RecordChild1,
19277 OPC_RecordChild2,
19278 OPC_MoveChild2,
19279 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19280 OPC_MoveParent,
19281 OPC_Scope, 11,
19282 OPC_CheckPatternPredicate3,
19283 OPC_EmitNodeXForm, 7, 1,
19284 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_H),
19285 52, 2, 0, 2,
19286 11,
19287 OPC_CheckPatternPredicate5,
19288 OPC_EmitNodeXForm, 7, 1,
19289 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_H),
19290 52, 2, 0, 2,
19291 0,
19292 36,
19293 OPC_CheckChild0Integer, 62|128,103,
19294 OPC_RecordChild1,
19295 OPC_RecordChild2,
19296 OPC_MoveChild2,
19297 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19298 OPC_MoveParent,
19299 OPC_Scope, 11,
19300 OPC_CheckPatternPredicate3,
19301 OPC_EmitNodeXForm, 7, 1,
19302 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_HU),
19303 52, 2, 0, 2,
19304 11,
19305 OPC_CheckPatternPredicate5,
19306 OPC_EmitNodeXForm, 7, 1,
19307 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_HU),
19308 52, 2, 0, 2,
19309 0,
19310 36,
19311 OPC_CheckChild0Integer, 32|128,103,
19312 OPC_RecordChild1,
19313 OPC_RecordChild2,
19314 OPC_MoveChild2,
19315 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19316 OPC_MoveParent,
19317 OPC_Scope, 11,
19318 OPC_CheckPatternPredicate3,
19319 OPC_EmitNodeXForm, 7, 1,
19320 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTRI_H),
19321 52, 2, 0, 2,
19322 11,
19323 OPC_CheckPatternPredicate5,
19324 OPC_EmitNodeXForm, 7, 1,
19325 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTRI_H),
19326 52, 2, 0, 2,
19327 0,
19328 36,
19329 OPC_CheckChild0Integer, 36|128,104,
19330 OPC_RecordChild1,
19331 OPC_RecordChild2,
19332 OPC_MoveChild2,
19333 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19334 OPC_MoveParent,
19335 OPC_Scope, 11,
19336 OPC_CheckPatternPredicate3,
19337 OPC_EmitNodeXForm, 7, 1,
19338 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_W_H),
19339 66, 2, 0, 2,
19340 11,
19341 OPC_CheckPatternPredicate5,
19342 OPC_EmitNodeXForm, 7, 1,
19343 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_W_H),
19344 66, 2, 0, 2,
19345 0,
19346 36,
19347 OPC_CheckChild0Integer, 38|128,104,
19348 OPC_RecordChild1,
19349 OPC_RecordChild2,
19350 OPC_MoveChild2,
19351 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19352 OPC_MoveParent,
19353 OPC_Scope, 11,
19354 OPC_CheckPatternPredicate3,
19355 OPC_EmitNodeXForm, 7, 1,
19356 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_WU_HU),
19357 66, 2, 0, 2,
19358 11,
19359 OPC_CheckPatternPredicate5,
19360 OPC_EmitNodeXForm, 7, 1,
19361 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_WU_HU),
19362 66, 2, 0, 2,
19363 0,
19364 36,
19365 OPC_CheckChild0Integer, 46|128,105,
19366 OPC_RecordChild1,
19367 OPC_RecordChild2,
19368 OPC_MoveChild2,
19369 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19370 OPC_MoveParent,
19371 OPC_Scope, 11,
19372 OPC_CheckPatternPredicate3,
19373 OPC_EmitNodeXForm, 7, 1,
19374 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRI_H),
19375 52, 2, 0, 2,
19376 11,
19377 OPC_CheckPatternPredicate5,
19378 OPC_EmitNodeXForm, 7, 1,
19379 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRI_H),
19380 52, 2, 0, 2,
19381 0,
19382 36,
19383 OPC_CheckChild0Integer, 114|128,104,
19384 OPC_RecordChild1,
19385 OPC_RecordChild2,
19386 OPC_MoveChild2,
19387 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19388 OPC_MoveParent,
19389 OPC_Scope, 11,
19390 OPC_CheckPatternPredicate3,
19391 OPC_EmitNodeXForm, 7, 1,
19392 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARI_H),
19393 52, 2, 0, 2,
19394 11,
19395 OPC_CheckPatternPredicate5,
19396 OPC_EmitNodeXForm, 7, 1,
19397 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARI_H),
19398 52, 2, 0, 2,
19399 0,
19400 36,
19401 OPC_CheckChild0Integer, 80|128,103,
19402 OPC_RecordChild1,
19403 OPC_RecordChild2,
19404 OPC_MoveChild2,
19405 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19406 OPC_MoveParent,
19407 OPC_Scope, 11,
19408 OPC_CheckPatternPredicate3,
19409 OPC_EmitNodeXForm, 7, 1,
19410 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_H),
19411 52, 2, 0, 2,
19412 11,
19413 OPC_CheckPatternPredicate5,
19414 OPC_EmitNodeXForm, 7, 1,
19415 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_H),
19416 52, 2, 0, 2,
19417 0,
19418 36,
19419 OPC_CheckChild0Integer, 4|128,104,
19420 OPC_RecordChild1,
19421 OPC_RecordChild2,
19422 OPC_MoveChild2,
19423 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19424 OPC_MoveParent,
19425 OPC_Scope, 11,
19426 OPC_CheckPatternPredicate3,
19427 OPC_EmitNodeXForm, 7, 1,
19428 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_H),
19429 52, 2, 0, 2,
19430 11,
19431 OPC_CheckPatternPredicate5,
19432 OPC_EmitNodeXForm, 7, 1,
19433 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_H),
19434 52, 2, 0, 2,
19435 0,
19436 36,
19437 OPC_CheckChild0Integer, 6|128,104,
19438 OPC_RecordChild1,
19439 OPC_RecordChild2,
19440 OPC_MoveChild2,
19441 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19442 OPC_MoveParent,
19443 OPC_Scope, 11,
19444 OPC_CheckPatternPredicate3,
19445 OPC_EmitNodeXForm, 7, 1,
19446 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_HU),
19447 52, 2, 0, 2,
19448 11,
19449 OPC_CheckPatternPredicate5,
19450 OPC_EmitNodeXForm, 7, 1,
19451 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_HU),
19452 52, 2, 0, 2,
19453 0,
19454 36,
19455 OPC_CheckChild0Integer, 64|128,104,
19456 OPC_RecordChild1,
19457 OPC_RecordChild2,
19458 OPC_MoveChild2,
19459 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19460 OPC_MoveParent,
19461 OPC_Scope, 11,
19462 OPC_CheckPatternPredicate3,
19463 OPC_EmitNodeXForm, 7, 1,
19464 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_H),
19465 52, 2, 0, 2,
19466 11,
19467 OPC_CheckPatternPredicate5,
19468 OPC_EmitNodeXForm, 7, 1,
19469 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_H),
19470 52, 2, 0, 2,
19471 0,
19472 36,
19473 OPC_CheckChild0Integer, 66|128,104,
19474 OPC_RecordChild1,
19475 OPC_RecordChild2,
19476 OPC_MoveChild2,
19477 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19478 OPC_MoveParent,
19479 OPC_Scope, 11,
19480 OPC_CheckPatternPredicate3,
19481 OPC_EmitNodeXForm, 7, 1,
19482 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_HU),
19483 52, 2, 0, 2,
19484 11,
19485 OPC_CheckPatternPredicate5,
19486 OPC_EmitNodeXForm, 7, 1,
19487 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_HU),
19488 52, 2, 0, 2,
19489 0,
19490 36,
19491 OPC_CheckChild0Integer, 110|128,102,
19492 OPC_RecordChild1,
19493 OPC_RecordChild2,
19494 OPC_MoveChild2,
19495 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19496 OPC_MoveParent,
19497 OPC_Scope, 11,
19498 OPC_CheckPatternPredicate3,
19499 OPC_EmitNodeXForm, 7, 1,
19500 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_H),
19501 52, 2, 0, 2,
19502 11,
19503 OPC_CheckPatternPredicate5,
19504 OPC_EmitNodeXForm, 7, 1,
19505 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_H),
19506 52, 2, 0, 2,
19507 0,
19508 36,
19509 OPC_CheckChild0Integer, 96|128,103,
19510 OPC_RecordChild1,
19511 OPC_RecordChild2,
19512 OPC_MoveChild2,
19513 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19514 OPC_MoveParent,
19515 OPC_Scope, 11,
19516 OPC_CheckPatternPredicate3,
19517 OPC_EmitNodeXForm, 7, 1,
19518 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_H),
19519 52, 2, 0, 2,
19520 11,
19521 OPC_CheckPatternPredicate5,
19522 OPC_EmitNodeXForm, 7, 1,
19523 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_H),
19524 52, 2, 0, 2,
19525 0,
19526 36,
19527 OPC_CheckChild0Integer, 64|128,103,
19528 OPC_RecordChild1,
19529 OPC_RecordChild2,
19530 OPC_MoveChild2,
19531 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19532 OPC_MoveParent,
19533 OPC_Scope, 11,
19534 OPC_CheckPatternPredicate3,
19535 OPC_EmitNodeXForm, 7, 1,
19536 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_W),
19537 66, 2, 0, 2,
19538 11,
19539 OPC_CheckPatternPredicate5,
19540 OPC_EmitNodeXForm, 7, 1,
19541 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_W),
19542 66, 2, 0, 2,
19543 0,
19544 36,
19545 OPC_CheckChild0Integer, 66|128,103,
19546 OPC_RecordChild1,
19547 OPC_RecordChild2,
19548 OPC_MoveChild2,
19549 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19550 OPC_MoveParent,
19551 OPC_Scope, 11,
19552 OPC_CheckPatternPredicate3,
19553 OPC_EmitNodeXForm, 7, 1,
19554 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_WU),
19555 66, 2, 0, 2,
19556 11,
19557 OPC_CheckPatternPredicate5,
19558 OPC_EmitNodeXForm, 7, 1,
19559 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_WU),
19560 66, 2, 0, 2,
19561 0,
19562 36,
19563 OPC_CheckChild0Integer, 34|128,103,
19564 OPC_RecordChild1,
19565 OPC_RecordChild2,
19566 OPC_MoveChild2,
19567 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19568 OPC_MoveParent,
19569 OPC_Scope, 11,
19570 OPC_CheckPatternPredicate3,
19571 OPC_EmitNodeXForm, 7, 1,
19572 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTRI_W),
19573 66, 2, 0, 2,
19574 11,
19575 OPC_CheckPatternPredicate5,
19576 OPC_EmitNodeXForm, 7, 1,
19577 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTRI_W),
19578 66, 2, 0, 2,
19579 0,
19580 36,
19581 OPC_CheckChild0Integer, 28|128,104,
19582 OPC_RecordChild1,
19583 OPC_RecordChild2,
19584 OPC_MoveChild2,
19585 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19586 OPC_MoveParent,
19587 OPC_Scope, 11,
19588 OPC_CheckPatternPredicate3,
19589 OPC_EmitNodeXForm, 7, 1,
19590 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_D_W),
19591 83, 2, 0, 2,
19592 11,
19593 OPC_CheckPatternPredicate5,
19594 OPC_EmitNodeXForm, 7, 1,
19595 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_D_W),
19596 83, 2, 0, 2,
19597 0,
19598 36,
19599 OPC_CheckChild0Integer, 30|128,104,
19600 OPC_RecordChild1,
19601 OPC_RecordChild2,
19602 OPC_MoveChild2,
19603 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19604 OPC_MoveParent,
19605 OPC_Scope, 11,
19606 OPC_CheckPatternPredicate3,
19607 OPC_EmitNodeXForm, 7, 1,
19608 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_DU_WU),
19609 83, 2, 0, 2,
19610 11,
19611 OPC_CheckPatternPredicate5,
19612 OPC_EmitNodeXForm, 7, 1,
19613 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLWIL_DU_WU),
19614 83, 2, 0, 2,
19615 0,
19616 36,
19617 OPC_CheckChild0Integer, 48|128,105,
19618 OPC_RecordChild1,
19619 OPC_RecordChild2,
19620 OPC_MoveChild2,
19621 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19622 OPC_MoveParent,
19623 OPC_Scope, 11,
19624 OPC_CheckPatternPredicate3,
19625 OPC_EmitNodeXForm, 7, 1,
19626 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRI_W),
19627 66, 2, 0, 2,
19628 11,
19629 OPC_CheckPatternPredicate5,
19630 OPC_EmitNodeXForm, 7, 1,
19631 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRI_W),
19632 66, 2, 0, 2,
19633 0,
19634 36,
19635 OPC_CheckChild0Integer, 116|128,104,
19636 OPC_RecordChild1,
19637 OPC_RecordChild2,
19638 OPC_MoveChild2,
19639 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19640 OPC_MoveParent,
19641 OPC_Scope, 11,
19642 OPC_CheckPatternPredicate3,
19643 OPC_EmitNodeXForm, 7, 1,
19644 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARI_W),
19645 66, 2, 0, 2,
19646 11,
19647 OPC_CheckPatternPredicate5,
19648 OPC_EmitNodeXForm, 7, 1,
19649 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARI_W),
19650 66, 2, 0, 2,
19651 0,
19652 36,
19653 OPC_CheckChild0Integer, 82|128,103,
19654 OPC_RecordChild1,
19655 OPC_RecordChild2,
19656 OPC_MoveChild2,
19657 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19658 OPC_MoveParent,
19659 OPC_Scope, 11,
19660 OPC_CheckPatternPredicate3,
19661 OPC_EmitNodeXForm, 7, 1,
19662 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_W),
19663 66, 2, 0, 2,
19664 11,
19665 OPC_CheckPatternPredicate5,
19666 OPC_EmitNodeXForm, 7, 1,
19667 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_W),
19668 66, 2, 0, 2,
19669 0,
19670 36,
19671 OPC_CheckChild0Integer, 8|128,104,
19672 OPC_RecordChild1,
19673 OPC_RecordChild2,
19674 OPC_MoveChild2,
19675 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19676 OPC_MoveParent,
19677 OPC_Scope, 11,
19678 OPC_CheckPatternPredicate3,
19679 OPC_EmitNodeXForm, 7, 1,
19680 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_W),
19681 66, 2, 0, 2,
19682 11,
19683 OPC_CheckPatternPredicate5,
19684 OPC_EmitNodeXForm, 7, 1,
19685 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_W),
19686 66, 2, 0, 2,
19687 0,
19688 36,
19689 OPC_CheckChild0Integer, 10|128,104,
19690 OPC_RecordChild1,
19691 OPC_RecordChild2,
19692 OPC_MoveChild2,
19693 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19694 OPC_MoveParent,
19695 OPC_Scope, 11,
19696 OPC_CheckPatternPredicate3,
19697 OPC_EmitNodeXForm, 7, 1,
19698 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_WU),
19699 66, 2, 0, 2,
19700 11,
19701 OPC_CheckPatternPredicate5,
19702 OPC_EmitNodeXForm, 7, 1,
19703 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_WU),
19704 66, 2, 0, 2,
19705 0,
19706 36,
19707 OPC_CheckChild0Integer, 68|128,104,
19708 OPC_RecordChild1,
19709 OPC_RecordChild2,
19710 OPC_MoveChild2,
19711 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19712 OPC_MoveParent,
19713 OPC_Scope, 11,
19714 OPC_CheckPatternPredicate3,
19715 OPC_EmitNodeXForm, 7, 1,
19716 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_W),
19717 66, 2, 0, 2,
19718 11,
19719 OPC_CheckPatternPredicate5,
19720 OPC_EmitNodeXForm, 7, 1,
19721 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_W),
19722 66, 2, 0, 2,
19723 0,
19724 36,
19725 OPC_CheckChild0Integer, 70|128,104,
19726 OPC_RecordChild1,
19727 OPC_RecordChild2,
19728 OPC_MoveChild2,
19729 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19730 OPC_MoveParent,
19731 OPC_Scope, 11,
19732 OPC_CheckPatternPredicate3,
19733 OPC_EmitNodeXForm, 7, 1,
19734 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_WU),
19735 66, 2, 0, 2,
19736 11,
19737 OPC_CheckPatternPredicate5,
19738 OPC_EmitNodeXForm, 7, 1,
19739 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_WU),
19740 66, 2, 0, 2,
19741 0,
19742 36,
19743 OPC_CheckChild0Integer, 112|128,102,
19744 OPC_RecordChild1,
19745 OPC_RecordChild2,
19746 OPC_MoveChild2,
19747 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19748 OPC_MoveParent,
19749 OPC_Scope, 11,
19750 OPC_CheckPatternPredicate3,
19751 OPC_EmitNodeXForm, 7, 1,
19752 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_W),
19753 66, 2, 0, 2,
19754 11,
19755 OPC_CheckPatternPredicate5,
19756 OPC_EmitNodeXForm, 7, 1,
19757 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_W),
19758 66, 2, 0, 2,
19759 0,
19760 36,
19761 OPC_CheckChild0Integer, 98|128,103,
19762 OPC_RecordChild1,
19763 OPC_RecordChild2,
19764 OPC_MoveChild2,
19765 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19766 OPC_MoveParent,
19767 OPC_Scope, 11,
19768 OPC_CheckPatternPredicate3,
19769 OPC_EmitNodeXForm, 7, 1,
19770 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_W),
19771 66, 2, 0, 2,
19772 11,
19773 OPC_CheckPatternPredicate5,
19774 OPC_EmitNodeXForm, 7, 1,
19775 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_W),
19776 66, 2, 0, 2,
19777 0,
19778 36,
19779 OPC_CheckChild0Integer, 94|128,102,
19780 OPC_RecordChild1,
19781 OPC_RecordChild2,
19782 OPC_MoveChild2,
19783 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19784 OPC_MoveParent,
19785 OPC_Scope, 11,
19786 OPC_CheckPatternPredicate3,
19787 OPC_EmitNodeXForm, 7, 1,
19788 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE_W),
19789 66, 2, 0, 2,
19790 11,
19791 OPC_CheckPatternPredicate5,
19792 OPC_EmitNodeXForm, 7, 1,
19793 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE_W),
19794 66, 2, 0, 2,
19795 0,
19796 36,
19797 OPC_CheckChild0Integer, 56|128,103,
19798 OPC_RecordChild1,
19799 OPC_RecordChild2,
19800 OPC_MoveChild2,
19801 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19802 OPC_MoveParent,
19803 OPC_Scope, 11,
19804 OPC_CheckPatternPredicate3,
19805 OPC_EmitNodeXForm, 7, 1,
19806 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_D),
19807 83, 2, 0, 2,
19808 11,
19809 OPC_CheckPatternPredicate5,
19810 OPC_EmitNodeXForm, 7, 1,
19811 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_D),
19812 83, 2, 0, 2,
19813 0,
19814 36,
19815 OPC_CheckChild0Integer, 58|128,103,
19816 OPC_RecordChild1,
19817 OPC_RecordChild2,
19818 OPC_MoveChild2,
19819 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19820 OPC_MoveParent,
19821 OPC_Scope, 11,
19822 OPC_CheckPatternPredicate3,
19823 OPC_EmitNodeXForm, 7, 1,
19824 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_DU),
19825 83, 2, 0, 2,
19826 11,
19827 OPC_CheckPatternPredicate5,
19828 OPC_EmitNodeXForm, 7, 1,
19829 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSAT_DU),
19830 83, 2, 0, 2,
19831 0,
19832 36,
19833 OPC_CheckChild0Integer, 30|128,103,
19834 OPC_RecordChild1,
19835 OPC_RecordChild2,
19836 OPC_MoveChild2,
19837 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19838 OPC_MoveParent,
19839 OPC_Scope, 11,
19840 OPC_CheckPatternPredicate3,
19841 OPC_EmitNodeXForm, 7, 1,
19842 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTRI_D),
19843 83, 2, 0, 2,
19844 11,
19845 OPC_CheckPatternPredicate5,
19846 OPC_EmitNodeXForm, 7, 1,
19847 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTRI_D),
19848 83, 2, 0, 2,
19849 0,
19850 36,
19851 OPC_CheckChild0Integer, 44|128,105,
19852 OPC_RecordChild1,
19853 OPC_RecordChild2,
19854 OPC_MoveChild2,
19855 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19856 OPC_MoveParent,
19857 OPC_Scope, 11,
19858 OPC_CheckPatternPredicate3,
19859 OPC_EmitNodeXForm, 7, 1,
19860 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRI_D),
19861 83, 2, 0, 2,
19862 11,
19863 OPC_CheckPatternPredicate5,
19864 OPC_EmitNodeXForm, 7, 1,
19865 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRI_D),
19866 83, 2, 0, 2,
19867 0,
19868 36,
19869 OPC_CheckChild0Integer, 112|128,104,
19870 OPC_RecordChild1,
19871 OPC_RecordChild2,
19872 OPC_MoveChild2,
19873 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19874 OPC_MoveParent,
19875 OPC_Scope, 11,
19876 OPC_CheckPatternPredicate3,
19877 OPC_EmitNodeXForm, 7, 1,
19878 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARI_D),
19879 83, 2, 0, 2,
19880 11,
19881 OPC_CheckPatternPredicate5,
19882 OPC_EmitNodeXForm, 7, 1,
19883 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARI_D),
19884 83, 2, 0, 2,
19885 0,
19886 36,
19887 OPC_CheckChild0Integer, 78|128,103,
19888 OPC_RecordChild1,
19889 OPC_RecordChild2,
19890 OPC_MoveChild2,
19891 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19892 OPC_MoveParent,
19893 OPC_Scope, 11,
19894 OPC_CheckPatternPredicate3,
19895 OPC_EmitNodeXForm, 7, 1,
19896 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_D),
19897 83, 2, 0, 2,
19898 11,
19899 OPC_CheckPatternPredicate5,
19900 OPC_EmitNodeXForm, 7, 1,
19901 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_D),
19902 83, 2, 0, 2,
19903 0,
19904 36,
19905 OPC_CheckChild0Integer, 0|128,104,
19906 OPC_RecordChild1,
19907 OPC_RecordChild2,
19908 OPC_MoveChild2,
19909 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19910 OPC_MoveParent,
19911 OPC_Scope, 11,
19912 OPC_CheckPatternPredicate3,
19913 OPC_EmitNodeXForm, 7, 1,
19914 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_D),
19915 83, 2, 0, 2,
19916 11,
19917 OPC_CheckPatternPredicate5,
19918 OPC_EmitNodeXForm, 7, 1,
19919 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_D),
19920 83, 2, 0, 2,
19921 0,
19922 36,
19923 OPC_CheckChild0Integer, 2|128,104,
19924 OPC_RecordChild1,
19925 OPC_RecordChild2,
19926 OPC_MoveChild2,
19927 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19928 OPC_MoveParent,
19929 OPC_Scope, 11,
19930 OPC_CheckPatternPredicate3,
19931 OPC_EmitNodeXForm, 7, 1,
19932 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_DU),
19933 83, 2, 0, 2,
19934 11,
19935 OPC_CheckPatternPredicate5,
19936 OPC_EmitNodeXForm, 7, 1,
19937 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_DU),
19938 83, 2, 0, 2,
19939 0,
19940 36,
19941 OPC_CheckChild0Integer, 60|128,104,
19942 OPC_RecordChild1,
19943 OPC_RecordChild2,
19944 OPC_MoveChild2,
19945 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19946 OPC_MoveParent,
19947 OPC_Scope, 11,
19948 OPC_CheckPatternPredicate3,
19949 OPC_EmitNodeXForm, 7, 1,
19950 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_D),
19951 83, 2, 0, 2,
19952 11,
19953 OPC_CheckPatternPredicate5,
19954 OPC_EmitNodeXForm, 7, 1,
19955 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_D),
19956 83, 2, 0, 2,
19957 0,
19958 36,
19959 OPC_CheckChild0Integer, 62|128,104,
19960 OPC_RecordChild1,
19961 OPC_RecordChild2,
19962 OPC_MoveChild2,
19963 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19964 OPC_MoveParent,
19965 OPC_Scope, 11,
19966 OPC_CheckPatternPredicate3,
19967 OPC_EmitNodeXForm, 7, 1,
19968 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_DU),
19969 83, 2, 0, 2,
19970 11,
19971 OPC_CheckPatternPredicate5,
19972 OPC_EmitNodeXForm, 7, 1,
19973 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_DU),
19974 83, 2, 0, 2,
19975 0,
19976 36,
19977 OPC_CheckChild0Integer, 108|128,102,
19978 OPC_RecordChild1,
19979 OPC_RecordChild2,
19980 OPC_MoveChild2,
19981 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
19982 OPC_MoveParent,
19983 OPC_Scope, 11,
19984 OPC_CheckPatternPredicate3,
19985 OPC_EmitNodeXForm, 7, 1,
19986 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_D),
19987 83, 2, 0, 2,
19988 11,
19989 OPC_CheckPatternPredicate5,
19990 OPC_EmitNodeXForm, 7, 1,
19991 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_D),
19992 83, 2, 0, 2,
19993 0,
19994 36,
19995 OPC_CheckChild0Integer, 68|128,102,
19996 OPC_RecordChild1,
19997 OPC_RecordChild2,
19998 OPC_MoveChild2,
19999 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20000 OPC_MoveParent,
20001 OPC_Scope, 11,
20002 OPC_CheckPatternPredicate3,
20003 OPC_EmitNodeXForm, 7, 1,
20004 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_D),
20005 83, 2, 0, 2,
20006 11,
20007 OPC_CheckPatternPredicate5,
20008 OPC_EmitNodeXForm, 7, 1,
20009 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_D),
20010 83, 2, 0, 2,
20011 0,
20012 36,
20013 OPC_CheckChild0Integer, 90|128,102,
20014 OPC_RecordChild1,
20015 OPC_RecordChild2,
20016 OPC_MoveChild2,
20017 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20018 OPC_MoveParent,
20019 OPC_Scope, 11,
20020 OPC_CheckPatternPredicate3,
20021 OPC_EmitNodeXForm, 7, 1,
20022 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE_D),
20023 83, 2, 0, 2,
20024 11,
20025 OPC_CheckPatternPredicate5,
20026 OPC_EmitNodeXForm, 7, 1,
20027 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE_D),
20028 83, 2, 0, 2,
20029 0,
20030 39,
20031 OPC_CheckChild0Integer, 26|128,105,
20032 OPC_RecordChild1,
20033 OPC_RecordChild2,
20034 OPC_RecordChild3,
20035 OPC_MoveChild3,
20036 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20037 OPC_MoveParent,
20038 OPC_Scope, 12,
20039 OPC_CheckPatternPredicate3,
20040 OPC_EmitNodeXForm, 7, 2,
20041 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLNI_B_H),
20042 41, 3, 0, 1, 3,
20043 12,
20044 OPC_CheckPatternPredicate5,
20045 OPC_EmitNodeXForm, 7, 2,
20046 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLNI_B_H),
20047 41, 3, 0, 1, 3,
20048 0,
20049 39,
20050 OPC_CheckChild0Integer, 94|128,104,
20051 OPC_RecordChild1,
20052 OPC_RecordChild2,
20053 OPC_RecordChild3,
20054 OPC_MoveChild3,
20055 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20056 OPC_MoveParent,
20057 OPC_Scope, 12,
20058 OPC_CheckPatternPredicate3,
20059 OPC_EmitNodeXForm, 7, 2,
20060 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRANI_B_H),
20061 41, 3, 0, 1, 3,
20062 12,
20063 OPC_CheckPatternPredicate5,
20064 OPC_EmitNodeXForm, 7, 2,
20065 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRANI_B_H),
20066 41, 3, 0, 1, 3,
20067 0,
20068 39,
20069 OPC_CheckChild0Integer, 56|128,105,
20070 OPC_RecordChild1,
20071 OPC_RecordChild2,
20072 OPC_RecordChild3,
20073 OPC_MoveChild3,
20074 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20075 OPC_MoveParent,
20076 OPC_Scope, 12,
20077 OPC_CheckPatternPredicate3,
20078 OPC_EmitNodeXForm, 7, 2,
20079 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRNI_B_H),
20080 41, 3, 0, 1, 3,
20081 12,
20082 OPC_CheckPatternPredicate5,
20083 OPC_EmitNodeXForm, 7, 2,
20084 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRNI_B_H),
20085 41, 3, 0, 1, 3,
20086 0,
20087 39,
20088 OPC_CheckChild0Integer, 124|128,104,
20089 OPC_RecordChild1,
20090 OPC_RecordChild2,
20091 OPC_RecordChild3,
20092 OPC_MoveChild3,
20093 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20094 OPC_MoveParent,
20095 OPC_Scope, 12,
20096 OPC_CheckPatternPredicate3,
20097 OPC_EmitNodeXForm, 7, 2,
20098 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARNI_B_H),
20099 41, 3, 0, 1, 3,
20100 12,
20101 OPC_CheckPatternPredicate5,
20102 OPC_EmitNodeXForm, 7, 2,
20103 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARNI_B_H),
20104 41, 3, 0, 1, 3,
20105 0,
20106 39,
20107 OPC_CheckChild0Integer, 4|128,106,
20108 OPC_RecordChild1,
20109 OPC_RecordChild2,
20110 OPC_RecordChild3,
20111 OPC_MoveChild3,
20112 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20113 OPC_MoveParent,
20114 OPC_Scope, 12,
20115 OPC_CheckPatternPredicate3,
20116 OPC_EmitNodeXForm, 7, 2,
20117 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_B_H),
20118 41, 3, 0, 1, 3,
20119 12,
20120 OPC_CheckPatternPredicate5,
20121 OPC_EmitNodeXForm, 7, 2,
20122 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_B_H),
20123 41, 3, 0, 1, 3,
20124 0,
20125 39,
20126 OPC_CheckChild0Integer, 76|128,105,
20127 OPC_RecordChild1,
20128 OPC_RecordChild2,
20129 OPC_RecordChild3,
20130 OPC_MoveChild3,
20131 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20132 OPC_MoveParent,
20133 OPC_Scope, 12,
20134 OPC_CheckPatternPredicate3,
20135 OPC_EmitNodeXForm, 7, 2,
20136 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_B_H),
20137 41, 3, 0, 1, 3,
20138 12,
20139 OPC_CheckPatternPredicate5,
20140 OPC_EmitNodeXForm, 7, 2,
20141 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_B_H),
20142 41, 3, 0, 1, 3,
20143 0,
20144 39,
20145 OPC_CheckChild0Integer, 6|128,106,
20146 OPC_RecordChild1,
20147 OPC_RecordChild2,
20148 OPC_RecordChild3,
20149 OPC_MoveChild3,
20150 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20151 OPC_MoveParent,
20152 OPC_Scope, 12,
20153 OPC_CheckPatternPredicate3,
20154 OPC_EmitNodeXForm, 7, 2,
20155 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_BU_H),
20156 41, 3, 0, 1, 3,
20157 12,
20158 OPC_CheckPatternPredicate5,
20159 OPC_EmitNodeXForm, 7, 2,
20160 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_BU_H),
20161 41, 3, 0, 1, 3,
20162 0,
20163 39,
20164 OPC_CheckChild0Integer, 78|128,105,
20165 OPC_RecordChild1,
20166 OPC_RecordChild2,
20167 OPC_RecordChild3,
20168 OPC_MoveChild3,
20169 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20170 OPC_MoveParent,
20171 OPC_Scope, 12,
20172 OPC_CheckPatternPredicate3,
20173 OPC_EmitNodeXForm, 7, 2,
20174 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_BU_H),
20175 41, 3, 0, 1, 3,
20176 12,
20177 OPC_CheckPatternPredicate5,
20178 OPC_EmitNodeXForm, 7, 2,
20179 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_BU_H),
20180 41, 3, 0, 1, 3,
20181 0,
20182 39,
20183 OPC_CheckChild0Integer, 32|128,106,
20184 OPC_RecordChild1,
20185 OPC_RecordChild2,
20186 OPC_RecordChild3,
20187 OPC_MoveChild3,
20188 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20189 OPC_MoveParent,
20190 OPC_Scope, 12,
20191 OPC_CheckPatternPredicate3,
20192 OPC_EmitNodeXForm, 7, 2,
20193 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_B_H),
20194 41, 3, 0, 1, 3,
20195 12,
20196 OPC_CheckPatternPredicate5,
20197 OPC_EmitNodeXForm, 7, 2,
20198 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_B_H),
20199 41, 3, 0, 1, 3,
20200 0,
20201 39,
20202 OPC_CheckChild0Integer, 104|128,105,
20203 OPC_RecordChild1,
20204 OPC_RecordChild2,
20205 OPC_RecordChild3,
20206 OPC_MoveChild3,
20207 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20208 OPC_MoveParent,
20209 OPC_Scope, 12,
20210 OPC_CheckPatternPredicate3,
20211 OPC_EmitNodeXForm, 7, 2,
20212 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_B_H),
20213 41, 3, 0, 1, 3,
20214 12,
20215 OPC_CheckPatternPredicate5,
20216 OPC_EmitNodeXForm, 7, 2,
20217 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_B_H),
20218 41, 3, 0, 1, 3,
20219 0,
20220 39,
20221 OPC_CheckChild0Integer, 34|128,106,
20222 OPC_RecordChild1,
20223 OPC_RecordChild2,
20224 OPC_RecordChild3,
20225 OPC_MoveChild3,
20226 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20227 OPC_MoveParent,
20228 OPC_Scope, 12,
20229 OPC_CheckPatternPredicate3,
20230 OPC_EmitNodeXForm, 7, 2,
20231 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_BU_H),
20232 41, 3, 0, 1, 3,
20233 12,
20234 OPC_CheckPatternPredicate5,
20235 OPC_EmitNodeXForm, 7, 2,
20236 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_BU_H),
20237 41, 3, 0, 1, 3,
20238 0,
20239 39,
20240 OPC_CheckChild0Integer, 106|128,105,
20241 OPC_RecordChild1,
20242 OPC_RecordChild2,
20243 OPC_RecordChild3,
20244 OPC_MoveChild3,
20245 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20246 OPC_MoveParent,
20247 OPC_Scope, 12,
20248 OPC_CheckPatternPredicate3,
20249 OPC_EmitNodeXForm, 7, 2,
20250 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_BU_H),
20251 41, 3, 0, 1, 3,
20252 12,
20253 OPC_CheckPatternPredicate5,
20254 OPC_EmitNodeXForm, 7, 2,
20255 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_BU_H),
20256 41, 3, 0, 1, 3,
20257 0,
20258 39,
20259 OPC_CheckChild0Integer, 40|128,99,
20260 OPC_RecordChild1,
20261 OPC_RecordChild2,
20262 OPC_RecordChild3,
20263 OPC_MoveChild3,
20264 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20265 OPC_MoveParent,
20266 OPC_Scope, 12,
20267 OPC_CheckPatternPredicate3,
20268 OPC_EmitNodeXForm, 7, 2,
20269 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSTPI_B),
20270 41, 3, 0, 1, 3,
20271 12,
20272 OPC_CheckPatternPredicate5,
20273 OPC_EmitNodeXForm, 7, 2,
20274 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSTPI_B),
20275 41, 3, 0, 1, 3,
20276 0,
20277 39,
20278 OPC_CheckChild0Integer, 8|128,97,
20279 OPC_RecordChild1,
20280 OPC_RecordChild2,
20281 OPC_RecordChild3,
20282 OPC_MoveChild3,
20283 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20284 OPC_MoveParent,
20285 OPC_Scope, 12,
20286 OPC_CheckPatternPredicate3,
20287 OPC_EmitNodeXForm, 7, 2,
20288 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSELI_B),
20289 41, 3, 0, 1, 3,
20290 12,
20291 OPC_CheckPatternPredicate5,
20292 OPC_EmitNodeXForm, 7, 2,
20293 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSELI_B),
20294 41, 3, 0, 1, 3,
20295 0,
20296 39,
20297 OPC_CheckChild0Integer, 82|128,97,
20298 OPC_RecordChild1,
20299 OPC_RecordChild2,
20300 OPC_RecordChild3,
20301 OPC_MoveChild3,
20302 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20303 OPC_MoveParent,
20304 OPC_Scope, 12,
20305 OPC_CheckPatternPredicate3,
20306 OPC_EmitNodeXForm, 7, 2,
20307 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTRINS_B),
20308 41, 3, 0, 1, 3,
20309 12,
20310 OPC_CheckPatternPredicate5,
20311 OPC_EmitNodeXForm, 7, 2,
20312 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTRINS_B),
20313 41, 3, 0, 1, 3,
20314 0,
20315 39,
20316 OPC_CheckChild0Integer, 70|128,102,
20317 OPC_RecordChild1,
20318 OPC_RecordChild2,
20319 OPC_RecordChild3,
20320 OPC_MoveChild3,
20321 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20322 OPC_MoveParent,
20323 OPC_Scope, 12,
20324 OPC_CheckPatternPredicate3,
20325 OPC_EmitNodeXForm, 7, 2,
20326 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
20327 41, 3, 0, 1, 3,
20328 12,
20329 OPC_CheckPatternPredicate5,
20330 OPC_EmitNodeXForm, 7, 2,
20331 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
20332 41, 3, 0, 1, 3,
20333 0,
20334 39,
20335 OPC_CheckChild0Integer, 30|128,105,
20336 OPC_RecordChild1,
20337 OPC_RecordChild2,
20338 OPC_RecordChild3,
20339 OPC_MoveChild3,
20340 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20341 OPC_MoveParent,
20342 OPC_Scope, 12,
20343 OPC_CheckPatternPredicate3,
20344 OPC_EmitNodeXForm, 7, 2,
20345 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLNI_H_W),
20346 52, 3, 0, 1, 3,
20347 12,
20348 OPC_CheckPatternPredicate5,
20349 OPC_EmitNodeXForm, 7, 2,
20350 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLNI_H_W),
20351 52, 3, 0, 1, 3,
20352 0,
20353 39,
20354 OPC_CheckChild0Integer, 98|128,104,
20355 OPC_RecordChild1,
20356 OPC_RecordChild2,
20357 OPC_RecordChild3,
20358 OPC_MoveChild3,
20359 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20360 OPC_MoveParent,
20361 OPC_Scope, 12,
20362 OPC_CheckPatternPredicate3,
20363 OPC_EmitNodeXForm, 7, 2,
20364 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRANI_H_W),
20365 52, 3, 0, 1, 3,
20366 12,
20367 OPC_CheckPatternPredicate5,
20368 OPC_EmitNodeXForm, 7, 2,
20369 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRANI_H_W),
20370 52, 3, 0, 1, 3,
20371 0,
20372 39,
20373 OPC_CheckChild0Integer, 60|128,105,
20374 OPC_RecordChild1,
20375 OPC_RecordChild2,
20376 OPC_RecordChild3,
20377 OPC_MoveChild3,
20378 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20379 OPC_MoveParent,
20380 OPC_Scope, 12,
20381 OPC_CheckPatternPredicate3,
20382 OPC_EmitNodeXForm, 7, 2,
20383 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRNI_H_W),
20384 52, 3, 0, 1, 3,
20385 12,
20386 OPC_CheckPatternPredicate5,
20387 OPC_EmitNodeXForm, 7, 2,
20388 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRNI_H_W),
20389 52, 3, 0, 1, 3,
20390 0,
20391 39,
20392 OPC_CheckChild0Integer, 0|128,105,
20393 OPC_RecordChild1,
20394 OPC_RecordChild2,
20395 OPC_RecordChild3,
20396 OPC_MoveChild3,
20397 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20398 OPC_MoveParent,
20399 OPC_Scope, 12,
20400 OPC_CheckPatternPredicate3,
20401 OPC_EmitNodeXForm, 7, 2,
20402 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARNI_H_W),
20403 52, 3, 0, 1, 3,
20404 12,
20405 OPC_CheckPatternPredicate5,
20406 OPC_EmitNodeXForm, 7, 2,
20407 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARNI_H_W),
20408 52, 3, 0, 1, 3,
20409 0,
20410 39,
20411 OPC_CheckChild0Integer, 12|128,106,
20412 OPC_RecordChild1,
20413 OPC_RecordChild2,
20414 OPC_RecordChild3,
20415 OPC_MoveChild3,
20416 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20417 OPC_MoveParent,
20418 OPC_Scope, 12,
20419 OPC_CheckPatternPredicate3,
20420 OPC_EmitNodeXForm, 7, 2,
20421 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_H_W),
20422 52, 3, 0, 1, 3,
20423 12,
20424 OPC_CheckPatternPredicate5,
20425 OPC_EmitNodeXForm, 7, 2,
20426 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_H_W),
20427 52, 3, 0, 1, 3,
20428 0,
20429 39,
20430 OPC_CheckChild0Integer, 84|128,105,
20431 OPC_RecordChild1,
20432 OPC_RecordChild2,
20433 OPC_RecordChild3,
20434 OPC_MoveChild3,
20435 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20436 OPC_MoveParent,
20437 OPC_Scope, 12,
20438 OPC_CheckPatternPredicate3,
20439 OPC_EmitNodeXForm, 7, 2,
20440 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_H_W),
20441 52, 3, 0, 1, 3,
20442 12,
20443 OPC_CheckPatternPredicate5,
20444 OPC_EmitNodeXForm, 7, 2,
20445 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_H_W),
20446 52, 3, 0, 1, 3,
20447 0,
20448 39,
20449 OPC_CheckChild0Integer, 14|128,106,
20450 OPC_RecordChild1,
20451 OPC_RecordChild2,
20452 OPC_RecordChild3,
20453 OPC_MoveChild3,
20454 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20455 OPC_MoveParent,
20456 OPC_Scope, 12,
20457 OPC_CheckPatternPredicate3,
20458 OPC_EmitNodeXForm, 7, 2,
20459 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_HU_W),
20460 52, 3, 0, 1, 3,
20461 12,
20462 OPC_CheckPatternPredicate5,
20463 OPC_EmitNodeXForm, 7, 2,
20464 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_HU_W),
20465 52, 3, 0, 1, 3,
20466 0,
20467 39,
20468 OPC_CheckChild0Integer, 86|128,105,
20469 OPC_RecordChild1,
20470 OPC_RecordChild2,
20471 OPC_RecordChild3,
20472 OPC_MoveChild3,
20473 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20474 OPC_MoveParent,
20475 OPC_Scope, 12,
20476 OPC_CheckPatternPredicate3,
20477 OPC_EmitNodeXForm, 7, 2,
20478 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_HU_W),
20479 52, 3, 0, 1, 3,
20480 12,
20481 OPC_CheckPatternPredicate5,
20482 OPC_EmitNodeXForm, 7, 2,
20483 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_HU_W),
20484 52, 3, 0, 1, 3,
20485 0,
20486 39,
20487 OPC_CheckChild0Integer, 40|128,106,
20488 OPC_RecordChild1,
20489 OPC_RecordChild2,
20490 OPC_RecordChild3,
20491 OPC_MoveChild3,
20492 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20493 OPC_MoveParent,
20494 OPC_Scope, 12,
20495 OPC_CheckPatternPredicate3,
20496 OPC_EmitNodeXForm, 7, 2,
20497 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_H_W),
20498 52, 3, 0, 1, 3,
20499 12,
20500 OPC_CheckPatternPredicate5,
20501 OPC_EmitNodeXForm, 7, 2,
20502 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_H_W),
20503 52, 3, 0, 1, 3,
20504 0,
20505 39,
20506 OPC_CheckChild0Integer, 112|128,105,
20507 OPC_RecordChild1,
20508 OPC_RecordChild2,
20509 OPC_RecordChild3,
20510 OPC_MoveChild3,
20511 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20512 OPC_MoveParent,
20513 OPC_Scope, 12,
20514 OPC_CheckPatternPredicate3,
20515 OPC_EmitNodeXForm, 7, 2,
20516 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_H_W),
20517 52, 3, 0, 1, 3,
20518 12,
20519 OPC_CheckPatternPredicate5,
20520 OPC_EmitNodeXForm, 7, 2,
20521 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_H_W),
20522 52, 3, 0, 1, 3,
20523 0,
20524 39,
20525 OPC_CheckChild0Integer, 42|128,106,
20526 OPC_RecordChild1,
20527 OPC_RecordChild2,
20528 OPC_RecordChild3,
20529 OPC_MoveChild3,
20530 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20531 OPC_MoveParent,
20532 OPC_Scope, 12,
20533 OPC_CheckPatternPredicate3,
20534 OPC_EmitNodeXForm, 7, 2,
20535 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_HU_W),
20536 52, 3, 0, 1, 3,
20537 12,
20538 OPC_CheckPatternPredicate5,
20539 OPC_EmitNodeXForm, 7, 2,
20540 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_HU_W),
20541 52, 3, 0, 1, 3,
20542 0,
20543 39,
20544 OPC_CheckChild0Integer, 114|128,105,
20545 OPC_RecordChild1,
20546 OPC_RecordChild2,
20547 OPC_RecordChild3,
20548 OPC_MoveChild3,
20549 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20550 OPC_MoveParent,
20551 OPC_Scope, 12,
20552 OPC_CheckPatternPredicate3,
20553 OPC_EmitNodeXForm, 7, 2,
20554 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_HU_W),
20555 52, 3, 0, 1, 3,
20556 12,
20557 OPC_CheckPatternPredicate5,
20558 OPC_EmitNodeXForm, 7, 2,
20559 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_HU_W),
20560 52, 3, 0, 1, 3,
20561 0,
20562 39,
20563 OPC_CheckChild0Integer, 42|128,99,
20564 OPC_RecordChild1,
20565 OPC_RecordChild2,
20566 OPC_RecordChild3,
20567 OPC_MoveChild3,
20568 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20569 OPC_MoveParent,
20570 OPC_Scope, 12,
20571 OPC_CheckPatternPredicate3,
20572 OPC_EmitNodeXForm, 7, 2,
20573 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSTPI_H),
20574 52, 3, 0, 1, 3,
20575 12,
20576 OPC_CheckPatternPredicate5,
20577 OPC_EmitNodeXForm, 7, 2,
20578 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSTPI_H),
20579 52, 3, 0, 1, 3,
20580 0,
20581 39,
20582 OPC_CheckChild0Integer, 86|128,97,
20583 OPC_RecordChild1,
20584 OPC_RecordChild2,
20585 OPC_RecordChild3,
20586 OPC_MoveChild3,
20587 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20588 OPC_MoveParent,
20589 OPC_Scope, 12,
20590 OPC_CheckPatternPredicate3,
20591 OPC_EmitNodeXForm, 7, 2,
20592 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTRINS_H),
20593 52, 3, 0, 1, 3,
20594 12,
20595 OPC_CheckPatternPredicate5,
20596 OPC_EmitNodeXForm, 7, 2,
20597 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTRINS_H),
20598 52, 3, 0, 1, 3,
20599 0,
20600 39,
20601 OPC_CheckChild0Integer, 32|128,105,
20602 OPC_RecordChild1,
20603 OPC_RecordChild2,
20604 OPC_RecordChild3,
20605 OPC_MoveChild3,
20606 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20607 OPC_MoveParent,
20608 OPC_Scope, 12,
20609 OPC_CheckPatternPredicate3,
20610 OPC_EmitNodeXForm, 7, 2,
20611 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLNI_W_D),
20612 66, 3, 0, 1, 3,
20613 12,
20614 OPC_CheckPatternPredicate5,
20615 OPC_EmitNodeXForm, 7, 2,
20616 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLNI_W_D),
20617 66, 3, 0, 1, 3,
20618 0,
20619 39,
20620 OPC_CheckChild0Integer, 100|128,104,
20621 OPC_RecordChild1,
20622 OPC_RecordChild2,
20623 OPC_RecordChild3,
20624 OPC_MoveChild3,
20625 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20626 OPC_MoveParent,
20627 OPC_Scope, 12,
20628 OPC_CheckPatternPredicate3,
20629 OPC_EmitNodeXForm, 7, 2,
20630 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRANI_W_D),
20631 66, 3, 0, 1, 3,
20632 12,
20633 OPC_CheckPatternPredicate5,
20634 OPC_EmitNodeXForm, 7, 2,
20635 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRANI_W_D),
20636 66, 3, 0, 1, 3,
20637 0,
20638 39,
20639 OPC_CheckChild0Integer, 62|128,105,
20640 OPC_RecordChild1,
20641 OPC_RecordChild2,
20642 OPC_RecordChild3,
20643 OPC_MoveChild3,
20644 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20645 OPC_MoveParent,
20646 OPC_Scope, 12,
20647 OPC_CheckPatternPredicate3,
20648 OPC_EmitNodeXForm, 7, 2,
20649 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRNI_W_D),
20650 66, 3, 0, 1, 3,
20651 12,
20652 OPC_CheckPatternPredicate5,
20653 OPC_EmitNodeXForm, 7, 2,
20654 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRNI_W_D),
20655 66, 3, 0, 1, 3,
20656 0,
20657 39,
20658 OPC_CheckChild0Integer, 2|128,105,
20659 OPC_RecordChild1,
20660 OPC_RecordChild2,
20661 OPC_RecordChild3,
20662 OPC_MoveChild3,
20663 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20664 OPC_MoveParent,
20665 OPC_Scope, 12,
20666 OPC_CheckPatternPredicate3,
20667 OPC_EmitNodeXForm, 7, 2,
20668 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARNI_W_D),
20669 66, 3, 0, 1, 3,
20670 12,
20671 OPC_CheckPatternPredicate5,
20672 OPC_EmitNodeXForm, 7, 2,
20673 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARNI_W_D),
20674 66, 3, 0, 1, 3,
20675 0,
20676 39,
20677 OPC_CheckChild0Integer, 16|128,106,
20678 OPC_RecordChild1,
20679 OPC_RecordChild2,
20680 OPC_RecordChild3,
20681 OPC_MoveChild3,
20682 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20683 OPC_MoveParent,
20684 OPC_Scope, 12,
20685 OPC_CheckPatternPredicate3,
20686 OPC_EmitNodeXForm, 7, 2,
20687 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_W_D),
20688 66, 3, 0, 1, 3,
20689 12,
20690 OPC_CheckPatternPredicate5,
20691 OPC_EmitNodeXForm, 7, 2,
20692 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_W_D),
20693 66, 3, 0, 1, 3,
20694 0,
20695 39,
20696 OPC_CheckChild0Integer, 88|128,105,
20697 OPC_RecordChild1,
20698 OPC_RecordChild2,
20699 OPC_RecordChild3,
20700 OPC_MoveChild3,
20701 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20702 OPC_MoveParent,
20703 OPC_Scope, 12,
20704 OPC_CheckPatternPredicate3,
20705 OPC_EmitNodeXForm, 7, 2,
20706 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_W_D),
20707 66, 3, 0, 1, 3,
20708 12,
20709 OPC_CheckPatternPredicate5,
20710 OPC_EmitNodeXForm, 7, 2,
20711 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_W_D),
20712 66, 3, 0, 1, 3,
20713 0,
20714 39,
20715 OPC_CheckChild0Integer, 18|128,106,
20716 OPC_RecordChild1,
20717 OPC_RecordChild2,
20718 OPC_RecordChild3,
20719 OPC_MoveChild3,
20720 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20721 OPC_MoveParent,
20722 OPC_Scope, 12,
20723 OPC_CheckPatternPredicate3,
20724 OPC_EmitNodeXForm, 7, 2,
20725 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_WU_D),
20726 66, 3, 0, 1, 3,
20727 12,
20728 OPC_CheckPatternPredicate5,
20729 OPC_EmitNodeXForm, 7, 2,
20730 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_WU_D),
20731 66, 3, 0, 1, 3,
20732 0,
20733 39,
20734 OPC_CheckChild0Integer, 90|128,105,
20735 OPC_RecordChild1,
20736 OPC_RecordChild2,
20737 OPC_RecordChild3,
20738 OPC_MoveChild3,
20739 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20740 OPC_MoveParent,
20741 OPC_Scope, 12,
20742 OPC_CheckPatternPredicate3,
20743 OPC_EmitNodeXForm, 7, 2,
20744 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_WU_D),
20745 66, 3, 0, 1, 3,
20746 12,
20747 OPC_CheckPatternPredicate5,
20748 OPC_EmitNodeXForm, 7, 2,
20749 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_WU_D),
20750 66, 3, 0, 1, 3,
20751 0,
20752 39,
20753 OPC_CheckChild0Integer, 44|128,106,
20754 OPC_RecordChild1,
20755 OPC_RecordChild2,
20756 OPC_RecordChild3,
20757 OPC_MoveChild3,
20758 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20759 OPC_MoveParent,
20760 OPC_Scope, 12,
20761 OPC_CheckPatternPredicate3,
20762 OPC_EmitNodeXForm, 7, 2,
20763 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_W_D),
20764 66, 3, 0, 1, 3,
20765 12,
20766 OPC_CheckPatternPredicate5,
20767 OPC_EmitNodeXForm, 7, 2,
20768 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_W_D),
20769 66, 3, 0, 1, 3,
20770 0,
20771 39,
20772 OPC_CheckChild0Integer, 116|128,105,
20773 OPC_RecordChild1,
20774 OPC_RecordChild2,
20775 OPC_RecordChild3,
20776 OPC_MoveChild3,
20777 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20778 OPC_MoveParent,
20779 OPC_Scope, 12,
20780 OPC_CheckPatternPredicate3,
20781 OPC_EmitNodeXForm, 7, 2,
20782 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_W_D),
20783 66, 3, 0, 1, 3,
20784 12,
20785 OPC_CheckPatternPredicate5,
20786 OPC_EmitNodeXForm, 7, 2,
20787 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_W_D),
20788 66, 3, 0, 1, 3,
20789 0,
20790 39,
20791 OPC_CheckChild0Integer, 46|128,106,
20792 OPC_RecordChild1,
20793 OPC_RecordChild2,
20794 OPC_RecordChild3,
20795 OPC_MoveChild3,
20796 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20797 OPC_MoveParent,
20798 OPC_Scope, 12,
20799 OPC_CheckPatternPredicate3,
20800 OPC_EmitNodeXForm, 7, 2,
20801 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_WU_D),
20802 66, 3, 0, 1, 3,
20803 12,
20804 OPC_CheckPatternPredicate5,
20805 OPC_EmitNodeXForm, 7, 2,
20806 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_WU_D),
20807 66, 3, 0, 1, 3,
20808 0,
20809 39,
20810 OPC_CheckChild0Integer, 118|128,105,
20811 OPC_RecordChild1,
20812 OPC_RecordChild2,
20813 OPC_RecordChild3,
20814 OPC_MoveChild3,
20815 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20816 OPC_MoveParent,
20817 OPC_Scope, 12,
20818 OPC_CheckPatternPredicate3,
20819 OPC_EmitNodeXForm, 7, 2,
20820 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_WU_D),
20821 66, 3, 0, 1, 3,
20822 12,
20823 OPC_CheckPatternPredicate5,
20824 OPC_EmitNodeXForm, 7, 2,
20825 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_WU_D),
20826 66, 3, 0, 1, 3,
20827 0,
20828 39,
20829 OPC_CheckChild0Integer, 72|128,102,
20830 OPC_RecordChild1,
20831 OPC_RecordChild2,
20832 OPC_RecordChild3,
20833 OPC_MoveChild3,
20834 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20835 OPC_MoveParent,
20836 OPC_Scope, 12,
20837 OPC_CheckPatternPredicate3,
20838 OPC_EmitNodeXForm, 7, 2,
20839 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_W),
20840 66, 3, 0, 1, 3,
20841 12,
20842 OPC_CheckPatternPredicate5,
20843 OPC_EmitNodeXForm, 7, 2,
20844 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_W),
20845 66, 3, 0, 1, 3,
20846 0,
20847 39,
20848 OPC_CheckChild0Integer, 88|128,97,
20849 OPC_RecordChild1,
20850 OPC_RecordChild2,
20851 OPC_RecordChild3,
20852 OPC_MoveChild3,
20853 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20854 OPC_MoveParent,
20855 OPC_Scope, 12,
20856 OPC_CheckPatternPredicate3,
20857 OPC_EmitNodeXForm, 7, 2,
20858 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTRINS_W),
20859 66, 3, 0, 1, 3,
20860 12,
20861 OPC_CheckPatternPredicate5,
20862 OPC_EmitNodeXForm, 7, 2,
20863 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTRINS_W),
20864 66, 3, 0, 1, 3,
20865 0,
20866 39,
20867 OPC_CheckChild0Integer, 36|128,100,
20868 OPC_RecordChild1,
20869 OPC_RecordChild2,
20870 OPC_RecordChild3,
20871 OPC_MoveChild3,
20872 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20873 OPC_MoveParent,
20874 OPC_Scope, 12,
20875 OPC_CheckPatternPredicate3,
20876 OPC_EmitNodeXForm, 7, 2,
20877 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSVE0_W),
20878 66, 3, 0, 1, 3,
20879 12,
20880 OPC_CheckPatternPredicate5,
20881 OPC_EmitNodeXForm, 7, 2,
20882 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSVE0_W),
20883 66, 3, 0, 1, 3,
20884 0,
20885 39,
20886 OPC_CheckChild0Integer, 28|128,105,
20887 OPC_RecordChild1,
20888 OPC_RecordChild2,
20889 OPC_RecordChild3,
20890 OPC_MoveChild3,
20891 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20892 OPC_MoveParent,
20893 OPC_Scope, 12,
20894 OPC_CheckPatternPredicate3,
20895 OPC_EmitNodeXForm, 7, 2,
20896 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLNI_D_Q),
20897 83, 3, 0, 1, 3,
20898 12,
20899 OPC_CheckPatternPredicate5,
20900 OPC_EmitNodeXForm, 7, 2,
20901 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLNI_D_Q),
20902 83, 3, 0, 1, 3,
20903 0,
20904 39,
20905 OPC_CheckChild0Integer, 96|128,104,
20906 OPC_RecordChild1,
20907 OPC_RecordChild2,
20908 OPC_RecordChild3,
20909 OPC_MoveChild3,
20910 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20911 OPC_MoveParent,
20912 OPC_Scope, 12,
20913 OPC_CheckPatternPredicate3,
20914 OPC_EmitNodeXForm, 7, 2,
20915 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRANI_D_Q),
20916 83, 3, 0, 1, 3,
20917 12,
20918 OPC_CheckPatternPredicate5,
20919 OPC_EmitNodeXForm, 7, 2,
20920 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRANI_D_Q),
20921 83, 3, 0, 1, 3,
20922 0,
20923 39,
20924 OPC_CheckChild0Integer, 58|128,105,
20925 OPC_RecordChild1,
20926 OPC_RecordChild2,
20927 OPC_RecordChild3,
20928 OPC_MoveChild3,
20929 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20930 OPC_MoveParent,
20931 OPC_Scope, 12,
20932 OPC_CheckPatternPredicate3,
20933 OPC_EmitNodeXForm, 7, 2,
20934 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRNI_D_Q),
20935 83, 3, 0, 1, 3,
20936 12,
20937 OPC_CheckPatternPredicate5,
20938 OPC_EmitNodeXForm, 7, 2,
20939 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRNI_D_Q),
20940 83, 3, 0, 1, 3,
20941 0,
20942 39,
20943 OPC_CheckChild0Integer, 126|128,104,
20944 OPC_RecordChild1,
20945 OPC_RecordChild2,
20946 OPC_RecordChild3,
20947 OPC_MoveChild3,
20948 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20949 OPC_MoveParent,
20950 OPC_Scope, 12,
20951 OPC_CheckPatternPredicate3,
20952 OPC_EmitNodeXForm, 7, 2,
20953 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARNI_D_Q),
20954 83, 3, 0, 1, 3,
20955 12,
20956 OPC_CheckPatternPredicate5,
20957 OPC_EmitNodeXForm, 7, 2,
20958 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARNI_D_Q),
20959 83, 3, 0, 1, 3,
20960 0,
20961 39,
20962 OPC_CheckChild0Integer, 8|128,106,
20963 OPC_RecordChild1,
20964 OPC_RecordChild2,
20965 OPC_RecordChild3,
20966 OPC_MoveChild3,
20967 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20968 OPC_MoveParent,
20969 OPC_Scope, 12,
20970 OPC_CheckPatternPredicate3,
20971 OPC_EmitNodeXForm, 7, 2,
20972 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_D_Q),
20973 83, 3, 0, 1, 3,
20974 12,
20975 OPC_CheckPatternPredicate5,
20976 OPC_EmitNodeXForm, 7, 2,
20977 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_D_Q),
20978 83, 3, 0, 1, 3,
20979 0,
20980 39,
20981 OPC_CheckChild0Integer, 80|128,105,
20982 OPC_RecordChild1,
20983 OPC_RecordChild2,
20984 OPC_RecordChild3,
20985 OPC_MoveChild3,
20986 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
20987 OPC_MoveParent,
20988 OPC_Scope, 12,
20989 OPC_CheckPatternPredicate3,
20990 OPC_EmitNodeXForm, 7, 2,
20991 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_D_Q),
20992 83, 3, 0, 1, 3,
20993 12,
20994 OPC_CheckPatternPredicate5,
20995 OPC_EmitNodeXForm, 7, 2,
20996 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_D_Q),
20997 83, 3, 0, 1, 3,
20998 0,
20999 39,
21000 OPC_CheckChild0Integer, 10|128,106,
21001 OPC_RecordChild1,
21002 OPC_RecordChild2,
21003 OPC_RecordChild3,
21004 OPC_MoveChild3,
21005 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
21006 OPC_MoveParent,
21007 OPC_Scope, 12,
21008 OPC_CheckPatternPredicate3,
21009 OPC_EmitNodeXForm, 7, 2,
21010 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_DU_Q),
21011 83, 3, 0, 1, 3,
21012 12,
21013 OPC_CheckPatternPredicate5,
21014 OPC_EmitNodeXForm, 7, 2,
21015 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLNI_DU_Q),
21016 83, 3, 0, 1, 3,
21017 0,
21018 39,
21019 OPC_CheckChild0Integer, 82|128,105,
21020 OPC_RecordChild1,
21021 OPC_RecordChild2,
21022 OPC_RecordChild3,
21023 OPC_MoveChild3,
21024 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
21025 OPC_MoveParent,
21026 OPC_Scope, 12,
21027 OPC_CheckPatternPredicate3,
21028 OPC_EmitNodeXForm, 7, 2,
21029 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_DU_Q),
21030 83, 3, 0, 1, 3,
21031 12,
21032 OPC_CheckPatternPredicate5,
21033 OPC_EmitNodeXForm, 7, 2,
21034 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRANI_DU_Q),
21035 83, 3, 0, 1, 3,
21036 0,
21037 39,
21038 OPC_CheckChild0Integer, 36|128,106,
21039 OPC_RecordChild1,
21040 OPC_RecordChild2,
21041 OPC_RecordChild3,
21042 OPC_MoveChild3,
21043 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
21044 OPC_MoveParent,
21045 OPC_Scope, 12,
21046 OPC_CheckPatternPredicate3,
21047 OPC_EmitNodeXForm, 7, 2,
21048 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_D_Q),
21049 83, 3, 0, 1, 3,
21050 12,
21051 OPC_CheckPatternPredicate5,
21052 OPC_EmitNodeXForm, 7, 2,
21053 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_D_Q),
21054 83, 3, 0, 1, 3,
21055 0,
21056 39,
21057 OPC_CheckChild0Integer, 108|128,105,
21058 OPC_RecordChild1,
21059 OPC_RecordChild2,
21060 OPC_RecordChild3,
21061 OPC_MoveChild3,
21062 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
21063 OPC_MoveParent,
21064 OPC_Scope, 12,
21065 OPC_CheckPatternPredicate3,
21066 OPC_EmitNodeXForm, 7, 2,
21067 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_D_Q),
21068 83, 3, 0, 1, 3,
21069 12,
21070 OPC_CheckPatternPredicate5,
21071 OPC_EmitNodeXForm, 7, 2,
21072 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_D_Q),
21073 83, 3, 0, 1, 3,
21074 0,
21075 39,
21076 OPC_CheckChild0Integer, 38|128,106,
21077 OPC_RecordChild1,
21078 OPC_RecordChild2,
21079 OPC_RecordChild3,
21080 OPC_MoveChild3,
21081 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
21082 OPC_MoveParent,
21083 OPC_Scope, 12,
21084 OPC_CheckPatternPredicate3,
21085 OPC_EmitNodeXForm, 7, 2,
21086 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_DU_Q),
21087 83, 3, 0, 1, 3,
21088 12,
21089 OPC_CheckPatternPredicate5,
21090 OPC_EmitNodeXForm, 7, 2,
21091 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRNI_DU_Q),
21092 83, 3, 0, 1, 3,
21093 0,
21094 39,
21095 OPC_CheckChild0Integer, 110|128,105,
21096 OPC_RecordChild1,
21097 OPC_RecordChild2,
21098 OPC_RecordChild3,
21099 OPC_MoveChild3,
21100 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
21101 OPC_MoveParent,
21102 OPC_Scope, 12,
21103 OPC_CheckPatternPredicate3,
21104 OPC_EmitNodeXForm, 7, 2,
21105 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_DU_Q),
21106 83, 3, 0, 1, 3,
21107 12,
21108 OPC_CheckPatternPredicate5,
21109 OPC_EmitNodeXForm, 7, 2,
21110 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARNI_DU_Q),
21111 83, 3, 0, 1, 3,
21112 0,
21113 39,
21114 OPC_CheckChild0Integer, 94|128,103,
21115 OPC_RecordChild1,
21116 OPC_RecordChild2,
21117 OPC_RecordChild3,
21118 OPC_MoveChild3,
21119 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
21120 OPC_MoveParent,
21121 OPC_Scope, 12,
21122 OPC_CheckPatternPredicate3,
21123 OPC_EmitNodeXForm, 7, 2,
21124 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_D),
21125 83, 3, 0, 1, 3,
21126 12,
21127 OPC_CheckPatternPredicate5,
21128 OPC_EmitNodeXForm, 7, 2,
21129 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_D),
21130 83, 3, 0, 1, 3,
21131 0,
21132 39,
21133 OPC_CheckChild0Integer, 84|128,97,
21134 OPC_RecordChild1,
21135 OPC_RecordChild2,
21136 OPC_RecordChild3,
21137 OPC_MoveChild3,
21138 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
21139 OPC_MoveParent,
21140 OPC_Scope, 12,
21141 OPC_CheckPatternPredicate3,
21142 OPC_EmitNodeXForm, 7, 2,
21143 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTRINS_D),
21144 83, 3, 0, 1, 3,
21145 12,
21146 OPC_CheckPatternPredicate5,
21147 OPC_EmitNodeXForm, 7, 2,
21148 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTRINS_D),
21149 83, 3, 0, 1, 3,
21150 0,
21151 39,
21152 OPC_CheckChild0Integer, 34|128,100,
21153 OPC_RecordChild1,
21154 OPC_RecordChild2,
21155 OPC_RecordChild3,
21156 OPC_MoveChild3,
21157 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
21158 OPC_MoveParent,
21159 OPC_Scope, 12,
21160 OPC_CheckPatternPredicate3,
21161 OPC_EmitNodeXForm, 7, 2,
21162 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSVE0_D),
21163 83, 3, 0, 1, 3,
21164 12,
21165 OPC_CheckPatternPredicate5,
21166 OPC_EmitNodeXForm, 7, 2,
21167 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSVE0_D),
21168 83, 3, 0, 1, 3,
21169 0,
21170 13,
21171 OPC_CheckChild0Integer, 72|128,114,
21172 OPC_RecordChild1,
21173 OPC_RecordChild2,
21174 OPC_CheckPatternPredicate1,
21175 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSADD_B),
21176 40, 2, 0, 1,
21177 13,
21178 OPC_CheckChild0Integer, 74|128,114,
21179 OPC_RecordChild1,
21180 OPC_RecordChild2,
21181 OPC_CheckPatternPredicate1,
21182 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSADD_BU),
21183 40, 2, 0, 1,
21184 13,
21185 OPC_CheckChild0Integer, 84|128,117,
21186 OPC_RecordChild1,
21187 OPC_RecordChild2,
21188 OPC_CheckPatternPredicate1,
21189 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSUB_B),
21190 40, 2, 0, 1,
21191 13,
21192 OPC_CheckChild0Integer, 86|128,117,
21193 OPC_RecordChild1,
21194 OPC_RecordChild2,
21195 OPC_CheckPatternPredicate1,
21196 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSUB_BU),
21197 40, 2, 0, 1,
21198 13,
21199 OPC_CheckChild0Integer, 38|128,111,
21200 OPC_RecordChild1,
21201 OPC_RecordChild2,
21202 OPC_CheckPatternPredicate1,
21203 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHADDW_H_B),
21204 51, 2, 0, 1,
21205 13,
21206 OPC_CheckChild0Integer, 40|128,111,
21207 OPC_RecordChild1,
21208 OPC_RecordChild2,
21209 OPC_CheckPatternPredicate1,
21210 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHADDW_HU_BU),
21211 51, 2, 0, 1,
21212 13,
21213 OPC_CheckChild0Integer, 54|128,111,
21214 OPC_RecordChild1,
21215 OPC_RecordChild2,
21216 OPC_CheckPatternPredicate1,
21217 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHSUBW_H_B),
21218 51, 2, 0, 1,
21219 13,
21220 OPC_CheckChild0Integer, 56|128,111,
21221 OPC_RecordChild1,
21222 OPC_RecordChild2,
21223 OPC_CheckPatternPredicate1,
21224 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHSUBW_HU_BU),
21225 51, 2, 0, 1,
21226 13,
21227 OPC_CheckChild0Integer, 74|128,107,
21228 OPC_RecordChild1,
21229 OPC_RecordChild2,
21230 OPC_CheckPatternPredicate1,
21231 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_H_B),
21232 51, 2, 0, 1,
21233 13,
21234 OPC_CheckChild0Integer, 98|128,107,
21235 OPC_RecordChild1,
21236 OPC_RecordChild2,
21237 OPC_CheckPatternPredicate1,
21238 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_H_B),
21239 51, 2, 0, 1,
21240 13,
21241 OPC_CheckChild0Integer, 6|128,118,
21242 OPC_RecordChild1,
21243 OPC_RecordChild2,
21244 OPC_CheckPatternPredicate1,
21245 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWEV_H_B),
21246 51, 2, 0, 1,
21247 13,
21248 OPC_CheckChild0Integer, 22|128,118,
21249 OPC_RecordChild1,
21250 OPC_RecordChild2,
21251 OPC_CheckPatternPredicate1,
21252 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWOD_H_B),
21253 51, 2, 0, 1,
21254 13,
21255 OPC_CheckChild0Integer, 76|128,107,
21256 OPC_RecordChild1,
21257 OPC_RecordChild2,
21258 OPC_CheckPatternPredicate1,
21259 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_H_BU),
21260 51, 2, 0, 1,
21261 13,
21262 OPC_CheckChild0Integer, 100|128,107,
21263 OPC_RecordChild1,
21264 OPC_RecordChild2,
21265 OPC_CheckPatternPredicate1,
21266 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_H_BU),
21267 51, 2, 0, 1,
21268 13,
21269 OPC_CheckChild0Integer, 8|128,118,
21270 OPC_RecordChild1,
21271 OPC_RecordChild2,
21272 OPC_CheckPatternPredicate1,
21273 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWEV_H_BU),
21274 51, 2, 0, 1,
21275 13,
21276 OPC_CheckChild0Integer, 24|128,118,
21277 OPC_RecordChild1,
21278 OPC_RecordChild2,
21279 OPC_CheckPatternPredicate1,
21280 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWOD_H_BU),
21281 51, 2, 0, 1,
21282 13,
21283 OPC_CheckChild0Integer, 78|128,107,
21284 OPC_RecordChild1,
21285 OPC_RecordChild2,
21286 OPC_CheckPatternPredicate1,
21287 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_H_BU_B),
21288 51, 2, 0, 1,
21289 13,
21290 OPC_CheckChild0Integer, 102|128,107,
21291 OPC_RecordChild1,
21292 OPC_RecordChild2,
21293 OPC_CheckPatternPredicate1,
21294 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_H_BU_B),
21295 51, 2, 0, 1,
21296 13,
21297 OPC_CheckChild0Integer, 122|128,107,
21298 OPC_RecordChild1,
21299 OPC_RecordChild2,
21300 OPC_CheckPatternPredicate1,
21301 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVG_B),
21302 40, 2, 0, 1,
21303 13,
21304 OPC_CheckChild0Integer, 124|128,107,
21305 OPC_RecordChild1,
21306 OPC_RecordChild2,
21307 OPC_CheckPatternPredicate1,
21308 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVG_BU),
21309 40, 2, 0, 1,
21310 13,
21311 OPC_CheckChild0Integer, 10|128,108,
21312 OPC_RecordChild1,
21313 OPC_RecordChild2,
21314 OPC_CheckPatternPredicate1,
21315 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVGR_B),
21316 40, 2, 0, 1,
21317 13,
21318 OPC_CheckChild0Integer, 12|128,108,
21319 OPC_RecordChild1,
21320 OPC_RecordChild2,
21321 OPC_CheckPatternPredicate1,
21322 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVGR_BU),
21323 40, 2, 0, 1,
21324 13,
21325 OPC_CheckChild0Integer, 26|128,107,
21326 OPC_RecordChild1,
21327 OPC_RecordChild2,
21328 OPC_CheckPatternPredicate1,
21329 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_B),
21330 40, 2, 0, 1,
21331 13,
21332 OPC_CheckChild0Integer, 28|128,107,
21333 OPC_RecordChild1,
21334 OPC_RecordChild2,
21335 OPC_CheckPatternPredicate1,
21336 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_BU),
21337 40, 2, 0, 1,
21338 13,
21339 OPC_CheckChild0Integer, 52|128,107,
21340 OPC_RecordChild1,
21341 OPC_RecordChild2,
21342 OPC_CheckPatternPredicate1,
21343 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDA_B),
21344 40, 2, 0, 1,
21345 13,
21346 OPC_CheckChild0Integer, 4|128,113,
21347 OPC_RecordChild1,
21348 OPC_RecordChild2,
21349 OPC_CheckPatternPredicate1,
21350 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_B),
21351 40, 2, 0, 1,
21352 13,
21353 OPC_CheckChild0Integer, 6|128,113,
21354 OPC_RecordChild1,
21355 OPC_RecordChild2,
21356 OPC_CheckPatternPredicate1,
21357 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_BU),
21358 40, 2, 0, 1,
21359 13,
21360 OPC_CheckChild0Integer, 34|128,113,
21361 OPC_RecordChild1,
21362 OPC_RecordChild2,
21363 OPC_CheckPatternPredicate1,
21364 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_H_B),
21365 51, 2, 0, 1,
21366 13,
21367 OPC_CheckChild0Integer, 58|128,113,
21368 OPC_RecordChild1,
21369 OPC_RecordChild2,
21370 OPC_CheckPatternPredicate1,
21371 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_H_B),
21372 51, 2, 0, 1,
21373 13,
21374 OPC_CheckChild0Integer, 36|128,113,
21375 OPC_RecordChild1,
21376 OPC_RecordChild2,
21377 OPC_CheckPatternPredicate1,
21378 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_H_BU),
21379 51, 2, 0, 1,
21380 13,
21381 OPC_CheckChild0Integer, 60|128,113,
21382 OPC_RecordChild1,
21383 OPC_RecordChild2,
21384 OPC_CheckPatternPredicate1,
21385 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_H_BU),
21386 51, 2, 0, 1,
21387 13,
21388 OPC_CheckChild0Integer, 38|128,113,
21389 OPC_RecordChild1,
21390 OPC_RecordChild2,
21391 OPC_CheckPatternPredicate1,
21392 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_H_BU_B),
21393 51, 2, 0, 1,
21394 13,
21395 OPC_CheckChild0Integer, 62|128,113,
21396 OPC_RecordChild1,
21397 OPC_RecordChild2,
21398 OPC_CheckPatternPredicate1,
21399 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_H_BU_B),
21400 51, 2, 0, 1,
21401 13,
21402 OPC_CheckChild0Integer, 8|128,115,
21403 OPC_RecordChild1,
21404 OPC_RecordChild2,
21405 OPC_CheckPatternPredicate1,
21406 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSIGNCOV_B),
21407 40, 2, 0, 1,
21408 13,
21409 OPC_CheckChild0Integer, 120|128,107,
21410 OPC_RecordChild1,
21411 OPC_RecordChild2,
21412 OPC_CheckPatternPredicate1,
21413 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VANDN_V),
21414 40, 2, 0, 1,
21415 13,
21416 OPC_CheckChild0Integer, 92|128,113,
21417 OPC_RecordChild1,
21418 OPC_RecordChild2,
21419 OPC_CheckPatternPredicate1,
21420 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VORN_V),
21421 40, 2, 0, 1,
21422 13,
21423 OPC_CheckChild0Integer, 56|128,114,
21424 OPC_RecordChild1,
21425 OPC_RecordChild2,
21426 OPC_CheckPatternPredicate1,
21427 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTR_B),
21428 40, 2, 0, 1,
21429 13,
21430 OPC_CheckChild0Integer, 70|128,116,
21431 OPC_RecordChild1,
21432 OPC_RecordChild2,
21433 OPC_CheckPatternPredicate1,
21434 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLR_B),
21435 40, 2, 0, 1,
21436 13,
21437 OPC_CheckChild0Integer, 10|128,116,
21438 OPC_RecordChild1,
21439 OPC_RecordChild2,
21440 OPC_CheckPatternPredicate1,
21441 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAR_B),
21442 40, 2, 0, 1,
21443 13,
21444 OPC_CheckChild0Integer, 104|128,114,
21445 OPC_RecordChild1,
21446 OPC_RecordChild2,
21447 OPC_CheckPatternPredicate1,
21448 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQ_B),
21449 40, 2, 0, 1,
21450 13,
21451 OPC_CheckChild0Integer, 16|128,115,
21452 OPC_RecordChild1,
21453 OPC_RecordChild2,
21454 OPC_CheckPatternPredicate1,
21455 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_B),
21456 40, 2, 0, 1,
21457 13,
21458 OPC_CheckChild0Integer, 18|128,115,
21459 OPC_RecordChild1,
21460 OPC_RecordChild2,
21461 OPC_CheckPatternPredicate1,
21462 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_BU),
21463 40, 2, 0, 1,
21464 13,
21465 OPC_CheckChild0Integer, 76|128,115,
21466 OPC_RecordChild1,
21467 OPC_RecordChild2,
21468 OPC_CheckPatternPredicate1,
21469 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_B),
21470 40, 2, 0, 1,
21471 13,
21472 OPC_CheckChild0Integer, 78|128,115,
21473 OPC_RecordChild1,
21474 OPC_RecordChild2,
21475 OPC_CheckPatternPredicate1,
21476 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_BU),
21477 40, 2, 0, 1,
21478 13,
21479 OPC_CheckChild0Integer, 94|128,113,
21480 OPC_RecordChild1,
21481 OPC_RecordChild2,
21482 OPC_CheckPatternPredicate1,
21483 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKEV_B),
21484 40, 2, 0, 1,
21485 13,
21486 OPC_CheckChild0Integer, 102|128,113,
21487 OPC_RecordChild1,
21488 OPC_RecordChild2,
21489 OPC_CheckPatternPredicate1,
21490 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKOD_B),
21491 40, 2, 0, 1,
21492 13,
21493 OPC_CheckChild0Integer, 120|128,113,
21494 OPC_RecordChild1,
21495 OPC_RecordChild2,
21496 OPC_CheckPatternPredicate1,
21497 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKEV_B),
21498 40, 2, 0, 1,
21499 13,
21500 OPC_CheckChild0Integer, 0|128,114,
21501 OPC_RecordChild1,
21502 OPC_RecordChild2,
21503 OPC_CheckPatternPredicate1,
21504 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKOD_B),
21505 40, 2, 0, 1,
21506 13,
21507 OPC_CheckChild0Integer, 74|128,111,
21508 OPC_RecordChild1,
21509 OPC_RecordChild2,
21510 OPC_CheckPatternPredicate1,
21511 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVL_B),
21512 40, 2, 0, 1,
21513 13,
21514 OPC_CheckChild0Integer, 66|128,111,
21515 OPC_RecordChild1,
21516 OPC_RecordChild2,
21517 OPC_CheckPatternPredicate1,
21518 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVH_B),
21519 40, 2, 0, 1,
21520 13,
21521 OPC_CheckChild0Integer, 80|128,114,
21522 OPC_RecordChild1,
21523 OPC_RecordChild2,
21524 OPC_CheckPatternPredicate1,
21525 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSADD_H),
21526 51, 2, 0, 1,
21527 13,
21528 OPC_CheckChild0Integer, 82|128,114,
21529 OPC_RecordChild1,
21530 OPC_RecordChild2,
21531 OPC_CheckPatternPredicate1,
21532 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSADD_HU),
21533 51, 2, 0, 1,
21534 13,
21535 OPC_CheckChild0Integer, 92|128,117,
21536 OPC_RecordChild1,
21537 OPC_RecordChild2,
21538 OPC_CheckPatternPredicate1,
21539 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSUB_H),
21540 51, 2, 0, 1,
21541 13,
21542 OPC_CheckChild0Integer, 94|128,117,
21543 OPC_RecordChild1,
21544 OPC_RecordChild2,
21545 OPC_CheckPatternPredicate1,
21546 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSUB_HU),
21547 51, 2, 0, 1,
21548 13,
21549 OPC_CheckChild0Integer, 46|128,111,
21550 OPC_RecordChild1,
21551 OPC_RecordChild2,
21552 OPC_CheckPatternPredicate1,
21553 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHADDW_W_H),
21554 62, 2, 0, 1,
21555 13,
21556 OPC_CheckChild0Integer, 48|128,111,
21557 OPC_RecordChild1,
21558 OPC_RecordChild2,
21559 OPC_CheckPatternPredicate1,
21560 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHADDW_WU_HU),
21561 62, 2, 0, 1,
21562 13,
21563 OPC_CheckChild0Integer, 62|128,111,
21564 OPC_RecordChild1,
21565 OPC_RecordChild2,
21566 OPC_CheckPatternPredicate1,
21567 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHSUBW_W_H),
21568 62, 2, 0, 1,
21569 13,
21570 OPC_CheckChild0Integer, 64|128,111,
21571 OPC_RecordChild1,
21572 OPC_RecordChild2,
21573 OPC_CheckPatternPredicate1,
21574 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHSUBW_WU_HU),
21575 62, 2, 0, 1,
21576 13,
21577 OPC_CheckChild0Integer, 86|128,107,
21578 OPC_RecordChild1,
21579 OPC_RecordChild2,
21580 OPC_CheckPatternPredicate1,
21581 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_W_H),
21582 62, 2, 0, 1,
21583 13,
21584 OPC_CheckChild0Integer, 110|128,107,
21585 OPC_RecordChild1,
21586 OPC_RecordChild2,
21587 OPC_CheckPatternPredicate1,
21588 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_W_H),
21589 62, 2, 0, 1,
21590 13,
21591 OPC_CheckChild0Integer, 14|128,118,
21592 OPC_RecordChild1,
21593 OPC_RecordChild2,
21594 OPC_CheckPatternPredicate1,
21595 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWEV_W_H),
21596 62, 2, 0, 1,
21597 13,
21598 OPC_CheckChild0Integer, 30|128,118,
21599 OPC_RecordChild1,
21600 OPC_RecordChild2,
21601 OPC_CheckPatternPredicate1,
21602 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWOD_W_H),
21603 62, 2, 0, 1,
21604 13,
21605 OPC_CheckChild0Integer, 88|128,107,
21606 OPC_RecordChild1,
21607 OPC_RecordChild2,
21608 OPC_CheckPatternPredicate1,
21609 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_W_HU),
21610 62, 2, 0, 1,
21611 13,
21612 OPC_CheckChild0Integer, 112|128,107,
21613 OPC_RecordChild1,
21614 OPC_RecordChild2,
21615 OPC_CheckPatternPredicate1,
21616 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_W_HU),
21617 62, 2, 0, 1,
21618 13,
21619 OPC_CheckChild0Integer, 16|128,118,
21620 OPC_RecordChild1,
21621 OPC_RecordChild2,
21622 OPC_CheckPatternPredicate1,
21623 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWEV_W_HU),
21624 62, 2, 0, 1,
21625 13,
21626 OPC_CheckChild0Integer, 32|128,118,
21627 OPC_RecordChild1,
21628 OPC_RecordChild2,
21629 OPC_CheckPatternPredicate1,
21630 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWOD_W_HU),
21631 62, 2, 0, 1,
21632 13,
21633 OPC_CheckChild0Integer, 90|128,107,
21634 OPC_RecordChild1,
21635 OPC_RecordChild2,
21636 OPC_CheckPatternPredicate1,
21637 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_W_HU_H),
21638 62, 2, 0, 1,
21639 13,
21640 OPC_CheckChild0Integer, 114|128,107,
21641 OPC_RecordChild1,
21642 OPC_RecordChild2,
21643 OPC_CheckPatternPredicate1,
21644 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_W_HU_H),
21645 62, 2, 0, 1,
21646 13,
21647 OPC_CheckChild0Integer, 2|128,108,
21648 OPC_RecordChild1,
21649 OPC_RecordChild2,
21650 OPC_CheckPatternPredicate1,
21651 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVG_H),
21652 51, 2, 0, 1,
21653 13,
21654 OPC_CheckChild0Integer, 4|128,108,
21655 OPC_RecordChild1,
21656 OPC_RecordChild2,
21657 OPC_CheckPatternPredicate1,
21658 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVG_HU),
21659 51, 2, 0, 1,
21660 13,
21661 OPC_CheckChild0Integer, 18|128,108,
21662 OPC_RecordChild1,
21663 OPC_RecordChild2,
21664 OPC_CheckPatternPredicate1,
21665 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVGR_H),
21666 51, 2, 0, 1,
21667 13,
21668 OPC_CheckChild0Integer, 20|128,108,
21669 OPC_RecordChild1,
21670 OPC_RecordChild2,
21671 OPC_CheckPatternPredicate1,
21672 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVGR_HU),
21673 51, 2, 0, 1,
21674 13,
21675 OPC_CheckChild0Integer, 34|128,107,
21676 OPC_RecordChild1,
21677 OPC_RecordChild2,
21678 OPC_CheckPatternPredicate1,
21679 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_H),
21680 51, 2, 0, 1,
21681 13,
21682 OPC_CheckChild0Integer, 36|128,107,
21683 OPC_RecordChild1,
21684 OPC_RecordChild2,
21685 OPC_CheckPatternPredicate1,
21686 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_HU),
21687 51, 2, 0, 1,
21688 13,
21689 OPC_CheckChild0Integer, 56|128,107,
21690 OPC_RecordChild1,
21691 OPC_RecordChild2,
21692 OPC_CheckPatternPredicate1,
21693 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDA_H),
21694 51, 2, 0, 1,
21695 13,
21696 OPC_CheckChild0Integer, 12|128,113,
21697 OPC_RecordChild1,
21698 OPC_RecordChild2,
21699 OPC_CheckPatternPredicate1,
21700 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_H),
21701 51, 2, 0, 1,
21702 13,
21703 OPC_CheckChild0Integer, 14|128,113,
21704 OPC_RecordChild1,
21705 OPC_RecordChild2,
21706 OPC_CheckPatternPredicate1,
21707 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_HU),
21708 51, 2, 0, 1,
21709 13,
21710 OPC_CheckChild0Integer, 46|128,113,
21711 OPC_RecordChild1,
21712 OPC_RecordChild2,
21713 OPC_CheckPatternPredicate1,
21714 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_W_H),
21715 62, 2, 0, 1,
21716 13,
21717 OPC_CheckChild0Integer, 70|128,113,
21718 OPC_RecordChild1,
21719 OPC_RecordChild2,
21720 OPC_CheckPatternPredicate1,
21721 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_W_H),
21722 62, 2, 0, 1,
21723 13,
21724 OPC_CheckChild0Integer, 48|128,113,
21725 OPC_RecordChild1,
21726 OPC_RecordChild2,
21727 OPC_CheckPatternPredicate1,
21728 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_W_HU),
21729 62, 2, 0, 1,
21730 13,
21731 OPC_CheckChild0Integer, 72|128,113,
21732 OPC_RecordChild1,
21733 OPC_RecordChild2,
21734 OPC_CheckPatternPredicate1,
21735 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_W_HU),
21736 62, 2, 0, 1,
21737 13,
21738 OPC_CheckChild0Integer, 50|128,113,
21739 OPC_RecordChild1,
21740 OPC_RecordChild2,
21741 OPC_CheckPatternPredicate1,
21742 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_W_HU_H),
21743 62, 2, 0, 1,
21744 13,
21745 OPC_CheckChild0Integer, 74|128,113,
21746 OPC_RecordChild1,
21747 OPC_RecordChild2,
21748 OPC_CheckPatternPredicate1,
21749 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_W_HU_H),
21750 62, 2, 0, 1,
21751 13,
21752 OPC_CheckChild0Integer, 12|128,115,
21753 OPC_RecordChild1,
21754 OPC_RecordChild2,
21755 OPC_CheckPatternPredicate1,
21756 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSIGNCOV_H),
21757 51, 2, 0, 1,
21758 13,
21759 OPC_CheckChild0Integer, 60|128,114,
21760 OPC_RecordChild1,
21761 OPC_RecordChild2,
21762 OPC_CheckPatternPredicate1,
21763 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTR_H),
21764 51, 2, 0, 1,
21765 13,
21766 OPC_CheckChild0Integer, 74|128,116,
21767 OPC_RecordChild1,
21768 OPC_RecordChild2,
21769 OPC_CheckPatternPredicate1,
21770 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLR_H),
21771 51, 2, 0, 1,
21772 13,
21773 OPC_CheckChild0Integer, 14|128,116,
21774 OPC_RecordChild1,
21775 OPC_RecordChild2,
21776 OPC_CheckPatternPredicate1,
21777 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAR_H),
21778 51, 2, 0, 1,
21779 13,
21780 OPC_CheckChild0Integer, 56|128,116,
21781 OPC_RecordChild1,
21782 OPC_RecordChild2,
21783 OPC_CheckPatternPredicate1,
21784 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLN_B_H),
21785 40, 2, 0, 1,
21786 13,
21787 OPC_CheckChild0Integer, 124|128,115,
21788 OPC_RecordChild1,
21789 OPC_RecordChild2,
21790 OPC_CheckPatternPredicate1,
21791 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAN_B_H),
21792 40, 2, 0, 1,
21793 13,
21794 OPC_CheckChild0Integer, 86|128,116,
21795 OPC_RecordChild1,
21796 OPC_RecordChild2,
21797 OPC_CheckPatternPredicate1,
21798 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRN_B_H),
21799 40, 2, 0, 1,
21800 13,
21801 OPC_CheckChild0Integer, 26|128,116,
21802 OPC_RecordChild1,
21803 OPC_RecordChild2,
21804 OPC_CheckPatternPredicate1,
21805 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARN_B_H),
21806 40, 2, 0, 1,
21807 13,
21808 OPC_CheckChild0Integer, 28|128,117,
21809 OPC_RecordChild1,
21810 OPC_RecordChild2,
21811 OPC_CheckPatternPredicate1,
21812 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLN_B_H),
21813 40, 2, 0, 1,
21814 13,
21815 OPC_CheckChild0Integer, 100|128,116,
21816 OPC_RecordChild1,
21817 OPC_RecordChild2,
21818 OPC_CheckPatternPredicate1,
21819 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRAN_B_H),
21820 40, 2, 0, 1,
21821 13,
21822 OPC_CheckChild0Integer, 30|128,117,
21823 OPC_RecordChild1,
21824 OPC_RecordChild2,
21825 OPC_CheckPatternPredicate1,
21826 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLN_BU_H),
21827 40, 2, 0, 1,
21828 13,
21829 OPC_CheckChild0Integer, 102|128,116,
21830 OPC_RecordChild1,
21831 OPC_RecordChild2,
21832 OPC_CheckPatternPredicate1,
21833 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRAN_BU_H),
21834 40, 2, 0, 1,
21835 13,
21836 OPC_CheckChild0Integer, 56|128,117,
21837 OPC_RecordChild1,
21838 OPC_RecordChild2,
21839 OPC_CheckPatternPredicate1,
21840 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRN_B_H),
21841 40, 2, 0, 1,
21842 13,
21843 OPC_CheckChild0Integer, 0|128,117,
21844 OPC_RecordChild1,
21845 OPC_RecordChild2,
21846 OPC_CheckPatternPredicate1,
21847 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARN_B_H),
21848 40, 2, 0, 1,
21849 13,
21850 OPC_CheckChild0Integer, 58|128,117,
21851 OPC_RecordChild1,
21852 OPC_RecordChild2,
21853 OPC_CheckPatternPredicate1,
21854 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRN_BU_H),
21855 40, 2, 0, 1,
21856 13,
21857 OPC_CheckChild0Integer, 2|128,117,
21858 OPC_RecordChild1,
21859 OPC_RecordChild2,
21860 OPC_CheckPatternPredicate1,
21861 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARN_BU_H),
21862 40, 2, 0, 1,
21863 13,
21864 OPC_CheckChild0Integer, 108|128,114,
21865 OPC_RecordChild1,
21866 OPC_RecordChild2,
21867 OPC_CheckPatternPredicate1,
21868 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQ_H),
21869 51, 2, 0, 1,
21870 13,
21871 OPC_CheckChild0Integer, 24|128,115,
21872 OPC_RecordChild1,
21873 OPC_RecordChild2,
21874 OPC_CheckPatternPredicate1,
21875 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_H),
21876 51, 2, 0, 1,
21877 13,
21878 OPC_CheckChild0Integer, 26|128,115,
21879 OPC_RecordChild1,
21880 OPC_RecordChild2,
21881 OPC_CheckPatternPredicate1,
21882 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_HU),
21883 51, 2, 0, 1,
21884 13,
21885 OPC_CheckChild0Integer, 84|128,115,
21886 OPC_RecordChild1,
21887 OPC_RecordChild2,
21888 OPC_CheckPatternPredicate1,
21889 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_H),
21890 51, 2, 0, 1,
21891 13,
21892 OPC_CheckChild0Integer, 86|128,115,
21893 OPC_RecordChild1,
21894 OPC_RecordChild2,
21895 OPC_CheckPatternPredicate1,
21896 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_HU),
21897 51, 2, 0, 1,
21898 13,
21899 OPC_CheckChild0Integer, 98|128,113,
21900 OPC_RecordChild1,
21901 OPC_RecordChild2,
21902 OPC_CheckPatternPredicate1,
21903 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKEV_H),
21904 51, 2, 0, 1,
21905 13,
21906 OPC_CheckChild0Integer, 106|128,113,
21907 OPC_RecordChild1,
21908 OPC_RecordChild2,
21909 OPC_CheckPatternPredicate1,
21910 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKOD_H),
21911 51, 2, 0, 1,
21912 13,
21913 OPC_CheckChild0Integer, 124|128,113,
21914 OPC_RecordChild1,
21915 OPC_RecordChild2,
21916 OPC_CheckPatternPredicate1,
21917 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKEV_H),
21918 51, 2, 0, 1,
21919 13,
21920 OPC_CheckChild0Integer, 4|128,114,
21921 OPC_RecordChild1,
21922 OPC_RecordChild2,
21923 OPC_CheckPatternPredicate1,
21924 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKOD_H),
21925 51, 2, 0, 1,
21926 13,
21927 OPC_CheckChild0Integer, 78|128,111,
21928 OPC_RecordChild1,
21929 OPC_RecordChild2,
21930 OPC_CheckPatternPredicate1,
21931 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVL_H),
21932 51, 2, 0, 1,
21933 13,
21934 OPC_CheckChild0Integer, 70|128,111,
21935 OPC_RecordChild1,
21936 OPC_RecordChild2,
21937 OPC_CheckPatternPredicate1,
21938 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVH_H),
21939 51, 2, 0, 1,
21940 13,
21941 OPC_CheckChild0Integer, 84|128,114,
21942 OPC_RecordChild1,
21943 OPC_RecordChild2,
21944 OPC_CheckPatternPredicate1,
21945 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSADD_W),
21946 62, 2, 0, 1,
21947 13,
21948 OPC_CheckChild0Integer, 86|128,114,
21949 OPC_RecordChild1,
21950 OPC_RecordChild2,
21951 OPC_CheckPatternPredicate1,
21952 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSADD_WU),
21953 62, 2, 0, 1,
21954 13,
21955 OPC_CheckChild0Integer, 96|128,117,
21956 OPC_RecordChild1,
21957 OPC_RecordChild2,
21958 OPC_CheckPatternPredicate1,
21959 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSUB_W),
21960 62, 2, 0, 1,
21961 13,
21962 OPC_CheckChild0Integer, 98|128,117,
21963 OPC_RecordChild1,
21964 OPC_RecordChild2,
21965 OPC_CheckPatternPredicate1,
21966 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSUB_WU),
21967 62, 2, 0, 1,
21968 13,
21969 OPC_CheckChild0Integer, 34|128,111,
21970 OPC_RecordChild1,
21971 OPC_RecordChild2,
21972 OPC_CheckPatternPredicate1,
21973 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHADDW_D_W),
21974 81, 2, 0, 1,
21975 13,
21976 OPC_CheckChild0Integer, 36|128,111,
21977 OPC_RecordChild1,
21978 OPC_RecordChild2,
21979 OPC_CheckPatternPredicate1,
21980 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHADDW_DU_WU),
21981 81, 2, 0, 1,
21982 13,
21983 OPC_CheckChild0Integer, 50|128,111,
21984 OPC_RecordChild1,
21985 OPC_RecordChild2,
21986 OPC_CheckPatternPredicate1,
21987 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHSUBW_D_W),
21988 81, 2, 0, 1,
21989 13,
21990 OPC_CheckChild0Integer, 52|128,111,
21991 OPC_RecordChild1,
21992 OPC_RecordChild2,
21993 OPC_CheckPatternPredicate1,
21994 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHSUBW_DU_WU),
21995 81, 2, 0, 1,
21996 13,
21997 OPC_CheckChild0Integer, 68|128,107,
21998 OPC_RecordChild1,
21999 OPC_RecordChild2,
22000 OPC_CheckPatternPredicate1,
22001 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_D_W),
22002 81, 2, 0, 1,
22003 13,
22004 OPC_CheckChild0Integer, 92|128,107,
22005 OPC_RecordChild1,
22006 OPC_RecordChild2,
22007 OPC_CheckPatternPredicate1,
22008 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_D_W),
22009 81, 2, 0, 1,
22010 13,
22011 OPC_CheckChild0Integer, 2|128,118,
22012 OPC_RecordChild1,
22013 OPC_RecordChild2,
22014 OPC_CheckPatternPredicate1,
22015 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWEV_D_W),
22016 81, 2, 0, 1,
22017 13,
22018 OPC_CheckChild0Integer, 18|128,118,
22019 OPC_RecordChild1,
22020 OPC_RecordChild2,
22021 OPC_CheckPatternPredicate1,
22022 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWOD_D_W),
22023 81, 2, 0, 1,
22024 13,
22025 OPC_CheckChild0Integer, 70|128,107,
22026 OPC_RecordChild1,
22027 OPC_RecordChild2,
22028 OPC_CheckPatternPredicate1,
22029 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_D_WU),
22030 81, 2, 0, 1,
22031 13,
22032 OPC_CheckChild0Integer, 94|128,107,
22033 OPC_RecordChild1,
22034 OPC_RecordChild2,
22035 OPC_CheckPatternPredicate1,
22036 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_D_WU),
22037 81, 2, 0, 1,
22038 13,
22039 OPC_CheckChild0Integer, 4|128,118,
22040 OPC_RecordChild1,
22041 OPC_RecordChild2,
22042 OPC_CheckPatternPredicate1,
22043 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWEV_D_WU),
22044 81, 2, 0, 1,
22045 13,
22046 OPC_CheckChild0Integer, 20|128,118,
22047 OPC_RecordChild1,
22048 OPC_RecordChild2,
22049 OPC_CheckPatternPredicate1,
22050 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWOD_D_WU),
22051 81, 2, 0, 1,
22052 13,
22053 OPC_CheckChild0Integer, 72|128,107,
22054 OPC_RecordChild1,
22055 OPC_RecordChild2,
22056 OPC_CheckPatternPredicate1,
22057 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_D_WU_W),
22058 81, 2, 0, 1,
22059 13,
22060 OPC_CheckChild0Integer, 96|128,107,
22061 OPC_RecordChild1,
22062 OPC_RecordChild2,
22063 OPC_CheckPatternPredicate1,
22064 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_D_WU_W),
22065 81, 2, 0, 1,
22066 13,
22067 OPC_CheckChild0Integer, 6|128,108,
22068 OPC_RecordChild1,
22069 OPC_RecordChild2,
22070 OPC_CheckPatternPredicate1,
22071 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVG_W),
22072 62, 2, 0, 1,
22073 13,
22074 OPC_CheckChild0Integer, 8|128,108,
22075 OPC_RecordChild1,
22076 OPC_RecordChild2,
22077 OPC_CheckPatternPredicate1,
22078 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVG_WU),
22079 62, 2, 0, 1,
22080 13,
22081 OPC_CheckChild0Integer, 22|128,108,
22082 OPC_RecordChild1,
22083 OPC_RecordChild2,
22084 OPC_CheckPatternPredicate1,
22085 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVGR_W),
22086 62, 2, 0, 1,
22087 13,
22088 OPC_CheckChild0Integer, 24|128,108,
22089 OPC_RecordChild1,
22090 OPC_RecordChild2,
22091 OPC_CheckPatternPredicate1,
22092 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVGR_WU),
22093 62, 2, 0, 1,
22094 13,
22095 OPC_CheckChild0Integer, 38|128,107,
22096 OPC_RecordChild1,
22097 OPC_RecordChild2,
22098 OPC_CheckPatternPredicate1,
22099 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_W),
22100 62, 2, 0, 1,
22101 13,
22102 OPC_CheckChild0Integer, 40|128,107,
22103 OPC_RecordChild1,
22104 OPC_RecordChild2,
22105 OPC_CheckPatternPredicate1,
22106 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_WU),
22107 62, 2, 0, 1,
22108 13,
22109 OPC_CheckChild0Integer, 58|128,107,
22110 OPC_RecordChild1,
22111 OPC_RecordChild2,
22112 OPC_CheckPatternPredicate1,
22113 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDA_W),
22114 62, 2, 0, 1,
22115 13,
22116 OPC_CheckChild0Integer, 16|128,113,
22117 OPC_RecordChild1,
22118 OPC_RecordChild2,
22119 OPC_CheckPatternPredicate1,
22120 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_W),
22121 62, 2, 0, 1,
22122 13,
22123 OPC_CheckChild0Integer, 18|128,113,
22124 OPC_RecordChild1,
22125 OPC_RecordChild2,
22126 OPC_CheckPatternPredicate1,
22127 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_WU),
22128 62, 2, 0, 1,
22129 13,
22130 OPC_CheckChild0Integer, 28|128,113,
22131 OPC_RecordChild1,
22132 OPC_RecordChild2,
22133 OPC_CheckPatternPredicate1,
22134 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_D_W),
22135 81, 2, 0, 1,
22136 13,
22137 OPC_CheckChild0Integer, 52|128,113,
22138 OPC_RecordChild1,
22139 OPC_RecordChild2,
22140 OPC_CheckPatternPredicate1,
22141 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_D_W),
22142 81, 2, 0, 1,
22143 13,
22144 OPC_CheckChild0Integer, 30|128,113,
22145 OPC_RecordChild1,
22146 OPC_RecordChild2,
22147 OPC_CheckPatternPredicate1,
22148 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_D_WU),
22149 81, 2, 0, 1,
22150 13,
22151 OPC_CheckChild0Integer, 54|128,113,
22152 OPC_RecordChild1,
22153 OPC_RecordChild2,
22154 OPC_CheckPatternPredicate1,
22155 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_D_WU),
22156 81, 2, 0, 1,
22157 13,
22158 OPC_CheckChild0Integer, 32|128,113,
22159 OPC_RecordChild1,
22160 OPC_RecordChild2,
22161 OPC_CheckPatternPredicate1,
22162 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_D_WU_W),
22163 81, 2, 0, 1,
22164 13,
22165 OPC_CheckChild0Integer, 56|128,113,
22166 OPC_RecordChild1,
22167 OPC_RecordChild2,
22168 OPC_CheckPatternPredicate1,
22169 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_D_WU_W),
22170 81, 2, 0, 1,
22171 13,
22172 OPC_CheckChild0Integer, 14|128,115,
22173 OPC_RecordChild1,
22174 OPC_RecordChild2,
22175 OPC_CheckPatternPredicate1,
22176 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSIGNCOV_W),
22177 62, 2, 0, 1,
22178 13,
22179 OPC_CheckChild0Integer, 62|128,114,
22180 OPC_RecordChild1,
22181 OPC_RecordChild2,
22182 OPC_CheckPatternPredicate1,
22183 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTR_W),
22184 62, 2, 0, 1,
22185 13,
22186 OPC_CheckChild0Integer, 76|128,116,
22187 OPC_RecordChild1,
22188 OPC_RecordChild2,
22189 OPC_CheckPatternPredicate1,
22190 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLR_W),
22191 62, 2, 0, 1,
22192 13,
22193 OPC_CheckChild0Integer, 16|128,116,
22194 OPC_RecordChild1,
22195 OPC_RecordChild2,
22196 OPC_CheckPatternPredicate1,
22197 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAR_W),
22198 62, 2, 0, 1,
22199 13,
22200 OPC_CheckChild0Integer, 58|128,116,
22201 OPC_RecordChild1,
22202 OPC_RecordChild2,
22203 OPC_CheckPatternPredicate1,
22204 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLN_H_W),
22205 51, 2, 0, 1,
22206 13,
22207 OPC_CheckChild0Integer, 126|128,115,
22208 OPC_RecordChild1,
22209 OPC_RecordChild2,
22210 OPC_CheckPatternPredicate1,
22211 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAN_H_W),
22212 51, 2, 0, 1,
22213 13,
22214 OPC_CheckChild0Integer, 88|128,116,
22215 OPC_RecordChild1,
22216 OPC_RecordChild2,
22217 OPC_CheckPatternPredicate1,
22218 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRN_H_W),
22219 51, 2, 0, 1,
22220 13,
22221 OPC_CheckChild0Integer, 28|128,116,
22222 OPC_RecordChild1,
22223 OPC_RecordChild2,
22224 OPC_CheckPatternPredicate1,
22225 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARN_H_W),
22226 51, 2, 0, 1,
22227 13,
22228 OPC_CheckChild0Integer, 32|128,117,
22229 OPC_RecordChild1,
22230 OPC_RecordChild2,
22231 OPC_CheckPatternPredicate1,
22232 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLN_H_W),
22233 51, 2, 0, 1,
22234 13,
22235 OPC_CheckChild0Integer, 104|128,116,
22236 OPC_RecordChild1,
22237 OPC_RecordChild2,
22238 OPC_CheckPatternPredicate1,
22239 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRAN_H_W),
22240 51, 2, 0, 1,
22241 13,
22242 OPC_CheckChild0Integer, 34|128,117,
22243 OPC_RecordChild1,
22244 OPC_RecordChild2,
22245 OPC_CheckPatternPredicate1,
22246 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLN_HU_W),
22247 51, 2, 0, 1,
22248 13,
22249 OPC_CheckChild0Integer, 106|128,116,
22250 OPC_RecordChild1,
22251 OPC_RecordChild2,
22252 OPC_CheckPatternPredicate1,
22253 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRAN_HU_W),
22254 51, 2, 0, 1,
22255 13,
22256 OPC_CheckChild0Integer, 60|128,117,
22257 OPC_RecordChild1,
22258 OPC_RecordChild2,
22259 OPC_CheckPatternPredicate1,
22260 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRN_H_W),
22261 51, 2, 0, 1,
22262 13,
22263 OPC_CheckChild0Integer, 4|128,117,
22264 OPC_RecordChild1,
22265 OPC_RecordChild2,
22266 OPC_CheckPatternPredicate1,
22267 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARN_H_W),
22268 51, 2, 0, 1,
22269 13,
22270 OPC_CheckChild0Integer, 62|128,117,
22271 OPC_RecordChild1,
22272 OPC_RecordChild2,
22273 OPC_CheckPatternPredicate1,
22274 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRN_HU_W),
22275 51, 2, 0, 1,
22276 13,
22277 OPC_CheckChild0Integer, 6|128,117,
22278 OPC_RecordChild1,
22279 OPC_RecordChild2,
22280 OPC_CheckPatternPredicate1,
22281 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARN_HU_W),
22282 51, 2, 0, 1,
22283 13,
22284 OPC_CheckChild0Integer, 110|128,114,
22285 OPC_RecordChild1,
22286 OPC_RecordChild2,
22287 OPC_CheckPatternPredicate1,
22288 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQ_W),
22289 62, 2, 0, 1,
22290 13,
22291 OPC_CheckChild0Integer, 28|128,115,
22292 OPC_RecordChild1,
22293 OPC_RecordChild2,
22294 OPC_CheckPatternPredicate1,
22295 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_W),
22296 62, 2, 0, 1,
22297 13,
22298 OPC_CheckChild0Integer, 30|128,115,
22299 OPC_RecordChild1,
22300 OPC_RecordChild2,
22301 OPC_CheckPatternPredicate1,
22302 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_WU),
22303 62, 2, 0, 1,
22304 13,
22305 OPC_CheckChild0Integer, 88|128,115,
22306 OPC_RecordChild1,
22307 OPC_RecordChild2,
22308 OPC_CheckPatternPredicate1,
22309 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_W),
22310 62, 2, 0, 1,
22311 13,
22312 OPC_CheckChild0Integer, 90|128,115,
22313 OPC_RecordChild1,
22314 OPC_RecordChild2,
22315 OPC_CheckPatternPredicate1,
22316 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_WU),
22317 62, 2, 0, 1,
22318 13,
22319 OPC_CheckChild0Integer, 100|128,113,
22320 OPC_RecordChild1,
22321 OPC_RecordChild2,
22322 OPC_CheckPatternPredicate1,
22323 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKEV_W),
22324 62, 2, 0, 1,
22325 13,
22326 OPC_CheckChild0Integer, 108|128,113,
22327 OPC_RecordChild1,
22328 OPC_RecordChild2,
22329 OPC_CheckPatternPredicate1,
22330 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKOD_W),
22331 62, 2, 0, 1,
22332 13,
22333 OPC_CheckChild0Integer, 126|128,113,
22334 OPC_RecordChild1,
22335 OPC_RecordChild2,
22336 OPC_CheckPatternPredicate1,
22337 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKEV_W),
22338 62, 2, 0, 1,
22339 13,
22340 OPC_CheckChild0Integer, 6|128,114,
22341 OPC_RecordChild1,
22342 OPC_RecordChild2,
22343 OPC_CheckPatternPredicate1,
22344 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKOD_W),
22345 62, 2, 0, 1,
22346 13,
22347 OPC_CheckChild0Integer, 80|128,111,
22348 OPC_RecordChild1,
22349 OPC_RecordChild2,
22350 OPC_CheckPatternPredicate1,
22351 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVL_W),
22352 62, 2, 0, 1,
22353 13,
22354 OPC_CheckChild0Integer, 72|128,111,
22355 OPC_RecordChild1,
22356 OPC_RecordChild2,
22357 OPC_CheckPatternPredicate1,
22358 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVH_W),
22359 62, 2, 0, 1,
22360 13,
22361 OPC_CheckChild0Integer, 48|128,107,
22362 OPC_RecordChild1,
22363 OPC_RecordChild2,
22364 OPC_CheckPatternPredicate1,
22365 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADD_Q),
22366 81, 2, 0, 1,
22367 13,
22368 OPC_CheckChild0Integer, 118|128,117,
22369 OPC_RecordChild1,
22370 OPC_RecordChild2,
22371 OPC_CheckPatternPredicate1,
22372 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUB_Q),
22373 81, 2, 0, 1,
22374 13,
22375 OPC_CheckChild0Integer, 76|128,114,
22376 OPC_RecordChild1,
22377 OPC_RecordChild2,
22378 OPC_CheckPatternPredicate1,
22379 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSADD_D),
22380 81, 2, 0, 1,
22381 13,
22382 OPC_CheckChild0Integer, 78|128,114,
22383 OPC_RecordChild1,
22384 OPC_RecordChild2,
22385 OPC_CheckPatternPredicate1,
22386 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSADD_DU),
22387 81, 2, 0, 1,
22388 13,
22389 OPC_CheckChild0Integer, 88|128,117,
22390 OPC_RecordChild1,
22391 OPC_RecordChild2,
22392 OPC_CheckPatternPredicate1,
22393 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSUB_D),
22394 81, 2, 0, 1,
22395 13,
22396 OPC_CheckChild0Integer, 90|128,117,
22397 OPC_RecordChild1,
22398 OPC_RecordChild2,
22399 OPC_CheckPatternPredicate1,
22400 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSUB_DU),
22401 81, 2, 0, 1,
22402 13,
22403 OPC_CheckChild0Integer, 42|128,111,
22404 OPC_RecordChild1,
22405 OPC_RecordChild2,
22406 OPC_CheckPatternPredicate1,
22407 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHADDW_Q_D),
22408 81, 2, 0, 1,
22409 13,
22410 OPC_CheckChild0Integer, 44|128,111,
22411 OPC_RecordChild1,
22412 OPC_RecordChild2,
22413 OPC_CheckPatternPredicate1,
22414 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHADDW_QU_DU),
22415 81, 2, 0, 1,
22416 13,
22417 OPC_CheckChild0Integer, 58|128,111,
22418 OPC_RecordChild1,
22419 OPC_RecordChild2,
22420 OPC_CheckPatternPredicate1,
22421 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHSUBW_Q_D),
22422 81, 2, 0, 1,
22423 13,
22424 OPC_CheckChild0Integer, 60|128,111,
22425 OPC_RecordChild1,
22426 OPC_RecordChild2,
22427 OPC_CheckPatternPredicate1,
22428 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VHSUBW_QU_DU),
22429 81, 2, 0, 1,
22430 13,
22431 OPC_CheckChild0Integer, 80|128,107,
22432 OPC_RecordChild1,
22433 OPC_RecordChild2,
22434 OPC_CheckPatternPredicate1,
22435 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_Q_D),
22436 81, 2, 0, 1,
22437 13,
22438 OPC_CheckChild0Integer, 104|128,107,
22439 OPC_RecordChild1,
22440 OPC_RecordChild2,
22441 OPC_CheckPatternPredicate1,
22442 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_Q_D),
22443 81, 2, 0, 1,
22444 13,
22445 OPC_CheckChild0Integer, 10|128,118,
22446 OPC_RecordChild1,
22447 OPC_RecordChild2,
22448 OPC_CheckPatternPredicate1,
22449 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWEV_Q_D),
22450 81, 2, 0, 1,
22451 13,
22452 OPC_CheckChild0Integer, 26|128,118,
22453 OPC_RecordChild1,
22454 OPC_RecordChild2,
22455 OPC_CheckPatternPredicate1,
22456 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWOD_Q_D),
22457 81, 2, 0, 1,
22458 13,
22459 OPC_CheckChild0Integer, 82|128,107,
22460 OPC_RecordChild1,
22461 OPC_RecordChild2,
22462 OPC_CheckPatternPredicate1,
22463 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_Q_DU),
22464 81, 2, 0, 1,
22465 13,
22466 OPC_CheckChild0Integer, 106|128,107,
22467 OPC_RecordChild1,
22468 OPC_RecordChild2,
22469 OPC_CheckPatternPredicate1,
22470 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_Q_DU),
22471 81, 2, 0, 1,
22472 13,
22473 OPC_CheckChild0Integer, 12|128,118,
22474 OPC_RecordChild1,
22475 OPC_RecordChild2,
22476 OPC_CheckPatternPredicate1,
22477 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWEV_Q_DU),
22478 81, 2, 0, 1,
22479 13,
22480 OPC_CheckChild0Integer, 28|128,118,
22481 OPC_RecordChild1,
22482 OPC_RecordChild2,
22483 OPC_CheckPatternPredicate1,
22484 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBWOD_Q_DU),
22485 81, 2, 0, 1,
22486 13,
22487 OPC_CheckChild0Integer, 84|128,107,
22488 OPC_RecordChild1,
22489 OPC_RecordChild2,
22490 OPC_CheckPatternPredicate1,
22491 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWEV_Q_DU_D),
22492 81, 2, 0, 1,
22493 13,
22494 OPC_CheckChild0Integer, 108|128,107,
22495 OPC_RecordChild1,
22496 OPC_RecordChild2,
22497 OPC_CheckPatternPredicate1,
22498 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDWOD_Q_DU_D),
22499 81, 2, 0, 1,
22500 13,
22501 OPC_CheckChild0Integer, 126|128,107,
22502 OPC_RecordChild1,
22503 OPC_RecordChild2,
22504 OPC_CheckPatternPredicate1,
22505 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVG_D),
22506 81, 2, 0, 1,
22507 13,
22508 OPC_CheckChild0Integer, 0|128,108,
22509 OPC_RecordChild1,
22510 OPC_RecordChild2,
22511 OPC_CheckPatternPredicate1,
22512 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVG_DU),
22513 81, 2, 0, 1,
22514 13,
22515 OPC_CheckChild0Integer, 14|128,108,
22516 OPC_RecordChild1,
22517 OPC_RecordChild2,
22518 OPC_CheckPatternPredicate1,
22519 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVGR_D),
22520 81, 2, 0, 1,
22521 13,
22522 OPC_CheckChild0Integer, 16|128,108,
22523 OPC_RecordChild1,
22524 OPC_RecordChild2,
22525 OPC_CheckPatternPredicate1,
22526 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VAVGR_DU),
22527 81, 2, 0, 1,
22528 13,
22529 OPC_CheckChild0Integer, 30|128,107,
22530 OPC_RecordChild1,
22531 OPC_RecordChild2,
22532 OPC_CheckPatternPredicate1,
22533 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_D),
22534 81, 2, 0, 1,
22535 13,
22536 OPC_CheckChild0Integer, 32|128,107,
22537 OPC_RecordChild1,
22538 OPC_RecordChild2,
22539 OPC_CheckPatternPredicate1,
22540 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_DU),
22541 81, 2, 0, 1,
22542 13,
22543 OPC_CheckChild0Integer, 54|128,107,
22544 OPC_RecordChild1,
22545 OPC_RecordChild2,
22546 OPC_CheckPatternPredicate1,
22547 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VADDA_D),
22548 81, 2, 0, 1,
22549 13,
22550 OPC_CheckChild0Integer, 8|128,113,
22551 OPC_RecordChild1,
22552 OPC_RecordChild2,
22553 OPC_CheckPatternPredicate1,
22554 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_D),
22555 81, 2, 0, 1,
22556 13,
22557 OPC_CheckChild0Integer, 10|128,113,
22558 OPC_RecordChild1,
22559 OPC_RecordChild2,
22560 OPC_CheckPatternPredicate1,
22561 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_DU),
22562 81, 2, 0, 1,
22563 13,
22564 OPC_CheckChild0Integer, 40|128,113,
22565 OPC_RecordChild1,
22566 OPC_RecordChild2,
22567 OPC_CheckPatternPredicate1,
22568 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_Q_D),
22569 81, 2, 0, 1,
22570 13,
22571 OPC_CheckChild0Integer, 64|128,113,
22572 OPC_RecordChild1,
22573 OPC_RecordChild2,
22574 OPC_CheckPatternPredicate1,
22575 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_Q_D),
22576 81, 2, 0, 1,
22577 13,
22578 OPC_CheckChild0Integer, 42|128,113,
22579 OPC_RecordChild1,
22580 OPC_RecordChild2,
22581 OPC_CheckPatternPredicate1,
22582 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_Q_DU),
22583 81, 2, 0, 1,
22584 13,
22585 OPC_CheckChild0Integer, 66|128,113,
22586 OPC_RecordChild1,
22587 OPC_RecordChild2,
22588 OPC_CheckPatternPredicate1,
22589 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_Q_DU),
22590 81, 2, 0, 1,
22591 13,
22592 OPC_CheckChild0Integer, 44|128,113,
22593 OPC_RecordChild1,
22594 OPC_RecordChild2,
22595 OPC_CheckPatternPredicate1,
22596 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWEV_Q_DU_D),
22597 81, 2, 0, 1,
22598 13,
22599 OPC_CheckChild0Integer, 68|128,113,
22600 OPC_RecordChild1,
22601 OPC_RecordChild2,
22602 OPC_CheckPatternPredicate1,
22603 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMULWOD_Q_DU_D),
22604 81, 2, 0, 1,
22605 13,
22606 OPC_CheckChild0Integer, 10|128,115,
22607 OPC_RecordChild1,
22608 OPC_RecordChild2,
22609 OPC_CheckPatternPredicate1,
22610 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSIGNCOV_D),
22611 81, 2, 0, 1,
22612 13,
22613 OPC_CheckChild0Integer, 58|128,114,
22614 OPC_RecordChild1,
22615 OPC_RecordChild2,
22616 OPC_CheckPatternPredicate1,
22617 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VROTR_D),
22618 81, 2, 0, 1,
22619 13,
22620 OPC_CheckChild0Integer, 72|128,116,
22621 OPC_RecordChild1,
22622 OPC_RecordChild2,
22623 OPC_CheckPatternPredicate1,
22624 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLR_D),
22625 81, 2, 0, 1,
22626 13,
22627 OPC_CheckChild0Integer, 12|128,116,
22628 OPC_RecordChild1,
22629 OPC_RecordChild2,
22630 OPC_CheckPatternPredicate1,
22631 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAR_D),
22632 81, 2, 0, 1,
22633 13,
22634 OPC_CheckChild0Integer, 60|128,116,
22635 OPC_RecordChild1,
22636 OPC_RecordChild2,
22637 OPC_CheckPatternPredicate1,
22638 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLN_W_D),
22639 62, 2, 0, 1,
22640 13,
22641 OPC_CheckChild0Integer, 0|128,116,
22642 OPC_RecordChild1,
22643 OPC_RecordChild2,
22644 OPC_CheckPatternPredicate1,
22645 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAN_W_D),
22646 62, 2, 0, 1,
22647 13,
22648 OPC_CheckChild0Integer, 90|128,116,
22649 OPC_RecordChild1,
22650 OPC_RecordChild2,
22651 OPC_CheckPatternPredicate1,
22652 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLRN_W_D),
22653 62, 2, 0, 1,
22654 13,
22655 OPC_CheckChild0Integer, 30|128,116,
22656 OPC_RecordChild1,
22657 OPC_RecordChild2,
22658 OPC_CheckPatternPredicate1,
22659 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRARN_W_D),
22660 62, 2, 0, 1,
22661 13,
22662 OPC_CheckChild0Integer, 36|128,117,
22663 OPC_RecordChild1,
22664 OPC_RecordChild2,
22665 OPC_CheckPatternPredicate1,
22666 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLN_W_D),
22667 62, 2, 0, 1,
22668 13,
22669 OPC_CheckChild0Integer, 108|128,116,
22670 OPC_RecordChild1,
22671 OPC_RecordChild2,
22672 OPC_CheckPatternPredicate1,
22673 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRAN_W_D),
22674 62, 2, 0, 1,
22675 13,
22676 OPC_CheckChild0Integer, 38|128,117,
22677 OPC_RecordChild1,
22678 OPC_RecordChild2,
22679 OPC_CheckPatternPredicate1,
22680 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLN_WU_D),
22681 62, 2, 0, 1,
22682 13,
22683 OPC_CheckChild0Integer, 110|128,116,
22684 OPC_RecordChild1,
22685 OPC_RecordChild2,
22686 OPC_CheckPatternPredicate1,
22687 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRAN_WU_D),
22688 62, 2, 0, 1,
22689 13,
22690 OPC_CheckChild0Integer, 64|128,117,
22691 OPC_RecordChild1,
22692 OPC_RecordChild2,
22693 OPC_CheckPatternPredicate1,
22694 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRN_W_D),
22695 62, 2, 0, 1,
22696 13,
22697 OPC_CheckChild0Integer, 8|128,117,
22698 OPC_RecordChild1,
22699 OPC_RecordChild2,
22700 OPC_CheckPatternPredicate1,
22701 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARN_W_D),
22702 62, 2, 0, 1,
22703 13,
22704 OPC_CheckChild0Integer, 66|128,117,
22705 OPC_RecordChild1,
22706 OPC_RecordChild2,
22707 OPC_CheckPatternPredicate1,
22708 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRLRN_WU_D),
22709 62, 2, 0, 1,
22710 13,
22711 OPC_CheckChild0Integer, 10|128,117,
22712 OPC_RecordChild1,
22713 OPC_RecordChild2,
22714 OPC_CheckPatternPredicate1,
22715 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSSRARN_WU_D),
22716 62, 2, 0, 1,
22717 13,
22718 OPC_CheckChild0Integer, 106|128,114,
22719 OPC_RecordChild1,
22720 OPC_RecordChild2,
22721 OPC_CheckPatternPredicate1,
22722 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQ_D),
22723 81, 2, 0, 1,
22724 13,
22725 OPC_CheckChild0Integer, 20|128,115,
22726 OPC_RecordChild1,
22727 OPC_RecordChild2,
22728 OPC_CheckPatternPredicate1,
22729 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_D),
22730 81, 2, 0, 1,
22731 13,
22732 OPC_CheckChild0Integer, 22|128,115,
22733 OPC_RecordChild1,
22734 OPC_RecordChild2,
22735 OPC_CheckPatternPredicate1,
22736 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_DU),
22737 81, 2, 0, 1,
22738 13,
22739 OPC_CheckChild0Integer, 80|128,115,
22740 OPC_RecordChild1,
22741 OPC_RecordChild2,
22742 OPC_CheckPatternPredicate1,
22743 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_D),
22744 81, 2, 0, 1,
22745 13,
22746 OPC_CheckChild0Integer, 82|128,115,
22747 OPC_RecordChild1,
22748 OPC_RecordChild2,
22749 OPC_CheckPatternPredicate1,
22750 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_DU),
22751 81, 2, 0, 1,
22752 13,
22753 OPC_CheckChild0Integer, 96|128,113,
22754 OPC_RecordChild1,
22755 OPC_RecordChild2,
22756 OPC_CheckPatternPredicate1,
22757 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKEV_D),
22758 81, 2, 0, 1,
22759 13,
22760 OPC_CheckChild0Integer, 104|128,113,
22761 OPC_RecordChild1,
22762 OPC_RecordChild2,
22763 OPC_CheckPatternPredicate1,
22764 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKOD_D),
22765 81, 2, 0, 1,
22766 13,
22767 OPC_CheckChild0Integer, 122|128,113,
22768 OPC_RecordChild1,
22769 OPC_RecordChild2,
22770 OPC_CheckPatternPredicate1,
22771 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKEV_D),
22772 81, 2, 0, 1,
22773 13,
22774 OPC_CheckChild0Integer, 2|128,114,
22775 OPC_RecordChild1,
22776 OPC_RecordChild2,
22777 OPC_CheckPatternPredicate1,
22778 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKOD_D),
22779 81, 2, 0, 1,
22780 13,
22781 OPC_CheckChild0Integer, 76|128,111,
22782 OPC_RecordChild1,
22783 OPC_RecordChild2,
22784 OPC_CheckPatternPredicate1,
22785 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVL_D),
22786 81, 2, 0, 1,
22787 13,
22788 OPC_CheckChild0Integer, 68|128,111,
22789 OPC_RecordChild1,
22790 OPC_RecordChild2,
22791 OPC_CheckPatternPredicate1,
22792 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVH_D),
22793 81, 2, 0, 1,
22794 15,
22795 OPC_CheckChild0Integer, 118|128,111,
22796 OPC_RecordChild1,
22797 OPC_RecordChild2,
22798 OPC_RecordChild3,
22799 OPC_CheckPatternPredicate1,
22800 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_H_B),
22801 51, 3, 0, 1, 2,
22802 15,
22803 OPC_CheckChild0Integer, 14|128,112,
22804 OPC_RecordChild1,
22805 OPC_RecordChild2,
22806 OPC_RecordChild3,
22807 OPC_CheckPatternPredicate1,
22808 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_H_B),
22809 51, 3, 0, 1, 2,
22810 15,
22811 OPC_CheckChild0Integer, 120|128,111,
22812 OPC_RecordChild1,
22813 OPC_RecordChild2,
22814 OPC_RecordChild3,
22815 OPC_CheckPatternPredicate1,
22816 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_H_BU),
22817 51, 3, 0, 1, 2,
22818 15,
22819 OPC_CheckChild0Integer, 16|128,112,
22820 OPC_RecordChild1,
22821 OPC_RecordChild2,
22822 OPC_RecordChild3,
22823 OPC_CheckPatternPredicate1,
22824 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_H_BU),
22825 51, 3, 0, 1, 2,
22826 15,
22827 OPC_CheckChild0Integer, 122|128,111,
22828 OPC_RecordChild1,
22829 OPC_RecordChild2,
22830 OPC_RecordChild3,
22831 OPC_CheckPatternPredicate1,
22832 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_H_BU_B),
22833 51, 3, 0, 1, 2,
22834 15,
22835 OPC_CheckChild0Integer, 18|128,112,
22836 OPC_RecordChild1,
22837 OPC_RecordChild2,
22838 OPC_RecordChild3,
22839 OPC_CheckPatternPredicate1,
22840 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_H_BU_B),
22841 51, 3, 0, 1, 2,
22842 15,
22843 OPC_CheckChild0Integer, 2|128,112,
22844 OPC_RecordChild1,
22845 OPC_RecordChild2,
22846 OPC_RecordChild3,
22847 OPC_CheckPatternPredicate1,
22848 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_W_H),
22849 62, 3, 0, 1, 2,
22850 15,
22851 OPC_CheckChild0Integer, 26|128,112,
22852 OPC_RecordChild1,
22853 OPC_RecordChild2,
22854 OPC_RecordChild3,
22855 OPC_CheckPatternPredicate1,
22856 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_W_H),
22857 62, 3, 0, 1, 2,
22858 15,
22859 OPC_CheckChild0Integer, 4|128,112,
22860 OPC_RecordChild1,
22861 OPC_RecordChild2,
22862 OPC_RecordChild3,
22863 OPC_CheckPatternPredicate1,
22864 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_W_HU),
22865 62, 3, 0, 1, 2,
22866 15,
22867 OPC_CheckChild0Integer, 28|128,112,
22868 OPC_RecordChild1,
22869 OPC_RecordChild2,
22870 OPC_RecordChild3,
22871 OPC_CheckPatternPredicate1,
22872 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_W_HU),
22873 62, 3, 0, 1, 2,
22874 15,
22875 OPC_CheckChild0Integer, 6|128,112,
22876 OPC_RecordChild1,
22877 OPC_RecordChild2,
22878 OPC_RecordChild3,
22879 OPC_CheckPatternPredicate1,
22880 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_W_HU_H),
22881 62, 3, 0, 1, 2,
22882 15,
22883 OPC_CheckChild0Integer, 30|128,112,
22884 OPC_RecordChild1,
22885 OPC_RecordChild2,
22886 OPC_RecordChild3,
22887 OPC_CheckPatternPredicate1,
22888 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_W_HU_H),
22889 62, 3, 0, 1, 2,
22890 15,
22891 OPC_CheckChild0Integer, 112|128,111,
22892 OPC_RecordChild1,
22893 OPC_RecordChild2,
22894 OPC_RecordChild3,
22895 OPC_CheckPatternPredicate1,
22896 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_D_W),
22897 81, 3, 0, 1, 2,
22898 15,
22899 OPC_CheckChild0Integer, 8|128,112,
22900 OPC_RecordChild1,
22901 OPC_RecordChild2,
22902 OPC_RecordChild3,
22903 OPC_CheckPatternPredicate1,
22904 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_D_W),
22905 81, 3, 0, 1, 2,
22906 15,
22907 OPC_CheckChild0Integer, 114|128,111,
22908 OPC_RecordChild1,
22909 OPC_RecordChild2,
22910 OPC_RecordChild3,
22911 OPC_CheckPatternPredicate1,
22912 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_D_WU),
22913 81, 3, 0, 1, 2,
22914 15,
22915 OPC_CheckChild0Integer, 10|128,112,
22916 OPC_RecordChild1,
22917 OPC_RecordChild2,
22918 OPC_RecordChild3,
22919 OPC_CheckPatternPredicate1,
22920 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_D_WU),
22921 81, 3, 0, 1, 2,
22922 15,
22923 OPC_CheckChild0Integer, 116|128,111,
22924 OPC_RecordChild1,
22925 OPC_RecordChild2,
22926 OPC_RecordChild3,
22927 OPC_CheckPatternPredicate1,
22928 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_D_WU_W),
22929 81, 3, 0, 1, 2,
22930 15,
22931 OPC_CheckChild0Integer, 12|128,112,
22932 OPC_RecordChild1,
22933 OPC_RecordChild2,
22934 OPC_RecordChild3,
22935 OPC_CheckPatternPredicate1,
22936 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_D_WU_W),
22937 81, 3, 0, 1, 2,
22938 15,
22939 OPC_CheckChild0Integer, 124|128,111,
22940 OPC_RecordChild1,
22941 OPC_RecordChild2,
22942 OPC_RecordChild3,
22943 OPC_CheckPatternPredicate1,
22944 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_Q_D),
22945 81, 3, 0, 1, 2,
22946 15,
22947 OPC_CheckChild0Integer, 20|128,112,
22948 OPC_RecordChild1,
22949 OPC_RecordChild2,
22950 OPC_RecordChild3,
22951 OPC_CheckPatternPredicate1,
22952 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_Q_D),
22953 81, 3, 0, 1, 2,
22954 15,
22955 OPC_CheckChild0Integer, 126|128,111,
22956 OPC_RecordChild1,
22957 OPC_RecordChild2,
22958 OPC_RecordChild3,
22959 OPC_CheckPatternPredicate1,
22960 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_Q_DU),
22961 81, 3, 0, 1, 2,
22962 15,
22963 OPC_CheckChild0Integer, 22|128,112,
22964 OPC_RecordChild1,
22965 OPC_RecordChild2,
22966 OPC_RecordChild3,
22967 OPC_CheckPatternPredicate1,
22968 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_Q_DU),
22969 81, 3, 0, 1, 2,
22970 15,
22971 OPC_CheckChild0Integer, 0|128,112,
22972 OPC_RecordChild1,
22973 OPC_RecordChild2,
22974 OPC_RecordChild3,
22975 OPC_CheckPatternPredicate1,
22976 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWEV_Q_DU_D),
22977 81, 3, 0, 1, 2,
22978 15,
22979 OPC_CheckChild0Integer, 24|128,112,
22980 OPC_RecordChild1,
22981 OPC_RecordChild2,
22982 OPC_RecordChild3,
22983 OPC_CheckPatternPredicate1,
22984 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMADDWOD_Q_DU_D),
22985 81, 3, 0, 1, 2,
22986 11,
22987 OPC_CheckChild0Integer, 118|128,108,
22988 OPC_RecordChild1,
22989 OPC_CheckPatternPredicate1,
22990 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTH_H_B),
22991 51, 1, 0,
22992 11,
22993 OPC_CheckChild0Integer, 120|128,108,
22994 OPC_RecordChild1,
22995 OPC_CheckPatternPredicate1,
22996 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTH_HU_BU),
22997 51, 1, 0,
22998 11,
22999 OPC_CheckChild0Integer, 114|128,112,
23000 OPC_RecordChild1,
23001 OPC_CheckPatternPredicate1,
23002 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMSKLTZ_B),
23003 40, 1, 0,
23004 11,
23005 OPC_CheckChild0Integer, 112|128,112,
23006 OPC_RecordChild1,
23007 OPC_CheckPatternPredicate1,
23008 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMSKGEZ_B),
23009 40, 1, 0,
23010 11,
23011 OPC_CheckChild0Integer, 122|128,112,
23012 OPC_RecordChild1,
23013 OPC_CheckPatternPredicate1,
23014 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMSKNZ_B),
23015 40, 1, 0,
23016 11,
23017 OPC_CheckChild0Integer, 82|128,108,
23018 OPC_RecordChild1,
23019 OPC_CheckPatternPredicate1,
23020 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VCLO_B),
23021 40, 1, 0,
23022 11,
23023 OPC_CheckChild0Integer, 126|128,108,
23024 OPC_RecordChild1,
23025 OPC_CheckPatternPredicate1,
23026 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTH_W_H),
23027 62, 1, 0,
23028 11,
23029 OPC_CheckChild0Integer, 0|128,109,
23030 OPC_RecordChild1,
23031 OPC_CheckPatternPredicate1,
23032 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTH_WU_HU),
23033 62, 1, 0,
23034 11,
23035 OPC_CheckChild0Integer, 118|128,112,
23036 OPC_RecordChild1,
23037 OPC_CheckPatternPredicate1,
23038 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMSKLTZ_H),
23039 51, 1, 0,
23040 11,
23041 OPC_CheckChild0Integer, 86|128,108,
23042 OPC_RecordChild1,
23043 OPC_CheckPatternPredicate1,
23044 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VCLO_H),
23045 51, 1, 0,
23046 11,
23047 OPC_CheckChild0Integer, 114|128,108,
23048 OPC_RecordChild1,
23049 OPC_CheckPatternPredicate1,
23050 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTH_D_W),
23051 81, 1, 0,
23052 11,
23053 OPC_CheckChild0Integer, 116|128,108,
23054 OPC_RecordChild1,
23055 OPC_CheckPatternPredicate1,
23056 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTH_DU_WU),
23057 81, 1, 0,
23058 11,
23059 OPC_CheckChild0Integer, 120|128,112,
23060 OPC_RecordChild1,
23061 OPC_CheckPatternPredicate1,
23062 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMSKLTZ_W),
23063 62, 1, 0,
23064 11,
23065 OPC_CheckChild0Integer, 88|128,108,
23066 OPC_RecordChild1,
23067 OPC_CheckPatternPredicate1,
23068 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VCLO_W),
23069 62, 1, 0,
23070 11,
23071 OPC_CheckChild0Integer, 122|128,108,
23072 OPC_RecordChild1,
23073 OPC_CheckPatternPredicate1,
23074 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTH_Q_D),
23075 81, 1, 0,
23076 11,
23077 OPC_CheckChild0Integer, 124|128,108,
23078 OPC_RecordChild1,
23079 OPC_CheckPatternPredicate1,
23080 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTH_QU_DU),
23081 81, 1, 0,
23082 11,
23083 OPC_CheckChild0Integer, 116|128,112,
23084 OPC_RecordChild1,
23085 OPC_CheckPatternPredicate1,
23086 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMSKLTZ_D),
23087 81, 1, 0,
23088 11,
23089 OPC_CheckChild0Integer, 2|128,109,
23090 OPC_RecordChild1,
23091 OPC_CheckPatternPredicate1,
23092 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTL_Q_D),
23093 81, 1, 0,
23094 11,
23095 OPC_CheckChild0Integer, 4|128,109,
23096 OPC_RecordChild1,
23097 OPC_CheckPatternPredicate1,
23098 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXTL_QU_DU),
23099 81, 1, 0,
23100 11,
23101 OPC_CheckChild0Integer, 84|128,108,
23102 OPC_RecordChild1,
23103 OPC_CheckPatternPredicate1,
23104 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VCLO_D),
23105 81, 1, 0,
23106 15,
23107 OPC_CheckChild0Integer, 88|128,110,
23108 OPC_RecordChild1,
23109 OPC_RecordChild2,
23110 OPC_RecordChild3,
23111 OPC_CheckPatternPredicate1,
23112 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSTP_B),
23113 40, 3, 0, 1, 2,
23114 15,
23115 OPC_CheckChild0Integer, 58|128,108,
23116 OPC_RecordChild1,
23117 OPC_RecordChild2,
23118 OPC_RecordChild3,
23119 OPC_CheckPatternPredicate1,
23120 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSEL_V),
23121 40, 3, 0, 1, 2,
23122 15,
23123 OPC_CheckChild0Integer, 120|128,114,
23124 OPC_RecordChild1,
23125 OPC_RecordChild2,
23126 OPC_RecordChild3,
23127 OPC_CheckPatternPredicate1,
23128 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF_B),
23129 40, 3, 0, 1, 2,
23130 15,
23131 OPC_CheckChild0Integer, 90|128,110,
23132 OPC_RecordChild1,
23133 OPC_RecordChild2,
23134 OPC_RecordChild3,
23135 OPC_CheckPatternPredicate1,
23136 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSTP_H),
23137 51, 3, 0, 1, 2,
23138 15,
23139 OPC_CheckChild0Integer, 124|128,114,
23140 OPC_RecordChild1,
23141 OPC_RecordChild2,
23142 OPC_RecordChild3,
23143 OPC_CheckPatternPredicate1,
23144 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF_H),
23145 51, 3, 0, 1, 2,
23146 15,
23147 OPC_CheckChild0Integer, 126|128,114,
23148 OPC_RecordChild1,
23149 OPC_RecordChild2,
23150 OPC_RecordChild3,
23151 OPC_CheckPatternPredicate1,
23152 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF_W),
23153 62, 3, 0, 1, 2,
23154 15,
23155 OPC_CheckChild0Integer, 122|128,114,
23156 OPC_RecordChild1,
23157 OPC_RecordChild2,
23158 OPC_RecordChild3,
23159 OPC_CheckPatternPredicate1,
23160 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF_D),
23161 81, 3, 0, 1, 2,
23162 13,
23163 OPC_CheckChild0Integer, 110|128,109,
23164 OPC_RecordChild1,
23165 OPC_RecordChild2,
23166 OPC_CheckPatternPredicate1,
23167 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCVT_H_S),
23168 51, 2, 0, 1,
23169 13,
23170 OPC_CheckChild0Integer, 24|128,109,
23171 OPC_RecordChild1,
23172 OPC_RecordChild2,
23173 OPC_CheckPatternPredicate1,
23174 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CAF_S),
23175 62, 2, 0, 1,
23176 13,
23177 OPC_CheckChild0Integer, 60|128,109,
23178 OPC_RecordChild1,
23179 OPC_RecordChild2,
23180 OPC_CheckPatternPredicate1,
23181 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUN_S),
23182 62, 2, 0, 1,
23183 13,
23184 OPC_CheckChild0Integer, 28|128,109,
23185 OPC_RecordChild1,
23186 OPC_RecordChild2,
23187 OPC_CheckPatternPredicate1,
23188 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CEQ_S),
23189 62, 2, 0, 1,
23190 13,
23191 OPC_CheckChild0Integer, 48|128,109,
23192 OPC_RecordChild1,
23193 OPC_RecordChild2,
23194 OPC_CheckPatternPredicate1,
23195 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUEQ_S),
23196 62, 2, 0, 1,
23197 13,
23198 OPC_CheckChild0Integer, 36|128,109,
23199 OPC_RecordChild1,
23200 OPC_RecordChild2,
23201 OPC_CheckPatternPredicate1,
23202 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLT_S),
23203 62, 2, 0, 1,
23204 13,
23205 OPC_CheckChild0Integer, 56|128,109,
23206 OPC_RecordChild1,
23207 OPC_RecordChild2,
23208 OPC_CheckPatternPredicate1,
23209 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CULT_S),
23210 62, 2, 0, 1,
23211 13,
23212 OPC_CheckChild0Integer, 32|128,109,
23213 OPC_RecordChild1,
23214 OPC_RecordChild2,
23215 OPC_CheckPatternPredicate1,
23216 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLE_S),
23217 62, 2, 0, 1,
23218 13,
23219 OPC_CheckChild0Integer, 52|128,109,
23220 OPC_RecordChild1,
23221 OPC_RecordChild2,
23222 OPC_CheckPatternPredicate1,
23223 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CULE_S),
23224 62, 2, 0, 1,
23225 13,
23226 OPC_CheckChild0Integer, 40|128,109,
23227 OPC_RecordChild1,
23228 OPC_RecordChild2,
23229 OPC_CheckPatternPredicate1,
23230 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CNE_S),
23231 62, 2, 0, 1,
23232 13,
23233 OPC_CheckChild0Integer, 44|128,109,
23234 OPC_RecordChild1,
23235 OPC_RecordChild2,
23236 OPC_CheckPatternPredicate1,
23237 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_COR_S),
23238 62, 2, 0, 1,
23239 13,
23240 OPC_CheckChild0Integer, 64|128,109,
23241 OPC_RecordChild1,
23242 OPC_RecordChild2,
23243 OPC_CheckPatternPredicate1,
23244 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUNE_S),
23245 62, 2, 0, 1,
23246 13,
23247 OPC_CheckChild0Integer, 68|128,109,
23248 OPC_RecordChild1,
23249 OPC_RecordChild2,
23250 OPC_CheckPatternPredicate1,
23251 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SAF_S),
23252 62, 2, 0, 1,
23253 13,
23254 OPC_CheckChild0Integer, 104|128,109,
23255 OPC_RecordChild1,
23256 OPC_RecordChild2,
23257 OPC_CheckPatternPredicate1,
23258 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SUN_S),
23259 62, 2, 0, 1,
23260 13,
23261 OPC_CheckChild0Integer, 72|128,109,
23262 OPC_RecordChild1,
23263 OPC_RecordChild2,
23264 OPC_CheckPatternPredicate1,
23265 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SEQ_S),
23266 62, 2, 0, 1,
23267 13,
23268 OPC_CheckChild0Integer, 92|128,109,
23269 OPC_RecordChild1,
23270 OPC_RecordChild2,
23271 OPC_CheckPatternPredicate1,
23272 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SUEQ_S),
23273 62, 2, 0, 1,
23274 13,
23275 OPC_CheckChild0Integer, 80|128,109,
23276 OPC_RecordChild1,
23277 OPC_RecordChild2,
23278 OPC_CheckPatternPredicate1,
23279 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SLT_S),
23280 62, 2, 0, 1,
23281 13,
23282 OPC_CheckChild0Integer, 100|128,109,
23283 OPC_RecordChild1,
23284 OPC_RecordChild2,
23285 OPC_CheckPatternPredicate1,
23286 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SULT_S),
23287 62, 2, 0, 1,
23288 13,
23289 OPC_CheckChild0Integer, 76|128,109,
23290 OPC_RecordChild1,
23291 OPC_RecordChild2,
23292 OPC_CheckPatternPredicate1,
23293 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SLE_S),
23294 62, 2, 0, 1,
23295 13,
23296 OPC_CheckChild0Integer, 96|128,109,
23297 OPC_RecordChild1,
23298 OPC_RecordChild2,
23299 OPC_CheckPatternPredicate1,
23300 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SULE_S),
23301 62, 2, 0, 1,
23302 13,
23303 OPC_CheckChild0Integer, 84|128,109,
23304 OPC_RecordChild1,
23305 OPC_RecordChild2,
23306 OPC_CheckPatternPredicate1,
23307 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SNE_S),
23308 62, 2, 0, 1,
23309 13,
23310 OPC_CheckChild0Integer, 88|128,109,
23311 OPC_RecordChild1,
23312 OPC_RecordChild2,
23313 OPC_CheckPatternPredicate1,
23314 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SOR_S),
23315 62, 2, 0, 1,
23316 13,
23317 OPC_CheckChild0Integer, 108|128,109,
23318 OPC_RecordChild1,
23319 OPC_RecordChild2,
23320 OPC_CheckPatternPredicate1,
23321 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SUNE_S),
23322 62, 2, 0, 1,
23323 13,
23324 OPC_CheckChild0Integer, 2|128,111,
23325 OPC_RecordChild1,
23326 OPC_RecordChild2,
23327 OPC_CheckPatternPredicate1,
23328 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRNE_W_D),
23329 62, 2, 0, 1,
23330 13,
23331 OPC_CheckChild0Integer, 24|128,111,
23332 OPC_RecordChild1,
23333 OPC_RecordChild2,
23334 OPC_CheckPatternPredicate1,
23335 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRZ_W_D),
23336 62, 2, 0, 1,
23337 13,
23338 OPC_CheckChild0Integer, 12|128,111,
23339 OPC_RecordChild1,
23340 OPC_RecordChild2,
23341 OPC_CheckPatternPredicate1,
23342 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRP_W_D),
23343 62, 2, 0, 1,
23344 13,
23345 OPC_CheckChild0Integer, 120|128,110,
23346 OPC_RecordChild1,
23347 OPC_RecordChild2,
23348 OPC_CheckPatternPredicate1,
23349 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRM_W_D),
23350 62, 2, 0, 1,
23351 13,
23352 OPC_CheckChild0Integer, 108|128,110,
23353 OPC_RecordChild1,
23354 OPC_RecordChild2,
23355 OPC_CheckPatternPredicate1,
23356 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINT_W_D),
23357 62, 2, 0, 1,
23358 13,
23359 OPC_CheckChild0Integer, 22|128,109,
23360 OPC_RecordChild1,
23361 OPC_RecordChild2,
23362 OPC_CheckPatternPredicate1,
23363 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CAF_D),
23364 81, 2, 0, 1,
23365 13,
23366 OPC_CheckChild0Integer, 58|128,109,
23367 OPC_RecordChild1,
23368 OPC_RecordChild2,
23369 OPC_CheckPatternPredicate1,
23370 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUN_D),
23371 81, 2, 0, 1,
23372 13,
23373 OPC_CheckChild0Integer, 26|128,109,
23374 OPC_RecordChild1,
23375 OPC_RecordChild2,
23376 OPC_CheckPatternPredicate1,
23377 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CEQ_D),
23378 81, 2, 0, 1,
23379 13,
23380 OPC_CheckChild0Integer, 46|128,109,
23381 OPC_RecordChild1,
23382 OPC_RecordChild2,
23383 OPC_CheckPatternPredicate1,
23384 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUEQ_D),
23385 81, 2, 0, 1,
23386 13,
23387 OPC_CheckChild0Integer, 34|128,109,
23388 OPC_RecordChild1,
23389 OPC_RecordChild2,
23390 OPC_CheckPatternPredicate1,
23391 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLT_D),
23392 81, 2, 0, 1,
23393 13,
23394 OPC_CheckChild0Integer, 54|128,109,
23395 OPC_RecordChild1,
23396 OPC_RecordChild2,
23397 OPC_CheckPatternPredicate1,
23398 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CULT_D),
23399 81, 2, 0, 1,
23400 13,
23401 OPC_CheckChild0Integer, 30|128,109,
23402 OPC_RecordChild1,
23403 OPC_RecordChild2,
23404 OPC_CheckPatternPredicate1,
23405 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLE_D),
23406 81, 2, 0, 1,
23407 13,
23408 OPC_CheckChild0Integer, 50|128,109,
23409 OPC_RecordChild1,
23410 OPC_RecordChild2,
23411 OPC_CheckPatternPredicate1,
23412 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CULE_D),
23413 81, 2, 0, 1,
23414 13,
23415 OPC_CheckChild0Integer, 38|128,109,
23416 OPC_RecordChild1,
23417 OPC_RecordChild2,
23418 OPC_CheckPatternPredicate1,
23419 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CNE_D),
23420 81, 2, 0, 1,
23421 13,
23422 OPC_CheckChild0Integer, 42|128,109,
23423 OPC_RecordChild1,
23424 OPC_RecordChild2,
23425 OPC_CheckPatternPredicate1,
23426 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_COR_D),
23427 81, 2, 0, 1,
23428 13,
23429 OPC_CheckChild0Integer, 62|128,109,
23430 OPC_RecordChild1,
23431 OPC_RecordChild2,
23432 OPC_CheckPatternPredicate1,
23433 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUNE_D),
23434 81, 2, 0, 1,
23435 13,
23436 OPC_CheckChild0Integer, 66|128,109,
23437 OPC_RecordChild1,
23438 OPC_RecordChild2,
23439 OPC_CheckPatternPredicate1,
23440 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SAF_D),
23441 81, 2, 0, 1,
23442 13,
23443 OPC_CheckChild0Integer, 102|128,109,
23444 OPC_RecordChild1,
23445 OPC_RecordChild2,
23446 OPC_CheckPatternPredicate1,
23447 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SUN_D),
23448 81, 2, 0, 1,
23449 13,
23450 OPC_CheckChild0Integer, 70|128,109,
23451 OPC_RecordChild1,
23452 OPC_RecordChild2,
23453 OPC_CheckPatternPredicate1,
23454 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SEQ_D),
23455 81, 2, 0, 1,
23456 13,
23457 OPC_CheckChild0Integer, 90|128,109,
23458 OPC_RecordChild1,
23459 OPC_RecordChild2,
23460 OPC_CheckPatternPredicate1,
23461 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SUEQ_D),
23462 81, 2, 0, 1,
23463 13,
23464 OPC_CheckChild0Integer, 78|128,109,
23465 OPC_RecordChild1,
23466 OPC_RecordChild2,
23467 OPC_CheckPatternPredicate1,
23468 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SLT_D),
23469 81, 2, 0, 1,
23470 13,
23471 OPC_CheckChild0Integer, 98|128,109,
23472 OPC_RecordChild1,
23473 OPC_RecordChild2,
23474 OPC_CheckPatternPredicate1,
23475 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SULT_D),
23476 81, 2, 0, 1,
23477 13,
23478 OPC_CheckChild0Integer, 74|128,109,
23479 OPC_RecordChild1,
23480 OPC_RecordChild2,
23481 OPC_CheckPatternPredicate1,
23482 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SLE_D),
23483 81, 2, 0, 1,
23484 13,
23485 OPC_CheckChild0Integer, 94|128,109,
23486 OPC_RecordChild1,
23487 OPC_RecordChild2,
23488 OPC_CheckPatternPredicate1,
23489 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SULE_D),
23490 81, 2, 0, 1,
23491 13,
23492 OPC_CheckChild0Integer, 82|128,109,
23493 OPC_RecordChild1,
23494 OPC_RecordChild2,
23495 OPC_CheckPatternPredicate1,
23496 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SNE_D),
23497 81, 2, 0, 1,
23498 13,
23499 OPC_CheckChild0Integer, 86|128,109,
23500 OPC_RecordChild1,
23501 OPC_RecordChild2,
23502 OPC_CheckPatternPredicate1,
23503 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SOR_D),
23504 81, 2, 0, 1,
23505 13,
23506 OPC_CheckChild0Integer, 106|128,109,
23507 OPC_RecordChild1,
23508 OPC_RecordChild2,
23509 OPC_CheckPatternPredicate1,
23510 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_SUNE_D),
23511 81, 2, 0, 1,
23512 11,
23513 OPC_CheckChild0Integer, 20|128,109,
23514 OPC_RecordChild1,
23515 OPC_CheckPatternPredicate1,
23516 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCLASS_S),
23517 62, 1, 0,
23518 11,
23519 OPC_CheckChild0Integer, 4|128,111,
23520 OPC_RecordChild1,
23521 OPC_CheckPatternPredicate1,
23522 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRNE_W_S),
23523 62, 1, 0,
23524 11,
23525 OPC_CheckChild0Integer, 26|128,111,
23526 OPC_RecordChild1,
23527 OPC_CheckPatternPredicate1,
23528 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRZ_W_S),
23529 62, 1, 0,
23530 11,
23531 OPC_CheckChild0Integer, 14|128,111,
23532 OPC_RecordChild1,
23533 OPC_CheckPatternPredicate1,
23534 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRP_W_S),
23535 62, 1, 0,
23536 11,
23537 OPC_CheckChild0Integer, 122|128,110,
23538 OPC_RecordChild1,
23539 OPC_CheckPatternPredicate1,
23540 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRM_W_S),
23541 62, 1, 0,
23542 11,
23543 OPC_CheckChild0Integer, 110|128,110,
23544 OPC_RecordChild1,
23545 OPC_CheckPatternPredicate1,
23546 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINT_W_S),
23547 62, 1, 0,
23548 11,
23549 OPC_CheckChild0Integer, 28|128,111,
23550 OPC_RecordChild1,
23551 OPC_CheckPatternPredicate1,
23552 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRZ_WU_S),
23553 62, 1, 0,
23554 11,
23555 OPC_CheckChild0Integer, 112|128,110,
23556 OPC_RecordChild1,
23557 OPC_CheckPatternPredicate1,
23558 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINT_WU_S),
23559 62, 1, 0,
23560 11,
23561 OPC_CheckChild0Integer, 8|128,111,
23562 OPC_RecordChild1,
23563 OPC_CheckPatternPredicate1,
23564 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRNEL_L_S),
23565 81, 1, 0,
23566 11,
23567 OPC_CheckChild0Integer, 6|128,111,
23568 OPC_RecordChild1,
23569 OPC_CheckPatternPredicate1,
23570 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRNEH_L_S),
23571 81, 1, 0,
23572 11,
23573 OPC_CheckChild0Integer, 32|128,111,
23574 OPC_RecordChild1,
23575 OPC_CheckPatternPredicate1,
23576 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRZL_L_S),
23577 81, 1, 0,
23578 11,
23579 OPC_CheckChild0Integer, 30|128,111,
23580 OPC_RecordChild1,
23581 OPC_CheckPatternPredicate1,
23582 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRZH_L_S),
23583 81, 1, 0,
23584 11,
23585 OPC_CheckChild0Integer, 18|128,111,
23586 OPC_RecordChild1,
23587 OPC_CheckPatternPredicate1,
23588 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRPL_L_S),
23589 81, 1, 0,
23590 11,
23591 OPC_CheckChild0Integer, 16|128,111,
23592 OPC_RecordChild1,
23593 OPC_CheckPatternPredicate1,
23594 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRPH_L_S),
23595 81, 1, 0,
23596 11,
23597 OPC_CheckChild0Integer, 126|128,110,
23598 OPC_RecordChild1,
23599 OPC_CheckPatternPredicate1,
23600 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRML_L_S),
23601 81, 1, 0,
23602 11,
23603 OPC_CheckChild0Integer, 124|128,110,
23604 OPC_RecordChild1,
23605 OPC_CheckPatternPredicate1,
23606 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRMH_L_S),
23607 81, 1, 0,
23608 11,
23609 OPC_CheckChild0Integer, 116|128,110,
23610 OPC_RecordChild1,
23611 OPC_CheckPatternPredicate1,
23612 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTL_L_S),
23613 81, 1, 0,
23614 11,
23615 OPC_CheckChild0Integer, 114|128,110,
23616 OPC_RecordChild1,
23617 OPC_CheckPatternPredicate1,
23618 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTH_L_S),
23619 81, 1, 0,
23620 11,
23621 OPC_CheckChild0Integer, 18|128,109,
23622 OPC_RecordChild1,
23623 OPC_CheckPatternPredicate1,
23624 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCLASS_D),
23625 81, 1, 0,
23626 11,
23627 OPC_CheckChild0Integer, 0|128,111,
23628 OPC_RecordChild1,
23629 OPC_CheckPatternPredicate1,
23630 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRNE_L_D),
23631 81, 1, 0,
23632 11,
23633 OPC_CheckChild0Integer, 20|128,111,
23634 OPC_RecordChild1,
23635 OPC_CheckPatternPredicate1,
23636 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRZ_L_D),
23637 81, 1, 0,
23638 11,
23639 OPC_CheckChild0Integer, 10|128,111,
23640 OPC_RecordChild1,
23641 OPC_CheckPatternPredicate1,
23642 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRP_L_D),
23643 81, 1, 0,
23644 11,
23645 OPC_CheckChild0Integer, 118|128,110,
23646 OPC_RecordChild1,
23647 OPC_CheckPatternPredicate1,
23648 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRM_L_D),
23649 81, 1, 0,
23650 11,
23651 OPC_CheckChild0Integer, 104|128,110,
23652 OPC_RecordChild1,
23653 OPC_CheckPatternPredicate1,
23654 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINT_L_D),
23655 81, 1, 0,
23656 11,
23657 OPC_CheckChild0Integer, 22|128,111,
23658 OPC_RecordChild1,
23659 OPC_CheckPatternPredicate1,
23660 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRZ_LU_D),
23661 81, 1, 0,
23662 11,
23663 OPC_CheckChild0Integer, 106|128,110,
23664 OPC_RecordChild1,
23665 OPC_CheckPatternPredicate1,
23666 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINT_LU_D),
23667 81, 1, 0,
23668 13,
23669 OPC_CheckChild0Integer, 36|128,103,
23670 OPC_RecordChild1,
23671 OPC_RecordChild2,
23672 OPC_CheckPatternPredicate0,
23673 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSADD_B),
23674 41, 2, 0, 1,
23675 13,
23676 OPC_CheckChild0Integer, 38|128,103,
23677 OPC_RecordChild1,
23678 OPC_RecordChild2,
23679 OPC_CheckPatternPredicate0,
23680 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSADD_BU),
23681 41, 2, 0, 1,
23682 13,
23683 OPC_CheckChild0Integer, 48|128,106,
23684 OPC_RecordChild1,
23685 OPC_RecordChild2,
23686 OPC_CheckPatternPredicate0,
23687 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSUB_B),
23688 41, 2, 0, 1,
23689 13,
23690 OPC_CheckChild0Integer, 50|128,106,
23691 OPC_RecordChild1,
23692 OPC_RecordChild2,
23693 OPC_CheckPatternPredicate0,
23694 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSUB_BU),
23695 41, 2, 0, 1,
23696 13,
23697 OPC_CheckChild0Integer, 114|128,99,
23698 OPC_RecordChild1,
23699 OPC_RecordChild2,
23700 OPC_CheckPatternPredicate0,
23701 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHADDW_H_B),
23702 52, 2, 0, 1,
23703 13,
23704 OPC_CheckChild0Integer, 116|128,99,
23705 OPC_RecordChild1,
23706 OPC_RecordChild2,
23707 OPC_CheckPatternPredicate0,
23708 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHADDW_HU_BU),
23709 52, 2, 0, 1,
23710 13,
23711 OPC_CheckChild0Integer, 2|128,100,
23712 OPC_RecordChild1,
23713 OPC_RecordChild2,
23714 OPC_CheckPatternPredicate0,
23715 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHSUBW_H_B),
23716 52, 2, 0, 1,
23717 13,
23718 OPC_CheckChild0Integer, 4|128,100,
23719 OPC_RecordChild1,
23720 OPC_RecordChild2,
23721 OPC_CheckPatternPredicate0,
23722 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHSUBW_HU_BU),
23723 52, 2, 0, 1,
23724 13,
23725 OPC_CheckChild0Integer, 22|128,96,
23726 OPC_RecordChild1,
23727 OPC_RecordChild2,
23728 OPC_CheckPatternPredicate0,
23729 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_H_B),
23730 52, 2, 0, 1,
23731 13,
23732 OPC_CheckChild0Integer, 46|128,96,
23733 OPC_RecordChild1,
23734 OPC_RecordChild2,
23735 OPC_CheckPatternPredicate0,
23736 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_H_B),
23737 52, 2, 0, 1,
23738 13,
23739 OPC_CheckChild0Integer, 98|128,106,
23740 OPC_RecordChild1,
23741 OPC_RecordChild2,
23742 OPC_CheckPatternPredicate0,
23743 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWEV_H_B),
23744 52, 2, 0, 1,
23745 13,
23746 OPC_CheckChild0Integer, 114|128,106,
23747 OPC_RecordChild1,
23748 OPC_RecordChild2,
23749 OPC_CheckPatternPredicate0,
23750 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWOD_H_B),
23751 52, 2, 0, 1,
23752 13,
23753 OPC_CheckChild0Integer, 24|128,96,
23754 OPC_RecordChild1,
23755 OPC_RecordChild2,
23756 OPC_CheckPatternPredicate0,
23757 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_H_BU),
23758 52, 2, 0, 1,
23759 13,
23760 OPC_CheckChild0Integer, 48|128,96,
23761 OPC_RecordChild1,
23762 OPC_RecordChild2,
23763 OPC_CheckPatternPredicate0,
23764 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_H_BU),
23765 52, 2, 0, 1,
23766 13,
23767 OPC_CheckChild0Integer, 100|128,106,
23768 OPC_RecordChild1,
23769 OPC_RecordChild2,
23770 OPC_CheckPatternPredicate0,
23771 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWEV_H_BU),
23772 52, 2, 0, 1,
23773 13,
23774 OPC_CheckChild0Integer, 116|128,106,
23775 OPC_RecordChild1,
23776 OPC_RecordChild2,
23777 OPC_CheckPatternPredicate0,
23778 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWOD_H_BU),
23779 52, 2, 0, 1,
23780 13,
23781 OPC_CheckChild0Integer, 26|128,96,
23782 OPC_RecordChild1,
23783 OPC_RecordChild2,
23784 OPC_CheckPatternPredicate0,
23785 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_H_BU_B),
23786 52, 2, 0, 1,
23787 13,
23788 OPC_CheckChild0Integer, 50|128,96,
23789 OPC_RecordChild1,
23790 OPC_RecordChild2,
23791 OPC_CheckPatternPredicate0,
23792 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_H_BU_B),
23793 52, 2, 0, 1,
23794 13,
23795 OPC_CheckChild0Integer, 70|128,96,
23796 OPC_RecordChild1,
23797 OPC_RecordChild2,
23798 OPC_CheckPatternPredicate0,
23799 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVG_B),
23800 41, 2, 0, 1,
23801 13,
23802 OPC_CheckChild0Integer, 72|128,96,
23803 OPC_RecordChild1,
23804 OPC_RecordChild2,
23805 OPC_CheckPatternPredicate0,
23806 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVG_BU),
23807 41, 2, 0, 1,
23808 13,
23809 OPC_CheckChild0Integer, 86|128,96,
23810 OPC_RecordChild1,
23811 OPC_RecordChild2,
23812 OPC_CheckPatternPredicate0,
23813 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVGR_B),
23814 41, 2, 0, 1,
23815 13,
23816 OPC_CheckChild0Integer, 88|128,96,
23817 OPC_RecordChild1,
23818 OPC_RecordChild2,
23819 OPC_CheckPatternPredicate0,
23820 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVGR_BU),
23821 41, 2, 0, 1,
23822 13,
23823 OPC_CheckChild0Integer, 102|128,95,
23824 OPC_RecordChild1,
23825 OPC_RecordChild2,
23826 OPC_CheckPatternPredicate0,
23827 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_B),
23828 41, 2, 0, 1,
23829 13,
23830 OPC_CheckChild0Integer, 104|128,95,
23831 OPC_RecordChild1,
23832 OPC_RecordChild2,
23833 OPC_CheckPatternPredicate0,
23834 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_BU),
23835 41, 2, 0, 1,
23836 13,
23837 OPC_CheckChild0Integer, 0|128,96,
23838 OPC_RecordChild1,
23839 OPC_RecordChild2,
23840 OPC_CheckPatternPredicate0,
23841 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDA_B),
23842 41, 2, 0, 1,
23843 13,
23844 OPC_CheckChild0Integer, 80|128,101,
23845 OPC_RecordChild1,
23846 OPC_RecordChild2,
23847 OPC_CheckPatternPredicate0,
23848 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_B),
23849 41, 2, 0, 1,
23850 13,
23851 OPC_CheckChild0Integer, 82|128,101,
23852 OPC_RecordChild1,
23853 OPC_RecordChild2,
23854 OPC_CheckPatternPredicate0,
23855 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_BU),
23856 41, 2, 0, 1,
23857 13,
23858 OPC_CheckChild0Integer, 110|128,101,
23859 OPC_RecordChild1,
23860 OPC_RecordChild2,
23861 OPC_CheckPatternPredicate0,
23862 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_H_B),
23863 52, 2, 0, 1,
23864 13,
23865 OPC_CheckChild0Integer, 6|128,102,
23866 OPC_RecordChild1,
23867 OPC_RecordChild2,
23868 OPC_CheckPatternPredicate0,
23869 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_H_B),
23870 52, 2, 0, 1,
23871 13,
23872 OPC_CheckChild0Integer, 112|128,101,
23873 OPC_RecordChild1,
23874 OPC_RecordChild2,
23875 OPC_CheckPatternPredicate0,
23876 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_H_BU),
23877 52, 2, 0, 1,
23878 13,
23879 OPC_CheckChild0Integer, 8|128,102,
23880 OPC_RecordChild1,
23881 OPC_RecordChild2,
23882 OPC_CheckPatternPredicate0,
23883 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_H_BU),
23884 52, 2, 0, 1,
23885 13,
23886 OPC_CheckChild0Integer, 114|128,101,
23887 OPC_RecordChild1,
23888 OPC_RecordChild2,
23889 OPC_CheckPatternPredicate0,
23890 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_H_BU_B),
23891 52, 2, 0, 1,
23892 13,
23893 OPC_CheckChild0Integer, 10|128,102,
23894 OPC_RecordChild1,
23895 OPC_RecordChild2,
23896 OPC_CheckPatternPredicate0,
23897 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_H_BU_B),
23898 52, 2, 0, 1,
23899 13,
23900 OPC_CheckChild0Integer, 100|128,103,
23901 OPC_RecordChild1,
23902 OPC_RecordChild2,
23903 OPC_CheckPatternPredicate0,
23904 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSIGNCOV_B),
23905 41, 2, 0, 1,
23906 13,
23907 OPC_CheckChild0Integer, 68|128,96,
23908 OPC_RecordChild1,
23909 OPC_RecordChild2,
23910 OPC_CheckPatternPredicate0,
23911 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVANDN_V),
23912 41, 2, 0, 1,
23913 13,
23914 OPC_CheckChild0Integer, 40|128,102,
23915 OPC_RecordChild1,
23916 OPC_RecordChild2,
23917 OPC_CheckPatternPredicate0,
23918 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVORN_V),
23919 41, 2, 0, 1,
23920 13,
23921 OPC_CheckChild0Integer, 20|128,103,
23922 OPC_RecordChild1,
23923 OPC_RecordChild2,
23924 OPC_CheckPatternPredicate0,
23925 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTR_B),
23926 41, 2, 0, 1,
23927 13,
23928 OPC_CheckChild0Integer, 34|128,105,
23929 OPC_RecordChild1,
23930 OPC_RecordChild2,
23931 OPC_CheckPatternPredicate0,
23932 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLR_B),
23933 41, 2, 0, 1,
23934 13,
23935 OPC_CheckChild0Integer, 102|128,104,
23936 OPC_RecordChild1,
23937 OPC_RecordChild2,
23938 OPC_CheckPatternPredicate0,
23939 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAR_B),
23940 41, 2, 0, 1,
23941 13,
23942 OPC_CheckChild0Integer, 68|128,103,
23943 OPC_RecordChild1,
23944 OPC_RecordChild2,
23945 OPC_CheckPatternPredicate0,
23946 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQ_B),
23947 41, 2, 0, 1,
23948 13,
23949 OPC_CheckChild0Integer, 108|128,103,
23950 OPC_RecordChild1,
23951 OPC_RecordChild2,
23952 OPC_CheckPatternPredicate0,
23953 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_B),
23954 41, 2, 0, 1,
23955 13,
23956 OPC_CheckChild0Integer, 110|128,103,
23957 OPC_RecordChild1,
23958 OPC_RecordChild2,
23959 OPC_CheckPatternPredicate0,
23960 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_BU),
23961 41, 2, 0, 1,
23962 13,
23963 OPC_CheckChild0Integer, 40|128,104,
23964 OPC_RecordChild1,
23965 OPC_RecordChild2,
23966 OPC_CheckPatternPredicate0,
23967 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_B),
23968 41, 2, 0, 1,
23969 13,
23970 OPC_CheckChild0Integer, 42|128,104,
23971 OPC_RecordChild1,
23972 OPC_RecordChild2,
23973 OPC_CheckPatternPredicate0,
23974 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_BU),
23975 41, 2, 0, 1,
23976 13,
23977 OPC_CheckChild0Integer, 42|128,102,
23978 OPC_RecordChild1,
23979 OPC_RecordChild2,
23980 OPC_CheckPatternPredicate0,
23981 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKEV_B),
23982 41, 2, 0, 1,
23983 13,
23984 OPC_CheckChild0Integer, 50|128,102,
23985 OPC_RecordChild1,
23986 OPC_RecordChild2,
23987 OPC_CheckPatternPredicate0,
23988 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKOD_B),
23989 41, 2, 0, 1,
23990 13,
23991 OPC_CheckChild0Integer, 74|128,102,
23992 OPC_RecordChild1,
23993 OPC_RecordChild2,
23994 OPC_CheckPatternPredicate0,
23995 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKEV_B),
23996 41, 2, 0, 1,
23997 13,
23998 OPC_CheckChild0Integer, 82|128,102,
23999 OPC_RecordChild1,
24000 OPC_RecordChild2,
24001 OPC_CheckPatternPredicate0,
24002 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKOD_B),
24003 41, 2, 0, 1,
24004 13,
24005 OPC_CheckChild0Integer, 22|128,100,
24006 OPC_RecordChild1,
24007 OPC_RecordChild2,
24008 OPC_CheckPatternPredicate0,
24009 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVL_B),
24010 41, 2, 0, 1,
24011 13,
24012 OPC_CheckChild0Integer, 14|128,100,
24013 OPC_RecordChild1,
24014 OPC_RecordChild2,
24015 OPC_CheckPatternPredicate0,
24016 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVH_B),
24017 41, 2, 0, 1,
24018 13,
24019 OPC_CheckChild0Integer, 44|128,103,
24020 OPC_RecordChild1,
24021 OPC_RecordChild2,
24022 OPC_CheckPatternPredicate0,
24023 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSADD_H),
24024 52, 2, 0, 1,
24025 13,
24026 OPC_CheckChild0Integer, 46|128,103,
24027 OPC_RecordChild1,
24028 OPC_RecordChild2,
24029 OPC_CheckPatternPredicate0,
24030 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSADD_HU),
24031 52, 2, 0, 1,
24032 13,
24033 OPC_CheckChild0Integer, 56|128,106,
24034 OPC_RecordChild1,
24035 OPC_RecordChild2,
24036 OPC_CheckPatternPredicate0,
24037 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSUB_H),
24038 52, 2, 0, 1,
24039 13,
24040 OPC_CheckChild0Integer, 58|128,106,
24041 OPC_RecordChild1,
24042 OPC_RecordChild2,
24043 OPC_CheckPatternPredicate0,
24044 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSUB_HU),
24045 52, 2, 0, 1,
24046 13,
24047 OPC_CheckChild0Integer, 122|128,99,
24048 OPC_RecordChild1,
24049 OPC_RecordChild2,
24050 OPC_CheckPatternPredicate0,
24051 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHADDW_W_H),
24052 66, 2, 0, 1,
24053 13,
24054 OPC_CheckChild0Integer, 124|128,99,
24055 OPC_RecordChild1,
24056 OPC_RecordChild2,
24057 OPC_CheckPatternPredicate0,
24058 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHADDW_WU_HU),
24059 66, 2, 0, 1,
24060 13,
24061 OPC_CheckChild0Integer, 10|128,100,
24062 OPC_RecordChild1,
24063 OPC_RecordChild2,
24064 OPC_CheckPatternPredicate0,
24065 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHSUBW_W_H),
24066 66, 2, 0, 1,
24067 13,
24068 OPC_CheckChild0Integer, 12|128,100,
24069 OPC_RecordChild1,
24070 OPC_RecordChild2,
24071 OPC_CheckPatternPredicate0,
24072 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHSUBW_WU_HU),
24073 66, 2, 0, 1,
24074 13,
24075 OPC_CheckChild0Integer, 34|128,96,
24076 OPC_RecordChild1,
24077 OPC_RecordChild2,
24078 OPC_CheckPatternPredicate0,
24079 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_W_H),
24080 66, 2, 0, 1,
24081 13,
24082 OPC_CheckChild0Integer, 58|128,96,
24083 OPC_RecordChild1,
24084 OPC_RecordChild2,
24085 OPC_CheckPatternPredicate0,
24086 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_W_H),
24087 66, 2, 0, 1,
24088 13,
24089 OPC_CheckChild0Integer, 106|128,106,
24090 OPC_RecordChild1,
24091 OPC_RecordChild2,
24092 OPC_CheckPatternPredicate0,
24093 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWEV_W_H),
24094 66, 2, 0, 1,
24095 13,
24096 OPC_CheckChild0Integer, 122|128,106,
24097 OPC_RecordChild1,
24098 OPC_RecordChild2,
24099 OPC_CheckPatternPredicate0,
24100 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWOD_W_H),
24101 66, 2, 0, 1,
24102 13,
24103 OPC_CheckChild0Integer, 36|128,96,
24104 OPC_RecordChild1,
24105 OPC_RecordChild2,
24106 OPC_CheckPatternPredicate0,
24107 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_W_HU),
24108 66, 2, 0, 1,
24109 13,
24110 OPC_CheckChild0Integer, 60|128,96,
24111 OPC_RecordChild1,
24112 OPC_RecordChild2,
24113 OPC_CheckPatternPredicate0,
24114 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_W_HU),
24115 66, 2, 0, 1,
24116 13,
24117 OPC_CheckChild0Integer, 108|128,106,
24118 OPC_RecordChild1,
24119 OPC_RecordChild2,
24120 OPC_CheckPatternPredicate0,
24121 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWEV_W_HU),
24122 66, 2, 0, 1,
24123 13,
24124 OPC_CheckChild0Integer, 124|128,106,
24125 OPC_RecordChild1,
24126 OPC_RecordChild2,
24127 OPC_CheckPatternPredicate0,
24128 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWOD_W_HU),
24129 66, 2, 0, 1,
24130 13,
24131 OPC_CheckChild0Integer, 38|128,96,
24132 OPC_RecordChild1,
24133 OPC_RecordChild2,
24134 OPC_CheckPatternPredicate0,
24135 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_W_HU_H),
24136 66, 2, 0, 1,
24137 13,
24138 OPC_CheckChild0Integer, 62|128,96,
24139 OPC_RecordChild1,
24140 OPC_RecordChild2,
24141 OPC_CheckPatternPredicate0,
24142 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_W_HU_H),
24143 66, 2, 0, 1,
24144 13,
24145 OPC_CheckChild0Integer, 78|128,96,
24146 OPC_RecordChild1,
24147 OPC_RecordChild2,
24148 OPC_CheckPatternPredicate0,
24149 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVG_H),
24150 52, 2, 0, 1,
24151 13,
24152 OPC_CheckChild0Integer, 80|128,96,
24153 OPC_RecordChild1,
24154 OPC_RecordChild2,
24155 OPC_CheckPatternPredicate0,
24156 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVG_HU),
24157 52, 2, 0, 1,
24158 13,
24159 OPC_CheckChild0Integer, 94|128,96,
24160 OPC_RecordChild1,
24161 OPC_RecordChild2,
24162 OPC_CheckPatternPredicate0,
24163 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVGR_H),
24164 52, 2, 0, 1,
24165 13,
24166 OPC_CheckChild0Integer, 96|128,96,
24167 OPC_RecordChild1,
24168 OPC_RecordChild2,
24169 OPC_CheckPatternPredicate0,
24170 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVGR_HU),
24171 52, 2, 0, 1,
24172 13,
24173 OPC_CheckChild0Integer, 110|128,95,
24174 OPC_RecordChild1,
24175 OPC_RecordChild2,
24176 OPC_CheckPatternPredicate0,
24177 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_H),
24178 52, 2, 0, 1,
24179 13,
24180 OPC_CheckChild0Integer, 112|128,95,
24181 OPC_RecordChild1,
24182 OPC_RecordChild2,
24183 OPC_CheckPatternPredicate0,
24184 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_HU),
24185 52, 2, 0, 1,
24186 13,
24187 OPC_CheckChild0Integer, 4|128,96,
24188 OPC_RecordChild1,
24189 OPC_RecordChild2,
24190 OPC_CheckPatternPredicate0,
24191 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDA_H),
24192 52, 2, 0, 1,
24193 13,
24194 OPC_CheckChild0Integer, 88|128,101,
24195 OPC_RecordChild1,
24196 OPC_RecordChild2,
24197 OPC_CheckPatternPredicate0,
24198 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_H),
24199 52, 2, 0, 1,
24200 13,
24201 OPC_CheckChild0Integer, 90|128,101,
24202 OPC_RecordChild1,
24203 OPC_RecordChild2,
24204 OPC_CheckPatternPredicate0,
24205 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_HU),
24206 52, 2, 0, 1,
24207 13,
24208 OPC_CheckChild0Integer, 122|128,101,
24209 OPC_RecordChild1,
24210 OPC_RecordChild2,
24211 OPC_CheckPatternPredicate0,
24212 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_W_H),
24213 66, 2, 0, 1,
24214 13,
24215 OPC_CheckChild0Integer, 18|128,102,
24216 OPC_RecordChild1,
24217 OPC_RecordChild2,
24218 OPC_CheckPatternPredicate0,
24219 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_W_H),
24220 66, 2, 0, 1,
24221 13,
24222 OPC_CheckChild0Integer, 124|128,101,
24223 OPC_RecordChild1,
24224 OPC_RecordChild2,
24225 OPC_CheckPatternPredicate0,
24226 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_W_HU),
24227 66, 2, 0, 1,
24228 13,
24229 OPC_CheckChild0Integer, 20|128,102,
24230 OPC_RecordChild1,
24231 OPC_RecordChild2,
24232 OPC_CheckPatternPredicate0,
24233 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_W_HU),
24234 66, 2, 0, 1,
24235 13,
24236 OPC_CheckChild0Integer, 126|128,101,
24237 OPC_RecordChild1,
24238 OPC_RecordChild2,
24239 OPC_CheckPatternPredicate0,
24240 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_W_HU_H),
24241 66, 2, 0, 1,
24242 13,
24243 OPC_CheckChild0Integer, 22|128,102,
24244 OPC_RecordChild1,
24245 OPC_RecordChild2,
24246 OPC_CheckPatternPredicate0,
24247 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_W_HU_H),
24248 66, 2, 0, 1,
24249 13,
24250 OPC_CheckChild0Integer, 104|128,103,
24251 OPC_RecordChild1,
24252 OPC_RecordChild2,
24253 OPC_CheckPatternPredicate0,
24254 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSIGNCOV_H),
24255 52, 2, 0, 1,
24256 13,
24257 OPC_CheckChild0Integer, 24|128,103,
24258 OPC_RecordChild1,
24259 OPC_RecordChild2,
24260 OPC_CheckPatternPredicate0,
24261 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTR_H),
24262 52, 2, 0, 1,
24263 13,
24264 OPC_CheckChild0Integer, 38|128,105,
24265 OPC_RecordChild1,
24266 OPC_RecordChild2,
24267 OPC_CheckPatternPredicate0,
24268 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLR_H),
24269 52, 2, 0, 1,
24270 13,
24271 OPC_CheckChild0Integer, 106|128,104,
24272 OPC_RecordChild1,
24273 OPC_RecordChild2,
24274 OPC_CheckPatternPredicate0,
24275 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAR_H),
24276 52, 2, 0, 1,
24277 13,
24278 OPC_CheckChild0Integer, 20|128,105,
24279 OPC_RecordChild1,
24280 OPC_RecordChild2,
24281 OPC_CheckPatternPredicate0,
24282 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLN_B_H),
24283 41, 2, 0, 1,
24284 13,
24285 OPC_CheckChild0Integer, 88|128,104,
24286 OPC_RecordChild1,
24287 OPC_RecordChild2,
24288 OPC_CheckPatternPredicate0,
24289 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAN_B_H),
24290 41, 2, 0, 1,
24291 13,
24292 OPC_CheckChild0Integer, 50|128,105,
24293 OPC_RecordChild1,
24294 OPC_RecordChild2,
24295 OPC_CheckPatternPredicate0,
24296 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRN_B_H),
24297 41, 2, 0, 1,
24298 13,
24299 OPC_CheckChild0Integer, 118|128,104,
24300 OPC_RecordChild1,
24301 OPC_RecordChild2,
24302 OPC_CheckPatternPredicate0,
24303 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARN_B_H),
24304 41, 2, 0, 1,
24305 13,
24306 OPC_CheckChild0Integer, 120|128,105,
24307 OPC_RecordChild1,
24308 OPC_RecordChild2,
24309 OPC_CheckPatternPredicate0,
24310 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLN_B_H),
24311 41, 2, 0, 1,
24312 13,
24313 OPC_CheckChild0Integer, 64|128,105,
24314 OPC_RecordChild1,
24315 OPC_RecordChild2,
24316 OPC_CheckPatternPredicate0,
24317 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRAN_B_H),
24318 41, 2, 0, 1,
24319 13,
24320 OPC_CheckChild0Integer, 122|128,105,
24321 OPC_RecordChild1,
24322 OPC_RecordChild2,
24323 OPC_CheckPatternPredicate0,
24324 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLN_BU_H),
24325 41, 2, 0, 1,
24326 13,
24327 OPC_CheckChild0Integer, 66|128,105,
24328 OPC_RecordChild1,
24329 OPC_RecordChild2,
24330 OPC_CheckPatternPredicate0,
24331 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRAN_BU_H),
24332 41, 2, 0, 1,
24333 13,
24334 OPC_CheckChild0Integer, 20|128,106,
24335 OPC_RecordChild1,
24336 OPC_RecordChild2,
24337 OPC_CheckPatternPredicate0,
24338 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRN_B_H),
24339 41, 2, 0, 1,
24340 13,
24341 OPC_CheckChild0Integer, 92|128,105,
24342 OPC_RecordChild1,
24343 OPC_RecordChild2,
24344 OPC_CheckPatternPredicate0,
24345 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARN_B_H),
24346 41, 2, 0, 1,
24347 13,
24348 OPC_CheckChild0Integer, 22|128,106,
24349 OPC_RecordChild1,
24350 OPC_RecordChild2,
24351 OPC_CheckPatternPredicate0,
24352 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRN_BU_H),
24353 41, 2, 0, 1,
24354 13,
24355 OPC_CheckChild0Integer, 94|128,105,
24356 OPC_RecordChild1,
24357 OPC_RecordChild2,
24358 OPC_CheckPatternPredicate0,
24359 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARN_BU_H),
24360 41, 2, 0, 1,
24361 13,
24362 OPC_CheckChild0Integer, 72|128,103,
24363 OPC_RecordChild1,
24364 OPC_RecordChild2,
24365 OPC_CheckPatternPredicate0,
24366 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQ_H),
24367 52, 2, 0, 1,
24368 13,
24369 OPC_CheckChild0Integer, 116|128,103,
24370 OPC_RecordChild1,
24371 OPC_RecordChild2,
24372 OPC_CheckPatternPredicate0,
24373 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_H),
24374 52, 2, 0, 1,
24375 13,
24376 OPC_CheckChild0Integer, 118|128,103,
24377 OPC_RecordChild1,
24378 OPC_RecordChild2,
24379 OPC_CheckPatternPredicate0,
24380 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_HU),
24381 52, 2, 0, 1,
24382 13,
24383 OPC_CheckChild0Integer, 48|128,104,
24384 OPC_RecordChild1,
24385 OPC_RecordChild2,
24386 OPC_CheckPatternPredicate0,
24387 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_H),
24388 52, 2, 0, 1,
24389 13,
24390 OPC_CheckChild0Integer, 50|128,104,
24391 OPC_RecordChild1,
24392 OPC_RecordChild2,
24393 OPC_CheckPatternPredicate0,
24394 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_HU),
24395 52, 2, 0, 1,
24396 13,
24397 OPC_CheckChild0Integer, 46|128,102,
24398 OPC_RecordChild1,
24399 OPC_RecordChild2,
24400 OPC_CheckPatternPredicate0,
24401 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKEV_H),
24402 52, 2, 0, 1,
24403 13,
24404 OPC_CheckChild0Integer, 54|128,102,
24405 OPC_RecordChild1,
24406 OPC_RecordChild2,
24407 OPC_CheckPatternPredicate0,
24408 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKOD_H),
24409 52, 2, 0, 1,
24410 13,
24411 OPC_CheckChild0Integer, 78|128,102,
24412 OPC_RecordChild1,
24413 OPC_RecordChild2,
24414 OPC_CheckPatternPredicate0,
24415 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKEV_H),
24416 52, 2, 0, 1,
24417 13,
24418 OPC_CheckChild0Integer, 86|128,102,
24419 OPC_RecordChild1,
24420 OPC_RecordChild2,
24421 OPC_CheckPatternPredicate0,
24422 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKOD_H),
24423 52, 2, 0, 1,
24424 13,
24425 OPC_CheckChild0Integer, 26|128,100,
24426 OPC_RecordChild1,
24427 OPC_RecordChild2,
24428 OPC_CheckPatternPredicate0,
24429 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVL_H),
24430 52, 2, 0, 1,
24431 13,
24432 OPC_CheckChild0Integer, 18|128,100,
24433 OPC_RecordChild1,
24434 OPC_RecordChild2,
24435 OPC_CheckPatternPredicate0,
24436 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVH_H),
24437 52, 2, 0, 1,
24438 13,
24439 OPC_CheckChild0Integer, 48|128,103,
24440 OPC_RecordChild1,
24441 OPC_RecordChild2,
24442 OPC_CheckPatternPredicate0,
24443 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSADD_W),
24444 66, 2, 0, 1,
24445 13,
24446 OPC_CheckChild0Integer, 50|128,103,
24447 OPC_RecordChild1,
24448 OPC_RecordChild2,
24449 OPC_CheckPatternPredicate0,
24450 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSADD_WU),
24451 66, 2, 0, 1,
24452 13,
24453 OPC_CheckChild0Integer, 60|128,106,
24454 OPC_RecordChild1,
24455 OPC_RecordChild2,
24456 OPC_CheckPatternPredicate0,
24457 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSUB_W),
24458 66, 2, 0, 1,
24459 13,
24460 OPC_CheckChild0Integer, 62|128,106,
24461 OPC_RecordChild1,
24462 OPC_RecordChild2,
24463 OPC_CheckPatternPredicate0,
24464 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSUB_WU),
24465 66, 2, 0, 1,
24466 13,
24467 OPC_CheckChild0Integer, 110|128,99,
24468 OPC_RecordChild1,
24469 OPC_RecordChild2,
24470 OPC_CheckPatternPredicate0,
24471 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHADDW_D_W),
24472 83, 2, 0, 1,
24473 13,
24474 OPC_CheckChild0Integer, 112|128,99,
24475 OPC_RecordChild1,
24476 OPC_RecordChild2,
24477 OPC_CheckPatternPredicate0,
24478 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHADDW_DU_WU),
24479 83, 2, 0, 1,
24480 13,
24481 OPC_CheckChild0Integer, 126|128,99,
24482 OPC_RecordChild1,
24483 OPC_RecordChild2,
24484 OPC_CheckPatternPredicate0,
24485 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHSUBW_D_W),
24486 83, 2, 0, 1,
24487 13,
24488 OPC_CheckChild0Integer, 0|128,100,
24489 OPC_RecordChild1,
24490 OPC_RecordChild2,
24491 OPC_CheckPatternPredicate0,
24492 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHSUBW_DU_WU),
24493 83, 2, 0, 1,
24494 13,
24495 OPC_CheckChild0Integer, 16|128,96,
24496 OPC_RecordChild1,
24497 OPC_RecordChild2,
24498 OPC_CheckPatternPredicate0,
24499 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_D_W),
24500 83, 2, 0, 1,
24501 13,
24502 OPC_CheckChild0Integer, 40|128,96,
24503 OPC_RecordChild1,
24504 OPC_RecordChild2,
24505 OPC_CheckPatternPredicate0,
24506 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_D_W),
24507 83, 2, 0, 1,
24508 13,
24509 OPC_CheckChild0Integer, 94|128,106,
24510 OPC_RecordChild1,
24511 OPC_RecordChild2,
24512 OPC_CheckPatternPredicate0,
24513 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWEV_D_W),
24514 83, 2, 0, 1,
24515 13,
24516 OPC_CheckChild0Integer, 110|128,106,
24517 OPC_RecordChild1,
24518 OPC_RecordChild2,
24519 OPC_CheckPatternPredicate0,
24520 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWOD_D_W),
24521 83, 2, 0, 1,
24522 13,
24523 OPC_CheckChild0Integer, 18|128,96,
24524 OPC_RecordChild1,
24525 OPC_RecordChild2,
24526 OPC_CheckPatternPredicate0,
24527 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_D_WU),
24528 83, 2, 0, 1,
24529 13,
24530 OPC_CheckChild0Integer, 42|128,96,
24531 OPC_RecordChild1,
24532 OPC_RecordChild2,
24533 OPC_CheckPatternPredicate0,
24534 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_D_WU),
24535 83, 2, 0, 1,
24536 13,
24537 OPC_CheckChild0Integer, 96|128,106,
24538 OPC_RecordChild1,
24539 OPC_RecordChild2,
24540 OPC_CheckPatternPredicate0,
24541 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWEV_D_WU),
24542 83, 2, 0, 1,
24543 13,
24544 OPC_CheckChild0Integer, 112|128,106,
24545 OPC_RecordChild1,
24546 OPC_RecordChild2,
24547 OPC_CheckPatternPredicate0,
24548 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWOD_D_WU),
24549 83, 2, 0, 1,
24550 13,
24551 OPC_CheckChild0Integer, 20|128,96,
24552 OPC_RecordChild1,
24553 OPC_RecordChild2,
24554 OPC_CheckPatternPredicate0,
24555 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_D_WU_W),
24556 83, 2, 0, 1,
24557 13,
24558 OPC_CheckChild0Integer, 44|128,96,
24559 OPC_RecordChild1,
24560 OPC_RecordChild2,
24561 OPC_CheckPatternPredicate0,
24562 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_D_WU_W),
24563 83, 2, 0, 1,
24564 13,
24565 OPC_CheckChild0Integer, 82|128,96,
24566 OPC_RecordChild1,
24567 OPC_RecordChild2,
24568 OPC_CheckPatternPredicate0,
24569 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVG_W),
24570 66, 2, 0, 1,
24571 13,
24572 OPC_CheckChild0Integer, 84|128,96,
24573 OPC_RecordChild1,
24574 OPC_RecordChild2,
24575 OPC_CheckPatternPredicate0,
24576 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVG_WU),
24577 66, 2, 0, 1,
24578 13,
24579 OPC_CheckChild0Integer, 98|128,96,
24580 OPC_RecordChild1,
24581 OPC_RecordChild2,
24582 OPC_CheckPatternPredicate0,
24583 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVGR_W),
24584 66, 2, 0, 1,
24585 13,
24586 OPC_CheckChild0Integer, 100|128,96,
24587 OPC_RecordChild1,
24588 OPC_RecordChild2,
24589 OPC_CheckPatternPredicate0,
24590 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVGR_WU),
24591 66, 2, 0, 1,
24592 13,
24593 OPC_CheckChild0Integer, 114|128,95,
24594 OPC_RecordChild1,
24595 OPC_RecordChild2,
24596 OPC_CheckPatternPredicate0,
24597 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_W),
24598 66, 2, 0, 1,
24599 13,
24600 OPC_CheckChild0Integer, 116|128,95,
24601 OPC_RecordChild1,
24602 OPC_RecordChild2,
24603 OPC_CheckPatternPredicate0,
24604 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_WU),
24605 66, 2, 0, 1,
24606 13,
24607 OPC_CheckChild0Integer, 6|128,96,
24608 OPC_RecordChild1,
24609 OPC_RecordChild2,
24610 OPC_CheckPatternPredicate0,
24611 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDA_W),
24612 66, 2, 0, 1,
24613 13,
24614 OPC_CheckChild0Integer, 92|128,101,
24615 OPC_RecordChild1,
24616 OPC_RecordChild2,
24617 OPC_CheckPatternPredicate0,
24618 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_W),
24619 66, 2, 0, 1,
24620 13,
24621 OPC_CheckChild0Integer, 94|128,101,
24622 OPC_RecordChild1,
24623 OPC_RecordChild2,
24624 OPC_CheckPatternPredicate0,
24625 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_WU),
24626 66, 2, 0, 1,
24627 13,
24628 OPC_CheckChild0Integer, 104|128,101,
24629 OPC_RecordChild1,
24630 OPC_RecordChild2,
24631 OPC_CheckPatternPredicate0,
24632 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_D_W),
24633 83, 2, 0, 1,
24634 13,
24635 OPC_CheckChild0Integer, 0|128,102,
24636 OPC_RecordChild1,
24637 OPC_RecordChild2,
24638 OPC_CheckPatternPredicate0,
24639 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_D_W),
24640 83, 2, 0, 1,
24641 13,
24642 OPC_CheckChild0Integer, 106|128,101,
24643 OPC_RecordChild1,
24644 OPC_RecordChild2,
24645 OPC_CheckPatternPredicate0,
24646 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_D_WU),
24647 83, 2, 0, 1,
24648 13,
24649 OPC_CheckChild0Integer, 2|128,102,
24650 OPC_RecordChild1,
24651 OPC_RecordChild2,
24652 OPC_CheckPatternPredicate0,
24653 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_D_WU),
24654 83, 2, 0, 1,
24655 13,
24656 OPC_CheckChild0Integer, 108|128,101,
24657 OPC_RecordChild1,
24658 OPC_RecordChild2,
24659 OPC_CheckPatternPredicate0,
24660 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_D_WU_W),
24661 83, 2, 0, 1,
24662 13,
24663 OPC_CheckChild0Integer, 4|128,102,
24664 OPC_RecordChild1,
24665 OPC_RecordChild2,
24666 OPC_CheckPatternPredicate0,
24667 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_D_WU_W),
24668 83, 2, 0, 1,
24669 13,
24670 OPC_CheckChild0Integer, 106|128,103,
24671 OPC_RecordChild1,
24672 OPC_RecordChild2,
24673 OPC_CheckPatternPredicate0,
24674 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSIGNCOV_W),
24675 66, 2, 0, 1,
24676 13,
24677 OPC_CheckChild0Integer, 26|128,103,
24678 OPC_RecordChild1,
24679 OPC_RecordChild2,
24680 OPC_CheckPatternPredicate0,
24681 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTR_W),
24682 66, 2, 0, 1,
24683 13,
24684 OPC_CheckChild0Integer, 40|128,105,
24685 OPC_RecordChild1,
24686 OPC_RecordChild2,
24687 OPC_CheckPatternPredicate0,
24688 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLR_W),
24689 66, 2, 0, 1,
24690 13,
24691 OPC_CheckChild0Integer, 108|128,104,
24692 OPC_RecordChild1,
24693 OPC_RecordChild2,
24694 OPC_CheckPatternPredicate0,
24695 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAR_W),
24696 66, 2, 0, 1,
24697 13,
24698 OPC_CheckChild0Integer, 22|128,105,
24699 OPC_RecordChild1,
24700 OPC_RecordChild2,
24701 OPC_CheckPatternPredicate0,
24702 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLN_H_W),
24703 52, 2, 0, 1,
24704 13,
24705 OPC_CheckChild0Integer, 90|128,104,
24706 OPC_RecordChild1,
24707 OPC_RecordChild2,
24708 OPC_CheckPatternPredicate0,
24709 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAN_H_W),
24710 52, 2, 0, 1,
24711 13,
24712 OPC_CheckChild0Integer, 52|128,105,
24713 OPC_RecordChild1,
24714 OPC_RecordChild2,
24715 OPC_CheckPatternPredicate0,
24716 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRN_H_W),
24717 52, 2, 0, 1,
24718 13,
24719 OPC_CheckChild0Integer, 120|128,104,
24720 OPC_RecordChild1,
24721 OPC_RecordChild2,
24722 OPC_CheckPatternPredicate0,
24723 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARN_H_W),
24724 52, 2, 0, 1,
24725 13,
24726 OPC_CheckChild0Integer, 124|128,105,
24727 OPC_RecordChild1,
24728 OPC_RecordChild2,
24729 OPC_CheckPatternPredicate0,
24730 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLN_H_W),
24731 52, 2, 0, 1,
24732 13,
24733 OPC_CheckChild0Integer, 68|128,105,
24734 OPC_RecordChild1,
24735 OPC_RecordChild2,
24736 OPC_CheckPatternPredicate0,
24737 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRAN_H_W),
24738 52, 2, 0, 1,
24739 13,
24740 OPC_CheckChild0Integer, 126|128,105,
24741 OPC_RecordChild1,
24742 OPC_RecordChild2,
24743 OPC_CheckPatternPredicate0,
24744 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLN_HU_W),
24745 52, 2, 0, 1,
24746 13,
24747 OPC_CheckChild0Integer, 70|128,105,
24748 OPC_RecordChild1,
24749 OPC_RecordChild2,
24750 OPC_CheckPatternPredicate0,
24751 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRAN_HU_W),
24752 52, 2, 0, 1,
24753 13,
24754 OPC_CheckChild0Integer, 24|128,106,
24755 OPC_RecordChild1,
24756 OPC_RecordChild2,
24757 OPC_CheckPatternPredicate0,
24758 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRN_H_W),
24759 52, 2, 0, 1,
24760 13,
24761 OPC_CheckChild0Integer, 96|128,105,
24762 OPC_RecordChild1,
24763 OPC_RecordChild2,
24764 OPC_CheckPatternPredicate0,
24765 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARN_H_W),
24766 52, 2, 0, 1,
24767 13,
24768 OPC_CheckChild0Integer, 26|128,106,
24769 OPC_RecordChild1,
24770 OPC_RecordChild2,
24771 OPC_CheckPatternPredicate0,
24772 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRN_HU_W),
24773 52, 2, 0, 1,
24774 13,
24775 OPC_CheckChild0Integer, 98|128,105,
24776 OPC_RecordChild1,
24777 OPC_RecordChild2,
24778 OPC_CheckPatternPredicate0,
24779 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARN_HU_W),
24780 52, 2, 0, 1,
24781 13,
24782 OPC_CheckChild0Integer, 74|128,103,
24783 OPC_RecordChild1,
24784 OPC_RecordChild2,
24785 OPC_CheckPatternPredicate0,
24786 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQ_W),
24787 66, 2, 0, 1,
24788 13,
24789 OPC_CheckChild0Integer, 120|128,103,
24790 OPC_RecordChild1,
24791 OPC_RecordChild2,
24792 OPC_CheckPatternPredicate0,
24793 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_W),
24794 66, 2, 0, 1,
24795 13,
24796 OPC_CheckChild0Integer, 122|128,103,
24797 OPC_RecordChild1,
24798 OPC_RecordChild2,
24799 OPC_CheckPatternPredicate0,
24800 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_WU),
24801 66, 2, 0, 1,
24802 13,
24803 OPC_CheckChild0Integer, 52|128,104,
24804 OPC_RecordChild1,
24805 OPC_RecordChild2,
24806 OPC_CheckPatternPredicate0,
24807 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_W),
24808 66, 2, 0, 1,
24809 13,
24810 OPC_CheckChild0Integer, 54|128,104,
24811 OPC_RecordChild1,
24812 OPC_RecordChild2,
24813 OPC_CheckPatternPredicate0,
24814 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_WU),
24815 66, 2, 0, 1,
24816 13,
24817 OPC_CheckChild0Integer, 48|128,102,
24818 OPC_RecordChild1,
24819 OPC_RecordChild2,
24820 OPC_CheckPatternPredicate0,
24821 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKEV_W),
24822 66, 2, 0, 1,
24823 13,
24824 OPC_CheckChild0Integer, 56|128,102,
24825 OPC_RecordChild1,
24826 OPC_RecordChild2,
24827 OPC_CheckPatternPredicate0,
24828 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKOD_W),
24829 66, 2, 0, 1,
24830 13,
24831 OPC_CheckChild0Integer, 80|128,102,
24832 OPC_RecordChild1,
24833 OPC_RecordChild2,
24834 OPC_CheckPatternPredicate0,
24835 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKEV_W),
24836 66, 2, 0, 1,
24837 13,
24838 OPC_CheckChild0Integer, 88|128,102,
24839 OPC_RecordChild1,
24840 OPC_RecordChild2,
24841 OPC_CheckPatternPredicate0,
24842 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKOD_W),
24843 66, 2, 0, 1,
24844 13,
24845 OPC_CheckChild0Integer, 28|128,100,
24846 OPC_RecordChild1,
24847 OPC_RecordChild2,
24848 OPC_CheckPatternPredicate0,
24849 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVL_W),
24850 66, 2, 0, 1,
24851 13,
24852 OPC_CheckChild0Integer, 20|128,100,
24853 OPC_RecordChild1,
24854 OPC_RecordChild2,
24855 OPC_CheckPatternPredicate0,
24856 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVH_W),
24857 66, 2, 0, 1,
24858 13,
24859 OPC_CheckChild0Integer, 66|128,102,
24860 OPC_RecordChild1,
24861 OPC_RecordChild2,
24862 OPC_CheckPatternPredicate0,
24863 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERM_W),
24864 66, 2, 0, 1,
24865 13,
24866 OPC_CheckChild0Integer, 124|128,95,
24867 OPC_RecordChild1,
24868 OPC_RecordChild2,
24869 OPC_CheckPatternPredicate0,
24870 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADD_Q),
24871 83, 2, 0, 1,
24872 13,
24873 OPC_CheckChild0Integer, 82|128,106,
24874 OPC_RecordChild1,
24875 OPC_RecordChild2,
24876 OPC_CheckPatternPredicate0,
24877 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUB_Q),
24878 83, 2, 0, 1,
24879 13,
24880 OPC_CheckChild0Integer, 40|128,103,
24881 OPC_RecordChild1,
24882 OPC_RecordChild2,
24883 OPC_CheckPatternPredicate0,
24884 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSADD_D),
24885 83, 2, 0, 1,
24886 13,
24887 OPC_CheckChild0Integer, 42|128,103,
24888 OPC_RecordChild1,
24889 OPC_RecordChild2,
24890 OPC_CheckPatternPredicate0,
24891 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSADD_DU),
24892 83, 2, 0, 1,
24893 13,
24894 OPC_CheckChild0Integer, 52|128,106,
24895 OPC_RecordChild1,
24896 OPC_RecordChild2,
24897 OPC_CheckPatternPredicate0,
24898 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSUB_D),
24899 83, 2, 0, 1,
24900 13,
24901 OPC_CheckChild0Integer, 54|128,106,
24902 OPC_RecordChild1,
24903 OPC_RecordChild2,
24904 OPC_CheckPatternPredicate0,
24905 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSUB_DU),
24906 83, 2, 0, 1,
24907 13,
24908 OPC_CheckChild0Integer, 118|128,99,
24909 OPC_RecordChild1,
24910 OPC_RecordChild2,
24911 OPC_CheckPatternPredicate0,
24912 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHADDW_Q_D),
24913 83, 2, 0, 1,
24914 13,
24915 OPC_CheckChild0Integer, 120|128,99,
24916 OPC_RecordChild1,
24917 OPC_RecordChild2,
24918 OPC_CheckPatternPredicate0,
24919 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHADDW_QU_DU),
24920 83, 2, 0, 1,
24921 13,
24922 OPC_CheckChild0Integer, 6|128,100,
24923 OPC_RecordChild1,
24924 OPC_RecordChild2,
24925 OPC_CheckPatternPredicate0,
24926 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHSUBW_Q_D),
24927 83, 2, 0, 1,
24928 13,
24929 OPC_CheckChild0Integer, 8|128,100,
24930 OPC_RecordChild1,
24931 OPC_RecordChild2,
24932 OPC_CheckPatternPredicate0,
24933 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVHSUBW_QU_DU),
24934 83, 2, 0, 1,
24935 13,
24936 OPC_CheckChild0Integer, 28|128,96,
24937 OPC_RecordChild1,
24938 OPC_RecordChild2,
24939 OPC_CheckPatternPredicate0,
24940 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_Q_D),
24941 83, 2, 0, 1,
24942 13,
24943 OPC_CheckChild0Integer, 52|128,96,
24944 OPC_RecordChild1,
24945 OPC_RecordChild2,
24946 OPC_CheckPatternPredicate0,
24947 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_Q_D),
24948 83, 2, 0, 1,
24949 13,
24950 OPC_CheckChild0Integer, 102|128,106,
24951 OPC_RecordChild1,
24952 OPC_RecordChild2,
24953 OPC_CheckPatternPredicate0,
24954 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWEV_Q_D),
24955 83, 2, 0, 1,
24956 13,
24957 OPC_CheckChild0Integer, 118|128,106,
24958 OPC_RecordChild1,
24959 OPC_RecordChild2,
24960 OPC_CheckPatternPredicate0,
24961 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWOD_Q_D),
24962 83, 2, 0, 1,
24963 13,
24964 OPC_CheckChild0Integer, 30|128,96,
24965 OPC_RecordChild1,
24966 OPC_RecordChild2,
24967 OPC_CheckPatternPredicate0,
24968 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_Q_DU),
24969 83, 2, 0, 1,
24970 13,
24971 OPC_CheckChild0Integer, 54|128,96,
24972 OPC_RecordChild1,
24973 OPC_RecordChild2,
24974 OPC_CheckPatternPredicate0,
24975 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_Q_DU),
24976 83, 2, 0, 1,
24977 13,
24978 OPC_CheckChild0Integer, 104|128,106,
24979 OPC_RecordChild1,
24980 OPC_RecordChild2,
24981 OPC_CheckPatternPredicate0,
24982 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWEV_Q_DU),
24983 83, 2, 0, 1,
24984 13,
24985 OPC_CheckChild0Integer, 120|128,106,
24986 OPC_RecordChild1,
24987 OPC_RecordChild2,
24988 OPC_CheckPatternPredicate0,
24989 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBWOD_Q_DU),
24990 83, 2, 0, 1,
24991 13,
24992 OPC_CheckChild0Integer, 32|128,96,
24993 OPC_RecordChild1,
24994 OPC_RecordChild2,
24995 OPC_CheckPatternPredicate0,
24996 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWEV_Q_DU_D),
24997 83, 2, 0, 1,
24998 13,
24999 OPC_CheckChild0Integer, 56|128,96,
25000 OPC_RecordChild1,
25001 OPC_RecordChild2,
25002 OPC_CheckPatternPredicate0,
25003 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDWOD_Q_DU_D),
25004 83, 2, 0, 1,
25005 13,
25006 OPC_CheckChild0Integer, 74|128,96,
25007 OPC_RecordChild1,
25008 OPC_RecordChild2,
25009 OPC_CheckPatternPredicate0,
25010 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVG_D),
25011 83, 2, 0, 1,
25012 13,
25013 OPC_CheckChild0Integer, 76|128,96,
25014 OPC_RecordChild1,
25015 OPC_RecordChild2,
25016 OPC_CheckPatternPredicate0,
25017 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVG_DU),
25018 83, 2, 0, 1,
25019 13,
25020 OPC_CheckChild0Integer, 90|128,96,
25021 OPC_RecordChild1,
25022 OPC_RecordChild2,
25023 OPC_CheckPatternPredicate0,
25024 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVGR_D),
25025 83, 2, 0, 1,
25026 13,
25027 OPC_CheckChild0Integer, 92|128,96,
25028 OPC_RecordChild1,
25029 OPC_RecordChild2,
25030 OPC_CheckPatternPredicate0,
25031 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVAVGR_DU),
25032 83, 2, 0, 1,
25033 13,
25034 OPC_CheckChild0Integer, 106|128,95,
25035 OPC_RecordChild1,
25036 OPC_RecordChild2,
25037 OPC_CheckPatternPredicate0,
25038 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_D),
25039 83, 2, 0, 1,
25040 13,
25041 OPC_CheckChild0Integer, 108|128,95,
25042 OPC_RecordChild1,
25043 OPC_RecordChild2,
25044 OPC_CheckPatternPredicate0,
25045 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_DU),
25046 83, 2, 0, 1,
25047 13,
25048 OPC_CheckChild0Integer, 2|128,96,
25049 OPC_RecordChild1,
25050 OPC_RecordChild2,
25051 OPC_CheckPatternPredicate0,
25052 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVADDA_D),
25053 83, 2, 0, 1,
25054 13,
25055 OPC_CheckChild0Integer, 84|128,101,
25056 OPC_RecordChild1,
25057 OPC_RecordChild2,
25058 OPC_CheckPatternPredicate0,
25059 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_D),
25060 83, 2, 0, 1,
25061 13,
25062 OPC_CheckChild0Integer, 86|128,101,
25063 OPC_RecordChild1,
25064 OPC_RecordChild2,
25065 OPC_CheckPatternPredicate0,
25066 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_DU),
25067 83, 2, 0, 1,
25068 13,
25069 OPC_CheckChild0Integer, 116|128,101,
25070 OPC_RecordChild1,
25071 OPC_RecordChild2,
25072 OPC_CheckPatternPredicate0,
25073 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_Q_D),
25074 83, 2, 0, 1,
25075 13,
25076 OPC_CheckChild0Integer, 12|128,102,
25077 OPC_RecordChild1,
25078 OPC_RecordChild2,
25079 OPC_CheckPatternPredicate0,
25080 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_Q_D),
25081 83, 2, 0, 1,
25082 13,
25083 OPC_CheckChild0Integer, 118|128,101,
25084 OPC_RecordChild1,
25085 OPC_RecordChild2,
25086 OPC_CheckPatternPredicate0,
25087 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_Q_DU),
25088 83, 2, 0, 1,
25089 13,
25090 OPC_CheckChild0Integer, 14|128,102,
25091 OPC_RecordChild1,
25092 OPC_RecordChild2,
25093 OPC_CheckPatternPredicate0,
25094 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_Q_DU),
25095 83, 2, 0, 1,
25096 13,
25097 OPC_CheckChild0Integer, 120|128,101,
25098 OPC_RecordChild1,
25099 OPC_RecordChild2,
25100 OPC_CheckPatternPredicate0,
25101 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWEV_Q_DU_D),
25102 83, 2, 0, 1,
25103 13,
25104 OPC_CheckChild0Integer, 16|128,102,
25105 OPC_RecordChild1,
25106 OPC_RecordChild2,
25107 OPC_CheckPatternPredicate0,
25108 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMULWOD_Q_DU_D),
25109 83, 2, 0, 1,
25110 13,
25111 OPC_CheckChild0Integer, 102|128,103,
25112 OPC_RecordChild1,
25113 OPC_RecordChild2,
25114 OPC_CheckPatternPredicate0,
25115 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSIGNCOV_D),
25116 83, 2, 0, 1,
25117 13,
25118 OPC_CheckChild0Integer, 22|128,103,
25119 OPC_RecordChild1,
25120 OPC_RecordChild2,
25121 OPC_CheckPatternPredicate0,
25122 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVROTR_D),
25123 83, 2, 0, 1,
25124 13,
25125 OPC_CheckChild0Integer, 36|128,105,
25126 OPC_RecordChild1,
25127 OPC_RecordChild2,
25128 OPC_CheckPatternPredicate0,
25129 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLR_D),
25130 83, 2, 0, 1,
25131 13,
25132 OPC_CheckChild0Integer, 104|128,104,
25133 OPC_RecordChild1,
25134 OPC_RecordChild2,
25135 OPC_CheckPatternPredicate0,
25136 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAR_D),
25137 83, 2, 0, 1,
25138 13,
25139 OPC_CheckChild0Integer, 24|128,105,
25140 OPC_RecordChild1,
25141 OPC_RecordChild2,
25142 OPC_CheckPatternPredicate0,
25143 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLN_W_D),
25144 66, 2, 0, 1,
25145 13,
25146 OPC_CheckChild0Integer, 92|128,104,
25147 OPC_RecordChild1,
25148 OPC_RecordChild2,
25149 OPC_CheckPatternPredicate0,
25150 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAN_W_D),
25151 66, 2, 0, 1,
25152 13,
25153 OPC_CheckChild0Integer, 54|128,105,
25154 OPC_RecordChild1,
25155 OPC_RecordChild2,
25156 OPC_CheckPatternPredicate0,
25157 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLRN_W_D),
25158 66, 2, 0, 1,
25159 13,
25160 OPC_CheckChild0Integer, 122|128,104,
25161 OPC_RecordChild1,
25162 OPC_RecordChild2,
25163 OPC_CheckPatternPredicate0,
25164 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRARN_W_D),
25165 66, 2, 0, 1,
25166 13,
25167 OPC_CheckChild0Integer, 0|128,106,
25168 OPC_RecordChild1,
25169 OPC_RecordChild2,
25170 OPC_CheckPatternPredicate0,
25171 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLN_W_D),
25172 66, 2, 0, 1,
25173 13,
25174 OPC_CheckChild0Integer, 72|128,105,
25175 OPC_RecordChild1,
25176 OPC_RecordChild2,
25177 OPC_CheckPatternPredicate0,
25178 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRAN_W_D),
25179 66, 2, 0, 1,
25180 13,
25181 OPC_CheckChild0Integer, 2|128,106,
25182 OPC_RecordChild1,
25183 OPC_RecordChild2,
25184 OPC_CheckPatternPredicate0,
25185 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLN_WU_D),
25186 66, 2, 0, 1,
25187 13,
25188 OPC_CheckChild0Integer, 74|128,105,
25189 OPC_RecordChild1,
25190 OPC_RecordChild2,
25191 OPC_CheckPatternPredicate0,
25192 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRAN_WU_D),
25193 66, 2, 0, 1,
25194 13,
25195 OPC_CheckChild0Integer, 28|128,106,
25196 OPC_RecordChild1,
25197 OPC_RecordChild2,
25198 OPC_CheckPatternPredicate0,
25199 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRN_W_D),
25200 66, 2, 0, 1,
25201 13,
25202 OPC_CheckChild0Integer, 100|128,105,
25203 OPC_RecordChild1,
25204 OPC_RecordChild2,
25205 OPC_CheckPatternPredicate0,
25206 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARN_W_D),
25207 66, 2, 0, 1,
25208 13,
25209 OPC_CheckChild0Integer, 30|128,106,
25210 OPC_RecordChild1,
25211 OPC_RecordChild2,
25212 OPC_CheckPatternPredicate0,
25213 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRLRN_WU_D),
25214 66, 2, 0, 1,
25215 13,
25216 OPC_CheckChild0Integer, 102|128,105,
25217 OPC_RecordChild1,
25218 OPC_RecordChild2,
25219 OPC_CheckPatternPredicate0,
25220 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSSRARN_WU_D),
25221 66, 2, 0, 1,
25222 13,
25223 OPC_CheckChild0Integer, 70|128,103,
25224 OPC_RecordChild1,
25225 OPC_RecordChild2,
25226 OPC_CheckPatternPredicate0,
25227 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQ_D),
25228 83, 2, 0, 1,
25229 13,
25230 OPC_CheckChild0Integer, 112|128,103,
25231 OPC_RecordChild1,
25232 OPC_RecordChild2,
25233 OPC_CheckPatternPredicate0,
25234 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_D),
25235 83, 2, 0, 1,
25236 13,
25237 OPC_CheckChild0Integer, 114|128,103,
25238 OPC_RecordChild1,
25239 OPC_RecordChild2,
25240 OPC_CheckPatternPredicate0,
25241 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_DU),
25242 83, 2, 0, 1,
25243 13,
25244 OPC_CheckChild0Integer, 44|128,104,
25245 OPC_RecordChild1,
25246 OPC_RecordChild2,
25247 OPC_CheckPatternPredicate0,
25248 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_D),
25249 83, 2, 0, 1,
25250 13,
25251 OPC_CheckChild0Integer, 46|128,104,
25252 OPC_RecordChild1,
25253 OPC_RecordChild2,
25254 OPC_CheckPatternPredicate0,
25255 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_DU),
25256 83, 2, 0, 1,
25257 13,
25258 OPC_CheckChild0Integer, 44|128,102,
25259 OPC_RecordChild1,
25260 OPC_RecordChild2,
25261 OPC_CheckPatternPredicate0,
25262 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKEV_D),
25263 83, 2, 0, 1,
25264 13,
25265 OPC_CheckChild0Integer, 52|128,102,
25266 OPC_RecordChild1,
25267 OPC_RecordChild2,
25268 OPC_CheckPatternPredicate0,
25269 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKOD_D),
25270 83, 2, 0, 1,
25271 13,
25272 OPC_CheckChild0Integer, 76|128,102,
25273 OPC_RecordChild1,
25274 OPC_RecordChild2,
25275 OPC_CheckPatternPredicate0,
25276 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKEV_D),
25277 83, 2, 0, 1,
25278 13,
25279 OPC_CheckChild0Integer, 84|128,102,
25280 OPC_RecordChild1,
25281 OPC_RecordChild2,
25282 OPC_CheckPatternPredicate0,
25283 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKOD_D),
25284 83, 2, 0, 1,
25285 13,
25286 OPC_CheckChild0Integer, 24|128,100,
25287 OPC_RecordChild1,
25288 OPC_RecordChild2,
25289 OPC_CheckPatternPredicate0,
25290 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVL_D),
25291 83, 2, 0, 1,
25292 13,
25293 OPC_CheckChild0Integer, 16|128,100,
25294 OPC_RecordChild1,
25295 OPC_RecordChild2,
25296 OPC_CheckPatternPredicate0,
25297 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVH_D),
25298 83, 2, 0, 1,
25299 15,
25300 OPC_CheckChild0Integer, 66|128,100,
25301 OPC_RecordChild1,
25302 OPC_RecordChild2,
25303 OPC_RecordChild3,
25304 OPC_CheckPatternPredicate0,
25305 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_H_B),
25306 52, 3, 0, 1, 2,
25307 15,
25308 OPC_CheckChild0Integer, 90|128,100,
25309 OPC_RecordChild1,
25310 OPC_RecordChild2,
25311 OPC_RecordChild3,
25312 OPC_CheckPatternPredicate0,
25313 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_H_B),
25314 52, 3, 0, 1, 2,
25315 15,
25316 OPC_CheckChild0Integer, 68|128,100,
25317 OPC_RecordChild1,
25318 OPC_RecordChild2,
25319 OPC_RecordChild3,
25320 OPC_CheckPatternPredicate0,
25321 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_H_BU),
25322 52, 3, 0, 1, 2,
25323 15,
25324 OPC_CheckChild0Integer, 92|128,100,
25325 OPC_RecordChild1,
25326 OPC_RecordChild2,
25327 OPC_RecordChild3,
25328 OPC_CheckPatternPredicate0,
25329 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_H_BU),
25330 52, 3, 0, 1, 2,
25331 15,
25332 OPC_CheckChild0Integer, 70|128,100,
25333 OPC_RecordChild1,
25334 OPC_RecordChild2,
25335 OPC_RecordChild3,
25336 OPC_CheckPatternPredicate0,
25337 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_H_BU_B),
25338 52, 3, 0, 1, 2,
25339 15,
25340 OPC_CheckChild0Integer, 94|128,100,
25341 OPC_RecordChild1,
25342 OPC_RecordChild2,
25343 OPC_RecordChild3,
25344 OPC_CheckPatternPredicate0,
25345 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_H_BU_B),
25346 52, 3, 0, 1, 2,
25347 15,
25348 OPC_CheckChild0Integer, 78|128,100,
25349 OPC_RecordChild1,
25350 OPC_RecordChild2,
25351 OPC_RecordChild3,
25352 OPC_CheckPatternPredicate0,
25353 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_W_H),
25354 66, 3, 0, 1, 2,
25355 15,
25356 OPC_CheckChild0Integer, 102|128,100,
25357 OPC_RecordChild1,
25358 OPC_RecordChild2,
25359 OPC_RecordChild3,
25360 OPC_CheckPatternPredicate0,
25361 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_W_H),
25362 66, 3, 0, 1, 2,
25363 15,
25364 OPC_CheckChild0Integer, 80|128,100,
25365 OPC_RecordChild1,
25366 OPC_RecordChild2,
25367 OPC_RecordChild3,
25368 OPC_CheckPatternPredicate0,
25369 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_W_HU),
25370 66, 3, 0, 1, 2,
25371 15,
25372 OPC_CheckChild0Integer, 104|128,100,
25373 OPC_RecordChild1,
25374 OPC_RecordChild2,
25375 OPC_RecordChild3,
25376 OPC_CheckPatternPredicate0,
25377 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_W_HU),
25378 66, 3, 0, 1, 2,
25379 15,
25380 OPC_CheckChild0Integer, 82|128,100,
25381 OPC_RecordChild1,
25382 OPC_RecordChild2,
25383 OPC_RecordChild3,
25384 OPC_CheckPatternPredicate0,
25385 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_W_HU_H),
25386 66, 3, 0, 1, 2,
25387 15,
25388 OPC_CheckChild0Integer, 106|128,100,
25389 OPC_RecordChild1,
25390 OPC_RecordChild2,
25391 OPC_RecordChild3,
25392 OPC_CheckPatternPredicate0,
25393 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_W_HU_H),
25394 66, 3, 0, 1, 2,
25395 15,
25396 OPC_CheckChild0Integer, 60|128,100,
25397 OPC_RecordChild1,
25398 OPC_RecordChild2,
25399 OPC_RecordChild3,
25400 OPC_CheckPatternPredicate0,
25401 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_D_W),
25402 83, 3, 0, 1, 2,
25403 15,
25404 OPC_CheckChild0Integer, 84|128,100,
25405 OPC_RecordChild1,
25406 OPC_RecordChild2,
25407 OPC_RecordChild3,
25408 OPC_CheckPatternPredicate0,
25409 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_D_W),
25410 83, 3, 0, 1, 2,
25411 15,
25412 OPC_CheckChild0Integer, 62|128,100,
25413 OPC_RecordChild1,
25414 OPC_RecordChild2,
25415 OPC_RecordChild3,
25416 OPC_CheckPatternPredicate0,
25417 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_D_WU),
25418 83, 3, 0, 1, 2,
25419 15,
25420 OPC_CheckChild0Integer, 86|128,100,
25421 OPC_RecordChild1,
25422 OPC_RecordChild2,
25423 OPC_RecordChild3,
25424 OPC_CheckPatternPredicate0,
25425 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_D_WU),
25426 83, 3, 0, 1, 2,
25427 15,
25428 OPC_CheckChild0Integer, 64|128,100,
25429 OPC_RecordChild1,
25430 OPC_RecordChild2,
25431 OPC_RecordChild3,
25432 OPC_CheckPatternPredicate0,
25433 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_D_WU_W),
25434 83, 3, 0, 1, 2,
25435 15,
25436 OPC_CheckChild0Integer, 88|128,100,
25437 OPC_RecordChild1,
25438 OPC_RecordChild2,
25439 OPC_RecordChild3,
25440 OPC_CheckPatternPredicate0,
25441 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_D_WU_W),
25442 83, 3, 0, 1, 2,
25443 15,
25444 OPC_CheckChild0Integer, 72|128,100,
25445 OPC_RecordChild1,
25446 OPC_RecordChild2,
25447 OPC_RecordChild3,
25448 OPC_CheckPatternPredicate0,
25449 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_Q_D),
25450 83, 3, 0, 1, 2,
25451 15,
25452 OPC_CheckChild0Integer, 96|128,100,
25453 OPC_RecordChild1,
25454 OPC_RecordChild2,
25455 OPC_RecordChild3,
25456 OPC_CheckPatternPredicate0,
25457 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_Q_D),
25458 83, 3, 0, 1, 2,
25459 15,
25460 OPC_CheckChild0Integer, 74|128,100,
25461 OPC_RecordChild1,
25462 OPC_RecordChild2,
25463 OPC_RecordChild3,
25464 OPC_CheckPatternPredicate0,
25465 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_Q_DU),
25466 83, 3, 0, 1, 2,
25467 15,
25468 OPC_CheckChild0Integer, 98|128,100,
25469 OPC_RecordChild1,
25470 OPC_RecordChild2,
25471 OPC_RecordChild3,
25472 OPC_CheckPatternPredicate0,
25473 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_Q_DU),
25474 83, 3, 0, 1, 2,
25475 15,
25476 OPC_CheckChild0Integer, 76|128,100,
25477 OPC_RecordChild1,
25478 OPC_RecordChild2,
25479 OPC_RecordChild3,
25480 OPC_CheckPatternPredicate0,
25481 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWEV_Q_DU_D),
25482 83, 3, 0, 1, 2,
25483 15,
25484 OPC_CheckChild0Integer, 100|128,100,
25485 OPC_RecordChild1,
25486 OPC_RecordChild2,
25487 OPC_RecordChild3,
25488 OPC_CheckPatternPredicate0,
25489 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMADDWOD_Q_DU_D),
25490 83, 3, 0, 1, 2,
25491 11,
25492 OPC_CheckChild0Integer, 66|128,97,
25493 OPC_RecordChild1,
25494 OPC_CheckPatternPredicate0,
25495 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTH_H_B),
25496 52, 1, 0,
25497 11,
25498 OPC_CheckChild0Integer, 68|128,97,
25499 OPC_RecordChild1,
25500 OPC_CheckPatternPredicate0,
25501 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTH_HU_BU),
25502 52, 1, 0,
25503 11,
25504 OPC_CheckChild0Integer, 62|128,101,
25505 OPC_RecordChild1,
25506 OPC_CheckPatternPredicate0,
25507 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMSKLTZ_B),
25508 41, 1, 0,
25509 11,
25510 OPC_CheckChild0Integer, 60|128,101,
25511 OPC_RecordChild1,
25512 OPC_CheckPatternPredicate0,
25513 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMSKGEZ_B),
25514 41, 1, 0,
25515 11,
25516 OPC_CheckChild0Integer, 70|128,101,
25517 OPC_RecordChild1,
25518 OPC_CheckPatternPredicate0,
25519 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMSKNZ_B),
25520 41, 1, 0,
25521 11,
25522 OPC_CheckChild0Integer, 30|128,97,
25523 OPC_RecordChild1,
25524 OPC_CheckPatternPredicate0,
25525 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVCLO_B),
25526 41, 1, 0,
25527 11,
25528 OPC_CheckChild0Integer, 70|128,95,
25529 OPC_RecordChild1,
25530 OPC_CheckPatternPredicate0,
25531 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_H_B),
25532 52, 1, 0,
25533 11,
25534 OPC_CheckChild0Integer, 72|128,95,
25535 OPC_RecordChild1,
25536 OPC_CheckPatternPredicate0,
25537 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_HU_BU),
25538 52, 1, 0,
25539 11,
25540 OPC_CheckChild0Integer, 74|128,95,
25541 OPC_RecordChild1,
25542 OPC_CheckPatternPredicate0,
25543 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_W_B),
25544 66, 1, 0,
25545 11,
25546 OPC_CheckChild0Integer, 78|128,95,
25547 OPC_RecordChild1,
25548 OPC_CheckPatternPredicate0,
25549 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_WU_BU),
25550 66, 1, 0,
25551 11,
25552 OPC_CheckChild0Integer, 58|128,95,
25553 OPC_RecordChild1,
25554 OPC_CheckPatternPredicate0,
25555 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_D_B),
25556 83, 1, 0,
25557 11,
25558 OPC_CheckChild0Integer, 64|128,95,
25559 OPC_RecordChild1,
25560 OPC_CheckPatternPredicate0,
25561 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_DU_BU),
25562 83, 1, 0,
25563 11,
25564 OPC_CheckChild0Integer, 10|128,103,
25565 OPC_RecordChild1,
25566 OPC_CheckPatternPredicate0,
25567 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE0_B),
25568 41, 1, 0,
25569 11,
25570 OPC_CheckChild0Integer, 16|128,103,
25571 OPC_RecordChild1,
25572 OPC_CheckPatternPredicate0,
25573 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE0_Q),
25574 41, 1, 0,
25575 11,
25576 OPC_CheckChild0Integer, 74|128,97,
25577 OPC_RecordChild1,
25578 OPC_CheckPatternPredicate0,
25579 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTH_W_H),
25580 66, 1, 0,
25581 11,
25582 OPC_CheckChild0Integer, 76|128,97,
25583 OPC_RecordChild1,
25584 OPC_CheckPatternPredicate0,
25585 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTH_WU_HU),
25586 66, 1, 0,
25587 11,
25588 OPC_CheckChild0Integer, 66|128,101,
25589 OPC_RecordChild1,
25590 OPC_CheckPatternPredicate0,
25591 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMSKLTZ_H),
25592 52, 1, 0,
25593 11,
25594 OPC_CheckChild0Integer, 34|128,97,
25595 OPC_RecordChild1,
25596 OPC_CheckPatternPredicate0,
25597 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVCLO_H),
25598 52, 1, 0,
25599 11,
25600 OPC_CheckChild0Integer, 76|128,95,
25601 OPC_RecordChild1,
25602 OPC_CheckPatternPredicate0,
25603 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_W_H),
25604 66, 1, 0,
25605 11,
25606 OPC_CheckChild0Integer, 80|128,95,
25607 OPC_RecordChild1,
25608 OPC_CheckPatternPredicate0,
25609 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_WU_HU),
25610 66, 1, 0,
25611 11,
25612 OPC_CheckChild0Integer, 60|128,95,
25613 OPC_RecordChild1,
25614 OPC_CheckPatternPredicate0,
25615 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_D_H),
25616 83, 1, 0,
25617 11,
25618 OPC_CheckChild0Integer, 66|128,95,
25619 OPC_RecordChild1,
25620 OPC_CheckPatternPredicate0,
25621 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_DU_HU),
25622 83, 1, 0,
25623 11,
25624 OPC_CheckChild0Integer, 14|128,103,
25625 OPC_RecordChild1,
25626 OPC_CheckPatternPredicate0,
25627 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE0_H),
25628 52, 1, 0,
25629 11,
25630 OPC_CheckChild0Integer, 62|128,97,
25631 OPC_RecordChild1,
25632 OPC_CheckPatternPredicate0,
25633 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTH_D_W),
25634 83, 1, 0,
25635 11,
25636 OPC_CheckChild0Integer, 64|128,97,
25637 OPC_RecordChild1,
25638 OPC_CheckPatternPredicate0,
25639 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTH_DU_WU),
25640 83, 1, 0,
25641 11,
25642 OPC_CheckChild0Integer, 68|128,101,
25643 OPC_RecordChild1,
25644 OPC_CheckPatternPredicate0,
25645 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMSKLTZ_W),
25646 66, 1, 0,
25647 11,
25648 OPC_CheckChild0Integer, 36|128,97,
25649 OPC_RecordChild1,
25650 OPC_CheckPatternPredicate0,
25651 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVCLO_W),
25652 66, 1, 0,
25653 11,
25654 OPC_CheckChild0Integer, 62|128,95,
25655 OPC_RecordChild1,
25656 OPC_CheckPatternPredicate0,
25657 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_D_W),
25658 83, 1, 0,
25659 11,
25660 OPC_CheckChild0Integer, 68|128,95,
25661 OPC_RecordChild1,
25662 OPC_CheckPatternPredicate0,
25663 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_DU_WU),
25664 83, 1, 0,
25665 11,
25666 OPC_CheckChild0Integer, 18|128,103,
25667 OPC_RecordChild1,
25668 OPC_CheckPatternPredicate0,
25669 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE0_W),
25670 66, 1, 0,
25671 11,
25672 OPC_CheckChild0Integer, 70|128,97,
25673 OPC_RecordChild1,
25674 OPC_CheckPatternPredicate0,
25675 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTH_Q_D),
25676 83, 1, 0,
25677 11,
25678 OPC_CheckChild0Integer, 72|128,97,
25679 OPC_RecordChild1,
25680 OPC_CheckPatternPredicate0,
25681 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTH_QU_DU),
25682 83, 1, 0,
25683 11,
25684 OPC_CheckChild0Integer, 64|128,101,
25685 OPC_RecordChild1,
25686 OPC_CheckPatternPredicate0,
25687 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMSKLTZ_D),
25688 83, 1, 0,
25689 11,
25690 OPC_CheckChild0Integer, 78|128,97,
25691 OPC_RecordChild1,
25692 OPC_CheckPatternPredicate0,
25693 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTL_Q_D),
25694 83, 1, 0,
25695 11,
25696 OPC_CheckChild0Integer, 80|128,97,
25697 OPC_RecordChild1,
25698 OPC_CheckPatternPredicate0,
25699 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVEXTL_QU_DU),
25700 83, 1, 0,
25701 11,
25702 OPC_CheckChild0Integer, 32|128,97,
25703 OPC_RecordChild1,
25704 OPC_CheckPatternPredicate0,
25705 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVCLO_D),
25706 83, 1, 0,
25707 11,
25708 OPC_CheckChild0Integer, 12|128,103,
25709 OPC_RecordChild1,
25710 OPC_CheckPatternPredicate0,
25711 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE0_D),
25712 83, 1, 0,
25713 15,
25714 OPC_CheckChild0Integer, 36|128,99,
25715 OPC_RecordChild1,
25716 OPC_RecordChild2,
25717 OPC_RecordChild3,
25718 OPC_CheckPatternPredicate0,
25719 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSTP_B),
25720 41, 3, 0, 1, 2,
25721 15,
25722 OPC_CheckChild0Integer, 6|128,97,
25723 OPC_RecordChild1,
25724 OPC_RecordChild2,
25725 OPC_RecordChild3,
25726 OPC_CheckPatternPredicate0,
25727 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSEL_V),
25728 41, 3, 0, 1, 2,
25729 15,
25730 OPC_CheckChild0Integer, 84|128,103,
25731 OPC_RecordChild1,
25732 OPC_RecordChild2,
25733 OPC_RecordChild3,
25734 OPC_CheckPatternPredicate0,
25735 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF_B),
25736 41, 3, 0, 1, 2,
25737 15,
25738 OPC_CheckChild0Integer, 38|128,99,
25739 OPC_RecordChild1,
25740 OPC_RecordChild2,
25741 OPC_RecordChild3,
25742 OPC_CheckPatternPredicate0,
25743 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSTP_H),
25744 52, 3, 0, 1, 2,
25745 15,
25746 OPC_CheckChild0Integer, 88|128,103,
25747 OPC_RecordChild1,
25748 OPC_RecordChild2,
25749 OPC_RecordChild3,
25750 OPC_CheckPatternPredicate0,
25751 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF_H),
25752 52, 3, 0, 1, 2,
25753 15,
25754 OPC_CheckChild0Integer, 90|128,103,
25755 OPC_RecordChild1,
25756 OPC_RecordChild2,
25757 OPC_RecordChild3,
25758 OPC_CheckPatternPredicate0,
25759 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF_W),
25760 66, 3, 0, 1, 2,
25761 15,
25762 OPC_CheckChild0Integer, 86|128,103,
25763 OPC_RecordChild1,
25764 OPC_RecordChild2,
25765 OPC_RecordChild3,
25766 OPC_CheckPatternPredicate0,
25767 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF_D),
25768 83, 3, 0, 1, 2,
25769 13,
25770 OPC_CheckChild0Integer, 58|128,98,
25771 OPC_RecordChild1,
25772 OPC_RecordChild2,
25773 OPC_CheckPatternPredicate0,
25774 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCVT_H_S),
25775 52, 2, 0, 1,
25776 13,
25777 OPC_CheckChild0Integer, 100|128,97,
25778 OPC_RecordChild1,
25779 OPC_RecordChild2,
25780 OPC_CheckPatternPredicate0,
25781 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CAF_S),
25782 66, 2, 0, 1,
25783 13,
25784 OPC_CheckChild0Integer, 8|128,98,
25785 OPC_RecordChild1,
25786 OPC_RecordChild2,
25787 OPC_CheckPatternPredicate0,
25788 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUN_S),
25789 66, 2, 0, 1,
25790 13,
25791 OPC_CheckChild0Integer, 104|128,97,
25792 OPC_RecordChild1,
25793 OPC_RecordChild2,
25794 OPC_CheckPatternPredicate0,
25795 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CEQ_S),
25796 66, 2, 0, 1,
25797 13,
25798 OPC_CheckChild0Integer, 124|128,97,
25799 OPC_RecordChild1,
25800 OPC_RecordChild2,
25801 OPC_CheckPatternPredicate0,
25802 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUEQ_S),
25803 66, 2, 0, 1,
25804 13,
25805 OPC_CheckChild0Integer, 112|128,97,
25806 OPC_RecordChild1,
25807 OPC_RecordChild2,
25808 OPC_CheckPatternPredicate0,
25809 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLT_S),
25810 66, 2, 0, 1,
25811 13,
25812 OPC_CheckChild0Integer, 4|128,98,
25813 OPC_RecordChild1,
25814 OPC_RecordChild2,
25815 OPC_CheckPatternPredicate0,
25816 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CULT_S),
25817 66, 2, 0, 1,
25818 13,
25819 OPC_CheckChild0Integer, 108|128,97,
25820 OPC_RecordChild1,
25821 OPC_RecordChild2,
25822 OPC_CheckPatternPredicate0,
25823 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLE_S),
25824 66, 2, 0, 1,
25825 13,
25826 OPC_CheckChild0Integer, 0|128,98,
25827 OPC_RecordChild1,
25828 OPC_RecordChild2,
25829 OPC_CheckPatternPredicate0,
25830 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CULE_S),
25831 66, 2, 0, 1,
25832 13,
25833 OPC_CheckChild0Integer, 116|128,97,
25834 OPC_RecordChild1,
25835 OPC_RecordChild2,
25836 OPC_CheckPatternPredicate0,
25837 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CNE_S),
25838 66, 2, 0, 1,
25839 13,
25840 OPC_CheckChild0Integer, 120|128,97,
25841 OPC_RecordChild1,
25842 OPC_RecordChild2,
25843 OPC_CheckPatternPredicate0,
25844 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_COR_S),
25845 66, 2, 0, 1,
25846 13,
25847 OPC_CheckChild0Integer, 12|128,98,
25848 OPC_RecordChild1,
25849 OPC_RecordChild2,
25850 OPC_CheckPatternPredicate0,
25851 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUNE_S),
25852 66, 2, 0, 1,
25853 13,
25854 OPC_CheckChild0Integer, 16|128,98,
25855 OPC_RecordChild1,
25856 OPC_RecordChild2,
25857 OPC_CheckPatternPredicate0,
25858 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SAF_S),
25859 66, 2, 0, 1,
25860 13,
25861 OPC_CheckChild0Integer, 52|128,98,
25862 OPC_RecordChild1,
25863 OPC_RecordChild2,
25864 OPC_CheckPatternPredicate0,
25865 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SUN_S),
25866 66, 2, 0, 1,
25867 13,
25868 OPC_CheckChild0Integer, 20|128,98,
25869 OPC_RecordChild1,
25870 OPC_RecordChild2,
25871 OPC_CheckPatternPredicate0,
25872 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SEQ_S),
25873 66, 2, 0, 1,
25874 13,
25875 OPC_CheckChild0Integer, 40|128,98,
25876 OPC_RecordChild1,
25877 OPC_RecordChild2,
25878 OPC_CheckPatternPredicate0,
25879 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SUEQ_S),
25880 66, 2, 0, 1,
25881 13,
25882 OPC_CheckChild0Integer, 28|128,98,
25883 OPC_RecordChild1,
25884 OPC_RecordChild2,
25885 OPC_CheckPatternPredicate0,
25886 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SLT_S),
25887 66, 2, 0, 1,
25888 13,
25889 OPC_CheckChild0Integer, 48|128,98,
25890 OPC_RecordChild1,
25891 OPC_RecordChild2,
25892 OPC_CheckPatternPredicate0,
25893 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SULT_S),
25894 66, 2, 0, 1,
25895 13,
25896 OPC_CheckChild0Integer, 24|128,98,
25897 OPC_RecordChild1,
25898 OPC_RecordChild2,
25899 OPC_CheckPatternPredicate0,
25900 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SLE_S),
25901 66, 2, 0, 1,
25902 13,
25903 OPC_CheckChild0Integer, 44|128,98,
25904 OPC_RecordChild1,
25905 OPC_RecordChild2,
25906 OPC_CheckPatternPredicate0,
25907 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SULE_S),
25908 66, 2, 0, 1,
25909 13,
25910 OPC_CheckChild0Integer, 32|128,98,
25911 OPC_RecordChild1,
25912 OPC_RecordChild2,
25913 OPC_CheckPatternPredicate0,
25914 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SNE_S),
25915 66, 2, 0, 1,
25916 13,
25917 OPC_CheckChild0Integer, 36|128,98,
25918 OPC_RecordChild1,
25919 OPC_RecordChild2,
25920 OPC_CheckPatternPredicate0,
25921 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SOR_S),
25922 66, 2, 0, 1,
25923 13,
25924 OPC_CheckChild0Integer, 56|128,98,
25925 OPC_RecordChild1,
25926 OPC_RecordChild2,
25927 OPC_CheckPatternPredicate0,
25928 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SUNE_S),
25929 66, 2, 0, 1,
25930 13,
25931 OPC_CheckChild0Integer, 78|128,99,
25932 OPC_RecordChild1,
25933 OPC_RecordChild2,
25934 OPC_CheckPatternPredicate0,
25935 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRNE_W_D),
25936 66, 2, 0, 1,
25937 13,
25938 OPC_CheckChild0Integer, 100|128,99,
25939 OPC_RecordChild1,
25940 OPC_RecordChild2,
25941 OPC_CheckPatternPredicate0,
25942 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRZ_W_D),
25943 66, 2, 0, 1,
25944 13,
25945 OPC_CheckChild0Integer, 88|128,99,
25946 OPC_RecordChild1,
25947 OPC_RecordChild2,
25948 OPC_CheckPatternPredicate0,
25949 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRP_W_D),
25950 66, 2, 0, 1,
25951 13,
25952 OPC_CheckChild0Integer, 68|128,99,
25953 OPC_RecordChild1,
25954 OPC_RecordChild2,
25955 OPC_CheckPatternPredicate0,
25956 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRM_W_D),
25957 66, 2, 0, 1,
25958 13,
25959 OPC_CheckChild0Integer, 56|128,99,
25960 OPC_RecordChild1,
25961 OPC_RecordChild2,
25962 OPC_CheckPatternPredicate0,
25963 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINT_W_D),
25964 66, 2, 0, 1,
25965 13,
25966 OPC_CheckChild0Integer, 98|128,97,
25967 OPC_RecordChild1,
25968 OPC_RecordChild2,
25969 OPC_CheckPatternPredicate0,
25970 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CAF_D),
25971 83, 2, 0, 1,
25972 13,
25973 OPC_CheckChild0Integer, 6|128,98,
25974 OPC_RecordChild1,
25975 OPC_RecordChild2,
25976 OPC_CheckPatternPredicate0,
25977 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUN_D),
25978 83, 2, 0, 1,
25979 13,
25980 OPC_CheckChild0Integer, 102|128,97,
25981 OPC_RecordChild1,
25982 OPC_RecordChild2,
25983 OPC_CheckPatternPredicate0,
25984 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CEQ_D),
25985 83, 2, 0, 1,
25986 13,
25987 OPC_CheckChild0Integer, 122|128,97,
25988 OPC_RecordChild1,
25989 OPC_RecordChild2,
25990 OPC_CheckPatternPredicate0,
25991 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUEQ_D),
25992 83, 2, 0, 1,
25993 13,
25994 OPC_CheckChild0Integer, 110|128,97,
25995 OPC_RecordChild1,
25996 OPC_RecordChild2,
25997 OPC_CheckPatternPredicate0,
25998 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLT_D),
25999 83, 2, 0, 1,
26000 13,
26001 OPC_CheckChild0Integer, 2|128,98,
26002 OPC_RecordChild1,
26003 OPC_RecordChild2,
26004 OPC_CheckPatternPredicate0,
26005 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CULT_D),
26006 83, 2, 0, 1,
26007 13,
26008 OPC_CheckChild0Integer, 106|128,97,
26009 OPC_RecordChild1,
26010 OPC_RecordChild2,
26011 OPC_CheckPatternPredicate0,
26012 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLE_D),
26013 83, 2, 0, 1,
26014 13,
26015 OPC_CheckChild0Integer, 126|128,97,
26016 OPC_RecordChild1,
26017 OPC_RecordChild2,
26018 OPC_CheckPatternPredicate0,
26019 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CULE_D),
26020 83, 2, 0, 1,
26021 13,
26022 OPC_CheckChild0Integer, 114|128,97,
26023 OPC_RecordChild1,
26024 OPC_RecordChild2,
26025 OPC_CheckPatternPredicate0,
26026 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CNE_D),
26027 83, 2, 0, 1,
26028 13,
26029 OPC_CheckChild0Integer, 118|128,97,
26030 OPC_RecordChild1,
26031 OPC_RecordChild2,
26032 OPC_CheckPatternPredicate0,
26033 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_COR_D),
26034 83, 2, 0, 1,
26035 13,
26036 OPC_CheckChild0Integer, 10|128,98,
26037 OPC_RecordChild1,
26038 OPC_RecordChild2,
26039 OPC_CheckPatternPredicate0,
26040 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUNE_D),
26041 83, 2, 0, 1,
26042 13,
26043 OPC_CheckChild0Integer, 14|128,98,
26044 OPC_RecordChild1,
26045 OPC_RecordChild2,
26046 OPC_CheckPatternPredicate0,
26047 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SAF_D),
26048 83, 2, 0, 1,
26049 13,
26050 OPC_CheckChild0Integer, 50|128,98,
26051 OPC_RecordChild1,
26052 OPC_RecordChild2,
26053 OPC_CheckPatternPredicate0,
26054 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SUN_D),
26055 83, 2, 0, 1,
26056 13,
26057 OPC_CheckChild0Integer, 18|128,98,
26058 OPC_RecordChild1,
26059 OPC_RecordChild2,
26060 OPC_CheckPatternPredicate0,
26061 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SEQ_D),
26062 83, 2, 0, 1,
26063 13,
26064 OPC_CheckChild0Integer, 38|128,98,
26065 OPC_RecordChild1,
26066 OPC_RecordChild2,
26067 OPC_CheckPatternPredicate0,
26068 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SUEQ_D),
26069 83, 2, 0, 1,
26070 13,
26071 OPC_CheckChild0Integer, 26|128,98,
26072 OPC_RecordChild1,
26073 OPC_RecordChild2,
26074 OPC_CheckPatternPredicate0,
26075 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SLT_D),
26076 83, 2, 0, 1,
26077 13,
26078 OPC_CheckChild0Integer, 46|128,98,
26079 OPC_RecordChild1,
26080 OPC_RecordChild2,
26081 OPC_CheckPatternPredicate0,
26082 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SULT_D),
26083 83, 2, 0, 1,
26084 13,
26085 OPC_CheckChild0Integer, 22|128,98,
26086 OPC_RecordChild1,
26087 OPC_RecordChild2,
26088 OPC_CheckPatternPredicate0,
26089 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SLE_D),
26090 83, 2, 0, 1,
26091 13,
26092 OPC_CheckChild0Integer, 42|128,98,
26093 OPC_RecordChild1,
26094 OPC_RecordChild2,
26095 OPC_CheckPatternPredicate0,
26096 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SULE_D),
26097 83, 2, 0, 1,
26098 13,
26099 OPC_CheckChild0Integer, 30|128,98,
26100 OPC_RecordChild1,
26101 OPC_RecordChild2,
26102 OPC_CheckPatternPredicate0,
26103 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SNE_D),
26104 83, 2, 0, 1,
26105 13,
26106 OPC_CheckChild0Integer, 34|128,98,
26107 OPC_RecordChild1,
26108 OPC_RecordChild2,
26109 OPC_CheckPatternPredicate0,
26110 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SOR_D),
26111 83, 2, 0, 1,
26112 13,
26113 OPC_CheckChild0Integer, 54|128,98,
26114 OPC_RecordChild1,
26115 OPC_RecordChild2,
26116 OPC_CheckPatternPredicate0,
26117 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_SUNE_D),
26118 83, 2, 0, 1,
26119 11,
26120 OPC_CheckChild0Integer, 96|128,97,
26121 OPC_RecordChild1,
26122 OPC_CheckPatternPredicate0,
26123 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCLASS_S),
26124 66, 1, 0,
26125 11,
26126 OPC_CheckChild0Integer, 80|128,99,
26127 OPC_RecordChild1,
26128 OPC_CheckPatternPredicate0,
26129 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRNE_W_S),
26130 66, 1, 0,
26131 11,
26132 OPC_CheckChild0Integer, 102|128,99,
26133 OPC_RecordChild1,
26134 OPC_CheckPatternPredicate0,
26135 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRZ_W_S),
26136 66, 1, 0,
26137 11,
26138 OPC_CheckChild0Integer, 90|128,99,
26139 OPC_RecordChild1,
26140 OPC_CheckPatternPredicate0,
26141 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRP_W_S),
26142 66, 1, 0,
26143 11,
26144 OPC_CheckChild0Integer, 70|128,99,
26145 OPC_RecordChild1,
26146 OPC_CheckPatternPredicate0,
26147 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRM_W_S),
26148 66, 1, 0,
26149 11,
26150 OPC_CheckChild0Integer, 58|128,99,
26151 OPC_RecordChild1,
26152 OPC_CheckPatternPredicate0,
26153 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINT_W_S),
26154 66, 1, 0,
26155 11,
26156 OPC_CheckChild0Integer, 104|128,99,
26157 OPC_RecordChild1,
26158 OPC_CheckPatternPredicate0,
26159 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRZ_WU_S),
26160 66, 1, 0,
26161 11,
26162 OPC_CheckChild0Integer, 60|128,99,
26163 OPC_RecordChild1,
26164 OPC_CheckPatternPredicate0,
26165 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINT_WU_S),
26166 66, 1, 0,
26167 11,
26168 OPC_CheckChild0Integer, 84|128,99,
26169 OPC_RecordChild1,
26170 OPC_CheckPatternPredicate0,
26171 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRNEL_L_S),
26172 83, 1, 0,
26173 11,
26174 OPC_CheckChild0Integer, 82|128,99,
26175 OPC_RecordChild1,
26176 OPC_CheckPatternPredicate0,
26177 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRNEH_L_S),
26178 83, 1, 0,
26179 11,
26180 OPC_CheckChild0Integer, 108|128,99,
26181 OPC_RecordChild1,
26182 OPC_CheckPatternPredicate0,
26183 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRZL_L_S),
26184 83, 1, 0,
26185 11,
26186 OPC_CheckChild0Integer, 106|128,99,
26187 OPC_RecordChild1,
26188 OPC_CheckPatternPredicate0,
26189 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRZH_L_S),
26190 83, 1, 0,
26191 11,
26192 OPC_CheckChild0Integer, 94|128,99,
26193 OPC_RecordChild1,
26194 OPC_CheckPatternPredicate0,
26195 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRPL_L_S),
26196 83, 1, 0,
26197 11,
26198 OPC_CheckChild0Integer, 92|128,99,
26199 OPC_RecordChild1,
26200 OPC_CheckPatternPredicate0,
26201 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRPH_L_S),
26202 83, 1, 0,
26203 11,
26204 OPC_CheckChild0Integer, 74|128,99,
26205 OPC_RecordChild1,
26206 OPC_CheckPatternPredicate0,
26207 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRML_L_S),
26208 83, 1, 0,
26209 11,
26210 OPC_CheckChild0Integer, 72|128,99,
26211 OPC_RecordChild1,
26212 OPC_CheckPatternPredicate0,
26213 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRMH_L_S),
26214 83, 1, 0,
26215 11,
26216 OPC_CheckChild0Integer, 64|128,99,
26217 OPC_RecordChild1,
26218 OPC_CheckPatternPredicate0,
26219 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTL_L_S),
26220 83, 1, 0,
26221 11,
26222 OPC_CheckChild0Integer, 62|128,99,
26223 OPC_RecordChild1,
26224 OPC_CheckPatternPredicate0,
26225 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTH_L_S),
26226 83, 1, 0,
26227 11,
26228 OPC_CheckChild0Integer, 94|128,97,
26229 OPC_RecordChild1,
26230 OPC_CheckPatternPredicate0,
26231 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCLASS_D),
26232 83, 1, 0,
26233 11,
26234 OPC_CheckChild0Integer, 76|128,99,
26235 OPC_RecordChild1,
26236 OPC_CheckPatternPredicate0,
26237 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRNE_L_D),
26238 83, 1, 0,
26239 11,
26240 OPC_CheckChild0Integer, 96|128,99,
26241 OPC_RecordChild1,
26242 OPC_CheckPatternPredicate0,
26243 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRZ_L_D),
26244 83, 1, 0,
26245 11,
26246 OPC_CheckChild0Integer, 86|128,99,
26247 OPC_RecordChild1,
26248 OPC_CheckPatternPredicate0,
26249 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRP_L_D),
26250 83, 1, 0,
26251 11,
26252 OPC_CheckChild0Integer, 66|128,99,
26253 OPC_RecordChild1,
26254 OPC_CheckPatternPredicate0,
26255 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRM_L_D),
26256 83, 1, 0,
26257 11,
26258 OPC_CheckChild0Integer, 52|128,99,
26259 OPC_RecordChild1,
26260 OPC_CheckPatternPredicate0,
26261 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINT_L_D),
26262 83, 1, 0,
26263 11,
26264 OPC_CheckChild0Integer, 98|128,99,
26265 OPC_RecordChild1,
26266 OPC_CheckPatternPredicate0,
26267 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRZ_LU_D),
26268 83, 1, 0,
26269 11,
26270 OPC_CheckChild0Integer, 54|128,99,
26271 OPC_RecordChild1,
26272 OPC_CheckPatternPredicate0,
26273 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINT_LU_D),
26274 83, 1, 0,
26275 36,
26276 OPC_CheckChild0Integer, 96|128,102,
26277 OPC_RecordChild1,
26278 OPC_RecordChild2,
26279 OPC_MoveChild2,
26280 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
26281 OPC_MoveParent,
26282 OPC_Scope, 11,
26283 OPC_CheckPatternPredicate3,
26284 OPC_EmitNodeXForm, 7, 1,
26285 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE_W),
26286 120, 2, 0, 2,
26287 11,
26288 OPC_CheckPatternPredicate5,
26289 OPC_EmitNodeXForm, 7, 1,
26290 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE_W),
26291 120, 2, 0, 2,
26292 0,
26293 38,
26294 OPC_CheckChild0Integer, 92|128,102,
26295 OPC_RecordChild1,
26296 OPC_RecordChild2,
26297 OPC_MoveChild2,
26298 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
26299 OPC_MoveParent,
26300 OPC_Scope, 12,
26301 OPC_CheckPatternPredicate3,
26302 OPC_EmitNodeXForm, 7, 1,
26303 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE_D),
26304 8|128,1, 2, 0, 2,
26305 12,
26306 OPC_CheckPatternPredicate5,
26307 OPC_EmitNodeXForm, 7, 1,
26308 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE_D),
26309 8|128,1, 2, 0, 2,
26310 0,
26311 13,
26312 OPC_CheckChild0Integer, 2|128,110,
26313 OPC_RecordChild1,
26314 OPC_RecordChild2,
26315 OPC_CheckPatternPredicate1,
26316 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFFINT_S_L),
26317 116, 2, 0, 1,
26318 11,
26319 OPC_CheckChild0Integer, 120|128,109,
26320 OPC_RecordChild1,
26321 OPC_CheckPatternPredicate1,
26322 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCVTL_S_H),
26323 116, 1, 0,
26324 11,
26325 OPC_CheckChild0Integer, 116|128,109,
26326 OPC_RecordChild1,
26327 OPC_CheckPatternPredicate1,
26328 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCVTH_S_H),
26329 116, 1, 0,
26330 11,
26331 OPC_CheckChild0Integer, 4|128,110,
26332 OPC_RecordChild1,
26333 OPC_CheckPatternPredicate1,
26334 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFFINT_S_W),
26335 116, 1, 0,
26336 11,
26337 OPC_CheckChild0Integer, 6|128,110,
26338 OPC_RecordChild1,
26339 OPC_CheckPatternPredicate1,
26340 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFFINT_S_WU),
26341 116, 1, 0,
26342 12,
26343 OPC_CheckChild0Integer, 10|128,110,
26344 OPC_RecordChild1,
26345 OPC_CheckPatternPredicate1,
26346 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFFINTL_D_W),
26347 6|128,1, 1, 0,
26348 12,
26349 OPC_CheckChild0Integer, 8|128,110,
26350 OPC_RecordChild1,
26351 OPC_CheckPatternPredicate1,
26352 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFFINTH_D_W),
26353 6|128,1, 1, 0,
26354 12,
26355 OPC_CheckChild0Integer, 126|128,109,
26356 OPC_RecordChild1,
26357 OPC_CheckPatternPredicate1,
26358 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFFINT_D_L),
26359 6|128,1, 1, 0,
26360 12,
26361 OPC_CheckChild0Integer, 0|128,110,
26362 OPC_RecordChild1,
26363 OPC_CheckPatternPredicate1,
26364 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFFINT_D_LU),
26365 6|128,1, 1, 0,
26366 15,
26367 OPC_CheckChild0Integer, 38|128,110,
26368 OPC_RecordChild1,
26369 OPC_RecordChild2,
26370 OPC_RecordChild3,
26371 OPC_CheckPatternPredicate1,
26372 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMSUB_S),
26373 116, 3, 0, 1, 2,
26374 15,
26375 OPC_CheckChild0Integer, 46|128,110,
26376 OPC_RecordChild1,
26377 OPC_RecordChild2,
26378 OPC_RecordChild3,
26379 OPC_CheckPatternPredicate1,
26380 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMADD_S),
26381 116, 3, 0, 1, 2,
26382 15,
26383 OPC_CheckChild0Integer, 50|128,110,
26384 OPC_RecordChild1,
26385 OPC_RecordChild2,
26386 OPC_RecordChild3,
26387 OPC_CheckPatternPredicate1,
26388 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMSUB_S),
26389 116, 3, 0, 1, 2,
26390 16,
26391 OPC_CheckChild0Integer, 36|128,110,
26392 OPC_RecordChild1,
26393 OPC_RecordChild2,
26394 OPC_RecordChild3,
26395 OPC_CheckPatternPredicate1,
26396 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMSUB_D),
26397 6|128,1, 3, 0, 1, 2,
26398 16,
26399 OPC_CheckChild0Integer, 44|128,110,
26400 OPC_RecordChild1,
26401 OPC_RecordChild2,
26402 OPC_RecordChild3,
26403 OPC_CheckPatternPredicate1,
26404 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMADD_D),
26405 6|128,1, 3, 0, 1, 2,
26406 16,
26407 OPC_CheckChild0Integer, 48|128,110,
26408 OPC_RecordChild1,
26409 OPC_RecordChild2,
26410 OPC_RecordChild3,
26411 OPC_CheckPatternPredicate1,
26412 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMSUB_D),
26413 6|128,1, 3, 0, 1, 2,
26414 13,
26415 OPC_CheckChild0Integer, 22|128,110,
26416 OPC_RecordChild1,
26417 OPC_RecordChild2,
26418 OPC_CheckPatternPredicate1,
26419 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMAX_S),
26420 116, 2, 0, 1,
26421 13,
26422 OPC_CheckChild0Integer, 30|128,110,
26423 OPC_RecordChild1,
26424 OPC_RecordChild2,
26425 OPC_CheckPatternPredicate1,
26426 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMIN_S),
26427 116, 2, 0, 1,
26428 13,
26429 OPC_CheckChild0Integer, 26|128,110,
26430 OPC_RecordChild1,
26431 OPC_RecordChild2,
26432 OPC_CheckPatternPredicate1,
26433 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMAXA_S),
26434 116, 2, 0, 1,
26435 13,
26436 OPC_CheckChild0Integer, 34|128,110,
26437 OPC_RecordChild1,
26438 OPC_RecordChild2,
26439 OPC_CheckPatternPredicate1,
26440 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMINA_S),
26441 116, 2, 0, 1,
26442 14,
26443 OPC_CheckChild0Integer, 20|128,110,
26444 OPC_RecordChild1,
26445 OPC_RecordChild2,
26446 OPC_CheckPatternPredicate1,
26447 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMAX_D),
26448 6|128,1, 2, 0, 1,
26449 14,
26450 OPC_CheckChild0Integer, 28|128,110,
26451 OPC_RecordChild1,
26452 OPC_RecordChild2,
26453 OPC_CheckPatternPredicate1,
26454 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMIN_D),
26455 6|128,1, 2, 0, 1,
26456 14,
26457 OPC_CheckChild0Integer, 24|128,110,
26458 OPC_RecordChild1,
26459 OPC_RecordChild2,
26460 OPC_CheckPatternPredicate1,
26461 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMAXA_D),
26462 6|128,1, 2, 0, 1,
26463 14,
26464 OPC_CheckChild0Integer, 32|128,110,
26465 OPC_RecordChild1,
26466 OPC_RecordChild2,
26467 OPC_CheckPatternPredicate1,
26468 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMINA_D),
26469 6|128,1, 2, 0, 1,
26470 13,
26471 OPC_CheckChild0Integer, 112|128,109,
26472 OPC_RecordChild1,
26473 OPC_RecordChild2,
26474 OPC_CheckPatternPredicate1,
26475 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCVT_S_D),
26476 116, 2, 0, 1,
26477 11,
26478 OPC_CheckChild0Integer, 14|128,110,
26479 OPC_RecordChild1,
26480 OPC_CheckPatternPredicate1,
26481 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFLOGB_S),
26482 116, 1, 0,
26483 11,
26484 OPC_CheckChild0Integer, 98|128,110,
26485 OPC_RecordChild1,
26486 OPC_CheckPatternPredicate1,
26487 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFSQRT_S),
26488 116, 1, 0,
26489 11,
26490 OPC_CheckChild0Integer, 54|128,110,
26491 OPC_RecordChild1,
26492 OPC_CheckPatternPredicate1,
26493 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRECIP_S),
26494 116, 1, 0,
26495 11,
26496 OPC_CheckChild0Integer, 82|128,110,
26497 OPC_RecordChild1,
26498 OPC_CheckPatternPredicate1,
26499 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSQRT_S),
26500 116, 1, 0,
26501 11,
26502 OPC_CheckChild0Integer, 62|128,110,
26503 OPC_RecordChild1,
26504 OPC_CheckPatternPredicate1,
26505 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRINT_S),
26506 116, 1, 0,
26507 12,
26508 OPC_CheckChild0Integer, 118|128,109,
26509 OPC_RecordChild1,
26510 OPC_CheckPatternPredicate1,
26511 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCVTL_D_S),
26512 6|128,1, 1, 0,
26513 12,
26514 OPC_CheckChild0Integer, 114|128,109,
26515 OPC_RecordChild1,
26516 OPC_CheckPatternPredicate1,
26517 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCVTH_D_S),
26518 6|128,1, 1, 0,
26519 11,
26520 OPC_CheckChild0Integer, 70|128,110,
26521 OPC_RecordChild1,
26522 OPC_CheckPatternPredicate1,
26523 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRINTRNE_S),
26524 116, 1, 0,
26525 11,
26526 OPC_CheckChild0Integer, 78|128,110,
26527 OPC_RecordChild1,
26528 OPC_CheckPatternPredicate1,
26529 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRINTRZ_S),
26530 116, 1, 0,
26531 11,
26532 OPC_CheckChild0Integer, 74|128,110,
26533 OPC_RecordChild1,
26534 OPC_CheckPatternPredicate1,
26535 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRINTRP_S),
26536 116, 1, 0,
26537 11,
26538 OPC_CheckChild0Integer, 66|128,110,
26539 OPC_RecordChild1,
26540 OPC_CheckPatternPredicate1,
26541 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRINTRM_S),
26542 116, 1, 0,
26543 12,
26544 OPC_CheckChild0Integer, 12|128,110,
26545 OPC_RecordChild1,
26546 OPC_CheckPatternPredicate1,
26547 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFLOGB_D),
26548 6|128,1, 1, 0,
26549 12,
26550 OPC_CheckChild0Integer, 96|128,110,
26551 OPC_RecordChild1,
26552 OPC_CheckPatternPredicate1,
26553 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFSQRT_D),
26554 6|128,1, 1, 0,
26555 12,
26556 OPC_CheckChild0Integer, 52|128,110,
26557 OPC_RecordChild1,
26558 OPC_CheckPatternPredicate1,
26559 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRECIP_D),
26560 6|128,1, 1, 0,
26561 12,
26562 OPC_CheckChild0Integer, 80|128,110,
26563 OPC_RecordChild1,
26564 OPC_CheckPatternPredicate1,
26565 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSQRT_D),
26566 6|128,1, 1, 0,
26567 12,
26568 OPC_CheckChild0Integer, 60|128,110,
26569 OPC_RecordChild1,
26570 OPC_CheckPatternPredicate1,
26571 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRINT_D),
26572 6|128,1, 1, 0,
26573 12,
26574 OPC_CheckChild0Integer, 68|128,110,
26575 OPC_RecordChild1,
26576 OPC_CheckPatternPredicate1,
26577 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRINTRNE_D),
26578 6|128,1, 1, 0,
26579 12,
26580 OPC_CheckChild0Integer, 76|128,110,
26581 OPC_RecordChild1,
26582 OPC_CheckPatternPredicate1,
26583 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRINTRZ_D),
26584 6|128,1, 1, 0,
26585 12,
26586 OPC_CheckChild0Integer, 72|128,110,
26587 OPC_RecordChild1,
26588 OPC_CheckPatternPredicate1,
26589 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRINTRP_D),
26590 6|128,1, 1, 0,
26591 12,
26592 OPC_CheckChild0Integer, 64|128,110,
26593 OPC_RecordChild1,
26594 OPC_CheckPatternPredicate1,
26595 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRINTRM_D),
26596 6|128,1, 1, 0,
26597 12,
26598 OPC_CheckChild0Integer, 58|128,110,
26599 OPC_RecordChild1,
26600 OPC_CheckPatternPredicate, 18,
26601 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRECIPE_S),
26602 116, 1, 0,
26603 12,
26604 OPC_CheckChild0Integer, 86|128,110,
26605 OPC_RecordChild1,
26606 OPC_CheckPatternPredicate, 18,
26607 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSQRTE_S),
26608 116, 1, 0,
26609 13,
26610 OPC_CheckChild0Integer, 56|128,110,
26611 OPC_RecordChild1,
26612 OPC_CheckPatternPredicate, 18,
26613 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRECIPE_D),
26614 6|128,1, 1, 0,
26615 13,
26616 OPC_CheckChild0Integer, 84|128,110,
26617 OPC_RecordChild1,
26618 OPC_CheckPatternPredicate, 18,
26619 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSQRTE_D),
26620 6|128,1, 1, 0,
26621 13,
26622 OPC_CheckChild0Integer, 78|128,98,
26623 OPC_RecordChild1,
26624 OPC_RecordChild2,
26625 OPC_CheckPatternPredicate0,
26626 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINT_S_L),
26627 120, 2, 0, 1,
26628 11,
26629 OPC_CheckChild0Integer, 68|128,98,
26630 OPC_RecordChild1,
26631 OPC_CheckPatternPredicate0,
26632 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCVTL_S_H),
26633 120, 1, 0,
26634 11,
26635 OPC_CheckChild0Integer, 64|128,98,
26636 OPC_RecordChild1,
26637 OPC_CheckPatternPredicate0,
26638 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCVTH_S_H),
26639 120, 1, 0,
26640 11,
26641 OPC_CheckChild0Integer, 80|128,98,
26642 OPC_RecordChild1,
26643 OPC_CheckPatternPredicate0,
26644 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINT_S_W),
26645 120, 1, 0,
26646 11,
26647 OPC_CheckChild0Integer, 82|128,98,
26648 OPC_RecordChild1,
26649 OPC_CheckPatternPredicate0,
26650 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINT_S_WU),
26651 120, 1, 0,
26652 12,
26653 OPC_CheckChild0Integer, 86|128,98,
26654 OPC_RecordChild1,
26655 OPC_CheckPatternPredicate0,
26656 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINTL_D_W),
26657 8|128,1, 1, 0,
26658 12,
26659 OPC_CheckChild0Integer, 84|128,98,
26660 OPC_RecordChild1,
26661 OPC_CheckPatternPredicate0,
26662 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINTH_D_W),
26663 8|128,1, 1, 0,
26664 12,
26665 OPC_CheckChild0Integer, 74|128,98,
26666 OPC_RecordChild1,
26667 OPC_CheckPatternPredicate0,
26668 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINT_D_L),
26669 8|128,1, 1, 0,
26670 12,
26671 OPC_CheckChild0Integer, 76|128,98,
26672 OPC_RecordChild1,
26673 OPC_CheckPatternPredicate0,
26674 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINT_D_LU),
26675 8|128,1, 1, 0,
26676 15,
26677 OPC_CheckChild0Integer, 114|128,98,
26678 OPC_RecordChild1,
26679 OPC_RecordChild2,
26680 OPC_RecordChild3,
26681 OPC_CheckPatternPredicate0,
26682 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMSUB_S),
26683 120, 3, 0, 1, 2,
26684 15,
26685 OPC_CheckChild0Integer, 122|128,98,
26686 OPC_RecordChild1,
26687 OPC_RecordChild2,
26688 OPC_RecordChild3,
26689 OPC_CheckPatternPredicate0,
26690 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMADD_S),
26691 120, 3, 0, 1, 2,
26692 15,
26693 OPC_CheckChild0Integer, 126|128,98,
26694 OPC_RecordChild1,
26695 OPC_RecordChild2,
26696 OPC_RecordChild3,
26697 OPC_CheckPatternPredicate0,
26698 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMSUB_S),
26699 120, 3, 0, 1, 2,
26700 16,
26701 OPC_CheckChild0Integer, 112|128,98,
26702 OPC_RecordChild1,
26703 OPC_RecordChild2,
26704 OPC_RecordChild3,
26705 OPC_CheckPatternPredicate0,
26706 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMSUB_D),
26707 8|128,1, 3, 0, 1, 2,
26708 16,
26709 OPC_CheckChild0Integer, 120|128,98,
26710 OPC_RecordChild1,
26711 OPC_RecordChild2,
26712 OPC_RecordChild3,
26713 OPC_CheckPatternPredicate0,
26714 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMADD_D),
26715 8|128,1, 3, 0, 1, 2,
26716 16,
26717 OPC_CheckChild0Integer, 124|128,98,
26718 OPC_RecordChild1,
26719 OPC_RecordChild2,
26720 OPC_RecordChild3,
26721 OPC_CheckPatternPredicate0,
26722 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMSUB_D),
26723 8|128,1, 3, 0, 1, 2,
26724 13,
26725 OPC_CheckChild0Integer, 98|128,98,
26726 OPC_RecordChild1,
26727 OPC_RecordChild2,
26728 OPC_CheckPatternPredicate0,
26729 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMAX_S),
26730 120, 2, 0, 1,
26731 13,
26732 OPC_CheckChild0Integer, 106|128,98,
26733 OPC_RecordChild1,
26734 OPC_RecordChild2,
26735 OPC_CheckPatternPredicate0,
26736 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMIN_S),
26737 120, 2, 0, 1,
26738 13,
26739 OPC_CheckChild0Integer, 102|128,98,
26740 OPC_RecordChild1,
26741 OPC_RecordChild2,
26742 OPC_CheckPatternPredicate0,
26743 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMAXA_S),
26744 120, 2, 0, 1,
26745 13,
26746 OPC_CheckChild0Integer, 110|128,98,
26747 OPC_RecordChild1,
26748 OPC_RecordChild2,
26749 OPC_CheckPatternPredicate0,
26750 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMINA_S),
26751 120, 2, 0, 1,
26752 14,
26753 OPC_CheckChild0Integer, 96|128,98,
26754 OPC_RecordChild1,
26755 OPC_RecordChild2,
26756 OPC_CheckPatternPredicate0,
26757 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMAX_D),
26758 8|128,1, 2, 0, 1,
26759 14,
26760 OPC_CheckChild0Integer, 104|128,98,
26761 OPC_RecordChild1,
26762 OPC_RecordChild2,
26763 OPC_CheckPatternPredicate0,
26764 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMIN_D),
26765 8|128,1, 2, 0, 1,
26766 14,
26767 OPC_CheckChild0Integer, 100|128,98,
26768 OPC_RecordChild1,
26769 OPC_RecordChild2,
26770 OPC_CheckPatternPredicate0,
26771 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMAXA_D),
26772 8|128,1, 2, 0, 1,
26773 14,
26774 OPC_CheckChild0Integer, 108|128,98,
26775 OPC_RecordChild1,
26776 OPC_RecordChild2,
26777 OPC_CheckPatternPredicate0,
26778 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMINA_D),
26779 8|128,1, 2, 0, 1,
26780 13,
26781 OPC_CheckChild0Integer, 60|128,98,
26782 OPC_RecordChild1,
26783 OPC_RecordChild2,
26784 OPC_CheckPatternPredicate0,
26785 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCVT_S_D),
26786 120, 2, 0, 1,
26787 11,
26788 OPC_CheckChild0Integer, 90|128,98,
26789 OPC_RecordChild1,
26790 OPC_CheckPatternPredicate0,
26791 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFLOGB_S),
26792 120, 1, 0,
26793 11,
26794 OPC_CheckChild0Integer, 46|128,99,
26795 OPC_RecordChild1,
26796 OPC_CheckPatternPredicate0,
26797 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFSQRT_S),
26798 120, 1, 0,
26799 11,
26800 OPC_CheckChild0Integer, 2|128,99,
26801 OPC_RecordChild1,
26802 OPC_CheckPatternPredicate0,
26803 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRECIP_S),
26804 120, 1, 0,
26805 11,
26806 OPC_CheckChild0Integer, 30|128,99,
26807 OPC_RecordChild1,
26808 OPC_CheckPatternPredicate0,
26809 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSQRT_S),
26810 120, 1, 0,
26811 11,
26812 OPC_CheckChild0Integer, 10|128,99,
26813 OPC_RecordChild1,
26814 OPC_CheckPatternPredicate0,
26815 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRINT_S),
26816 120, 1, 0,
26817 12,
26818 OPC_CheckChild0Integer, 66|128,98,
26819 OPC_RecordChild1,
26820 OPC_CheckPatternPredicate0,
26821 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCVTL_D_S),
26822 8|128,1, 1, 0,
26823 12,
26824 OPC_CheckChild0Integer, 62|128,98,
26825 OPC_RecordChild1,
26826 OPC_CheckPatternPredicate0,
26827 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCVTH_D_S),
26828 8|128,1, 1, 0,
26829 11,
26830 OPC_CheckChild0Integer, 18|128,99,
26831 OPC_RecordChild1,
26832 OPC_CheckPatternPredicate0,
26833 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRINTRNE_S),
26834 120, 1, 0,
26835 11,
26836 OPC_CheckChild0Integer, 26|128,99,
26837 OPC_RecordChild1,
26838 OPC_CheckPatternPredicate0,
26839 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRINTRZ_S),
26840 120, 1, 0,
26841 11,
26842 OPC_CheckChild0Integer, 22|128,99,
26843 OPC_RecordChild1,
26844 OPC_CheckPatternPredicate0,
26845 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRINTRP_S),
26846 120, 1, 0,
26847 11,
26848 OPC_CheckChild0Integer, 14|128,99,
26849 OPC_RecordChild1,
26850 OPC_CheckPatternPredicate0,
26851 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRINTRM_S),
26852 120, 1, 0,
26853 12,
26854 OPC_CheckChild0Integer, 88|128,98,
26855 OPC_RecordChild1,
26856 OPC_CheckPatternPredicate0,
26857 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFLOGB_D),
26858 8|128,1, 1, 0,
26859 12,
26860 OPC_CheckChild0Integer, 44|128,99,
26861 OPC_RecordChild1,
26862 OPC_CheckPatternPredicate0,
26863 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFSQRT_D),
26864 8|128,1, 1, 0,
26865 12,
26866 OPC_CheckChild0Integer, 0|128,99,
26867 OPC_RecordChild1,
26868 OPC_CheckPatternPredicate0,
26869 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRECIP_D),
26870 8|128,1, 1, 0,
26871 12,
26872 OPC_CheckChild0Integer, 28|128,99,
26873 OPC_RecordChild1,
26874 OPC_CheckPatternPredicate0,
26875 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSQRT_D),
26876 8|128,1, 1, 0,
26877 12,
26878 OPC_CheckChild0Integer, 8|128,99,
26879 OPC_RecordChild1,
26880 OPC_CheckPatternPredicate0,
26881 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRINT_D),
26882 8|128,1, 1, 0,
26883 12,
26884 OPC_CheckChild0Integer, 16|128,99,
26885 OPC_RecordChild1,
26886 OPC_CheckPatternPredicate0,
26887 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRINTRNE_D),
26888 8|128,1, 1, 0,
26889 12,
26890 OPC_CheckChild0Integer, 24|128,99,
26891 OPC_RecordChild1,
26892 OPC_CheckPatternPredicate0,
26893 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRINTRZ_D),
26894 8|128,1, 1, 0,
26895 12,
26896 OPC_CheckChild0Integer, 20|128,99,
26897 OPC_RecordChild1,
26898 OPC_CheckPatternPredicate0,
26899 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRINTRP_D),
26900 8|128,1, 1, 0,
26901 12,
26902 OPC_CheckChild0Integer, 12|128,99,
26903 OPC_RecordChild1,
26904 OPC_CheckPatternPredicate0,
26905 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRINTRM_D),
26906 8|128,1, 1, 0,
26907 12,
26908 OPC_CheckChild0Integer, 6|128,99,
26909 OPC_RecordChild1,
26910 OPC_CheckPatternPredicate, 18,
26911 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRECIPE_S),
26912 120, 1, 0,
26913 12,
26914 OPC_CheckChild0Integer, 34|128,99,
26915 OPC_RecordChild1,
26916 OPC_CheckPatternPredicate, 18,
26917 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSQRTE_S),
26918 120, 1, 0,
26919 13,
26920 OPC_CheckChild0Integer, 4|128,99,
26921 OPC_RecordChild1,
26922 OPC_CheckPatternPredicate, 18,
26923 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRECIPE_D),
26924 8|128,1, 1, 0,
26925 13,
26926 OPC_CheckChild0Integer, 32|128,99,
26927 OPC_RecordChild1,
26928 OPC_CheckPatternPredicate, 18,
26929 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSQRTE_D),
26930 8|128,1, 1, 0,
26931 0,
26932 73, TARGET_VAL(ISD::BRIND),
26933 OPC_RecordNode,
26934 OPC_Scope, 40,
26935 OPC_MoveChild1,
26936 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
26937 OPC_RecordChild0,
26938 OPC_RecordChild1,
26939 OPC_MoveChild1,
26940 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26941 OPC_CheckPredicate, 67,
26942 OPC_MoveParent,
26943 OPC_SwitchType , 10, 8,
26944 OPC_MoveParent,
26945 OPC_CheckPatternPredicate7,
26946 OPC_EmitMergeInputChains1_0,
26947 OPC_EmitConvertToTarget2,
26948 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::PseudoBRIND),
26949 2, 1, 3,
26950 11, 7,
26951 OPC_MoveParent,
26952 OPC_CheckPatternPredicate, 8,
26953 OPC_EmitMergeInputChains1_0,
26954 OPC_EmitConvertToTarget2,
26955 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::PseudoBRIND),
26956 2, 1, 3,
26957 0,
26958 28,
26959 OPC_RecordChild1,
26960 OPC_Scope, 11,
26961 OPC_CheckChild1TypeI64,
26962 OPC_CheckPatternPredicate7,
26963 OPC_EmitMergeInputChains1_0,
26964 OPC_EmitInteger64, 0,
26965 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::PseudoBRIND),
26966 2, 1, 2,
26967 12,
26968 OPC_CheckChild1TypeI32,
26969 OPC_CheckPatternPredicate, 8,
26970 OPC_EmitMergeInputChains1_0,
26971 OPC_EmitInteger32, 0,
26972 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::PseudoBRIND),
26973 2, 1, 2,
26974 0,
26975 0,
26976 20, TARGET_VAL(ISD::CALLSEQ_START),
26977 OPC_RecordNode,
26978 OPC_RecordChild1,
26979 OPC_MoveChild1,
26980 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
26981 OPC_MoveSibling2,
26982 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
26983 OPC_RecordNode,
26984 OPC_MoveParent,
26985 OPC_EmitMergeInputChains1_0,
26986 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ADJCALLSTACKDOWN), 0|OPFL_Chain|OPFL_GlueOutput,
26987 2, 1, 2,
26988 21, TARGET_VAL(ISD::CALLSEQ_END),
26989 OPC_RecordNode,
26990 OPC_CaptureGlueInput,
26991 OPC_RecordChild1,
26992 OPC_MoveChild1,
26993 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
26994 OPC_MoveSibling2,
26995 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
26996 OPC_RecordNode,
26997 OPC_MoveParent,
26998 OPC_EmitMergeInputChains1_0,
26999 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::ADJCALLSTACKUP), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput,
27000 2, 1, 2,
27001 41|128,28, TARGET_VAL(ISD::SETCC),
27002 OPC_RecordChild0,
27003 OPC_Scope, 104|128,2,
27004 OPC_CheckChild0TypeI64,
27005 OPC_Scope, 31,
27006 OPC_CheckChild1Integer, 0,
27007 OPC_CheckTypeI64,
27008 OPC_Scope, 12,
27009 OPC_CheckChild2CondCode, ISD::SETEQ,
27010 OPC_CheckPatternPredicate7,
27011 OPC_EmitInteger64, 2,
27012 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTUI),
27013 8, 2, 0, 1,
27014 12,
27015 OPC_CheckChild2CondCode, ISD::SETNE,
27016 OPC_CheckPatternPredicate7,
27017 OPC_EmitRegisterI64, LoongArch::R0,
27018 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27019 8, 2, 1, 0,
27020 0,
27021 67|128,2,
27022 OPC_RecordChild1,
27023 OPC_Scope, 16|128,1,
27024 OPC_MoveChild1,
27025 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
27026 OPC_Scope, 30,
27027 OPC_CheckPredicate, 11,
27028 OPC_MoveParent,
27029 OPC_CheckTypeI64,
27030 OPC_Scope, 11,
27031 OPC_CheckChild2CondCode, ISD::SETLT,
27032 OPC_CheckPatternPredicate7,
27033 OPC_EmitConvertToTarget1,
27034 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTI),
27035 8, 2, 0, 2,
27036 11,
27037 OPC_CheckChild2CondCode, ISD::SETULT,
27038 OPC_CheckPatternPredicate7,
27039 OPC_EmitConvertToTarget1,
27040 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTUI),
27041 8, 2, 0, 2,
27042 0,
27043 106,
27044 OPC_CheckPredicate, 60,
27045 OPC_MoveParent,
27046 OPC_CheckTypeI64,
27047 OPC_Scope, 49,
27048 OPC_CheckChild2CondCode, ISD::SETEQ,
27049 OPC_Scope, 22,
27050 OPC_CheckPatternPredicate, 15,
27051 OPC_EmitConvertToTarget1,
27052 OPC_EmitNodeXForm, 10, 2,
27053 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_W),
27054 8, 2, 0, 3,
27055 OPC_EmitInteger64, 2,
27056 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTUI),
27057 8, 2, 4, 5,
27058 21,
27059 OPC_CheckPatternPredicate6,
27060 OPC_EmitConvertToTarget1,
27061 OPC_EmitNodeXForm, 10, 2,
27062 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_D),
27063 8, 2, 0, 3,
27064 OPC_EmitInteger64, 2,
27065 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTUI),
27066 8, 2, 4, 5,
27067 0,
27068 49,
27069 OPC_CheckChild2CondCode, ISD::SETNE,
27070 OPC_Scope, 22,
27071 OPC_CheckPatternPredicate, 15,
27072 OPC_EmitRegisterI64, LoongArch::R0,
27073 OPC_EmitConvertToTarget1,
27074 OPC_EmitNodeXForm, 10, 3,
27075 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_W),
27076 8, 2, 0, 4,
27077 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27078 8, 2, 2, 5,
27079 21,
27080 OPC_CheckPatternPredicate6,
27081 OPC_EmitRegisterI64, LoongArch::R0,
27082 OPC_EmitConvertToTarget1,
27083 OPC_EmitNodeXForm, 10, 3,
27084 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_D),
27085 8, 2, 0, 4,
27086 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27087 8, 2, 2, 5,
27088 0,
27089 0,
27090 0,
27091 11,
27092 OPC_CheckChild2CondCode, ISD::SETLT,
27093 OPC_CheckTypeI64,
27094 OPC_CheckPatternPredicate7,
27095 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLT),
27096 8, 2, 0, 1,
27097 11,
27098 OPC_CheckChild2CondCode, ISD::SETULT,
27099 OPC_CheckTypeI64,
27100 OPC_CheckPatternPredicate7,
27101 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27102 8, 2, 0, 1,
27103 11,
27104 OPC_CheckChild2CondCode, ISD::SETUGT,
27105 OPC_CheckTypeI64,
27106 OPC_CheckPatternPredicate7,
27107 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27108 8, 2, 1, 0,
27109 11,
27110 OPC_CheckChild2CondCode, ISD::SETGT,
27111 OPC_CheckTypeI64,
27112 OPC_CheckPatternPredicate7,
27113 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLT),
27114 8, 2, 1, 0,
27115 20,
27116 OPC_CheckChild2CondCode, ISD::SETEQ,
27117 OPC_CheckTypeI64,
27118 OPC_CheckPatternPredicate7,
27119 OPC_EmitNode1None, TARGET_VAL(LoongArch::XOR),
27120 8, 2, 0, 1,
27121 OPC_EmitInteger64, 2,
27122 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTUI),
27123 8, 2, 2, 3,
27124 20,
27125 OPC_CheckChild2CondCode, ISD::SETNE,
27126 OPC_CheckTypeI64,
27127 OPC_CheckPatternPredicate7,
27128 OPC_EmitRegisterI64, LoongArch::R0,
27129 OPC_EmitNode1None, TARGET_VAL(LoongArch::XOR),
27130 8, 2, 0, 1,
27131 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27132 8, 2, 2, 3,
27133 20,
27134 OPC_CheckChild2CondCode, ISD::SETUGE,
27135 OPC_CheckTypeI64,
27136 OPC_CheckPatternPredicate7,
27137 OPC_EmitNode1None, TARGET_VAL(LoongArch::SLTU),
27138 8, 2, 0, 1,
27139 OPC_EmitInteger64, 2,
27140 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XORI),
27141 8, 2, 2, 3,
27142 20,
27143 OPC_CheckChild2CondCode, ISD::SETULE,
27144 OPC_CheckTypeI64,
27145 OPC_CheckPatternPredicate7,
27146 OPC_EmitNode1None, TARGET_VAL(LoongArch::SLTU),
27147 8, 2, 1, 0,
27148 OPC_EmitInteger64, 2,
27149 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XORI),
27150 8, 2, 2, 3,
27151 20,
27152 OPC_CheckChild2CondCode, ISD::SETGE,
27153 OPC_CheckTypeI64,
27154 OPC_CheckPatternPredicate7,
27155 OPC_EmitNode1None, TARGET_VAL(LoongArch::SLT),
27156 8, 2, 0, 1,
27157 OPC_EmitInteger64, 2,
27158 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XORI),
27159 8, 2, 2, 3,
27160 20,
27161 OPC_CheckChild2CondCode, ISD::SETLE,
27162 OPC_CheckTypeI64,
27163 OPC_CheckPatternPredicate7,
27164 OPC_EmitNode1None, TARGET_VAL(LoongArch::SLT),
27165 8, 2, 1, 0,
27166 OPC_EmitInteger64, 2,
27167 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XORI),
27168 8, 2, 2, 3,
27169 0,
27170 0,
27171 120|128,2,
27172 OPC_CheckChild0TypeI32,
27173 OPC_Scope, 33,
27174 OPC_CheckChild1Integer, 0,
27175 OPC_CheckTypeI32,
27176 OPC_Scope, 13,
27177 OPC_CheckChild2CondCode, ISD::SETEQ,
27178 OPC_CheckPatternPredicate, 8,
27179 OPC_EmitInteger32, 2,
27180 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTUI),
27181 7, 2, 0, 1,
27182 13,
27183 OPC_CheckChild2CondCode, ISD::SETNE,
27184 OPC_CheckPatternPredicate, 8,
27185 OPC_EmitRegisterI32, LoongArch::R0,
27186 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27187 7, 2, 1, 0,
27188 0,
27189 81|128,2,
27190 OPC_RecordChild1,
27191 OPC_Scope, 20|128,1,
27192 OPC_MoveChild1,
27193 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
27194 OPC_Scope, 32,
27195 OPC_CheckPredicate, 11,
27196 OPC_MoveParent,
27197 OPC_CheckTypeI32,
27198 OPC_Scope, 12,
27199 OPC_CheckChild2CondCode, ISD::SETLT,
27200 OPC_CheckPatternPredicate, 8,
27201 OPC_EmitConvertToTarget1,
27202 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTI),
27203 7, 2, 0, 2,
27204 12,
27205 OPC_CheckChild2CondCode, ISD::SETULT,
27206 OPC_CheckPatternPredicate, 8,
27207 OPC_EmitConvertToTarget1,
27208 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTUI),
27209 7, 2, 0, 2,
27210 0,
27211 108,
27212 OPC_CheckPredicate, 60,
27213 OPC_MoveParent,
27214 OPC_CheckTypeI32,
27215 OPC_Scope, 50,
27216 OPC_CheckChild2CondCode, ISD::SETEQ,
27217 OPC_Scope, 22,
27218 OPC_CheckPatternPredicate, 10,
27219 OPC_EmitConvertToTarget1,
27220 OPC_EmitNodeXForm, 10, 2,
27221 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_W),
27222 7, 2, 0, 3,
27223 OPC_EmitInteger32, 2,
27224 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTUI),
27225 7, 2, 4, 5,
27226 22,
27227 OPC_CheckPatternPredicate, 9,
27228 OPC_EmitConvertToTarget1,
27229 OPC_EmitNodeXForm, 10, 2,
27230 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_D),
27231 7, 2, 0, 3,
27232 OPC_EmitInteger32, 2,
27233 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTUI),
27234 7, 2, 4, 5,
27235 0,
27236 50,
27237 OPC_CheckChild2CondCode, ISD::SETNE,
27238 OPC_Scope, 22,
27239 OPC_CheckPatternPredicate, 10,
27240 OPC_EmitRegisterI32, LoongArch::R0,
27241 OPC_EmitConvertToTarget1,
27242 OPC_EmitNodeXForm, 10, 3,
27243 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_W),
27244 7, 2, 0, 4,
27245 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27246 7, 2, 2, 5,
27247 22,
27248 OPC_CheckPatternPredicate, 9,
27249 OPC_EmitRegisterI32, LoongArch::R0,
27250 OPC_EmitConvertToTarget1,
27251 OPC_EmitNodeXForm, 10, 3,
27252 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_D),
27253 7, 2, 0, 4,
27254 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27255 7, 2, 2, 5,
27256 0,
27257 0,
27258 0,
27259 12,
27260 OPC_CheckChild2CondCode, ISD::SETLT,
27261 OPC_CheckTypeI32,
27262 OPC_CheckPatternPredicate, 8,
27263 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLT),
27264 7, 2, 0, 1,
27265 12,
27266 OPC_CheckChild2CondCode, ISD::SETULT,
27267 OPC_CheckTypeI32,
27268 OPC_CheckPatternPredicate, 8,
27269 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27270 7, 2, 0, 1,
27271 12,
27272 OPC_CheckChild2CondCode, ISD::SETUGT,
27273 OPC_CheckTypeI32,
27274 OPC_CheckPatternPredicate, 8,
27275 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27276 7, 2, 1, 0,
27277 12,
27278 OPC_CheckChild2CondCode, ISD::SETGT,
27279 OPC_CheckTypeI32,
27280 OPC_CheckPatternPredicate, 8,
27281 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLT),
27282 7, 2, 1, 0,
27283 21,
27284 OPC_CheckChild2CondCode, ISD::SETEQ,
27285 OPC_CheckTypeI32,
27286 OPC_CheckPatternPredicate, 8,
27287 OPC_EmitNode1None, TARGET_VAL(LoongArch::XOR),
27288 7, 2, 0, 1,
27289 OPC_EmitInteger32, 2,
27290 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTUI),
27291 7, 2, 2, 3,
27292 21,
27293 OPC_CheckChild2CondCode, ISD::SETNE,
27294 OPC_CheckTypeI32,
27295 OPC_CheckPatternPredicate, 8,
27296 OPC_EmitRegisterI32, LoongArch::R0,
27297 OPC_EmitNode1None, TARGET_VAL(LoongArch::XOR),
27298 7, 2, 0, 1,
27299 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
27300 7, 2, 2, 3,
27301 21,
27302 OPC_CheckChild2CondCode, ISD::SETUGE,
27303 OPC_CheckTypeI32,
27304 OPC_CheckPatternPredicate, 8,
27305 OPC_EmitNode1None, TARGET_VAL(LoongArch::SLTU),
27306 7, 2, 0, 1,
27307 OPC_EmitInteger32, 2,
27308 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XORI),
27309 7, 2, 2, 3,
27310 21,
27311 OPC_CheckChild2CondCode, ISD::SETULE,
27312 OPC_CheckTypeI32,
27313 OPC_CheckPatternPredicate, 8,
27314 OPC_EmitNode1None, TARGET_VAL(LoongArch::SLTU),
27315 7, 2, 1, 0,
27316 OPC_EmitInteger32, 2,
27317 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XORI),
27318 7, 2, 2, 3,
27319 21,
27320 OPC_CheckChild2CondCode, ISD::SETGE,
27321 OPC_CheckTypeI32,
27322 OPC_CheckPatternPredicate, 8,
27323 OPC_EmitNode1None, TARGET_VAL(LoongArch::SLT),
27324 7, 2, 0, 1,
27325 OPC_EmitInteger32, 2,
27326 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XORI),
27327 7, 2, 2, 3,
27328 21,
27329 OPC_CheckChild2CondCode, ISD::SETLE,
27330 OPC_CheckTypeI32,
27331 OPC_CheckPatternPredicate, 8,
27332 OPC_EmitNode1None, TARGET_VAL(LoongArch::SLT),
27333 7, 2, 1, 0,
27334 OPC_EmitInteger32, 2,
27335 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XORI),
27336 7, 2, 2, 3,
27337 0,
27338 0,
27339 100|128,2,
27340 OPC_CheckChild0Type, 12,
27341 OPC_RecordChild1,
27342 OPC_Scope, 26,
27343 OPC_CheckChild2CondCode, ISD::SETOEQ,
27344 OPC_SwitchType , 9, 8,
27345 OPC_CheckPatternPredicate, 11,
27346 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CEQ_S),
27347 8, 2, 0, 1,
27348 9, 7,
27349 OPC_CheckPatternPredicate, 12,
27350 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CEQ_S),
27351 7, 2, 0, 1,
27352 0,
27353 26,
27354 OPC_CheckChild2CondCode, ISD::SETEQ,
27355 OPC_SwitchType , 9, 8,
27356 OPC_CheckPatternPredicate, 11,
27357 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CEQ_S),
27358 8, 2, 0, 1,
27359 9, 7,
27360 OPC_CheckPatternPredicate, 12,
27361 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CEQ_S),
27362 7, 2, 0, 1,
27363 0,
27364 26,
27365 OPC_CheckChild2CondCode, ISD::SETOLT,
27366 OPC_SwitchType , 9, 8,
27367 OPC_CheckPatternPredicate, 11,
27368 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
27369 8, 2, 0, 1,
27370 9, 7,
27371 OPC_CheckPatternPredicate, 12,
27372 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
27373 7, 2, 0, 1,
27374 0,
27375 26,
27376 OPC_CheckChild2CondCode, ISD::SETOLE,
27377 OPC_SwitchType , 9, 8,
27378 OPC_CheckPatternPredicate, 11,
27379 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLE_S),
27380 8, 2, 0, 1,
27381 9, 7,
27382 OPC_CheckPatternPredicate, 12,
27383 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLE_S),
27384 7, 2, 0, 1,
27385 0,
27386 26,
27387 OPC_CheckChild2CondCode, ISD::SETLE,
27388 OPC_SwitchType , 9, 8,
27389 OPC_CheckPatternPredicate, 11,
27390 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLE_S),
27391 8, 2, 0, 1,
27392 9, 7,
27393 OPC_CheckPatternPredicate, 12,
27394 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLE_S),
27395 7, 2, 0, 1,
27396 0,
27397 26,
27398 OPC_CheckChild2CondCode, ISD::SETONE,
27399 OPC_SwitchType , 9, 8,
27400 OPC_CheckPatternPredicate, 11,
27401 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CNE_S),
27402 8, 2, 0, 1,
27403 9, 7,
27404 OPC_CheckPatternPredicate, 12,
27405 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CNE_S),
27406 7, 2, 0, 1,
27407 0,
27408 26,
27409 OPC_CheckChild2CondCode, ISD::SETO,
27410 OPC_SwitchType , 9, 8,
27411 OPC_CheckPatternPredicate, 11,
27412 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_COR_S),
27413 8, 2, 0, 1,
27414 9, 7,
27415 OPC_CheckPatternPredicate, 12,
27416 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_COR_S),
27417 7, 2, 0, 1,
27418 0,
27419 26,
27420 OPC_CheckChild2CondCode, ISD::SETUEQ,
27421 OPC_SwitchType , 9, 8,
27422 OPC_CheckPatternPredicate, 11,
27423 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUEQ_S),
27424 8, 2, 0, 1,
27425 9, 7,
27426 OPC_CheckPatternPredicate, 12,
27427 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUEQ_S),
27428 7, 2, 0, 1,
27429 0,
27430 26,
27431 OPC_CheckChild2CondCode, ISD::SETULT,
27432 OPC_SwitchType , 9, 8,
27433 OPC_CheckPatternPredicate, 11,
27434 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CULT_S),
27435 8, 2, 0, 1,
27436 9, 7,
27437 OPC_CheckPatternPredicate, 12,
27438 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CULT_S),
27439 7, 2, 0, 1,
27440 0,
27441 26,
27442 OPC_CheckChild2CondCode, ISD::SETULE,
27443 OPC_SwitchType , 9, 8,
27444 OPC_CheckPatternPredicate, 11,
27445 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CULE_S),
27446 8, 2, 0, 1,
27447 9, 7,
27448 OPC_CheckPatternPredicate, 12,
27449 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CULE_S),
27450 7, 2, 0, 1,
27451 0,
27452 26,
27453 OPC_CheckChild2CondCode, ISD::SETUNE,
27454 OPC_SwitchType , 9, 8,
27455 OPC_CheckPatternPredicate, 11,
27456 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUNE_S),
27457 8, 2, 0, 1,
27458 9, 7,
27459 OPC_CheckPatternPredicate, 12,
27460 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUNE_S),
27461 7, 2, 0, 1,
27462 0,
27463 26,
27464 OPC_CheckChild2CondCode, ISD::SETUO,
27465 OPC_SwitchType , 9, 8,
27466 OPC_CheckPatternPredicate, 11,
27467 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUN_S),
27468 8, 2, 0, 1,
27469 9, 7,
27470 OPC_CheckPatternPredicate, 12,
27471 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUN_S),
27472 7, 2, 0, 1,
27473 0,
27474 26,
27475 OPC_CheckChild2CondCode, ISD::SETLT,
27476 OPC_SwitchType , 9, 8,
27477 OPC_CheckPatternPredicate, 11,
27478 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
27479 8, 2, 0, 1,
27480 9, 7,
27481 OPC_CheckPatternPredicate, 12,
27482 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
27483 7, 2, 0, 1,
27484 0,
27485 0,
27486 100|128,2,
27487 OPC_CheckChild0Type, 13,
27488 OPC_RecordChild1,
27489 OPC_Scope, 26,
27490 OPC_CheckChild2CondCode, ISD::SETOEQ,
27491 OPC_SwitchType , 9, 8,
27492 OPC_CheckPatternPredicate, 13,
27493 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CEQ_D),
27494 8, 2, 0, 1,
27495 9, 7,
27496 OPC_CheckPatternPredicate, 14,
27497 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CEQ_D),
27498 7, 2, 0, 1,
27499 0,
27500 26,
27501 OPC_CheckChild2CondCode, ISD::SETEQ,
27502 OPC_SwitchType , 9, 8,
27503 OPC_CheckPatternPredicate, 13,
27504 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CEQ_D),
27505 8, 2, 0, 1,
27506 9, 7,
27507 OPC_CheckPatternPredicate, 14,
27508 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CEQ_D),
27509 7, 2, 0, 1,
27510 0,
27511 26,
27512 OPC_CheckChild2CondCode, ISD::SETOLT,
27513 OPC_SwitchType , 9, 8,
27514 OPC_CheckPatternPredicate, 13,
27515 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
27516 8, 2, 0, 1,
27517 9, 7,
27518 OPC_CheckPatternPredicate, 14,
27519 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
27520 7, 2, 0, 1,
27521 0,
27522 26,
27523 OPC_CheckChild2CondCode, ISD::SETOLE,
27524 OPC_SwitchType , 9, 8,
27525 OPC_CheckPatternPredicate, 13,
27526 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLE_D),
27527 8, 2, 0, 1,
27528 9, 7,
27529 OPC_CheckPatternPredicate, 14,
27530 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLE_D),
27531 7, 2, 0, 1,
27532 0,
27533 26,
27534 OPC_CheckChild2CondCode, ISD::SETLE,
27535 OPC_SwitchType , 9, 8,
27536 OPC_CheckPatternPredicate, 13,
27537 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLE_D),
27538 8, 2, 0, 1,
27539 9, 7,
27540 OPC_CheckPatternPredicate, 14,
27541 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLE_D),
27542 7, 2, 0, 1,
27543 0,
27544 26,
27545 OPC_CheckChild2CondCode, ISD::SETONE,
27546 OPC_SwitchType , 9, 8,
27547 OPC_CheckPatternPredicate, 13,
27548 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CNE_D),
27549 8, 2, 0, 1,
27550 9, 7,
27551 OPC_CheckPatternPredicate, 14,
27552 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CNE_D),
27553 7, 2, 0, 1,
27554 0,
27555 26,
27556 OPC_CheckChild2CondCode, ISD::SETO,
27557 OPC_SwitchType , 9, 8,
27558 OPC_CheckPatternPredicate, 13,
27559 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_COR_D),
27560 8, 2, 0, 1,
27561 9, 7,
27562 OPC_CheckPatternPredicate, 14,
27563 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_COR_D),
27564 7, 2, 0, 1,
27565 0,
27566 26,
27567 OPC_CheckChild2CondCode, ISD::SETUEQ,
27568 OPC_SwitchType , 9, 8,
27569 OPC_CheckPatternPredicate, 13,
27570 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUEQ_D),
27571 8, 2, 0, 1,
27572 9, 7,
27573 OPC_CheckPatternPredicate, 14,
27574 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUEQ_D),
27575 7, 2, 0, 1,
27576 0,
27577 26,
27578 OPC_CheckChild2CondCode, ISD::SETULT,
27579 OPC_SwitchType , 9, 8,
27580 OPC_CheckPatternPredicate, 13,
27581 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CULT_D),
27582 8, 2, 0, 1,
27583 9, 7,
27584 OPC_CheckPatternPredicate, 14,
27585 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CULT_D),
27586 7, 2, 0, 1,
27587 0,
27588 26,
27589 OPC_CheckChild2CondCode, ISD::SETULE,
27590 OPC_SwitchType , 9, 8,
27591 OPC_CheckPatternPredicate, 13,
27592 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CULE_D),
27593 8, 2, 0, 1,
27594 9, 7,
27595 OPC_CheckPatternPredicate, 14,
27596 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CULE_D),
27597 7, 2, 0, 1,
27598 0,
27599 26,
27600 OPC_CheckChild2CondCode, ISD::SETUNE,
27601 OPC_SwitchType , 9, 8,
27602 OPC_CheckPatternPredicate, 13,
27603 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUNE_D),
27604 8, 2, 0, 1,
27605 9, 7,
27606 OPC_CheckPatternPredicate, 14,
27607 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUNE_D),
27608 7, 2, 0, 1,
27609 0,
27610 26,
27611 OPC_CheckChild2CondCode, ISD::SETUO,
27612 OPC_SwitchType , 9, 8,
27613 OPC_CheckPatternPredicate, 13,
27614 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUN_D),
27615 8, 2, 0, 1,
27616 9, 7,
27617 OPC_CheckPatternPredicate, 14,
27618 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CUN_D),
27619 7, 2, 0, 1,
27620 0,
27621 26,
27622 OPC_CheckChild2CondCode, ISD::SETLT,
27623 OPC_SwitchType , 9, 8,
27624 OPC_CheckPatternPredicate, 13,
27625 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
27626 8, 2, 0, 1,
27627 9, 7,
27628 OPC_CheckPatternPredicate, 14,
27629 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
27630 7, 2, 0, 1,
27631 0,
27632 0,
27633 59|128,1,
27634 OPC_CheckChild0Type, 40,
27635 OPC_RecordChild1,
27636 OPC_CheckType, 40,
27637 OPC_Scope, 35,
27638 OPC_CheckChild2CondCode, ISD::SETEQ,
27639 OPC_Scope, 10,
27640 OPC_CheckPatternPredicate2,
27641 OPC_CheckComplexPat4, /*#*/1,
27642 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_B),
27643 40, 2, 0, 2,
27644 10,
27645 OPC_CheckPatternPredicate4,
27646 OPC_CheckComplexPat4, /*#*/1,
27647 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_B),
27648 40, 2, 0, 2,
27649 8,
27650 OPC_CheckPatternPredicate1,
27651 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQ_B),
27652 40, 2, 0, 1,
27653 0,
27654 35,
27655 OPC_CheckChild2CondCode, ISD::SETLE,
27656 OPC_Scope, 10,
27657 OPC_CheckPatternPredicate2,
27658 OPC_CheckComplexPat4, /*#*/1,
27659 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_B),
27660 40, 2, 0, 2,
27661 10,
27662 OPC_CheckPatternPredicate4,
27663 OPC_CheckComplexPat4, /*#*/1,
27664 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_B),
27665 40, 2, 0, 2,
27666 8,
27667 OPC_CheckPatternPredicate1,
27668 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_B),
27669 40, 2, 0, 1,
27670 0,
27671 35,
27672 OPC_CheckChild2CondCode, ISD::SETLT,
27673 OPC_Scope, 10,
27674 OPC_CheckPatternPredicate2,
27675 OPC_CheckComplexPat4, /*#*/1,
27676 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_B),
27677 40, 2, 0, 2,
27678 10,
27679 OPC_CheckPatternPredicate4,
27680 OPC_CheckComplexPat4, /*#*/1,
27681 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_B),
27682 40, 2, 0, 2,
27683 8,
27684 OPC_CheckPatternPredicate1,
27685 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_B),
27686 40, 2, 0, 1,
27687 0,
27688 35,
27689 OPC_CheckChild2CondCode, ISD::SETULE,
27690 OPC_Scope, 10,
27691 OPC_CheckPatternPredicate2,
27692 OPC_CheckComplexPat1, /*#*/1,
27693 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_BU),
27694 40, 2, 0, 2,
27695 10,
27696 OPC_CheckPatternPredicate4,
27697 OPC_CheckComplexPat1, /*#*/1,
27698 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_BU),
27699 40, 2, 0, 2,
27700 8,
27701 OPC_CheckPatternPredicate1,
27702 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_BU),
27703 40, 2, 0, 1,
27704 0,
27705 35,
27706 OPC_CheckChild2CondCode, ISD::SETULT,
27707 OPC_Scope, 10,
27708 OPC_CheckPatternPredicate2,
27709 OPC_CheckComplexPat1, /*#*/1,
27710 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_BU),
27711 40, 2, 0, 2,
27712 10,
27713 OPC_CheckPatternPredicate4,
27714 OPC_CheckComplexPat1, /*#*/1,
27715 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_BU),
27716 40, 2, 0, 2,
27717 8,
27718 OPC_CheckPatternPredicate1,
27719 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_BU),
27720 40, 2, 0, 1,
27721 0,
27722 0,
27723 59|128,1,
27724 OPC_CheckChild0Type, 51,
27725 OPC_RecordChild1,
27726 OPC_CheckType, 51,
27727 OPC_Scope, 35,
27728 OPC_CheckChild2CondCode, ISD::SETEQ,
27729 OPC_Scope, 10,
27730 OPC_CheckPatternPredicate2,
27731 OPC_CheckComplexPat4, /*#*/1,
27732 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_H),
27733 51, 2, 0, 2,
27734 10,
27735 OPC_CheckPatternPredicate4,
27736 OPC_CheckComplexPat4, /*#*/1,
27737 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_H),
27738 51, 2, 0, 2,
27739 8,
27740 OPC_CheckPatternPredicate1,
27741 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQ_H),
27742 51, 2, 0, 1,
27743 0,
27744 35,
27745 OPC_CheckChild2CondCode, ISD::SETLE,
27746 OPC_Scope, 10,
27747 OPC_CheckPatternPredicate2,
27748 OPC_CheckComplexPat4, /*#*/1,
27749 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_H),
27750 51, 2, 0, 2,
27751 10,
27752 OPC_CheckPatternPredicate4,
27753 OPC_CheckComplexPat4, /*#*/1,
27754 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_H),
27755 51, 2, 0, 2,
27756 8,
27757 OPC_CheckPatternPredicate1,
27758 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_H),
27759 51, 2, 0, 1,
27760 0,
27761 35,
27762 OPC_CheckChild2CondCode, ISD::SETLT,
27763 OPC_Scope, 10,
27764 OPC_CheckPatternPredicate2,
27765 OPC_CheckComplexPat4, /*#*/1,
27766 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_H),
27767 51, 2, 0, 2,
27768 10,
27769 OPC_CheckPatternPredicate4,
27770 OPC_CheckComplexPat4, /*#*/1,
27771 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_H),
27772 51, 2, 0, 2,
27773 8,
27774 OPC_CheckPatternPredicate1,
27775 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_H),
27776 51, 2, 0, 1,
27777 0,
27778 35,
27779 OPC_CheckChild2CondCode, ISD::SETULE,
27780 OPC_Scope, 10,
27781 OPC_CheckPatternPredicate2,
27782 OPC_CheckComplexPat1, /*#*/1,
27783 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_HU),
27784 51, 2, 0, 2,
27785 10,
27786 OPC_CheckPatternPredicate4,
27787 OPC_CheckComplexPat1, /*#*/1,
27788 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_HU),
27789 51, 2, 0, 2,
27790 8,
27791 OPC_CheckPatternPredicate1,
27792 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_HU),
27793 51, 2, 0, 1,
27794 0,
27795 35,
27796 OPC_CheckChild2CondCode, ISD::SETULT,
27797 OPC_Scope, 10,
27798 OPC_CheckPatternPredicate2,
27799 OPC_CheckComplexPat1, /*#*/1,
27800 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_HU),
27801 51, 2, 0, 2,
27802 10,
27803 OPC_CheckPatternPredicate4,
27804 OPC_CheckComplexPat1, /*#*/1,
27805 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_HU),
27806 51, 2, 0, 2,
27807 8,
27808 OPC_CheckPatternPredicate1,
27809 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_HU),
27810 51, 2, 0, 1,
27811 0,
27812 0,
27813 59|128,1,
27814 OPC_CheckChild0Type, 62,
27815 OPC_RecordChild1,
27816 OPC_CheckType, 62,
27817 OPC_Scope, 35,
27818 OPC_CheckChild2CondCode, ISD::SETEQ,
27819 OPC_Scope, 10,
27820 OPC_CheckPatternPredicate2,
27821 OPC_CheckComplexPat4, /*#*/1,
27822 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_W),
27823 62, 2, 0, 2,
27824 10,
27825 OPC_CheckPatternPredicate4,
27826 OPC_CheckComplexPat4, /*#*/1,
27827 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_W),
27828 62, 2, 0, 2,
27829 8,
27830 OPC_CheckPatternPredicate1,
27831 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQ_W),
27832 62, 2, 0, 1,
27833 0,
27834 35,
27835 OPC_CheckChild2CondCode, ISD::SETLE,
27836 OPC_Scope, 10,
27837 OPC_CheckPatternPredicate2,
27838 OPC_CheckComplexPat4, /*#*/1,
27839 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_W),
27840 62, 2, 0, 2,
27841 10,
27842 OPC_CheckPatternPredicate4,
27843 OPC_CheckComplexPat4, /*#*/1,
27844 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_W),
27845 62, 2, 0, 2,
27846 8,
27847 OPC_CheckPatternPredicate1,
27848 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_W),
27849 62, 2, 0, 1,
27850 0,
27851 35,
27852 OPC_CheckChild2CondCode, ISD::SETLT,
27853 OPC_Scope, 10,
27854 OPC_CheckPatternPredicate2,
27855 OPC_CheckComplexPat4, /*#*/1,
27856 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_W),
27857 62, 2, 0, 2,
27858 10,
27859 OPC_CheckPatternPredicate4,
27860 OPC_CheckComplexPat4, /*#*/1,
27861 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_W),
27862 62, 2, 0, 2,
27863 8,
27864 OPC_CheckPatternPredicate1,
27865 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_W),
27866 62, 2, 0, 1,
27867 0,
27868 35,
27869 OPC_CheckChild2CondCode, ISD::SETULE,
27870 OPC_Scope, 10,
27871 OPC_CheckPatternPredicate2,
27872 OPC_CheckComplexPat1, /*#*/1,
27873 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_WU),
27874 62, 2, 0, 2,
27875 10,
27876 OPC_CheckPatternPredicate4,
27877 OPC_CheckComplexPat1, /*#*/1,
27878 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_WU),
27879 62, 2, 0, 2,
27880 8,
27881 OPC_CheckPatternPredicate1,
27882 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_WU),
27883 62, 2, 0, 1,
27884 0,
27885 35,
27886 OPC_CheckChild2CondCode, ISD::SETULT,
27887 OPC_Scope, 10,
27888 OPC_CheckPatternPredicate2,
27889 OPC_CheckComplexPat1, /*#*/1,
27890 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_WU),
27891 62, 2, 0, 2,
27892 10,
27893 OPC_CheckPatternPredicate4,
27894 OPC_CheckComplexPat1, /*#*/1,
27895 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_WU),
27896 62, 2, 0, 2,
27897 8,
27898 OPC_CheckPatternPredicate1,
27899 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_WU),
27900 62, 2, 0, 1,
27901 0,
27902 0,
27903 59|128,1,
27904 OPC_CheckChild0Type, 81,
27905 OPC_RecordChild1,
27906 OPC_CheckType, 81,
27907 OPC_Scope, 35,
27908 OPC_CheckChild2CondCode, ISD::SETEQ,
27909 OPC_Scope, 10,
27910 OPC_CheckPatternPredicate2,
27911 OPC_CheckComplexPat4, /*#*/1,
27912 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_D),
27913 81, 2, 0, 2,
27914 10,
27915 OPC_CheckPatternPredicate4,
27916 OPC_CheckComplexPat4, /*#*/1,
27917 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQI_D),
27918 81, 2, 0, 2,
27919 8,
27920 OPC_CheckPatternPredicate1,
27921 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSEQ_D),
27922 81, 2, 0, 1,
27923 0,
27924 35,
27925 OPC_CheckChild2CondCode, ISD::SETLE,
27926 OPC_Scope, 10,
27927 OPC_CheckPatternPredicate2,
27928 OPC_CheckComplexPat4, /*#*/1,
27929 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_D),
27930 81, 2, 0, 2,
27931 10,
27932 OPC_CheckPatternPredicate4,
27933 OPC_CheckComplexPat4, /*#*/1,
27934 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_D),
27935 81, 2, 0, 2,
27936 8,
27937 OPC_CheckPatternPredicate1,
27938 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_D),
27939 81, 2, 0, 1,
27940 0,
27941 35,
27942 OPC_CheckChild2CondCode, ISD::SETLT,
27943 OPC_Scope, 10,
27944 OPC_CheckPatternPredicate2,
27945 OPC_CheckComplexPat4, /*#*/1,
27946 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_D),
27947 81, 2, 0, 2,
27948 10,
27949 OPC_CheckPatternPredicate4,
27950 OPC_CheckComplexPat4, /*#*/1,
27951 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_D),
27952 81, 2, 0, 2,
27953 8,
27954 OPC_CheckPatternPredicate1,
27955 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_D),
27956 81, 2, 0, 1,
27957 0,
27958 35,
27959 OPC_CheckChild2CondCode, ISD::SETULE,
27960 OPC_Scope, 10,
27961 OPC_CheckPatternPredicate2,
27962 OPC_CheckComplexPat1, /*#*/1,
27963 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_DU),
27964 81, 2, 0, 2,
27965 10,
27966 OPC_CheckPatternPredicate4,
27967 OPC_CheckComplexPat1, /*#*/1,
27968 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLEI_DU),
27969 81, 2, 0, 2,
27970 8,
27971 OPC_CheckPatternPredicate1,
27972 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLE_DU),
27973 81, 2, 0, 1,
27974 0,
27975 35,
27976 OPC_CheckChild2CondCode, ISD::SETULT,
27977 OPC_Scope, 10,
27978 OPC_CheckPatternPredicate2,
27979 OPC_CheckComplexPat1, /*#*/1,
27980 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_DU),
27981 81, 2, 0, 2,
27982 10,
27983 OPC_CheckPatternPredicate4,
27984 OPC_CheckComplexPat1, /*#*/1,
27985 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLTI_DU),
27986 81, 2, 0, 2,
27987 8,
27988 OPC_CheckPatternPredicate1,
27989 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLT_DU),
27990 81, 2, 0, 1,
27991 0,
27992 0,
27993 59|128,1,
27994 OPC_CheckChild0Type, 41,
27995 OPC_RecordChild1,
27996 OPC_CheckType, 41,
27997 OPC_Scope, 35,
27998 OPC_CheckChild2CondCode, ISD::SETEQ,
27999 OPC_Scope, 10,
28000 OPC_CheckPatternPredicate3,
28001 OPC_CheckComplexPat4, /*#*/1,
28002 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_B),
28003 41, 2, 0, 2,
28004 10,
28005 OPC_CheckPatternPredicate5,
28006 OPC_CheckComplexPat4, /*#*/1,
28007 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_B),
28008 41, 2, 0, 2,
28009 8,
28010 OPC_CheckPatternPredicate0,
28011 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQ_B),
28012 41, 2, 0, 1,
28013 0,
28014 35,
28015 OPC_CheckChild2CondCode, ISD::SETLE,
28016 OPC_Scope, 10,
28017 OPC_CheckPatternPredicate3,
28018 OPC_CheckComplexPat4, /*#*/1,
28019 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_B),
28020 41, 2, 0, 2,
28021 10,
28022 OPC_CheckPatternPredicate5,
28023 OPC_CheckComplexPat4, /*#*/1,
28024 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_B),
28025 41, 2, 0, 2,
28026 8,
28027 OPC_CheckPatternPredicate0,
28028 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_B),
28029 41, 2, 0, 1,
28030 0,
28031 35,
28032 OPC_CheckChild2CondCode, ISD::SETLT,
28033 OPC_Scope, 10,
28034 OPC_CheckPatternPredicate3,
28035 OPC_CheckComplexPat4, /*#*/1,
28036 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_B),
28037 41, 2, 0, 2,
28038 10,
28039 OPC_CheckPatternPredicate5,
28040 OPC_CheckComplexPat4, /*#*/1,
28041 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_B),
28042 41, 2, 0, 2,
28043 8,
28044 OPC_CheckPatternPredicate0,
28045 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_B),
28046 41, 2, 0, 1,
28047 0,
28048 35,
28049 OPC_CheckChild2CondCode, ISD::SETULE,
28050 OPC_Scope, 10,
28051 OPC_CheckPatternPredicate3,
28052 OPC_CheckComplexPat1, /*#*/1,
28053 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_BU),
28054 41, 2, 0, 2,
28055 10,
28056 OPC_CheckPatternPredicate5,
28057 OPC_CheckComplexPat1, /*#*/1,
28058 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_BU),
28059 41, 2, 0, 2,
28060 8,
28061 OPC_CheckPatternPredicate0,
28062 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_BU),
28063 41, 2, 0, 1,
28064 0,
28065 35,
28066 OPC_CheckChild2CondCode, ISD::SETULT,
28067 OPC_Scope, 10,
28068 OPC_CheckPatternPredicate3,
28069 OPC_CheckComplexPat1, /*#*/1,
28070 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_BU),
28071 41, 2, 0, 2,
28072 10,
28073 OPC_CheckPatternPredicate5,
28074 OPC_CheckComplexPat1, /*#*/1,
28075 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_BU),
28076 41, 2, 0, 2,
28077 8,
28078 OPC_CheckPatternPredicate0,
28079 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_BU),
28080 41, 2, 0, 1,
28081 0,
28082 0,
28083 59|128,1,
28084 OPC_CheckChild0Type, 52,
28085 OPC_RecordChild1,
28086 OPC_CheckType, 52,
28087 OPC_Scope, 35,
28088 OPC_CheckChild2CondCode, ISD::SETEQ,
28089 OPC_Scope, 10,
28090 OPC_CheckPatternPredicate3,
28091 OPC_CheckComplexPat4, /*#*/1,
28092 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_H),
28093 52, 2, 0, 2,
28094 10,
28095 OPC_CheckPatternPredicate5,
28096 OPC_CheckComplexPat4, /*#*/1,
28097 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_H),
28098 52, 2, 0, 2,
28099 8,
28100 OPC_CheckPatternPredicate0,
28101 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQ_H),
28102 52, 2, 0, 1,
28103 0,
28104 35,
28105 OPC_CheckChild2CondCode, ISD::SETLE,
28106 OPC_Scope, 10,
28107 OPC_CheckPatternPredicate3,
28108 OPC_CheckComplexPat4, /*#*/1,
28109 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_H),
28110 52, 2, 0, 2,
28111 10,
28112 OPC_CheckPatternPredicate5,
28113 OPC_CheckComplexPat4, /*#*/1,
28114 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_H),
28115 52, 2, 0, 2,
28116 8,
28117 OPC_CheckPatternPredicate0,
28118 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_H),
28119 52, 2, 0, 1,
28120 0,
28121 35,
28122 OPC_CheckChild2CondCode, ISD::SETLT,
28123 OPC_Scope, 10,
28124 OPC_CheckPatternPredicate3,
28125 OPC_CheckComplexPat4, /*#*/1,
28126 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_H),
28127 52, 2, 0, 2,
28128 10,
28129 OPC_CheckPatternPredicate5,
28130 OPC_CheckComplexPat4, /*#*/1,
28131 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_H),
28132 52, 2, 0, 2,
28133 8,
28134 OPC_CheckPatternPredicate0,
28135 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_H),
28136 52, 2, 0, 1,
28137 0,
28138 35,
28139 OPC_CheckChild2CondCode, ISD::SETULE,
28140 OPC_Scope, 10,
28141 OPC_CheckPatternPredicate3,
28142 OPC_CheckComplexPat1, /*#*/1,
28143 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_HU),
28144 52, 2, 0, 2,
28145 10,
28146 OPC_CheckPatternPredicate5,
28147 OPC_CheckComplexPat1, /*#*/1,
28148 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_HU),
28149 52, 2, 0, 2,
28150 8,
28151 OPC_CheckPatternPredicate0,
28152 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_HU),
28153 52, 2, 0, 1,
28154 0,
28155 35,
28156 OPC_CheckChild2CondCode, ISD::SETULT,
28157 OPC_Scope, 10,
28158 OPC_CheckPatternPredicate3,
28159 OPC_CheckComplexPat1, /*#*/1,
28160 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_HU),
28161 52, 2, 0, 2,
28162 10,
28163 OPC_CheckPatternPredicate5,
28164 OPC_CheckComplexPat1, /*#*/1,
28165 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_HU),
28166 52, 2, 0, 2,
28167 8,
28168 OPC_CheckPatternPredicate0,
28169 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_HU),
28170 52, 2, 0, 1,
28171 0,
28172 0,
28173 59|128,1,
28174 OPC_CheckChild0Type, 66,
28175 OPC_RecordChild1,
28176 OPC_CheckType, 66,
28177 OPC_Scope, 35,
28178 OPC_CheckChild2CondCode, ISD::SETEQ,
28179 OPC_Scope, 10,
28180 OPC_CheckPatternPredicate3,
28181 OPC_CheckComplexPat4, /*#*/1,
28182 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_W),
28183 66, 2, 0, 2,
28184 10,
28185 OPC_CheckPatternPredicate5,
28186 OPC_CheckComplexPat4, /*#*/1,
28187 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_W),
28188 66, 2, 0, 2,
28189 8,
28190 OPC_CheckPatternPredicate0,
28191 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQ_W),
28192 66, 2, 0, 1,
28193 0,
28194 35,
28195 OPC_CheckChild2CondCode, ISD::SETLE,
28196 OPC_Scope, 10,
28197 OPC_CheckPatternPredicate3,
28198 OPC_CheckComplexPat4, /*#*/1,
28199 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_W),
28200 66, 2, 0, 2,
28201 10,
28202 OPC_CheckPatternPredicate5,
28203 OPC_CheckComplexPat4, /*#*/1,
28204 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_W),
28205 66, 2, 0, 2,
28206 8,
28207 OPC_CheckPatternPredicate0,
28208 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_W),
28209 66, 2, 0, 1,
28210 0,
28211 35,
28212 OPC_CheckChild2CondCode, ISD::SETLT,
28213 OPC_Scope, 10,
28214 OPC_CheckPatternPredicate3,
28215 OPC_CheckComplexPat4, /*#*/1,
28216 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_W),
28217 66, 2, 0, 2,
28218 10,
28219 OPC_CheckPatternPredicate5,
28220 OPC_CheckComplexPat4, /*#*/1,
28221 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_W),
28222 66, 2, 0, 2,
28223 8,
28224 OPC_CheckPatternPredicate0,
28225 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_W),
28226 66, 2, 0, 1,
28227 0,
28228 35,
28229 OPC_CheckChild2CondCode, ISD::SETULE,
28230 OPC_Scope, 10,
28231 OPC_CheckPatternPredicate3,
28232 OPC_CheckComplexPat1, /*#*/1,
28233 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_WU),
28234 66, 2, 0, 2,
28235 10,
28236 OPC_CheckPatternPredicate5,
28237 OPC_CheckComplexPat1, /*#*/1,
28238 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_WU),
28239 66, 2, 0, 2,
28240 8,
28241 OPC_CheckPatternPredicate0,
28242 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_WU),
28243 66, 2, 0, 1,
28244 0,
28245 35,
28246 OPC_CheckChild2CondCode, ISD::SETULT,
28247 OPC_Scope, 10,
28248 OPC_CheckPatternPredicate3,
28249 OPC_CheckComplexPat1, /*#*/1,
28250 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_WU),
28251 66, 2, 0, 2,
28252 10,
28253 OPC_CheckPatternPredicate5,
28254 OPC_CheckComplexPat1, /*#*/1,
28255 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_WU),
28256 66, 2, 0, 2,
28257 8,
28258 OPC_CheckPatternPredicate0,
28259 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_WU),
28260 66, 2, 0, 1,
28261 0,
28262 0,
28263 59|128,1,
28264 OPC_CheckChild0Type, 83,
28265 OPC_RecordChild1,
28266 OPC_CheckType, 83,
28267 OPC_Scope, 35,
28268 OPC_CheckChild2CondCode, ISD::SETEQ,
28269 OPC_Scope, 10,
28270 OPC_CheckPatternPredicate3,
28271 OPC_CheckComplexPat4, /*#*/1,
28272 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_D),
28273 83, 2, 0, 2,
28274 10,
28275 OPC_CheckPatternPredicate5,
28276 OPC_CheckComplexPat4, /*#*/1,
28277 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQI_D),
28278 83, 2, 0, 2,
28279 8,
28280 OPC_CheckPatternPredicate0,
28281 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSEQ_D),
28282 83, 2, 0, 1,
28283 0,
28284 35,
28285 OPC_CheckChild2CondCode, ISD::SETLE,
28286 OPC_Scope, 10,
28287 OPC_CheckPatternPredicate3,
28288 OPC_CheckComplexPat4, /*#*/1,
28289 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_D),
28290 83, 2, 0, 2,
28291 10,
28292 OPC_CheckPatternPredicate5,
28293 OPC_CheckComplexPat4, /*#*/1,
28294 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_D),
28295 83, 2, 0, 2,
28296 8,
28297 OPC_CheckPatternPredicate0,
28298 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_D),
28299 83, 2, 0, 1,
28300 0,
28301 35,
28302 OPC_CheckChild2CondCode, ISD::SETLT,
28303 OPC_Scope, 10,
28304 OPC_CheckPatternPredicate3,
28305 OPC_CheckComplexPat4, /*#*/1,
28306 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_D),
28307 83, 2, 0, 2,
28308 10,
28309 OPC_CheckPatternPredicate5,
28310 OPC_CheckComplexPat4, /*#*/1,
28311 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_D),
28312 83, 2, 0, 2,
28313 8,
28314 OPC_CheckPatternPredicate0,
28315 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_D),
28316 83, 2, 0, 1,
28317 0,
28318 35,
28319 OPC_CheckChild2CondCode, ISD::SETULE,
28320 OPC_Scope, 10,
28321 OPC_CheckPatternPredicate3,
28322 OPC_CheckComplexPat1, /*#*/1,
28323 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_DU),
28324 83, 2, 0, 2,
28325 10,
28326 OPC_CheckPatternPredicate5,
28327 OPC_CheckComplexPat1, /*#*/1,
28328 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLEI_DU),
28329 83, 2, 0, 2,
28330 8,
28331 OPC_CheckPatternPredicate0,
28332 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLE_DU),
28333 83, 2, 0, 1,
28334 0,
28335 35,
28336 OPC_CheckChild2CondCode, ISD::SETULT,
28337 OPC_Scope, 10,
28338 OPC_CheckPatternPredicate3,
28339 OPC_CheckComplexPat1, /*#*/1,
28340 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_DU),
28341 83, 2, 0, 2,
28342 10,
28343 OPC_CheckPatternPredicate5,
28344 OPC_CheckComplexPat1, /*#*/1,
28345 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLTI_DU),
28346 83, 2, 0, 2,
28347 8,
28348 OPC_CheckPatternPredicate0,
28349 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLT_DU),
28350 83, 2, 0, 1,
28351 0,
28352 0,
28353 33|128,1,
28354 OPC_CheckChild0Type, 116,
28355 OPC_RecordChild1,
28356 OPC_CheckType, 62,
28357 OPC_Scope, 10,
28358 OPC_CheckChild2CondCode, ISD::SETEQ,
28359 OPC_CheckPatternPredicate1,
28360 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CEQ_S),
28361 62, 2, 0, 1,
28362 10,
28363 OPC_CheckChild2CondCode, ISD::SETOEQ,
28364 OPC_CheckPatternPredicate1,
28365 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CEQ_S),
28366 62, 2, 0, 1,
28367 10,
28368 OPC_CheckChild2CondCode, ISD::SETUEQ,
28369 OPC_CheckPatternPredicate1,
28370 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUEQ_S),
28371 62, 2, 0, 1,
28372 10,
28373 OPC_CheckChild2CondCode, ISD::SETLE,
28374 OPC_CheckPatternPredicate1,
28375 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLE_S),
28376 62, 2, 0, 1,
28377 10,
28378 OPC_CheckChild2CondCode, ISD::SETOLE,
28379 OPC_CheckPatternPredicate1,
28380 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLE_S),
28381 62, 2, 0, 1,
28382 10,
28383 OPC_CheckChild2CondCode, ISD::SETULE,
28384 OPC_CheckPatternPredicate1,
28385 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CULE_S),
28386 62, 2, 0, 1,
28387 10,
28388 OPC_CheckChild2CondCode, ISD::SETLT,
28389 OPC_CheckPatternPredicate1,
28390 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLT_S),
28391 62, 2, 0, 1,
28392 10,
28393 OPC_CheckChild2CondCode, ISD::SETOLT,
28394 OPC_CheckPatternPredicate1,
28395 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLT_S),
28396 62, 2, 0, 1,
28397 10,
28398 OPC_CheckChild2CondCode, ISD::SETULT,
28399 OPC_CheckPatternPredicate1,
28400 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CULT_S),
28401 62, 2, 0, 1,
28402 10,
28403 OPC_CheckChild2CondCode, ISD::SETNE,
28404 OPC_CheckPatternPredicate1,
28405 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CNE_S),
28406 62, 2, 0, 1,
28407 10,
28408 OPC_CheckChild2CondCode, ISD::SETONE,
28409 OPC_CheckPatternPredicate1,
28410 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CNE_S),
28411 62, 2, 0, 1,
28412 10,
28413 OPC_CheckChild2CondCode, ISD::SETUNE,
28414 OPC_CheckPatternPredicate1,
28415 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUNE_S),
28416 62, 2, 0, 1,
28417 10,
28418 OPC_CheckChild2CondCode, ISD::SETO,
28419 OPC_CheckPatternPredicate1,
28420 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_COR_S),
28421 62, 2, 0, 1,
28422 10,
28423 OPC_CheckChild2CondCode, ISD::SETUO,
28424 OPC_CheckPatternPredicate1,
28425 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUN_S),
28426 62, 2, 0, 1,
28427 0,
28428 34|128,1,
28429 OPC_CheckChild0Type, 6|128,1,
28430 OPC_RecordChild1,
28431 OPC_CheckType, 81,
28432 OPC_Scope, 10,
28433 OPC_CheckChild2CondCode, ISD::SETEQ,
28434 OPC_CheckPatternPredicate1,
28435 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CEQ_D),
28436 81, 2, 0, 1,
28437 10,
28438 OPC_CheckChild2CondCode, ISD::SETOEQ,
28439 OPC_CheckPatternPredicate1,
28440 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CEQ_D),
28441 81, 2, 0, 1,
28442 10,
28443 OPC_CheckChild2CondCode, ISD::SETUEQ,
28444 OPC_CheckPatternPredicate1,
28445 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUEQ_D),
28446 81, 2, 0, 1,
28447 10,
28448 OPC_CheckChild2CondCode, ISD::SETLE,
28449 OPC_CheckPatternPredicate1,
28450 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLE_D),
28451 81, 2, 0, 1,
28452 10,
28453 OPC_CheckChild2CondCode, ISD::SETOLE,
28454 OPC_CheckPatternPredicate1,
28455 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLE_D),
28456 81, 2, 0, 1,
28457 10,
28458 OPC_CheckChild2CondCode, ISD::SETULE,
28459 OPC_CheckPatternPredicate1,
28460 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CULE_D),
28461 81, 2, 0, 1,
28462 10,
28463 OPC_CheckChild2CondCode, ISD::SETLT,
28464 OPC_CheckPatternPredicate1,
28465 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLT_D),
28466 81, 2, 0, 1,
28467 10,
28468 OPC_CheckChild2CondCode, ISD::SETOLT,
28469 OPC_CheckPatternPredicate1,
28470 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CLT_D),
28471 81, 2, 0, 1,
28472 10,
28473 OPC_CheckChild2CondCode, ISD::SETULT,
28474 OPC_CheckPatternPredicate1,
28475 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CULT_D),
28476 81, 2, 0, 1,
28477 10,
28478 OPC_CheckChild2CondCode, ISD::SETNE,
28479 OPC_CheckPatternPredicate1,
28480 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CNE_D),
28481 81, 2, 0, 1,
28482 10,
28483 OPC_CheckChild2CondCode, ISD::SETONE,
28484 OPC_CheckPatternPredicate1,
28485 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CNE_D),
28486 81, 2, 0, 1,
28487 10,
28488 OPC_CheckChild2CondCode, ISD::SETUNE,
28489 OPC_CheckPatternPredicate1,
28490 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUNE_D),
28491 81, 2, 0, 1,
28492 10,
28493 OPC_CheckChild2CondCode, ISD::SETO,
28494 OPC_CheckPatternPredicate1,
28495 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_COR_D),
28496 81, 2, 0, 1,
28497 10,
28498 OPC_CheckChild2CondCode, ISD::SETUO,
28499 OPC_CheckPatternPredicate1,
28500 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFCMP_CUN_D),
28501 81, 2, 0, 1,
28502 0,
28503 33|128,1,
28504 OPC_CheckChild0Type, 120,
28505 OPC_RecordChild1,
28506 OPC_CheckType, 66,
28507 OPC_Scope, 10,
28508 OPC_CheckChild2CondCode, ISD::SETEQ,
28509 OPC_CheckPatternPredicate0,
28510 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CEQ_S),
28511 66, 2, 0, 1,
28512 10,
28513 OPC_CheckChild2CondCode, ISD::SETOEQ,
28514 OPC_CheckPatternPredicate0,
28515 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CEQ_S),
28516 66, 2, 0, 1,
28517 10,
28518 OPC_CheckChild2CondCode, ISD::SETUEQ,
28519 OPC_CheckPatternPredicate0,
28520 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUEQ_S),
28521 66, 2, 0, 1,
28522 10,
28523 OPC_CheckChild2CondCode, ISD::SETLE,
28524 OPC_CheckPatternPredicate0,
28525 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLE_S),
28526 66, 2, 0, 1,
28527 10,
28528 OPC_CheckChild2CondCode, ISD::SETOLE,
28529 OPC_CheckPatternPredicate0,
28530 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLE_S),
28531 66, 2, 0, 1,
28532 10,
28533 OPC_CheckChild2CondCode, ISD::SETULE,
28534 OPC_CheckPatternPredicate0,
28535 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CULE_S),
28536 66, 2, 0, 1,
28537 10,
28538 OPC_CheckChild2CondCode, ISD::SETLT,
28539 OPC_CheckPatternPredicate0,
28540 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLT_S),
28541 66, 2, 0, 1,
28542 10,
28543 OPC_CheckChild2CondCode, ISD::SETOLT,
28544 OPC_CheckPatternPredicate0,
28545 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLT_S),
28546 66, 2, 0, 1,
28547 10,
28548 OPC_CheckChild2CondCode, ISD::SETULT,
28549 OPC_CheckPatternPredicate0,
28550 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CULT_S),
28551 66, 2, 0, 1,
28552 10,
28553 OPC_CheckChild2CondCode, ISD::SETNE,
28554 OPC_CheckPatternPredicate0,
28555 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CNE_S),
28556 66, 2, 0, 1,
28557 10,
28558 OPC_CheckChild2CondCode, ISD::SETONE,
28559 OPC_CheckPatternPredicate0,
28560 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CNE_S),
28561 66, 2, 0, 1,
28562 10,
28563 OPC_CheckChild2CondCode, ISD::SETUNE,
28564 OPC_CheckPatternPredicate0,
28565 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUNE_S),
28566 66, 2, 0, 1,
28567 10,
28568 OPC_CheckChild2CondCode, ISD::SETO,
28569 OPC_CheckPatternPredicate0,
28570 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_COR_S),
28571 66, 2, 0, 1,
28572 10,
28573 OPC_CheckChild2CondCode, ISD::SETUO,
28574 OPC_CheckPatternPredicate0,
28575 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUN_S),
28576 66, 2, 0, 1,
28577 0,
28578 34|128,1,
28579 OPC_CheckChild0Type, 8|128,1,
28580 OPC_RecordChild1,
28581 OPC_CheckType, 83,
28582 OPC_Scope, 10,
28583 OPC_CheckChild2CondCode, ISD::SETEQ,
28584 OPC_CheckPatternPredicate0,
28585 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CEQ_D),
28586 83, 2, 0, 1,
28587 10,
28588 OPC_CheckChild2CondCode, ISD::SETOEQ,
28589 OPC_CheckPatternPredicate0,
28590 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CEQ_D),
28591 83, 2, 0, 1,
28592 10,
28593 OPC_CheckChild2CondCode, ISD::SETUEQ,
28594 OPC_CheckPatternPredicate0,
28595 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUEQ_D),
28596 83, 2, 0, 1,
28597 10,
28598 OPC_CheckChild2CondCode, ISD::SETLE,
28599 OPC_CheckPatternPredicate0,
28600 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLE_D),
28601 83, 2, 0, 1,
28602 10,
28603 OPC_CheckChild2CondCode, ISD::SETOLE,
28604 OPC_CheckPatternPredicate0,
28605 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLE_D),
28606 83, 2, 0, 1,
28607 10,
28608 OPC_CheckChild2CondCode, ISD::SETULE,
28609 OPC_CheckPatternPredicate0,
28610 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CULE_D),
28611 83, 2, 0, 1,
28612 10,
28613 OPC_CheckChild2CondCode, ISD::SETLT,
28614 OPC_CheckPatternPredicate0,
28615 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLT_D),
28616 83, 2, 0, 1,
28617 10,
28618 OPC_CheckChild2CondCode, ISD::SETOLT,
28619 OPC_CheckPatternPredicate0,
28620 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CLT_D),
28621 83, 2, 0, 1,
28622 10,
28623 OPC_CheckChild2CondCode, ISD::SETULT,
28624 OPC_CheckPatternPredicate0,
28625 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CULT_D),
28626 83, 2, 0, 1,
28627 10,
28628 OPC_CheckChild2CondCode, ISD::SETNE,
28629 OPC_CheckPatternPredicate0,
28630 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CNE_D),
28631 83, 2, 0, 1,
28632 10,
28633 OPC_CheckChild2CondCode, ISD::SETONE,
28634 OPC_CheckPatternPredicate0,
28635 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CNE_D),
28636 83, 2, 0, 1,
28637 10,
28638 OPC_CheckChild2CondCode, ISD::SETUNE,
28639 OPC_CheckPatternPredicate0,
28640 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUNE_D),
28641 83, 2, 0, 1,
28642 10,
28643 OPC_CheckChild2CondCode, ISD::SETO,
28644 OPC_CheckPatternPredicate0,
28645 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_COR_D),
28646 83, 2, 0, 1,
28647 10,
28648 OPC_CheckChild2CondCode, ISD::SETUO,
28649 OPC_CheckPatternPredicate0,
28650 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFCMP_CUN_D),
28651 83, 2, 0, 1,
28652 0,
28653 0,
28654 115|128,9, TARGET_VAL(ISD::SELECT),
28655 OPC_Scope, 117,
28656 OPC_RecordChild0,
28657 OPC_SwitchType , 55, 8,
28658 OPC_CheckChild0TypeI64,
28659 OPC_Scope, 12,
28660 OPC_RecordChild1,
28661 OPC_CheckChild2Integer, 0,
28662 OPC_CheckPatternPredicate, 23,
28663 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MASKEQZ),
28664 8, 2, 1, 0,
28665 12,
28666 OPC_CheckChild1Integer, 0,
28667 OPC_RecordChild2,
28668 OPC_CheckPatternPredicate, 23,
28669 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MASKNEZ),
28670 8, 2, 1, 0,
28671 25,
28672 OPC_RecordChild1,
28673 OPC_RecordChild2,
28674 OPC_CheckPatternPredicate, 23,
28675 OPC_EmitNode1None, TARGET_VAL(LoongArch::MASKEQZ),
28676 8, 2, 1, 0,
28677 OPC_EmitNode1None, TARGET_VAL(LoongArch::MASKNEZ),
28678 8, 2, 2, 0,
28679 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::OR),
28680 8, 2, 3, 4,
28681 0,
28682 55, 7,
28683 OPC_CheckChild0TypeI32,
28684 OPC_Scope, 12,
28685 OPC_RecordChild1,
28686 OPC_CheckChild2Integer, 0,
28687 OPC_CheckPatternPredicate, 24,
28688 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MASKEQZ),
28689 7, 2, 1, 0,
28690 12,
28691 OPC_CheckChild1Integer, 0,
28692 OPC_RecordChild2,
28693 OPC_CheckPatternPredicate, 24,
28694 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MASKNEZ),
28695 7, 2, 1, 0,
28696 25,
28697 OPC_RecordChild1,
28698 OPC_RecordChild2,
28699 OPC_CheckPatternPredicate, 24,
28700 OPC_EmitNode1None, TARGET_VAL(LoongArch::MASKEQZ),
28701 7, 2, 1, 0,
28702 OPC_EmitNode1None, TARGET_VAL(LoongArch::MASKNEZ),
28703 7, 2, 2, 0,
28704 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::OR),
28705 7, 2, 3, 4,
28706 0,
28707 0,
28708 57|128,8,
28709 OPC_MoveChild0,
28710 OPC_CheckOpcode, TARGET_VAL(ISD::SETCC),
28711 OPC_RecordChild0,
28712 OPC_Scope, 23|128,4,
28713 OPC_CheckChild0Type, 12,
28714 OPC_RecordChild1,
28715 OPC_Scope, 52,
28716 OPC_CheckChild2CondCode, ISD::SETOEQ,
28717 OPC_SwitchType , 22, 8,
28718 OPC_MoveParent,
28719 OPC_RecordChild1,
28720 OPC_RecordChild2,
28721 OPC_CheckType, 12,
28722 OPC_CheckPatternPredicate, 11,
28723 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_S),
28724 8, 2, 0, 1,
28725 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28726 12, 3, 3, 2, 4,
28727 22, 7,
28728 OPC_MoveParent,
28729 OPC_RecordChild1,
28730 OPC_RecordChild2,
28731 OPC_CheckType, 12,
28732 OPC_CheckPatternPredicate, 12,
28733 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_S),
28734 7, 2, 0, 1,
28735 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28736 12, 3, 3, 2, 4,
28737 0,
28738 52,
28739 OPC_CheckChild2CondCode, ISD::SETOLT,
28740 OPC_SwitchType , 22, 8,
28741 OPC_MoveParent,
28742 OPC_RecordChild1,
28743 OPC_RecordChild2,
28744 OPC_CheckType, 12,
28745 OPC_CheckPatternPredicate, 11,
28746 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
28747 8, 2, 0, 1,
28748 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28749 12, 3, 3, 2, 4,
28750 22, 7,
28751 OPC_MoveParent,
28752 OPC_RecordChild1,
28753 OPC_RecordChild2,
28754 OPC_CheckType, 12,
28755 OPC_CheckPatternPredicate, 12,
28756 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_S),
28757 7, 2, 0, 1,
28758 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28759 12, 3, 3, 2, 4,
28760 0,
28761 52,
28762 OPC_CheckChild2CondCode, ISD::SETOLE,
28763 OPC_SwitchType , 22, 8,
28764 OPC_MoveParent,
28765 OPC_RecordChild1,
28766 OPC_RecordChild2,
28767 OPC_CheckType, 12,
28768 OPC_CheckPatternPredicate, 11,
28769 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_S),
28770 8, 2, 0, 1,
28771 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28772 12, 3, 3, 2, 4,
28773 22, 7,
28774 OPC_MoveParent,
28775 OPC_RecordChild1,
28776 OPC_RecordChild2,
28777 OPC_CheckType, 12,
28778 OPC_CheckPatternPredicate, 12,
28779 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_S),
28780 7, 2, 0, 1,
28781 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28782 12, 3, 3, 2, 4,
28783 0,
28784 52,
28785 OPC_CheckChild2CondCode, ISD::SETONE,
28786 OPC_SwitchType , 22, 8,
28787 OPC_MoveParent,
28788 OPC_RecordChild1,
28789 OPC_RecordChild2,
28790 OPC_CheckType, 12,
28791 OPC_CheckPatternPredicate, 11,
28792 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_S),
28793 8, 2, 0, 1,
28794 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28795 12, 3, 3, 2, 4,
28796 22, 7,
28797 OPC_MoveParent,
28798 OPC_RecordChild1,
28799 OPC_RecordChild2,
28800 OPC_CheckType, 12,
28801 OPC_CheckPatternPredicate, 12,
28802 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_S),
28803 7, 2, 0, 1,
28804 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28805 12, 3, 3, 2, 4,
28806 0,
28807 52,
28808 OPC_CheckChild2CondCode, ISD::SETO,
28809 OPC_SwitchType , 22, 8,
28810 OPC_MoveParent,
28811 OPC_RecordChild1,
28812 OPC_RecordChild2,
28813 OPC_CheckType, 12,
28814 OPC_CheckPatternPredicate, 11,
28815 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_S),
28816 8, 2, 0, 1,
28817 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28818 12, 3, 3, 2, 4,
28819 22, 7,
28820 OPC_MoveParent,
28821 OPC_RecordChild1,
28822 OPC_RecordChild2,
28823 OPC_CheckType, 12,
28824 OPC_CheckPatternPredicate, 12,
28825 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_S),
28826 7, 2, 0, 1,
28827 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28828 12, 3, 3, 2, 4,
28829 0,
28830 52,
28831 OPC_CheckChild2CondCode, ISD::SETUEQ,
28832 OPC_SwitchType , 22, 8,
28833 OPC_MoveParent,
28834 OPC_RecordChild1,
28835 OPC_RecordChild2,
28836 OPC_CheckType, 12,
28837 OPC_CheckPatternPredicate, 11,
28838 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_S),
28839 8, 2, 0, 1,
28840 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28841 12, 3, 3, 2, 4,
28842 22, 7,
28843 OPC_MoveParent,
28844 OPC_RecordChild1,
28845 OPC_RecordChild2,
28846 OPC_CheckType, 12,
28847 OPC_CheckPatternPredicate, 12,
28848 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_S),
28849 7, 2, 0, 1,
28850 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28851 12, 3, 3, 2, 4,
28852 0,
28853 52,
28854 OPC_CheckChild2CondCode, ISD::SETULT,
28855 OPC_SwitchType , 22, 8,
28856 OPC_MoveParent,
28857 OPC_RecordChild1,
28858 OPC_RecordChild2,
28859 OPC_CheckType, 12,
28860 OPC_CheckPatternPredicate, 11,
28861 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_S),
28862 8, 2, 0, 1,
28863 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28864 12, 3, 3, 2, 4,
28865 22, 7,
28866 OPC_MoveParent,
28867 OPC_RecordChild1,
28868 OPC_RecordChild2,
28869 OPC_CheckType, 12,
28870 OPC_CheckPatternPredicate, 12,
28871 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_S),
28872 7, 2, 0, 1,
28873 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28874 12, 3, 3, 2, 4,
28875 0,
28876 52,
28877 OPC_CheckChild2CondCode, ISD::SETULE,
28878 OPC_SwitchType , 22, 8,
28879 OPC_MoveParent,
28880 OPC_RecordChild1,
28881 OPC_RecordChild2,
28882 OPC_CheckType, 12,
28883 OPC_CheckPatternPredicate, 11,
28884 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_S),
28885 8, 2, 0, 1,
28886 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28887 12, 3, 3, 2, 4,
28888 22, 7,
28889 OPC_MoveParent,
28890 OPC_RecordChild1,
28891 OPC_RecordChild2,
28892 OPC_CheckType, 12,
28893 OPC_CheckPatternPredicate, 12,
28894 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_S),
28895 7, 2, 0, 1,
28896 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28897 12, 3, 3, 2, 4,
28898 0,
28899 52,
28900 OPC_CheckChild2CondCode, ISD::SETUNE,
28901 OPC_SwitchType , 22, 8,
28902 OPC_MoveParent,
28903 OPC_RecordChild1,
28904 OPC_RecordChild2,
28905 OPC_CheckType, 12,
28906 OPC_CheckPatternPredicate, 11,
28907 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_S),
28908 8, 2, 0, 1,
28909 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28910 12, 3, 3, 2, 4,
28911 22, 7,
28912 OPC_MoveParent,
28913 OPC_RecordChild1,
28914 OPC_RecordChild2,
28915 OPC_CheckType, 12,
28916 OPC_CheckPatternPredicate, 12,
28917 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_S),
28918 7, 2, 0, 1,
28919 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28920 12, 3, 3, 2, 4,
28921 0,
28922 52,
28923 OPC_CheckChild2CondCode, ISD::SETUO,
28924 OPC_SwitchType , 22, 8,
28925 OPC_MoveParent,
28926 OPC_RecordChild1,
28927 OPC_RecordChild2,
28928 OPC_CheckType, 12,
28929 OPC_CheckPatternPredicate, 11,
28930 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_S),
28931 8, 2, 0, 1,
28932 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28933 12, 3, 3, 2, 4,
28934 22, 7,
28935 OPC_MoveParent,
28936 OPC_RecordChild1,
28937 OPC_RecordChild2,
28938 OPC_CheckType, 12,
28939 OPC_CheckPatternPredicate, 12,
28940 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_S),
28941 7, 2, 0, 1,
28942 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
28943 12, 3, 3, 2, 4,
28944 0,
28945 0,
28946 23|128,4,
28947 OPC_CheckChild0Type, 13,
28948 OPC_RecordChild1,
28949 OPC_Scope, 52,
28950 OPC_CheckChild2CondCode, ISD::SETOEQ,
28951 OPC_SwitchType , 22, 8,
28952 OPC_MoveParent,
28953 OPC_RecordChild1,
28954 OPC_RecordChild2,
28955 OPC_CheckType, 13,
28956 OPC_CheckPatternPredicate, 13,
28957 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_D),
28958 8, 2, 0, 1,
28959 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
28960 13, 3, 3, 2, 4,
28961 22, 7,
28962 OPC_MoveParent,
28963 OPC_RecordChild1,
28964 OPC_RecordChild2,
28965 OPC_CheckType, 13,
28966 OPC_CheckPatternPredicate, 14,
28967 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CEQ_D),
28968 7, 2, 0, 1,
28969 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
28970 13, 3, 3, 2, 4,
28971 0,
28972 52,
28973 OPC_CheckChild2CondCode, ISD::SETOLT,
28974 OPC_SwitchType , 22, 8,
28975 OPC_MoveParent,
28976 OPC_RecordChild1,
28977 OPC_RecordChild2,
28978 OPC_CheckType, 13,
28979 OPC_CheckPatternPredicate, 13,
28980 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
28981 8, 2, 0, 1,
28982 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
28983 13, 3, 3, 2, 4,
28984 22, 7,
28985 OPC_MoveParent,
28986 OPC_RecordChild1,
28987 OPC_RecordChild2,
28988 OPC_CheckType, 13,
28989 OPC_CheckPatternPredicate, 14,
28990 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLT_D),
28991 7, 2, 0, 1,
28992 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
28993 13, 3, 3, 2, 4,
28994 0,
28995 52,
28996 OPC_CheckChild2CondCode, ISD::SETOLE,
28997 OPC_SwitchType , 22, 8,
28998 OPC_MoveParent,
28999 OPC_RecordChild1,
29000 OPC_RecordChild2,
29001 OPC_CheckType, 13,
29002 OPC_CheckPatternPredicate, 13,
29003 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_D),
29004 8, 2, 0, 1,
29005 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29006 13, 3, 3, 2, 4,
29007 22, 7,
29008 OPC_MoveParent,
29009 OPC_RecordChild1,
29010 OPC_RecordChild2,
29011 OPC_CheckType, 13,
29012 OPC_CheckPatternPredicate, 14,
29013 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CLE_D),
29014 7, 2, 0, 1,
29015 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29016 13, 3, 3, 2, 4,
29017 0,
29018 52,
29019 OPC_CheckChild2CondCode, ISD::SETONE,
29020 OPC_SwitchType , 22, 8,
29021 OPC_MoveParent,
29022 OPC_RecordChild1,
29023 OPC_RecordChild2,
29024 OPC_CheckType, 13,
29025 OPC_CheckPatternPredicate, 13,
29026 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_D),
29027 8, 2, 0, 1,
29028 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29029 13, 3, 3, 2, 4,
29030 22, 7,
29031 OPC_MoveParent,
29032 OPC_RecordChild1,
29033 OPC_RecordChild2,
29034 OPC_CheckType, 13,
29035 OPC_CheckPatternPredicate, 14,
29036 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CNE_D),
29037 7, 2, 0, 1,
29038 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29039 13, 3, 3, 2, 4,
29040 0,
29041 52,
29042 OPC_CheckChild2CondCode, ISD::SETO,
29043 OPC_SwitchType , 22, 8,
29044 OPC_MoveParent,
29045 OPC_RecordChild1,
29046 OPC_RecordChild2,
29047 OPC_CheckType, 13,
29048 OPC_CheckPatternPredicate, 13,
29049 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_D),
29050 8, 2, 0, 1,
29051 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29052 13, 3, 3, 2, 4,
29053 22, 7,
29054 OPC_MoveParent,
29055 OPC_RecordChild1,
29056 OPC_RecordChild2,
29057 OPC_CheckType, 13,
29058 OPC_CheckPatternPredicate, 14,
29059 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_COR_D),
29060 7, 2, 0, 1,
29061 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29062 13, 3, 3, 2, 4,
29063 0,
29064 52,
29065 OPC_CheckChild2CondCode, ISD::SETUEQ,
29066 OPC_SwitchType , 22, 8,
29067 OPC_MoveParent,
29068 OPC_RecordChild1,
29069 OPC_RecordChild2,
29070 OPC_CheckType, 13,
29071 OPC_CheckPatternPredicate, 13,
29072 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_D),
29073 8, 2, 0, 1,
29074 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29075 13, 3, 3, 2, 4,
29076 22, 7,
29077 OPC_MoveParent,
29078 OPC_RecordChild1,
29079 OPC_RecordChild2,
29080 OPC_CheckType, 13,
29081 OPC_CheckPatternPredicate, 14,
29082 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUEQ_D),
29083 7, 2, 0, 1,
29084 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29085 13, 3, 3, 2, 4,
29086 0,
29087 52,
29088 OPC_CheckChild2CondCode, ISD::SETULT,
29089 OPC_SwitchType , 22, 8,
29090 OPC_MoveParent,
29091 OPC_RecordChild1,
29092 OPC_RecordChild2,
29093 OPC_CheckType, 13,
29094 OPC_CheckPatternPredicate, 13,
29095 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_D),
29096 8, 2, 0, 1,
29097 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29098 13, 3, 3, 2, 4,
29099 22, 7,
29100 OPC_MoveParent,
29101 OPC_RecordChild1,
29102 OPC_RecordChild2,
29103 OPC_CheckType, 13,
29104 OPC_CheckPatternPredicate, 14,
29105 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULT_D),
29106 7, 2, 0, 1,
29107 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29108 13, 3, 3, 2, 4,
29109 0,
29110 52,
29111 OPC_CheckChild2CondCode, ISD::SETULE,
29112 OPC_SwitchType , 22, 8,
29113 OPC_MoveParent,
29114 OPC_RecordChild1,
29115 OPC_RecordChild2,
29116 OPC_CheckType, 13,
29117 OPC_CheckPatternPredicate, 13,
29118 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_D),
29119 8, 2, 0, 1,
29120 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29121 13, 3, 3, 2, 4,
29122 22, 7,
29123 OPC_MoveParent,
29124 OPC_RecordChild1,
29125 OPC_RecordChild2,
29126 OPC_CheckType, 13,
29127 OPC_CheckPatternPredicate, 14,
29128 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CULE_D),
29129 7, 2, 0, 1,
29130 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29131 13, 3, 3, 2, 4,
29132 0,
29133 52,
29134 OPC_CheckChild2CondCode, ISD::SETUNE,
29135 OPC_SwitchType , 22, 8,
29136 OPC_MoveParent,
29137 OPC_RecordChild1,
29138 OPC_RecordChild2,
29139 OPC_CheckType, 13,
29140 OPC_CheckPatternPredicate, 13,
29141 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_D),
29142 8, 2, 0, 1,
29143 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29144 13, 3, 3, 2, 4,
29145 22, 7,
29146 OPC_MoveParent,
29147 OPC_RecordChild1,
29148 OPC_RecordChild2,
29149 OPC_CheckType, 13,
29150 OPC_CheckPatternPredicate, 14,
29151 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUNE_D),
29152 7, 2, 0, 1,
29153 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29154 13, 3, 3, 2, 4,
29155 0,
29156 52,
29157 OPC_CheckChild2CondCode, ISD::SETUO,
29158 OPC_SwitchType , 22, 8,
29159 OPC_MoveParent,
29160 OPC_RecordChild1,
29161 OPC_RecordChild2,
29162 OPC_CheckType, 13,
29163 OPC_CheckPatternPredicate, 13,
29164 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_D),
29165 8, 2, 0, 1,
29166 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29167 13, 3, 3, 2, 4,
29168 22, 7,
29169 OPC_MoveParent,
29170 OPC_RecordChild1,
29171 OPC_RecordChild2,
29172 OPC_CheckType, 13,
29173 OPC_CheckPatternPredicate, 14,
29174 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCMP_CUN_D),
29175 7, 2, 0, 1,
29176 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29177 13, 3, 3, 2, 4,
29178 0,
29179 0,
29180 0,
29181 63,
29182 OPC_RecordChild0,
29183 OPC_Scope, 29,
29184 OPC_CheckChild0TypeI64,
29185 OPC_RecordChild1,
29186 OPC_RecordChild2,
29187 OPC_SwitchType , 10, 12,
29188 OPC_CheckPatternPredicate, 11,
29189 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
29190 12, 3, 2, 1, 0,
29191 10, 13,
29192 OPC_CheckPatternPredicate, 13,
29193 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29194 13, 3, 2, 1, 0,
29195 0,
29196 29,
29197 OPC_CheckChild0TypeI32,
29198 OPC_RecordChild1,
29199 OPC_RecordChild2,
29200 OPC_SwitchType , 10, 12,
29201 OPC_CheckPatternPredicate, 12,
29202 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xS),
29203 12, 3, 2, 1, 0,
29204 10, 13,
29205 OPC_CheckPatternPredicate, 14,
29206 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSEL_xD),
29207 13, 3, 2, 1, 0,
29208 0,
29209 0,
29210 0,
29211 116, TARGET_VAL(LoongArchISD::SELECT_CC),
29212 OPC_RecordNode,
29213 OPC_RecordChild0,
29214 OPC_Scope, 54,
29215 OPC_CheckChild0TypeI64,
29216 OPC_Scope, 26,
29217 OPC_CheckChild1Integer, 0,
29218 OPC_MoveChild2,
29219 OPC_CheckOpcode, TARGET_VAL(ISD::CONDCODE),
29220 OPC_MoveParent,
29221 OPC_RecordChild3,
29222 OPC_RecordChild4,
29223 OPC_CheckTypeI64,
29224 OPC_CheckPatternPredicate7,
29225 OPC_EmitRegisterI64, LoongArch::R0,
29226 OPC_EmitNodeXForm, 11, 0,
29227 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::Select_GPR_Using_CC_GPR),
29228 8, 5, 1, 4, 5, 2, 3,
29229 23,
29230 OPC_RecordChild1,
29231 OPC_MoveChild2,
29232 OPC_CheckOpcode, TARGET_VAL(ISD::CONDCODE),
29233 OPC_MoveParent,
29234 OPC_RecordChild3,
29235 OPC_RecordChild4,
29236 OPC_CheckTypeI64,
29237 OPC_CheckPatternPredicate7,
29238 OPC_EmitNodeXForm, 11, 0,
29239 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::Select_GPR_Using_CC_GPR),
29240 8, 5, 1, 2, 5, 3, 4,
29241 0,
29242 56,
29243 OPC_CheckChild0TypeI32,
29244 OPC_Scope, 27,
29245 OPC_CheckChild1Integer, 0,
29246 OPC_MoveChild2,
29247 OPC_CheckOpcode, TARGET_VAL(ISD::CONDCODE),
29248 OPC_MoveParent,
29249 OPC_RecordChild3,
29250 OPC_RecordChild4,
29251 OPC_CheckTypeI32,
29252 OPC_CheckPatternPredicate, 8,
29253 OPC_EmitRegisterI32, LoongArch::R0,
29254 OPC_EmitNodeXForm, 11, 0,
29255 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::Select_GPR_Using_CC_GPR),
29256 7, 5, 1, 4, 5, 2, 3,
29257 24,
29258 OPC_RecordChild1,
29259 OPC_MoveChild2,
29260 OPC_CheckOpcode, TARGET_VAL(ISD::CONDCODE),
29261 OPC_MoveParent,
29262 OPC_RecordChild3,
29263 OPC_RecordChild4,
29264 OPC_CheckTypeI32,
29265 OPC_CheckPatternPredicate, 8,
29266 OPC_EmitNodeXForm, 11, 0,
29267 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::Select_GPR_Using_CC_GPR),
29268 7, 5, 1, 2, 5, 3, 4,
29269 0,
29270 0,
29271 9|128,1, TARGET_VAL(ISD::ROTR),
29272 OPC_RecordChild0,
29273 OPC_RecordChild1,
29274 OPC_Scope, 71,
29275 OPC_MoveChild1,
29276 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29277 OPC_Scope, 32,
29278 OPC_CheckPredicate, 25,
29279 OPC_SwitchType , 12, 8,
29280 OPC_MoveParent,
29281 OPC_CheckTypeI64,
29282 OPC_CheckPatternPredicate, 20,
29283 OPC_EmitConvertToTarget1,
29284 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTRI_W),
29285 8, 2, 0, 2,
29286 12, 7,
29287 OPC_MoveParent,
29288 OPC_CheckTypeI32,
29289 OPC_CheckPatternPredicate, 16,
29290 OPC_EmitConvertToTarget1,
29291 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTRI_W),
29292 7, 2, 0, 2,
29293 0,
29294 31,
29295 OPC_CheckPredicate, 33,
29296 OPC_SwitchType , 11, 8,
29297 OPC_MoveParent,
29298 OPC_CheckTypeI64,
29299 OPC_CheckPatternPredicate6,
29300 OPC_EmitConvertToTarget1,
29301 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTRI_D),
29302 8, 2, 0, 2,
29303 12, 7,
29304 OPC_MoveParent,
29305 OPC_CheckTypeI32,
29306 OPC_CheckPatternPredicate, 9,
29307 OPC_EmitConvertToTarget1,
29308 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTRI_D),
29309 7, 2, 0, 2,
29310 0,
29311 0,
29312 29,
29313 OPC_CheckChild1TypeI64,
29314 OPC_CheckTypeI64,
29315 OPC_Scope, 12,
29316 OPC_CheckPatternPredicate, 20,
29317 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29318 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTR_W),
29319 8, 2, 0, 2,
29320 11,
29321 OPC_CheckPatternPredicate6,
29322 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29323 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTR_D),
29324 8, 2, 0, 2,
29325 0,
29326 30,
29327 OPC_CheckChild1TypeI32,
29328 OPC_CheckTypeI32,
29329 OPC_Scope, 12,
29330 OPC_CheckPatternPredicate, 16,
29331 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29332 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTR_W),
29333 7, 2, 0, 2,
29334 12,
29335 OPC_CheckPatternPredicate, 9,
29336 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29337 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTR_D),
29338 7, 2, 0, 2,
29339 0,
29340 0,
29341 33, TARGET_VAL(LoongArchISD::ROTR_W),
29342 OPC_RecordChild0,
29343 OPC_RecordChild1,
29344 OPC_Scope, 16,
29345 OPC_MoveChild1,
29346 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29347 OPC_CheckPredicate, 25,
29348 OPC_MoveParent,
29349 OPC_CheckPatternPredicate6,
29350 OPC_EmitConvertToTarget1,
29351 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTRI_W),
29352 8, 2, 0, 2,
29353 11,
29354 OPC_CheckPatternPredicate6,
29355 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
29356 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTR_W),
29357 8, 2, 0, 2,
29358 0,
29359 119|128,5, TARGET_VAL(ISD::SHL),
29360 OPC_RecordChild0,
29361 OPC_Scope, 8|128,1,
29362 OPC_RecordChild1,
29363 OPC_Scope, 71,
29364 OPC_MoveChild1,
29365 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29366 OPC_Scope, 32,
29367 OPC_CheckPredicate, 25,
29368 OPC_SwitchType , 12, 8,
29369 OPC_MoveParent,
29370 OPC_CheckTypeI64,
29371 OPC_CheckPatternPredicate, 15,
29372 OPC_EmitConvertToTarget1,
29373 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLLI_W),
29374 8, 2, 0, 2,
29375 12, 7,
29376 OPC_MoveParent,
29377 OPC_CheckTypeI32,
29378 OPC_CheckPatternPredicate, 10,
29379 OPC_EmitConvertToTarget1,
29380 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLLI_W),
29381 7, 2, 0, 2,
29382 0,
29383 31,
29384 OPC_CheckPredicate, 33,
29385 OPC_SwitchType , 11, 8,
29386 OPC_MoveParent,
29387 OPC_CheckTypeI64,
29388 OPC_CheckPatternPredicate6,
29389 OPC_EmitConvertToTarget1,
29390 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLLI_D),
29391 8, 2, 0, 2,
29392 12, 7,
29393 OPC_MoveParent,
29394 OPC_CheckTypeI32,
29395 OPC_CheckPatternPredicate, 9,
29396 OPC_EmitConvertToTarget1,
29397 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLLI_D),
29398 7, 2, 0, 2,
29399 0,
29400 0,
29401 29,
29402 OPC_CheckChild1TypeI64,
29403 OPC_CheckTypeI64,
29404 OPC_Scope, 12,
29405 OPC_CheckPatternPredicate, 15,
29406 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29407 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLL_W),
29408 8, 2, 0, 2,
29409 11,
29410 OPC_CheckPatternPredicate6,
29411 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29412 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLL_D),
29413 8, 2, 0, 2,
29414 0,
29415 30,
29416 OPC_CheckChild1TypeI32,
29417 OPC_CheckTypeI32,
29418 OPC_Scope, 12,
29419 OPC_CheckPatternPredicate, 10,
29420 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29421 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLL_W),
29422 7, 2, 0, 2,
29423 12,
29424 OPC_CheckPatternPredicate, 9,
29425 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29426 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLL_D),
29427 7, 2, 0, 2,
29428 0,
29429 0,
29430 47|128,2,
29431 OPC_MoveChild1,
29432 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
29433 OPC_Scope, 22|128,1,
29434 OPC_MoveChild0,
29435 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
29436 OPC_Scope, 17,
29437 OPC_CheckPredicate, 14,
29438 OPC_MoveParent,
29439 OPC_RecordChild1,
29440 OPC_CheckType, 40,
29441 OPC_MoveParent,
29442 OPC_CheckType, 40,
29443 OPC_CheckPatternPredicate1,
29444 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_B),
29445 40, 2, 0, 1,
29446 17,
29447 OPC_CheckPredicate, 15,
29448 OPC_MoveParent,
29449 OPC_RecordChild1,
29450 OPC_CheckType, 51,
29451 OPC_MoveParent,
29452 OPC_CheckType, 51,
29453 OPC_CheckPatternPredicate1,
29454 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_H),
29455 51, 2, 0, 1,
29456 17,
29457 OPC_CheckPredicate, 16,
29458 OPC_MoveParent,
29459 OPC_RecordChild1,
29460 OPC_CheckType, 62,
29461 OPC_MoveParent,
29462 OPC_CheckType, 62,
29463 OPC_CheckPatternPredicate1,
29464 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_W),
29465 62, 2, 0, 1,
29466 17,
29467 OPC_CheckPredicate, 17,
29468 OPC_MoveParent,
29469 OPC_RecordChild1,
29470 OPC_CheckType, 81,
29471 OPC_MoveParent,
29472 OPC_CheckType, 81,
29473 OPC_CheckPatternPredicate1,
29474 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_D),
29475 81, 2, 0, 1,
29476 17,
29477 OPC_CheckPredicate, 14,
29478 OPC_MoveParent,
29479 OPC_RecordChild1,
29480 OPC_CheckType, 41,
29481 OPC_MoveParent,
29482 OPC_CheckType, 41,
29483 OPC_CheckPatternPredicate0,
29484 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_B),
29485 41, 2, 0, 1,
29486 17,
29487 OPC_CheckPredicate, 15,
29488 OPC_MoveParent,
29489 OPC_RecordChild1,
29490 OPC_CheckType, 52,
29491 OPC_MoveParent,
29492 OPC_CheckType, 52,
29493 OPC_CheckPatternPredicate0,
29494 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_H),
29495 52, 2, 0, 1,
29496 17,
29497 OPC_CheckPredicate, 16,
29498 OPC_MoveParent,
29499 OPC_RecordChild1,
29500 OPC_CheckType, 66,
29501 OPC_MoveParent,
29502 OPC_CheckType, 66,
29503 OPC_CheckPatternPredicate0,
29504 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_W),
29505 66, 2, 0, 1,
29506 17,
29507 OPC_CheckPredicate, 17,
29508 OPC_MoveParent,
29509 OPC_RecordChild1,
29510 OPC_CheckType, 83,
29511 OPC_MoveParent,
29512 OPC_CheckType, 83,
29513 OPC_CheckPatternPredicate0,
29514 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_D),
29515 83, 2, 0, 1,
29516 0,
29517 15|128,1,
29518 OPC_RecordChild0,
29519 OPC_MoveChild1,
29520 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
29521 OPC_Scope, 16,
29522 OPC_CheckPredicate, 14,
29523 OPC_MoveParent,
29524 OPC_CheckType, 40,
29525 OPC_MoveParent,
29526 OPC_CheckType, 40,
29527 OPC_CheckPatternPredicate1,
29528 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_B),
29529 40, 2, 0, 1,
29530 16,
29531 OPC_CheckPredicate, 15,
29532 OPC_MoveParent,
29533 OPC_CheckType, 51,
29534 OPC_MoveParent,
29535 OPC_CheckType, 51,
29536 OPC_CheckPatternPredicate1,
29537 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_H),
29538 51, 2, 0, 1,
29539 16,
29540 OPC_CheckPredicate, 16,
29541 OPC_MoveParent,
29542 OPC_CheckType, 62,
29543 OPC_MoveParent,
29544 OPC_CheckType, 62,
29545 OPC_CheckPatternPredicate1,
29546 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_W),
29547 62, 2, 0, 1,
29548 16,
29549 OPC_CheckPredicate, 17,
29550 OPC_MoveParent,
29551 OPC_CheckType, 81,
29552 OPC_MoveParent,
29553 OPC_CheckType, 81,
29554 OPC_CheckPatternPredicate1,
29555 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_D),
29556 81, 2, 0, 1,
29557 16,
29558 OPC_CheckPredicate, 14,
29559 OPC_MoveParent,
29560 OPC_CheckType, 41,
29561 OPC_MoveParent,
29562 OPC_CheckType, 41,
29563 OPC_CheckPatternPredicate0,
29564 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_B),
29565 41, 2, 0, 1,
29566 16,
29567 OPC_CheckPredicate, 15,
29568 OPC_MoveParent,
29569 OPC_CheckType, 52,
29570 OPC_MoveParent,
29571 OPC_CheckType, 52,
29572 OPC_CheckPatternPredicate0,
29573 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_H),
29574 52, 2, 0, 1,
29575 16,
29576 OPC_CheckPredicate, 16,
29577 OPC_MoveParent,
29578 OPC_CheckType, 66,
29579 OPC_MoveParent,
29580 OPC_CheckType, 66,
29581 OPC_CheckPatternPredicate0,
29582 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_W),
29583 66, 2, 0, 1,
29584 16,
29585 OPC_CheckPredicate, 17,
29586 OPC_MoveParent,
29587 OPC_CheckType, 83,
29588 OPC_MoveParent,
29589 OPC_CheckType, 83,
29590 OPC_CheckPatternPredicate0,
29591 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_D),
29592 83, 2, 0, 1,
29593 0,
29594 0,
29595 55|128,2,
29596 OPC_RecordChild1,
29597 OPC_SwitchType , 37, 40,
29598 OPC_CheckChild1Type, 40,
29599 OPC_Scope, 11,
29600 OPC_CheckPatternPredicate2,
29601 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
29602 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_B),
29603 40, 2, 0, 2,
29604 11,
29605 OPC_CheckPatternPredicate4,
29606 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
29607 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_B),
29608 40, 2, 0, 2,
29609 8,
29610 OPC_CheckPatternPredicate1,
29611 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_B),
29612 40, 2, 0, 1,
29613 0,
29614 37, 51,
29615 OPC_CheckChild1Type, 51,
29616 OPC_Scope, 11,
29617 OPC_CheckPatternPredicate2,
29618 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
29619 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_H),
29620 51, 2, 0, 2,
29621 11,
29622 OPC_CheckPatternPredicate4,
29623 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
29624 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_H),
29625 51, 2, 0, 2,
29626 8,
29627 OPC_CheckPatternPredicate1,
29628 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_H),
29629 51, 2, 0, 1,
29630 0,
29631 35, 62,
29632 OPC_CheckChild1Type, 62,
29633 OPC_Scope, 10,
29634 OPC_CheckPatternPredicate2,
29635 OPC_CheckComplexPat1, /*#*/1,
29636 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_W),
29637 62, 2, 0, 2,
29638 10,
29639 OPC_CheckPatternPredicate4,
29640 OPC_CheckComplexPat1, /*#*/1,
29641 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_W),
29642 62, 2, 0, 2,
29643 8,
29644 OPC_CheckPatternPredicate1,
29645 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_W),
29646 62, 2, 0, 1,
29647 0,
29648 37, 81,
29649 OPC_CheckChild1Type, 81,
29650 OPC_Scope, 11,
29651 OPC_CheckPatternPredicate2,
29652 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
29653 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_D),
29654 81, 2, 0, 2,
29655 11,
29656 OPC_CheckPatternPredicate4,
29657 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
29658 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_D),
29659 81, 2, 0, 2,
29660 8,
29661 OPC_CheckPatternPredicate1,
29662 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLL_D),
29663 81, 2, 0, 1,
29664 0,
29665 37, 41,
29666 OPC_CheckChild1Type, 41,
29667 OPC_Scope, 11,
29668 OPC_CheckPatternPredicate3,
29669 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
29670 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_B),
29671 41, 2, 0, 2,
29672 11,
29673 OPC_CheckPatternPredicate5,
29674 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
29675 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_B),
29676 41, 2, 0, 2,
29677 8,
29678 OPC_CheckPatternPredicate0,
29679 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_B),
29680 41, 2, 0, 1,
29681 0,
29682 37, 52,
29683 OPC_CheckChild1Type, 52,
29684 OPC_Scope, 11,
29685 OPC_CheckPatternPredicate3,
29686 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
29687 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_H),
29688 52, 2, 0, 2,
29689 11,
29690 OPC_CheckPatternPredicate5,
29691 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
29692 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_H),
29693 52, 2, 0, 2,
29694 8,
29695 OPC_CheckPatternPredicate0,
29696 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_H),
29697 52, 2, 0, 1,
29698 0,
29699 35, 66,
29700 OPC_CheckChild1Type, 66,
29701 OPC_Scope, 10,
29702 OPC_CheckPatternPredicate3,
29703 OPC_CheckComplexPat1, /*#*/1,
29704 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_W),
29705 66, 2, 0, 2,
29706 10,
29707 OPC_CheckPatternPredicate5,
29708 OPC_CheckComplexPat1, /*#*/1,
29709 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_W),
29710 66, 2, 0, 2,
29711 8,
29712 OPC_CheckPatternPredicate0,
29713 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_W),
29714 66, 2, 0, 1,
29715 0,
29716 37, 83,
29717 OPC_CheckChild1Type, 83,
29718 OPC_Scope, 11,
29719 OPC_CheckPatternPredicate3,
29720 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
29721 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_D),
29722 83, 2, 0, 2,
29723 11,
29724 OPC_CheckPatternPredicate5,
29725 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
29726 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_D),
29727 83, 2, 0, 2,
29728 8,
29729 OPC_CheckPatternPredicate0,
29730 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLL_D),
29731 83, 2, 0, 1,
29732 0,
29733 0,
29734 0,
29735 119|128,5, TARGET_VAL(ISD::SRA),
29736 OPC_RecordChild0,
29737 OPC_Scope, 8|128,1,
29738 OPC_RecordChild1,
29739 OPC_Scope, 71,
29740 OPC_MoveChild1,
29741 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29742 OPC_Scope, 32,
29743 OPC_CheckPredicate, 25,
29744 OPC_SwitchType , 12, 8,
29745 OPC_MoveParent,
29746 OPC_CheckTypeI64,
29747 OPC_CheckPatternPredicate, 15,
29748 OPC_EmitConvertToTarget1,
29749 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRAI_W),
29750 8, 2, 0, 2,
29751 12, 7,
29752 OPC_MoveParent,
29753 OPC_CheckTypeI32,
29754 OPC_CheckPatternPredicate, 10,
29755 OPC_EmitConvertToTarget1,
29756 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRAI_W),
29757 7, 2, 0, 2,
29758 0,
29759 31,
29760 OPC_CheckPredicate, 33,
29761 OPC_SwitchType , 11, 8,
29762 OPC_MoveParent,
29763 OPC_CheckTypeI64,
29764 OPC_CheckPatternPredicate6,
29765 OPC_EmitConvertToTarget1,
29766 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRAI_D),
29767 8, 2, 0, 2,
29768 12, 7,
29769 OPC_MoveParent,
29770 OPC_CheckTypeI32,
29771 OPC_CheckPatternPredicate, 9,
29772 OPC_EmitConvertToTarget1,
29773 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRAI_D),
29774 7, 2, 0, 2,
29775 0,
29776 0,
29777 29,
29778 OPC_CheckChild1TypeI64,
29779 OPC_CheckTypeI64,
29780 OPC_Scope, 12,
29781 OPC_CheckPatternPredicate, 15,
29782 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29783 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRA_W),
29784 8, 2, 0, 2,
29785 11,
29786 OPC_CheckPatternPredicate6,
29787 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29788 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRA_D),
29789 8, 2, 0, 2,
29790 0,
29791 30,
29792 OPC_CheckChild1TypeI32,
29793 OPC_CheckTypeI32,
29794 OPC_Scope, 12,
29795 OPC_CheckPatternPredicate, 10,
29796 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29797 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRA_W),
29798 7, 2, 0, 2,
29799 12,
29800 OPC_CheckPatternPredicate, 9,
29801 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
29802 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRA_D),
29803 7, 2, 0, 2,
29804 0,
29805 0,
29806 47|128,2,
29807 OPC_MoveChild1,
29808 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
29809 OPC_Scope, 22|128,1,
29810 OPC_MoveChild0,
29811 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
29812 OPC_Scope, 17,
29813 OPC_CheckPredicate, 14,
29814 OPC_MoveParent,
29815 OPC_RecordChild1,
29816 OPC_CheckType, 40,
29817 OPC_MoveParent,
29818 OPC_CheckType, 40,
29819 OPC_CheckPatternPredicate1,
29820 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_B),
29821 40, 2, 0, 1,
29822 17,
29823 OPC_CheckPredicate, 15,
29824 OPC_MoveParent,
29825 OPC_RecordChild1,
29826 OPC_CheckType, 51,
29827 OPC_MoveParent,
29828 OPC_CheckType, 51,
29829 OPC_CheckPatternPredicate1,
29830 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_H),
29831 51, 2, 0, 1,
29832 17,
29833 OPC_CheckPredicate, 16,
29834 OPC_MoveParent,
29835 OPC_RecordChild1,
29836 OPC_CheckType, 62,
29837 OPC_MoveParent,
29838 OPC_CheckType, 62,
29839 OPC_CheckPatternPredicate1,
29840 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_W),
29841 62, 2, 0, 1,
29842 17,
29843 OPC_CheckPredicate, 17,
29844 OPC_MoveParent,
29845 OPC_RecordChild1,
29846 OPC_CheckType, 81,
29847 OPC_MoveParent,
29848 OPC_CheckType, 81,
29849 OPC_CheckPatternPredicate1,
29850 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_D),
29851 81, 2, 0, 1,
29852 17,
29853 OPC_CheckPredicate, 14,
29854 OPC_MoveParent,
29855 OPC_RecordChild1,
29856 OPC_CheckType, 41,
29857 OPC_MoveParent,
29858 OPC_CheckType, 41,
29859 OPC_CheckPatternPredicate0,
29860 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_B),
29861 41, 2, 0, 1,
29862 17,
29863 OPC_CheckPredicate, 15,
29864 OPC_MoveParent,
29865 OPC_RecordChild1,
29866 OPC_CheckType, 52,
29867 OPC_MoveParent,
29868 OPC_CheckType, 52,
29869 OPC_CheckPatternPredicate0,
29870 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_H),
29871 52, 2, 0, 1,
29872 17,
29873 OPC_CheckPredicate, 16,
29874 OPC_MoveParent,
29875 OPC_RecordChild1,
29876 OPC_CheckType, 66,
29877 OPC_MoveParent,
29878 OPC_CheckType, 66,
29879 OPC_CheckPatternPredicate0,
29880 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_W),
29881 66, 2, 0, 1,
29882 17,
29883 OPC_CheckPredicate, 17,
29884 OPC_MoveParent,
29885 OPC_RecordChild1,
29886 OPC_CheckType, 83,
29887 OPC_MoveParent,
29888 OPC_CheckType, 83,
29889 OPC_CheckPatternPredicate0,
29890 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_D),
29891 83, 2, 0, 1,
29892 0,
29893 15|128,1,
29894 OPC_RecordChild0,
29895 OPC_MoveChild1,
29896 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
29897 OPC_Scope, 16,
29898 OPC_CheckPredicate, 14,
29899 OPC_MoveParent,
29900 OPC_CheckType, 40,
29901 OPC_MoveParent,
29902 OPC_CheckType, 40,
29903 OPC_CheckPatternPredicate1,
29904 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_B),
29905 40, 2, 0, 1,
29906 16,
29907 OPC_CheckPredicate, 15,
29908 OPC_MoveParent,
29909 OPC_CheckType, 51,
29910 OPC_MoveParent,
29911 OPC_CheckType, 51,
29912 OPC_CheckPatternPredicate1,
29913 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_H),
29914 51, 2, 0, 1,
29915 16,
29916 OPC_CheckPredicate, 16,
29917 OPC_MoveParent,
29918 OPC_CheckType, 62,
29919 OPC_MoveParent,
29920 OPC_CheckType, 62,
29921 OPC_CheckPatternPredicate1,
29922 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_W),
29923 62, 2, 0, 1,
29924 16,
29925 OPC_CheckPredicate, 17,
29926 OPC_MoveParent,
29927 OPC_CheckType, 81,
29928 OPC_MoveParent,
29929 OPC_CheckType, 81,
29930 OPC_CheckPatternPredicate1,
29931 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_D),
29932 81, 2, 0, 1,
29933 16,
29934 OPC_CheckPredicate, 14,
29935 OPC_MoveParent,
29936 OPC_CheckType, 41,
29937 OPC_MoveParent,
29938 OPC_CheckType, 41,
29939 OPC_CheckPatternPredicate0,
29940 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_B),
29941 41, 2, 0, 1,
29942 16,
29943 OPC_CheckPredicate, 15,
29944 OPC_MoveParent,
29945 OPC_CheckType, 52,
29946 OPC_MoveParent,
29947 OPC_CheckType, 52,
29948 OPC_CheckPatternPredicate0,
29949 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_H),
29950 52, 2, 0, 1,
29951 16,
29952 OPC_CheckPredicate, 16,
29953 OPC_MoveParent,
29954 OPC_CheckType, 66,
29955 OPC_MoveParent,
29956 OPC_CheckType, 66,
29957 OPC_CheckPatternPredicate0,
29958 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_W),
29959 66, 2, 0, 1,
29960 16,
29961 OPC_CheckPredicate, 17,
29962 OPC_MoveParent,
29963 OPC_CheckType, 83,
29964 OPC_MoveParent,
29965 OPC_CheckType, 83,
29966 OPC_CheckPatternPredicate0,
29967 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_D),
29968 83, 2, 0, 1,
29969 0,
29970 0,
29971 55|128,2,
29972 OPC_RecordChild1,
29973 OPC_SwitchType , 37, 40,
29974 OPC_CheckChild1Type, 40,
29975 OPC_Scope, 11,
29976 OPC_CheckPatternPredicate2,
29977 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
29978 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAI_B),
29979 40, 2, 0, 2,
29980 11,
29981 OPC_CheckPatternPredicate4,
29982 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
29983 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAI_B),
29984 40, 2, 0, 2,
29985 8,
29986 OPC_CheckPatternPredicate1,
29987 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_B),
29988 40, 2, 0, 1,
29989 0,
29990 37, 51,
29991 OPC_CheckChild1Type, 51,
29992 OPC_Scope, 11,
29993 OPC_CheckPatternPredicate2,
29994 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
29995 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAI_H),
29996 51, 2, 0, 2,
29997 11,
29998 OPC_CheckPatternPredicate4,
29999 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
30000 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAI_H),
30001 51, 2, 0, 2,
30002 8,
30003 OPC_CheckPatternPredicate1,
30004 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_H),
30005 51, 2, 0, 1,
30006 0,
30007 35, 62,
30008 OPC_CheckChild1Type, 62,
30009 OPC_Scope, 10,
30010 OPC_CheckPatternPredicate2,
30011 OPC_CheckComplexPat1, /*#*/1,
30012 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAI_W),
30013 62, 2, 0, 2,
30014 10,
30015 OPC_CheckPatternPredicate4,
30016 OPC_CheckComplexPat1, /*#*/1,
30017 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAI_W),
30018 62, 2, 0, 2,
30019 8,
30020 OPC_CheckPatternPredicate1,
30021 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_W),
30022 62, 2, 0, 1,
30023 0,
30024 37, 81,
30025 OPC_CheckChild1Type, 81,
30026 OPC_Scope, 11,
30027 OPC_CheckPatternPredicate2,
30028 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
30029 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAI_D),
30030 81, 2, 0, 2,
30031 11,
30032 OPC_CheckPatternPredicate4,
30033 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
30034 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRAI_D),
30035 81, 2, 0, 2,
30036 8,
30037 OPC_CheckPatternPredicate1,
30038 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRA_D),
30039 81, 2, 0, 1,
30040 0,
30041 37, 41,
30042 OPC_CheckChild1Type, 41,
30043 OPC_Scope, 11,
30044 OPC_CheckPatternPredicate3,
30045 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
30046 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAI_B),
30047 41, 2, 0, 2,
30048 11,
30049 OPC_CheckPatternPredicate5,
30050 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
30051 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAI_B),
30052 41, 2, 0, 2,
30053 8,
30054 OPC_CheckPatternPredicate0,
30055 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_B),
30056 41, 2, 0, 1,
30057 0,
30058 37, 52,
30059 OPC_CheckChild1Type, 52,
30060 OPC_Scope, 11,
30061 OPC_CheckPatternPredicate3,
30062 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
30063 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAI_H),
30064 52, 2, 0, 2,
30065 11,
30066 OPC_CheckPatternPredicate5,
30067 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
30068 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAI_H),
30069 52, 2, 0, 2,
30070 8,
30071 OPC_CheckPatternPredicate0,
30072 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_H),
30073 52, 2, 0, 1,
30074 0,
30075 35, 66,
30076 OPC_CheckChild1Type, 66,
30077 OPC_Scope, 10,
30078 OPC_CheckPatternPredicate3,
30079 OPC_CheckComplexPat1, /*#*/1,
30080 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAI_W),
30081 66, 2, 0, 2,
30082 10,
30083 OPC_CheckPatternPredicate5,
30084 OPC_CheckComplexPat1, /*#*/1,
30085 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAI_W),
30086 66, 2, 0, 2,
30087 8,
30088 OPC_CheckPatternPredicate0,
30089 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_W),
30090 66, 2, 0, 1,
30091 0,
30092 37, 83,
30093 OPC_CheckChild1Type, 83,
30094 OPC_Scope, 11,
30095 OPC_CheckPatternPredicate3,
30096 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
30097 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAI_D),
30098 83, 2, 0, 2,
30099 11,
30100 OPC_CheckPatternPredicate5,
30101 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
30102 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRAI_D),
30103 83, 2, 0, 2,
30104 8,
30105 OPC_CheckPatternPredicate0,
30106 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRA_D),
30107 83, 2, 0, 1,
30108 0,
30109 0,
30110 0,
30111 119|128,5, TARGET_VAL(ISD::SRL),
30112 OPC_RecordChild0,
30113 OPC_Scope, 8|128,1,
30114 OPC_RecordChild1,
30115 OPC_Scope, 71,
30116 OPC_MoveChild1,
30117 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30118 OPC_Scope, 32,
30119 OPC_CheckPredicate, 25,
30120 OPC_SwitchType , 12, 8,
30121 OPC_MoveParent,
30122 OPC_CheckTypeI64,
30123 OPC_CheckPatternPredicate, 15,
30124 OPC_EmitConvertToTarget1,
30125 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRLI_W),
30126 8, 2, 0, 2,
30127 12, 7,
30128 OPC_MoveParent,
30129 OPC_CheckTypeI32,
30130 OPC_CheckPatternPredicate, 10,
30131 OPC_EmitConvertToTarget1,
30132 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRLI_W),
30133 7, 2, 0, 2,
30134 0,
30135 31,
30136 OPC_CheckPredicate, 33,
30137 OPC_SwitchType , 11, 8,
30138 OPC_MoveParent,
30139 OPC_CheckTypeI64,
30140 OPC_CheckPatternPredicate6,
30141 OPC_EmitConvertToTarget1,
30142 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRLI_D),
30143 8, 2, 0, 2,
30144 12, 7,
30145 OPC_MoveParent,
30146 OPC_CheckTypeI32,
30147 OPC_CheckPatternPredicate, 9,
30148 OPC_EmitConvertToTarget1,
30149 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRLI_D),
30150 7, 2, 0, 2,
30151 0,
30152 0,
30153 29,
30154 OPC_CheckChild1TypeI64,
30155 OPC_CheckTypeI64,
30156 OPC_Scope, 12,
30157 OPC_CheckPatternPredicate, 15,
30158 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
30159 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRL_W),
30160 8, 2, 0, 2,
30161 11,
30162 OPC_CheckPatternPredicate6,
30163 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
30164 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRL_D),
30165 8, 2, 0, 2,
30166 0,
30167 30,
30168 OPC_CheckChild1TypeI32,
30169 OPC_CheckTypeI32,
30170 OPC_Scope, 12,
30171 OPC_CheckPatternPredicate, 10,
30172 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
30173 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRL_W),
30174 7, 2, 0, 2,
30175 12,
30176 OPC_CheckPatternPredicate, 9,
30177 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
30178 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRL_D),
30179 7, 2, 0, 2,
30180 0,
30181 0,
30182 47|128,2,
30183 OPC_MoveChild1,
30184 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
30185 OPC_Scope, 22|128,1,
30186 OPC_MoveChild0,
30187 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
30188 OPC_Scope, 17,
30189 OPC_CheckPredicate, 14,
30190 OPC_MoveParent,
30191 OPC_RecordChild1,
30192 OPC_CheckType, 40,
30193 OPC_MoveParent,
30194 OPC_CheckType, 40,
30195 OPC_CheckPatternPredicate1,
30196 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_B),
30197 40, 2, 0, 1,
30198 17,
30199 OPC_CheckPredicate, 15,
30200 OPC_MoveParent,
30201 OPC_RecordChild1,
30202 OPC_CheckType, 51,
30203 OPC_MoveParent,
30204 OPC_CheckType, 51,
30205 OPC_CheckPatternPredicate1,
30206 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_H),
30207 51, 2, 0, 1,
30208 17,
30209 OPC_CheckPredicate, 16,
30210 OPC_MoveParent,
30211 OPC_RecordChild1,
30212 OPC_CheckType, 62,
30213 OPC_MoveParent,
30214 OPC_CheckType, 62,
30215 OPC_CheckPatternPredicate1,
30216 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_W),
30217 62, 2, 0, 1,
30218 17,
30219 OPC_CheckPredicate, 17,
30220 OPC_MoveParent,
30221 OPC_RecordChild1,
30222 OPC_CheckType, 81,
30223 OPC_MoveParent,
30224 OPC_CheckType, 81,
30225 OPC_CheckPatternPredicate1,
30226 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_D),
30227 81, 2, 0, 1,
30228 17,
30229 OPC_CheckPredicate, 14,
30230 OPC_MoveParent,
30231 OPC_RecordChild1,
30232 OPC_CheckType, 41,
30233 OPC_MoveParent,
30234 OPC_CheckType, 41,
30235 OPC_CheckPatternPredicate0,
30236 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_B),
30237 41, 2, 0, 1,
30238 17,
30239 OPC_CheckPredicate, 15,
30240 OPC_MoveParent,
30241 OPC_RecordChild1,
30242 OPC_CheckType, 52,
30243 OPC_MoveParent,
30244 OPC_CheckType, 52,
30245 OPC_CheckPatternPredicate0,
30246 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_H),
30247 52, 2, 0, 1,
30248 17,
30249 OPC_CheckPredicate, 16,
30250 OPC_MoveParent,
30251 OPC_RecordChild1,
30252 OPC_CheckType, 66,
30253 OPC_MoveParent,
30254 OPC_CheckType, 66,
30255 OPC_CheckPatternPredicate0,
30256 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_W),
30257 66, 2, 0, 1,
30258 17,
30259 OPC_CheckPredicate, 17,
30260 OPC_MoveParent,
30261 OPC_RecordChild1,
30262 OPC_CheckType, 83,
30263 OPC_MoveParent,
30264 OPC_CheckType, 83,
30265 OPC_CheckPatternPredicate0,
30266 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_D),
30267 83, 2, 0, 1,
30268 0,
30269 15|128,1,
30270 OPC_RecordChild0,
30271 OPC_MoveChild1,
30272 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
30273 OPC_Scope, 16,
30274 OPC_CheckPredicate, 14,
30275 OPC_MoveParent,
30276 OPC_CheckType, 40,
30277 OPC_MoveParent,
30278 OPC_CheckType, 40,
30279 OPC_CheckPatternPredicate1,
30280 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_B),
30281 40, 2, 0, 1,
30282 16,
30283 OPC_CheckPredicate, 15,
30284 OPC_MoveParent,
30285 OPC_CheckType, 51,
30286 OPC_MoveParent,
30287 OPC_CheckType, 51,
30288 OPC_CheckPatternPredicate1,
30289 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_H),
30290 51, 2, 0, 1,
30291 16,
30292 OPC_CheckPredicate, 16,
30293 OPC_MoveParent,
30294 OPC_CheckType, 62,
30295 OPC_MoveParent,
30296 OPC_CheckType, 62,
30297 OPC_CheckPatternPredicate1,
30298 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_W),
30299 62, 2, 0, 1,
30300 16,
30301 OPC_CheckPredicate, 17,
30302 OPC_MoveParent,
30303 OPC_CheckType, 81,
30304 OPC_MoveParent,
30305 OPC_CheckType, 81,
30306 OPC_CheckPatternPredicate1,
30307 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_D),
30308 81, 2, 0, 1,
30309 16,
30310 OPC_CheckPredicate, 14,
30311 OPC_MoveParent,
30312 OPC_CheckType, 41,
30313 OPC_MoveParent,
30314 OPC_CheckType, 41,
30315 OPC_CheckPatternPredicate0,
30316 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_B),
30317 41, 2, 0, 1,
30318 16,
30319 OPC_CheckPredicate, 15,
30320 OPC_MoveParent,
30321 OPC_CheckType, 52,
30322 OPC_MoveParent,
30323 OPC_CheckType, 52,
30324 OPC_CheckPatternPredicate0,
30325 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_H),
30326 52, 2, 0, 1,
30327 16,
30328 OPC_CheckPredicate, 16,
30329 OPC_MoveParent,
30330 OPC_CheckType, 66,
30331 OPC_MoveParent,
30332 OPC_CheckType, 66,
30333 OPC_CheckPatternPredicate0,
30334 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_W),
30335 66, 2, 0, 1,
30336 16,
30337 OPC_CheckPredicate, 17,
30338 OPC_MoveParent,
30339 OPC_CheckType, 83,
30340 OPC_MoveParent,
30341 OPC_CheckType, 83,
30342 OPC_CheckPatternPredicate0,
30343 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_D),
30344 83, 2, 0, 1,
30345 0,
30346 0,
30347 55|128,2,
30348 OPC_RecordChild1,
30349 OPC_SwitchType , 37, 40,
30350 OPC_CheckChild1Type, 40,
30351 OPC_Scope, 11,
30352 OPC_CheckPatternPredicate2,
30353 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
30354 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_B),
30355 40, 2, 0, 2,
30356 11,
30357 OPC_CheckPatternPredicate4,
30358 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
30359 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_B),
30360 40, 2, 0, 2,
30361 8,
30362 OPC_CheckPatternPredicate1,
30363 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_B),
30364 40, 2, 0, 1,
30365 0,
30366 37, 51,
30367 OPC_CheckChild1Type, 51,
30368 OPC_Scope, 11,
30369 OPC_CheckPatternPredicate2,
30370 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
30371 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_H),
30372 51, 2, 0, 2,
30373 11,
30374 OPC_CheckPatternPredicate4,
30375 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
30376 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_H),
30377 51, 2, 0, 2,
30378 8,
30379 OPC_CheckPatternPredicate1,
30380 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_H),
30381 51, 2, 0, 1,
30382 0,
30383 35, 62,
30384 OPC_CheckChild1Type, 62,
30385 OPC_Scope, 10,
30386 OPC_CheckPatternPredicate2,
30387 OPC_CheckComplexPat1, /*#*/1,
30388 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_W),
30389 62, 2, 0, 2,
30390 10,
30391 OPC_CheckPatternPredicate4,
30392 OPC_CheckComplexPat1, /*#*/1,
30393 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_W),
30394 62, 2, 0, 2,
30395 8,
30396 OPC_CheckPatternPredicate1,
30397 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_W),
30398 62, 2, 0, 1,
30399 0,
30400 37, 81,
30401 OPC_CheckChild1Type, 81,
30402 OPC_Scope, 11,
30403 OPC_CheckPatternPredicate2,
30404 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
30405 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_D),
30406 81, 2, 0, 2,
30407 11,
30408 OPC_CheckPatternPredicate4,
30409 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
30410 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_D),
30411 81, 2, 0, 2,
30412 8,
30413 OPC_CheckPatternPredicate1,
30414 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRL_D),
30415 81, 2, 0, 1,
30416 0,
30417 37, 41,
30418 OPC_CheckChild1Type, 41,
30419 OPC_Scope, 11,
30420 OPC_CheckPatternPredicate3,
30421 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
30422 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_B),
30423 41, 2, 0, 2,
30424 11,
30425 OPC_CheckPatternPredicate5,
30426 OPC_CheckComplexPat, /*CP*/9, /*#*/1,
30427 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_B),
30428 41, 2, 0, 2,
30429 8,
30430 OPC_CheckPatternPredicate0,
30431 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_B),
30432 41, 2, 0, 1,
30433 0,
30434 37, 52,
30435 OPC_CheckChild1Type, 52,
30436 OPC_Scope, 11,
30437 OPC_CheckPatternPredicate3,
30438 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
30439 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_H),
30440 52, 2, 0, 2,
30441 11,
30442 OPC_CheckPatternPredicate5,
30443 OPC_CheckComplexPat, /*CP*/10, /*#*/1,
30444 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_H),
30445 52, 2, 0, 2,
30446 8,
30447 OPC_CheckPatternPredicate0,
30448 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_H),
30449 52, 2, 0, 1,
30450 0,
30451 35, 66,
30452 OPC_CheckChild1Type, 66,
30453 OPC_Scope, 10,
30454 OPC_CheckPatternPredicate3,
30455 OPC_CheckComplexPat1, /*#*/1,
30456 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_W),
30457 66, 2, 0, 2,
30458 10,
30459 OPC_CheckPatternPredicate5,
30460 OPC_CheckComplexPat1, /*#*/1,
30461 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_W),
30462 66, 2, 0, 2,
30463 8,
30464 OPC_CheckPatternPredicate0,
30465 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_W),
30466 66, 2, 0, 1,
30467 0,
30468 37, 83,
30469 OPC_CheckChild1Type, 83,
30470 OPC_Scope, 11,
30471 OPC_CheckPatternPredicate3,
30472 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
30473 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_D),
30474 83, 2, 0, 2,
30475 11,
30476 OPC_CheckPatternPredicate5,
30477 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
30478 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_D),
30479 83, 2, 0, 2,
30480 8,
30481 OPC_CheckPatternPredicate0,
30482 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRL_D),
30483 83, 2, 0, 1,
30484 0,
30485 0,
30486 0,
30487 33, TARGET_VAL(LoongArchISD::DBAR),
30488 OPC_RecordNode,
30489 OPC_RecordChild1,
30490 OPC_MoveChild1,
30491 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30492 OPC_CheckPredicate, 47,
30493 OPC_SwitchType , 9, 8,
30494 OPC_MoveParent,
30495 OPC_CheckPatternPredicate7,
30496 OPC_EmitMergeInputChains1_0,
30497 OPC_EmitConvertToTarget1,
30498 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::DBAR),
30499 1, 2,
30500 10, 7,
30501 OPC_MoveParent,
30502 OPC_CheckPatternPredicate, 8,
30503 OPC_EmitMergeInputChains1_0,
30504 OPC_EmitConvertToTarget1,
30505 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::DBAR),
30506 1, 2,
30507 0,
30508 33, TARGET_VAL(LoongArchISD::IBAR),
30509 OPC_RecordNode,
30510 OPC_RecordChild1,
30511 OPC_MoveChild1,
30512 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30513 OPC_CheckPredicate, 47,
30514 OPC_SwitchType , 9, 8,
30515 OPC_MoveParent,
30516 OPC_CheckPatternPredicate7,
30517 OPC_EmitMergeInputChains1_0,
30518 OPC_EmitConvertToTarget1,
30519 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::IBAR),
30520 1, 2,
30521 10, 7,
30522 OPC_MoveParent,
30523 OPC_CheckPatternPredicate, 8,
30524 OPC_EmitMergeInputChains1_0,
30525 OPC_EmitConvertToTarget1,
30526 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::IBAR),
30527 1, 2,
30528 0,
30529 33, TARGET_VAL(LoongArchISD::BREAK),
30530 OPC_RecordNode,
30531 OPC_RecordChild1,
30532 OPC_MoveChild1,
30533 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30534 OPC_CheckPredicate, 47,
30535 OPC_SwitchType , 9, 8,
30536 OPC_MoveParent,
30537 OPC_CheckPatternPredicate7,
30538 OPC_EmitMergeInputChains1_0,
30539 OPC_EmitConvertToTarget1,
30540 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BREAK),
30541 1, 2,
30542 10, 7,
30543 OPC_MoveParent,
30544 OPC_CheckPatternPredicate, 8,
30545 OPC_EmitMergeInputChains1_0,
30546 OPC_EmitConvertToTarget1,
30547 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BREAK),
30548 1, 2,
30549 0,
30550 33, TARGET_VAL(LoongArchISD::SYSCALL),
30551 OPC_RecordNode,
30552 OPC_RecordChild1,
30553 OPC_MoveChild1,
30554 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30555 OPC_CheckPredicate, 47,
30556 OPC_SwitchType , 9, 8,
30557 OPC_MoveParent,
30558 OPC_CheckPatternPredicate7,
30559 OPC_EmitMergeInputChains1_0,
30560 OPC_EmitConvertToTarget1,
30561 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::SYSCALL),
30562 1, 2,
30563 10, 7,
30564 OPC_MoveParent,
30565 OPC_CheckPatternPredicate, 8,
30566 OPC_EmitMergeInputChains1_0,
30567 OPC_EmitConvertToTarget1,
30568 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::SYSCALL),
30569 1, 2,
30570 0,
30571 37, TARGET_VAL(LoongArchISD::CSRRD),
30572 OPC_RecordNode,
30573 OPC_RecordChild1,
30574 OPC_MoveChild1,
30575 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30576 OPC_CheckPredicate, 50,
30577 OPC_SwitchType , 11, 8,
30578 OPC_MoveParent,
30579 OPC_CheckTypeI64,
30580 OPC_CheckPatternPredicate7,
30581 OPC_EmitMergeInputChains1_0,
30582 OPC_EmitConvertToTarget1,
30583 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CSRRD),
30584 8, 1, 2,
30585 12, 7,
30586 OPC_MoveParent,
30587 OPC_CheckTypeI32,
30588 OPC_CheckPatternPredicate, 8,
30589 OPC_EmitMergeInputChains1_0,
30590 OPC_EmitConvertToTarget1,
30591 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CSRRD),
30592 7, 1, 2,
30593 0,
30594 40, TARGET_VAL(LoongArchISD::CSRWR),
30595 OPC_RecordNode,
30596 OPC_RecordChild1,
30597 OPC_RecordChild2,
30598 OPC_MoveChild2,
30599 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30600 OPC_CheckPredicate, 50,
30601 OPC_SwitchType , 12, 8,
30602 OPC_MoveParent,
30603 OPC_CheckTypeI64,
30604 OPC_CheckPatternPredicate7,
30605 OPC_EmitMergeInputChains1_0,
30606 OPC_EmitConvertToTarget2,
30607 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CSRWR),
30608 8, 2, 1, 3,
30609 13, 7,
30610 OPC_MoveParent,
30611 OPC_CheckTypeI32,
30612 OPC_CheckPatternPredicate, 8,
30613 OPC_EmitMergeInputChains1_0,
30614 OPC_EmitConvertToTarget2,
30615 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CSRWR),
30616 7, 2, 1, 3,
30617 0,
30618 43, TARGET_VAL(LoongArchISD::CSRXCHG),
30619 OPC_RecordNode,
30620 OPC_RecordChild1,
30621 OPC_RecordChild2,
30622 OPC_RecordChild3,
30623 OPC_MoveChild3,
30624 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30625 OPC_CheckPredicate, 50,
30626 OPC_SwitchType , 13, 8,
30627 OPC_MoveParent,
30628 OPC_CheckTypeI64,
30629 OPC_CheckPatternPredicate7,
30630 OPC_EmitMergeInputChains1_0,
30631 OPC_EmitConvertToTarget3,
30632 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CSRXCHG),
30633 8, 3, 1, 2, 4,
30634 14, 7,
30635 OPC_MoveParent,
30636 OPC_CheckTypeI32,
30637 OPC_CheckPatternPredicate, 8,
30638 OPC_EmitMergeInputChains1_0,
30639 OPC_EmitConvertToTarget3,
30640 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CSRXCHG),
30641 7, 3, 1, 2, 4,
30642 0,
30643 51|128,1, TARGET_VAL(LoongArchISD::VPICK_SEXT_ELT),
30644 OPC_RecordChild0,
30645 OPC_Scope, 43,
30646 OPC_CheckChild0Type, 40,
30647 OPC_RecordChild1,
30648 OPC_MoveChild1,
30649 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30650 OPC_CheckPredicate, 27,
30651 OPC_SwitchType , 14, 8,
30652 OPC_MoveSibling2,
30653 OPC_CheckValueType, 5,
30654 OPC_MoveParent,
30655 OPC_CheckTypeI64,
30656 OPC_CheckPatternPredicate2,
30657 OPC_EmitConvertToTarget1,
30658 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_B),
30659 8, 2, 0, 2,
30660 14, 7,
30661 OPC_MoveSibling2,
30662 OPC_CheckValueType, 5,
30663 OPC_MoveParent,
30664 OPC_CheckTypeI32,
30665 OPC_CheckPatternPredicate4,
30666 OPC_EmitConvertToTarget1,
30667 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_B),
30668 7, 2, 0, 2,
30669 0,
30670 43,
30671 OPC_CheckChild0Type, 51,
30672 OPC_RecordChild1,
30673 OPC_MoveChild1,
30674 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30675 OPC_CheckPredicate, 19,
30676 OPC_SwitchType , 14, 8,
30677 OPC_MoveSibling2,
30678 OPC_CheckValueType, 6,
30679 OPC_MoveParent,
30680 OPC_CheckTypeI64,
30681 OPC_CheckPatternPredicate2,
30682 OPC_EmitConvertToTarget1,
30683 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_H),
30684 8, 2, 0, 2,
30685 14, 7,
30686 OPC_MoveSibling2,
30687 OPC_CheckValueType, 6,
30688 OPC_MoveParent,
30689 OPC_CheckTypeI32,
30690 OPC_CheckPatternPredicate4,
30691 OPC_EmitConvertToTarget1,
30692 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_H),
30693 7, 2, 0, 2,
30694 0,
30695 43,
30696 OPC_CheckChild0Type, 62,
30697 OPC_RecordChild1,
30698 OPC_MoveChild1,
30699 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30700 OPC_CheckPredicate, 18,
30701 OPC_SwitchType , 14, 8,
30702 OPC_MoveSibling2,
30703 OPC_CheckValueType, 7,
30704 OPC_MoveParent,
30705 OPC_CheckTypeI64,
30706 OPC_CheckPatternPredicate2,
30707 OPC_EmitConvertToTarget1,
30708 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_W),
30709 8, 2, 0, 2,
30710 14, 7,
30711 OPC_MoveSibling2,
30712 OPC_CheckValueType, 7,
30713 OPC_MoveParent,
30714 OPC_CheckTypeI32,
30715 OPC_CheckPatternPredicate4,
30716 OPC_EmitConvertToTarget1,
30717 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_W),
30718 7, 2, 0, 2,
30719 0,
30720 43,
30721 OPC_CheckChild0Type, 66,
30722 OPC_RecordChild1,
30723 OPC_MoveChild1,
30724 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30725 OPC_CheckPredicate, 19,
30726 OPC_SwitchType , 14, 8,
30727 OPC_MoveSibling2,
30728 OPC_CheckValueType, 7,
30729 OPC_MoveParent,
30730 OPC_CheckTypeI64,
30731 OPC_CheckPatternPredicate3,
30732 OPC_EmitConvertToTarget1,
30733 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE2GR_W),
30734 8, 2, 0, 2,
30735 14, 7,
30736 OPC_MoveSibling2,
30737 OPC_CheckValueType, 7,
30738 OPC_MoveParent,
30739 OPC_CheckTypeI32,
30740 OPC_CheckPatternPredicate5,
30741 OPC_EmitConvertToTarget1,
30742 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE2GR_W),
30743 7, 2, 0, 2,
30744 0,
30745 0,
30746 51|128,1, TARGET_VAL(LoongArchISD::VPICK_ZEXT_ELT),
30747 OPC_RecordChild0,
30748 OPC_Scope, 43,
30749 OPC_CheckChild0Type, 40,
30750 OPC_RecordChild1,
30751 OPC_MoveChild1,
30752 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30753 OPC_CheckPredicate, 27,
30754 OPC_SwitchType , 14, 8,
30755 OPC_MoveSibling2,
30756 OPC_CheckValueType, 5,
30757 OPC_MoveParent,
30758 OPC_CheckTypeI64,
30759 OPC_CheckPatternPredicate2,
30760 OPC_EmitConvertToTarget1,
30761 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_BU),
30762 8, 2, 0, 2,
30763 14, 7,
30764 OPC_MoveSibling2,
30765 OPC_CheckValueType, 5,
30766 OPC_MoveParent,
30767 OPC_CheckTypeI32,
30768 OPC_CheckPatternPredicate4,
30769 OPC_EmitConvertToTarget1,
30770 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_BU),
30771 7, 2, 0, 2,
30772 0,
30773 43,
30774 OPC_CheckChild0Type, 51,
30775 OPC_RecordChild1,
30776 OPC_MoveChild1,
30777 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30778 OPC_CheckPredicate, 19,
30779 OPC_SwitchType , 14, 8,
30780 OPC_MoveSibling2,
30781 OPC_CheckValueType, 6,
30782 OPC_MoveParent,
30783 OPC_CheckTypeI64,
30784 OPC_CheckPatternPredicate2,
30785 OPC_EmitConvertToTarget1,
30786 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_HU),
30787 8, 2, 0, 2,
30788 14, 7,
30789 OPC_MoveSibling2,
30790 OPC_CheckValueType, 6,
30791 OPC_MoveParent,
30792 OPC_CheckTypeI32,
30793 OPC_CheckPatternPredicate4,
30794 OPC_EmitConvertToTarget1,
30795 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_HU),
30796 7, 2, 0, 2,
30797 0,
30798 43,
30799 OPC_CheckChild0Type, 62,
30800 OPC_RecordChild1,
30801 OPC_MoveChild1,
30802 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30803 OPC_CheckPredicate, 18,
30804 OPC_SwitchType , 14, 8,
30805 OPC_MoveSibling2,
30806 OPC_CheckValueType, 7,
30807 OPC_MoveParent,
30808 OPC_CheckTypeI64,
30809 OPC_CheckPatternPredicate2,
30810 OPC_EmitConvertToTarget1,
30811 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_WU),
30812 8, 2, 0, 2,
30813 14, 7,
30814 OPC_MoveSibling2,
30815 OPC_CheckValueType, 7,
30816 OPC_MoveParent,
30817 OPC_CheckTypeI32,
30818 OPC_CheckPatternPredicate4,
30819 OPC_EmitConvertToTarget1,
30820 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_WU),
30821 7, 2, 0, 2,
30822 0,
30823 43,
30824 OPC_CheckChild0Type, 66,
30825 OPC_RecordChild1,
30826 OPC_MoveChild1,
30827 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30828 OPC_CheckPredicate, 19,
30829 OPC_SwitchType , 14, 8,
30830 OPC_MoveSibling2,
30831 OPC_CheckValueType, 7,
30832 OPC_MoveParent,
30833 OPC_CheckTypeI64,
30834 OPC_CheckPatternPredicate3,
30835 OPC_EmitConvertToTarget1,
30836 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE2GR_WU),
30837 8, 2, 0, 2,
30838 14, 7,
30839 OPC_MoveSibling2,
30840 OPC_CheckValueType, 7,
30841 OPC_MoveParent,
30842 OPC_CheckTypeI32,
30843 OPC_CheckPatternPredicate5,
30844 OPC_EmitConvertToTarget1,
30845 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE2GR_WU),
30846 7, 2, 0, 2,
30847 0,
30848 0,
30849 101|128,4, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
30850 OPC_RecordChild0,
30851 OPC_Scope, 62,
30852 OPC_CheckChild0Type, 40,
30853 OPC_RecordChild1,
30854 OPC_Scope, 18,
30855 OPC_MoveChild1,
30856 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30857 OPC_CheckPredicate, 27,
30858 OPC_CheckTypeI64,
30859 OPC_MoveParent,
30860 OPC_CheckTypeI64,
30861 OPC_CheckPatternPredicate2,
30862 OPC_EmitConvertToTarget1,
30863 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_B),
30864 8, 2, 0, 2,
30865 37,
30866 OPC_CheckChild1TypeI64,
30867 OPC_CheckTypeI64,
30868 OPC_CheckPatternPredicate2,
30869 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVE_B),
30870 40, 2, 0, 1,
30871 OPC_EmitStringInteger32, LoongArch::sub_32,
30872 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
30873 12, 2, 2, 3,
30874 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
30875 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
30876 8, 2, 4, 5,
30877 OPC_EmitInteger64, 48,
30878 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRAI_W),
30879 8, 2, 6, 7,
30880 0,
30881 62,
30882 OPC_CheckChild0Type, 51,
30883 OPC_RecordChild1,
30884 OPC_Scope, 18,
30885 OPC_MoveChild1,
30886 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30887 OPC_CheckPredicate, 19,
30888 OPC_CheckTypeI64,
30889 OPC_MoveParent,
30890 OPC_CheckTypeI64,
30891 OPC_CheckPatternPredicate2,
30892 OPC_EmitConvertToTarget1,
30893 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_H),
30894 8, 2, 0, 2,
30895 37,
30896 OPC_CheckChild1TypeI64,
30897 OPC_CheckTypeI64,
30898 OPC_CheckPatternPredicate2,
30899 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVE_H),
30900 40, 2, 0, 1,
30901 OPC_EmitStringInteger32, LoongArch::sub_32,
30902 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
30903 12, 2, 2, 3,
30904 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
30905 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
30906 8, 2, 4, 5,
30907 OPC_EmitInteger64, 32,
30908 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRAI_W),
30909 8, 2, 6, 7,
30910 0,
30911 53,
30912 OPC_CheckChild0Type, 62,
30913 OPC_RecordChild1,
30914 OPC_Scope, 18,
30915 OPC_MoveChild1,
30916 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30917 OPC_CheckPredicate, 18,
30918 OPC_CheckTypeI64,
30919 OPC_MoveParent,
30920 OPC_CheckTypeI64,
30921 OPC_CheckPatternPredicate2,
30922 OPC_EmitConvertToTarget1,
30923 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_W),
30924 8, 2, 0, 2,
30925 28,
30926 OPC_CheckChild1TypeI64,
30927 OPC_CheckTypeI64,
30928 OPC_CheckPatternPredicate2,
30929 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVE_W),
30930 40, 2, 0, 1,
30931 OPC_EmitStringInteger32, LoongArch::sub_32,
30932 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
30933 12, 2, 2, 3,
30934 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
30935 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
30936 8, 2, 4, 5,
30937 0,
30938 53,
30939 OPC_CheckChild0Type, 81,
30940 OPC_RecordChild1,
30941 OPC_Scope, 18,
30942 OPC_MoveChild1,
30943 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30944 OPC_CheckPredicate, 34,
30945 OPC_CheckTypeI64,
30946 OPC_MoveParent,
30947 OPC_CheckTypeI64,
30948 OPC_CheckPatternPredicate2,
30949 OPC_EmitConvertToTarget1,
30950 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_D),
30951 8, 2, 0, 2,
30952 28,
30953 OPC_CheckChild1TypeI64,
30954 OPC_CheckTypeI64,
30955 OPC_CheckPatternPredicate2,
30956 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVE_D),
30957 40, 2, 0, 1,
30958 OPC_EmitStringInteger32, LoongArch::sub_64,
30959 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
30960 13, 2, 2, 3,
30961 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
30962 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
30963 8, 2, 4, 5,
30964 0,
30965 21,
30966 OPC_CheckChild0Type, 66,
30967 OPC_RecordChild1,
30968 OPC_MoveChild1,
30969 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30970 OPC_CheckPredicate, 19,
30971 OPC_CheckTypeI64,
30972 OPC_MoveParent,
30973 OPC_CheckTypeI64,
30974 OPC_CheckPatternPredicate3,
30975 OPC_EmitConvertToTarget1,
30976 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE2GR_W),
30977 8, 2, 0, 2,
30978 21,
30979 OPC_CheckChild0Type, 83,
30980 OPC_RecordChild1,
30981 OPC_MoveChild1,
30982 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30983 OPC_CheckPredicate, 18,
30984 OPC_CheckTypeI64,
30985 OPC_MoveParent,
30986 OPC_CheckTypeI64,
30987 OPC_CheckPatternPredicate3,
30988 OPC_EmitConvertToTarget1,
30989 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKVE2GR_D),
30990 8, 2, 0, 2,
30991 30,
30992 OPC_CheckChild0Type, 41,
30993 OPC_RecordChild1,
30994 OPC_MoveChild1,
30995 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
30996 OPC_CheckPredicate, 27,
30997 OPC_CheckTypeI64,
30998 OPC_MoveParent,
30999 OPC_CheckTypeI64,
31000 OPC_CheckPatternPredicate3,
31001 OPC_EmitStringInteger32, LoongArch::sub_128,
31002 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
31003 40, 2, 0, 2,
31004 OPC_EmitConvertToTarget1,
31005 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_B),
31006 8, 2, 3, 4,
31007 30,
31008 OPC_CheckChild0Type, 52,
31009 OPC_RecordChild1,
31010 OPC_MoveChild1,
31011 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
31012 OPC_CheckPredicate, 19,
31013 OPC_CheckTypeI64,
31014 OPC_MoveParent,
31015 OPC_CheckTypeI64,
31016 OPC_CheckPatternPredicate3,
31017 OPC_EmitStringInteger32, LoongArch::sub_128,
31018 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
31019 40, 2, 0, 2,
31020 OPC_EmitConvertToTarget1,
31021 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKVE2GR_H),
31022 8, 2, 3, 4,
31023 81,
31024 OPC_CheckChild0Type, 116,
31025 OPC_RecordChild1,
31026 OPC_Scope, 54,
31027 OPC_MoveChild1,
31028 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
31029 OPC_CheckPredicate, 18,
31030 OPC_SwitchType , 21, 8,
31031 OPC_MoveParent,
31032 OPC_CheckType, 12,
31033 OPC_CheckPatternPredicate2,
31034 OPC_EmitConvertToTarget1,
31035 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_W),
31036 40, 2, 0, 2,
31037 OPC_EmitStringInteger32, LoongArch::sub_32,
31038 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
31039 12, 2, 3, 4,
31040 21, 7,
31041 OPC_MoveParent,
31042 OPC_CheckType, 12,
31043 OPC_CheckPatternPredicate4,
31044 OPC_EmitConvertToTarget1,
31045 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_W),
31046 40, 2, 0, 2,
31047 OPC_EmitStringInteger32, LoongArch::sub_32,
31048 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
31049 12, 2, 3, 4,
31050 0,
31051 20,
31052 OPC_CheckChild1TypeI64,
31053 OPC_CheckType, 12,
31054 OPC_CheckPatternPredicate2,
31055 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVE_W),
31056 40, 2, 0, 1,
31057 OPC_EmitStringInteger32, LoongArch::sub_32,
31058 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
31059 12, 2, 2, 3,
31060 0,
31061 82,
31062 OPC_CheckChild0Type, 6|128,1,
31063 OPC_RecordChild1,
31064 OPC_Scope, 54,
31065 OPC_MoveChild1,
31066 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
31067 OPC_CheckPredicate, 34,
31068 OPC_SwitchType , 21, 8,
31069 OPC_MoveParent,
31070 OPC_CheckType, 13,
31071 OPC_CheckPatternPredicate2,
31072 OPC_EmitConvertToTarget1,
31073 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_D),
31074 40, 2, 0, 2,
31075 OPC_EmitStringInteger32, LoongArch::sub_64,
31076 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
31077 13, 2, 3, 4,
31078 21, 7,
31079 OPC_MoveParent,
31080 OPC_CheckType, 13,
31081 OPC_CheckPatternPredicate4,
31082 OPC_EmitConvertToTarget1,
31083 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_D),
31084 40, 2, 0, 2,
31085 OPC_EmitStringInteger32, LoongArch::sub_64,
31086 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
31087 13, 2, 3, 4,
31088 0,
31089 20,
31090 OPC_CheckChild1TypeI64,
31091 OPC_CheckType, 13,
31092 OPC_CheckPatternPredicate2,
31093 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVE_D),
31094 40, 2, 0, 1,
31095 OPC_EmitStringInteger32, LoongArch::sub_64,
31096 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
31097 13, 2, 2, 3,
31098 0,
31099 51,
31100 OPC_CheckChild0Type, 120,
31101 OPC_RecordChild1,
31102 OPC_MoveChild1,
31103 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
31104 OPC_CheckPredicate, 19,
31105 OPC_SwitchType , 18, 8,
31106 OPC_MoveParent,
31107 OPC_CheckType, 12,
31108 OPC_CheckPatternPredicate3,
31109 OPC_EmitConvertToTarget1,
31110 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPICKVE2GR_W),
31111 8, 2, 0, 2,
31112 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
31113 12, 1, 3,
31114 18, 7,
31115 OPC_MoveParent,
31116 OPC_CheckType, 12,
31117 OPC_CheckPatternPredicate5,
31118 OPC_EmitConvertToTarget1,
31119 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPICKVE2GR_W),
31120 7, 2, 0, 2,
31121 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
31122 12, 1, 3,
31123 0,
31124 52,
31125 OPC_CheckChild0Type, 8|128,1,
31126 OPC_RecordChild1,
31127 OPC_MoveChild1,
31128 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
31129 OPC_CheckPredicate, 18,
31130 OPC_SwitchType , 18, 8,
31131 OPC_MoveParent,
31132 OPC_CheckType, 13,
31133 OPC_CheckPatternPredicate3,
31134 OPC_EmitConvertToTarget1,
31135 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPICKVE2GR_D),
31136 8, 2, 0, 2,
31137 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
31138 13, 1, 3,
31139 18, 7,
31140 OPC_MoveParent,
31141 OPC_CheckType, 13,
31142 OPC_CheckPatternPredicate5,
31143 OPC_EmitConvertToTarget1,
31144 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPICKVE2GR_D),
31145 7, 2, 0, 2,
31146 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
31147 13, 1, 3,
31148 0,
31149 0,
31150 40, TARGET_VAL(LoongArchISD::MOVGR2FCSR),
31151 OPC_RecordNode,
31152 OPC_RecordChild1,
31153 OPC_MoveChild1,
31154 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
31155 OPC_CheckPredicate, 18,
31156 OPC_SwitchType , 13, 8,
31157 OPC_MoveParent,
31158 OPC_RecordChild2,
31159 OPC_CheckChild2TypeI64,
31160 OPC_CheckPatternPredicate, 11,
31161 OPC_EmitMergeInputChains1_0,
31162 OPC_EmitConvertToTarget1,
31163 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::WRFCSR),
31164 2, 3, 2,
31165 13, 7,
31166 OPC_MoveParent,
31167 OPC_RecordChild2,
31168 OPC_CheckChild2TypeI32,
31169 OPC_CheckPatternPredicate, 12,
31170 OPC_EmitMergeInputChains1_0,
31171 OPC_EmitConvertToTarget1,
31172 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::WRFCSR),
31173 2, 3, 2,
31174 0,
31175 38, TARGET_VAL(LoongArchISD::MOVFCSR2GR),
31176 OPC_RecordNode,
31177 OPC_RecordChild1,
31178 OPC_MoveChild1,
31179 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
31180 OPC_CheckPredicate, 18,
31181 OPC_SwitchType , 12, 8,
31182 OPC_MoveParent,
31183 OPC_CheckTypeI64,
31184 OPC_CheckPatternPredicate, 11,
31185 OPC_EmitMergeInputChains1_0,
31186 OPC_EmitConvertToTarget1,
31187 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::RDFCSR),
31188 8, 1, 2,
31189 12, 7,
31190 OPC_MoveParent,
31191 OPC_CheckTypeI32,
31192 OPC_CheckPatternPredicate, 12,
31193 OPC_EmitMergeInputChains1_0,
31194 OPC_EmitConvertToTarget1,
31195 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::RDFCSR),
31196 7, 1, 2,
31197 0,
31198 13, TARGET_VAL(LoongArchISD::SLL_W),
31199 OPC_RecordChild0,
31200 OPC_RecordChild1,
31201 OPC_CheckPatternPredicate6,
31202 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
31203 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLL_W),
31204 8, 2, 0, 2,
31205 13, TARGET_VAL(LoongArchISD::SRA_W),
31206 OPC_RecordChild0,
31207 OPC_RecordChild1,
31208 OPC_CheckPatternPredicate6,
31209 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
31210 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRA_W),
31211 8, 2, 0, 2,
31212 13, TARGET_VAL(LoongArchISD::SRL_W),
31213 OPC_RecordChild0,
31214 OPC_RecordChild1,
31215 OPC_CheckPatternPredicate6,
31216 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
31217 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SRL_W),
31218 8, 2, 0, 2,
31219 86, TARGET_VAL(LoongArchISD::CALL),
31220 OPC_RecordNode,
31221 OPC_CaptureGlueInput,
31222 OPC_RecordChild1,
31223 OPC_Scope, 59,
31224 OPC_MoveChild1,
31225 OPC_SwitchOpcode , 25, TARGET_VAL(ISD::TargetGlobalAddress),
31226 OPC_SwitchType , 9, 8,
31227 OPC_MoveParent,
31228 OPC_CheckPatternPredicate7,
31229 OPC_EmitMergeInputChains1_0,
31230 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31231 1, 1,
31232 10, 7,
31233 OPC_MoveParent,
31234 OPC_CheckPatternPredicate, 8,
31235 OPC_EmitMergeInputChains1_0,
31236 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31237 1, 1,
31238 0,
31239 25, TARGET_VAL(ISD::TargetExternalSymbol),
31240 OPC_SwitchType , 9, 8,
31241 OPC_MoveParent,
31242 OPC_CheckPatternPredicate7,
31243 OPC_EmitMergeInputChains1_0,
31244 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31245 1, 1,
31246 10, 7,
31247 OPC_MoveParent,
31248 OPC_CheckPatternPredicate, 8,
31249 OPC_EmitMergeInputChains1_0,
31250 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31251 1, 1,
31252 0,
31253 0,
31254 9,
31255 OPC_CheckChild1TypeI64,
31256 OPC_CheckPatternPredicate7,
31257 OPC_EmitMergeInputChains1_0,
31258 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALLIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31259 1, 1,
31260 10,
31261 OPC_CheckChild1TypeI32,
31262 OPC_CheckPatternPredicate, 8,
31263 OPC_EmitMergeInputChains1_0,
31264 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALLIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31265 1, 1,
31266 0,
31267 86, TARGET_VAL(LoongArchISD::CALL_MEDIUM),
31268 OPC_RecordNode,
31269 OPC_CaptureGlueInput,
31270 OPC_RecordChild1,
31271 OPC_Scope, 59,
31272 OPC_MoveChild1,
31273 OPC_SwitchOpcode , 25, TARGET_VAL(ISD::TargetGlobalAddress),
31274 OPC_SwitchType , 9, 8,
31275 OPC_MoveParent,
31276 OPC_CheckPatternPredicate6,
31277 OPC_EmitMergeInputChains1_0,
31278 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL_MEDIUM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31279 1, 1,
31280 10, 7,
31281 OPC_MoveParent,
31282 OPC_CheckPatternPredicate, 9,
31283 OPC_EmitMergeInputChains1_0,
31284 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL_MEDIUM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31285 1, 1,
31286 0,
31287 25, TARGET_VAL(ISD::TargetExternalSymbol),
31288 OPC_SwitchType , 9, 8,
31289 OPC_MoveParent,
31290 OPC_CheckPatternPredicate6,
31291 OPC_EmitMergeInputChains1_0,
31292 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL_MEDIUM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31293 1, 1,
31294 10, 7,
31295 OPC_MoveParent,
31296 OPC_CheckPatternPredicate, 9,
31297 OPC_EmitMergeInputChains1_0,
31298 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL_MEDIUM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31299 1, 1,
31300 0,
31301 0,
31302 9,
31303 OPC_CheckChild1TypeI64,
31304 OPC_CheckPatternPredicate6,
31305 OPC_EmitMergeInputChains1_0,
31306 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALLIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31307 1, 1,
31308 10,
31309 OPC_CheckChild1TypeI32,
31310 OPC_CheckPatternPredicate, 9,
31311 OPC_EmitMergeInputChains1_0,
31312 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALLIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31313 1, 1,
31314 0,
31315 86, TARGET_VAL(LoongArchISD::CALL_LARGE),
31316 OPC_RecordNode,
31317 OPC_CaptureGlueInput,
31318 OPC_RecordChild1,
31319 OPC_Scope, 59,
31320 OPC_MoveChild1,
31321 OPC_SwitchOpcode , 25, TARGET_VAL(ISD::TargetGlobalAddress),
31322 OPC_SwitchType , 9, 8,
31323 OPC_MoveParent,
31324 OPC_CheckPatternPredicate6,
31325 OPC_EmitMergeInputChains1_0,
31326 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL_LARGE), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31327 1, 1,
31328 10, 7,
31329 OPC_MoveParent,
31330 OPC_CheckPatternPredicate, 9,
31331 OPC_EmitMergeInputChains1_0,
31332 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL_LARGE), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31333 1, 1,
31334 0,
31335 25, TARGET_VAL(ISD::TargetExternalSymbol),
31336 OPC_SwitchType , 9, 8,
31337 OPC_MoveParent,
31338 OPC_CheckPatternPredicate6,
31339 OPC_EmitMergeInputChains1_0,
31340 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL_LARGE), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31341 1, 1,
31342 10, 7,
31343 OPC_MoveParent,
31344 OPC_CheckPatternPredicate, 9,
31345 OPC_EmitMergeInputChains1_0,
31346 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALL_LARGE), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31347 1, 1,
31348 0,
31349 0,
31350 9,
31351 OPC_CheckChild1TypeI64,
31352 OPC_CheckPatternPredicate6,
31353 OPC_EmitMergeInputChains1_0,
31354 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALLIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31355 1, 1,
31356 10,
31357 OPC_CheckChild1TypeI32,
31358 OPC_CheckPatternPredicate, 9,
31359 OPC_EmitMergeInputChains1_0,
31360 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoCALLIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31361 1, 1,
31362 0,
31363 86, TARGET_VAL(LoongArchISD::TAIL),
31364 OPC_RecordNode,
31365 OPC_CaptureGlueInput,
31366 OPC_RecordChild1,
31367 OPC_Scope, 59,
31368 OPC_MoveChild1,
31369 OPC_SwitchOpcode , 25, TARGET_VAL(ISD::TargetGlobalAddress),
31370 OPC_SwitchType , 9, 8,
31371 OPC_MoveParent,
31372 OPC_CheckPatternPredicate7,
31373 OPC_EmitMergeInputChains1_0,
31374 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31375 1, 1,
31376 10, 7,
31377 OPC_MoveParent,
31378 OPC_CheckPatternPredicate, 8,
31379 OPC_EmitMergeInputChains1_0,
31380 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31381 1, 1,
31382 0,
31383 25, TARGET_VAL(ISD::TargetExternalSymbol),
31384 OPC_SwitchType , 9, 8,
31385 OPC_MoveParent,
31386 OPC_CheckPatternPredicate7,
31387 OPC_EmitMergeInputChains1_0,
31388 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31389 1, 1,
31390 10, 7,
31391 OPC_MoveParent,
31392 OPC_CheckPatternPredicate, 8,
31393 OPC_EmitMergeInputChains1_0,
31394 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31395 1, 1,
31396 0,
31397 0,
31398 9,
31399 OPC_CheckChild1TypeI64,
31400 OPC_CheckPatternPredicate7,
31401 OPC_EmitMergeInputChains1_0,
31402 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAILIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31403 1, 1,
31404 10,
31405 OPC_CheckChild1TypeI32,
31406 OPC_CheckPatternPredicate, 8,
31407 OPC_EmitMergeInputChains1_0,
31408 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAILIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31409 1, 1,
31410 0,
31411 86, TARGET_VAL(LoongArchISD::TAIL_MEDIUM),
31412 OPC_RecordNode,
31413 OPC_CaptureGlueInput,
31414 OPC_RecordChild1,
31415 OPC_Scope, 59,
31416 OPC_MoveChild1,
31417 OPC_SwitchOpcode , 25, TARGET_VAL(ISD::TargetGlobalAddress),
31418 OPC_SwitchType , 9, 8,
31419 OPC_MoveParent,
31420 OPC_CheckPatternPredicate6,
31421 OPC_EmitMergeInputChains1_0,
31422 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL_MEDIUM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31423 1, 1,
31424 10, 7,
31425 OPC_MoveParent,
31426 OPC_CheckPatternPredicate, 9,
31427 OPC_EmitMergeInputChains1_0,
31428 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL_MEDIUM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31429 1, 1,
31430 0,
31431 25, TARGET_VAL(ISD::TargetExternalSymbol),
31432 OPC_SwitchType , 9, 8,
31433 OPC_MoveParent,
31434 OPC_CheckPatternPredicate6,
31435 OPC_EmitMergeInputChains1_0,
31436 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL_MEDIUM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31437 1, 1,
31438 10, 7,
31439 OPC_MoveParent,
31440 OPC_CheckPatternPredicate, 9,
31441 OPC_EmitMergeInputChains1_0,
31442 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL_MEDIUM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31443 1, 1,
31444 0,
31445 0,
31446 9,
31447 OPC_CheckChild1TypeI64,
31448 OPC_CheckPatternPredicate6,
31449 OPC_EmitMergeInputChains1_0,
31450 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAILIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31451 1, 1,
31452 10,
31453 OPC_CheckChild1TypeI32,
31454 OPC_CheckPatternPredicate, 9,
31455 OPC_EmitMergeInputChains1_0,
31456 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAILIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31457 1, 1,
31458 0,
31459 86, TARGET_VAL(LoongArchISD::TAIL_LARGE),
31460 OPC_RecordNode,
31461 OPC_CaptureGlueInput,
31462 OPC_RecordChild1,
31463 OPC_Scope, 59,
31464 OPC_MoveChild1,
31465 OPC_SwitchOpcode , 25, TARGET_VAL(ISD::TargetGlobalAddress),
31466 OPC_SwitchType , 9, 8,
31467 OPC_MoveParent,
31468 OPC_CheckPatternPredicate6,
31469 OPC_EmitMergeInputChains1_0,
31470 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL_LARGE), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31471 1, 1,
31472 10, 7,
31473 OPC_MoveParent,
31474 OPC_CheckPatternPredicate, 9,
31475 OPC_EmitMergeInputChains1_0,
31476 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL_LARGE), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31477 1, 1,
31478 0,
31479 25, TARGET_VAL(ISD::TargetExternalSymbol),
31480 OPC_SwitchType , 9, 8,
31481 OPC_MoveParent,
31482 OPC_CheckPatternPredicate6,
31483 OPC_EmitMergeInputChains1_0,
31484 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL_LARGE), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31485 1, 1,
31486 10, 7,
31487 OPC_MoveParent,
31488 OPC_CheckPatternPredicate, 9,
31489 OPC_EmitMergeInputChains1_0,
31490 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAIL_LARGE), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31491 1, 1,
31492 0,
31493 0,
31494 9,
31495 OPC_CheckChild1TypeI64,
31496 OPC_CheckPatternPredicate6,
31497 OPC_EmitMergeInputChains1_0,
31498 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAILIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31499 1, 1,
31500 10,
31501 OPC_CheckChild1TypeI32,
31502 OPC_CheckPatternPredicate, 9,
31503 OPC_EmitMergeInputChains1_0,
31504 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoTAILIndirect), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
31505 1, 1,
31506 0,
31507 64|128,2, TARGET_VAL(ISD::BSWAP),
31508 OPC_Scope, 51,
31509 OPC_MoveChild0,
31510 OPC_CheckOpcode, TARGET_VAL(ISD::BITREVERSE),
31511 OPC_RecordChild0,
31512 OPC_MoveParent,
31513 OPC_SwitchType , 19, 8,
31514 OPC_Scope, 8,
31515 OPC_CheckPatternPredicate, 20,
31516 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_4B),
31517 8, 1, 0,
31518 7,
31519 OPC_CheckPatternPredicate6,
31520 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_8B),
31521 8, 1, 0,
31522 0,
31523 20, 7,
31524 OPC_Scope, 8,
31525 OPC_CheckPatternPredicate, 16,
31526 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_4B),
31527 7, 1, 0,
31528 8,
31529 OPC_CheckPatternPredicate, 9,
31530 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_8B),
31531 7, 1, 0,
31532 0,
31533 0,
31534 8|128,2,
31535 OPC_RecordChild0,
31536 OPC_SwitchType , 28, 8,
31537 OPC_Scope, 7,
31538 OPC_CheckPatternPredicate6,
31539 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::REVB_D),
31540 8, 1, 0,
31541 17,
31542 OPC_CheckPatternPredicate, 20,
31543 OPC_EmitNode1None, TARGET_VAL(LoongArch::REVB_2H),
31544 8, 1, 0,
31545 OPC_EmitInteger64, 32,
31546 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTRI_W),
31547 8, 2, 1, 2,
31548 0,
31549 29, 7,
31550 OPC_Scope, 8,
31551 OPC_CheckPatternPredicate, 9,
31552 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::REVB_D),
31553 7, 1, 0,
31554 17,
31555 OPC_CheckPatternPredicate, 16,
31556 OPC_EmitNode1None, TARGET_VAL(LoongArch::REVB_2H),
31557 7, 1, 0,
31558 OPC_EmitInteger32, 32,
31559 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::ROTRI_W),
31560 7, 2, 1, 2,
31561 0,
31562 26, 51,
31563 OPC_Scope, 11,
31564 OPC_CheckPatternPredicate2,
31565 OPC_EmitInteger64, 98|128,2,
31566 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_B),
31567 51, 2, 0, 1,
31568 11,
31569 OPC_CheckPatternPredicate4,
31570 OPC_EmitInteger32, 98|128,2,
31571 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_B),
31572 51, 2, 0, 1,
31573 0,
31574 24, 62,
31575 OPC_Scope, 10,
31576 OPC_CheckPatternPredicate2,
31577 OPC_EmitInteger64, 54,
31578 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_B),
31579 62, 2, 0, 1,
31580 10,
31581 OPC_CheckPatternPredicate4,
31582 OPC_EmitInteger32, 54,
31583 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_B),
31584 62, 2, 0, 1,
31585 0,
31586 26, 52,
31587 OPC_Scope, 11,
31588 OPC_CheckPatternPredicate3,
31589 OPC_EmitInteger64, 98|128,2,
31590 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_B),
31591 52, 2, 0, 1,
31592 11,
31593 OPC_CheckPatternPredicate5,
31594 OPC_EmitInteger32, 98|128,2,
31595 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_B),
31596 52, 2, 0, 1,
31597 0,
31598 24, 66,
31599 OPC_Scope, 10,
31600 OPC_CheckPatternPredicate3,
31601 OPC_EmitInteger64, 54,
31602 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_B),
31603 66, 2, 0, 1,
31604 10,
31605 OPC_CheckPatternPredicate5,
31606 OPC_EmitInteger32, 54,
31607 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_B),
31608 66, 2, 0, 1,
31609 0,
31610 44, 81,
31611 OPC_Scope, 20,
31612 OPC_CheckPatternPredicate2,
31613 OPC_EmitInteger64, 54,
31614 OPC_EmitNode1None, TARGET_VAL(LoongArch::VSHUF4I_B),
31615 40, 2, 0, 1,
31616 OPC_EmitInteger64, 98|128,2,
31617 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_W),
31618 81, 2, 2, 3,
31619 20,
31620 OPC_CheckPatternPredicate4,
31621 OPC_EmitInteger32, 54,
31622 OPC_EmitNode1None, TARGET_VAL(LoongArch::VSHUF4I_B),
31623 40, 2, 0, 1,
31624 OPC_EmitInteger32, 98|128,2,
31625 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_W),
31626 81, 2, 2, 3,
31627 0,
31628 44, 83,
31629 OPC_Scope, 20,
31630 OPC_CheckPatternPredicate3,
31631 OPC_EmitInteger64, 54,
31632 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVSHUF4I_B),
31633 41, 2, 0, 1,
31634 OPC_EmitInteger64, 98|128,2,
31635 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_W),
31636 83, 2, 2, 3,
31637 20,
31638 OPC_CheckPatternPredicate5,
31639 OPC_EmitInteger32, 54,
31640 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVSHUF4I_B),
31641 41, 2, 0, 1,
31642 OPC_EmitInteger32, 98|128,2,
31643 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_W),
31644 83, 2, 2, 3,
31645 0,
31646 0,
31647 0,
31648 101, TARGET_VAL(ISD::BITREVERSE),
31649 OPC_Scope, 51,
31650 OPC_MoveChild0,
31651 OPC_CheckOpcode, TARGET_VAL(ISD::BSWAP),
31652 OPC_RecordChild0,
31653 OPC_MoveParent,
31654 OPC_SwitchType , 19, 8,
31655 OPC_Scope, 8,
31656 OPC_CheckPatternPredicate, 20,
31657 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_4B),
31658 8, 1, 0,
31659 7,
31660 OPC_CheckPatternPredicate6,
31661 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_8B),
31662 8, 1, 0,
31663 0,
31664 20, 7,
31665 OPC_Scope, 8,
31666 OPC_CheckPatternPredicate, 16,
31667 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_4B),
31668 7, 1, 0,
31669 8,
31670 OPC_CheckPatternPredicate, 9,
31671 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_8B),
31672 7, 1, 0,
31673 0,
31674 0,
31675 46,
31676 OPC_RecordChild0,
31677 OPC_SwitchType , 19, 8,
31678 OPC_Scope, 8,
31679 OPC_CheckPatternPredicate, 20,
31680 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_W),
31681 8, 1, 0,
31682 7,
31683 OPC_CheckPatternPredicate6,
31684 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_D),
31685 8, 1, 0,
31686 0,
31687 20, 7,
31688 OPC_Scope, 8,
31689 OPC_CheckPatternPredicate, 16,
31690 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_W),
31691 7, 1, 0,
31692 8,
31693 OPC_CheckPatternPredicate, 9,
31694 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_D),
31695 7, 1, 0,
31696 0,
31697 0,
31698 0,
31699 113|128,1, TARGET_VAL(ISD::IS_FPCLASS),
31700 OPC_RecordChild0,
31701 OPC_Scope, 81,
31702 OPC_CheckChild0Type, 12,
31703 OPC_RecordChild1,
31704 OPC_MoveChild1,
31705 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
31706 OPC_CheckTypeI32,
31707 OPC_MoveParent,
31708 OPC_SwitchType , 33, 8,
31709 OPC_CheckPatternPredicate, 11,
31710 OPC_EmitRegisterI64, LoongArch::R0,
31711 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCLASS_S),
31712 12, 1, 0,
31713 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVFR2GR_S),
31714 8, 1, 3,
31715 OPC_EmitNodeXForm, 12, 1,
31716 OPC_EmitNode1None, TARGET_VAL(LoongArch::ANDI),
31717 8, 2, 4, 5,
31718 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
31719 8, 2, 2, 6,
31720 33, 7,
31721 OPC_CheckPatternPredicate, 12,
31722 OPC_EmitRegisterI32, LoongArch::R0,
31723 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCLASS_S),
31724 12, 1, 0,
31725 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVFR2GR_S),
31726 7, 1, 3,
31727 OPC_EmitNodeXForm, 12, 1,
31728 OPC_EmitNode1None, TARGET_VAL(LoongArch::ANDI),
31729 7, 2, 4, 5,
31730 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
31731 7, 2, 2, 6,
31732 0,
31733 26|128,1,
31734 OPC_CheckChild0Type, 13,
31735 OPC_RecordChild1,
31736 OPC_MoveChild1,
31737 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
31738 OPC_CheckTypeI32,
31739 OPC_MoveParent,
31740 OPC_SwitchType , 69, 8,
31741 OPC_Scope, 33,
31742 OPC_CheckPatternPredicate, 15,
31743 OPC_EmitRegisterI64, LoongArch::R0,
31744 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCLASS_D),
31745 13, 1, 0,
31746 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVFR2GR_S_64),
31747 8, 1, 3,
31748 OPC_EmitNodeXForm, 12, 1,
31749 OPC_EmitNode1None, TARGET_VAL(LoongArch::ANDI),
31750 8, 2, 4, 5,
31751 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
31752 8, 2, 2, 6,
31753 32,
31754 OPC_CheckPatternPredicate6,
31755 OPC_EmitRegisterI64, LoongArch::R0,
31756 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCLASS_D),
31757 13, 1, 0,
31758 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVFR2GR_D),
31759 8, 1, 3,
31760 OPC_EmitNodeXForm, 12, 1,
31761 OPC_EmitNode1None, TARGET_VAL(LoongArch::ANDI),
31762 8, 2, 4, 5,
31763 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
31764 8, 2, 2, 6,
31765 0,
31766 70, 7,
31767 OPC_Scope, 33,
31768 OPC_CheckPatternPredicate, 10,
31769 OPC_EmitRegisterI32, LoongArch::R0,
31770 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCLASS_D),
31771 13, 1, 0,
31772 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVFR2GR_S_64),
31773 7, 1, 3,
31774 OPC_EmitNodeXForm, 12, 1,
31775 OPC_EmitNode1None, TARGET_VAL(LoongArch::ANDI),
31776 7, 2, 4, 5,
31777 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
31778 7, 2, 2, 6,
31779 33,
31780 OPC_CheckPatternPredicate, 9,
31781 OPC_EmitRegisterI32, LoongArch::R0,
31782 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCLASS_D),
31783 13, 1, 0,
31784 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVFR2GR_D),
31785 7, 1, 3,
31786 OPC_EmitNodeXForm, 12, 1,
31787 OPC_EmitNode1None, TARGET_VAL(LoongArch::ANDI),
31788 7, 2, 4, 5,
31789 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SLTU),
31790 7, 2, 2, 6,
31791 0,
31792 0,
31793 0,
31794 127|128,2, TARGET_VAL(ISD::ATOMIC_LOAD_NAND),
31795 OPC_RecordMemRef,
31796 OPC_RecordNode,
31797 OPC_RecordChild1,
31798 OPC_SwitchType , 53|128,1, 8,
31799 OPC_CheckChild1TypeI64,
31800 OPC_RecordChild2,
31801 OPC_Scope, 88,
31802 OPC_CheckPredicate, 10,
31803 OPC_Scope, 15,
31804 OPC_CheckPredicate6,
31805 OPC_CheckPatternPredicate6,
31806 OPC_EmitMergeInputChains1_0,
31807 OPC_EmitInteger64, 4,
31808 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand64), 0|OPFL_Chain|OPFL_MemRefs,
31809 8, 8, 3, 1, 2, 3,
31810 16,
31811 OPC_CheckPredicate, 21,
31812 OPC_CheckPatternPredicate6,
31813 OPC_EmitMergeInputChains1_0,
31814 OPC_EmitInteger64, 8,
31815 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand64), 0|OPFL_Chain|OPFL_MemRefs,
31816 8, 8, 3, 1, 2, 3,
31817 16,
31818 OPC_CheckPredicate, 22,
31819 OPC_CheckPatternPredicate6,
31820 OPC_EmitMergeInputChains1_0,
31821 OPC_EmitInteger64, 10,
31822 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand64), 0|OPFL_Chain|OPFL_MemRefs,
31823 8, 8, 3, 1, 2, 3,
31824 16,
31825 OPC_CheckPredicate, 23,
31826 OPC_CheckPatternPredicate6,
31827 OPC_EmitMergeInputChains1_0,
31828 OPC_EmitInteger64, 12,
31829 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand64), 0|OPFL_Chain|OPFL_MemRefs,
31830 8, 8, 3, 1, 2, 3,
31831 16,
31832 OPC_CheckPredicate, 24,
31833 OPC_CheckPatternPredicate6,
31834 OPC_EmitMergeInputChains1_0,
31835 OPC_EmitInteger64, 14,
31836 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand64), 0|OPFL_Chain|OPFL_MemRefs,
31837 8, 8, 3, 1, 2, 3,
31838 0,
31839 87,
31840 OPC_CheckPredicate2,
31841 OPC_Scope, 15,
31842 OPC_CheckPredicate6,
31843 OPC_CheckPatternPredicate7,
31844 OPC_EmitMergeInputChains1_0,
31845 OPC_EmitInteger64, 4,
31846 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand32), 0|OPFL_Chain|OPFL_MemRefs,
31847 8, 8, 3, 1, 2, 3,
31848 16,
31849 OPC_CheckPredicate, 21,
31850 OPC_CheckPatternPredicate7,
31851 OPC_EmitMergeInputChains1_0,
31852 OPC_EmitInteger64, 8,
31853 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand32), 0|OPFL_Chain|OPFL_MemRefs,
31854 8, 8, 3, 1, 2, 3,
31855 16,
31856 OPC_CheckPredicate, 22,
31857 OPC_CheckPatternPredicate7,
31858 OPC_EmitMergeInputChains1_0,
31859 OPC_EmitInteger64, 10,
31860 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand32), 0|OPFL_Chain|OPFL_MemRefs,
31861 8, 8, 3, 1, 2, 3,
31862 16,
31863 OPC_CheckPredicate, 23,
31864 OPC_CheckPatternPredicate7,
31865 OPC_EmitMergeInputChains1_0,
31866 OPC_EmitInteger64, 12,
31867 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand32), 0|OPFL_Chain|OPFL_MemRefs,
31868 8, 8, 3, 1, 2, 3,
31869 16,
31870 OPC_CheckPredicate, 24,
31871 OPC_CheckPatternPredicate7,
31872 OPC_EmitMergeInputChains1_0,
31873 OPC_EmitInteger64, 14,
31874 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand32), 0|OPFL_Chain|OPFL_MemRefs,
31875 8, 8, 3, 1, 2, 3,
31876 0,
31877 0,
31878 63|128,1, 7,
31879 OPC_CheckChild1TypeI32,
31880 OPC_RecordChild2,
31881 OPC_Scope, 93,
31882 OPC_CheckPredicate, 10,
31883 OPC_Scope, 16,
31884 OPC_CheckPredicate6,
31885 OPC_CheckPatternPredicate, 9,
31886 OPC_EmitMergeInputChains1_0,
31887 OPC_EmitInteger32, 4,
31888 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand64), 0|OPFL_Chain|OPFL_MemRefs,
31889 7, 7, 3, 1, 2, 3,
31890 17,
31891 OPC_CheckPredicate, 21,
31892 OPC_CheckPatternPredicate, 9,
31893 OPC_EmitMergeInputChains1_0,
31894 OPC_EmitInteger32, 8,
31895 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand64), 0|OPFL_Chain|OPFL_MemRefs,
31896 7, 7, 3, 1, 2, 3,
31897 17,
31898 OPC_CheckPredicate, 22,
31899 OPC_CheckPatternPredicate, 9,
31900 OPC_EmitMergeInputChains1_0,
31901 OPC_EmitInteger32, 10,
31902 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand64), 0|OPFL_Chain|OPFL_MemRefs,
31903 7, 7, 3, 1, 2, 3,
31904 17,
31905 OPC_CheckPredicate, 23,
31906 OPC_CheckPatternPredicate, 9,
31907 OPC_EmitMergeInputChains1_0,
31908 OPC_EmitInteger32, 12,
31909 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand64), 0|OPFL_Chain|OPFL_MemRefs,
31910 7, 7, 3, 1, 2, 3,
31911 17,
31912 OPC_CheckPredicate, 24,
31913 OPC_CheckPatternPredicate, 9,
31914 OPC_EmitMergeInputChains1_0,
31915 OPC_EmitInteger32, 14,
31916 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand64), 0|OPFL_Chain|OPFL_MemRefs,
31917 7, 7, 3, 1, 2, 3,
31918 0,
31919 92,
31920 OPC_CheckPredicate2,
31921 OPC_Scope, 16,
31922 OPC_CheckPredicate6,
31923 OPC_CheckPatternPredicate, 8,
31924 OPC_EmitMergeInputChains1_0,
31925 OPC_EmitInteger32, 4,
31926 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand32), 0|OPFL_Chain|OPFL_MemRefs,
31927 7, 7, 3, 1, 2, 3,
31928 17,
31929 OPC_CheckPredicate, 21,
31930 OPC_CheckPatternPredicate, 8,
31931 OPC_EmitMergeInputChains1_0,
31932 OPC_EmitInteger32, 8,
31933 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand32), 0|OPFL_Chain|OPFL_MemRefs,
31934 7, 7, 3, 1, 2, 3,
31935 17,
31936 OPC_CheckPredicate, 22,
31937 OPC_CheckPatternPredicate, 8,
31938 OPC_EmitMergeInputChains1_0,
31939 OPC_EmitInteger32, 10,
31940 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand32), 0|OPFL_Chain|OPFL_MemRefs,
31941 7, 7, 3, 1, 2, 3,
31942 17,
31943 OPC_CheckPredicate, 23,
31944 OPC_CheckPatternPredicate, 8,
31945 OPC_EmitMergeInputChains1_0,
31946 OPC_EmitInteger32, 12,
31947 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand32), 0|OPFL_Chain|OPFL_MemRefs,
31948 7, 7, 3, 1, 2, 3,
31949 17,
31950 OPC_CheckPredicate, 24,
31951 OPC_CheckPatternPredicate, 8,
31952 OPC_EmitMergeInputChains1_0,
31953 OPC_EmitInteger32, 14,
31954 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadNand32), 0|OPFL_Chain|OPFL_MemRefs,
31955 7, 7, 3, 1, 2, 3,
31956 0,
31957 0,
31958 0,
31959 37|128,3, TARGET_VAL(ISD::ATOMIC_SWAP),
31960 OPC_RecordMemRef,
31961 OPC_RecordNode,
31962 OPC_RecordChild1,
31963 OPC_SwitchType , 75|128,1, 8,
31964 OPC_CheckChild1TypeI64,
31965 OPC_RecordChild2,
31966 OPC_Scope, 12,
31967 OPC_CheckPredicate2,
31968 OPC_CheckPredicate6,
31969 OPC_CheckPatternPredicate6,
31970 OPC_EmitMergeInputChains1_0,
31971 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP_W), 0|OPFL_Chain|OPFL_MemRefs,
31972 8, 2, 2, 1,
31973 13,
31974 OPC_CheckPredicate, 10,
31975 OPC_CheckPredicate6,
31976 OPC_CheckPatternPredicate6,
31977 OPC_EmitMergeInputChains1_0,
31978 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP_D), 0|OPFL_Chain|OPFL_MemRefs,
31979 8, 2, 2, 1,
31980 11,
31981 OPC_CheckPredicate2,
31982 OPC_CheckPatternPredicate6,
31983 OPC_EmitMergeInputChains1_0,
31984 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
31985 8, 2, 2, 1,
31986 12,
31987 OPC_CheckPredicate, 10,
31988 OPC_CheckPatternPredicate6,
31989 OPC_EmitMergeInputChains1_0,
31990 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
31991 8, 2, 2, 1,
31992 13,
31993 OPC_CheckPredicate4,
31994 OPC_CheckPredicate6,
31995 OPC_CheckPatternPredicate, 21,
31996 OPC_EmitMergeInputChains1_0,
31997 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP_B), 0|OPFL_Chain|OPFL_MemRefs,
31998 8, 2, 2, 1,
31999 13,
32000 OPC_CheckPredicate5,
32001 OPC_CheckPredicate6,
32002 OPC_CheckPatternPredicate, 21,
32003 OPC_EmitMergeInputChains1_0,
32004 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP_H), 0|OPFL_Chain|OPFL_MemRefs,
32005 8, 2, 2, 1,
32006 12,
32007 OPC_CheckPredicate4,
32008 OPC_CheckPatternPredicate, 21,
32009 OPC_EmitMergeInputChains1_0,
32010 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP__DB_B), 0|OPFL_Chain|OPFL_MemRefs,
32011 8, 2, 2, 1,
32012 12,
32013 OPC_CheckPredicate5,
32014 OPC_CheckPatternPredicate, 21,
32015 OPC_EmitMergeInputChains1_0,
32016 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP__DB_H), 0|OPFL_Chain|OPFL_MemRefs,
32017 8, 2, 2, 1,
32018 92,
32019 OPC_CheckPredicate2,
32020 OPC_Scope, 16,
32021 OPC_CheckPredicate6,
32022 OPC_CheckPatternPredicate, 15,
32023 OPC_EmitMergeInputChains1_0,
32024 OPC_EmitInteger64, 4,
32025 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicSwap32), 0|OPFL_Chain|OPFL_MemRefs,
32026 8, 8, 3, 1, 2, 3,
32027 17,
32028 OPC_CheckPredicate, 21,
32029 OPC_CheckPatternPredicate, 15,
32030 OPC_EmitMergeInputChains1_0,
32031 OPC_EmitInteger64, 8,
32032 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicSwap32), 0|OPFL_Chain|OPFL_MemRefs,
32033 8, 8, 3, 1, 2, 3,
32034 17,
32035 OPC_CheckPredicate, 22,
32036 OPC_CheckPatternPredicate, 15,
32037 OPC_EmitMergeInputChains1_0,
32038 OPC_EmitInteger64, 10,
32039 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicSwap32), 0|OPFL_Chain|OPFL_MemRefs,
32040 8, 8, 3, 1, 2, 3,
32041 17,
32042 OPC_CheckPredicate, 23,
32043 OPC_CheckPatternPredicate, 15,
32044 OPC_EmitMergeInputChains1_0,
32045 OPC_EmitInteger64, 12,
32046 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicSwap32), 0|OPFL_Chain|OPFL_MemRefs,
32047 8, 8, 3, 1, 2, 3,
32048 17,
32049 OPC_CheckPredicate, 24,
32050 OPC_CheckPatternPredicate, 15,
32051 OPC_EmitMergeInputChains1_0,
32052 OPC_EmitInteger64, 14,
32053 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicSwap32), 0|OPFL_Chain|OPFL_MemRefs,
32054 8, 8, 3, 1, 2, 3,
32055 0,
32056 0,
32057 79|128,1, 7,
32058 OPC_CheckChild1TypeI32,
32059 OPC_RecordChild2,
32060 OPC_Scope, 13,
32061 OPC_CheckPredicate2,
32062 OPC_CheckPredicate6,
32063 OPC_CheckPatternPredicate, 9,
32064 OPC_EmitMergeInputChains1_0,
32065 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP_W), 0|OPFL_Chain|OPFL_MemRefs,
32066 7, 2, 2, 1,
32067 14,
32068 OPC_CheckPredicate, 10,
32069 OPC_CheckPredicate6,
32070 OPC_CheckPatternPredicate, 9,
32071 OPC_EmitMergeInputChains1_0,
32072 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP_D), 0|OPFL_Chain|OPFL_MemRefs,
32073 7, 2, 2, 1,
32074 12,
32075 OPC_CheckPredicate2,
32076 OPC_CheckPatternPredicate, 9,
32077 OPC_EmitMergeInputChains1_0,
32078 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
32079 7, 2, 2, 1,
32080 13,
32081 OPC_CheckPredicate, 10,
32082 OPC_CheckPatternPredicate, 9,
32083 OPC_EmitMergeInputChains1_0,
32084 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
32085 7, 2, 2, 1,
32086 13,
32087 OPC_CheckPredicate4,
32088 OPC_CheckPredicate6,
32089 OPC_CheckPatternPredicate, 22,
32090 OPC_EmitMergeInputChains1_0,
32091 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP_B), 0|OPFL_Chain|OPFL_MemRefs,
32092 7, 2, 2, 1,
32093 13,
32094 OPC_CheckPredicate5,
32095 OPC_CheckPredicate6,
32096 OPC_CheckPatternPredicate, 22,
32097 OPC_EmitMergeInputChains1_0,
32098 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP_H), 0|OPFL_Chain|OPFL_MemRefs,
32099 7, 2, 2, 1,
32100 12,
32101 OPC_CheckPredicate4,
32102 OPC_CheckPatternPredicate, 22,
32103 OPC_EmitMergeInputChains1_0,
32104 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP__DB_B), 0|OPFL_Chain|OPFL_MemRefs,
32105 7, 2, 2, 1,
32106 12,
32107 OPC_CheckPredicate5,
32108 OPC_CheckPatternPredicate, 22,
32109 OPC_EmitMergeInputChains1_0,
32110 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMSWAP__DB_H), 0|OPFL_Chain|OPFL_MemRefs,
32111 7, 2, 2, 1,
32112 92,
32113 OPC_CheckPredicate2,
32114 OPC_Scope, 16,
32115 OPC_CheckPredicate6,
32116 OPC_CheckPatternPredicate, 10,
32117 OPC_EmitMergeInputChains1_0,
32118 OPC_EmitInteger32, 4,
32119 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicSwap32), 0|OPFL_Chain|OPFL_MemRefs,
32120 7, 7, 3, 1, 2, 3,
32121 17,
32122 OPC_CheckPredicate, 21,
32123 OPC_CheckPatternPredicate, 10,
32124 OPC_EmitMergeInputChains1_0,
32125 OPC_EmitInteger32, 8,
32126 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicSwap32), 0|OPFL_Chain|OPFL_MemRefs,
32127 7, 7, 3, 1, 2, 3,
32128 17,
32129 OPC_CheckPredicate, 22,
32130 OPC_CheckPatternPredicate, 10,
32131 OPC_EmitMergeInputChains1_0,
32132 OPC_EmitInteger32, 10,
32133 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicSwap32), 0|OPFL_Chain|OPFL_MemRefs,
32134 7, 7, 3, 1, 2, 3,
32135 17,
32136 OPC_CheckPredicate, 23,
32137 OPC_CheckPatternPredicate, 10,
32138 OPC_EmitMergeInputChains1_0,
32139 OPC_EmitInteger32, 12,
32140 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicSwap32), 0|OPFL_Chain|OPFL_MemRefs,
32141 7, 7, 3, 1, 2, 3,
32142 17,
32143 OPC_CheckPredicate, 24,
32144 OPC_CheckPatternPredicate, 10,
32145 OPC_EmitMergeInputChains1_0,
32146 OPC_EmitInteger32, 14,
32147 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicSwap32), 0|OPFL_Chain|OPFL_MemRefs,
32148 7, 7, 3, 1, 2, 3,
32149 0,
32150 0,
32151 0,
32152 37|128,3, TARGET_VAL(ISD::ATOMIC_LOAD_ADD),
32153 OPC_RecordMemRef,
32154 OPC_RecordNode,
32155 OPC_RecordChild1,
32156 OPC_SwitchType , 75|128,1, 8,
32157 OPC_CheckChild1TypeI64,
32158 OPC_RecordChild2,
32159 OPC_Scope, 13,
32160 OPC_CheckPredicate4,
32161 OPC_CheckPredicate6,
32162 OPC_CheckPatternPredicate, 21,
32163 OPC_EmitMergeInputChains1_0,
32164 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_B), 0|OPFL_Chain|OPFL_MemRefs,
32165 8, 2, 2, 1,
32166 13,
32167 OPC_CheckPredicate5,
32168 OPC_CheckPredicate6,
32169 OPC_CheckPatternPredicate, 21,
32170 OPC_EmitMergeInputChains1_0,
32171 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_H), 0|OPFL_Chain|OPFL_MemRefs,
32172 8, 2, 2, 1,
32173 12,
32174 OPC_CheckPredicate4,
32175 OPC_CheckPatternPredicate, 21,
32176 OPC_EmitMergeInputChains1_0,
32177 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_B), 0|OPFL_Chain|OPFL_MemRefs,
32178 8, 2, 2, 1,
32179 12,
32180 OPC_CheckPredicate5,
32181 OPC_CheckPatternPredicate, 21,
32182 OPC_EmitMergeInputChains1_0,
32183 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_H), 0|OPFL_Chain|OPFL_MemRefs,
32184 8, 2, 2, 1,
32185 12,
32186 OPC_CheckPredicate2,
32187 OPC_CheckPredicate6,
32188 OPC_CheckPatternPredicate6,
32189 OPC_EmitMergeInputChains1_0,
32190 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_W), 0|OPFL_Chain|OPFL_MemRefs,
32191 8, 2, 2, 1,
32192 13,
32193 OPC_CheckPredicate, 10,
32194 OPC_CheckPredicate6,
32195 OPC_CheckPatternPredicate6,
32196 OPC_EmitMergeInputChains1_0,
32197 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_D), 0|OPFL_Chain|OPFL_MemRefs,
32198 8, 2, 2, 1,
32199 11,
32200 OPC_CheckPredicate2,
32201 OPC_CheckPatternPredicate6,
32202 OPC_EmitMergeInputChains1_0,
32203 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
32204 8, 2, 2, 1,
32205 12,
32206 OPC_CheckPredicate, 10,
32207 OPC_CheckPatternPredicate6,
32208 OPC_EmitMergeInputChains1_0,
32209 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
32210 8, 2, 2, 1,
32211 92,
32212 OPC_CheckPredicate2,
32213 OPC_Scope, 16,
32214 OPC_CheckPredicate6,
32215 OPC_CheckPatternPredicate, 15,
32216 OPC_EmitMergeInputChains1_0,
32217 OPC_EmitInteger64, 4,
32218 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAdd32), 0|OPFL_Chain|OPFL_MemRefs,
32219 8, 8, 3, 1, 2, 3,
32220 17,
32221 OPC_CheckPredicate, 21,
32222 OPC_CheckPatternPredicate, 15,
32223 OPC_EmitMergeInputChains1_0,
32224 OPC_EmitInteger64, 8,
32225 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAdd32), 0|OPFL_Chain|OPFL_MemRefs,
32226 8, 8, 3, 1, 2, 3,
32227 17,
32228 OPC_CheckPredicate, 22,
32229 OPC_CheckPatternPredicate, 15,
32230 OPC_EmitMergeInputChains1_0,
32231 OPC_EmitInteger64, 10,
32232 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAdd32), 0|OPFL_Chain|OPFL_MemRefs,
32233 8, 8, 3, 1, 2, 3,
32234 17,
32235 OPC_CheckPredicate, 23,
32236 OPC_CheckPatternPredicate, 15,
32237 OPC_EmitMergeInputChains1_0,
32238 OPC_EmitInteger64, 12,
32239 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAdd32), 0|OPFL_Chain|OPFL_MemRefs,
32240 8, 8, 3, 1, 2, 3,
32241 17,
32242 OPC_CheckPredicate, 24,
32243 OPC_CheckPatternPredicate, 15,
32244 OPC_EmitMergeInputChains1_0,
32245 OPC_EmitInteger64, 14,
32246 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAdd32), 0|OPFL_Chain|OPFL_MemRefs,
32247 8, 8, 3, 1, 2, 3,
32248 0,
32249 0,
32250 79|128,1, 7,
32251 OPC_CheckChild1TypeI32,
32252 OPC_RecordChild2,
32253 OPC_Scope, 13,
32254 OPC_CheckPredicate4,
32255 OPC_CheckPredicate6,
32256 OPC_CheckPatternPredicate, 22,
32257 OPC_EmitMergeInputChains1_0,
32258 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_B), 0|OPFL_Chain|OPFL_MemRefs,
32259 7, 2, 2, 1,
32260 13,
32261 OPC_CheckPredicate5,
32262 OPC_CheckPredicate6,
32263 OPC_CheckPatternPredicate, 22,
32264 OPC_EmitMergeInputChains1_0,
32265 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_H), 0|OPFL_Chain|OPFL_MemRefs,
32266 7, 2, 2, 1,
32267 12,
32268 OPC_CheckPredicate4,
32269 OPC_CheckPatternPredicate, 22,
32270 OPC_EmitMergeInputChains1_0,
32271 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_B), 0|OPFL_Chain|OPFL_MemRefs,
32272 7, 2, 2, 1,
32273 12,
32274 OPC_CheckPredicate5,
32275 OPC_CheckPatternPredicate, 22,
32276 OPC_EmitMergeInputChains1_0,
32277 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_H), 0|OPFL_Chain|OPFL_MemRefs,
32278 7, 2, 2, 1,
32279 13,
32280 OPC_CheckPredicate2,
32281 OPC_CheckPredicate6,
32282 OPC_CheckPatternPredicate, 9,
32283 OPC_EmitMergeInputChains1_0,
32284 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_W), 0|OPFL_Chain|OPFL_MemRefs,
32285 7, 2, 2, 1,
32286 14,
32287 OPC_CheckPredicate, 10,
32288 OPC_CheckPredicate6,
32289 OPC_CheckPatternPredicate, 9,
32290 OPC_EmitMergeInputChains1_0,
32291 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_D), 0|OPFL_Chain|OPFL_MemRefs,
32292 7, 2, 2, 1,
32293 12,
32294 OPC_CheckPredicate2,
32295 OPC_CheckPatternPredicate, 9,
32296 OPC_EmitMergeInputChains1_0,
32297 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
32298 7, 2, 2, 1,
32299 13,
32300 OPC_CheckPredicate, 10,
32301 OPC_CheckPatternPredicate, 9,
32302 OPC_EmitMergeInputChains1_0,
32303 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
32304 7, 2, 2, 1,
32305 92,
32306 OPC_CheckPredicate2,
32307 OPC_Scope, 16,
32308 OPC_CheckPredicate6,
32309 OPC_CheckPatternPredicate, 10,
32310 OPC_EmitMergeInputChains1_0,
32311 OPC_EmitInteger32, 4,
32312 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAdd32), 0|OPFL_Chain|OPFL_MemRefs,
32313 7, 7, 3, 1, 2, 3,
32314 17,
32315 OPC_CheckPredicate, 21,
32316 OPC_CheckPatternPredicate, 10,
32317 OPC_EmitMergeInputChains1_0,
32318 OPC_EmitInteger32, 8,
32319 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAdd32), 0|OPFL_Chain|OPFL_MemRefs,
32320 7, 7, 3, 1, 2, 3,
32321 17,
32322 OPC_CheckPredicate, 22,
32323 OPC_CheckPatternPredicate, 10,
32324 OPC_EmitMergeInputChains1_0,
32325 OPC_EmitInteger32, 10,
32326 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAdd32), 0|OPFL_Chain|OPFL_MemRefs,
32327 7, 7, 3, 1, 2, 3,
32328 17,
32329 OPC_CheckPredicate, 23,
32330 OPC_CheckPatternPredicate, 10,
32331 OPC_EmitMergeInputChains1_0,
32332 OPC_EmitInteger32, 12,
32333 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAdd32), 0|OPFL_Chain|OPFL_MemRefs,
32334 7, 7, 3, 1, 2, 3,
32335 17,
32336 OPC_CheckPredicate, 24,
32337 OPC_CheckPatternPredicate, 10,
32338 OPC_EmitMergeInputChains1_0,
32339 OPC_EmitInteger32, 14,
32340 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAdd32), 0|OPFL_Chain|OPFL_MemRefs,
32341 7, 7, 3, 1, 2, 3,
32342 0,
32343 0,
32344 0,
32345 31|128,4, TARGET_VAL(ISD::ATOMIC_CMP_SWAP),
32346 OPC_RecordMemRef,
32347 OPC_RecordNode,
32348 OPC_RecordChild1,
32349 OPC_SwitchType , 54|128,2, 8,
32350 OPC_CheckChild1TypeI64,
32351 OPC_RecordChild2,
32352 OPC_RecordChild3,
32353 OPC_Scope, 14,
32354 OPC_CheckPredicate4,
32355 OPC_CheckPredicate6,
32356 OPC_CheckPatternPredicate, 25,
32357 OPC_EmitMergeInputChains1_0,
32358 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS_B), 0|OPFL_Chain|OPFL_MemRefs,
32359 8, 3, 2, 3, 1,
32360 14,
32361 OPC_CheckPredicate5,
32362 OPC_CheckPredicate6,
32363 OPC_CheckPatternPredicate, 25,
32364 OPC_EmitMergeInputChains1_0,
32365 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS_H), 0|OPFL_Chain|OPFL_MemRefs,
32366 8, 3, 2, 3, 1,
32367 14,
32368 OPC_CheckPredicate2,
32369 OPC_CheckPredicate6,
32370 OPC_CheckPatternPredicate, 25,
32371 OPC_EmitMergeInputChains1_0,
32372 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS_W), 0|OPFL_Chain|OPFL_MemRefs,
32373 8, 3, 2, 3, 1,
32374 15,
32375 OPC_CheckPredicate, 10,
32376 OPC_CheckPredicate6,
32377 OPC_CheckPatternPredicate, 25,
32378 OPC_EmitMergeInputChains1_0,
32379 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS_D), 0|OPFL_Chain|OPFL_MemRefs,
32380 8, 3, 2, 3, 1,
32381 13,
32382 OPC_CheckPredicate4,
32383 OPC_CheckPatternPredicate, 25,
32384 OPC_EmitMergeInputChains1_0,
32385 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS__DB_B), 0|OPFL_Chain|OPFL_MemRefs,
32386 8, 3, 2, 3, 1,
32387 13,
32388 OPC_CheckPredicate5,
32389 OPC_CheckPatternPredicate, 25,
32390 OPC_EmitMergeInputChains1_0,
32391 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS__DB_H), 0|OPFL_Chain|OPFL_MemRefs,
32392 8, 3, 2, 3, 1,
32393 13,
32394 OPC_CheckPredicate2,
32395 OPC_CheckPatternPredicate, 25,
32396 OPC_EmitMergeInputChains1_0,
32397 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
32398 8, 3, 2, 3, 1,
32399 107,
32400 OPC_CheckPredicate, 10,
32401 OPC_Scope, 12,
32402 OPC_CheckPatternPredicate, 25,
32403 OPC_EmitMergeInputChains1_0,
32404 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
32405 8, 3, 2, 3, 1,
32406 17,
32407 OPC_CheckPredicate, 51,
32408 OPC_CheckPatternPredicate6,
32409 OPC_EmitMergeInputChains1_0,
32410 OPC_EmitInteger64, 4,
32411 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg64), 0|OPFL_Chain|OPFL_MemRefs,
32412 8, 8, 4, 1, 2, 3, 4,
32413 17,
32414 OPC_CheckPredicate, 52,
32415 OPC_CheckPatternPredicate6,
32416 OPC_EmitMergeInputChains1_0,
32417 OPC_EmitInteger64, 8,
32418 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg64), 0|OPFL_Chain|OPFL_MemRefs,
32419 8, 8, 4, 1, 2, 3, 4,
32420 17,
32421 OPC_CheckPredicate, 53,
32422 OPC_CheckPatternPredicate6,
32423 OPC_EmitMergeInputChains1_0,
32424 OPC_EmitInteger64, 10,
32425 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg64), 0|OPFL_Chain|OPFL_MemRefs,
32426 8, 8, 4, 1, 2, 3, 4,
32427 17,
32428 OPC_CheckPredicate, 54,
32429 OPC_CheckPatternPredicate6,
32430 OPC_EmitMergeInputChains1_0,
32431 OPC_EmitInteger64, 12,
32432 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg64), 0|OPFL_Chain|OPFL_MemRefs,
32433 8, 8, 4, 1, 2, 3, 4,
32434 17,
32435 OPC_CheckPredicate, 55,
32436 OPC_CheckPatternPredicate6,
32437 OPC_EmitMergeInputChains1_0,
32438 OPC_EmitInteger64, 14,
32439 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg64), 0|OPFL_Chain|OPFL_MemRefs,
32440 8, 8, 4, 1, 2, 3, 4,
32441 0,
32442 93,
32443 OPC_CheckPredicate2,
32444 OPC_Scope, 17,
32445 OPC_CheckPredicate, 51,
32446 OPC_CheckPatternPredicate7,
32447 OPC_EmitMergeInputChains1_0,
32448 OPC_EmitInteger64, 4,
32449 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg32), 0|OPFL_Chain|OPFL_MemRefs,
32450 8, 8, 4, 1, 2, 3, 4,
32451 17,
32452 OPC_CheckPredicate, 52,
32453 OPC_CheckPatternPredicate7,
32454 OPC_EmitMergeInputChains1_0,
32455 OPC_EmitInteger64, 8,
32456 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg32), 0|OPFL_Chain|OPFL_MemRefs,
32457 8, 8, 4, 1, 2, 3, 4,
32458 17,
32459 OPC_CheckPredicate, 53,
32460 OPC_CheckPatternPredicate7,
32461 OPC_EmitMergeInputChains1_0,
32462 OPC_EmitInteger64, 10,
32463 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg32), 0|OPFL_Chain|OPFL_MemRefs,
32464 8, 8, 4, 1, 2, 3, 4,
32465 17,
32466 OPC_CheckPredicate, 54,
32467 OPC_CheckPatternPredicate7,
32468 OPC_EmitMergeInputChains1_0,
32469 OPC_EmitInteger64, 12,
32470 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg32), 0|OPFL_Chain|OPFL_MemRefs,
32471 8, 8, 4, 1, 2, 3, 4,
32472 17,
32473 OPC_CheckPredicate, 55,
32474 OPC_CheckPatternPredicate7,
32475 OPC_EmitMergeInputChains1_0,
32476 OPC_EmitInteger64, 14,
32477 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg32), 0|OPFL_Chain|OPFL_MemRefs,
32478 8, 8, 4, 1, 2, 3, 4,
32479 0,
32480 0,
32481 94|128,1, 7,
32482 OPC_CheckChild1TypeI32,
32483 OPC_RecordChild2,
32484 OPC_RecordChild3,
32485 OPC_Scope, 14,
32486 OPC_CheckPredicate4,
32487 OPC_CheckPredicate6,
32488 OPC_CheckPatternPredicate, 26,
32489 OPC_EmitMergeInputChains1_0,
32490 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS_B), 0|OPFL_Chain|OPFL_MemRefs,
32491 7, 3, 2, 3, 1,
32492 14,
32493 OPC_CheckPredicate5,
32494 OPC_CheckPredicate6,
32495 OPC_CheckPatternPredicate, 26,
32496 OPC_EmitMergeInputChains1_0,
32497 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS_H), 0|OPFL_Chain|OPFL_MemRefs,
32498 7, 3, 2, 3, 1,
32499 14,
32500 OPC_CheckPredicate2,
32501 OPC_CheckPredicate6,
32502 OPC_CheckPatternPredicate, 26,
32503 OPC_EmitMergeInputChains1_0,
32504 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS_W), 0|OPFL_Chain|OPFL_MemRefs,
32505 7, 3, 2, 3, 1,
32506 15,
32507 OPC_CheckPredicate, 10,
32508 OPC_CheckPredicate6,
32509 OPC_CheckPatternPredicate, 26,
32510 OPC_EmitMergeInputChains1_0,
32511 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS_D), 0|OPFL_Chain|OPFL_MemRefs,
32512 7, 3, 2, 3, 1,
32513 13,
32514 OPC_CheckPredicate4,
32515 OPC_CheckPatternPredicate, 26,
32516 OPC_EmitMergeInputChains1_0,
32517 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS__DB_B), 0|OPFL_Chain|OPFL_MemRefs,
32518 7, 3, 2, 3, 1,
32519 13,
32520 OPC_CheckPredicate5,
32521 OPC_CheckPatternPredicate, 26,
32522 OPC_EmitMergeInputChains1_0,
32523 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS__DB_H), 0|OPFL_Chain|OPFL_MemRefs,
32524 7, 3, 2, 3, 1,
32525 13,
32526 OPC_CheckPredicate2,
32527 OPC_CheckPatternPredicate, 26,
32528 OPC_EmitMergeInputChains1_0,
32529 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
32530 7, 3, 2, 3, 1,
32531 14,
32532 OPC_CheckPredicate, 10,
32533 OPC_CheckPatternPredicate, 26,
32534 OPC_EmitMergeInputChains1_0,
32535 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMCAS__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
32536 7, 3, 2, 3, 1,
32537 98,
32538 OPC_CheckPredicate2,
32539 OPC_Scope, 18,
32540 OPC_CheckPredicate, 51,
32541 OPC_CheckPatternPredicate, 8,
32542 OPC_EmitMergeInputChains1_0,
32543 OPC_EmitInteger32, 4,
32544 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg32), 0|OPFL_Chain|OPFL_MemRefs,
32545 7, 7, 4, 1, 2, 3, 4,
32546 18,
32547 OPC_CheckPredicate, 52,
32548 OPC_CheckPatternPredicate, 8,
32549 OPC_EmitMergeInputChains1_0,
32550 OPC_EmitInteger32, 8,
32551 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg32), 0|OPFL_Chain|OPFL_MemRefs,
32552 7, 7, 4, 1, 2, 3, 4,
32553 18,
32554 OPC_CheckPredicate, 53,
32555 OPC_CheckPatternPredicate, 8,
32556 OPC_EmitMergeInputChains1_0,
32557 OPC_EmitInteger32, 10,
32558 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg32), 0|OPFL_Chain|OPFL_MemRefs,
32559 7, 7, 4, 1, 2, 3, 4,
32560 18,
32561 OPC_CheckPredicate, 54,
32562 OPC_CheckPatternPredicate, 8,
32563 OPC_EmitMergeInputChains1_0,
32564 OPC_EmitInteger32, 12,
32565 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg32), 0|OPFL_Chain|OPFL_MemRefs,
32566 7, 7, 4, 1, 2, 3, 4,
32567 18,
32568 OPC_CheckPredicate, 55,
32569 OPC_CheckPatternPredicate, 8,
32570 OPC_EmitMergeInputChains1_0,
32571 OPC_EmitInteger32, 14,
32572 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoCmpXchg32), 0|OPFL_Chain|OPFL_MemRefs,
32573 7, 7, 4, 1, 2, 3, 4,
32574 0,
32575 0,
32576 0,
32577 57|128,2, TARGET_VAL(ISD::ATOMIC_LOAD_AND),
32578 OPC_RecordMemRef,
32579 OPC_RecordNode,
32580 OPC_RecordChild1,
32581 OPC_SwitchType , 21|128,1, 8,
32582 OPC_CheckChild1TypeI64,
32583 OPC_RecordChild2,
32584 OPC_Scope, 12,
32585 OPC_CheckPredicate2,
32586 OPC_CheckPredicate6,
32587 OPC_CheckPatternPredicate6,
32588 OPC_EmitMergeInputChains1_0,
32589 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMAND_W), 0|OPFL_Chain|OPFL_MemRefs,
32590 8, 2, 2, 1,
32591 13,
32592 OPC_CheckPredicate, 10,
32593 OPC_CheckPredicate6,
32594 OPC_CheckPatternPredicate6,
32595 OPC_EmitMergeInputChains1_0,
32596 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMAND_D), 0|OPFL_Chain|OPFL_MemRefs,
32597 8, 2, 2, 1,
32598 11,
32599 OPC_CheckPredicate2,
32600 OPC_CheckPatternPredicate6,
32601 OPC_EmitMergeInputChains1_0,
32602 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMAND__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
32603 8, 2, 2, 1,
32604 12,
32605 OPC_CheckPredicate, 10,
32606 OPC_CheckPatternPredicate6,
32607 OPC_EmitMergeInputChains1_0,
32608 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMAND__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
32609 8, 2, 2, 1,
32610 92,
32611 OPC_CheckPredicate2,
32612 OPC_Scope, 16,
32613 OPC_CheckPredicate6,
32614 OPC_CheckPatternPredicate, 15,
32615 OPC_EmitMergeInputChains1_0,
32616 OPC_EmitInteger64, 4,
32617 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAnd32), 0|OPFL_Chain|OPFL_MemRefs,
32618 8, 8, 3, 1, 2, 3,
32619 17,
32620 OPC_CheckPredicate, 21,
32621 OPC_CheckPatternPredicate, 15,
32622 OPC_EmitMergeInputChains1_0,
32623 OPC_EmitInteger64, 8,
32624 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAnd32), 0|OPFL_Chain|OPFL_MemRefs,
32625 8, 8, 3, 1, 2, 3,
32626 17,
32627 OPC_CheckPredicate, 22,
32628 OPC_CheckPatternPredicate, 15,
32629 OPC_EmitMergeInputChains1_0,
32630 OPC_EmitInteger64, 10,
32631 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAnd32), 0|OPFL_Chain|OPFL_MemRefs,
32632 8, 8, 3, 1, 2, 3,
32633 17,
32634 OPC_CheckPredicate, 23,
32635 OPC_CheckPatternPredicate, 15,
32636 OPC_EmitMergeInputChains1_0,
32637 OPC_EmitInteger64, 12,
32638 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAnd32), 0|OPFL_Chain|OPFL_MemRefs,
32639 8, 8, 3, 1, 2, 3,
32640 17,
32641 OPC_CheckPredicate, 24,
32642 OPC_CheckPatternPredicate, 15,
32643 OPC_EmitMergeInputChains1_0,
32644 OPC_EmitInteger64, 14,
32645 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAnd32), 0|OPFL_Chain|OPFL_MemRefs,
32646 8, 8, 3, 1, 2, 3,
32647 0,
32648 0,
32649 25|128,1, 7,
32650 OPC_CheckChild1TypeI32,
32651 OPC_RecordChild2,
32652 OPC_Scope, 13,
32653 OPC_CheckPredicate2,
32654 OPC_CheckPredicate6,
32655 OPC_CheckPatternPredicate, 9,
32656 OPC_EmitMergeInputChains1_0,
32657 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMAND_W), 0|OPFL_Chain|OPFL_MemRefs,
32658 7, 2, 2, 1,
32659 14,
32660 OPC_CheckPredicate, 10,
32661 OPC_CheckPredicate6,
32662 OPC_CheckPatternPredicate, 9,
32663 OPC_EmitMergeInputChains1_0,
32664 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMAND_D), 0|OPFL_Chain|OPFL_MemRefs,
32665 7, 2, 2, 1,
32666 12,
32667 OPC_CheckPredicate2,
32668 OPC_CheckPatternPredicate, 9,
32669 OPC_EmitMergeInputChains1_0,
32670 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMAND__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
32671 7, 2, 2, 1,
32672 13,
32673 OPC_CheckPredicate, 10,
32674 OPC_CheckPatternPredicate, 9,
32675 OPC_EmitMergeInputChains1_0,
32676 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMAND__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
32677 7, 2, 2, 1,
32678 92,
32679 OPC_CheckPredicate2,
32680 OPC_Scope, 16,
32681 OPC_CheckPredicate6,
32682 OPC_CheckPatternPredicate, 10,
32683 OPC_EmitMergeInputChains1_0,
32684 OPC_EmitInteger32, 4,
32685 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAnd32), 0|OPFL_Chain|OPFL_MemRefs,
32686 7, 7, 3, 1, 2, 3,
32687 17,
32688 OPC_CheckPredicate, 21,
32689 OPC_CheckPatternPredicate, 10,
32690 OPC_EmitMergeInputChains1_0,
32691 OPC_EmitInteger32, 8,
32692 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAnd32), 0|OPFL_Chain|OPFL_MemRefs,
32693 7, 7, 3, 1, 2, 3,
32694 17,
32695 OPC_CheckPredicate, 22,
32696 OPC_CheckPatternPredicate, 10,
32697 OPC_EmitMergeInputChains1_0,
32698 OPC_EmitInteger32, 10,
32699 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAnd32), 0|OPFL_Chain|OPFL_MemRefs,
32700 7, 7, 3, 1, 2, 3,
32701 17,
32702 OPC_CheckPredicate, 23,
32703 OPC_CheckPatternPredicate, 10,
32704 OPC_EmitMergeInputChains1_0,
32705 OPC_EmitInteger32, 12,
32706 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAnd32), 0|OPFL_Chain|OPFL_MemRefs,
32707 7, 7, 3, 1, 2, 3,
32708 17,
32709 OPC_CheckPredicate, 24,
32710 OPC_CheckPatternPredicate, 10,
32711 OPC_EmitMergeInputChains1_0,
32712 OPC_EmitInteger32, 14,
32713 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadAnd32), 0|OPFL_Chain|OPFL_MemRefs,
32714 7, 7, 3, 1, 2, 3,
32715 0,
32716 0,
32717 0,
32718 57|128,2, TARGET_VAL(ISD::ATOMIC_LOAD_OR),
32719 OPC_RecordMemRef,
32720 OPC_RecordNode,
32721 OPC_RecordChild1,
32722 OPC_SwitchType , 21|128,1, 8,
32723 OPC_CheckChild1TypeI64,
32724 OPC_RecordChild2,
32725 OPC_Scope, 12,
32726 OPC_CheckPredicate2,
32727 OPC_CheckPredicate6,
32728 OPC_CheckPatternPredicate6,
32729 OPC_EmitMergeInputChains1_0,
32730 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMOR_W), 0|OPFL_Chain|OPFL_MemRefs,
32731 8, 2, 2, 1,
32732 13,
32733 OPC_CheckPredicate, 10,
32734 OPC_CheckPredicate6,
32735 OPC_CheckPatternPredicate6,
32736 OPC_EmitMergeInputChains1_0,
32737 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMOR_D), 0|OPFL_Chain|OPFL_MemRefs,
32738 8, 2, 2, 1,
32739 11,
32740 OPC_CheckPredicate2,
32741 OPC_CheckPatternPredicate6,
32742 OPC_EmitMergeInputChains1_0,
32743 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMOR__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
32744 8, 2, 2, 1,
32745 12,
32746 OPC_CheckPredicate, 10,
32747 OPC_CheckPatternPredicate6,
32748 OPC_EmitMergeInputChains1_0,
32749 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMOR__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
32750 8, 2, 2, 1,
32751 92,
32752 OPC_CheckPredicate2,
32753 OPC_Scope, 16,
32754 OPC_CheckPredicate6,
32755 OPC_CheckPatternPredicate, 15,
32756 OPC_EmitMergeInputChains1_0,
32757 OPC_EmitInteger64, 4,
32758 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadOr32), 0|OPFL_Chain|OPFL_MemRefs,
32759 8, 8, 3, 1, 2, 3,
32760 17,
32761 OPC_CheckPredicate, 21,
32762 OPC_CheckPatternPredicate, 15,
32763 OPC_EmitMergeInputChains1_0,
32764 OPC_EmitInteger64, 8,
32765 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadOr32), 0|OPFL_Chain|OPFL_MemRefs,
32766 8, 8, 3, 1, 2, 3,
32767 17,
32768 OPC_CheckPredicate, 22,
32769 OPC_CheckPatternPredicate, 15,
32770 OPC_EmitMergeInputChains1_0,
32771 OPC_EmitInteger64, 10,
32772 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadOr32), 0|OPFL_Chain|OPFL_MemRefs,
32773 8, 8, 3, 1, 2, 3,
32774 17,
32775 OPC_CheckPredicate, 23,
32776 OPC_CheckPatternPredicate, 15,
32777 OPC_EmitMergeInputChains1_0,
32778 OPC_EmitInteger64, 12,
32779 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadOr32), 0|OPFL_Chain|OPFL_MemRefs,
32780 8, 8, 3, 1, 2, 3,
32781 17,
32782 OPC_CheckPredicate, 24,
32783 OPC_CheckPatternPredicate, 15,
32784 OPC_EmitMergeInputChains1_0,
32785 OPC_EmitInteger64, 14,
32786 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadOr32), 0|OPFL_Chain|OPFL_MemRefs,
32787 8, 8, 3, 1, 2, 3,
32788 0,
32789 0,
32790 25|128,1, 7,
32791 OPC_CheckChild1TypeI32,
32792 OPC_RecordChild2,
32793 OPC_Scope, 13,
32794 OPC_CheckPredicate2,
32795 OPC_CheckPredicate6,
32796 OPC_CheckPatternPredicate, 9,
32797 OPC_EmitMergeInputChains1_0,
32798 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMOR_W), 0|OPFL_Chain|OPFL_MemRefs,
32799 7, 2, 2, 1,
32800 14,
32801 OPC_CheckPredicate, 10,
32802 OPC_CheckPredicate6,
32803 OPC_CheckPatternPredicate, 9,
32804 OPC_EmitMergeInputChains1_0,
32805 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMOR_D), 0|OPFL_Chain|OPFL_MemRefs,
32806 7, 2, 2, 1,
32807 12,
32808 OPC_CheckPredicate2,
32809 OPC_CheckPatternPredicate, 9,
32810 OPC_EmitMergeInputChains1_0,
32811 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMOR__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
32812 7, 2, 2, 1,
32813 13,
32814 OPC_CheckPredicate, 10,
32815 OPC_CheckPatternPredicate, 9,
32816 OPC_EmitMergeInputChains1_0,
32817 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMOR__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
32818 7, 2, 2, 1,
32819 92,
32820 OPC_CheckPredicate2,
32821 OPC_Scope, 16,
32822 OPC_CheckPredicate6,
32823 OPC_CheckPatternPredicate, 10,
32824 OPC_EmitMergeInputChains1_0,
32825 OPC_EmitInteger32, 4,
32826 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadOr32), 0|OPFL_Chain|OPFL_MemRefs,
32827 7, 7, 3, 1, 2, 3,
32828 17,
32829 OPC_CheckPredicate, 21,
32830 OPC_CheckPatternPredicate, 10,
32831 OPC_EmitMergeInputChains1_0,
32832 OPC_EmitInteger32, 8,
32833 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadOr32), 0|OPFL_Chain|OPFL_MemRefs,
32834 7, 7, 3, 1, 2, 3,
32835 17,
32836 OPC_CheckPredicate, 22,
32837 OPC_CheckPatternPredicate, 10,
32838 OPC_EmitMergeInputChains1_0,
32839 OPC_EmitInteger32, 10,
32840 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadOr32), 0|OPFL_Chain|OPFL_MemRefs,
32841 7, 7, 3, 1, 2, 3,
32842 17,
32843 OPC_CheckPredicate, 23,
32844 OPC_CheckPatternPredicate, 10,
32845 OPC_EmitMergeInputChains1_0,
32846 OPC_EmitInteger32, 12,
32847 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadOr32), 0|OPFL_Chain|OPFL_MemRefs,
32848 7, 7, 3, 1, 2, 3,
32849 17,
32850 OPC_CheckPredicate, 24,
32851 OPC_CheckPatternPredicate, 10,
32852 OPC_EmitMergeInputChains1_0,
32853 OPC_EmitInteger32, 14,
32854 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadOr32), 0|OPFL_Chain|OPFL_MemRefs,
32855 7, 7, 3, 1, 2, 3,
32856 0,
32857 0,
32858 0,
32859 57|128,2, TARGET_VAL(ISD::ATOMIC_LOAD_XOR),
32860 OPC_RecordMemRef,
32861 OPC_RecordNode,
32862 OPC_RecordChild1,
32863 OPC_SwitchType , 21|128,1, 8,
32864 OPC_CheckChild1TypeI64,
32865 OPC_RecordChild2,
32866 OPC_Scope, 12,
32867 OPC_CheckPredicate2,
32868 OPC_CheckPredicate6,
32869 OPC_CheckPatternPredicate6,
32870 OPC_EmitMergeInputChains1_0,
32871 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMXOR_W), 0|OPFL_Chain|OPFL_MemRefs,
32872 8, 2, 2, 1,
32873 13,
32874 OPC_CheckPredicate, 10,
32875 OPC_CheckPredicate6,
32876 OPC_CheckPatternPredicate6,
32877 OPC_EmitMergeInputChains1_0,
32878 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMXOR_D), 0|OPFL_Chain|OPFL_MemRefs,
32879 8, 2, 2, 1,
32880 11,
32881 OPC_CheckPredicate2,
32882 OPC_CheckPatternPredicate6,
32883 OPC_EmitMergeInputChains1_0,
32884 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMXOR__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
32885 8, 2, 2, 1,
32886 12,
32887 OPC_CheckPredicate, 10,
32888 OPC_CheckPatternPredicate6,
32889 OPC_EmitMergeInputChains1_0,
32890 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMXOR__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
32891 8, 2, 2, 1,
32892 92,
32893 OPC_CheckPredicate2,
32894 OPC_Scope, 16,
32895 OPC_CheckPredicate6,
32896 OPC_CheckPatternPredicate, 15,
32897 OPC_EmitMergeInputChains1_0,
32898 OPC_EmitInteger64, 4,
32899 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadXor32), 0|OPFL_Chain|OPFL_MemRefs,
32900 8, 8, 3, 1, 2, 3,
32901 17,
32902 OPC_CheckPredicate, 21,
32903 OPC_CheckPatternPredicate, 15,
32904 OPC_EmitMergeInputChains1_0,
32905 OPC_EmitInteger64, 8,
32906 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadXor32), 0|OPFL_Chain|OPFL_MemRefs,
32907 8, 8, 3, 1, 2, 3,
32908 17,
32909 OPC_CheckPredicate, 22,
32910 OPC_CheckPatternPredicate, 15,
32911 OPC_EmitMergeInputChains1_0,
32912 OPC_EmitInteger64, 10,
32913 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadXor32), 0|OPFL_Chain|OPFL_MemRefs,
32914 8, 8, 3, 1, 2, 3,
32915 17,
32916 OPC_CheckPredicate, 23,
32917 OPC_CheckPatternPredicate, 15,
32918 OPC_EmitMergeInputChains1_0,
32919 OPC_EmitInteger64, 12,
32920 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadXor32), 0|OPFL_Chain|OPFL_MemRefs,
32921 8, 8, 3, 1, 2, 3,
32922 17,
32923 OPC_CheckPredicate, 24,
32924 OPC_CheckPatternPredicate, 15,
32925 OPC_EmitMergeInputChains1_0,
32926 OPC_EmitInteger64, 14,
32927 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadXor32), 0|OPFL_Chain|OPFL_MemRefs,
32928 8, 8, 3, 1, 2, 3,
32929 0,
32930 0,
32931 25|128,1, 7,
32932 OPC_CheckChild1TypeI32,
32933 OPC_RecordChild2,
32934 OPC_Scope, 13,
32935 OPC_CheckPredicate2,
32936 OPC_CheckPredicate6,
32937 OPC_CheckPatternPredicate, 9,
32938 OPC_EmitMergeInputChains1_0,
32939 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMXOR_W), 0|OPFL_Chain|OPFL_MemRefs,
32940 7, 2, 2, 1,
32941 14,
32942 OPC_CheckPredicate, 10,
32943 OPC_CheckPredicate6,
32944 OPC_CheckPatternPredicate, 9,
32945 OPC_EmitMergeInputChains1_0,
32946 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMXOR_D), 0|OPFL_Chain|OPFL_MemRefs,
32947 7, 2, 2, 1,
32948 12,
32949 OPC_CheckPredicate2,
32950 OPC_CheckPatternPredicate, 9,
32951 OPC_EmitMergeInputChains1_0,
32952 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMXOR__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
32953 7, 2, 2, 1,
32954 13,
32955 OPC_CheckPredicate, 10,
32956 OPC_CheckPatternPredicate, 9,
32957 OPC_EmitMergeInputChains1_0,
32958 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMXOR__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
32959 7, 2, 2, 1,
32960 92,
32961 OPC_CheckPredicate2,
32962 OPC_Scope, 16,
32963 OPC_CheckPredicate6,
32964 OPC_CheckPatternPredicate, 10,
32965 OPC_EmitMergeInputChains1_0,
32966 OPC_EmitInteger32, 4,
32967 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadXor32), 0|OPFL_Chain|OPFL_MemRefs,
32968 7, 7, 3, 1, 2, 3,
32969 17,
32970 OPC_CheckPredicate, 21,
32971 OPC_CheckPatternPredicate, 10,
32972 OPC_EmitMergeInputChains1_0,
32973 OPC_EmitInteger32, 8,
32974 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadXor32), 0|OPFL_Chain|OPFL_MemRefs,
32975 7, 7, 3, 1, 2, 3,
32976 17,
32977 OPC_CheckPredicate, 22,
32978 OPC_CheckPatternPredicate, 10,
32979 OPC_EmitMergeInputChains1_0,
32980 OPC_EmitInteger32, 10,
32981 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadXor32), 0|OPFL_Chain|OPFL_MemRefs,
32982 7, 7, 3, 1, 2, 3,
32983 17,
32984 OPC_CheckPredicate, 23,
32985 OPC_CheckPatternPredicate, 10,
32986 OPC_EmitMergeInputChains1_0,
32987 OPC_EmitInteger32, 12,
32988 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadXor32), 0|OPFL_Chain|OPFL_MemRefs,
32989 7, 7, 3, 1, 2, 3,
32990 17,
32991 OPC_CheckPredicate, 24,
32992 OPC_CheckPatternPredicate, 10,
32993 OPC_EmitMergeInputChains1_0,
32994 OPC_EmitInteger32, 14,
32995 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadXor32), 0|OPFL_Chain|OPFL_MemRefs,
32996 7, 7, 3, 1, 2, 3,
32997 0,
32998 0,
32999 0,
33000 57|128,2, TARGET_VAL(ISD::ATOMIC_LOAD_UMIN),
33001 OPC_RecordMemRef,
33002 OPC_RecordNode,
33003 OPC_RecordChild1,
33004 OPC_SwitchType , 21|128,1, 8,
33005 OPC_CheckChild1TypeI64,
33006 OPC_RecordChild2,
33007 OPC_Scope, 12,
33008 OPC_CheckPredicate2,
33009 OPC_CheckPredicate6,
33010 OPC_CheckPatternPredicate6,
33011 OPC_EmitMergeInputChains1_0,
33012 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN_WU), 0|OPFL_Chain|OPFL_MemRefs,
33013 8, 2, 2, 1,
33014 13,
33015 OPC_CheckPredicate, 10,
33016 OPC_CheckPredicate6,
33017 OPC_CheckPatternPredicate6,
33018 OPC_EmitMergeInputChains1_0,
33019 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN_DU), 0|OPFL_Chain|OPFL_MemRefs,
33020 8, 2, 2, 1,
33021 11,
33022 OPC_CheckPredicate2,
33023 OPC_CheckPatternPredicate6,
33024 OPC_EmitMergeInputChains1_0,
33025 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN__DB_WU), 0|OPFL_Chain|OPFL_MemRefs,
33026 8, 2, 2, 1,
33027 12,
33028 OPC_CheckPredicate, 10,
33029 OPC_CheckPatternPredicate6,
33030 OPC_EmitMergeInputChains1_0,
33031 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN__DB_DU), 0|OPFL_Chain|OPFL_MemRefs,
33032 8, 2, 2, 1,
33033 92,
33034 OPC_CheckPredicate2,
33035 OPC_Scope, 16,
33036 OPC_CheckPredicate6,
33037 OPC_CheckPatternPredicate, 15,
33038 OPC_EmitMergeInputChains1_0,
33039 OPC_EmitInteger64, 4,
33040 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMin32), 0|OPFL_Chain|OPFL_MemRefs,
33041 8, 8, 3, 1, 2, 3,
33042 17,
33043 OPC_CheckPredicate, 21,
33044 OPC_CheckPatternPredicate, 15,
33045 OPC_EmitMergeInputChains1_0,
33046 OPC_EmitInteger64, 8,
33047 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMin32), 0|OPFL_Chain|OPFL_MemRefs,
33048 8, 8, 3, 1, 2, 3,
33049 17,
33050 OPC_CheckPredicate, 22,
33051 OPC_CheckPatternPredicate, 15,
33052 OPC_EmitMergeInputChains1_0,
33053 OPC_EmitInteger64, 10,
33054 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMin32), 0|OPFL_Chain|OPFL_MemRefs,
33055 8, 8, 3, 1, 2, 3,
33056 17,
33057 OPC_CheckPredicate, 23,
33058 OPC_CheckPatternPredicate, 15,
33059 OPC_EmitMergeInputChains1_0,
33060 OPC_EmitInteger64, 12,
33061 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMin32), 0|OPFL_Chain|OPFL_MemRefs,
33062 8, 8, 3, 1, 2, 3,
33063 17,
33064 OPC_CheckPredicate, 24,
33065 OPC_CheckPatternPredicate, 15,
33066 OPC_EmitMergeInputChains1_0,
33067 OPC_EmitInteger64, 14,
33068 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMin32), 0|OPFL_Chain|OPFL_MemRefs,
33069 8, 8, 3, 1, 2, 3,
33070 0,
33071 0,
33072 25|128,1, 7,
33073 OPC_CheckChild1TypeI32,
33074 OPC_RecordChild2,
33075 OPC_Scope, 13,
33076 OPC_CheckPredicate2,
33077 OPC_CheckPredicate6,
33078 OPC_CheckPatternPredicate, 9,
33079 OPC_EmitMergeInputChains1_0,
33080 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN_WU), 0|OPFL_Chain|OPFL_MemRefs,
33081 7, 2, 2, 1,
33082 14,
33083 OPC_CheckPredicate, 10,
33084 OPC_CheckPredicate6,
33085 OPC_CheckPatternPredicate, 9,
33086 OPC_EmitMergeInputChains1_0,
33087 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN_DU), 0|OPFL_Chain|OPFL_MemRefs,
33088 7, 2, 2, 1,
33089 12,
33090 OPC_CheckPredicate2,
33091 OPC_CheckPatternPredicate, 9,
33092 OPC_EmitMergeInputChains1_0,
33093 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN__DB_WU), 0|OPFL_Chain|OPFL_MemRefs,
33094 7, 2, 2, 1,
33095 13,
33096 OPC_CheckPredicate, 10,
33097 OPC_CheckPatternPredicate, 9,
33098 OPC_EmitMergeInputChains1_0,
33099 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN__DB_DU), 0|OPFL_Chain|OPFL_MemRefs,
33100 7, 2, 2, 1,
33101 92,
33102 OPC_CheckPredicate2,
33103 OPC_Scope, 16,
33104 OPC_CheckPredicate6,
33105 OPC_CheckPatternPredicate, 10,
33106 OPC_EmitMergeInputChains1_0,
33107 OPC_EmitInteger32, 4,
33108 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMin32), 0|OPFL_Chain|OPFL_MemRefs,
33109 7, 7, 3, 1, 2, 3,
33110 17,
33111 OPC_CheckPredicate, 21,
33112 OPC_CheckPatternPredicate, 10,
33113 OPC_EmitMergeInputChains1_0,
33114 OPC_EmitInteger32, 8,
33115 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMin32), 0|OPFL_Chain|OPFL_MemRefs,
33116 7, 7, 3, 1, 2, 3,
33117 17,
33118 OPC_CheckPredicate, 22,
33119 OPC_CheckPatternPredicate, 10,
33120 OPC_EmitMergeInputChains1_0,
33121 OPC_EmitInteger32, 10,
33122 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMin32), 0|OPFL_Chain|OPFL_MemRefs,
33123 7, 7, 3, 1, 2, 3,
33124 17,
33125 OPC_CheckPredicate, 23,
33126 OPC_CheckPatternPredicate, 10,
33127 OPC_EmitMergeInputChains1_0,
33128 OPC_EmitInteger32, 12,
33129 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMin32), 0|OPFL_Chain|OPFL_MemRefs,
33130 7, 7, 3, 1, 2, 3,
33131 17,
33132 OPC_CheckPredicate, 24,
33133 OPC_CheckPatternPredicate, 10,
33134 OPC_EmitMergeInputChains1_0,
33135 OPC_EmitInteger32, 14,
33136 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMin32), 0|OPFL_Chain|OPFL_MemRefs,
33137 7, 7, 3, 1, 2, 3,
33138 0,
33139 0,
33140 0,
33141 57|128,2, TARGET_VAL(ISD::ATOMIC_LOAD_UMAX),
33142 OPC_RecordMemRef,
33143 OPC_RecordNode,
33144 OPC_RecordChild1,
33145 OPC_SwitchType , 21|128,1, 8,
33146 OPC_CheckChild1TypeI64,
33147 OPC_RecordChild2,
33148 OPC_Scope, 12,
33149 OPC_CheckPredicate2,
33150 OPC_CheckPredicate6,
33151 OPC_CheckPatternPredicate6,
33152 OPC_EmitMergeInputChains1_0,
33153 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX_WU), 0|OPFL_Chain|OPFL_MemRefs,
33154 8, 2, 2, 1,
33155 13,
33156 OPC_CheckPredicate, 10,
33157 OPC_CheckPredicate6,
33158 OPC_CheckPatternPredicate6,
33159 OPC_EmitMergeInputChains1_0,
33160 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX_DU), 0|OPFL_Chain|OPFL_MemRefs,
33161 8, 2, 2, 1,
33162 11,
33163 OPC_CheckPredicate2,
33164 OPC_CheckPatternPredicate6,
33165 OPC_EmitMergeInputChains1_0,
33166 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX__DB_WU), 0|OPFL_Chain|OPFL_MemRefs,
33167 8, 2, 2, 1,
33168 12,
33169 OPC_CheckPredicate, 10,
33170 OPC_CheckPatternPredicate6,
33171 OPC_EmitMergeInputChains1_0,
33172 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX__DB_DU), 0|OPFL_Chain|OPFL_MemRefs,
33173 8, 2, 2, 1,
33174 92,
33175 OPC_CheckPredicate2,
33176 OPC_Scope, 16,
33177 OPC_CheckPredicate6,
33178 OPC_CheckPatternPredicate, 15,
33179 OPC_EmitMergeInputChains1_0,
33180 OPC_EmitInteger64, 4,
33181 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMax32), 0|OPFL_Chain|OPFL_MemRefs,
33182 8, 8, 3, 1, 2, 3,
33183 17,
33184 OPC_CheckPredicate, 21,
33185 OPC_CheckPatternPredicate, 15,
33186 OPC_EmitMergeInputChains1_0,
33187 OPC_EmitInteger64, 8,
33188 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMax32), 0|OPFL_Chain|OPFL_MemRefs,
33189 8, 8, 3, 1, 2, 3,
33190 17,
33191 OPC_CheckPredicate, 22,
33192 OPC_CheckPatternPredicate, 15,
33193 OPC_EmitMergeInputChains1_0,
33194 OPC_EmitInteger64, 10,
33195 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMax32), 0|OPFL_Chain|OPFL_MemRefs,
33196 8, 8, 3, 1, 2, 3,
33197 17,
33198 OPC_CheckPredicate, 23,
33199 OPC_CheckPatternPredicate, 15,
33200 OPC_EmitMergeInputChains1_0,
33201 OPC_EmitInteger64, 12,
33202 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMax32), 0|OPFL_Chain|OPFL_MemRefs,
33203 8, 8, 3, 1, 2, 3,
33204 17,
33205 OPC_CheckPredicate, 24,
33206 OPC_CheckPatternPredicate, 15,
33207 OPC_EmitMergeInputChains1_0,
33208 OPC_EmitInteger64, 14,
33209 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMax32), 0|OPFL_Chain|OPFL_MemRefs,
33210 8, 8, 3, 1, 2, 3,
33211 0,
33212 0,
33213 25|128,1, 7,
33214 OPC_CheckChild1TypeI32,
33215 OPC_RecordChild2,
33216 OPC_Scope, 13,
33217 OPC_CheckPredicate2,
33218 OPC_CheckPredicate6,
33219 OPC_CheckPatternPredicate, 9,
33220 OPC_EmitMergeInputChains1_0,
33221 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX_WU), 0|OPFL_Chain|OPFL_MemRefs,
33222 7, 2, 2, 1,
33223 14,
33224 OPC_CheckPredicate, 10,
33225 OPC_CheckPredicate6,
33226 OPC_CheckPatternPredicate, 9,
33227 OPC_EmitMergeInputChains1_0,
33228 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX_DU), 0|OPFL_Chain|OPFL_MemRefs,
33229 7, 2, 2, 1,
33230 12,
33231 OPC_CheckPredicate2,
33232 OPC_CheckPatternPredicate, 9,
33233 OPC_EmitMergeInputChains1_0,
33234 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX__DB_WU), 0|OPFL_Chain|OPFL_MemRefs,
33235 7, 2, 2, 1,
33236 13,
33237 OPC_CheckPredicate, 10,
33238 OPC_CheckPatternPredicate, 9,
33239 OPC_EmitMergeInputChains1_0,
33240 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX__DB_DU), 0|OPFL_Chain|OPFL_MemRefs,
33241 7, 2, 2, 1,
33242 92,
33243 OPC_CheckPredicate2,
33244 OPC_Scope, 16,
33245 OPC_CheckPredicate6,
33246 OPC_CheckPatternPredicate, 10,
33247 OPC_EmitMergeInputChains1_0,
33248 OPC_EmitInteger32, 4,
33249 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMax32), 0|OPFL_Chain|OPFL_MemRefs,
33250 7, 7, 3, 1, 2, 3,
33251 17,
33252 OPC_CheckPredicate, 21,
33253 OPC_CheckPatternPredicate, 10,
33254 OPC_EmitMergeInputChains1_0,
33255 OPC_EmitInteger32, 8,
33256 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMax32), 0|OPFL_Chain|OPFL_MemRefs,
33257 7, 7, 3, 1, 2, 3,
33258 17,
33259 OPC_CheckPredicate, 22,
33260 OPC_CheckPatternPredicate, 10,
33261 OPC_EmitMergeInputChains1_0,
33262 OPC_EmitInteger32, 10,
33263 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMax32), 0|OPFL_Chain|OPFL_MemRefs,
33264 7, 7, 3, 1, 2, 3,
33265 17,
33266 OPC_CheckPredicate, 23,
33267 OPC_CheckPatternPredicate, 10,
33268 OPC_EmitMergeInputChains1_0,
33269 OPC_EmitInteger32, 12,
33270 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMax32), 0|OPFL_Chain|OPFL_MemRefs,
33271 7, 7, 3, 1, 2, 3,
33272 17,
33273 OPC_CheckPredicate, 24,
33274 OPC_CheckPatternPredicate, 10,
33275 OPC_EmitMergeInputChains1_0,
33276 OPC_EmitInteger32, 14,
33277 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadUMax32), 0|OPFL_Chain|OPFL_MemRefs,
33278 7, 7, 3, 1, 2, 3,
33279 0,
33280 0,
33281 0,
33282 57|128,2, TARGET_VAL(ISD::ATOMIC_LOAD_MIN),
33283 OPC_RecordMemRef,
33284 OPC_RecordNode,
33285 OPC_RecordChild1,
33286 OPC_SwitchType , 21|128,1, 8,
33287 OPC_CheckChild1TypeI64,
33288 OPC_RecordChild2,
33289 OPC_Scope, 12,
33290 OPC_CheckPredicate2,
33291 OPC_CheckPredicate6,
33292 OPC_CheckPatternPredicate6,
33293 OPC_EmitMergeInputChains1_0,
33294 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN_W), 0|OPFL_Chain|OPFL_MemRefs,
33295 8, 2, 2, 1,
33296 13,
33297 OPC_CheckPredicate, 10,
33298 OPC_CheckPredicate6,
33299 OPC_CheckPatternPredicate6,
33300 OPC_EmitMergeInputChains1_0,
33301 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN_D), 0|OPFL_Chain|OPFL_MemRefs,
33302 8, 2, 2, 1,
33303 11,
33304 OPC_CheckPredicate2,
33305 OPC_CheckPatternPredicate6,
33306 OPC_EmitMergeInputChains1_0,
33307 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
33308 8, 2, 2, 1,
33309 12,
33310 OPC_CheckPredicate, 10,
33311 OPC_CheckPatternPredicate6,
33312 OPC_EmitMergeInputChains1_0,
33313 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
33314 8, 2, 2, 1,
33315 92,
33316 OPC_CheckPredicate2,
33317 OPC_Scope, 16,
33318 OPC_CheckPredicate6,
33319 OPC_CheckPatternPredicate, 15,
33320 OPC_EmitMergeInputChains1_0,
33321 OPC_EmitInteger64, 4,
33322 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMin32), 0|OPFL_Chain|OPFL_MemRefs,
33323 8, 8, 3, 1, 2, 3,
33324 17,
33325 OPC_CheckPredicate, 21,
33326 OPC_CheckPatternPredicate, 15,
33327 OPC_EmitMergeInputChains1_0,
33328 OPC_EmitInteger64, 8,
33329 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMin32), 0|OPFL_Chain|OPFL_MemRefs,
33330 8, 8, 3, 1, 2, 3,
33331 17,
33332 OPC_CheckPredicate, 22,
33333 OPC_CheckPatternPredicate, 15,
33334 OPC_EmitMergeInputChains1_0,
33335 OPC_EmitInteger64, 10,
33336 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMin32), 0|OPFL_Chain|OPFL_MemRefs,
33337 8, 8, 3, 1, 2, 3,
33338 17,
33339 OPC_CheckPredicate, 23,
33340 OPC_CheckPatternPredicate, 15,
33341 OPC_EmitMergeInputChains1_0,
33342 OPC_EmitInteger64, 12,
33343 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMin32), 0|OPFL_Chain|OPFL_MemRefs,
33344 8, 8, 3, 1, 2, 3,
33345 17,
33346 OPC_CheckPredicate, 24,
33347 OPC_CheckPatternPredicate, 15,
33348 OPC_EmitMergeInputChains1_0,
33349 OPC_EmitInteger64, 14,
33350 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMin32), 0|OPFL_Chain|OPFL_MemRefs,
33351 8, 8, 3, 1, 2, 3,
33352 0,
33353 0,
33354 25|128,1, 7,
33355 OPC_CheckChild1TypeI32,
33356 OPC_RecordChild2,
33357 OPC_Scope, 13,
33358 OPC_CheckPredicate2,
33359 OPC_CheckPredicate6,
33360 OPC_CheckPatternPredicate, 9,
33361 OPC_EmitMergeInputChains1_0,
33362 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN_W), 0|OPFL_Chain|OPFL_MemRefs,
33363 7, 2, 2, 1,
33364 14,
33365 OPC_CheckPredicate, 10,
33366 OPC_CheckPredicate6,
33367 OPC_CheckPatternPredicate, 9,
33368 OPC_EmitMergeInputChains1_0,
33369 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN_D), 0|OPFL_Chain|OPFL_MemRefs,
33370 7, 2, 2, 1,
33371 12,
33372 OPC_CheckPredicate2,
33373 OPC_CheckPatternPredicate, 9,
33374 OPC_EmitMergeInputChains1_0,
33375 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
33376 7, 2, 2, 1,
33377 13,
33378 OPC_CheckPredicate, 10,
33379 OPC_CheckPatternPredicate, 9,
33380 OPC_EmitMergeInputChains1_0,
33381 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMIN__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
33382 7, 2, 2, 1,
33383 92,
33384 OPC_CheckPredicate2,
33385 OPC_Scope, 16,
33386 OPC_CheckPredicate6,
33387 OPC_CheckPatternPredicate, 10,
33388 OPC_EmitMergeInputChains1_0,
33389 OPC_EmitInteger32, 4,
33390 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMin32), 0|OPFL_Chain|OPFL_MemRefs,
33391 7, 7, 3, 1, 2, 3,
33392 17,
33393 OPC_CheckPredicate, 21,
33394 OPC_CheckPatternPredicate, 10,
33395 OPC_EmitMergeInputChains1_0,
33396 OPC_EmitInteger32, 8,
33397 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMin32), 0|OPFL_Chain|OPFL_MemRefs,
33398 7, 7, 3, 1, 2, 3,
33399 17,
33400 OPC_CheckPredicate, 22,
33401 OPC_CheckPatternPredicate, 10,
33402 OPC_EmitMergeInputChains1_0,
33403 OPC_EmitInteger32, 10,
33404 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMin32), 0|OPFL_Chain|OPFL_MemRefs,
33405 7, 7, 3, 1, 2, 3,
33406 17,
33407 OPC_CheckPredicate, 23,
33408 OPC_CheckPatternPredicate, 10,
33409 OPC_EmitMergeInputChains1_0,
33410 OPC_EmitInteger32, 12,
33411 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMin32), 0|OPFL_Chain|OPFL_MemRefs,
33412 7, 7, 3, 1, 2, 3,
33413 17,
33414 OPC_CheckPredicate, 24,
33415 OPC_CheckPatternPredicate, 10,
33416 OPC_EmitMergeInputChains1_0,
33417 OPC_EmitInteger32, 14,
33418 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMin32), 0|OPFL_Chain|OPFL_MemRefs,
33419 7, 7, 3, 1, 2, 3,
33420 0,
33421 0,
33422 0,
33423 57|128,2, TARGET_VAL(ISD::ATOMIC_LOAD_MAX),
33424 OPC_RecordMemRef,
33425 OPC_RecordNode,
33426 OPC_RecordChild1,
33427 OPC_SwitchType , 21|128,1, 8,
33428 OPC_CheckChild1TypeI64,
33429 OPC_RecordChild2,
33430 OPC_Scope, 12,
33431 OPC_CheckPredicate2,
33432 OPC_CheckPredicate6,
33433 OPC_CheckPatternPredicate6,
33434 OPC_EmitMergeInputChains1_0,
33435 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX_W), 0|OPFL_Chain|OPFL_MemRefs,
33436 8, 2, 2, 1,
33437 13,
33438 OPC_CheckPredicate, 10,
33439 OPC_CheckPredicate6,
33440 OPC_CheckPatternPredicate6,
33441 OPC_EmitMergeInputChains1_0,
33442 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX_D), 0|OPFL_Chain|OPFL_MemRefs,
33443 8, 2, 2, 1,
33444 11,
33445 OPC_CheckPredicate2,
33446 OPC_CheckPatternPredicate6,
33447 OPC_EmitMergeInputChains1_0,
33448 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
33449 8, 2, 2, 1,
33450 12,
33451 OPC_CheckPredicate, 10,
33452 OPC_CheckPatternPredicate6,
33453 OPC_EmitMergeInputChains1_0,
33454 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
33455 8, 2, 2, 1,
33456 92,
33457 OPC_CheckPredicate2,
33458 OPC_Scope, 16,
33459 OPC_CheckPredicate6,
33460 OPC_CheckPatternPredicate, 15,
33461 OPC_EmitMergeInputChains1_0,
33462 OPC_EmitInteger64, 4,
33463 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMax32), 0|OPFL_Chain|OPFL_MemRefs,
33464 8, 8, 3, 1, 2, 3,
33465 17,
33466 OPC_CheckPredicate, 21,
33467 OPC_CheckPatternPredicate, 15,
33468 OPC_EmitMergeInputChains1_0,
33469 OPC_EmitInteger64, 8,
33470 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMax32), 0|OPFL_Chain|OPFL_MemRefs,
33471 8, 8, 3, 1, 2, 3,
33472 17,
33473 OPC_CheckPredicate, 22,
33474 OPC_CheckPatternPredicate, 15,
33475 OPC_EmitMergeInputChains1_0,
33476 OPC_EmitInteger64, 10,
33477 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMax32), 0|OPFL_Chain|OPFL_MemRefs,
33478 8, 8, 3, 1, 2, 3,
33479 17,
33480 OPC_CheckPredicate, 23,
33481 OPC_CheckPatternPredicate, 15,
33482 OPC_EmitMergeInputChains1_0,
33483 OPC_EmitInteger64, 12,
33484 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMax32), 0|OPFL_Chain|OPFL_MemRefs,
33485 8, 8, 3, 1, 2, 3,
33486 17,
33487 OPC_CheckPredicate, 24,
33488 OPC_CheckPatternPredicate, 15,
33489 OPC_EmitMergeInputChains1_0,
33490 OPC_EmitInteger64, 14,
33491 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMax32), 0|OPFL_Chain|OPFL_MemRefs,
33492 8, 8, 3, 1, 2, 3,
33493 0,
33494 0,
33495 25|128,1, 7,
33496 OPC_CheckChild1TypeI32,
33497 OPC_RecordChild2,
33498 OPC_Scope, 13,
33499 OPC_CheckPredicate2,
33500 OPC_CheckPredicate6,
33501 OPC_CheckPatternPredicate, 9,
33502 OPC_EmitMergeInputChains1_0,
33503 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX_W), 0|OPFL_Chain|OPFL_MemRefs,
33504 7, 2, 2, 1,
33505 14,
33506 OPC_CheckPredicate, 10,
33507 OPC_CheckPredicate6,
33508 OPC_CheckPatternPredicate, 9,
33509 OPC_EmitMergeInputChains1_0,
33510 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX_D), 0|OPFL_Chain|OPFL_MemRefs,
33511 7, 2, 2, 1,
33512 12,
33513 OPC_CheckPredicate2,
33514 OPC_CheckPatternPredicate, 9,
33515 OPC_EmitMergeInputChains1_0,
33516 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
33517 7, 2, 2, 1,
33518 13,
33519 OPC_CheckPredicate, 10,
33520 OPC_CheckPatternPredicate, 9,
33521 OPC_EmitMergeInputChains1_0,
33522 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMMAX__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
33523 7, 2, 2, 1,
33524 92,
33525 OPC_CheckPredicate2,
33526 OPC_Scope, 16,
33527 OPC_CheckPredicate6,
33528 OPC_CheckPatternPredicate, 10,
33529 OPC_EmitMergeInputChains1_0,
33530 OPC_EmitInteger32, 4,
33531 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMax32), 0|OPFL_Chain|OPFL_MemRefs,
33532 7, 7, 3, 1, 2, 3,
33533 17,
33534 OPC_CheckPredicate, 21,
33535 OPC_CheckPatternPredicate, 10,
33536 OPC_EmitMergeInputChains1_0,
33537 OPC_EmitInteger32, 8,
33538 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMax32), 0|OPFL_Chain|OPFL_MemRefs,
33539 7, 7, 3, 1, 2, 3,
33540 17,
33541 OPC_CheckPredicate, 22,
33542 OPC_CheckPatternPredicate, 10,
33543 OPC_EmitMergeInputChains1_0,
33544 OPC_EmitInteger32, 10,
33545 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMax32), 0|OPFL_Chain|OPFL_MemRefs,
33546 7, 7, 3, 1, 2, 3,
33547 17,
33548 OPC_CheckPredicate, 23,
33549 OPC_CheckPatternPredicate, 10,
33550 OPC_EmitMergeInputChains1_0,
33551 OPC_EmitInteger32, 12,
33552 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMax32), 0|OPFL_Chain|OPFL_MemRefs,
33553 7, 7, 3, 1, 2, 3,
33554 17,
33555 OPC_CheckPredicate, 24,
33556 OPC_CheckPatternPredicate, 10,
33557 OPC_EmitMergeInputChains1_0,
33558 OPC_EmitInteger32, 14,
33559 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadMax32), 0|OPFL_Chain|OPFL_MemRefs,
33560 7, 7, 3, 1, 2, 3,
33561 0,
33562 0,
33563 0,
33564 53|128,4, TARGET_VAL(ISD::ATOMIC_LOAD_SUB),
33565 OPC_RecordMemRef,
33566 OPC_RecordNode,
33567 OPC_RecordChild1,
33568 OPC_SwitchType , 19|128,2, 8,
33569 OPC_CheckChild1TypeI64,
33570 OPC_RecordChild2,
33571 OPC_Scope, 92,
33572 OPC_CheckPredicate2,
33573 OPC_Scope, 16,
33574 OPC_CheckPredicate6,
33575 OPC_CheckPatternPredicate, 15,
33576 OPC_EmitMergeInputChains1_0,
33577 OPC_EmitInteger64, 4,
33578 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadSub32), 0|OPFL_Chain|OPFL_MemRefs,
33579 8, 8, 3, 1, 2, 3,
33580 17,
33581 OPC_CheckPredicate, 21,
33582 OPC_CheckPatternPredicate, 15,
33583 OPC_EmitMergeInputChains1_0,
33584 OPC_EmitInteger64, 8,
33585 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadSub32), 0|OPFL_Chain|OPFL_MemRefs,
33586 8, 8, 3, 1, 2, 3,
33587 17,
33588 OPC_CheckPredicate, 22,
33589 OPC_CheckPatternPredicate, 15,
33590 OPC_EmitMergeInputChains1_0,
33591 OPC_EmitInteger64, 10,
33592 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadSub32), 0|OPFL_Chain|OPFL_MemRefs,
33593 8, 8, 3, 1, 2, 3,
33594 17,
33595 OPC_CheckPredicate, 23,
33596 OPC_CheckPatternPredicate, 15,
33597 OPC_EmitMergeInputChains1_0,
33598 OPC_EmitInteger64, 12,
33599 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadSub32), 0|OPFL_Chain|OPFL_MemRefs,
33600 8, 8, 3, 1, 2, 3,
33601 17,
33602 OPC_CheckPredicate, 24,
33603 OPC_CheckPatternPredicate, 15,
33604 OPC_EmitMergeInputChains1_0,
33605 OPC_EmitInteger64, 14,
33606 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadSub32), 0|OPFL_Chain|OPFL_MemRefs,
33607 8, 8, 3, 1, 2, 3,
33608 0,
33609 22,
33610 OPC_CheckPredicate4,
33611 OPC_CheckPredicate6,
33612 OPC_CheckPatternPredicate, 21,
33613 OPC_EmitMergeInputChains1_0,
33614 OPC_EmitRegisterI64, LoongArch::R0,
33615 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33616 8, 2, 3, 2,
33617 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_B), 0|OPFL_Chain|OPFL_MemRefs,
33618 8, 2, 4, 1,
33619 22,
33620 OPC_CheckPredicate5,
33621 OPC_CheckPredicate6,
33622 OPC_CheckPatternPredicate, 21,
33623 OPC_EmitMergeInputChains1_0,
33624 OPC_EmitRegisterI64, LoongArch::R0,
33625 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33626 8, 2, 3, 2,
33627 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_H), 0|OPFL_Chain|OPFL_MemRefs,
33628 8, 2, 4, 1,
33629 21,
33630 OPC_CheckPredicate4,
33631 OPC_CheckPatternPredicate, 21,
33632 OPC_EmitMergeInputChains1_0,
33633 OPC_EmitRegisterI64, LoongArch::R0,
33634 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33635 8, 2, 3, 2,
33636 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_B), 0|OPFL_Chain|OPFL_MemRefs,
33637 8, 2, 4, 1,
33638 21,
33639 OPC_CheckPredicate5,
33640 OPC_CheckPatternPredicate, 21,
33641 OPC_EmitMergeInputChains1_0,
33642 OPC_EmitRegisterI64, LoongArch::R0,
33643 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33644 8, 2, 3, 2,
33645 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_H), 0|OPFL_Chain|OPFL_MemRefs,
33646 8, 2, 4, 1,
33647 21,
33648 OPC_CheckPredicate2,
33649 OPC_CheckPredicate6,
33650 OPC_CheckPatternPredicate6,
33651 OPC_EmitMergeInputChains1_0,
33652 OPC_EmitRegisterI64, LoongArch::R0,
33653 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33654 8, 2, 3, 2,
33655 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_W), 0|OPFL_Chain|OPFL_MemRefs,
33656 8, 2, 4, 1,
33657 22,
33658 OPC_CheckPredicate, 10,
33659 OPC_CheckPredicate6,
33660 OPC_CheckPatternPredicate6,
33661 OPC_EmitMergeInputChains1_0,
33662 OPC_EmitRegisterI64, LoongArch::R0,
33663 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_D),
33664 8, 2, 3, 2,
33665 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_D), 0|OPFL_Chain|OPFL_MemRefs,
33666 8, 2, 4, 1,
33667 20,
33668 OPC_CheckPredicate2,
33669 OPC_CheckPatternPredicate6,
33670 OPC_EmitMergeInputChains1_0,
33671 OPC_EmitRegisterI64, LoongArch::R0,
33672 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33673 8, 2, 3, 2,
33674 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
33675 8, 2, 4, 1,
33676 21,
33677 OPC_CheckPredicate, 10,
33678 OPC_CheckPatternPredicate6,
33679 OPC_EmitMergeInputChains1_0,
33680 OPC_EmitRegisterI64, LoongArch::R0,
33681 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_D),
33682 8, 2, 3, 2,
33683 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
33684 8, 2, 4, 1,
33685 0,
33686 23|128,2, 7,
33687 OPC_CheckChild1TypeI32,
33688 OPC_RecordChild2,
33689 OPC_Scope, 92,
33690 OPC_CheckPredicate2,
33691 OPC_Scope, 16,
33692 OPC_CheckPredicate6,
33693 OPC_CheckPatternPredicate, 10,
33694 OPC_EmitMergeInputChains1_0,
33695 OPC_EmitInteger32, 4,
33696 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadSub32), 0|OPFL_Chain|OPFL_MemRefs,
33697 7, 7, 3, 1, 2, 3,
33698 17,
33699 OPC_CheckPredicate, 21,
33700 OPC_CheckPatternPredicate, 10,
33701 OPC_EmitMergeInputChains1_0,
33702 OPC_EmitInteger32, 8,
33703 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadSub32), 0|OPFL_Chain|OPFL_MemRefs,
33704 7, 7, 3, 1, 2, 3,
33705 17,
33706 OPC_CheckPredicate, 22,
33707 OPC_CheckPatternPredicate, 10,
33708 OPC_EmitMergeInputChains1_0,
33709 OPC_EmitInteger32, 10,
33710 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadSub32), 0|OPFL_Chain|OPFL_MemRefs,
33711 7, 7, 3, 1, 2, 3,
33712 17,
33713 OPC_CheckPredicate, 23,
33714 OPC_CheckPatternPredicate, 10,
33715 OPC_EmitMergeInputChains1_0,
33716 OPC_EmitInteger32, 12,
33717 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadSub32), 0|OPFL_Chain|OPFL_MemRefs,
33718 7, 7, 3, 1, 2, 3,
33719 17,
33720 OPC_CheckPredicate, 24,
33721 OPC_CheckPatternPredicate, 10,
33722 OPC_EmitMergeInputChains1_0,
33723 OPC_EmitInteger32, 14,
33724 OPC_MorphNodeTo2, TARGET_VAL(LoongArch::PseudoAtomicLoadSub32), 0|OPFL_Chain|OPFL_MemRefs,
33725 7, 7, 3, 1, 2, 3,
33726 0,
33727 22,
33728 OPC_CheckPredicate4,
33729 OPC_CheckPredicate6,
33730 OPC_CheckPatternPredicate, 22,
33731 OPC_EmitMergeInputChains1_0,
33732 OPC_EmitRegisterI32, LoongArch::R0,
33733 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33734 7, 2, 3, 2,
33735 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_B), 0|OPFL_Chain|OPFL_MemRefs,
33736 7, 2, 4, 1,
33737 22,
33738 OPC_CheckPredicate5,
33739 OPC_CheckPredicate6,
33740 OPC_CheckPatternPredicate, 22,
33741 OPC_EmitMergeInputChains1_0,
33742 OPC_EmitRegisterI32, LoongArch::R0,
33743 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33744 7, 2, 3, 2,
33745 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_H), 0|OPFL_Chain|OPFL_MemRefs,
33746 7, 2, 4, 1,
33747 21,
33748 OPC_CheckPredicate4,
33749 OPC_CheckPatternPredicate, 22,
33750 OPC_EmitMergeInputChains1_0,
33751 OPC_EmitRegisterI32, LoongArch::R0,
33752 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33753 7, 2, 3, 2,
33754 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_B), 0|OPFL_Chain|OPFL_MemRefs,
33755 7, 2, 4, 1,
33756 21,
33757 OPC_CheckPredicate5,
33758 OPC_CheckPatternPredicate, 22,
33759 OPC_EmitMergeInputChains1_0,
33760 OPC_EmitRegisterI32, LoongArch::R0,
33761 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33762 7, 2, 3, 2,
33763 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_H), 0|OPFL_Chain|OPFL_MemRefs,
33764 7, 2, 4, 1,
33765 22,
33766 OPC_CheckPredicate2,
33767 OPC_CheckPredicate6,
33768 OPC_CheckPatternPredicate, 9,
33769 OPC_EmitMergeInputChains1_0,
33770 OPC_EmitRegisterI32, LoongArch::R0,
33771 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33772 7, 2, 3, 2,
33773 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_W), 0|OPFL_Chain|OPFL_MemRefs,
33774 7, 2, 4, 1,
33775 23,
33776 OPC_CheckPredicate, 10,
33777 OPC_CheckPredicate6,
33778 OPC_CheckPatternPredicate, 9,
33779 OPC_EmitMergeInputChains1_0,
33780 OPC_EmitRegisterI32, LoongArch::R0,
33781 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_D),
33782 7, 2, 3, 2,
33783 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD_D), 0|OPFL_Chain|OPFL_MemRefs,
33784 7, 2, 4, 1,
33785 21,
33786 OPC_CheckPredicate2,
33787 OPC_CheckPatternPredicate, 9,
33788 OPC_EmitMergeInputChains1_0,
33789 OPC_EmitRegisterI32, LoongArch::R0,
33790 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_W),
33791 7, 2, 3, 2,
33792 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_W), 0|OPFL_Chain|OPFL_MemRefs,
33793 7, 2, 4, 1,
33794 22,
33795 OPC_CheckPredicate, 10,
33796 OPC_CheckPatternPredicate, 9,
33797 OPC_EmitMergeInputChains1_0,
33798 OPC_EmitRegisterI32, LoongArch::R0,
33799 OPC_EmitNode1None, TARGET_VAL(LoongArch::SUB_D),
33800 7, 2, 3, 2,
33801 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::AMADD__DB_D), 0|OPFL_Chain|OPFL_MemRefs,
33802 7, 2, 4, 1,
33803 0,
33804 0,
33805 6, TARGET_VAL(ISD::TRAP),
33806 OPC_RecordNode,
33807 OPC_EmitMergeInputChains1_0,
33808 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::PseudoUNIMP),
33809 0,
33810 13, TARGET_VAL(ISD::BR),
33811 OPC_RecordNode,
33812 OPC_RecordChild1,
33813 OPC_MoveChild1,
33814 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
33815 OPC_MoveParent,
33816 OPC_EmitMergeInputChains1_0,
33817 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::PseudoBR),
33818 1, 1,
33819 8, TARGET_VAL(LoongArchISD::RET),
33820 OPC_RecordNode,
33821 OPC_CaptureGlueInput,
33822 OPC_EmitMergeInputChains1_0,
33823 OPC_MorphNodeTo0, TARGET_VAL(LoongArch::PseudoRET), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic0,
33824 0,
33825 17|128,4, TARGET_VAL(ISD::SUB),
33826 OPC_Scope, 3|128,2,
33827 OPC_RecordChild0,
33828 OPC_RecordChild1,
33829 OPC_SwitchType , 21, 8,
33830 OPC_Scope, 9,
33831 OPC_CheckPatternPredicate, 15,
33832 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SUB_W),
33833 8, 2, 0, 1,
33834 8,
33835 OPC_CheckPatternPredicate6,
33836 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SUB_D),
33837 8, 2, 0, 1,
33838 0,
33839 22, 7,
33840 OPC_Scope, 9,
33841 OPC_CheckPatternPredicate, 10,
33842 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SUB_W),
33843 7, 2, 0, 1,
33844 9,
33845 OPC_CheckPatternPredicate, 9,
33846 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::SUB_D),
33847 7, 2, 0, 1,
33848 0,
33849 24, 40,
33850 OPC_Scope, 10,
33851 OPC_CheckPatternPredicate2,
33852 OPC_CheckComplexPat1, /*#*/1,
33853 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBI_BU),
33854 40, 2, 0, 2,
33855 10,
33856 OPC_CheckPatternPredicate4,
33857 OPC_CheckComplexPat1, /*#*/1,
33858 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBI_BU),
33859 40, 2, 0, 2,
33860 0,
33861 24, 51,
33862 OPC_Scope, 10,
33863 OPC_CheckPatternPredicate2,
33864 OPC_CheckComplexPat1, /*#*/1,
33865 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBI_HU),
33866 51, 2, 0, 2,
33867 10,
33868 OPC_CheckPatternPredicate4,
33869 OPC_CheckComplexPat1, /*#*/1,
33870 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBI_HU),
33871 51, 2, 0, 2,
33872 0,
33873 24, 62,
33874 OPC_Scope, 10,
33875 OPC_CheckPatternPredicate2,
33876 OPC_CheckComplexPat1, /*#*/1,
33877 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBI_WU),
33878 62, 2, 0, 2,
33879 10,
33880 OPC_CheckPatternPredicate4,
33881 OPC_CheckComplexPat1, /*#*/1,
33882 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBI_WU),
33883 62, 2, 0, 2,
33884 0,
33885 24, 81,
33886 OPC_Scope, 10,
33887 OPC_CheckPatternPredicate2,
33888 OPC_CheckComplexPat1, /*#*/1,
33889 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBI_DU),
33890 81, 2, 0, 2,
33891 10,
33892 OPC_CheckPatternPredicate4,
33893 OPC_CheckComplexPat1, /*#*/1,
33894 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUBI_DU),
33895 81, 2, 0, 2,
33896 0,
33897 24, 41,
33898 OPC_Scope, 10,
33899 OPC_CheckPatternPredicate3,
33900 OPC_CheckComplexPat1, /*#*/1,
33901 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBI_BU),
33902 41, 2, 0, 2,
33903 10,
33904 OPC_CheckPatternPredicate5,
33905 OPC_CheckComplexPat1, /*#*/1,
33906 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBI_BU),
33907 41, 2, 0, 2,
33908 0,
33909 24, 52,
33910 OPC_Scope, 10,
33911 OPC_CheckPatternPredicate3,
33912 OPC_CheckComplexPat1, /*#*/1,
33913 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBI_HU),
33914 52, 2, 0, 2,
33915 10,
33916 OPC_CheckPatternPredicate5,
33917 OPC_CheckComplexPat1, /*#*/1,
33918 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBI_HU),
33919 52, 2, 0, 2,
33920 0,
33921 24, 66,
33922 OPC_Scope, 10,
33923 OPC_CheckPatternPredicate3,
33924 OPC_CheckComplexPat1, /*#*/1,
33925 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBI_WU),
33926 66, 2, 0, 2,
33927 10,
33928 OPC_CheckPatternPredicate5,
33929 OPC_CheckComplexPat1, /*#*/1,
33930 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBI_WU),
33931 66, 2, 0, 2,
33932 0,
33933 24, 83,
33934 OPC_Scope, 10,
33935 OPC_CheckPatternPredicate3,
33936 OPC_CheckComplexPat1, /*#*/1,
33937 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBI_DU),
33938 83, 2, 0, 2,
33939 10,
33940 OPC_CheckPatternPredicate5,
33941 OPC_CheckComplexPat1, /*#*/1,
33942 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUBI_DU),
33943 83, 2, 0, 2,
33944 0,
33945 0,
33946 78,
33947 OPC_MoveChild0,
33948 OPC_CheckImmAllZerosV,
33949 OPC_MoveParent,
33950 OPC_RecordChild1,
33951 OPC_SwitchType , 7, 40,
33952 OPC_CheckPatternPredicate1,
33953 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VNEG_B),
33954 40, 1, 0,
33955 7, 51,
33956 OPC_CheckPatternPredicate1,
33957 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VNEG_H),
33958 51, 1, 0,
33959 7, 62,
33960 OPC_CheckPatternPredicate1,
33961 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VNEG_W),
33962 62, 1, 0,
33963 7, 81,
33964 OPC_CheckPatternPredicate1,
33965 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VNEG_D),
33966 81, 1, 0,
33967 7, 41,
33968 OPC_CheckPatternPredicate0,
33969 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVNEG_B),
33970 41, 1, 0,
33971 7, 52,
33972 OPC_CheckPatternPredicate0,
33973 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVNEG_H),
33974 52, 1, 0,
33975 7, 66,
33976 OPC_CheckPatternPredicate0,
33977 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVNEG_W),
33978 66, 1, 0,
33979 7, 83,
33980 OPC_CheckPatternPredicate0,
33981 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVNEG_D),
33982 83, 1, 0,
33983 0,
33984 57|128,1,
33985 OPC_RecordChild0,
33986 OPC_Scope, 97,
33987 OPC_MoveChild1,
33988 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
33989 OPC_RecordChild0,
33990 OPC_RecordChild1,
33991 OPC_MoveParent,
33992 OPC_SwitchType , 9, 40,
33993 OPC_CheckPatternPredicate1,
33994 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMSUB_B),
33995 40, 3, 0, 1, 2,
33996 9, 51,
33997 OPC_CheckPatternPredicate1,
33998 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMSUB_H),
33999 51, 3, 0, 1, 2,
34000 9, 62,
34001 OPC_CheckPatternPredicate1,
34002 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMSUB_W),
34003 62, 3, 0, 1, 2,
34004 9, 81,
34005 OPC_CheckPatternPredicate1,
34006 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMSUB_D),
34007 81, 3, 0, 1, 2,
34008 9, 41,
34009 OPC_CheckPatternPredicate0,
34010 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMSUB_B),
34011 41, 3, 0, 1, 2,
34012 9, 52,
34013 OPC_CheckPatternPredicate0,
34014 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMSUB_H),
34015 52, 3, 0, 1, 2,
34016 9, 66,
34017 OPC_CheckPatternPredicate0,
34018 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMSUB_W),
34019 66, 3, 0, 1, 2,
34020 9, 83,
34021 OPC_CheckPatternPredicate0,
34022 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMSUB_D),
34023 83, 3, 0, 1, 2,
34024 0,
34025 83,
34026 OPC_RecordChild1,
34027 OPC_SwitchType , 8, 40,
34028 OPC_CheckPatternPredicate1,
34029 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUB_B),
34030 40, 2, 0, 1,
34031 8, 51,
34032 OPC_CheckPatternPredicate1,
34033 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUB_H),
34034 51, 2, 0, 1,
34035 8, 62,
34036 OPC_CheckPatternPredicate1,
34037 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUB_W),
34038 62, 2, 0, 1,
34039 8, 81,
34040 OPC_CheckPatternPredicate1,
34041 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSUB_D),
34042 81, 2, 0, 1,
34043 8, 41,
34044 OPC_CheckPatternPredicate0,
34045 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUB_B),
34046 41, 2, 0, 1,
34047 8, 52,
34048 OPC_CheckPatternPredicate0,
34049 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUB_H),
34050 52, 2, 0, 1,
34051 8, 66,
34052 OPC_CheckPatternPredicate0,
34053 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUB_W),
34054 66, 2, 0, 1,
34055 8, 83,
34056 OPC_CheckPatternPredicate0,
34057 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSUB_D),
34058 83, 2, 0, 1,
34059 0,
34060 0,
34061 0,
34062 3|128,1, TARGET_VAL(ISD::MULHS),
34063 OPC_RecordChild0,
34064 OPC_RecordChild1,
34065 OPC_SwitchType , 21, 8,
34066 OPC_Scope, 9,
34067 OPC_CheckPatternPredicate, 15,
34068 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MULH_W),
34069 8, 2, 0, 1,
34070 8,
34071 OPC_CheckPatternPredicate6,
34072 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MULH_D),
34073 8, 2, 0, 1,
34074 0,
34075 22, 7,
34076 OPC_Scope, 9,
34077 OPC_CheckPatternPredicate, 10,
34078 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MULH_W),
34079 7, 2, 0, 1,
34080 9,
34081 OPC_CheckPatternPredicate, 9,
34082 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MULH_D),
34083 7, 2, 0, 1,
34084 0,
34085 8, 40,
34086 OPC_CheckPatternPredicate1,
34087 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_B),
34088 40, 2, 0, 1,
34089 8, 51,
34090 OPC_CheckPatternPredicate1,
34091 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_H),
34092 51, 2, 0, 1,
34093 8, 62,
34094 OPC_CheckPatternPredicate1,
34095 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_W),
34096 62, 2, 0, 1,
34097 8, 81,
34098 OPC_CheckPatternPredicate1,
34099 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_D),
34100 81, 2, 0, 1,
34101 8, 41,
34102 OPC_CheckPatternPredicate0,
34103 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_B),
34104 41, 2, 0, 1,
34105 8, 52,
34106 OPC_CheckPatternPredicate0,
34107 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_H),
34108 52, 2, 0, 1,
34109 8, 66,
34110 OPC_CheckPatternPredicate0,
34111 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_W),
34112 66, 2, 0, 1,
34113 8, 83,
34114 OPC_CheckPatternPredicate0,
34115 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_D),
34116 83, 2, 0, 1,
34117 0,
34118 3|128,1, TARGET_VAL(ISD::MULHU),
34119 OPC_RecordChild0,
34120 OPC_RecordChild1,
34121 OPC_SwitchType , 21, 8,
34122 OPC_Scope, 9,
34123 OPC_CheckPatternPredicate, 15,
34124 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MULH_WU),
34125 8, 2, 0, 1,
34126 8,
34127 OPC_CheckPatternPredicate6,
34128 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MULH_DU),
34129 8, 2, 0, 1,
34130 0,
34131 22, 7,
34132 OPC_Scope, 9,
34133 OPC_CheckPatternPredicate, 10,
34134 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MULH_WU),
34135 7, 2, 0, 1,
34136 9,
34137 OPC_CheckPatternPredicate, 9,
34138 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MULH_DU),
34139 7, 2, 0, 1,
34140 0,
34141 8, 40,
34142 OPC_CheckPatternPredicate1,
34143 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_BU),
34144 40, 2, 0, 1,
34145 8, 51,
34146 OPC_CheckPatternPredicate1,
34147 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_HU),
34148 51, 2, 0, 1,
34149 8, 62,
34150 OPC_CheckPatternPredicate1,
34151 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_WU),
34152 62, 2, 0, 1,
34153 8, 81,
34154 OPC_CheckPatternPredicate1,
34155 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMUH_DU),
34156 81, 2, 0, 1,
34157 8, 41,
34158 OPC_CheckPatternPredicate0,
34159 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_BU),
34160 41, 2, 0, 1,
34161 8, 52,
34162 OPC_CheckPatternPredicate0,
34163 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_HU),
34164 52, 2, 0, 1,
34165 8, 66,
34166 OPC_CheckPatternPredicate0,
34167 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_WU),
34168 66, 2, 0, 1,
34169 8, 83,
34170 OPC_CheckPatternPredicate0,
34171 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMUH_DU),
34172 83, 2, 0, 1,
34173 0,
34174 24, TARGET_VAL(ISD::DEBUGTRAP),
34175 OPC_RecordNode,
34176 OPC_Scope, 9,
34177 OPC_CheckPatternPredicate7,
34178 OPC_EmitMergeInputChains1_0,
34179 OPC_EmitInteger64, 0,
34180 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BREAK),
34181 1, 1,
34182 10,
34183 OPC_CheckPatternPredicate, 8,
34184 OPC_EmitMergeInputChains1_0,
34185 OPC_EmitInteger32, 0,
34186 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::BREAK),
34187 1, 1,
34188 0,
34189 24, TARGET_VAL(LoongArchISD::REVB_2H),
34190 OPC_RecordChild0,
34191 OPC_SwitchType , 8, 8,
34192 OPC_CheckChild0TypeI64,
34193 OPC_CheckPatternPredicate7,
34194 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::REVB_2H),
34195 8, 1, 0,
34196 9, 7,
34197 OPC_CheckChild0TypeI32,
34198 OPC_CheckPatternPredicate, 8,
34199 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::REVB_2H),
34200 7, 1, 0,
34201 0,
34202 24, TARGET_VAL(LoongArchISD::BITREV_4B),
34203 OPC_RecordChild0,
34204 OPC_SwitchType , 8, 8,
34205 OPC_CheckChild0TypeI64,
34206 OPC_CheckPatternPredicate7,
34207 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_4B),
34208 8, 1, 0,
34209 9, 7,
34210 OPC_CheckChild0TypeI32,
34211 OPC_CheckPatternPredicate, 8,
34212 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_4B),
34213 7, 1, 0,
34214 0,
34215 24, TARGET_VAL(LoongArchISD::REVB_2W),
34216 OPC_RecordChild0,
34217 OPC_SwitchType , 8, 8,
34218 OPC_CheckChild0TypeI64,
34219 OPC_CheckPatternPredicate6,
34220 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::REVB_2W),
34221 8, 1, 0,
34222 9, 7,
34223 OPC_CheckChild0TypeI32,
34224 OPC_CheckPatternPredicate, 9,
34225 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::REVB_2W),
34226 7, 1, 0,
34227 0,
34228 24, TARGET_VAL(LoongArchISD::BITREV_8B),
34229 OPC_RecordChild0,
34230 OPC_SwitchType , 8, 8,
34231 OPC_CheckChild0TypeI64,
34232 OPC_CheckPatternPredicate6,
34233 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_8B),
34234 8, 1, 0,
34235 9, 7,
34236 OPC_CheckChild0TypeI32,
34237 OPC_CheckPatternPredicate, 9,
34238 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_8B),
34239 7, 1, 0,
34240 0,
34241 24, TARGET_VAL(LoongArchISD::BITREV_W),
34242 OPC_RecordChild0,
34243 OPC_SwitchType , 8, 8,
34244 OPC_CheckChild0TypeI64,
34245 OPC_CheckPatternPredicate6,
34246 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_W),
34247 8, 1, 0,
34248 9, 7,
34249 OPC_CheckChild0TypeI32,
34250 OPC_CheckPatternPredicate, 9,
34251 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BITREV_W),
34252 7, 1, 0,
34253 0,
34254 12, TARGET_VAL(LoongArchISD::CRC_W_B_W),
34255 OPC_RecordNode,
34256 OPC_RecordChild1,
34257 OPC_RecordChild2,
34258 OPC_CheckPatternPredicate6,
34259 OPC_EmitMergeInputChains1_0,
34260 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CRC_W_B_W),
34261 8, 2, 1, 2,
34262 12, TARGET_VAL(LoongArchISD::CRC_W_H_W),
34263 OPC_RecordNode,
34264 OPC_RecordChild1,
34265 OPC_RecordChild2,
34266 OPC_CheckPatternPredicate6,
34267 OPC_EmitMergeInputChains1_0,
34268 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CRC_W_H_W),
34269 8, 2, 1, 2,
34270 12, TARGET_VAL(LoongArchISD::CRC_W_W_W),
34271 OPC_RecordNode,
34272 OPC_RecordChild1,
34273 OPC_RecordChild2,
34274 OPC_CheckPatternPredicate6,
34275 OPC_EmitMergeInputChains1_0,
34276 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CRC_W_W_W),
34277 8, 2, 1, 2,
34278 12, TARGET_VAL(LoongArchISD::CRC_W_D_W),
34279 OPC_RecordNode,
34280 OPC_RecordChild1,
34281 OPC_RecordChild2,
34282 OPC_CheckPatternPredicate6,
34283 OPC_EmitMergeInputChains1_0,
34284 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CRC_W_D_W),
34285 8, 2, 1, 2,
34286 12, TARGET_VAL(LoongArchISD::CRCC_W_B_W),
34287 OPC_RecordNode,
34288 OPC_RecordChild1,
34289 OPC_RecordChild2,
34290 OPC_CheckPatternPredicate6,
34291 OPC_EmitMergeInputChains1_0,
34292 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CRCC_W_B_W),
34293 8, 2, 1, 2,
34294 12, TARGET_VAL(LoongArchISD::CRCC_W_H_W),
34295 OPC_RecordNode,
34296 OPC_RecordChild1,
34297 OPC_RecordChild2,
34298 OPC_CheckPatternPredicate6,
34299 OPC_EmitMergeInputChains1_0,
34300 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CRCC_W_H_W),
34301 8, 2, 1, 2,
34302 12, TARGET_VAL(LoongArchISD::CRCC_W_W_W),
34303 OPC_RecordNode,
34304 OPC_RecordChild1,
34305 OPC_RecordChild2,
34306 OPC_CheckPatternPredicate6,
34307 OPC_EmitMergeInputChains1_0,
34308 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CRCC_W_W_W),
34309 8, 2, 1, 2,
34310 12, TARGET_VAL(LoongArchISD::CRCC_W_D_W),
34311 OPC_RecordNode,
34312 OPC_RecordChild1,
34313 OPC_RecordChild2,
34314 OPC_CheckPatternPredicate6,
34315 OPC_EmitMergeInputChains1_0,
34316 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CRCC_W_D_W),
34317 8, 2, 1, 2,
34318 32|128,6, TARGET_VAL(ISD::STRICT_FSETCC),
34319 OPC_RecordNode,
34320 OPC_RecordChild1,
34321 OPC_Scope, 12|128,3,
34322 OPC_CheckChild1Type, 12,
34323 OPC_RecordChild2,
34324 OPC_MoveChild3,
34325 OPC_Scope, 29,
34326 OPC_CheckCondCode, ISD::SETOEQ,
34327 OPC_MoveParent,
34328 OPC_SwitchType , 10, 8,
34329 OPC_CheckPatternPredicate, 11,
34330 OPC_EmitMergeInputChains1_0,
34331 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CEQ_S),
34332 8, 2, 1, 2,
34333 10, 7,
34334 OPC_CheckPatternPredicate, 12,
34335 OPC_EmitMergeInputChains1_0,
34336 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CEQ_S),
34337 7, 2, 1, 2,
34338 0,
34339 29,
34340 OPC_CheckCondCode, ISD::SETEQ,
34341 OPC_MoveParent,
34342 OPC_SwitchType , 10, 8,
34343 OPC_CheckPatternPredicate, 11,
34344 OPC_EmitMergeInputChains1_0,
34345 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CEQ_S),
34346 8, 2, 1, 2,
34347 10, 7,
34348 OPC_CheckPatternPredicate, 12,
34349 OPC_EmitMergeInputChains1_0,
34350 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CEQ_S),
34351 7, 2, 1, 2,
34352 0,
34353 29,
34354 OPC_CheckCondCode, ISD::SETOLT,
34355 OPC_MoveParent,
34356 OPC_SwitchType , 10, 8,
34357 OPC_CheckPatternPredicate, 11,
34358 OPC_EmitMergeInputChains1_0,
34359 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLT_S),
34360 8, 2, 1, 2,
34361 10, 7,
34362 OPC_CheckPatternPredicate, 12,
34363 OPC_EmitMergeInputChains1_0,
34364 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLT_S),
34365 7, 2, 1, 2,
34366 0,
34367 29,
34368 OPC_CheckCondCode, ISD::SETOLE,
34369 OPC_MoveParent,
34370 OPC_SwitchType , 10, 8,
34371 OPC_CheckPatternPredicate, 11,
34372 OPC_EmitMergeInputChains1_0,
34373 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLE_S),
34374 8, 2, 1, 2,
34375 10, 7,
34376 OPC_CheckPatternPredicate, 12,
34377 OPC_EmitMergeInputChains1_0,
34378 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLE_S),
34379 7, 2, 1, 2,
34380 0,
34381 29,
34382 OPC_CheckCondCode, ISD::SETLE,
34383 OPC_MoveParent,
34384 OPC_SwitchType , 10, 8,
34385 OPC_CheckPatternPredicate, 11,
34386 OPC_EmitMergeInputChains1_0,
34387 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLE_S),
34388 8, 2, 1, 2,
34389 10, 7,
34390 OPC_CheckPatternPredicate, 12,
34391 OPC_EmitMergeInputChains1_0,
34392 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLE_S),
34393 7, 2, 1, 2,
34394 0,
34395 29,
34396 OPC_CheckCondCode, ISD::SETONE,
34397 OPC_MoveParent,
34398 OPC_SwitchType , 10, 8,
34399 OPC_CheckPatternPredicate, 11,
34400 OPC_EmitMergeInputChains1_0,
34401 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CNE_S),
34402 8, 2, 1, 2,
34403 10, 7,
34404 OPC_CheckPatternPredicate, 12,
34405 OPC_EmitMergeInputChains1_0,
34406 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CNE_S),
34407 7, 2, 1, 2,
34408 0,
34409 29,
34410 OPC_CheckCondCode, ISD::SETO,
34411 OPC_MoveParent,
34412 OPC_SwitchType , 10, 8,
34413 OPC_CheckPatternPredicate, 11,
34414 OPC_EmitMergeInputChains1_0,
34415 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_COR_S),
34416 8, 2, 1, 2,
34417 10, 7,
34418 OPC_CheckPatternPredicate, 12,
34419 OPC_EmitMergeInputChains1_0,
34420 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_COR_S),
34421 7, 2, 1, 2,
34422 0,
34423 29,
34424 OPC_CheckCondCode, ISD::SETUEQ,
34425 OPC_MoveParent,
34426 OPC_SwitchType , 10, 8,
34427 OPC_CheckPatternPredicate, 11,
34428 OPC_EmitMergeInputChains1_0,
34429 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUEQ_S),
34430 8, 2, 1, 2,
34431 10, 7,
34432 OPC_CheckPatternPredicate, 12,
34433 OPC_EmitMergeInputChains1_0,
34434 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUEQ_S),
34435 7, 2, 1, 2,
34436 0,
34437 29,
34438 OPC_CheckCondCode, ISD::SETULT,
34439 OPC_MoveParent,
34440 OPC_SwitchType , 10, 8,
34441 OPC_CheckPatternPredicate, 11,
34442 OPC_EmitMergeInputChains1_0,
34443 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CULT_S),
34444 8, 2, 1, 2,
34445 10, 7,
34446 OPC_CheckPatternPredicate, 12,
34447 OPC_EmitMergeInputChains1_0,
34448 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CULT_S),
34449 7, 2, 1, 2,
34450 0,
34451 29,
34452 OPC_CheckCondCode, ISD::SETULE,
34453 OPC_MoveParent,
34454 OPC_SwitchType , 10, 8,
34455 OPC_CheckPatternPredicate, 11,
34456 OPC_EmitMergeInputChains1_0,
34457 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CULE_S),
34458 8, 2, 1, 2,
34459 10, 7,
34460 OPC_CheckPatternPredicate, 12,
34461 OPC_EmitMergeInputChains1_0,
34462 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CULE_S),
34463 7, 2, 1, 2,
34464 0,
34465 29,
34466 OPC_CheckCondCode, ISD::SETUNE,
34467 OPC_MoveParent,
34468 OPC_SwitchType , 10, 8,
34469 OPC_CheckPatternPredicate, 11,
34470 OPC_EmitMergeInputChains1_0,
34471 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUNE_S),
34472 8, 2, 1, 2,
34473 10, 7,
34474 OPC_CheckPatternPredicate, 12,
34475 OPC_EmitMergeInputChains1_0,
34476 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUNE_S),
34477 7, 2, 1, 2,
34478 0,
34479 29,
34480 OPC_CheckCondCode, ISD::SETUO,
34481 OPC_MoveParent,
34482 OPC_SwitchType , 10, 8,
34483 OPC_CheckPatternPredicate, 11,
34484 OPC_EmitMergeInputChains1_0,
34485 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUN_S),
34486 8, 2, 1, 2,
34487 10, 7,
34488 OPC_CheckPatternPredicate, 12,
34489 OPC_EmitMergeInputChains1_0,
34490 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUN_S),
34491 7, 2, 1, 2,
34492 0,
34493 29,
34494 OPC_CheckCondCode, ISD::SETLT,
34495 OPC_MoveParent,
34496 OPC_SwitchType , 10, 8,
34497 OPC_CheckPatternPredicate, 11,
34498 OPC_EmitMergeInputChains1_0,
34499 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLT_S),
34500 8, 2, 1, 2,
34501 10, 7,
34502 OPC_CheckPatternPredicate, 12,
34503 OPC_EmitMergeInputChains1_0,
34504 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLT_S),
34505 7, 2, 1, 2,
34506 0,
34507 0,
34508 12|128,3,
34509 OPC_CheckChild1Type, 13,
34510 OPC_RecordChild2,
34511 OPC_MoveChild3,
34512 OPC_Scope, 29,
34513 OPC_CheckCondCode, ISD::SETOEQ,
34514 OPC_MoveParent,
34515 OPC_SwitchType , 10, 8,
34516 OPC_CheckPatternPredicate, 13,
34517 OPC_EmitMergeInputChains1_0,
34518 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CEQ_D),
34519 8, 2, 1, 2,
34520 10, 7,
34521 OPC_CheckPatternPredicate, 14,
34522 OPC_EmitMergeInputChains1_0,
34523 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CEQ_D),
34524 7, 2, 1, 2,
34525 0,
34526 29,
34527 OPC_CheckCondCode, ISD::SETEQ,
34528 OPC_MoveParent,
34529 OPC_SwitchType , 10, 8,
34530 OPC_CheckPatternPredicate, 13,
34531 OPC_EmitMergeInputChains1_0,
34532 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CEQ_D),
34533 8, 2, 1, 2,
34534 10, 7,
34535 OPC_CheckPatternPredicate, 14,
34536 OPC_EmitMergeInputChains1_0,
34537 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CEQ_D),
34538 7, 2, 1, 2,
34539 0,
34540 29,
34541 OPC_CheckCondCode, ISD::SETOLT,
34542 OPC_MoveParent,
34543 OPC_SwitchType , 10, 8,
34544 OPC_CheckPatternPredicate, 13,
34545 OPC_EmitMergeInputChains1_0,
34546 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLT_D),
34547 8, 2, 1, 2,
34548 10, 7,
34549 OPC_CheckPatternPredicate, 14,
34550 OPC_EmitMergeInputChains1_0,
34551 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLT_D),
34552 7, 2, 1, 2,
34553 0,
34554 29,
34555 OPC_CheckCondCode, ISD::SETOLE,
34556 OPC_MoveParent,
34557 OPC_SwitchType , 10, 8,
34558 OPC_CheckPatternPredicate, 13,
34559 OPC_EmitMergeInputChains1_0,
34560 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLE_D),
34561 8, 2, 1, 2,
34562 10, 7,
34563 OPC_CheckPatternPredicate, 14,
34564 OPC_EmitMergeInputChains1_0,
34565 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLE_D),
34566 7, 2, 1, 2,
34567 0,
34568 29,
34569 OPC_CheckCondCode, ISD::SETLE,
34570 OPC_MoveParent,
34571 OPC_SwitchType , 10, 8,
34572 OPC_CheckPatternPredicate, 13,
34573 OPC_EmitMergeInputChains1_0,
34574 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLE_D),
34575 8, 2, 1, 2,
34576 10, 7,
34577 OPC_CheckPatternPredicate, 14,
34578 OPC_EmitMergeInputChains1_0,
34579 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLE_D),
34580 7, 2, 1, 2,
34581 0,
34582 29,
34583 OPC_CheckCondCode, ISD::SETONE,
34584 OPC_MoveParent,
34585 OPC_SwitchType , 10, 8,
34586 OPC_CheckPatternPredicate, 13,
34587 OPC_EmitMergeInputChains1_0,
34588 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CNE_D),
34589 8, 2, 1, 2,
34590 10, 7,
34591 OPC_CheckPatternPredicate, 14,
34592 OPC_EmitMergeInputChains1_0,
34593 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CNE_D),
34594 7, 2, 1, 2,
34595 0,
34596 29,
34597 OPC_CheckCondCode, ISD::SETO,
34598 OPC_MoveParent,
34599 OPC_SwitchType , 10, 8,
34600 OPC_CheckPatternPredicate, 13,
34601 OPC_EmitMergeInputChains1_0,
34602 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_COR_D),
34603 8, 2, 1, 2,
34604 10, 7,
34605 OPC_CheckPatternPredicate, 14,
34606 OPC_EmitMergeInputChains1_0,
34607 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_COR_D),
34608 7, 2, 1, 2,
34609 0,
34610 29,
34611 OPC_CheckCondCode, ISD::SETUEQ,
34612 OPC_MoveParent,
34613 OPC_SwitchType , 10, 8,
34614 OPC_CheckPatternPredicate, 13,
34615 OPC_EmitMergeInputChains1_0,
34616 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUEQ_D),
34617 8, 2, 1, 2,
34618 10, 7,
34619 OPC_CheckPatternPredicate, 14,
34620 OPC_EmitMergeInputChains1_0,
34621 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUEQ_D),
34622 7, 2, 1, 2,
34623 0,
34624 29,
34625 OPC_CheckCondCode, ISD::SETULT,
34626 OPC_MoveParent,
34627 OPC_SwitchType , 10, 8,
34628 OPC_CheckPatternPredicate, 13,
34629 OPC_EmitMergeInputChains1_0,
34630 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CULT_D),
34631 8, 2, 1, 2,
34632 10, 7,
34633 OPC_CheckPatternPredicate, 14,
34634 OPC_EmitMergeInputChains1_0,
34635 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CULT_D),
34636 7, 2, 1, 2,
34637 0,
34638 29,
34639 OPC_CheckCondCode, ISD::SETULE,
34640 OPC_MoveParent,
34641 OPC_SwitchType , 10, 8,
34642 OPC_CheckPatternPredicate, 13,
34643 OPC_EmitMergeInputChains1_0,
34644 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CULE_D),
34645 8, 2, 1, 2,
34646 10, 7,
34647 OPC_CheckPatternPredicate, 14,
34648 OPC_EmitMergeInputChains1_0,
34649 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CULE_D),
34650 7, 2, 1, 2,
34651 0,
34652 29,
34653 OPC_CheckCondCode, ISD::SETUNE,
34654 OPC_MoveParent,
34655 OPC_SwitchType , 10, 8,
34656 OPC_CheckPatternPredicate, 13,
34657 OPC_EmitMergeInputChains1_0,
34658 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUNE_D),
34659 8, 2, 1, 2,
34660 10, 7,
34661 OPC_CheckPatternPredicate, 14,
34662 OPC_EmitMergeInputChains1_0,
34663 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUNE_D),
34664 7, 2, 1, 2,
34665 0,
34666 29,
34667 OPC_CheckCondCode, ISD::SETUO,
34668 OPC_MoveParent,
34669 OPC_SwitchType , 10, 8,
34670 OPC_CheckPatternPredicate, 13,
34671 OPC_EmitMergeInputChains1_0,
34672 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUN_D),
34673 8, 2, 1, 2,
34674 10, 7,
34675 OPC_CheckPatternPredicate, 14,
34676 OPC_EmitMergeInputChains1_0,
34677 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CUN_D),
34678 7, 2, 1, 2,
34679 0,
34680 29,
34681 OPC_CheckCondCode, ISD::SETLT,
34682 OPC_MoveParent,
34683 OPC_SwitchType , 10, 8,
34684 OPC_CheckPatternPredicate, 13,
34685 OPC_EmitMergeInputChains1_0,
34686 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLT_D),
34687 8, 2, 1, 2,
34688 10, 7,
34689 OPC_CheckPatternPredicate, 14,
34690 OPC_EmitMergeInputChains1_0,
34691 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_CLT_D),
34692 7, 2, 1, 2,
34693 0,
34694 0,
34695 0,
34696 40|128,5, TARGET_VAL(ISD::STRICT_FSETCCS),
34697 OPC_RecordNode,
34698 OPC_RecordChild1,
34699 OPC_Scope, 80|128,2,
34700 OPC_CheckChild1Type, 12,
34701 OPC_RecordChild2,
34702 OPC_MoveChild3,
34703 OPC_Scope, 29,
34704 OPC_CheckCondCode, ISD::SETOEQ,
34705 OPC_MoveParent,
34706 OPC_SwitchType , 10, 8,
34707 OPC_CheckPatternPredicate, 11,
34708 OPC_EmitMergeInputChains1_0,
34709 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SEQ_S),
34710 8, 2, 1, 2,
34711 10, 7,
34712 OPC_CheckPatternPredicate, 12,
34713 OPC_EmitMergeInputChains1_0,
34714 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SEQ_S),
34715 7, 2, 1, 2,
34716 0,
34717 29,
34718 OPC_CheckCondCode, ISD::SETOLT,
34719 OPC_MoveParent,
34720 OPC_SwitchType , 10, 8,
34721 OPC_CheckPatternPredicate, 11,
34722 OPC_EmitMergeInputChains1_0,
34723 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLT_S),
34724 8, 2, 1, 2,
34725 10, 7,
34726 OPC_CheckPatternPredicate, 12,
34727 OPC_EmitMergeInputChains1_0,
34728 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLT_S),
34729 7, 2, 1, 2,
34730 0,
34731 29,
34732 OPC_CheckCondCode, ISD::SETOLE,
34733 OPC_MoveParent,
34734 OPC_SwitchType , 10, 8,
34735 OPC_CheckPatternPredicate, 11,
34736 OPC_EmitMergeInputChains1_0,
34737 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLE_S),
34738 8, 2, 1, 2,
34739 10, 7,
34740 OPC_CheckPatternPredicate, 12,
34741 OPC_EmitMergeInputChains1_0,
34742 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLE_S),
34743 7, 2, 1, 2,
34744 0,
34745 29,
34746 OPC_CheckCondCode, ISD::SETONE,
34747 OPC_MoveParent,
34748 OPC_SwitchType , 10, 8,
34749 OPC_CheckPatternPredicate, 11,
34750 OPC_EmitMergeInputChains1_0,
34751 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SNE_S),
34752 8, 2, 1, 2,
34753 10, 7,
34754 OPC_CheckPatternPredicate, 12,
34755 OPC_EmitMergeInputChains1_0,
34756 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SNE_S),
34757 7, 2, 1, 2,
34758 0,
34759 29,
34760 OPC_CheckCondCode, ISD::SETO,
34761 OPC_MoveParent,
34762 OPC_SwitchType , 10, 8,
34763 OPC_CheckPatternPredicate, 11,
34764 OPC_EmitMergeInputChains1_0,
34765 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SOR_S),
34766 8, 2, 1, 2,
34767 10, 7,
34768 OPC_CheckPatternPredicate, 12,
34769 OPC_EmitMergeInputChains1_0,
34770 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SOR_S),
34771 7, 2, 1, 2,
34772 0,
34773 29,
34774 OPC_CheckCondCode, ISD::SETUEQ,
34775 OPC_MoveParent,
34776 OPC_SwitchType , 10, 8,
34777 OPC_CheckPatternPredicate, 11,
34778 OPC_EmitMergeInputChains1_0,
34779 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUEQ_S),
34780 8, 2, 1, 2,
34781 10, 7,
34782 OPC_CheckPatternPredicate, 12,
34783 OPC_EmitMergeInputChains1_0,
34784 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUEQ_S),
34785 7, 2, 1, 2,
34786 0,
34787 29,
34788 OPC_CheckCondCode, ISD::SETULT,
34789 OPC_MoveParent,
34790 OPC_SwitchType , 10, 8,
34791 OPC_CheckPatternPredicate, 11,
34792 OPC_EmitMergeInputChains1_0,
34793 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SULT_S),
34794 8, 2, 1, 2,
34795 10, 7,
34796 OPC_CheckPatternPredicate, 12,
34797 OPC_EmitMergeInputChains1_0,
34798 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SULT_S),
34799 7, 2, 1, 2,
34800 0,
34801 29,
34802 OPC_CheckCondCode, ISD::SETULE,
34803 OPC_MoveParent,
34804 OPC_SwitchType , 10, 8,
34805 OPC_CheckPatternPredicate, 11,
34806 OPC_EmitMergeInputChains1_0,
34807 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SULE_S),
34808 8, 2, 1, 2,
34809 10, 7,
34810 OPC_CheckPatternPredicate, 12,
34811 OPC_EmitMergeInputChains1_0,
34812 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SULE_S),
34813 7, 2, 1, 2,
34814 0,
34815 29,
34816 OPC_CheckCondCode, ISD::SETUNE,
34817 OPC_MoveParent,
34818 OPC_SwitchType , 10, 8,
34819 OPC_CheckPatternPredicate, 11,
34820 OPC_EmitMergeInputChains1_0,
34821 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUNE_S),
34822 8, 2, 1, 2,
34823 10, 7,
34824 OPC_CheckPatternPredicate, 12,
34825 OPC_EmitMergeInputChains1_0,
34826 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUNE_S),
34827 7, 2, 1, 2,
34828 0,
34829 29,
34830 OPC_CheckCondCode, ISD::SETUO,
34831 OPC_MoveParent,
34832 OPC_SwitchType , 10, 8,
34833 OPC_CheckPatternPredicate, 11,
34834 OPC_EmitMergeInputChains1_0,
34835 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUN_S),
34836 8, 2, 1, 2,
34837 10, 7,
34838 OPC_CheckPatternPredicate, 12,
34839 OPC_EmitMergeInputChains1_0,
34840 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUN_S),
34841 7, 2, 1, 2,
34842 0,
34843 29,
34844 OPC_CheckCondCode, ISD::SETLT,
34845 OPC_MoveParent,
34846 OPC_SwitchType , 10, 8,
34847 OPC_CheckPatternPredicate, 11,
34848 OPC_EmitMergeInputChains1_0,
34849 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLT_S),
34850 8, 2, 1, 2,
34851 10, 7,
34852 OPC_CheckPatternPredicate, 12,
34853 OPC_EmitMergeInputChains1_0,
34854 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLT_S),
34855 7, 2, 1, 2,
34856 0,
34857 0,
34858 80|128,2,
34859 OPC_CheckChild1Type, 13,
34860 OPC_RecordChild2,
34861 OPC_MoveChild3,
34862 OPC_Scope, 29,
34863 OPC_CheckCondCode, ISD::SETOEQ,
34864 OPC_MoveParent,
34865 OPC_SwitchType , 10, 8,
34866 OPC_CheckPatternPredicate, 13,
34867 OPC_EmitMergeInputChains1_0,
34868 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SEQ_D),
34869 8, 2, 1, 2,
34870 10, 7,
34871 OPC_CheckPatternPredicate, 14,
34872 OPC_EmitMergeInputChains1_0,
34873 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SEQ_D),
34874 7, 2, 1, 2,
34875 0,
34876 29,
34877 OPC_CheckCondCode, ISD::SETOLT,
34878 OPC_MoveParent,
34879 OPC_SwitchType , 10, 8,
34880 OPC_CheckPatternPredicate, 13,
34881 OPC_EmitMergeInputChains1_0,
34882 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLT_D),
34883 8, 2, 1, 2,
34884 10, 7,
34885 OPC_CheckPatternPredicate, 14,
34886 OPC_EmitMergeInputChains1_0,
34887 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLT_D),
34888 7, 2, 1, 2,
34889 0,
34890 29,
34891 OPC_CheckCondCode, ISD::SETOLE,
34892 OPC_MoveParent,
34893 OPC_SwitchType , 10, 8,
34894 OPC_CheckPatternPredicate, 13,
34895 OPC_EmitMergeInputChains1_0,
34896 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLE_D),
34897 8, 2, 1, 2,
34898 10, 7,
34899 OPC_CheckPatternPredicate, 14,
34900 OPC_EmitMergeInputChains1_0,
34901 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLE_D),
34902 7, 2, 1, 2,
34903 0,
34904 29,
34905 OPC_CheckCondCode, ISD::SETONE,
34906 OPC_MoveParent,
34907 OPC_SwitchType , 10, 8,
34908 OPC_CheckPatternPredicate, 13,
34909 OPC_EmitMergeInputChains1_0,
34910 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SNE_D),
34911 8, 2, 1, 2,
34912 10, 7,
34913 OPC_CheckPatternPredicate, 14,
34914 OPC_EmitMergeInputChains1_0,
34915 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SNE_D),
34916 7, 2, 1, 2,
34917 0,
34918 29,
34919 OPC_CheckCondCode, ISD::SETO,
34920 OPC_MoveParent,
34921 OPC_SwitchType , 10, 8,
34922 OPC_CheckPatternPredicate, 13,
34923 OPC_EmitMergeInputChains1_0,
34924 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SOR_D),
34925 8, 2, 1, 2,
34926 10, 7,
34927 OPC_CheckPatternPredicate, 14,
34928 OPC_EmitMergeInputChains1_0,
34929 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SOR_D),
34930 7, 2, 1, 2,
34931 0,
34932 29,
34933 OPC_CheckCondCode, ISD::SETUEQ,
34934 OPC_MoveParent,
34935 OPC_SwitchType , 10, 8,
34936 OPC_CheckPatternPredicate, 13,
34937 OPC_EmitMergeInputChains1_0,
34938 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUEQ_D),
34939 8, 2, 1, 2,
34940 10, 7,
34941 OPC_CheckPatternPredicate, 14,
34942 OPC_EmitMergeInputChains1_0,
34943 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUEQ_D),
34944 7, 2, 1, 2,
34945 0,
34946 29,
34947 OPC_CheckCondCode, ISD::SETULT,
34948 OPC_MoveParent,
34949 OPC_SwitchType , 10, 8,
34950 OPC_CheckPatternPredicate, 13,
34951 OPC_EmitMergeInputChains1_0,
34952 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SULT_D),
34953 8, 2, 1, 2,
34954 10, 7,
34955 OPC_CheckPatternPredicate, 14,
34956 OPC_EmitMergeInputChains1_0,
34957 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SULT_D),
34958 7, 2, 1, 2,
34959 0,
34960 29,
34961 OPC_CheckCondCode, ISD::SETULE,
34962 OPC_MoveParent,
34963 OPC_SwitchType , 10, 8,
34964 OPC_CheckPatternPredicate, 13,
34965 OPC_EmitMergeInputChains1_0,
34966 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SULE_D),
34967 8, 2, 1, 2,
34968 10, 7,
34969 OPC_CheckPatternPredicate, 14,
34970 OPC_EmitMergeInputChains1_0,
34971 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SULE_D),
34972 7, 2, 1, 2,
34973 0,
34974 29,
34975 OPC_CheckCondCode, ISD::SETUNE,
34976 OPC_MoveParent,
34977 OPC_SwitchType , 10, 8,
34978 OPC_CheckPatternPredicate, 13,
34979 OPC_EmitMergeInputChains1_0,
34980 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUNE_D),
34981 8, 2, 1, 2,
34982 10, 7,
34983 OPC_CheckPatternPredicate, 14,
34984 OPC_EmitMergeInputChains1_0,
34985 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUNE_D),
34986 7, 2, 1, 2,
34987 0,
34988 29,
34989 OPC_CheckCondCode, ISD::SETUO,
34990 OPC_MoveParent,
34991 OPC_SwitchType , 10, 8,
34992 OPC_CheckPatternPredicate, 13,
34993 OPC_EmitMergeInputChains1_0,
34994 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUN_D),
34995 8, 2, 1, 2,
34996 10, 7,
34997 OPC_CheckPatternPredicate, 14,
34998 OPC_EmitMergeInputChains1_0,
34999 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SUN_D),
35000 7, 2, 1, 2,
35001 0,
35002 29,
35003 OPC_CheckCondCode, ISD::SETLT,
35004 OPC_MoveParent,
35005 OPC_SwitchType , 10, 8,
35006 OPC_CheckPatternPredicate, 13,
35007 OPC_EmitMergeInputChains1_0,
35008 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLT_D),
35009 8, 2, 1, 2,
35010 10, 7,
35011 OPC_CheckPatternPredicate, 14,
35012 OPC_EmitMergeInputChains1_0,
35013 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::FCMP_SLT_D),
35014 7, 2, 1, 2,
35015 0,
35016 0,
35017 0,
35018 9, TARGET_VAL(LoongArchISD::MOVFR2GR_S_LA64),
35019 OPC_RecordChild0,
35020 OPC_CheckPatternPredicate, 30,
35021 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVFR2GR_S),
35022 8, 1, 0,
35023 76, TARGET_VAL(ISD::BITCAST),
35024 OPC_RecordChild0,
35025 OPC_Scope, 11,
35026 OPC_CheckChild0Type, 12,
35027 OPC_CheckTypeI32,
35028 OPC_CheckPatternPredicate, 31,
35029 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVFR2GR_S),
35030 7, 1, 0,
35031 24,
35032 OPC_CheckChild0Type, 13,
35033 OPC_SwitchType , 8, 8,
35034 OPC_CheckPatternPredicate, 27,
35035 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVFR2GR_D),
35036 8, 1, 0,
35037 8, 7,
35038 OPC_CheckPatternPredicate, 28,
35039 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVFR2GR_D),
35040 7, 1, 0,
35041 0,
35042 23,
35043 OPC_CheckChild0TypeI32,
35044 OPC_SwitchType , 8, 12,
35045 OPC_CheckPatternPredicate, 31,
35046 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
35047 12, 1, 0,
35048 8, 13,
35049 OPC_CheckPatternPredicate, 28,
35050 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
35051 13, 1, 0,
35052 0,
35053 11,
35054 OPC_CheckChild0TypeI64,
35055 OPC_CheckType, 13,
35056 OPC_CheckPatternPredicate, 27,
35057 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
35058 13, 1, 0,
35059 0,
35060 27, TARGET_VAL(LoongArchISD::IOCSRRD_B),
35061 OPC_RecordNode,
35062 OPC_RecordChild1,
35063 OPC_SwitchType , 9, 8,
35064 OPC_CheckChild1TypeI64,
35065 OPC_CheckPatternPredicate7,
35066 OPC_EmitMergeInputChains1_0,
35067 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::IOCSRRD_B),
35068 8, 1, 1,
35069 10, 7,
35070 OPC_CheckChild1TypeI32,
35071 OPC_CheckPatternPredicate, 8,
35072 OPC_EmitMergeInputChains1_0,
35073 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::IOCSRRD_B),
35074 7, 1, 1,
35075 0,
35076 27, TARGET_VAL(LoongArchISD::IOCSRRD_H),
35077 OPC_RecordNode,
35078 OPC_RecordChild1,
35079 OPC_SwitchType , 9, 8,
35080 OPC_CheckChild1TypeI64,
35081 OPC_CheckPatternPredicate7,
35082 OPC_EmitMergeInputChains1_0,
35083 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::IOCSRRD_H),
35084 8, 1, 1,
35085 10, 7,
35086 OPC_CheckChild1TypeI32,
35087 OPC_CheckPatternPredicate, 8,
35088 OPC_EmitMergeInputChains1_0,
35089 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::IOCSRRD_H),
35090 7, 1, 1,
35091 0,
35092 27, TARGET_VAL(LoongArchISD::IOCSRRD_W),
35093 OPC_RecordNode,
35094 OPC_RecordChild1,
35095 OPC_SwitchType , 9, 8,
35096 OPC_CheckChild1TypeI64,
35097 OPC_CheckPatternPredicate7,
35098 OPC_EmitMergeInputChains1_0,
35099 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::IOCSRRD_W),
35100 8, 1, 1,
35101 10, 7,
35102 OPC_CheckChild1TypeI32,
35103 OPC_CheckPatternPredicate, 8,
35104 OPC_EmitMergeInputChains1_0,
35105 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::IOCSRRD_W),
35106 7, 1, 1,
35107 0,
35108 27, TARGET_VAL(LoongArchISD::IOCSRWR_B),
35109 OPC_RecordNode,
35110 OPC_RecordChild1,
35111 OPC_Scope, 10,
35112 OPC_CheckChild1TypeI64,
35113 OPC_RecordChild2,
35114 OPC_CheckPatternPredicate7,
35115 OPC_EmitMergeInputChains1_0,
35116 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::IOCSRWR_B),
35117 2, 1, 2,
35118 11,
35119 OPC_CheckChild1TypeI32,
35120 OPC_RecordChild2,
35121 OPC_CheckPatternPredicate, 8,
35122 OPC_EmitMergeInputChains1_0,
35123 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::IOCSRWR_B),
35124 2, 1, 2,
35125 0,
35126 27, TARGET_VAL(LoongArchISD::IOCSRWR_H),
35127 OPC_RecordNode,
35128 OPC_RecordChild1,
35129 OPC_Scope, 10,
35130 OPC_CheckChild1TypeI64,
35131 OPC_RecordChild2,
35132 OPC_CheckPatternPredicate7,
35133 OPC_EmitMergeInputChains1_0,
35134 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::IOCSRWR_H),
35135 2, 1, 2,
35136 11,
35137 OPC_CheckChild1TypeI32,
35138 OPC_RecordChild2,
35139 OPC_CheckPatternPredicate, 8,
35140 OPC_EmitMergeInputChains1_0,
35141 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::IOCSRWR_H),
35142 2, 1, 2,
35143 0,
35144 27, TARGET_VAL(LoongArchISD::IOCSRWR_W),
35145 OPC_RecordNode,
35146 OPC_RecordChild1,
35147 OPC_Scope, 10,
35148 OPC_CheckChild1TypeI64,
35149 OPC_RecordChild2,
35150 OPC_CheckPatternPredicate7,
35151 OPC_EmitMergeInputChains1_0,
35152 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::IOCSRWR_W),
35153 2, 1, 2,
35154 11,
35155 OPC_CheckChild1TypeI32,
35156 OPC_RecordChild2,
35157 OPC_CheckPatternPredicate, 8,
35158 OPC_EmitMergeInputChains1_0,
35159 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::IOCSRWR_W),
35160 2, 1, 2,
35161 0,
35162 27, TARGET_VAL(LoongArchISD::CPUCFG),
35163 OPC_RecordNode,
35164 OPC_RecordChild1,
35165 OPC_SwitchType , 9, 8,
35166 OPC_CheckChild1TypeI64,
35167 OPC_CheckPatternPredicate7,
35168 OPC_EmitMergeInputChains1_0,
35169 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CPUCFG),
35170 8, 1, 1,
35171 10, 7,
35172 OPC_CheckChild1TypeI32,
35173 OPC_CheckPatternPredicate, 8,
35174 OPC_EmitMergeInputChains1_0,
35175 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::CPUCFG),
35176 7, 1, 1,
35177 0,
35178 27, TARGET_VAL(LoongArchISD::IOCSRRD_D),
35179 OPC_RecordNode,
35180 OPC_RecordChild1,
35181 OPC_SwitchType , 9, 8,
35182 OPC_CheckChild1TypeI64,
35183 OPC_CheckPatternPredicate6,
35184 OPC_EmitMergeInputChains1_0,
35185 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::IOCSRRD_D),
35186 8, 1, 1,
35187 10, 7,
35188 OPC_CheckChild1TypeI32,
35189 OPC_CheckPatternPredicate, 9,
35190 OPC_EmitMergeInputChains1_0,
35191 OPC_MorphNodeTo1Chain, TARGET_VAL(LoongArch::IOCSRRD_D),
35192 7, 1, 1,
35193 0,
35194 27, TARGET_VAL(LoongArchISD::IOCSRWR_D),
35195 OPC_RecordNode,
35196 OPC_RecordChild1,
35197 OPC_Scope, 10,
35198 OPC_CheckChild1TypeI64,
35199 OPC_RecordChild2,
35200 OPC_CheckPatternPredicate6,
35201 OPC_EmitMergeInputChains1_0,
35202 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::IOCSRWR_D),
35203 2, 1, 2,
35204 11,
35205 OPC_CheckChild1TypeI32,
35206 OPC_RecordChild2,
35207 OPC_CheckPatternPredicate, 9,
35208 OPC_EmitMergeInputChains1_0,
35209 OPC_MorphNodeTo0Chain, TARGET_VAL(LoongArch::IOCSRWR_D),
35210 2, 1, 2,
35211 0,
35212 10, TARGET_VAL(LoongArchISD::SPLIT_PAIR_F64),
35213 OPC_RecordChild0,
35214 OPC_CheckPatternPredicate, 29,
35215 OPC_MorphNodeTo2None, TARGET_VAL(LoongArch::SplitPairF64Pseudo),
35216 7, 7, 1, 0,
35217 59|128,1, TARGET_VAL(LoongArchISD::VALL_NONZERO),
35218 OPC_RecordChild0,
35219 OPC_Scope, 22,
35220 OPC_CheckChild0Type, 40,
35221 OPC_SwitchType , 7, 8,
35222 OPC_CheckPatternPredicate2,
35223 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBNZ_B),
35224 8, 1, 0,
35225 7, 7,
35226 OPC_CheckPatternPredicate4,
35227 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBNZ_B),
35228 7, 1, 0,
35229 0,
35230 22,
35231 OPC_CheckChild0Type, 51,
35232 OPC_SwitchType , 7, 8,
35233 OPC_CheckPatternPredicate2,
35234 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBNZ_H),
35235 8, 1, 0,
35236 7, 7,
35237 OPC_CheckPatternPredicate4,
35238 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBNZ_H),
35239 7, 1, 0,
35240 0,
35241 22,
35242 OPC_CheckChild0Type, 62,
35243 OPC_SwitchType , 7, 8,
35244 OPC_CheckPatternPredicate2,
35245 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBNZ_W),
35246 8, 1, 0,
35247 7, 7,
35248 OPC_CheckPatternPredicate4,
35249 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBNZ_W),
35250 7, 1, 0,
35251 0,
35252 22,
35253 OPC_CheckChild0Type, 81,
35254 OPC_SwitchType , 7, 8,
35255 OPC_CheckPatternPredicate2,
35256 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBNZ_D),
35257 8, 1, 0,
35258 7, 7,
35259 OPC_CheckPatternPredicate4,
35260 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBNZ_D),
35261 7, 1, 0,
35262 0,
35263 22,
35264 OPC_CheckChild0Type, 41,
35265 OPC_SwitchType , 7, 8,
35266 OPC_CheckPatternPredicate3,
35267 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBNZ_B),
35268 8, 1, 0,
35269 7, 7,
35270 OPC_CheckPatternPredicate5,
35271 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBNZ_B),
35272 7, 1, 0,
35273 0,
35274 22,
35275 OPC_CheckChild0Type, 52,
35276 OPC_SwitchType , 7, 8,
35277 OPC_CheckPatternPredicate3,
35278 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBNZ_H),
35279 8, 1, 0,
35280 7, 7,
35281 OPC_CheckPatternPredicate5,
35282 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBNZ_H),
35283 7, 1, 0,
35284 0,
35285 22,
35286 OPC_CheckChild0Type, 66,
35287 OPC_SwitchType , 7, 8,
35288 OPC_CheckPatternPredicate3,
35289 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBNZ_W),
35290 8, 1, 0,
35291 7, 7,
35292 OPC_CheckPatternPredicate5,
35293 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBNZ_W),
35294 7, 1, 0,
35295 0,
35296 22,
35297 OPC_CheckChild0Type, 83,
35298 OPC_SwitchType , 7, 8,
35299 OPC_CheckPatternPredicate3,
35300 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBNZ_D),
35301 8, 1, 0,
35302 7, 7,
35303 OPC_CheckPatternPredicate5,
35304 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBNZ_D),
35305 7, 1, 0,
35306 0,
35307 0,
35308 49, TARGET_VAL(LoongArchISD::VANY_NONZERO),
35309 OPC_RecordChild0,
35310 OPC_Scope, 22,
35311 OPC_CheckChild0Type, 40,
35312 OPC_SwitchType , 7, 8,
35313 OPC_CheckPatternPredicate2,
35314 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBNZ),
35315 8, 1, 0,
35316 7, 7,
35317 OPC_CheckPatternPredicate4,
35318 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBNZ),
35319 7, 1, 0,
35320 0,
35321 22,
35322 OPC_CheckChild0Type, 41,
35323 OPC_SwitchType , 7, 8,
35324 OPC_CheckPatternPredicate3,
35325 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBNZ),
35326 8, 1, 0,
35327 7, 7,
35328 OPC_CheckPatternPredicate5,
35329 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBNZ),
35330 7, 1, 0,
35331 0,
35332 0,
35333 59|128,1, TARGET_VAL(LoongArchISD::VALL_ZERO),
35334 OPC_RecordChild0,
35335 OPC_Scope, 22,
35336 OPC_CheckChild0Type, 40,
35337 OPC_SwitchType , 7, 8,
35338 OPC_CheckPatternPredicate2,
35339 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBZ_B),
35340 8, 1, 0,
35341 7, 7,
35342 OPC_CheckPatternPredicate4,
35343 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBZ_B),
35344 7, 1, 0,
35345 0,
35346 22,
35347 OPC_CheckChild0Type, 51,
35348 OPC_SwitchType , 7, 8,
35349 OPC_CheckPatternPredicate2,
35350 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBZ_H),
35351 8, 1, 0,
35352 7, 7,
35353 OPC_CheckPatternPredicate4,
35354 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBZ_H),
35355 7, 1, 0,
35356 0,
35357 22,
35358 OPC_CheckChild0Type, 62,
35359 OPC_SwitchType , 7, 8,
35360 OPC_CheckPatternPredicate2,
35361 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBZ_W),
35362 8, 1, 0,
35363 7, 7,
35364 OPC_CheckPatternPredicate4,
35365 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBZ_W),
35366 7, 1, 0,
35367 0,
35368 22,
35369 OPC_CheckChild0Type, 81,
35370 OPC_SwitchType , 7, 8,
35371 OPC_CheckPatternPredicate2,
35372 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBZ_D),
35373 8, 1, 0,
35374 7, 7,
35375 OPC_CheckPatternPredicate4,
35376 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBZ_D),
35377 7, 1, 0,
35378 0,
35379 22,
35380 OPC_CheckChild0Type, 41,
35381 OPC_SwitchType , 7, 8,
35382 OPC_CheckPatternPredicate3,
35383 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBZ_B),
35384 8, 1, 0,
35385 7, 7,
35386 OPC_CheckPatternPredicate5,
35387 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBZ_B),
35388 7, 1, 0,
35389 0,
35390 22,
35391 OPC_CheckChild0Type, 52,
35392 OPC_SwitchType , 7, 8,
35393 OPC_CheckPatternPredicate3,
35394 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBZ_H),
35395 8, 1, 0,
35396 7, 7,
35397 OPC_CheckPatternPredicate5,
35398 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBZ_H),
35399 7, 1, 0,
35400 0,
35401 22,
35402 OPC_CheckChild0Type, 66,
35403 OPC_SwitchType , 7, 8,
35404 OPC_CheckPatternPredicate3,
35405 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBZ_W),
35406 8, 1, 0,
35407 7, 7,
35408 OPC_CheckPatternPredicate5,
35409 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBZ_W),
35410 7, 1, 0,
35411 0,
35412 22,
35413 OPC_CheckChild0Type, 83,
35414 OPC_SwitchType , 7, 8,
35415 OPC_CheckPatternPredicate3,
35416 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBZ_D),
35417 8, 1, 0,
35418 7, 7,
35419 OPC_CheckPatternPredicate5,
35420 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBZ_D),
35421 7, 1, 0,
35422 0,
35423 0,
35424 49, TARGET_VAL(LoongArchISD::VANY_ZERO),
35425 OPC_RecordChild0,
35426 OPC_Scope, 22,
35427 OPC_CheckChild0Type, 40,
35428 OPC_SwitchType , 7, 8,
35429 OPC_CheckPatternPredicate2,
35430 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBZ),
35431 8, 1, 0,
35432 7, 7,
35433 OPC_CheckPatternPredicate4,
35434 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVBZ),
35435 7, 1, 0,
35436 0,
35437 22,
35438 OPC_CheckChild0Type, 41,
35439 OPC_SwitchType , 7, 8,
35440 OPC_CheckPatternPredicate3,
35441 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBZ),
35442 8, 1, 0,
35443 7, 7,
35444 OPC_CheckPatternPredicate5,
35445 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVBZ),
35446 7, 1, 0,
35447 0,
35448 0,
35449 111, TARGET_VAL(ISD::CTPOP),
35450 OPC_RecordChild0,
35451 OPC_SwitchType , 8, 8,
35452 OPC_CheckChild0TypeI64,
35453 OPC_CheckPatternPredicate2,
35454 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoCTPOP),
35455 8, 1, 0,
35456 8, 7,
35457 OPC_CheckChild0TypeI32,
35458 OPC_CheckPatternPredicate4,
35459 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoCTPOP),
35460 7, 1, 0,
35461 9, 40,
35462 OPC_CheckChild0Type, 40,
35463 OPC_CheckPatternPredicate1,
35464 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPCNT_B),
35465 40, 1, 0,
35466 9, 51,
35467 OPC_CheckChild0Type, 51,
35468 OPC_CheckPatternPredicate1,
35469 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPCNT_H),
35470 51, 1, 0,
35471 9, 62,
35472 OPC_CheckChild0Type, 62,
35473 OPC_CheckPatternPredicate1,
35474 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPCNT_W),
35475 62, 1, 0,
35476 9, 81,
35477 OPC_CheckChild0Type, 81,
35478 OPC_CheckPatternPredicate1,
35479 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPCNT_D),
35480 81, 1, 0,
35481 9, 41,
35482 OPC_CheckChild0Type, 41,
35483 OPC_CheckPatternPredicate0,
35484 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPCNT_B),
35485 41, 1, 0,
35486 9, 52,
35487 OPC_CheckChild0Type, 52,
35488 OPC_CheckPatternPredicate0,
35489 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPCNT_H),
35490 52, 1, 0,
35491 9, 66,
35492 OPC_CheckChild0Type, 66,
35493 OPC_CheckPatternPredicate0,
35494 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPCNT_W),
35495 66, 1, 0,
35496 9, 83,
35497 OPC_CheckChild0Type, 83,
35498 OPC_CheckPatternPredicate0,
35499 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPCNT_D),
35500 83, 1, 0,
35501 0,
35502 3|128,1, TARGET_VAL(ISD::SDIV),
35503 OPC_RecordChild0,
35504 OPC_RecordChild1,
35505 OPC_SwitchType , 21, 8,
35506 OPC_Scope, 9,
35507 OPC_CheckPatternPredicate, 15,
35508 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::DIV_W),
35509 8, 2, 0, 1,
35510 8,
35511 OPC_CheckPatternPredicate6,
35512 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::DIV_D),
35513 8, 2, 0, 1,
35514 0,
35515 22, 7,
35516 OPC_Scope, 9,
35517 OPC_CheckPatternPredicate, 10,
35518 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::DIV_W),
35519 7, 2, 0, 1,
35520 9,
35521 OPC_CheckPatternPredicate, 9,
35522 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::DIV_D),
35523 7, 2, 0, 1,
35524 0,
35525 8, 40,
35526 OPC_CheckPatternPredicate1,
35527 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VDIV_B),
35528 40, 2, 0, 1,
35529 8, 51,
35530 OPC_CheckPatternPredicate1,
35531 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VDIV_H),
35532 51, 2, 0, 1,
35533 8, 62,
35534 OPC_CheckPatternPredicate1,
35535 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VDIV_W),
35536 62, 2, 0, 1,
35537 8, 81,
35538 OPC_CheckPatternPredicate1,
35539 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VDIV_D),
35540 81, 2, 0, 1,
35541 8, 41,
35542 OPC_CheckPatternPredicate0,
35543 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVDIV_B),
35544 41, 2, 0, 1,
35545 8, 52,
35546 OPC_CheckPatternPredicate0,
35547 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVDIV_H),
35548 52, 2, 0, 1,
35549 8, 66,
35550 OPC_CheckPatternPredicate0,
35551 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVDIV_W),
35552 66, 2, 0, 1,
35553 8, 83,
35554 OPC_CheckPatternPredicate0,
35555 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVDIV_D),
35556 83, 2, 0, 1,
35557 0,
35558 3|128,1, TARGET_VAL(ISD::UDIV),
35559 OPC_RecordChild0,
35560 OPC_RecordChild1,
35561 OPC_SwitchType , 21, 8,
35562 OPC_Scope, 9,
35563 OPC_CheckPatternPredicate, 15,
35564 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::DIV_WU),
35565 8, 2, 0, 1,
35566 8,
35567 OPC_CheckPatternPredicate6,
35568 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::DIV_DU),
35569 8, 2, 0, 1,
35570 0,
35571 22, 7,
35572 OPC_Scope, 9,
35573 OPC_CheckPatternPredicate, 10,
35574 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::DIV_WU),
35575 7, 2, 0, 1,
35576 9,
35577 OPC_CheckPatternPredicate, 9,
35578 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::DIV_DU),
35579 7, 2, 0, 1,
35580 0,
35581 8, 40,
35582 OPC_CheckPatternPredicate1,
35583 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VDIV_BU),
35584 40, 2, 0, 1,
35585 8, 51,
35586 OPC_CheckPatternPredicate1,
35587 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VDIV_HU),
35588 51, 2, 0, 1,
35589 8, 62,
35590 OPC_CheckPatternPredicate1,
35591 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VDIV_WU),
35592 62, 2, 0, 1,
35593 8, 81,
35594 OPC_CheckPatternPredicate1,
35595 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VDIV_DU),
35596 81, 2, 0, 1,
35597 8, 41,
35598 OPC_CheckPatternPredicate0,
35599 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVDIV_BU),
35600 41, 2, 0, 1,
35601 8, 52,
35602 OPC_CheckPatternPredicate0,
35603 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVDIV_HU),
35604 52, 2, 0, 1,
35605 8, 66,
35606 OPC_CheckPatternPredicate0,
35607 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVDIV_WU),
35608 66, 2, 0, 1,
35609 8, 83,
35610 OPC_CheckPatternPredicate0,
35611 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVDIV_DU),
35612 83, 2, 0, 1,
35613 0,
35614 3|128,1, TARGET_VAL(ISD::SREM),
35615 OPC_RecordChild0,
35616 OPC_RecordChild1,
35617 OPC_SwitchType , 21, 8,
35618 OPC_Scope, 9,
35619 OPC_CheckPatternPredicate, 15,
35620 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOD_W),
35621 8, 2, 0, 1,
35622 8,
35623 OPC_CheckPatternPredicate6,
35624 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOD_D),
35625 8, 2, 0, 1,
35626 0,
35627 22, 7,
35628 OPC_Scope, 9,
35629 OPC_CheckPatternPredicate, 10,
35630 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOD_W),
35631 7, 2, 0, 1,
35632 9,
35633 OPC_CheckPatternPredicate, 9,
35634 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOD_D),
35635 7, 2, 0, 1,
35636 0,
35637 8, 40,
35638 OPC_CheckPatternPredicate1,
35639 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMOD_B),
35640 40, 2, 0, 1,
35641 8, 51,
35642 OPC_CheckPatternPredicate1,
35643 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMOD_H),
35644 51, 2, 0, 1,
35645 8, 62,
35646 OPC_CheckPatternPredicate1,
35647 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMOD_W),
35648 62, 2, 0, 1,
35649 8, 81,
35650 OPC_CheckPatternPredicate1,
35651 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMOD_D),
35652 81, 2, 0, 1,
35653 8, 41,
35654 OPC_CheckPatternPredicate0,
35655 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMOD_B),
35656 41, 2, 0, 1,
35657 8, 52,
35658 OPC_CheckPatternPredicate0,
35659 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMOD_H),
35660 52, 2, 0, 1,
35661 8, 66,
35662 OPC_CheckPatternPredicate0,
35663 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMOD_W),
35664 66, 2, 0, 1,
35665 8, 83,
35666 OPC_CheckPatternPredicate0,
35667 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMOD_D),
35668 83, 2, 0, 1,
35669 0,
35670 3|128,1, TARGET_VAL(ISD::UREM),
35671 OPC_RecordChild0,
35672 OPC_RecordChild1,
35673 OPC_SwitchType , 21, 8,
35674 OPC_Scope, 9,
35675 OPC_CheckPatternPredicate, 15,
35676 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOD_WU),
35677 8, 2, 0, 1,
35678 8,
35679 OPC_CheckPatternPredicate6,
35680 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOD_DU),
35681 8, 2, 0, 1,
35682 0,
35683 22, 7,
35684 OPC_Scope, 9,
35685 OPC_CheckPatternPredicate, 10,
35686 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOD_WU),
35687 7, 2, 0, 1,
35688 9,
35689 OPC_CheckPatternPredicate, 9,
35690 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOD_DU),
35691 7, 2, 0, 1,
35692 0,
35693 8, 40,
35694 OPC_CheckPatternPredicate1,
35695 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMOD_BU),
35696 40, 2, 0, 1,
35697 8, 51,
35698 OPC_CheckPatternPredicate1,
35699 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMOD_HU),
35700 51, 2, 0, 1,
35701 8, 62,
35702 OPC_CheckPatternPredicate1,
35703 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMOD_WU),
35704 62, 2, 0, 1,
35705 8, 81,
35706 OPC_CheckPatternPredicate1,
35707 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMOD_DU),
35708 81, 2, 0, 1,
35709 8, 41,
35710 OPC_CheckPatternPredicate0,
35711 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMOD_BU),
35712 41, 2, 0, 1,
35713 8, 52,
35714 OPC_CheckPatternPredicate0,
35715 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMOD_HU),
35716 52, 2, 0, 1,
35717 8, 66,
35718 OPC_CheckPatternPredicate0,
35719 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMOD_WU),
35720 66, 2, 0, 1,
35721 8, 83,
35722 OPC_CheckPatternPredicate0,
35723 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMOD_DU),
35724 83, 2, 0, 1,
35725 0,
35726 10, TARGET_VAL(LoongArchISD::DIV_W),
35727 OPC_RecordChild0,
35728 OPC_RecordChild1,
35729 OPC_CheckPatternPredicate6,
35730 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::DIV_W),
35731 8, 2, 0, 1,
35732 10, TARGET_VAL(LoongArchISD::DIV_WU),
35733 OPC_RecordChild0,
35734 OPC_RecordChild1,
35735 OPC_CheckPatternPredicate6,
35736 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::DIV_WU),
35737 8, 2, 0, 1,
35738 10, TARGET_VAL(LoongArchISD::MOD_W),
35739 OPC_RecordChild0,
35740 OPC_RecordChild1,
35741 OPC_CheckPatternPredicate6,
35742 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOD_W),
35743 8, 2, 0, 1,
35744 10, TARGET_VAL(LoongArchISD::MOD_WU),
35745 OPC_RecordChild0,
35746 OPC_RecordChild1,
35747 OPC_CheckPatternPredicate6,
35748 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOD_WU),
35749 8, 2, 0, 1,
35750 95, TARGET_VAL(LoongArchISD::VMSKLTZ),
35751 OPC_RecordChild0,
35752 OPC_Scope, 22,
35753 OPC_CheckChild0Type, 40,
35754 OPC_SwitchType , 7, 8,
35755 OPC_CheckPatternPredicate2,
35756 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKLTZ_B),
35757 8, 1, 0,
35758 7, 7,
35759 OPC_CheckPatternPredicate4,
35760 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKLTZ_B),
35761 7, 1, 0,
35762 0,
35763 22,
35764 OPC_CheckChild0Type, 51,
35765 OPC_SwitchType , 7, 8,
35766 OPC_CheckPatternPredicate2,
35767 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKLTZ_H),
35768 8, 1, 0,
35769 7, 7,
35770 OPC_CheckPatternPredicate4,
35771 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKLTZ_H),
35772 7, 1, 0,
35773 0,
35774 22,
35775 OPC_CheckChild0Type, 62,
35776 OPC_SwitchType , 7, 8,
35777 OPC_CheckPatternPredicate2,
35778 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKLTZ_W),
35779 8, 1, 0,
35780 7, 7,
35781 OPC_CheckPatternPredicate4,
35782 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKLTZ_W),
35783 7, 1, 0,
35784 0,
35785 22,
35786 OPC_CheckChild0Type, 81,
35787 OPC_SwitchType , 7, 8,
35788 OPC_CheckPatternPredicate2,
35789 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKLTZ_D),
35790 8, 1, 0,
35791 7, 7,
35792 OPC_CheckPatternPredicate4,
35793 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKLTZ_D),
35794 7, 1, 0,
35795 0,
35796 0,
35797 23, TARGET_VAL(LoongArchISD::VMSKGEZ),
35798 OPC_RecordChild0,
35799 OPC_CheckChild0Type, 40,
35800 OPC_SwitchType , 7, 8,
35801 OPC_CheckPatternPredicate2,
35802 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKGEZ_B),
35803 8, 1, 0,
35804 7, 7,
35805 OPC_CheckPatternPredicate4,
35806 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKGEZ_B),
35807 7, 1, 0,
35808 0,
35809 23, TARGET_VAL(LoongArchISD::VMSKEQZ),
35810 OPC_RecordChild0,
35811 OPC_CheckChild0Type, 40,
35812 OPC_SwitchType , 7, 8,
35813 OPC_CheckPatternPredicate2,
35814 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKEQZ_B),
35815 8, 1, 0,
35816 7, 7,
35817 OPC_CheckPatternPredicate4,
35818 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKEQZ_B),
35819 7, 1, 0,
35820 0,
35821 23, TARGET_VAL(LoongArchISD::VMSKNEZ),
35822 OPC_RecordChild0,
35823 OPC_CheckChild0Type, 40,
35824 OPC_SwitchType , 7, 8,
35825 OPC_CheckPatternPredicate2,
35826 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKNEZ_B),
35827 8, 1, 0,
35828 7, 7,
35829 OPC_CheckPatternPredicate4,
35830 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoVMSKNEZ_B),
35831 7, 1, 0,
35832 0,
35833 95, TARGET_VAL(LoongArchISD::XVMSKLTZ),
35834 OPC_RecordChild0,
35835 OPC_Scope, 22,
35836 OPC_CheckChild0Type, 41,
35837 OPC_SwitchType , 7, 8,
35838 OPC_CheckPatternPredicate3,
35839 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKLTZ_B),
35840 8, 1, 0,
35841 7, 7,
35842 OPC_CheckPatternPredicate5,
35843 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKLTZ_B),
35844 7, 1, 0,
35845 0,
35846 22,
35847 OPC_CheckChild0Type, 52,
35848 OPC_SwitchType , 7, 8,
35849 OPC_CheckPatternPredicate3,
35850 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKLTZ_H),
35851 8, 1, 0,
35852 7, 7,
35853 OPC_CheckPatternPredicate5,
35854 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKLTZ_H),
35855 7, 1, 0,
35856 0,
35857 22,
35858 OPC_CheckChild0Type, 66,
35859 OPC_SwitchType , 7, 8,
35860 OPC_CheckPatternPredicate3,
35861 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKLTZ_W),
35862 8, 1, 0,
35863 7, 7,
35864 OPC_CheckPatternPredicate5,
35865 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKLTZ_W),
35866 7, 1, 0,
35867 0,
35868 22,
35869 OPC_CheckChild0Type, 83,
35870 OPC_SwitchType , 7, 8,
35871 OPC_CheckPatternPredicate3,
35872 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKLTZ_D),
35873 8, 1, 0,
35874 7, 7,
35875 OPC_CheckPatternPredicate5,
35876 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKLTZ_D),
35877 7, 1, 0,
35878 0,
35879 0,
35880 23, TARGET_VAL(LoongArchISD::XVMSKGEZ),
35881 OPC_RecordChild0,
35882 OPC_CheckChild0Type, 41,
35883 OPC_SwitchType , 7, 8,
35884 OPC_CheckPatternPredicate3,
35885 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKGEZ_B),
35886 8, 1, 0,
35887 7, 7,
35888 OPC_CheckPatternPredicate5,
35889 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKGEZ_B),
35890 7, 1, 0,
35891 0,
35892 23, TARGET_VAL(LoongArchISD::XVMSKEQZ),
35893 OPC_RecordChild0,
35894 OPC_CheckChild0Type, 41,
35895 OPC_SwitchType , 7, 8,
35896 OPC_CheckPatternPredicate3,
35897 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKEQZ_B),
35898 8, 1, 0,
35899 7, 7,
35900 OPC_CheckPatternPredicate5,
35901 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKEQZ_B),
35902 7, 1, 0,
35903 0,
35904 23, TARGET_VAL(LoongArchISD::XVMSKNEZ),
35905 OPC_RecordChild0,
35906 OPC_CheckChild0Type, 41,
35907 OPC_SwitchType , 7, 8,
35908 OPC_CheckPatternPredicate3,
35909 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKNEZ_B),
35910 8, 1, 0,
35911 7, 7,
35912 OPC_CheckPatternPredicate5,
35913 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVMSKNEZ_B),
35914 7, 1, 0,
35915 0,
35916 13|128,3, TARGET_VAL(ISD::FDIV),
35917 OPC_Scope, 62,
35918 OPC_MoveChild0,
35919 OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP),
35920 OPC_CheckPredicate, 56,
35921 OPC_Scope, 28,
35922 OPC_MoveSibling1,
35923 OPC_CheckOpcode, TARGET_VAL(ISD::FSQRT),
35924 OPC_RecordChild0,
35925 OPC_MoveParent,
35926 OPC_SwitchType , 8, 12,
35927 OPC_CheckPatternPredicate, 19,
35928 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRSQRT_S),
35929 12, 1, 0,
35930 8, 13,
35931 OPC_CheckPatternPredicate, 17,
35932 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRSQRT_D),
35933 13, 1, 0,
35934 0,
35935 24,
35936 OPC_MoveParent,
35937 OPC_RecordChild1,
35938 OPC_SwitchType , 8, 12,
35939 OPC_CheckPatternPredicate, 19,
35940 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRECIP_S),
35941 12, 1, 0,
35942 8, 13,
35943 OPC_CheckPatternPredicate, 17,
35944 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRECIP_D),
35945 13, 1, 0,
35946 0,
35947 0,
35948 26,
35949 OPC_RecordChild0,
35950 OPC_RecordChild1,
35951 OPC_SwitchType , 9, 12,
35952 OPC_CheckPatternPredicate, 19,
35953 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FDIV_S),
35954 12, 2, 0, 1,
35955 9, 13,
35956 OPC_CheckPatternPredicate, 17,
35957 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FDIV_D),
35958 13, 2, 0, 1,
35959 0,
35960 126|128,1,
35961 OPC_MoveChild0,
35962 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
35963 OPC_MoveChild0,
35964 OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR),
35965 OPC_SwitchType , 55, 62,
35966 OPC_MoveParent,
35967 OPC_CheckPredicate, 61,
35968 OPC_Scope, 26,
35969 OPC_MoveSibling1,
35970 OPC_CheckOpcode, TARGET_VAL(ISD::FSQRT),
35971 OPC_RecordChild0,
35972 OPC_MoveParent,
35973 OPC_SwitchType , 7, 116,
35974 OPC_CheckPatternPredicate1,
35975 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSQRT_S),
35976 116, 1, 0,
35977 7, 120,
35978 OPC_CheckPatternPredicate0,
35979 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSQRT_S),
35980 120, 1, 0,
35981 0,
35982 22,
35983 OPC_MoveParent,
35984 OPC_RecordChild1,
35985 OPC_SwitchType , 7, 116,
35986 OPC_CheckPatternPredicate1,
35987 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRECIP_S),
35988 116, 1, 0,
35989 7, 120,
35990 OPC_CheckPatternPredicate0,
35991 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRECIP_S),
35992 120, 1, 0,
35993 0,
35994 0,
35995 55, 66,
35996 OPC_MoveParent,
35997 OPC_CheckPredicate, 61,
35998 OPC_Scope, 26,
35999 OPC_MoveSibling1,
36000 OPC_CheckOpcode, TARGET_VAL(ISD::FSQRT),
36001 OPC_RecordChild0,
36002 OPC_MoveParent,
36003 OPC_SwitchType , 7, 116,
36004 OPC_CheckPatternPredicate1,
36005 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSQRT_S),
36006 116, 1, 0,
36007 7, 120,
36008 OPC_CheckPatternPredicate0,
36009 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSQRT_S),
36010 120, 1, 0,
36011 0,
36012 22,
36013 OPC_MoveParent,
36014 OPC_RecordChild1,
36015 OPC_SwitchType , 7, 116,
36016 OPC_CheckPatternPredicate1,
36017 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRECIP_S),
36018 116, 1, 0,
36019 7, 120,
36020 OPC_CheckPatternPredicate0,
36021 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRECIP_S),
36022 120, 1, 0,
36023 0,
36024 0,
36025 63, 81,
36026 OPC_MoveParent,
36027 OPC_CheckPredicate, 62,
36028 OPC_Scope, 30,
36029 OPC_MoveSibling1,
36030 OPC_CheckOpcode, TARGET_VAL(ISD::FSQRT),
36031 OPC_RecordChild0,
36032 OPC_MoveParent,
36033 OPC_SwitchType , 8, 6|128,1,
36034 OPC_CheckPatternPredicate1,
36035 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSQRT_D),
36036 6|128,1, 1, 0,
36037 8, 8|128,1,
36038 OPC_CheckPatternPredicate0,
36039 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSQRT_D),
36040 8|128,1, 1, 0,
36041 0,
36042 26,
36043 OPC_MoveParent,
36044 OPC_RecordChild1,
36045 OPC_SwitchType , 8, 6|128,1,
36046 OPC_CheckPatternPredicate1,
36047 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRECIP_D),
36048 6|128,1, 1, 0,
36049 8, 8|128,1,
36050 OPC_CheckPatternPredicate0,
36051 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRECIP_D),
36052 8|128,1, 1, 0,
36053 0,
36054 0,
36055 63, 83,
36056 OPC_MoveParent,
36057 OPC_CheckPredicate, 62,
36058 OPC_Scope, 30,
36059 OPC_MoveSibling1,
36060 OPC_CheckOpcode, TARGET_VAL(ISD::FSQRT),
36061 OPC_RecordChild0,
36062 OPC_MoveParent,
36063 OPC_SwitchType , 8, 6|128,1,
36064 OPC_CheckPatternPredicate1,
36065 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSQRT_D),
36066 6|128,1, 1, 0,
36067 8, 8|128,1,
36068 OPC_CheckPatternPredicate0,
36069 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSQRT_D),
36070 8|128,1, 1, 0,
36071 0,
36072 26,
36073 OPC_MoveParent,
36074 OPC_RecordChild1,
36075 OPC_SwitchType , 8, 6|128,1,
36076 OPC_CheckPatternPredicate1,
36077 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRECIP_D),
36078 6|128,1, 1, 0,
36079 8, 8|128,1,
36080 OPC_CheckPatternPredicate0,
36081 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRECIP_D),
36082 8|128,1, 1, 0,
36083 0,
36084 0,
36085 0,
36086 48,
36087 OPC_RecordChild0,
36088 OPC_RecordChild1,
36089 OPC_SwitchType , 8, 116,
36090 OPC_CheckPatternPredicate1,
36091 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFDIV_S),
36092 116, 2, 0, 1,
36093 9, 6|128,1,
36094 OPC_CheckPatternPredicate1,
36095 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFDIV_D),
36096 6|128,1, 2, 0, 1,
36097 8, 120,
36098 OPC_CheckPatternPredicate0,
36099 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFDIV_S),
36100 120, 2, 0, 1,
36101 9, 8|128,1,
36102 OPC_CheckPatternPredicate0,
36103 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFDIV_D),
36104 8|128,1, 2, 0, 1,
36105 0,
36106 0,
36107 85|128,4, TARGET_VAL(ISD::FMA),
36108 OPC_Scope, 41,
36109 OPC_MoveChild0,
36110 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36111 OPC_RecordChild0,
36112 OPC_MoveParent,
36113 OPC_RecordChild1,
36114 OPC_MoveChild2,
36115 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36116 OPC_RecordChild0,
36117 OPC_MoveParent,
36118 OPC_CheckPredicate, 40,
36119 OPC_SwitchType , 10, 12,
36120 OPC_CheckPatternPredicate, 19,
36121 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMADD_S),
36122 12, 3, 0, 1, 2,
36123 10, 13,
36124 OPC_CheckPatternPredicate, 17,
36125 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMADD_D),
36126 13, 3, 0, 1, 2,
36127 0,
36128 40,
36129 OPC_RecordChild0,
36130 OPC_MoveChild1,
36131 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36132 OPC_RecordChild0,
36133 OPC_MoveSibling2,
36134 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36135 OPC_RecordChild0,
36136 OPC_MoveParent,
36137 OPC_CheckPredicate, 40,
36138 OPC_SwitchType , 10, 12,
36139 OPC_CheckPatternPredicate, 19,
36140 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMADD_S),
36141 12, 3, 1, 0, 2,
36142 10, 13,
36143 OPC_CheckPatternPredicate, 17,
36144 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMADD_D),
36145 13, 3, 1, 0, 2,
36146 0,
36147 36,
36148 OPC_MoveChild0,
36149 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36150 OPC_RecordChild0,
36151 OPC_MoveParent,
36152 OPC_RecordChild1,
36153 OPC_RecordChild2,
36154 OPC_CheckPredicate, 40,
36155 OPC_SwitchType , 10, 12,
36156 OPC_CheckPatternPredicate, 19,
36157 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMSUB_S),
36158 12, 3, 0, 1, 2,
36159 10, 13,
36160 OPC_CheckPatternPredicate, 17,
36161 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMSUB_D),
36162 13, 3, 0, 1, 2,
36163 0,
36164 104,
36165 OPC_RecordChild0,
36166 OPC_Scope, 35,
36167 OPC_MoveChild1,
36168 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36169 OPC_RecordChild0,
36170 OPC_MoveParent,
36171 OPC_RecordChild2,
36172 OPC_CheckPredicate, 40,
36173 OPC_SwitchType , 10, 12,
36174 OPC_CheckPatternPredicate, 19,
36175 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMSUB_S),
36176 12, 3, 1, 0, 2,
36177 10, 13,
36178 OPC_CheckPatternPredicate, 17,
36179 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMSUB_D),
36180 13, 3, 1, 0, 2,
36181 0,
36182 64,
36183 OPC_RecordChild1,
36184 OPC_Scope, 32,
36185 OPC_MoveChild2,
36186 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36187 OPC_RecordChild0,
36188 OPC_MoveParent,
36189 OPC_SwitchType , 10, 12,
36190 OPC_CheckPatternPredicate, 19,
36191 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMSUB_S),
36192 12, 3, 0, 1, 2,
36193 10, 13,
36194 OPC_CheckPatternPredicate, 17,
36195 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMSUB_D),
36196 13, 3, 0, 1, 2,
36197 0,
36198 27,
36199 OPC_RecordChild2,
36200 OPC_SwitchType , 10, 12,
36201 OPC_CheckPatternPredicate, 19,
36202 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMADD_S),
36203 12, 3, 0, 1, 2,
36204 10, 13,
36205 OPC_CheckPatternPredicate, 17,
36206 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMADD_D),
36207 13, 3, 0, 1, 2,
36208 0,
36209 0,
36210 0,
36211 65,
36212 OPC_MoveChild0,
36213 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36214 OPC_RecordChild0,
36215 OPC_MoveParent,
36216 OPC_RecordChild1,
36217 OPC_MoveChild2,
36218 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36219 OPC_RecordChild0,
36220 OPC_MoveParent,
36221 OPC_CheckPredicate, 40,
36222 OPC_SwitchType , 9, 116,
36223 OPC_CheckPatternPredicate1,
36224 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMADD_S),
36225 116, 3, 0, 1, 2,
36226 10, 6|128,1,
36227 OPC_CheckPatternPredicate1,
36228 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMADD_D),
36229 6|128,1, 3, 0, 1, 2,
36230 9, 120,
36231 OPC_CheckPatternPredicate0,
36232 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMADD_S),
36233 120, 3, 0, 1, 2,
36234 10, 8|128,1,
36235 OPC_CheckPatternPredicate0,
36236 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMADD_D),
36237 8|128,1, 3, 0, 1, 2,
36238 0,
36239 64,
36240 OPC_RecordChild0,
36241 OPC_MoveChild1,
36242 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36243 OPC_RecordChild0,
36244 OPC_MoveSibling2,
36245 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36246 OPC_RecordChild0,
36247 OPC_MoveParent,
36248 OPC_CheckPredicate, 40,
36249 OPC_SwitchType , 9, 116,
36250 OPC_CheckPatternPredicate1,
36251 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMADD_S),
36252 116, 3, 1, 0, 2,
36253 10, 6|128,1,
36254 OPC_CheckPatternPredicate1,
36255 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMADD_D),
36256 6|128,1, 3, 1, 0, 2,
36257 9, 120,
36258 OPC_CheckPatternPredicate0,
36259 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMADD_S),
36260 120, 3, 1, 0, 2,
36261 10, 8|128,1,
36262 OPC_CheckPatternPredicate0,
36263 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMADD_D),
36264 8|128,1, 3, 1, 0, 2,
36265 0,
36266 60,
36267 OPC_MoveChild0,
36268 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36269 OPC_RecordChild0,
36270 OPC_MoveParent,
36271 OPC_RecordChild1,
36272 OPC_RecordChild2,
36273 OPC_CheckPredicate, 40,
36274 OPC_SwitchType , 9, 116,
36275 OPC_CheckPatternPredicate1,
36276 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMSUB_S),
36277 116, 3, 0, 1, 2,
36278 10, 6|128,1,
36279 OPC_CheckPatternPredicate1,
36280 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMSUB_D),
36281 6|128,1, 3, 0, 1, 2,
36282 9, 120,
36283 OPC_CheckPatternPredicate0,
36284 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMSUB_S),
36285 120, 3, 0, 1, 2,
36286 10, 8|128,1,
36287 OPC_CheckPatternPredicate0,
36288 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMSUB_D),
36289 8|128,1, 3, 0, 1, 2,
36290 0,
36291 48|128,1,
36292 OPC_RecordChild0,
36293 OPC_Scope, 59,
36294 OPC_MoveChild1,
36295 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36296 OPC_RecordChild0,
36297 OPC_MoveParent,
36298 OPC_RecordChild2,
36299 OPC_CheckPredicate, 40,
36300 OPC_SwitchType , 9, 116,
36301 OPC_CheckPatternPredicate1,
36302 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMSUB_S),
36303 116, 3, 1, 0, 2,
36304 10, 6|128,1,
36305 OPC_CheckPatternPredicate1,
36306 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMSUB_D),
36307 6|128,1, 3, 1, 0, 2,
36308 9, 120,
36309 OPC_CheckPatternPredicate0,
36310 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMSUB_S),
36311 120, 3, 1, 0, 2,
36312 10, 8|128,1,
36313 OPC_CheckPatternPredicate0,
36314 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMSUB_D),
36315 8|128,1, 3, 1, 0, 2,
36316 0,
36317 112,
36318 OPC_RecordChild1,
36319 OPC_Scope, 56,
36320 OPC_MoveChild2,
36321 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36322 OPC_RecordChild0,
36323 OPC_MoveParent,
36324 OPC_SwitchType , 9, 116,
36325 OPC_CheckPatternPredicate1,
36326 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMSUB_S),
36327 116, 3, 0, 1, 2,
36328 10, 6|128,1,
36329 OPC_CheckPatternPredicate1,
36330 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMSUB_D),
36331 6|128,1, 3, 0, 1, 2,
36332 9, 120,
36333 OPC_CheckPatternPredicate0,
36334 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMSUB_S),
36335 120, 3, 0, 1, 2,
36336 10, 8|128,1,
36337 OPC_CheckPatternPredicate0,
36338 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMSUB_D),
36339 8|128,1, 3, 0, 1, 2,
36340 0,
36341 51,
36342 OPC_RecordChild2,
36343 OPC_SwitchType , 9, 116,
36344 OPC_CheckPatternPredicate1,
36345 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMADD_S),
36346 116, 3, 0, 1, 2,
36347 10, 6|128,1,
36348 OPC_CheckPatternPredicate1,
36349 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMADD_D),
36350 6|128,1, 3, 0, 1, 2,
36351 9, 120,
36352 OPC_CheckPatternPredicate0,
36353 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMADD_S),
36354 120, 3, 0, 1, 2,
36355 10, 8|128,1,
36356 OPC_CheckPatternPredicate0,
36357 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMADD_D),
36358 8|128,1, 3, 0, 1, 2,
36359 0,
36360 0,
36361 0,
36362 0,
36363 76|128,2, TARGET_VAL(ISD::FNEG),
36364 OPC_Scope, 71,
36365 OPC_MoveChild0,
36366 OPC_CheckOpcode, TARGET_VAL(ISD::FMA),
36367 OPC_RecordChild0,
36368 OPC_RecordChild1,
36369 OPC_Scope, 33,
36370 OPC_MoveChild2,
36371 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36372 OPC_RecordChild0,
36373 OPC_MoveParent,
36374 OPC_MoveParent,
36375 OPC_SwitchType , 10, 12,
36376 OPC_CheckPatternPredicate, 19,
36377 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMSUB_S),
36378 12, 3, 0, 1, 2,
36379 10, 13,
36380 OPC_CheckPatternPredicate, 17,
36381 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMSUB_D),
36382 13, 3, 0, 1, 2,
36383 0,
36384 28,
36385 OPC_RecordChild2,
36386 OPC_MoveParent,
36387 OPC_SwitchType , 10, 12,
36388 OPC_CheckPatternPredicate, 19,
36389 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMADD_S),
36390 12, 3, 0, 1, 2,
36391 10, 13,
36392 OPC_CheckPatternPredicate, 17,
36393 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNMADD_D),
36394 13, 3, 0, 1, 2,
36395 0,
36396 0,
36397 23,
36398 OPC_RecordChild0,
36399 OPC_SwitchType , 8, 12,
36400 OPC_CheckPatternPredicate, 19,
36401 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNEG_S),
36402 12, 1, 0,
36403 8, 13,
36404 OPC_CheckPatternPredicate, 17,
36405 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNEG_D),
36406 13, 1, 0,
36407 0,
36408 119,
36409 OPC_MoveChild0,
36410 OPC_CheckOpcode, TARGET_VAL(ISD::FMA),
36411 OPC_RecordChild0,
36412 OPC_RecordChild1,
36413 OPC_Scope, 57,
36414 OPC_MoveChild2,
36415 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
36416 OPC_RecordChild0,
36417 OPC_MoveParent,
36418 OPC_MoveParent,
36419 OPC_SwitchType , 9, 116,
36420 OPC_CheckPatternPredicate1,
36421 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMSUB_S),
36422 116, 3, 0, 1, 2,
36423 10, 6|128,1,
36424 OPC_CheckPatternPredicate1,
36425 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMSUB_D),
36426 6|128,1, 3, 0, 1, 2,
36427 9, 120,
36428 OPC_CheckPatternPredicate0,
36429 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMSUB_S),
36430 120, 3, 0, 1, 2,
36431 10, 8|128,1,
36432 OPC_CheckPatternPredicate0,
36433 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMSUB_D),
36434 8|128,1, 3, 0, 1, 2,
36435 0,
36436 52,
36437 OPC_RecordChild2,
36438 OPC_MoveParent,
36439 OPC_SwitchType , 9, 116,
36440 OPC_CheckPatternPredicate1,
36441 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMADD_S),
36442 116, 3, 0, 1, 2,
36443 10, 6|128,1,
36444 OPC_CheckPatternPredicate1,
36445 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFNMADD_D),
36446 6|128,1, 3, 0, 1, 2,
36447 9, 120,
36448 OPC_CheckPatternPredicate0,
36449 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMADD_S),
36450 120, 3, 0, 1, 2,
36451 10, 8|128,1,
36452 OPC_CheckPatternPredicate0,
36453 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFNMADD_D),
36454 8|128,1, 3, 0, 1, 2,
36455 0,
36456 0,
36457 113,
36458 OPC_RecordChild0,
36459 OPC_SwitchType , 24, 116,
36460 OPC_Scope, 10,
36461 OPC_CheckPatternPredicate2,
36462 OPC_EmitInteger64, 62,
36463 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_W),
36464 116, 2, 0, 1,
36465 10,
36466 OPC_CheckPatternPredicate4,
36467 OPC_EmitInteger32, 62,
36468 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_W),
36469 116, 2, 0, 1,
36470 0,
36471 26, 6|128,1,
36472 OPC_Scope, 11,
36473 OPC_CheckPatternPredicate2,
36474 OPC_EmitInteger64, 126,
36475 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_D),
36476 6|128,1, 2, 0, 1,
36477 11,
36478 OPC_CheckPatternPredicate4,
36479 OPC_EmitInteger32, 126,
36480 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITREVI_D),
36481 6|128,1, 2, 0, 1,
36482 0,
36483 24, 120,
36484 OPC_Scope, 10,
36485 OPC_CheckPatternPredicate3,
36486 OPC_EmitInteger64, 62,
36487 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_W),
36488 120, 2, 0, 1,
36489 10,
36490 OPC_CheckPatternPredicate5,
36491 OPC_EmitInteger32, 62,
36492 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_W),
36493 120, 2, 0, 1,
36494 0,
36495 26, 8|128,1,
36496 OPC_Scope, 11,
36497 OPC_CheckPatternPredicate3,
36498 OPC_EmitInteger64, 126,
36499 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_D),
36500 8|128,1, 2, 0, 1,
36501 11,
36502 OPC_CheckPatternPredicate5,
36503 OPC_EmitInteger32, 126,
36504 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITREVI_D),
36505 8|128,1, 2, 0, 1,
36506 0,
36507 0,
36508 0,
36509 64|128,2, TARGET_VAL(ISD::SINT_TO_FP),
36510 OPC_RecordChild0,
36511 OPC_Scope, 75,
36512 OPC_CheckChild0TypeI64,
36513 OPC_SwitchType , 35, 12,
36514 OPC_Scope, 17,
36515 OPC_CheckPatternPredicate, 30,
36516 OPC_CheckComplexPat, /*CP*/14, /*#*/0,
36517 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36518 12, 1, 1,
36519 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_S_W),
36520 12, 1, 2,
36521 14,
36522 OPC_CheckPatternPredicate, 27,
36523 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
36524 13, 1, 0,
36525 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_S_L),
36526 12, 1, 1,
36527 0,
36528 33, 13,
36529 OPC_CheckPatternPredicate, 27,
36530 OPC_Scope, 15,
36531 OPC_CheckComplexPat, /*CP*/14, /*#*/0,
36532 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36533 12, 1, 1,
36534 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_D_W),
36535 13, 1, 2,
36536 12,
36537 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
36538 13, 1, 0,
36539 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_D_L),
36540 13, 1, 1,
36541 0,
36542 0,
36543 71,
36544 OPC_CheckChild0TypeI32,
36545 OPC_SwitchType , 32, 12,
36546 OPC_Scope, 14,
36547 OPC_CheckPatternPredicate, 31,
36548 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36549 12, 1, 0,
36550 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_S_W),
36551 12, 1, 1,
36552 14,
36553 OPC_CheckPatternPredicate, 28,
36554 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
36555 13, 1, 0,
36556 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_S_L),
36557 12, 1, 1,
36558 0,
36559 32, 13,
36560 OPC_Scope, 14,
36561 OPC_CheckPatternPredicate, 28,
36562 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
36563 13, 1, 0,
36564 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_D_L),
36565 13, 1, 1,
36566 14,
36567 OPC_CheckPatternPredicate, 29,
36568 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36569 12, 1, 0,
36570 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_D_W),
36571 13, 1, 1,
36572 0,
36573 0,
36574 11,
36575 OPC_CheckChild0Type, 62,
36576 OPC_CheckType, 116,
36577 OPC_CheckPatternPredicate1,
36578 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFFINT_S_W),
36579 116, 1, 0,
36580 11,
36581 OPC_CheckType, 6|128,1,
36582 OPC_CheckPatternPredicate1,
36583 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFFINT_D_L),
36584 6|128,1, 1, 0,
36585 11,
36586 OPC_CheckType, 120,
36587 OPC_CheckChild0Type, 66,
36588 OPC_CheckPatternPredicate0,
36589 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINT_S_W),
36590 120, 1, 0,
36591 45,
36592 OPC_CheckType, 8|128,1,
36593 OPC_Scope, 10,
36594 OPC_CheckChild0Type, 83,
36595 OPC_CheckPatternPredicate0,
36596 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINT_D_L),
36597 8|128,1, 1, 0,
36598 28,
36599 OPC_CheckChild0Type, 62,
36600 OPC_CheckPatternPredicate0,
36601 OPC_EmitInteger64, 0,
36602 OPC_EmitStringInteger32, LoongArch::sub_128,
36603 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
36604 41, 3, 1, 0, 2,
36605 OPC_EmitNode1None, TARGET_VAL(LoongArch::VEXT2XV_D_W),
36606 41, 1, 3,
36607 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINT_D_L),
36608 8|128,1, 1, 4,
36609 0,
36610 86,
36611 OPC_CheckType, 116,
36612 OPC_CheckChild0Type, 83,
36613 OPC_Scope, 39,
36614 OPC_CheckPatternPredicate3,
36615 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFFINT_D_L),
36616 41, 1, 0,
36617 OPC_EmitInteger64, 92|128,3,
36618 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPERMI_D),
36619 41, 2, 1, 2,
36620 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFFINT_D_L),
36621 41, 1, 0,
36622 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFCVT_S_D),
36623 41, 2, 3, 4,
36624 OPC_EmitStringInteger32, LoongArch::sub_128,
36625 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
36626 116, 2, 5, 6,
36627 39,
36628 OPC_CheckPatternPredicate5,
36629 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFFINT_D_L),
36630 41, 1, 0,
36631 OPC_EmitInteger32, 92|128,3,
36632 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPERMI_D),
36633 41, 2, 1, 2,
36634 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFFINT_D_L),
36635 41, 1, 0,
36636 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFCVT_S_D),
36637 41, 2, 3, 4,
36638 OPC_EmitStringInteger32, LoongArch::sub_128,
36639 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
36640 116, 2, 5, 6,
36641 0,
36642 0,
36643 61|128,1, TARGET_VAL(ISD::UINT_TO_FP),
36644 OPC_RecordChild0,
36645 OPC_SwitchType , 18, 12,
36646 OPC_CheckChild0TypeI64,
36647 OPC_CheckPatternPredicate, 30,
36648 OPC_CheckComplexPat, /*CP*/14, /*#*/0,
36649 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36650 12, 1, 1,
36651 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_S_W),
36652 12, 1, 2,
36653 97, 116,
36654 OPC_Scope, 9,
36655 OPC_CheckChild0Type, 62,
36656 OPC_CheckPatternPredicate1,
36657 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFFINT_S_WU),
36658 116, 1, 0,
36659 84,
36660 OPC_CheckChild0Type, 83,
36661 OPC_Scope, 39,
36662 OPC_CheckPatternPredicate3,
36663 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFFINT_D_LU),
36664 41, 1, 0,
36665 OPC_EmitInteger64, 92|128,3,
36666 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPERMI_D),
36667 41, 2, 1, 2,
36668 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFFINT_D_LU),
36669 41, 1, 0,
36670 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFCVT_S_D),
36671 41, 2, 3, 4,
36672 OPC_EmitStringInteger32, LoongArch::sub_128,
36673 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
36674 116, 2, 5, 6,
36675 39,
36676 OPC_CheckPatternPredicate5,
36677 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFFINT_D_LU),
36678 41, 1, 0,
36679 OPC_EmitInteger32, 92|128,3,
36680 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPERMI_D),
36681 41, 2, 1, 2,
36682 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFFINT_D_LU),
36683 41, 1, 0,
36684 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFCVT_S_D),
36685 41, 2, 3, 4,
36686 OPC_EmitStringInteger32, LoongArch::sub_128,
36687 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
36688 116, 2, 5, 6,
36689 0,
36690 0,
36691 8, 6|128,1,
36692 OPC_CheckPatternPredicate1,
36693 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFFINT_D_LU),
36694 6|128,1, 1, 0,
36695 9, 120,
36696 OPC_CheckChild0Type, 66,
36697 OPC_CheckPatternPredicate0,
36698 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINT_S_WU),
36699 120, 1, 0,
36700 42, 8|128,1,
36701 OPC_Scope, 10,
36702 OPC_CheckChild0Type, 83,
36703 OPC_CheckPatternPredicate0,
36704 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINT_D_LU),
36705 8|128,1, 1, 0,
36706 28,
36707 OPC_CheckChild0Type, 62,
36708 OPC_CheckPatternPredicate0,
36709 OPC_EmitInteger64, 0,
36710 OPC_EmitStringInteger32, LoongArch::sub_128,
36711 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
36712 41, 3, 1, 0, 2,
36713 OPC_EmitNode1None, TARGET_VAL(LoongArch::VEXT2XV_DU_WU),
36714 41, 1, 3,
36715 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFFINT_D_LU),
36716 8|128,1, 1, 4,
36717 0,
36718 0,
36719 22|128,4, TARGET_VAL(ISD::ConstantFP),
36720 OPC_Scope, 56,
36721 OPC_CheckPredicate, 63,
36722 OPC_SwitchType , 24, 12,
36723 OPC_Scope, 10,
36724 OPC_CheckPatternPredicate, 11,
36725 OPC_EmitRegisterI64, LoongArch::R0,
36726 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36727 12, 1, 0,
36728 10,
36729 OPC_CheckPatternPredicate, 12,
36730 OPC_EmitRegisterI32, LoongArch::R0,
36731 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36732 12, 1, 0,
36733 0,
36734 24, 13,
36735 OPC_Scope, 10,
36736 OPC_CheckPatternPredicate, 27,
36737 OPC_EmitRegisterI64, LoongArch::R0,
36738 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
36739 13, 1, 0,
36740 10,
36741 OPC_CheckPatternPredicate, 28,
36742 OPC_EmitRegisterI32, LoongArch::R0,
36743 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
36744 13, 1, 0,
36745 0,
36746 0,
36747 80,
36748 OPC_CheckPredicate, 64,
36749 OPC_SwitchType , 36, 12,
36750 OPC_Scope, 16,
36751 OPC_CheckPatternPredicate, 11,
36752 OPC_EmitRegisterI64, LoongArch::R0,
36753 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36754 12, 1, 0,
36755 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNEG_S),
36756 12, 1, 1,
36757 16,
36758 OPC_CheckPatternPredicate, 12,
36759 OPC_EmitRegisterI32, LoongArch::R0,
36760 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36761 12, 1, 0,
36762 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNEG_S),
36763 12, 1, 1,
36764 0,
36765 36, 13,
36766 OPC_Scope, 16,
36767 OPC_CheckPatternPredicate, 27,
36768 OPC_EmitRegisterI64, LoongArch::R0,
36769 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
36770 13, 1, 0,
36771 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNEG_D),
36772 13, 1, 1,
36773 16,
36774 OPC_CheckPatternPredicate, 28,
36775 OPC_EmitRegisterI32, LoongArch::R0,
36776 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
36777 13, 1, 0,
36778 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNEG_D),
36779 13, 1, 1,
36780 0,
36781 0,
36782 46,
36783 OPC_CheckPredicate, 63,
36784 OPC_CheckType, 13,
36785 OPC_Scope, 19,
36786 OPC_CheckPatternPredicate, 32,
36787 OPC_EmitRegisterI64, LoongArch::R0,
36788 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W_64),
36789 13, 1, 0,
36790 OPC_EmitRegisterI64, LoongArch::R0,
36791 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FRH_W),
36792 13, 2, 1, 2,
36793 19,
36794 OPC_CheckPatternPredicate, 29,
36795 OPC_EmitRegisterI32, LoongArch::R0,
36796 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W_64),
36797 13, 1, 0,
36798 OPC_EmitRegisterI32, LoongArch::R0,
36799 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FRH_W),
36800 13, 2, 1, 2,
36801 0,
36802 99,
36803 OPC_RecordNode,
36804 OPC_SwitchType , 46, 12,
36805 OPC_CheckPredicate, 68,
36806 OPC_Scope, 20,
36807 OPC_CheckPatternPredicate2,
36808 OPC_EmitConvertToTarget0,
36809 OPC_EmitNodeXForm, 13, 1,
36810 OPC_EmitNode1None, TARGET_VAL(LoongArch::VLDI),
36811 40, 1, 2,
36812 OPC_EmitStringInteger32, LoongArch::sub_32,
36813 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
36814 12, 2, 3, 4,
36815 20,
36816 OPC_CheckPatternPredicate4,
36817 OPC_EmitConvertToTarget0,
36818 OPC_EmitNodeXForm, 13, 1,
36819 OPC_EmitNode1None, TARGET_VAL(LoongArch::VLDI),
36820 40, 1, 2,
36821 OPC_EmitStringInteger32, LoongArch::sub_32,
36822 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
36823 12, 2, 3, 4,
36824 0,
36825 46, 13,
36826 OPC_CheckPredicate, 69,
36827 OPC_Scope, 20,
36828 OPC_CheckPatternPredicate2,
36829 OPC_EmitConvertToTarget0,
36830 OPC_EmitNodeXForm, 14, 1,
36831 OPC_EmitNode1None, TARGET_VAL(LoongArch::VLDI),
36832 40, 1, 2,
36833 OPC_EmitStringInteger32, LoongArch::sub_64,
36834 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
36835 13, 2, 3, 4,
36836 20,
36837 OPC_CheckPatternPredicate4,
36838 OPC_EmitConvertToTarget0,
36839 OPC_EmitNodeXForm, 14, 1,
36840 OPC_EmitNode1None, TARGET_VAL(LoongArch::VLDI),
36841 40, 1, 2,
36842 OPC_EmitStringInteger32, LoongArch::sub_64,
36843 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
36844 13, 2, 3, 4,
36845 0,
36846 0,
36847 116,
36848 OPC_CheckPredicate, 56,
36849 OPC_SwitchType , 54, 12,
36850 OPC_Scope, 25,
36851 OPC_CheckPatternPredicate, 11,
36852 OPC_EmitRegisterI64, LoongArch::R0,
36853 OPC_EmitInteger64, 2,
36854 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_W),
36855 8, 2, 0, 1,
36856 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36857 12, 1, 2,
36858 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_S_W),
36859 12, 1, 3,
36860 25,
36861 OPC_CheckPatternPredicate, 12,
36862 OPC_EmitRegisterI32, LoongArch::R0,
36863 OPC_EmitInteger32, 2,
36864 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_W),
36865 7, 2, 0, 1,
36866 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36867 12, 1, 2,
36868 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_S_W),
36869 12, 1, 3,
36870 0,
36871 54, 13,
36872 OPC_Scope, 25,
36873 OPC_CheckPatternPredicate, 27,
36874 OPC_EmitRegisterI64, LoongArch::R0,
36875 OPC_EmitInteger64, 2,
36876 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_D),
36877 8, 2, 0, 1,
36878 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
36879 13, 1, 2,
36880 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_D_L),
36881 13, 1, 3,
36882 25,
36883 OPC_CheckPatternPredicate, 28,
36884 OPC_EmitRegisterI32, LoongArch::R0,
36885 OPC_EmitInteger32, 2,
36886 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_D),
36887 7, 2, 0, 1,
36888 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_D),
36889 13, 1, 2,
36890 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FFINT_D_L),
36891 13, 1, 3,
36892 0,
36893 0,
36894 58,
36895 OPC_CheckPredicate, 64,
36896 OPC_CheckType, 13,
36897 OPC_Scope, 25,
36898 OPC_CheckPatternPredicate, 32,
36899 OPC_EmitRegisterI64, LoongArch::R0,
36900 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W_64),
36901 13, 1, 0,
36902 OPC_EmitRegisterI64, LoongArch::R0,
36903 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FRH_W),
36904 13, 2, 1, 2,
36905 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNEG_D),
36906 13, 1, 3,
36907 25,
36908 OPC_CheckPatternPredicate, 29,
36909 OPC_EmitRegisterI32, LoongArch::R0,
36910 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W_64),
36911 13, 1, 0,
36912 OPC_EmitRegisterI32, LoongArch::R0,
36913 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FRH_W),
36914 13, 2, 1, 2,
36915 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FNEG_D),
36916 13, 1, 3,
36917 0,
36918 70,
36919 OPC_CheckPredicate, 56,
36920 OPC_CheckType, 13,
36921 OPC_Scope, 31,
36922 OPC_CheckPatternPredicate, 32,
36923 OPC_EmitRegisterI64, LoongArch::R0,
36924 OPC_EmitInteger64, 2,
36925 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_W),
36926 8, 2, 0, 1,
36927 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36928 12, 1, 2,
36929 OPC_EmitNode1None, TARGET_VAL(LoongArch::FFINT_S_W),
36930 12, 1, 3,
36931 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCVT_D_S),
36932 13, 1, 4,
36933 31,
36934 OPC_CheckPatternPredicate, 29,
36935 OPC_EmitRegisterI32, LoongArch::R0,
36936 OPC_EmitInteger32, 2,
36937 OPC_EmitNode1None, TARGET_VAL(LoongArch::ADDI_W),
36938 7, 2, 0, 1,
36939 OPC_EmitNode1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
36940 12, 1, 2,
36941 OPC_EmitNode1None, TARGET_VAL(LoongArch::FFINT_S_W),
36942 12, 1, 3,
36943 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCVT_D_S),
36944 13, 1, 4,
36945 0,
36946 0,
36947 70, TARGET_VAL(ISD::FADD),
36948 OPC_RecordChild0,
36949 OPC_RecordChild1,
36950 OPC_SwitchType , 9, 12,
36951 OPC_CheckPatternPredicate, 19,
36952 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FADD_S),
36953 12, 2, 0, 1,
36954 9, 13,
36955 OPC_CheckPatternPredicate, 17,
36956 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FADD_D),
36957 13, 2, 0, 1,
36958 8, 116,
36959 OPC_CheckPatternPredicate1,
36960 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFADD_S),
36961 116, 2, 0, 1,
36962 9, 6|128,1,
36963 OPC_CheckPatternPredicate1,
36964 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFADD_D),
36965 6|128,1, 2, 0, 1,
36966 8, 120,
36967 OPC_CheckPatternPredicate0,
36968 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFADD_S),
36969 120, 2, 0, 1,
36970 9, 8|128,1,
36971 OPC_CheckPatternPredicate0,
36972 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFADD_D),
36973 8|128,1, 2, 0, 1,
36974 0,
36975 70, TARGET_VAL(ISD::FSUB),
36976 OPC_RecordChild0,
36977 OPC_RecordChild1,
36978 OPC_SwitchType , 9, 12,
36979 OPC_CheckPatternPredicate, 19,
36980 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSUB_S),
36981 12, 2, 0, 1,
36982 9, 13,
36983 OPC_CheckPatternPredicate, 17,
36984 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSUB_D),
36985 13, 2, 0, 1,
36986 8, 116,
36987 OPC_CheckPatternPredicate1,
36988 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFSUB_S),
36989 116, 2, 0, 1,
36990 9, 6|128,1,
36991 OPC_CheckPatternPredicate1,
36992 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFSUB_D),
36993 6|128,1, 2, 0, 1,
36994 8, 120,
36995 OPC_CheckPatternPredicate0,
36996 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFSUB_S),
36997 120, 2, 0, 1,
36998 9, 8|128,1,
36999 OPC_CheckPatternPredicate0,
37000 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFSUB_D),
37001 8|128,1, 2, 0, 1,
37002 0,
37003 70, TARGET_VAL(ISD::FMUL),
37004 OPC_RecordChild0,
37005 OPC_RecordChild1,
37006 OPC_SwitchType , 9, 12,
37007 OPC_CheckPatternPredicate, 19,
37008 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMUL_S),
37009 12, 2, 0, 1,
37010 9, 13,
37011 OPC_CheckPatternPredicate, 17,
37012 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMUL_D),
37013 13, 2, 0, 1,
37014 8, 116,
37015 OPC_CheckPatternPredicate1,
37016 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMUL_S),
37017 116, 2, 0, 1,
37018 9, 6|128,1,
37019 OPC_CheckPatternPredicate1,
37020 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFMUL_D),
37021 6|128,1, 2, 0, 1,
37022 8, 120,
37023 OPC_CheckPatternPredicate0,
37024 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMUL_S),
37025 120, 2, 0, 1,
37026 9, 8|128,1,
37027 OPC_CheckPatternPredicate0,
37028 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFMUL_D),
37029 8|128,1, 2, 0, 1,
37030 0,
37031 70, TARGET_VAL(ISD::FCOPYSIGN),
37032 OPC_RecordChild0,
37033 OPC_RecordChild1,
37034 OPC_Scope, 32,
37035 OPC_CheckChild1Type, 12,
37036 OPC_SwitchType , 9, 12,
37037 OPC_CheckPatternPredicate, 19,
37038 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCOPYSIGN_S),
37039 12, 2, 0, 1,
37040 15, 13,
37041 OPC_CheckPatternPredicate, 17,
37042 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCVT_D_S),
37043 13, 1, 1,
37044 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCOPYSIGN_D),
37045 13, 2, 0, 2,
37046 0,
37047 32,
37048 OPC_CheckChild1Type, 13,
37049 OPC_SwitchType , 9, 13,
37050 OPC_CheckPatternPredicate, 17,
37051 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCOPYSIGN_D),
37052 13, 2, 0, 1,
37053 15, 12,
37054 OPC_CheckPatternPredicate, 17,
37055 OPC_EmitNode1None, TARGET_VAL(LoongArch::FCVT_S_D),
37056 12, 1, 1,
37057 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCOPYSIGN_S),
37058 12, 2, 0, 2,
37059 0,
37060 0,
37061 26, TARGET_VAL(ISD::FMAXNUM_IEEE),
37062 OPC_RecordChild0,
37063 OPC_RecordChild1,
37064 OPC_SwitchType , 9, 12,
37065 OPC_CheckPatternPredicate, 19,
37066 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMAX_S),
37067 12, 2, 0, 1,
37068 9, 13,
37069 OPC_CheckPatternPredicate, 17,
37070 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMAX_D),
37071 13, 2, 0, 1,
37072 0,
37073 26, TARGET_VAL(ISD::FMAXNUM),
37074 OPC_RecordChild0,
37075 OPC_RecordChild1,
37076 OPC_SwitchType , 9, 12,
37077 OPC_CheckPatternPredicate, 19,
37078 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMAX_S),
37079 12, 2, 0, 1,
37080 9, 13,
37081 OPC_CheckPatternPredicate, 17,
37082 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMAX_D),
37083 13, 2, 0, 1,
37084 0,
37085 26, TARGET_VAL(ISD::FMINNUM_IEEE),
37086 OPC_RecordChild0,
37087 OPC_RecordChild1,
37088 OPC_SwitchType , 9, 12,
37089 OPC_CheckPatternPredicate, 19,
37090 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMIN_S),
37091 12, 2, 0, 1,
37092 9, 13,
37093 OPC_CheckPatternPredicate, 17,
37094 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMIN_D),
37095 13, 2, 0, 1,
37096 0,
37097 26, TARGET_VAL(ISD::FMINNUM),
37098 OPC_RecordChild0,
37099 OPC_RecordChild1,
37100 OPC_SwitchType , 9, 12,
37101 OPC_CheckPatternPredicate, 19,
37102 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMIN_S),
37103 12, 2, 0, 1,
37104 9, 13,
37105 OPC_CheckPatternPredicate, 17,
37106 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMIN_D),
37107 13, 2, 0, 1,
37108 0,
37109 23, TARGET_VAL(ISD::FABS),
37110 OPC_RecordChild0,
37111 OPC_SwitchType , 8, 12,
37112 OPC_CheckPatternPredicate, 19,
37113 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FABS_S),
37114 12, 1, 0,
37115 8, 13,
37116 OPC_CheckPatternPredicate, 17,
37117 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FABS_D),
37118 13, 1, 0,
37119 0,
37120 63, TARGET_VAL(ISD::FSQRT),
37121 OPC_RecordChild0,
37122 OPC_SwitchType , 8, 12,
37123 OPC_CheckPatternPredicate, 19,
37124 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSQRT_S),
37125 12, 1, 0,
37126 8, 13,
37127 OPC_CheckPatternPredicate, 17,
37128 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FSQRT_D),
37129 13, 1, 0,
37130 7, 116,
37131 OPC_CheckPatternPredicate1,
37132 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFSQRT_S),
37133 116, 1, 0,
37134 8, 6|128,1,
37135 OPC_CheckPatternPredicate1,
37136 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFSQRT_D),
37137 6|128,1, 1, 0,
37138 7, 120,
37139 OPC_CheckPatternPredicate0,
37140 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFSQRT_S),
37141 120, 1, 0,
37142 8, 8|128,1,
37143 OPC_CheckPatternPredicate0,
37144 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFSQRT_D),
37145 8|128,1, 1, 0,
37146 0,
37147 25, TARGET_VAL(ISD::FCANONICALIZE),
37148 OPC_RecordChild0,
37149 OPC_SwitchType , 9, 12,
37150 OPC_CheckPatternPredicate, 19,
37151 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMAX_S),
37152 12, 2, 0, 0,
37153 9, 13,
37154 OPC_CheckPatternPredicate, 17,
37155 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FMAX_D),
37156 13, 2, 0, 0,
37157 0,
37158 53, TARGET_VAL(LoongArchISD::FTINT),
37159 OPC_RecordChild0,
37160 OPC_Scope, 24,
37161 OPC_CheckChild0Type, 12,
37162 OPC_SwitchType , 8, 12,
37163 OPC_CheckPatternPredicate, 19,
37164 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FTINTRZ_W_S),
37165 12, 1, 0,
37166 8, 13,
37167 OPC_CheckPatternPredicate, 17,
37168 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FTINTRZ_L_S),
37169 13, 1, 0,
37170 0,
37171 24,
37172 OPC_CheckChild0Type, 13,
37173 OPC_SwitchType , 8, 12,
37174 OPC_CheckPatternPredicate, 17,
37175 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FTINTRZ_W_D),
37176 12, 1, 0,
37177 8, 13,
37178 OPC_CheckPatternPredicate, 17,
37179 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FTINTRZ_L_D),
37180 13, 1, 0,
37181 0,
37182 0,
37183 71, TARGET_VAL(LoongArchISD::FRECIPE),
37184 OPC_RecordChild0,
37185 OPC_SwitchType , 10, 12,
37186 OPC_CheckChild0Type, 12,
37187 OPC_CheckPatternPredicate, 18,
37188 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRECIPE_S),
37189 12, 1, 0,
37190 10, 13,
37191 OPC_CheckChild0Type, 13,
37192 OPC_CheckPatternPredicate, 18,
37193 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRECIPE_D),
37194 13, 1, 0,
37195 8, 116,
37196 OPC_CheckPatternPredicate, 18,
37197 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRECIPE_S),
37198 116, 1, 0,
37199 9, 6|128,1,
37200 OPC_CheckPatternPredicate, 18,
37201 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRECIPE_D),
37202 6|128,1, 1, 0,
37203 8, 120,
37204 OPC_CheckPatternPredicate, 18,
37205 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRECIPE_S),
37206 120, 1, 0,
37207 9, 8|128,1,
37208 OPC_CheckPatternPredicate, 18,
37209 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRECIPE_D),
37210 8|128,1, 1, 0,
37211 0,
37212 71, TARGET_VAL(LoongArchISD::FRSQRTE),
37213 OPC_RecordChild0,
37214 OPC_SwitchType , 10, 12,
37215 OPC_CheckChild0Type, 12,
37216 OPC_CheckPatternPredicate, 18,
37217 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRSQRTE_S),
37218 12, 1, 0,
37219 10, 13,
37220 OPC_CheckChild0Type, 13,
37221 OPC_CheckPatternPredicate, 18,
37222 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRSQRTE_D),
37223 13, 1, 0,
37224 8, 116,
37225 OPC_CheckPatternPredicate, 18,
37226 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSQRTE_S),
37227 116, 1, 0,
37228 9, 6|128,1,
37229 OPC_CheckPatternPredicate, 18,
37230 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFRSQRTE_D),
37231 6|128,1, 1, 0,
37232 8, 120,
37233 OPC_CheckPatternPredicate, 18,
37234 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSQRTE_S),
37235 120, 1, 0,
37236 9, 8|128,1,
37237 OPC_CheckPatternPredicate, 18,
37238 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFRSQRTE_D),
37239 8|128,1, 1, 0,
37240 0,
37241 23, TARGET_VAL(ISD::FRINT),
37242 OPC_RecordChild0,
37243 OPC_SwitchType , 8, 12,
37244 OPC_CheckPatternPredicate, 11,
37245 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRINT_S),
37246 12, 1, 0,
37247 8, 13,
37248 OPC_CheckPatternPredicate, 13,
37249 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FRINT_D),
37250 13, 1, 0,
37251 0,
37252 11, TARGET_VAL(ISD::FP_ROUND),
37253 OPC_RecordChild0,
37254 OPC_CheckType, 12,
37255 OPC_CheckPatternPredicate, 17,
37256 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCVT_S_D),
37257 12, 1, 0,
37258 11, TARGET_VAL(ISD::FP_EXTEND),
37259 OPC_RecordChild0,
37260 OPC_CheckType, 13,
37261 OPC_CheckPatternPredicate, 17,
37262 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::FCVT_D_S),
37263 13, 1, 0,
37264 9, TARGET_VAL(LoongArchISD::MOVGR2FR_W_LA64),
37265 OPC_RecordChild0,
37266 OPC_CheckPatternPredicate, 30,
37267 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::MOVGR2FR_W),
37268 12, 1, 0,
37269 35|128,1, TARGET_VAL(ISD::FCEIL),
37270 OPC_RecordChild0,
37271 OPC_SwitchType , 78, 12,
37272 OPC_Scope, 37,
37273 OPC_CheckPatternPredicate2,
37274 OPC_EmitInteger64, 0,
37275 OPC_EmitStringInteger32, LoongArch::sub_32,
37276 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37277 40, 3, 1, 0, 2,
37278 OPC_EmitInteger64, 0,
37279 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_W),
37280 40, 2, 3, 4,
37281 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRP_S),
37282 40, 1, 5,
37283 OPC_EmitStringInteger32, LoongArch::sub_32,
37284 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37285 12, 2, 6, 7,
37286 37,
37287 OPC_CheckPatternPredicate4,
37288 OPC_EmitInteger64, 0,
37289 OPC_EmitStringInteger32, LoongArch::sub_32,
37290 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37291 40, 3, 1, 0, 2,
37292 OPC_EmitInteger32, 0,
37293 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_W),
37294 40, 2, 3, 4,
37295 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRP_S),
37296 40, 1, 5,
37297 OPC_EmitStringInteger32, LoongArch::sub_32,
37298 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37299 12, 2, 6, 7,
37300 0,
37301 78, 13,
37302 OPC_Scope, 37,
37303 OPC_CheckPatternPredicate2,
37304 OPC_EmitInteger64, 0,
37305 OPC_EmitStringInteger32, LoongArch::sub_64,
37306 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37307 40, 3, 1, 0, 2,
37308 OPC_EmitInteger64, 0,
37309 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_D),
37310 40, 2, 3, 4,
37311 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRP_D),
37312 40, 1, 5,
37313 OPC_EmitStringInteger32, LoongArch::sub_64,
37314 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37315 13, 2, 6, 7,
37316 37,
37317 OPC_CheckPatternPredicate4,
37318 OPC_EmitInteger64, 0,
37319 OPC_EmitStringInteger32, LoongArch::sub_64,
37320 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37321 40, 3, 1, 0, 2,
37322 OPC_EmitInteger32, 0,
37323 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_D),
37324 40, 2, 3, 4,
37325 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRP_D),
37326 40, 1, 5,
37327 OPC_EmitStringInteger32, LoongArch::sub_64,
37328 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37329 13, 2, 6, 7,
37330 0,
37331 0,
37332 35|128,1, TARGET_VAL(ISD::FFLOOR),
37333 OPC_RecordChild0,
37334 OPC_SwitchType , 78, 12,
37335 OPC_Scope, 37,
37336 OPC_CheckPatternPredicate2,
37337 OPC_EmitInteger64, 0,
37338 OPC_EmitStringInteger32, LoongArch::sub_32,
37339 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37340 40, 3, 1, 0, 2,
37341 OPC_EmitInteger64, 0,
37342 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_W),
37343 40, 2, 3, 4,
37344 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRM_S),
37345 40, 1, 5,
37346 OPC_EmitStringInteger32, LoongArch::sub_32,
37347 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37348 12, 2, 6, 7,
37349 37,
37350 OPC_CheckPatternPredicate4,
37351 OPC_EmitInteger64, 0,
37352 OPC_EmitStringInteger32, LoongArch::sub_32,
37353 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37354 40, 3, 1, 0, 2,
37355 OPC_EmitInteger32, 0,
37356 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_W),
37357 40, 2, 3, 4,
37358 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRM_S),
37359 40, 1, 5,
37360 OPC_EmitStringInteger32, LoongArch::sub_32,
37361 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37362 12, 2, 6, 7,
37363 0,
37364 78, 13,
37365 OPC_Scope, 37,
37366 OPC_CheckPatternPredicate2,
37367 OPC_EmitInteger64, 0,
37368 OPC_EmitStringInteger32, LoongArch::sub_64,
37369 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37370 40, 3, 1, 0, 2,
37371 OPC_EmitInteger64, 0,
37372 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_D),
37373 40, 2, 3, 4,
37374 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRM_D),
37375 40, 1, 5,
37376 OPC_EmitStringInteger32, LoongArch::sub_64,
37377 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37378 13, 2, 6, 7,
37379 37,
37380 OPC_CheckPatternPredicate4,
37381 OPC_EmitInteger64, 0,
37382 OPC_EmitStringInteger32, LoongArch::sub_64,
37383 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37384 40, 3, 1, 0, 2,
37385 OPC_EmitInteger32, 0,
37386 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_D),
37387 40, 2, 3, 4,
37388 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRM_D),
37389 40, 1, 5,
37390 OPC_EmitStringInteger32, LoongArch::sub_64,
37391 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37392 13, 2, 6, 7,
37393 0,
37394 0,
37395 35|128,1, TARGET_VAL(ISD::FTRUNC),
37396 OPC_RecordChild0,
37397 OPC_SwitchType , 78, 12,
37398 OPC_Scope, 37,
37399 OPC_CheckPatternPredicate2,
37400 OPC_EmitInteger64, 0,
37401 OPC_EmitStringInteger32, LoongArch::sub_32,
37402 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37403 40, 3, 1, 0, 2,
37404 OPC_EmitInteger64, 0,
37405 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_W),
37406 40, 2, 3, 4,
37407 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRZ_S),
37408 40, 1, 5,
37409 OPC_EmitStringInteger32, LoongArch::sub_32,
37410 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37411 12, 2, 6, 7,
37412 37,
37413 OPC_CheckPatternPredicate4,
37414 OPC_EmitInteger64, 0,
37415 OPC_EmitStringInteger32, LoongArch::sub_32,
37416 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37417 40, 3, 1, 0, 2,
37418 OPC_EmitInteger32, 0,
37419 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_W),
37420 40, 2, 3, 4,
37421 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRZ_S),
37422 40, 1, 5,
37423 OPC_EmitStringInteger32, LoongArch::sub_32,
37424 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37425 12, 2, 6, 7,
37426 0,
37427 78, 13,
37428 OPC_Scope, 37,
37429 OPC_CheckPatternPredicate2,
37430 OPC_EmitInteger64, 0,
37431 OPC_EmitStringInteger32, LoongArch::sub_64,
37432 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37433 40, 3, 1, 0, 2,
37434 OPC_EmitInteger64, 0,
37435 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_D),
37436 40, 2, 3, 4,
37437 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRZ_D),
37438 40, 1, 5,
37439 OPC_EmitStringInteger32, LoongArch::sub_64,
37440 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37441 13, 2, 6, 7,
37442 37,
37443 OPC_CheckPatternPredicate4,
37444 OPC_EmitInteger64, 0,
37445 OPC_EmitStringInteger32, LoongArch::sub_64,
37446 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37447 40, 3, 1, 0, 2,
37448 OPC_EmitInteger32, 0,
37449 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_D),
37450 40, 2, 3, 4,
37451 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRZ_D),
37452 40, 1, 5,
37453 OPC_EmitStringInteger32, LoongArch::sub_64,
37454 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37455 13, 2, 6, 7,
37456 0,
37457 0,
37458 35|128,1, TARGET_VAL(ISD::FROUNDEVEN),
37459 OPC_RecordChild0,
37460 OPC_SwitchType , 78, 12,
37461 OPC_Scope, 37,
37462 OPC_CheckPatternPredicate2,
37463 OPC_EmitInteger64, 0,
37464 OPC_EmitStringInteger32, LoongArch::sub_32,
37465 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37466 40, 3, 1, 0, 2,
37467 OPC_EmitInteger64, 0,
37468 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_W),
37469 40, 2, 3, 4,
37470 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRNE_S),
37471 40, 1, 5,
37472 OPC_EmitStringInteger32, LoongArch::sub_32,
37473 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37474 12, 2, 6, 7,
37475 37,
37476 OPC_CheckPatternPredicate4,
37477 OPC_EmitInteger64, 0,
37478 OPC_EmitStringInteger32, LoongArch::sub_32,
37479 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37480 40, 3, 1, 0, 2,
37481 OPC_EmitInteger32, 0,
37482 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_W),
37483 40, 2, 3, 4,
37484 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRNE_S),
37485 40, 1, 5,
37486 OPC_EmitStringInteger32, LoongArch::sub_32,
37487 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37488 12, 2, 6, 7,
37489 0,
37490 78, 13,
37491 OPC_Scope, 37,
37492 OPC_CheckPatternPredicate2,
37493 OPC_EmitInteger64, 0,
37494 OPC_EmitStringInteger32, LoongArch::sub_64,
37495 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37496 40, 3, 1, 0, 2,
37497 OPC_EmitInteger64, 0,
37498 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_D),
37499 40, 2, 3, 4,
37500 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRNE_D),
37501 40, 1, 5,
37502 OPC_EmitStringInteger32, LoongArch::sub_64,
37503 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37504 13, 2, 6, 7,
37505 37,
37506 OPC_CheckPatternPredicate4,
37507 OPC_EmitInteger64, 0,
37508 OPC_EmitStringInteger32, LoongArch::sub_64,
37509 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
37510 40, 3, 1, 0, 2,
37511 OPC_EmitInteger32, 0,
37512 OPC_EmitNode1None, TARGET_VAL(LoongArch::VREPLVEI_D),
37513 40, 2, 3, 4,
37514 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFRINTRNE_D),
37515 40, 1, 5,
37516 OPC_EmitStringInteger32, LoongArch::sub_64,
37517 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
37518 13, 2, 6, 7,
37519 0,
37520 0,
37521 11, TARGET_VAL(LoongArchISD::BUILD_PAIR_F64),
37522 OPC_RecordChild0,
37523 OPC_RecordChild1,
37524 OPC_CheckPatternPredicate, 29,
37525 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::BuildPairF64Pseudo),
37526 13, 2, 0, 1,
37527 58|128,14, TARGET_VAL(LoongArchISD::VLDREPL),
37528 OPC_RecordMemRef,
37529 OPC_RecordNode,
37530 OPC_Scope, 75|128,5,
37531 OPC_MoveChild1,
37532 OPC_SwitchOpcode , 96|128,2, TARGET_VAL(ISD::ADD),
37533 OPC_RecordChild0,
37534 OPC_RecordChild1,
37535 OPC_MoveChild1,
37536 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
37537 OPC_Scope, 42,
37538 OPC_CheckPredicate, 11,
37539 OPC_MoveParent,
37540 OPC_CheckPredicate3,
37541 OPC_SwitchType , 16, 8,
37542 OPC_MoveParent,
37543 OPC_CheckType, 40,
37544 OPC_CheckPatternPredicate2,
37545 OPC_CheckComplexPat0, /*#*/1,
37546 OPC_EmitMergeInputChains1_0,
37547 OPC_EmitConvertToTarget2,
37548 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37549 40, 2, 3, 4,
37550 16, 7,
37551 OPC_MoveParent,
37552 OPC_CheckType, 40,
37553 OPC_CheckPatternPredicate4,
37554 OPC_CheckComplexPat0, /*#*/1,
37555 OPC_EmitMergeInputChains1_0,
37556 OPC_EmitConvertToTarget2,
37557 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37558 40, 2, 3, 4,
37559 0,
37560 42,
37561 OPC_CheckPredicate, 48,
37562 OPC_MoveParent,
37563 OPC_CheckPredicate3,
37564 OPC_SwitchType , 16, 8,
37565 OPC_MoveParent,
37566 OPC_CheckType, 51,
37567 OPC_CheckPatternPredicate2,
37568 OPC_CheckComplexPat0, /*#*/1,
37569 OPC_EmitMergeInputChains1_0,
37570 OPC_EmitConvertToTarget2,
37571 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37572 51, 2, 3, 4,
37573 16, 7,
37574 OPC_MoveParent,
37575 OPC_CheckType, 51,
37576 OPC_CheckPatternPredicate4,
37577 OPC_CheckComplexPat0, /*#*/1,
37578 OPC_EmitMergeInputChains1_0,
37579 OPC_EmitConvertToTarget2,
37580 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37581 51, 2, 3, 4,
37582 0,
37583 42,
37584 OPC_CheckPredicate, 41,
37585 OPC_MoveParent,
37586 OPC_CheckPredicate3,
37587 OPC_SwitchType , 16, 8,
37588 OPC_MoveParent,
37589 OPC_CheckType, 62,
37590 OPC_CheckPatternPredicate2,
37591 OPC_CheckComplexPat0, /*#*/1,
37592 OPC_EmitMergeInputChains1_0,
37593 OPC_EmitConvertToTarget2,
37594 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37595 62, 2, 3, 4,
37596 16, 7,
37597 OPC_MoveParent,
37598 OPC_CheckType, 62,
37599 OPC_CheckPatternPredicate4,
37600 OPC_CheckComplexPat0, /*#*/1,
37601 OPC_EmitMergeInputChains1_0,
37602 OPC_EmitConvertToTarget2,
37603 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37604 62, 2, 3, 4,
37605 0,
37606 42,
37607 OPC_CheckPredicate, 42,
37608 OPC_MoveParent,
37609 OPC_CheckPredicate3,
37610 OPC_SwitchType , 16, 8,
37611 OPC_MoveParent,
37612 OPC_CheckType, 81,
37613 OPC_CheckPatternPredicate2,
37614 OPC_CheckComplexPat0, /*#*/1,
37615 OPC_EmitMergeInputChains1_0,
37616 OPC_EmitConvertToTarget2,
37617 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
37618 81, 2, 3, 4,
37619 16, 7,
37620 OPC_MoveParent,
37621 OPC_CheckType, 81,
37622 OPC_CheckPatternPredicate4,
37623 OPC_CheckComplexPat0, /*#*/1,
37624 OPC_EmitMergeInputChains1_0,
37625 OPC_EmitConvertToTarget2,
37626 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
37627 81, 2, 3, 4,
37628 0,
37629 42,
37630 OPC_CheckPredicate, 11,
37631 OPC_MoveParent,
37632 OPC_CheckPredicate3,
37633 OPC_SwitchType , 16, 8,
37634 OPC_MoveParent,
37635 OPC_CheckType, 41,
37636 OPC_CheckPatternPredicate3,
37637 OPC_CheckComplexPat0, /*#*/1,
37638 OPC_EmitMergeInputChains1_0,
37639 OPC_EmitConvertToTarget2,
37640 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37641 41, 2, 3, 4,
37642 16, 7,
37643 OPC_MoveParent,
37644 OPC_CheckType, 41,
37645 OPC_CheckPatternPredicate5,
37646 OPC_CheckComplexPat0, /*#*/1,
37647 OPC_EmitMergeInputChains1_0,
37648 OPC_EmitConvertToTarget2,
37649 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37650 41, 2, 3, 4,
37651 0,
37652 42,
37653 OPC_CheckPredicate, 48,
37654 OPC_MoveParent,
37655 OPC_CheckPredicate3,
37656 OPC_SwitchType , 16, 8,
37657 OPC_MoveParent,
37658 OPC_CheckType, 52,
37659 OPC_CheckPatternPredicate3,
37660 OPC_CheckComplexPat0, /*#*/1,
37661 OPC_EmitMergeInputChains1_0,
37662 OPC_EmitConvertToTarget2,
37663 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37664 52, 2, 3, 4,
37665 16, 7,
37666 OPC_MoveParent,
37667 OPC_CheckType, 52,
37668 OPC_CheckPatternPredicate5,
37669 OPC_CheckComplexPat0, /*#*/1,
37670 OPC_EmitMergeInputChains1_0,
37671 OPC_EmitConvertToTarget2,
37672 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37673 52, 2, 3, 4,
37674 0,
37675 42,
37676 OPC_CheckPredicate, 41,
37677 OPC_MoveParent,
37678 OPC_CheckPredicate3,
37679 OPC_SwitchType , 16, 8,
37680 OPC_MoveParent,
37681 OPC_CheckType, 66,
37682 OPC_CheckPatternPredicate3,
37683 OPC_CheckComplexPat0, /*#*/1,
37684 OPC_EmitMergeInputChains1_0,
37685 OPC_EmitConvertToTarget2,
37686 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37687 66, 2, 3, 4,
37688 16, 7,
37689 OPC_MoveParent,
37690 OPC_CheckType, 66,
37691 OPC_CheckPatternPredicate5,
37692 OPC_CheckComplexPat0, /*#*/1,
37693 OPC_EmitMergeInputChains1_0,
37694 OPC_EmitConvertToTarget2,
37695 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37696 66, 2, 3, 4,
37697 0,
37698 42,
37699 OPC_CheckPredicate, 42,
37700 OPC_MoveParent,
37701 OPC_CheckPredicate3,
37702 OPC_SwitchType , 16, 8,
37703 OPC_MoveParent,
37704 OPC_CheckType, 83,
37705 OPC_CheckPatternPredicate3,
37706 OPC_CheckComplexPat0, /*#*/1,
37707 OPC_EmitMergeInputChains1_0,
37708 OPC_EmitConvertToTarget2,
37709 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
37710 83, 2, 3, 4,
37711 16, 7,
37712 OPC_MoveParent,
37713 OPC_CheckType, 83,
37714 OPC_CheckPatternPredicate5,
37715 OPC_CheckComplexPat0, /*#*/1,
37716 OPC_EmitMergeInputChains1_0,
37717 OPC_EmitConvertToTarget2,
37718 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
37719 83, 2, 3, 4,
37720 0,
37721 0,
37722 96|128,2, TARGET_VAL(ISD::OR),
37723 OPC_RecordChild0,
37724 OPC_RecordChild1,
37725 OPC_MoveChild1,
37726 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
37727 OPC_Scope, 42,
37728 OPC_CheckPredicate, 11,
37729 OPC_MoveParent,
37730 OPC_CheckPredicate3,
37731 OPC_SwitchType , 16, 8,
37732 OPC_MoveParent,
37733 OPC_CheckType, 40,
37734 OPC_CheckPatternPredicate2,
37735 OPC_CheckComplexPat0, /*#*/1,
37736 OPC_EmitMergeInputChains1_0,
37737 OPC_EmitConvertToTarget2,
37738 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37739 40, 2, 3, 4,
37740 16, 7,
37741 OPC_MoveParent,
37742 OPC_CheckType, 40,
37743 OPC_CheckPatternPredicate4,
37744 OPC_CheckComplexPat0, /*#*/1,
37745 OPC_EmitMergeInputChains1_0,
37746 OPC_EmitConvertToTarget2,
37747 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37748 40, 2, 3, 4,
37749 0,
37750 42,
37751 OPC_CheckPredicate, 48,
37752 OPC_MoveParent,
37753 OPC_CheckPredicate3,
37754 OPC_SwitchType , 16, 8,
37755 OPC_MoveParent,
37756 OPC_CheckType, 51,
37757 OPC_CheckPatternPredicate2,
37758 OPC_CheckComplexPat0, /*#*/1,
37759 OPC_EmitMergeInputChains1_0,
37760 OPC_EmitConvertToTarget2,
37761 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37762 51, 2, 3, 4,
37763 16, 7,
37764 OPC_MoveParent,
37765 OPC_CheckType, 51,
37766 OPC_CheckPatternPredicate4,
37767 OPC_CheckComplexPat0, /*#*/1,
37768 OPC_EmitMergeInputChains1_0,
37769 OPC_EmitConvertToTarget2,
37770 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37771 51, 2, 3, 4,
37772 0,
37773 42,
37774 OPC_CheckPredicate, 41,
37775 OPC_MoveParent,
37776 OPC_CheckPredicate3,
37777 OPC_SwitchType , 16, 8,
37778 OPC_MoveParent,
37779 OPC_CheckType, 62,
37780 OPC_CheckPatternPredicate2,
37781 OPC_CheckComplexPat0, /*#*/1,
37782 OPC_EmitMergeInputChains1_0,
37783 OPC_EmitConvertToTarget2,
37784 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37785 62, 2, 3, 4,
37786 16, 7,
37787 OPC_MoveParent,
37788 OPC_CheckType, 62,
37789 OPC_CheckPatternPredicate4,
37790 OPC_CheckComplexPat0, /*#*/1,
37791 OPC_EmitMergeInputChains1_0,
37792 OPC_EmitConvertToTarget2,
37793 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37794 62, 2, 3, 4,
37795 0,
37796 42,
37797 OPC_CheckPredicate, 42,
37798 OPC_MoveParent,
37799 OPC_CheckPredicate3,
37800 OPC_SwitchType , 16, 8,
37801 OPC_MoveParent,
37802 OPC_CheckType, 81,
37803 OPC_CheckPatternPredicate2,
37804 OPC_CheckComplexPat0, /*#*/1,
37805 OPC_EmitMergeInputChains1_0,
37806 OPC_EmitConvertToTarget2,
37807 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
37808 81, 2, 3, 4,
37809 16, 7,
37810 OPC_MoveParent,
37811 OPC_CheckType, 81,
37812 OPC_CheckPatternPredicate4,
37813 OPC_CheckComplexPat0, /*#*/1,
37814 OPC_EmitMergeInputChains1_0,
37815 OPC_EmitConvertToTarget2,
37816 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
37817 81, 2, 3, 4,
37818 0,
37819 42,
37820 OPC_CheckPredicate, 11,
37821 OPC_MoveParent,
37822 OPC_CheckPredicate3,
37823 OPC_SwitchType , 16, 8,
37824 OPC_MoveParent,
37825 OPC_CheckType, 41,
37826 OPC_CheckPatternPredicate3,
37827 OPC_CheckComplexPat0, /*#*/1,
37828 OPC_EmitMergeInputChains1_0,
37829 OPC_EmitConvertToTarget2,
37830 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37831 41, 2, 3, 4,
37832 16, 7,
37833 OPC_MoveParent,
37834 OPC_CheckType, 41,
37835 OPC_CheckPatternPredicate5,
37836 OPC_CheckComplexPat0, /*#*/1,
37837 OPC_EmitMergeInputChains1_0,
37838 OPC_EmitConvertToTarget2,
37839 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37840 41, 2, 3, 4,
37841 0,
37842 42,
37843 OPC_CheckPredicate, 48,
37844 OPC_MoveParent,
37845 OPC_CheckPredicate3,
37846 OPC_SwitchType , 16, 8,
37847 OPC_MoveParent,
37848 OPC_CheckType, 52,
37849 OPC_CheckPatternPredicate3,
37850 OPC_CheckComplexPat0, /*#*/1,
37851 OPC_EmitMergeInputChains1_0,
37852 OPC_EmitConvertToTarget2,
37853 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37854 52, 2, 3, 4,
37855 16, 7,
37856 OPC_MoveParent,
37857 OPC_CheckType, 52,
37858 OPC_CheckPatternPredicate5,
37859 OPC_CheckComplexPat0, /*#*/1,
37860 OPC_EmitMergeInputChains1_0,
37861 OPC_EmitConvertToTarget2,
37862 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37863 52, 2, 3, 4,
37864 0,
37865 42,
37866 OPC_CheckPredicate, 41,
37867 OPC_MoveParent,
37868 OPC_CheckPredicate3,
37869 OPC_SwitchType , 16, 8,
37870 OPC_MoveParent,
37871 OPC_CheckType, 66,
37872 OPC_CheckPatternPredicate3,
37873 OPC_CheckComplexPat0, /*#*/1,
37874 OPC_EmitMergeInputChains1_0,
37875 OPC_EmitConvertToTarget2,
37876 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37877 66, 2, 3, 4,
37878 16, 7,
37879 OPC_MoveParent,
37880 OPC_CheckType, 66,
37881 OPC_CheckPatternPredicate5,
37882 OPC_CheckComplexPat0, /*#*/1,
37883 OPC_EmitMergeInputChains1_0,
37884 OPC_EmitConvertToTarget2,
37885 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37886 66, 2, 3, 4,
37887 0,
37888 42,
37889 OPC_CheckPredicate, 42,
37890 OPC_MoveParent,
37891 OPC_CheckPredicate3,
37892 OPC_SwitchType , 16, 8,
37893 OPC_MoveParent,
37894 OPC_CheckType, 83,
37895 OPC_CheckPatternPredicate3,
37896 OPC_CheckComplexPat0, /*#*/1,
37897 OPC_EmitMergeInputChains1_0,
37898 OPC_EmitConvertToTarget2,
37899 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
37900 83, 2, 3, 4,
37901 16, 7,
37902 OPC_MoveParent,
37903 OPC_CheckType, 83,
37904 OPC_CheckPatternPredicate5,
37905 OPC_CheckComplexPat0, /*#*/1,
37906 OPC_EmitMergeInputChains1_0,
37907 OPC_EmitConvertToTarget2,
37908 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
37909 83, 2, 3, 4,
37910 0,
37911 0,
37912 0,
37913 99|128,3,
37914 OPC_RecordChild1,
37915 OPC_SwitchType , 58, 40,
37916 OPC_Scope, 12,
37917 OPC_CheckPatternPredicate2,
37918 OPC_CheckComplexPat2, /*#*/1,
37919 OPC_EmitMergeInputChains1_0,
37920 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37921 40, 2, 2, 3,
37922 12,
37923 OPC_CheckPatternPredicate4,
37924 OPC_CheckComplexPat2, /*#*/1,
37925 OPC_EmitMergeInputChains1_0,
37926 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37927 40, 2, 2, 3,
37928 14,
37929 OPC_CheckPatternPredicate2,
37930 OPC_CheckComplexPat0, /*#*/1,
37931 OPC_EmitMergeInputChains1_0,
37932 OPC_EmitInteger64, 0,
37933 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37934 40, 2, 2, 3,
37935 14,
37936 OPC_CheckPatternPredicate4,
37937 OPC_CheckComplexPat0, /*#*/1,
37938 OPC_EmitMergeInputChains1_0,
37939 OPC_EmitInteger32, 0,
37940 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
37941 40, 2, 2, 3,
37942 0,
37943 58, 51,
37944 OPC_Scope, 12,
37945 OPC_CheckPatternPredicate2,
37946 OPC_CheckComplexPat2, /*#*/1,
37947 OPC_EmitMergeInputChains1_0,
37948 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37949 51, 2, 2, 3,
37950 12,
37951 OPC_CheckPatternPredicate4,
37952 OPC_CheckComplexPat2, /*#*/1,
37953 OPC_EmitMergeInputChains1_0,
37954 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37955 51, 2, 2, 3,
37956 14,
37957 OPC_CheckPatternPredicate2,
37958 OPC_CheckComplexPat0, /*#*/1,
37959 OPC_EmitMergeInputChains1_0,
37960 OPC_EmitInteger64, 0,
37961 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37962 51, 2, 2, 3,
37963 14,
37964 OPC_CheckPatternPredicate4,
37965 OPC_CheckComplexPat0, /*#*/1,
37966 OPC_EmitMergeInputChains1_0,
37967 OPC_EmitInteger32, 0,
37968 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
37969 51, 2, 2, 3,
37970 0,
37971 58, 62,
37972 OPC_Scope, 12,
37973 OPC_CheckPatternPredicate2,
37974 OPC_CheckComplexPat2, /*#*/1,
37975 OPC_EmitMergeInputChains1_0,
37976 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37977 62, 2, 2, 3,
37978 12,
37979 OPC_CheckPatternPredicate4,
37980 OPC_CheckComplexPat2, /*#*/1,
37981 OPC_EmitMergeInputChains1_0,
37982 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37983 62, 2, 2, 3,
37984 14,
37985 OPC_CheckPatternPredicate2,
37986 OPC_CheckComplexPat0, /*#*/1,
37987 OPC_EmitMergeInputChains1_0,
37988 OPC_EmitInteger64, 0,
37989 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37990 62, 2, 2, 3,
37991 14,
37992 OPC_CheckPatternPredicate4,
37993 OPC_CheckComplexPat0, /*#*/1,
37994 OPC_EmitMergeInputChains1_0,
37995 OPC_EmitInteger32, 0,
37996 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
37997 62, 2, 2, 3,
37998 0,
37999 58, 81,
38000 OPC_Scope, 12,
38001 OPC_CheckPatternPredicate2,
38002 OPC_CheckComplexPat2, /*#*/1,
38003 OPC_EmitMergeInputChains1_0,
38004 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38005 81, 2, 2, 3,
38006 12,
38007 OPC_CheckPatternPredicate4,
38008 OPC_CheckComplexPat2, /*#*/1,
38009 OPC_EmitMergeInputChains1_0,
38010 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38011 81, 2, 2, 3,
38012 14,
38013 OPC_CheckPatternPredicate2,
38014 OPC_CheckComplexPat0, /*#*/1,
38015 OPC_EmitMergeInputChains1_0,
38016 OPC_EmitInteger64, 0,
38017 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38018 81, 2, 2, 3,
38019 14,
38020 OPC_CheckPatternPredicate4,
38021 OPC_CheckComplexPat0, /*#*/1,
38022 OPC_EmitMergeInputChains1_0,
38023 OPC_EmitInteger32, 0,
38024 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38025 81, 2, 2, 3,
38026 0,
38027 58, 41,
38028 OPC_Scope, 12,
38029 OPC_CheckPatternPredicate3,
38030 OPC_CheckComplexPat2, /*#*/1,
38031 OPC_EmitMergeInputChains1_0,
38032 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
38033 41, 2, 2, 3,
38034 12,
38035 OPC_CheckPatternPredicate5,
38036 OPC_CheckComplexPat2, /*#*/1,
38037 OPC_EmitMergeInputChains1_0,
38038 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
38039 41, 2, 2, 3,
38040 14,
38041 OPC_CheckPatternPredicate3,
38042 OPC_CheckComplexPat0, /*#*/1,
38043 OPC_EmitMergeInputChains1_0,
38044 OPC_EmitInteger64, 0,
38045 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
38046 41, 2, 2, 3,
38047 14,
38048 OPC_CheckPatternPredicate5,
38049 OPC_CheckComplexPat0, /*#*/1,
38050 OPC_EmitMergeInputChains1_0,
38051 OPC_EmitInteger32, 0,
38052 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_B), 0|OPFL_Chain|OPFL_MemRefs,
38053 41, 2, 2, 3,
38054 0,
38055 58, 52,
38056 OPC_Scope, 12,
38057 OPC_CheckPatternPredicate3,
38058 OPC_CheckComplexPat2, /*#*/1,
38059 OPC_EmitMergeInputChains1_0,
38060 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
38061 52, 2, 2, 3,
38062 12,
38063 OPC_CheckPatternPredicate5,
38064 OPC_CheckComplexPat2, /*#*/1,
38065 OPC_EmitMergeInputChains1_0,
38066 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
38067 52, 2, 2, 3,
38068 14,
38069 OPC_CheckPatternPredicate3,
38070 OPC_CheckComplexPat0, /*#*/1,
38071 OPC_EmitMergeInputChains1_0,
38072 OPC_EmitInteger64, 0,
38073 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
38074 52, 2, 2, 3,
38075 14,
38076 OPC_CheckPatternPredicate5,
38077 OPC_CheckComplexPat0, /*#*/1,
38078 OPC_EmitMergeInputChains1_0,
38079 OPC_EmitInteger32, 0,
38080 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_H), 0|OPFL_Chain|OPFL_MemRefs,
38081 52, 2, 2, 3,
38082 0,
38083 58, 66,
38084 OPC_Scope, 12,
38085 OPC_CheckPatternPredicate3,
38086 OPC_CheckComplexPat2, /*#*/1,
38087 OPC_EmitMergeInputChains1_0,
38088 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38089 66, 2, 2, 3,
38090 12,
38091 OPC_CheckPatternPredicate5,
38092 OPC_CheckComplexPat2, /*#*/1,
38093 OPC_EmitMergeInputChains1_0,
38094 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38095 66, 2, 2, 3,
38096 14,
38097 OPC_CheckPatternPredicate3,
38098 OPC_CheckComplexPat0, /*#*/1,
38099 OPC_EmitMergeInputChains1_0,
38100 OPC_EmitInteger64, 0,
38101 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38102 66, 2, 2, 3,
38103 14,
38104 OPC_CheckPatternPredicate5,
38105 OPC_CheckComplexPat0, /*#*/1,
38106 OPC_EmitMergeInputChains1_0,
38107 OPC_EmitInteger32, 0,
38108 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38109 66, 2, 2, 3,
38110 0,
38111 58, 83,
38112 OPC_Scope, 12,
38113 OPC_CheckPatternPredicate3,
38114 OPC_CheckComplexPat2, /*#*/1,
38115 OPC_EmitMergeInputChains1_0,
38116 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38117 83, 2, 2, 3,
38118 12,
38119 OPC_CheckPatternPredicate5,
38120 OPC_CheckComplexPat2, /*#*/1,
38121 OPC_EmitMergeInputChains1_0,
38122 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38123 83, 2, 2, 3,
38124 14,
38125 OPC_CheckPatternPredicate3,
38126 OPC_CheckComplexPat0, /*#*/1,
38127 OPC_EmitMergeInputChains1_0,
38128 OPC_EmitInteger64, 0,
38129 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38130 83, 2, 2, 3,
38131 14,
38132 OPC_CheckPatternPredicate5,
38133 OPC_CheckComplexPat0, /*#*/1,
38134 OPC_EmitMergeInputChains1_0,
38135 OPC_EmitInteger32, 0,
38136 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38137 83, 2, 2, 3,
38138 0,
38139 0,
38140 3|128,3,
38141 OPC_MoveChild1,
38142 OPC_SwitchOpcode , 60|128,1, TARGET_VAL(ISD::ADD),
38143 OPC_RecordChild0,
38144 OPC_RecordChild1,
38145 OPC_MoveChild1,
38146 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
38147 OPC_Scope, 42,
38148 OPC_CheckPredicate, 41,
38149 OPC_MoveParent,
38150 OPC_CheckPredicate3,
38151 OPC_SwitchType , 16, 8,
38152 OPC_MoveParent,
38153 OPC_CheckType, 116,
38154 OPC_CheckPatternPredicate2,
38155 OPC_CheckComplexPat0, /*#*/1,
38156 OPC_EmitMergeInputChains1_0,
38157 OPC_EmitConvertToTarget2,
38158 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38159 116, 2, 3, 4,
38160 16, 7,
38161 OPC_MoveParent,
38162 OPC_CheckType, 116,
38163 OPC_CheckPatternPredicate4,
38164 OPC_CheckComplexPat0, /*#*/1,
38165 OPC_EmitMergeInputChains1_0,
38166 OPC_EmitConvertToTarget2,
38167 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38168 116, 2, 3, 4,
38169 0,
38170 46,
38171 OPC_CheckPredicate, 42,
38172 OPC_MoveParent,
38173 OPC_CheckPredicate3,
38174 OPC_SwitchType , 18, 8,
38175 OPC_MoveParent,
38176 OPC_CheckType, 6|128,1,
38177 OPC_CheckPatternPredicate2,
38178 OPC_CheckComplexPat0, /*#*/1,
38179 OPC_EmitMergeInputChains1_0,
38180 OPC_EmitConvertToTarget2,
38181 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38182 6|128,1, 2, 3, 4,
38183 18, 7,
38184 OPC_MoveParent,
38185 OPC_CheckType, 6|128,1,
38186 OPC_CheckPatternPredicate4,
38187 OPC_CheckComplexPat0, /*#*/1,
38188 OPC_EmitMergeInputChains1_0,
38189 OPC_EmitConvertToTarget2,
38190 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38191 6|128,1, 2, 3, 4,
38192 0,
38193 42,
38194 OPC_CheckPredicate, 41,
38195 OPC_MoveParent,
38196 OPC_CheckPredicate3,
38197 OPC_SwitchType , 16, 8,
38198 OPC_MoveParent,
38199 OPC_CheckType, 120,
38200 OPC_CheckPatternPredicate3,
38201 OPC_CheckComplexPat0, /*#*/1,
38202 OPC_EmitMergeInputChains1_0,
38203 OPC_EmitConvertToTarget2,
38204 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38205 120, 2, 3, 4,
38206 16, 7,
38207 OPC_MoveParent,
38208 OPC_CheckType, 120,
38209 OPC_CheckPatternPredicate5,
38210 OPC_CheckComplexPat0, /*#*/1,
38211 OPC_EmitMergeInputChains1_0,
38212 OPC_EmitConvertToTarget2,
38213 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38214 120, 2, 3, 4,
38215 0,
38216 46,
38217 OPC_CheckPredicate, 42,
38218 OPC_MoveParent,
38219 OPC_CheckPredicate3,
38220 OPC_SwitchType , 18, 8,
38221 OPC_MoveParent,
38222 OPC_CheckType, 8|128,1,
38223 OPC_CheckPatternPredicate3,
38224 OPC_CheckComplexPat0, /*#*/1,
38225 OPC_EmitMergeInputChains1_0,
38226 OPC_EmitConvertToTarget2,
38227 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38228 8|128,1, 2, 3, 4,
38229 18, 7,
38230 OPC_MoveParent,
38231 OPC_CheckType, 8|128,1,
38232 OPC_CheckPatternPredicate5,
38233 OPC_CheckComplexPat0, /*#*/1,
38234 OPC_EmitMergeInputChains1_0,
38235 OPC_EmitConvertToTarget2,
38236 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38237 8|128,1, 2, 3, 4,
38238 0,
38239 0,
38240 60|128,1, TARGET_VAL(ISD::OR),
38241 OPC_RecordChild0,
38242 OPC_RecordChild1,
38243 OPC_MoveChild1,
38244 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
38245 OPC_Scope, 42,
38246 OPC_CheckPredicate, 41,
38247 OPC_MoveParent,
38248 OPC_CheckPredicate3,
38249 OPC_SwitchType , 16, 8,
38250 OPC_MoveParent,
38251 OPC_CheckType, 116,
38252 OPC_CheckPatternPredicate2,
38253 OPC_CheckComplexPat0, /*#*/1,
38254 OPC_EmitMergeInputChains1_0,
38255 OPC_EmitConvertToTarget2,
38256 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38257 116, 2, 3, 4,
38258 16, 7,
38259 OPC_MoveParent,
38260 OPC_CheckType, 116,
38261 OPC_CheckPatternPredicate4,
38262 OPC_CheckComplexPat0, /*#*/1,
38263 OPC_EmitMergeInputChains1_0,
38264 OPC_EmitConvertToTarget2,
38265 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38266 116, 2, 3, 4,
38267 0,
38268 46,
38269 OPC_CheckPredicate, 42,
38270 OPC_MoveParent,
38271 OPC_CheckPredicate3,
38272 OPC_SwitchType , 18, 8,
38273 OPC_MoveParent,
38274 OPC_CheckType, 6|128,1,
38275 OPC_CheckPatternPredicate2,
38276 OPC_CheckComplexPat0, /*#*/1,
38277 OPC_EmitMergeInputChains1_0,
38278 OPC_EmitConvertToTarget2,
38279 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38280 6|128,1, 2, 3, 4,
38281 18, 7,
38282 OPC_MoveParent,
38283 OPC_CheckType, 6|128,1,
38284 OPC_CheckPatternPredicate4,
38285 OPC_CheckComplexPat0, /*#*/1,
38286 OPC_EmitMergeInputChains1_0,
38287 OPC_EmitConvertToTarget2,
38288 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38289 6|128,1, 2, 3, 4,
38290 0,
38291 42,
38292 OPC_CheckPredicate, 41,
38293 OPC_MoveParent,
38294 OPC_CheckPredicate3,
38295 OPC_SwitchType , 16, 8,
38296 OPC_MoveParent,
38297 OPC_CheckType, 120,
38298 OPC_CheckPatternPredicate3,
38299 OPC_CheckComplexPat0, /*#*/1,
38300 OPC_EmitMergeInputChains1_0,
38301 OPC_EmitConvertToTarget2,
38302 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38303 120, 2, 3, 4,
38304 16, 7,
38305 OPC_MoveParent,
38306 OPC_CheckType, 120,
38307 OPC_CheckPatternPredicate5,
38308 OPC_CheckComplexPat0, /*#*/1,
38309 OPC_EmitMergeInputChains1_0,
38310 OPC_EmitConvertToTarget2,
38311 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38312 120, 2, 3, 4,
38313 0,
38314 46,
38315 OPC_CheckPredicate, 42,
38316 OPC_MoveParent,
38317 OPC_CheckPredicate3,
38318 OPC_SwitchType , 18, 8,
38319 OPC_MoveParent,
38320 OPC_CheckType, 8|128,1,
38321 OPC_CheckPatternPredicate3,
38322 OPC_CheckComplexPat0, /*#*/1,
38323 OPC_EmitMergeInputChains1_0,
38324 OPC_EmitConvertToTarget2,
38325 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38326 8|128,1, 2, 3, 4,
38327 18, 7,
38328 OPC_MoveParent,
38329 OPC_CheckType, 8|128,1,
38330 OPC_CheckPatternPredicate5,
38331 OPC_CheckComplexPat0, /*#*/1,
38332 OPC_EmitMergeInputChains1_0,
38333 OPC_EmitConvertToTarget2,
38334 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38335 8|128,1, 2, 3, 4,
38336 0,
38337 0,
38338 0,
38339 125|128,1,
38340 OPC_RecordChild1,
38341 OPC_SwitchType , 58, 116,
38342 OPC_Scope, 12,
38343 OPC_CheckPatternPredicate2,
38344 OPC_CheckComplexPat2, /*#*/1,
38345 OPC_EmitMergeInputChains1_0,
38346 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38347 116, 2, 2, 3,
38348 12,
38349 OPC_CheckPatternPredicate4,
38350 OPC_CheckComplexPat2, /*#*/1,
38351 OPC_EmitMergeInputChains1_0,
38352 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38353 116, 2, 2, 3,
38354 14,
38355 OPC_CheckPatternPredicate2,
38356 OPC_CheckComplexPat0, /*#*/1,
38357 OPC_EmitMergeInputChains1_0,
38358 OPC_EmitInteger64, 0,
38359 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38360 116, 2, 2, 3,
38361 14,
38362 OPC_CheckPatternPredicate4,
38363 OPC_CheckComplexPat0, /*#*/1,
38364 OPC_EmitMergeInputChains1_0,
38365 OPC_EmitInteger32, 0,
38366 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38367 116, 2, 2, 3,
38368 0,
38369 62, 6|128,1,
38370 OPC_Scope, 13,
38371 OPC_CheckPatternPredicate2,
38372 OPC_CheckComplexPat2, /*#*/1,
38373 OPC_EmitMergeInputChains1_0,
38374 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38375 6|128,1, 2, 2, 3,
38376 13,
38377 OPC_CheckPatternPredicate4,
38378 OPC_CheckComplexPat2, /*#*/1,
38379 OPC_EmitMergeInputChains1_0,
38380 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38381 6|128,1, 2, 2, 3,
38382 15,
38383 OPC_CheckPatternPredicate2,
38384 OPC_CheckComplexPat0, /*#*/1,
38385 OPC_EmitMergeInputChains1_0,
38386 OPC_EmitInteger64, 0,
38387 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38388 6|128,1, 2, 2, 3,
38389 15,
38390 OPC_CheckPatternPredicate4,
38391 OPC_CheckComplexPat0, /*#*/1,
38392 OPC_EmitMergeInputChains1_0,
38393 OPC_EmitInteger32, 0,
38394 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::VLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38395 6|128,1, 2, 2, 3,
38396 0,
38397 58, 120,
38398 OPC_Scope, 12,
38399 OPC_CheckPatternPredicate3,
38400 OPC_CheckComplexPat2, /*#*/1,
38401 OPC_EmitMergeInputChains1_0,
38402 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38403 120, 2, 2, 3,
38404 12,
38405 OPC_CheckPatternPredicate5,
38406 OPC_CheckComplexPat2, /*#*/1,
38407 OPC_EmitMergeInputChains1_0,
38408 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38409 120, 2, 2, 3,
38410 14,
38411 OPC_CheckPatternPredicate3,
38412 OPC_CheckComplexPat0, /*#*/1,
38413 OPC_EmitMergeInputChains1_0,
38414 OPC_EmitInteger64, 0,
38415 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38416 120, 2, 2, 3,
38417 14,
38418 OPC_CheckPatternPredicate5,
38419 OPC_CheckComplexPat0, /*#*/1,
38420 OPC_EmitMergeInputChains1_0,
38421 OPC_EmitInteger32, 0,
38422 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_W), 0|OPFL_Chain|OPFL_MemRefs,
38423 120, 2, 2, 3,
38424 0,
38425 62, 8|128,1,
38426 OPC_Scope, 13,
38427 OPC_CheckPatternPredicate3,
38428 OPC_CheckComplexPat2, /*#*/1,
38429 OPC_EmitMergeInputChains1_0,
38430 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38431 8|128,1, 2, 2, 3,
38432 13,
38433 OPC_CheckPatternPredicate5,
38434 OPC_CheckComplexPat2, /*#*/1,
38435 OPC_EmitMergeInputChains1_0,
38436 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38437 8|128,1, 2, 2, 3,
38438 15,
38439 OPC_CheckPatternPredicate3,
38440 OPC_CheckComplexPat0, /*#*/1,
38441 OPC_EmitMergeInputChains1_0,
38442 OPC_EmitInteger64, 0,
38443 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38444 8|128,1, 2, 2, 3,
38445 15,
38446 OPC_CheckPatternPredicate5,
38447 OPC_CheckComplexPat0, /*#*/1,
38448 OPC_EmitMergeInputChains1_0,
38449 OPC_EmitInteger32, 0,
38450 OPC_MorphNodeTo1, TARGET_VAL(LoongArch::XVLDREPL_D), 0|OPFL_Chain|OPFL_MemRefs,
38451 8|128,1, 2, 2, 3,
38452 0,
38453 0,
38454 0,
38455 76|128,3, TARGET_VAL(ISD::SMAX),
38456 OPC_RecordChild0,
38457 OPC_RecordChild1,
38458 OPC_SwitchType , 55, 40,
38459 OPC_Scope, 10,
38460 OPC_CheckPatternPredicate2,
38461 OPC_CheckComplexPat4, /*#*/1,
38462 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_B),
38463 40, 2, 0, 2,
38464 10,
38465 OPC_CheckPatternPredicate4,
38466 OPC_CheckComplexPat4, /*#*/1,
38467 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_B),
38468 40, 2, 0, 2,
38469 10,
38470 OPC_CheckPatternPredicate2,
38471 OPC_CheckComplexPat4, /*#*/0,
38472 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_B),
38473 40, 2, 1, 2,
38474 10,
38475 OPC_CheckPatternPredicate4,
38476 OPC_CheckComplexPat4, /*#*/0,
38477 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_B),
38478 40, 2, 1, 2,
38479 8,
38480 OPC_CheckPatternPredicate1,
38481 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAX_B),
38482 40, 2, 0, 1,
38483 0,
38484 55, 51,
38485 OPC_Scope, 10,
38486 OPC_CheckPatternPredicate2,
38487 OPC_CheckComplexPat4, /*#*/1,
38488 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_H),
38489 51, 2, 0, 2,
38490 10,
38491 OPC_CheckPatternPredicate4,
38492 OPC_CheckComplexPat4, /*#*/1,
38493 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_H),
38494 51, 2, 0, 2,
38495 10,
38496 OPC_CheckPatternPredicate2,
38497 OPC_CheckComplexPat4, /*#*/0,
38498 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_H),
38499 51, 2, 1, 2,
38500 10,
38501 OPC_CheckPatternPredicate4,
38502 OPC_CheckComplexPat4, /*#*/0,
38503 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_H),
38504 51, 2, 1, 2,
38505 8,
38506 OPC_CheckPatternPredicate1,
38507 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAX_H),
38508 51, 2, 0, 1,
38509 0,
38510 55, 62,
38511 OPC_Scope, 10,
38512 OPC_CheckPatternPredicate2,
38513 OPC_CheckComplexPat4, /*#*/1,
38514 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_W),
38515 62, 2, 0, 2,
38516 10,
38517 OPC_CheckPatternPredicate4,
38518 OPC_CheckComplexPat4, /*#*/1,
38519 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_W),
38520 62, 2, 0, 2,
38521 10,
38522 OPC_CheckPatternPredicate2,
38523 OPC_CheckComplexPat4, /*#*/0,
38524 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_W),
38525 62, 2, 1, 2,
38526 10,
38527 OPC_CheckPatternPredicate4,
38528 OPC_CheckComplexPat4, /*#*/0,
38529 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_W),
38530 62, 2, 1, 2,
38531 8,
38532 OPC_CheckPatternPredicate1,
38533 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAX_W),
38534 62, 2, 0, 1,
38535 0,
38536 55, 81,
38537 OPC_Scope, 10,
38538 OPC_CheckPatternPredicate2,
38539 OPC_CheckComplexPat4, /*#*/1,
38540 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_D),
38541 81, 2, 0, 2,
38542 10,
38543 OPC_CheckPatternPredicate4,
38544 OPC_CheckComplexPat4, /*#*/1,
38545 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_D),
38546 81, 2, 0, 2,
38547 10,
38548 OPC_CheckPatternPredicate2,
38549 OPC_CheckComplexPat4, /*#*/0,
38550 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_D),
38551 81, 2, 1, 2,
38552 10,
38553 OPC_CheckPatternPredicate4,
38554 OPC_CheckComplexPat4, /*#*/0,
38555 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_D),
38556 81, 2, 1, 2,
38557 8,
38558 OPC_CheckPatternPredicate1,
38559 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAX_D),
38560 81, 2, 0, 1,
38561 0,
38562 55, 41,
38563 OPC_Scope, 10,
38564 OPC_CheckPatternPredicate3,
38565 OPC_CheckComplexPat4, /*#*/1,
38566 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_B),
38567 41, 2, 0, 2,
38568 10,
38569 OPC_CheckPatternPredicate5,
38570 OPC_CheckComplexPat4, /*#*/1,
38571 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_B),
38572 41, 2, 0, 2,
38573 10,
38574 OPC_CheckPatternPredicate3,
38575 OPC_CheckComplexPat4, /*#*/0,
38576 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_B),
38577 41, 2, 1, 2,
38578 10,
38579 OPC_CheckPatternPredicate5,
38580 OPC_CheckComplexPat4, /*#*/0,
38581 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_B),
38582 41, 2, 1, 2,
38583 8,
38584 OPC_CheckPatternPredicate0,
38585 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAX_B),
38586 41, 2, 0, 1,
38587 0,
38588 55, 52,
38589 OPC_Scope, 10,
38590 OPC_CheckPatternPredicate3,
38591 OPC_CheckComplexPat4, /*#*/1,
38592 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_H),
38593 52, 2, 0, 2,
38594 10,
38595 OPC_CheckPatternPredicate5,
38596 OPC_CheckComplexPat4, /*#*/1,
38597 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_H),
38598 52, 2, 0, 2,
38599 10,
38600 OPC_CheckPatternPredicate3,
38601 OPC_CheckComplexPat4, /*#*/0,
38602 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_H),
38603 52, 2, 1, 2,
38604 10,
38605 OPC_CheckPatternPredicate5,
38606 OPC_CheckComplexPat4, /*#*/0,
38607 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_H),
38608 52, 2, 1, 2,
38609 8,
38610 OPC_CheckPatternPredicate0,
38611 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAX_H),
38612 52, 2, 0, 1,
38613 0,
38614 55, 66,
38615 OPC_Scope, 10,
38616 OPC_CheckPatternPredicate3,
38617 OPC_CheckComplexPat4, /*#*/1,
38618 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_W),
38619 66, 2, 0, 2,
38620 10,
38621 OPC_CheckPatternPredicate5,
38622 OPC_CheckComplexPat4, /*#*/1,
38623 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_W),
38624 66, 2, 0, 2,
38625 10,
38626 OPC_CheckPatternPredicate3,
38627 OPC_CheckComplexPat4, /*#*/0,
38628 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_W),
38629 66, 2, 1, 2,
38630 10,
38631 OPC_CheckPatternPredicate5,
38632 OPC_CheckComplexPat4, /*#*/0,
38633 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_W),
38634 66, 2, 1, 2,
38635 8,
38636 OPC_CheckPatternPredicate0,
38637 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAX_W),
38638 66, 2, 0, 1,
38639 0,
38640 55, 83,
38641 OPC_Scope, 10,
38642 OPC_CheckPatternPredicate3,
38643 OPC_CheckComplexPat4, /*#*/1,
38644 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_D),
38645 83, 2, 0, 2,
38646 10,
38647 OPC_CheckPatternPredicate5,
38648 OPC_CheckComplexPat4, /*#*/1,
38649 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_D),
38650 83, 2, 0, 2,
38651 10,
38652 OPC_CheckPatternPredicate3,
38653 OPC_CheckComplexPat4, /*#*/0,
38654 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_D),
38655 83, 2, 1, 2,
38656 10,
38657 OPC_CheckPatternPredicate5,
38658 OPC_CheckComplexPat4, /*#*/0,
38659 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_D),
38660 83, 2, 1, 2,
38661 8,
38662 OPC_CheckPatternPredicate0,
38663 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAX_D),
38664 83, 2, 0, 1,
38665 0,
38666 0,
38667 76|128,3, TARGET_VAL(ISD::SMIN),
38668 OPC_RecordChild0,
38669 OPC_RecordChild1,
38670 OPC_SwitchType , 55, 40,
38671 OPC_Scope, 10,
38672 OPC_CheckPatternPredicate2,
38673 OPC_CheckComplexPat4, /*#*/1,
38674 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_B),
38675 40, 2, 0, 2,
38676 10,
38677 OPC_CheckPatternPredicate4,
38678 OPC_CheckComplexPat4, /*#*/1,
38679 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_B),
38680 40, 2, 0, 2,
38681 10,
38682 OPC_CheckPatternPredicate2,
38683 OPC_CheckComplexPat4, /*#*/0,
38684 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_B),
38685 40, 2, 1, 2,
38686 10,
38687 OPC_CheckPatternPredicate4,
38688 OPC_CheckComplexPat4, /*#*/0,
38689 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_B),
38690 40, 2, 1, 2,
38691 8,
38692 OPC_CheckPatternPredicate1,
38693 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMIN_B),
38694 40, 2, 0, 1,
38695 0,
38696 55, 51,
38697 OPC_Scope, 10,
38698 OPC_CheckPatternPredicate2,
38699 OPC_CheckComplexPat4, /*#*/1,
38700 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_H),
38701 51, 2, 0, 2,
38702 10,
38703 OPC_CheckPatternPredicate4,
38704 OPC_CheckComplexPat4, /*#*/1,
38705 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_H),
38706 51, 2, 0, 2,
38707 10,
38708 OPC_CheckPatternPredicate2,
38709 OPC_CheckComplexPat4, /*#*/0,
38710 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_H),
38711 51, 2, 1, 2,
38712 10,
38713 OPC_CheckPatternPredicate4,
38714 OPC_CheckComplexPat4, /*#*/0,
38715 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_H),
38716 51, 2, 1, 2,
38717 8,
38718 OPC_CheckPatternPredicate1,
38719 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMIN_H),
38720 51, 2, 0, 1,
38721 0,
38722 55, 62,
38723 OPC_Scope, 10,
38724 OPC_CheckPatternPredicate2,
38725 OPC_CheckComplexPat4, /*#*/1,
38726 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_W),
38727 62, 2, 0, 2,
38728 10,
38729 OPC_CheckPatternPredicate4,
38730 OPC_CheckComplexPat4, /*#*/1,
38731 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_W),
38732 62, 2, 0, 2,
38733 10,
38734 OPC_CheckPatternPredicate2,
38735 OPC_CheckComplexPat4, /*#*/0,
38736 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_W),
38737 62, 2, 1, 2,
38738 10,
38739 OPC_CheckPatternPredicate4,
38740 OPC_CheckComplexPat4, /*#*/0,
38741 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_W),
38742 62, 2, 1, 2,
38743 8,
38744 OPC_CheckPatternPredicate1,
38745 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMIN_W),
38746 62, 2, 0, 1,
38747 0,
38748 55, 81,
38749 OPC_Scope, 10,
38750 OPC_CheckPatternPredicate2,
38751 OPC_CheckComplexPat4, /*#*/1,
38752 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_D),
38753 81, 2, 0, 2,
38754 10,
38755 OPC_CheckPatternPredicate4,
38756 OPC_CheckComplexPat4, /*#*/1,
38757 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_D),
38758 81, 2, 0, 2,
38759 10,
38760 OPC_CheckPatternPredicate2,
38761 OPC_CheckComplexPat4, /*#*/0,
38762 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_D),
38763 81, 2, 1, 2,
38764 10,
38765 OPC_CheckPatternPredicate4,
38766 OPC_CheckComplexPat4, /*#*/0,
38767 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_D),
38768 81, 2, 1, 2,
38769 8,
38770 OPC_CheckPatternPredicate1,
38771 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMIN_D),
38772 81, 2, 0, 1,
38773 0,
38774 55, 41,
38775 OPC_Scope, 10,
38776 OPC_CheckPatternPredicate3,
38777 OPC_CheckComplexPat4, /*#*/1,
38778 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_B),
38779 41, 2, 0, 2,
38780 10,
38781 OPC_CheckPatternPredicate5,
38782 OPC_CheckComplexPat4, /*#*/1,
38783 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_B),
38784 41, 2, 0, 2,
38785 10,
38786 OPC_CheckPatternPredicate3,
38787 OPC_CheckComplexPat4, /*#*/0,
38788 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_B),
38789 41, 2, 1, 2,
38790 10,
38791 OPC_CheckPatternPredicate5,
38792 OPC_CheckComplexPat4, /*#*/0,
38793 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_B),
38794 41, 2, 1, 2,
38795 8,
38796 OPC_CheckPatternPredicate0,
38797 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMIN_B),
38798 41, 2, 0, 1,
38799 0,
38800 55, 52,
38801 OPC_Scope, 10,
38802 OPC_CheckPatternPredicate3,
38803 OPC_CheckComplexPat4, /*#*/1,
38804 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_H),
38805 52, 2, 0, 2,
38806 10,
38807 OPC_CheckPatternPredicate5,
38808 OPC_CheckComplexPat4, /*#*/1,
38809 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_H),
38810 52, 2, 0, 2,
38811 10,
38812 OPC_CheckPatternPredicate3,
38813 OPC_CheckComplexPat4, /*#*/0,
38814 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_H),
38815 52, 2, 1, 2,
38816 10,
38817 OPC_CheckPatternPredicate5,
38818 OPC_CheckComplexPat4, /*#*/0,
38819 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_H),
38820 52, 2, 1, 2,
38821 8,
38822 OPC_CheckPatternPredicate0,
38823 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMIN_H),
38824 52, 2, 0, 1,
38825 0,
38826 55, 66,
38827 OPC_Scope, 10,
38828 OPC_CheckPatternPredicate3,
38829 OPC_CheckComplexPat4, /*#*/1,
38830 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_W),
38831 66, 2, 0, 2,
38832 10,
38833 OPC_CheckPatternPredicate5,
38834 OPC_CheckComplexPat4, /*#*/1,
38835 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_W),
38836 66, 2, 0, 2,
38837 10,
38838 OPC_CheckPatternPredicate3,
38839 OPC_CheckComplexPat4, /*#*/0,
38840 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_W),
38841 66, 2, 1, 2,
38842 10,
38843 OPC_CheckPatternPredicate5,
38844 OPC_CheckComplexPat4, /*#*/0,
38845 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_W),
38846 66, 2, 1, 2,
38847 8,
38848 OPC_CheckPatternPredicate0,
38849 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMIN_W),
38850 66, 2, 0, 1,
38851 0,
38852 55, 83,
38853 OPC_Scope, 10,
38854 OPC_CheckPatternPredicate3,
38855 OPC_CheckComplexPat4, /*#*/1,
38856 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_D),
38857 83, 2, 0, 2,
38858 10,
38859 OPC_CheckPatternPredicate5,
38860 OPC_CheckComplexPat4, /*#*/1,
38861 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_D),
38862 83, 2, 0, 2,
38863 10,
38864 OPC_CheckPatternPredicate3,
38865 OPC_CheckComplexPat4, /*#*/0,
38866 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_D),
38867 83, 2, 1, 2,
38868 10,
38869 OPC_CheckPatternPredicate5,
38870 OPC_CheckComplexPat4, /*#*/0,
38871 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_D),
38872 83, 2, 1, 2,
38873 8,
38874 OPC_CheckPatternPredicate0,
38875 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMIN_D),
38876 83, 2, 0, 1,
38877 0,
38878 0,
38879 76|128,3, TARGET_VAL(ISD::UMAX),
38880 OPC_RecordChild0,
38881 OPC_RecordChild1,
38882 OPC_SwitchType , 55, 40,
38883 OPC_Scope, 10,
38884 OPC_CheckPatternPredicate2,
38885 OPC_CheckComplexPat1, /*#*/1,
38886 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_BU),
38887 40, 2, 0, 2,
38888 10,
38889 OPC_CheckPatternPredicate4,
38890 OPC_CheckComplexPat1, /*#*/1,
38891 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_BU),
38892 40, 2, 0, 2,
38893 10,
38894 OPC_CheckPatternPredicate2,
38895 OPC_CheckComplexPat1, /*#*/0,
38896 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_BU),
38897 40, 2, 1, 2,
38898 10,
38899 OPC_CheckPatternPredicate4,
38900 OPC_CheckComplexPat1, /*#*/0,
38901 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_BU),
38902 40, 2, 1, 2,
38903 8,
38904 OPC_CheckPatternPredicate1,
38905 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAX_BU),
38906 40, 2, 0, 1,
38907 0,
38908 55, 51,
38909 OPC_Scope, 10,
38910 OPC_CheckPatternPredicate2,
38911 OPC_CheckComplexPat1, /*#*/1,
38912 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_HU),
38913 51, 2, 0, 2,
38914 10,
38915 OPC_CheckPatternPredicate4,
38916 OPC_CheckComplexPat1, /*#*/1,
38917 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_HU),
38918 51, 2, 0, 2,
38919 10,
38920 OPC_CheckPatternPredicate2,
38921 OPC_CheckComplexPat1, /*#*/0,
38922 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_HU),
38923 51, 2, 1, 2,
38924 10,
38925 OPC_CheckPatternPredicate4,
38926 OPC_CheckComplexPat1, /*#*/0,
38927 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_HU),
38928 51, 2, 1, 2,
38929 8,
38930 OPC_CheckPatternPredicate1,
38931 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAX_HU),
38932 51, 2, 0, 1,
38933 0,
38934 55, 62,
38935 OPC_Scope, 10,
38936 OPC_CheckPatternPredicate2,
38937 OPC_CheckComplexPat1, /*#*/1,
38938 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_WU),
38939 62, 2, 0, 2,
38940 10,
38941 OPC_CheckPatternPredicate4,
38942 OPC_CheckComplexPat1, /*#*/1,
38943 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_WU),
38944 62, 2, 0, 2,
38945 10,
38946 OPC_CheckPatternPredicate2,
38947 OPC_CheckComplexPat1, /*#*/0,
38948 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_WU),
38949 62, 2, 1, 2,
38950 10,
38951 OPC_CheckPatternPredicate4,
38952 OPC_CheckComplexPat1, /*#*/0,
38953 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_WU),
38954 62, 2, 1, 2,
38955 8,
38956 OPC_CheckPatternPredicate1,
38957 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAX_WU),
38958 62, 2, 0, 1,
38959 0,
38960 55, 81,
38961 OPC_Scope, 10,
38962 OPC_CheckPatternPredicate2,
38963 OPC_CheckComplexPat1, /*#*/1,
38964 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_DU),
38965 81, 2, 0, 2,
38966 10,
38967 OPC_CheckPatternPredicate4,
38968 OPC_CheckComplexPat1, /*#*/1,
38969 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_DU),
38970 81, 2, 0, 2,
38971 10,
38972 OPC_CheckPatternPredicate2,
38973 OPC_CheckComplexPat1, /*#*/0,
38974 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_DU),
38975 81, 2, 1, 2,
38976 10,
38977 OPC_CheckPatternPredicate4,
38978 OPC_CheckComplexPat1, /*#*/0,
38979 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAXI_DU),
38980 81, 2, 1, 2,
38981 8,
38982 OPC_CheckPatternPredicate1,
38983 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMAX_DU),
38984 81, 2, 0, 1,
38985 0,
38986 55, 41,
38987 OPC_Scope, 10,
38988 OPC_CheckPatternPredicate3,
38989 OPC_CheckComplexPat1, /*#*/1,
38990 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_BU),
38991 41, 2, 0, 2,
38992 10,
38993 OPC_CheckPatternPredicate5,
38994 OPC_CheckComplexPat1, /*#*/1,
38995 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_BU),
38996 41, 2, 0, 2,
38997 10,
38998 OPC_CheckPatternPredicate3,
38999 OPC_CheckComplexPat1, /*#*/0,
39000 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_BU),
39001 41, 2, 1, 2,
39002 10,
39003 OPC_CheckPatternPredicate5,
39004 OPC_CheckComplexPat1, /*#*/0,
39005 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_BU),
39006 41, 2, 1, 2,
39007 8,
39008 OPC_CheckPatternPredicate0,
39009 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAX_BU),
39010 41, 2, 0, 1,
39011 0,
39012 55, 52,
39013 OPC_Scope, 10,
39014 OPC_CheckPatternPredicate3,
39015 OPC_CheckComplexPat1, /*#*/1,
39016 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_HU),
39017 52, 2, 0, 2,
39018 10,
39019 OPC_CheckPatternPredicate5,
39020 OPC_CheckComplexPat1, /*#*/1,
39021 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_HU),
39022 52, 2, 0, 2,
39023 10,
39024 OPC_CheckPatternPredicate3,
39025 OPC_CheckComplexPat1, /*#*/0,
39026 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_HU),
39027 52, 2, 1, 2,
39028 10,
39029 OPC_CheckPatternPredicate5,
39030 OPC_CheckComplexPat1, /*#*/0,
39031 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_HU),
39032 52, 2, 1, 2,
39033 8,
39034 OPC_CheckPatternPredicate0,
39035 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAX_HU),
39036 52, 2, 0, 1,
39037 0,
39038 55, 66,
39039 OPC_Scope, 10,
39040 OPC_CheckPatternPredicate3,
39041 OPC_CheckComplexPat1, /*#*/1,
39042 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_WU),
39043 66, 2, 0, 2,
39044 10,
39045 OPC_CheckPatternPredicate5,
39046 OPC_CheckComplexPat1, /*#*/1,
39047 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_WU),
39048 66, 2, 0, 2,
39049 10,
39050 OPC_CheckPatternPredicate3,
39051 OPC_CheckComplexPat1, /*#*/0,
39052 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_WU),
39053 66, 2, 1, 2,
39054 10,
39055 OPC_CheckPatternPredicate5,
39056 OPC_CheckComplexPat1, /*#*/0,
39057 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_WU),
39058 66, 2, 1, 2,
39059 8,
39060 OPC_CheckPatternPredicate0,
39061 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAX_WU),
39062 66, 2, 0, 1,
39063 0,
39064 55, 83,
39065 OPC_Scope, 10,
39066 OPC_CheckPatternPredicate3,
39067 OPC_CheckComplexPat1, /*#*/1,
39068 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_DU),
39069 83, 2, 0, 2,
39070 10,
39071 OPC_CheckPatternPredicate5,
39072 OPC_CheckComplexPat1, /*#*/1,
39073 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_DU),
39074 83, 2, 0, 2,
39075 10,
39076 OPC_CheckPatternPredicate3,
39077 OPC_CheckComplexPat1, /*#*/0,
39078 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_DU),
39079 83, 2, 1, 2,
39080 10,
39081 OPC_CheckPatternPredicate5,
39082 OPC_CheckComplexPat1, /*#*/0,
39083 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAXI_DU),
39084 83, 2, 1, 2,
39085 8,
39086 OPC_CheckPatternPredicate0,
39087 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMAX_DU),
39088 83, 2, 0, 1,
39089 0,
39090 0,
39091 76|128,3, TARGET_VAL(ISD::UMIN),
39092 OPC_RecordChild0,
39093 OPC_RecordChild1,
39094 OPC_SwitchType , 55, 40,
39095 OPC_Scope, 10,
39096 OPC_CheckPatternPredicate2,
39097 OPC_CheckComplexPat1, /*#*/1,
39098 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_BU),
39099 40, 2, 0, 2,
39100 10,
39101 OPC_CheckPatternPredicate4,
39102 OPC_CheckComplexPat1, /*#*/1,
39103 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_BU),
39104 40, 2, 0, 2,
39105 10,
39106 OPC_CheckPatternPredicate2,
39107 OPC_CheckComplexPat1, /*#*/0,
39108 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_BU),
39109 40, 2, 1, 2,
39110 10,
39111 OPC_CheckPatternPredicate4,
39112 OPC_CheckComplexPat1, /*#*/0,
39113 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_BU),
39114 40, 2, 1, 2,
39115 8,
39116 OPC_CheckPatternPredicate1,
39117 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMIN_BU),
39118 40, 2, 0, 1,
39119 0,
39120 55, 51,
39121 OPC_Scope, 10,
39122 OPC_CheckPatternPredicate2,
39123 OPC_CheckComplexPat1, /*#*/1,
39124 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_HU),
39125 51, 2, 0, 2,
39126 10,
39127 OPC_CheckPatternPredicate4,
39128 OPC_CheckComplexPat1, /*#*/1,
39129 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_HU),
39130 51, 2, 0, 2,
39131 10,
39132 OPC_CheckPatternPredicate2,
39133 OPC_CheckComplexPat1, /*#*/0,
39134 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_HU),
39135 51, 2, 1, 2,
39136 10,
39137 OPC_CheckPatternPredicate4,
39138 OPC_CheckComplexPat1, /*#*/0,
39139 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_HU),
39140 51, 2, 1, 2,
39141 8,
39142 OPC_CheckPatternPredicate1,
39143 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMIN_HU),
39144 51, 2, 0, 1,
39145 0,
39146 55, 62,
39147 OPC_Scope, 10,
39148 OPC_CheckPatternPredicate2,
39149 OPC_CheckComplexPat1, /*#*/1,
39150 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_WU),
39151 62, 2, 0, 2,
39152 10,
39153 OPC_CheckPatternPredicate4,
39154 OPC_CheckComplexPat1, /*#*/1,
39155 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_WU),
39156 62, 2, 0, 2,
39157 10,
39158 OPC_CheckPatternPredicate2,
39159 OPC_CheckComplexPat1, /*#*/0,
39160 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_WU),
39161 62, 2, 1, 2,
39162 10,
39163 OPC_CheckPatternPredicate4,
39164 OPC_CheckComplexPat1, /*#*/0,
39165 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_WU),
39166 62, 2, 1, 2,
39167 8,
39168 OPC_CheckPatternPredicate1,
39169 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMIN_WU),
39170 62, 2, 0, 1,
39171 0,
39172 55, 81,
39173 OPC_Scope, 10,
39174 OPC_CheckPatternPredicate2,
39175 OPC_CheckComplexPat1, /*#*/1,
39176 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_DU),
39177 81, 2, 0, 2,
39178 10,
39179 OPC_CheckPatternPredicate4,
39180 OPC_CheckComplexPat1, /*#*/1,
39181 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_DU),
39182 81, 2, 0, 2,
39183 10,
39184 OPC_CheckPatternPredicate2,
39185 OPC_CheckComplexPat1, /*#*/0,
39186 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_DU),
39187 81, 2, 1, 2,
39188 10,
39189 OPC_CheckPatternPredicate4,
39190 OPC_CheckComplexPat1, /*#*/0,
39191 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMINI_DU),
39192 81, 2, 1, 2,
39193 8,
39194 OPC_CheckPatternPredicate1,
39195 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VMIN_DU),
39196 81, 2, 0, 1,
39197 0,
39198 55, 41,
39199 OPC_Scope, 10,
39200 OPC_CheckPatternPredicate3,
39201 OPC_CheckComplexPat1, /*#*/1,
39202 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_BU),
39203 41, 2, 0, 2,
39204 10,
39205 OPC_CheckPatternPredicate5,
39206 OPC_CheckComplexPat1, /*#*/1,
39207 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_BU),
39208 41, 2, 0, 2,
39209 10,
39210 OPC_CheckPatternPredicate3,
39211 OPC_CheckComplexPat1, /*#*/0,
39212 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_BU),
39213 41, 2, 1, 2,
39214 10,
39215 OPC_CheckPatternPredicate5,
39216 OPC_CheckComplexPat1, /*#*/0,
39217 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_BU),
39218 41, 2, 1, 2,
39219 8,
39220 OPC_CheckPatternPredicate0,
39221 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMIN_BU),
39222 41, 2, 0, 1,
39223 0,
39224 55, 52,
39225 OPC_Scope, 10,
39226 OPC_CheckPatternPredicate3,
39227 OPC_CheckComplexPat1, /*#*/1,
39228 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_HU),
39229 52, 2, 0, 2,
39230 10,
39231 OPC_CheckPatternPredicate5,
39232 OPC_CheckComplexPat1, /*#*/1,
39233 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_HU),
39234 52, 2, 0, 2,
39235 10,
39236 OPC_CheckPatternPredicate3,
39237 OPC_CheckComplexPat1, /*#*/0,
39238 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_HU),
39239 52, 2, 1, 2,
39240 10,
39241 OPC_CheckPatternPredicate5,
39242 OPC_CheckComplexPat1, /*#*/0,
39243 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_HU),
39244 52, 2, 1, 2,
39245 8,
39246 OPC_CheckPatternPredicate0,
39247 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMIN_HU),
39248 52, 2, 0, 1,
39249 0,
39250 55, 66,
39251 OPC_Scope, 10,
39252 OPC_CheckPatternPredicate3,
39253 OPC_CheckComplexPat1, /*#*/1,
39254 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_WU),
39255 66, 2, 0, 2,
39256 10,
39257 OPC_CheckPatternPredicate5,
39258 OPC_CheckComplexPat1, /*#*/1,
39259 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_WU),
39260 66, 2, 0, 2,
39261 10,
39262 OPC_CheckPatternPredicate3,
39263 OPC_CheckComplexPat1, /*#*/0,
39264 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_WU),
39265 66, 2, 1, 2,
39266 10,
39267 OPC_CheckPatternPredicate5,
39268 OPC_CheckComplexPat1, /*#*/0,
39269 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_WU),
39270 66, 2, 1, 2,
39271 8,
39272 OPC_CheckPatternPredicate0,
39273 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMIN_WU),
39274 66, 2, 0, 1,
39275 0,
39276 55, 83,
39277 OPC_Scope, 10,
39278 OPC_CheckPatternPredicate3,
39279 OPC_CheckComplexPat1, /*#*/1,
39280 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_DU),
39281 83, 2, 0, 2,
39282 10,
39283 OPC_CheckPatternPredicate5,
39284 OPC_CheckComplexPat1, /*#*/1,
39285 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_DU),
39286 83, 2, 0, 2,
39287 10,
39288 OPC_CheckPatternPredicate3,
39289 OPC_CheckComplexPat1, /*#*/0,
39290 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_DU),
39291 83, 2, 1, 2,
39292 10,
39293 OPC_CheckPatternPredicate5,
39294 OPC_CheckComplexPat1, /*#*/0,
39295 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMINI_DU),
39296 83, 2, 1, 2,
39297 8,
39298 OPC_CheckPatternPredicate0,
39299 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVMIN_DU),
39300 83, 2, 0, 1,
39301 0,
39302 0,
39303 0|128,2, TARGET_VAL(ISD::VSELECT),
39304 OPC_RecordChild0,
39305 OPC_Scope, 32,
39306 OPC_CheckChild0Type, 40,
39307 OPC_RecordChild1,
39308 OPC_RecordChild2,
39309 OPC_CheckType, 40,
39310 OPC_Scope, 11,
39311 OPC_CheckPatternPredicate2,
39312 OPC_CheckComplexPat7, /*#*/1,
39313 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSELI_B),
39314 40, 3, 0, 2, 3,
39315 11,
39316 OPC_CheckPatternPredicate4,
39317 OPC_CheckComplexPat7, /*#*/1,
39318 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSELI_B),
39319 40, 3, 0, 2, 3,
39320 0,
39321 30,
39322 OPC_RecordChild1,
39323 OPC_RecordChild2,
39324 OPC_CheckType, 41,
39325 OPC_Scope, 11,
39326 OPC_CheckPatternPredicate3,
39327 OPC_CheckComplexPat7, /*#*/1,
39328 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSELI_B),
39329 41, 3, 0, 2, 3,
39330 11,
39331 OPC_CheckPatternPredicate5,
39332 OPC_CheckComplexPat7, /*#*/1,
39333 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSELI_B),
39334 41, 3, 0, 2, 3,
39335 0,
39336 15,
39337 OPC_CheckChild0Type, 40,
39338 OPC_RecordChild1,
39339 OPC_RecordChild2,
39340 OPC_CheckType, 40,
39341 OPC_CheckPatternPredicate1,
39342 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSEL_V),
39343 40, 3, 2, 1, 0,
39344 15,
39345 OPC_CheckChild0Type, 51,
39346 OPC_RecordChild1,
39347 OPC_RecordChild2,
39348 OPC_CheckType, 51,
39349 OPC_CheckPatternPredicate1,
39350 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSEL_V),
39351 51, 3, 2, 1, 0,
39352 15,
39353 OPC_CheckChild0Type, 62,
39354 OPC_RecordChild1,
39355 OPC_RecordChild2,
39356 OPC_CheckType, 62,
39357 OPC_CheckPatternPredicate1,
39358 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSEL_V),
39359 62, 3, 2, 1, 0,
39360 26,
39361 OPC_RecordChild1,
39362 OPC_RecordChild2,
39363 OPC_SwitchType , 9, 81,
39364 OPC_CheckPatternPredicate1,
39365 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSEL_V),
39366 81, 3, 2, 1, 0,
39367 9, 41,
39368 OPC_CheckPatternPredicate0,
39369 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSEL_V),
39370 41, 3, 2, 1, 0,
39371 0,
39372 15,
39373 OPC_CheckChild0Type, 52,
39374 OPC_RecordChild1,
39375 OPC_RecordChild2,
39376 OPC_CheckType, 52,
39377 OPC_CheckPatternPredicate0,
39378 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSEL_V),
39379 52, 3, 2, 1, 0,
39380 15,
39381 OPC_CheckChild0Type, 66,
39382 OPC_RecordChild1,
39383 OPC_RecordChild2,
39384 OPC_CheckType, 66,
39385 OPC_CheckPatternPredicate0,
39386 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSEL_V),
39387 66, 3, 2, 1, 0,
39388 15,
39389 OPC_CheckChild0Type, 83,
39390 OPC_RecordChild1,
39391 OPC_RecordChild2,
39392 OPC_CheckType, 83,
39393 OPC_CheckPatternPredicate0,
39394 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSEL_V),
39395 83, 3, 2, 1, 0,
39396 15,
39397 OPC_CheckChild0Type, 62,
39398 OPC_RecordChild1,
39399 OPC_RecordChild2,
39400 OPC_CheckType, 116,
39401 OPC_CheckPatternPredicate1,
39402 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSEL_V),
39403 116, 3, 2, 1, 0,
39404 15,
39405 OPC_RecordChild1,
39406 OPC_RecordChild2,
39407 OPC_CheckType, 6|128,1,
39408 OPC_CheckPatternPredicate1,
39409 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBITSEL_V),
39410 6|128,1, 3, 2, 1, 0,
39411 15,
39412 OPC_CheckChild0Type, 66,
39413 OPC_RecordChild1,
39414 OPC_RecordChild2,
39415 OPC_CheckType, 120,
39416 OPC_CheckPatternPredicate0,
39417 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSEL_V),
39418 120, 3, 2, 1, 0,
39419 17,
39420 OPC_CheckChild0Type, 83,
39421 OPC_RecordChild1,
39422 OPC_RecordChild2,
39423 OPC_CheckType, 8|128,1,
39424 OPC_CheckPatternPredicate0,
39425 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBITSEL_V),
39426 8|128,1, 3, 2, 1, 0,
39427 0,
39428 0|128,1, TARGET_VAL(LoongArchISD::VSLLI),
39429 OPC_RecordChild0,
39430 OPC_RecordChild1,
39431 OPC_MoveChild1,
39432 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39433 OPC_Scope, 14,
39434 OPC_CheckPredicate, 19,
39435 OPC_MoveParent,
39436 OPC_CheckType, 40,
39437 OPC_CheckPatternPredicate2,
39438 OPC_EmitConvertToTarget1,
39439 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_B),
39440 40, 2, 0, 2,
39441 14,
39442 OPC_CheckPredicate, 27,
39443 OPC_MoveParent,
39444 OPC_CheckType, 51,
39445 OPC_CheckPatternPredicate2,
39446 OPC_EmitConvertToTarget1,
39447 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_H),
39448 51, 2, 0, 2,
39449 14,
39450 OPC_CheckPredicate, 25,
39451 OPC_MoveParent,
39452 OPC_CheckType, 62,
39453 OPC_CheckPatternPredicate2,
39454 OPC_EmitConvertToTarget1,
39455 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_W),
39456 62, 2, 0, 2,
39457 14,
39458 OPC_CheckPredicate, 33,
39459 OPC_MoveParent,
39460 OPC_CheckType, 81,
39461 OPC_CheckPatternPredicate2,
39462 OPC_EmitConvertToTarget1,
39463 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSLLI_D),
39464 81, 2, 0, 2,
39465 14,
39466 OPC_CheckPredicate, 19,
39467 OPC_MoveParent,
39468 OPC_CheckType, 41,
39469 OPC_CheckPatternPredicate3,
39470 OPC_EmitConvertToTarget1,
39471 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_B),
39472 41, 2, 0, 2,
39473 14,
39474 OPC_CheckPredicate, 27,
39475 OPC_MoveParent,
39476 OPC_CheckType, 52,
39477 OPC_CheckPatternPredicate3,
39478 OPC_EmitConvertToTarget1,
39479 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_H),
39480 52, 2, 0, 2,
39481 14,
39482 OPC_CheckPredicate, 25,
39483 OPC_MoveParent,
39484 OPC_CheckType, 66,
39485 OPC_CheckPatternPredicate3,
39486 OPC_EmitConvertToTarget1,
39487 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_W),
39488 66, 2, 0, 2,
39489 14,
39490 OPC_CheckPredicate, 33,
39491 OPC_MoveParent,
39492 OPC_CheckType, 83,
39493 OPC_CheckPatternPredicate3,
39494 OPC_EmitConvertToTarget1,
39495 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSLLI_D),
39496 83, 2, 0, 2,
39497 0,
39498 19|128,1, TARGET_VAL(LoongArchISD::VBSLL),
39499 OPC_RecordChild0,
39500 OPC_RecordChild1,
39501 OPC_MoveChild1,
39502 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39503 OPC_CheckPredicate, 25,
39504 OPC_MoveParent,
39505 OPC_SwitchType , 9, 40,
39506 OPC_CheckPatternPredicate2,
39507 OPC_EmitConvertToTarget1,
39508 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSLL_V),
39509 40, 2, 0, 2,
39510 9, 51,
39511 OPC_CheckPatternPredicate2,
39512 OPC_EmitConvertToTarget1,
39513 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSLL_V),
39514 51, 2, 0, 2,
39515 9, 62,
39516 OPC_CheckPatternPredicate2,
39517 OPC_EmitConvertToTarget1,
39518 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSLL_V),
39519 62, 2, 0, 2,
39520 9, 81,
39521 OPC_CheckPatternPredicate2,
39522 OPC_EmitConvertToTarget1,
39523 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSLL_V),
39524 81, 2, 0, 2,
39525 9, 41,
39526 OPC_CheckPatternPredicate3,
39527 OPC_EmitConvertToTarget1,
39528 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSLL_V),
39529 41, 2, 0, 2,
39530 9, 52,
39531 OPC_CheckPatternPredicate3,
39532 OPC_EmitConvertToTarget1,
39533 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSLL_V),
39534 52, 2, 0, 2,
39535 9, 66,
39536 OPC_CheckPatternPredicate3,
39537 OPC_EmitConvertToTarget1,
39538 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSLL_V),
39539 66, 2, 0, 2,
39540 9, 83,
39541 OPC_CheckPatternPredicate3,
39542 OPC_EmitConvertToTarget1,
39543 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSLL_V),
39544 83, 2, 0, 2,
39545 9, 116,
39546 OPC_CheckPatternPredicate2,
39547 OPC_EmitConvertToTarget1,
39548 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSLL_V),
39549 116, 2, 0, 2,
39550 10, 6|128,1,
39551 OPC_CheckPatternPredicate2,
39552 OPC_EmitConvertToTarget1,
39553 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSLL_V),
39554 6|128,1, 2, 0, 2,
39555 9, 120,
39556 OPC_CheckPatternPredicate3,
39557 OPC_EmitConvertToTarget1,
39558 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSLL_V),
39559 120, 2, 0, 2,
39560 10, 8|128,1,
39561 OPC_CheckPatternPredicate3,
39562 OPC_EmitConvertToTarget1,
39563 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSLL_V),
39564 8|128,1, 2, 0, 2,
39565 0,
39566 19|128,1, TARGET_VAL(LoongArchISD::VBSRL),
39567 OPC_RecordChild0,
39568 OPC_RecordChild1,
39569 OPC_MoveChild1,
39570 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39571 OPC_CheckPredicate, 25,
39572 OPC_MoveParent,
39573 OPC_SwitchType , 9, 40,
39574 OPC_CheckPatternPredicate2,
39575 OPC_EmitConvertToTarget1,
39576 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSRL_V),
39577 40, 2, 0, 2,
39578 9, 51,
39579 OPC_CheckPatternPredicate2,
39580 OPC_EmitConvertToTarget1,
39581 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSRL_V),
39582 51, 2, 0, 2,
39583 9, 62,
39584 OPC_CheckPatternPredicate2,
39585 OPC_EmitConvertToTarget1,
39586 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSRL_V),
39587 62, 2, 0, 2,
39588 9, 81,
39589 OPC_CheckPatternPredicate2,
39590 OPC_EmitConvertToTarget1,
39591 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSRL_V),
39592 81, 2, 0, 2,
39593 9, 41,
39594 OPC_CheckPatternPredicate3,
39595 OPC_EmitConvertToTarget1,
39596 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSRL_V),
39597 41, 2, 0, 2,
39598 9, 52,
39599 OPC_CheckPatternPredicate3,
39600 OPC_EmitConvertToTarget1,
39601 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSRL_V),
39602 52, 2, 0, 2,
39603 9, 66,
39604 OPC_CheckPatternPredicate3,
39605 OPC_EmitConvertToTarget1,
39606 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSRL_V),
39607 66, 2, 0, 2,
39608 9, 83,
39609 OPC_CheckPatternPredicate3,
39610 OPC_EmitConvertToTarget1,
39611 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSRL_V),
39612 83, 2, 0, 2,
39613 9, 116,
39614 OPC_CheckPatternPredicate2,
39615 OPC_EmitConvertToTarget1,
39616 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSRL_V),
39617 116, 2, 0, 2,
39618 10, 6|128,1,
39619 OPC_CheckPatternPredicate2,
39620 OPC_EmitConvertToTarget1,
39621 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VBSRL_V),
39622 6|128,1, 2, 0, 2,
39623 9, 120,
39624 OPC_CheckPatternPredicate3,
39625 OPC_EmitConvertToTarget1,
39626 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSRL_V),
39627 120, 2, 0, 2,
39628 10, 8|128,1,
39629 OPC_CheckPatternPredicate3,
39630 OPC_EmitConvertToTarget1,
39631 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVBSRL_V),
39632 8|128,1, 2, 0, 2,
39633 0,
39634 0|128,1, TARGET_VAL(LoongArchISD::VSRLI),
39635 OPC_RecordChild0,
39636 OPC_RecordChild1,
39637 OPC_MoveChild1,
39638 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39639 OPC_Scope, 14,
39640 OPC_CheckPredicate, 19,
39641 OPC_MoveParent,
39642 OPC_CheckType, 40,
39643 OPC_CheckPatternPredicate2,
39644 OPC_EmitConvertToTarget1,
39645 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_B),
39646 40, 2, 0, 2,
39647 14,
39648 OPC_CheckPredicate, 27,
39649 OPC_MoveParent,
39650 OPC_CheckType, 51,
39651 OPC_CheckPatternPredicate2,
39652 OPC_EmitConvertToTarget1,
39653 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_H),
39654 51, 2, 0, 2,
39655 14,
39656 OPC_CheckPredicate, 25,
39657 OPC_MoveParent,
39658 OPC_CheckType, 62,
39659 OPC_CheckPatternPredicate2,
39660 OPC_EmitConvertToTarget1,
39661 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_W),
39662 62, 2, 0, 2,
39663 14,
39664 OPC_CheckPredicate, 33,
39665 OPC_MoveParent,
39666 OPC_CheckType, 81,
39667 OPC_CheckPatternPredicate2,
39668 OPC_EmitConvertToTarget1,
39669 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSRLI_D),
39670 81, 2, 0, 2,
39671 14,
39672 OPC_CheckPredicate, 19,
39673 OPC_MoveParent,
39674 OPC_CheckType, 41,
39675 OPC_CheckPatternPredicate3,
39676 OPC_EmitConvertToTarget1,
39677 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_B),
39678 41, 2, 0, 2,
39679 14,
39680 OPC_CheckPredicate, 27,
39681 OPC_MoveParent,
39682 OPC_CheckType, 52,
39683 OPC_CheckPatternPredicate3,
39684 OPC_EmitConvertToTarget1,
39685 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_H),
39686 52, 2, 0, 2,
39687 14,
39688 OPC_CheckPredicate, 25,
39689 OPC_MoveParent,
39690 OPC_CheckType, 66,
39691 OPC_CheckPatternPredicate3,
39692 OPC_EmitConvertToTarget1,
39693 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_W),
39694 66, 2, 0, 2,
39695 14,
39696 OPC_CheckPredicate, 33,
39697 OPC_MoveParent,
39698 OPC_CheckType, 83,
39699 OPC_CheckPatternPredicate3,
39700 OPC_EmitConvertToTarget1,
39701 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSRLI_D),
39702 83, 2, 0, 2,
39703 0,
39704 10|128,4, TARGET_VAL(ISD::INSERT_VECTOR_ELT),
39705 OPC_RecordChild0,
39706 OPC_RecordChild1,
39707 OPC_Scope, 9|128,1,
39708 OPC_CheckChild1TypeI64,
39709 OPC_RecordChild2,
39710 OPC_MoveChild2,
39711 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39712 OPC_CheckTypeI64,
39713 OPC_Scope, 15,
39714 OPC_CheckPredicate, 27,
39715 OPC_MoveParent,
39716 OPC_CheckType, 40,
39717 OPC_CheckPatternPredicate2,
39718 OPC_EmitConvertToTarget2,
39719 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_B),
39720 40, 3, 0, 1, 3,
39721 15,
39722 OPC_CheckPredicate, 19,
39723 OPC_MoveParent,
39724 OPC_CheckType, 51,
39725 OPC_CheckPatternPredicate2,
39726 OPC_EmitConvertToTarget2,
39727 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_H),
39728 51, 3, 0, 1, 3,
39729 15,
39730 OPC_CheckPredicate, 18,
39731 OPC_MoveParent,
39732 OPC_CheckType, 62,
39733 OPC_CheckPatternPredicate2,
39734 OPC_EmitConvertToTarget2,
39735 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_W),
39736 62, 3, 0, 1, 3,
39737 15,
39738 OPC_CheckPredicate, 34,
39739 OPC_MoveParent,
39740 OPC_CheckType, 81,
39741 OPC_CheckPatternPredicate2,
39742 OPC_EmitConvertToTarget2,
39743 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_D),
39744 81, 3, 0, 1, 3,
39745 15,
39746 OPC_CheckPredicate, 19,
39747 OPC_MoveParent,
39748 OPC_CheckType, 66,
39749 OPC_CheckPatternPredicate3,
39750 OPC_EmitConvertToTarget2,
39751 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSGR2VR_W),
39752 66, 3, 0, 1, 3,
39753 15,
39754 OPC_CheckPredicate, 18,
39755 OPC_MoveParent,
39756 OPC_CheckType, 83,
39757 OPC_CheckPatternPredicate3,
39758 OPC_EmitConvertToTarget2,
39759 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSGR2VR_D),
39760 83, 3, 0, 1, 3,
39761 15,
39762 OPC_CheckPredicate, 25,
39763 OPC_MoveParent,
39764 OPC_CheckType, 41,
39765 OPC_CheckPatternPredicate3,
39766 OPC_EmitConvertToTarget2,
39767 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVINSGR2VR_B),
39768 41, 3, 0, 1, 3,
39769 15,
39770 OPC_CheckPredicate, 27,
39771 OPC_MoveParent,
39772 OPC_CheckType, 52,
39773 OPC_CheckPatternPredicate3,
39774 OPC_EmitConvertToTarget2,
39775 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVINSGR2VR_H),
39776 52, 3, 0, 1, 3,
39777 0,
39778 9|128,1,
39779 OPC_CheckChild1TypeI32,
39780 OPC_RecordChild2,
39781 OPC_MoveChild2,
39782 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39783 OPC_CheckTypeI32,
39784 OPC_Scope, 15,
39785 OPC_CheckPredicate, 27,
39786 OPC_MoveParent,
39787 OPC_CheckType, 40,
39788 OPC_CheckPatternPredicate4,
39789 OPC_EmitConvertToTarget2,
39790 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_B),
39791 40, 3, 0, 1, 3,
39792 15,
39793 OPC_CheckPredicate, 19,
39794 OPC_MoveParent,
39795 OPC_CheckType, 51,
39796 OPC_CheckPatternPredicate4,
39797 OPC_EmitConvertToTarget2,
39798 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_H),
39799 51, 3, 0, 1, 3,
39800 15,
39801 OPC_CheckPredicate, 18,
39802 OPC_MoveParent,
39803 OPC_CheckType, 62,
39804 OPC_CheckPatternPredicate4,
39805 OPC_EmitConvertToTarget2,
39806 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_W),
39807 62, 3, 0, 1, 3,
39808 15,
39809 OPC_CheckPredicate, 34,
39810 OPC_MoveParent,
39811 OPC_CheckType, 81,
39812 OPC_CheckPatternPredicate4,
39813 OPC_EmitConvertToTarget2,
39814 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_D),
39815 81, 3, 0, 1, 3,
39816 15,
39817 OPC_CheckPredicate, 19,
39818 OPC_MoveParent,
39819 OPC_CheckType, 66,
39820 OPC_CheckPatternPredicate5,
39821 OPC_EmitConvertToTarget2,
39822 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSGR2VR_W),
39823 66, 3, 0, 1, 3,
39824 15,
39825 OPC_CheckPredicate, 18,
39826 OPC_MoveParent,
39827 OPC_CheckType, 83,
39828 OPC_CheckPatternPredicate5,
39829 OPC_EmitConvertToTarget2,
39830 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSGR2VR_D),
39831 83, 3, 0, 1, 3,
39832 15,
39833 OPC_CheckPredicate, 25,
39834 OPC_MoveParent,
39835 OPC_CheckType, 41,
39836 OPC_CheckPatternPredicate5,
39837 OPC_EmitConvertToTarget2,
39838 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVINSGR2VR_B),
39839 41, 3, 0, 1, 3,
39840 15,
39841 OPC_CheckPredicate, 27,
39842 OPC_MoveParent,
39843 OPC_CheckType, 52,
39844 OPC_CheckPatternPredicate5,
39845 OPC_EmitConvertToTarget2,
39846 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::PseudoXVINSGR2VR_H),
39847 52, 3, 0, 1, 3,
39848 0,
39849 115,
39850 OPC_CheckChild1Type, 12,
39851 OPC_RecordChild2,
39852 OPC_MoveChild2,
39853 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39854 OPC_Scope, 52,
39855 OPC_CheckPredicate, 18,
39856 OPC_SwitchType , 22, 8,
39857 OPC_MoveParent,
39858 OPC_CheckType, 116,
39859 OPC_CheckPatternPredicate2,
39860 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
39861 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
39862 8, 2, 1, 3,
39863 OPC_EmitConvertToTarget2,
39864 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_W),
39865 116, 3, 0, 4, 5,
39866 22, 7,
39867 OPC_MoveParent,
39868 OPC_CheckType, 116,
39869 OPC_CheckPatternPredicate4,
39870 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
39871 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
39872 7, 2, 1, 3,
39873 OPC_EmitConvertToTarget2,
39874 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_W),
39875 116, 3, 0, 4, 5,
39876 0,
39877 52,
39878 OPC_CheckPredicate, 19,
39879 OPC_SwitchType , 22, 8,
39880 OPC_MoveParent,
39881 OPC_CheckType, 120,
39882 OPC_CheckPatternPredicate3,
39883 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
39884 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
39885 8, 2, 1, 3,
39886 OPC_EmitConvertToTarget2,
39887 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSGR2VR_W),
39888 120, 3, 0, 4, 5,
39889 22, 7,
39890 OPC_MoveParent,
39891 OPC_CheckType, 120,
39892 OPC_CheckPatternPredicate5,
39893 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
39894 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
39895 7, 2, 1, 3,
39896 OPC_EmitConvertToTarget2,
39897 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSGR2VR_W),
39898 120, 3, 0, 4, 5,
39899 0,
39900 0,
39901 123,
39902 OPC_CheckChild1Type, 13,
39903 OPC_RecordChild2,
39904 OPC_MoveChild2,
39905 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39906 OPC_Scope, 56,
39907 OPC_CheckPredicate, 34,
39908 OPC_SwitchType , 24, 8,
39909 OPC_MoveParent,
39910 OPC_CheckType, 6|128,1,
39911 OPC_CheckPatternPredicate2,
39912 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
39913 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
39914 8, 2, 1, 3,
39915 OPC_EmitConvertToTarget2,
39916 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_D),
39917 6|128,1, 3, 0, 4, 5,
39918 24, 7,
39919 OPC_MoveParent,
39920 OPC_CheckType, 6|128,1,
39921 OPC_CheckPatternPredicate4,
39922 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
39923 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
39924 7, 2, 1, 3,
39925 OPC_EmitConvertToTarget2,
39926 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VINSGR2VR_D),
39927 6|128,1, 3, 0, 4, 5,
39928 0,
39929 56,
39930 OPC_CheckPredicate, 18,
39931 OPC_SwitchType , 24, 8,
39932 OPC_MoveParent,
39933 OPC_CheckType, 8|128,1,
39934 OPC_CheckPatternPredicate3,
39935 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
39936 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
39937 8, 2, 1, 3,
39938 OPC_EmitConvertToTarget2,
39939 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSGR2VR_D),
39940 8|128,1, 3, 0, 4, 5,
39941 24, 7,
39942 OPC_MoveParent,
39943 OPC_CheckType, 8|128,1,
39944 OPC_CheckPatternPredicate5,
39945 OPC_EmitStringInteger32, LoongArch::GPRRegClassID,
39946 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
39947 7, 2, 1, 3,
39948 OPC_EmitConvertToTarget2,
39949 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVINSGR2VR_D),
39950 8|128,1, 3, 0, 4, 5,
39951 0,
39952 0,
39953 0,
39954 88|128,1, TARGET_VAL(LoongArchISD::VSHUF4I),
39955 OPC_RecordChild0,
39956 OPC_RecordChild1,
39957 OPC_Scope, 42,
39958 OPC_MoveChild1,
39959 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39960 OPC_CheckPredicate, 37,
39961 OPC_MoveParent,
39962 OPC_SwitchType , 9, 40,
39963 OPC_CheckPatternPredicate2,
39964 OPC_EmitConvertToTarget1,
39965 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_B),
39966 40, 2, 0, 2,
39967 9, 51,
39968 OPC_CheckPatternPredicate2,
39969 OPC_EmitConvertToTarget1,
39970 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_H),
39971 51, 2, 0, 2,
39972 9, 62,
39973 OPC_CheckPatternPredicate2,
39974 OPC_EmitConvertToTarget1,
39975 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_W),
39976 62, 2, 0, 2,
39977 0,
39978 20,
39979 OPC_RecordChild2,
39980 OPC_MoveChild2,
39981 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39982 OPC_CheckPredicate, 37,
39983 OPC_MoveParent,
39984 OPC_CheckType, 81,
39985 OPC_CheckPatternPredicate2,
39986 OPC_EmitConvertToTarget2,
39987 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_D),
39988 81, 3, 0, 1, 3,
39989 42,
39990 OPC_MoveChild1,
39991 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39992 OPC_CheckPredicate, 37,
39993 OPC_MoveParent,
39994 OPC_SwitchType , 9, 41,
39995 OPC_CheckPatternPredicate3,
39996 OPC_EmitConvertToTarget1,
39997 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_B),
39998 41, 2, 0, 2,
39999 9, 52,
40000 OPC_CheckPatternPredicate3,
40001 OPC_EmitConvertToTarget1,
40002 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_H),
40003 52, 2, 0, 2,
40004 9, 66,
40005 OPC_CheckPatternPredicate3,
40006 OPC_EmitConvertToTarget1,
40007 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_W),
40008 66, 2, 0, 2,
40009 0,
40010 20,
40011 OPC_RecordChild2,
40012 OPC_MoveChild2,
40013 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40014 OPC_CheckPredicate, 37,
40015 OPC_MoveParent,
40016 OPC_CheckType, 83,
40017 OPC_CheckPatternPredicate3,
40018 OPC_EmitConvertToTarget2,
40019 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_D),
40020 83, 3, 0, 1, 3,
40021 18,
40022 OPC_MoveChild1,
40023 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40024 OPC_CheckPredicate, 37,
40025 OPC_MoveParent,
40026 OPC_CheckType, 116,
40027 OPC_CheckPatternPredicate2,
40028 OPC_EmitConvertToTarget1,
40029 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_W),
40030 116, 2, 0, 2,
40031 22,
40032 OPC_RecordChild2,
40033 OPC_MoveChild2,
40034 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40035 OPC_CheckPredicate, 37,
40036 OPC_MoveParent,
40037 OPC_CheckType, 6|128,1,
40038 OPC_CheckPatternPredicate2,
40039 OPC_EmitConvertToTarget2,
40040 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF4I_D),
40041 6|128,1, 3, 0, 1, 3,
40042 18,
40043 OPC_MoveChild1,
40044 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40045 OPC_CheckPredicate, 37,
40046 OPC_MoveParent,
40047 OPC_CheckType, 120,
40048 OPC_CheckPatternPredicate3,
40049 OPC_EmitConvertToTarget1,
40050 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_W),
40051 120, 2, 0, 2,
40052 22,
40053 OPC_RecordChild2,
40054 OPC_MoveChild2,
40055 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40056 OPC_CheckPredicate, 37,
40057 OPC_MoveParent,
40058 OPC_CheckType, 8|128,1,
40059 OPC_CheckPatternPredicate3,
40060 OPC_EmitConvertToTarget2,
40061 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF4I_D),
40062 8|128,1, 3, 0, 1, 3,
40063 0,
40064 64|128,1, TARGET_VAL(LoongArchISD::VREPLVEI),
40065 OPC_RecordChild0,
40066 OPC_RecordChild1,
40067 OPC_MoveChild1,
40068 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40069 OPC_Scope, 14,
40070 OPC_CheckPredicate, 27,
40071 OPC_MoveParent,
40072 OPC_CheckType, 40,
40073 OPC_CheckPatternPredicate2,
40074 OPC_EmitConvertToTarget1,
40075 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_B),
40076 40, 2, 0, 2,
40077 14,
40078 OPC_CheckPredicate, 19,
40079 OPC_MoveParent,
40080 OPC_CheckType, 51,
40081 OPC_CheckPatternPredicate2,
40082 OPC_EmitConvertToTarget1,
40083 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_H),
40084 51, 2, 0, 2,
40085 14,
40086 OPC_CheckPredicate, 18,
40087 OPC_MoveParent,
40088 OPC_CheckType, 62,
40089 OPC_CheckPatternPredicate2,
40090 OPC_EmitConvertToTarget1,
40091 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_W),
40092 62, 2, 0, 2,
40093 14,
40094 OPC_CheckPredicate, 34,
40095 OPC_MoveParent,
40096 OPC_CheckType, 81,
40097 OPC_CheckPatternPredicate2,
40098 OPC_EmitConvertToTarget1,
40099 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_D),
40100 81, 2, 0, 2,
40101 14,
40102 OPC_CheckPredicate, 27,
40103 OPC_MoveParent,
40104 OPC_CheckType, 41,
40105 OPC_CheckPatternPredicate3,
40106 OPC_EmitConvertToTarget1,
40107 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_B),
40108 41, 2, 0, 2,
40109 14,
40110 OPC_CheckPredicate, 19,
40111 OPC_MoveParent,
40112 OPC_CheckType, 52,
40113 OPC_CheckPatternPredicate3,
40114 OPC_EmitConvertToTarget1,
40115 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_H),
40116 52, 2, 0, 2,
40117 14,
40118 OPC_CheckPredicate, 18,
40119 OPC_MoveParent,
40120 OPC_CheckType, 66,
40121 OPC_CheckPatternPredicate3,
40122 OPC_EmitConvertToTarget1,
40123 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_W),
40124 66, 2, 0, 2,
40125 14,
40126 OPC_CheckPredicate, 34,
40127 OPC_MoveParent,
40128 OPC_CheckType, 83,
40129 OPC_CheckPatternPredicate3,
40130 OPC_EmitConvertToTarget1,
40131 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_D),
40132 83, 2, 0, 2,
40133 14,
40134 OPC_CheckPredicate, 18,
40135 OPC_MoveParent,
40136 OPC_CheckType, 116,
40137 OPC_CheckPatternPredicate2,
40138 OPC_EmitConvertToTarget1,
40139 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_W),
40140 116, 2, 0, 2,
40141 16,
40142 OPC_CheckPredicate, 34,
40143 OPC_MoveParent,
40144 OPC_CheckType, 6|128,1,
40145 OPC_CheckPatternPredicate2,
40146 OPC_EmitConvertToTarget1,
40147 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_D),
40148 6|128,1, 2, 0, 2,
40149 14,
40150 OPC_CheckPredicate, 18,
40151 OPC_MoveParent,
40152 OPC_CheckType, 120,
40153 OPC_CheckPatternPredicate3,
40154 OPC_EmitConvertToTarget1,
40155 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_W),
40156 120, 2, 0, 2,
40157 16,
40158 OPC_CheckPredicate, 34,
40159 OPC_MoveParent,
40160 OPC_CheckType, 8|128,1,
40161 OPC_CheckPatternPredicate3,
40162 OPC_EmitConvertToTarget1,
40163 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPL128VEI_D),
40164 8|128,1, 2, 0, 2,
40165 0,
40166 35, TARGET_VAL(LoongArchISD::XVPERMI),
40167 OPC_RecordChild0,
40168 OPC_RecordChild1,
40169 OPC_MoveChild1,
40170 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40171 OPC_CheckPredicate, 37,
40172 OPC_MoveParent,
40173 OPC_SwitchType , 9, 83,
40174 OPC_CheckPatternPredicate3,
40175 OPC_EmitConvertToTarget1,
40176 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_D),
40177 83, 2, 0, 2,
40178 10, 8|128,1,
40179 OPC_CheckPatternPredicate3,
40180 OPC_EmitConvertToTarget1,
40181 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_D),
40182 8|128,1, 2, 0, 2,
40183 0,
40184 59|128,1, TARGET_VAL(LoongArchISD::VSHUF),
40185 OPC_RecordChild0,
40186 OPC_Scope, 15,
40187 OPC_CheckChild0Type, 40,
40188 OPC_RecordChild1,
40189 OPC_RecordChild2,
40190 OPC_CheckType, 40,
40191 OPC_CheckPatternPredicate1,
40192 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF_B),
40193 40, 3, 1, 2, 0,
40194 15,
40195 OPC_CheckChild0Type, 51,
40196 OPC_RecordChild1,
40197 OPC_RecordChild2,
40198 OPC_CheckType, 51,
40199 OPC_CheckPatternPredicate1,
40200 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF_H),
40201 51, 3, 0, 1, 2,
40202 28,
40203 OPC_CheckChild0Type, 62,
40204 OPC_RecordChild1,
40205 OPC_RecordChild2,
40206 OPC_SwitchType , 9, 62,
40207 OPC_CheckPatternPredicate1,
40208 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF_W),
40209 62, 3, 0, 1, 2,
40210 9, 116,
40211 OPC_CheckPatternPredicate1,
40212 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF_W),
40213 116, 3, 0, 1, 2,
40214 0,
40215 30,
40216 OPC_CheckChild0Type, 81,
40217 OPC_RecordChild1,
40218 OPC_RecordChild2,
40219 OPC_SwitchType , 9, 81,
40220 OPC_CheckPatternPredicate1,
40221 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF_D),
40222 81, 3, 0, 1, 2,
40223 10, 6|128,1,
40224 OPC_CheckPatternPredicate1,
40225 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VSHUF_D),
40226 6|128,1, 3, 0, 1, 2,
40227 0,
40228 15,
40229 OPC_CheckChild0Type, 41,
40230 OPC_RecordChild1,
40231 OPC_RecordChild2,
40232 OPC_CheckType, 41,
40233 OPC_CheckPatternPredicate0,
40234 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF_B),
40235 41, 3, 1, 2, 0,
40236 15,
40237 OPC_CheckChild0Type, 52,
40238 OPC_RecordChild1,
40239 OPC_RecordChild2,
40240 OPC_CheckType, 52,
40241 OPC_CheckPatternPredicate0,
40242 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF_H),
40243 52, 3, 0, 1, 2,
40244 28,
40245 OPC_CheckChild0Type, 66,
40246 OPC_RecordChild1,
40247 OPC_RecordChild2,
40248 OPC_SwitchType , 9, 66,
40249 OPC_CheckPatternPredicate0,
40250 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF_W),
40251 66, 3, 0, 1, 2,
40252 9, 120,
40253 OPC_CheckPatternPredicate0,
40254 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF_W),
40255 120, 3, 0, 1, 2,
40256 0,
40257 30,
40258 OPC_CheckChild0Type, 83,
40259 OPC_RecordChild1,
40260 OPC_RecordChild2,
40261 OPC_SwitchType , 9, 83,
40262 OPC_CheckPatternPredicate0,
40263 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF_D),
40264 83, 3, 0, 1, 2,
40265 10, 8|128,1,
40266 OPC_CheckPatternPredicate0,
40267 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVSHUF_D),
40268 8|128,1, 3, 0, 1, 2,
40269 0,
40270 0,
40271 0|128,1, TARGET_VAL(LoongArchISD::VPICKEV),
40272 OPC_RecordChild0,
40273 OPC_RecordChild1,
40274 OPC_SwitchType , 8, 40,
40275 OPC_CheckPatternPredicate1,
40276 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKEV_B),
40277 40, 2, 0, 1,
40278 8, 51,
40279 OPC_CheckPatternPredicate1,
40280 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKEV_H),
40281 51, 2, 0, 1,
40282 8, 62,
40283 OPC_CheckPatternPredicate1,
40284 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKEV_W),
40285 62, 2, 0, 1,
40286 8, 81,
40287 OPC_CheckPatternPredicate1,
40288 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKEV_D),
40289 81, 2, 0, 1,
40290 8, 41,
40291 OPC_CheckPatternPredicate0,
40292 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKEV_B),
40293 41, 2, 0, 1,
40294 8, 52,
40295 OPC_CheckPatternPredicate0,
40296 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKEV_H),
40297 52, 2, 0, 1,
40298 8, 66,
40299 OPC_CheckPatternPredicate0,
40300 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKEV_W),
40301 66, 2, 0, 1,
40302 8, 83,
40303 OPC_CheckPatternPredicate0,
40304 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKEV_D),
40305 83, 2, 0, 1,
40306 8, 116,
40307 OPC_CheckPatternPredicate1,
40308 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKEV_W),
40309 116, 2, 0, 1,
40310 9, 6|128,1,
40311 OPC_CheckPatternPredicate1,
40312 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKEV_D),
40313 6|128,1, 2, 0, 1,
40314 8, 120,
40315 OPC_CheckPatternPredicate0,
40316 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKEV_W),
40317 120, 2, 0, 1,
40318 9, 8|128,1,
40319 OPC_CheckPatternPredicate0,
40320 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKEV_D),
40321 8|128,1, 2, 0, 1,
40322 0,
40323 0|128,1, TARGET_VAL(LoongArchISD::VPICKOD),
40324 OPC_RecordChild0,
40325 OPC_RecordChild1,
40326 OPC_SwitchType , 8, 40,
40327 OPC_CheckPatternPredicate1,
40328 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKOD_B),
40329 40, 2, 0, 1,
40330 8, 51,
40331 OPC_CheckPatternPredicate1,
40332 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKOD_H),
40333 51, 2, 0, 1,
40334 8, 62,
40335 OPC_CheckPatternPredicate1,
40336 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKOD_W),
40337 62, 2, 0, 1,
40338 8, 81,
40339 OPC_CheckPatternPredicate1,
40340 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKOD_D),
40341 81, 2, 0, 1,
40342 8, 41,
40343 OPC_CheckPatternPredicate0,
40344 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKOD_B),
40345 41, 2, 0, 1,
40346 8, 52,
40347 OPC_CheckPatternPredicate0,
40348 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKOD_H),
40349 52, 2, 0, 1,
40350 8, 66,
40351 OPC_CheckPatternPredicate0,
40352 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKOD_W),
40353 66, 2, 0, 1,
40354 8, 83,
40355 OPC_CheckPatternPredicate0,
40356 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKOD_D),
40357 83, 2, 0, 1,
40358 8, 116,
40359 OPC_CheckPatternPredicate1,
40360 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKOD_W),
40361 116, 2, 0, 1,
40362 9, 6|128,1,
40363 OPC_CheckPatternPredicate1,
40364 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPICKOD_D),
40365 6|128,1, 2, 0, 1,
40366 8, 120,
40367 OPC_CheckPatternPredicate0,
40368 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKOD_W),
40369 120, 2, 0, 1,
40370 9, 8|128,1,
40371 OPC_CheckPatternPredicate0,
40372 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPICKOD_D),
40373 8|128,1, 2, 0, 1,
40374 0,
40375 0|128,1, TARGET_VAL(LoongArchISD::VPACKEV),
40376 OPC_RecordChild0,
40377 OPC_RecordChild1,
40378 OPC_SwitchType , 8, 40,
40379 OPC_CheckPatternPredicate1,
40380 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKEV_B),
40381 40, 2, 0, 1,
40382 8, 51,
40383 OPC_CheckPatternPredicate1,
40384 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKEV_H),
40385 51, 2, 0, 1,
40386 8, 62,
40387 OPC_CheckPatternPredicate1,
40388 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKEV_W),
40389 62, 2, 0, 1,
40390 8, 81,
40391 OPC_CheckPatternPredicate1,
40392 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKEV_D),
40393 81, 2, 0, 1,
40394 8, 41,
40395 OPC_CheckPatternPredicate0,
40396 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKEV_B),
40397 41, 2, 0, 1,
40398 8, 52,
40399 OPC_CheckPatternPredicate0,
40400 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKEV_H),
40401 52, 2, 0, 1,
40402 8, 66,
40403 OPC_CheckPatternPredicate0,
40404 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKEV_W),
40405 66, 2, 0, 1,
40406 8, 83,
40407 OPC_CheckPatternPredicate0,
40408 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKEV_D),
40409 83, 2, 0, 1,
40410 8, 116,
40411 OPC_CheckPatternPredicate1,
40412 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKEV_W),
40413 116, 2, 0, 1,
40414 9, 6|128,1,
40415 OPC_CheckPatternPredicate1,
40416 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKEV_D),
40417 6|128,1, 2, 0, 1,
40418 8, 120,
40419 OPC_CheckPatternPredicate0,
40420 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKEV_W),
40421 120, 2, 0, 1,
40422 9, 8|128,1,
40423 OPC_CheckPatternPredicate0,
40424 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKEV_D),
40425 8|128,1, 2, 0, 1,
40426 0,
40427 0|128,1, TARGET_VAL(LoongArchISD::VPACKOD),
40428 OPC_RecordChild0,
40429 OPC_RecordChild1,
40430 OPC_SwitchType , 8, 40,
40431 OPC_CheckPatternPredicate1,
40432 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKOD_B),
40433 40, 2, 0, 1,
40434 8, 51,
40435 OPC_CheckPatternPredicate1,
40436 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKOD_H),
40437 51, 2, 0, 1,
40438 8, 62,
40439 OPC_CheckPatternPredicate1,
40440 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKOD_W),
40441 62, 2, 0, 1,
40442 8, 81,
40443 OPC_CheckPatternPredicate1,
40444 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKOD_D),
40445 81, 2, 0, 1,
40446 8, 41,
40447 OPC_CheckPatternPredicate0,
40448 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKOD_B),
40449 41, 2, 0, 1,
40450 8, 52,
40451 OPC_CheckPatternPredicate0,
40452 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKOD_H),
40453 52, 2, 0, 1,
40454 8, 66,
40455 OPC_CheckPatternPredicate0,
40456 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKOD_W),
40457 66, 2, 0, 1,
40458 8, 83,
40459 OPC_CheckPatternPredicate0,
40460 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKOD_D),
40461 83, 2, 0, 1,
40462 8, 116,
40463 OPC_CheckPatternPredicate1,
40464 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKOD_W),
40465 116, 2, 0, 1,
40466 9, 6|128,1,
40467 OPC_CheckPatternPredicate1,
40468 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VPACKOD_D),
40469 6|128,1, 2, 0, 1,
40470 8, 120,
40471 OPC_CheckPatternPredicate0,
40472 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKOD_W),
40473 120, 2, 0, 1,
40474 9, 8|128,1,
40475 OPC_CheckPatternPredicate0,
40476 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPACKOD_D),
40477 8|128,1, 2, 0, 1,
40478 0,
40479 0|128,1, TARGET_VAL(LoongArchISD::VILVL),
40480 OPC_RecordChild0,
40481 OPC_RecordChild1,
40482 OPC_SwitchType , 8, 40,
40483 OPC_CheckPatternPredicate1,
40484 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVL_B),
40485 40, 2, 0, 1,
40486 8, 51,
40487 OPC_CheckPatternPredicate1,
40488 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVL_H),
40489 51, 2, 0, 1,
40490 8, 62,
40491 OPC_CheckPatternPredicate1,
40492 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVL_W),
40493 62, 2, 0, 1,
40494 8, 81,
40495 OPC_CheckPatternPredicate1,
40496 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVL_D),
40497 81, 2, 0, 1,
40498 8, 41,
40499 OPC_CheckPatternPredicate0,
40500 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVL_B),
40501 41, 2, 0, 1,
40502 8, 52,
40503 OPC_CheckPatternPredicate0,
40504 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVL_H),
40505 52, 2, 0, 1,
40506 8, 66,
40507 OPC_CheckPatternPredicate0,
40508 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVL_W),
40509 66, 2, 0, 1,
40510 8, 83,
40511 OPC_CheckPatternPredicate0,
40512 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVL_D),
40513 83, 2, 0, 1,
40514 8, 116,
40515 OPC_CheckPatternPredicate1,
40516 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVL_W),
40517 116, 2, 0, 1,
40518 9, 6|128,1,
40519 OPC_CheckPatternPredicate1,
40520 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVL_D),
40521 6|128,1, 2, 0, 1,
40522 8, 120,
40523 OPC_CheckPatternPredicate0,
40524 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVL_W),
40525 120, 2, 0, 1,
40526 9, 8|128,1,
40527 OPC_CheckPatternPredicate0,
40528 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVL_D),
40529 8|128,1, 2, 0, 1,
40530 0,
40531 0|128,1, TARGET_VAL(LoongArchISD::VILVH),
40532 OPC_RecordChild0,
40533 OPC_RecordChild1,
40534 OPC_SwitchType , 8, 40,
40535 OPC_CheckPatternPredicate1,
40536 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVH_B),
40537 40, 2, 0, 1,
40538 8, 51,
40539 OPC_CheckPatternPredicate1,
40540 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVH_H),
40541 51, 2, 0, 1,
40542 8, 62,
40543 OPC_CheckPatternPredicate1,
40544 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVH_W),
40545 62, 2, 0, 1,
40546 8, 81,
40547 OPC_CheckPatternPredicate1,
40548 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVH_D),
40549 81, 2, 0, 1,
40550 8, 41,
40551 OPC_CheckPatternPredicate0,
40552 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVH_B),
40553 41, 2, 0, 1,
40554 8, 52,
40555 OPC_CheckPatternPredicate0,
40556 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVH_H),
40557 52, 2, 0, 1,
40558 8, 66,
40559 OPC_CheckPatternPredicate0,
40560 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVH_W),
40561 66, 2, 0, 1,
40562 8, 83,
40563 OPC_CheckPatternPredicate0,
40564 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVH_D),
40565 83, 2, 0, 1,
40566 8, 116,
40567 OPC_CheckPatternPredicate1,
40568 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVH_W),
40569 116, 2, 0, 1,
40570 9, 6|128,1,
40571 OPC_CheckPatternPredicate1,
40572 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VILVH_D),
40573 6|128,1, 2, 0, 1,
40574 8, 120,
40575 OPC_CheckPatternPredicate0,
40576 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVH_W),
40577 120, 2, 0, 1,
40578 9, 8|128,1,
40579 OPC_CheckPatternPredicate0,
40580 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVILVH_D),
40581 8|128,1, 2, 0, 1,
40582 0,
40583 36|128,1, TARGET_VAL(ISD::FP_TO_SINT),
40584 OPC_RecordChild0,
40585 OPC_SwitchType , 98, 62,
40586 OPC_Scope, 9,
40587 OPC_CheckChild0Type, 116,
40588 OPC_CheckPatternPredicate1,
40589 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRZ_W_S),
40590 62, 1, 0,
40591 85,
40592 OPC_CheckChild0Type, 8|128,1,
40593 OPC_Scope, 39,
40594 OPC_CheckPatternPredicate3,
40595 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFTINTRZ_L_D),
40596 41, 1, 0,
40597 OPC_EmitInteger64, 92|128,3,
40598 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPERMI_D),
40599 41, 2, 1, 2,
40600 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFTINTRZ_L_D),
40601 41, 1, 0,
40602 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPICKEV_W),
40603 41, 2, 3, 4,
40604 OPC_EmitStringInteger32, LoongArch::sub_128,
40605 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
40606 62, 2, 5, 6,
40607 39,
40608 OPC_CheckPatternPredicate5,
40609 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFTINTRZ_L_D),
40610 41, 1, 0,
40611 OPC_EmitInteger32, 92|128,3,
40612 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPERMI_D),
40613 41, 2, 1, 2,
40614 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFTINTRZ_L_D),
40615 41, 1, 0,
40616 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPICKEV_W),
40617 41, 2, 3, 4,
40618 OPC_EmitStringInteger32, LoongArch::sub_128,
40619 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
40620 62, 2, 5, 6,
40621 0,
40622 0,
40623 7, 81,
40624 OPC_CheckPatternPredicate1,
40625 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRZ_L_D),
40626 81, 1, 0,
40627 7, 66,
40628 OPC_CheckPatternPredicate0,
40629 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRZ_W_S),
40630 66, 1, 0,
40631 41, 83,
40632 OPC_Scope, 10,
40633 OPC_CheckChild0Type, 8|128,1,
40634 OPC_CheckPatternPredicate0,
40635 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRZ_L_D),
40636 83, 1, 0,
40637 27,
40638 OPC_CheckChild0Type, 116,
40639 OPC_CheckPatternPredicate0,
40640 OPC_EmitInteger64, 0,
40641 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFTINTRZ_W_S),
40642 40, 1, 0,
40643 OPC_EmitStringInteger32, LoongArch::sub_128,
40644 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
40645 41, 3, 1, 2, 3,
40646 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_D_W),
40647 83, 1, 4,
40648 0,
40649 0,
40650 36|128,1, TARGET_VAL(ISD::FP_TO_UINT),
40651 OPC_RecordChild0,
40652 OPC_SwitchType , 98, 62,
40653 OPC_Scope, 9,
40654 OPC_CheckChild0Type, 116,
40655 OPC_CheckPatternPredicate1,
40656 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRZ_WU_S),
40657 62, 1, 0,
40658 85,
40659 OPC_CheckChild0Type, 8|128,1,
40660 OPC_Scope, 39,
40661 OPC_CheckPatternPredicate3,
40662 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFTINTRZ_LU_D),
40663 41, 1, 0,
40664 OPC_EmitInteger64, 92|128,3,
40665 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPERMI_D),
40666 41, 2, 1, 2,
40667 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFTINTRZ_LU_D),
40668 41, 1, 0,
40669 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPICKEV_W),
40670 41, 2, 3, 4,
40671 OPC_EmitStringInteger32, LoongArch::sub_128,
40672 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
40673 62, 2, 5, 6,
40674 39,
40675 OPC_CheckPatternPredicate5,
40676 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFTINTRZ_LU_D),
40677 41, 1, 0,
40678 OPC_EmitInteger32, 92|128,3,
40679 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPERMI_D),
40680 41, 2, 1, 2,
40681 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVFTINTRZ_LU_D),
40682 41, 1, 0,
40683 OPC_EmitNode1None, TARGET_VAL(LoongArch::XVPICKEV_W),
40684 41, 2, 3, 4,
40685 OPC_EmitStringInteger32, LoongArch::sub_128,
40686 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
40687 62, 2, 5, 6,
40688 0,
40689 0,
40690 7, 81,
40691 OPC_CheckPatternPredicate1,
40692 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VFTINTRZ_LU_D),
40693 81, 1, 0,
40694 7, 66,
40695 OPC_CheckPatternPredicate0,
40696 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRZ_WU_S),
40697 66, 1, 0,
40698 41, 83,
40699 OPC_Scope, 10,
40700 OPC_CheckChild0Type, 8|128,1,
40701 OPC_CheckPatternPredicate0,
40702 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVFTINTRZ_LU_D),
40703 83, 1, 0,
40704 27,
40705 OPC_CheckChild0Type, 116,
40706 OPC_CheckPatternPredicate0,
40707 OPC_EmitInteger64, 0,
40708 OPC_EmitNode1None, TARGET_VAL(LoongArch::VFTINTRZ_WU_S),
40709 40, 1, 0,
40710 OPC_EmitStringInteger32, LoongArch::sub_128,
40711 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
40712 41, 3, 1, 2, 3,
40713 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VEXT2XV_DU_WU),
40714 83, 1, 4,
40715 0,
40716 0,
40717 84, TARGET_VAL(ISD::ABDS),
40718 OPC_RecordChild0,
40719 OPC_RecordChild1,
40720 OPC_SwitchType , 8, 40,
40721 OPC_CheckPatternPredicate1,
40722 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_B),
40723 40, 2, 0, 1,
40724 8, 51,
40725 OPC_CheckPatternPredicate1,
40726 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_H),
40727 51, 2, 0, 1,
40728 8, 62,
40729 OPC_CheckPatternPredicate1,
40730 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_W),
40731 62, 2, 0, 1,
40732 8, 81,
40733 OPC_CheckPatternPredicate1,
40734 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_D),
40735 81, 2, 0, 1,
40736 8, 41,
40737 OPC_CheckPatternPredicate0,
40738 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_B),
40739 41, 2, 0, 1,
40740 8, 52,
40741 OPC_CheckPatternPredicate0,
40742 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_H),
40743 52, 2, 0, 1,
40744 8, 66,
40745 OPC_CheckPatternPredicate0,
40746 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_W),
40747 66, 2, 0, 1,
40748 8, 83,
40749 OPC_CheckPatternPredicate0,
40750 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_D),
40751 83, 2, 0, 1,
40752 0,
40753 84, TARGET_VAL(ISD::ABDU),
40754 OPC_RecordChild0,
40755 OPC_RecordChild1,
40756 OPC_SwitchType , 8, 40,
40757 OPC_CheckPatternPredicate1,
40758 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_BU),
40759 40, 2, 0, 1,
40760 8, 51,
40761 OPC_CheckPatternPredicate1,
40762 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_HU),
40763 51, 2, 0, 1,
40764 8, 62,
40765 OPC_CheckPatternPredicate1,
40766 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_WU),
40767 62, 2, 0, 1,
40768 8, 81,
40769 OPC_CheckPatternPredicate1,
40770 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VABSD_DU),
40771 81, 2, 0, 1,
40772 8, 41,
40773 OPC_CheckPatternPredicate0,
40774 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_BU),
40775 41, 2, 0, 1,
40776 8, 52,
40777 OPC_CheckPatternPredicate0,
40778 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_HU),
40779 52, 2, 0, 1,
40780 8, 66,
40781 OPC_CheckPatternPredicate0,
40782 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_WU),
40783 66, 2, 0, 1,
40784 8, 83,
40785 OPC_CheckPatternPredicate0,
40786 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVABSD_DU),
40787 83, 2, 0, 1,
40788 0,
40789 85|128,5, TARGET_VAL(ISD::BUILD_VECTOR),
40790 OPC_RecordChild0,
40791 OPC_Scope, 11|128,2,
40792 OPC_CheckChild0TypeI64,
40793 OPC_CheckChild1Same, 0,
40794 OPC_Scope, 85,
40795 OPC_CheckChild2Same, 0,
40796 OPC_CheckChild3Same, 0,
40797 OPC_Scope, 68,
40798 OPC_MoveChild4,
40799 OPC_CheckSame, 0,
40800 OPC_MoveSibling5,
40801 OPC_CheckSame, 0,
40802 OPC_MoveSibling6,
40803 OPC_CheckSame, 0,
40804 OPC_MoveSibling7,
40805 OPC_CheckSame, 0,
40806 OPC_Scope, 42,
40807 OPC_MoveSibling, 8,
40808 OPC_CheckSame, 0,
40809 OPC_MoveSibling, 9,
40810 OPC_CheckSame, 0,
40811 OPC_MoveSibling, 10,
40812 OPC_CheckSame, 0,
40813 OPC_MoveSibling, 11,
40814 OPC_CheckSame, 0,
40815 OPC_MoveSibling, 12,
40816 OPC_CheckSame, 0,
40817 OPC_MoveSibling, 13,
40818 OPC_CheckSame, 0,
40819 OPC_MoveSibling, 14,
40820 OPC_CheckSame, 0,
40821 OPC_MoveSibling, 15,
40822 OPC_CheckSame, 0,
40823 OPC_MoveParent,
40824 OPC_CheckType, 40,
40825 OPC_CheckPatternPredicate2,
40826 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_B),
40827 40, 1, 0,
40828 10,
40829 OPC_MoveParent,
40830 OPC_CheckType, 51,
40831 OPC_CheckPatternPredicate2,
40832 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_H),
40833 51, 1, 0,
40834 0,
40835 9,
40836 OPC_CheckType, 62,
40837 OPC_CheckPatternPredicate2,
40838 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_W),
40839 62, 1, 0,
40840 0,
40841 9,
40842 OPC_CheckType, 81,
40843 OPC_CheckPatternPredicate2,
40844 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_D),
40845 81, 1, 0,
40846 36|128,1,
40847 OPC_CheckChild2Same, 0,
40848 OPC_CheckChild3Same, 0,
40849 OPC_Scope, 18|128,1,
40850 OPC_MoveChild4,
40851 OPC_CheckSame, 0,
40852 OPC_MoveSibling5,
40853 OPC_CheckSame, 0,
40854 OPC_MoveSibling6,
40855 OPC_CheckSame, 0,
40856 OPC_MoveSibling7,
40857 OPC_CheckSame, 0,
40858 OPC_Scope, 120,
40859 OPC_MoveSibling, 8,
40860 OPC_CheckSame, 0,
40861 OPC_MoveSibling, 9,
40862 OPC_CheckSame, 0,
40863 OPC_MoveSibling, 10,
40864 OPC_CheckSame, 0,
40865 OPC_MoveSibling, 11,
40866 OPC_CheckSame, 0,
40867 OPC_MoveSibling, 12,
40868 OPC_CheckSame, 0,
40869 OPC_MoveSibling, 13,
40870 OPC_CheckSame, 0,
40871 OPC_MoveSibling, 14,
40872 OPC_CheckSame, 0,
40873 OPC_MoveSibling, 15,
40874 OPC_CheckSame, 0,
40875 OPC_Scope, 74,
40876 OPC_MoveSibling, 16,
40877 OPC_CheckSame, 0,
40878 OPC_MoveSibling, 17,
40879 OPC_CheckSame, 0,
40880 OPC_MoveSibling, 18,
40881 OPC_CheckSame, 0,
40882 OPC_MoveSibling, 19,
40883 OPC_CheckSame, 0,
40884 OPC_MoveSibling, 20,
40885 OPC_CheckSame, 0,
40886 OPC_MoveSibling, 21,
40887 OPC_CheckSame, 0,
40888 OPC_MoveSibling, 22,
40889 OPC_CheckSame, 0,
40890 OPC_MoveSibling, 23,
40891 OPC_CheckSame, 0,
40892 OPC_MoveSibling, 24,
40893 OPC_CheckSame, 0,
40894 OPC_MoveSibling, 25,
40895 OPC_CheckSame, 0,
40896 OPC_MoveSibling, 26,
40897 OPC_CheckSame, 0,
40898 OPC_MoveSibling, 27,
40899 OPC_CheckSame, 0,
40900 OPC_MoveSibling, 28,
40901 OPC_CheckSame, 0,
40902 OPC_MoveSibling, 29,
40903 OPC_CheckSame, 0,
40904 OPC_MoveSibling, 30,
40905 OPC_CheckSame, 0,
40906 OPC_MoveSibling, 31,
40907 OPC_CheckSame, 0,
40908 OPC_MoveParent,
40909 OPC_CheckType, 41,
40910 OPC_CheckPatternPredicate3,
40911 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_B),
40912 41, 1, 0,
40913 10,
40914 OPC_MoveParent,
40915 OPC_CheckType, 52,
40916 OPC_CheckPatternPredicate3,
40917 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_H),
40918 52, 1, 0,
40919 0,
40920 10,
40921 OPC_MoveParent,
40922 OPC_CheckType, 66,
40923 OPC_CheckPatternPredicate3,
40924 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_W),
40925 66, 1, 0,
40926 0,
40927 9,
40928 OPC_CheckType, 83,
40929 OPC_CheckPatternPredicate3,
40930 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_D),
40931 83, 1, 0,
40932 0,
40933 0,
40934 11|128,2,
40935 OPC_CheckChild0TypeI32,
40936 OPC_CheckChild1Same, 0,
40937 OPC_Scope, 85,
40938 OPC_CheckChild2Same, 0,
40939 OPC_CheckChild3Same, 0,
40940 OPC_Scope, 68,
40941 OPC_MoveChild4,
40942 OPC_CheckSame, 0,
40943 OPC_MoveSibling5,
40944 OPC_CheckSame, 0,
40945 OPC_MoveSibling6,
40946 OPC_CheckSame, 0,
40947 OPC_MoveSibling7,
40948 OPC_CheckSame, 0,
40949 OPC_Scope, 42,
40950 OPC_MoveSibling, 8,
40951 OPC_CheckSame, 0,
40952 OPC_MoveSibling, 9,
40953 OPC_CheckSame, 0,
40954 OPC_MoveSibling, 10,
40955 OPC_CheckSame, 0,
40956 OPC_MoveSibling, 11,
40957 OPC_CheckSame, 0,
40958 OPC_MoveSibling, 12,
40959 OPC_CheckSame, 0,
40960 OPC_MoveSibling, 13,
40961 OPC_CheckSame, 0,
40962 OPC_MoveSibling, 14,
40963 OPC_CheckSame, 0,
40964 OPC_MoveSibling, 15,
40965 OPC_CheckSame, 0,
40966 OPC_MoveParent,
40967 OPC_CheckType, 40,
40968 OPC_CheckPatternPredicate4,
40969 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_B),
40970 40, 1, 0,
40971 10,
40972 OPC_MoveParent,
40973 OPC_CheckType, 51,
40974 OPC_CheckPatternPredicate4,
40975 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_H),
40976 51, 1, 0,
40977 0,
40978 9,
40979 OPC_CheckType, 62,
40980 OPC_CheckPatternPredicate4,
40981 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_W),
40982 62, 1, 0,
40983 0,
40984 9,
40985 OPC_CheckType, 81,
40986 OPC_CheckPatternPredicate4,
40987 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_D),
40988 81, 1, 0,
40989 36|128,1,
40990 OPC_CheckChild2Same, 0,
40991 OPC_CheckChild3Same, 0,
40992 OPC_Scope, 18|128,1,
40993 OPC_MoveChild4,
40994 OPC_CheckSame, 0,
40995 OPC_MoveSibling5,
40996 OPC_CheckSame, 0,
40997 OPC_MoveSibling6,
40998 OPC_CheckSame, 0,
40999 OPC_MoveSibling7,
41000 OPC_CheckSame, 0,
41001 OPC_Scope, 120,
41002 OPC_MoveSibling, 8,
41003 OPC_CheckSame, 0,
41004 OPC_MoveSibling, 9,
41005 OPC_CheckSame, 0,
41006 OPC_MoveSibling, 10,
41007 OPC_CheckSame, 0,
41008 OPC_MoveSibling, 11,
41009 OPC_CheckSame, 0,
41010 OPC_MoveSibling, 12,
41011 OPC_CheckSame, 0,
41012 OPC_MoveSibling, 13,
41013 OPC_CheckSame, 0,
41014 OPC_MoveSibling, 14,
41015 OPC_CheckSame, 0,
41016 OPC_MoveSibling, 15,
41017 OPC_CheckSame, 0,
41018 OPC_Scope, 74,
41019 OPC_MoveSibling, 16,
41020 OPC_CheckSame, 0,
41021 OPC_MoveSibling, 17,
41022 OPC_CheckSame, 0,
41023 OPC_MoveSibling, 18,
41024 OPC_CheckSame, 0,
41025 OPC_MoveSibling, 19,
41026 OPC_CheckSame, 0,
41027 OPC_MoveSibling, 20,
41028 OPC_CheckSame, 0,
41029 OPC_MoveSibling, 21,
41030 OPC_CheckSame, 0,
41031 OPC_MoveSibling, 22,
41032 OPC_CheckSame, 0,
41033 OPC_MoveSibling, 23,
41034 OPC_CheckSame, 0,
41035 OPC_MoveSibling, 24,
41036 OPC_CheckSame, 0,
41037 OPC_MoveSibling, 25,
41038 OPC_CheckSame, 0,
41039 OPC_MoveSibling, 26,
41040 OPC_CheckSame, 0,
41041 OPC_MoveSibling, 27,
41042 OPC_CheckSame, 0,
41043 OPC_MoveSibling, 28,
41044 OPC_CheckSame, 0,
41045 OPC_MoveSibling, 29,
41046 OPC_CheckSame, 0,
41047 OPC_MoveSibling, 30,
41048 OPC_CheckSame, 0,
41049 OPC_MoveSibling, 31,
41050 OPC_CheckSame, 0,
41051 OPC_MoveParent,
41052 OPC_CheckType, 41,
41053 OPC_CheckPatternPredicate5,
41054 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_B),
41055 41, 1, 0,
41056 10,
41057 OPC_MoveParent,
41058 OPC_CheckType, 52,
41059 OPC_CheckPatternPredicate5,
41060 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_H),
41061 52, 1, 0,
41062 0,
41063 10,
41064 OPC_MoveParent,
41065 OPC_CheckType, 66,
41066 OPC_CheckPatternPredicate5,
41067 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_W),
41068 66, 1, 0,
41069 0,
41070 9,
41071 OPC_CheckType, 83,
41072 OPC_CheckPatternPredicate5,
41073 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_D),
41074 83, 1, 0,
41075 0,
41076 0,
41077 96,
41078 OPC_CheckChild0Type, 12,
41079 OPC_CheckChild1Same, 0,
41080 OPC_CheckChild2Same, 0,
41081 OPC_CheckChild3Same, 0,
41082 OPC_Scope, 34,
41083 OPC_MoveChild4,
41084 OPC_CheckSame, 0,
41085 OPC_MoveSibling5,
41086 OPC_CheckSame, 0,
41087 OPC_MoveSibling6,
41088 OPC_CheckSame, 0,
41089 OPC_MoveSibling7,
41090 OPC_CheckSame, 0,
41091 OPC_MoveParent,
41092 OPC_CheckType, 120,
41093 OPC_CheckPatternPredicate0,
41094 OPC_EmitInteger64, 0,
41095 OPC_EmitStringInteger32, LoongArch::sub_32,
41096 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41097 41, 3, 1, 0, 2,
41098 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE0_W),
41099 120, 1, 3,
41100 50,
41101 OPC_CheckType, 116,
41102 OPC_Scope, 22,
41103 OPC_CheckPatternPredicate2,
41104 OPC_EmitInteger64, 0,
41105 OPC_EmitStringInteger32, LoongArch::sub_32,
41106 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41107 40, 3, 1, 0, 2,
41108 OPC_EmitInteger64, 0,
41109 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_W),
41110 116, 2, 3, 4,
41111 22,
41112 OPC_CheckPatternPredicate4,
41113 OPC_EmitInteger64, 0,
41114 OPC_EmitStringInteger32, LoongArch::sub_32,
41115 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41116 40, 3, 1, 0, 2,
41117 OPC_EmitInteger32, 0,
41118 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_W),
41119 116, 2, 3, 4,
41120 0,
41121 0,
41122 86,
41123 OPC_CheckChild0Type, 13,
41124 OPC_CheckChild1Same, 0,
41125 OPC_SwitchType , 24, 8|128,1,
41126 OPC_CheckChild2Same, 0,
41127 OPC_CheckChild3Same, 0,
41128 OPC_CheckPatternPredicate0,
41129 OPC_EmitInteger64, 0,
41130 OPC_EmitStringInteger32, LoongArch::sub_64,
41131 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41132 41, 3, 1, 0, 2,
41133 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE0_D),
41134 8|128,1, 1, 3,
41135 50, 6|128,1,
41136 OPC_Scope, 23,
41137 OPC_CheckPatternPredicate2,
41138 OPC_EmitInteger64, 0,
41139 OPC_EmitStringInteger32, LoongArch::sub_64,
41140 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41141 40, 3, 1, 0, 2,
41142 OPC_EmitInteger64, 0,
41143 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_D),
41144 6|128,1, 2, 3, 4,
41145 23,
41146 OPC_CheckPatternPredicate4,
41147 OPC_EmitInteger64, 0,
41148 OPC_EmitStringInteger32, LoongArch::sub_64,
41149 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41150 40, 3, 1, 0, 2,
41151 OPC_EmitInteger32, 0,
41152 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVEI_D),
41153 6|128,1, 2, 3, 4,
41154 0,
41155 0,
41156 0,
41157 27|128,1, TARGET_VAL(LoongArchISD::VREPLGR2VR),
41158 OPC_RecordChild0,
41159 OPC_Scope, 75,
41160 OPC_CheckChild0TypeI64,
41161 OPC_SwitchType , 7, 40,
41162 OPC_CheckPatternPredicate2,
41163 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_B),
41164 40, 1, 0,
41165 7, 51,
41166 OPC_CheckPatternPredicate2,
41167 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_H),
41168 51, 1, 0,
41169 7, 62,
41170 OPC_CheckPatternPredicate2,
41171 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_W),
41172 62, 1, 0,
41173 7, 81,
41174 OPC_CheckPatternPredicate2,
41175 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_D),
41176 81, 1, 0,
41177 7, 41,
41178 OPC_CheckPatternPredicate3,
41179 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_B),
41180 41, 1, 0,
41181 7, 52,
41182 OPC_CheckPatternPredicate3,
41183 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_H),
41184 52, 1, 0,
41185 7, 66,
41186 OPC_CheckPatternPredicate3,
41187 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_W),
41188 66, 1, 0,
41189 7, 83,
41190 OPC_CheckPatternPredicate3,
41191 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_D),
41192 83, 1, 0,
41193 0,
41194 75,
41195 OPC_CheckChild0TypeI32,
41196 OPC_SwitchType , 7, 40,
41197 OPC_CheckPatternPredicate4,
41198 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_B),
41199 40, 1, 0,
41200 7, 51,
41201 OPC_CheckPatternPredicate4,
41202 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_H),
41203 51, 1, 0,
41204 7, 62,
41205 OPC_CheckPatternPredicate4,
41206 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_W),
41207 62, 1, 0,
41208 7, 81,
41209 OPC_CheckPatternPredicate4,
41210 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLGR2VR_D),
41211 81, 1, 0,
41212 7, 41,
41213 OPC_CheckPatternPredicate5,
41214 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_B),
41215 41, 1, 0,
41216 7, 52,
41217 OPC_CheckPatternPredicate5,
41218 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_H),
41219 52, 1, 0,
41220 7, 66,
41221 OPC_CheckPatternPredicate5,
41222 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_W),
41223 66, 1, 0,
41224 7, 83,
41225 OPC_CheckPatternPredicate5,
41226 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLGR2VR_D),
41227 83, 1, 0,
41228 0,
41229 0,
41230 44|128,1, TARGET_VAL(LoongArchISD::VREPLVE),
41231 OPC_RecordChild0,
41232 OPC_RecordChild1,
41233 OPC_Scope, 83,
41234 OPC_CheckChild1TypeI64,
41235 OPC_SwitchType , 8, 40,
41236 OPC_CheckPatternPredicate2,
41237 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVE_B),
41238 40, 2, 0, 1,
41239 8, 51,
41240 OPC_CheckPatternPredicate2,
41241 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVE_H),
41242 51, 2, 0, 1,
41243 8, 62,
41244 OPC_CheckPatternPredicate2,
41245 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVE_W),
41246 62, 2, 0, 1,
41247 8, 81,
41248 OPC_CheckPatternPredicate2,
41249 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVE_D),
41250 81, 2, 0, 1,
41251 8, 41,
41252 OPC_CheckPatternPredicate3,
41253 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE_B),
41254 41, 2, 0, 1,
41255 8, 52,
41256 OPC_CheckPatternPredicate3,
41257 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE_H),
41258 52, 2, 0, 1,
41259 8, 66,
41260 OPC_CheckPatternPredicate3,
41261 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE_W),
41262 66, 2, 0, 1,
41263 8, 83,
41264 OPC_CheckPatternPredicate3,
41265 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE_D),
41266 83, 2, 0, 1,
41267 0,
41268 83,
41269 OPC_CheckChild1TypeI32,
41270 OPC_SwitchType , 8, 40,
41271 OPC_CheckPatternPredicate4,
41272 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVE_B),
41273 40, 2, 0, 1,
41274 8, 51,
41275 OPC_CheckPatternPredicate4,
41276 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVE_H),
41277 51, 2, 0, 1,
41278 8, 62,
41279 OPC_CheckPatternPredicate4,
41280 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVE_W),
41281 62, 2, 0, 1,
41282 8, 81,
41283 OPC_CheckPatternPredicate4,
41284 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::VREPLVE_D),
41285 81, 2, 0, 1,
41286 8, 41,
41287 OPC_CheckPatternPredicate5,
41288 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE_B),
41289 41, 2, 0, 1,
41290 8, 52,
41291 OPC_CheckPatternPredicate5,
41292 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE_H),
41293 52, 2, 0, 1,
41294 8, 66,
41295 OPC_CheckPatternPredicate5,
41296 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE_W),
41297 66, 2, 0, 1,
41298 8, 83,
41299 OPC_CheckPatternPredicate5,
41300 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVREPLVE_D),
41301 83, 2, 0, 1,
41302 0,
41303 0,
41304 79|128,3, TARGET_VAL(ISD::CONCAT_VECTORS),
41305 OPC_RecordChild0,
41306 OPC_RecordChild1,
41307 OPC_SwitchType , 74, 41,
41308 OPC_Scope, 35,
41309 OPC_CheckPatternPredicate3,
41310 OPC_EmitInteger64, 0,
41311 OPC_EmitStringInteger32, LoongArch::sub_128,
41312 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41313 41, 3, 2, 0, 3,
41314 OPC_EmitInteger64, 0,
41315 OPC_EmitStringInteger32, LoongArch::sub_128,
41316 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41317 41, 3, 5, 1, 6,
41318 OPC_EmitInteger64, 4,
41319 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41320 41, 3, 4, 7, 8,
41321 35,
41322 OPC_CheckPatternPredicate5,
41323 OPC_EmitInteger64, 0,
41324 OPC_EmitStringInteger32, LoongArch::sub_128,
41325 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41326 41, 3, 2, 0, 3,
41327 OPC_EmitInteger64, 0,
41328 OPC_EmitStringInteger32, LoongArch::sub_128,
41329 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41330 41, 3, 5, 1, 6,
41331 OPC_EmitInteger32, 4,
41332 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41333 41, 3, 4, 7, 8,
41334 0,
41335 74, 52,
41336 OPC_Scope, 35,
41337 OPC_CheckPatternPredicate3,
41338 OPC_EmitInteger64, 0,
41339 OPC_EmitStringInteger32, LoongArch::sub_128,
41340 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41341 41, 3, 2, 0, 3,
41342 OPC_EmitInteger64, 0,
41343 OPC_EmitStringInteger32, LoongArch::sub_128,
41344 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41345 41, 3, 5, 1, 6,
41346 OPC_EmitInteger64, 4,
41347 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41348 52, 3, 4, 7, 8,
41349 35,
41350 OPC_CheckPatternPredicate5,
41351 OPC_EmitInteger64, 0,
41352 OPC_EmitStringInteger32, LoongArch::sub_128,
41353 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41354 41, 3, 2, 0, 3,
41355 OPC_EmitInteger64, 0,
41356 OPC_EmitStringInteger32, LoongArch::sub_128,
41357 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41358 41, 3, 5, 1, 6,
41359 OPC_EmitInteger32, 4,
41360 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41361 52, 3, 4, 7, 8,
41362 0,
41363 74, 66,
41364 OPC_Scope, 35,
41365 OPC_CheckPatternPredicate3,
41366 OPC_EmitInteger64, 0,
41367 OPC_EmitStringInteger32, LoongArch::sub_128,
41368 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41369 41, 3, 2, 0, 3,
41370 OPC_EmitInteger64, 0,
41371 OPC_EmitStringInteger32, LoongArch::sub_128,
41372 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41373 41, 3, 5, 1, 6,
41374 OPC_EmitInteger64, 4,
41375 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41376 66, 3, 4, 7, 8,
41377 35,
41378 OPC_CheckPatternPredicate5,
41379 OPC_EmitInteger64, 0,
41380 OPC_EmitStringInteger32, LoongArch::sub_128,
41381 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41382 41, 3, 2, 0, 3,
41383 OPC_EmitInteger64, 0,
41384 OPC_EmitStringInteger32, LoongArch::sub_128,
41385 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41386 41, 3, 5, 1, 6,
41387 OPC_EmitInteger32, 4,
41388 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41389 66, 3, 4, 7, 8,
41390 0,
41391 74, 83,
41392 OPC_Scope, 35,
41393 OPC_CheckPatternPredicate3,
41394 OPC_EmitInteger64, 0,
41395 OPC_EmitStringInteger32, LoongArch::sub_128,
41396 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41397 41, 3, 2, 0, 3,
41398 OPC_EmitInteger64, 0,
41399 OPC_EmitStringInteger32, LoongArch::sub_128,
41400 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41401 41, 3, 5, 1, 6,
41402 OPC_EmitInteger64, 4,
41403 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41404 83, 3, 4, 7, 8,
41405 35,
41406 OPC_CheckPatternPredicate5,
41407 OPC_EmitInteger64, 0,
41408 OPC_EmitStringInteger32, LoongArch::sub_128,
41409 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41410 41, 3, 2, 0, 3,
41411 OPC_EmitInteger64, 0,
41412 OPC_EmitStringInteger32, LoongArch::sub_128,
41413 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41414 41, 3, 5, 1, 6,
41415 OPC_EmitInteger32, 4,
41416 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41417 83, 3, 4, 7, 8,
41418 0,
41419 74, 120,
41420 OPC_Scope, 35,
41421 OPC_CheckPatternPredicate3,
41422 OPC_EmitInteger64, 0,
41423 OPC_EmitStringInteger32, LoongArch::sub_128,
41424 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41425 41, 3, 2, 0, 3,
41426 OPC_EmitInteger64, 0,
41427 OPC_EmitStringInteger32, LoongArch::sub_128,
41428 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41429 41, 3, 5, 1, 6,
41430 OPC_EmitInteger64, 4,
41431 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41432 120, 3, 4, 7, 8,
41433 35,
41434 OPC_CheckPatternPredicate5,
41435 OPC_EmitInteger64, 0,
41436 OPC_EmitStringInteger32, LoongArch::sub_128,
41437 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41438 41, 3, 2, 0, 3,
41439 OPC_EmitInteger64, 0,
41440 OPC_EmitStringInteger32, LoongArch::sub_128,
41441 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41442 41, 3, 5, 1, 6,
41443 OPC_EmitInteger32, 4,
41444 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41445 120, 3, 4, 7, 8,
41446 0,
41447 76, 8|128,1,
41448 OPC_Scope, 36,
41449 OPC_CheckPatternPredicate3,
41450 OPC_EmitInteger64, 0,
41451 OPC_EmitStringInteger32, LoongArch::sub_128,
41452 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41453 41, 3, 2, 0, 3,
41454 OPC_EmitInteger64, 0,
41455 OPC_EmitStringInteger32, LoongArch::sub_128,
41456 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41457 41, 3, 5, 1, 6,
41458 OPC_EmitInteger64, 4,
41459 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41460 8|128,1, 3, 4, 7, 8,
41461 36,
41462 OPC_CheckPatternPredicate5,
41463 OPC_EmitInteger64, 0,
41464 OPC_EmitStringInteger32, LoongArch::sub_128,
41465 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41466 41, 3, 2, 0, 3,
41467 OPC_EmitInteger64, 0,
41468 OPC_EmitStringInteger32, LoongArch::sub_128,
41469 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41470 41, 3, 5, 1, 6,
41471 OPC_EmitInteger32, 4,
41472 OPC_MorphNodeTo1None, TARGET_VAL(LoongArch::XVPERMI_Q),
41473 8|128,1, 3, 4, 7, 8,
41474 0,
41475 0,
41476 77, TARGET_VAL(ISD::SCALAR_TO_VECTOR),
41477 OPC_RecordChild0,
41478 OPC_Scope, 34,
41479 OPC_CheckChild0Type, 12,
41480 OPC_SwitchType , 13, 116,
41481 OPC_CheckPatternPredicate1,
41482 OPC_EmitInteger64, 0,
41483 OPC_EmitStringInteger32, LoongArch::sub_32,
41484 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41485 116, 3, 1, 0, 2,
41486 13, 120,
41487 OPC_CheckPatternPredicate0,
41488 OPC_EmitInteger64, 0,
41489 OPC_EmitStringInteger32, LoongArch::sub_32,
41490 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41491 120, 3, 1, 0, 2,
41492 0,
41493 38,
41494 OPC_CheckChild0Type, 13,
41495 OPC_SwitchType , 14, 6|128,1,
41496 OPC_CheckPatternPredicate1,
41497 OPC_EmitInteger64, 0,
41498 OPC_EmitStringInteger32, LoongArch::sub_64,
41499 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41500 6|128,1, 3, 1, 0, 2,
41501 14, 8|128,1,
41502 OPC_CheckPatternPredicate0,
41503 OPC_EmitInteger64, 0,
41504 OPC_EmitStringInteger32, LoongArch::sub_64,
41505 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
41506 8|128,1, 3, 1, 0, 2,
41507 0,
41508 0,
41509 0,
41510 0
41511 }; // Total Array size is 85521 bytes
41512
41513 #undef COVERAGE_IDX_VAL
41514 #undef TARGET_VAL
41515 SelectCodeCommon(NodeToMatch: N, MatcherTable, TableSize: sizeof(MatcherTable));
41516}
41517#endif // GET_DAGISEL_BODY
41518
41519#ifdef GET_DAGISEL_DECL
41520bool CheckPatternPredicate(unsigned PredNo) const override;
41521#endif
41522#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
41523bool DAGISEL_CLASS_COLONCOLON CheckPatternPredicate(unsigned PredNo) const
41524#if DAGISEL_INLINE
41525 override
41526#endif
41527{
41528 switch (PredNo) {
41529 default: llvm_unreachable("Invalid predicate in table?");
41530 case 0: return (Subtarget->hasExtLASX());
41531 case 1: return (Subtarget->hasExtLSX());
41532 case 2: return (Subtarget->hasExtLSX()) && (Subtarget->is64Bit());
41533 case 3: return (Subtarget->hasExtLASX()) && (Subtarget->is64Bit());
41534 case 4: return (Subtarget->hasExtLSX()) && !((Subtarget->is64Bit()));
41535 case 5: return (Subtarget->hasExtLASX()) && !((Subtarget->is64Bit()));
41536 case 6: return (Subtarget->is64Bit()) && (Subtarget->is64Bit());
41537 case 7: return (Subtarget->is64Bit());
41538 case 8: return !((Subtarget->is64Bit()));
41539 case 9: return (Subtarget->is64Bit()) && !((Subtarget->is64Bit()));
41540 case 10: return (!Subtarget->is64Bit()) && !((Subtarget->is64Bit()));
41541 case 11: return (Subtarget->hasBasicF()) && (Subtarget->is64Bit());
41542 case 12: return (Subtarget->hasBasicF()) && !((Subtarget->is64Bit()));
41543 case 13: return (Subtarget->hasBasicD()) && (Subtarget->is64Bit());
41544 case 14: return (Subtarget->hasBasicD()) && !((Subtarget->is64Bit()));
41545 case 15: return (!Subtarget->is64Bit()) && (Subtarget->is64Bit());
41546 case 16: return (Subtarget->has32S()) && (!Subtarget->is64Bit()) && !((Subtarget->is64Bit()));
41547 case 17: return (Subtarget->hasBasicD());
41548 case 18: return (Subtarget->hasFrecipe());
41549 case 19: return (Subtarget->hasBasicF());
41550 case 20: return (Subtarget->has32S()) && (!Subtarget->is64Bit()) && (Subtarget->is64Bit());
41551 case 21: return (Subtarget->hasLAM_BH()) && (Subtarget->is64Bit()) && (Subtarget->is64Bit());
41552 case 22: return (Subtarget->hasLAM_BH()) && (Subtarget->is64Bit()) && !((Subtarget->is64Bit()));
41553 case 23: return (Subtarget->has32S()) && (Subtarget->is64Bit());
41554 case 24: return (Subtarget->has32S()) && !((Subtarget->is64Bit()));
41555 case 25: return (Subtarget->hasLAMCAS()) && (Subtarget->is64Bit()) && (Subtarget->is64Bit());
41556 case 26: return (Subtarget->hasLAMCAS()) && (Subtarget->is64Bit()) && !((Subtarget->is64Bit()));
41557 case 27: return (Subtarget->hasBasicD()) && (Subtarget->is64Bit()) && (Subtarget->is64Bit());
41558 case 28: return (Subtarget->hasBasicD()) && (Subtarget->is64Bit()) && !((Subtarget->is64Bit()));
41559 case 29: return (Subtarget->hasBasicD()) && (!Subtarget->is64Bit()) && !((Subtarget->is64Bit()));
41560 case 30: return (Subtarget->hasBasicF()) && (Subtarget->is64Bit()) && (Subtarget->is64Bit());
41561 case 31: return (Subtarget->hasBasicF()) && (!Subtarget->is64Bit()) && !((Subtarget->is64Bit()));
41562 case 32: return (Subtarget->hasBasicD()) && (!Subtarget->is64Bit()) && (Subtarget->is64Bit());
41563 }
41564}
41565#endif // GET_DAGISEL_BODY
41566
41567#ifdef GET_DAGISEL_DECL
41568bool CheckNodePredicate(SDValue Op, unsigned PredNo) const override;
41569#endif
41570#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
41571bool DAGISEL_CLASS_COLONCOLON CheckNodePredicate(SDValue Op, unsigned PredNo) const
41572#if DAGISEL_INLINE
41573 override
41574#endif
41575{
41576 switch (PredNo) {
41577 default: llvm_unreachable("Invalid predicate in table?");
41578 case 0: {
41579 // Predicate_unindexedstore
41580 SDNode *N = Op.getNode();
41581 (void)N;
41582if (cast<StoreSDNode>(Val: N)->getAddressingMode() != ISD::UNINDEXED) return false;
41583return true;
41584
41585 }
41586 case 1: {
41587 // Predicate_store
41588 SDNode *N = Op.getNode();
41589 (void)N;
41590 if (cast<StoreSDNode>(Val: N)->isTruncatingStore()) return false;
41591return true;
41592
41593 }
41594 case 2: {
41595 // Predicate_atomic_cmp_swap_i32
41596 // Predicate_atomic_load_add_i32
41597 // Predicate_atomic_load_aext_32
41598 // Predicate_atomic_load_and_i32
41599 // Predicate_atomic_load_max_i32
41600 // Predicate_atomic_load_min_i32
41601 // Predicate_atomic_load_nand_i32
41602 // Predicate_atomic_load_nonext_32
41603 // Predicate_atomic_load_or_i32
41604 // Predicate_atomic_load_sext_32
41605 // Predicate_atomic_load_sub_i32
41606 // Predicate_atomic_load_umax_i32
41607 // Predicate_atomic_load_umin_i32
41608 // Predicate_atomic_load_xor_i32
41609 // Predicate_atomic_store_32
41610 // Predicate_atomic_swap_i32
41611 // Predicate_extloadi32
41612 // Predicate_sextloadi32
41613 // Predicate_truncstorei32
41614 // Predicate_zextloadi32
41615 SDNode *N = Op.getNode();
41616 (void)N;
41617if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i32) return false;
41618return true;
41619
41620 }
41621 case 3: {
41622 // Predicate_AddLike
41623 SDNode *N = Op.getNode();
41624 (void)N;
41625
41626 return CurDAG->isBaseWithConstantOffset(Op: SDValue(N, 0));
41627
41628 }
41629 case 4: {
41630 // Predicate_atomic_cmp_swap_i8
41631 // Predicate_atomic_load_add_i8
41632 // Predicate_atomic_load_aext_8
41633 // Predicate_atomic_load_sext_8
41634 // Predicate_atomic_load_sub_i8
41635 // Predicate_atomic_store_8
41636 // Predicate_atomic_swap_i8
41637 // Predicate_extloadi8
41638 // Predicate_sextloadi8
41639 // Predicate_truncstorei8
41640 // Predicate_zextloadi8
41641 SDNode *N = Op.getNode();
41642 (void)N;
41643if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i8) return false;
41644return true;
41645
41646 }
41647 case 5: {
41648 // Predicate_atomic_cmp_swap_i16
41649 // Predicate_atomic_load_add_i16
41650 // Predicate_atomic_load_aext_16
41651 // Predicate_atomic_load_sext_16
41652 // Predicate_atomic_load_sub_i16
41653 // Predicate_atomic_store_16
41654 // Predicate_atomic_swap_i16
41655 // Predicate_extloadi16
41656 // Predicate_sextloadi16
41657 // Predicate_truncstorei16
41658 // Predicate_zextloadi16
41659 SDNode *N = Op.getNode();
41660 (void)N;
41661if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i16) return false;
41662return true;
41663
41664 }
41665 case 6: {
41666 // Predicate_atomic_cmp_swap_i16_monotonic
41667 // Predicate_atomic_cmp_swap_i32_monotonic
41668 // Predicate_atomic_cmp_swap_i64_monotonic
41669 // Predicate_atomic_cmp_swap_i8_monotonic
41670 // Predicate_atomic_load_add_i16_monotonic
41671 // Predicate_atomic_load_add_i32_monotonic
41672 // Predicate_atomic_load_add_i64_monotonic
41673 // Predicate_atomic_load_add_i8_monotonic
41674 // Predicate_atomic_load_and_i32_monotonic
41675 // Predicate_atomic_load_and_i64_monotonic
41676 // Predicate_atomic_load_max_i32_monotonic
41677 // Predicate_atomic_load_max_i64_monotonic
41678 // Predicate_atomic_load_min_i32_monotonic
41679 // Predicate_atomic_load_min_i64_monotonic
41680 // Predicate_atomic_load_nand_i32_monotonic
41681 // Predicate_atomic_load_nand_i64_monotonic
41682 // Predicate_atomic_load_or_i32_monotonic
41683 // Predicate_atomic_load_or_i64_monotonic
41684 // Predicate_atomic_load_sub_i16_monotonic
41685 // Predicate_atomic_load_sub_i32_monotonic
41686 // Predicate_atomic_load_sub_i64_monotonic
41687 // Predicate_atomic_load_sub_i8_monotonic
41688 // Predicate_atomic_load_umax_i32_monotonic
41689 // Predicate_atomic_load_umax_i64_monotonic
41690 // Predicate_atomic_load_umin_i32_monotonic
41691 // Predicate_atomic_load_umin_i64_monotonic
41692 // Predicate_atomic_load_xor_i32_monotonic
41693 // Predicate_atomic_load_xor_i64_monotonic
41694 // Predicate_atomic_swap_i16_monotonic
41695 // Predicate_atomic_swap_i32_monotonic
41696 // Predicate_atomic_swap_i64_monotonic
41697 // Predicate_atomic_swap_i8_monotonic
41698 SDNode *N = Op.getNode();
41699 (void)N;
41700if (cast<AtomicSDNode>(Val: N)->getMergedOrdering() != AtomicOrdering::Monotonic) return false;
41701return true;
41702
41703 }
41704 case 7: {
41705 // Predicate_load
41706 SDNode *N = Op.getNode();
41707 (void)N;
41708if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::NON_EXTLOAD) return false;
41709return true;
41710
41711 }
41712 case 8: {
41713 // Predicate_unindexedload
41714 SDNode *N = Op.getNode();
41715 (void)N;
41716if (cast<LoadSDNode>(Val: N)->getAddressingMode() != ISD::UNINDEXED) return false;
41717return true;
41718
41719 }
41720 case 9: {
41721 // Predicate_truncstore
41722 SDNode *N = Op.getNode();
41723 (void)N;
41724 if (!cast<StoreSDNode>(Val: N)->isTruncatingStore()) return false;
41725return true;
41726
41727 }
41728 case 10: {
41729 // Predicate_atomic_cmp_swap_i64
41730 // Predicate_atomic_load_add_i64
41731 // Predicate_atomic_load_and_i64
41732 // Predicate_atomic_load_max_i64
41733 // Predicate_atomic_load_min_i64
41734 // Predicate_atomic_load_nand_i64
41735 // Predicate_atomic_load_nonext_64
41736 // Predicate_atomic_load_or_i64
41737 // Predicate_atomic_load_sub_i64
41738 // Predicate_atomic_load_umax_i64
41739 // Predicate_atomic_load_umin_i64
41740 // Predicate_atomic_load_xor_i64
41741 // Predicate_atomic_store_64
41742 // Predicate_atomic_swap_i64
41743 SDNode *N = Op.getNode();
41744 (void)N;
41745if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i64) return false;
41746return true;
41747
41748 }
41749 case 11: {
41750 // Predicate_simm12
41751 // Predicate_simm12_addlike
41752 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
41753return isInt<12>(x: Imm);
41754 }
41755 case 12: {
41756 // Predicate_vsplat_imm_eq_1
41757 SDNode *N = Op.getNode();
41758 (void)N;
41759
41760 APInt Imm;
41761 EVT EltTy = N->getValueType(ResNo: 0).getVectorElementType();
41762
41763 if (N->getOpcode() == ISD::BITCAST)
41764 N = N->getOperand(Num: 0).getNode();
41765
41766 return selectVSplat(N, Imm, MinSizeInBits: EltTy.getSizeInBits()) &&
41767 Imm.getBitWidth() == EltTy.getSizeInBits() && Imm == 1;
41768
41769 }
41770 case 13: {
41771 // Predicate_mul_const_oneuse
41772 SDNode *N = Op.getNode();
41773 (void)N;
41774
41775 if (auto *N1C = dyn_cast<ConstantSDNode>(Val: N->getOperand(Num: 1)))
41776 return N1C->hasOneUse();
41777 return false;
41778
41779 }
41780 case 14: {
41781 // Predicate_vsplati8_imm_eq_7
41782 SDNode *N = Op.getNode();
41783 (void)N;
41784
41785 APInt Imm;
41786 EVT EltTy = N->getValueType(ResNo: 0).getVectorElementType();
41787
41788 if (N->getOpcode() == ISD::BITCAST)
41789 N = N->getOperand(Num: 0).getNode();
41790
41791 return selectVSplat(N, Imm, MinSizeInBits: EltTy.getSizeInBits()) &&
41792 Imm.getBitWidth() == EltTy.getSizeInBits() && Imm == 7;
41793
41794 }
41795 case 15: {
41796 // Predicate_vsplati16_imm_eq_15
41797 SDNode *N = Op.getNode();
41798 (void)N;
41799
41800 APInt Imm;
41801 EVT EltTy = N->getValueType(ResNo: 0).getVectorElementType();
41802
41803 if (N->getOpcode() == ISD::BITCAST)
41804 N = N->getOperand(Num: 0).getNode();
41805
41806 return selectVSplat(N, Imm, MinSizeInBits: EltTy.getSizeInBits()) &&
41807 Imm.getBitWidth() == EltTy.getSizeInBits() && Imm == 15;
41808
41809 }
41810 case 16: {
41811 // Predicate_vsplati32_imm_eq_31
41812 SDNode *N = Op.getNode();
41813 (void)N;
41814
41815 APInt Imm;
41816 EVT EltTy = N->getValueType(ResNo: 0).getVectorElementType();
41817
41818 if (N->getOpcode() == ISD::BITCAST)
41819 N = N->getOperand(Num: 0).getNode();
41820
41821 return selectVSplat(N, Imm, MinSizeInBits: EltTy.getSizeInBits()) &&
41822 Imm.getBitWidth() == EltTy.getSizeInBits() && Imm == 31;
41823
41824 }
41825 case 17: {
41826 // Predicate_vsplati64_imm_eq_63
41827 SDNode *N = Op.getNode();
41828 (void)N;
41829
41830 APInt Imm;
41831 EVT EltTy = N->getValueType(ResNo: 0).getVectorElementType();
41832
41833 if (N->getOpcode() == ISD::BITCAST)
41834 N = N->getOperand(Num: 0).getNode();
41835
41836 return selectVSplat(N, Imm, MinSizeInBits: EltTy.getSizeInBits()) &&
41837 Imm.getBitWidth() == EltTy.getSizeInBits() && Imm == 63;
41838
41839 }
41840 case 18: {
41841 // Predicate_immZExt2
41842 // Predicate_uimm2
41843 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
41844return isUInt<2>(x: Imm);
41845 }
41846 case 19: {
41847 // Predicate_immZExt3
41848 // Predicate_uimm3
41849 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
41850return isUInt<3>(x: Imm);
41851 }
41852 case 20: {
41853 // Predicate_sextload
41854 SDNode *N = Op.getNode();
41855 (void)N;
41856if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::SEXTLOAD) return false;
41857return true;
41858
41859 }
41860 case 21: {
41861 // Predicate_atomic_load_add_i32_acquire
41862 // Predicate_atomic_load_and_i32_acquire
41863 // Predicate_atomic_load_max_i32_acquire
41864 // Predicate_atomic_load_min_i32_acquire
41865 // Predicate_atomic_load_nand_i32_acquire
41866 // Predicate_atomic_load_nand_i64_acquire
41867 // Predicate_atomic_load_or_i32_acquire
41868 // Predicate_atomic_load_sub_i32_acquire
41869 // Predicate_atomic_load_umax_i32_acquire
41870 // Predicate_atomic_load_umin_i32_acquire
41871 // Predicate_atomic_load_xor_i32_acquire
41872 // Predicate_atomic_swap_i32_acquire
41873 SDNode *N = Op.getNode();
41874 (void)N;
41875if (cast<AtomicSDNode>(Val: N)->getMergedOrdering() != AtomicOrdering::Acquire) return false;
41876return true;
41877
41878 }
41879 case 22: {
41880 // Predicate_atomic_load_add_i32_release
41881 // Predicate_atomic_load_and_i32_release
41882 // Predicate_atomic_load_max_i32_release
41883 // Predicate_atomic_load_min_i32_release
41884 // Predicate_atomic_load_nand_i32_release
41885 // Predicate_atomic_load_nand_i64_release
41886 // Predicate_atomic_load_or_i32_release
41887 // Predicate_atomic_load_sub_i32_release
41888 // Predicate_atomic_load_umax_i32_release
41889 // Predicate_atomic_load_umin_i32_release
41890 // Predicate_atomic_load_xor_i32_release
41891 // Predicate_atomic_swap_i32_release
41892 SDNode *N = Op.getNode();
41893 (void)N;
41894if (cast<AtomicSDNode>(Val: N)->getMergedOrdering() != AtomicOrdering::Release) return false;
41895return true;
41896
41897 }
41898 case 23: {
41899 // Predicate_atomic_load_add_i32_acq_rel
41900 // Predicate_atomic_load_and_i32_acq_rel
41901 // Predicate_atomic_load_max_i32_acq_rel
41902 // Predicate_atomic_load_min_i32_acq_rel
41903 // Predicate_atomic_load_nand_i32_acq_rel
41904 // Predicate_atomic_load_nand_i64_acq_rel
41905 // Predicate_atomic_load_or_i32_acq_rel
41906 // Predicate_atomic_load_sub_i32_acq_rel
41907 // Predicate_atomic_load_umax_i32_acq_rel
41908 // Predicate_atomic_load_umin_i32_acq_rel
41909 // Predicate_atomic_load_xor_i32_acq_rel
41910 // Predicate_atomic_swap_i32_acq_rel
41911 SDNode *N = Op.getNode();
41912 (void)N;
41913if (cast<AtomicSDNode>(Val: N)->getMergedOrdering() != AtomicOrdering::AcquireRelease) return false;
41914return true;
41915
41916 }
41917 case 24: {
41918 // Predicate_atomic_load_add_i32_seq_cst
41919 // Predicate_atomic_load_and_i32_seq_cst
41920 // Predicate_atomic_load_max_i32_seq_cst
41921 // Predicate_atomic_load_min_i32_seq_cst
41922 // Predicate_atomic_load_nand_i32_seq_cst
41923 // Predicate_atomic_load_nand_i64_seq_cst
41924 // Predicate_atomic_load_or_i32_seq_cst
41925 // Predicate_atomic_load_sub_i32_seq_cst
41926 // Predicate_atomic_load_umax_i32_seq_cst
41927 // Predicate_atomic_load_umin_i32_seq_cst
41928 // Predicate_atomic_load_xor_i32_seq_cst
41929 // Predicate_atomic_swap_i32_seq_cst
41930 SDNode *N = Op.getNode();
41931 (void)N;
41932if (cast<AtomicSDNode>(Val: N)->getMergedOrdering() != AtomicOrdering::SequentiallyConsistent) return false;
41933return true;
41934
41935 }
41936 case 25: {
41937 // Predicate_uimm5
41938 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
41939return isUInt<5>(x: Imm);
41940 }
41941 case 26: {
41942 // Predicate_extload
41943 SDNode *N = Op.getNode();
41944 (void)N;
41945if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::EXTLOAD) return false;
41946return true;
41947
41948 }
41949 case 27: {
41950 // Predicate_immZExt4
41951 // Predicate_uimm4
41952 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
41953return isUInt<4>(x: Imm);
41954 }
41955 case 28: {
41956 // Predicate_atomic_load_aext
41957 SDNode *N = Op.getNode();
41958 (void)N;
41959if (cast<AtomicSDNode>(Val: N)->getExtensionType() != ISD::EXTLOAD) return false;
41960return true;
41961
41962 }
41963 case 29: {
41964 // Predicate_atomic_load_sext
41965 SDNode *N = Op.getNode();
41966 (void)N;
41967if (cast<AtomicSDNode>(Val: N)->getExtensionType() != ISD::SEXTLOAD) return false;
41968return true;
41969
41970 }
41971 case 30: {
41972 // Predicate_simm8_lsl2
41973 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
41974return isShiftedInt<8,2>(x: Imm);
41975 }
41976 case 31: {
41977 // Predicate_simm8_lsl3
41978 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
41979return isShiftedInt<8,3>(x: Imm);
41980 }
41981 case 32: {
41982 // Predicate_zextload
41983 SDNode *N = Op.getNode();
41984 (void)N;
41985if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::ZEXTLOAD) return false;
41986return true;
41987
41988 }
41989 case 33: {
41990 // Predicate_uimm6
41991 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
41992return isUInt<6>(x: Imm);
41993 }
41994 case 34: {
41995 // Predicate_immZExt1
41996 // Predicate_uimm1
41997 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
41998return isUInt<1>(x: Imm);
41999 }
42000 case 35: {
42001 // Predicate_atomic_load_nonext
42002 SDNode *N = Op.getNode();
42003 (void)N;
42004if (cast<AtomicSDNode>(Val: N)->getExtensionType() != ISD::NON_EXTLOAD) return false;
42005return true;
42006
42007 }
42008 case 36: {
42009 // Predicate_atomic_store_unordered_monotonic_32
42010 // Predicate_atomic_store_unordered_monotonic_64
42011 SDNode *N = Op.getNode();
42012 (void)N;
42013
42014 AtomicOrdering Ordering = cast<AtomicSDNode>(Val: N)->getSuccessOrdering();
42015 return !isReleaseOrStronger(AO: Ordering);
42016
42017 }
42018 case 37: {
42019 // Predicate_immZExt8
42020 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42021return isUInt<8>(x: Imm);
42022 }
42023 case 38: {
42024 // Predicate_simm8
42025 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42026return isInt<8>(x: Imm);
42027 }
42028 case 39: {
42029 // Predicate_simm8_lsl1
42030 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42031return isShiftedInt<8,1>(x: Imm);
42032 }
42033 case 40: {
42034 // Predicate_fma_nsz
42035 SDNode *N = Op.getNode();
42036 (void)N;
42037
42038 return N->getFlags().hasNoSignedZeros();
42039
42040 }
42041 case 41: {
42042 // Predicate_simm10_lsl2
42043 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42044return isShiftedInt<10,2>(x: Imm);
42045 }
42046 case 42: {
42047 // Predicate_simm9_lsl3
42048 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42049return isShiftedInt<9,3>(x: Imm);
42050 }
42051 case 43: {
42052 // Predicate_uimm2_plus1
42053 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42054return isUInt<2>(x: Imm - 1);
42055 }
42056 case 44: {
42057 // Predicate_assertsexti32
42058 SDNode *N = Op.getNode();
42059 (void)N;
42060
42061 return cast<VTSDNode>(Val: N->getOperand(Num: 1))->getVT().bitsLE(VT: MVT::i32);
42062
42063 }
42064 case 45: {
42065 // Predicate_simm14_lsl2
42066 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42067return isShiftedInt<14,2>(x: Imm);
42068 }
42069 case 46: {
42070 // Predicate_atomic_store_release_seqcst_32
42071 // Predicate_atomic_store_release_seqcst_64
42072 SDNode *N = Op.getNode();
42073 (void)N;
42074
42075 AtomicOrdering Ordering = cast<AtomicSDNode>(Val: N)->getSuccessOrdering();
42076 return isReleaseOrStronger(AO: Ordering);
42077
42078 }
42079 case 47: {
42080 // Predicate_uimm15
42081 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42082return isUInt<15>(x: Imm);
42083 }
42084 case 48: {
42085 // Predicate_simm11_lsl1
42086 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42087return isShiftedInt<11,1>(x: Imm);
42088 }
42089 case 49: {
42090 // Predicate_uimm12
42091 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42092return isUInt<12>(x: Imm);
42093 }
42094 case 50: {
42095 // Predicate_uimm14
42096 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42097return isUInt<14>(x: Imm);
42098 }
42099 case 51: {
42100 // Predicate_atomic_cmp_swap_i32_failure_monotonic
42101 // Predicate_atomic_cmp_swap_i64_failure_monotonic
42102 SDNode *N = Op.getNode();
42103 (void)N;
42104
42105 AtomicOrdering Ordering = cast<AtomicSDNode>(Val: N)->getFailureOrdering();
42106 return Ordering == AtomicOrdering::Monotonic;
42107
42108 }
42109 case 52: {
42110 // Predicate_atomic_cmp_swap_i32_failure_acquire
42111 // Predicate_atomic_cmp_swap_i64_failure_acquire
42112 SDNode *N = Op.getNode();
42113 (void)N;
42114
42115 AtomicOrdering Ordering = cast<AtomicSDNode>(Val: N)->getFailureOrdering();
42116 return Ordering == AtomicOrdering::Acquire;
42117
42118 }
42119 case 53: {
42120 // Predicate_atomic_cmp_swap_i32_failure_release
42121 // Predicate_atomic_cmp_swap_i64_failure_release
42122 SDNode *N = Op.getNode();
42123 (void)N;
42124
42125 AtomicOrdering Ordering = cast<AtomicSDNode>(Val: N)->getFailureOrdering();
42126 return Ordering == AtomicOrdering::Release;
42127
42128 }
42129 case 54: {
42130 // Predicate_atomic_cmp_swap_i32_failure_acq_rel
42131 // Predicate_atomic_cmp_swap_i64_failure_acq_rel
42132 SDNode *N = Op.getNode();
42133 (void)N;
42134
42135 AtomicOrdering Ordering = cast<AtomicSDNode>(Val: N)->getFailureOrdering();
42136 return Ordering == AtomicOrdering::AcquireRelease;
42137
42138 }
42139 case 55: {
42140 // Predicate_atomic_cmp_swap_i32_failure_seq_cst
42141 // Predicate_atomic_cmp_swap_i64_failure_seq_cst
42142 SDNode *N = Op.getNode();
42143 (void)N;
42144
42145 AtomicOrdering Ordering = cast<AtomicSDNode>(Val: N)->getFailureOrdering();
42146 return Ordering == AtomicOrdering::SequentiallyConsistent;
42147
42148 }
42149 case 56: {
42150 // Predicate_fpimm1
42151 auto *N = cast<ConstantFPSDNode>(Val: Op.getNode());
42152 (void)N;
42153return N->isExactlyValue(V: +1.0);
42154 }
42155 case 57: {
42156 // Predicate_AlslSlliImm
42157 auto *N = cast<ConstantSDNode>(Val: Op.getNode());
42158 (void)N;
42159
42160 if (!N->hasOneUse())
42161 return false;
42162 uint64_t Imm = N->getZExtValue();
42163 unsigned I1 = llvm::countr_zero(Val: Imm);
42164 uint64_t Rem = Imm >> I1;
42165 return Rem == 3 || Rem == 5 || Rem == 9 || Rem == 17;
42166
42167 }
42168 case 58: {
42169 // Predicate_simm32_hi16_lo12
42170 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42171
42172 return !isInt<12>(x: Imm) && isShiftedInt<16, 16>(x: Imm - SignExtend64<12>(x: Imm));
42173
42174 }
42175 case 59: {
42176 // Predicate_AddiPair
42177 auto *N = cast<ConstantSDNode>(Val: Op.getNode());
42178 (void)N;
42179
42180 if (!N->hasOneUse())
42181 return false;
42182 // The immediate operand must be in range [-4096,-2049] or [2048,4094].
42183 int64_t Imm = N->getSExtValue();
42184 return (-4096 <= Imm && Imm <= -2049) || (2048 <= Imm && Imm <= 4094);
42185
42186 }
42187 case 60: {
42188 // Predicate_simm12_plus1
42189 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42190return (isInt<12>(x: Imm) && Imm != -2048) || Imm == 2048;
42191 }
42192 case 61: {
42193 // Predicate_vsplatf32_fpimm_eq_1
42194 SDNode *N = Op.getNode();
42195 (void)N;
42196
42197 APInt Imm;
42198 EVT EltTy = N->getValueType(ResNo: 0).getVectorElementType();
42199 N = N->getOperand(Num: 0).getNode();
42200
42201 return selectVSplat(N, Imm, MinSizeInBits: EltTy.getSizeInBits()) &&
42202 Imm.getBitWidth() == EltTy.getSizeInBits() &&
42203 Imm == APFloat(+1.0f).bitcastToAPInt();
42204
42205 }
42206 case 62: {
42207 // Predicate_vsplatf64_fpimm_eq_1
42208 SDNode *N = Op.getNode();
42209 (void)N;
42210
42211 APInt Imm;
42212 EVT EltTy = N->getValueType(ResNo: 0).getVectorElementType();
42213 N = N->getOperand(Num: 0).getNode();
42214
42215 return selectVSplat(N, Imm, MinSizeInBits: EltTy.getSizeInBits()) &&
42216 Imm.getBitWidth() == EltTy.getSizeInBits() &&
42217 Imm == APFloat(+1.0).bitcastToAPInt();
42218
42219 }
42220 case 63: {
42221 // Predicate_fpimm0
42222 auto *N = cast<ConstantFPSDNode>(Val: Op.getNode());
42223 (void)N;
42224return N->isExactlyValue(V: +0.0);
42225 }
42226 case 64: {
42227 // Predicate_fpimm0neg
42228 auto *N = cast<ConstantFPSDNode>(Val: Op.getNode());
42229 (void)N;
42230return N->isExactlyValue(V: -0.0);
42231 }
42232 case 65: {
42233 // Predicate_simm16_lsl16
42234 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42235return isShiftedInt<16, 16>(x: Imm);
42236 }
42237 case 66: {
42238 // Predicate_BstrinsImm
42239 auto *N = cast<ConstantSDNode>(Val: Op.getNode());
42240 (void)N;
42241
42242 if (!N->hasOneUse())
42243 return false;
42244 uint64_t Imm = N->getZExtValue();
42245 // andi can be used instead if Imm <= 0xfff.
42246 if (Imm <= 0xfff)
42247 return false;
42248 unsigned MaskIdx, MaskLen;
42249 return N->getValueType(ResNo: 0).getSizeInBits() == 32
42250 ? llvm::isShiftedMask_32(Value: ~Imm, MaskIdx, MaskLen)
42251 : llvm::isShiftedMask_64(Value: ~Imm, MaskIdx, MaskLen);
42252
42253 }
42254 case 67: {
42255 // Predicate_simm16_lsl2
42256 int64_t Imm = cast<ConstantSDNode>(Val: Op.getNode())->getSExtValue();
42257return isInt<16>(x: Imm>>2);
42258 }
42259 case 68: {
42260 // Predicate_f32imm_vldi
42261 auto *N = cast<ConstantFPSDNode>(Val: Op.getNode());
42262 (void)N;
42263
42264 const auto &TLI =
42265 *static_cast<const LoongArchTargetLowering*>(getTargetLowering());
42266 return TLI.isFPImmVLDILegal(Imm: N->getValueAPF(), VT: MVT::f32);
42267
42268 }
42269 case 69: {
42270 // Predicate_f64imm_vldi
42271 auto *N = cast<ConstantFPSDNode>(Val: Op.getNode());
42272 (void)N;
42273
42274 const auto &TLI =
42275 *static_cast<const LoongArchTargetLowering*>(getTargetLowering());
42276 return TLI.isFPImmVLDILegal(Imm: N->getValueAPF(), VT: MVT::f64);
42277
42278 }
42279 }
42280}
42281#endif // GET_DAGISEL_BODY
42282
42283#ifdef GET_DAGISEL_DECL
42284bool CheckComplexPattern(SDNode *Root, SDNode *Parent,
42285 SDValue N, unsigned PatternNo,
42286 SmallVectorImpl<std::pair<SDValue, SDNode *>> &Result) override;
42287#endif
42288#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
42289bool DAGISEL_CLASS_COLONCOLON CheckComplexPattern(SDNode *Root, SDNode *Parent,
42290 SDValue N, unsigned PatternNo,
42291 SmallVectorImpl<std::pair<SDValue, SDNode *>> &Result)
42292#if DAGISEL_INLINE
42293 override
42294#endif
42295{
42296 unsigned NextRes = Result.size();
42297 switch (PatternNo) {
42298 default: llvm_unreachable("Invalid pattern # in table?");
42299 case 0:
42300 Result.resize(N: NextRes+1);
42301 return SelectBaseAddr(Addr: N, Base&: Result[NextRes+0].first);
42302 case 1:
42303 Result.resize(N: NextRes+1);
42304 return selectVSplatImm<5>(N, SplatVal&: Result[NextRes+0].first);
42305 case 2:
42306 Result.resize(N: NextRes+2);
42307 return SelectAddrConstant(Addr: N, Base&: Result[NextRes+0].first, Offset&: Result[NextRes+1].first);
42308 case 3:
42309 Result.resize(N: NextRes+1);
42310 return selectNonFIBaseAddr(Addr: N, Base&: Result[NextRes+0].first);
42311 case 4:
42312 Result.resize(N: NextRes+1);
42313 return selectVSplatImm<5, true>(N, SplatVal&: Result[NextRes+0].first);
42314 case 5:
42315 Result.resize(N: NextRes+1);
42316 return selectVSplatUimmPow2(N, SplatImm&: Result[NextRes+0].first);
42317 case 6:
42318 Result.resize(N: NextRes+1);
42319 return selectVSplatUimmInvPow2(N, SplatImm&: Result[NextRes+0].first);
42320 case 7:
42321 Result.resize(N: NextRes+1);
42322 return selectVSplatImm<8>(N, SplatVal&: Result[NextRes+0].first);
42323 case 8:
42324 Result.resize(N: NextRes+1);
42325 return selectShiftMaskGRLen(N, ShAmt&: Result[NextRes+0].first);
42326 case 9:
42327 Result.resize(N: NextRes+1);
42328 return selectVSplatImm<3>(N, SplatVal&: Result[NextRes+0].first);
42329 case 10:
42330 Result.resize(N: NextRes+1);
42331 return selectVSplatImm<4>(N, SplatVal&: Result[NextRes+0].first);
42332 case 11:
42333 Result.resize(N: NextRes+1);
42334 return selectVSplatImm<6>(N, SplatVal&: Result[NextRes+0].first);
42335 case 12:
42336 Result.resize(N: NextRes+2);
42337 return SelectAddrRegImm12(Addr: N, Base&: Result[NextRes+0].first, Offset&: Result[NextRes+1].first);
42338 case 13:
42339 Result.resize(N: NextRes+1);
42340 return selectShiftMask32(N, ShAmt&: Result[NextRes+0].first);
42341 case 14:
42342 Result.resize(N: NextRes+1);
42343 return selectSExti32(N, Val&: Result[NextRes+0].first);
42344 }
42345}
42346#endif // GET_DAGISEL_BODY
42347
42348#ifdef GET_DAGISEL_DECL
42349SDValue RunSDNodeXForm(SDValue V, unsigned XFormNo) override;
42350#endif
42351#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
42352SDValue DAGISEL_CLASS_COLONCOLON RunSDNodeXForm(SDValue V, unsigned XFormNo)
42353#if DAGISEL_INLINE
42354 override
42355#endif
42356{
42357 switch (XFormNo) {
42358 default: llvm_unreachable("Invalid xform # in table?");
42359 case 0: {
42360 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42361
42362 uint64_t Imm = N->getZExtValue();
42363 unsigned I1 = llvm::countr_zero(Val: Imm);
42364 uint64_t I0;
42365 switch (Imm >> I1) {
42366 case 3: I0 = 1; break;
42367 case 5: I0 = 2; break;
42368 case 9: I0 = 3; break;
42369 default: I0 = 4; break;
42370 }
42371 return CurDAG->getTargetConstant(Val: I0, DL: SDLoc(N),
42372 VT: N->getValueType(ResNo: 0));
42373
42374 }
42375 case 1: {
42376 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42377
42378 uint64_t Imm = N->getZExtValue();
42379 unsigned I1 = llvm::countr_zero(Val: Imm);
42380 return CurDAG->getTargetConstant(Val: I1, DL: SDLoc(N),
42381 VT: N->getValueType(ResNo: 0));
42382
42383 }
42384 case 2: {
42385 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42386
42387 auto Imm = N->getSExtValue();
42388 return CurDAG->getSignedTargetConstant(Val: (Imm - SignExtend64<12>(x: Imm)) >> 16,
42389 DL: SDLoc(N), VT: N->getValueType(ResNo: 0));
42390
42391 }
42392 case 3: {
42393 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42394
42395 return CurDAG->getSignedTargetConstant(Val: SignExtend64<12>(x: N->getSExtValue()),
42396 DL: SDLoc(N), VT: N->getValueType(ResNo: 0));
42397
42398 }
42399 case 4: {
42400 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42401
42402 int64_t Imm = N->getSExtValue() < 0 ? -2048 : 2047;
42403 return CurDAG->getSignedTargetConstant(Val: Imm, DL: SDLoc(N),
42404 VT: N->getValueType(ResNo: 0));
42405
42406 }
42407 case 5: {
42408 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42409
42410 int64_t Imm = N->getSExtValue();
42411 int64_t Adj = Imm < 0 ? -2048 : 2047;
42412 return CurDAG->getSignedTargetConstant(Val: Imm - Adj, DL: SDLoc(N),
42413 VT: N->getValueType(ResNo: 0));
42414
42415 }
42416 case 6: {
42417 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42418
42419 return CurDAG->getSignedTargetConstant(Val: N->getSExtValue() >> 16, DL: SDLoc(N),
42420 VT: N->getValueType(ResNo: 0));
42421
42422 }
42423 case 7: {
42424 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42425
42426 auto CN = cast<ConstantSDNode>(Val: N);
42427 return CurDAG->getSignedTargetConstant(Val: CN->getSExtValue(), DL: SDLoc(N),
42428 VT: Subtarget->getGRLenVT());
42429
42430 }
42431 case 8: {
42432 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42433
42434 uint64_t Imm = N->getZExtValue();
42435 unsigned MaskIdx, MaskLen;
42436 N->getValueType(ResNo: 0).getSizeInBits() == 32
42437 ? llvm::isShiftedMask_32(Value: ~Imm, MaskIdx, MaskLen)
42438 : llvm::isShiftedMask_64(Value: ~Imm, MaskIdx, MaskLen);
42439 return CurDAG->getTargetConstant(Val: MaskIdx + MaskLen - 1, DL: SDLoc(N),
42440 VT: N->getValueType(ResNo: 0));
42441
42442 }
42443 case 9: {
42444 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42445
42446 uint64_t Imm = N->getZExtValue();
42447 unsigned MaskIdx, MaskLen;
42448 N->getValueType(ResNo: 0).getSizeInBits() == 32
42449 ? llvm::isShiftedMask_32(Value: ~Imm, MaskIdx, MaskLen)
42450 : llvm::isShiftedMask_64(Value: ~Imm, MaskIdx, MaskLen);
42451 return CurDAG->getTargetConstant(Val: MaskIdx, DL: SDLoc(N), VT: N->getValueType(ResNo: 0));
42452
42453 }
42454 case 10: {
42455 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42456
42457 return CurDAG->getSignedTargetConstant(Val: -N->getSExtValue(), DL: SDLoc(N),
42458 VT: N->getValueType(ResNo: 0));
42459
42460 }
42461 case 11: {
42462 SDNode *N = V.getNode();
42463
42464 ISD::CondCode CC = cast<CondCodeSDNode>(Val: N->getOperand(Num: 2))->get();
42465 unsigned BrCC = getBranchOpcForIntCC(CC);
42466 return CurDAG->getTargetConstant(Val: BrCC, DL: SDLoc(N), VT: Subtarget->getGRLenVT());
42467
42468 }
42469 case 12: {
42470 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
42471
42472 uint64_t Check = N->getZExtValue();
42473 unsigned Mask = 0;
42474 if (Check & fcSNan)
42475 Mask |= LoongArch::FClassMaskSignalingNaN;
42476 if (Check & fcQNan)
42477 Mask |= LoongArch::FClassMaskQuietNaN;
42478 if (Check & fcPosInf)
42479 Mask |= LoongArch::FClassMaskPositiveInfinity;
42480 if (Check & fcNegInf)
42481 Mask |= LoongArch::FClassMaskNegativeInfinity;
42482 if (Check & fcPosNormal)
42483 Mask |= LoongArch::FClassMaskPositiveNormal;
42484 if (Check & fcNegNormal)
42485 Mask |= LoongArch::FClassMaskNegativeNormal;
42486 if (Check & fcPosSubnormal)
42487 Mask |= LoongArch::FClassMaskPositiveSubnormal;
42488 if (Check & fcNegSubnormal)
42489 Mask |= LoongArch::FClassMaskNegativeSubnormal;
42490 if (Check & fcPosZero)
42491 Mask |= LoongArch::FClassMaskPositiveZero;
42492 if (Check & fcNegZero)
42493 Mask |= LoongArch::FClassMaskNegativeZero;
42494 return CurDAG->getTargetConstant(Val: Mask, DL: SDLoc(N), VT: Subtarget->getGRLenVT());
42495
42496 }
42497 case 13: {
42498 ConstantFPSDNode *N = cast<ConstantFPSDNode>(Val: V.getNode());
42499
42500 uint64_t x = N->getValueAPF().bitcastToAPInt().getZExtValue();
42501 x = (0b11011 << 8) | (((x >> 24) & 0xc0) ^ 0x40) | ((x >> 19) & 0x3f);
42502 return CurDAG->getSignedTargetConstant(Val: SignExtend32<13>(X: x), DL: SDLoc(N),
42503 VT: MVT::i32);
42504
42505 }
42506 case 14: {
42507 ConstantFPSDNode *N = cast<ConstantFPSDNode>(Val: V.getNode());
42508
42509 uint64_t x = N->getValueAPF().bitcastToAPInt().getZExtValue();
42510 x = (0b11100 << 8) | (((x >> 56) & 0xc0) ^ 0x40) | ((x >> 48) & 0x3f);
42511 return CurDAG->getSignedTargetConstant(Val: SignExtend32<13>(X: x), DL: SDLoc(N),
42512 VT: MVT::i32);
42513
42514 }
42515 }
42516}
42517#endif // GET_DAGISEL_BODY
42518
42519
42520#ifdef DAGISEL_INLINE
42521#undef DAGISEL_INLINE
42522#endif
42523#ifdef DAGISEL_CLASS_COLONCOLON
42524#undef DAGISEL_CLASS_COLONCOLON
42525#endif
42526#ifdef GET_DAGISEL_DECL
42527#undef GET_DAGISEL_DECL
42528#endif
42529#ifdef GET_DAGISEL_BODY
42530#undef GET_DAGISEL_BODY
42531#endif
42532