1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* DAG Instruction Selector for the ARM 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.
55 #define TARGET_VAL(X) X & 255, unsigned(X) >> 8
56 static const unsigned char MatcherTable[] = {
57 OPC_SwitchOpcode , 12|128,72, TARGET_VAL(ISD::OR),
58 OPC_Scope, 118|128,4,
59 OPC_MoveChild0,
60 OPC_Scope, 62,
61 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
62 OPC_MoveChild0,
63 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
64 OPC_RecordChild0,
65 OPC_CheckChild1Integer, 48,
66 OPC_CheckChild1TypeI32,
67 OPC_MoveParent,
68 OPC_CheckChild1Integer, 32,
69 OPC_CheckChild1TypeI32,
70 OPC_MoveSibling1,
71 OPC_CheckAndImm, 127|128,1,
72 OPC_MoveChild0,
73 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
74 OPC_CheckChild0Same, 0,
75 OPC_CheckChild1Integer, 16,
76 OPC_CheckChild1TypeI32,
77 OPC_MoveParent,
78 OPC_MoveParent,
79 OPC_CheckTypeI32,
80 OPC_Scope, 14,
81 OPC_CheckPatternPredicate, 9,
82 OPC_EmitInteger32, 28,
83 OPC_EmitRegisterI32, 0 ,
84 OPC_MorphNodeTo1None, TARGET_VAL(ARM::REVSH),
85 MVT::i32, 3, 0, 1, 2,
86 13,
87 OPC_CheckPatternPredicate4,
88 OPC_EmitInteger32, 28,
89 OPC_EmitRegisterI32, 0 ,
90 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2REVSH),
91 MVT::i32, 3, 0, 1, 2,
92 0,
93 62,
94 OPC_CheckAndImm, 127|128,1,
95 OPC_MoveChild0,
96 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
97 OPC_RecordChild0,
98 OPC_CheckChild1Integer, 16,
99 OPC_CheckChild1TypeI32,
100 OPC_MoveParent,
101 OPC_MoveSibling1,
102 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
103 OPC_MoveChild0,
104 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
105 OPC_CheckChild0Same, 0,
106 OPC_CheckChild1Integer, 48,
107 OPC_CheckChild1TypeI32,
108 OPC_MoveParent,
109 OPC_CheckChild1Integer, 32,
110 OPC_CheckChild1TypeI32,
111 OPC_MoveParent,
112 OPC_CheckTypeI32,
113 OPC_Scope, 14,
114 OPC_CheckPatternPredicate, 9,
115 OPC_EmitInteger32, 28,
116 OPC_EmitRegisterI32, 0 ,
117 OPC_MorphNodeTo1None, TARGET_VAL(ARM::REVSH),
118 MVT::i32, 3, 0, 1, 2,
119 13,
120 OPC_CheckPatternPredicate4,
121 OPC_EmitInteger32, 28,
122 OPC_EmitRegisterI32, 0 ,
123 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2REVSH),
124 MVT::i32, 3, 0, 1, 2,
125 0,
126 46,
127 OPC_CheckAndImm, 127|128,127|128,3,
128 OPC_RecordChild0,
129 OPC_MoveSibling1,
130 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
131 OPC_MoveChild0,
132 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
133 OPC_RecordChild0,
134 OPC_RecordChild1,
135 OPC_MoveChild1,
136 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
137 OPC_CheckPredicate, 61,
138 OPC_CheckTypeI32,
139 OPC_MoveParent,
140 OPC_MoveParent,
141 OPC_MoveParent,
142 OPC_CheckTypeI32,
143 OPC_CheckPatternPredicate, 9,
144 OPC_EmitConvertToTarget2,
145 OPC_EmitInteger32, 28,
146 OPC_EmitRegisterI32, 0 ,
147 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHBT),
148 MVT::i32, 5, 0, 1, 3, 4, 5,
149 81,
150 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
151 OPC_RecordChild0,
152 OPC_MoveSibling1,
153 OPC_CheckAndImm, 127|128,127|128,3,
154 OPC_MoveChild0,
155 OPC_SwitchOpcode , 30, TARGET_VAL(ISD::SRA),
156 OPC_RecordChild0,
157 OPC_RecordChild1,
158 OPC_MoveChild1,
159 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
160 OPC_CheckPredicate, 19,
161 OPC_CheckTypeI32,
162 OPC_MoveParent,
163 OPC_MoveParent,
164 OPC_MoveParent,
165 OPC_CheckTypeI32,
166 OPC_CheckPatternPredicate, 9,
167 OPC_EmitConvertToTarget2,
168 OPC_EmitInteger32, 28,
169 OPC_EmitRegisterI32, 0 ,
170 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHTB),
171 MVT::i32, 5, 0, 1, 3, 4, 5,
172 30, TARGET_VAL(ISD::SRL),
173 OPC_RecordChild0,
174 OPC_RecordChild1,
175 OPC_MoveChild1,
176 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
177 OPC_CheckPredicate, 55,
178 OPC_CheckTypeI32,
179 OPC_MoveParent,
180 OPC_MoveParent,
181 OPC_MoveParent,
182 OPC_CheckTypeI32,
183 OPC_CheckPatternPredicate, 9,
184 OPC_EmitConvertToTarget2,
185 OPC_EmitInteger32, 28,
186 OPC_EmitRegisterI32, 0 ,
187 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHTB),
188 MVT::i32, 5, 0, 1, 3, 4, 5,
189 0,
190 45,
191 OPC_CheckAndImm, 127|128,127|128,3,
192 OPC_RecordChild0,
193 OPC_MoveSibling1,
194 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
195 OPC_MoveChild0,
196 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
197 OPC_RecordChild0,
198 OPC_RecordChild1,
199 OPC_MoveChild1,
200 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
201 OPC_CheckPredicate, 61,
202 OPC_CheckTypeI32,
203 OPC_MoveParent,
204 OPC_MoveParent,
205 OPC_MoveParent,
206 OPC_CheckTypeI32,
207 OPC_CheckPatternPredicate5,
208 OPC_EmitConvertToTarget2,
209 OPC_EmitInteger32, 28,
210 OPC_EmitRegisterI32, 0 ,
211 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHBT),
212 MVT::i32, 5, 0, 1, 3, 4, 5,
213 123,
214 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
215 OPC_Scope, 73,
216 OPC_RecordChild0,
217 OPC_MoveSibling1,
218 OPC_CheckAndImm, 127|128,127|128,3,
219 OPC_MoveChild0,
220 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::SRA),
221 OPC_RecordChild0,
222 OPC_RecordChild1,
223 OPC_MoveChild1,
224 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
225 OPC_CheckPredicate, 19,
226 OPC_CheckTypeI32,
227 OPC_MoveParent,
228 OPC_MoveParent,
229 OPC_MoveParent,
230 OPC_CheckTypeI32,
231 OPC_CheckPatternPredicate5,
232 OPC_EmitConvertToTarget2,
233 OPC_EmitInteger32, 28,
234 OPC_EmitRegisterI32, 0 ,
235 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHTB),
236 MVT::i32, 5, 0, 1, 3, 4, 5,
237 29, TARGET_VAL(ISD::SRL),
238 OPC_RecordChild0,
239 OPC_RecordChild1,
240 OPC_MoveChild1,
241 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
242 OPC_CheckPredicate, 55,
243 OPC_CheckTypeI32,
244 OPC_MoveParent,
245 OPC_MoveParent,
246 OPC_MoveParent,
247 OPC_CheckTypeI32,
248 OPC_CheckPatternPredicate5,
249 OPC_EmitConvertToTarget2,
250 OPC_EmitInteger32, 28,
251 OPC_EmitRegisterI32, 0 ,
252 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHTB),
253 MVT::i32, 5, 0, 1, 3, 4, 5,
254 0,
255 40,
256 OPC_MoveChild0,
257 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
258 OPC_RecordChild0,
259 OPC_RecordChild1,
260 OPC_MoveChild1,
261 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
262 OPC_CheckPredicate, 61,
263 OPC_CheckTypeI32,
264 OPC_MoveParent,
265 OPC_MoveParent,
266 OPC_MoveSibling1,
267 OPC_CheckAndImm, 127|128,127|128,3,
268 OPC_RecordChild0,
269 OPC_MoveParent,
270 OPC_CheckTypeI32,
271 OPC_CheckPatternPredicate, 9,
272 OPC_EmitConvertToTarget1,
273 OPC_EmitInteger32, 28,
274 OPC_EmitRegisterI32, 0 ,
275 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHBT),
276 MVT::i32, 5, 2, 0, 3, 4, 5,
277 0,
278 46,
279 OPC_CheckAndImm, 127|128,127|128,3,
280 OPC_MoveChild0,
281 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
282 OPC_RecordChild0,
283 OPC_RecordChild1,
284 OPC_MoveChild1,
285 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
286 OPC_CheckPredicate, 19,
287 OPC_CheckTypeI32,
288 OPC_MoveParent,
289 OPC_MoveParent,
290 OPC_MoveSibling1,
291 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
292 OPC_RecordChild0,
293 OPC_MoveParent,
294 OPC_CheckTypeI32,
295 OPC_CheckPatternPredicate, 9,
296 OPC_EmitConvertToTarget1,
297 OPC_EmitInteger32, 28,
298 OPC_EmitRegisterI32, 0 ,
299 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHTB),
300 MVT::i32, 5, 2, 0, 3, 4, 5,
301 45,
302 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
303 OPC_MoveChild0,
304 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
305 OPC_RecordChild0,
306 OPC_RecordChild1,
307 OPC_MoveChild1,
308 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
309 OPC_CheckPredicate, 61,
310 OPC_CheckTypeI32,
311 OPC_MoveParent,
312 OPC_MoveParent,
313 OPC_MoveSibling1,
314 OPC_CheckAndImm, 127|128,127|128,3,
315 OPC_RecordChild0,
316 OPC_MoveParent,
317 OPC_CheckTypeI32,
318 OPC_CheckPatternPredicate5,
319 OPC_EmitConvertToTarget1,
320 OPC_EmitInteger32, 28,
321 OPC_EmitRegisterI32, 0 ,
322 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHBT),
323 MVT::i32, 5, 2, 0, 3, 4, 5,
324 108,
325 OPC_CheckAndImm, 127|128,127|128,3,
326 OPC_MoveChild0,
327 OPC_SwitchOpcode , 37, TARGET_VAL(ISD::SRA),
328 OPC_RecordChild0,
329 OPC_RecordChild1,
330 OPC_MoveChild1,
331 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
332 OPC_CheckPredicate, 19,
333 OPC_CheckTypeI32,
334 OPC_MoveParent,
335 OPC_MoveParent,
336 OPC_MoveSibling1,
337 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
338 OPC_RecordChild0,
339 OPC_MoveParent,
340 OPC_CheckTypeI32,
341 OPC_CheckPatternPredicate5,
342 OPC_EmitConvertToTarget1,
343 OPC_EmitInteger32, 28,
344 OPC_EmitRegisterI32, 0 ,
345 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHTB),
346 MVT::i32, 5, 2, 0, 3, 4, 5,
347 58, TARGET_VAL(ISD::SRL),
348 OPC_RecordChild0,
349 OPC_RecordChild1,
350 OPC_MoveChild1,
351 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
352 OPC_CheckPredicate, 55,
353 OPC_CheckTypeI32,
354 OPC_MoveParent,
355 OPC_MoveParent,
356 OPC_MoveSibling1,
357 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
358 OPC_RecordChild0,
359 OPC_MoveParent,
360 OPC_CheckTypeI32,
361 OPC_Scope, 17,
362 OPC_CheckPatternPredicate, 9,
363 OPC_EmitConvertToTarget1,
364 OPC_EmitInteger32, 28,
365 OPC_EmitRegisterI32, 0 ,
366 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHTB),
367 MVT::i32, 5, 2, 0, 3, 4, 5,
368 16,
369 OPC_CheckPatternPredicate5,
370 OPC_EmitConvertToTarget1,
371 OPC_EmitInteger32, 28,
372 OPC_EmitRegisterI32, 0 ,
373 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHTB),
374 MVT::i32, 5, 2, 0, 3, 4, 5,
375 0,
376 0,
377 0,
378 30,
379 OPC_RecordChild0,
380 OPC_MoveChild1,
381 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
382 OPC_RecordChild0,
383 OPC_CheckChild1Integer, 3,
384 OPC_MoveParent,
385 OPC_CheckTypeI32,
386 OPC_CheckPatternPredicate4,
387 OPC_CheckComplexPat7, /*#*/1,
388 OPC_EmitInteger32, 28,
389 OPC_EmitRegisterI32, 0 ,
390 OPC_EmitRegisterI32, 0 ,
391 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORNrs),
392 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
393 71|128,4,
394 OPC_MoveChild0,
395 OPC_Scope, 29,
396 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
397 OPC_RecordChild0,
398 OPC_CheckChild1Integer, 3,
399 OPC_MoveParent,
400 OPC_RecordChild1,
401 OPC_CheckTypeI32,
402 OPC_CheckPatternPredicate4,
403 OPC_CheckComplexPat7, /*#*/0,
404 OPC_EmitInteger32, 28,
405 OPC_EmitRegisterI32, 0 ,
406 OPC_EmitRegisterI32, 0 ,
407 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORNrs),
408 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
409 54,
410 OPC_CheckAndImm, 127|128,127|128,3,
411 OPC_RecordChild0,
412 OPC_MoveSibling1,
413 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
414 OPC_RecordChild0,
415 OPC_MoveParent,
416 OPC_CheckTypeI32,
417 OPC_Scope, 18,
418 OPC_CheckPatternPredicate, 9,
419 OPC_EmitInteger32, 0,
420 OPC_EmitInteger32, 28,
421 OPC_EmitRegisterI32, 0 ,
422 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHBT),
423 MVT::i32, 5, 0, 1, 2, 3, 4,
424 17,
425 OPC_CheckPatternPredicate5,
426 OPC_EmitInteger32, 0,
427 OPC_EmitInteger32, 28,
428 OPC_EmitRegisterI32, 0 ,
429 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHBT),
430 MVT::i32, 5, 0, 1, 2, 3, 4,
431 0,
432 54,
433 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
434 OPC_RecordChild0,
435 OPC_MoveSibling1,
436 OPC_CheckAndImm, 127|128,127|128,3,
437 OPC_RecordChild0,
438 OPC_MoveParent,
439 OPC_CheckTypeI32,
440 OPC_Scope, 18,
441 OPC_CheckPatternPredicate, 9,
442 OPC_EmitInteger32, 0,
443 OPC_EmitInteger32, 28,
444 OPC_EmitRegisterI32, 0 ,
445 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHBT),
446 MVT::i32, 5, 1, 0, 2, 3, 4,
447 17,
448 OPC_CheckPatternPredicate5,
449 OPC_EmitInteger32, 0,
450 OPC_EmitInteger32, 28,
451 OPC_EmitRegisterI32, 0 ,
452 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHBT),
453 MVT::i32, 5, 1, 0, 2, 3, 4,
454 0,
455 38,
456 OPC_CheckAndImm, 127|128,127|128,3,
457 OPC_RecordChild0,
458 OPC_MoveSibling1,
459 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
460 OPC_RecordChild0,
461 OPC_RecordChild1,
462 OPC_MoveChild1,
463 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
464 OPC_CheckPredicate, 49,
465 OPC_CheckTypeI32,
466 OPC_MoveParent,
467 OPC_MoveParent,
468 OPC_CheckTypeI32,
469 OPC_CheckPatternPredicate, 9,
470 OPC_EmitConvertToTarget2,
471 OPC_EmitInteger32, 28,
472 OPC_EmitRegisterI32, 0 ,
473 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHBT),
474 MVT::i32, 5, 0, 1, 3, 4, 5,
475 74,
476 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
477 OPC_RecordChild0,
478 OPC_MoveSibling1,
479 OPC_SwitchOpcode , 29, TARGET_VAL(ISD::SRL),
480 OPC_RecordChild0,
481 OPC_RecordChild1,
482 OPC_MoveChild1,
483 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
484 OPC_CheckPredicate, 69,
485 OPC_CheckTypeI32,
486 OPC_MoveParent,
487 OPC_MoveParent,
488 OPC_CheckTypeI32,
489 OPC_CheckPatternPredicate, 9,
490 OPC_EmitConvertToTarget2,
491 OPC_EmitInteger32, 28,
492 OPC_EmitRegisterI32, 0 ,
493 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHTB),
494 MVT::i32, 5, 0, 1, 3, 4, 5,
495 29, TARGET_VAL(ISD::SRA),
496 OPC_RecordChild0,
497 OPC_RecordChild1,
498 OPC_MoveChild1,
499 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
500 OPC_CheckPredicate, 49,
501 OPC_CheckTypeI32,
502 OPC_MoveParent,
503 OPC_MoveParent,
504 OPC_CheckTypeI32,
505 OPC_CheckPatternPredicate, 9,
506 OPC_EmitConvertToTarget2,
507 OPC_EmitInteger32, 28,
508 OPC_EmitRegisterI32, 0 ,
509 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHTB),
510 MVT::i32, 5, 0, 1, 3, 4, 5,
511 0,
512 37,
513 OPC_CheckAndImm, 127|128,127|128,3,
514 OPC_RecordChild0,
515 OPC_MoveSibling1,
516 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
517 OPC_RecordChild0,
518 OPC_RecordChild1,
519 OPC_MoveChild1,
520 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
521 OPC_CheckPredicate, 49,
522 OPC_CheckTypeI32,
523 OPC_MoveParent,
524 OPC_MoveParent,
525 OPC_CheckTypeI32,
526 OPC_CheckPatternPredicate5,
527 OPC_EmitConvertToTarget2,
528 OPC_EmitInteger32, 28,
529 OPC_EmitRegisterI32, 0 ,
530 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHBT),
531 MVT::i32, 5, 0, 1, 3, 4, 5,
532 72,
533 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
534 OPC_RecordChild0,
535 OPC_MoveSibling1,
536 OPC_SwitchOpcode , 28, TARGET_VAL(ISD::SRL),
537 OPC_RecordChild0,
538 OPC_RecordChild1,
539 OPC_MoveChild1,
540 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
541 OPC_CheckPredicate, 69,
542 OPC_CheckTypeI32,
543 OPC_MoveParent,
544 OPC_MoveParent,
545 OPC_CheckTypeI32,
546 OPC_CheckPatternPredicate5,
547 OPC_EmitConvertToTarget2,
548 OPC_EmitInteger32, 28,
549 OPC_EmitRegisterI32, 0 ,
550 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHTB),
551 MVT::i32, 5, 0, 1, 3, 4, 5,
552 28, TARGET_VAL(ISD::SRA),
553 OPC_RecordChild0,
554 OPC_RecordChild1,
555 OPC_MoveChild1,
556 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
557 OPC_CheckPredicate, 49,
558 OPC_CheckTypeI32,
559 OPC_MoveParent,
560 OPC_MoveParent,
561 OPC_CheckTypeI32,
562 OPC_CheckPatternPredicate5,
563 OPC_EmitConvertToTarget2,
564 OPC_EmitInteger32, 28,
565 OPC_EmitRegisterI32, 0 ,
566 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHTB),
567 MVT::i32, 5, 0, 1, 3, 4, 5,
568 0,
569 58,
570 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
571 OPC_RecordChild0,
572 OPC_RecordChild1,
573 OPC_MoveChild1,
574 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
575 OPC_CheckPredicate, 49,
576 OPC_CheckTypeI32,
577 OPC_MoveParent,
578 OPC_MoveSibling1,
579 OPC_CheckAndImm, 127|128,127|128,3,
580 OPC_RecordChild0,
581 OPC_MoveParent,
582 OPC_CheckTypeI32,
583 OPC_Scope, 17,
584 OPC_CheckPatternPredicate, 9,
585 OPC_EmitConvertToTarget1,
586 OPC_EmitInteger32, 28,
587 OPC_EmitRegisterI32, 0 ,
588 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHBT),
589 MVT::i32, 5, 2, 0, 3, 4, 5,
590 16,
591 OPC_CheckPatternPredicate5,
592 OPC_EmitConvertToTarget1,
593 OPC_EmitInteger32, 28,
594 OPC_EmitRegisterI32, 0 ,
595 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHBT),
596 MVT::i32, 5, 2, 0, 3, 4, 5,
597 0,
598 60,
599 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
600 OPC_RecordChild0,
601 OPC_RecordChild1,
602 OPC_MoveChild1,
603 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
604 OPC_CheckPredicate, 69,
605 OPC_CheckTypeI32,
606 OPC_MoveParent,
607 OPC_MoveSibling1,
608 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
609 OPC_RecordChild0,
610 OPC_MoveParent,
611 OPC_CheckTypeI32,
612 OPC_Scope, 17,
613 OPC_CheckPatternPredicate, 9,
614 OPC_EmitConvertToTarget1,
615 OPC_EmitInteger32, 28,
616 OPC_EmitRegisterI32, 0 ,
617 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHTB),
618 MVT::i32, 5, 2, 0, 3, 4, 5,
619 16,
620 OPC_CheckPatternPredicate5,
621 OPC_EmitConvertToTarget1,
622 OPC_EmitInteger32, 28,
623 OPC_EmitRegisterI32, 0 ,
624 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHTB),
625 MVT::i32, 5, 2, 0, 3, 4, 5,
626 0,
627 60,
628 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
629 OPC_RecordChild0,
630 OPC_RecordChild1,
631 OPC_MoveChild1,
632 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
633 OPC_CheckPredicate, 49,
634 OPC_CheckTypeI32,
635 OPC_MoveParent,
636 OPC_MoveSibling1,
637 OPC_CheckAndImm, 0|128,0|128,124|128,127|128,15,
638 OPC_RecordChild0,
639 OPC_MoveParent,
640 OPC_CheckTypeI32,
641 OPC_Scope, 17,
642 OPC_CheckPatternPredicate, 9,
643 OPC_EmitConvertToTarget1,
644 OPC_EmitInteger32, 28,
645 OPC_EmitRegisterI32, 0 ,
646 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PKHTB),
647 MVT::i32, 5, 2, 0, 3, 4, 5,
648 16,
649 OPC_CheckPatternPredicate5,
650 OPC_EmitConvertToTarget1,
651 OPC_EmitInteger32, 28,
652 OPC_EmitRegisterI32, 0 ,
653 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2PKHTB),
654 MVT::i32, 5, 2, 0, 3, 4, 5,
655 0,
656 33,
657 OPC_CheckAndImm, 127|128,127|128,3,
658 OPC_RecordChild0,
659 OPC_MoveSibling1,
660 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
661 OPC_RecordNode,
662 OPC_CheckPredicate, 84,
663 OPC_MoveParent,
664 OPC_CheckTypeI32,
665 OPC_CheckPatternPredicate, 32,
666 OPC_EmitConvertToTarget1,
667 OPC_EmitNodeXForm, 0, 2,
668 OPC_EmitInteger32, 28,
669 OPC_EmitRegisterI32, 0 ,
670 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVTi16),
671 MVT::i32, 4, 0, 3, 4, 5,
672 0,
673 24,
674 OPC_RecordChild0,
675 OPC_RecordChild1,
676 OPC_CheckTypeI32,
677 OPC_CheckPatternPredicate3,
678 OPC_CheckComplexPat4, /*#*/1,
679 OPC_EmitInteger32, 28,
680 OPC_EmitRegisterI32, 0 ,
681 OPC_EmitRegisterI32, 0 ,
682 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ORRrsr),
683 MVT::i32, 7, 0, 2, 3, 4, 5, 6, 7,
684 34,
685 OPC_MoveChild0,
686 OPC_CheckAndImm, 127|128,127|128,3,
687 OPC_RecordChild0,
688 OPC_MoveSibling1,
689 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
690 OPC_RecordNode,
691 OPC_CheckPredicate, 84,
692 OPC_MoveParent,
693 OPC_CheckTypeI32,
694 OPC_CheckPatternPredicate, 31,
695 OPC_EmitConvertToTarget1,
696 OPC_EmitNodeXForm, 0, 2,
697 OPC_EmitInteger32, 28,
698 OPC_EmitRegisterI32, 0 ,
699 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MOVTi16),
700 MVT::i32, 4, 0, 3, 4, 5,
701 97,
702 OPC_RecordChild0,
703 OPC_Scope, 34,
704 OPC_MoveChild1,
705 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
706 OPC_RecordChild0,
707 OPC_MoveChild0,
708 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
709 OPC_CheckPredicate, 13,
710 OPC_MoveParent,
711 OPC_CheckChild1Integer, 3,
712 OPC_MoveParent,
713 OPC_CheckTypeI32,
714 OPC_CheckPatternPredicate4,
715 OPC_EmitConvertToTarget1,
716 OPC_EmitInteger32, 28,
717 OPC_EmitRegisterI32, 0 ,
718 OPC_EmitRegisterI32, 0 ,
719 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORNri),
720 MVT::i32, 5, 0, 2, 3, 4, 5,
721 23,
722 OPC_RecordChild1,
723 OPC_CheckTypeI32,
724 OPC_CheckPatternPredicate3,
725 OPC_CheckComplexPat4, /*#*/0,
726 OPC_EmitInteger32, 28,
727 OPC_EmitRegisterI32, 0 ,
728 OPC_EmitRegisterI32, 0 ,
729 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ORRrsr),
730 MVT::i32, 7, 1, 2, 3, 4, 5, 6, 7,
731 34,
732 OPC_MoveChild1,
733 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
734 OPC_CheckChild0Integer, 3,
735 OPC_RecordChild1,
736 OPC_MoveChild1,
737 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
738 OPC_CheckPredicate, 13,
739 OPC_MoveParent,
740 OPC_MoveParent,
741 OPC_CheckTypeI32,
742 OPC_CheckPatternPredicate4,
743 OPC_EmitConvertToTarget1,
744 OPC_EmitInteger32, 28,
745 OPC_EmitRegisterI32, 0 ,
746 OPC_EmitRegisterI32, 0 ,
747 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORNri),
748 MVT::i32, 5, 0, 2, 3, 4, 5,
749 0,
750 70,
751 OPC_MoveChild0,
752 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
753 OPC_Scope, 31,
754 OPC_RecordChild0,
755 OPC_MoveChild0,
756 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
757 OPC_CheckPredicate, 13,
758 OPC_MoveParent,
759 OPC_CheckChild1Integer, 3,
760 OPC_MoveParent,
761 OPC_RecordChild1,
762 OPC_CheckTypeI32,
763 OPC_CheckPatternPredicate4,
764 OPC_EmitConvertToTarget0,
765 OPC_EmitInteger32, 28,
766 OPC_EmitRegisterI32, 0 ,
767 OPC_EmitRegisterI32, 0 ,
768 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORNri),
769 MVT::i32, 5, 1, 2, 3, 4, 5,
770 31,
771 OPC_CheckChild0Integer, 3,
772 OPC_RecordChild1,
773 OPC_MoveChild1,
774 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
775 OPC_CheckPredicate, 13,
776 OPC_MoveParent,
777 OPC_MoveParent,
778 OPC_RecordChild1,
779 OPC_CheckTypeI32,
780 OPC_CheckPatternPredicate4,
781 OPC_EmitConvertToTarget0,
782 OPC_EmitInteger32, 28,
783 OPC_EmitRegisterI32, 0 ,
784 OPC_EmitRegisterI32, 0 ,
785 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORNri),
786 MVT::i32, 5, 1, 2, 3, 4, 5,
787 0,
788 105|128,1,
789 OPC_RecordChild0,
790 OPC_Scope, 73|128,1,
791 OPC_RecordChild1,
792 OPC_Scope, 109,
793 OPC_MoveChild1,
794 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
795 OPC_Scope, 26,
796 OPC_CheckPredicate, 28,
797 OPC_MoveParent,
798 OPC_CheckTypeI32,
799 OPC_CheckPatternPredicate, 10,
800 OPC_CheckComplexPat, /*CP*/23, /*#*/0,
801 OPC_EmitRegisterI32, ARM::CPSR,
802 OPC_EmitConvertToTarget1,
803 OPC_EmitInteger32, 28,
804 OPC_EmitRegisterI32, 0 ,
805 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tADDi3),
806 MVT::i32, 5, 3, 2, 4, 5, 6,
807 26,
808 OPC_CheckPredicate, 85,
809 OPC_MoveParent,
810 OPC_CheckTypeI32,
811 OPC_CheckPatternPredicate, 10,
812 OPC_CheckComplexPat, /*CP*/23, /*#*/0,
813 OPC_EmitRegisterI32, ARM::CPSR,
814 OPC_EmitConvertToTarget1,
815 OPC_EmitInteger32, 28,
816 OPC_EmitRegisterI32, 0 ,
817 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tADDi8),
818 MVT::i32, 5, 3, 2, 4, 5, 6,
819 25,
820 OPC_CheckPredicate, 13,
821 OPC_MoveParent,
822 OPC_CheckTypeI32,
823 OPC_CheckPatternPredicate4,
824 OPC_CheckComplexPat, /*CP*/23, /*#*/0,
825 OPC_EmitConvertToTarget1,
826 OPC_EmitInteger32, 28,
827 OPC_EmitRegisterI32, 0 ,
828 OPC_EmitRegisterI32, 0 ,
829 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ADDri),
830 MVT::i32, 5, 2, 3, 4, 5, 6,
831 22,
832 OPC_CheckPredicate, 70,
833 OPC_MoveParent,
834 OPC_CheckTypeI32,
835 OPC_CheckPatternPredicate4,
836 OPC_CheckComplexPat, /*CP*/23, /*#*/0,
837 OPC_EmitConvertToTarget1,
838 OPC_EmitInteger32, 28,
839 OPC_EmitRegisterI32, 0 ,
840 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ADDri12),
841 MVT::i32, 4, 2, 3, 4, 5,
842 0,
843 87,
844 OPC_CheckTypeI32,
845 OPC_Scope, 20,
846 OPC_CheckPatternPredicate3,
847 OPC_CheckComplexPat5, /*#*/1,
848 OPC_EmitInteger32, 28,
849 OPC_EmitRegisterI32, 0 ,
850 OPC_EmitRegisterI32, 0 ,
851 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ORRrsi),
852 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
853 20,
854 OPC_CheckPatternPredicate4,
855 OPC_CheckComplexPat7, /*#*/1,
856 OPC_EmitInteger32, 28,
857 OPC_EmitRegisterI32, 0 ,
858 OPC_EmitRegisterI32, 0 ,
859 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORRrs),
860 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
861 20,
862 OPC_CheckPatternPredicate3,
863 OPC_CheckComplexPat5, /*#*/0,
864 OPC_EmitInteger32, 28,
865 OPC_EmitRegisterI32, 0 ,
866 OPC_EmitRegisterI32, 0 ,
867 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ORRrsi),
868 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
869 20,
870 OPC_CheckPatternPredicate4,
871 OPC_CheckComplexPat7, /*#*/0,
872 OPC_EmitInteger32, 28,
873 OPC_EmitRegisterI32, 0 ,
874 OPC_EmitRegisterI32, 0 ,
875 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORRrs),
876 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
877 0,
878 0,
879 26,
880 OPC_MoveChild1,
881 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
882 OPC_RecordChild0,
883 OPC_CheckChild1Integer, 3,
884 OPC_MoveParent,
885 OPC_CheckTypeI32,
886 OPC_CheckPatternPredicate4,
887 OPC_EmitInteger32, 28,
888 OPC_EmitRegisterI32, 0 ,
889 OPC_EmitRegisterI32, 0 ,
890 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORNrr),
891 MVT::i32, 5, 0, 1, 2, 3, 4,
892 0,
893 27,
894 OPC_MoveChild0,
895 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
896 OPC_RecordChild0,
897 OPC_CheckChild1Integer, 3,
898 OPC_MoveParent,
899 OPC_RecordChild1,
900 OPC_CheckTypeI32,
901 OPC_CheckPatternPredicate4,
902 OPC_EmitInteger32, 28,
903 OPC_EmitRegisterI32, 0 ,
904 OPC_EmitRegisterI32, 0 ,
905 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORNrr),
906 MVT::i32, 5, 1, 0, 2, 3, 4,
907 104,
908 OPC_RecordChild0,
909 OPC_Scope, 26,
910 OPC_RecordChild1,
911 OPC_MoveChild1,
912 OPC_CheckPredicate, 86,
913 OPC_MoveParent,
914 OPC_CheckTypeI32,
915 OPC_CheckPatternPredicate4,
916 OPC_CheckComplexPat, /*CP*/23, /*#*/0,
917 OPC_EmitInteger32, 28,
918 OPC_EmitRegisterI32, 0 ,
919 OPC_EmitRegisterI32, 0 ,
920 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ADDrr),
921 MVT::i32, 5, 2, 1, 3, 4, 5,
922 26,
923 OPC_MoveChild0,
924 OPC_CheckPredicate, 86,
925 OPC_MoveParent,
926 OPC_RecordChild1,
927 OPC_CheckTypeI32,
928 OPC_CheckPatternPredicate4,
929 OPC_CheckComplexPat, /*CP*/23, /*#*/1,
930 OPC_EmitInteger32, 28,
931 OPC_EmitRegisterI32, 0 ,
932 OPC_EmitRegisterI32, 0 ,
933 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ADDrr),
934 MVT::i32, 5, 2, 0, 3, 4, 5,
935 46,
936 OPC_RecordChild1,
937 OPC_CheckTypeI32,
938 OPC_CheckPatternPredicate, 10,
939 OPC_Scope, 19,
940 OPC_CheckComplexPat, /*CP*/23, /*#*/0,
941 OPC_EmitRegisterI32, ARM::CPSR,
942 OPC_EmitInteger32, 28,
943 OPC_EmitRegisterI32, 0 ,
944 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tADDrr),
945 MVT::i32, 5, 3, 2, 1, 4, 5,
946 19,
947 OPC_CheckComplexPat, /*CP*/23, /*#*/1,
948 OPC_EmitRegisterI32, ARM::CPSR,
949 OPC_EmitInteger32, 28,
950 OPC_EmitRegisterI32, 0 ,
951 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tADDrr),
952 MVT::i32, 5, 3, 2, 0, 4, 5,
953 0,
954 0,
955 49,
956 OPC_CheckOrImm, 0|128,0|128,124|128,127|128,15,
957 OPC_RecordChild0,
958 OPC_CheckTypeI32,
959 OPC_Scope, 19,
960 OPC_CheckPatternPredicate, 32,
961 OPC_EmitInteger32, 126|128,127|128,7,
962 OPC_EmitInteger32, 28,
963 OPC_EmitRegisterI32, 0 ,
964 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVTi16),
965 MVT::i32, 4, 0, 1, 2, 3,
966 18,
967 OPC_CheckPatternPredicate4,
968 OPC_EmitInteger32, 126|128,127|128,7,
969 OPC_EmitInteger32, 28,
970 OPC_EmitRegisterI32, 0 ,
971 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MOVTi16),
972 MVT::i32, 4, 0, 1, 2, 3,
973 0,
974 14|128,1,
975 OPC_RecordChild0,
976 OPC_RecordChild1,
977 OPC_Scope, 78,
978 OPC_MoveChild1,
979 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
980 OPC_Scope, 22,
981 OPC_CheckPredicate, 20,
982 OPC_MoveParent,
983 OPC_CheckTypeI32,
984 OPC_CheckPatternPredicate3,
985 OPC_EmitConvertToTarget1,
986 OPC_EmitInteger32, 28,
987 OPC_EmitRegisterI32, 0 ,
988 OPC_EmitRegisterI32, 0 ,
989 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ORRri),
990 MVT::i32, 5, 0, 2, 3, 4, 5,
991 22,
992 OPC_CheckPredicate, 13,
993 OPC_MoveParent,
994 OPC_CheckTypeI32,
995 OPC_CheckPatternPredicate4,
996 OPC_EmitConvertToTarget1,
997 OPC_EmitInteger32, 28,
998 OPC_EmitRegisterI32, 0 ,
999 OPC_EmitRegisterI32, 0 ,
1000 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORRri),
1001 MVT::i32, 5, 0, 2, 3, 4, 5,
1002 25,
1003 OPC_CheckPredicate, 56,
1004 OPC_MoveParent,
1005 OPC_CheckTypeI32,
1006 OPC_CheckPatternPredicate4,
1007 OPC_EmitConvertToTarget1,
1008 OPC_EmitNodeXForm, 1, 2,
1009 OPC_EmitInteger32, 28,
1010 OPC_EmitRegisterI32, 0 ,
1011 OPC_EmitRegisterI32, 0 ,
1012 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORNri),
1013 MVT::i32, 5, 0, 3, 4, 5, 6,
1014 0,
1015 58,
1016 OPC_CheckTypeI32,
1017 OPC_Scope, 17,
1018 OPC_CheckPatternPredicate3,
1019 OPC_EmitInteger32, 28,
1020 OPC_EmitRegisterI32, 0 ,
1021 OPC_EmitRegisterI32, 0 ,
1022 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ORRrr),
1023 MVT::i32, 5, 0, 1, 2, 3, 4,
1024 18,
1025 OPC_CheckPatternPredicate, 10,
1026 OPC_EmitRegisterI32, ARM::CPSR,
1027 OPC_EmitInteger32, 28,
1028 OPC_EmitRegisterI32, 0 ,
1029 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tORR),
1030 MVT::i32, 5, 2, 0, 1, 3, 4,
1031 17,
1032 OPC_CheckPatternPredicate4,
1033 OPC_EmitInteger32, 28,
1034 OPC_EmitRegisterI32, 0 ,
1035 OPC_EmitRegisterI32, 0 ,
1036 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ORRrr),
1037 MVT::i32, 5, 0, 1, 2, 3, 4,
1038 0,
1039 0,
1040 59|128,37,
1041 OPC_MoveChild0,
1042 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1043 OPC_Scope, 73|128,4,
1044 OPC_RecordChild0,
1045 OPC_Scope, 52|128,3,
1046 OPC_RecordChild1,
1047 OPC_MoveSibling1,
1048 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1049 OPC_Scope, 51|128,1,
1050 OPC_RecordChild0,
1051 OPC_MoveChild1,
1052 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1053 OPC_Scope, 5|128,1,
1054 OPC_CheckChild0Same, 1,
1055 OPC_MoveChild1,
1056 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1057 OPC_MoveChild0,
1058 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1059 OPC_CheckChild0Integer, 126|128,59,
1060 OPC_SwitchType , 57, MVT::v8i8,
1061 OPC_MoveParent,
1062 OPC_MoveParent,
1063 OPC_MoveParent,
1064 OPC_MoveParent,
1065 OPC_SwitchType , 15, MVT::v4i16,
1066 OPC_CheckPatternPredicate1,
1067 OPC_EmitInteger32, 28,
1068 OPC_EmitRegisterI32, 0 ,
1069 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1070 MVT::v4i16, 5, 1, 0, 2, 3, 4,
1071 15, MVT::v2i32,
1072 OPC_CheckPatternPredicate1,
1073 OPC_EmitInteger32, 28,
1074 OPC_EmitRegisterI32, 0 ,
1075 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1076 MVT::v2i32, 5, 1, 0, 2, 3, 4,
1077 15, MVT::v1i64,
1078 OPC_CheckPatternPredicate1,
1079 OPC_EmitInteger32, 28,
1080 OPC_EmitRegisterI32, 0 ,
1081 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1082 MVT::v1i64, 5, 1, 0, 2, 3, 4,
1083 0,
1084 57, MVT::v16i8,
1085 OPC_MoveParent,
1086 OPC_MoveParent,
1087 OPC_MoveParent,
1088 OPC_MoveParent,
1089 OPC_SwitchType , 15, MVT::v8i16,
1090 OPC_CheckPatternPredicate1,
1091 OPC_EmitInteger32, 28,
1092 OPC_EmitRegisterI32, 0 ,
1093 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
1094 MVT::v8i16, 5, 1, 0, 2, 3, 4,
1095 15, MVT::v4i32,
1096 OPC_CheckPatternPredicate1,
1097 OPC_EmitInteger32, 28,
1098 OPC_EmitRegisterI32, 0 ,
1099 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
1100 MVT::v4i32, 5, 1, 0, 2, 3, 4,
1101 15, MVT::v2i64,
1102 OPC_CheckPatternPredicate1,
1103 OPC_EmitInteger32, 28,
1104 OPC_EmitRegisterI32, 0 ,
1105 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
1106 MVT::v2i64, 5, 1, 0, 2, 3, 4,
1107 0,
1108 0,
1109 36,
1110 OPC_MoveChild0,
1111 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1112 OPC_MoveChild0,
1113 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1114 OPC_CheckChild0Integer, 126|128,59,
1115 OPC_CheckType, MVT::v8i8,
1116 OPC_MoveParent,
1117 OPC_MoveParent,
1118 OPC_CheckChild1Same, 1,
1119 OPC_MoveParent,
1120 OPC_MoveParent,
1121 OPC_CheckType, MVT::v4i16,
1122 OPC_CheckPatternPredicate1,
1123 OPC_EmitInteger32, 28,
1124 OPC_EmitRegisterI32, 0 ,
1125 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1126 MVT::v4i16, 5, 1, 0, 2, 3, 4,
1127 0,
1128 82,
1129 OPC_MoveChild0,
1130 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1131 OPC_Scope, 37,
1132 OPC_CheckChild0Same, 1,
1133 OPC_MoveChild1,
1134 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1135 OPC_MoveChild0,
1136 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1137 OPC_CheckChild0Integer, 126|128,59,
1138 OPC_CheckType, MVT::v8i8,
1139 OPC_MoveParent,
1140 OPC_MoveParent,
1141 OPC_MoveParent,
1142 OPC_RecordChild1,
1143 OPC_MoveParent,
1144 OPC_CheckType, MVT::v4i16,
1145 OPC_CheckPatternPredicate1,
1146 OPC_EmitInteger32, 28,
1147 OPC_EmitRegisterI32, 0 ,
1148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1149 MVT::v4i16, 5, 1, 0, 2, 3, 4,
1150 37,
1151 OPC_MoveChild0,
1152 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1153 OPC_MoveChild0,
1154 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1155 OPC_CheckChild0Integer, 126|128,59,
1156 OPC_CheckType, MVT::v8i8,
1157 OPC_MoveParent,
1158 OPC_MoveParent,
1159 OPC_CheckChild1Same, 1,
1160 OPC_MoveParent,
1161 OPC_RecordChild1,
1162 OPC_MoveParent,
1163 OPC_CheckType, MVT::v4i16,
1164 OPC_CheckPatternPredicate1,
1165 OPC_EmitInteger32, 28,
1166 OPC_EmitRegisterI32, 0 ,
1167 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1168 MVT::v4i16, 5, 1, 0, 2, 3, 4,
1169 0,
1170 81,
1171 OPC_RecordChild0,
1172 OPC_MoveChild1,
1173 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1174 OPC_Scope, 36,
1175 OPC_CheckChild0Same, 0,
1176 OPC_MoveChild1,
1177 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1178 OPC_MoveChild0,
1179 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1180 OPC_CheckChild0Integer, 126|128,59,
1181 OPC_CheckType, MVT::v8i8,
1182 OPC_MoveParent,
1183 OPC_MoveParent,
1184 OPC_MoveParent,
1185 OPC_MoveParent,
1186 OPC_CheckType, MVT::v4i16,
1187 OPC_CheckPatternPredicate1,
1188 OPC_EmitInteger32, 28,
1189 OPC_EmitRegisterI32, 0 ,
1190 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1191 MVT::v4i16, 5, 0, 1, 2, 3, 4,
1192 36,
1193 OPC_MoveChild0,
1194 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1195 OPC_MoveChild0,
1196 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1197 OPC_CheckChild0Integer, 126|128,59,
1198 OPC_CheckType, MVT::v8i8,
1199 OPC_MoveParent,
1200 OPC_MoveParent,
1201 OPC_CheckChild1Same, 0,
1202 OPC_MoveParent,
1203 OPC_MoveParent,
1204 OPC_CheckType, MVT::v4i16,
1205 OPC_CheckPatternPredicate1,
1206 OPC_EmitInteger32, 28,
1207 OPC_EmitRegisterI32, 0 ,
1208 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1209 MVT::v4i16, 5, 0, 1, 2, 3, 4,
1210 0,
1211 82,
1212 OPC_MoveChild0,
1213 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1214 OPC_Scope, 37,
1215 OPC_CheckChild0Same, 0,
1216 OPC_MoveChild1,
1217 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1218 OPC_MoveChild0,
1219 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1220 OPC_CheckChild0Integer, 126|128,59,
1221 OPC_CheckType, MVT::v8i8,
1222 OPC_MoveParent,
1223 OPC_MoveParent,
1224 OPC_MoveParent,
1225 OPC_RecordChild1,
1226 OPC_MoveParent,
1227 OPC_CheckType, MVT::v4i16,
1228 OPC_CheckPatternPredicate1,
1229 OPC_EmitInteger32, 28,
1230 OPC_EmitRegisterI32, 0 ,
1231 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1232 MVT::v4i16, 5, 0, 1, 2, 3, 4,
1233 37,
1234 OPC_MoveChild0,
1235 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1236 OPC_MoveChild0,
1237 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1238 OPC_CheckChild0Integer, 126|128,59,
1239 OPC_CheckType, MVT::v8i8,
1240 OPC_MoveParent,
1241 OPC_MoveParent,
1242 OPC_CheckChild1Same, 0,
1243 OPC_MoveParent,
1244 OPC_RecordChild1,
1245 OPC_MoveParent,
1246 OPC_CheckType, MVT::v4i16,
1247 OPC_CheckPatternPredicate1,
1248 OPC_EmitInteger32, 28,
1249 OPC_EmitRegisterI32, 0 ,
1250 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1251 MVT::v4i16, 5, 0, 1, 2, 3, 4,
1252 0,
1253 0,
1254 14|128,1,
1255 OPC_MoveChild1,
1256 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1257 OPC_Scope, 67,
1258 OPC_RecordChild0,
1259 OPC_MoveChild1,
1260 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1261 OPC_MoveChild0,
1262 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1263 OPC_CheckChild0Integer, 126|128,59,
1264 OPC_CheckType, MVT::v8i8,
1265 OPC_MoveParent,
1266 OPC_MoveParent,
1267 OPC_MoveParent,
1268 OPC_MoveSibling1,
1269 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1270 OPC_Scope, 21,
1271 OPC_RecordChild0,
1272 OPC_CheckChild1Same, 1,
1273 OPC_MoveParent,
1274 OPC_CheckType, MVT::v4i16,
1275 OPC_CheckPatternPredicate1,
1276 OPC_EmitInteger32, 28,
1277 OPC_EmitRegisterI32, 0 ,
1278 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1279 MVT::v4i16, 5, 1, 2, 0, 3, 4,
1280 21,
1281 OPC_CheckChild0Same, 1,
1282 OPC_RecordChild1,
1283 OPC_MoveParent,
1284 OPC_CheckType, MVT::v4i16,
1285 OPC_CheckPatternPredicate1,
1286 OPC_EmitInteger32, 28,
1287 OPC_EmitRegisterI32, 0 ,
1288 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1289 MVT::v4i16, 5, 1, 2, 0, 3, 4,
1290 0,
1291 67,
1292 OPC_MoveChild0,
1293 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1294 OPC_MoveChild0,
1295 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1296 OPC_CheckChild0Integer, 126|128,59,
1297 OPC_CheckType, MVT::v8i8,
1298 OPC_MoveParent,
1299 OPC_MoveParent,
1300 OPC_RecordChild1,
1301 OPC_MoveParent,
1302 OPC_MoveSibling1,
1303 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1304 OPC_Scope, 21,
1305 OPC_RecordChild0,
1306 OPC_CheckChild1Same, 1,
1307 OPC_MoveParent,
1308 OPC_CheckType, MVT::v4i16,
1309 OPC_CheckPatternPredicate1,
1310 OPC_EmitInteger32, 28,
1311 OPC_EmitRegisterI32, 0 ,
1312 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1313 MVT::v4i16, 5, 1, 2, 0, 3, 4,
1314 21,
1315 OPC_CheckChild0Same, 1,
1316 OPC_RecordChild1,
1317 OPC_MoveParent,
1318 OPC_CheckType, MVT::v4i16,
1319 OPC_CheckPatternPredicate1,
1320 OPC_EmitInteger32, 28,
1321 OPC_EmitRegisterI32, 0 ,
1322 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1323 MVT::v4i16, 5, 1, 2, 0, 3, 4,
1324 0,
1325 0,
1326 0,
1327 16|128,1,
1328 OPC_MoveChild0,
1329 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1330 OPC_Scope, 68,
1331 OPC_RecordChild0,
1332 OPC_MoveChild1,
1333 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1334 OPC_MoveChild0,
1335 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1336 OPC_CheckChild0Integer, 126|128,59,
1337 OPC_CheckType, MVT::v8i8,
1338 OPC_MoveParent,
1339 OPC_MoveParent,
1340 OPC_MoveParent,
1341 OPC_RecordChild1,
1342 OPC_MoveSibling1,
1343 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1344 OPC_Scope, 21,
1345 OPC_RecordChild0,
1346 OPC_CheckChild1Same, 0,
1347 OPC_MoveParent,
1348 OPC_CheckType, MVT::v4i16,
1349 OPC_CheckPatternPredicate1,
1350 OPC_EmitInteger32, 28,
1351 OPC_EmitRegisterI32, 0 ,
1352 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1353 MVT::v4i16, 5, 0, 2, 1, 3, 4,
1354 21,
1355 OPC_CheckChild0Same, 0,
1356 OPC_RecordChild1,
1357 OPC_MoveParent,
1358 OPC_CheckType, MVT::v4i16,
1359 OPC_CheckPatternPredicate1,
1360 OPC_EmitInteger32, 28,
1361 OPC_EmitRegisterI32, 0 ,
1362 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1363 MVT::v4i16, 5, 0, 2, 1, 3, 4,
1364 0,
1365 68,
1366 OPC_MoveChild0,
1367 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1368 OPC_MoveChild0,
1369 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1370 OPC_CheckChild0Integer, 126|128,59,
1371 OPC_CheckType, MVT::v8i8,
1372 OPC_MoveParent,
1373 OPC_MoveParent,
1374 OPC_RecordChild1,
1375 OPC_MoveParent,
1376 OPC_RecordChild1,
1377 OPC_MoveSibling1,
1378 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1379 OPC_Scope, 21,
1380 OPC_RecordChild0,
1381 OPC_CheckChild1Same, 0,
1382 OPC_MoveParent,
1383 OPC_CheckType, MVT::v4i16,
1384 OPC_CheckPatternPredicate1,
1385 OPC_EmitInteger32, 28,
1386 OPC_EmitRegisterI32, 0 ,
1387 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1388 MVT::v4i16, 5, 0, 2, 1, 3, 4,
1389 21,
1390 OPC_CheckChild0Same, 0,
1391 OPC_RecordChild1,
1392 OPC_MoveParent,
1393 OPC_CheckType, MVT::v4i16,
1394 OPC_CheckPatternPredicate1,
1395 OPC_EmitInteger32, 28,
1396 OPC_EmitRegisterI32, 0 ,
1397 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1398 MVT::v4i16, 5, 0, 2, 1, 3, 4,
1399 0,
1400 0,
1401 62|128,3,
1402 OPC_RecordChild0,
1403 OPC_Scope, 41|128,2,
1404 OPC_RecordChild1,
1405 OPC_MoveSibling1,
1406 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1407 OPC_Scope, 41,
1408 OPC_RecordChild0,
1409 OPC_MoveChild1,
1410 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1411 OPC_MoveChild0,
1412 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1413 OPC_MoveChild0,
1414 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1415 OPC_CheckChild0Integer, 126|128,59,
1416 OPC_CheckType, MVT::v8i8,
1417 OPC_MoveParent,
1418 OPC_MoveParent,
1419 OPC_CheckChild1Same, 1,
1420 OPC_MoveParent,
1421 OPC_MoveParent,
1422 OPC_CheckType, MVT::v2i32,
1423 OPC_CheckPatternPredicate1,
1424 OPC_EmitInteger32, 28,
1425 OPC_EmitRegisterI32, 0 ,
1426 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1427 MVT::v2i32, 5, 1, 0, 2, 3, 4,
1428 82,
1429 OPC_MoveChild0,
1430 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1431 OPC_Scope, 37,
1432 OPC_CheckChild0Same, 1,
1433 OPC_MoveChild1,
1434 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1435 OPC_MoveChild0,
1436 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1437 OPC_CheckChild0Integer, 126|128,59,
1438 OPC_CheckType, MVT::v8i8,
1439 OPC_MoveParent,
1440 OPC_MoveParent,
1441 OPC_MoveParent,
1442 OPC_RecordChild1,
1443 OPC_MoveParent,
1444 OPC_CheckType, MVT::v2i32,
1445 OPC_CheckPatternPredicate1,
1446 OPC_EmitInteger32, 28,
1447 OPC_EmitRegisterI32, 0 ,
1448 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1449 MVT::v2i32, 5, 1, 0, 2, 3, 4,
1450 37,
1451 OPC_MoveChild0,
1452 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1453 OPC_MoveChild0,
1454 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1455 OPC_CheckChild0Integer, 126|128,59,
1456 OPC_CheckType, MVT::v8i8,
1457 OPC_MoveParent,
1458 OPC_MoveParent,
1459 OPC_CheckChild1Same, 1,
1460 OPC_MoveParent,
1461 OPC_RecordChild1,
1462 OPC_MoveParent,
1463 OPC_CheckType, MVT::v2i32,
1464 OPC_CheckPatternPredicate1,
1465 OPC_EmitInteger32, 28,
1466 OPC_EmitRegisterI32, 0 ,
1467 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1468 MVT::v2i32, 5, 1, 0, 2, 3, 4,
1469 0,
1470 81,
1471 OPC_RecordChild0,
1472 OPC_MoveChild1,
1473 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1474 OPC_Scope, 36,
1475 OPC_CheckChild0Same, 0,
1476 OPC_MoveChild1,
1477 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1478 OPC_MoveChild0,
1479 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1480 OPC_CheckChild0Integer, 126|128,59,
1481 OPC_CheckType, MVT::v8i8,
1482 OPC_MoveParent,
1483 OPC_MoveParent,
1484 OPC_MoveParent,
1485 OPC_MoveParent,
1486 OPC_CheckType, MVT::v2i32,
1487 OPC_CheckPatternPredicate1,
1488 OPC_EmitInteger32, 28,
1489 OPC_EmitRegisterI32, 0 ,
1490 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1491 MVT::v2i32, 5, 0, 1, 2, 3, 4,
1492 36,
1493 OPC_MoveChild0,
1494 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1495 OPC_MoveChild0,
1496 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1497 OPC_CheckChild0Integer, 126|128,59,
1498 OPC_CheckType, MVT::v8i8,
1499 OPC_MoveParent,
1500 OPC_MoveParent,
1501 OPC_CheckChild1Same, 0,
1502 OPC_MoveParent,
1503 OPC_MoveParent,
1504 OPC_CheckType, MVT::v2i32,
1505 OPC_CheckPatternPredicate1,
1506 OPC_EmitInteger32, 28,
1507 OPC_EmitRegisterI32, 0 ,
1508 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1509 MVT::v2i32, 5, 0, 1, 2, 3, 4,
1510 0,
1511 82,
1512 OPC_MoveChild0,
1513 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1514 OPC_Scope, 37,
1515 OPC_CheckChild0Same, 0,
1516 OPC_MoveChild1,
1517 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1518 OPC_MoveChild0,
1519 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1520 OPC_CheckChild0Integer, 126|128,59,
1521 OPC_CheckType, MVT::v8i8,
1522 OPC_MoveParent,
1523 OPC_MoveParent,
1524 OPC_MoveParent,
1525 OPC_RecordChild1,
1526 OPC_MoveParent,
1527 OPC_CheckType, MVT::v2i32,
1528 OPC_CheckPatternPredicate1,
1529 OPC_EmitInteger32, 28,
1530 OPC_EmitRegisterI32, 0 ,
1531 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1532 MVT::v2i32, 5, 0, 1, 2, 3, 4,
1533 37,
1534 OPC_MoveChild0,
1535 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1536 OPC_MoveChild0,
1537 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1538 OPC_CheckChild0Integer, 126|128,59,
1539 OPC_CheckType, MVT::v8i8,
1540 OPC_MoveParent,
1541 OPC_MoveParent,
1542 OPC_CheckChild1Same, 0,
1543 OPC_MoveParent,
1544 OPC_RecordChild1,
1545 OPC_MoveParent,
1546 OPC_CheckType, MVT::v2i32,
1547 OPC_CheckPatternPredicate1,
1548 OPC_EmitInteger32, 28,
1549 OPC_EmitRegisterI32, 0 ,
1550 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1551 MVT::v2i32, 5, 0, 1, 2, 3, 4,
1552 0,
1553 0,
1554 14|128,1,
1555 OPC_MoveChild1,
1556 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1557 OPC_Scope, 67,
1558 OPC_RecordChild0,
1559 OPC_MoveChild1,
1560 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1561 OPC_MoveChild0,
1562 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1563 OPC_CheckChild0Integer, 126|128,59,
1564 OPC_CheckType, MVT::v8i8,
1565 OPC_MoveParent,
1566 OPC_MoveParent,
1567 OPC_MoveParent,
1568 OPC_MoveSibling1,
1569 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1570 OPC_Scope, 21,
1571 OPC_RecordChild0,
1572 OPC_CheckChild1Same, 1,
1573 OPC_MoveParent,
1574 OPC_CheckType, MVT::v2i32,
1575 OPC_CheckPatternPredicate1,
1576 OPC_EmitInteger32, 28,
1577 OPC_EmitRegisterI32, 0 ,
1578 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1579 MVT::v2i32, 5, 1, 2, 0, 3, 4,
1580 21,
1581 OPC_CheckChild0Same, 1,
1582 OPC_RecordChild1,
1583 OPC_MoveParent,
1584 OPC_CheckType, MVT::v2i32,
1585 OPC_CheckPatternPredicate1,
1586 OPC_EmitInteger32, 28,
1587 OPC_EmitRegisterI32, 0 ,
1588 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1589 MVT::v2i32, 5, 1, 2, 0, 3, 4,
1590 0,
1591 67,
1592 OPC_MoveChild0,
1593 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1594 OPC_MoveChild0,
1595 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1596 OPC_CheckChild0Integer, 126|128,59,
1597 OPC_CheckType, MVT::v8i8,
1598 OPC_MoveParent,
1599 OPC_MoveParent,
1600 OPC_RecordChild1,
1601 OPC_MoveParent,
1602 OPC_MoveSibling1,
1603 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1604 OPC_Scope, 21,
1605 OPC_RecordChild0,
1606 OPC_CheckChild1Same, 1,
1607 OPC_MoveParent,
1608 OPC_CheckType, MVT::v2i32,
1609 OPC_CheckPatternPredicate1,
1610 OPC_EmitInteger32, 28,
1611 OPC_EmitRegisterI32, 0 ,
1612 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1613 MVT::v2i32, 5, 1, 2, 0, 3, 4,
1614 21,
1615 OPC_CheckChild0Same, 1,
1616 OPC_RecordChild1,
1617 OPC_MoveParent,
1618 OPC_CheckType, MVT::v2i32,
1619 OPC_CheckPatternPredicate1,
1620 OPC_EmitInteger32, 28,
1621 OPC_EmitRegisterI32, 0 ,
1622 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1623 MVT::v2i32, 5, 1, 2, 0, 3, 4,
1624 0,
1625 0,
1626 0,
1627 16|128,1,
1628 OPC_MoveChild0,
1629 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1630 OPC_Scope, 68,
1631 OPC_RecordChild0,
1632 OPC_MoveChild1,
1633 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1634 OPC_MoveChild0,
1635 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1636 OPC_CheckChild0Integer, 126|128,59,
1637 OPC_CheckType, MVT::v8i8,
1638 OPC_MoveParent,
1639 OPC_MoveParent,
1640 OPC_MoveParent,
1641 OPC_RecordChild1,
1642 OPC_MoveSibling1,
1643 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1644 OPC_Scope, 21,
1645 OPC_RecordChild0,
1646 OPC_CheckChild1Same, 0,
1647 OPC_MoveParent,
1648 OPC_CheckType, MVT::v2i32,
1649 OPC_CheckPatternPredicate1,
1650 OPC_EmitInteger32, 28,
1651 OPC_EmitRegisterI32, 0 ,
1652 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1653 MVT::v2i32, 5, 0, 2, 1, 3, 4,
1654 21,
1655 OPC_CheckChild0Same, 0,
1656 OPC_RecordChild1,
1657 OPC_MoveParent,
1658 OPC_CheckType, MVT::v2i32,
1659 OPC_CheckPatternPredicate1,
1660 OPC_EmitInteger32, 28,
1661 OPC_EmitRegisterI32, 0 ,
1662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1663 MVT::v2i32, 5, 0, 2, 1, 3, 4,
1664 0,
1665 68,
1666 OPC_MoveChild0,
1667 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1668 OPC_MoveChild0,
1669 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1670 OPC_CheckChild0Integer, 126|128,59,
1671 OPC_CheckType, MVT::v8i8,
1672 OPC_MoveParent,
1673 OPC_MoveParent,
1674 OPC_RecordChild1,
1675 OPC_MoveParent,
1676 OPC_RecordChild1,
1677 OPC_MoveSibling1,
1678 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1679 OPC_Scope, 21,
1680 OPC_RecordChild0,
1681 OPC_CheckChild1Same, 0,
1682 OPC_MoveParent,
1683 OPC_CheckType, MVT::v2i32,
1684 OPC_CheckPatternPredicate1,
1685 OPC_EmitInteger32, 28,
1686 OPC_EmitRegisterI32, 0 ,
1687 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1688 MVT::v2i32, 5, 0, 2, 1, 3, 4,
1689 21,
1690 OPC_CheckChild0Same, 0,
1691 OPC_RecordChild1,
1692 OPC_MoveParent,
1693 OPC_CheckType, MVT::v2i32,
1694 OPC_CheckPatternPredicate1,
1695 OPC_EmitInteger32, 28,
1696 OPC_EmitRegisterI32, 0 ,
1697 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1698 MVT::v2i32, 5, 0, 2, 1, 3, 4,
1699 0,
1700 0,
1701 62|128,3,
1702 OPC_RecordChild0,
1703 OPC_Scope, 41|128,2,
1704 OPC_RecordChild1,
1705 OPC_MoveSibling1,
1706 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1707 OPC_Scope, 41,
1708 OPC_RecordChild0,
1709 OPC_MoveChild1,
1710 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1711 OPC_MoveChild0,
1712 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1713 OPC_MoveChild0,
1714 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1715 OPC_CheckChild0Integer, 126|128,59,
1716 OPC_CheckType, MVT::v8i8,
1717 OPC_MoveParent,
1718 OPC_MoveParent,
1719 OPC_CheckChild1Same, 1,
1720 OPC_MoveParent,
1721 OPC_MoveParent,
1722 OPC_CheckType, MVT::v1i64,
1723 OPC_CheckPatternPredicate1,
1724 OPC_EmitInteger32, 28,
1725 OPC_EmitRegisterI32, 0 ,
1726 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1727 MVT::v1i64, 5, 1, 0, 2, 3, 4,
1728 82,
1729 OPC_MoveChild0,
1730 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1731 OPC_Scope, 37,
1732 OPC_CheckChild0Same, 1,
1733 OPC_MoveChild1,
1734 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1735 OPC_MoveChild0,
1736 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1737 OPC_CheckChild0Integer, 126|128,59,
1738 OPC_CheckType, MVT::v8i8,
1739 OPC_MoveParent,
1740 OPC_MoveParent,
1741 OPC_MoveParent,
1742 OPC_RecordChild1,
1743 OPC_MoveParent,
1744 OPC_CheckType, MVT::v1i64,
1745 OPC_CheckPatternPredicate1,
1746 OPC_EmitInteger32, 28,
1747 OPC_EmitRegisterI32, 0 ,
1748 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1749 MVT::v1i64, 5, 1, 0, 2, 3, 4,
1750 37,
1751 OPC_MoveChild0,
1752 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1753 OPC_MoveChild0,
1754 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1755 OPC_CheckChild0Integer, 126|128,59,
1756 OPC_CheckType, MVT::v8i8,
1757 OPC_MoveParent,
1758 OPC_MoveParent,
1759 OPC_CheckChild1Same, 1,
1760 OPC_MoveParent,
1761 OPC_RecordChild1,
1762 OPC_MoveParent,
1763 OPC_CheckType, MVT::v1i64,
1764 OPC_CheckPatternPredicate1,
1765 OPC_EmitInteger32, 28,
1766 OPC_EmitRegisterI32, 0 ,
1767 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1768 MVT::v1i64, 5, 1, 0, 2, 3, 4,
1769 0,
1770 81,
1771 OPC_RecordChild0,
1772 OPC_MoveChild1,
1773 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1774 OPC_Scope, 36,
1775 OPC_CheckChild0Same, 0,
1776 OPC_MoveChild1,
1777 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1778 OPC_MoveChild0,
1779 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1780 OPC_CheckChild0Integer, 126|128,59,
1781 OPC_CheckType, MVT::v8i8,
1782 OPC_MoveParent,
1783 OPC_MoveParent,
1784 OPC_MoveParent,
1785 OPC_MoveParent,
1786 OPC_CheckType, MVT::v1i64,
1787 OPC_CheckPatternPredicate1,
1788 OPC_EmitInteger32, 28,
1789 OPC_EmitRegisterI32, 0 ,
1790 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1791 MVT::v1i64, 5, 0, 1, 2, 3, 4,
1792 36,
1793 OPC_MoveChild0,
1794 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1795 OPC_MoveChild0,
1796 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1797 OPC_CheckChild0Integer, 126|128,59,
1798 OPC_CheckType, MVT::v8i8,
1799 OPC_MoveParent,
1800 OPC_MoveParent,
1801 OPC_CheckChild1Same, 0,
1802 OPC_MoveParent,
1803 OPC_MoveParent,
1804 OPC_CheckType, MVT::v1i64,
1805 OPC_CheckPatternPredicate1,
1806 OPC_EmitInteger32, 28,
1807 OPC_EmitRegisterI32, 0 ,
1808 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1809 MVT::v1i64, 5, 0, 1, 2, 3, 4,
1810 0,
1811 82,
1812 OPC_MoveChild0,
1813 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1814 OPC_Scope, 37,
1815 OPC_CheckChild0Same, 0,
1816 OPC_MoveChild1,
1817 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1818 OPC_MoveChild0,
1819 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1820 OPC_CheckChild0Integer, 126|128,59,
1821 OPC_CheckType, MVT::v8i8,
1822 OPC_MoveParent,
1823 OPC_MoveParent,
1824 OPC_MoveParent,
1825 OPC_RecordChild1,
1826 OPC_MoveParent,
1827 OPC_CheckType, MVT::v1i64,
1828 OPC_CheckPatternPredicate1,
1829 OPC_EmitInteger32, 28,
1830 OPC_EmitRegisterI32, 0 ,
1831 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1832 MVT::v1i64, 5, 0, 1, 2, 3, 4,
1833 37,
1834 OPC_MoveChild0,
1835 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1836 OPC_MoveChild0,
1837 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1838 OPC_CheckChild0Integer, 126|128,59,
1839 OPC_CheckType, MVT::v8i8,
1840 OPC_MoveParent,
1841 OPC_MoveParent,
1842 OPC_CheckChild1Same, 0,
1843 OPC_MoveParent,
1844 OPC_RecordChild1,
1845 OPC_MoveParent,
1846 OPC_CheckType, MVT::v1i64,
1847 OPC_CheckPatternPredicate1,
1848 OPC_EmitInteger32, 28,
1849 OPC_EmitRegisterI32, 0 ,
1850 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1851 MVT::v1i64, 5, 0, 1, 2, 3, 4,
1852 0,
1853 0,
1854 14|128,1,
1855 OPC_MoveChild1,
1856 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1857 OPC_Scope, 67,
1858 OPC_RecordChild0,
1859 OPC_MoveChild1,
1860 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1861 OPC_MoveChild0,
1862 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1863 OPC_CheckChild0Integer, 126|128,59,
1864 OPC_CheckType, MVT::v8i8,
1865 OPC_MoveParent,
1866 OPC_MoveParent,
1867 OPC_MoveParent,
1868 OPC_MoveSibling1,
1869 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1870 OPC_Scope, 21,
1871 OPC_RecordChild0,
1872 OPC_CheckChild1Same, 1,
1873 OPC_MoveParent,
1874 OPC_CheckType, MVT::v1i64,
1875 OPC_CheckPatternPredicate1,
1876 OPC_EmitInteger32, 28,
1877 OPC_EmitRegisterI32, 0 ,
1878 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1879 MVT::v1i64, 5, 1, 2, 0, 3, 4,
1880 21,
1881 OPC_CheckChild0Same, 1,
1882 OPC_RecordChild1,
1883 OPC_MoveParent,
1884 OPC_CheckType, MVT::v1i64,
1885 OPC_CheckPatternPredicate1,
1886 OPC_EmitInteger32, 28,
1887 OPC_EmitRegisterI32, 0 ,
1888 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1889 MVT::v1i64, 5, 1, 2, 0, 3, 4,
1890 0,
1891 67,
1892 OPC_MoveChild0,
1893 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1894 OPC_MoveChild0,
1895 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1896 OPC_CheckChild0Integer, 126|128,59,
1897 OPC_CheckType, MVT::v8i8,
1898 OPC_MoveParent,
1899 OPC_MoveParent,
1900 OPC_RecordChild1,
1901 OPC_MoveParent,
1902 OPC_MoveSibling1,
1903 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1904 OPC_Scope, 21,
1905 OPC_RecordChild0,
1906 OPC_CheckChild1Same, 1,
1907 OPC_MoveParent,
1908 OPC_CheckType, MVT::v1i64,
1909 OPC_CheckPatternPredicate1,
1910 OPC_EmitInteger32, 28,
1911 OPC_EmitRegisterI32, 0 ,
1912 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1913 MVT::v1i64, 5, 1, 2, 0, 3, 4,
1914 21,
1915 OPC_CheckChild0Same, 1,
1916 OPC_RecordChild1,
1917 OPC_MoveParent,
1918 OPC_CheckType, MVT::v1i64,
1919 OPC_CheckPatternPredicate1,
1920 OPC_EmitInteger32, 28,
1921 OPC_EmitRegisterI32, 0 ,
1922 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1923 MVT::v1i64, 5, 1, 2, 0, 3, 4,
1924 0,
1925 0,
1926 0,
1927 16|128,1,
1928 OPC_MoveChild0,
1929 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1930 OPC_Scope, 68,
1931 OPC_RecordChild0,
1932 OPC_MoveChild1,
1933 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1934 OPC_MoveChild0,
1935 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1936 OPC_CheckChild0Integer, 126|128,59,
1937 OPC_CheckType, MVT::v8i8,
1938 OPC_MoveParent,
1939 OPC_MoveParent,
1940 OPC_MoveParent,
1941 OPC_RecordChild1,
1942 OPC_MoveSibling1,
1943 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1944 OPC_Scope, 21,
1945 OPC_RecordChild0,
1946 OPC_CheckChild1Same, 0,
1947 OPC_MoveParent,
1948 OPC_CheckType, MVT::v1i64,
1949 OPC_CheckPatternPredicate1,
1950 OPC_EmitInteger32, 28,
1951 OPC_EmitRegisterI32, 0 ,
1952 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1953 MVT::v1i64, 5, 0, 2, 1, 3, 4,
1954 21,
1955 OPC_CheckChild0Same, 0,
1956 OPC_RecordChild1,
1957 OPC_MoveParent,
1958 OPC_CheckType, MVT::v1i64,
1959 OPC_CheckPatternPredicate1,
1960 OPC_EmitInteger32, 28,
1961 OPC_EmitRegisterI32, 0 ,
1962 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1963 MVT::v1i64, 5, 0, 2, 1, 3, 4,
1964 0,
1965 68,
1966 OPC_MoveChild0,
1967 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
1968 OPC_MoveChild0,
1969 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
1970 OPC_CheckChild0Integer, 126|128,59,
1971 OPC_CheckType, MVT::v8i8,
1972 OPC_MoveParent,
1973 OPC_MoveParent,
1974 OPC_RecordChild1,
1975 OPC_MoveParent,
1976 OPC_RecordChild1,
1977 OPC_MoveSibling1,
1978 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1979 OPC_Scope, 21,
1980 OPC_RecordChild0,
1981 OPC_CheckChild1Same, 0,
1982 OPC_MoveParent,
1983 OPC_CheckType, MVT::v1i64,
1984 OPC_CheckPatternPredicate1,
1985 OPC_EmitInteger32, 28,
1986 OPC_EmitRegisterI32, 0 ,
1987 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1988 MVT::v1i64, 5, 0, 2, 1, 3, 4,
1989 21,
1990 OPC_CheckChild0Same, 0,
1991 OPC_RecordChild1,
1992 OPC_MoveParent,
1993 OPC_CheckType, MVT::v1i64,
1994 OPC_CheckPatternPredicate1,
1995 OPC_EmitInteger32, 28,
1996 OPC_EmitRegisterI32, 0 ,
1997 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
1998 MVT::v1i64, 5, 0, 2, 1, 3, 4,
1999 0,
2000 0,
2001 62|128,3,
2002 OPC_RecordChild0,
2003 OPC_Scope, 41|128,2,
2004 OPC_RecordChild1,
2005 OPC_MoveSibling1,
2006 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2007 OPC_Scope, 41,
2008 OPC_RecordChild0,
2009 OPC_MoveChild1,
2010 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2011 OPC_MoveChild0,
2012 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2013 OPC_MoveChild0,
2014 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2015 OPC_CheckChild0Integer, 126|128,59,
2016 OPC_CheckType, MVT::v16i8,
2017 OPC_MoveParent,
2018 OPC_MoveParent,
2019 OPC_CheckChild1Same, 1,
2020 OPC_MoveParent,
2021 OPC_MoveParent,
2022 OPC_CheckType, MVT::v8i16,
2023 OPC_CheckPatternPredicate1,
2024 OPC_EmitInteger32, 28,
2025 OPC_EmitRegisterI32, 0 ,
2026 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2027 MVT::v8i16, 5, 1, 0, 2, 3, 4,
2028 82,
2029 OPC_MoveChild0,
2030 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2031 OPC_Scope, 37,
2032 OPC_CheckChild0Same, 1,
2033 OPC_MoveChild1,
2034 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2035 OPC_MoveChild0,
2036 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2037 OPC_CheckChild0Integer, 126|128,59,
2038 OPC_CheckType, MVT::v16i8,
2039 OPC_MoveParent,
2040 OPC_MoveParent,
2041 OPC_MoveParent,
2042 OPC_RecordChild1,
2043 OPC_MoveParent,
2044 OPC_CheckType, MVT::v8i16,
2045 OPC_CheckPatternPredicate1,
2046 OPC_EmitInteger32, 28,
2047 OPC_EmitRegisterI32, 0 ,
2048 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2049 MVT::v8i16, 5, 1, 0, 2, 3, 4,
2050 37,
2051 OPC_MoveChild0,
2052 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2053 OPC_MoveChild0,
2054 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2055 OPC_CheckChild0Integer, 126|128,59,
2056 OPC_CheckType, MVT::v16i8,
2057 OPC_MoveParent,
2058 OPC_MoveParent,
2059 OPC_CheckChild1Same, 1,
2060 OPC_MoveParent,
2061 OPC_RecordChild1,
2062 OPC_MoveParent,
2063 OPC_CheckType, MVT::v8i16,
2064 OPC_CheckPatternPredicate1,
2065 OPC_EmitInteger32, 28,
2066 OPC_EmitRegisterI32, 0 ,
2067 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2068 MVT::v8i16, 5, 1, 0, 2, 3, 4,
2069 0,
2070 81,
2071 OPC_RecordChild0,
2072 OPC_MoveChild1,
2073 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2074 OPC_Scope, 36,
2075 OPC_CheckChild0Same, 0,
2076 OPC_MoveChild1,
2077 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2078 OPC_MoveChild0,
2079 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2080 OPC_CheckChild0Integer, 126|128,59,
2081 OPC_CheckType, MVT::v16i8,
2082 OPC_MoveParent,
2083 OPC_MoveParent,
2084 OPC_MoveParent,
2085 OPC_MoveParent,
2086 OPC_CheckType, MVT::v8i16,
2087 OPC_CheckPatternPredicate1,
2088 OPC_EmitInteger32, 28,
2089 OPC_EmitRegisterI32, 0 ,
2090 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2091 MVT::v8i16, 5, 0, 1, 2, 3, 4,
2092 36,
2093 OPC_MoveChild0,
2094 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2095 OPC_MoveChild0,
2096 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2097 OPC_CheckChild0Integer, 126|128,59,
2098 OPC_CheckType, MVT::v16i8,
2099 OPC_MoveParent,
2100 OPC_MoveParent,
2101 OPC_CheckChild1Same, 0,
2102 OPC_MoveParent,
2103 OPC_MoveParent,
2104 OPC_CheckType, MVT::v8i16,
2105 OPC_CheckPatternPredicate1,
2106 OPC_EmitInteger32, 28,
2107 OPC_EmitRegisterI32, 0 ,
2108 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2109 MVT::v8i16, 5, 0, 1, 2, 3, 4,
2110 0,
2111 82,
2112 OPC_MoveChild0,
2113 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2114 OPC_Scope, 37,
2115 OPC_CheckChild0Same, 0,
2116 OPC_MoveChild1,
2117 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2118 OPC_MoveChild0,
2119 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2120 OPC_CheckChild0Integer, 126|128,59,
2121 OPC_CheckType, MVT::v16i8,
2122 OPC_MoveParent,
2123 OPC_MoveParent,
2124 OPC_MoveParent,
2125 OPC_RecordChild1,
2126 OPC_MoveParent,
2127 OPC_CheckType, MVT::v8i16,
2128 OPC_CheckPatternPredicate1,
2129 OPC_EmitInteger32, 28,
2130 OPC_EmitRegisterI32, 0 ,
2131 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2132 MVT::v8i16, 5, 0, 1, 2, 3, 4,
2133 37,
2134 OPC_MoveChild0,
2135 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2136 OPC_MoveChild0,
2137 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2138 OPC_CheckChild0Integer, 126|128,59,
2139 OPC_CheckType, MVT::v16i8,
2140 OPC_MoveParent,
2141 OPC_MoveParent,
2142 OPC_CheckChild1Same, 0,
2143 OPC_MoveParent,
2144 OPC_RecordChild1,
2145 OPC_MoveParent,
2146 OPC_CheckType, MVT::v8i16,
2147 OPC_CheckPatternPredicate1,
2148 OPC_EmitInteger32, 28,
2149 OPC_EmitRegisterI32, 0 ,
2150 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2151 MVT::v8i16, 5, 0, 1, 2, 3, 4,
2152 0,
2153 0,
2154 14|128,1,
2155 OPC_MoveChild1,
2156 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2157 OPC_Scope, 67,
2158 OPC_RecordChild0,
2159 OPC_MoveChild1,
2160 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2161 OPC_MoveChild0,
2162 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2163 OPC_CheckChild0Integer, 126|128,59,
2164 OPC_CheckType, MVT::v16i8,
2165 OPC_MoveParent,
2166 OPC_MoveParent,
2167 OPC_MoveParent,
2168 OPC_MoveSibling1,
2169 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2170 OPC_Scope, 21,
2171 OPC_RecordChild0,
2172 OPC_CheckChild1Same, 1,
2173 OPC_MoveParent,
2174 OPC_CheckType, MVT::v8i16,
2175 OPC_CheckPatternPredicate1,
2176 OPC_EmitInteger32, 28,
2177 OPC_EmitRegisterI32, 0 ,
2178 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2179 MVT::v8i16, 5, 1, 2, 0, 3, 4,
2180 21,
2181 OPC_CheckChild0Same, 1,
2182 OPC_RecordChild1,
2183 OPC_MoveParent,
2184 OPC_CheckType, MVT::v8i16,
2185 OPC_CheckPatternPredicate1,
2186 OPC_EmitInteger32, 28,
2187 OPC_EmitRegisterI32, 0 ,
2188 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2189 MVT::v8i16, 5, 1, 2, 0, 3, 4,
2190 0,
2191 67,
2192 OPC_MoveChild0,
2193 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2194 OPC_MoveChild0,
2195 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2196 OPC_CheckChild0Integer, 126|128,59,
2197 OPC_CheckType, MVT::v16i8,
2198 OPC_MoveParent,
2199 OPC_MoveParent,
2200 OPC_RecordChild1,
2201 OPC_MoveParent,
2202 OPC_MoveSibling1,
2203 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2204 OPC_Scope, 21,
2205 OPC_RecordChild0,
2206 OPC_CheckChild1Same, 1,
2207 OPC_MoveParent,
2208 OPC_CheckType, MVT::v8i16,
2209 OPC_CheckPatternPredicate1,
2210 OPC_EmitInteger32, 28,
2211 OPC_EmitRegisterI32, 0 ,
2212 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2213 MVT::v8i16, 5, 1, 2, 0, 3, 4,
2214 21,
2215 OPC_CheckChild0Same, 1,
2216 OPC_RecordChild1,
2217 OPC_MoveParent,
2218 OPC_CheckType, MVT::v8i16,
2219 OPC_CheckPatternPredicate1,
2220 OPC_EmitInteger32, 28,
2221 OPC_EmitRegisterI32, 0 ,
2222 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2223 MVT::v8i16, 5, 1, 2, 0, 3, 4,
2224 0,
2225 0,
2226 0,
2227 16|128,1,
2228 OPC_MoveChild0,
2229 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2230 OPC_Scope, 68,
2231 OPC_RecordChild0,
2232 OPC_MoveChild1,
2233 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2234 OPC_MoveChild0,
2235 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2236 OPC_CheckChild0Integer, 126|128,59,
2237 OPC_CheckType, MVT::v16i8,
2238 OPC_MoveParent,
2239 OPC_MoveParent,
2240 OPC_MoveParent,
2241 OPC_RecordChild1,
2242 OPC_MoveSibling1,
2243 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2244 OPC_Scope, 21,
2245 OPC_RecordChild0,
2246 OPC_CheckChild1Same, 0,
2247 OPC_MoveParent,
2248 OPC_CheckType, MVT::v8i16,
2249 OPC_CheckPatternPredicate1,
2250 OPC_EmitInteger32, 28,
2251 OPC_EmitRegisterI32, 0 ,
2252 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2253 MVT::v8i16, 5, 0, 2, 1, 3, 4,
2254 21,
2255 OPC_CheckChild0Same, 0,
2256 OPC_RecordChild1,
2257 OPC_MoveParent,
2258 OPC_CheckType, MVT::v8i16,
2259 OPC_CheckPatternPredicate1,
2260 OPC_EmitInteger32, 28,
2261 OPC_EmitRegisterI32, 0 ,
2262 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2263 MVT::v8i16, 5, 0, 2, 1, 3, 4,
2264 0,
2265 68,
2266 OPC_MoveChild0,
2267 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2268 OPC_MoveChild0,
2269 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2270 OPC_CheckChild0Integer, 126|128,59,
2271 OPC_CheckType, MVT::v16i8,
2272 OPC_MoveParent,
2273 OPC_MoveParent,
2274 OPC_RecordChild1,
2275 OPC_MoveParent,
2276 OPC_RecordChild1,
2277 OPC_MoveSibling1,
2278 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2279 OPC_Scope, 21,
2280 OPC_RecordChild0,
2281 OPC_CheckChild1Same, 0,
2282 OPC_MoveParent,
2283 OPC_CheckType, MVT::v8i16,
2284 OPC_CheckPatternPredicate1,
2285 OPC_EmitInteger32, 28,
2286 OPC_EmitRegisterI32, 0 ,
2287 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2288 MVT::v8i16, 5, 0, 2, 1, 3, 4,
2289 21,
2290 OPC_CheckChild0Same, 0,
2291 OPC_RecordChild1,
2292 OPC_MoveParent,
2293 OPC_CheckType, MVT::v8i16,
2294 OPC_CheckPatternPredicate1,
2295 OPC_EmitInteger32, 28,
2296 OPC_EmitRegisterI32, 0 ,
2297 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2298 MVT::v8i16, 5, 0, 2, 1, 3, 4,
2299 0,
2300 0,
2301 62|128,3,
2302 OPC_RecordChild0,
2303 OPC_Scope, 41|128,2,
2304 OPC_RecordChild1,
2305 OPC_MoveSibling1,
2306 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2307 OPC_Scope, 41,
2308 OPC_RecordChild0,
2309 OPC_MoveChild1,
2310 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2311 OPC_MoveChild0,
2312 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2313 OPC_MoveChild0,
2314 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2315 OPC_CheckChild0Integer, 126|128,59,
2316 OPC_CheckType, MVT::v16i8,
2317 OPC_MoveParent,
2318 OPC_MoveParent,
2319 OPC_CheckChild1Same, 1,
2320 OPC_MoveParent,
2321 OPC_MoveParent,
2322 OPC_CheckType, MVT::v4i32,
2323 OPC_CheckPatternPredicate1,
2324 OPC_EmitInteger32, 28,
2325 OPC_EmitRegisterI32, 0 ,
2326 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2327 MVT::v4i32, 5, 1, 0, 2, 3, 4,
2328 82,
2329 OPC_MoveChild0,
2330 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2331 OPC_Scope, 37,
2332 OPC_CheckChild0Same, 1,
2333 OPC_MoveChild1,
2334 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2335 OPC_MoveChild0,
2336 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2337 OPC_CheckChild0Integer, 126|128,59,
2338 OPC_CheckType, MVT::v16i8,
2339 OPC_MoveParent,
2340 OPC_MoveParent,
2341 OPC_MoveParent,
2342 OPC_RecordChild1,
2343 OPC_MoveParent,
2344 OPC_CheckType, MVT::v4i32,
2345 OPC_CheckPatternPredicate1,
2346 OPC_EmitInteger32, 28,
2347 OPC_EmitRegisterI32, 0 ,
2348 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2349 MVT::v4i32, 5, 1, 0, 2, 3, 4,
2350 37,
2351 OPC_MoveChild0,
2352 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2353 OPC_MoveChild0,
2354 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2355 OPC_CheckChild0Integer, 126|128,59,
2356 OPC_CheckType, MVT::v16i8,
2357 OPC_MoveParent,
2358 OPC_MoveParent,
2359 OPC_CheckChild1Same, 1,
2360 OPC_MoveParent,
2361 OPC_RecordChild1,
2362 OPC_MoveParent,
2363 OPC_CheckType, MVT::v4i32,
2364 OPC_CheckPatternPredicate1,
2365 OPC_EmitInteger32, 28,
2366 OPC_EmitRegisterI32, 0 ,
2367 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2368 MVT::v4i32, 5, 1, 0, 2, 3, 4,
2369 0,
2370 81,
2371 OPC_RecordChild0,
2372 OPC_MoveChild1,
2373 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2374 OPC_Scope, 36,
2375 OPC_CheckChild0Same, 0,
2376 OPC_MoveChild1,
2377 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2378 OPC_MoveChild0,
2379 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2380 OPC_CheckChild0Integer, 126|128,59,
2381 OPC_CheckType, MVT::v16i8,
2382 OPC_MoveParent,
2383 OPC_MoveParent,
2384 OPC_MoveParent,
2385 OPC_MoveParent,
2386 OPC_CheckType, MVT::v4i32,
2387 OPC_CheckPatternPredicate1,
2388 OPC_EmitInteger32, 28,
2389 OPC_EmitRegisterI32, 0 ,
2390 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2391 MVT::v4i32, 5, 0, 1, 2, 3, 4,
2392 36,
2393 OPC_MoveChild0,
2394 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2395 OPC_MoveChild0,
2396 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2397 OPC_CheckChild0Integer, 126|128,59,
2398 OPC_CheckType, MVT::v16i8,
2399 OPC_MoveParent,
2400 OPC_MoveParent,
2401 OPC_CheckChild1Same, 0,
2402 OPC_MoveParent,
2403 OPC_MoveParent,
2404 OPC_CheckType, MVT::v4i32,
2405 OPC_CheckPatternPredicate1,
2406 OPC_EmitInteger32, 28,
2407 OPC_EmitRegisterI32, 0 ,
2408 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2409 MVT::v4i32, 5, 0, 1, 2, 3, 4,
2410 0,
2411 82,
2412 OPC_MoveChild0,
2413 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2414 OPC_Scope, 37,
2415 OPC_CheckChild0Same, 0,
2416 OPC_MoveChild1,
2417 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2418 OPC_MoveChild0,
2419 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2420 OPC_CheckChild0Integer, 126|128,59,
2421 OPC_CheckType, MVT::v16i8,
2422 OPC_MoveParent,
2423 OPC_MoveParent,
2424 OPC_MoveParent,
2425 OPC_RecordChild1,
2426 OPC_MoveParent,
2427 OPC_CheckType, MVT::v4i32,
2428 OPC_CheckPatternPredicate1,
2429 OPC_EmitInteger32, 28,
2430 OPC_EmitRegisterI32, 0 ,
2431 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2432 MVT::v4i32, 5, 0, 1, 2, 3, 4,
2433 37,
2434 OPC_MoveChild0,
2435 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2436 OPC_MoveChild0,
2437 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2438 OPC_CheckChild0Integer, 126|128,59,
2439 OPC_CheckType, MVT::v16i8,
2440 OPC_MoveParent,
2441 OPC_MoveParent,
2442 OPC_CheckChild1Same, 0,
2443 OPC_MoveParent,
2444 OPC_RecordChild1,
2445 OPC_MoveParent,
2446 OPC_CheckType, MVT::v4i32,
2447 OPC_CheckPatternPredicate1,
2448 OPC_EmitInteger32, 28,
2449 OPC_EmitRegisterI32, 0 ,
2450 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2451 MVT::v4i32, 5, 0, 1, 2, 3, 4,
2452 0,
2453 0,
2454 14|128,1,
2455 OPC_MoveChild1,
2456 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2457 OPC_Scope, 67,
2458 OPC_RecordChild0,
2459 OPC_MoveChild1,
2460 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2461 OPC_MoveChild0,
2462 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2463 OPC_CheckChild0Integer, 126|128,59,
2464 OPC_CheckType, MVT::v16i8,
2465 OPC_MoveParent,
2466 OPC_MoveParent,
2467 OPC_MoveParent,
2468 OPC_MoveSibling1,
2469 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2470 OPC_Scope, 21,
2471 OPC_RecordChild0,
2472 OPC_CheckChild1Same, 1,
2473 OPC_MoveParent,
2474 OPC_CheckType, MVT::v4i32,
2475 OPC_CheckPatternPredicate1,
2476 OPC_EmitInteger32, 28,
2477 OPC_EmitRegisterI32, 0 ,
2478 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2479 MVT::v4i32, 5, 1, 2, 0, 3, 4,
2480 21,
2481 OPC_CheckChild0Same, 1,
2482 OPC_RecordChild1,
2483 OPC_MoveParent,
2484 OPC_CheckType, MVT::v4i32,
2485 OPC_CheckPatternPredicate1,
2486 OPC_EmitInteger32, 28,
2487 OPC_EmitRegisterI32, 0 ,
2488 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2489 MVT::v4i32, 5, 1, 2, 0, 3, 4,
2490 0,
2491 67,
2492 OPC_MoveChild0,
2493 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2494 OPC_MoveChild0,
2495 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2496 OPC_CheckChild0Integer, 126|128,59,
2497 OPC_CheckType, MVT::v16i8,
2498 OPC_MoveParent,
2499 OPC_MoveParent,
2500 OPC_RecordChild1,
2501 OPC_MoveParent,
2502 OPC_MoveSibling1,
2503 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2504 OPC_Scope, 21,
2505 OPC_RecordChild0,
2506 OPC_CheckChild1Same, 1,
2507 OPC_MoveParent,
2508 OPC_CheckType, MVT::v4i32,
2509 OPC_CheckPatternPredicate1,
2510 OPC_EmitInteger32, 28,
2511 OPC_EmitRegisterI32, 0 ,
2512 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2513 MVT::v4i32, 5, 1, 2, 0, 3, 4,
2514 21,
2515 OPC_CheckChild0Same, 1,
2516 OPC_RecordChild1,
2517 OPC_MoveParent,
2518 OPC_CheckType, MVT::v4i32,
2519 OPC_CheckPatternPredicate1,
2520 OPC_EmitInteger32, 28,
2521 OPC_EmitRegisterI32, 0 ,
2522 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2523 MVT::v4i32, 5, 1, 2, 0, 3, 4,
2524 0,
2525 0,
2526 0,
2527 16|128,1,
2528 OPC_MoveChild0,
2529 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2530 OPC_Scope, 68,
2531 OPC_RecordChild0,
2532 OPC_MoveChild1,
2533 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2534 OPC_MoveChild0,
2535 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2536 OPC_CheckChild0Integer, 126|128,59,
2537 OPC_CheckType, MVT::v16i8,
2538 OPC_MoveParent,
2539 OPC_MoveParent,
2540 OPC_MoveParent,
2541 OPC_RecordChild1,
2542 OPC_MoveSibling1,
2543 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2544 OPC_Scope, 21,
2545 OPC_RecordChild0,
2546 OPC_CheckChild1Same, 0,
2547 OPC_MoveParent,
2548 OPC_CheckType, MVT::v4i32,
2549 OPC_CheckPatternPredicate1,
2550 OPC_EmitInteger32, 28,
2551 OPC_EmitRegisterI32, 0 ,
2552 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2553 MVT::v4i32, 5, 0, 2, 1, 3, 4,
2554 21,
2555 OPC_CheckChild0Same, 0,
2556 OPC_RecordChild1,
2557 OPC_MoveParent,
2558 OPC_CheckType, MVT::v4i32,
2559 OPC_CheckPatternPredicate1,
2560 OPC_EmitInteger32, 28,
2561 OPC_EmitRegisterI32, 0 ,
2562 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2563 MVT::v4i32, 5, 0, 2, 1, 3, 4,
2564 0,
2565 68,
2566 OPC_MoveChild0,
2567 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2568 OPC_MoveChild0,
2569 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2570 OPC_CheckChild0Integer, 126|128,59,
2571 OPC_CheckType, MVT::v16i8,
2572 OPC_MoveParent,
2573 OPC_MoveParent,
2574 OPC_RecordChild1,
2575 OPC_MoveParent,
2576 OPC_RecordChild1,
2577 OPC_MoveSibling1,
2578 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2579 OPC_Scope, 21,
2580 OPC_RecordChild0,
2581 OPC_CheckChild1Same, 0,
2582 OPC_MoveParent,
2583 OPC_CheckType, MVT::v4i32,
2584 OPC_CheckPatternPredicate1,
2585 OPC_EmitInteger32, 28,
2586 OPC_EmitRegisterI32, 0 ,
2587 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2588 MVT::v4i32, 5, 0, 2, 1, 3, 4,
2589 21,
2590 OPC_CheckChild0Same, 0,
2591 OPC_RecordChild1,
2592 OPC_MoveParent,
2593 OPC_CheckType, MVT::v4i32,
2594 OPC_CheckPatternPredicate1,
2595 OPC_EmitInteger32, 28,
2596 OPC_EmitRegisterI32, 0 ,
2597 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2598 MVT::v4i32, 5, 0, 2, 1, 3, 4,
2599 0,
2600 0,
2601 62|128,3,
2602 OPC_RecordChild0,
2603 OPC_Scope, 41|128,2,
2604 OPC_RecordChild1,
2605 OPC_MoveSibling1,
2606 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2607 OPC_Scope, 41,
2608 OPC_RecordChild0,
2609 OPC_MoveChild1,
2610 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2611 OPC_MoveChild0,
2612 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2613 OPC_MoveChild0,
2614 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2615 OPC_CheckChild0Integer, 126|128,59,
2616 OPC_CheckType, MVT::v16i8,
2617 OPC_MoveParent,
2618 OPC_MoveParent,
2619 OPC_CheckChild1Same, 1,
2620 OPC_MoveParent,
2621 OPC_MoveParent,
2622 OPC_CheckType, MVT::v2i64,
2623 OPC_CheckPatternPredicate1,
2624 OPC_EmitInteger32, 28,
2625 OPC_EmitRegisterI32, 0 ,
2626 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2627 MVT::v2i64, 5, 1, 0, 2, 3, 4,
2628 82,
2629 OPC_MoveChild0,
2630 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2631 OPC_Scope, 37,
2632 OPC_CheckChild0Same, 1,
2633 OPC_MoveChild1,
2634 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2635 OPC_MoveChild0,
2636 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2637 OPC_CheckChild0Integer, 126|128,59,
2638 OPC_CheckType, MVT::v16i8,
2639 OPC_MoveParent,
2640 OPC_MoveParent,
2641 OPC_MoveParent,
2642 OPC_RecordChild1,
2643 OPC_MoveParent,
2644 OPC_CheckType, MVT::v2i64,
2645 OPC_CheckPatternPredicate1,
2646 OPC_EmitInteger32, 28,
2647 OPC_EmitRegisterI32, 0 ,
2648 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2649 MVT::v2i64, 5, 1, 0, 2, 3, 4,
2650 37,
2651 OPC_MoveChild0,
2652 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2653 OPC_MoveChild0,
2654 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2655 OPC_CheckChild0Integer, 126|128,59,
2656 OPC_CheckType, MVT::v16i8,
2657 OPC_MoveParent,
2658 OPC_MoveParent,
2659 OPC_CheckChild1Same, 1,
2660 OPC_MoveParent,
2661 OPC_RecordChild1,
2662 OPC_MoveParent,
2663 OPC_CheckType, MVT::v2i64,
2664 OPC_CheckPatternPredicate1,
2665 OPC_EmitInteger32, 28,
2666 OPC_EmitRegisterI32, 0 ,
2667 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2668 MVT::v2i64, 5, 1, 0, 2, 3, 4,
2669 0,
2670 81,
2671 OPC_RecordChild0,
2672 OPC_MoveChild1,
2673 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2674 OPC_Scope, 36,
2675 OPC_CheckChild0Same, 0,
2676 OPC_MoveChild1,
2677 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2678 OPC_MoveChild0,
2679 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2680 OPC_CheckChild0Integer, 126|128,59,
2681 OPC_CheckType, MVT::v16i8,
2682 OPC_MoveParent,
2683 OPC_MoveParent,
2684 OPC_MoveParent,
2685 OPC_MoveParent,
2686 OPC_CheckType, MVT::v2i64,
2687 OPC_CheckPatternPredicate1,
2688 OPC_EmitInteger32, 28,
2689 OPC_EmitRegisterI32, 0 ,
2690 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2691 MVT::v2i64, 5, 0, 1, 2, 3, 4,
2692 36,
2693 OPC_MoveChild0,
2694 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2695 OPC_MoveChild0,
2696 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2697 OPC_CheckChild0Integer, 126|128,59,
2698 OPC_CheckType, MVT::v16i8,
2699 OPC_MoveParent,
2700 OPC_MoveParent,
2701 OPC_CheckChild1Same, 0,
2702 OPC_MoveParent,
2703 OPC_MoveParent,
2704 OPC_CheckType, MVT::v2i64,
2705 OPC_CheckPatternPredicate1,
2706 OPC_EmitInteger32, 28,
2707 OPC_EmitRegisterI32, 0 ,
2708 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2709 MVT::v2i64, 5, 0, 1, 2, 3, 4,
2710 0,
2711 82,
2712 OPC_MoveChild0,
2713 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2714 OPC_Scope, 37,
2715 OPC_CheckChild0Same, 0,
2716 OPC_MoveChild1,
2717 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2718 OPC_MoveChild0,
2719 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2720 OPC_CheckChild0Integer, 126|128,59,
2721 OPC_CheckType, MVT::v16i8,
2722 OPC_MoveParent,
2723 OPC_MoveParent,
2724 OPC_MoveParent,
2725 OPC_RecordChild1,
2726 OPC_MoveParent,
2727 OPC_CheckType, MVT::v2i64,
2728 OPC_CheckPatternPredicate1,
2729 OPC_EmitInteger32, 28,
2730 OPC_EmitRegisterI32, 0 ,
2731 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2732 MVT::v2i64, 5, 0, 1, 2, 3, 4,
2733 37,
2734 OPC_MoveChild0,
2735 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2736 OPC_MoveChild0,
2737 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2738 OPC_CheckChild0Integer, 126|128,59,
2739 OPC_CheckType, MVT::v16i8,
2740 OPC_MoveParent,
2741 OPC_MoveParent,
2742 OPC_CheckChild1Same, 0,
2743 OPC_MoveParent,
2744 OPC_RecordChild1,
2745 OPC_MoveParent,
2746 OPC_CheckType, MVT::v2i64,
2747 OPC_CheckPatternPredicate1,
2748 OPC_EmitInteger32, 28,
2749 OPC_EmitRegisterI32, 0 ,
2750 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2751 MVT::v2i64, 5, 0, 1, 2, 3, 4,
2752 0,
2753 0,
2754 14|128,1,
2755 OPC_MoveChild1,
2756 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2757 OPC_Scope, 67,
2758 OPC_RecordChild0,
2759 OPC_MoveChild1,
2760 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2761 OPC_MoveChild0,
2762 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2763 OPC_CheckChild0Integer, 126|128,59,
2764 OPC_CheckType, MVT::v16i8,
2765 OPC_MoveParent,
2766 OPC_MoveParent,
2767 OPC_MoveParent,
2768 OPC_MoveSibling1,
2769 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2770 OPC_Scope, 21,
2771 OPC_RecordChild0,
2772 OPC_CheckChild1Same, 1,
2773 OPC_MoveParent,
2774 OPC_CheckType, MVT::v2i64,
2775 OPC_CheckPatternPredicate1,
2776 OPC_EmitInteger32, 28,
2777 OPC_EmitRegisterI32, 0 ,
2778 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2779 MVT::v2i64, 5, 1, 2, 0, 3, 4,
2780 21,
2781 OPC_CheckChild0Same, 1,
2782 OPC_RecordChild1,
2783 OPC_MoveParent,
2784 OPC_CheckType, MVT::v2i64,
2785 OPC_CheckPatternPredicate1,
2786 OPC_EmitInteger32, 28,
2787 OPC_EmitRegisterI32, 0 ,
2788 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2789 MVT::v2i64, 5, 1, 2, 0, 3, 4,
2790 0,
2791 67,
2792 OPC_MoveChild0,
2793 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2794 OPC_MoveChild0,
2795 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2796 OPC_CheckChild0Integer, 126|128,59,
2797 OPC_CheckType, MVT::v16i8,
2798 OPC_MoveParent,
2799 OPC_MoveParent,
2800 OPC_RecordChild1,
2801 OPC_MoveParent,
2802 OPC_MoveSibling1,
2803 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2804 OPC_Scope, 21,
2805 OPC_RecordChild0,
2806 OPC_CheckChild1Same, 1,
2807 OPC_MoveParent,
2808 OPC_CheckType, MVT::v2i64,
2809 OPC_CheckPatternPredicate1,
2810 OPC_EmitInteger32, 28,
2811 OPC_EmitRegisterI32, 0 ,
2812 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2813 MVT::v2i64, 5, 1, 2, 0, 3, 4,
2814 21,
2815 OPC_CheckChild0Same, 1,
2816 OPC_RecordChild1,
2817 OPC_MoveParent,
2818 OPC_CheckType, MVT::v2i64,
2819 OPC_CheckPatternPredicate1,
2820 OPC_EmitInteger32, 28,
2821 OPC_EmitRegisterI32, 0 ,
2822 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2823 MVT::v2i64, 5, 1, 2, 0, 3, 4,
2824 0,
2825 0,
2826 0,
2827 16|128,1,
2828 OPC_MoveChild0,
2829 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2830 OPC_Scope, 68,
2831 OPC_RecordChild0,
2832 OPC_MoveChild1,
2833 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2834 OPC_MoveChild0,
2835 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2836 OPC_CheckChild0Integer, 126|128,59,
2837 OPC_CheckType, MVT::v16i8,
2838 OPC_MoveParent,
2839 OPC_MoveParent,
2840 OPC_MoveParent,
2841 OPC_RecordChild1,
2842 OPC_MoveSibling1,
2843 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2844 OPC_Scope, 21,
2845 OPC_RecordChild0,
2846 OPC_CheckChild1Same, 0,
2847 OPC_MoveParent,
2848 OPC_CheckType, MVT::v2i64,
2849 OPC_CheckPatternPredicate1,
2850 OPC_EmitInteger32, 28,
2851 OPC_EmitRegisterI32, 0 ,
2852 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2853 MVT::v2i64, 5, 0, 2, 1, 3, 4,
2854 21,
2855 OPC_CheckChild0Same, 0,
2856 OPC_RecordChild1,
2857 OPC_MoveParent,
2858 OPC_CheckType, MVT::v2i64,
2859 OPC_CheckPatternPredicate1,
2860 OPC_EmitInteger32, 28,
2861 OPC_EmitRegisterI32, 0 ,
2862 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2863 MVT::v2i64, 5, 0, 2, 1, 3, 4,
2864 0,
2865 68,
2866 OPC_MoveChild0,
2867 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2868 OPC_MoveChild0,
2869 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2870 OPC_CheckChild0Integer, 126|128,59,
2871 OPC_CheckType, MVT::v16i8,
2872 OPC_MoveParent,
2873 OPC_MoveParent,
2874 OPC_RecordChild1,
2875 OPC_MoveParent,
2876 OPC_RecordChild1,
2877 OPC_MoveSibling1,
2878 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2879 OPC_Scope, 21,
2880 OPC_RecordChild0,
2881 OPC_CheckChild1Same, 0,
2882 OPC_MoveParent,
2883 OPC_CheckType, MVT::v2i64,
2884 OPC_CheckPatternPredicate1,
2885 OPC_EmitInteger32, 28,
2886 OPC_EmitRegisterI32, 0 ,
2887 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2888 MVT::v2i64, 5, 0, 2, 1, 3, 4,
2889 21,
2890 OPC_CheckChild0Same, 0,
2891 OPC_RecordChild1,
2892 OPC_MoveParent,
2893 OPC_CheckType, MVT::v2i64,
2894 OPC_CheckPatternPredicate1,
2895 OPC_EmitInteger32, 28,
2896 OPC_EmitRegisterI32, 0 ,
2897 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2898 MVT::v2i64, 5, 0, 2, 1, 3, 4,
2899 0,
2900 0,
2901 51|128,3,
2902 OPC_RecordChild0,
2903 OPC_Scope, 44|128,2,
2904 OPC_RecordChild1,
2905 OPC_MoveSibling1,
2906 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2907 OPC_Scope, 86,
2908 OPC_RecordChild0,
2909 OPC_MoveChild1,
2910 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2911 OPC_Scope, 48,
2912 OPC_CheckChild0Same, 1,
2913 OPC_MoveChild1,
2914 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2915 OPC_CheckChild0Integer, 126|128,59,
2916 OPC_MoveParent,
2917 OPC_MoveParent,
2918 OPC_MoveParent,
2919 OPC_SwitchType , 15, MVT::v8i8,
2920 OPC_CheckPatternPredicate1,
2921 OPC_EmitInteger32, 28,
2922 OPC_EmitRegisterI32, 0 ,
2923 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
2924 MVT::v8i8, 5, 1, 0, 2, 3, 4,
2925 15, MVT::v16i8,
2926 OPC_CheckPatternPredicate1,
2927 OPC_EmitInteger32, 28,
2928 OPC_EmitRegisterI32, 0 ,
2929 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
2930 MVT::v16i8, 5, 1, 0, 2, 3, 4,
2931 0,
2932 29,
2933 OPC_MoveChild0,
2934 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2935 OPC_CheckChild0Integer, 126|128,59,
2936 OPC_MoveParent,
2937 OPC_CheckChild1Same, 1,
2938 OPC_MoveParent,
2939 OPC_MoveParent,
2940 OPC_CheckType, MVT::v8i8,
2941 OPC_CheckPatternPredicate1,
2942 OPC_EmitInteger32, 28,
2943 OPC_EmitRegisterI32, 0 ,
2944 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
2945 MVT::v8i8, 5, 1, 0, 2, 3, 4,
2946 0,
2947 68,
2948 OPC_MoveChild0,
2949 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2950 OPC_Scope, 30,
2951 OPC_CheckChild0Same, 1,
2952 OPC_MoveChild1,
2953 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2954 OPC_CheckChild0Integer, 126|128,59,
2955 OPC_MoveParent,
2956 OPC_MoveParent,
2957 OPC_RecordChild1,
2958 OPC_MoveParent,
2959 OPC_CheckType, MVT::v8i8,
2960 OPC_CheckPatternPredicate1,
2961 OPC_EmitInteger32, 28,
2962 OPC_EmitRegisterI32, 0 ,
2963 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
2964 MVT::v8i8, 5, 1, 0, 2, 3, 4,
2965 30,
2966 OPC_MoveChild0,
2967 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2968 OPC_CheckChild0Integer, 126|128,59,
2969 OPC_MoveParent,
2970 OPC_CheckChild1Same, 1,
2971 OPC_MoveParent,
2972 OPC_RecordChild1,
2973 OPC_MoveParent,
2974 OPC_CheckType, MVT::v8i8,
2975 OPC_CheckPatternPredicate1,
2976 OPC_EmitInteger32, 28,
2977 OPC_EmitRegisterI32, 0 ,
2978 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
2979 MVT::v8i8, 5, 1, 0, 2, 3, 4,
2980 0,
2981 67,
2982 OPC_RecordChild0,
2983 OPC_MoveChild1,
2984 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2985 OPC_Scope, 29,
2986 OPC_CheckChild0Same, 0,
2987 OPC_MoveChild1,
2988 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
2989 OPC_CheckChild0Integer, 126|128,59,
2990 OPC_MoveParent,
2991 OPC_MoveParent,
2992 OPC_MoveParent,
2993 OPC_CheckType, MVT::v8i8,
2994 OPC_CheckPatternPredicate1,
2995 OPC_EmitInteger32, 28,
2996 OPC_EmitRegisterI32, 0 ,
2997 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
2998 MVT::v8i8, 5, 0, 1, 2, 3, 4,
2999 29,
3000 OPC_MoveChild0,
3001 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3002 OPC_CheckChild0Integer, 126|128,59,
3003 OPC_MoveParent,
3004 OPC_CheckChild1Same, 0,
3005 OPC_MoveParent,
3006 OPC_MoveParent,
3007 OPC_CheckType, MVT::v8i8,
3008 OPC_CheckPatternPredicate1,
3009 OPC_EmitInteger32, 28,
3010 OPC_EmitRegisterI32, 0 ,
3011 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
3012 MVT::v8i8, 5, 0, 1, 2, 3, 4,
3013 0,
3014 68,
3015 OPC_MoveChild0,
3016 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3017 OPC_Scope, 30,
3018 OPC_CheckChild0Same, 0,
3019 OPC_MoveChild1,
3020 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3021 OPC_CheckChild0Integer, 126|128,59,
3022 OPC_MoveParent,
3023 OPC_MoveParent,
3024 OPC_RecordChild1,
3025 OPC_MoveParent,
3026 OPC_CheckType, MVT::v8i8,
3027 OPC_CheckPatternPredicate1,
3028 OPC_EmitInteger32, 28,
3029 OPC_EmitRegisterI32, 0 ,
3030 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
3031 MVT::v8i8, 5, 0, 1, 2, 3, 4,
3032 30,
3033 OPC_MoveChild0,
3034 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3035 OPC_CheckChild0Integer, 126|128,59,
3036 OPC_MoveParent,
3037 OPC_CheckChild1Same, 0,
3038 OPC_MoveParent,
3039 OPC_RecordChild1,
3040 OPC_MoveParent,
3041 OPC_CheckType, MVT::v8i8,
3042 OPC_CheckPatternPredicate1,
3043 OPC_EmitInteger32, 28,
3044 OPC_EmitRegisterI32, 0 ,
3045 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
3046 MVT::v8i8, 5, 0, 1, 2, 3, 4,
3047 0,
3048 0,
3049 0|128,1,
3050 OPC_MoveChild1,
3051 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3052 OPC_Scope, 60,
3053 OPC_RecordChild0,
3054 OPC_MoveChild1,
3055 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3056 OPC_CheckChild0Integer, 126|128,59,
3057 OPC_MoveParent,
3058 OPC_MoveParent,
3059 OPC_MoveSibling1,
3060 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
3061 OPC_Scope, 21,
3062 OPC_RecordChild0,
3063 OPC_CheckChild1Same, 1,
3064 OPC_MoveParent,
3065 OPC_CheckType, MVT::v8i8,
3066 OPC_CheckPatternPredicate1,
3067 OPC_EmitInteger32, 28,
3068 OPC_EmitRegisterI32, 0 ,
3069 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
3070 MVT::v8i8, 5, 1, 2, 0, 3, 4,
3071 21,
3072 OPC_CheckChild0Same, 1,
3073 OPC_RecordChild1,
3074 OPC_MoveParent,
3075 OPC_CheckType, MVT::v8i8,
3076 OPC_CheckPatternPredicate1,
3077 OPC_EmitInteger32, 28,
3078 OPC_EmitRegisterI32, 0 ,
3079 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
3080 MVT::v8i8, 5, 1, 2, 0, 3, 4,
3081 0,
3082 60,
3083 OPC_MoveChild0,
3084 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3085 OPC_CheckChild0Integer, 126|128,59,
3086 OPC_MoveParent,
3087 OPC_RecordChild1,
3088 OPC_MoveParent,
3089 OPC_MoveSibling1,
3090 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
3091 OPC_Scope, 21,
3092 OPC_RecordChild0,
3093 OPC_CheckChild1Same, 1,
3094 OPC_MoveParent,
3095 OPC_CheckType, MVT::v8i8,
3096 OPC_CheckPatternPredicate1,
3097 OPC_EmitInteger32, 28,
3098 OPC_EmitRegisterI32, 0 ,
3099 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
3100 MVT::v8i8, 5, 1, 2, 0, 3, 4,
3101 21,
3102 OPC_CheckChild0Same, 1,
3103 OPC_RecordChild1,
3104 OPC_MoveParent,
3105 OPC_CheckType, MVT::v8i8,
3106 OPC_CheckPatternPredicate1,
3107 OPC_EmitInteger32, 28,
3108 OPC_EmitRegisterI32, 0 ,
3109 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
3110 MVT::v8i8, 5, 1, 2, 0, 3, 4,
3111 0,
3112 0,
3113 0,
3114 2|128,1,
3115 OPC_MoveChild0,
3116 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3117 OPC_Scope, 61,
3118 OPC_RecordChild0,
3119 OPC_MoveChild1,
3120 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3121 OPC_CheckChild0Integer, 126|128,59,
3122 OPC_MoveParent,
3123 OPC_MoveParent,
3124 OPC_RecordChild1,
3125 OPC_MoveSibling1,
3126 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
3127 OPC_Scope, 21,
3128 OPC_RecordChild0,
3129 OPC_CheckChild1Same, 0,
3130 OPC_MoveParent,
3131 OPC_CheckType, MVT::v8i8,
3132 OPC_CheckPatternPredicate1,
3133 OPC_EmitInteger32, 28,
3134 OPC_EmitRegisterI32, 0 ,
3135 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
3136 MVT::v8i8, 5, 0, 2, 1, 3, 4,
3137 21,
3138 OPC_CheckChild0Same, 0,
3139 OPC_RecordChild1,
3140 OPC_MoveParent,
3141 OPC_CheckType, MVT::v8i8,
3142 OPC_CheckPatternPredicate1,
3143 OPC_EmitInteger32, 28,
3144 OPC_EmitRegisterI32, 0 ,
3145 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
3146 MVT::v8i8, 5, 0, 2, 1, 3, 4,
3147 0,
3148 61,
3149 OPC_MoveChild0,
3150 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3151 OPC_CheckChild0Integer, 126|128,59,
3152 OPC_MoveParent,
3153 OPC_RecordChild1,
3154 OPC_MoveParent,
3155 OPC_RecordChild1,
3156 OPC_MoveSibling1,
3157 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
3158 OPC_Scope, 21,
3159 OPC_RecordChild0,
3160 OPC_CheckChild1Same, 0,
3161 OPC_MoveParent,
3162 OPC_CheckType, MVT::v8i8,
3163 OPC_CheckPatternPredicate1,
3164 OPC_EmitInteger32, 28,
3165 OPC_EmitRegisterI32, 0 ,
3166 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
3167 MVT::v8i8, 5, 0, 2, 1, 3, 4,
3168 21,
3169 OPC_CheckChild0Same, 0,
3170 OPC_RecordChild1,
3171 OPC_MoveParent,
3172 OPC_CheckType, MVT::v8i8,
3173 OPC_CheckPatternPredicate1,
3174 OPC_EmitInteger32, 28,
3175 OPC_EmitRegisterI32, 0 ,
3176 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
3177 MVT::v8i8, 5, 0, 2, 1, 3, 4,
3178 0,
3179 0,
3180 127|128,2,
3181 OPC_RecordChild0,
3182 OPC_Scope, 120|128,1,
3183 OPC_RecordChild1,
3184 OPC_MoveSibling1,
3185 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
3186 OPC_Scope, 34,
3187 OPC_RecordChild0,
3188 OPC_MoveChild1,
3189 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3190 OPC_MoveChild0,
3191 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3192 OPC_CheckChild0Integer, 126|128,59,
3193 OPC_MoveParent,
3194 OPC_CheckChild1Same, 1,
3195 OPC_MoveParent,
3196 OPC_MoveParent,
3197 OPC_CheckType, MVT::v16i8,
3198 OPC_CheckPatternPredicate1,
3199 OPC_EmitInteger32, 28,
3200 OPC_EmitRegisterI32, 0 ,
3201 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3202 MVT::v16i8, 5, 1, 0, 2, 3, 4,
3203 68,
3204 OPC_MoveChild0,
3205 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3206 OPC_Scope, 30,
3207 OPC_CheckChild0Same, 1,
3208 OPC_MoveChild1,
3209 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3210 OPC_CheckChild0Integer, 126|128,59,
3211 OPC_MoveParent,
3212 OPC_MoveParent,
3213 OPC_RecordChild1,
3214 OPC_MoveParent,
3215 OPC_CheckType, MVT::v16i8,
3216 OPC_CheckPatternPredicate1,
3217 OPC_EmitInteger32, 28,
3218 OPC_EmitRegisterI32, 0 ,
3219 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3220 MVT::v16i8, 5, 1, 0, 2, 3, 4,
3221 30,
3222 OPC_MoveChild0,
3223 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3224 OPC_CheckChild0Integer, 126|128,59,
3225 OPC_MoveParent,
3226 OPC_CheckChild1Same, 1,
3227 OPC_MoveParent,
3228 OPC_RecordChild1,
3229 OPC_MoveParent,
3230 OPC_CheckType, MVT::v16i8,
3231 OPC_CheckPatternPredicate1,
3232 OPC_EmitInteger32, 28,
3233 OPC_EmitRegisterI32, 0 ,
3234 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3235 MVT::v16i8, 5, 1, 0, 2, 3, 4,
3236 0,
3237 67,
3238 OPC_RecordChild0,
3239 OPC_MoveChild1,
3240 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3241 OPC_Scope, 29,
3242 OPC_CheckChild0Same, 0,
3243 OPC_MoveChild1,
3244 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3245 OPC_CheckChild0Integer, 126|128,59,
3246 OPC_MoveParent,
3247 OPC_MoveParent,
3248 OPC_MoveParent,
3249 OPC_CheckType, MVT::v16i8,
3250 OPC_CheckPatternPredicate1,
3251 OPC_EmitInteger32, 28,
3252 OPC_EmitRegisterI32, 0 ,
3253 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3254 MVT::v16i8, 5, 0, 1, 2, 3, 4,
3255 29,
3256 OPC_MoveChild0,
3257 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3258 OPC_CheckChild0Integer, 126|128,59,
3259 OPC_MoveParent,
3260 OPC_CheckChild1Same, 0,
3261 OPC_MoveParent,
3262 OPC_MoveParent,
3263 OPC_CheckType, MVT::v16i8,
3264 OPC_CheckPatternPredicate1,
3265 OPC_EmitInteger32, 28,
3266 OPC_EmitRegisterI32, 0 ,
3267 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3268 MVT::v16i8, 5, 0, 1, 2, 3, 4,
3269 0,
3270 68,
3271 OPC_MoveChild0,
3272 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3273 OPC_Scope, 30,
3274 OPC_CheckChild0Same, 0,
3275 OPC_MoveChild1,
3276 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3277 OPC_CheckChild0Integer, 126|128,59,
3278 OPC_MoveParent,
3279 OPC_MoveParent,
3280 OPC_RecordChild1,
3281 OPC_MoveParent,
3282 OPC_CheckType, MVT::v16i8,
3283 OPC_CheckPatternPredicate1,
3284 OPC_EmitInteger32, 28,
3285 OPC_EmitRegisterI32, 0 ,
3286 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3287 MVT::v16i8, 5, 0, 1, 2, 3, 4,
3288 30,
3289 OPC_MoveChild0,
3290 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3291 OPC_CheckChild0Integer, 126|128,59,
3292 OPC_MoveParent,
3293 OPC_CheckChild1Same, 0,
3294 OPC_MoveParent,
3295 OPC_RecordChild1,
3296 OPC_MoveParent,
3297 OPC_CheckType, MVT::v16i8,
3298 OPC_CheckPatternPredicate1,
3299 OPC_EmitInteger32, 28,
3300 OPC_EmitRegisterI32, 0 ,
3301 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3302 MVT::v16i8, 5, 0, 1, 2, 3, 4,
3303 0,
3304 0,
3305 0|128,1,
3306 OPC_MoveChild1,
3307 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3308 OPC_Scope, 60,
3309 OPC_RecordChild0,
3310 OPC_MoveChild1,
3311 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3312 OPC_CheckChild0Integer, 126|128,59,
3313 OPC_MoveParent,
3314 OPC_MoveParent,
3315 OPC_MoveSibling1,
3316 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
3317 OPC_Scope, 21,
3318 OPC_RecordChild0,
3319 OPC_CheckChild1Same, 1,
3320 OPC_MoveParent,
3321 OPC_CheckType, MVT::v16i8,
3322 OPC_CheckPatternPredicate1,
3323 OPC_EmitInteger32, 28,
3324 OPC_EmitRegisterI32, 0 ,
3325 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3326 MVT::v16i8, 5, 1, 2, 0, 3, 4,
3327 21,
3328 OPC_CheckChild0Same, 1,
3329 OPC_RecordChild1,
3330 OPC_MoveParent,
3331 OPC_CheckType, MVT::v16i8,
3332 OPC_CheckPatternPredicate1,
3333 OPC_EmitInteger32, 28,
3334 OPC_EmitRegisterI32, 0 ,
3335 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3336 MVT::v16i8, 5, 1, 2, 0, 3, 4,
3337 0,
3338 60,
3339 OPC_MoveChild0,
3340 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3341 OPC_CheckChild0Integer, 126|128,59,
3342 OPC_MoveParent,
3343 OPC_RecordChild1,
3344 OPC_MoveParent,
3345 OPC_MoveSibling1,
3346 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
3347 OPC_Scope, 21,
3348 OPC_RecordChild0,
3349 OPC_CheckChild1Same, 1,
3350 OPC_MoveParent,
3351 OPC_CheckType, MVT::v16i8,
3352 OPC_CheckPatternPredicate1,
3353 OPC_EmitInteger32, 28,
3354 OPC_EmitRegisterI32, 0 ,
3355 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3356 MVT::v16i8, 5, 1, 2, 0, 3, 4,
3357 21,
3358 OPC_CheckChild0Same, 1,
3359 OPC_RecordChild1,
3360 OPC_MoveParent,
3361 OPC_CheckType, MVT::v16i8,
3362 OPC_CheckPatternPredicate1,
3363 OPC_EmitInteger32, 28,
3364 OPC_EmitRegisterI32, 0 ,
3365 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3366 MVT::v16i8, 5, 1, 2, 0, 3, 4,
3367 0,
3368 0,
3369 0,
3370 2|128,1,
3371 OPC_MoveChild0,
3372 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3373 OPC_Scope, 61,
3374 OPC_RecordChild0,
3375 OPC_MoveChild1,
3376 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3377 OPC_CheckChild0Integer, 126|128,59,
3378 OPC_MoveParent,
3379 OPC_MoveParent,
3380 OPC_RecordChild1,
3381 OPC_MoveSibling1,
3382 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
3383 OPC_Scope, 21,
3384 OPC_RecordChild0,
3385 OPC_CheckChild1Same, 0,
3386 OPC_MoveParent,
3387 OPC_CheckType, MVT::v16i8,
3388 OPC_CheckPatternPredicate1,
3389 OPC_EmitInteger32, 28,
3390 OPC_EmitRegisterI32, 0 ,
3391 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3392 MVT::v16i8, 5, 0, 2, 1, 3, 4,
3393 21,
3394 OPC_CheckChild0Same, 0,
3395 OPC_RecordChild1,
3396 OPC_MoveParent,
3397 OPC_CheckType, MVT::v16i8,
3398 OPC_CheckPatternPredicate1,
3399 OPC_EmitInteger32, 28,
3400 OPC_EmitRegisterI32, 0 ,
3401 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3402 MVT::v16i8, 5, 0, 2, 1, 3, 4,
3403 0,
3404 61,
3405 OPC_MoveChild0,
3406 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3407 OPC_CheckChild0Integer, 126|128,59,
3408 OPC_MoveParent,
3409 OPC_RecordChild1,
3410 OPC_MoveParent,
3411 OPC_RecordChild1,
3412 OPC_MoveSibling1,
3413 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
3414 OPC_Scope, 21,
3415 OPC_RecordChild0,
3416 OPC_CheckChild1Same, 0,
3417 OPC_MoveParent,
3418 OPC_CheckType, MVT::v16i8,
3419 OPC_CheckPatternPredicate1,
3420 OPC_EmitInteger32, 28,
3421 OPC_EmitRegisterI32, 0 ,
3422 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3423 MVT::v16i8, 5, 0, 2, 1, 3, 4,
3424 21,
3425 OPC_CheckChild0Same, 0,
3426 OPC_RecordChild1,
3427 OPC_MoveParent,
3428 OPC_CheckType, MVT::v16i8,
3429 OPC_CheckPatternPredicate1,
3430 OPC_EmitInteger32, 28,
3431 OPC_EmitRegisterI32, 0 ,
3432 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
3433 MVT::v16i8, 5, 0, 2, 1, 3, 4,
3434 0,
3435 0,
3436 0,
3437 76|128,2,
3438 OPC_RecordChild0,
3439 OPC_MoveChild1,
3440 OPC_SwitchOpcode , 116|128,1, TARGET_VAL(ISD::XOR),
3441 OPC_Scope, 78|128,1,
3442 OPC_RecordChild0,
3443 OPC_MoveChild1,
3444 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3445 OPC_MoveChild0,
3446 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3447 OPC_CheckChild0Integer, 126|128,59,
3448 OPC_SwitchType , 53, MVT::v8i8,
3449 OPC_MoveParent,
3450 OPC_MoveParent,
3451 OPC_MoveParent,
3452 OPC_SwitchType , 14, MVT::v2i32,
3453 OPC_CheckPatternPredicate1,
3454 OPC_EmitInteger32, 28,
3455 OPC_EmitRegisterI32, 0 ,
3456 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3457 MVT::v2i32, 4, 0, 1, 2, 3,
3458 14, MVT::v4i16,
3459 OPC_CheckPatternPredicate1,
3460 OPC_EmitInteger32, 28,
3461 OPC_EmitRegisterI32, 0 ,
3462 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3463 MVT::v4i16, 4, 0, 1, 2, 3,
3464 14, MVT::v1i64,
3465 OPC_CheckPatternPredicate1,
3466 OPC_EmitInteger32, 28,
3467 OPC_EmitRegisterI32, 0 ,
3468 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3469 MVT::v1i64, 4, 0, 1, 2, 3,
3470 0,
3471 6|128,1, MVT::v16i8,
3472 OPC_MoveParent,
3473 OPC_MoveParent,
3474 OPC_MoveParent,
3475 OPC_SwitchType , 41, MVT::v4i32,
3476 OPC_Scope, 14,
3477 OPC_CheckPatternPredicate1,
3478 OPC_EmitInteger32, 28,
3479 OPC_EmitRegisterI32, 0 ,
3480 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3481 MVT::v4i32, 4, 0, 1, 2, 3,
3482 23,
3483 OPC_CheckPatternPredicate0,
3484 OPC_EmitInteger32, 0,
3485 OPC_EmitRegisterI32, 0 ,
3486 OPC_EmitRegisterI32, 0 ,
3487 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
3488 MVT::v4i32, 0,
3489 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
3490 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
3491 0,
3492 41, MVT::v8i16,
3493 OPC_Scope, 14,
3494 OPC_CheckPatternPredicate1,
3495 OPC_EmitInteger32, 28,
3496 OPC_EmitRegisterI32, 0 ,
3497 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3498 MVT::v8i16, 4, 0, 1, 2, 3,
3499 23,
3500 OPC_CheckPatternPredicate0,
3501 OPC_EmitInteger32, 0,
3502 OPC_EmitRegisterI32, 0 ,
3503 OPC_EmitRegisterI32, 0 ,
3504 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
3505 MVT::v4i32, 0,
3506 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
3507 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
3508 0,
3509 41, MVT::v2i64,
3510 OPC_Scope, 14,
3511 OPC_CheckPatternPredicate1,
3512 OPC_EmitInteger32, 28,
3513 OPC_EmitRegisterI32, 0 ,
3514 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3515 MVT::v2i64, 4, 0, 1, 2, 3,
3516 23,
3517 OPC_CheckPatternPredicate0,
3518 OPC_EmitInteger32, 0,
3519 OPC_EmitRegisterI32, 0 ,
3520 OPC_EmitRegisterI32, 0 ,
3521 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
3522 MVT::v4i32, 0,
3523 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
3524 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
3525 0,
3526 0,
3527 0,
3528 33,
3529 OPC_MoveChild0,
3530 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3531 OPC_MoveChild0,
3532 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3533 OPC_CheckChild0Integer, 126|128,59,
3534 OPC_CheckType, MVT::v8i8,
3535 OPC_MoveParent,
3536 OPC_MoveParent,
3537 OPC_RecordChild1,
3538 OPC_MoveParent,
3539 OPC_CheckType, MVT::v2i32,
3540 OPC_CheckPatternPredicate1,
3541 OPC_EmitInteger32, 28,
3542 OPC_EmitRegisterI32, 0 ,
3543 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3544 MVT::v2i32, 4, 0, 1, 2, 3,
3545 0,
3546 77, TARGET_VAL(ISD::VSELECT),
3547 OPC_RecordChild0,
3548 OPC_Scope, 36,
3549 OPC_CheckChild0Type, MVT::v16i1,
3550 OPC_RecordChild1,
3551 OPC_MoveChild2,
3552 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3553 OPC_MoveChild0,
3554 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3555 OPC_CheckChild0Integer, 0,
3556 OPC_CheckType, MVT::v4i32,
3557 OPC_MoveParent,
3558 OPC_MoveParent,
3559 OPC_MoveParent,
3560 OPC_CheckType, MVT::v16i8,
3561 OPC_CheckPatternPredicate0,
3562 OPC_EmitInteger32, 2,
3563 OPC_EmitRegisterI32, 0 ,
3564 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
3565 MVT::v16i8, 6, 0, 2, 3, 1, 4, 0,
3566 36,
3567 OPC_CheckChild0Type, MVT::v8i1,
3568 OPC_RecordChild1,
3569 OPC_MoveChild2,
3570 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3571 OPC_MoveChild0,
3572 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3573 OPC_CheckChild0Integer, 0,
3574 OPC_CheckType, MVT::v4i32,
3575 OPC_MoveParent,
3576 OPC_MoveParent,
3577 OPC_MoveParent,
3578 OPC_CheckType, MVT::v8i16,
3579 OPC_CheckPatternPredicate0,
3580 OPC_EmitInteger32, 2,
3581 OPC_EmitRegisterI32, 0 ,
3582 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
3583 MVT::v8i16, 6, 0, 2, 3, 1, 4, 0,
3584 0,
3585 0,
3586 76,
3587 OPC_MoveChild0,
3588 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3589 OPC_Scope, 34,
3590 OPC_RecordChild0,
3591 OPC_MoveChild1,
3592 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3593 OPC_MoveChild0,
3594 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3595 OPC_CheckChild0Integer, 126|128,59,
3596 OPC_CheckType, MVT::v8i8,
3597 OPC_MoveParent,
3598 OPC_MoveParent,
3599 OPC_MoveParent,
3600 OPC_RecordChild1,
3601 OPC_CheckType, MVT::v2i32,
3602 OPC_CheckPatternPredicate1,
3603 OPC_EmitInteger32, 28,
3604 OPC_EmitRegisterI32, 0 ,
3605 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3606 MVT::v2i32, 4, 1, 0, 2, 3,
3607 34,
3608 OPC_MoveChild0,
3609 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3610 OPC_MoveChild0,
3611 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3612 OPC_CheckChild0Integer, 126|128,59,
3613 OPC_CheckType, MVT::v8i8,
3614 OPC_MoveParent,
3615 OPC_MoveParent,
3616 OPC_RecordChild1,
3617 OPC_MoveParent,
3618 OPC_RecordChild1,
3619 OPC_CheckType, MVT::v2i32,
3620 OPC_CheckPatternPredicate1,
3621 OPC_EmitInteger32, 28,
3622 OPC_EmitRegisterI32, 0 ,
3623 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3624 MVT::v2i32, 4, 1, 0, 2, 3,
3625 0,
3626 38,
3627 OPC_RecordChild0,
3628 OPC_MoveChild1,
3629 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3630 OPC_MoveChild0,
3631 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3632 OPC_MoveChild0,
3633 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3634 OPC_CheckChild0Integer, 126|128,59,
3635 OPC_CheckType, MVT::v16i8,
3636 OPC_MoveParent,
3637 OPC_MoveParent,
3638 OPC_RecordChild1,
3639 OPC_MoveParent,
3640 OPC_CheckType, MVT::v4i32,
3641 OPC_CheckPatternPredicate1,
3642 OPC_EmitInteger32, 28,
3643 OPC_EmitRegisterI32, 0 ,
3644 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3645 MVT::v4i32, 4, 0, 1, 2, 3,
3646 76,
3647 OPC_MoveChild0,
3648 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3649 OPC_Scope, 34,
3650 OPC_RecordChild0,
3651 OPC_MoveChild1,
3652 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3653 OPC_MoveChild0,
3654 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3655 OPC_CheckChild0Integer, 126|128,59,
3656 OPC_CheckType, MVT::v16i8,
3657 OPC_MoveParent,
3658 OPC_MoveParent,
3659 OPC_MoveParent,
3660 OPC_RecordChild1,
3661 OPC_CheckType, MVT::v4i32,
3662 OPC_CheckPatternPredicate1,
3663 OPC_EmitInteger32, 28,
3664 OPC_EmitRegisterI32, 0 ,
3665 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3666 MVT::v4i32, 4, 1, 0, 2, 3,
3667 34,
3668 OPC_MoveChild0,
3669 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3670 OPC_MoveChild0,
3671 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3672 OPC_CheckChild0Integer, 126|128,59,
3673 OPC_CheckType, MVT::v16i8,
3674 OPC_MoveParent,
3675 OPC_MoveParent,
3676 OPC_RecordChild1,
3677 OPC_MoveParent,
3678 OPC_RecordChild1,
3679 OPC_CheckType, MVT::v4i32,
3680 OPC_CheckPatternPredicate1,
3681 OPC_EmitInteger32, 28,
3682 OPC_EmitRegisterI32, 0 ,
3683 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3684 MVT::v4i32, 4, 1, 0, 2, 3,
3685 0,
3686 38,
3687 OPC_RecordChild0,
3688 OPC_MoveChild1,
3689 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3690 OPC_MoveChild0,
3691 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3692 OPC_MoveChild0,
3693 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3694 OPC_CheckChild0Integer, 126|128,59,
3695 OPC_CheckType, MVT::v8i8,
3696 OPC_MoveParent,
3697 OPC_MoveParent,
3698 OPC_RecordChild1,
3699 OPC_MoveParent,
3700 OPC_CheckType, MVT::v4i16,
3701 OPC_CheckPatternPredicate1,
3702 OPC_EmitInteger32, 28,
3703 OPC_EmitRegisterI32, 0 ,
3704 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3705 MVT::v4i16, 4, 0, 1, 2, 3,
3706 76,
3707 OPC_MoveChild0,
3708 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3709 OPC_Scope, 34,
3710 OPC_RecordChild0,
3711 OPC_MoveChild1,
3712 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3713 OPC_MoveChild0,
3714 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3715 OPC_CheckChild0Integer, 126|128,59,
3716 OPC_CheckType, MVT::v8i8,
3717 OPC_MoveParent,
3718 OPC_MoveParent,
3719 OPC_MoveParent,
3720 OPC_RecordChild1,
3721 OPC_CheckType, MVT::v4i16,
3722 OPC_CheckPatternPredicate1,
3723 OPC_EmitInteger32, 28,
3724 OPC_EmitRegisterI32, 0 ,
3725 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3726 MVT::v4i16, 4, 1, 0, 2, 3,
3727 34,
3728 OPC_MoveChild0,
3729 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3730 OPC_MoveChild0,
3731 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3732 OPC_CheckChild0Integer, 126|128,59,
3733 OPC_CheckType, MVT::v8i8,
3734 OPC_MoveParent,
3735 OPC_MoveParent,
3736 OPC_RecordChild1,
3737 OPC_MoveParent,
3738 OPC_RecordChild1,
3739 OPC_CheckType, MVT::v4i16,
3740 OPC_CheckPatternPredicate1,
3741 OPC_EmitInteger32, 28,
3742 OPC_EmitRegisterI32, 0 ,
3743 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3744 MVT::v4i16, 4, 1, 0, 2, 3,
3745 0,
3746 38,
3747 OPC_RecordChild0,
3748 OPC_MoveChild1,
3749 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3750 OPC_MoveChild0,
3751 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3752 OPC_MoveChild0,
3753 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3754 OPC_CheckChild0Integer, 126|128,59,
3755 OPC_CheckType, MVT::v8i8,
3756 OPC_MoveParent,
3757 OPC_MoveParent,
3758 OPC_RecordChild1,
3759 OPC_MoveParent,
3760 OPC_CheckType, MVT::v1i64,
3761 OPC_CheckPatternPredicate1,
3762 OPC_EmitInteger32, 28,
3763 OPC_EmitRegisterI32, 0 ,
3764 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3765 MVT::v1i64, 4, 0, 1, 2, 3,
3766 76,
3767 OPC_MoveChild0,
3768 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3769 OPC_Scope, 34,
3770 OPC_RecordChild0,
3771 OPC_MoveChild1,
3772 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3773 OPC_MoveChild0,
3774 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3775 OPC_CheckChild0Integer, 126|128,59,
3776 OPC_CheckType, MVT::v8i8,
3777 OPC_MoveParent,
3778 OPC_MoveParent,
3779 OPC_MoveParent,
3780 OPC_RecordChild1,
3781 OPC_CheckType, MVT::v1i64,
3782 OPC_CheckPatternPredicate1,
3783 OPC_EmitInteger32, 28,
3784 OPC_EmitRegisterI32, 0 ,
3785 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3786 MVT::v1i64, 4, 1, 0, 2, 3,
3787 34,
3788 OPC_MoveChild0,
3789 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3790 OPC_MoveChild0,
3791 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3792 OPC_CheckChild0Integer, 126|128,59,
3793 OPC_CheckType, MVT::v8i8,
3794 OPC_MoveParent,
3795 OPC_MoveParent,
3796 OPC_RecordChild1,
3797 OPC_MoveParent,
3798 OPC_RecordChild1,
3799 OPC_CheckType, MVT::v1i64,
3800 OPC_CheckPatternPredicate1,
3801 OPC_EmitInteger32, 28,
3802 OPC_EmitRegisterI32, 0 ,
3803 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
3804 MVT::v1i64, 4, 1, 0, 2, 3,
3805 0,
3806 38,
3807 OPC_RecordChild0,
3808 OPC_MoveChild1,
3809 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3810 OPC_MoveChild0,
3811 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3812 OPC_MoveChild0,
3813 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3814 OPC_CheckChild0Integer, 126|128,59,
3815 OPC_CheckType, MVT::v16i8,
3816 OPC_MoveParent,
3817 OPC_MoveParent,
3818 OPC_RecordChild1,
3819 OPC_MoveParent,
3820 OPC_CheckType, MVT::v8i16,
3821 OPC_CheckPatternPredicate1,
3822 OPC_EmitInteger32, 28,
3823 OPC_EmitRegisterI32, 0 ,
3824 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3825 MVT::v8i16, 4, 0, 1, 2, 3,
3826 76,
3827 OPC_MoveChild0,
3828 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3829 OPC_Scope, 34,
3830 OPC_RecordChild0,
3831 OPC_MoveChild1,
3832 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3833 OPC_MoveChild0,
3834 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3835 OPC_CheckChild0Integer, 126|128,59,
3836 OPC_CheckType, MVT::v16i8,
3837 OPC_MoveParent,
3838 OPC_MoveParent,
3839 OPC_MoveParent,
3840 OPC_RecordChild1,
3841 OPC_CheckType, MVT::v8i16,
3842 OPC_CheckPatternPredicate1,
3843 OPC_EmitInteger32, 28,
3844 OPC_EmitRegisterI32, 0 ,
3845 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3846 MVT::v8i16, 4, 1, 0, 2, 3,
3847 34,
3848 OPC_MoveChild0,
3849 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3850 OPC_MoveChild0,
3851 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3852 OPC_CheckChild0Integer, 126|128,59,
3853 OPC_CheckType, MVT::v16i8,
3854 OPC_MoveParent,
3855 OPC_MoveParent,
3856 OPC_RecordChild1,
3857 OPC_MoveParent,
3858 OPC_RecordChild1,
3859 OPC_CheckType, MVT::v8i16,
3860 OPC_CheckPatternPredicate1,
3861 OPC_EmitInteger32, 28,
3862 OPC_EmitRegisterI32, 0 ,
3863 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3864 MVT::v8i16, 4, 1, 0, 2, 3,
3865 0,
3866 38,
3867 OPC_RecordChild0,
3868 OPC_MoveChild1,
3869 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3870 OPC_MoveChild0,
3871 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3872 OPC_MoveChild0,
3873 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3874 OPC_CheckChild0Integer, 126|128,59,
3875 OPC_CheckType, MVT::v16i8,
3876 OPC_MoveParent,
3877 OPC_MoveParent,
3878 OPC_RecordChild1,
3879 OPC_MoveParent,
3880 OPC_CheckType, MVT::v2i64,
3881 OPC_CheckPatternPredicate1,
3882 OPC_EmitInteger32, 28,
3883 OPC_EmitRegisterI32, 0 ,
3884 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3885 MVT::v2i64, 4, 0, 1, 2, 3,
3886 32|128,1,
3887 OPC_MoveChild0,
3888 OPC_SwitchOpcode , 72, TARGET_VAL(ISD::XOR),
3889 OPC_Scope, 34,
3890 OPC_RecordChild0,
3891 OPC_MoveChild1,
3892 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3893 OPC_MoveChild0,
3894 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3895 OPC_CheckChild0Integer, 126|128,59,
3896 OPC_CheckType, MVT::v16i8,
3897 OPC_MoveParent,
3898 OPC_MoveParent,
3899 OPC_MoveParent,
3900 OPC_RecordChild1,
3901 OPC_CheckType, MVT::v2i64,
3902 OPC_CheckPatternPredicate1,
3903 OPC_EmitInteger32, 28,
3904 OPC_EmitRegisterI32, 0 ,
3905 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3906 MVT::v2i64, 4, 1, 0, 2, 3,
3907 34,
3908 OPC_MoveChild0,
3909 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3910 OPC_MoveChild0,
3911 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3912 OPC_CheckChild0Integer, 126|128,59,
3913 OPC_CheckType, MVT::v16i8,
3914 OPC_MoveParent,
3915 OPC_MoveParent,
3916 OPC_RecordChild1,
3917 OPC_MoveParent,
3918 OPC_RecordChild1,
3919 OPC_CheckType, MVT::v2i64,
3920 OPC_CheckPatternPredicate1,
3921 OPC_EmitInteger32, 28,
3922 OPC_EmitRegisterI32, 0 ,
3923 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
3924 MVT::v2i64, 4, 1, 0, 2, 3,
3925 0,
3926 79, TARGET_VAL(ISD::VSELECT),
3927 OPC_RecordChild0,
3928 OPC_Scope, 37,
3929 OPC_CheckChild0Type, MVT::v16i1,
3930 OPC_RecordChild1,
3931 OPC_MoveChild2,
3932 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3933 OPC_MoveChild0,
3934 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3935 OPC_CheckChild0Integer, 0,
3936 OPC_CheckType, MVT::v4i32,
3937 OPC_MoveParent,
3938 OPC_MoveParent,
3939 OPC_MoveParent,
3940 OPC_RecordChild1,
3941 OPC_CheckType, MVT::v16i8,
3942 OPC_CheckPatternPredicate0,
3943 OPC_EmitInteger32, 2,
3944 OPC_EmitRegisterI32, 0 ,
3945 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
3946 MVT::v16i8, 6, 2, 1, 3, 0, 4, 2,
3947 37,
3948 OPC_CheckChild0Type, MVT::v8i1,
3949 OPC_RecordChild1,
3950 OPC_MoveChild2,
3951 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3952 OPC_MoveChild0,
3953 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3954 OPC_CheckChild0Integer, 0,
3955 OPC_CheckType, MVT::v4i32,
3956 OPC_MoveParent,
3957 OPC_MoveParent,
3958 OPC_MoveParent,
3959 OPC_RecordChild1,
3960 OPC_CheckType, MVT::v8i16,
3961 OPC_CheckPatternPredicate0,
3962 OPC_EmitInteger32, 2,
3963 OPC_EmitRegisterI32, 0 ,
3964 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
3965 MVT::v8i16, 6, 2, 1, 3, 0, 4, 2,
3966 0,
3967 0,
3968 47,
3969 OPC_RecordChild0,
3970 OPC_MoveChild1,
3971 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3972 OPC_MoveChild0,
3973 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3974 OPC_MoveChild0,
3975 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
3976 OPC_CheckChild0Integer, 126|128,59,
3977 OPC_CheckType, MVT::v16i8,
3978 OPC_MoveParent,
3979 OPC_MoveParent,
3980 OPC_RecordChild1,
3981 OPC_MoveParent,
3982 OPC_CheckType, MVT::v8i16,
3983 OPC_CheckPatternPredicate0,
3984 OPC_EmitInteger32, 0,
3985 OPC_EmitRegisterI32, 0 ,
3986 OPC_EmitRegisterI32, 0 ,
3987 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
3988 MVT::v4i32, 0,
3989 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
3990 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
3991 94,
3992 OPC_MoveChild0,
3993 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
3994 OPC_Scope, 43,
3995 OPC_RecordChild0,
3996 OPC_MoveChild1,
3997 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
3998 OPC_MoveChild0,
3999 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4000 OPC_CheckChild0Integer, 126|128,59,
4001 OPC_CheckType, MVT::v16i8,
4002 OPC_MoveParent,
4003 OPC_MoveParent,
4004 OPC_MoveParent,
4005 OPC_RecordChild1,
4006 OPC_CheckType, MVT::v8i16,
4007 OPC_CheckPatternPredicate0,
4008 OPC_EmitInteger32, 0,
4009 OPC_EmitRegisterI32, 0 ,
4010 OPC_EmitRegisterI32, 0 ,
4011 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4012 MVT::v4i32, 0,
4013 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4014 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
4015 43,
4016 OPC_MoveChild0,
4017 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
4018 OPC_MoveChild0,
4019 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4020 OPC_CheckChild0Integer, 126|128,59,
4021 OPC_CheckType, MVT::v16i8,
4022 OPC_MoveParent,
4023 OPC_MoveParent,
4024 OPC_RecordChild1,
4025 OPC_MoveParent,
4026 OPC_RecordChild1,
4027 OPC_CheckType, MVT::v8i16,
4028 OPC_CheckPatternPredicate0,
4029 OPC_EmitInteger32, 0,
4030 OPC_EmitRegisterI32, 0 ,
4031 OPC_EmitRegisterI32, 0 ,
4032 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4033 MVT::v4i32, 0,
4034 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4035 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
4036 0,
4037 47,
4038 OPC_RecordChild0,
4039 OPC_MoveChild1,
4040 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
4041 OPC_MoveChild0,
4042 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
4043 OPC_MoveChild0,
4044 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4045 OPC_CheckChild0Integer, 126|128,59,
4046 OPC_CheckType, MVT::v16i8,
4047 OPC_MoveParent,
4048 OPC_MoveParent,
4049 OPC_RecordChild1,
4050 OPC_MoveParent,
4051 OPC_CheckType, MVT::v4i32,
4052 OPC_CheckPatternPredicate0,
4053 OPC_EmitInteger32, 0,
4054 OPC_EmitRegisterI32, 0 ,
4055 OPC_EmitRegisterI32, 0 ,
4056 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4057 MVT::v4i32, 0,
4058 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4059 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
4060 94,
4061 OPC_MoveChild0,
4062 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
4063 OPC_Scope, 43,
4064 OPC_RecordChild0,
4065 OPC_MoveChild1,
4066 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
4067 OPC_MoveChild0,
4068 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4069 OPC_CheckChild0Integer, 126|128,59,
4070 OPC_CheckType, MVT::v16i8,
4071 OPC_MoveParent,
4072 OPC_MoveParent,
4073 OPC_MoveParent,
4074 OPC_RecordChild1,
4075 OPC_CheckType, MVT::v4i32,
4076 OPC_CheckPatternPredicate0,
4077 OPC_EmitInteger32, 0,
4078 OPC_EmitRegisterI32, 0 ,
4079 OPC_EmitRegisterI32, 0 ,
4080 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4081 MVT::v4i32, 0,
4082 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4083 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
4084 43,
4085 OPC_MoveChild0,
4086 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
4087 OPC_MoveChild0,
4088 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4089 OPC_CheckChild0Integer, 126|128,59,
4090 OPC_CheckType, MVT::v16i8,
4091 OPC_MoveParent,
4092 OPC_MoveParent,
4093 OPC_RecordChild1,
4094 OPC_MoveParent,
4095 OPC_RecordChild1,
4096 OPC_CheckType, MVT::v4i32,
4097 OPC_CheckPatternPredicate0,
4098 OPC_EmitInteger32, 0,
4099 OPC_EmitRegisterI32, 0 ,
4100 OPC_EmitRegisterI32, 0 ,
4101 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4102 MVT::v4i32, 0,
4103 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4104 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
4105 0,
4106 47,
4107 OPC_RecordChild0,
4108 OPC_MoveChild1,
4109 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
4110 OPC_MoveChild0,
4111 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
4112 OPC_MoveChild0,
4113 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4114 OPC_CheckChild0Integer, 126|128,59,
4115 OPC_CheckType, MVT::v16i8,
4116 OPC_MoveParent,
4117 OPC_MoveParent,
4118 OPC_RecordChild1,
4119 OPC_MoveParent,
4120 OPC_CheckType, MVT::v2i64,
4121 OPC_CheckPatternPredicate0,
4122 OPC_EmitInteger32, 0,
4123 OPC_EmitRegisterI32, 0 ,
4124 OPC_EmitRegisterI32, 0 ,
4125 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4126 MVT::v4i32, 0,
4127 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4128 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
4129 94,
4130 OPC_MoveChild0,
4131 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
4132 OPC_Scope, 43,
4133 OPC_RecordChild0,
4134 OPC_MoveChild1,
4135 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
4136 OPC_MoveChild0,
4137 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4138 OPC_CheckChild0Integer, 126|128,59,
4139 OPC_CheckType, MVT::v16i8,
4140 OPC_MoveParent,
4141 OPC_MoveParent,
4142 OPC_MoveParent,
4143 OPC_RecordChild1,
4144 OPC_CheckType, MVT::v2i64,
4145 OPC_CheckPatternPredicate0,
4146 OPC_EmitInteger32, 0,
4147 OPC_EmitRegisterI32, 0 ,
4148 OPC_EmitRegisterI32, 0 ,
4149 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4150 MVT::v4i32, 0,
4151 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4152 MVT::v2i64, 6, 1, 0, 2, 3, 4, 5,
4153 43,
4154 OPC_MoveChild0,
4155 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
4156 OPC_MoveChild0,
4157 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4158 OPC_CheckChild0Integer, 126|128,59,
4159 OPC_CheckType, MVT::v16i8,
4160 OPC_MoveParent,
4161 OPC_MoveParent,
4162 OPC_RecordChild1,
4163 OPC_MoveParent,
4164 OPC_RecordChild1,
4165 OPC_CheckType, MVT::v2i64,
4166 OPC_CheckPatternPredicate0,
4167 OPC_EmitInteger32, 0,
4168 OPC_EmitRegisterI32, 0 ,
4169 OPC_EmitRegisterI32, 0 ,
4170 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4171 MVT::v4i32, 0,
4172 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4173 MVT::v2i64, 6, 1, 0, 2, 3, 4, 5,
4174 0,
4175 13|128,1,
4176 OPC_RecordChild0,
4177 OPC_MoveChild1,
4178 OPC_SwitchOpcode , 101, TARGET_VAL(ISD::XOR),
4179 OPC_Scope, 71,
4180 OPC_RecordChild0,
4181 OPC_MoveChild1,
4182 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4183 OPC_CheckChild0Integer, 126|128,59,
4184 OPC_MoveParent,
4185 OPC_MoveParent,
4186 OPC_SwitchType , 14, MVT::v8i8,
4187 OPC_CheckPatternPredicate1,
4188 OPC_EmitInteger32, 28,
4189 OPC_EmitRegisterI32, 0 ,
4190 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
4191 MVT::v8i8, 4, 0, 1, 2, 3,
4192 41, MVT::v16i8,
4193 OPC_Scope, 14,
4194 OPC_CheckPatternPredicate1,
4195 OPC_EmitInteger32, 28,
4196 OPC_EmitRegisterI32, 0 ,
4197 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
4198 MVT::v16i8, 4, 0, 1, 2, 3,
4199 23,
4200 OPC_CheckPatternPredicate0,
4201 OPC_EmitInteger32, 0,
4202 OPC_EmitRegisterI32, 0 ,
4203 OPC_EmitRegisterI32, 0 ,
4204 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4205 MVT::v4i32, 0,
4206 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4207 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
4208 0,
4209 0,
4210 26,
4211 OPC_MoveChild0,
4212 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4213 OPC_CheckChild0Integer, 126|128,59,
4214 OPC_MoveParent,
4215 OPC_RecordChild1,
4216 OPC_MoveParent,
4217 OPC_CheckType, MVT::v8i8,
4218 OPC_CheckPatternPredicate1,
4219 OPC_EmitInteger32, 28,
4220 OPC_EmitRegisterI32, 0 ,
4221 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
4222 MVT::v8i8, 4, 0, 1, 2, 3,
4223 0,
4224 30, TARGET_VAL(ISD::VSELECT),
4225 OPC_RecordChild0,
4226 OPC_CheckChild0Type, MVT::v4i1,
4227 OPC_RecordChild1,
4228 OPC_MoveChild2,
4229 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4230 OPC_CheckChild0Integer, 0,
4231 OPC_MoveParent,
4232 OPC_MoveParent,
4233 OPC_CheckType, MVT::v4i32,
4234 OPC_CheckPatternPredicate0,
4235 OPC_EmitInteger32, 2,
4236 OPC_EmitRegisterI32, 0 ,
4237 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
4238 MVT::v4i32, 6, 0, 2, 3, 1, 4, 0,
4239 0,
4240 62,
4241 OPC_MoveChild0,
4242 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
4243 OPC_Scope, 27,
4244 OPC_RecordChild0,
4245 OPC_MoveChild1,
4246 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4247 OPC_CheckChild0Integer, 126|128,59,
4248 OPC_MoveParent,
4249 OPC_MoveParent,
4250 OPC_RecordChild1,
4251 OPC_CheckType, MVT::v8i8,
4252 OPC_CheckPatternPredicate1,
4253 OPC_EmitInteger32, 28,
4254 OPC_EmitRegisterI32, 0 ,
4255 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
4256 MVT::v8i8, 4, 1, 0, 2, 3,
4257 27,
4258 OPC_MoveChild0,
4259 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4260 OPC_CheckChild0Integer, 126|128,59,
4261 OPC_MoveParent,
4262 OPC_RecordChild1,
4263 OPC_MoveParent,
4264 OPC_RecordChild1,
4265 OPC_CheckType, MVT::v8i8,
4266 OPC_CheckPatternPredicate1,
4267 OPC_EmitInteger32, 28,
4268 OPC_EmitRegisterI32, 0 ,
4269 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNd),
4270 MVT::v8i8, 4, 1, 0, 2, 3,
4271 0,
4272 31,
4273 OPC_RecordChild0,
4274 OPC_MoveChild1,
4275 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
4276 OPC_MoveChild0,
4277 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4278 OPC_CheckChild0Integer, 126|128,59,
4279 OPC_MoveParent,
4280 OPC_RecordChild1,
4281 OPC_MoveParent,
4282 OPC_CheckType, MVT::v16i8,
4283 OPC_CheckPatternPredicate1,
4284 OPC_EmitInteger32, 28,
4285 OPC_EmitRegisterI32, 0 ,
4286 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
4287 MVT::v16i8, 4, 0, 1, 2, 3,
4288 98,
4289 OPC_MoveChild0,
4290 OPC_SwitchOpcode , 58, TARGET_VAL(ISD::XOR),
4291 OPC_Scope, 27,
4292 OPC_RecordChild0,
4293 OPC_MoveChild1,
4294 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4295 OPC_CheckChild0Integer, 126|128,59,
4296 OPC_MoveParent,
4297 OPC_MoveParent,
4298 OPC_RecordChild1,
4299 OPC_CheckType, MVT::v16i8,
4300 OPC_CheckPatternPredicate1,
4301 OPC_EmitInteger32, 28,
4302 OPC_EmitRegisterI32, 0 ,
4303 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
4304 MVT::v16i8, 4, 1, 0, 2, 3,
4305 27,
4306 OPC_MoveChild0,
4307 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4308 OPC_CheckChild0Integer, 126|128,59,
4309 OPC_MoveParent,
4310 OPC_RecordChild1,
4311 OPC_MoveParent,
4312 OPC_RecordChild1,
4313 OPC_CheckType, MVT::v16i8,
4314 OPC_CheckPatternPredicate1,
4315 OPC_EmitInteger32, 28,
4316 OPC_EmitRegisterI32, 0 ,
4317 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORNq),
4318 MVT::v16i8, 4, 1, 0, 2, 3,
4319 0,
4320 31, TARGET_VAL(ISD::VSELECT),
4321 OPC_RecordChild0,
4322 OPC_CheckChild0Type, MVT::v4i1,
4323 OPC_RecordChild1,
4324 OPC_MoveChild2,
4325 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4326 OPC_CheckChild0Integer, 0,
4327 OPC_MoveParent,
4328 OPC_MoveParent,
4329 OPC_RecordChild1,
4330 OPC_CheckType, MVT::v4i32,
4331 OPC_CheckPatternPredicate0,
4332 OPC_EmitInteger32, 2,
4333 OPC_EmitRegisterI32, 0 ,
4334 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
4335 MVT::v4i32, 6, 2, 1, 3, 0, 4, 2,
4336 0,
4337 40,
4338 OPC_RecordChild0,
4339 OPC_MoveChild1,
4340 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
4341 OPC_MoveChild0,
4342 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4343 OPC_CheckChild0Integer, 126|128,59,
4344 OPC_MoveParent,
4345 OPC_RecordChild1,
4346 OPC_MoveParent,
4347 OPC_CheckType, MVT::v16i8,
4348 OPC_CheckPatternPredicate0,
4349 OPC_EmitInteger32, 0,
4350 OPC_EmitRegisterI32, 0 ,
4351 OPC_EmitRegisterI32, 0 ,
4352 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4353 MVT::v4i32, 0,
4354 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4355 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
4356 80,
4357 OPC_MoveChild0,
4358 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
4359 OPC_Scope, 36,
4360 OPC_RecordChild0,
4361 OPC_MoveChild1,
4362 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4363 OPC_CheckChild0Integer, 126|128,59,
4364 OPC_MoveParent,
4365 OPC_MoveParent,
4366 OPC_RecordChild1,
4367 OPC_CheckType, MVT::v16i8,
4368 OPC_CheckPatternPredicate0,
4369 OPC_EmitInteger32, 0,
4370 OPC_EmitRegisterI32, 0 ,
4371 OPC_EmitRegisterI32, 0 ,
4372 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4373 MVT::v4i32, 0,
4374 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4375 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
4376 36,
4377 OPC_MoveChild0,
4378 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
4379 OPC_CheckChild0Integer, 126|128,59,
4380 OPC_MoveParent,
4381 OPC_RecordChild1,
4382 OPC_MoveParent,
4383 OPC_RecordChild1,
4384 OPC_CheckType, MVT::v16i8,
4385 OPC_CheckPatternPredicate0,
4386 OPC_EmitInteger32, 0,
4387 OPC_EmitRegisterI32, 0 ,
4388 OPC_EmitRegisterI32, 0 ,
4389 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4390 MVT::v4i32, 0,
4391 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
4392 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
4393 0,
4394 40|128,3,
4395 OPC_RecordChild0,
4396 OPC_RecordChild1,
4397 OPC_SwitchType , 14, MVT::v2i32,
4398 OPC_CheckPatternPredicate1,
4399 OPC_EmitInteger32, 28,
4400 OPC_EmitRegisterI32, 0 ,
4401 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRd),
4402 MVT::v2i32, 4, 0, 1, 2, 3,
4403 41, MVT::v4i32,
4404 OPC_Scope, 14,
4405 OPC_CheckPatternPredicate1,
4406 OPC_EmitInteger32, 28,
4407 OPC_EmitRegisterI32, 0 ,
4408 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRq),
4409 MVT::v4i32, 4, 0, 1, 2, 3,
4410 23,
4411 OPC_CheckPatternPredicate0,
4412 OPC_EmitInteger32, 0,
4413 OPC_EmitRegisterI32, 0 ,
4414 OPC_EmitRegisterI32, 0 ,
4415 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4416 MVT::v4i32, 0,
4417 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
4418 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
4419 0,
4420 14, MVT::v8i8,
4421 OPC_CheckPatternPredicate1,
4422 OPC_EmitInteger32, 28,
4423 OPC_EmitRegisterI32, 0 ,
4424 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRd),
4425 MVT::v8i8, 4, 0, 1, 2, 3,
4426 14, MVT::v4i16,
4427 OPC_CheckPatternPredicate1,
4428 OPC_EmitInteger32, 28,
4429 OPC_EmitRegisterI32, 0 ,
4430 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRd),
4431 MVT::v4i16, 4, 0, 1, 2, 3,
4432 14, MVT::v1i64,
4433 OPC_CheckPatternPredicate1,
4434 OPC_EmitInteger32, 28,
4435 OPC_EmitRegisterI32, 0 ,
4436 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRd),
4437 MVT::v1i64, 4, 0, 1, 2, 3,
4438 41, MVT::v16i8,
4439 OPC_Scope, 14,
4440 OPC_CheckPatternPredicate1,
4441 OPC_EmitInteger32, 28,
4442 OPC_EmitRegisterI32, 0 ,
4443 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRq),
4444 MVT::v16i8, 4, 0, 1, 2, 3,
4445 23,
4446 OPC_CheckPatternPredicate0,
4447 OPC_EmitInteger32, 0,
4448 OPC_EmitRegisterI32, 0 ,
4449 OPC_EmitRegisterI32, 0 ,
4450 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4451 MVT::v4i32, 0,
4452 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
4453 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
4454 0,
4455 41, MVT::v8i16,
4456 OPC_Scope, 14,
4457 OPC_CheckPatternPredicate1,
4458 OPC_EmitInteger32, 28,
4459 OPC_EmitRegisterI32, 0 ,
4460 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRq),
4461 MVT::v8i16, 4, 0, 1, 2, 3,
4462 23,
4463 OPC_CheckPatternPredicate0,
4464 OPC_EmitInteger32, 0,
4465 OPC_EmitRegisterI32, 0 ,
4466 OPC_EmitRegisterI32, 0 ,
4467 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4468 MVT::v4i32, 0,
4469 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
4470 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
4471 0,
4472 41, MVT::v2i64,
4473 OPC_Scope, 14,
4474 OPC_CheckPatternPredicate1,
4475 OPC_EmitInteger32, 28,
4476 OPC_EmitRegisterI32, 0 ,
4477 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRq),
4478 MVT::v2i64, 4, 0, 1, 2, 3,
4479 23,
4480 OPC_CheckPatternPredicate0,
4481 OPC_EmitInteger32, 0,
4482 OPC_EmitRegisterI32, 0 ,
4483 OPC_EmitRegisterI32, 0 ,
4484 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
4485 MVT::v4i32, 0,
4486 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
4487 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
4488 0,
4489 44, MVT::v16i1,
4490 OPC_CheckPatternPredicate0,
4491 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
4492 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4493 MVT::i32, 2, 0, 2,
4494 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
4495 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4496 MVT::i32, 2, 1, 4,
4497 OPC_EmitInteger32, 28,
4498 OPC_EmitRegisterI32, 0 ,
4499 OPC_EmitRegisterI32, 0 ,
4500 OPC_EmitNode1None, TARGET_VAL(ARM::t2ORRrr),
4501 MVT::i32, 5, 3, 5, 6, 7, 8,
4502 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
4503 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4504 MVT::v16i1, 2, 9, 10,
4505 44, MVT::v8i1,
4506 OPC_CheckPatternPredicate0,
4507 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
4508 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4509 MVT::i32, 2, 0, 2,
4510 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
4511 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4512 MVT::i32, 2, 1, 4,
4513 OPC_EmitInteger32, 28,
4514 OPC_EmitRegisterI32, 0 ,
4515 OPC_EmitRegisterI32, 0 ,
4516 OPC_EmitNode1None, TARGET_VAL(ARM::t2ORRrr),
4517 MVT::i32, 5, 3, 5, 6, 7, 8,
4518 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
4519 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4520 MVT::v8i1, 2, 9, 10,
4521 44, MVT::v4i1,
4522 OPC_CheckPatternPredicate0,
4523 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
4524 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4525 MVT::i32, 2, 0, 2,
4526 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
4527 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4528 MVT::i32, 2, 1, 4,
4529 OPC_EmitInteger32, 28,
4530 OPC_EmitRegisterI32, 0 ,
4531 OPC_EmitRegisterI32, 0 ,
4532 OPC_EmitNode1None, TARGET_VAL(ARM::t2ORRrr),
4533 MVT::i32, 5, 3, 5, 6, 7, 8,
4534 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
4535 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4536 MVT::v4i1, 2, 9, 10,
4537 44, MVT::v2i1,
4538 OPC_CheckPatternPredicate0,
4539 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
4540 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4541 MVT::i32, 2, 0, 2,
4542 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
4543 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4544 MVT::i32, 2, 1, 4,
4545 OPC_EmitInteger32, 28,
4546 OPC_EmitRegisterI32, 0 ,
4547 OPC_EmitRegisterI32, 0 ,
4548 OPC_EmitNode1None, TARGET_VAL(ARM::t2ORRrr),
4549 MVT::i32, 5, 3, 5, 6, 7, 8,
4550 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
4551 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
4552 MVT::v2i1, 2, 9, 10,
4553 0,
4554 0,
4555 15|128,98, TARGET_VAL(ISD::ADD),
4556 OPC_Scope, 76|128,2,
4557 OPC_RecordChild0,
4558 OPC_MoveChild1,
4559 OPC_Scope, 40,
4560 OPC_CheckAndImm, 127|128,1,
4561 OPC_MoveChild0,
4562 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
4563 OPC_RecordChild0,
4564 OPC_RecordChild1,
4565 OPC_MoveChild1,
4566 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4567 OPC_CheckPredicate, 12,
4568 OPC_CheckTypeI32,
4569 OPC_MoveParent,
4570 OPC_MoveParent,
4571 OPC_MoveParent,
4572 OPC_CheckTypeI32,
4573 OPC_CheckPatternPredicate, 9,
4574 OPC_EmitConvertToTarget2,
4575 OPC_EmitNodeXForm, 2, 3,
4576 OPC_EmitInteger32, 28,
4577 OPC_EmitRegisterI32, 0 ,
4578 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAB),
4579 MVT::i32, 5, 0, 1, 4, 5, 6,
4580 41,
4581 OPC_CheckAndImm, 127|128,127|128,3,
4582 OPC_MoveChild0,
4583 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
4584 OPC_RecordChild0,
4585 OPC_RecordChild1,
4586 OPC_MoveChild1,
4587 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4588 OPC_CheckPredicate, 12,
4589 OPC_CheckTypeI32,
4590 OPC_MoveParent,
4591 OPC_MoveParent,
4592 OPC_MoveParent,
4593 OPC_CheckTypeI32,
4594 OPC_CheckPatternPredicate, 9,
4595 OPC_EmitConvertToTarget2,
4596 OPC_EmitNodeXForm, 2, 3,
4597 OPC_EmitInteger32, 28,
4598 OPC_EmitRegisterI32, 0 ,
4599 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAH),
4600 MVT::i32, 5, 0, 1, 4, 5, 6,
4601 40,
4602 OPC_CheckAndImm, 127|128,1,
4603 OPC_MoveChild0,
4604 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
4605 OPC_RecordChild0,
4606 OPC_RecordChild1,
4607 OPC_MoveChild1,
4608 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4609 OPC_CheckPredicate, 12,
4610 OPC_CheckTypeI32,
4611 OPC_MoveParent,
4612 OPC_MoveParent,
4613 OPC_MoveParent,
4614 OPC_CheckTypeI32,
4615 OPC_CheckPatternPredicate, 9,
4616 OPC_EmitConvertToTarget2,
4617 OPC_EmitNodeXForm, 2, 3,
4618 OPC_EmitInteger32, 28,
4619 OPC_EmitRegisterI32, 0 ,
4620 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAB),
4621 MVT::i32, 5, 0, 1, 4, 5, 6,
4622 41,
4623 OPC_CheckAndImm, 127|128,127|128,3,
4624 OPC_MoveChild0,
4625 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
4626 OPC_RecordChild0,
4627 OPC_RecordChild1,
4628 OPC_MoveChild1,
4629 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4630 OPC_CheckPredicate, 42,
4631 OPC_CheckTypeI32,
4632 OPC_MoveParent,
4633 OPC_MoveParent,
4634 OPC_MoveParent,
4635 OPC_CheckTypeI32,
4636 OPC_CheckPatternPredicate, 9,
4637 OPC_EmitConvertToTarget2,
4638 OPC_EmitNodeXForm, 2, 3,
4639 OPC_EmitInteger32, 28,
4640 OPC_EmitRegisterI32, 0 ,
4641 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAH),
4642 MVT::i32, 5, 0, 1, 4, 5, 6,
4643 39,
4644 OPC_CheckAndImm, 127|128,1,
4645 OPC_MoveChild0,
4646 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
4647 OPC_RecordChild0,
4648 OPC_RecordChild1,
4649 OPC_MoveChild1,
4650 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4651 OPC_CheckPredicate, 12,
4652 OPC_CheckTypeI32,
4653 OPC_MoveParent,
4654 OPC_MoveParent,
4655 OPC_MoveParent,
4656 OPC_CheckTypeI32,
4657 OPC_CheckPatternPredicate5,
4658 OPC_EmitConvertToTarget2,
4659 OPC_EmitNodeXForm, 2, 3,
4660 OPC_EmitInteger32, 28,
4661 OPC_EmitRegisterI32, 0 ,
4662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAB),
4663 MVT::i32, 5, 0, 1, 4, 5, 6,
4664 40,
4665 OPC_CheckAndImm, 127|128,127|128,3,
4666 OPC_MoveChild0,
4667 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
4668 OPC_RecordChild0,
4669 OPC_RecordChild1,
4670 OPC_MoveChild1,
4671 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4672 OPC_CheckPredicate, 12,
4673 OPC_CheckTypeI32,
4674 OPC_MoveParent,
4675 OPC_MoveParent,
4676 OPC_MoveParent,
4677 OPC_CheckTypeI32,
4678 OPC_CheckPatternPredicate5,
4679 OPC_EmitConvertToTarget2,
4680 OPC_EmitNodeXForm, 2, 3,
4681 OPC_EmitInteger32, 28,
4682 OPC_EmitRegisterI32, 0 ,
4683 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAH),
4684 MVT::i32, 5, 0, 1, 4, 5, 6,
4685 39,
4686 OPC_CheckAndImm, 127|128,1,
4687 OPC_MoveChild0,
4688 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
4689 OPC_RecordChild0,
4690 OPC_RecordChild1,
4691 OPC_MoveChild1,
4692 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4693 OPC_CheckPredicate, 12,
4694 OPC_CheckTypeI32,
4695 OPC_MoveParent,
4696 OPC_MoveParent,
4697 OPC_MoveParent,
4698 OPC_CheckTypeI32,
4699 OPC_CheckPatternPredicate5,
4700 OPC_EmitConvertToTarget2,
4701 OPC_EmitNodeXForm, 2, 3,
4702 OPC_EmitInteger32, 28,
4703 OPC_EmitRegisterI32, 0 ,
4704 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAB),
4705 MVT::i32, 5, 0, 1, 4, 5, 6,
4706 40,
4707 OPC_CheckAndImm, 127|128,127|128,3,
4708 OPC_MoveChild0,
4709 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
4710 OPC_RecordChild0,
4711 OPC_RecordChild1,
4712 OPC_MoveChild1,
4713 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4714 OPC_CheckPredicate, 42,
4715 OPC_CheckTypeI32,
4716 OPC_MoveParent,
4717 OPC_MoveParent,
4718 OPC_MoveParent,
4719 OPC_CheckTypeI32,
4720 OPC_CheckPatternPredicate5,
4721 OPC_EmitConvertToTarget2,
4722 OPC_EmitNodeXForm, 2, 3,
4723 OPC_EmitInteger32, 28,
4724 OPC_EmitRegisterI32, 0 ,
4725 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAH),
4726 MVT::i32, 5, 0, 1, 4, 5, 6,
4727 0,
4728 83|128,2,
4729 OPC_MoveChild0,
4730 OPC_Scope, 41,
4731 OPC_CheckAndImm, 127|128,1,
4732 OPC_MoveChild0,
4733 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
4734 OPC_RecordChild0,
4735 OPC_RecordChild1,
4736 OPC_MoveChild1,
4737 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4738 OPC_CheckPredicate, 12,
4739 OPC_CheckTypeI32,
4740 OPC_MoveParent,
4741 OPC_MoveParent,
4742 OPC_MoveParent,
4743 OPC_RecordChild1,
4744 OPC_CheckTypeI32,
4745 OPC_CheckPatternPredicate, 9,
4746 OPC_EmitConvertToTarget1,
4747 OPC_EmitNodeXForm, 2, 3,
4748 OPC_EmitInteger32, 28,
4749 OPC_EmitRegisterI32, 0 ,
4750 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAB),
4751 MVT::i32, 5, 2, 0, 4, 5, 6,
4752 42,
4753 OPC_CheckAndImm, 127|128,127|128,3,
4754 OPC_MoveChild0,
4755 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
4756 OPC_RecordChild0,
4757 OPC_RecordChild1,
4758 OPC_MoveChild1,
4759 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4760 OPC_CheckPredicate, 12,
4761 OPC_CheckTypeI32,
4762 OPC_MoveParent,
4763 OPC_MoveParent,
4764 OPC_MoveParent,
4765 OPC_RecordChild1,
4766 OPC_CheckTypeI32,
4767 OPC_CheckPatternPredicate, 9,
4768 OPC_EmitConvertToTarget1,
4769 OPC_EmitNodeXForm, 2, 3,
4770 OPC_EmitInteger32, 28,
4771 OPC_EmitRegisterI32, 0 ,
4772 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAH),
4773 MVT::i32, 5, 2, 0, 4, 5, 6,
4774 41,
4775 OPC_CheckAndImm, 127|128,1,
4776 OPC_MoveChild0,
4777 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
4778 OPC_RecordChild0,
4779 OPC_RecordChild1,
4780 OPC_MoveChild1,
4781 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4782 OPC_CheckPredicate, 12,
4783 OPC_CheckTypeI32,
4784 OPC_MoveParent,
4785 OPC_MoveParent,
4786 OPC_MoveParent,
4787 OPC_RecordChild1,
4788 OPC_CheckTypeI32,
4789 OPC_CheckPatternPredicate, 9,
4790 OPC_EmitConvertToTarget1,
4791 OPC_EmitNodeXForm, 2, 3,
4792 OPC_EmitInteger32, 28,
4793 OPC_EmitRegisterI32, 0 ,
4794 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAB),
4795 MVT::i32, 5, 2, 0, 4, 5, 6,
4796 42,
4797 OPC_CheckAndImm, 127|128,127|128,3,
4798 OPC_MoveChild0,
4799 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
4800 OPC_RecordChild0,
4801 OPC_RecordChild1,
4802 OPC_MoveChild1,
4803 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4804 OPC_CheckPredicate, 42,
4805 OPC_CheckTypeI32,
4806 OPC_MoveParent,
4807 OPC_MoveParent,
4808 OPC_MoveParent,
4809 OPC_RecordChild1,
4810 OPC_CheckTypeI32,
4811 OPC_CheckPatternPredicate, 9,
4812 OPC_EmitConvertToTarget1,
4813 OPC_EmitNodeXForm, 2, 3,
4814 OPC_EmitInteger32, 28,
4815 OPC_EmitRegisterI32, 0 ,
4816 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAH),
4817 MVT::i32, 5, 2, 0, 4, 5, 6,
4818 40,
4819 OPC_CheckAndImm, 127|128,1,
4820 OPC_MoveChild0,
4821 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
4822 OPC_RecordChild0,
4823 OPC_RecordChild1,
4824 OPC_MoveChild1,
4825 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4826 OPC_CheckPredicate, 12,
4827 OPC_CheckTypeI32,
4828 OPC_MoveParent,
4829 OPC_MoveParent,
4830 OPC_MoveParent,
4831 OPC_RecordChild1,
4832 OPC_CheckTypeI32,
4833 OPC_CheckPatternPredicate5,
4834 OPC_EmitConvertToTarget1,
4835 OPC_EmitNodeXForm, 2, 3,
4836 OPC_EmitInteger32, 28,
4837 OPC_EmitRegisterI32, 0 ,
4838 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAB),
4839 MVT::i32, 5, 2, 0, 4, 5, 6,
4840 41,
4841 OPC_CheckAndImm, 127|128,127|128,3,
4842 OPC_MoveChild0,
4843 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
4844 OPC_RecordChild0,
4845 OPC_RecordChild1,
4846 OPC_MoveChild1,
4847 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4848 OPC_CheckPredicate, 12,
4849 OPC_CheckTypeI32,
4850 OPC_MoveParent,
4851 OPC_MoveParent,
4852 OPC_MoveParent,
4853 OPC_RecordChild1,
4854 OPC_CheckTypeI32,
4855 OPC_CheckPatternPredicate5,
4856 OPC_EmitConvertToTarget1,
4857 OPC_EmitNodeXForm, 2, 3,
4858 OPC_EmitInteger32, 28,
4859 OPC_EmitRegisterI32, 0 ,
4860 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAH),
4861 MVT::i32, 5, 2, 0, 4, 5, 6,
4862 40,
4863 OPC_CheckAndImm, 127|128,1,
4864 OPC_MoveChild0,
4865 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
4866 OPC_RecordChild0,
4867 OPC_RecordChild1,
4868 OPC_MoveChild1,
4869 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4870 OPC_CheckPredicate, 12,
4871 OPC_CheckTypeI32,
4872 OPC_MoveParent,
4873 OPC_MoveParent,
4874 OPC_MoveParent,
4875 OPC_RecordChild1,
4876 OPC_CheckTypeI32,
4877 OPC_CheckPatternPredicate5,
4878 OPC_EmitConvertToTarget1,
4879 OPC_EmitNodeXForm, 2, 3,
4880 OPC_EmitInteger32, 28,
4881 OPC_EmitRegisterI32, 0 ,
4882 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAB),
4883 MVT::i32, 5, 2, 0, 4, 5, 6,
4884 41,
4885 OPC_CheckAndImm, 127|128,127|128,3,
4886 OPC_MoveChild0,
4887 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
4888 OPC_RecordChild0,
4889 OPC_RecordChild1,
4890 OPC_MoveChild1,
4891 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4892 OPC_CheckPredicate, 42,
4893 OPC_CheckTypeI32,
4894 OPC_MoveParent,
4895 OPC_MoveParent,
4896 OPC_MoveParent,
4897 OPC_RecordChild1,
4898 OPC_CheckTypeI32,
4899 OPC_CheckPatternPredicate5,
4900 OPC_EmitConvertToTarget1,
4901 OPC_EmitNodeXForm, 2, 3,
4902 OPC_EmitInteger32, 28,
4903 OPC_EmitRegisterI32, 0 ,
4904 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAH),
4905 MVT::i32, 5, 2, 0, 4, 5, 6,
4906 0,
4907 104,
4908 OPC_RecordChild0,
4909 OPC_MoveChild1,
4910 OPC_Scope, 24,
4911 OPC_CheckAndImm, 127|128,1,
4912 OPC_RecordChild0,
4913 OPC_MoveParent,
4914 OPC_CheckTypeI32,
4915 OPC_CheckPatternPredicate, 9,
4916 OPC_EmitInteger32, 0,
4917 OPC_EmitInteger32, 28,
4918 OPC_EmitRegisterI32, 0 ,
4919 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAB),
4920 MVT::i32, 5, 0, 1, 2, 3, 4,
4921 25,
4922 OPC_CheckAndImm, 127|128,127|128,3,
4923 OPC_RecordChild0,
4924 OPC_MoveParent,
4925 OPC_CheckTypeI32,
4926 OPC_CheckPatternPredicate, 9,
4927 OPC_EmitInteger32, 0,
4928 OPC_EmitInteger32, 28,
4929 OPC_EmitRegisterI32, 0 ,
4930 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAH),
4931 MVT::i32, 5, 0, 1, 2, 3, 4,
4932 23,
4933 OPC_CheckAndImm, 127|128,1,
4934 OPC_RecordChild0,
4935 OPC_MoveParent,
4936 OPC_CheckTypeI32,
4937 OPC_CheckPatternPredicate5,
4938 OPC_EmitInteger32, 0,
4939 OPC_EmitInteger32, 28,
4940 OPC_EmitRegisterI32, 0 ,
4941 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAB),
4942 MVT::i32, 5, 0, 1, 2, 3, 4,
4943 24,
4944 OPC_CheckAndImm, 127|128,127|128,3,
4945 OPC_RecordChild0,
4946 OPC_MoveParent,
4947 OPC_CheckTypeI32,
4948 OPC_CheckPatternPredicate5,
4949 OPC_EmitInteger32, 0,
4950 OPC_EmitInteger32, 28,
4951 OPC_EmitRegisterI32, 0 ,
4952 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAH),
4953 MVT::i32, 5, 0, 1, 2, 3, 4,
4954 0,
4955 107,
4956 OPC_MoveChild0,
4957 OPC_Scope, 25,
4958 OPC_CheckAndImm, 127|128,1,
4959 OPC_RecordChild0,
4960 OPC_MoveParent,
4961 OPC_RecordChild1,
4962 OPC_CheckTypeI32,
4963 OPC_CheckPatternPredicate, 9,
4964 OPC_EmitInteger32, 0,
4965 OPC_EmitInteger32, 28,
4966 OPC_EmitRegisterI32, 0 ,
4967 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAB),
4968 MVT::i32, 5, 1, 0, 2, 3, 4,
4969 26,
4970 OPC_CheckAndImm, 127|128,127|128,3,
4971 OPC_RecordChild0,
4972 OPC_MoveParent,
4973 OPC_RecordChild1,
4974 OPC_CheckTypeI32,
4975 OPC_CheckPatternPredicate, 9,
4976 OPC_EmitInteger32, 0,
4977 OPC_EmitInteger32, 28,
4978 OPC_EmitRegisterI32, 0 ,
4979 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAH),
4980 MVT::i32, 5, 1, 0, 2, 3, 4,
4981 24,
4982 OPC_CheckAndImm, 127|128,1,
4983 OPC_RecordChild0,
4984 OPC_MoveParent,
4985 OPC_RecordChild1,
4986 OPC_CheckTypeI32,
4987 OPC_CheckPatternPredicate5,
4988 OPC_EmitInteger32, 0,
4989 OPC_EmitInteger32, 28,
4990 OPC_EmitRegisterI32, 0 ,
4991 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAB),
4992 MVT::i32, 5, 1, 0, 2, 3, 4,
4993 25,
4994 OPC_CheckAndImm, 127|128,127|128,3,
4995 OPC_RecordChild0,
4996 OPC_MoveParent,
4997 OPC_RecordChild1,
4998 OPC_CheckTypeI32,
4999 OPC_CheckPatternPredicate5,
5000 OPC_EmitInteger32, 0,
5001 OPC_EmitInteger32, 28,
5002 OPC_EmitRegisterI32, 0 ,
5003 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAH),
5004 MVT::i32, 5, 1, 0, 2, 3, 4,
5005 0,
5006 90,
5007 OPC_RecordChild0,
5008 OPC_MoveChild1,
5009 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
5010 OPC_MoveChild0,
5011 OPC_CheckOpcode, TARGET_VAL(ISD::OR),
5012 OPC_MoveChild0,
5013 OPC_SwitchOpcode , 36, TARGET_VAL(ISD::SRL),
5014 OPC_RecordChild0,
5015 OPC_CheckChild1Integer, 48,
5016 OPC_CheckChild1TypeI32,
5017 OPC_MoveSibling1,
5018 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
5019 OPC_CheckChild0Same, 1,
5020 OPC_CheckChild1Integer, 16,
5021 OPC_CheckChild1TypeI32,
5022 OPC_MoveParent,
5023 OPC_MoveSibling1,
5024 OPC_CheckValueType, MVT::i16,
5025 OPC_MoveParent,
5026 OPC_MoveParent,
5027 OPC_CheckPatternPredicate5,
5028 OPC_EmitInteger32, 6,
5029 OPC_EmitInteger32, 28,
5030 OPC_EmitRegisterI32, 0 ,
5031 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
5032 MVT::i32, 5, 0, 1, 2, 3, 4,
5033 36, TARGET_VAL(ISD::SHL),
5034 OPC_RecordChild0,
5035 OPC_CheckChild1Integer, 16,
5036 OPC_CheckChild1TypeI32,
5037 OPC_MoveSibling1,
5038 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
5039 OPC_CheckChild0Same, 1,
5040 OPC_CheckChild1Integer, 48,
5041 OPC_CheckChild1TypeI32,
5042 OPC_MoveParent,
5043 OPC_MoveSibling1,
5044 OPC_CheckValueType, MVT::i16,
5045 OPC_MoveParent,
5046 OPC_MoveParent,
5047 OPC_CheckPatternPredicate5,
5048 OPC_EmitInteger32, 6,
5049 OPC_EmitInteger32, 28,
5050 OPC_EmitRegisterI32, 0 ,
5051 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
5052 MVT::i32, 5, 0, 1, 2, 3, 4,
5053 0,
5054 65|128,1,
5055 OPC_MoveChild0,
5056 OPC_SwitchOpcode , 87, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
5057 OPC_MoveChild0,
5058 OPC_CheckOpcode, TARGET_VAL(ISD::OR),
5059 OPC_MoveChild0,
5060 OPC_SwitchOpcode , 37, TARGET_VAL(ISD::SRL),
5061 OPC_RecordChild0,
5062 OPC_CheckChild1Integer, 48,
5063 OPC_CheckChild1TypeI32,
5064 OPC_MoveSibling1,
5065 OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
5066 OPC_CheckChild0Same, 0,
5067 OPC_CheckChild1Integer, 16,
5068 OPC_CheckChild1TypeI32,
5069 OPC_MoveParent,
5070 OPC_MoveSibling1,
5071 OPC_CheckValueType, MVT::i16,
5072 OPC_MoveParent,
5073 OPC_MoveParent,
5074 OPC_RecordChild1,
5075 OPC_CheckPatternPredicate5,
5076 OPC_EmitInteger32, 6,
5077 OPC_EmitInteger32, 28,
5078 OPC_EmitRegisterI32, 0 ,
5079 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
5080 MVT::i32, 5, 1, 0, 2, 3, 4,
5081 37, TARGET_VAL(ISD::SHL),
5082 OPC_RecordChild0,
5083 OPC_CheckChild1Integer, 16,
5084 OPC_CheckChild1TypeI32,
5085 OPC_MoveSibling1,
5086 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
5087 OPC_CheckChild0Same, 0,
5088 OPC_CheckChild1Integer, 48,
5089 OPC_CheckChild1TypeI32,
5090 OPC_MoveParent,
5091 OPC_MoveSibling1,
5092 OPC_CheckValueType, MVT::i16,
5093 OPC_MoveParent,
5094 OPC_MoveParent,
5095 OPC_RecordChild1,
5096 OPC_CheckPatternPredicate5,
5097 OPC_EmitInteger32, 6,
5098 OPC_EmitInteger32, 28,
5099 OPC_EmitRegisterI32, 0 ,
5100 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
5101 MVT::i32, 5, 1, 0, 2, 3, 4,
5102 0,
5103 97, TARGET_VAL(ISD::VECREDUCE_ADD),
5104 OPC_MoveChild0,
5105 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
5106 OPC_RecordChild0,
5107 OPC_Scope, 44,
5108 OPC_CheckChild0Type, MVT::v8i1,
5109 OPC_MoveChild1,
5110 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
5111 OPC_RecordChild0,
5112 OPC_RecordChild1,
5113 OPC_MoveSibling2,
5114 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
5115 OPC_MoveChild0,
5116 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5117 OPC_CheckChild0Integer, 0,
5118 OPC_CheckType, MVT::v4i32,
5119 OPC_MoveParent,
5120 OPC_MoveParent,
5121 OPC_CheckType, MVT::v8i16,
5122 OPC_MoveParent,
5123 OPC_MoveParent,
5124 OPC_RecordChild1,
5125 OPC_CheckTypeI32,
5126 OPC_CheckPatternPredicate0,
5127 OPC_EmitInteger32, 2,
5128 OPC_EmitRegisterI32, 0 ,
5129 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau16),
5130 MVT::i32, 6, 3, 1, 2, 4, 0, 5,
5131 44,
5132 OPC_CheckChild0Type, MVT::v16i1,
5133 OPC_MoveChild1,
5134 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
5135 OPC_RecordChild0,
5136 OPC_RecordChild1,
5137 OPC_MoveSibling2,
5138 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
5139 OPC_MoveChild0,
5140 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5141 OPC_CheckChild0Integer, 0,
5142 OPC_CheckType, MVT::v4i32,
5143 OPC_MoveParent,
5144 OPC_MoveParent,
5145 OPC_CheckType, MVT::v16i8,
5146 OPC_MoveParent,
5147 OPC_MoveParent,
5148 OPC_RecordChild1,
5149 OPC_CheckTypeI32,
5150 OPC_CheckPatternPredicate0,
5151 OPC_EmitInteger32, 2,
5152 OPC_EmitRegisterI32, 0 ,
5153 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau8),
5154 MVT::i32, 6, 3, 1, 2, 4, 0, 5,
5155 0,
5156 0,
5157 32|128,1,
5158 OPC_RecordChild0,
5159 OPC_MoveChild1,
5160 OPC_SwitchOpcode , 95, TARGET_VAL(ISD::VECREDUCE_ADD),
5161 OPC_MoveChild0,
5162 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
5163 OPC_RecordChild0,
5164 OPC_Scope, 43,
5165 OPC_CheckChild0Type, MVT::v8i1,
5166 OPC_MoveChild1,
5167 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
5168 OPC_RecordChild0,
5169 OPC_RecordChild1,
5170 OPC_MoveSibling2,
5171 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
5172 OPC_MoveChild0,
5173 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5174 OPC_CheckChild0Integer, 0,
5175 OPC_CheckType, MVT::v4i32,
5176 OPC_MoveParent,
5177 OPC_MoveParent,
5178 OPC_CheckType, MVT::v8i16,
5179 OPC_MoveParent,
5180 OPC_MoveParent,
5181 OPC_CheckTypeI32,
5182 OPC_CheckPatternPredicate0,
5183 OPC_EmitInteger32, 2,
5184 OPC_EmitRegisterI32, 0 ,
5185 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau16),
5186 MVT::i32, 6, 0, 2, 3, 4, 1, 5,
5187 43,
5188 OPC_CheckChild0Type, MVT::v16i1,
5189 OPC_MoveChild1,
5190 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
5191 OPC_RecordChild0,
5192 OPC_RecordChild1,
5193 OPC_MoveSibling2,
5194 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
5195 OPC_MoveChild0,
5196 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5197 OPC_CheckChild0Integer, 0,
5198 OPC_CheckType, MVT::v4i32,
5199 OPC_MoveParent,
5200 OPC_MoveParent,
5201 OPC_CheckType, MVT::v16i8,
5202 OPC_MoveParent,
5203 OPC_MoveParent,
5204 OPC_CheckTypeI32,
5205 OPC_CheckPatternPredicate0,
5206 OPC_EmitInteger32, 2,
5207 OPC_EmitRegisterI32, 0 ,
5208 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau8),
5209 MVT::i32, 6, 0, 2, 3, 4, 1, 5,
5210 0,
5211 55, TARGET_VAL(ISD::MUL),
5212 OPC_MoveChild0,
5213 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5214 OPC_RecordChild0,
5215 OPC_CheckChild1Integer, 32,
5216 OPC_CheckChild1TypeI32,
5217 OPC_MoveSibling1,
5218 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5219 OPC_RecordChild0,
5220 OPC_CheckChild1Integer, 32,
5221 OPC_CheckChild1TypeI32,
5222 OPC_MoveParent,
5223 OPC_MoveParent,
5224 OPC_CheckTypeI32,
5225 OPC_Scope, 16,
5226 OPC_CheckPatternPredicate, 23,
5227 OPC_EmitInteger32, 28,
5228 OPC_EmitRegisterI32, 0 ,
5229 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLATT),
5230 MVT::i32, 5, 1, 2, 0, 3, 4,
5231 16,
5232 OPC_CheckPatternPredicate, 19,
5233 OPC_EmitInteger32, 28,
5234 OPC_EmitRegisterI32, 0 ,
5235 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLATT),
5236 MVT::i32, 5, 1, 2, 0, 3, 4,
5237 0,
5238 0,
5239 60|128,1,
5240 OPC_MoveChild0,
5241 OPC_SwitchOpcode , 56, TARGET_VAL(ISD::MUL),
5242 OPC_MoveChild0,
5243 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5244 OPC_RecordChild0,
5245 OPC_CheckChild1Integer, 32,
5246 OPC_CheckChild1TypeI32,
5247 OPC_MoveSibling1,
5248 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5249 OPC_RecordChild0,
5250 OPC_CheckChild1Integer, 32,
5251 OPC_CheckChild1TypeI32,
5252 OPC_MoveParent,
5253 OPC_MoveParent,
5254 OPC_RecordChild1,
5255 OPC_CheckTypeI32,
5256 OPC_Scope, 16,
5257 OPC_CheckPatternPredicate, 23,
5258 OPC_EmitInteger32, 28,
5259 OPC_EmitRegisterI32, 0 ,
5260 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLATT),
5261 MVT::i32, 5, 0, 1, 2, 3, 4,
5262 16,
5263 OPC_CheckPatternPredicate, 19,
5264 OPC_EmitInteger32, 28,
5265 OPC_EmitRegisterI32, 0 ,
5266 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLATT),
5267 MVT::i32, 5, 0, 1, 2, 3, 4,
5268 0,
5269 123, TARGET_VAL(ISD::VECREDUCE_ADD),
5270 OPC_MoveChild0,
5271 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
5272 OPC_RecordChild0,
5273 OPC_Scope, 38,
5274 OPC_CheckChild0Type, MVT::v16i1,
5275 OPC_RecordChild1,
5276 OPC_MoveChild2,
5277 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
5278 OPC_MoveChild0,
5279 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5280 OPC_CheckChild0Integer, 0,
5281 OPC_CheckType, MVT::v4i32,
5282 OPC_MoveParent,
5283 OPC_MoveParent,
5284 OPC_CheckType, MVT::v16i8,
5285 OPC_MoveParent,
5286 OPC_MoveParent,
5287 OPC_RecordChild1,
5288 OPC_CheckTypeI32,
5289 OPC_CheckPatternPredicate0,
5290 OPC_EmitInteger32, 2,
5291 OPC_EmitRegisterI32, 0 ,
5292 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8acc),
5293 MVT::i32, 5, 2, 1, 3, 0, 4,
5294 38,
5295 OPC_CheckChild0Type, MVT::v8i1,
5296 OPC_RecordChild1,
5297 OPC_MoveChild2,
5298 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
5299 OPC_MoveChild0,
5300 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5301 OPC_CheckChild0Integer, 0,
5302 OPC_CheckType, MVT::v4i32,
5303 OPC_MoveParent,
5304 OPC_MoveParent,
5305 OPC_CheckType, MVT::v8i16,
5306 OPC_MoveParent,
5307 OPC_MoveParent,
5308 OPC_RecordChild1,
5309 OPC_CheckTypeI32,
5310 OPC_CheckPatternPredicate0,
5311 OPC_EmitInteger32, 2,
5312 OPC_EmitRegisterI32, 0 ,
5313 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16acc),
5314 MVT::i32, 5, 2, 1, 3, 0, 4,
5315 37,
5316 OPC_CheckChild0Type, MVT::v4i1,
5317 OPC_MoveChild1,
5318 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
5319 OPC_RecordChild0,
5320 OPC_RecordChild1,
5321 OPC_MoveSibling2,
5322 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5323 OPC_CheckChild0Integer, 0,
5324 OPC_MoveParent,
5325 OPC_CheckType, MVT::v4i32,
5326 OPC_MoveParent,
5327 OPC_MoveParent,
5328 OPC_RecordChild1,
5329 OPC_CheckTypeI32,
5330 OPC_CheckPatternPredicate0,
5331 OPC_EmitInteger32, 2,
5332 OPC_EmitRegisterI32, 0 ,
5333 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau32),
5334 MVT::i32, 6, 3, 1, 2, 4, 0, 5,
5335 0,
5336 0,
5337 113|128,1,
5338 OPC_RecordChild0,
5339 OPC_MoveChild1,
5340 OPC_SwitchOpcode , 120, TARGET_VAL(ISD::VECREDUCE_ADD),
5341 OPC_MoveChild0,
5342 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
5343 OPC_RecordChild0,
5344 OPC_Scope, 37,
5345 OPC_CheckChild0Type, MVT::v16i1,
5346 OPC_RecordChild1,
5347 OPC_MoveChild2,
5348 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
5349 OPC_MoveChild0,
5350 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5351 OPC_CheckChild0Integer, 0,
5352 OPC_CheckType, MVT::v4i32,
5353 OPC_MoveParent,
5354 OPC_MoveParent,
5355 OPC_CheckType, MVT::v16i8,
5356 OPC_MoveParent,
5357 OPC_MoveParent,
5358 OPC_CheckTypeI32,
5359 OPC_CheckPatternPredicate0,
5360 OPC_EmitInteger32, 2,
5361 OPC_EmitRegisterI32, 0 ,
5362 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8acc),
5363 MVT::i32, 5, 0, 2, 3, 1, 4,
5364 37,
5365 OPC_CheckChild0Type, MVT::v8i1,
5366 OPC_RecordChild1,
5367 OPC_MoveChild2,
5368 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
5369 OPC_MoveChild0,
5370 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5371 OPC_CheckChild0Integer, 0,
5372 OPC_CheckType, MVT::v4i32,
5373 OPC_MoveParent,
5374 OPC_MoveParent,
5375 OPC_CheckType, MVT::v8i16,
5376 OPC_MoveParent,
5377 OPC_MoveParent,
5378 OPC_CheckTypeI32,
5379 OPC_CheckPatternPredicate0,
5380 OPC_EmitInteger32, 2,
5381 OPC_EmitRegisterI32, 0 ,
5382 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16acc),
5383 MVT::i32, 5, 0, 2, 3, 1, 4,
5384 36,
5385 OPC_CheckChild0Type, MVT::v4i1,
5386 OPC_MoveChild1,
5387 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
5388 OPC_RecordChild0,
5389 OPC_RecordChild1,
5390 OPC_MoveSibling2,
5391 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5392 OPC_CheckChild0Integer, 0,
5393 OPC_MoveParent,
5394 OPC_CheckType, MVT::v4i32,
5395 OPC_MoveParent,
5396 OPC_MoveParent,
5397 OPC_CheckTypeI32,
5398 OPC_CheckPatternPredicate0,
5399 OPC_EmitInteger32, 2,
5400 OPC_EmitRegisterI32, 0 ,
5401 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau32),
5402 MVT::i32, 6, 0, 2, 3, 4, 1, 5,
5403 0,
5404 111, TARGET_VAL(ISD::MUL),
5405 OPC_MoveChild0,
5406 OPC_SwitchOpcode , 51, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
5407 OPC_RecordChild0,
5408 OPC_MoveChild1,
5409 OPC_CheckValueType, MVT::i16,
5410 OPC_MoveParent,
5411 OPC_MoveSibling1,
5412 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5413 OPC_RecordChild0,
5414 OPC_CheckChild1Integer, 32,
5415 OPC_CheckChild1TypeI32,
5416 OPC_MoveParent,
5417 OPC_MoveParent,
5418 OPC_Scope, 16,
5419 OPC_CheckPatternPredicate, 23,
5420 OPC_EmitInteger32, 28,
5421 OPC_EmitRegisterI32, 0 ,
5422 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABT),
5423 MVT::i32, 5, 1, 2, 0, 3, 4,
5424 16,
5425 OPC_CheckPatternPredicate, 19,
5426 OPC_EmitInteger32, 28,
5427 OPC_EmitRegisterI32, 0 ,
5428 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABT),
5429 MVT::i32, 5, 1, 2, 0, 3, 4,
5430 0,
5431 51, TARGET_VAL(ISD::SRA),
5432 OPC_RecordChild0,
5433 OPC_CheckChild1Integer, 32,
5434 OPC_CheckChild1TypeI32,
5435 OPC_MoveSibling1,
5436 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
5437 OPC_RecordChild0,
5438 OPC_MoveChild1,
5439 OPC_CheckValueType, MVT::i16,
5440 OPC_MoveParent,
5441 OPC_MoveParent,
5442 OPC_MoveParent,
5443 OPC_Scope, 16,
5444 OPC_CheckPatternPredicate, 23,
5445 OPC_EmitInteger32, 28,
5446 OPC_EmitRegisterI32, 0 ,
5447 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLATB),
5448 MVT::i32, 5, 1, 2, 0, 3, 4,
5449 16,
5450 OPC_CheckPatternPredicate, 19,
5451 OPC_EmitInteger32, 28,
5452 OPC_EmitRegisterI32, 0 ,
5453 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLATB),
5454 MVT::i32, 5, 1, 2, 0, 3, 4,
5455 0,
5456 0,
5457 0,
5458 30|128,1,
5459 OPC_MoveChild0,
5460 OPC_SwitchOpcode , 36, TARGET_VAL(ISD::VECREDUCE_ADD),
5461 OPC_MoveChild0,
5462 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
5463 OPC_RecordChild0,
5464 OPC_CheckChild0Type, MVT::v4i1,
5465 OPC_RecordChild1,
5466 OPC_MoveChild2,
5467 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5468 OPC_CheckChild0Integer, 0,
5469 OPC_MoveParent,
5470 OPC_CheckType, MVT::v4i32,
5471 OPC_MoveParent,
5472 OPC_MoveParent,
5473 OPC_RecordChild1,
5474 OPC_CheckTypeI32,
5475 OPC_CheckPatternPredicate0,
5476 OPC_EmitInteger32, 2,
5477 OPC_EmitRegisterI32, 0 ,
5478 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32acc),
5479 MVT::i32, 5, 2, 1, 3, 0, 4,
5480 113, TARGET_VAL(ISD::MUL),
5481 OPC_MoveChild0,
5482 OPC_SwitchOpcode , 52, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
5483 OPC_RecordChild0,
5484 OPC_MoveChild1,
5485 OPC_CheckValueType, MVT::i16,
5486 OPC_MoveParent,
5487 OPC_MoveSibling1,
5488 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5489 OPC_RecordChild0,
5490 OPC_CheckChild1Integer, 32,
5491 OPC_CheckChild1TypeI32,
5492 OPC_MoveParent,
5493 OPC_MoveParent,
5494 OPC_RecordChild1,
5495 OPC_Scope, 16,
5496 OPC_CheckPatternPredicate, 23,
5497 OPC_EmitInteger32, 28,
5498 OPC_EmitRegisterI32, 0 ,
5499 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABT),
5500 MVT::i32, 5, 0, 1, 2, 3, 4,
5501 16,
5502 OPC_CheckPatternPredicate, 19,
5503 OPC_EmitInteger32, 28,
5504 OPC_EmitRegisterI32, 0 ,
5505 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABT),
5506 MVT::i32, 5, 0, 1, 2, 3, 4,
5507 0,
5508 52, TARGET_VAL(ISD::SRA),
5509 OPC_RecordChild0,
5510 OPC_CheckChild1Integer, 32,
5511 OPC_CheckChild1TypeI32,
5512 OPC_MoveSibling1,
5513 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
5514 OPC_RecordChild0,
5515 OPC_MoveChild1,
5516 OPC_CheckValueType, MVT::i16,
5517 OPC_MoveParent,
5518 OPC_MoveParent,
5519 OPC_MoveParent,
5520 OPC_RecordChild1,
5521 OPC_Scope, 16,
5522 OPC_CheckPatternPredicate, 23,
5523 OPC_EmitInteger32, 28,
5524 OPC_EmitRegisterI32, 0 ,
5525 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABT),
5526 MVT::i32, 5, 1, 0, 2, 3, 4,
5527 16,
5528 OPC_CheckPatternPredicate, 19,
5529 OPC_EmitInteger32, 28,
5530 OPC_EmitRegisterI32, 0 ,
5531 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABT),
5532 MVT::i32, 5, 1, 0, 2, 3, 4,
5533 0,
5534 0,
5535 0,
5536 40,
5537 OPC_RecordChild0,
5538 OPC_MoveChild1,
5539 OPC_CheckOpcode, TARGET_VAL(ISD::VECREDUCE_ADD),
5540 OPC_MoveChild0,
5541 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
5542 OPC_RecordChild0,
5543 OPC_CheckChild0Type, MVT::v4i1,
5544 OPC_RecordChild1,
5545 OPC_MoveChild2,
5546 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
5547 OPC_CheckChild0Integer, 0,
5548 OPC_MoveParent,
5549 OPC_CheckType, MVT::v4i32,
5550 OPC_MoveParent,
5551 OPC_MoveParent,
5552 OPC_CheckTypeI32,
5553 OPC_CheckPatternPredicate0,
5554 OPC_EmitInteger32, 2,
5555 OPC_EmitRegisterI32, 0 ,
5556 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32acc),
5557 MVT::i32, 5, 0, 2, 3, 1, 4,
5558 35|128,1,
5559 OPC_MoveChild0,
5560 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
5561 OPC_CheckChild0Integer, 0|128,50,
5562 OPC_RecordChild1,
5563 OPC_Scope, 50,
5564 OPC_CheckChild1Type, MVT::v16i8,
5565 OPC_Scope, 22,
5566 OPC_CheckChild2Integer, 0,
5567 OPC_RecordChild3,
5568 OPC_CheckChild3Type, MVT::v16i1,
5569 OPC_MoveParent,
5570 OPC_RecordChild1,
5571 OPC_CheckPatternPredicate0,
5572 OPC_EmitInteger32, 2,
5573 OPC_EmitRegisterI32, 0 ,
5574 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs8acc),
5575 MVT::i32, 5, 2, 0, 3, 1, 4,
5576 22,
5577 OPC_CheckChild2Integer, 2,
5578 OPC_RecordChild3,
5579 OPC_CheckChild3Type, MVT::v16i1,
5580 OPC_MoveParent,
5581 OPC_RecordChild1,
5582 OPC_CheckPatternPredicate0,
5583 OPC_EmitInteger32, 2,
5584 OPC_EmitRegisterI32, 0 ,
5585 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8acc),
5586 MVT::i32, 5, 2, 0, 3, 1, 4,
5587 0,
5588 50,
5589 OPC_CheckChild1Type, MVT::v8i16,
5590 OPC_Scope, 22,
5591 OPC_CheckChild2Integer, 0,
5592 OPC_RecordChild3,
5593 OPC_CheckChild3Type, MVT::v8i1,
5594 OPC_MoveParent,
5595 OPC_RecordChild1,
5596 OPC_CheckPatternPredicate0,
5597 OPC_EmitInteger32, 2,
5598 OPC_EmitRegisterI32, 0 ,
5599 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs16acc),
5600 MVT::i32, 5, 2, 0, 3, 1, 4,
5601 22,
5602 OPC_CheckChild2Integer, 2,
5603 OPC_RecordChild3,
5604 OPC_CheckChild3Type, MVT::v8i1,
5605 OPC_MoveParent,
5606 OPC_RecordChild1,
5607 OPC_CheckPatternPredicate0,
5608 OPC_EmitInteger32, 2,
5609 OPC_EmitRegisterI32, 0 ,
5610 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16acc),
5611 MVT::i32, 5, 2, 0, 3, 1, 4,
5612 0,
5613 50,
5614 OPC_CheckChild1Type, MVT::v4i32,
5615 OPC_Scope, 22,
5616 OPC_CheckChild2Integer, 0,
5617 OPC_RecordChild3,
5618 OPC_CheckChild3Type, MVT::v4i1,
5619 OPC_MoveParent,
5620 OPC_RecordChild1,
5621 OPC_CheckPatternPredicate0,
5622 OPC_EmitInteger32, 2,
5623 OPC_EmitRegisterI32, 0 ,
5624 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs32acc),
5625 MVT::i32, 5, 2, 0, 3, 1, 4,
5626 22,
5627 OPC_CheckChild2Integer, 2,
5628 OPC_RecordChild3,
5629 OPC_CheckChild3Type, MVT::v4i1,
5630 OPC_MoveParent,
5631 OPC_RecordChild1,
5632 OPC_CheckPatternPredicate0,
5633 OPC_EmitInteger32, 2,
5634 OPC_EmitRegisterI32, 0 ,
5635 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32acc),
5636 MVT::i32, 5, 2, 0, 3, 1, 4,
5637 0,
5638 0,
5639 90|128,2,
5640 OPC_RecordChild0,
5641 OPC_Scope, 29|128,1,
5642 OPC_MoveChild1,
5643 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
5644 OPC_CheckChild0Integer, 0|128,50,
5645 OPC_RecordChild1,
5646 OPC_Scope, 48,
5647 OPC_CheckChild1Type, MVT::v16i8,
5648 OPC_Scope, 21,
5649 OPC_CheckChild2Integer, 0,
5650 OPC_RecordChild3,
5651 OPC_CheckChild3Type, MVT::v16i1,
5652 OPC_MoveParent,
5653 OPC_CheckPatternPredicate0,
5654 OPC_EmitInteger32, 2,
5655 OPC_EmitRegisterI32, 0 ,
5656 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs8acc),
5657 MVT::i32, 5, 0, 1, 3, 2, 4,
5658 21,
5659 OPC_CheckChild2Integer, 2,
5660 OPC_RecordChild3,
5661 OPC_CheckChild3Type, MVT::v16i1,
5662 OPC_MoveParent,
5663 OPC_CheckPatternPredicate0,
5664 OPC_EmitInteger32, 2,
5665 OPC_EmitRegisterI32, 0 ,
5666 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8acc),
5667 MVT::i32, 5, 0, 1, 3, 2, 4,
5668 0,
5669 48,
5670 OPC_CheckChild1Type, MVT::v8i16,
5671 OPC_Scope, 21,
5672 OPC_CheckChild2Integer, 0,
5673 OPC_RecordChild3,
5674 OPC_CheckChild3Type, MVT::v8i1,
5675 OPC_MoveParent,
5676 OPC_CheckPatternPredicate0,
5677 OPC_EmitInteger32, 2,
5678 OPC_EmitRegisterI32, 0 ,
5679 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs16acc),
5680 MVT::i32, 5, 0, 1, 3, 2, 4,
5681 21,
5682 OPC_CheckChild2Integer, 2,
5683 OPC_RecordChild3,
5684 OPC_CheckChild3Type, MVT::v8i1,
5685 OPC_MoveParent,
5686 OPC_CheckPatternPredicate0,
5687 OPC_EmitInteger32, 2,
5688 OPC_EmitRegisterI32, 0 ,
5689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16acc),
5690 MVT::i32, 5, 0, 1, 3, 2, 4,
5691 0,
5692 48,
5693 OPC_CheckChild1Type, MVT::v4i32,
5694 OPC_Scope, 21,
5695 OPC_CheckChild2Integer, 0,
5696 OPC_RecordChild3,
5697 OPC_CheckChild3Type, MVT::v4i1,
5698 OPC_MoveParent,
5699 OPC_CheckPatternPredicate0,
5700 OPC_EmitInteger32, 2,
5701 OPC_EmitRegisterI32, 0 ,
5702 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs32acc),
5703 MVT::i32, 5, 0, 1, 3, 2, 4,
5704 21,
5705 OPC_CheckChild2Integer, 2,
5706 OPC_RecordChild3,
5707 OPC_CheckChild3Type, MVT::v4i1,
5708 OPC_MoveParent,
5709 OPC_CheckPatternPredicate0,
5710 OPC_EmitInteger32, 2,
5711 OPC_EmitRegisterI32, 0 ,
5712 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32acc),
5713 MVT::i32, 5, 0, 1, 3, 2, 4,
5714 0,
5715 0,
5716 23,
5717 OPC_RecordChild1,
5718 OPC_CheckTypeI32,
5719 OPC_CheckPatternPredicate3,
5720 OPC_CheckComplexPat4, /*#*/1,
5721 OPC_EmitInteger32, 28,
5722 OPC_EmitRegisterI32, 0 ,
5723 OPC_EmitRegisterI32, 0 ,
5724 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ADDrsr),
5725 MVT::i32, 7, 0, 2, 3, 4, 5, 6, 7,
5726 6|128,1,
5727 OPC_MoveChild1,
5728 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
5729 OPC_Scope, 31,
5730 OPC_RecordChild0,
5731 OPC_MoveChild0,
5732 OPC_CheckPredicate, 14,
5733 OPC_MoveSibling1,
5734 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5735 OPC_RecordChild0,
5736 OPC_CheckChild1Integer, 32,
5737 OPC_CheckChild1TypeI32,
5738 OPC_MoveParent,
5739 OPC_MoveParent,
5740 OPC_CheckTypeI32,
5741 OPC_CheckPatternPredicate, 23,
5742 OPC_EmitInteger32, 28,
5743 OPC_EmitRegisterI32, 0 ,
5744 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABT),
5745 MVT::i32, 5, 1, 2, 0, 3, 4,
5746 31,
5747 OPC_MoveChild0,
5748 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5749 OPC_RecordChild0,
5750 OPC_CheckChild1Integer, 32,
5751 OPC_CheckChild1TypeI32,
5752 OPC_MoveSibling1,
5753 OPC_RecordNode,
5754 OPC_CheckPredicate, 14,
5755 OPC_MoveParent,
5756 OPC_MoveParent,
5757 OPC_CheckTypeI32,
5758 OPC_CheckPatternPredicate, 23,
5759 OPC_EmitInteger32, 28,
5760 OPC_EmitRegisterI32, 0 ,
5761 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLATB),
5762 MVT::i32, 5, 1, 2, 0, 3, 4,
5763 31,
5764 OPC_RecordChild0,
5765 OPC_MoveChild0,
5766 OPC_CheckPredicate, 14,
5767 OPC_MoveSibling1,
5768 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5769 OPC_RecordChild0,
5770 OPC_CheckChild1Integer, 32,
5771 OPC_CheckChild1TypeI32,
5772 OPC_MoveParent,
5773 OPC_MoveParent,
5774 OPC_CheckTypeI32,
5775 OPC_CheckPatternPredicate, 19,
5776 OPC_EmitInteger32, 28,
5777 OPC_EmitRegisterI32, 0 ,
5778 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABT),
5779 MVT::i32, 5, 1, 2, 0, 3, 4,
5780 31,
5781 OPC_MoveChild0,
5782 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5783 OPC_RecordChild0,
5784 OPC_CheckChild1Integer, 32,
5785 OPC_CheckChild1TypeI32,
5786 OPC_MoveSibling1,
5787 OPC_RecordNode,
5788 OPC_CheckPredicate, 14,
5789 OPC_MoveParent,
5790 OPC_MoveParent,
5791 OPC_CheckTypeI32,
5792 OPC_CheckPatternPredicate, 19,
5793 OPC_EmitInteger32, 28,
5794 OPC_EmitRegisterI32, 0 ,
5795 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLATB),
5796 MVT::i32, 5, 1, 2, 0, 3, 4,
5797 0,
5798 23,
5799 OPC_RecordChild1,
5800 OPC_CheckTypeI32,
5801 OPC_CheckPatternPredicate3,
5802 OPC_CheckComplexPat4, /*#*/0,
5803 OPC_EmitInteger32, 28,
5804 OPC_EmitRegisterI32, 0 ,
5805 OPC_EmitRegisterI32, 0 ,
5806 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ADDrsr),
5807 MVT::i32, 7, 1, 2, 3, 4, 5, 6, 7,
5808 0,
5809 10|128,1,
5810 OPC_MoveChild0,
5811 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
5812 OPC_Scope, 32,
5813 OPC_RecordChild0,
5814 OPC_MoveChild0,
5815 OPC_CheckPredicate, 14,
5816 OPC_MoveSibling1,
5817 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5818 OPC_RecordChild0,
5819 OPC_CheckChild1Integer, 32,
5820 OPC_CheckChild1TypeI32,
5821 OPC_MoveParent,
5822 OPC_MoveParent,
5823 OPC_RecordChild1,
5824 OPC_CheckTypeI32,
5825 OPC_CheckPatternPredicate, 23,
5826 OPC_EmitInteger32, 28,
5827 OPC_EmitRegisterI32, 0 ,
5828 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABT),
5829 MVT::i32, 5, 0, 1, 2, 3, 4,
5830 32,
5831 OPC_MoveChild0,
5832 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5833 OPC_RecordChild0,
5834 OPC_CheckChild1Integer, 32,
5835 OPC_CheckChild1TypeI32,
5836 OPC_MoveSibling1,
5837 OPC_RecordNode,
5838 OPC_CheckPredicate, 14,
5839 OPC_MoveParent,
5840 OPC_MoveParent,
5841 OPC_RecordChild1,
5842 OPC_CheckTypeI32,
5843 OPC_CheckPatternPredicate, 23,
5844 OPC_EmitInteger32, 28,
5845 OPC_EmitRegisterI32, 0 ,
5846 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABT),
5847 MVT::i32, 5, 1, 0, 2, 3, 4,
5848 32,
5849 OPC_RecordChild0,
5850 OPC_MoveChild0,
5851 OPC_CheckPredicate, 14,
5852 OPC_MoveSibling1,
5853 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5854 OPC_RecordChild0,
5855 OPC_CheckChild1Integer, 32,
5856 OPC_CheckChild1TypeI32,
5857 OPC_MoveParent,
5858 OPC_MoveParent,
5859 OPC_RecordChild1,
5860 OPC_CheckTypeI32,
5861 OPC_CheckPatternPredicate, 19,
5862 OPC_EmitInteger32, 28,
5863 OPC_EmitRegisterI32, 0 ,
5864 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABT),
5865 MVT::i32, 5, 0, 1, 2, 3, 4,
5866 32,
5867 OPC_MoveChild0,
5868 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
5869 OPC_RecordChild0,
5870 OPC_CheckChild1Integer, 32,
5871 OPC_CheckChild1TypeI32,
5872 OPC_MoveSibling1,
5873 OPC_RecordNode,
5874 OPC_CheckPredicate, 14,
5875 OPC_MoveParent,
5876 OPC_MoveParent,
5877 OPC_RecordChild1,
5878 OPC_CheckTypeI32,
5879 OPC_CheckPatternPredicate, 19,
5880 OPC_EmitInteger32, 28,
5881 OPC_EmitRegisterI32, 0 ,
5882 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABT),
5883 MVT::i32, 5, 1, 0, 2, 3, 4,
5884 0,
5885 35,
5886 OPC_RecordChild0,
5887 OPC_MoveChild1,
5888 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
5889 OPC_MoveChild0,
5890 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
5891 OPC_RecordChild0,
5892 OPC_CheckChild1Integer, 48,
5893 OPC_CheckChild1TypeI32,
5894 OPC_MoveSibling1,
5895 OPC_CheckValueType, MVT::i16,
5896 OPC_MoveParent,
5897 OPC_MoveParent,
5898 OPC_CheckPatternPredicate5,
5899 OPC_EmitInteger32, 6,
5900 OPC_EmitInteger32, 28,
5901 OPC_EmitRegisterI32, 0 ,
5902 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
5903 MVT::i32, 5, 0, 1, 2, 3, 4,
5904 35,
5905 OPC_MoveChild0,
5906 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
5907 OPC_MoveChild0,
5908 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
5909 OPC_RecordChild0,
5910 OPC_CheckChild1Integer, 48,
5911 OPC_CheckChild1TypeI32,
5912 OPC_MoveSibling1,
5913 OPC_CheckValueType, MVT::i16,
5914 OPC_MoveParent,
5915 OPC_MoveParent,
5916 OPC_RecordChild1,
5917 OPC_CheckPatternPredicate5,
5918 OPC_EmitInteger32, 6,
5919 OPC_EmitInteger32, 28,
5920 OPC_EmitRegisterI32, 0 ,
5921 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
5922 MVT::i32, 5, 1, 0, 2, 3, 4,
5923 118|128,1,
5924 OPC_RecordChild0,
5925 OPC_MoveChild1,
5926 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
5927 OPC_MoveChild0,
5928 OPC_SwitchOpcode , 109, TARGET_VAL(ISD::ROTR),
5929 OPC_RecordChild0,
5930 OPC_RecordChild1,
5931 OPC_MoveChild1,
5932 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
5933 OPC_CheckPredicate, 12,
5934 OPC_CheckTypeI32,
5935 OPC_MoveParent,
5936 OPC_MoveSibling1,
5937 OPC_Scope, 47,
5938 OPC_CheckValueType, MVT::i8,
5939 OPC_MoveParent,
5940 OPC_MoveParent,
5941 OPC_Scope, 20,
5942 OPC_CheckPatternPredicate, 9,
5943 OPC_EmitConvertToTarget2,
5944 OPC_EmitNodeXForm, 2, 3,
5945 OPC_EmitInteger32, 28,
5946 OPC_EmitRegisterI32, 0 ,
5947 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAB),
5948 MVT::i32, 5, 0, 1, 4, 5, 6,
5949 19,
5950 OPC_CheckPatternPredicate5,
5951 OPC_EmitConvertToTarget2,
5952 OPC_EmitNodeXForm, 2, 3,
5953 OPC_EmitInteger32, 28,
5954 OPC_EmitRegisterI32, 0 ,
5955 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAB),
5956 MVT::i32, 5, 0, 1, 4, 5, 6,
5957 0,
5958 47,
5959 OPC_CheckValueType, MVT::i16,
5960 OPC_MoveParent,
5961 OPC_MoveParent,
5962 OPC_Scope, 20,
5963 OPC_CheckPatternPredicate, 9,
5964 OPC_EmitConvertToTarget2,
5965 OPC_EmitNodeXForm, 2, 3,
5966 OPC_EmitInteger32, 28,
5967 OPC_EmitRegisterI32, 0 ,
5968 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAH),
5969 MVT::i32, 5, 0, 1, 4, 5, 6,
5970 19,
5971 OPC_CheckPatternPredicate5,
5972 OPC_EmitConvertToTarget2,
5973 OPC_EmitNodeXForm, 2, 3,
5974 OPC_EmitInteger32, 28,
5975 OPC_EmitRegisterI32, 0 ,
5976 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
5977 MVT::i32, 5, 0, 1, 4, 5, 6,
5978 0,
5979 0,
5980 123, TARGET_VAL(ISD::SRL),
5981 OPC_RecordChild0,
5982 OPC_RecordChild1,
5983 OPC_MoveChild1,
5984 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
5985 OPC_CheckTypeI32,
5986 OPC_Scope, 28,
5987 OPC_CheckPredicate, 12,
5988 OPC_MoveParent,
5989 OPC_MoveSibling1,
5990 OPC_CheckValueType, MVT::i8,
5991 OPC_MoveParent,
5992 OPC_MoveParent,
5993 OPC_CheckPatternPredicate, 9,
5994 OPC_EmitConvertToTarget2,
5995 OPC_EmitNodeXForm, 2, 3,
5996 OPC_EmitInteger32, 28,
5997 OPC_EmitRegisterI32, 0 ,
5998 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAB),
5999 MVT::i32, 5, 0, 1, 4, 5, 6,
6000 28,
6001 OPC_CheckPredicate, 42,
6002 OPC_MoveParent,
6003 OPC_MoveSibling1,
6004 OPC_CheckValueType, MVT::i16,
6005 OPC_MoveParent,
6006 OPC_MoveParent,
6007 OPC_CheckPatternPredicate, 9,
6008 OPC_EmitConvertToTarget2,
6009 OPC_EmitNodeXForm, 2, 3,
6010 OPC_EmitInteger32, 28,
6011 OPC_EmitRegisterI32, 0 ,
6012 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAH),
6013 MVT::i32, 5, 0, 1, 4, 5, 6,
6014 27,
6015 OPC_CheckPredicate, 12,
6016 OPC_MoveParent,
6017 OPC_MoveSibling1,
6018 OPC_CheckValueType, MVT::i8,
6019 OPC_MoveParent,
6020 OPC_MoveParent,
6021 OPC_CheckPatternPredicate5,
6022 OPC_EmitConvertToTarget2,
6023 OPC_EmitNodeXForm, 2, 3,
6024 OPC_EmitInteger32, 28,
6025 OPC_EmitRegisterI32, 0 ,
6026 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAB),
6027 MVT::i32, 5, 0, 1, 4, 5, 6,
6028 27,
6029 OPC_CheckPredicate, 42,
6030 OPC_MoveParent,
6031 OPC_MoveSibling1,
6032 OPC_CheckValueType, MVT::i16,
6033 OPC_MoveParent,
6034 OPC_MoveParent,
6035 OPC_CheckPatternPredicate5,
6036 OPC_EmitConvertToTarget2,
6037 OPC_EmitNodeXForm, 2, 3,
6038 OPC_EmitInteger32, 28,
6039 OPC_EmitRegisterI32, 0 ,
6040 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
6041 MVT::i32, 5, 0, 1, 4, 5, 6,
6042 0,
6043 0,
6044 123|128,1,
6045 OPC_MoveChild0,
6046 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6047 OPC_MoveChild0,
6048 OPC_SwitchOpcode , 111, TARGET_VAL(ISD::ROTR),
6049 OPC_RecordChild0,
6050 OPC_RecordChild1,
6051 OPC_MoveChild1,
6052 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6053 OPC_CheckPredicate, 12,
6054 OPC_CheckTypeI32,
6055 OPC_MoveParent,
6056 OPC_MoveSibling1,
6057 OPC_Scope, 48,
6058 OPC_CheckValueType, MVT::i8,
6059 OPC_MoveParent,
6060 OPC_MoveParent,
6061 OPC_RecordChild1,
6062 OPC_Scope, 20,
6063 OPC_CheckPatternPredicate, 9,
6064 OPC_EmitConvertToTarget1,
6065 OPC_EmitNodeXForm, 2, 3,
6066 OPC_EmitInteger32, 28,
6067 OPC_EmitRegisterI32, 0 ,
6068 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAB),
6069 MVT::i32, 5, 2, 0, 4, 5, 6,
6070 19,
6071 OPC_CheckPatternPredicate5,
6072 OPC_EmitConvertToTarget1,
6073 OPC_EmitNodeXForm, 2, 3,
6074 OPC_EmitInteger32, 28,
6075 OPC_EmitRegisterI32, 0 ,
6076 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAB),
6077 MVT::i32, 5, 2, 0, 4, 5, 6,
6078 0,
6079 48,
6080 OPC_CheckValueType, MVT::i16,
6081 OPC_MoveParent,
6082 OPC_MoveParent,
6083 OPC_RecordChild1,
6084 OPC_Scope, 20,
6085 OPC_CheckPatternPredicate, 9,
6086 OPC_EmitConvertToTarget1,
6087 OPC_EmitNodeXForm, 2, 3,
6088 OPC_EmitInteger32, 28,
6089 OPC_EmitRegisterI32, 0 ,
6090 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAH),
6091 MVT::i32, 5, 2, 0, 4, 5, 6,
6092 19,
6093 OPC_CheckPatternPredicate5,
6094 OPC_EmitConvertToTarget1,
6095 OPC_EmitNodeXForm, 2, 3,
6096 OPC_EmitInteger32, 28,
6097 OPC_EmitRegisterI32, 0 ,
6098 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
6099 MVT::i32, 5, 2, 0, 4, 5, 6,
6100 0,
6101 0,
6102 127, TARGET_VAL(ISD::SRL),
6103 OPC_RecordChild0,
6104 OPC_RecordChild1,
6105 OPC_MoveChild1,
6106 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6107 OPC_CheckTypeI32,
6108 OPC_Scope, 29,
6109 OPC_CheckPredicate, 12,
6110 OPC_MoveParent,
6111 OPC_MoveSibling1,
6112 OPC_CheckValueType, MVT::i8,
6113 OPC_MoveParent,
6114 OPC_MoveParent,
6115 OPC_RecordChild1,
6116 OPC_CheckPatternPredicate, 9,
6117 OPC_EmitConvertToTarget1,
6118 OPC_EmitNodeXForm, 2, 3,
6119 OPC_EmitInteger32, 28,
6120 OPC_EmitRegisterI32, 0 ,
6121 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAB),
6122 MVT::i32, 5, 2, 0, 4, 5, 6,
6123 29,
6124 OPC_CheckPredicate, 42,
6125 OPC_MoveParent,
6126 OPC_MoveSibling1,
6127 OPC_CheckValueType, MVT::i16,
6128 OPC_MoveParent,
6129 OPC_MoveParent,
6130 OPC_RecordChild1,
6131 OPC_CheckPatternPredicate, 9,
6132 OPC_EmitConvertToTarget1,
6133 OPC_EmitNodeXForm, 2, 3,
6134 OPC_EmitInteger32, 28,
6135 OPC_EmitRegisterI32, 0 ,
6136 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAH),
6137 MVT::i32, 5, 2, 0, 4, 5, 6,
6138 28,
6139 OPC_CheckPredicate, 12,
6140 OPC_MoveParent,
6141 OPC_MoveSibling1,
6142 OPC_CheckValueType, MVT::i8,
6143 OPC_MoveParent,
6144 OPC_MoveParent,
6145 OPC_RecordChild1,
6146 OPC_CheckPatternPredicate5,
6147 OPC_EmitConvertToTarget1,
6148 OPC_EmitNodeXForm, 2, 3,
6149 OPC_EmitInteger32, 28,
6150 OPC_EmitRegisterI32, 0 ,
6151 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAB),
6152 MVT::i32, 5, 2, 0, 4, 5, 6,
6153 28,
6154 OPC_CheckPredicate, 42,
6155 OPC_MoveParent,
6156 OPC_MoveSibling1,
6157 OPC_CheckValueType, MVT::i16,
6158 OPC_MoveParent,
6159 OPC_MoveParent,
6160 OPC_RecordChild1,
6161 OPC_CheckPatternPredicate5,
6162 OPC_EmitConvertToTarget1,
6163 OPC_EmitNodeXForm, 2, 3,
6164 OPC_EmitInteger32, 28,
6165 OPC_EmitRegisterI32, 0 ,
6166 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
6167 MVT::i32, 5, 2, 0, 4, 5, 6,
6168 0,
6169 0,
6170 26|128,1,
6171 OPC_RecordChild0,
6172 OPC_Scope, 22,
6173 OPC_RecordChild1,
6174 OPC_CheckTypeI32,
6175 OPC_CheckPatternPredicate3,
6176 OPC_CheckComplexPat5, /*#*/1,
6177 OPC_EmitInteger32, 28,
6178 OPC_EmitRegisterI32, 0 ,
6179 OPC_EmitRegisterI32, 0 ,
6180 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ADDrsi),
6181 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
6182 40,
6183 OPC_MoveChild1,
6184 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
6185 OPC_MoveChild0,
6186 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6187 OPC_RecordChild0,
6188 OPC_MoveChild1,
6189 OPC_CheckValueType, MVT::i16,
6190 OPC_MoveParent,
6191 OPC_MoveSibling1,
6192 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6193 OPC_RecordChild0,
6194 OPC_MoveChild1,
6195 OPC_CheckValueType, MVT::i16,
6196 OPC_MoveParent,
6197 OPC_MoveParent,
6198 OPC_MoveParent,
6199 OPC_CheckPatternPredicate, 23,
6200 OPC_EmitInteger32, 28,
6201 OPC_EmitRegisterI32, 0 ,
6202 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABB),
6203 MVT::i32, 5, 1, 2, 0, 3, 4,
6204 22,
6205 OPC_RecordChild1,
6206 OPC_CheckTypeI32,
6207 OPC_CheckPatternPredicate4,
6208 OPC_CheckComplexPat7, /*#*/1,
6209 OPC_EmitInteger32, 28,
6210 OPC_EmitRegisterI32, 0 ,
6211 OPC_EmitRegisterI32, 0 ,
6212 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ADDrs),
6213 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
6214 40,
6215 OPC_MoveChild1,
6216 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
6217 OPC_MoveChild0,
6218 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6219 OPC_RecordChild0,
6220 OPC_MoveChild1,
6221 OPC_CheckValueType, MVT::i16,
6222 OPC_MoveParent,
6223 OPC_MoveSibling1,
6224 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6225 OPC_RecordChild0,
6226 OPC_MoveChild1,
6227 OPC_CheckValueType, MVT::i16,
6228 OPC_MoveParent,
6229 OPC_MoveParent,
6230 OPC_MoveParent,
6231 OPC_CheckPatternPredicate, 19,
6232 OPC_EmitInteger32, 28,
6233 OPC_EmitRegisterI32, 0 ,
6234 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABB),
6235 MVT::i32, 5, 1, 2, 0, 3, 4,
6236 22,
6237 OPC_RecordChild1,
6238 OPC_CheckTypeI32,
6239 OPC_CheckPatternPredicate3,
6240 OPC_CheckComplexPat5, /*#*/0,
6241 OPC_EmitInteger32, 28,
6242 OPC_EmitRegisterI32, 0 ,
6243 OPC_EmitRegisterI32, 0 ,
6244 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ADDrsi),
6245 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
6246 0,
6247 41,
6248 OPC_MoveChild0,
6249 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
6250 OPC_MoveChild0,
6251 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6252 OPC_RecordChild0,
6253 OPC_MoveChild1,
6254 OPC_CheckValueType, MVT::i16,
6255 OPC_MoveParent,
6256 OPC_MoveSibling1,
6257 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6258 OPC_RecordChild0,
6259 OPC_MoveChild1,
6260 OPC_CheckValueType, MVT::i16,
6261 OPC_MoveParent,
6262 OPC_MoveParent,
6263 OPC_MoveParent,
6264 OPC_RecordChild1,
6265 OPC_CheckPatternPredicate, 23,
6266 OPC_EmitInteger32, 28,
6267 OPC_EmitRegisterI32, 0 ,
6268 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABB),
6269 MVT::i32, 5, 0, 1, 2, 3, 4,
6270 23,
6271 OPC_RecordChild0,
6272 OPC_RecordChild1,
6273 OPC_CheckTypeI32,
6274 OPC_CheckPatternPredicate4,
6275 OPC_CheckComplexPat7, /*#*/0,
6276 OPC_EmitInteger32, 28,
6277 OPC_EmitRegisterI32, 0 ,
6278 OPC_EmitRegisterI32, 0 ,
6279 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ADDrs),
6280 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
6281 41,
6282 OPC_MoveChild0,
6283 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
6284 OPC_MoveChild0,
6285 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6286 OPC_RecordChild0,
6287 OPC_MoveChild1,
6288 OPC_CheckValueType, MVT::i16,
6289 OPC_MoveParent,
6290 OPC_MoveSibling1,
6291 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6292 OPC_RecordChild0,
6293 OPC_MoveChild1,
6294 OPC_CheckValueType, MVT::i16,
6295 OPC_MoveParent,
6296 OPC_MoveParent,
6297 OPC_MoveParent,
6298 OPC_RecordChild1,
6299 OPC_CheckPatternPredicate, 19,
6300 OPC_EmitInteger32, 28,
6301 OPC_EmitRegisterI32, 0 ,
6302 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABB),
6303 MVT::i32, 5, 0, 1, 2, 3, 4,
6304 91,
6305 OPC_RecordChild0,
6306 OPC_MoveChild1,
6307 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
6308 OPC_Scope, 51,
6309 OPC_RecordChild0,
6310 OPC_MoveChild0,
6311 OPC_CheckPredicate, 14,
6312 OPC_MoveSibling1,
6313 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6314 OPC_RecordChild0,
6315 OPC_MoveChild1,
6316 OPC_CheckValueType, MVT::i16,
6317 OPC_MoveParent,
6318 OPC_MoveParent,
6319 OPC_MoveParent,
6320 OPC_Scope, 16,
6321 OPC_CheckPatternPredicate, 23,
6322 OPC_EmitInteger32, 28,
6323 OPC_EmitRegisterI32, 0 ,
6324 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABB),
6325 MVT::i32, 5, 1, 2, 0, 3, 4,
6326 16,
6327 OPC_CheckPatternPredicate, 19,
6328 OPC_EmitInteger32, 28,
6329 OPC_EmitRegisterI32, 0 ,
6330 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABB),
6331 MVT::i32, 5, 1, 2, 0, 3, 4,
6332 0,
6333 31,
6334 OPC_MoveChild0,
6335 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6336 OPC_RecordChild0,
6337 OPC_MoveChild1,
6338 OPC_CheckValueType, MVT::i16,
6339 OPC_MoveParent,
6340 OPC_MoveSibling1,
6341 OPC_RecordNode,
6342 OPC_CheckPredicate, 14,
6343 OPC_MoveParent,
6344 OPC_MoveParent,
6345 OPC_CheckPatternPredicate, 23,
6346 OPC_EmitInteger32, 28,
6347 OPC_EmitRegisterI32, 0 ,
6348 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABB),
6349 MVT::i32, 5, 2, 1, 0, 3, 4,
6350 0,
6351 72,
6352 OPC_MoveChild0,
6353 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
6354 OPC_Scope, 32,
6355 OPC_RecordChild0,
6356 OPC_MoveChild0,
6357 OPC_CheckPredicate, 14,
6358 OPC_MoveSibling1,
6359 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6360 OPC_RecordChild0,
6361 OPC_MoveChild1,
6362 OPC_CheckValueType, MVT::i16,
6363 OPC_MoveParent,
6364 OPC_MoveParent,
6365 OPC_MoveParent,
6366 OPC_RecordChild1,
6367 OPC_CheckPatternPredicate, 23,
6368 OPC_EmitInteger32, 28,
6369 OPC_EmitRegisterI32, 0 ,
6370 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABB),
6371 MVT::i32, 5, 0, 1, 2, 3, 4,
6372 32,
6373 OPC_MoveChild0,
6374 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6375 OPC_RecordChild0,
6376 OPC_MoveChild1,
6377 OPC_CheckValueType, MVT::i16,
6378 OPC_MoveParent,
6379 OPC_MoveSibling1,
6380 OPC_RecordNode,
6381 OPC_CheckPredicate, 14,
6382 OPC_MoveParent,
6383 OPC_MoveParent,
6384 OPC_RecordChild1,
6385 OPC_CheckPatternPredicate, 23,
6386 OPC_EmitInteger32, 28,
6387 OPC_EmitRegisterI32, 0 ,
6388 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABB),
6389 MVT::i32, 5, 1, 0, 2, 3, 4,
6390 0,
6391 36,
6392 OPC_RecordChild0,
6393 OPC_MoveChild1,
6394 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
6395 OPC_MoveChild0,
6396 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6397 OPC_RecordChild0,
6398 OPC_MoveChild1,
6399 OPC_CheckValueType, MVT::i16,
6400 OPC_MoveParent,
6401 OPC_MoveSibling1,
6402 OPC_RecordNode,
6403 OPC_CheckPredicate, 14,
6404 OPC_MoveParent,
6405 OPC_MoveParent,
6406 OPC_CheckPatternPredicate, 19,
6407 OPC_EmitInteger32, 28,
6408 OPC_EmitRegisterI32, 0 ,
6409 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABB),
6410 MVT::i32, 5, 2, 1, 0, 3, 4,
6411 29|128,1,
6412 OPC_MoveChild0,
6413 OPC_SwitchOpcode , 68, TARGET_VAL(ISD::MUL),
6414 OPC_Scope, 32,
6415 OPC_RecordChild0,
6416 OPC_MoveChild0,
6417 OPC_CheckPredicate, 14,
6418 OPC_MoveSibling1,
6419 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6420 OPC_RecordChild0,
6421 OPC_MoveChild1,
6422 OPC_CheckValueType, MVT::i16,
6423 OPC_MoveParent,
6424 OPC_MoveParent,
6425 OPC_MoveParent,
6426 OPC_RecordChild1,
6427 OPC_CheckPatternPredicate, 19,
6428 OPC_EmitInteger32, 28,
6429 OPC_EmitRegisterI32, 0 ,
6430 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABB),
6431 MVT::i32, 5, 0, 1, 2, 3, 4,
6432 32,
6433 OPC_MoveChild0,
6434 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6435 OPC_RecordChild0,
6436 OPC_MoveChild1,
6437 OPC_CheckValueType, MVT::i16,
6438 OPC_MoveParent,
6439 OPC_MoveSibling1,
6440 OPC_RecordNode,
6441 OPC_CheckPredicate, 14,
6442 OPC_MoveParent,
6443 OPC_MoveParent,
6444 OPC_RecordChild1,
6445 OPC_CheckPatternPredicate, 19,
6446 OPC_EmitInteger32, 28,
6447 OPC_EmitRegisterI32, 0 ,
6448 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABB),
6449 MVT::i32, 5, 1, 0, 2, 3, 4,
6450 0,
6451 80, TARGET_VAL(ISD::VECREDUCE_ADD),
6452 OPC_MoveChild0,
6453 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
6454 OPC_RecordChild0,
6455 OPC_RecordChild1,
6456 OPC_SwitchType , 22, MVT::v4i32,
6457 OPC_MoveParent,
6458 OPC_MoveParent,
6459 OPC_RecordChild1,
6460 OPC_CheckTypeI32,
6461 OPC_CheckPatternPredicate0,
6462 OPC_EmitInteger32, 0,
6463 OPC_EmitRegisterI32, 0 ,
6464 OPC_EmitRegisterI32, 0 ,
6465 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau32),
6466 MVT::i32, 6, 2, 0, 1, 3, 4, 5,
6467 22, MVT::v8i16,
6468 OPC_MoveParent,
6469 OPC_MoveParent,
6470 OPC_RecordChild1,
6471 OPC_CheckTypeI32,
6472 OPC_CheckPatternPredicate0,
6473 OPC_EmitInteger32, 0,
6474 OPC_EmitRegisterI32, 0 ,
6475 OPC_EmitRegisterI32, 0 ,
6476 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau16),
6477 MVT::i32, 6, 2, 0, 1, 3, 4, 5,
6478 22, MVT::v16i8,
6479 OPC_MoveParent,
6480 OPC_MoveParent,
6481 OPC_RecordChild1,
6482 OPC_CheckTypeI32,
6483 OPC_CheckPatternPredicate0,
6484 OPC_EmitInteger32, 0,
6485 OPC_EmitRegisterI32, 0 ,
6486 OPC_EmitRegisterI32, 0 ,
6487 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau8),
6488 MVT::i32, 6, 2, 0, 1, 3, 4, 5,
6489 0,
6490 0,
6491 52|128,1,
6492 OPC_RecordChild0,
6493 OPC_Scope, 113,
6494 OPC_MoveChild1,
6495 OPC_SwitchOpcode , 77, TARGET_VAL(ISD::VECREDUCE_ADD),
6496 OPC_MoveChild0,
6497 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
6498 OPC_RecordChild0,
6499 OPC_RecordChild1,
6500 OPC_SwitchType , 21, MVT::v4i32,
6501 OPC_MoveParent,
6502 OPC_MoveParent,
6503 OPC_CheckTypeI32,
6504 OPC_CheckPatternPredicate0,
6505 OPC_EmitInteger32, 0,
6506 OPC_EmitRegisterI32, 0 ,
6507 OPC_EmitRegisterI32, 0 ,
6508 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau32),
6509 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
6510 21, MVT::v8i16,
6511 OPC_MoveParent,
6512 OPC_MoveParent,
6513 OPC_CheckTypeI32,
6514 OPC_CheckPatternPredicate0,
6515 OPC_EmitInteger32, 0,
6516 OPC_EmitRegisterI32, 0 ,
6517 OPC_EmitRegisterI32, 0 ,
6518 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau16),
6519 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
6520 21, MVT::v16i8,
6521 OPC_MoveParent,
6522 OPC_MoveParent,
6523 OPC_CheckTypeI32,
6524 OPC_CheckPatternPredicate0,
6525 OPC_EmitInteger32, 0,
6526 OPC_EmitRegisterI32, 0 ,
6527 OPC_EmitRegisterI32, 0 ,
6528 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau8),
6529 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
6530 0,
6531 27, TARGET_VAL(ISD::MUL),
6532 OPC_RecordChild0,
6533 OPC_MoveChild0,
6534 OPC_CheckPredicate, 14,
6535 OPC_MoveSibling1,
6536 OPC_RecordNode,
6537 OPC_CheckPredicate, 14,
6538 OPC_MoveParent,
6539 OPC_MoveParent,
6540 OPC_CheckTypeI32,
6541 OPC_CheckPatternPredicate, 23,
6542 OPC_EmitInteger32, 28,
6543 OPC_EmitRegisterI32, 0 ,
6544 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABB),
6545 MVT::i32, 5, 1, 2, 0, 3, 4,
6546 0,
6547 30,
6548 OPC_RecordChild1,
6549 OPC_MoveChild1,
6550 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6551 OPC_CheckPredicate, 87,
6552 OPC_MoveParent,
6553 OPC_CheckTypeI32,
6554 OPC_CheckPatternPredicate4,
6555 OPC_EmitConvertToTarget1,
6556 OPC_EmitNodeXForm, 3, 2,
6557 OPC_EmitInteger32, 28,
6558 OPC_EmitRegisterI32, 0 ,
6559 OPC_EmitRegisterI32, 0 ,
6560 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SUBri),
6561 MVT::i32, 5, 0, 3, 4, 5, 6,
6562 31,
6563 OPC_MoveChild1,
6564 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
6565 OPC_RecordChild0,
6566 OPC_MoveChild0,
6567 OPC_CheckPredicate, 14,
6568 OPC_MoveSibling1,
6569 OPC_RecordNode,
6570 OPC_CheckPredicate, 14,
6571 OPC_MoveParent,
6572 OPC_MoveParent,
6573 OPC_CheckTypeI32,
6574 OPC_CheckPatternPredicate, 19,
6575 OPC_EmitInteger32, 28,
6576 OPC_EmitRegisterI32, 0 ,
6577 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABB),
6578 MVT::i32, 5, 1, 2, 0, 3, 4,
6579 0,
6580 52,
6581 OPC_MoveChild0,
6582 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
6583 OPC_RecordChild0,
6584 OPC_MoveChild0,
6585 OPC_CheckPredicate, 14,
6586 OPC_MoveSibling1,
6587 OPC_RecordNode,
6588 OPC_CheckPredicate, 14,
6589 OPC_MoveParent,
6590 OPC_MoveParent,
6591 OPC_RecordChild1,
6592 OPC_CheckTypeI32,
6593 OPC_Scope, 16,
6594 OPC_CheckPatternPredicate, 23,
6595 OPC_EmitInteger32, 28,
6596 OPC_EmitRegisterI32, 0 ,
6597 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABB),
6598 MVT::i32, 5, 0, 1, 2, 3, 4,
6599 16,
6600 OPC_CheckPatternPredicate, 19,
6601 OPC_EmitInteger32, 28,
6602 OPC_EmitRegisterI32, 0 ,
6603 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABB),
6604 MVT::i32, 5, 0, 1, 2, 3, 4,
6605 0,
6606 106|128,2,
6607 OPC_RecordChild0,
6608 OPC_RecordChild1,
6609 OPC_MoveChild1,
6610 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6611 OPC_Scope, 22,
6612 OPC_CheckPredicate, 20,
6613 OPC_MoveParent,
6614 OPC_CheckTypeI32,
6615 OPC_CheckPatternPredicate3,
6616 OPC_EmitConvertToTarget1,
6617 OPC_EmitInteger32, 28,
6618 OPC_EmitRegisterI32, 0 ,
6619 OPC_EmitRegisterI32, 0 ,
6620 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ADDri),
6621 MVT::i32, 5, 0, 2, 3, 4, 5,
6622 25,
6623 OPC_CheckPredicate, 62,
6624 OPC_MoveParent,
6625 OPC_CheckTypeI32,
6626 OPC_CheckPatternPredicate3,
6627 OPC_EmitConvertToTarget1,
6628 OPC_EmitNodeXForm, 3, 2,
6629 OPC_EmitInteger32, 28,
6630 OPC_EmitRegisterI32, 0 ,
6631 OPC_EmitRegisterI32, 0 ,
6632 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SUBri),
6633 MVT::i32, 5, 0, 3, 4, 5, 6,
6634 23,
6635 OPC_CheckPredicate, 28,
6636 OPC_MoveParent,
6637 OPC_CheckTypeI32,
6638 OPC_CheckPatternPredicate, 10,
6639 OPC_EmitRegisterI32, ARM::CPSR,
6640 OPC_EmitConvertToTarget1,
6641 OPC_EmitInteger32, 28,
6642 OPC_EmitRegisterI32, 0 ,
6643 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tADDi3),
6644 MVT::i32, 5, 2, 0, 3, 4, 5,
6645 23,
6646 OPC_CheckPredicate, 47,
6647 OPC_MoveParent,
6648 OPC_CheckTypeI32,
6649 OPC_CheckPatternPredicate, 10,
6650 OPC_EmitRegisterI32, ARM::CPSR,
6651 OPC_EmitConvertToTarget1,
6652 OPC_EmitInteger32, 28,
6653 OPC_EmitRegisterI32, 0 ,
6654 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tADDi8),
6655 MVT::i32, 5, 2, 0, 3, 4, 5,
6656 26,
6657 OPC_CheckPredicate, 96,
6658 OPC_MoveParent,
6659 OPC_CheckTypeI32,
6660 OPC_CheckPatternPredicate, 10,
6661 OPC_EmitRegisterI32, ARM::CPSR,
6662 OPC_EmitConvertToTarget1,
6663 OPC_EmitNodeXForm, 3, 3,
6664 OPC_EmitInteger32, 28,
6665 OPC_EmitRegisterI32, 0 ,
6666 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tSUBi3),
6667 MVT::i32, 5, 2, 0, 4, 5, 6,
6668 26,
6669 OPC_CheckPredicate, 97,
6670 OPC_MoveParent,
6671 OPC_CheckTypeI32,
6672 OPC_CheckPatternPredicate, 10,
6673 OPC_EmitRegisterI32, ARM::CPSR,
6674 OPC_EmitConvertToTarget1,
6675 OPC_EmitNodeXForm, 3, 3,
6676 OPC_EmitInteger32, 28,
6677 OPC_EmitRegisterI32, 0 ,
6678 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tSUBi8),
6679 MVT::i32, 5, 2, 0, 4, 5, 6,
6680 22,
6681 OPC_CheckPredicate, 13,
6682 OPC_MoveParent,
6683 OPC_CheckTypeI32,
6684 OPC_CheckPatternPredicate4,
6685 OPC_EmitConvertToTarget1,
6686 OPC_EmitInteger32, 28,
6687 OPC_EmitRegisterI32, 0 ,
6688 OPC_EmitRegisterI32, 0 ,
6689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ADDri),
6690 MVT::i32, 5, 0, 2, 3, 4, 5,
6691 19,
6692 OPC_CheckPredicate, 70,
6693 OPC_MoveParent,
6694 OPC_CheckTypeI32,
6695 OPC_CheckPatternPredicate4,
6696 OPC_EmitConvertToTarget1,
6697 OPC_EmitInteger32, 28,
6698 OPC_EmitRegisterI32, 0 ,
6699 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ADDri12),
6700 MVT::i32, 4, 0, 2, 3, 4,
6701 25,
6702 OPC_CheckPredicate, 63,
6703 OPC_MoveParent,
6704 OPC_CheckTypeI32,
6705 OPC_CheckPatternPredicate4,
6706 OPC_EmitConvertToTarget1,
6707 OPC_EmitNodeXForm, 4, 2,
6708 OPC_EmitInteger32, 28,
6709 OPC_EmitRegisterI32, 0 ,
6710 OPC_EmitRegisterI32, 0 ,
6711 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SUBri),
6712 MVT::i32, 5, 0, 3, 4, 5, 6,
6713 22,
6714 OPC_CheckPredicate, 98,
6715 OPC_MoveParent,
6716 OPC_CheckTypeI32,
6717 OPC_CheckPatternPredicate4,
6718 OPC_EmitConvertToTarget1,
6719 OPC_EmitNodeXForm, 3, 2,
6720 OPC_EmitInteger32, 28,
6721 OPC_EmitRegisterI32, 0 ,
6722 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SUBri12),
6723 MVT::i32, 4, 0, 3, 4, 5,
6724 110,
6725 OPC_CheckPredicate, 71,
6726 OPC_MoveParent,
6727 OPC_CheckTypeI32,
6728 OPC_Scope, 34,
6729 OPC_CheckPatternPredicate, 32,
6730 OPC_EmitConvertToTarget1,
6731 OPC_EmitNodeXForm, 3, 2,
6732 OPC_EmitInteger32, 28,
6733 OPC_EmitRegisterI32, 0 ,
6734 OPC_EmitNode1None, TARGET_VAL(ARM::MOVi16),
6735 MVT::i32, 3, 3, 4, 5,
6736 OPC_EmitInteger32, 28,
6737 OPC_EmitRegisterI32, 0 ,
6738 OPC_EmitRegisterI32, 0 ,
6739 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SUBrr),
6740 MVT::i32, 5, 0, 6, 7, 8, 9,
6741 33,
6742 OPC_CheckPatternPredicate4,
6743 OPC_EmitConvertToTarget1,
6744 OPC_EmitNodeXForm, 3, 2,
6745 OPC_EmitInteger32, 28,
6746 OPC_EmitRegisterI32, 0 ,
6747 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi16),
6748 MVT::i32, 3, 3, 4, 5,
6749 OPC_EmitInteger32, 28,
6750 OPC_EmitRegisterI32, 0 ,
6751 OPC_EmitRegisterI32, 0 ,
6752 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SUBrr),
6753 MVT::i32, 5, 0, 6, 7, 8, 9,
6754 34,
6755 OPC_CheckPatternPredicate, 112,
6756 OPC_EmitRegisterI32, ARM::CPSR,
6757 OPC_EmitConvertToTarget1,
6758 OPC_EmitNodeXForm, 3, 3,
6759 OPC_EmitInteger32, 28,
6760 OPC_EmitRegisterI32, 0 ,
6761 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi16),
6762 MVT::i32, 3, 4, 5, 6,
6763 OPC_EmitInteger32, 28,
6764 OPC_EmitRegisterI32, 0 ,
6765 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tSUBrr),
6766 MVT::i32, 5, 2, 0, 7, 8, 9,
6767 0,
6768 0,
6769 77,
6770 OPC_MoveChild0,
6771 OPC_SwitchOpcode , 47, TARGET_VAL(ISD::MUL),
6772 OPC_RecordChild0,
6773 OPC_RecordChild1,
6774 OPC_MoveParent,
6775 OPC_RecordChild1,
6776 OPC_CheckTypeI32,
6777 OPC_Scope, 19,
6778 OPC_CheckPatternPredicate, 65,
6779 OPC_EmitInteger32, 28,
6780 OPC_EmitRegisterI32, 0 ,
6781 OPC_EmitRegisterI32, 0 ,
6782 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MLA),
6783 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
6784 19,
6785 OPC_CheckPatternPredicate, 66,
6786 OPC_EmitInteger32, 28,
6787 OPC_EmitRegisterI32, 0 ,
6788 OPC_EmitRegisterI32, 0 ,
6789 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MLAv5),
6790 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
6791 0,
6792 21, TARGET_VAL(ISD::MULHS),
6793 OPC_RecordChild0,
6794 OPC_RecordChild1,
6795 OPC_MoveParent,
6796 OPC_RecordChild1,
6797 OPC_CheckTypeI32,
6798 OPC_CheckPatternPredicate, 65,
6799 OPC_EmitInteger32, 28,
6800 OPC_EmitRegisterI32, 0 ,
6801 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMMLA),
6802 MVT::i32, 5, 0, 1, 2, 3, 4,
6803 0,
6804 103,
6805 OPC_RecordChild0,
6806 OPC_MoveChild1,
6807 OPC_SwitchOpcode , 20, TARGET_VAL(ARMISD::SMULWB),
6808 OPC_RecordChild0,
6809 OPC_RecordChild1,
6810 OPC_MoveParent,
6811 OPC_CheckTypeI32,
6812 OPC_CheckPatternPredicate, 23,
6813 OPC_EmitInteger32, 28,
6814 OPC_EmitRegisterI32, 0 ,
6815 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLAWB),
6816 MVT::i32, 5, 1, 2, 0, 3, 4,
6817 20, TARGET_VAL(ARMISD::SMULWT),
6818 OPC_RecordChild0,
6819 OPC_RecordChild1,
6820 OPC_MoveParent,
6821 OPC_CheckTypeI32,
6822 OPC_CheckPatternPredicate, 23,
6823 OPC_EmitInteger32, 28,
6824 OPC_EmitRegisterI32, 0 ,
6825 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLAWT),
6826 MVT::i32, 5, 1, 2, 0, 3, 4,
6827 50, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6828 OPC_RecordChild0,
6829 OPC_MoveChild1,
6830 OPC_Scope, 22,
6831 OPC_CheckValueType, MVT::i8,
6832 OPC_MoveParent,
6833 OPC_MoveParent,
6834 OPC_CheckPatternPredicate, 9,
6835 OPC_EmitInteger32, 0,
6836 OPC_EmitInteger32, 28,
6837 OPC_EmitRegisterI32, 0 ,
6838 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAB),
6839 MVT::i32, 5, 0, 1, 2, 3, 4,
6840 22,
6841 OPC_CheckValueType, MVT::i16,
6842 OPC_MoveParent,
6843 OPC_MoveParent,
6844 OPC_CheckPatternPredicate, 9,
6845 OPC_EmitInteger32, 0,
6846 OPC_EmitInteger32, 28,
6847 OPC_EmitRegisterI32, 0 ,
6848 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAH),
6849 MVT::i32, 5, 0, 1, 2, 3, 4,
6850 0,
6851 0,
6852 51,
6853 OPC_MoveChild0,
6854 OPC_SwitchOpcode , 21, TARGET_VAL(ISD::MUL),
6855 OPC_RecordChild0,
6856 OPC_RecordChild1,
6857 OPC_MoveParent,
6858 OPC_RecordChild1,
6859 OPC_CheckTypeI32,
6860 OPC_CheckPatternPredicate, 73,
6861 OPC_EmitInteger32, 28,
6862 OPC_EmitRegisterI32, 0 ,
6863 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MLA),
6864 MVT::i32, 5, 0, 1, 2, 3, 4,
6865 21, TARGET_VAL(ISD::MULHS),
6866 OPC_RecordChild0,
6867 OPC_RecordChild1,
6868 OPC_MoveParent,
6869 OPC_RecordChild1,
6870 OPC_CheckTypeI32,
6871 OPC_CheckPatternPredicate, 19,
6872 OPC_EmitInteger32, 28,
6873 OPC_EmitRegisterI32, 0 ,
6874 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMMLA),
6875 MVT::i32, 5, 1, 0, 2, 3, 4,
6876 0,
6877 101,
6878 OPC_RecordChild0,
6879 OPC_MoveChild1,
6880 OPC_SwitchOpcode , 20, TARGET_VAL(ARMISD::SMULWB),
6881 OPC_RecordChild0,
6882 OPC_RecordChild1,
6883 OPC_MoveParent,
6884 OPC_CheckTypeI32,
6885 OPC_CheckPatternPredicate, 19,
6886 OPC_EmitInteger32, 28,
6887 OPC_EmitRegisterI32, 0 ,
6888 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLAWB),
6889 MVT::i32, 5, 1, 2, 0, 3, 4,
6890 20, TARGET_VAL(ARMISD::SMULWT),
6891 OPC_RecordChild0,
6892 OPC_RecordChild1,
6893 OPC_MoveParent,
6894 OPC_CheckTypeI32,
6895 OPC_CheckPatternPredicate, 19,
6896 OPC_EmitInteger32, 28,
6897 OPC_EmitRegisterI32, 0 ,
6898 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLAWT),
6899 MVT::i32, 5, 1, 2, 0, 3, 4,
6900 48, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
6901 OPC_RecordChild0,
6902 OPC_MoveChild1,
6903 OPC_Scope, 21,
6904 OPC_CheckValueType, MVT::i8,
6905 OPC_MoveParent,
6906 OPC_MoveParent,
6907 OPC_CheckPatternPredicate5,
6908 OPC_EmitInteger32, 0,
6909 OPC_EmitInteger32, 28,
6910 OPC_EmitRegisterI32, 0 ,
6911 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAB),
6912 MVT::i32, 5, 0, 1, 2, 3, 4,
6913 21,
6914 OPC_CheckValueType, MVT::i16,
6915 OPC_MoveParent,
6916 OPC_MoveParent,
6917 OPC_CheckPatternPredicate5,
6918 OPC_EmitInteger32, 0,
6919 OPC_EmitInteger32, 28,
6920 OPC_EmitRegisterI32, 0 ,
6921 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
6922 MVT::i32, 5, 0, 1, 2, 3, 4,
6923 0,
6924 0,
6925 116|128,4,
6926 OPC_MoveChild0,
6927 OPC_SwitchOpcode , 72, TARGET_VAL(ARMISD::VADDVs),
6928 OPC_RecordChild0,
6929 OPC_Scope, 22,
6930 OPC_CheckChild0Type, MVT::v16i8,
6931 OPC_MoveParent,
6932 OPC_RecordChild1,
6933 OPC_CheckTypeI32,
6934 OPC_CheckPatternPredicate0,
6935 OPC_EmitInteger32, 0,
6936 OPC_EmitRegisterI32, 0 ,
6937 OPC_EmitRegisterI32, 0 ,
6938 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs8acc),
6939 MVT::i32, 5, 1, 0, 2, 3, 4,
6940 22,
6941 OPC_CheckChild0Type, MVT::v8i16,
6942 OPC_MoveParent,
6943 OPC_RecordChild1,
6944 OPC_CheckTypeI32,
6945 OPC_CheckPatternPredicate0,
6946 OPC_EmitInteger32, 0,
6947 OPC_EmitRegisterI32, 0 ,
6948 OPC_EmitRegisterI32, 0 ,
6949 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs16acc),
6950 MVT::i32, 5, 1, 0, 2, 3, 4,
6951 22,
6952 OPC_CheckChild0Type, MVT::v4i32,
6953 OPC_MoveParent,
6954 OPC_RecordChild1,
6955 OPC_CheckTypeI32,
6956 OPC_CheckPatternPredicate0,
6957 OPC_EmitInteger32, 0,
6958 OPC_EmitRegisterI32, 0 ,
6959 OPC_EmitRegisterI32, 0 ,
6960 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs32acc),
6961 MVT::i32, 5, 1, 0, 2, 3, 4,
6962 0,
6963 75, TARGET_VAL(ARMISD::VADDVps),
6964 OPC_RecordChild0,
6965 OPC_Scope, 23,
6966 OPC_CheckChild0Type, MVT::v16i8,
6967 OPC_RecordChild1,
6968 OPC_CheckChild1Type, MVT::v16i1,
6969 OPC_MoveParent,
6970 OPC_RecordChild1,
6971 OPC_CheckTypeI32,
6972 OPC_CheckPatternPredicate0,
6973 OPC_EmitInteger32, 2,
6974 OPC_EmitRegisterI32, 0 ,
6975 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs8acc),
6976 MVT::i32, 5, 2, 0, 3, 1, 4,
6977 23,
6978 OPC_CheckChild0Type, MVT::v8i16,
6979 OPC_RecordChild1,
6980 OPC_CheckChild1Type, MVT::v8i1,
6981 OPC_MoveParent,
6982 OPC_RecordChild1,
6983 OPC_CheckTypeI32,
6984 OPC_CheckPatternPredicate0,
6985 OPC_EmitInteger32, 2,
6986 OPC_EmitRegisterI32, 0 ,
6987 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs16acc),
6988 MVT::i32, 5, 2, 0, 3, 1, 4,
6989 23,
6990 OPC_CheckChild0Type, MVT::v4i32,
6991 OPC_RecordChild1,
6992 OPC_CheckChild1Type, MVT::v4i1,
6993 OPC_MoveParent,
6994 OPC_RecordChild1,
6995 OPC_CheckTypeI32,
6996 OPC_CheckPatternPredicate0,
6997 OPC_EmitInteger32, 2,
6998 OPC_EmitRegisterI32, 0 ,
6999 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs32acc),
7000 MVT::i32, 5, 2, 0, 3, 1, 4,
7001 0,
7002 72, TARGET_VAL(ISD::VECREDUCE_ADD),
7003 OPC_RecordChild0,
7004 OPC_Scope, 22,
7005 OPC_CheckChild0Type, MVT::v16i8,
7006 OPC_MoveParent,
7007 OPC_RecordChild1,
7008 OPC_CheckTypeI32,
7009 OPC_CheckPatternPredicate0,
7010 OPC_EmitInteger32, 0,
7011 OPC_EmitRegisterI32, 0 ,
7012 OPC_EmitRegisterI32, 0 ,
7013 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8acc),
7014 MVT::i32, 5, 1, 0, 2, 3, 4,
7015 22,
7016 OPC_CheckChild0Type, MVT::v8i16,
7017 OPC_MoveParent,
7018 OPC_RecordChild1,
7019 OPC_CheckTypeI32,
7020 OPC_CheckPatternPredicate0,
7021 OPC_EmitInteger32, 0,
7022 OPC_EmitRegisterI32, 0 ,
7023 OPC_EmitRegisterI32, 0 ,
7024 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16acc),
7025 MVT::i32, 5, 1, 0, 2, 3, 4,
7026 22,
7027 OPC_CheckChild0Type, MVT::v4i32,
7028 OPC_MoveParent,
7029 OPC_RecordChild1,
7030 OPC_CheckTypeI32,
7031 OPC_CheckPatternPredicate0,
7032 OPC_EmitInteger32, 0,
7033 OPC_EmitRegisterI32, 0 ,
7034 OPC_EmitRegisterI32, 0 ,
7035 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32acc),
7036 MVT::i32, 5, 1, 0, 2, 3, 4,
7037 0,
7038 72, TARGET_VAL(ARMISD::VADDVu),
7039 OPC_RecordChild0,
7040 OPC_Scope, 22,
7041 OPC_CheckChild0Type, MVT::v16i8,
7042 OPC_MoveParent,
7043 OPC_RecordChild1,
7044 OPC_CheckTypeI32,
7045 OPC_CheckPatternPredicate0,
7046 OPC_EmitInteger32, 0,
7047 OPC_EmitRegisterI32, 0 ,
7048 OPC_EmitRegisterI32, 0 ,
7049 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8acc),
7050 MVT::i32, 5, 1, 0, 2, 3, 4,
7051 22,
7052 OPC_CheckChild0Type, MVT::v8i16,
7053 OPC_MoveParent,
7054 OPC_RecordChild1,
7055 OPC_CheckTypeI32,
7056 OPC_CheckPatternPredicate0,
7057 OPC_EmitInteger32, 0,
7058 OPC_EmitRegisterI32, 0 ,
7059 OPC_EmitRegisterI32, 0 ,
7060 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16acc),
7061 MVT::i32, 5, 1, 0, 2, 3, 4,
7062 22,
7063 OPC_CheckChild0Type, MVT::v4i32,
7064 OPC_MoveParent,
7065 OPC_RecordChild1,
7066 OPC_CheckTypeI32,
7067 OPC_CheckPatternPredicate0,
7068 OPC_EmitInteger32, 0,
7069 OPC_EmitRegisterI32, 0 ,
7070 OPC_EmitRegisterI32, 0 ,
7071 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32acc),
7072 MVT::i32, 5, 1, 0, 2, 3, 4,
7073 0,
7074 75, TARGET_VAL(ARMISD::VADDVpu),
7075 OPC_RecordChild0,
7076 OPC_Scope, 23,
7077 OPC_CheckChild0Type, MVT::v16i8,
7078 OPC_RecordChild1,
7079 OPC_CheckChild1Type, MVT::v16i1,
7080 OPC_MoveParent,
7081 OPC_RecordChild1,
7082 OPC_CheckTypeI32,
7083 OPC_CheckPatternPredicate0,
7084 OPC_EmitInteger32, 2,
7085 OPC_EmitRegisterI32, 0 ,
7086 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8acc),
7087 MVT::i32, 5, 2, 0, 3, 1, 4,
7088 23,
7089 OPC_CheckChild0Type, MVT::v8i16,
7090 OPC_RecordChild1,
7091 OPC_CheckChild1Type, MVT::v8i1,
7092 OPC_MoveParent,
7093 OPC_RecordChild1,
7094 OPC_CheckTypeI32,
7095 OPC_CheckPatternPredicate0,
7096 OPC_EmitInteger32, 2,
7097 OPC_EmitRegisterI32, 0 ,
7098 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16acc),
7099 MVT::i32, 5, 2, 0, 3, 1, 4,
7100 23,
7101 OPC_CheckChild0Type, MVT::v4i32,
7102 OPC_RecordChild1,
7103 OPC_CheckChild1Type, MVT::v4i1,
7104 OPC_MoveParent,
7105 OPC_RecordChild1,
7106 OPC_CheckTypeI32,
7107 OPC_CheckPatternPredicate0,
7108 OPC_EmitInteger32, 2,
7109 OPC_EmitRegisterI32, 0 ,
7110 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32acc),
7111 MVT::i32, 5, 2, 0, 3, 1, 4,
7112 0,
7113 57, TARGET_VAL(ARMISD::VMLAVs),
7114 OPC_RecordChild0,
7115 OPC_Scope, 26,
7116 OPC_CheckChild0Type, MVT::v8i16,
7117 OPC_RecordChild1,
7118 OPC_CheckChild1Type, MVT::v8i16,
7119 OPC_MoveParent,
7120 OPC_RecordChild1,
7121 OPC_CheckTypeI32,
7122 OPC_CheckPatternPredicate0,
7123 OPC_EmitInteger32, 0,
7124 OPC_EmitRegisterI32, 0 ,
7125 OPC_EmitRegisterI32, 0 ,
7126 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas16),
7127 MVT::i32, 6, 2, 0, 1, 3, 4, 5,
7128 26,
7129 OPC_CheckChild0Type, MVT::v16i8,
7130 OPC_RecordChild1,
7131 OPC_CheckChild1Type, MVT::v16i8,
7132 OPC_MoveParent,
7133 OPC_RecordChild1,
7134 OPC_CheckTypeI32,
7135 OPC_CheckPatternPredicate0,
7136 OPC_EmitInteger32, 0,
7137 OPC_EmitRegisterI32, 0 ,
7138 OPC_EmitRegisterI32, 0 ,
7139 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas8),
7140 MVT::i32, 6, 2, 0, 1, 3, 4, 5,
7141 0,
7142 57, TARGET_VAL(ARMISD::VMLAVu),
7143 OPC_RecordChild0,
7144 OPC_Scope, 26,
7145 OPC_CheckChild0Type, MVT::v8i16,
7146 OPC_RecordChild1,
7147 OPC_CheckChild1Type, MVT::v8i16,
7148 OPC_MoveParent,
7149 OPC_RecordChild1,
7150 OPC_CheckTypeI32,
7151 OPC_CheckPatternPredicate0,
7152 OPC_EmitInteger32, 0,
7153 OPC_EmitRegisterI32, 0 ,
7154 OPC_EmitRegisterI32, 0 ,
7155 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau16),
7156 MVT::i32, 6, 2, 0, 1, 3, 4, 5,
7157 26,
7158 OPC_CheckChild0Type, MVT::v16i8,
7159 OPC_RecordChild1,
7160 OPC_CheckChild1Type, MVT::v16i8,
7161 OPC_MoveParent,
7162 OPC_RecordChild1,
7163 OPC_CheckTypeI32,
7164 OPC_CheckPatternPredicate0,
7165 OPC_EmitInteger32, 0,
7166 OPC_EmitRegisterI32, 0 ,
7167 OPC_EmitRegisterI32, 0 ,
7168 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau8),
7169 MVT::i32, 6, 2, 0, 1, 3, 4, 5,
7170 0,
7171 59, TARGET_VAL(ARMISD::VMLAVps),
7172 OPC_RecordChild0,
7173 OPC_Scope, 27,
7174 OPC_CheckChild0Type, MVT::v8i16,
7175 OPC_RecordChild1,
7176 OPC_CheckChild1Type, MVT::v8i16,
7177 OPC_RecordChild2,
7178 OPC_CheckChild2Type, MVT::v8i1,
7179 OPC_MoveParent,
7180 OPC_RecordChild1,
7181 OPC_CheckTypeI32,
7182 OPC_CheckPatternPredicate0,
7183 OPC_EmitInteger32, 2,
7184 OPC_EmitRegisterI32, 0 ,
7185 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas16),
7186 MVT::i32, 6, 3, 0, 1, 4, 2, 5,
7187 27,
7188 OPC_CheckChild0Type, MVT::v16i8,
7189 OPC_RecordChild1,
7190 OPC_CheckChild1Type, MVT::v16i8,
7191 OPC_RecordChild2,
7192 OPC_CheckChild2Type, MVT::v16i1,
7193 OPC_MoveParent,
7194 OPC_RecordChild1,
7195 OPC_CheckTypeI32,
7196 OPC_CheckPatternPredicate0,
7197 OPC_EmitInteger32, 2,
7198 OPC_EmitRegisterI32, 0 ,
7199 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas8),
7200 MVT::i32, 6, 3, 0, 1, 4, 2, 5,
7201 0,
7202 59, TARGET_VAL(ARMISD::VMLAVpu),
7203 OPC_RecordChild0,
7204 OPC_Scope, 27,
7205 OPC_CheckChild0Type, MVT::v8i16,
7206 OPC_RecordChild1,
7207 OPC_CheckChild1Type, MVT::v8i16,
7208 OPC_RecordChild2,
7209 OPC_CheckChild2Type, MVT::v8i1,
7210 OPC_MoveParent,
7211 OPC_RecordChild1,
7212 OPC_CheckTypeI32,
7213 OPC_CheckPatternPredicate0,
7214 OPC_EmitInteger32, 2,
7215 OPC_EmitRegisterI32, 0 ,
7216 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau16),
7217 MVT::i32, 6, 3, 0, 1, 4, 2, 5,
7218 27,
7219 OPC_CheckChild0Type, MVT::v16i8,
7220 OPC_RecordChild1,
7221 OPC_CheckChild1Type, MVT::v16i8,
7222 OPC_RecordChild2,
7223 OPC_CheckChild2Type, MVT::v16i1,
7224 OPC_MoveParent,
7225 OPC_RecordChild1,
7226 OPC_CheckTypeI32,
7227 OPC_CheckPatternPredicate0,
7228 OPC_EmitInteger32, 2,
7229 OPC_EmitRegisterI32, 0 ,
7230 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau8),
7231 MVT::i32, 6, 3, 0, 1, 4, 2, 5,
7232 0,
7233 0,
7234 76,
7235 OPC_RecordChild0,
7236 OPC_MoveChild1,
7237 OPC_SwitchOpcode , 46, TARGET_VAL(ISD::MUL),
7238 OPC_RecordChild0,
7239 OPC_RecordChild1,
7240 OPC_MoveParent,
7241 OPC_CheckTypeI32,
7242 OPC_Scope, 19,
7243 OPC_CheckPatternPredicate, 65,
7244 OPC_EmitInteger32, 28,
7245 OPC_EmitRegisterI32, 0 ,
7246 OPC_EmitRegisterI32, 0 ,
7247 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MLA),
7248 MVT::i32, 6, 1, 2, 0, 3, 4, 5,
7249 19,
7250 OPC_CheckPatternPredicate, 66,
7251 OPC_EmitInteger32, 28,
7252 OPC_EmitRegisterI32, 0 ,
7253 OPC_EmitRegisterI32, 0 ,
7254 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MLAv5),
7255 MVT::i32, 6, 1, 2, 0, 3, 4, 5,
7256 0,
7257 20, TARGET_VAL(ISD::MULHS),
7258 OPC_RecordChild0,
7259 OPC_RecordChild1,
7260 OPC_MoveParent,
7261 OPC_CheckTypeI32,
7262 OPC_CheckPatternPredicate, 65,
7263 OPC_EmitInteger32, 28,
7264 OPC_EmitRegisterI32, 0 ,
7265 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMMLA),
7266 MVT::i32, 5, 1, 2, 0, 3, 4,
7267 0,
7268 51,
7269 OPC_MoveChild0,
7270 OPC_SwitchOpcode , 21, TARGET_VAL(ARMISD::SMULWB),
7271 OPC_RecordChild0,
7272 OPC_RecordChild1,
7273 OPC_MoveParent,
7274 OPC_RecordChild1,
7275 OPC_CheckTypeI32,
7276 OPC_CheckPatternPredicate, 23,
7277 OPC_EmitInteger32, 28,
7278 OPC_EmitRegisterI32, 0 ,
7279 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLAWB),
7280 MVT::i32, 5, 0, 1, 2, 3, 4,
7281 21, TARGET_VAL(ARMISD::SMULWT),
7282 OPC_RecordChild0,
7283 OPC_RecordChild1,
7284 OPC_MoveParent,
7285 OPC_RecordChild1,
7286 OPC_CheckTypeI32,
7287 OPC_CheckPatternPredicate, 23,
7288 OPC_EmitInteger32, 28,
7289 OPC_EmitRegisterI32, 0 ,
7290 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLAWT),
7291 MVT::i32, 5, 0, 1, 2, 3, 4,
7292 0,
7293 50,
7294 OPC_RecordChild0,
7295 OPC_MoveChild1,
7296 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::MUL),
7297 OPC_RecordChild0,
7298 OPC_RecordChild1,
7299 OPC_MoveParent,
7300 OPC_CheckTypeI32,
7301 OPC_CheckPatternPredicate, 73,
7302 OPC_EmitInteger32, 28,
7303 OPC_EmitRegisterI32, 0 ,
7304 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MLA),
7305 MVT::i32, 5, 1, 2, 0, 3, 4,
7306 20, TARGET_VAL(ISD::MULHS),
7307 OPC_RecordChild0,
7308 OPC_RecordChild1,
7309 OPC_MoveParent,
7310 OPC_CheckTypeI32,
7311 OPC_CheckPatternPredicate, 19,
7312 OPC_EmitInteger32, 28,
7313 OPC_EmitRegisterI32, 0 ,
7314 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMMLA),
7315 MVT::i32, 5, 2, 1, 0, 3, 4,
7316 0,
7317 20|128,1,
7318 OPC_MoveChild0,
7319 OPC_SwitchOpcode , 21, TARGET_VAL(ARMISD::SMULWB),
7320 OPC_RecordChild0,
7321 OPC_RecordChild1,
7322 OPC_MoveParent,
7323 OPC_RecordChild1,
7324 OPC_CheckTypeI32,
7325 OPC_CheckPatternPredicate, 19,
7326 OPC_EmitInteger32, 28,
7327 OPC_EmitRegisterI32, 0 ,
7328 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLAWB),
7329 MVT::i32, 5, 0, 1, 2, 3, 4,
7330 21, TARGET_VAL(ARMISD::SMULWT),
7331 OPC_RecordChild0,
7332 OPC_RecordChild1,
7333 OPC_MoveParent,
7334 OPC_RecordChild1,
7335 OPC_CheckTypeI32,
7336 OPC_CheckPatternPredicate, 19,
7337 OPC_EmitInteger32, 28,
7338 OPC_EmitRegisterI32, 0 ,
7339 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLAWT),
7340 MVT::i32, 5, 0, 1, 2, 3, 4,
7341 94, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
7342 OPC_RecordChild0,
7343 OPC_MoveChild1,
7344 OPC_Scope, 44,
7345 OPC_CheckValueType, MVT::i8,
7346 OPC_MoveParent,
7347 OPC_MoveParent,
7348 OPC_RecordChild1,
7349 OPC_Scope, 18,
7350 OPC_CheckPatternPredicate, 9,
7351 OPC_EmitInteger32, 0,
7352 OPC_EmitInteger32, 28,
7353 OPC_EmitRegisterI32, 0 ,
7354 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAB),
7355 MVT::i32, 5, 1, 0, 2, 3, 4,
7356 17,
7357 OPC_CheckPatternPredicate5,
7358 OPC_EmitInteger32, 0,
7359 OPC_EmitInteger32, 28,
7360 OPC_EmitRegisterI32, 0 ,
7361 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAB),
7362 MVT::i32, 5, 1, 0, 2, 3, 4,
7363 0,
7364 44,
7365 OPC_CheckValueType, MVT::i16,
7366 OPC_MoveParent,
7367 OPC_MoveParent,
7368 OPC_RecordChild1,
7369 OPC_Scope, 18,
7370 OPC_CheckPatternPredicate, 9,
7371 OPC_EmitInteger32, 0,
7372 OPC_EmitInteger32, 28,
7373 OPC_EmitRegisterI32, 0 ,
7374 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAH),
7375 MVT::i32, 5, 1, 0, 2, 3, 4,
7376 17,
7377 OPC_CheckPatternPredicate5,
7378 OPC_EmitInteger32, 0,
7379 OPC_EmitInteger32, 28,
7380 OPC_EmitRegisterI32, 0 ,
7381 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAH),
7382 MVT::i32, 5, 1, 0, 2, 3, 4,
7383 0,
7384 0,
7385 0,
7386 8|128,6,
7387 OPC_RecordChild0,
7388 OPC_Scope, 93|128,4,
7389 OPC_MoveChild1,
7390 OPC_SwitchOpcode , 69, TARGET_VAL(ISD::VECREDUCE_ADD),
7391 OPC_RecordChild0,
7392 OPC_Scope, 21,
7393 OPC_CheckChild0Type, MVT::v16i8,
7394 OPC_MoveParent,
7395 OPC_CheckTypeI32,
7396 OPC_CheckPatternPredicate0,
7397 OPC_EmitInteger32, 0,
7398 OPC_EmitRegisterI32, 0 ,
7399 OPC_EmitRegisterI32, 0 ,
7400 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8acc),
7401 MVT::i32, 5, 0, 1, 2, 3, 4,
7402 21,
7403 OPC_CheckChild0Type, MVT::v8i16,
7404 OPC_MoveParent,
7405 OPC_CheckTypeI32,
7406 OPC_CheckPatternPredicate0,
7407 OPC_EmitInteger32, 0,
7408 OPC_EmitRegisterI32, 0 ,
7409 OPC_EmitRegisterI32, 0 ,
7410 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16acc),
7411 MVT::i32, 5, 0, 1, 2, 3, 4,
7412 21,
7413 OPC_CheckChild0Type, MVT::v4i32,
7414 OPC_MoveParent,
7415 OPC_CheckTypeI32,
7416 OPC_CheckPatternPredicate0,
7417 OPC_EmitInteger32, 0,
7418 OPC_EmitRegisterI32, 0 ,
7419 OPC_EmitRegisterI32, 0 ,
7420 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32acc),
7421 MVT::i32, 5, 0, 1, 2, 3, 4,
7422 0,
7423 69, TARGET_VAL(ARMISD::VADDVu),
7424 OPC_RecordChild0,
7425 OPC_Scope, 21,
7426 OPC_CheckChild0Type, MVT::v16i8,
7427 OPC_MoveParent,
7428 OPC_CheckTypeI32,
7429 OPC_CheckPatternPredicate0,
7430 OPC_EmitInteger32, 0,
7431 OPC_EmitRegisterI32, 0 ,
7432 OPC_EmitRegisterI32, 0 ,
7433 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8acc),
7434 MVT::i32, 5, 0, 1, 2, 3, 4,
7435 21,
7436 OPC_CheckChild0Type, MVT::v8i16,
7437 OPC_MoveParent,
7438 OPC_CheckTypeI32,
7439 OPC_CheckPatternPredicate0,
7440 OPC_EmitInteger32, 0,
7441 OPC_EmitRegisterI32, 0 ,
7442 OPC_EmitRegisterI32, 0 ,
7443 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16acc),
7444 MVT::i32, 5, 0, 1, 2, 3, 4,
7445 21,
7446 OPC_CheckChild0Type, MVT::v4i32,
7447 OPC_MoveParent,
7448 OPC_CheckTypeI32,
7449 OPC_CheckPatternPredicate0,
7450 OPC_EmitInteger32, 0,
7451 OPC_EmitRegisterI32, 0 ,
7452 OPC_EmitRegisterI32, 0 ,
7453 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32acc),
7454 MVT::i32, 5, 0, 1, 2, 3, 4,
7455 0,
7456 72, TARGET_VAL(ARMISD::VADDVpu),
7457 OPC_RecordChild0,
7458 OPC_Scope, 22,
7459 OPC_CheckChild0Type, MVT::v16i8,
7460 OPC_RecordChild1,
7461 OPC_CheckChild1Type, MVT::v16i1,
7462 OPC_MoveParent,
7463 OPC_CheckTypeI32,
7464 OPC_CheckPatternPredicate0,
7465 OPC_EmitInteger32, 2,
7466 OPC_EmitRegisterI32, 0 ,
7467 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8acc),
7468 MVT::i32, 5, 0, 1, 3, 2, 4,
7469 22,
7470 OPC_CheckChild0Type, MVT::v8i16,
7471 OPC_RecordChild1,
7472 OPC_CheckChild1Type, MVT::v8i1,
7473 OPC_MoveParent,
7474 OPC_CheckTypeI32,
7475 OPC_CheckPatternPredicate0,
7476 OPC_EmitInteger32, 2,
7477 OPC_EmitRegisterI32, 0 ,
7478 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16acc),
7479 MVT::i32, 5, 0, 1, 3, 2, 4,
7480 22,
7481 OPC_CheckChild0Type, MVT::v4i32,
7482 OPC_RecordChild1,
7483 OPC_CheckChild1Type, MVT::v4i1,
7484 OPC_MoveParent,
7485 OPC_CheckTypeI32,
7486 OPC_CheckPatternPredicate0,
7487 OPC_EmitInteger32, 2,
7488 OPC_EmitRegisterI32, 0 ,
7489 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32acc),
7490 MVT::i32, 5, 0, 1, 3, 2, 4,
7491 0,
7492 69, TARGET_VAL(ARMISD::VADDVs),
7493 OPC_RecordChild0,
7494 OPC_Scope, 21,
7495 OPC_CheckChild0Type, MVT::v16i8,
7496 OPC_MoveParent,
7497 OPC_CheckTypeI32,
7498 OPC_CheckPatternPredicate0,
7499 OPC_EmitInteger32, 0,
7500 OPC_EmitRegisterI32, 0 ,
7501 OPC_EmitRegisterI32, 0 ,
7502 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs8acc),
7503 MVT::i32, 5, 0, 1, 2, 3, 4,
7504 21,
7505 OPC_CheckChild0Type, MVT::v8i16,
7506 OPC_MoveParent,
7507 OPC_CheckTypeI32,
7508 OPC_CheckPatternPredicate0,
7509 OPC_EmitInteger32, 0,
7510 OPC_EmitRegisterI32, 0 ,
7511 OPC_EmitRegisterI32, 0 ,
7512 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs16acc),
7513 MVT::i32, 5, 0, 1, 2, 3, 4,
7514 21,
7515 OPC_CheckChild0Type, MVT::v4i32,
7516 OPC_MoveParent,
7517 OPC_CheckTypeI32,
7518 OPC_CheckPatternPredicate0,
7519 OPC_EmitInteger32, 0,
7520 OPC_EmitRegisterI32, 0 ,
7521 OPC_EmitRegisterI32, 0 ,
7522 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs32acc),
7523 MVT::i32, 5, 0, 1, 2, 3, 4,
7524 0,
7525 72, TARGET_VAL(ARMISD::VADDVps),
7526 OPC_RecordChild0,
7527 OPC_Scope, 22,
7528 OPC_CheckChild0Type, MVT::v16i8,
7529 OPC_RecordChild1,
7530 OPC_CheckChild1Type, MVT::v16i1,
7531 OPC_MoveParent,
7532 OPC_CheckTypeI32,
7533 OPC_CheckPatternPredicate0,
7534 OPC_EmitInteger32, 2,
7535 OPC_EmitRegisterI32, 0 ,
7536 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs8acc),
7537 MVT::i32, 5, 0, 1, 3, 2, 4,
7538 22,
7539 OPC_CheckChild0Type, MVT::v8i16,
7540 OPC_RecordChild1,
7541 OPC_CheckChild1Type, MVT::v8i1,
7542 OPC_MoveParent,
7543 OPC_CheckTypeI32,
7544 OPC_CheckPatternPredicate0,
7545 OPC_EmitInteger32, 2,
7546 OPC_EmitRegisterI32, 0 ,
7547 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs16acc),
7548 MVT::i32, 5, 0, 1, 3, 2, 4,
7549 22,
7550 OPC_CheckChild0Type, MVT::v4i32,
7551 OPC_RecordChild1,
7552 OPC_CheckChild1Type, MVT::v4i1,
7553 OPC_MoveParent,
7554 OPC_CheckTypeI32,
7555 OPC_CheckPatternPredicate0,
7556 OPC_EmitInteger32, 2,
7557 OPC_EmitRegisterI32, 0 ,
7558 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs32acc),
7559 MVT::i32, 5, 0, 1, 3, 2, 4,
7560 0,
7561 55, TARGET_VAL(ARMISD::VMLAVs),
7562 OPC_RecordChild0,
7563 OPC_Scope, 25,
7564 OPC_CheckChild0Type, MVT::v8i16,
7565 OPC_RecordChild1,
7566 OPC_CheckChild1Type, MVT::v8i16,
7567 OPC_MoveParent,
7568 OPC_CheckTypeI32,
7569 OPC_CheckPatternPredicate0,
7570 OPC_EmitInteger32, 0,
7571 OPC_EmitRegisterI32, 0 ,
7572 OPC_EmitRegisterI32, 0 ,
7573 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas16),
7574 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
7575 25,
7576 OPC_CheckChild0Type, MVT::v16i8,
7577 OPC_RecordChild1,
7578 OPC_CheckChild1Type, MVT::v16i8,
7579 OPC_MoveParent,
7580 OPC_CheckTypeI32,
7581 OPC_CheckPatternPredicate0,
7582 OPC_EmitInteger32, 0,
7583 OPC_EmitRegisterI32, 0 ,
7584 OPC_EmitRegisterI32, 0 ,
7585 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas8),
7586 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
7587 0,
7588 55, TARGET_VAL(ARMISD::VMLAVu),
7589 OPC_RecordChild0,
7590 OPC_Scope, 25,
7591 OPC_CheckChild0Type, MVT::v8i16,
7592 OPC_RecordChild1,
7593 OPC_CheckChild1Type, MVT::v8i16,
7594 OPC_MoveParent,
7595 OPC_CheckTypeI32,
7596 OPC_CheckPatternPredicate0,
7597 OPC_EmitInteger32, 0,
7598 OPC_EmitRegisterI32, 0 ,
7599 OPC_EmitRegisterI32, 0 ,
7600 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau16),
7601 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
7602 25,
7603 OPC_CheckChild0Type, MVT::v16i8,
7604 OPC_RecordChild1,
7605 OPC_CheckChild1Type, MVT::v16i8,
7606 OPC_MoveParent,
7607 OPC_CheckTypeI32,
7608 OPC_CheckPatternPredicate0,
7609 OPC_EmitInteger32, 0,
7610 OPC_EmitRegisterI32, 0 ,
7611 OPC_EmitRegisterI32, 0 ,
7612 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau8),
7613 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
7614 0,
7615 57, TARGET_VAL(ARMISD::VMLAVps),
7616 OPC_RecordChild0,
7617 OPC_Scope, 26,
7618 OPC_CheckChild0Type, MVT::v8i16,
7619 OPC_RecordChild1,
7620 OPC_CheckChild1Type, MVT::v8i16,
7621 OPC_RecordChild2,
7622 OPC_CheckChild2Type, MVT::v8i1,
7623 OPC_MoveParent,
7624 OPC_CheckTypeI32,
7625 OPC_CheckPatternPredicate0,
7626 OPC_EmitInteger32, 2,
7627 OPC_EmitRegisterI32, 0 ,
7628 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas16),
7629 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
7630 26,
7631 OPC_CheckChild0Type, MVT::v16i8,
7632 OPC_RecordChild1,
7633 OPC_CheckChild1Type, MVT::v16i8,
7634 OPC_RecordChild2,
7635 OPC_CheckChild2Type, MVT::v16i1,
7636 OPC_MoveParent,
7637 OPC_CheckTypeI32,
7638 OPC_CheckPatternPredicate0,
7639 OPC_EmitInteger32, 2,
7640 OPC_EmitRegisterI32, 0 ,
7641 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas8),
7642 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
7643 0,
7644 57, TARGET_VAL(ARMISD::VMLAVpu),
7645 OPC_RecordChild0,
7646 OPC_Scope, 26,
7647 OPC_CheckChild0Type, MVT::v8i16,
7648 OPC_RecordChild1,
7649 OPC_CheckChild1Type, MVT::v8i16,
7650 OPC_RecordChild2,
7651 OPC_CheckChild2Type, MVT::v8i1,
7652 OPC_MoveParent,
7653 OPC_CheckTypeI32,
7654 OPC_CheckPatternPredicate0,
7655 OPC_EmitInteger32, 2,
7656 OPC_EmitRegisterI32, 0 ,
7657 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau16),
7658 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
7659 26,
7660 OPC_CheckChild0Type, MVT::v16i8,
7661 OPC_RecordChild1,
7662 OPC_CheckChild1Type, MVT::v16i8,
7663 OPC_RecordChild2,
7664 OPC_CheckChild2Type, MVT::v16i1,
7665 OPC_MoveParent,
7666 OPC_CheckTypeI32,
7667 OPC_CheckPatternPredicate0,
7668 OPC_EmitInteger32, 2,
7669 OPC_EmitRegisterI32, 0 ,
7670 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau8),
7671 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
7672 0,
7673 0,
7674 73,
7675 OPC_RecordChild1,
7676 OPC_CheckTypeI32,
7677 OPC_Scope, 17,
7678 OPC_CheckPatternPredicate3,
7679 OPC_EmitInteger32, 28,
7680 OPC_EmitRegisterI32, 0 ,
7681 OPC_EmitRegisterI32, 0 ,
7682 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ADDrr),
7683 MVT::i32, 5, 0, 1, 2, 3, 4,
7684 18,
7685 OPC_CheckPatternPredicate, 10,
7686 OPC_EmitRegisterI32, ARM::CPSR,
7687 OPC_EmitInteger32, 28,
7688 OPC_EmitRegisterI32, 0 ,
7689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tADDrr),
7690 MVT::i32, 5, 2, 0, 1, 3, 4,
7691 31,
7692 OPC_CheckPatternPredicate4,
7693 OPC_EmitInteger32, 28,
7694 OPC_EmitRegisterI32, 0 ,
7695 OPC_EmitRegisterI32, 0 ,
7696 OPC_Scope, 10,
7697 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ADDrr),
7698 MVT::i32, 5, 0, 1, 2, 3, 4,
7699 10,
7700 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ADDrr),
7701 MVT::i32, 5, 1, 0, 2, 3, 4,
7702 0,
7703 0,
7704 91,
7705 OPC_MoveChild1,
7706 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
7707 OPC_RecordChild0,
7708 OPC_Scope, 41,
7709 OPC_CheckChild0Type, MVT::v16i1,
7710 OPC_MoveChild1,
7711 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
7712 OPC_RecordChild0,
7713 OPC_CheckChild0TypeI32,
7714 OPC_MoveSibling2,
7715 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
7716 OPC_MoveChild0,
7717 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7718 OPC_CheckChild0Integer, 0,
7719 OPC_CheckType, MVT::v4i32,
7720 OPC_MoveParent,
7721 OPC_MoveParent,
7722 OPC_MoveParent,
7723 OPC_CheckType, MVT::v16i8,
7724 OPC_CheckPatternPredicate0,
7725 OPC_EmitInteger32, 2,
7726 OPC_EmitRegisterI32, 0 ,
7727 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i8),
7728 MVT::v16i8, 6, 0, 2, 3, 1, 4, 0,
7729 41,
7730 OPC_CheckChild0Type, MVT::v8i1,
7731 OPC_MoveChild1,
7732 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
7733 OPC_RecordChild0,
7734 OPC_CheckChild0TypeI32,
7735 OPC_MoveSibling2,
7736 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
7737 OPC_MoveChild0,
7738 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7739 OPC_CheckChild0Integer, 0,
7740 OPC_CheckType, MVT::v4i32,
7741 OPC_MoveParent,
7742 OPC_MoveParent,
7743 OPC_MoveParent,
7744 OPC_CheckType, MVT::v8i16,
7745 OPC_CheckPatternPredicate0,
7746 OPC_EmitInteger32, 2,
7747 OPC_EmitRegisterI32, 0 ,
7748 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i16),
7749 MVT::v8i16, 6, 0, 2, 3, 1, 4, 0,
7750 0,
7751 0,
7752 93,
7753 OPC_MoveChild0,
7754 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
7755 OPC_RecordChild0,
7756 OPC_Scope, 42,
7757 OPC_CheckChild0Type, MVT::v16i1,
7758 OPC_MoveChild1,
7759 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
7760 OPC_RecordChild0,
7761 OPC_CheckChild0TypeI32,
7762 OPC_MoveSibling2,
7763 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
7764 OPC_MoveChild0,
7765 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7766 OPC_CheckChild0Integer, 0,
7767 OPC_CheckType, MVT::v4i32,
7768 OPC_MoveParent,
7769 OPC_MoveParent,
7770 OPC_MoveParent,
7771 OPC_RecordChild1,
7772 OPC_CheckType, MVT::v16i8,
7773 OPC_CheckPatternPredicate0,
7774 OPC_EmitInteger32, 2,
7775 OPC_EmitRegisterI32, 0 ,
7776 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i8),
7777 MVT::v16i8, 6, 2, 1, 3, 0, 4, 2,
7778 42,
7779 OPC_CheckChild0Type, MVT::v8i1,
7780 OPC_MoveChild1,
7781 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
7782 OPC_RecordChild0,
7783 OPC_CheckChild0TypeI32,
7784 OPC_MoveSibling2,
7785 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
7786 OPC_MoveChild0,
7787 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7788 OPC_CheckChild0Integer, 0,
7789 OPC_CheckType, MVT::v4i32,
7790 OPC_MoveParent,
7791 OPC_MoveParent,
7792 OPC_MoveParent,
7793 OPC_RecordChild1,
7794 OPC_CheckType, MVT::v8i16,
7795 OPC_CheckPatternPredicate0,
7796 OPC_EmitInteger32, 2,
7797 OPC_EmitRegisterI32, 0 ,
7798 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i16),
7799 MVT::v8i16, 6, 2, 1, 3, 0, 4, 2,
7800 0,
7801 117,
7802 OPC_RecordChild0,
7803 OPC_MoveChild1,
7804 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
7805 OPC_RecordChild0,
7806 OPC_Scope, 36,
7807 OPC_CheckChild0Type, MVT::v16i1,
7808 OPC_RecordChild1,
7809 OPC_MoveChild2,
7810 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
7811 OPC_MoveChild0,
7812 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7813 OPC_CheckChild0Integer, 0,
7814 OPC_CheckType, MVT::v4i32,
7815 OPC_MoveParent,
7816 OPC_MoveParent,
7817 OPC_MoveParent,
7818 OPC_CheckType, MVT::v16i8,
7819 OPC_CheckPatternPredicate0,
7820 OPC_EmitInteger32, 2,
7821 OPC_EmitRegisterI32, 0 ,
7822 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi8),
7823 MVT::v16i8, 6, 0, 2, 3, 1, 4, 0,
7824 36,
7825 OPC_CheckChild0Type, MVT::v8i1,
7826 OPC_RecordChild1,
7827 OPC_MoveChild2,
7828 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
7829 OPC_MoveChild0,
7830 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7831 OPC_CheckChild0Integer, 0,
7832 OPC_CheckType, MVT::v4i32,
7833 OPC_MoveParent,
7834 OPC_MoveParent,
7835 OPC_MoveParent,
7836 OPC_CheckType, MVT::v8i16,
7837 OPC_CheckPatternPredicate0,
7838 OPC_EmitInteger32, 2,
7839 OPC_EmitRegisterI32, 0 ,
7840 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi16),
7841 MVT::v8i16, 6, 0, 2, 3, 1, 4, 0,
7842 34,
7843 OPC_CheckChild0Type, MVT::v4i1,
7844 OPC_MoveChild1,
7845 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
7846 OPC_RecordChild0,
7847 OPC_CheckChild0TypeI32,
7848 OPC_MoveSibling2,
7849 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7850 OPC_CheckChild0Integer, 0,
7851 OPC_MoveParent,
7852 OPC_MoveParent,
7853 OPC_CheckType, MVT::v4i32,
7854 OPC_CheckPatternPredicate0,
7855 OPC_EmitInteger32, 2,
7856 OPC_EmitRegisterI32, 0 ,
7857 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i32),
7858 MVT::v4i32, 6, 0, 2, 3, 1, 4, 0,
7859 0,
7860 119,
7861 OPC_MoveChild0,
7862 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
7863 OPC_RecordChild0,
7864 OPC_Scope, 37,
7865 OPC_CheckChild0Type, MVT::v16i1,
7866 OPC_RecordChild1,
7867 OPC_MoveChild2,
7868 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
7869 OPC_MoveChild0,
7870 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7871 OPC_CheckChild0Integer, 0,
7872 OPC_CheckType, MVT::v4i32,
7873 OPC_MoveParent,
7874 OPC_MoveParent,
7875 OPC_MoveParent,
7876 OPC_RecordChild1,
7877 OPC_CheckType, MVT::v16i8,
7878 OPC_CheckPatternPredicate0,
7879 OPC_EmitInteger32, 2,
7880 OPC_EmitRegisterI32, 0 ,
7881 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi8),
7882 MVT::v16i8, 6, 2, 1, 3, 0, 4, 2,
7883 37,
7884 OPC_CheckChild0Type, MVT::v8i1,
7885 OPC_RecordChild1,
7886 OPC_MoveChild2,
7887 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
7888 OPC_MoveChild0,
7889 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7890 OPC_CheckChild0Integer, 0,
7891 OPC_CheckType, MVT::v4i32,
7892 OPC_MoveParent,
7893 OPC_MoveParent,
7894 OPC_MoveParent,
7895 OPC_RecordChild1,
7896 OPC_CheckType, MVT::v8i16,
7897 OPC_CheckPatternPredicate0,
7898 OPC_EmitInteger32, 2,
7899 OPC_EmitRegisterI32, 0 ,
7900 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi16),
7901 MVT::v8i16, 6, 2, 1, 3, 0, 4, 2,
7902 35,
7903 OPC_CheckChild0Type, MVT::v4i1,
7904 OPC_MoveChild1,
7905 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
7906 OPC_RecordChild0,
7907 OPC_CheckChild0TypeI32,
7908 OPC_MoveSibling2,
7909 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7910 OPC_CheckChild0Integer, 0,
7911 OPC_MoveParent,
7912 OPC_MoveParent,
7913 OPC_RecordChild1,
7914 OPC_CheckType, MVT::v4i32,
7915 OPC_CheckPatternPredicate0,
7916 OPC_EmitInteger32, 2,
7917 OPC_EmitRegisterI32, 0 ,
7918 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i32),
7919 MVT::v4i32, 6, 2, 1, 3, 0, 4, 2,
7920 0,
7921 35,
7922 OPC_RecordChild0,
7923 OPC_MoveChild1,
7924 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
7925 OPC_RecordChild0,
7926 OPC_CheckChild0Type, MVT::v4i1,
7927 OPC_RecordChild1,
7928 OPC_MoveChild2,
7929 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7930 OPC_CheckChild0Integer, 0,
7931 OPC_MoveParent,
7932 OPC_MoveParent,
7933 OPC_CheckType, MVT::v4i32,
7934 OPC_CheckPatternPredicate0,
7935 OPC_EmitInteger32, 2,
7936 OPC_EmitRegisterI32, 0 ,
7937 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi32),
7938 MVT::v4i32, 6, 0, 2, 3, 1, 4, 0,
7939 35,
7940 OPC_MoveChild0,
7941 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
7942 OPC_RecordChild0,
7943 OPC_CheckChild0Type, MVT::v4i1,
7944 OPC_RecordChild1,
7945 OPC_MoveChild2,
7946 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
7947 OPC_CheckChild0Integer, 0,
7948 OPC_MoveParent,
7949 OPC_MoveParent,
7950 OPC_RecordChild1,
7951 OPC_CheckType, MVT::v4i32,
7952 OPC_CheckPatternPredicate0,
7953 OPC_EmitInteger32, 2,
7954 OPC_EmitRegisterI32, 0 ,
7955 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi32),
7956 MVT::v4i32, 6, 2, 1, 3, 0, 4, 2,
7957 61|128,2,
7958 OPC_RecordChild0,
7959 OPC_MoveChild1,
7960 OPC_SwitchOpcode , 21|128,1, TARGET_VAL(ISD::MUL),
7961 OPC_Scope, 110,
7962 OPC_RecordChild0,
7963 OPC_MoveChild1,
7964 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
7965 OPC_RecordChild0,
7966 OPC_Scope, 50,
7967 OPC_CheckChild0Type, MVT::v4i16,
7968 OPC_RecordChild1,
7969 OPC_MoveChild1,
7970 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
7971 OPC_MoveParent,
7972 OPC_MoveParent,
7973 OPC_MoveParent,
7974 OPC_SwitchType , 17, MVT::v4i16,
7975 OPC_CheckPatternPredicate1,
7976 OPC_EmitConvertToTarget3,
7977 OPC_EmitInteger32, 28,
7978 OPC_EmitRegisterI32, 0 ,
7979 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i16),
7980 MVT::v4i16, 6, 0, 1, 2, 4, 5, 6,
7981 17, MVT::v8i16,
7982 OPC_CheckPatternPredicate1,
7983 OPC_EmitConvertToTarget3,
7984 OPC_EmitInteger32, 28,
7985 OPC_EmitRegisterI32, 0 ,
7986 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv8i16),
7987 MVT::v8i16, 6, 0, 1, 2, 4, 5, 6,
7988 0,
7989 50,
7990 OPC_CheckChild0Type, MVT::v2i32,
7991 OPC_RecordChild1,
7992 OPC_MoveChild1,
7993 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
7994 OPC_MoveParent,
7995 OPC_MoveParent,
7996 OPC_MoveParent,
7997 OPC_SwitchType , 17, MVT::v2i32,
7998 OPC_CheckPatternPredicate1,
7999 OPC_EmitConvertToTarget3,
8000 OPC_EmitInteger32, 28,
8001 OPC_EmitRegisterI32, 0 ,
8002 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv2i32),
8003 MVT::v2i32, 6, 0, 1, 2, 4, 5, 6,
8004 17, MVT::v4i32,
8005 OPC_CheckPatternPredicate1,
8006 OPC_EmitConvertToTarget3,
8007 OPC_EmitInteger32, 28,
8008 OPC_EmitRegisterI32, 0 ,
8009 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i32),
8010 MVT::v4i32, 6, 0, 1, 2, 4, 5, 6,
8011 0,
8012 0,
8013 35,
8014 OPC_MoveChild0,
8015 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8016 OPC_RecordChild0,
8017 OPC_CheckChild0Type, MVT::v4i16,
8018 OPC_RecordChild1,
8019 OPC_MoveChild1,
8020 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8021 OPC_MoveParent,
8022 OPC_MoveParent,
8023 OPC_RecordChild1,
8024 OPC_MoveParent,
8025 OPC_CheckType, MVT::v4i16,
8026 OPC_CheckPatternPredicate1,
8027 OPC_EmitConvertToTarget2,
8028 OPC_EmitInteger32, 28,
8029 OPC_EmitRegisterI32, 0 ,
8030 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i16),
8031 MVT::v4i16, 6, 0, 3, 1, 4, 5, 6,
8032 0,
8033 77, TARGET_VAL(ARMISD::VMULLs),
8034 OPC_RecordChild0,
8035 OPC_Scope, 36,
8036 OPC_CheckChild0Type, MVT::v4i16,
8037 OPC_MoveChild1,
8038 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8039 OPC_RecordChild0,
8040 OPC_CheckChild0Type, MVT::v4i16,
8041 OPC_RecordChild1,
8042 OPC_MoveChild1,
8043 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8044 OPC_MoveParent,
8045 OPC_MoveParent,
8046 OPC_MoveParent,
8047 OPC_CheckType, MVT::v4i32,
8048 OPC_CheckPatternPredicate1,
8049 OPC_EmitConvertToTarget3,
8050 OPC_EmitInteger32, 28,
8051 OPC_EmitRegisterI32, 0 ,
8052 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALslsv4i16),
8053 MVT::v4i32, 6, 0, 1, 2, 4, 5, 6,
8054 36,
8055 OPC_CheckChild0Type, MVT::v2i32,
8056 OPC_MoveChild1,
8057 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8058 OPC_RecordChild0,
8059 OPC_CheckChild0Type, MVT::v2i32,
8060 OPC_RecordChild1,
8061 OPC_MoveChild1,
8062 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8063 OPC_MoveParent,
8064 OPC_MoveParent,
8065 OPC_MoveParent,
8066 OPC_CheckType, MVT::v2i64,
8067 OPC_CheckPatternPredicate1,
8068 OPC_EmitConvertToTarget3,
8069 OPC_EmitInteger32, 28,
8070 OPC_EmitRegisterI32, 0 ,
8071 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALslsv2i32),
8072 MVT::v2i64, 6, 0, 1, 2, 4, 5, 6,
8073 0,
8074 77, TARGET_VAL(ARMISD::VMULLu),
8075 OPC_RecordChild0,
8076 OPC_Scope, 36,
8077 OPC_CheckChild0Type, MVT::v4i16,
8078 OPC_MoveChild1,
8079 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8080 OPC_RecordChild0,
8081 OPC_CheckChild0Type, MVT::v4i16,
8082 OPC_RecordChild1,
8083 OPC_MoveChild1,
8084 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8085 OPC_MoveParent,
8086 OPC_MoveParent,
8087 OPC_MoveParent,
8088 OPC_CheckType, MVT::v4i32,
8089 OPC_CheckPatternPredicate1,
8090 OPC_EmitConvertToTarget3,
8091 OPC_EmitInteger32, 28,
8092 OPC_EmitRegisterI32, 0 ,
8093 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALsluv4i16),
8094 MVT::v4i32, 6, 0, 1, 2, 4, 5, 6,
8095 36,
8096 OPC_CheckChild0Type, MVT::v2i32,
8097 OPC_MoveChild1,
8098 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8099 OPC_RecordChild0,
8100 OPC_CheckChild0Type, MVT::v2i32,
8101 OPC_RecordChild1,
8102 OPC_MoveChild1,
8103 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8104 OPC_MoveParent,
8105 OPC_MoveParent,
8106 OPC_MoveParent,
8107 OPC_CheckType, MVT::v2i64,
8108 OPC_CheckPatternPredicate1,
8109 OPC_EmitConvertToTarget3,
8110 OPC_EmitInteger32, 28,
8111 OPC_EmitRegisterI32, 0 ,
8112 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALsluv2i32),
8113 MVT::v2i64, 6, 0, 1, 2, 4, 5, 6,
8114 0,
8115 0,
8116 80,
8117 OPC_MoveChild0,
8118 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
8119 OPC_Scope, 36,
8120 OPC_RecordChild0,
8121 OPC_MoveChild1,
8122 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8123 OPC_RecordChild0,
8124 OPC_CheckChild0Type, MVT::v4i16,
8125 OPC_RecordChild1,
8126 OPC_MoveChild1,
8127 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8128 OPC_MoveParent,
8129 OPC_MoveParent,
8130 OPC_MoveParent,
8131 OPC_RecordChild1,
8132 OPC_CheckType, MVT::v4i16,
8133 OPC_CheckPatternPredicate1,
8134 OPC_EmitConvertToTarget2,
8135 OPC_EmitInteger32, 28,
8136 OPC_EmitRegisterI32, 0 ,
8137 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i16),
8138 MVT::v4i16, 6, 3, 0, 1, 4, 5, 6,
8139 36,
8140 OPC_MoveChild0,
8141 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8142 OPC_RecordChild0,
8143 OPC_CheckChild0Type, MVT::v4i16,
8144 OPC_RecordChild1,
8145 OPC_MoveChild1,
8146 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8147 OPC_MoveParent,
8148 OPC_MoveParent,
8149 OPC_RecordChild1,
8150 OPC_MoveParent,
8151 OPC_RecordChild1,
8152 OPC_CheckType, MVT::v4i16,
8153 OPC_CheckPatternPredicate1,
8154 OPC_EmitConvertToTarget1,
8155 OPC_EmitInteger32, 28,
8156 OPC_EmitRegisterI32, 0 ,
8157 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i16),
8158 MVT::v4i16, 6, 3, 2, 0, 4, 5, 6,
8159 0,
8160 40,
8161 OPC_RecordChild0,
8162 OPC_MoveChild1,
8163 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
8164 OPC_MoveChild0,
8165 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8166 OPC_RecordChild0,
8167 OPC_CheckChild0Type, MVT::v2i32,
8168 OPC_RecordChild1,
8169 OPC_MoveChild1,
8170 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8171 OPC_MoveParent,
8172 OPC_MoveParent,
8173 OPC_RecordChild1,
8174 OPC_MoveParent,
8175 OPC_CheckType, MVT::v2i32,
8176 OPC_CheckPatternPredicate1,
8177 OPC_EmitConvertToTarget2,
8178 OPC_EmitInteger32, 28,
8179 OPC_EmitRegisterI32, 0 ,
8180 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv2i32),
8181 MVT::v2i32, 6, 0, 3, 1, 4, 5, 6,
8182 80,
8183 OPC_MoveChild0,
8184 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
8185 OPC_Scope, 36,
8186 OPC_RecordChild0,
8187 OPC_MoveChild1,
8188 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8189 OPC_RecordChild0,
8190 OPC_CheckChild0Type, MVT::v2i32,
8191 OPC_RecordChild1,
8192 OPC_MoveChild1,
8193 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8194 OPC_MoveParent,
8195 OPC_MoveParent,
8196 OPC_MoveParent,
8197 OPC_RecordChild1,
8198 OPC_CheckType, MVT::v2i32,
8199 OPC_CheckPatternPredicate1,
8200 OPC_EmitConvertToTarget2,
8201 OPC_EmitInteger32, 28,
8202 OPC_EmitRegisterI32, 0 ,
8203 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv2i32),
8204 MVT::v2i32, 6, 3, 0, 1, 4, 5, 6,
8205 36,
8206 OPC_MoveChild0,
8207 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8208 OPC_RecordChild0,
8209 OPC_CheckChild0Type, MVT::v2i32,
8210 OPC_RecordChild1,
8211 OPC_MoveChild1,
8212 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8213 OPC_MoveParent,
8214 OPC_MoveParent,
8215 OPC_RecordChild1,
8216 OPC_MoveParent,
8217 OPC_RecordChild1,
8218 OPC_CheckType, MVT::v2i32,
8219 OPC_CheckPatternPredicate1,
8220 OPC_EmitConvertToTarget1,
8221 OPC_EmitInteger32, 28,
8222 OPC_EmitRegisterI32, 0 ,
8223 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv2i32),
8224 MVT::v2i32, 6, 3, 2, 0, 4, 5, 6,
8225 0,
8226 40,
8227 OPC_RecordChild0,
8228 OPC_MoveChild1,
8229 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
8230 OPC_MoveChild0,
8231 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8232 OPC_RecordChild0,
8233 OPC_CheckChild0Type, MVT::v4i16,
8234 OPC_RecordChild1,
8235 OPC_MoveChild1,
8236 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8237 OPC_MoveParent,
8238 OPC_MoveParent,
8239 OPC_RecordChild1,
8240 OPC_MoveParent,
8241 OPC_CheckType, MVT::v8i16,
8242 OPC_CheckPatternPredicate1,
8243 OPC_EmitConvertToTarget2,
8244 OPC_EmitInteger32, 28,
8245 OPC_EmitRegisterI32, 0 ,
8246 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv8i16),
8247 MVT::v8i16, 6, 0, 3, 1, 4, 5, 6,
8248 80,
8249 OPC_MoveChild0,
8250 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
8251 OPC_Scope, 36,
8252 OPC_RecordChild0,
8253 OPC_MoveChild1,
8254 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8255 OPC_RecordChild0,
8256 OPC_CheckChild0Type, MVT::v4i16,
8257 OPC_RecordChild1,
8258 OPC_MoveChild1,
8259 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8260 OPC_MoveParent,
8261 OPC_MoveParent,
8262 OPC_MoveParent,
8263 OPC_RecordChild1,
8264 OPC_CheckType, MVT::v8i16,
8265 OPC_CheckPatternPredicate1,
8266 OPC_EmitConvertToTarget2,
8267 OPC_EmitInteger32, 28,
8268 OPC_EmitRegisterI32, 0 ,
8269 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv8i16),
8270 MVT::v8i16, 6, 3, 0, 1, 4, 5, 6,
8271 36,
8272 OPC_MoveChild0,
8273 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8274 OPC_RecordChild0,
8275 OPC_CheckChild0Type, MVT::v4i16,
8276 OPC_RecordChild1,
8277 OPC_MoveChild1,
8278 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8279 OPC_MoveParent,
8280 OPC_MoveParent,
8281 OPC_RecordChild1,
8282 OPC_MoveParent,
8283 OPC_RecordChild1,
8284 OPC_CheckType, MVT::v8i16,
8285 OPC_CheckPatternPredicate1,
8286 OPC_EmitConvertToTarget1,
8287 OPC_EmitInteger32, 28,
8288 OPC_EmitRegisterI32, 0 ,
8289 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv8i16),
8290 MVT::v8i16, 6, 3, 2, 0, 4, 5, 6,
8291 0,
8292 40,
8293 OPC_RecordChild0,
8294 OPC_MoveChild1,
8295 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
8296 OPC_MoveChild0,
8297 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8298 OPC_RecordChild0,
8299 OPC_CheckChild0Type, MVT::v2i32,
8300 OPC_RecordChild1,
8301 OPC_MoveChild1,
8302 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8303 OPC_MoveParent,
8304 OPC_MoveParent,
8305 OPC_RecordChild1,
8306 OPC_MoveParent,
8307 OPC_CheckType, MVT::v4i32,
8308 OPC_CheckPatternPredicate1,
8309 OPC_EmitConvertToTarget2,
8310 OPC_EmitInteger32, 28,
8311 OPC_EmitRegisterI32, 0 ,
8312 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i32),
8313 MVT::v4i32, 6, 0, 3, 1, 4, 5, 6,
8314 118|128,1,
8315 OPC_MoveChild0,
8316 OPC_SwitchOpcode , 76, TARGET_VAL(ISD::MUL),
8317 OPC_Scope, 36,
8318 OPC_RecordChild0,
8319 OPC_MoveChild1,
8320 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8321 OPC_RecordChild0,
8322 OPC_CheckChild0Type, MVT::v2i32,
8323 OPC_RecordChild1,
8324 OPC_MoveChild1,
8325 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8326 OPC_MoveParent,
8327 OPC_MoveParent,
8328 OPC_MoveParent,
8329 OPC_RecordChild1,
8330 OPC_CheckType, MVT::v4i32,
8331 OPC_CheckPatternPredicate1,
8332 OPC_EmitConvertToTarget2,
8333 OPC_EmitInteger32, 28,
8334 OPC_EmitRegisterI32, 0 ,
8335 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i32),
8336 MVT::v4i32, 6, 3, 0, 1, 4, 5, 6,
8337 36,
8338 OPC_MoveChild0,
8339 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8340 OPC_RecordChild0,
8341 OPC_CheckChild0Type, MVT::v2i32,
8342 OPC_RecordChild1,
8343 OPC_MoveChild1,
8344 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8345 OPC_MoveParent,
8346 OPC_MoveParent,
8347 OPC_RecordChild1,
8348 OPC_MoveParent,
8349 OPC_RecordChild1,
8350 OPC_CheckType, MVT::v4i32,
8351 OPC_CheckPatternPredicate1,
8352 OPC_EmitConvertToTarget1,
8353 OPC_EmitInteger32, 28,
8354 OPC_EmitRegisterI32, 0 ,
8355 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i32),
8356 MVT::v4i32, 6, 3, 2, 0, 4, 5, 6,
8357 0,
8358 79, TARGET_VAL(ARMISD::VMULLs),
8359 OPC_RecordChild0,
8360 OPC_Scope, 37,
8361 OPC_CheckChild0Type, MVT::v4i16,
8362 OPC_MoveChild1,
8363 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8364 OPC_RecordChild0,
8365 OPC_CheckChild0Type, MVT::v4i16,
8366 OPC_RecordChild1,
8367 OPC_MoveChild1,
8368 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8369 OPC_MoveParent,
8370 OPC_MoveParent,
8371 OPC_MoveParent,
8372 OPC_RecordChild1,
8373 OPC_CheckType, MVT::v4i32,
8374 OPC_CheckPatternPredicate1,
8375 OPC_EmitConvertToTarget2,
8376 OPC_EmitInteger32, 28,
8377 OPC_EmitRegisterI32, 0 ,
8378 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALslsv4i16),
8379 MVT::v4i32, 6, 3, 0, 1, 4, 5, 6,
8380 37,
8381 OPC_CheckChild0Type, MVT::v2i32,
8382 OPC_MoveChild1,
8383 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8384 OPC_RecordChild0,
8385 OPC_CheckChild0Type, MVT::v2i32,
8386 OPC_RecordChild1,
8387 OPC_MoveChild1,
8388 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8389 OPC_MoveParent,
8390 OPC_MoveParent,
8391 OPC_MoveParent,
8392 OPC_RecordChild1,
8393 OPC_CheckType, MVT::v2i64,
8394 OPC_CheckPatternPredicate1,
8395 OPC_EmitConvertToTarget2,
8396 OPC_EmitInteger32, 28,
8397 OPC_EmitRegisterI32, 0 ,
8398 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALslsv2i32),
8399 MVT::v2i64, 6, 3, 0, 1, 4, 5, 6,
8400 0,
8401 79, TARGET_VAL(ARMISD::VMULLu),
8402 OPC_RecordChild0,
8403 OPC_Scope, 37,
8404 OPC_CheckChild0Type, MVT::v4i16,
8405 OPC_MoveChild1,
8406 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8407 OPC_RecordChild0,
8408 OPC_CheckChild0Type, MVT::v4i16,
8409 OPC_RecordChild1,
8410 OPC_MoveChild1,
8411 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8412 OPC_MoveParent,
8413 OPC_MoveParent,
8414 OPC_MoveParent,
8415 OPC_RecordChild1,
8416 OPC_CheckType, MVT::v4i32,
8417 OPC_CheckPatternPredicate1,
8418 OPC_EmitConvertToTarget2,
8419 OPC_EmitInteger32, 28,
8420 OPC_EmitRegisterI32, 0 ,
8421 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALsluv4i16),
8422 MVT::v4i32, 6, 3, 0, 1, 4, 5, 6,
8423 37,
8424 OPC_CheckChild0Type, MVT::v2i32,
8425 OPC_MoveChild1,
8426 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8427 OPC_RecordChild0,
8428 OPC_CheckChild0Type, MVT::v2i32,
8429 OPC_RecordChild1,
8430 OPC_MoveChild1,
8431 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8432 OPC_MoveParent,
8433 OPC_MoveParent,
8434 OPC_MoveParent,
8435 OPC_RecordChild1,
8436 OPC_CheckType, MVT::v2i64,
8437 OPC_CheckPatternPredicate1,
8438 OPC_EmitConvertToTarget2,
8439 OPC_EmitInteger32, 28,
8440 OPC_EmitRegisterI32, 0 ,
8441 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALsluv2i32),
8442 MVT::v2i64, 6, 3, 0, 1, 4, 5, 6,
8443 0,
8444 0,
8445 26|128,1,
8446 OPC_RecordChild0,
8447 OPC_MoveChild1,
8448 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
8449 OPC_Scope, 96,
8450 OPC_RecordChild0,
8451 OPC_MoveChild1,
8452 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8453 OPC_RecordChild0,
8454 OPC_Scope, 43,
8455 OPC_CheckChild0Type, MVT::v8i16,
8456 OPC_RecordChild1,
8457 OPC_MoveChild1,
8458 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8459 OPC_MoveParent,
8460 OPC_MoveParent,
8461 OPC_MoveParent,
8462 OPC_CheckType, MVT::v8i16,
8463 OPC_CheckPatternPredicate1,
8464 OPC_EmitConvertToTarget3,
8465 OPC_EmitNodeXForm, 5, 4,
8466 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
8467 MVT::v4i16, 2, 2, 5,
8468 OPC_EmitConvertToTarget3,
8469 OPC_EmitNodeXForm, 6, 7,
8470 OPC_EmitInteger32, 28,
8471 OPC_EmitRegisterI32, 0 ,
8472 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv8i16),
8473 MVT::v8i16, 6, 0, 1, 6, 8, 9, 10,
8474 43,
8475 OPC_CheckChild0Type, MVT::v4i32,
8476 OPC_RecordChild1,
8477 OPC_MoveChild1,
8478 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8479 OPC_MoveParent,
8480 OPC_MoveParent,
8481 OPC_MoveParent,
8482 OPC_CheckType, MVT::v4i32,
8483 OPC_CheckPatternPredicate1,
8484 OPC_EmitConvertToTarget3,
8485 OPC_EmitNodeXForm, 7, 4,
8486 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
8487 MVT::v2i32, 2, 2, 5,
8488 OPC_EmitConvertToTarget3,
8489 OPC_EmitNodeXForm, 8, 7,
8490 OPC_EmitInteger32, 28,
8491 OPC_EmitRegisterI32, 0 ,
8492 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i32),
8493 MVT::v4i32, 6, 0, 1, 6, 8, 9, 10,
8494 0,
8495 49,
8496 OPC_MoveChild0,
8497 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8498 OPC_RecordChild0,
8499 OPC_CheckChild0Type, MVT::v8i16,
8500 OPC_RecordChild1,
8501 OPC_MoveChild1,
8502 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8503 OPC_MoveParent,
8504 OPC_MoveParent,
8505 OPC_RecordChild1,
8506 OPC_MoveParent,
8507 OPC_CheckType, MVT::v8i16,
8508 OPC_CheckPatternPredicate1,
8509 OPC_EmitConvertToTarget2,
8510 OPC_EmitNodeXForm, 5, 4,
8511 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
8512 MVT::v4i16, 2, 1, 5,
8513 OPC_EmitConvertToTarget2,
8514 OPC_EmitNodeXForm, 6, 7,
8515 OPC_EmitInteger32, 28,
8516 OPC_EmitRegisterI32, 0 ,
8517 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv8i16),
8518 MVT::v8i16, 6, 0, 3, 6, 8, 9, 10,
8519 0,
8520 108,
8521 OPC_MoveChild0,
8522 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
8523 OPC_Scope, 50,
8524 OPC_RecordChild0,
8525 OPC_MoveChild1,
8526 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8527 OPC_RecordChild0,
8528 OPC_CheckChild0Type, MVT::v8i16,
8529 OPC_RecordChild1,
8530 OPC_MoveChild1,
8531 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8532 OPC_MoveParent,
8533 OPC_MoveParent,
8534 OPC_MoveParent,
8535 OPC_RecordChild1,
8536 OPC_CheckType, MVT::v8i16,
8537 OPC_CheckPatternPredicate1,
8538 OPC_EmitConvertToTarget2,
8539 OPC_EmitNodeXForm, 5, 4,
8540 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
8541 MVT::v4i16, 2, 1, 5,
8542 OPC_EmitConvertToTarget2,
8543 OPC_EmitNodeXForm, 6, 7,
8544 OPC_EmitInteger32, 28,
8545 OPC_EmitRegisterI32, 0 ,
8546 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv8i16),
8547 MVT::v8i16, 6, 3, 0, 6, 8, 9, 10,
8548 50,
8549 OPC_MoveChild0,
8550 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8551 OPC_RecordChild0,
8552 OPC_CheckChild0Type, MVT::v8i16,
8553 OPC_RecordChild1,
8554 OPC_MoveChild1,
8555 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8556 OPC_MoveParent,
8557 OPC_MoveParent,
8558 OPC_RecordChild1,
8559 OPC_MoveParent,
8560 OPC_RecordChild1,
8561 OPC_CheckType, MVT::v8i16,
8562 OPC_CheckPatternPredicate1,
8563 OPC_EmitConvertToTarget1,
8564 OPC_EmitNodeXForm, 5, 4,
8565 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
8566 MVT::v4i16, 2, 0, 5,
8567 OPC_EmitConvertToTarget1,
8568 OPC_EmitNodeXForm, 6, 7,
8569 OPC_EmitInteger32, 28,
8570 OPC_EmitRegisterI32, 0 ,
8571 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv8i16),
8572 MVT::v8i16, 6, 3, 2, 6, 8, 9, 10,
8573 0,
8574 54,
8575 OPC_RecordChild0,
8576 OPC_MoveChild1,
8577 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
8578 OPC_MoveChild0,
8579 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8580 OPC_RecordChild0,
8581 OPC_CheckChild0Type, MVT::v4i32,
8582 OPC_RecordChild1,
8583 OPC_MoveChild1,
8584 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8585 OPC_MoveParent,
8586 OPC_MoveParent,
8587 OPC_RecordChild1,
8588 OPC_MoveParent,
8589 OPC_CheckType, MVT::v4i32,
8590 OPC_CheckPatternPredicate1,
8591 OPC_EmitConvertToTarget2,
8592 OPC_EmitNodeXForm, 7, 4,
8593 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
8594 MVT::v2i32, 2, 1, 5,
8595 OPC_EmitConvertToTarget2,
8596 OPC_EmitNodeXForm, 8, 7,
8597 OPC_EmitInteger32, 28,
8598 OPC_EmitRegisterI32, 0 ,
8599 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i32),
8600 MVT::v4i32, 6, 0, 3, 6, 8, 9, 10,
8601 11|128,4,
8602 OPC_MoveChild0,
8603 OPC_SwitchOpcode , 104, TARGET_VAL(ISD::MUL),
8604 OPC_Scope, 50,
8605 OPC_RecordChild0,
8606 OPC_MoveChild1,
8607 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8608 OPC_RecordChild0,
8609 OPC_CheckChild0Type, MVT::v4i32,
8610 OPC_RecordChild1,
8611 OPC_MoveChild1,
8612 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8613 OPC_MoveParent,
8614 OPC_MoveParent,
8615 OPC_MoveParent,
8616 OPC_RecordChild1,
8617 OPC_CheckType, MVT::v4i32,
8618 OPC_CheckPatternPredicate1,
8619 OPC_EmitConvertToTarget2,
8620 OPC_EmitNodeXForm, 7, 4,
8621 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
8622 MVT::v2i32, 2, 1, 5,
8623 OPC_EmitConvertToTarget2,
8624 OPC_EmitNodeXForm, 8, 7,
8625 OPC_EmitInteger32, 28,
8626 OPC_EmitRegisterI32, 0 ,
8627 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i32),
8628 MVT::v4i32, 6, 3, 0, 6, 8, 9, 10,
8629 50,
8630 OPC_MoveChild0,
8631 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
8632 OPC_RecordChild0,
8633 OPC_CheckChild0Type, MVT::v4i32,
8634 OPC_RecordChild1,
8635 OPC_MoveChild1,
8636 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8637 OPC_MoveParent,
8638 OPC_MoveParent,
8639 OPC_RecordChild1,
8640 OPC_MoveParent,
8641 OPC_RecordChild1,
8642 OPC_CheckType, MVT::v4i32,
8643 OPC_CheckPatternPredicate1,
8644 OPC_EmitConvertToTarget1,
8645 OPC_EmitNodeXForm, 7, 4,
8646 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
8647 MVT::v2i32, 2, 0, 5,
8648 OPC_EmitConvertToTarget1,
8649 OPC_EmitNodeXForm, 8, 7,
8650 OPC_EmitInteger32, 28,
8651 OPC_EmitRegisterI32, 0 ,
8652 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslv4i32),
8653 MVT::v4i32, 6, 3, 2, 6, 8, 9, 10,
8654 0,
8655 84, TARGET_VAL(ISD::SIGN_EXTEND),
8656 OPC_RecordChild0,
8657 OPC_Scope, 26,
8658 OPC_CheckChild0Type, MVT::v8i8,
8659 OPC_MoveSibling1,
8660 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND),
8661 OPC_RecordChild0,
8662 OPC_CheckChild0Type, MVT::v8i8,
8663 OPC_MoveParent,
8664 OPC_CheckType, MVT::v8i16,
8665 OPC_CheckPatternPredicate1,
8666 OPC_EmitInteger32, 28,
8667 OPC_EmitRegisterI32, 0 ,
8668 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLsv8i16),
8669 MVT::v8i16, 4, 0, 1, 2, 3,
8670 26,
8671 OPC_CheckChild0Type, MVT::v4i16,
8672 OPC_MoveSibling1,
8673 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND),
8674 OPC_RecordChild0,
8675 OPC_CheckChild0Type, MVT::v4i16,
8676 OPC_MoveParent,
8677 OPC_CheckType, MVT::v4i32,
8678 OPC_CheckPatternPredicate1,
8679 OPC_EmitInteger32, 28,
8680 OPC_EmitRegisterI32, 0 ,
8681 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLsv4i32),
8682 MVT::v4i32, 4, 0, 1, 2, 3,
8683 26,
8684 OPC_CheckChild0Type, MVT::v2i32,
8685 OPC_MoveSibling1,
8686 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND),
8687 OPC_RecordChild0,
8688 OPC_CheckChild0Type, MVT::v2i32,
8689 OPC_MoveParent,
8690 OPC_CheckType, MVT::v2i64,
8691 OPC_CheckPatternPredicate1,
8692 OPC_EmitInteger32, 28,
8693 OPC_EmitRegisterI32, 0 ,
8694 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLsv2i64),
8695 MVT::v2i64, 4, 0, 1, 2, 3,
8696 0,
8697 31|128,1, TARGET_VAL(ISD::ZERO_EXTEND),
8698 OPC_RecordChild0,
8699 OPC_Scope, 51,
8700 OPC_CheckChild0Type, MVT::v8i8,
8701 OPC_MoveSibling1,
8702 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
8703 OPC_RecordChild0,
8704 OPC_CheckChild0Type, MVT::v8i8,
8705 OPC_MoveParent,
8706 OPC_CheckType, MVT::v8i16,
8707 OPC_CheckPatternPredicate1,
8708 OPC_EmitInteger32, 28,
8709 OPC_EmitRegisterI32, 0 ,
8710 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv8i16),
8711 MVT::v8i16, 4, 0, 1, 2, 3,
8712 20, TARGET_VAL(ISD::ANY_EXTEND),
8713 OPC_RecordChild0,
8714 OPC_CheckChild0Type, MVT::v8i8,
8715 OPC_MoveParent,
8716 OPC_CheckType, MVT::v8i16,
8717 OPC_CheckPatternPredicate1,
8718 OPC_EmitInteger32, 28,
8719 OPC_EmitRegisterI32, 0 ,
8720 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv8i16),
8721 MVT::v8i16, 4, 0, 1, 2, 3,
8722 0,
8723 51,
8724 OPC_CheckChild0Type, MVT::v4i16,
8725 OPC_MoveSibling1,
8726 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
8727 OPC_RecordChild0,
8728 OPC_CheckChild0Type, MVT::v4i16,
8729 OPC_MoveParent,
8730 OPC_CheckType, MVT::v4i32,
8731 OPC_CheckPatternPredicate1,
8732 OPC_EmitInteger32, 28,
8733 OPC_EmitRegisterI32, 0 ,
8734 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv4i32),
8735 MVT::v4i32, 4, 0, 1, 2, 3,
8736 20, TARGET_VAL(ISD::ANY_EXTEND),
8737 OPC_RecordChild0,
8738 OPC_CheckChild0Type, MVT::v4i16,
8739 OPC_MoveParent,
8740 OPC_CheckType, MVT::v4i32,
8741 OPC_CheckPatternPredicate1,
8742 OPC_EmitInteger32, 28,
8743 OPC_EmitRegisterI32, 0 ,
8744 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv4i32),
8745 MVT::v4i32, 4, 0, 1, 2, 3,
8746 0,
8747 51,
8748 OPC_CheckChild0Type, MVT::v2i32,
8749 OPC_MoveSibling1,
8750 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
8751 OPC_RecordChild0,
8752 OPC_CheckChild0Type, MVT::v2i32,
8753 OPC_MoveParent,
8754 OPC_CheckType, MVT::v2i64,
8755 OPC_CheckPatternPredicate1,
8756 OPC_EmitInteger32, 28,
8757 OPC_EmitRegisterI32, 0 ,
8758 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv2i64),
8759 MVT::v2i64, 4, 0, 1, 2, 3,
8760 20, TARGET_VAL(ISD::ANY_EXTEND),
8761 OPC_RecordChild0,
8762 OPC_CheckChild0Type, MVT::v2i32,
8763 OPC_MoveParent,
8764 OPC_CheckType, MVT::v2i64,
8765 OPC_CheckPatternPredicate1,
8766 OPC_EmitInteger32, 28,
8767 OPC_EmitRegisterI32, 0 ,
8768 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv2i64),
8769 MVT::v2i64, 4, 0, 1, 2, 3,
8770 0,
8771 0,
8772 31|128,1, TARGET_VAL(ISD::ANY_EXTEND),
8773 OPC_RecordChild0,
8774 OPC_Scope, 51,
8775 OPC_CheckChild0Type, MVT::v8i8,
8776 OPC_MoveSibling1,
8777 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
8778 OPC_RecordChild0,
8779 OPC_CheckChild0Type, MVT::v8i8,
8780 OPC_MoveParent,
8781 OPC_CheckType, MVT::v8i16,
8782 OPC_CheckPatternPredicate1,
8783 OPC_EmitInteger32, 28,
8784 OPC_EmitRegisterI32, 0 ,
8785 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv8i16),
8786 MVT::v8i16, 4, 0, 1, 2, 3,
8787 20, TARGET_VAL(ISD::ANY_EXTEND),
8788 OPC_RecordChild0,
8789 OPC_CheckChild0Type, MVT::v8i8,
8790 OPC_MoveParent,
8791 OPC_CheckType, MVT::v8i16,
8792 OPC_CheckPatternPredicate1,
8793 OPC_EmitInteger32, 28,
8794 OPC_EmitRegisterI32, 0 ,
8795 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv8i16),
8796 MVT::v8i16, 4, 0, 1, 2, 3,
8797 0,
8798 51,
8799 OPC_CheckChild0Type, MVT::v4i16,
8800 OPC_MoveSibling1,
8801 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
8802 OPC_RecordChild0,
8803 OPC_CheckChild0Type, MVT::v4i16,
8804 OPC_MoveParent,
8805 OPC_CheckType, MVT::v4i32,
8806 OPC_CheckPatternPredicate1,
8807 OPC_EmitInteger32, 28,
8808 OPC_EmitRegisterI32, 0 ,
8809 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv4i32),
8810 MVT::v4i32, 4, 0, 1, 2, 3,
8811 20, TARGET_VAL(ISD::ANY_EXTEND),
8812 OPC_RecordChild0,
8813 OPC_CheckChild0Type, MVT::v4i16,
8814 OPC_MoveParent,
8815 OPC_CheckType, MVT::v4i32,
8816 OPC_CheckPatternPredicate1,
8817 OPC_EmitInteger32, 28,
8818 OPC_EmitRegisterI32, 0 ,
8819 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv4i32),
8820 MVT::v4i32, 4, 0, 1, 2, 3,
8821 0,
8822 51,
8823 OPC_CheckChild0Type, MVT::v2i32,
8824 OPC_MoveSibling1,
8825 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
8826 OPC_RecordChild0,
8827 OPC_CheckChild0Type, MVT::v2i32,
8828 OPC_MoveParent,
8829 OPC_CheckType, MVT::v2i64,
8830 OPC_CheckPatternPredicate1,
8831 OPC_EmitInteger32, 28,
8832 OPC_EmitRegisterI32, 0 ,
8833 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv2i64),
8834 MVT::v2i64, 4, 0, 1, 2, 3,
8835 20, TARGET_VAL(ISD::ANY_EXTEND),
8836 OPC_RecordChild0,
8837 OPC_CheckChild0Type, MVT::v2i32,
8838 OPC_MoveParent,
8839 OPC_CheckType, MVT::v2i64,
8840 OPC_CheckPatternPredicate1,
8841 OPC_EmitInteger32, 28,
8842 OPC_EmitRegisterI32, 0 ,
8843 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDLuv2i64),
8844 MVT::v2i64, 4, 0, 1, 2, 3,
8845 0,
8846 0,
8847 0,
8848 15|128,6,
8849 OPC_RecordChild0,
8850 OPC_MoveChild1,
8851 OPC_SwitchOpcode , 15|128,1, TARGET_VAL(ISD::ZERO_EXTEND),
8852 OPC_MoveChild0,
8853 OPC_SwitchOpcode , 67, TARGET_VAL(ISD::ABDS),
8854 OPC_RecordChild0,
8855 OPC_RecordChild1,
8856 OPC_SwitchType , 19, MVT::v8i8,
8857 OPC_MoveParent,
8858 OPC_MoveParent,
8859 OPC_CheckType, MVT::v8i16,
8860 OPC_CheckPatternPredicate1,
8861 OPC_EmitInteger32, 28,
8862 OPC_EmitRegisterI32, 0 ,
8863 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALsv8i16),
8864 MVT::v8i16, 5, 0, 1, 2, 3, 4,
8865 19, MVT::v4i16,
8866 OPC_MoveParent,
8867 OPC_MoveParent,
8868 OPC_CheckType, MVT::v4i32,
8869 OPC_CheckPatternPredicate1,
8870 OPC_EmitInteger32, 28,
8871 OPC_EmitRegisterI32, 0 ,
8872 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALsv4i32),
8873 MVT::v4i32, 5, 0, 1, 2, 3, 4,
8874 19, MVT::v2i32,
8875 OPC_MoveParent,
8876 OPC_MoveParent,
8877 OPC_CheckType, MVT::v2i64,
8878 OPC_CheckPatternPredicate1,
8879 OPC_EmitInteger32, 28,
8880 OPC_EmitRegisterI32, 0 ,
8881 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALsv2i64),
8882 MVT::v2i64, 5, 0, 1, 2, 3, 4,
8883 0,
8884 67, TARGET_VAL(ISD::ABDU),
8885 OPC_RecordChild0,
8886 OPC_RecordChild1,
8887 OPC_SwitchType , 19, MVT::v8i8,
8888 OPC_MoveParent,
8889 OPC_MoveParent,
8890 OPC_CheckType, MVT::v8i16,
8891 OPC_CheckPatternPredicate1,
8892 OPC_EmitInteger32, 28,
8893 OPC_EmitRegisterI32, 0 ,
8894 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALuv8i16),
8895 MVT::v8i16, 5, 0, 1, 2, 3, 4,
8896 19, MVT::v4i16,
8897 OPC_MoveParent,
8898 OPC_MoveParent,
8899 OPC_CheckType, MVT::v4i32,
8900 OPC_CheckPatternPredicate1,
8901 OPC_EmitInteger32, 28,
8902 OPC_EmitRegisterI32, 0 ,
8903 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALuv4i32),
8904 MVT::v4i32, 5, 0, 1, 2, 3, 4,
8905 19, MVT::v2i32,
8906 OPC_MoveParent,
8907 OPC_MoveParent,
8908 OPC_CheckType, MVT::v2i64,
8909 OPC_CheckPatternPredicate1,
8910 OPC_EmitInteger32, 28,
8911 OPC_EmitRegisterI32, 0 ,
8912 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALuv2i64),
8913 MVT::v2i64, 5, 0, 1, 2, 3, 4,
8914 0,
8915 0,
8916 26|128,1, TARGET_VAL(ARMISD::VSHRsIMM),
8917 OPC_RecordChild0,
8918 OPC_RecordChild1,
8919 OPC_MoveChild1,
8920 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8921 OPC_MoveParent,
8922 OPC_MoveParent,
8923 OPC_SwitchType , 16, MVT::v8i8,
8924 OPC_CheckPatternPredicate1,
8925 OPC_EmitConvertToTarget2,
8926 OPC_EmitInteger32, 28,
8927 OPC_EmitRegisterI32, 0 ,
8928 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv8i8),
8929 MVT::v8i8, 5, 0, 1, 3, 4, 5,
8930 16, MVT::v4i16,
8931 OPC_CheckPatternPredicate1,
8932 OPC_EmitConvertToTarget2,
8933 OPC_EmitInteger32, 28,
8934 OPC_EmitRegisterI32, 0 ,
8935 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv4i16),
8936 MVT::v4i16, 5, 0, 1, 3, 4, 5,
8937 16, MVT::v2i32,
8938 OPC_CheckPatternPredicate1,
8939 OPC_EmitConvertToTarget2,
8940 OPC_EmitInteger32, 28,
8941 OPC_EmitRegisterI32, 0 ,
8942 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv2i32),
8943 MVT::v2i32, 5, 0, 1, 3, 4, 5,
8944 16, MVT::v1i64,
8945 OPC_CheckPatternPredicate1,
8946 OPC_EmitConvertToTarget2,
8947 OPC_EmitInteger32, 28,
8948 OPC_EmitRegisterI32, 0 ,
8949 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv1i64),
8950 MVT::v1i64, 5, 0, 1, 3, 4, 5,
8951 16, MVT::v16i8,
8952 OPC_CheckPatternPredicate1,
8953 OPC_EmitConvertToTarget2,
8954 OPC_EmitInteger32, 28,
8955 OPC_EmitRegisterI32, 0 ,
8956 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv16i8),
8957 MVT::v16i8, 5, 0, 1, 3, 4, 5,
8958 16, MVT::v8i16,
8959 OPC_CheckPatternPredicate1,
8960 OPC_EmitConvertToTarget2,
8961 OPC_EmitInteger32, 28,
8962 OPC_EmitRegisterI32, 0 ,
8963 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv8i16),
8964 MVT::v8i16, 5, 0, 1, 3, 4, 5,
8965 16, MVT::v4i32,
8966 OPC_CheckPatternPredicate1,
8967 OPC_EmitConvertToTarget2,
8968 OPC_EmitInteger32, 28,
8969 OPC_EmitRegisterI32, 0 ,
8970 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv4i32),
8971 MVT::v4i32, 5, 0, 1, 3, 4, 5,
8972 16, MVT::v2i64,
8973 OPC_CheckPatternPredicate1,
8974 OPC_EmitConvertToTarget2,
8975 OPC_EmitInteger32, 28,
8976 OPC_EmitRegisterI32, 0 ,
8977 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv2i64),
8978 MVT::v2i64, 5, 0, 1, 3, 4, 5,
8979 0,
8980 26|128,1, TARGET_VAL(ARMISD::VSHRuIMM),
8981 OPC_RecordChild0,
8982 OPC_RecordChild1,
8983 OPC_MoveChild1,
8984 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8985 OPC_MoveParent,
8986 OPC_MoveParent,
8987 OPC_SwitchType , 16, MVT::v8i8,
8988 OPC_CheckPatternPredicate1,
8989 OPC_EmitConvertToTarget2,
8990 OPC_EmitInteger32, 28,
8991 OPC_EmitRegisterI32, 0 ,
8992 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv8i8),
8993 MVT::v8i8, 5, 0, 1, 3, 4, 5,
8994 16, MVT::v4i16,
8995 OPC_CheckPatternPredicate1,
8996 OPC_EmitConvertToTarget2,
8997 OPC_EmitInteger32, 28,
8998 OPC_EmitRegisterI32, 0 ,
8999 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv4i16),
9000 MVT::v4i16, 5, 0, 1, 3, 4, 5,
9001 16, MVT::v2i32,
9002 OPC_CheckPatternPredicate1,
9003 OPC_EmitConvertToTarget2,
9004 OPC_EmitInteger32, 28,
9005 OPC_EmitRegisterI32, 0 ,
9006 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv2i32),
9007 MVT::v2i32, 5, 0, 1, 3, 4, 5,
9008 16, MVT::v1i64,
9009 OPC_CheckPatternPredicate1,
9010 OPC_EmitConvertToTarget2,
9011 OPC_EmitInteger32, 28,
9012 OPC_EmitRegisterI32, 0 ,
9013 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv1i64),
9014 MVT::v1i64, 5, 0, 1, 3, 4, 5,
9015 16, MVT::v16i8,
9016 OPC_CheckPatternPredicate1,
9017 OPC_EmitConvertToTarget2,
9018 OPC_EmitInteger32, 28,
9019 OPC_EmitRegisterI32, 0 ,
9020 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv16i8),
9021 MVT::v16i8, 5, 0, 1, 3, 4, 5,
9022 16, MVT::v8i16,
9023 OPC_CheckPatternPredicate1,
9024 OPC_EmitConvertToTarget2,
9025 OPC_EmitInteger32, 28,
9026 OPC_EmitRegisterI32, 0 ,
9027 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv8i16),
9028 MVT::v8i16, 5, 0, 1, 3, 4, 5,
9029 16, MVT::v4i32,
9030 OPC_CheckPatternPredicate1,
9031 OPC_EmitConvertToTarget2,
9032 OPC_EmitInteger32, 28,
9033 OPC_EmitRegisterI32, 0 ,
9034 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv4i32),
9035 MVT::v4i32, 5, 0, 1, 3, 4, 5,
9036 16, MVT::v2i64,
9037 OPC_CheckPatternPredicate1,
9038 OPC_EmitConvertToTarget2,
9039 OPC_EmitInteger32, 28,
9040 OPC_EmitRegisterI32, 0 ,
9041 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv2i64),
9042 MVT::v2i64, 5, 0, 1, 3, 4, 5,
9043 0,
9044 26|128,1, TARGET_VAL(ARMISD::VRSHRsIMM),
9045 OPC_RecordChild0,
9046 OPC_RecordChild1,
9047 OPC_MoveChild1,
9048 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9049 OPC_MoveParent,
9050 OPC_MoveParent,
9051 OPC_SwitchType , 16, MVT::v8i8,
9052 OPC_CheckPatternPredicate1,
9053 OPC_EmitConvertToTarget2,
9054 OPC_EmitInteger32, 28,
9055 OPC_EmitRegisterI32, 0 ,
9056 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv8i8),
9057 MVT::v8i8, 5, 0, 1, 3, 4, 5,
9058 16, MVT::v4i16,
9059 OPC_CheckPatternPredicate1,
9060 OPC_EmitConvertToTarget2,
9061 OPC_EmitInteger32, 28,
9062 OPC_EmitRegisterI32, 0 ,
9063 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv4i16),
9064 MVT::v4i16, 5, 0, 1, 3, 4, 5,
9065 16, MVT::v2i32,
9066 OPC_CheckPatternPredicate1,
9067 OPC_EmitConvertToTarget2,
9068 OPC_EmitInteger32, 28,
9069 OPC_EmitRegisterI32, 0 ,
9070 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv2i32),
9071 MVT::v2i32, 5, 0, 1, 3, 4, 5,
9072 16, MVT::v1i64,
9073 OPC_CheckPatternPredicate1,
9074 OPC_EmitConvertToTarget2,
9075 OPC_EmitInteger32, 28,
9076 OPC_EmitRegisterI32, 0 ,
9077 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv1i64),
9078 MVT::v1i64, 5, 0, 1, 3, 4, 5,
9079 16, MVT::v16i8,
9080 OPC_CheckPatternPredicate1,
9081 OPC_EmitConvertToTarget2,
9082 OPC_EmitInteger32, 28,
9083 OPC_EmitRegisterI32, 0 ,
9084 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv16i8),
9085 MVT::v16i8, 5, 0, 1, 3, 4, 5,
9086 16, MVT::v8i16,
9087 OPC_CheckPatternPredicate1,
9088 OPC_EmitConvertToTarget2,
9089 OPC_EmitInteger32, 28,
9090 OPC_EmitRegisterI32, 0 ,
9091 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv8i16),
9092 MVT::v8i16, 5, 0, 1, 3, 4, 5,
9093 16, MVT::v4i32,
9094 OPC_CheckPatternPredicate1,
9095 OPC_EmitConvertToTarget2,
9096 OPC_EmitInteger32, 28,
9097 OPC_EmitRegisterI32, 0 ,
9098 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv4i32),
9099 MVT::v4i32, 5, 0, 1, 3, 4, 5,
9100 16, MVT::v2i64,
9101 OPC_CheckPatternPredicate1,
9102 OPC_EmitConvertToTarget2,
9103 OPC_EmitInteger32, 28,
9104 OPC_EmitRegisterI32, 0 ,
9105 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv2i64),
9106 MVT::v2i64, 5, 0, 1, 3, 4, 5,
9107 0,
9108 26|128,1, TARGET_VAL(ARMISD::VRSHRuIMM),
9109 OPC_RecordChild0,
9110 OPC_RecordChild1,
9111 OPC_MoveChild1,
9112 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9113 OPC_MoveParent,
9114 OPC_MoveParent,
9115 OPC_SwitchType , 16, MVT::v8i8,
9116 OPC_CheckPatternPredicate1,
9117 OPC_EmitConvertToTarget2,
9118 OPC_EmitInteger32, 28,
9119 OPC_EmitRegisterI32, 0 ,
9120 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv8i8),
9121 MVT::v8i8, 5, 0, 1, 3, 4, 5,
9122 16, MVT::v4i16,
9123 OPC_CheckPatternPredicate1,
9124 OPC_EmitConvertToTarget2,
9125 OPC_EmitInteger32, 28,
9126 OPC_EmitRegisterI32, 0 ,
9127 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv4i16),
9128 MVT::v4i16, 5, 0, 1, 3, 4, 5,
9129 16, MVT::v2i32,
9130 OPC_CheckPatternPredicate1,
9131 OPC_EmitConvertToTarget2,
9132 OPC_EmitInteger32, 28,
9133 OPC_EmitRegisterI32, 0 ,
9134 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv2i32),
9135 MVT::v2i32, 5, 0, 1, 3, 4, 5,
9136 16, MVT::v1i64,
9137 OPC_CheckPatternPredicate1,
9138 OPC_EmitConvertToTarget2,
9139 OPC_EmitInteger32, 28,
9140 OPC_EmitRegisterI32, 0 ,
9141 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv1i64),
9142 MVT::v1i64, 5, 0, 1, 3, 4, 5,
9143 16, MVT::v16i8,
9144 OPC_CheckPatternPredicate1,
9145 OPC_EmitConvertToTarget2,
9146 OPC_EmitInteger32, 28,
9147 OPC_EmitRegisterI32, 0 ,
9148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv16i8),
9149 MVT::v16i8, 5, 0, 1, 3, 4, 5,
9150 16, MVT::v8i16,
9151 OPC_CheckPatternPredicate1,
9152 OPC_EmitConvertToTarget2,
9153 OPC_EmitInteger32, 28,
9154 OPC_EmitRegisterI32, 0 ,
9155 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv8i16),
9156 MVT::v8i16, 5, 0, 1, 3, 4, 5,
9157 16, MVT::v4i32,
9158 OPC_CheckPatternPredicate1,
9159 OPC_EmitConvertToTarget2,
9160 OPC_EmitInteger32, 28,
9161 OPC_EmitRegisterI32, 0 ,
9162 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv4i32),
9163 MVT::v4i32, 5, 0, 1, 3, 4, 5,
9164 16, MVT::v2i64,
9165 OPC_CheckPatternPredicate1,
9166 OPC_EmitConvertToTarget2,
9167 OPC_EmitInteger32, 28,
9168 OPC_EmitRegisterI32, 0 ,
9169 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv2i64),
9170 MVT::v2i64, 5, 0, 1, 3, 4, 5,
9171 0,
9172 0,
9173 113|128,7,
9174 OPC_MoveChild0,
9175 OPC_SwitchOpcode , 53|128,1, TARGET_VAL(ISD::MUL),
9176 OPC_Scope, 18|128,1,
9177 OPC_RecordChild0,
9178 OPC_Scope, 71,
9179 OPC_MoveChild1,
9180 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9181 OPC_RecordChild0,
9182 OPC_CheckChild0TypeI32,
9183 OPC_MoveParent,
9184 OPC_MoveParent,
9185 OPC_RecordChild1,
9186 OPC_SwitchType , 18, MVT::v16i8,
9187 OPC_CheckPatternPredicate0,
9188 OPC_EmitInteger32, 0,
9189 OPC_EmitRegisterI32, 0 ,
9190 OPC_EmitRegisterI32, 0 ,
9191 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i8),
9192 MVT::v16i8, 6, 2, 0, 1, 3, 4, 5,
9193 18, MVT::v8i16,
9194 OPC_CheckPatternPredicate0,
9195 OPC_EmitInteger32, 0,
9196 OPC_EmitRegisterI32, 0 ,
9197 OPC_EmitRegisterI32, 0 ,
9198 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i16),
9199 MVT::v8i16, 6, 2, 0, 1, 3, 4, 5,
9200 18, MVT::v4i32,
9201 OPC_CheckPatternPredicate0,
9202 OPC_EmitInteger32, 0,
9203 OPC_EmitRegisterI32, 0 ,
9204 OPC_EmitRegisterI32, 0 ,
9205 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i32),
9206 MVT::v4i32, 6, 2, 0, 1, 3, 4, 5,
9207 0,
9208 70,
9209 OPC_RecordChild1,
9210 OPC_MoveSibling1,
9211 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9212 OPC_RecordChild0,
9213 OPC_CheckChild0TypeI32,
9214 OPC_MoveParent,
9215 OPC_SwitchType , 18, MVT::v16i8,
9216 OPC_CheckPatternPredicate0,
9217 OPC_EmitInteger32, 0,
9218 OPC_EmitRegisterI32, 0 ,
9219 OPC_EmitRegisterI32, 0 ,
9220 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLAS_qr_i8),
9221 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
9222 18, MVT::v8i16,
9223 OPC_CheckPatternPredicate0,
9224 OPC_EmitInteger32, 0,
9225 OPC_EmitRegisterI32, 0 ,
9226 OPC_EmitRegisterI32, 0 ,
9227 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLAS_qr_i16),
9228 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
9229 18, MVT::v4i32,
9230 OPC_CheckPatternPredicate0,
9231 OPC_EmitInteger32, 0,
9232 OPC_EmitRegisterI32, 0 ,
9233 OPC_EmitRegisterI32, 0 ,
9234 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLAS_qr_i32),
9235 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
9236 0,
9237 0,
9238 30,
9239 OPC_MoveChild0,
9240 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9241 OPC_RecordChild0,
9242 OPC_CheckChild0TypeI32,
9243 OPC_MoveParent,
9244 OPC_RecordChild1,
9245 OPC_MoveParent,
9246 OPC_RecordChild1,
9247 OPC_CheckType, MVT::v16i8,
9248 OPC_CheckPatternPredicate0,
9249 OPC_EmitInteger32, 0,
9250 OPC_EmitRegisterI32, 0 ,
9251 OPC_EmitRegisterI32, 0 ,
9252 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i8),
9253 MVT::v16i8, 6, 2, 1, 0, 3, 4, 5,
9254 0,
9255 21|128,1, TARGET_VAL(ISD::ZERO_EXTEND),
9256 OPC_MoveChild0,
9257 OPC_SwitchOpcode , 70, TARGET_VAL(ISD::ABDS),
9258 OPC_RecordChild0,
9259 OPC_RecordChild1,
9260 OPC_SwitchType , 20, MVT::v8i8,
9261 OPC_MoveParent,
9262 OPC_MoveParent,
9263 OPC_RecordChild1,
9264 OPC_CheckType, MVT::v8i16,
9265 OPC_CheckPatternPredicate1,
9266 OPC_EmitInteger32, 28,
9267 OPC_EmitRegisterI32, 0 ,
9268 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALsv8i16),
9269 MVT::v8i16, 5, 2, 0, 1, 3, 4,
9270 20, MVT::v4i16,
9271 OPC_MoveParent,
9272 OPC_MoveParent,
9273 OPC_RecordChild1,
9274 OPC_CheckType, MVT::v4i32,
9275 OPC_CheckPatternPredicate1,
9276 OPC_EmitInteger32, 28,
9277 OPC_EmitRegisterI32, 0 ,
9278 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALsv4i32),
9279 MVT::v4i32, 5, 2, 0, 1, 3, 4,
9280 20, MVT::v2i32,
9281 OPC_MoveParent,
9282 OPC_MoveParent,
9283 OPC_RecordChild1,
9284 OPC_CheckType, MVT::v2i64,
9285 OPC_CheckPatternPredicate1,
9286 OPC_EmitInteger32, 28,
9287 OPC_EmitRegisterI32, 0 ,
9288 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALsv2i64),
9289 MVT::v2i64, 5, 2, 0, 1, 3, 4,
9290 0,
9291 70, TARGET_VAL(ISD::ABDU),
9292 OPC_RecordChild0,
9293 OPC_RecordChild1,
9294 OPC_SwitchType , 20, MVT::v8i8,
9295 OPC_MoveParent,
9296 OPC_MoveParent,
9297 OPC_RecordChild1,
9298 OPC_CheckType, MVT::v8i16,
9299 OPC_CheckPatternPredicate1,
9300 OPC_EmitInteger32, 28,
9301 OPC_EmitRegisterI32, 0 ,
9302 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALuv8i16),
9303 MVT::v8i16, 5, 2, 0, 1, 3, 4,
9304 20, MVT::v4i16,
9305 OPC_MoveParent,
9306 OPC_MoveParent,
9307 OPC_RecordChild1,
9308 OPC_CheckType, MVT::v4i32,
9309 OPC_CheckPatternPredicate1,
9310 OPC_EmitInteger32, 28,
9311 OPC_EmitRegisterI32, 0 ,
9312 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALuv4i32),
9313 MVT::v4i32, 5, 2, 0, 1, 3, 4,
9314 20, MVT::v2i32,
9315 OPC_MoveParent,
9316 OPC_MoveParent,
9317 OPC_RecordChild1,
9318 OPC_CheckType, MVT::v2i64,
9319 OPC_CheckPatternPredicate1,
9320 OPC_EmitInteger32, 28,
9321 OPC_EmitRegisterI32, 0 ,
9322 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABALuv2i64),
9323 MVT::v2i64, 5, 2, 0, 1, 3, 4,
9324 0,
9325 0,
9326 27|128,1, TARGET_VAL(ARMISD::VSHRsIMM),
9327 OPC_RecordChild0,
9328 OPC_RecordChild1,
9329 OPC_MoveChild1,
9330 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9331 OPC_MoveParent,
9332 OPC_MoveParent,
9333 OPC_RecordChild1,
9334 OPC_SwitchType , 16, MVT::v8i8,
9335 OPC_CheckPatternPredicate1,
9336 OPC_EmitConvertToTarget1,
9337 OPC_EmitInteger32, 28,
9338 OPC_EmitRegisterI32, 0 ,
9339 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv8i8),
9340 MVT::v8i8, 5, 2, 0, 3, 4, 5,
9341 16, MVT::v4i16,
9342 OPC_CheckPatternPredicate1,
9343 OPC_EmitConvertToTarget1,
9344 OPC_EmitInteger32, 28,
9345 OPC_EmitRegisterI32, 0 ,
9346 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv4i16),
9347 MVT::v4i16, 5, 2, 0, 3, 4, 5,
9348 16, MVT::v2i32,
9349 OPC_CheckPatternPredicate1,
9350 OPC_EmitConvertToTarget1,
9351 OPC_EmitInteger32, 28,
9352 OPC_EmitRegisterI32, 0 ,
9353 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv2i32),
9354 MVT::v2i32, 5, 2, 0, 3, 4, 5,
9355 16, MVT::v1i64,
9356 OPC_CheckPatternPredicate1,
9357 OPC_EmitConvertToTarget1,
9358 OPC_EmitInteger32, 28,
9359 OPC_EmitRegisterI32, 0 ,
9360 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv1i64),
9361 MVT::v1i64, 5, 2, 0, 3, 4, 5,
9362 16, MVT::v16i8,
9363 OPC_CheckPatternPredicate1,
9364 OPC_EmitConvertToTarget1,
9365 OPC_EmitInteger32, 28,
9366 OPC_EmitRegisterI32, 0 ,
9367 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv16i8),
9368 MVT::v16i8, 5, 2, 0, 3, 4, 5,
9369 16, MVT::v8i16,
9370 OPC_CheckPatternPredicate1,
9371 OPC_EmitConvertToTarget1,
9372 OPC_EmitInteger32, 28,
9373 OPC_EmitRegisterI32, 0 ,
9374 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv8i16),
9375 MVT::v8i16, 5, 2, 0, 3, 4, 5,
9376 16, MVT::v4i32,
9377 OPC_CheckPatternPredicate1,
9378 OPC_EmitConvertToTarget1,
9379 OPC_EmitInteger32, 28,
9380 OPC_EmitRegisterI32, 0 ,
9381 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv4i32),
9382 MVT::v4i32, 5, 2, 0, 3, 4, 5,
9383 16, MVT::v2i64,
9384 OPC_CheckPatternPredicate1,
9385 OPC_EmitConvertToTarget1,
9386 OPC_EmitInteger32, 28,
9387 OPC_EmitRegisterI32, 0 ,
9388 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAsv2i64),
9389 MVT::v2i64, 5, 2, 0, 3, 4, 5,
9390 0,
9391 27|128,1, TARGET_VAL(ARMISD::VSHRuIMM),
9392 OPC_RecordChild0,
9393 OPC_RecordChild1,
9394 OPC_MoveChild1,
9395 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9396 OPC_MoveParent,
9397 OPC_MoveParent,
9398 OPC_RecordChild1,
9399 OPC_SwitchType , 16, MVT::v8i8,
9400 OPC_CheckPatternPredicate1,
9401 OPC_EmitConvertToTarget1,
9402 OPC_EmitInteger32, 28,
9403 OPC_EmitRegisterI32, 0 ,
9404 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv8i8),
9405 MVT::v8i8, 5, 2, 0, 3, 4, 5,
9406 16, MVT::v4i16,
9407 OPC_CheckPatternPredicate1,
9408 OPC_EmitConvertToTarget1,
9409 OPC_EmitInteger32, 28,
9410 OPC_EmitRegisterI32, 0 ,
9411 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv4i16),
9412 MVT::v4i16, 5, 2, 0, 3, 4, 5,
9413 16, MVT::v2i32,
9414 OPC_CheckPatternPredicate1,
9415 OPC_EmitConvertToTarget1,
9416 OPC_EmitInteger32, 28,
9417 OPC_EmitRegisterI32, 0 ,
9418 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv2i32),
9419 MVT::v2i32, 5, 2, 0, 3, 4, 5,
9420 16, MVT::v1i64,
9421 OPC_CheckPatternPredicate1,
9422 OPC_EmitConvertToTarget1,
9423 OPC_EmitInteger32, 28,
9424 OPC_EmitRegisterI32, 0 ,
9425 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv1i64),
9426 MVT::v1i64, 5, 2, 0, 3, 4, 5,
9427 16, MVT::v16i8,
9428 OPC_CheckPatternPredicate1,
9429 OPC_EmitConvertToTarget1,
9430 OPC_EmitInteger32, 28,
9431 OPC_EmitRegisterI32, 0 ,
9432 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv16i8),
9433 MVT::v16i8, 5, 2, 0, 3, 4, 5,
9434 16, MVT::v8i16,
9435 OPC_CheckPatternPredicate1,
9436 OPC_EmitConvertToTarget1,
9437 OPC_EmitInteger32, 28,
9438 OPC_EmitRegisterI32, 0 ,
9439 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv8i16),
9440 MVT::v8i16, 5, 2, 0, 3, 4, 5,
9441 16, MVT::v4i32,
9442 OPC_CheckPatternPredicate1,
9443 OPC_EmitConvertToTarget1,
9444 OPC_EmitInteger32, 28,
9445 OPC_EmitRegisterI32, 0 ,
9446 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv4i32),
9447 MVT::v4i32, 5, 2, 0, 3, 4, 5,
9448 16, MVT::v2i64,
9449 OPC_CheckPatternPredicate1,
9450 OPC_EmitConvertToTarget1,
9451 OPC_EmitInteger32, 28,
9452 OPC_EmitRegisterI32, 0 ,
9453 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRAuv2i64),
9454 MVT::v2i64, 5, 2, 0, 3, 4, 5,
9455 0,
9456 27|128,1, TARGET_VAL(ARMISD::VRSHRsIMM),
9457 OPC_RecordChild0,
9458 OPC_RecordChild1,
9459 OPC_MoveChild1,
9460 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9461 OPC_MoveParent,
9462 OPC_MoveParent,
9463 OPC_RecordChild1,
9464 OPC_SwitchType , 16, MVT::v8i8,
9465 OPC_CheckPatternPredicate1,
9466 OPC_EmitConvertToTarget1,
9467 OPC_EmitInteger32, 28,
9468 OPC_EmitRegisterI32, 0 ,
9469 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv8i8),
9470 MVT::v8i8, 5, 2, 0, 3, 4, 5,
9471 16, MVT::v4i16,
9472 OPC_CheckPatternPredicate1,
9473 OPC_EmitConvertToTarget1,
9474 OPC_EmitInteger32, 28,
9475 OPC_EmitRegisterI32, 0 ,
9476 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv4i16),
9477 MVT::v4i16, 5, 2, 0, 3, 4, 5,
9478 16, MVT::v2i32,
9479 OPC_CheckPatternPredicate1,
9480 OPC_EmitConvertToTarget1,
9481 OPC_EmitInteger32, 28,
9482 OPC_EmitRegisterI32, 0 ,
9483 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv2i32),
9484 MVT::v2i32, 5, 2, 0, 3, 4, 5,
9485 16, MVT::v1i64,
9486 OPC_CheckPatternPredicate1,
9487 OPC_EmitConvertToTarget1,
9488 OPC_EmitInteger32, 28,
9489 OPC_EmitRegisterI32, 0 ,
9490 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv1i64),
9491 MVT::v1i64, 5, 2, 0, 3, 4, 5,
9492 16, MVT::v16i8,
9493 OPC_CheckPatternPredicate1,
9494 OPC_EmitConvertToTarget1,
9495 OPC_EmitInteger32, 28,
9496 OPC_EmitRegisterI32, 0 ,
9497 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv16i8),
9498 MVT::v16i8, 5, 2, 0, 3, 4, 5,
9499 16, MVT::v8i16,
9500 OPC_CheckPatternPredicate1,
9501 OPC_EmitConvertToTarget1,
9502 OPC_EmitInteger32, 28,
9503 OPC_EmitRegisterI32, 0 ,
9504 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv8i16),
9505 MVT::v8i16, 5, 2, 0, 3, 4, 5,
9506 16, MVT::v4i32,
9507 OPC_CheckPatternPredicate1,
9508 OPC_EmitConvertToTarget1,
9509 OPC_EmitInteger32, 28,
9510 OPC_EmitRegisterI32, 0 ,
9511 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv4i32),
9512 MVT::v4i32, 5, 2, 0, 3, 4, 5,
9513 16, MVT::v2i64,
9514 OPC_CheckPatternPredicate1,
9515 OPC_EmitConvertToTarget1,
9516 OPC_EmitInteger32, 28,
9517 OPC_EmitRegisterI32, 0 ,
9518 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAsv2i64),
9519 MVT::v2i64, 5, 2, 0, 3, 4, 5,
9520 0,
9521 27|128,1, TARGET_VAL(ARMISD::VRSHRuIMM),
9522 OPC_RecordChild0,
9523 OPC_RecordChild1,
9524 OPC_MoveChild1,
9525 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9526 OPC_MoveParent,
9527 OPC_MoveParent,
9528 OPC_RecordChild1,
9529 OPC_SwitchType , 16, MVT::v8i8,
9530 OPC_CheckPatternPredicate1,
9531 OPC_EmitConvertToTarget1,
9532 OPC_EmitInteger32, 28,
9533 OPC_EmitRegisterI32, 0 ,
9534 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv8i8),
9535 MVT::v8i8, 5, 2, 0, 3, 4, 5,
9536 16, MVT::v4i16,
9537 OPC_CheckPatternPredicate1,
9538 OPC_EmitConvertToTarget1,
9539 OPC_EmitInteger32, 28,
9540 OPC_EmitRegisterI32, 0 ,
9541 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv4i16),
9542 MVT::v4i16, 5, 2, 0, 3, 4, 5,
9543 16, MVT::v2i32,
9544 OPC_CheckPatternPredicate1,
9545 OPC_EmitConvertToTarget1,
9546 OPC_EmitInteger32, 28,
9547 OPC_EmitRegisterI32, 0 ,
9548 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv2i32),
9549 MVT::v2i32, 5, 2, 0, 3, 4, 5,
9550 16, MVT::v1i64,
9551 OPC_CheckPatternPredicate1,
9552 OPC_EmitConvertToTarget1,
9553 OPC_EmitInteger32, 28,
9554 OPC_EmitRegisterI32, 0 ,
9555 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv1i64),
9556 MVT::v1i64, 5, 2, 0, 3, 4, 5,
9557 16, MVT::v16i8,
9558 OPC_CheckPatternPredicate1,
9559 OPC_EmitConvertToTarget1,
9560 OPC_EmitInteger32, 28,
9561 OPC_EmitRegisterI32, 0 ,
9562 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv16i8),
9563 MVT::v16i8, 5, 2, 0, 3, 4, 5,
9564 16, MVT::v8i16,
9565 OPC_CheckPatternPredicate1,
9566 OPC_EmitConvertToTarget1,
9567 OPC_EmitInteger32, 28,
9568 OPC_EmitRegisterI32, 0 ,
9569 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv8i16),
9570 MVT::v8i16, 5, 2, 0, 3, 4, 5,
9571 16, MVT::v4i32,
9572 OPC_CheckPatternPredicate1,
9573 OPC_EmitConvertToTarget1,
9574 OPC_EmitInteger32, 28,
9575 OPC_EmitRegisterI32, 0 ,
9576 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv4i32),
9577 MVT::v4i32, 5, 2, 0, 3, 4, 5,
9578 16, MVT::v2i64,
9579 OPC_CheckPatternPredicate1,
9580 OPC_EmitConvertToTarget1,
9581 OPC_EmitInteger32, 28,
9582 OPC_EmitRegisterI32, 0 ,
9583 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSRAuv2i64),
9584 MVT::v2i64, 5, 2, 0, 3, 4, 5,
9585 0,
9586 29, TARGET_VAL(ARMISD::VDUP),
9587 OPC_RecordChild0,
9588 OPC_CheckChild0TypeI32,
9589 OPC_MoveSibling1,
9590 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
9591 OPC_RecordChild0,
9592 OPC_RecordChild1,
9593 OPC_MoveParent,
9594 OPC_CheckType, MVT::v16i8,
9595 OPC_CheckPatternPredicate0,
9596 OPC_EmitInteger32, 0,
9597 OPC_EmitRegisterI32, 0 ,
9598 OPC_EmitRegisterI32, 0 ,
9599 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLAS_qr_i8),
9600 MVT::v16i8, 6, 1, 2, 0, 3, 4, 5,
9601 0,
9602 67,
9603 OPC_RecordChild0,
9604 OPC_MoveChild1,
9605 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
9606 OPC_Scope, 29,
9607 OPC_RecordChild0,
9608 OPC_MoveChild1,
9609 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9610 OPC_RecordChild0,
9611 OPC_CheckChild0TypeI32,
9612 OPC_MoveParent,
9613 OPC_MoveParent,
9614 OPC_CheckType, MVT::v16i8,
9615 OPC_CheckPatternPredicate0,
9616 OPC_EmitInteger32, 0,
9617 OPC_EmitRegisterI32, 0 ,
9618 OPC_EmitRegisterI32, 0 ,
9619 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i8),
9620 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
9621 29,
9622 OPC_MoveChild0,
9623 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9624 OPC_RecordChild0,
9625 OPC_CheckChild0TypeI32,
9626 OPC_MoveParent,
9627 OPC_RecordChild1,
9628 OPC_MoveParent,
9629 OPC_CheckType, MVT::v16i8,
9630 OPC_CheckPatternPredicate0,
9631 OPC_EmitInteger32, 0,
9632 OPC_EmitRegisterI32, 0 ,
9633 OPC_EmitRegisterI32, 0 ,
9634 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i8),
9635 MVT::v16i8, 6, 0, 2, 1, 3, 4, 5,
9636 0,
9637 34,
9638 OPC_MoveChild0,
9639 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
9640 OPC_MoveChild0,
9641 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9642 OPC_RecordChild0,
9643 OPC_CheckChild0TypeI32,
9644 OPC_MoveParent,
9645 OPC_RecordChild1,
9646 OPC_MoveParent,
9647 OPC_RecordChild1,
9648 OPC_CheckType, MVT::v8i16,
9649 OPC_CheckPatternPredicate0,
9650 OPC_EmitInteger32, 0,
9651 OPC_EmitRegisterI32, 0 ,
9652 OPC_EmitRegisterI32, 0 ,
9653 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i16),
9654 MVT::v8i16, 6, 2, 1, 0, 3, 4, 5,
9655 67,
9656 OPC_RecordChild0,
9657 OPC_MoveChild1,
9658 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
9659 OPC_Scope, 29,
9660 OPC_RecordChild0,
9661 OPC_MoveChild1,
9662 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9663 OPC_RecordChild0,
9664 OPC_CheckChild0TypeI32,
9665 OPC_MoveParent,
9666 OPC_MoveParent,
9667 OPC_CheckType, MVT::v8i16,
9668 OPC_CheckPatternPredicate0,
9669 OPC_EmitInteger32, 0,
9670 OPC_EmitRegisterI32, 0 ,
9671 OPC_EmitRegisterI32, 0 ,
9672 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i16),
9673 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
9674 29,
9675 OPC_MoveChild0,
9676 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9677 OPC_RecordChild0,
9678 OPC_CheckChild0TypeI32,
9679 OPC_MoveParent,
9680 OPC_RecordChild1,
9681 OPC_MoveParent,
9682 OPC_CheckType, MVT::v8i16,
9683 OPC_CheckPatternPredicate0,
9684 OPC_EmitInteger32, 0,
9685 OPC_EmitRegisterI32, 0 ,
9686 OPC_EmitRegisterI32, 0 ,
9687 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i16),
9688 MVT::v8i16, 6, 0, 2, 1, 3, 4, 5,
9689 0,
9690 34,
9691 OPC_MoveChild0,
9692 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
9693 OPC_MoveChild0,
9694 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9695 OPC_RecordChild0,
9696 OPC_CheckChild0TypeI32,
9697 OPC_MoveParent,
9698 OPC_RecordChild1,
9699 OPC_MoveParent,
9700 OPC_RecordChild1,
9701 OPC_CheckType, MVT::v4i32,
9702 OPC_CheckPatternPredicate0,
9703 OPC_EmitInteger32, 0,
9704 OPC_EmitRegisterI32, 0 ,
9705 OPC_EmitRegisterI32, 0 ,
9706 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i32),
9707 MVT::v4i32, 6, 2, 1, 0, 3, 4, 5,
9708 67,
9709 OPC_RecordChild0,
9710 OPC_MoveChild1,
9711 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
9712 OPC_Scope, 29,
9713 OPC_RecordChild0,
9714 OPC_MoveChild1,
9715 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9716 OPC_RecordChild0,
9717 OPC_CheckChild0TypeI32,
9718 OPC_MoveParent,
9719 OPC_MoveParent,
9720 OPC_CheckType, MVT::v4i32,
9721 OPC_CheckPatternPredicate0,
9722 OPC_EmitInteger32, 0,
9723 OPC_EmitRegisterI32, 0 ,
9724 OPC_EmitRegisterI32, 0 ,
9725 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i32),
9726 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
9727 29,
9728 OPC_MoveChild0,
9729 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9730 OPC_RecordChild0,
9731 OPC_CheckChild0TypeI32,
9732 OPC_MoveParent,
9733 OPC_RecordChild1,
9734 OPC_MoveParent,
9735 OPC_CheckType, MVT::v4i32,
9736 OPC_CheckPatternPredicate0,
9737 OPC_EmitInteger32, 0,
9738 OPC_EmitRegisterI32, 0 ,
9739 OPC_EmitRegisterI32, 0 ,
9740 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i32),
9741 MVT::v4i32, 6, 0, 2, 1, 3, 4, 5,
9742 0,
9743 55,
9744 OPC_MoveChild0,
9745 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
9746 OPC_RecordChild0,
9747 OPC_CheckChild0TypeI32,
9748 OPC_MoveSibling1,
9749 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
9750 OPC_RecordChild0,
9751 OPC_RecordChild1,
9752 OPC_MoveParent,
9753 OPC_SwitchType , 18, MVT::v8i16,
9754 OPC_CheckPatternPredicate0,
9755 OPC_EmitInteger32, 0,
9756 OPC_EmitRegisterI32, 0 ,
9757 OPC_EmitRegisterI32, 0 ,
9758 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLAS_qr_i16),
9759 MVT::v8i16, 6, 1, 2, 0, 3, 4, 5,
9760 18, MVT::v4i32,
9761 OPC_CheckPatternPredicate0,
9762 OPC_EmitInteger32, 0,
9763 OPC_EmitRegisterI32, 0 ,
9764 OPC_EmitRegisterI32, 0 ,
9765 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLAS_qr_i32),
9766 MVT::v4i32, 6, 1, 2, 0, 3, 4, 5,
9767 0,
9768 119|128,5,
9769 OPC_RecordChild0,
9770 OPC_MoveChild1,
9771 OPC_SwitchOpcode , 63, TARGET_VAL(ISD::SIGN_EXTEND),
9772 OPC_RecordChild0,
9773 OPC_Scope, 19,
9774 OPC_CheckChild0Type, MVT::v8i8,
9775 OPC_MoveParent,
9776 OPC_CheckType, MVT::v8i16,
9777 OPC_CheckPatternPredicate1,
9778 OPC_EmitInteger32, 28,
9779 OPC_EmitRegisterI32, 0 ,
9780 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWsv8i16),
9781 MVT::v8i16, 4, 0, 1, 2, 3,
9782 19,
9783 OPC_CheckChild0Type, MVT::v4i16,
9784 OPC_MoveParent,
9785 OPC_CheckType, MVT::v4i32,
9786 OPC_CheckPatternPredicate1,
9787 OPC_EmitInteger32, 28,
9788 OPC_EmitRegisterI32, 0 ,
9789 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWsv4i32),
9790 MVT::v4i32, 4, 0, 1, 2, 3,
9791 19,
9792 OPC_CheckChild0Type, MVT::v2i32,
9793 OPC_MoveParent,
9794 OPC_CheckType, MVT::v2i64,
9795 OPC_CheckPatternPredicate1,
9796 OPC_EmitInteger32, 28,
9797 OPC_EmitRegisterI32, 0 ,
9798 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWsv2i64),
9799 MVT::v2i64, 4, 0, 1, 2, 3,
9800 0,
9801 63, TARGET_VAL(ISD::ZERO_EXTEND),
9802 OPC_RecordChild0,
9803 OPC_Scope, 19,
9804 OPC_CheckChild0Type, MVT::v8i8,
9805 OPC_MoveParent,
9806 OPC_CheckType, MVT::v8i16,
9807 OPC_CheckPatternPredicate1,
9808 OPC_EmitInteger32, 28,
9809 OPC_EmitRegisterI32, 0 ,
9810 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv8i16),
9811 MVT::v8i16, 4, 0, 1, 2, 3,
9812 19,
9813 OPC_CheckChild0Type, MVT::v4i16,
9814 OPC_MoveParent,
9815 OPC_CheckType, MVT::v4i32,
9816 OPC_CheckPatternPredicate1,
9817 OPC_EmitInteger32, 28,
9818 OPC_EmitRegisterI32, 0 ,
9819 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv4i32),
9820 MVT::v4i32, 4, 0, 1, 2, 3,
9821 19,
9822 OPC_CheckChild0Type, MVT::v2i32,
9823 OPC_MoveParent,
9824 OPC_CheckType, MVT::v2i64,
9825 OPC_CheckPatternPredicate1,
9826 OPC_EmitInteger32, 28,
9827 OPC_EmitRegisterI32, 0 ,
9828 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv2i64),
9829 MVT::v2i64, 4, 0, 1, 2, 3,
9830 0,
9831 63, TARGET_VAL(ISD::ANY_EXTEND),
9832 OPC_RecordChild0,
9833 OPC_Scope, 19,
9834 OPC_CheckChild0Type, MVT::v8i8,
9835 OPC_MoveParent,
9836 OPC_CheckType, MVT::v8i16,
9837 OPC_CheckPatternPredicate1,
9838 OPC_EmitInteger32, 28,
9839 OPC_EmitRegisterI32, 0 ,
9840 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv8i16),
9841 MVT::v8i16, 4, 0, 1, 2, 3,
9842 19,
9843 OPC_CheckChild0Type, MVT::v4i16,
9844 OPC_MoveParent,
9845 OPC_CheckType, MVT::v4i32,
9846 OPC_CheckPatternPredicate1,
9847 OPC_EmitInteger32, 28,
9848 OPC_EmitRegisterI32, 0 ,
9849 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv4i32),
9850 MVT::v4i32, 4, 0, 1, 2, 3,
9851 19,
9852 OPC_CheckChild0Type, MVT::v2i32,
9853 OPC_MoveParent,
9854 OPC_CheckType, MVT::v2i64,
9855 OPC_CheckPatternPredicate1,
9856 OPC_EmitInteger32, 28,
9857 OPC_EmitRegisterI32, 0 ,
9858 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv2i64),
9859 MVT::v2i64, 4, 0, 1, 2, 3,
9860 0,
9861 107, TARGET_VAL(ISD::MUL),
9862 OPC_RecordChild0,
9863 OPC_RecordChild1,
9864 OPC_MoveParent,
9865 OPC_SwitchType , 15, MVT::v8i8,
9866 OPC_CheckPatternPredicate1,
9867 OPC_EmitInteger32, 28,
9868 OPC_EmitRegisterI32, 0 ,
9869 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv8i8),
9870 MVT::v8i8, 5, 0, 1, 2, 3, 4,
9871 15, MVT::v4i16,
9872 OPC_CheckPatternPredicate1,
9873 OPC_EmitInteger32, 28,
9874 OPC_EmitRegisterI32, 0 ,
9875 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv4i16),
9876 MVT::v4i16, 5, 0, 1, 2, 3, 4,
9877 15, MVT::v2i32,
9878 OPC_CheckPatternPredicate1,
9879 OPC_EmitInteger32, 28,
9880 OPC_EmitRegisterI32, 0 ,
9881 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv2i32),
9882 MVT::v2i32, 5, 0, 1, 2, 3, 4,
9883 15, MVT::v16i8,
9884 OPC_CheckPatternPredicate1,
9885 OPC_EmitInteger32, 28,
9886 OPC_EmitRegisterI32, 0 ,
9887 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv16i8),
9888 MVT::v16i8, 5, 0, 1, 2, 3, 4,
9889 15, MVT::v8i16,
9890 OPC_CheckPatternPredicate1,
9891 OPC_EmitInteger32, 28,
9892 OPC_EmitRegisterI32, 0 ,
9893 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv8i16),
9894 MVT::v8i16, 5, 0, 1, 2, 3, 4,
9895 15, MVT::v4i32,
9896 OPC_CheckPatternPredicate1,
9897 OPC_EmitInteger32, 28,
9898 OPC_EmitRegisterI32, 0 ,
9899 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv4i32),
9900 MVT::v4i32, 5, 0, 1, 2, 3, 4,
9901 0,
9902 69, TARGET_VAL(ARMISD::VMULLs),
9903 OPC_RecordChild0,
9904 OPC_Scope, 21,
9905 OPC_CheckChild0Type, MVT::v8i8,
9906 OPC_RecordChild1,
9907 OPC_MoveParent,
9908 OPC_CheckType, MVT::v8i16,
9909 OPC_CheckPatternPredicate1,
9910 OPC_EmitInteger32, 28,
9911 OPC_EmitRegisterI32, 0 ,
9912 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALsv8i16),
9913 MVT::v8i16, 5, 0, 1, 2, 3, 4,
9914 21,
9915 OPC_CheckChild0Type, MVT::v4i16,
9916 OPC_RecordChild1,
9917 OPC_MoveParent,
9918 OPC_CheckType, MVT::v4i32,
9919 OPC_CheckPatternPredicate1,
9920 OPC_EmitInteger32, 28,
9921 OPC_EmitRegisterI32, 0 ,
9922 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALsv4i32),
9923 MVT::v4i32, 5, 0, 1, 2, 3, 4,
9924 21,
9925 OPC_CheckChild0Type, MVT::v2i32,
9926 OPC_RecordChild1,
9927 OPC_MoveParent,
9928 OPC_CheckType, MVT::v2i64,
9929 OPC_CheckPatternPredicate1,
9930 OPC_EmitInteger32, 28,
9931 OPC_EmitRegisterI32, 0 ,
9932 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALsv2i64),
9933 MVT::v2i64, 5, 0, 1, 2, 3, 4,
9934 0,
9935 69, TARGET_VAL(ARMISD::VMULLu),
9936 OPC_RecordChild0,
9937 OPC_Scope, 21,
9938 OPC_CheckChild0Type, MVT::v8i8,
9939 OPC_RecordChild1,
9940 OPC_MoveParent,
9941 OPC_CheckType, MVT::v8i16,
9942 OPC_CheckPatternPredicate1,
9943 OPC_EmitInteger32, 28,
9944 OPC_EmitRegisterI32, 0 ,
9945 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALuv8i16),
9946 MVT::v8i16, 5, 0, 1, 2, 3, 4,
9947 21,
9948 OPC_CheckChild0Type, MVT::v4i16,
9949 OPC_RecordChild1,
9950 OPC_MoveParent,
9951 OPC_CheckType, MVT::v4i32,
9952 OPC_CheckPatternPredicate1,
9953 OPC_EmitInteger32, 28,
9954 OPC_EmitRegisterI32, 0 ,
9955 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALuv4i32),
9956 MVT::v4i32, 5, 0, 1, 2, 3, 4,
9957 21,
9958 OPC_CheckChild0Type, MVT::v2i32,
9959 OPC_RecordChild1,
9960 OPC_MoveParent,
9961 OPC_CheckType, MVT::v2i64,
9962 OPC_CheckPatternPredicate1,
9963 OPC_EmitInteger32, 28,
9964 OPC_EmitRegisterI32, 0 ,
9965 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALuv2i64),
9966 MVT::v2i64, 5, 0, 1, 2, 3, 4,
9967 0,
9968 107, TARGET_VAL(ISD::ABDS),
9969 OPC_RecordChild0,
9970 OPC_RecordChild1,
9971 OPC_MoveParent,
9972 OPC_SwitchType , 15, MVT::v8i8,
9973 OPC_CheckPatternPredicate1,
9974 OPC_EmitInteger32, 28,
9975 OPC_EmitRegisterI32, 0 ,
9976 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv8i8),
9977 MVT::v8i8, 5, 0, 1, 2, 3, 4,
9978 15, MVT::v4i16,
9979 OPC_CheckPatternPredicate1,
9980 OPC_EmitInteger32, 28,
9981 OPC_EmitRegisterI32, 0 ,
9982 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv4i16),
9983 MVT::v4i16, 5, 0, 1, 2, 3, 4,
9984 15, MVT::v2i32,
9985 OPC_CheckPatternPredicate1,
9986 OPC_EmitInteger32, 28,
9987 OPC_EmitRegisterI32, 0 ,
9988 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv2i32),
9989 MVT::v2i32, 5, 0, 1, 2, 3, 4,
9990 15, MVT::v16i8,
9991 OPC_CheckPatternPredicate1,
9992 OPC_EmitInteger32, 28,
9993 OPC_EmitRegisterI32, 0 ,
9994 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv16i8),
9995 MVT::v16i8, 5, 0, 1, 2, 3, 4,
9996 15, MVT::v8i16,
9997 OPC_CheckPatternPredicate1,
9998 OPC_EmitInteger32, 28,
9999 OPC_EmitRegisterI32, 0 ,
10000 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv8i16),
10001 MVT::v8i16, 5, 0, 1, 2, 3, 4,
10002 15, MVT::v4i32,
10003 OPC_CheckPatternPredicate1,
10004 OPC_EmitInteger32, 28,
10005 OPC_EmitRegisterI32, 0 ,
10006 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv4i32),
10007 MVT::v4i32, 5, 0, 1, 2, 3, 4,
10008 0,
10009 107, TARGET_VAL(ISD::ABDU),
10010 OPC_RecordChild0,
10011 OPC_RecordChild1,
10012 OPC_MoveParent,
10013 OPC_SwitchType , 15, MVT::v8i8,
10014 OPC_CheckPatternPredicate1,
10015 OPC_EmitInteger32, 28,
10016 OPC_EmitRegisterI32, 0 ,
10017 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv8i8),
10018 MVT::v8i8, 5, 0, 1, 2, 3, 4,
10019 15, MVT::v4i16,
10020 OPC_CheckPatternPredicate1,
10021 OPC_EmitInteger32, 28,
10022 OPC_EmitRegisterI32, 0 ,
10023 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv4i16),
10024 MVT::v4i16, 5, 0, 1, 2, 3, 4,
10025 15, MVT::v2i32,
10026 OPC_CheckPatternPredicate1,
10027 OPC_EmitInteger32, 28,
10028 OPC_EmitRegisterI32, 0 ,
10029 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv2i32),
10030 MVT::v2i32, 5, 0, 1, 2, 3, 4,
10031 15, MVT::v16i8,
10032 OPC_CheckPatternPredicate1,
10033 OPC_EmitInteger32, 28,
10034 OPC_EmitRegisterI32, 0 ,
10035 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv16i8),
10036 MVT::v16i8, 5, 0, 1, 2, 3, 4,
10037 15, MVT::v8i16,
10038 OPC_CheckPatternPredicate1,
10039 OPC_EmitInteger32, 28,
10040 OPC_EmitRegisterI32, 0 ,
10041 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv8i16),
10042 MVT::v8i16, 5, 0, 1, 2, 3, 4,
10043 15, MVT::v4i32,
10044 OPC_CheckPatternPredicate1,
10045 OPC_EmitInteger32, 28,
10046 OPC_EmitRegisterI32, 0 ,
10047 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv4i32),
10048 MVT::v4i32, 5, 0, 1, 2, 3, 4,
10049 0,
10050 80, TARGET_VAL(ARMISD::VDUP),
10051 OPC_RecordChild0,
10052 OPC_CheckChild0TypeI32,
10053 OPC_MoveParent,
10054 OPC_SwitchType , 23, MVT::v16i8,
10055 OPC_CheckPatternPredicate0,
10056 OPC_EmitInteger32, 0,
10057 OPC_EmitRegisterI32, 0 ,
10058 OPC_EmitRegisterI32, 0 ,
10059 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
10060 MVT::v4i32, 0,
10061 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i8),
10062 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
10063 23, MVT::v8i16,
10064 OPC_CheckPatternPredicate0,
10065 OPC_EmitInteger32, 0,
10066 OPC_EmitRegisterI32, 0 ,
10067 OPC_EmitRegisterI32, 0 ,
10068 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
10069 MVT::v4i32, 0,
10070 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i16),
10071 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
10072 23, MVT::v4i32,
10073 OPC_CheckPatternPredicate0,
10074 OPC_EmitInteger32, 0,
10075 OPC_EmitRegisterI32, 0 ,
10076 OPC_EmitRegisterI32, 0 ,
10077 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
10078 MVT::v4i32, 0,
10079 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i32),
10080 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
10081 0,
10082 0,
10083 9|128,6,
10084 OPC_MoveChild0,
10085 OPC_SwitchOpcode , 66, TARGET_VAL(ISD::SIGN_EXTEND),
10086 OPC_RecordChild0,
10087 OPC_Scope, 20,
10088 OPC_CheckChild0Type, MVT::v8i8,
10089 OPC_MoveParent,
10090 OPC_RecordChild1,
10091 OPC_CheckType, MVT::v8i16,
10092 OPC_CheckPatternPredicate1,
10093 OPC_EmitInteger32, 28,
10094 OPC_EmitRegisterI32, 0 ,
10095 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWsv8i16),
10096 MVT::v8i16, 4, 1, 0, 2, 3,
10097 20,
10098 OPC_CheckChild0Type, MVT::v4i16,
10099 OPC_MoveParent,
10100 OPC_RecordChild1,
10101 OPC_CheckType, MVT::v4i32,
10102 OPC_CheckPatternPredicate1,
10103 OPC_EmitInteger32, 28,
10104 OPC_EmitRegisterI32, 0 ,
10105 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWsv4i32),
10106 MVT::v4i32, 4, 1, 0, 2, 3,
10107 20,
10108 OPC_CheckChild0Type, MVT::v2i32,
10109 OPC_MoveParent,
10110 OPC_RecordChild1,
10111 OPC_CheckType, MVT::v2i64,
10112 OPC_CheckPatternPredicate1,
10113 OPC_EmitInteger32, 28,
10114 OPC_EmitRegisterI32, 0 ,
10115 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWsv2i64),
10116 MVT::v2i64, 4, 1, 0, 2, 3,
10117 0,
10118 66, TARGET_VAL(ISD::ZERO_EXTEND),
10119 OPC_RecordChild0,
10120 OPC_Scope, 20,
10121 OPC_CheckChild0Type, MVT::v8i8,
10122 OPC_MoveParent,
10123 OPC_RecordChild1,
10124 OPC_CheckType, MVT::v8i16,
10125 OPC_CheckPatternPredicate1,
10126 OPC_EmitInteger32, 28,
10127 OPC_EmitRegisterI32, 0 ,
10128 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv8i16),
10129 MVT::v8i16, 4, 1, 0, 2, 3,
10130 20,
10131 OPC_CheckChild0Type, MVT::v4i16,
10132 OPC_MoveParent,
10133 OPC_RecordChild1,
10134 OPC_CheckType, MVT::v4i32,
10135 OPC_CheckPatternPredicate1,
10136 OPC_EmitInteger32, 28,
10137 OPC_EmitRegisterI32, 0 ,
10138 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv4i32),
10139 MVT::v4i32, 4, 1, 0, 2, 3,
10140 20,
10141 OPC_CheckChild0Type, MVT::v2i32,
10142 OPC_MoveParent,
10143 OPC_RecordChild1,
10144 OPC_CheckType, MVT::v2i64,
10145 OPC_CheckPatternPredicate1,
10146 OPC_EmitInteger32, 28,
10147 OPC_EmitRegisterI32, 0 ,
10148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv2i64),
10149 MVT::v2i64, 4, 1, 0, 2, 3,
10150 0,
10151 66, TARGET_VAL(ISD::ANY_EXTEND),
10152 OPC_RecordChild0,
10153 OPC_Scope, 20,
10154 OPC_CheckChild0Type, MVT::v8i8,
10155 OPC_MoveParent,
10156 OPC_RecordChild1,
10157 OPC_CheckType, MVT::v8i16,
10158 OPC_CheckPatternPredicate1,
10159 OPC_EmitInteger32, 28,
10160 OPC_EmitRegisterI32, 0 ,
10161 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv8i16),
10162 MVT::v8i16, 4, 1, 0, 2, 3,
10163 20,
10164 OPC_CheckChild0Type, MVT::v4i16,
10165 OPC_MoveParent,
10166 OPC_RecordChild1,
10167 OPC_CheckType, MVT::v4i32,
10168 OPC_CheckPatternPredicate1,
10169 OPC_EmitInteger32, 28,
10170 OPC_EmitRegisterI32, 0 ,
10171 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv4i32),
10172 MVT::v4i32, 4, 1, 0, 2, 3,
10173 20,
10174 OPC_CheckChild0Type, MVT::v2i32,
10175 OPC_MoveParent,
10176 OPC_RecordChild1,
10177 OPC_CheckType, MVT::v2i64,
10178 OPC_CheckPatternPredicate1,
10179 OPC_EmitInteger32, 28,
10180 OPC_EmitRegisterI32, 0 ,
10181 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDWuv2i64),
10182 MVT::v2i64, 4, 1, 0, 2, 3,
10183 0,
10184 108, TARGET_VAL(ISD::MUL),
10185 OPC_RecordChild0,
10186 OPC_RecordChild1,
10187 OPC_MoveParent,
10188 OPC_RecordChild1,
10189 OPC_SwitchType , 15, MVT::v8i8,
10190 OPC_CheckPatternPredicate1,
10191 OPC_EmitInteger32, 28,
10192 OPC_EmitRegisterI32, 0 ,
10193 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv8i8),
10194 MVT::v8i8, 5, 2, 0, 1, 3, 4,
10195 15, MVT::v4i16,
10196 OPC_CheckPatternPredicate1,
10197 OPC_EmitInteger32, 28,
10198 OPC_EmitRegisterI32, 0 ,
10199 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv4i16),
10200 MVT::v4i16, 5, 2, 0, 1, 3, 4,
10201 15, MVT::v2i32,
10202 OPC_CheckPatternPredicate1,
10203 OPC_EmitInteger32, 28,
10204 OPC_EmitRegisterI32, 0 ,
10205 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv2i32),
10206 MVT::v2i32, 5, 2, 0, 1, 3, 4,
10207 15, MVT::v16i8,
10208 OPC_CheckPatternPredicate1,
10209 OPC_EmitInteger32, 28,
10210 OPC_EmitRegisterI32, 0 ,
10211 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv16i8),
10212 MVT::v16i8, 5, 2, 0, 1, 3, 4,
10213 15, MVT::v8i16,
10214 OPC_CheckPatternPredicate1,
10215 OPC_EmitInteger32, 28,
10216 OPC_EmitRegisterI32, 0 ,
10217 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv8i16),
10218 MVT::v8i16, 5, 2, 0, 1, 3, 4,
10219 15, MVT::v4i32,
10220 OPC_CheckPatternPredicate1,
10221 OPC_EmitInteger32, 28,
10222 OPC_EmitRegisterI32, 0 ,
10223 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAv4i32),
10224 MVT::v4i32, 5, 2, 0, 1, 3, 4,
10225 0,
10226 72, TARGET_VAL(ARMISD::VMULLs),
10227 OPC_RecordChild0,
10228 OPC_Scope, 22,
10229 OPC_CheckChild0Type, MVT::v8i8,
10230 OPC_RecordChild1,
10231 OPC_MoveParent,
10232 OPC_RecordChild1,
10233 OPC_CheckType, MVT::v8i16,
10234 OPC_CheckPatternPredicate1,
10235 OPC_EmitInteger32, 28,
10236 OPC_EmitRegisterI32, 0 ,
10237 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALsv8i16),
10238 MVT::v8i16, 5, 2, 0, 1, 3, 4,
10239 22,
10240 OPC_CheckChild0Type, MVT::v4i16,
10241 OPC_RecordChild1,
10242 OPC_MoveParent,
10243 OPC_RecordChild1,
10244 OPC_CheckType, MVT::v4i32,
10245 OPC_CheckPatternPredicate1,
10246 OPC_EmitInteger32, 28,
10247 OPC_EmitRegisterI32, 0 ,
10248 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALsv4i32),
10249 MVT::v4i32, 5, 2, 0, 1, 3, 4,
10250 22,
10251 OPC_CheckChild0Type, MVT::v2i32,
10252 OPC_RecordChild1,
10253 OPC_MoveParent,
10254 OPC_RecordChild1,
10255 OPC_CheckType, MVT::v2i64,
10256 OPC_CheckPatternPredicate1,
10257 OPC_EmitInteger32, 28,
10258 OPC_EmitRegisterI32, 0 ,
10259 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALsv2i64),
10260 MVT::v2i64, 5, 2, 0, 1, 3, 4,
10261 0,
10262 72, TARGET_VAL(ARMISD::VMULLu),
10263 OPC_RecordChild0,
10264 OPC_Scope, 22,
10265 OPC_CheckChild0Type, MVT::v8i8,
10266 OPC_RecordChild1,
10267 OPC_MoveParent,
10268 OPC_RecordChild1,
10269 OPC_CheckType, MVT::v8i16,
10270 OPC_CheckPatternPredicate1,
10271 OPC_EmitInteger32, 28,
10272 OPC_EmitRegisterI32, 0 ,
10273 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALuv8i16),
10274 MVT::v8i16, 5, 2, 0, 1, 3, 4,
10275 22,
10276 OPC_CheckChild0Type, MVT::v4i16,
10277 OPC_RecordChild1,
10278 OPC_MoveParent,
10279 OPC_RecordChild1,
10280 OPC_CheckType, MVT::v4i32,
10281 OPC_CheckPatternPredicate1,
10282 OPC_EmitInteger32, 28,
10283 OPC_EmitRegisterI32, 0 ,
10284 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALuv4i32),
10285 MVT::v4i32, 5, 2, 0, 1, 3, 4,
10286 22,
10287 OPC_CheckChild0Type, MVT::v2i32,
10288 OPC_RecordChild1,
10289 OPC_MoveParent,
10290 OPC_RecordChild1,
10291 OPC_CheckType, MVT::v2i64,
10292 OPC_CheckPatternPredicate1,
10293 OPC_EmitInteger32, 28,
10294 OPC_EmitRegisterI32, 0 ,
10295 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLALuv2i64),
10296 MVT::v2i64, 5, 2, 0, 1, 3, 4,
10297 0,
10298 108, TARGET_VAL(ISD::ABDS),
10299 OPC_RecordChild0,
10300 OPC_RecordChild1,
10301 OPC_MoveParent,
10302 OPC_RecordChild1,
10303 OPC_SwitchType , 15, MVT::v8i8,
10304 OPC_CheckPatternPredicate1,
10305 OPC_EmitInteger32, 28,
10306 OPC_EmitRegisterI32, 0 ,
10307 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv8i8),
10308 MVT::v8i8, 5, 2, 0, 1, 3, 4,
10309 15, MVT::v4i16,
10310 OPC_CheckPatternPredicate1,
10311 OPC_EmitInteger32, 28,
10312 OPC_EmitRegisterI32, 0 ,
10313 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv4i16),
10314 MVT::v4i16, 5, 2, 0, 1, 3, 4,
10315 15, MVT::v2i32,
10316 OPC_CheckPatternPredicate1,
10317 OPC_EmitInteger32, 28,
10318 OPC_EmitRegisterI32, 0 ,
10319 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv2i32),
10320 MVT::v2i32, 5, 2, 0, 1, 3, 4,
10321 15, MVT::v16i8,
10322 OPC_CheckPatternPredicate1,
10323 OPC_EmitInteger32, 28,
10324 OPC_EmitRegisterI32, 0 ,
10325 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv16i8),
10326 MVT::v16i8, 5, 2, 0, 1, 3, 4,
10327 15, MVT::v8i16,
10328 OPC_CheckPatternPredicate1,
10329 OPC_EmitInteger32, 28,
10330 OPC_EmitRegisterI32, 0 ,
10331 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv8i16),
10332 MVT::v8i16, 5, 2, 0, 1, 3, 4,
10333 15, MVT::v4i32,
10334 OPC_CheckPatternPredicate1,
10335 OPC_EmitInteger32, 28,
10336 OPC_EmitRegisterI32, 0 ,
10337 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAsv4i32),
10338 MVT::v4i32, 5, 2, 0, 1, 3, 4,
10339 0,
10340 108, TARGET_VAL(ISD::ABDU),
10341 OPC_RecordChild0,
10342 OPC_RecordChild1,
10343 OPC_MoveParent,
10344 OPC_RecordChild1,
10345 OPC_SwitchType , 15, MVT::v8i8,
10346 OPC_CheckPatternPredicate1,
10347 OPC_EmitInteger32, 28,
10348 OPC_EmitRegisterI32, 0 ,
10349 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv8i8),
10350 MVT::v8i8, 5, 2, 0, 1, 3, 4,
10351 15, MVT::v4i16,
10352 OPC_CheckPatternPredicate1,
10353 OPC_EmitInteger32, 28,
10354 OPC_EmitRegisterI32, 0 ,
10355 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv4i16),
10356 MVT::v4i16, 5, 2, 0, 1, 3, 4,
10357 15, MVT::v2i32,
10358 OPC_CheckPatternPredicate1,
10359 OPC_EmitInteger32, 28,
10360 OPC_EmitRegisterI32, 0 ,
10361 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv2i32),
10362 MVT::v2i32, 5, 2, 0, 1, 3, 4,
10363 15, MVT::v16i8,
10364 OPC_CheckPatternPredicate1,
10365 OPC_EmitInteger32, 28,
10366 OPC_EmitRegisterI32, 0 ,
10367 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv16i8),
10368 MVT::v16i8, 5, 2, 0, 1, 3, 4,
10369 15, MVT::v8i16,
10370 OPC_CheckPatternPredicate1,
10371 OPC_EmitInteger32, 28,
10372 OPC_EmitRegisterI32, 0 ,
10373 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv8i16),
10374 MVT::v8i16, 5, 2, 0, 1, 3, 4,
10375 15, MVT::v4i32,
10376 OPC_CheckPatternPredicate1,
10377 OPC_EmitInteger32, 28,
10378 OPC_EmitRegisterI32, 0 ,
10379 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABAuv4i32),
10380 MVT::v4i32, 5, 2, 0, 1, 3, 4,
10381 0,
10382 81, TARGET_VAL(ARMISD::VDUP),
10383 OPC_RecordChild0,
10384 OPC_CheckChild0TypeI32,
10385 OPC_MoveParent,
10386 OPC_RecordChild1,
10387 OPC_SwitchType , 23, MVT::v16i8,
10388 OPC_CheckPatternPredicate0,
10389 OPC_EmitInteger32, 0,
10390 OPC_EmitRegisterI32, 0 ,
10391 OPC_EmitRegisterI32, 0 ,
10392 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
10393 MVT::v4i32, 0,
10394 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i8),
10395 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
10396 23, MVT::v8i16,
10397 OPC_CheckPatternPredicate0,
10398 OPC_EmitInteger32, 0,
10399 OPC_EmitRegisterI32, 0 ,
10400 OPC_EmitRegisterI32, 0 ,
10401 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
10402 MVT::v4i32, 0,
10403 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i16),
10404 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
10405 23, MVT::v4i32,
10406 OPC_CheckPatternPredicate0,
10407 OPC_EmitInteger32, 0,
10408 OPC_EmitRegisterI32, 0 ,
10409 OPC_EmitRegisterI32, 0 ,
10410 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
10411 MVT::v4i32, 0,
10412 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i32),
10413 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
10414 0,
10415 0,
10416 85|128,1,
10417 OPC_RecordChild0,
10418 OPC_RecordChild1,
10419 OPC_SwitchType , 14, MVT::v8i8,
10420 OPC_CheckPatternPredicate1,
10421 OPC_EmitInteger32, 28,
10422 OPC_EmitRegisterI32, 0 ,
10423 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDv8i8),
10424 MVT::v8i8, 4, 0, 1, 2, 3,
10425 14, MVT::v4i16,
10426 OPC_CheckPatternPredicate1,
10427 OPC_EmitInteger32, 28,
10428 OPC_EmitRegisterI32, 0 ,
10429 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDv4i16),
10430 MVT::v4i16, 4, 0, 1, 2, 3,
10431 14, MVT::v2i32,
10432 OPC_CheckPatternPredicate1,
10433 OPC_EmitInteger32, 28,
10434 OPC_EmitRegisterI32, 0 ,
10435 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDv2i32),
10436 MVT::v2i32, 4, 0, 1, 2, 3,
10437 41, MVT::v16i8,
10438 OPC_Scope, 14,
10439 OPC_CheckPatternPredicate1,
10440 OPC_EmitInteger32, 28,
10441 OPC_EmitRegisterI32, 0 ,
10442 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDv16i8),
10443 MVT::v16i8, 4, 0, 1, 2, 3,
10444 23,
10445 OPC_CheckPatternPredicate0,
10446 OPC_EmitInteger32, 0,
10447 OPC_EmitRegisterI32, 0 ,
10448 OPC_EmitRegisterI32, 0 ,
10449 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
10450 MVT::v4i32, 0,
10451 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi8),
10452 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
10453 0,
10454 41, MVT::v8i16,
10455 OPC_Scope, 14,
10456 OPC_CheckPatternPredicate1,
10457 OPC_EmitInteger32, 28,
10458 OPC_EmitRegisterI32, 0 ,
10459 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDv8i16),
10460 MVT::v8i16, 4, 0, 1, 2, 3,
10461 23,
10462 OPC_CheckPatternPredicate0,
10463 OPC_EmitInteger32, 0,
10464 OPC_EmitRegisterI32, 0 ,
10465 OPC_EmitRegisterI32, 0 ,
10466 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
10467 MVT::v4i32, 0,
10468 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi16),
10469 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
10470 0,
10471 41, MVT::v4i32,
10472 OPC_Scope, 14,
10473 OPC_CheckPatternPredicate1,
10474 OPC_EmitInteger32, 28,
10475 OPC_EmitRegisterI32, 0 ,
10476 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDv4i32),
10477 MVT::v4i32, 4, 0, 1, 2, 3,
10478 23,
10479 OPC_CheckPatternPredicate0,
10480 OPC_EmitInteger32, 0,
10481 OPC_EmitRegisterI32, 0 ,
10482 OPC_EmitRegisterI32, 0 ,
10483 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
10484 MVT::v4i32, 0,
10485 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi32),
10486 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
10487 0,
10488 14, MVT::v1i64,
10489 OPC_CheckPatternPredicate1,
10490 OPC_EmitInteger32, 28,
10491 OPC_EmitRegisterI32, 0 ,
10492 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDv1i64),
10493 MVT::v1i64, 4, 0, 1, 2, 3,
10494 14, MVT::v2i64,
10495 OPC_CheckPatternPredicate1,
10496 OPC_EmitInteger32, 28,
10497 OPC_EmitRegisterI32, 0 ,
10498 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDv2i64),
10499 MVT::v2i64, 4, 0, 1, 2, 3,
10500 0,
10501 0,
10502 88|128,81, TARGET_VAL(ISD::AND),
10503 OPC_Scope, 52,
10504 OPC_CheckAndImm, 127|128,1|128,124|128,7,
10505 OPC_MoveChild0,
10506 OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
10507 OPC_RecordChild0,
10508 OPC_CheckChild1Integer, 16,
10509 OPC_CheckChild1TypeI32,
10510 OPC_MoveParent,
10511 OPC_CheckTypeI32,
10512 OPC_Scope, 17,
10513 OPC_CheckPatternPredicate, 9,
10514 OPC_EmitInteger32, 2,
10515 OPC_EmitInteger32, 28,
10516 OPC_EmitRegisterI32, 0 ,
10517 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTB16),
10518 MVT::i32, 4, 0, 1, 2, 3,
10519 16,
10520 OPC_CheckPatternPredicate5,
10521 OPC_EmitInteger32, 2,
10522 OPC_EmitInteger32, 28,
10523 OPC_EmitRegisterI32, 0 ,
10524 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTB16),
10525 MVT::i32, 4, 0, 1, 2, 3,
10526 0,
10527 38,
10528 OPC_CheckAndImm, 127|128,1,
10529 OPC_MoveChild0,
10530 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
10531 OPC_RecordChild0,
10532 OPC_RecordChild1,
10533 OPC_MoveChild1,
10534 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10535 OPC_CheckPredicate, 12,
10536 OPC_CheckTypeI32,
10537 OPC_MoveParent,
10538 OPC_MoveParent,
10539 OPC_CheckTypeI32,
10540 OPC_CheckPatternPredicate, 9,
10541 OPC_EmitConvertToTarget1,
10542 OPC_EmitNodeXForm, 2, 2,
10543 OPC_EmitInteger32, 28,
10544 OPC_EmitRegisterI32, 0 ,
10545 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTB),
10546 MVT::i32, 4, 0, 3, 4, 5,
10547 39,
10548 OPC_CheckAndImm, 127|128,127|128,3,
10549 OPC_MoveChild0,
10550 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
10551 OPC_RecordChild0,
10552 OPC_RecordChild1,
10553 OPC_MoveChild1,
10554 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10555 OPC_CheckPredicate, 12,
10556 OPC_CheckTypeI32,
10557 OPC_MoveParent,
10558 OPC_MoveParent,
10559 OPC_CheckTypeI32,
10560 OPC_CheckPatternPredicate, 9,
10561 OPC_EmitConvertToTarget1,
10562 OPC_EmitNodeXForm, 2, 2,
10563 OPC_EmitInteger32, 28,
10564 OPC_EmitRegisterI32, 0 ,
10565 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTH),
10566 MVT::i32, 4, 0, 3, 4, 5,
10567 40,
10568 OPC_CheckAndImm, 127|128,1|128,124|128,7,
10569 OPC_MoveChild0,
10570 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
10571 OPC_RecordChild0,
10572 OPC_RecordChild1,
10573 OPC_MoveChild1,
10574 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10575 OPC_CheckPredicate, 12,
10576 OPC_CheckTypeI32,
10577 OPC_MoveParent,
10578 OPC_MoveParent,
10579 OPC_CheckTypeI32,
10580 OPC_CheckPatternPredicate, 9,
10581 OPC_EmitConvertToTarget1,
10582 OPC_EmitNodeXForm, 2, 2,
10583 OPC_EmitInteger32, 28,
10584 OPC_EmitRegisterI32, 0 ,
10585 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTB16),
10586 MVT::i32, 4, 0, 3, 4, 5,
10587 37,
10588 OPC_CheckAndImm, 127|128,1,
10589 OPC_MoveChild0,
10590 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
10591 OPC_RecordChild0,
10592 OPC_RecordChild1,
10593 OPC_MoveChild1,
10594 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10595 OPC_CheckPredicate, 12,
10596 OPC_CheckTypeI32,
10597 OPC_MoveParent,
10598 OPC_MoveParent,
10599 OPC_CheckTypeI32,
10600 OPC_CheckPatternPredicate5,
10601 OPC_EmitConvertToTarget1,
10602 OPC_EmitNodeXForm, 2, 2,
10603 OPC_EmitInteger32, 28,
10604 OPC_EmitRegisterI32, 0 ,
10605 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTB),
10606 MVT::i32, 4, 0, 3, 4, 5,
10607 38,
10608 OPC_CheckAndImm, 127|128,127|128,3,
10609 OPC_MoveChild0,
10610 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
10611 OPC_RecordChild0,
10612 OPC_RecordChild1,
10613 OPC_MoveChild1,
10614 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10615 OPC_CheckPredicate, 12,
10616 OPC_CheckTypeI32,
10617 OPC_MoveParent,
10618 OPC_MoveParent,
10619 OPC_CheckTypeI32,
10620 OPC_CheckPatternPredicate5,
10621 OPC_EmitConvertToTarget1,
10622 OPC_EmitNodeXForm, 2, 2,
10623 OPC_EmitInteger32, 28,
10624 OPC_EmitRegisterI32, 0 ,
10625 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTH),
10626 MVT::i32, 4, 0, 3, 4, 5,
10627 39,
10628 OPC_CheckAndImm, 127|128,1|128,124|128,7,
10629 OPC_MoveChild0,
10630 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
10631 OPC_RecordChild0,
10632 OPC_RecordChild1,
10633 OPC_MoveChild1,
10634 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10635 OPC_CheckPredicate, 12,
10636 OPC_CheckTypeI32,
10637 OPC_MoveParent,
10638 OPC_MoveParent,
10639 OPC_CheckTypeI32,
10640 OPC_CheckPatternPredicate5,
10641 OPC_EmitConvertToTarget1,
10642 OPC_EmitNodeXForm, 2, 2,
10643 OPC_EmitInteger32, 28,
10644 OPC_EmitRegisterI32, 0 ,
10645 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTB16),
10646 MVT::i32, 4, 0, 3, 4, 5,
10647 31,
10648 OPC_RecordChild0,
10649 OPC_MoveChild0,
10650 OPC_CheckPredicate, 72,
10651 OPC_MoveSibling1,
10652 OPC_CheckOpcode, TARGET_VAL(ARMISD::CSINC),
10653 OPC_CaptureGlueInput,
10654 OPC_CheckChild0Integer, 0,
10655 OPC_CheckChild1Integer, 0,
10656 OPC_RecordChild2,
10657 OPC_CheckPredicate2,
10658 OPC_MoveParent,
10659 OPC_CheckTypeI32,
10660 OPC_CheckPatternPredicate, 20,
10661 OPC_CheckComplexPat2, /*#*/1,
10662 OPC_EmitRegisterI32, ARM::ZR,
10663 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSEL),
10664 MVT::i32, 3, 4, 0, 2,
10665 31,
10666 OPC_MoveChild0,
10667 OPC_CheckOpcode, TARGET_VAL(ARMISD::CSINC),
10668 OPC_CaptureGlueInput,
10669 OPC_CheckChild0Integer, 0,
10670 OPC_CheckChild1Integer, 0,
10671 OPC_RecordChild2,
10672 OPC_CheckPredicate2,
10673 OPC_MoveSibling1,
10674 OPC_RecordNode,
10675 OPC_CheckPredicate, 72,
10676 OPC_MoveParent,
10677 OPC_CheckTypeI32,
10678 OPC_CheckPatternPredicate, 20,
10679 OPC_CheckComplexPat2, /*#*/0,
10680 OPC_EmitRegisterI32, ARM::ZR,
10681 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSEL),
10682 MVT::i32, 3, 4, 1, 2,
10683 22,
10684 OPC_CheckAndImm, 127|128,1,
10685 OPC_RecordChild0,
10686 OPC_CheckTypeI32,
10687 OPC_CheckPatternPredicate, 9,
10688 OPC_EmitInteger32, 0,
10689 OPC_EmitInteger32, 28,
10690 OPC_EmitRegisterI32, 0 ,
10691 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTB),
10692 MVT::i32, 4, 0, 1, 2, 3,
10693 23,
10694 OPC_CheckAndImm, 127|128,127|128,3,
10695 OPC_RecordChild0,
10696 OPC_CheckTypeI32,
10697 OPC_CheckPatternPredicate, 9,
10698 OPC_EmitInteger32, 0,
10699 OPC_EmitInteger32, 28,
10700 OPC_EmitRegisterI32, 0 ,
10701 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTH),
10702 MVT::i32, 4, 0, 1, 2, 3,
10703 24,
10704 OPC_CheckAndImm, 127|128,1|128,124|128,7,
10705 OPC_RecordChild0,
10706 OPC_CheckTypeI32,
10707 OPC_CheckPatternPredicate, 9,
10708 OPC_EmitInteger32, 0,
10709 OPC_EmitInteger32, 28,
10710 OPC_EmitRegisterI32, 0 ,
10711 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTB16),
10712 MVT::i32, 4, 0, 1, 2, 3,
10713 21,
10714 OPC_CheckAndImm, 127|128,1,
10715 OPC_RecordChild0,
10716 OPC_CheckTypeI32,
10717 OPC_CheckPatternPredicate4,
10718 OPC_EmitInteger32, 0,
10719 OPC_EmitInteger32, 28,
10720 OPC_EmitRegisterI32, 0 ,
10721 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTB),
10722 MVT::i32, 4, 0, 1, 2, 3,
10723 22,
10724 OPC_CheckAndImm, 127|128,127|128,3,
10725 OPC_RecordChild0,
10726 OPC_CheckTypeI32,
10727 OPC_CheckPatternPredicate4,
10728 OPC_EmitInteger32, 0,
10729 OPC_EmitInteger32, 28,
10730 OPC_EmitRegisterI32, 0 ,
10731 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTH),
10732 MVT::i32, 4, 0, 1, 2, 3,
10733 23,
10734 OPC_CheckAndImm, 127|128,1|128,124|128,7,
10735 OPC_RecordChild0,
10736 OPC_CheckTypeI32,
10737 OPC_CheckPatternPredicate5,
10738 OPC_EmitInteger32, 0,
10739 OPC_EmitInteger32, 28,
10740 OPC_EmitRegisterI32, 0 ,
10741 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTB16),
10742 MVT::i32, 4, 0, 1, 2, 3,
10743 31,
10744 OPC_RecordChild0,
10745 OPC_MoveChild1,
10746 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
10747 OPC_RecordChild0,
10748 OPC_CheckChild1Integer, 3,
10749 OPC_MoveParent,
10750 OPC_CheckTypeI32,
10751 OPC_CheckPatternPredicate3,
10752 OPC_CheckComplexPat4, /*#*/1,
10753 OPC_EmitInteger32, 28,
10754 OPC_EmitRegisterI32, 0 ,
10755 OPC_EmitRegisterI32, 0 ,
10756 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BICrsr),
10757 MVT::i32, 7, 0, 2, 3, 4, 5, 6, 7,
10758 34,
10759 OPC_CheckAndImm, 127|128,1,
10760 OPC_MoveChild0,
10761 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_W_CHAIN),
10762 OPC_RecordNode,
10763 OPC_CheckFoldableChainNode,
10764 OPC_CheckChild1Integer, 96|128,49,
10765 OPC_RecordChild2,
10766 OPC_CheckChild2TypeI32,
10767 OPC_CheckPredicate, 31,
10768 OPC_MoveParent,
10769 OPC_CheckPatternPredicate, 31,
10770 OPC_CheckComplexPat1, /*#*/1,
10771 OPC_EmitMergeInputChains1_0,
10772 OPC_EmitInteger32, 28,
10773 OPC_EmitRegisterI32, 0 ,
10774 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2LDREXB),
10775 MVT::i32, 3, 2, 3, 4,
10776 35,
10777 OPC_CheckAndImm, 127|128,127|128,3,
10778 OPC_MoveChild0,
10779 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_W_CHAIN),
10780 OPC_RecordNode,
10781 OPC_CheckFoldableChainNode,
10782 OPC_CheckChild1Integer, 96|128,49,
10783 OPC_RecordChild2,
10784 OPC_CheckChild2TypeI32,
10785 OPC_CheckPredicate, 32,
10786 OPC_MoveParent,
10787 OPC_CheckPatternPredicate, 31,
10788 OPC_CheckComplexPat1, /*#*/1,
10789 OPC_EmitMergeInputChains1_0,
10790 OPC_EmitInteger32, 28,
10791 OPC_EmitRegisterI32, 0 ,
10792 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2LDREXH),
10793 MVT::i32, 3, 2, 3, 4,
10794 34,
10795 OPC_CheckAndImm, 127|128,1,
10796 OPC_MoveChild0,
10797 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_W_CHAIN),
10798 OPC_RecordNode,
10799 OPC_CheckFoldableChainNode,
10800 OPC_CheckChild1Integer, 84|128,49,
10801 OPC_RecordChild2,
10802 OPC_CheckChild2TypeI32,
10803 OPC_CheckPredicate, 31,
10804 OPC_MoveParent,
10805 OPC_CheckPatternPredicate, 29,
10806 OPC_CheckComplexPat1, /*#*/1,
10807 OPC_EmitMergeInputChains1_0,
10808 OPC_EmitInteger32, 28,
10809 OPC_EmitRegisterI32, 0 ,
10810 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2LDAEXB),
10811 MVT::i32, 3, 2, 3, 4,
10812 35,
10813 OPC_CheckAndImm, 127|128,127|128,3,
10814 OPC_MoveChild0,
10815 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_W_CHAIN),
10816 OPC_RecordNode,
10817 OPC_CheckFoldableChainNode,
10818 OPC_CheckChild1Integer, 84|128,49,
10819 OPC_RecordChild2,
10820 OPC_CheckChild2TypeI32,
10821 OPC_CheckPredicate, 32,
10822 OPC_MoveParent,
10823 OPC_CheckPatternPredicate, 29,
10824 OPC_CheckComplexPat1, /*#*/1,
10825 OPC_EmitMergeInputChains1_0,
10826 OPC_EmitInteger32, 28,
10827 OPC_EmitRegisterI32, 0 ,
10828 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2LDAEXH),
10829 MVT::i32, 3, 2, 3, 4,
10830 31,
10831 OPC_MoveChild0,
10832 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
10833 OPC_RecordChild0,
10834 OPC_CheckChild1Integer, 3,
10835 OPC_MoveParent,
10836 OPC_RecordChild1,
10837 OPC_CheckTypeI32,
10838 OPC_CheckPatternPredicate3,
10839 OPC_CheckComplexPat4, /*#*/0,
10840 OPC_EmitInteger32, 28,
10841 OPC_EmitRegisterI32, 0 ,
10842 OPC_EmitRegisterI32, 0 ,
10843 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BICrsr),
10844 MVT::i32, 7, 1, 2, 3, 4, 5, 6, 7,
10845 54,
10846 OPC_RecordChild0,
10847 OPC_MoveChild1,
10848 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
10849 OPC_RecordChild0,
10850 OPC_CheckChild1Integer, 3,
10851 OPC_MoveParent,
10852 OPC_CheckTypeI32,
10853 OPC_Scope, 20,
10854 OPC_CheckPatternPredicate3,
10855 OPC_CheckComplexPat5, /*#*/1,
10856 OPC_EmitInteger32, 28,
10857 OPC_EmitRegisterI32, 0 ,
10858 OPC_EmitRegisterI32, 0 ,
10859 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BICrsi),
10860 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
10861 20,
10862 OPC_CheckPatternPredicate4,
10863 OPC_CheckComplexPat7, /*#*/1,
10864 OPC_EmitInteger32, 28,
10865 OPC_EmitRegisterI32, 0 ,
10866 OPC_EmitRegisterI32, 0 ,
10867 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BICrs),
10868 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
10869 0,
10870 54,
10871 OPC_MoveChild0,
10872 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
10873 OPC_RecordChild0,
10874 OPC_CheckChild1Integer, 3,
10875 OPC_MoveParent,
10876 OPC_RecordChild1,
10877 OPC_CheckTypeI32,
10878 OPC_Scope, 20,
10879 OPC_CheckPatternPredicate3,
10880 OPC_CheckComplexPat5, /*#*/0,
10881 OPC_EmitInteger32, 28,
10882 OPC_EmitRegisterI32, 0 ,
10883 OPC_EmitRegisterI32, 0 ,
10884 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BICrsi),
10885 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
10886 20,
10887 OPC_CheckPatternPredicate4,
10888 OPC_CheckComplexPat7, /*#*/0,
10889 OPC_EmitInteger32, 28,
10890 OPC_EmitRegisterI32, 0 ,
10891 OPC_EmitRegisterI32, 0 ,
10892 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BICrs),
10893 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
10894 0,
10895 22|128,1,
10896 OPC_RecordChild0,
10897 OPC_Scope, 23,
10898 OPC_RecordChild1,
10899 OPC_CheckTypeI32,
10900 OPC_CheckPatternPredicate3,
10901 OPC_CheckComplexPat4, /*#*/1,
10902 OPC_EmitInteger32, 28,
10903 OPC_EmitRegisterI32, 0 ,
10904 OPC_EmitRegisterI32, 0 ,
10905 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ANDrsr),
10906 MVT::i32, 7, 0, 2, 3, 4, 5, 6, 7,
10907 63,
10908 OPC_MoveChild1,
10909 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
10910 OPC_RecordChild0,
10911 OPC_MoveChild0,
10912 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10913 OPC_Scope, 25,
10914 OPC_CheckPredicate, 20,
10915 OPC_MoveParent,
10916 OPC_CheckChild1Integer, 3,
10917 OPC_MoveParent,
10918 OPC_CheckTypeI32,
10919 OPC_CheckPatternPredicate3,
10920 OPC_EmitConvertToTarget1,
10921 OPC_EmitInteger32, 28,
10922 OPC_EmitRegisterI32, 0 ,
10923 OPC_EmitRegisterI32, 0 ,
10924 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BICri),
10925 MVT::i32, 5, 0, 2, 3, 4, 5,
10926 25,
10927 OPC_CheckPredicate, 13,
10928 OPC_MoveParent,
10929 OPC_CheckChild1Integer, 3,
10930 OPC_MoveParent,
10931 OPC_CheckTypeI32,
10932 OPC_CheckPatternPredicate4,
10933 OPC_EmitConvertToTarget1,
10934 OPC_EmitInteger32, 28,
10935 OPC_EmitRegisterI32, 0 ,
10936 OPC_EmitRegisterI32, 0 ,
10937 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BICri),
10938 MVT::i32, 5, 0, 2, 3, 4, 5,
10939 0,
10940 23,
10941 OPC_RecordChild1,
10942 OPC_CheckTypeI32,
10943 OPC_CheckPatternPredicate3,
10944 OPC_CheckComplexPat4, /*#*/0,
10945 OPC_EmitInteger32, 28,
10946 OPC_EmitRegisterI32, 0 ,
10947 OPC_EmitRegisterI32, 0 ,
10948 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ANDrsr),
10949 MVT::i32, 7, 1, 2, 3, 4, 5, 6, 7,
10950 34,
10951 OPC_MoveChild1,
10952 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
10953 OPC_CheckChild0Integer, 3,
10954 OPC_RecordChild1,
10955 OPC_MoveChild1,
10956 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10957 OPC_CheckPredicate, 20,
10958 OPC_MoveParent,
10959 OPC_MoveParent,
10960 OPC_CheckTypeI32,
10961 OPC_CheckPatternPredicate3,
10962 OPC_EmitConvertToTarget1,
10963 OPC_EmitInteger32, 28,
10964 OPC_EmitRegisterI32, 0 ,
10965 OPC_EmitRegisterI32, 0 ,
10966 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BICri),
10967 MVT::i32, 5, 0, 2, 3, 4, 5,
10968 0,
10969 70,
10970 OPC_MoveChild0,
10971 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
10972 OPC_Scope, 31,
10973 OPC_RecordChild0,
10974 OPC_MoveChild0,
10975 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10976 OPC_CheckPredicate, 20,
10977 OPC_MoveParent,
10978 OPC_CheckChild1Integer, 3,
10979 OPC_MoveParent,
10980 OPC_RecordChild1,
10981 OPC_CheckTypeI32,
10982 OPC_CheckPatternPredicate3,
10983 OPC_EmitConvertToTarget0,
10984 OPC_EmitInteger32, 28,
10985 OPC_EmitRegisterI32, 0 ,
10986 OPC_EmitRegisterI32, 0 ,
10987 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BICri),
10988 MVT::i32, 5, 1, 2, 3, 4, 5,
10989 31,
10990 OPC_CheckChild0Integer, 3,
10991 OPC_RecordChild1,
10992 OPC_MoveChild1,
10993 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10994 OPC_CheckPredicate, 20,
10995 OPC_MoveParent,
10996 OPC_MoveParent,
10997 OPC_RecordChild1,
10998 OPC_CheckTypeI32,
10999 OPC_CheckPatternPredicate3,
11000 OPC_EmitConvertToTarget0,
11001 OPC_EmitInteger32, 28,
11002 OPC_EmitRegisterI32, 0 ,
11003 OPC_EmitRegisterI32, 0 ,
11004 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BICri),
11005 MVT::i32, 5, 1, 2, 3, 4, 5,
11006 0,
11007 35,
11008 OPC_RecordChild0,
11009 OPC_MoveChild1,
11010 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11011 OPC_CheckChild0Integer, 3,
11012 OPC_RecordChild1,
11013 OPC_MoveChild1,
11014 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
11015 OPC_CheckPredicate, 13,
11016 OPC_MoveParent,
11017 OPC_MoveParent,
11018 OPC_CheckTypeI32,
11019 OPC_CheckPatternPredicate4,
11020 OPC_EmitConvertToTarget1,
11021 OPC_EmitInteger32, 28,
11022 OPC_EmitRegisterI32, 0 ,
11023 OPC_EmitRegisterI32, 0 ,
11024 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BICri),
11025 MVT::i32, 5, 0, 2, 3, 4, 5,
11026 70,
11027 OPC_MoveChild0,
11028 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11029 OPC_Scope, 31,
11030 OPC_RecordChild0,
11031 OPC_MoveChild0,
11032 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
11033 OPC_CheckPredicate, 13,
11034 OPC_MoveParent,
11035 OPC_CheckChild1Integer, 3,
11036 OPC_MoveParent,
11037 OPC_RecordChild1,
11038 OPC_CheckTypeI32,
11039 OPC_CheckPatternPredicate4,
11040 OPC_EmitConvertToTarget0,
11041 OPC_EmitInteger32, 28,
11042 OPC_EmitRegisterI32, 0 ,
11043 OPC_EmitRegisterI32, 0 ,
11044 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BICri),
11045 MVT::i32, 5, 1, 2, 3, 4, 5,
11046 31,
11047 OPC_CheckChild0Integer, 3,
11048 OPC_RecordChild1,
11049 OPC_MoveChild1,
11050 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
11051 OPC_CheckPredicate, 13,
11052 OPC_MoveParent,
11053 OPC_MoveParent,
11054 OPC_RecordChild1,
11055 OPC_CheckTypeI32,
11056 OPC_CheckPatternPredicate4,
11057 OPC_EmitConvertToTarget0,
11058 OPC_EmitInteger32, 28,
11059 OPC_EmitRegisterI32, 0 ,
11060 OPC_EmitRegisterI32, 0 ,
11061 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BICri),
11062 MVT::i32, 5, 1, 2, 3, 4, 5,
11063 0,
11064 31|128,1,
11065 OPC_RecordChild0,
11066 OPC_Scope, 88,
11067 OPC_RecordChild1,
11068 OPC_CheckTypeI32,
11069 OPC_Scope, 20,
11070 OPC_CheckPatternPredicate3,
11071 OPC_CheckComplexPat5, /*#*/1,
11072 OPC_EmitInteger32, 28,
11073 OPC_EmitRegisterI32, 0 ,
11074 OPC_EmitRegisterI32, 0 ,
11075 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ANDrsi),
11076 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
11077 20,
11078 OPC_CheckPatternPredicate4,
11079 OPC_CheckComplexPat7, /*#*/1,
11080 OPC_EmitInteger32, 28,
11081 OPC_EmitRegisterI32, 0 ,
11082 OPC_EmitRegisterI32, 0 ,
11083 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ANDrs),
11084 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
11085 20,
11086 OPC_CheckPatternPredicate3,
11087 OPC_CheckComplexPat5, /*#*/0,
11088 OPC_EmitInteger32, 28,
11089 OPC_EmitRegisterI32, 0 ,
11090 OPC_EmitRegisterI32, 0 ,
11091 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ANDrsi),
11092 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
11093 20,
11094 OPC_CheckPatternPredicate4,
11095 OPC_CheckComplexPat7, /*#*/0,
11096 OPC_EmitInteger32, 28,
11097 OPC_EmitRegisterI32, 0 ,
11098 OPC_EmitRegisterI32, 0 ,
11099 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ANDrs),
11100 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
11101 0,
11102 66,
11103 OPC_MoveChild1,
11104 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11105 OPC_RecordChild0,
11106 OPC_CheckChild1Integer, 3,
11107 OPC_MoveParent,
11108 OPC_CheckTypeI32,
11109 OPC_Scope, 17,
11110 OPC_CheckPatternPredicate3,
11111 OPC_EmitInteger32, 28,
11112 OPC_EmitRegisterI32, 0 ,
11113 OPC_EmitRegisterI32, 0 ,
11114 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BICrr),
11115 MVT::i32, 5, 0, 1, 2, 3, 4,
11116 18,
11117 OPC_CheckPatternPredicate, 10,
11118 OPC_EmitRegisterI32, ARM::CPSR,
11119 OPC_EmitInteger32, 28,
11120 OPC_EmitRegisterI32, 0 ,
11121 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tBIC),
11122 MVT::i32, 5, 2, 0, 1, 3, 4,
11123 17,
11124 OPC_CheckPatternPredicate4,
11125 OPC_EmitInteger32, 28,
11126 OPC_EmitRegisterI32, 0 ,
11127 OPC_EmitRegisterI32, 0 ,
11128 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BICrr),
11129 MVT::i32, 5, 0, 1, 2, 3, 4,
11130 0,
11131 0,
11132 67,
11133 OPC_MoveChild0,
11134 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11135 OPC_RecordChild0,
11136 OPC_CheckChild1Integer, 3,
11137 OPC_MoveParent,
11138 OPC_RecordChild1,
11139 OPC_CheckTypeI32,
11140 OPC_Scope, 17,
11141 OPC_CheckPatternPredicate3,
11142 OPC_EmitInteger32, 28,
11143 OPC_EmitRegisterI32, 0 ,
11144 OPC_EmitRegisterI32, 0 ,
11145 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BICrr),
11146 MVT::i32, 5, 1, 0, 2, 3, 4,
11147 18,
11148 OPC_CheckPatternPredicate, 10,
11149 OPC_EmitRegisterI32, ARM::CPSR,
11150 OPC_EmitInteger32, 28,
11151 OPC_EmitRegisterI32, 0 ,
11152 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tBIC),
11153 MVT::i32, 5, 2, 1, 0, 3, 4,
11154 17,
11155 OPC_CheckPatternPredicate4,
11156 OPC_EmitInteger32, 28,
11157 OPC_EmitRegisterI32, 0 ,
11158 OPC_EmitRegisterI32, 0 ,
11159 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BICrr),
11160 MVT::i32, 5, 1, 0, 2, 3, 4,
11161 0,
11162 31,
11163 OPC_RecordChild0,
11164 OPC_RecordChild1,
11165 OPC_MoveChild1,
11166 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
11167 OPC_CheckPredicate, 64,
11168 OPC_MoveParent,
11169 OPC_CheckTypeI32,
11170 OPC_CheckPatternPredicate3,
11171 OPC_EmitConvertToTarget1,
11172 OPC_EmitNodeXForm, 9, 2,
11173 OPC_EmitInteger32, 28,
11174 OPC_EmitRegisterI32, 0 ,
11175 OPC_EmitRegisterI32, 0 ,
11176 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BICri),
11177 MVT::i32, 5, 0, 3, 4, 5, 6,
11178 19,
11179 OPC_CheckAndImm, 127|128,1,
11180 OPC_RecordChild0,
11181 OPC_CheckTypeI32,
11182 OPC_CheckPatternPredicate, 39,
11183 OPC_EmitInteger32, 28,
11184 OPC_EmitRegisterI32, 0 ,
11185 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tUXTB),
11186 MVT::i32, 3, 0, 1, 2,
11187 20,
11188 OPC_CheckAndImm, 127|128,127|128,3,
11189 OPC_RecordChild0,
11190 OPC_CheckTypeI32,
11191 OPC_CheckPatternPredicate, 39,
11192 OPC_EmitInteger32, 28,
11193 OPC_EmitRegisterI32, 0 ,
11194 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tUXTH),
11195 MVT::i32, 3, 0, 1, 2,
11196 98|128,1,
11197 OPC_RecordChild0,
11198 OPC_Scope, 30,
11199 OPC_RecordChild1,
11200 OPC_MoveChild1,
11201 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
11202 OPC_CheckPredicate, 56,
11203 OPC_MoveParent,
11204 OPC_CheckTypeI32,
11205 OPC_CheckPatternPredicate4,
11206 OPC_EmitConvertToTarget1,
11207 OPC_EmitNodeXForm, 1, 2,
11208 OPC_EmitInteger32, 28,
11209 OPC_EmitRegisterI32, 0 ,
11210 OPC_EmitRegisterI32, 0 ,
11211 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BICri),
11212 MVT::i32, 5, 0, 3, 4, 5, 6,
11213 33,
11214 OPC_MoveChild0,
11215 OPC_CheckPredicate, 88,
11216 OPC_MoveSibling1,
11217 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
11218 OPC_RecordNode,
11219 OPC_CheckPredicate, 99,
11220 OPC_MoveParent,
11221 OPC_CheckTypeI32,
11222 OPC_CheckPatternPredicate4,
11223 OPC_EmitConvertToTarget1,
11224 OPC_EmitNodeXForm, 10, 2,
11225 OPC_EmitInteger32, 28,
11226 OPC_EmitRegisterI32, 0 ,
11227 OPC_EmitRegisterI32, 0 ,
11228 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BICri),
11229 MVT::i32, 5, 0, 3, 4, 5, 6,
11230 28|128,1,
11231 OPC_RecordChild1,
11232 OPC_Scope, 93,
11233 OPC_MoveChild1,
11234 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
11235 OPC_Scope, 22,
11236 OPC_CheckPredicate, 20,
11237 OPC_MoveParent,
11238 OPC_CheckTypeI32,
11239 OPC_CheckPatternPredicate3,
11240 OPC_EmitConvertToTarget1,
11241 OPC_EmitInteger32, 28,
11242 OPC_EmitRegisterI32, 0 ,
11243 OPC_EmitRegisterI32, 0 ,
11244 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ANDri),
11245 MVT::i32, 5, 0, 2, 3, 4, 5,
11246 20,
11247 OPC_CheckPredicate, 73,
11248 OPC_MoveParent,
11249 OPC_CheckTypeI32,
11250 OPC_CheckPatternPredicate, 32,
11251 OPC_EmitConvertToTarget1,
11252 OPC_EmitInteger32, 28,
11253 OPC_EmitRegisterI32, 0 ,
11254 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BFC),
11255 MVT::i32, 4, 0, 2, 3, 4,
11256 22,
11257 OPC_CheckPredicate, 13,
11258 OPC_MoveParent,
11259 OPC_CheckTypeI32,
11260 OPC_CheckPatternPredicate4,
11261 OPC_EmitConvertToTarget1,
11262 OPC_EmitInteger32, 28,
11263 OPC_EmitRegisterI32, 0 ,
11264 OPC_EmitRegisterI32, 0 ,
11265 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ANDri),
11266 MVT::i32, 5, 0, 2, 3, 4, 5,
11267 19,
11268 OPC_CheckPredicate, 73,
11269 OPC_MoveParent,
11270 OPC_CheckTypeI32,
11271 OPC_CheckPatternPredicate4,
11272 OPC_EmitConvertToTarget1,
11273 OPC_EmitInteger32, 28,
11274 OPC_EmitRegisterI32, 0 ,
11275 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BFC),
11276 MVT::i32, 4, 0, 2, 3, 4,
11277 0,
11278 58,
11279 OPC_CheckTypeI32,
11280 OPC_Scope, 17,
11281 OPC_CheckPatternPredicate3,
11282 OPC_EmitInteger32, 28,
11283 OPC_EmitRegisterI32, 0 ,
11284 OPC_EmitRegisterI32, 0 ,
11285 OPC_MorphNodeTo1None, TARGET_VAL(ARM::ANDrr),
11286 MVT::i32, 5, 0, 1, 2, 3, 4,
11287 18,
11288 OPC_CheckPatternPredicate, 10,
11289 OPC_EmitRegisterI32, ARM::CPSR,
11290 OPC_EmitInteger32, 28,
11291 OPC_EmitRegisterI32, 0 ,
11292 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tAND),
11293 MVT::i32, 5, 2, 0, 1, 3, 4,
11294 17,
11295 OPC_CheckPatternPredicate4,
11296 OPC_EmitInteger32, 28,
11297 OPC_EmitRegisterI32, 0 ,
11298 OPC_EmitRegisterI32, 0 ,
11299 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ANDrr),
11300 MVT::i32, 5, 0, 1, 2, 3, 4,
11301 0,
11302 0,
11303 0,
11304 46|128,1,
11305 OPC_MoveChild0,
11306 OPC_SwitchOpcode , 41, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
11307 OPC_MoveChild0,
11308 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
11309 OPC_RecordChild0,
11310 OPC_CheckType, MVT::v8i16,
11311 OPC_MoveParent,
11312 OPC_CheckPredicate1,
11313 OPC_MoveSibling1,
11314 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11315 OPC_CheckChild0Integer, 126|128,51,
11316 OPC_MoveParent,
11317 OPC_CheckType, MVT::v4i32,
11318 OPC_CheckPatternPredicate0,
11319 OPC_EmitInteger32, 0,
11320 OPC_EmitRegisterI32, 0 ,
11321 OPC_EmitRegisterI32, 0 ,
11322 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
11323 MVT::v4i32, 0,
11324 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu16th),
11325 MVT::v4i32, 5, 0, 1, 2, 3, 4,
11326 41, TARGET_VAL(ISD::BITCAST),
11327 OPC_MoveChild0,
11328 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
11329 OPC_RecordChild0,
11330 OPC_CheckType, MVT::v8i16,
11331 OPC_MoveParent,
11332 OPC_CheckPredicate1,
11333 OPC_MoveSibling1,
11334 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11335 OPC_CheckChild0Integer, 126|128,51,
11336 OPC_MoveParent,
11337 OPC_CheckType, MVT::v4i32,
11338 OPC_CheckPatternPredicate0,
11339 OPC_EmitInteger32, 0,
11340 OPC_EmitRegisterI32, 0 ,
11341 OPC_EmitRegisterI32, 0 ,
11342 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
11343 MVT::v4i32, 0,
11344 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu16th),
11345 MVT::v4i32, 5, 0, 1, 2, 3, 4,
11346 80, TARGET_VAL(ARMISD::VMOVIMM),
11347 OPC_CheckChild0Integer, 126|128,51,
11348 OPC_MoveSibling1,
11349 OPC_SwitchOpcode , 34, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
11350 OPC_MoveChild0,
11351 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
11352 OPC_RecordChild0,
11353 OPC_CheckType, MVT::v8i16,
11354 OPC_MoveParent,
11355 OPC_CheckPredicate1,
11356 OPC_MoveParent,
11357 OPC_CheckType, MVT::v4i32,
11358 OPC_CheckPatternPredicate0,
11359 OPC_EmitInteger32, 0,
11360 OPC_EmitRegisterI32, 0 ,
11361 OPC_EmitRegisterI32, 0 ,
11362 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
11363 MVT::v4i32, 0,
11364 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu16th),
11365 MVT::v4i32, 5, 0, 1, 2, 3, 4,
11366 34, TARGET_VAL(ISD::BITCAST),
11367 OPC_MoveChild0,
11368 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
11369 OPC_RecordChild0,
11370 OPC_CheckType, MVT::v8i16,
11371 OPC_MoveParent,
11372 OPC_CheckPredicate1,
11373 OPC_MoveParent,
11374 OPC_CheckType, MVT::v4i32,
11375 OPC_CheckPatternPredicate0,
11376 OPC_EmitInteger32, 0,
11377 OPC_EmitRegisterI32, 0 ,
11378 OPC_EmitRegisterI32, 0 ,
11379 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
11380 MVT::v4i32, 0,
11381 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu16th),
11382 MVT::v4i32, 5, 0, 1, 2, 3, 4,
11383 0,
11384 0,
11385 78|128,2,
11386 OPC_RecordChild0,
11387 OPC_MoveChild1,
11388 OPC_SwitchOpcode , 116|128,1, TARGET_VAL(ISD::XOR),
11389 OPC_Scope, 78|128,1,
11390 OPC_RecordChild0,
11391 OPC_MoveChild1,
11392 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11393 OPC_MoveChild0,
11394 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11395 OPC_CheckChild0Integer, 126|128,59,
11396 OPC_SwitchType , 53, MVT::v8i8,
11397 OPC_MoveParent,
11398 OPC_MoveParent,
11399 OPC_MoveParent,
11400 OPC_SwitchType , 14, MVT::v2i32,
11401 OPC_CheckPatternPredicate1,
11402 OPC_EmitInteger32, 28,
11403 OPC_EmitRegisterI32, 0 ,
11404 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11405 MVT::v2i32, 4, 0, 1, 2, 3,
11406 14, MVT::v4i16,
11407 OPC_CheckPatternPredicate1,
11408 OPC_EmitInteger32, 28,
11409 OPC_EmitRegisterI32, 0 ,
11410 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11411 MVT::v4i16, 4, 0, 1, 2, 3,
11412 14, MVT::v1i64,
11413 OPC_CheckPatternPredicate1,
11414 OPC_EmitInteger32, 28,
11415 OPC_EmitRegisterI32, 0 ,
11416 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11417 MVT::v1i64, 4, 0, 1, 2, 3,
11418 0,
11419 6|128,1, MVT::v16i8,
11420 OPC_MoveParent,
11421 OPC_MoveParent,
11422 OPC_MoveParent,
11423 OPC_SwitchType , 41, MVT::v4i32,
11424 OPC_Scope, 14,
11425 OPC_CheckPatternPredicate1,
11426 OPC_EmitInteger32, 28,
11427 OPC_EmitRegisterI32, 0 ,
11428 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11429 MVT::v4i32, 4, 0, 1, 2, 3,
11430 23,
11431 OPC_CheckPatternPredicate0,
11432 OPC_EmitInteger32, 0,
11433 OPC_EmitRegisterI32, 0 ,
11434 OPC_EmitRegisterI32, 0 ,
11435 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
11436 MVT::v4i32, 0,
11437 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
11438 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
11439 0,
11440 41, MVT::v8i16,
11441 OPC_Scope, 14,
11442 OPC_CheckPatternPredicate1,
11443 OPC_EmitInteger32, 28,
11444 OPC_EmitRegisterI32, 0 ,
11445 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11446 MVT::v8i16, 4, 0, 1, 2, 3,
11447 23,
11448 OPC_CheckPatternPredicate0,
11449 OPC_EmitInteger32, 0,
11450 OPC_EmitRegisterI32, 0 ,
11451 OPC_EmitRegisterI32, 0 ,
11452 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
11453 MVT::v4i32, 0,
11454 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
11455 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
11456 0,
11457 41, MVT::v2i64,
11458 OPC_Scope, 14,
11459 OPC_CheckPatternPredicate1,
11460 OPC_EmitInteger32, 28,
11461 OPC_EmitRegisterI32, 0 ,
11462 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11463 MVT::v2i64, 4, 0, 1, 2, 3,
11464 23,
11465 OPC_CheckPatternPredicate0,
11466 OPC_EmitInteger32, 0,
11467 OPC_EmitRegisterI32, 0 ,
11468 OPC_EmitRegisterI32, 0 ,
11469 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
11470 MVT::v4i32, 0,
11471 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
11472 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
11473 0,
11474 0,
11475 0,
11476 33,
11477 OPC_MoveChild0,
11478 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11479 OPC_MoveChild0,
11480 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11481 OPC_CheckChild0Integer, 126|128,59,
11482 OPC_CheckType, MVT::v8i8,
11483 OPC_MoveParent,
11484 OPC_MoveParent,
11485 OPC_RecordChild1,
11486 OPC_MoveParent,
11487 OPC_CheckType, MVT::v2i32,
11488 OPC_CheckPatternPredicate1,
11489 OPC_EmitInteger32, 28,
11490 OPC_EmitRegisterI32, 0 ,
11491 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11492 MVT::v2i32, 4, 0, 1, 2, 3,
11493 0,
11494 79, TARGET_VAL(ISD::VSELECT),
11495 OPC_RecordChild0,
11496 OPC_Scope, 37,
11497 OPC_CheckChild0Type, MVT::v8i1,
11498 OPC_RecordChild1,
11499 OPC_MoveChild2,
11500 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11501 OPC_MoveChild0,
11502 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11503 OPC_CheckChild0Integer, 126|128,59,
11504 OPC_CheckType, MVT::v16i8,
11505 OPC_MoveParent,
11506 OPC_MoveParent,
11507 OPC_MoveParent,
11508 OPC_CheckType, MVT::v8i16,
11509 OPC_CheckPatternPredicate0,
11510 OPC_EmitInteger32, 2,
11511 OPC_EmitRegisterI32, 0 ,
11512 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
11513 MVT::v8i16, 6, 0, 2, 3, 1, 4, 0,
11514 37,
11515 OPC_CheckChild0Type, MVT::v4i1,
11516 OPC_RecordChild1,
11517 OPC_MoveChild2,
11518 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11519 OPC_MoveChild0,
11520 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11521 OPC_CheckChild0Integer, 126|128,59,
11522 OPC_CheckType, MVT::v16i8,
11523 OPC_MoveParent,
11524 OPC_MoveParent,
11525 OPC_MoveParent,
11526 OPC_CheckType, MVT::v4i32,
11527 OPC_CheckPatternPredicate0,
11528 OPC_EmitInteger32, 2,
11529 OPC_EmitRegisterI32, 0 ,
11530 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
11531 MVT::v4i32, 6, 0, 2, 3, 1, 4, 0,
11532 0,
11533 0,
11534 76,
11535 OPC_MoveChild0,
11536 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11537 OPC_Scope, 34,
11538 OPC_RecordChild0,
11539 OPC_MoveChild1,
11540 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11541 OPC_MoveChild0,
11542 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11543 OPC_CheckChild0Integer, 126|128,59,
11544 OPC_CheckType, MVT::v8i8,
11545 OPC_MoveParent,
11546 OPC_MoveParent,
11547 OPC_MoveParent,
11548 OPC_RecordChild1,
11549 OPC_CheckType, MVT::v2i32,
11550 OPC_CheckPatternPredicate1,
11551 OPC_EmitInteger32, 28,
11552 OPC_EmitRegisterI32, 0 ,
11553 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11554 MVT::v2i32, 4, 1, 0, 2, 3,
11555 34,
11556 OPC_MoveChild0,
11557 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11558 OPC_MoveChild0,
11559 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11560 OPC_CheckChild0Integer, 126|128,59,
11561 OPC_CheckType, MVT::v8i8,
11562 OPC_MoveParent,
11563 OPC_MoveParent,
11564 OPC_RecordChild1,
11565 OPC_MoveParent,
11566 OPC_RecordChild1,
11567 OPC_CheckType, MVT::v2i32,
11568 OPC_CheckPatternPredicate1,
11569 OPC_EmitInteger32, 28,
11570 OPC_EmitRegisterI32, 0 ,
11571 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11572 MVT::v2i32, 4, 1, 0, 2, 3,
11573 0,
11574 38,
11575 OPC_RecordChild0,
11576 OPC_MoveChild1,
11577 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11578 OPC_MoveChild0,
11579 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11580 OPC_MoveChild0,
11581 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11582 OPC_CheckChild0Integer, 126|128,59,
11583 OPC_CheckType, MVT::v16i8,
11584 OPC_MoveParent,
11585 OPC_MoveParent,
11586 OPC_RecordChild1,
11587 OPC_MoveParent,
11588 OPC_CheckType, MVT::v4i32,
11589 OPC_CheckPatternPredicate1,
11590 OPC_EmitInteger32, 28,
11591 OPC_EmitRegisterI32, 0 ,
11592 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11593 MVT::v4i32, 4, 0, 1, 2, 3,
11594 76,
11595 OPC_MoveChild0,
11596 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11597 OPC_Scope, 34,
11598 OPC_RecordChild0,
11599 OPC_MoveChild1,
11600 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11601 OPC_MoveChild0,
11602 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11603 OPC_CheckChild0Integer, 126|128,59,
11604 OPC_CheckType, MVT::v16i8,
11605 OPC_MoveParent,
11606 OPC_MoveParent,
11607 OPC_MoveParent,
11608 OPC_RecordChild1,
11609 OPC_CheckType, MVT::v4i32,
11610 OPC_CheckPatternPredicate1,
11611 OPC_EmitInteger32, 28,
11612 OPC_EmitRegisterI32, 0 ,
11613 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11614 MVT::v4i32, 4, 1, 0, 2, 3,
11615 34,
11616 OPC_MoveChild0,
11617 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11618 OPC_MoveChild0,
11619 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11620 OPC_CheckChild0Integer, 126|128,59,
11621 OPC_CheckType, MVT::v16i8,
11622 OPC_MoveParent,
11623 OPC_MoveParent,
11624 OPC_RecordChild1,
11625 OPC_MoveParent,
11626 OPC_RecordChild1,
11627 OPC_CheckType, MVT::v4i32,
11628 OPC_CheckPatternPredicate1,
11629 OPC_EmitInteger32, 28,
11630 OPC_EmitRegisterI32, 0 ,
11631 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11632 MVT::v4i32, 4, 1, 0, 2, 3,
11633 0,
11634 38,
11635 OPC_RecordChild0,
11636 OPC_MoveChild1,
11637 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11638 OPC_MoveChild0,
11639 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11640 OPC_MoveChild0,
11641 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11642 OPC_CheckChild0Integer, 126|128,59,
11643 OPC_CheckType, MVT::v8i8,
11644 OPC_MoveParent,
11645 OPC_MoveParent,
11646 OPC_RecordChild1,
11647 OPC_MoveParent,
11648 OPC_CheckType, MVT::v4i16,
11649 OPC_CheckPatternPredicate1,
11650 OPC_EmitInteger32, 28,
11651 OPC_EmitRegisterI32, 0 ,
11652 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11653 MVT::v4i16, 4, 0, 1, 2, 3,
11654 76,
11655 OPC_MoveChild0,
11656 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11657 OPC_Scope, 34,
11658 OPC_RecordChild0,
11659 OPC_MoveChild1,
11660 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11661 OPC_MoveChild0,
11662 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11663 OPC_CheckChild0Integer, 126|128,59,
11664 OPC_CheckType, MVT::v8i8,
11665 OPC_MoveParent,
11666 OPC_MoveParent,
11667 OPC_MoveParent,
11668 OPC_RecordChild1,
11669 OPC_CheckType, MVT::v4i16,
11670 OPC_CheckPatternPredicate1,
11671 OPC_EmitInteger32, 28,
11672 OPC_EmitRegisterI32, 0 ,
11673 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11674 MVT::v4i16, 4, 1, 0, 2, 3,
11675 34,
11676 OPC_MoveChild0,
11677 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11678 OPC_MoveChild0,
11679 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11680 OPC_CheckChild0Integer, 126|128,59,
11681 OPC_CheckType, MVT::v8i8,
11682 OPC_MoveParent,
11683 OPC_MoveParent,
11684 OPC_RecordChild1,
11685 OPC_MoveParent,
11686 OPC_RecordChild1,
11687 OPC_CheckType, MVT::v4i16,
11688 OPC_CheckPatternPredicate1,
11689 OPC_EmitInteger32, 28,
11690 OPC_EmitRegisterI32, 0 ,
11691 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11692 MVT::v4i16, 4, 1, 0, 2, 3,
11693 0,
11694 38,
11695 OPC_RecordChild0,
11696 OPC_MoveChild1,
11697 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11698 OPC_MoveChild0,
11699 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11700 OPC_MoveChild0,
11701 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11702 OPC_CheckChild0Integer, 126|128,59,
11703 OPC_CheckType, MVT::v8i8,
11704 OPC_MoveParent,
11705 OPC_MoveParent,
11706 OPC_RecordChild1,
11707 OPC_MoveParent,
11708 OPC_CheckType, MVT::v1i64,
11709 OPC_CheckPatternPredicate1,
11710 OPC_EmitInteger32, 28,
11711 OPC_EmitRegisterI32, 0 ,
11712 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11713 MVT::v1i64, 4, 0, 1, 2, 3,
11714 76,
11715 OPC_MoveChild0,
11716 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11717 OPC_Scope, 34,
11718 OPC_RecordChild0,
11719 OPC_MoveChild1,
11720 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11721 OPC_MoveChild0,
11722 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11723 OPC_CheckChild0Integer, 126|128,59,
11724 OPC_CheckType, MVT::v8i8,
11725 OPC_MoveParent,
11726 OPC_MoveParent,
11727 OPC_MoveParent,
11728 OPC_RecordChild1,
11729 OPC_CheckType, MVT::v1i64,
11730 OPC_CheckPatternPredicate1,
11731 OPC_EmitInteger32, 28,
11732 OPC_EmitRegisterI32, 0 ,
11733 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11734 MVT::v1i64, 4, 1, 0, 2, 3,
11735 34,
11736 OPC_MoveChild0,
11737 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11738 OPC_MoveChild0,
11739 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11740 OPC_CheckChild0Integer, 126|128,59,
11741 OPC_CheckType, MVT::v8i8,
11742 OPC_MoveParent,
11743 OPC_MoveParent,
11744 OPC_RecordChild1,
11745 OPC_MoveParent,
11746 OPC_RecordChild1,
11747 OPC_CheckType, MVT::v1i64,
11748 OPC_CheckPatternPredicate1,
11749 OPC_EmitInteger32, 28,
11750 OPC_EmitRegisterI32, 0 ,
11751 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
11752 MVT::v1i64, 4, 1, 0, 2, 3,
11753 0,
11754 38,
11755 OPC_RecordChild0,
11756 OPC_MoveChild1,
11757 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11758 OPC_MoveChild0,
11759 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11760 OPC_MoveChild0,
11761 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11762 OPC_CheckChild0Integer, 126|128,59,
11763 OPC_CheckType, MVT::v16i8,
11764 OPC_MoveParent,
11765 OPC_MoveParent,
11766 OPC_RecordChild1,
11767 OPC_MoveParent,
11768 OPC_CheckType, MVT::v8i16,
11769 OPC_CheckPatternPredicate1,
11770 OPC_EmitInteger32, 28,
11771 OPC_EmitRegisterI32, 0 ,
11772 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11773 MVT::v8i16, 4, 0, 1, 2, 3,
11774 76,
11775 OPC_MoveChild0,
11776 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11777 OPC_Scope, 34,
11778 OPC_RecordChild0,
11779 OPC_MoveChild1,
11780 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11781 OPC_MoveChild0,
11782 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11783 OPC_CheckChild0Integer, 126|128,59,
11784 OPC_CheckType, MVT::v16i8,
11785 OPC_MoveParent,
11786 OPC_MoveParent,
11787 OPC_MoveParent,
11788 OPC_RecordChild1,
11789 OPC_CheckType, MVT::v8i16,
11790 OPC_CheckPatternPredicate1,
11791 OPC_EmitInteger32, 28,
11792 OPC_EmitRegisterI32, 0 ,
11793 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11794 MVT::v8i16, 4, 1, 0, 2, 3,
11795 34,
11796 OPC_MoveChild0,
11797 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11798 OPC_MoveChild0,
11799 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11800 OPC_CheckChild0Integer, 126|128,59,
11801 OPC_CheckType, MVT::v16i8,
11802 OPC_MoveParent,
11803 OPC_MoveParent,
11804 OPC_RecordChild1,
11805 OPC_MoveParent,
11806 OPC_RecordChild1,
11807 OPC_CheckType, MVT::v8i16,
11808 OPC_CheckPatternPredicate1,
11809 OPC_EmitInteger32, 28,
11810 OPC_EmitRegisterI32, 0 ,
11811 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11812 MVT::v8i16, 4, 1, 0, 2, 3,
11813 0,
11814 38,
11815 OPC_RecordChild0,
11816 OPC_MoveChild1,
11817 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11818 OPC_MoveChild0,
11819 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11820 OPC_MoveChild0,
11821 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11822 OPC_CheckChild0Integer, 126|128,59,
11823 OPC_CheckType, MVT::v16i8,
11824 OPC_MoveParent,
11825 OPC_MoveParent,
11826 OPC_RecordChild1,
11827 OPC_MoveParent,
11828 OPC_CheckType, MVT::v2i64,
11829 OPC_CheckPatternPredicate1,
11830 OPC_EmitInteger32, 28,
11831 OPC_EmitRegisterI32, 0 ,
11832 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11833 MVT::v2i64, 4, 0, 1, 2, 3,
11834 34|128,1,
11835 OPC_MoveChild0,
11836 OPC_SwitchOpcode , 72, TARGET_VAL(ISD::XOR),
11837 OPC_Scope, 34,
11838 OPC_RecordChild0,
11839 OPC_MoveChild1,
11840 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11841 OPC_MoveChild0,
11842 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11843 OPC_CheckChild0Integer, 126|128,59,
11844 OPC_CheckType, MVT::v16i8,
11845 OPC_MoveParent,
11846 OPC_MoveParent,
11847 OPC_MoveParent,
11848 OPC_RecordChild1,
11849 OPC_CheckType, MVT::v2i64,
11850 OPC_CheckPatternPredicate1,
11851 OPC_EmitInteger32, 28,
11852 OPC_EmitRegisterI32, 0 ,
11853 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11854 MVT::v2i64, 4, 1, 0, 2, 3,
11855 34,
11856 OPC_MoveChild0,
11857 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11858 OPC_MoveChild0,
11859 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11860 OPC_CheckChild0Integer, 126|128,59,
11861 OPC_CheckType, MVT::v16i8,
11862 OPC_MoveParent,
11863 OPC_MoveParent,
11864 OPC_RecordChild1,
11865 OPC_MoveParent,
11866 OPC_RecordChild1,
11867 OPC_CheckType, MVT::v2i64,
11868 OPC_CheckPatternPredicate1,
11869 OPC_EmitInteger32, 28,
11870 OPC_EmitRegisterI32, 0 ,
11871 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
11872 MVT::v2i64, 4, 1, 0, 2, 3,
11873 0,
11874 81, TARGET_VAL(ISD::VSELECT),
11875 OPC_RecordChild0,
11876 OPC_Scope, 38,
11877 OPC_CheckChild0Type, MVT::v8i1,
11878 OPC_RecordChild1,
11879 OPC_MoveChild2,
11880 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11881 OPC_MoveChild0,
11882 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11883 OPC_CheckChild0Integer, 126|128,59,
11884 OPC_CheckType, MVT::v16i8,
11885 OPC_MoveParent,
11886 OPC_MoveParent,
11887 OPC_MoveParent,
11888 OPC_RecordChild1,
11889 OPC_CheckType, MVT::v8i16,
11890 OPC_CheckPatternPredicate0,
11891 OPC_EmitInteger32, 2,
11892 OPC_EmitRegisterI32, 0 ,
11893 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
11894 MVT::v8i16, 6, 2, 1, 3, 0, 4, 2,
11895 38,
11896 OPC_CheckChild0Type, MVT::v4i1,
11897 OPC_RecordChild1,
11898 OPC_MoveChild2,
11899 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11900 OPC_MoveChild0,
11901 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11902 OPC_CheckChild0Integer, 126|128,59,
11903 OPC_CheckType, MVT::v16i8,
11904 OPC_MoveParent,
11905 OPC_MoveParent,
11906 OPC_MoveParent,
11907 OPC_RecordChild1,
11908 OPC_CheckType, MVT::v4i32,
11909 OPC_CheckPatternPredicate0,
11910 OPC_EmitInteger32, 2,
11911 OPC_EmitRegisterI32, 0 ,
11912 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
11913 MVT::v4i32, 6, 2, 1, 3, 0, 4, 2,
11914 0,
11915 0,
11916 47,
11917 OPC_RecordChild0,
11918 OPC_MoveChild1,
11919 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11920 OPC_MoveChild0,
11921 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11922 OPC_MoveChild0,
11923 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11924 OPC_CheckChild0Integer, 126|128,59,
11925 OPC_CheckType, MVT::v16i8,
11926 OPC_MoveParent,
11927 OPC_MoveParent,
11928 OPC_RecordChild1,
11929 OPC_MoveParent,
11930 OPC_CheckType, MVT::v8i16,
11931 OPC_CheckPatternPredicate0,
11932 OPC_EmitInteger32, 0,
11933 OPC_EmitRegisterI32, 0 ,
11934 OPC_EmitRegisterI32, 0 ,
11935 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
11936 MVT::v4i32, 0,
11937 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
11938 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
11939 94,
11940 OPC_MoveChild0,
11941 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11942 OPC_Scope, 43,
11943 OPC_RecordChild0,
11944 OPC_MoveChild1,
11945 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11946 OPC_MoveChild0,
11947 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11948 OPC_CheckChild0Integer, 126|128,59,
11949 OPC_CheckType, MVT::v16i8,
11950 OPC_MoveParent,
11951 OPC_MoveParent,
11952 OPC_MoveParent,
11953 OPC_RecordChild1,
11954 OPC_CheckType, MVT::v8i16,
11955 OPC_CheckPatternPredicate0,
11956 OPC_EmitInteger32, 0,
11957 OPC_EmitRegisterI32, 0 ,
11958 OPC_EmitRegisterI32, 0 ,
11959 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
11960 MVT::v4i32, 0,
11961 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
11962 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
11963 43,
11964 OPC_MoveChild0,
11965 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11966 OPC_MoveChild0,
11967 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11968 OPC_CheckChild0Integer, 126|128,59,
11969 OPC_CheckType, MVT::v16i8,
11970 OPC_MoveParent,
11971 OPC_MoveParent,
11972 OPC_RecordChild1,
11973 OPC_MoveParent,
11974 OPC_RecordChild1,
11975 OPC_CheckType, MVT::v8i16,
11976 OPC_CheckPatternPredicate0,
11977 OPC_EmitInteger32, 0,
11978 OPC_EmitRegisterI32, 0 ,
11979 OPC_EmitRegisterI32, 0 ,
11980 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
11981 MVT::v4i32, 0,
11982 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
11983 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
11984 0,
11985 47,
11986 OPC_RecordChild0,
11987 OPC_MoveChild1,
11988 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
11989 OPC_MoveChild0,
11990 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
11991 OPC_MoveChild0,
11992 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
11993 OPC_CheckChild0Integer, 126|128,59,
11994 OPC_CheckType, MVT::v16i8,
11995 OPC_MoveParent,
11996 OPC_MoveParent,
11997 OPC_RecordChild1,
11998 OPC_MoveParent,
11999 OPC_CheckType, MVT::v4i32,
12000 OPC_CheckPatternPredicate0,
12001 OPC_EmitInteger32, 0,
12002 OPC_EmitRegisterI32, 0 ,
12003 OPC_EmitRegisterI32, 0 ,
12004 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
12005 MVT::v4i32, 0,
12006 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
12007 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
12008 94,
12009 OPC_MoveChild0,
12010 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
12011 OPC_Scope, 43,
12012 OPC_RecordChild0,
12013 OPC_MoveChild1,
12014 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
12015 OPC_MoveChild0,
12016 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12017 OPC_CheckChild0Integer, 126|128,59,
12018 OPC_CheckType, MVT::v16i8,
12019 OPC_MoveParent,
12020 OPC_MoveParent,
12021 OPC_MoveParent,
12022 OPC_RecordChild1,
12023 OPC_CheckType, MVT::v4i32,
12024 OPC_CheckPatternPredicate0,
12025 OPC_EmitInteger32, 0,
12026 OPC_EmitRegisterI32, 0 ,
12027 OPC_EmitRegisterI32, 0 ,
12028 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
12029 MVT::v4i32, 0,
12030 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
12031 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
12032 43,
12033 OPC_MoveChild0,
12034 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
12035 OPC_MoveChild0,
12036 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12037 OPC_CheckChild0Integer, 126|128,59,
12038 OPC_CheckType, MVT::v16i8,
12039 OPC_MoveParent,
12040 OPC_MoveParent,
12041 OPC_RecordChild1,
12042 OPC_MoveParent,
12043 OPC_RecordChild1,
12044 OPC_CheckType, MVT::v4i32,
12045 OPC_CheckPatternPredicate0,
12046 OPC_EmitInteger32, 0,
12047 OPC_EmitRegisterI32, 0 ,
12048 OPC_EmitRegisterI32, 0 ,
12049 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
12050 MVT::v4i32, 0,
12051 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
12052 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
12053 0,
12054 47,
12055 OPC_RecordChild0,
12056 OPC_MoveChild1,
12057 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
12058 OPC_MoveChild0,
12059 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
12060 OPC_MoveChild0,
12061 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12062 OPC_CheckChild0Integer, 126|128,59,
12063 OPC_CheckType, MVT::v16i8,
12064 OPC_MoveParent,
12065 OPC_MoveParent,
12066 OPC_RecordChild1,
12067 OPC_MoveParent,
12068 OPC_CheckType, MVT::v2i64,
12069 OPC_CheckPatternPredicate0,
12070 OPC_EmitInteger32, 0,
12071 OPC_EmitRegisterI32, 0 ,
12072 OPC_EmitRegisterI32, 0 ,
12073 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
12074 MVT::v4i32, 0,
12075 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
12076 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
12077 94,
12078 OPC_MoveChild0,
12079 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
12080 OPC_Scope, 43,
12081 OPC_RecordChild0,
12082 OPC_MoveChild1,
12083 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
12084 OPC_MoveChild0,
12085 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12086 OPC_CheckChild0Integer, 126|128,59,
12087 OPC_CheckType, MVT::v16i8,
12088 OPC_MoveParent,
12089 OPC_MoveParent,
12090 OPC_MoveParent,
12091 OPC_RecordChild1,
12092 OPC_CheckType, MVT::v2i64,
12093 OPC_CheckPatternPredicate0,
12094 OPC_EmitInteger32, 0,
12095 OPC_EmitRegisterI32, 0 ,
12096 OPC_EmitRegisterI32, 0 ,
12097 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
12098 MVT::v4i32, 0,
12099 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
12100 MVT::v2i64, 6, 1, 0, 2, 3, 4, 5,
12101 43,
12102 OPC_MoveChild0,
12103 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
12104 OPC_MoveChild0,
12105 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12106 OPC_CheckChild0Integer, 126|128,59,
12107 OPC_CheckType, MVT::v16i8,
12108 OPC_MoveParent,
12109 OPC_MoveParent,
12110 OPC_RecordChild1,
12111 OPC_MoveParent,
12112 OPC_RecordChild1,
12113 OPC_CheckType, MVT::v2i64,
12114 OPC_CheckPatternPredicate0,
12115 OPC_EmitInteger32, 0,
12116 OPC_EmitRegisterI32, 0 ,
12117 OPC_EmitRegisterI32, 0 ,
12118 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
12119 MVT::v4i32, 0,
12120 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
12121 MVT::v2i64, 6, 1, 0, 2, 3, 4, 5,
12122 0,
12123 90|128,8,
12124 OPC_RecordChild0,
12125 OPC_MoveChild1,
12126 OPC_SwitchOpcode , 101, TARGET_VAL(ISD::XOR),
12127 OPC_Scope, 71,
12128 OPC_RecordChild0,
12129 OPC_MoveChild1,
12130 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12131 OPC_CheckChild0Integer, 126|128,59,
12132 OPC_MoveParent,
12133 OPC_MoveParent,
12134 OPC_SwitchType , 14, MVT::v8i8,
12135 OPC_CheckPatternPredicate1,
12136 OPC_EmitInteger32, 28,
12137 OPC_EmitRegisterI32, 0 ,
12138 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
12139 MVT::v8i8, 4, 0, 1, 2, 3,
12140 41, MVT::v16i8,
12141 OPC_Scope, 14,
12142 OPC_CheckPatternPredicate1,
12143 OPC_EmitInteger32, 28,
12144 OPC_EmitRegisterI32, 0 ,
12145 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
12146 MVT::v16i8, 4, 0, 1, 2, 3,
12147 23,
12148 OPC_CheckPatternPredicate0,
12149 OPC_EmitInteger32, 0,
12150 OPC_EmitRegisterI32, 0 ,
12151 OPC_EmitRegisterI32, 0 ,
12152 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
12153 MVT::v4i32, 0,
12154 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
12155 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
12156 0,
12157 0,
12158 26,
12159 OPC_MoveChild0,
12160 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12161 OPC_CheckChild0Integer, 126|128,59,
12162 OPC_MoveParent,
12163 OPC_RecordChild1,
12164 OPC_MoveParent,
12165 OPC_CheckType, MVT::v8i8,
12166 OPC_CheckPatternPredicate1,
12167 OPC_EmitInteger32, 28,
12168 OPC_EmitRegisterI32, 0 ,
12169 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
12170 MVT::v8i8, 4, 0, 1, 2, 3,
12171 0,
12172 31, TARGET_VAL(ISD::VSELECT),
12173 OPC_RecordChild0,
12174 OPC_CheckChild0Type, MVT::v16i1,
12175 OPC_RecordChild1,
12176 OPC_MoveChild2,
12177 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12178 OPC_CheckChild0Integer, 126|128,59,
12179 OPC_MoveParent,
12180 OPC_MoveParent,
12181 OPC_CheckType, MVT::v16i8,
12182 OPC_CheckPatternPredicate0,
12183 OPC_EmitInteger32, 2,
12184 OPC_EmitRegisterI32, 0 ,
12185 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
12186 MVT::v16i8, 6, 0, 2, 3, 1, 4, 0,
12187 72|128,7, TARGET_VAL(ARMISD::VCMP),
12188 OPC_RecordChild0,
12189 OPC_Scope, 83|128,1,
12190 OPC_CheckChild0Type, MVT::v16i8,
12191 OPC_MoveChild1,
12192 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
12193 OPC_RecordChild0,
12194 OPC_CheckChild0TypeI32,
12195 OPC_MoveParent,
12196 OPC_Scope, 24,
12197 OPC_CheckChild2Integer, 0,
12198 OPC_CheckChild2TypeI32,
12199 OPC_MoveParent,
12200 OPC_CheckType, MVT::v16i1,
12201 OPC_CheckPatternPredicate0,
12202 OPC_EmitInteger32, 0,
12203 OPC_EmitInteger32, 2,
12204 OPC_EmitRegisterI32, 0 ,
12205 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
12206 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
12207 24,
12208 OPC_CheckChild2Integer, 2,
12209 OPC_CheckChild2TypeI32,
12210 OPC_MoveParent,
12211 OPC_CheckType, MVT::v16i1,
12212 OPC_CheckPatternPredicate0,
12213 OPC_EmitInteger32, 2,
12214 OPC_EmitInteger32, 2,
12215 OPC_EmitRegisterI32, 0 ,
12216 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
12217 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
12218 24,
12219 OPC_CheckChild2Integer, 20,
12220 OPC_CheckChild2TypeI32,
12221 OPC_MoveParent,
12222 OPC_CheckType, MVT::v16i1,
12223 OPC_CheckPatternPredicate0,
12224 OPC_EmitInteger32, 20,
12225 OPC_EmitInteger32, 2,
12226 OPC_EmitRegisterI32, 0 ,
12227 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
12228 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
12229 24,
12230 OPC_CheckChild2Integer, 22,
12231 OPC_CheckChild2TypeI32,
12232 OPC_MoveParent,
12233 OPC_CheckType, MVT::v16i1,
12234 OPC_CheckPatternPredicate0,
12235 OPC_EmitInteger32, 22,
12236 OPC_EmitInteger32, 2,
12237 OPC_EmitRegisterI32, 0 ,
12238 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
12239 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
12240 24,
12241 OPC_CheckChild2Integer, 24,
12242 OPC_CheckChild2TypeI32,
12243 OPC_MoveParent,
12244 OPC_CheckType, MVT::v16i1,
12245 OPC_CheckPatternPredicate0,
12246 OPC_EmitInteger32, 24,
12247 OPC_EmitInteger32, 2,
12248 OPC_EmitRegisterI32, 0 ,
12249 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
12250 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
12251 24,
12252 OPC_CheckChild2Integer, 26,
12253 OPC_CheckChild2TypeI32,
12254 OPC_MoveParent,
12255 OPC_CheckType, MVT::v16i1,
12256 OPC_CheckPatternPredicate0,
12257 OPC_EmitInteger32, 26,
12258 OPC_EmitInteger32, 2,
12259 OPC_EmitRegisterI32, 0 ,
12260 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
12261 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
12262 24,
12263 OPC_CheckChild2Integer, 16,
12264 OPC_CheckChild2TypeI32,
12265 OPC_MoveParent,
12266 OPC_CheckType, MVT::v16i1,
12267 OPC_CheckPatternPredicate0,
12268 OPC_EmitInteger32, 16,
12269 OPC_EmitInteger32, 2,
12270 OPC_EmitRegisterI32, 0 ,
12271 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
12272 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
12273 24,
12274 OPC_CheckChild2Integer, 4,
12275 OPC_CheckChild2TypeI32,
12276 OPC_MoveParent,
12277 OPC_CheckType, MVT::v16i1,
12278 OPC_CheckPatternPredicate0,
12279 OPC_EmitInteger32, 4,
12280 OPC_EmitInteger32, 2,
12281 OPC_EmitRegisterI32, 0 ,
12282 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
12283 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
12284 0,
12285 83|128,1,
12286 OPC_CheckChild0Type, MVT::v8i16,
12287 OPC_MoveChild1,
12288 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
12289 OPC_RecordChild0,
12290 OPC_CheckChild0TypeI32,
12291 OPC_MoveParent,
12292 OPC_Scope, 24,
12293 OPC_CheckChild2Integer, 0,
12294 OPC_CheckChild2TypeI32,
12295 OPC_MoveParent,
12296 OPC_CheckType, MVT::v8i1,
12297 OPC_CheckPatternPredicate0,
12298 OPC_EmitInteger32, 0,
12299 OPC_EmitInteger32, 2,
12300 OPC_EmitRegisterI32, 0 ,
12301 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
12302 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12303 24,
12304 OPC_CheckChild2Integer, 2,
12305 OPC_CheckChild2TypeI32,
12306 OPC_MoveParent,
12307 OPC_CheckType, MVT::v8i1,
12308 OPC_CheckPatternPredicate0,
12309 OPC_EmitInteger32, 2,
12310 OPC_EmitInteger32, 2,
12311 OPC_EmitRegisterI32, 0 ,
12312 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
12313 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12314 24,
12315 OPC_CheckChild2Integer, 20,
12316 OPC_CheckChild2TypeI32,
12317 OPC_MoveParent,
12318 OPC_CheckType, MVT::v8i1,
12319 OPC_CheckPatternPredicate0,
12320 OPC_EmitInteger32, 20,
12321 OPC_EmitInteger32, 2,
12322 OPC_EmitRegisterI32, 0 ,
12323 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
12324 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12325 24,
12326 OPC_CheckChild2Integer, 22,
12327 OPC_CheckChild2TypeI32,
12328 OPC_MoveParent,
12329 OPC_CheckType, MVT::v8i1,
12330 OPC_CheckPatternPredicate0,
12331 OPC_EmitInteger32, 22,
12332 OPC_EmitInteger32, 2,
12333 OPC_EmitRegisterI32, 0 ,
12334 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
12335 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12336 24,
12337 OPC_CheckChild2Integer, 24,
12338 OPC_CheckChild2TypeI32,
12339 OPC_MoveParent,
12340 OPC_CheckType, MVT::v8i1,
12341 OPC_CheckPatternPredicate0,
12342 OPC_EmitInteger32, 24,
12343 OPC_EmitInteger32, 2,
12344 OPC_EmitRegisterI32, 0 ,
12345 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
12346 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12347 24,
12348 OPC_CheckChild2Integer, 26,
12349 OPC_CheckChild2TypeI32,
12350 OPC_MoveParent,
12351 OPC_CheckType, MVT::v8i1,
12352 OPC_CheckPatternPredicate0,
12353 OPC_EmitInteger32, 26,
12354 OPC_EmitInteger32, 2,
12355 OPC_EmitRegisterI32, 0 ,
12356 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
12357 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12358 24,
12359 OPC_CheckChild2Integer, 16,
12360 OPC_CheckChild2TypeI32,
12361 OPC_MoveParent,
12362 OPC_CheckType, MVT::v8i1,
12363 OPC_CheckPatternPredicate0,
12364 OPC_EmitInteger32, 16,
12365 OPC_EmitInteger32, 2,
12366 OPC_EmitRegisterI32, 0 ,
12367 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
12368 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12369 24,
12370 OPC_CheckChild2Integer, 4,
12371 OPC_CheckChild2TypeI32,
12372 OPC_MoveParent,
12373 OPC_CheckType, MVT::v8i1,
12374 OPC_CheckPatternPredicate0,
12375 OPC_EmitInteger32, 4,
12376 OPC_EmitInteger32, 2,
12377 OPC_EmitRegisterI32, 0 ,
12378 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
12379 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12380 0,
12381 83|128,1,
12382 OPC_CheckChild0Type, MVT::v4i32,
12383 OPC_MoveChild1,
12384 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
12385 OPC_RecordChild0,
12386 OPC_CheckChild0TypeI32,
12387 OPC_MoveParent,
12388 OPC_Scope, 24,
12389 OPC_CheckChild2Integer, 0,
12390 OPC_CheckChild2TypeI32,
12391 OPC_MoveParent,
12392 OPC_CheckType, MVT::v4i1,
12393 OPC_CheckPatternPredicate0,
12394 OPC_EmitInteger32, 0,
12395 OPC_EmitInteger32, 2,
12396 OPC_EmitRegisterI32, 0 ,
12397 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
12398 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12399 24,
12400 OPC_CheckChild2Integer, 2,
12401 OPC_CheckChild2TypeI32,
12402 OPC_MoveParent,
12403 OPC_CheckType, MVT::v4i1,
12404 OPC_CheckPatternPredicate0,
12405 OPC_EmitInteger32, 2,
12406 OPC_EmitInteger32, 2,
12407 OPC_EmitRegisterI32, 0 ,
12408 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
12409 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12410 24,
12411 OPC_CheckChild2Integer, 20,
12412 OPC_CheckChild2TypeI32,
12413 OPC_MoveParent,
12414 OPC_CheckType, MVT::v4i1,
12415 OPC_CheckPatternPredicate0,
12416 OPC_EmitInteger32, 20,
12417 OPC_EmitInteger32, 2,
12418 OPC_EmitRegisterI32, 0 ,
12419 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
12420 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12421 24,
12422 OPC_CheckChild2Integer, 22,
12423 OPC_CheckChild2TypeI32,
12424 OPC_MoveParent,
12425 OPC_CheckType, MVT::v4i1,
12426 OPC_CheckPatternPredicate0,
12427 OPC_EmitInteger32, 22,
12428 OPC_EmitInteger32, 2,
12429 OPC_EmitRegisterI32, 0 ,
12430 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
12431 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12432 24,
12433 OPC_CheckChild2Integer, 24,
12434 OPC_CheckChild2TypeI32,
12435 OPC_MoveParent,
12436 OPC_CheckType, MVT::v4i1,
12437 OPC_CheckPatternPredicate0,
12438 OPC_EmitInteger32, 24,
12439 OPC_EmitInteger32, 2,
12440 OPC_EmitRegisterI32, 0 ,
12441 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
12442 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12443 24,
12444 OPC_CheckChild2Integer, 26,
12445 OPC_CheckChild2TypeI32,
12446 OPC_MoveParent,
12447 OPC_CheckType, MVT::v4i1,
12448 OPC_CheckPatternPredicate0,
12449 OPC_EmitInteger32, 26,
12450 OPC_EmitInteger32, 2,
12451 OPC_EmitRegisterI32, 0 ,
12452 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
12453 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12454 24,
12455 OPC_CheckChild2Integer, 16,
12456 OPC_CheckChild2TypeI32,
12457 OPC_MoveParent,
12458 OPC_CheckType, MVT::v4i1,
12459 OPC_CheckPatternPredicate0,
12460 OPC_EmitInteger32, 16,
12461 OPC_EmitInteger32, 2,
12462 OPC_EmitRegisterI32, 0 ,
12463 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
12464 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12465 24,
12466 OPC_CheckChild2Integer, 4,
12467 OPC_CheckChild2TypeI32,
12468 OPC_MoveParent,
12469 OPC_CheckType, MVT::v4i1,
12470 OPC_CheckPatternPredicate0,
12471 OPC_EmitInteger32, 4,
12472 OPC_EmitInteger32, 2,
12473 OPC_EmitRegisterI32, 0 ,
12474 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
12475 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12476 0,
12477 33|128,1,
12478 OPC_CheckChild0Type, MVT::v8f16,
12479 OPC_MoveChild1,
12480 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
12481 OPC_RecordChild0,
12482 OPC_CheckChild0TypeI32,
12483 OPC_MoveParent,
12484 OPC_Scope, 24,
12485 OPC_CheckChild2Integer, 0,
12486 OPC_CheckChild2TypeI32,
12487 OPC_MoveParent,
12488 OPC_CheckType, MVT::v8i1,
12489 OPC_CheckPatternPredicate2,
12490 OPC_EmitInteger32, 0,
12491 OPC_EmitInteger32, 2,
12492 OPC_EmitRegisterI32, 0 ,
12493 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
12494 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12495 24,
12496 OPC_CheckChild2Integer, 2,
12497 OPC_CheckChild2TypeI32,
12498 OPC_MoveParent,
12499 OPC_CheckType, MVT::v8i1,
12500 OPC_CheckPatternPredicate2,
12501 OPC_EmitInteger32, 2,
12502 OPC_EmitInteger32, 2,
12503 OPC_EmitRegisterI32, 0 ,
12504 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
12505 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12506 24,
12507 OPC_CheckChild2Integer, 20,
12508 OPC_CheckChild2TypeI32,
12509 OPC_MoveParent,
12510 OPC_CheckType, MVT::v8i1,
12511 OPC_CheckPatternPredicate2,
12512 OPC_EmitInteger32, 20,
12513 OPC_EmitInteger32, 2,
12514 OPC_EmitRegisterI32, 0 ,
12515 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
12516 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12517 24,
12518 OPC_CheckChild2Integer, 22,
12519 OPC_CheckChild2TypeI32,
12520 OPC_MoveParent,
12521 OPC_CheckType, MVT::v8i1,
12522 OPC_CheckPatternPredicate2,
12523 OPC_EmitInteger32, 22,
12524 OPC_EmitInteger32, 2,
12525 OPC_EmitRegisterI32, 0 ,
12526 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
12527 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12528 24,
12529 OPC_CheckChild2Integer, 24,
12530 OPC_CheckChild2TypeI32,
12531 OPC_MoveParent,
12532 OPC_CheckType, MVT::v8i1,
12533 OPC_CheckPatternPredicate2,
12534 OPC_EmitInteger32, 24,
12535 OPC_EmitInteger32, 2,
12536 OPC_EmitRegisterI32, 0 ,
12537 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
12538 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12539 24,
12540 OPC_CheckChild2Integer, 26,
12541 OPC_CheckChild2TypeI32,
12542 OPC_MoveParent,
12543 OPC_CheckType, MVT::v8i1,
12544 OPC_CheckPatternPredicate2,
12545 OPC_EmitInteger32, 26,
12546 OPC_EmitInteger32, 2,
12547 OPC_EmitRegisterI32, 0 ,
12548 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
12549 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
12550 0,
12551 33|128,1,
12552 OPC_CheckChild0Type, MVT::v4f32,
12553 OPC_MoveChild1,
12554 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
12555 OPC_RecordChild0,
12556 OPC_CheckChild0TypeI32,
12557 OPC_MoveParent,
12558 OPC_Scope, 24,
12559 OPC_CheckChild2Integer, 0,
12560 OPC_CheckChild2TypeI32,
12561 OPC_MoveParent,
12562 OPC_CheckType, MVT::v4i1,
12563 OPC_CheckPatternPredicate2,
12564 OPC_EmitInteger32, 0,
12565 OPC_EmitInteger32, 2,
12566 OPC_EmitRegisterI32, 0 ,
12567 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
12568 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12569 24,
12570 OPC_CheckChild2Integer, 2,
12571 OPC_CheckChild2TypeI32,
12572 OPC_MoveParent,
12573 OPC_CheckType, MVT::v4i1,
12574 OPC_CheckPatternPredicate2,
12575 OPC_EmitInteger32, 2,
12576 OPC_EmitInteger32, 2,
12577 OPC_EmitRegisterI32, 0 ,
12578 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
12579 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12580 24,
12581 OPC_CheckChild2Integer, 20,
12582 OPC_CheckChild2TypeI32,
12583 OPC_MoveParent,
12584 OPC_CheckType, MVT::v4i1,
12585 OPC_CheckPatternPredicate2,
12586 OPC_EmitInteger32, 20,
12587 OPC_EmitInteger32, 2,
12588 OPC_EmitRegisterI32, 0 ,
12589 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
12590 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12591 24,
12592 OPC_CheckChild2Integer, 22,
12593 OPC_CheckChild2TypeI32,
12594 OPC_MoveParent,
12595 OPC_CheckType, MVT::v4i1,
12596 OPC_CheckPatternPredicate2,
12597 OPC_EmitInteger32, 22,
12598 OPC_EmitInteger32, 2,
12599 OPC_EmitRegisterI32, 0 ,
12600 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
12601 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12602 24,
12603 OPC_CheckChild2Integer, 24,
12604 OPC_CheckChild2TypeI32,
12605 OPC_MoveParent,
12606 OPC_CheckType, MVT::v4i1,
12607 OPC_CheckPatternPredicate2,
12608 OPC_EmitInteger32, 24,
12609 OPC_EmitInteger32, 2,
12610 OPC_EmitRegisterI32, 0 ,
12611 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
12612 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12613 24,
12614 OPC_CheckChild2Integer, 26,
12615 OPC_CheckChild2TypeI32,
12616 OPC_MoveParent,
12617 OPC_CheckType, MVT::v4i1,
12618 OPC_CheckPatternPredicate2,
12619 OPC_EmitInteger32, 26,
12620 OPC_EmitInteger32, 2,
12621 OPC_EmitRegisterI32, 0 ,
12622 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
12623 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
12624 0,
12625 0,
12626 0,
12627 62,
12628 OPC_MoveChild0,
12629 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
12630 OPC_Scope, 27,
12631 OPC_RecordChild0,
12632 OPC_MoveChild1,
12633 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12634 OPC_CheckChild0Integer, 126|128,59,
12635 OPC_MoveParent,
12636 OPC_MoveParent,
12637 OPC_RecordChild1,
12638 OPC_CheckType, MVT::v8i8,
12639 OPC_CheckPatternPredicate1,
12640 OPC_EmitInteger32, 28,
12641 OPC_EmitRegisterI32, 0 ,
12642 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
12643 MVT::v8i8, 4, 1, 0, 2, 3,
12644 27,
12645 OPC_MoveChild0,
12646 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12647 OPC_CheckChild0Integer, 126|128,59,
12648 OPC_MoveParent,
12649 OPC_RecordChild1,
12650 OPC_MoveParent,
12651 OPC_RecordChild1,
12652 OPC_CheckType, MVT::v8i8,
12653 OPC_CheckPatternPredicate1,
12654 OPC_EmitInteger32, 28,
12655 OPC_EmitRegisterI32, 0 ,
12656 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICd),
12657 MVT::v8i8, 4, 1, 0, 2, 3,
12658 0,
12659 31,
12660 OPC_RecordChild0,
12661 OPC_MoveChild1,
12662 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
12663 OPC_MoveChild0,
12664 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12665 OPC_CheckChild0Integer, 126|128,59,
12666 OPC_MoveParent,
12667 OPC_RecordChild1,
12668 OPC_MoveParent,
12669 OPC_CheckType, MVT::v16i8,
12670 OPC_CheckPatternPredicate1,
12671 OPC_EmitInteger32, 28,
12672 OPC_EmitRegisterI32, 0 ,
12673 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
12674 MVT::v16i8, 4, 0, 1, 2, 3,
12675 99,
12676 OPC_MoveChild0,
12677 OPC_SwitchOpcode , 58, TARGET_VAL(ISD::XOR),
12678 OPC_Scope, 27,
12679 OPC_RecordChild0,
12680 OPC_MoveChild1,
12681 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12682 OPC_CheckChild0Integer, 126|128,59,
12683 OPC_MoveParent,
12684 OPC_MoveParent,
12685 OPC_RecordChild1,
12686 OPC_CheckType, MVT::v16i8,
12687 OPC_CheckPatternPredicate1,
12688 OPC_EmitInteger32, 28,
12689 OPC_EmitRegisterI32, 0 ,
12690 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
12691 MVT::v16i8, 4, 1, 0, 2, 3,
12692 27,
12693 OPC_MoveChild0,
12694 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12695 OPC_CheckChild0Integer, 126|128,59,
12696 OPC_MoveParent,
12697 OPC_RecordChild1,
12698 OPC_MoveParent,
12699 OPC_RecordChild1,
12700 OPC_CheckType, MVT::v16i8,
12701 OPC_CheckPatternPredicate1,
12702 OPC_EmitInteger32, 28,
12703 OPC_EmitRegisterI32, 0 ,
12704 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICq),
12705 MVT::v16i8, 4, 1, 0, 2, 3,
12706 0,
12707 32, TARGET_VAL(ISD::VSELECT),
12708 OPC_RecordChild0,
12709 OPC_CheckChild0Type, MVT::v16i1,
12710 OPC_RecordChild1,
12711 OPC_MoveChild2,
12712 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12713 OPC_CheckChild0Integer, 126|128,59,
12714 OPC_MoveParent,
12715 OPC_MoveParent,
12716 OPC_RecordChild1,
12717 OPC_CheckType, MVT::v16i8,
12718 OPC_CheckPatternPredicate0,
12719 OPC_EmitInteger32, 2,
12720 OPC_EmitRegisterI32, 0 ,
12721 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
12722 MVT::v16i8, 6, 2, 1, 3, 0, 4, 2,
12723 0,
12724 40,
12725 OPC_RecordChild0,
12726 OPC_MoveChild1,
12727 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
12728 OPC_MoveChild0,
12729 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12730 OPC_CheckChild0Integer, 126|128,59,
12731 OPC_MoveParent,
12732 OPC_RecordChild1,
12733 OPC_MoveParent,
12734 OPC_CheckType, MVT::v16i8,
12735 OPC_CheckPatternPredicate0,
12736 OPC_EmitInteger32, 0,
12737 OPC_EmitRegisterI32, 0 ,
12738 OPC_EmitRegisterI32, 0 ,
12739 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
12740 MVT::v4i32, 0,
12741 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
12742 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
12743 66|128,8,
12744 OPC_MoveChild0,
12745 OPC_SwitchOpcode , 76, TARGET_VAL(ISD::XOR),
12746 OPC_Scope, 36,
12747 OPC_RecordChild0,
12748 OPC_MoveChild1,
12749 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12750 OPC_CheckChild0Integer, 126|128,59,
12751 OPC_MoveParent,
12752 OPC_MoveParent,
12753 OPC_RecordChild1,
12754 OPC_CheckType, MVT::v16i8,
12755 OPC_CheckPatternPredicate0,
12756 OPC_EmitInteger32, 0,
12757 OPC_EmitRegisterI32, 0 ,
12758 OPC_EmitRegisterI32, 0 ,
12759 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
12760 MVT::v4i32, 0,
12761 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
12762 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
12763 36,
12764 OPC_MoveChild0,
12765 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
12766 OPC_CheckChild0Integer, 126|128,59,
12767 OPC_MoveParent,
12768 OPC_RecordChild1,
12769 OPC_MoveParent,
12770 OPC_RecordChild1,
12771 OPC_CheckType, MVT::v16i8,
12772 OPC_CheckPatternPredicate0,
12773 OPC_EmitInteger32, 0,
12774 OPC_EmitRegisterI32, 0 ,
12775 OPC_EmitRegisterI32, 0 ,
12776 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
12777 MVT::v4i32, 0,
12778 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
12779 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
12780 0,
12781 108|128,7, TARGET_VAL(ARMISD::VCMP),
12782 OPC_RecordChild0,
12783 OPC_Scope, 91|128,1,
12784 OPC_CheckChild0Type, MVT::v16i8,
12785 OPC_MoveChild1,
12786 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
12787 OPC_RecordChild0,
12788 OPC_CheckChild0TypeI32,
12789 OPC_MoveParent,
12790 OPC_Scope, 25,
12791 OPC_CheckChild2Integer, 0,
12792 OPC_CheckChild2TypeI32,
12793 OPC_MoveParent,
12794 OPC_RecordChild1,
12795 OPC_CheckType, MVT::v16i1,
12796 OPC_CheckPatternPredicate0,
12797 OPC_EmitInteger32, 0,
12798 OPC_EmitInteger32, 2,
12799 OPC_EmitRegisterI32, 0 ,
12800 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
12801 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
12802 25,
12803 OPC_CheckChild2Integer, 2,
12804 OPC_CheckChild2TypeI32,
12805 OPC_MoveParent,
12806 OPC_RecordChild1,
12807 OPC_CheckType, MVT::v16i1,
12808 OPC_CheckPatternPredicate0,
12809 OPC_EmitInteger32, 2,
12810 OPC_EmitInteger32, 2,
12811 OPC_EmitRegisterI32, 0 ,
12812 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
12813 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
12814 25,
12815 OPC_CheckChild2Integer, 20,
12816 OPC_CheckChild2TypeI32,
12817 OPC_MoveParent,
12818 OPC_RecordChild1,
12819 OPC_CheckType, MVT::v16i1,
12820 OPC_CheckPatternPredicate0,
12821 OPC_EmitInteger32, 20,
12822 OPC_EmitInteger32, 2,
12823 OPC_EmitRegisterI32, 0 ,
12824 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
12825 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
12826 25,
12827 OPC_CheckChild2Integer, 22,
12828 OPC_CheckChild2TypeI32,
12829 OPC_MoveParent,
12830 OPC_RecordChild1,
12831 OPC_CheckType, MVT::v16i1,
12832 OPC_CheckPatternPredicate0,
12833 OPC_EmitInteger32, 22,
12834 OPC_EmitInteger32, 2,
12835 OPC_EmitRegisterI32, 0 ,
12836 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
12837 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
12838 25,
12839 OPC_CheckChild2Integer, 24,
12840 OPC_CheckChild2TypeI32,
12841 OPC_MoveParent,
12842 OPC_RecordChild1,
12843 OPC_CheckType, MVT::v16i1,
12844 OPC_CheckPatternPredicate0,
12845 OPC_EmitInteger32, 24,
12846 OPC_EmitInteger32, 2,
12847 OPC_EmitRegisterI32, 0 ,
12848 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
12849 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
12850 25,
12851 OPC_CheckChild2Integer, 26,
12852 OPC_CheckChild2TypeI32,
12853 OPC_MoveParent,
12854 OPC_RecordChild1,
12855 OPC_CheckType, MVT::v16i1,
12856 OPC_CheckPatternPredicate0,
12857 OPC_EmitInteger32, 26,
12858 OPC_EmitInteger32, 2,
12859 OPC_EmitRegisterI32, 0 ,
12860 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
12861 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
12862 25,
12863 OPC_CheckChild2Integer, 16,
12864 OPC_CheckChild2TypeI32,
12865 OPC_MoveParent,
12866 OPC_RecordChild1,
12867 OPC_CheckType, MVT::v16i1,
12868 OPC_CheckPatternPredicate0,
12869 OPC_EmitInteger32, 16,
12870 OPC_EmitInteger32, 2,
12871 OPC_EmitRegisterI32, 0 ,
12872 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
12873 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
12874 25,
12875 OPC_CheckChild2Integer, 4,
12876 OPC_CheckChild2TypeI32,
12877 OPC_MoveParent,
12878 OPC_RecordChild1,
12879 OPC_CheckType, MVT::v16i1,
12880 OPC_CheckPatternPredicate0,
12881 OPC_EmitInteger32, 4,
12882 OPC_EmitInteger32, 2,
12883 OPC_EmitRegisterI32, 0 ,
12884 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
12885 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
12886 0,
12887 91|128,1,
12888 OPC_CheckChild0Type, MVT::v8i16,
12889 OPC_MoveChild1,
12890 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
12891 OPC_RecordChild0,
12892 OPC_CheckChild0TypeI32,
12893 OPC_MoveParent,
12894 OPC_Scope, 25,
12895 OPC_CheckChild2Integer, 0,
12896 OPC_CheckChild2TypeI32,
12897 OPC_MoveParent,
12898 OPC_RecordChild1,
12899 OPC_CheckType, MVT::v8i1,
12900 OPC_CheckPatternPredicate0,
12901 OPC_EmitInteger32, 0,
12902 OPC_EmitInteger32, 2,
12903 OPC_EmitRegisterI32, 0 ,
12904 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
12905 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
12906 25,
12907 OPC_CheckChild2Integer, 2,
12908 OPC_CheckChild2TypeI32,
12909 OPC_MoveParent,
12910 OPC_RecordChild1,
12911 OPC_CheckType, MVT::v8i1,
12912 OPC_CheckPatternPredicate0,
12913 OPC_EmitInteger32, 2,
12914 OPC_EmitInteger32, 2,
12915 OPC_EmitRegisterI32, 0 ,
12916 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
12917 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
12918 25,
12919 OPC_CheckChild2Integer, 20,
12920 OPC_CheckChild2TypeI32,
12921 OPC_MoveParent,
12922 OPC_RecordChild1,
12923 OPC_CheckType, MVT::v8i1,
12924 OPC_CheckPatternPredicate0,
12925 OPC_EmitInteger32, 20,
12926 OPC_EmitInteger32, 2,
12927 OPC_EmitRegisterI32, 0 ,
12928 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
12929 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
12930 25,
12931 OPC_CheckChild2Integer, 22,
12932 OPC_CheckChild2TypeI32,
12933 OPC_MoveParent,
12934 OPC_RecordChild1,
12935 OPC_CheckType, MVT::v8i1,
12936 OPC_CheckPatternPredicate0,
12937 OPC_EmitInteger32, 22,
12938 OPC_EmitInteger32, 2,
12939 OPC_EmitRegisterI32, 0 ,
12940 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
12941 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
12942 25,
12943 OPC_CheckChild2Integer, 24,
12944 OPC_CheckChild2TypeI32,
12945 OPC_MoveParent,
12946 OPC_RecordChild1,
12947 OPC_CheckType, MVT::v8i1,
12948 OPC_CheckPatternPredicate0,
12949 OPC_EmitInteger32, 24,
12950 OPC_EmitInteger32, 2,
12951 OPC_EmitRegisterI32, 0 ,
12952 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
12953 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
12954 25,
12955 OPC_CheckChild2Integer, 26,
12956 OPC_CheckChild2TypeI32,
12957 OPC_MoveParent,
12958 OPC_RecordChild1,
12959 OPC_CheckType, MVT::v8i1,
12960 OPC_CheckPatternPredicate0,
12961 OPC_EmitInteger32, 26,
12962 OPC_EmitInteger32, 2,
12963 OPC_EmitRegisterI32, 0 ,
12964 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
12965 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
12966 25,
12967 OPC_CheckChild2Integer, 16,
12968 OPC_CheckChild2TypeI32,
12969 OPC_MoveParent,
12970 OPC_RecordChild1,
12971 OPC_CheckType, MVT::v8i1,
12972 OPC_CheckPatternPredicate0,
12973 OPC_EmitInteger32, 16,
12974 OPC_EmitInteger32, 2,
12975 OPC_EmitRegisterI32, 0 ,
12976 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
12977 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
12978 25,
12979 OPC_CheckChild2Integer, 4,
12980 OPC_CheckChild2TypeI32,
12981 OPC_MoveParent,
12982 OPC_RecordChild1,
12983 OPC_CheckType, MVT::v8i1,
12984 OPC_CheckPatternPredicate0,
12985 OPC_EmitInteger32, 4,
12986 OPC_EmitInteger32, 2,
12987 OPC_EmitRegisterI32, 0 ,
12988 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
12989 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
12990 0,
12991 91|128,1,
12992 OPC_CheckChild0Type, MVT::v4i32,
12993 OPC_MoveChild1,
12994 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
12995 OPC_RecordChild0,
12996 OPC_CheckChild0TypeI32,
12997 OPC_MoveParent,
12998 OPC_Scope, 25,
12999 OPC_CheckChild2Integer, 0,
13000 OPC_CheckChild2TypeI32,
13001 OPC_MoveParent,
13002 OPC_RecordChild1,
13003 OPC_CheckType, MVT::v4i1,
13004 OPC_CheckPatternPredicate0,
13005 OPC_EmitInteger32, 0,
13006 OPC_EmitInteger32, 2,
13007 OPC_EmitRegisterI32, 0 ,
13008 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
13009 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13010 25,
13011 OPC_CheckChild2Integer, 2,
13012 OPC_CheckChild2TypeI32,
13013 OPC_MoveParent,
13014 OPC_RecordChild1,
13015 OPC_CheckType, MVT::v4i1,
13016 OPC_CheckPatternPredicate0,
13017 OPC_EmitInteger32, 2,
13018 OPC_EmitInteger32, 2,
13019 OPC_EmitRegisterI32, 0 ,
13020 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
13021 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13022 25,
13023 OPC_CheckChild2Integer, 20,
13024 OPC_CheckChild2TypeI32,
13025 OPC_MoveParent,
13026 OPC_RecordChild1,
13027 OPC_CheckType, MVT::v4i1,
13028 OPC_CheckPatternPredicate0,
13029 OPC_EmitInteger32, 20,
13030 OPC_EmitInteger32, 2,
13031 OPC_EmitRegisterI32, 0 ,
13032 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
13033 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13034 25,
13035 OPC_CheckChild2Integer, 22,
13036 OPC_CheckChild2TypeI32,
13037 OPC_MoveParent,
13038 OPC_RecordChild1,
13039 OPC_CheckType, MVT::v4i1,
13040 OPC_CheckPatternPredicate0,
13041 OPC_EmitInteger32, 22,
13042 OPC_EmitInteger32, 2,
13043 OPC_EmitRegisterI32, 0 ,
13044 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
13045 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13046 25,
13047 OPC_CheckChild2Integer, 24,
13048 OPC_CheckChild2TypeI32,
13049 OPC_MoveParent,
13050 OPC_RecordChild1,
13051 OPC_CheckType, MVT::v4i1,
13052 OPC_CheckPatternPredicate0,
13053 OPC_EmitInteger32, 24,
13054 OPC_EmitInteger32, 2,
13055 OPC_EmitRegisterI32, 0 ,
13056 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
13057 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13058 25,
13059 OPC_CheckChild2Integer, 26,
13060 OPC_CheckChild2TypeI32,
13061 OPC_MoveParent,
13062 OPC_RecordChild1,
13063 OPC_CheckType, MVT::v4i1,
13064 OPC_CheckPatternPredicate0,
13065 OPC_EmitInteger32, 26,
13066 OPC_EmitInteger32, 2,
13067 OPC_EmitRegisterI32, 0 ,
13068 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
13069 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13070 25,
13071 OPC_CheckChild2Integer, 16,
13072 OPC_CheckChild2TypeI32,
13073 OPC_MoveParent,
13074 OPC_RecordChild1,
13075 OPC_CheckType, MVT::v4i1,
13076 OPC_CheckPatternPredicate0,
13077 OPC_EmitInteger32, 16,
13078 OPC_EmitInteger32, 2,
13079 OPC_EmitRegisterI32, 0 ,
13080 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
13081 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13082 25,
13083 OPC_CheckChild2Integer, 4,
13084 OPC_CheckChild2TypeI32,
13085 OPC_MoveParent,
13086 OPC_RecordChild1,
13087 OPC_CheckType, MVT::v4i1,
13088 OPC_CheckPatternPredicate0,
13089 OPC_EmitInteger32, 4,
13090 OPC_EmitInteger32, 2,
13091 OPC_EmitRegisterI32, 0 ,
13092 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
13093 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13094 0,
13095 39|128,1,
13096 OPC_CheckChild0Type, MVT::v8f16,
13097 OPC_MoveChild1,
13098 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
13099 OPC_RecordChild0,
13100 OPC_CheckChild0TypeI32,
13101 OPC_MoveParent,
13102 OPC_Scope, 25,
13103 OPC_CheckChild2Integer, 0,
13104 OPC_CheckChild2TypeI32,
13105 OPC_MoveParent,
13106 OPC_RecordChild1,
13107 OPC_CheckType, MVT::v8i1,
13108 OPC_CheckPatternPredicate2,
13109 OPC_EmitInteger32, 0,
13110 OPC_EmitInteger32, 2,
13111 OPC_EmitRegisterI32, 0 ,
13112 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13113 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
13114 25,
13115 OPC_CheckChild2Integer, 2,
13116 OPC_CheckChild2TypeI32,
13117 OPC_MoveParent,
13118 OPC_RecordChild1,
13119 OPC_CheckType, MVT::v8i1,
13120 OPC_CheckPatternPredicate2,
13121 OPC_EmitInteger32, 2,
13122 OPC_EmitInteger32, 2,
13123 OPC_EmitRegisterI32, 0 ,
13124 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13125 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
13126 25,
13127 OPC_CheckChild2Integer, 20,
13128 OPC_CheckChild2TypeI32,
13129 OPC_MoveParent,
13130 OPC_RecordChild1,
13131 OPC_CheckType, MVT::v8i1,
13132 OPC_CheckPatternPredicate2,
13133 OPC_EmitInteger32, 20,
13134 OPC_EmitInteger32, 2,
13135 OPC_EmitRegisterI32, 0 ,
13136 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13137 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
13138 25,
13139 OPC_CheckChild2Integer, 22,
13140 OPC_CheckChild2TypeI32,
13141 OPC_MoveParent,
13142 OPC_RecordChild1,
13143 OPC_CheckType, MVT::v8i1,
13144 OPC_CheckPatternPredicate2,
13145 OPC_EmitInteger32, 22,
13146 OPC_EmitInteger32, 2,
13147 OPC_EmitRegisterI32, 0 ,
13148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13149 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
13150 25,
13151 OPC_CheckChild2Integer, 24,
13152 OPC_CheckChild2TypeI32,
13153 OPC_MoveParent,
13154 OPC_RecordChild1,
13155 OPC_CheckType, MVT::v8i1,
13156 OPC_CheckPatternPredicate2,
13157 OPC_EmitInteger32, 24,
13158 OPC_EmitInteger32, 2,
13159 OPC_EmitRegisterI32, 0 ,
13160 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13161 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
13162 25,
13163 OPC_CheckChild2Integer, 26,
13164 OPC_CheckChild2TypeI32,
13165 OPC_MoveParent,
13166 OPC_RecordChild1,
13167 OPC_CheckType, MVT::v8i1,
13168 OPC_CheckPatternPredicate2,
13169 OPC_EmitInteger32, 26,
13170 OPC_EmitInteger32, 2,
13171 OPC_EmitRegisterI32, 0 ,
13172 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13173 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
13174 0,
13175 39|128,1,
13176 OPC_CheckChild0Type, MVT::v4f32,
13177 OPC_MoveChild1,
13178 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
13179 OPC_RecordChild0,
13180 OPC_CheckChild0TypeI32,
13181 OPC_MoveParent,
13182 OPC_Scope, 25,
13183 OPC_CheckChild2Integer, 0,
13184 OPC_CheckChild2TypeI32,
13185 OPC_MoveParent,
13186 OPC_RecordChild1,
13187 OPC_CheckType, MVT::v4i1,
13188 OPC_CheckPatternPredicate2,
13189 OPC_EmitInteger32, 0,
13190 OPC_EmitInteger32, 2,
13191 OPC_EmitRegisterI32, 0 ,
13192 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13193 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13194 25,
13195 OPC_CheckChild2Integer, 2,
13196 OPC_CheckChild2TypeI32,
13197 OPC_MoveParent,
13198 OPC_RecordChild1,
13199 OPC_CheckType, MVT::v4i1,
13200 OPC_CheckPatternPredicate2,
13201 OPC_EmitInteger32, 2,
13202 OPC_EmitInteger32, 2,
13203 OPC_EmitRegisterI32, 0 ,
13204 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13205 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13206 25,
13207 OPC_CheckChild2Integer, 20,
13208 OPC_CheckChild2TypeI32,
13209 OPC_MoveParent,
13210 OPC_RecordChild1,
13211 OPC_CheckType, MVT::v4i1,
13212 OPC_CheckPatternPredicate2,
13213 OPC_EmitInteger32, 20,
13214 OPC_EmitInteger32, 2,
13215 OPC_EmitRegisterI32, 0 ,
13216 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13217 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13218 25,
13219 OPC_CheckChild2Integer, 22,
13220 OPC_CheckChild2TypeI32,
13221 OPC_MoveParent,
13222 OPC_RecordChild1,
13223 OPC_CheckType, MVT::v4i1,
13224 OPC_CheckPatternPredicate2,
13225 OPC_EmitInteger32, 22,
13226 OPC_EmitInteger32, 2,
13227 OPC_EmitRegisterI32, 0 ,
13228 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13229 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13230 25,
13231 OPC_CheckChild2Integer, 24,
13232 OPC_CheckChild2TypeI32,
13233 OPC_MoveParent,
13234 OPC_RecordChild1,
13235 OPC_CheckType, MVT::v4i1,
13236 OPC_CheckPatternPredicate2,
13237 OPC_EmitInteger32, 24,
13238 OPC_EmitInteger32, 2,
13239 OPC_EmitRegisterI32, 0 ,
13240 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13241 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13242 25,
13243 OPC_CheckChild2Integer, 26,
13244 OPC_CheckChild2TypeI32,
13245 OPC_MoveParent,
13246 OPC_RecordChild1,
13247 OPC_CheckType, MVT::v4i1,
13248 OPC_CheckPatternPredicate2,
13249 OPC_EmitInteger32, 26,
13250 OPC_EmitInteger32, 2,
13251 OPC_EmitRegisterI32, 0 ,
13252 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13253 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
13254 0,
13255 0,
13256 0,
13257 66|128,15,
13258 OPC_RecordChild0,
13259 OPC_MoveChild1,
13260 OPC_SwitchOpcode , 28, TARGET_VAL(ARMISD::VMOVIMM),
13261 OPC_CheckChild0Integer, 126|128,51,
13262 OPC_MoveParent,
13263 OPC_CheckType, MVT::v4i32,
13264 OPC_CheckPatternPredicate0,
13265 OPC_EmitInteger32, 0,
13266 OPC_EmitRegisterI32, 0 ,
13267 OPC_EmitRegisterI32, 0 ,
13268 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
13269 MVT::v4i32, 0,
13270 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu16bh),
13271 MVT::v4i32, 5, 0, 1, 2, 3, 4,
13272 109|128,7, TARGET_VAL(ARMISD::VCMPZ),
13273 OPC_RecordChild0,
13274 OPC_Scope, 92|128,1,
13275 OPC_CheckChild0Type, MVT::v16i8,
13276 OPC_Scope, 26,
13277 OPC_CheckChild1Integer, 0,
13278 OPC_CheckChild1TypeI32,
13279 OPC_MoveParent,
13280 OPC_CheckType, MVT::v16i1,
13281 OPC_CheckPatternPredicate0,
13282 OPC_EmitRegisterI32, ARM::ZR,
13283 OPC_EmitInteger32, 0,
13284 OPC_EmitInteger32, 2,
13285 OPC_EmitRegisterI32, 0 ,
13286 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
13287 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13288 26,
13289 OPC_CheckChild1Integer, 2,
13290 OPC_CheckChild1TypeI32,
13291 OPC_MoveParent,
13292 OPC_CheckType, MVT::v16i1,
13293 OPC_CheckPatternPredicate0,
13294 OPC_EmitRegisterI32, ARM::ZR,
13295 OPC_EmitInteger32, 2,
13296 OPC_EmitInteger32, 2,
13297 OPC_EmitRegisterI32, 0 ,
13298 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
13299 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13300 26,
13301 OPC_CheckChild1Integer, 20,
13302 OPC_CheckChild1TypeI32,
13303 OPC_MoveParent,
13304 OPC_CheckType, MVT::v16i1,
13305 OPC_CheckPatternPredicate0,
13306 OPC_EmitRegisterI32, ARM::ZR,
13307 OPC_EmitInteger32, 20,
13308 OPC_EmitInteger32, 2,
13309 OPC_EmitRegisterI32, 0 ,
13310 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
13311 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13312 26,
13313 OPC_CheckChild1Integer, 22,
13314 OPC_CheckChild1TypeI32,
13315 OPC_MoveParent,
13316 OPC_CheckType, MVT::v16i1,
13317 OPC_CheckPatternPredicate0,
13318 OPC_EmitRegisterI32, ARM::ZR,
13319 OPC_EmitInteger32, 22,
13320 OPC_EmitInteger32, 2,
13321 OPC_EmitRegisterI32, 0 ,
13322 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
13323 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13324 26,
13325 OPC_CheckChild1Integer, 24,
13326 OPC_CheckChild1TypeI32,
13327 OPC_MoveParent,
13328 OPC_CheckType, MVT::v16i1,
13329 OPC_CheckPatternPredicate0,
13330 OPC_EmitRegisterI32, ARM::ZR,
13331 OPC_EmitInteger32, 24,
13332 OPC_EmitInteger32, 2,
13333 OPC_EmitRegisterI32, 0 ,
13334 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
13335 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13336 26,
13337 OPC_CheckChild1Integer, 26,
13338 OPC_CheckChild1TypeI32,
13339 OPC_MoveParent,
13340 OPC_CheckType, MVT::v16i1,
13341 OPC_CheckPatternPredicate0,
13342 OPC_EmitRegisterI32, ARM::ZR,
13343 OPC_EmitInteger32, 26,
13344 OPC_EmitInteger32, 2,
13345 OPC_EmitRegisterI32, 0 ,
13346 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
13347 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13348 26,
13349 OPC_CheckChild1Integer, 16,
13350 OPC_CheckChild1TypeI32,
13351 OPC_MoveParent,
13352 OPC_CheckType, MVT::v16i1,
13353 OPC_CheckPatternPredicate0,
13354 OPC_EmitRegisterI32, ARM::ZR,
13355 OPC_EmitInteger32, 16,
13356 OPC_EmitInteger32, 2,
13357 OPC_EmitRegisterI32, 0 ,
13358 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
13359 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13360 26,
13361 OPC_CheckChild1Integer, 4,
13362 OPC_CheckChild1TypeI32,
13363 OPC_MoveParent,
13364 OPC_CheckType, MVT::v16i1,
13365 OPC_CheckPatternPredicate0,
13366 OPC_EmitRegisterI32, ARM::ZR,
13367 OPC_EmitInteger32, 4,
13368 OPC_EmitInteger32, 2,
13369 OPC_EmitRegisterI32, 0 ,
13370 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
13371 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13372 0,
13373 92|128,1,
13374 OPC_CheckChild0Type, MVT::v8i16,
13375 OPC_Scope, 26,
13376 OPC_CheckChild1Integer, 0,
13377 OPC_CheckChild1TypeI32,
13378 OPC_MoveParent,
13379 OPC_CheckType, MVT::v8i1,
13380 OPC_CheckPatternPredicate0,
13381 OPC_EmitRegisterI32, ARM::ZR,
13382 OPC_EmitInteger32, 0,
13383 OPC_EmitInteger32, 2,
13384 OPC_EmitRegisterI32, 0 ,
13385 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
13386 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13387 26,
13388 OPC_CheckChild1Integer, 2,
13389 OPC_CheckChild1TypeI32,
13390 OPC_MoveParent,
13391 OPC_CheckType, MVT::v8i1,
13392 OPC_CheckPatternPredicate0,
13393 OPC_EmitRegisterI32, ARM::ZR,
13394 OPC_EmitInteger32, 2,
13395 OPC_EmitInteger32, 2,
13396 OPC_EmitRegisterI32, 0 ,
13397 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
13398 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13399 26,
13400 OPC_CheckChild1Integer, 20,
13401 OPC_CheckChild1TypeI32,
13402 OPC_MoveParent,
13403 OPC_CheckType, MVT::v8i1,
13404 OPC_CheckPatternPredicate0,
13405 OPC_EmitRegisterI32, ARM::ZR,
13406 OPC_EmitInteger32, 20,
13407 OPC_EmitInteger32, 2,
13408 OPC_EmitRegisterI32, 0 ,
13409 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
13410 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13411 26,
13412 OPC_CheckChild1Integer, 22,
13413 OPC_CheckChild1TypeI32,
13414 OPC_MoveParent,
13415 OPC_CheckType, MVT::v8i1,
13416 OPC_CheckPatternPredicate0,
13417 OPC_EmitRegisterI32, ARM::ZR,
13418 OPC_EmitInteger32, 22,
13419 OPC_EmitInteger32, 2,
13420 OPC_EmitRegisterI32, 0 ,
13421 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
13422 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13423 26,
13424 OPC_CheckChild1Integer, 24,
13425 OPC_CheckChild1TypeI32,
13426 OPC_MoveParent,
13427 OPC_CheckType, MVT::v8i1,
13428 OPC_CheckPatternPredicate0,
13429 OPC_EmitRegisterI32, ARM::ZR,
13430 OPC_EmitInteger32, 24,
13431 OPC_EmitInteger32, 2,
13432 OPC_EmitRegisterI32, 0 ,
13433 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
13434 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13435 26,
13436 OPC_CheckChild1Integer, 26,
13437 OPC_CheckChild1TypeI32,
13438 OPC_MoveParent,
13439 OPC_CheckType, MVT::v8i1,
13440 OPC_CheckPatternPredicate0,
13441 OPC_EmitRegisterI32, ARM::ZR,
13442 OPC_EmitInteger32, 26,
13443 OPC_EmitInteger32, 2,
13444 OPC_EmitRegisterI32, 0 ,
13445 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
13446 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13447 26,
13448 OPC_CheckChild1Integer, 16,
13449 OPC_CheckChild1TypeI32,
13450 OPC_MoveParent,
13451 OPC_CheckType, MVT::v8i1,
13452 OPC_CheckPatternPredicate0,
13453 OPC_EmitRegisterI32, ARM::ZR,
13454 OPC_EmitInteger32, 16,
13455 OPC_EmitInteger32, 2,
13456 OPC_EmitRegisterI32, 0 ,
13457 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
13458 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13459 26,
13460 OPC_CheckChild1Integer, 4,
13461 OPC_CheckChild1TypeI32,
13462 OPC_MoveParent,
13463 OPC_CheckType, MVT::v8i1,
13464 OPC_CheckPatternPredicate0,
13465 OPC_EmitRegisterI32, ARM::ZR,
13466 OPC_EmitInteger32, 4,
13467 OPC_EmitInteger32, 2,
13468 OPC_EmitRegisterI32, 0 ,
13469 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
13470 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13471 0,
13472 92|128,1,
13473 OPC_CheckChild0Type, MVT::v4i32,
13474 OPC_Scope, 26,
13475 OPC_CheckChild1Integer, 0,
13476 OPC_CheckChild1TypeI32,
13477 OPC_MoveParent,
13478 OPC_CheckType, MVT::v4i1,
13479 OPC_CheckPatternPredicate0,
13480 OPC_EmitRegisterI32, ARM::ZR,
13481 OPC_EmitInteger32, 0,
13482 OPC_EmitInteger32, 2,
13483 OPC_EmitRegisterI32, 0 ,
13484 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
13485 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13486 26,
13487 OPC_CheckChild1Integer, 2,
13488 OPC_CheckChild1TypeI32,
13489 OPC_MoveParent,
13490 OPC_CheckType, MVT::v4i1,
13491 OPC_CheckPatternPredicate0,
13492 OPC_EmitRegisterI32, ARM::ZR,
13493 OPC_EmitInteger32, 2,
13494 OPC_EmitInteger32, 2,
13495 OPC_EmitRegisterI32, 0 ,
13496 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
13497 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13498 26,
13499 OPC_CheckChild1Integer, 20,
13500 OPC_CheckChild1TypeI32,
13501 OPC_MoveParent,
13502 OPC_CheckType, MVT::v4i1,
13503 OPC_CheckPatternPredicate0,
13504 OPC_EmitRegisterI32, ARM::ZR,
13505 OPC_EmitInteger32, 20,
13506 OPC_EmitInteger32, 2,
13507 OPC_EmitRegisterI32, 0 ,
13508 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
13509 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13510 26,
13511 OPC_CheckChild1Integer, 22,
13512 OPC_CheckChild1TypeI32,
13513 OPC_MoveParent,
13514 OPC_CheckType, MVT::v4i1,
13515 OPC_CheckPatternPredicate0,
13516 OPC_EmitRegisterI32, ARM::ZR,
13517 OPC_EmitInteger32, 22,
13518 OPC_EmitInteger32, 2,
13519 OPC_EmitRegisterI32, 0 ,
13520 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
13521 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13522 26,
13523 OPC_CheckChild1Integer, 24,
13524 OPC_CheckChild1TypeI32,
13525 OPC_MoveParent,
13526 OPC_CheckType, MVT::v4i1,
13527 OPC_CheckPatternPredicate0,
13528 OPC_EmitRegisterI32, ARM::ZR,
13529 OPC_EmitInteger32, 24,
13530 OPC_EmitInteger32, 2,
13531 OPC_EmitRegisterI32, 0 ,
13532 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
13533 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13534 26,
13535 OPC_CheckChild1Integer, 26,
13536 OPC_CheckChild1TypeI32,
13537 OPC_MoveParent,
13538 OPC_CheckType, MVT::v4i1,
13539 OPC_CheckPatternPredicate0,
13540 OPC_EmitRegisterI32, ARM::ZR,
13541 OPC_EmitInteger32, 26,
13542 OPC_EmitInteger32, 2,
13543 OPC_EmitRegisterI32, 0 ,
13544 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
13545 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13546 26,
13547 OPC_CheckChild1Integer, 16,
13548 OPC_CheckChild1TypeI32,
13549 OPC_MoveParent,
13550 OPC_CheckType, MVT::v4i1,
13551 OPC_CheckPatternPredicate0,
13552 OPC_EmitRegisterI32, ARM::ZR,
13553 OPC_EmitInteger32, 16,
13554 OPC_EmitInteger32, 2,
13555 OPC_EmitRegisterI32, 0 ,
13556 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
13557 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13558 26,
13559 OPC_CheckChild1Integer, 4,
13560 OPC_CheckChild1TypeI32,
13561 OPC_MoveParent,
13562 OPC_CheckType, MVT::v4i1,
13563 OPC_CheckPatternPredicate0,
13564 OPC_EmitRegisterI32, ARM::ZR,
13565 OPC_EmitInteger32, 4,
13566 OPC_EmitInteger32, 2,
13567 OPC_EmitRegisterI32, 0 ,
13568 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
13569 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13570 0,
13571 38|128,1,
13572 OPC_CheckChild0Type, MVT::v8f16,
13573 OPC_Scope, 26,
13574 OPC_CheckChild1Integer, 0,
13575 OPC_CheckChild1TypeI32,
13576 OPC_MoveParent,
13577 OPC_CheckType, MVT::v8i1,
13578 OPC_CheckPatternPredicate2,
13579 OPC_EmitRegisterI32, ARM::ZR,
13580 OPC_EmitInteger32, 0,
13581 OPC_EmitInteger32, 2,
13582 OPC_EmitRegisterI32, 0 ,
13583 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13584 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13585 26,
13586 OPC_CheckChild1Integer, 2,
13587 OPC_CheckChild1TypeI32,
13588 OPC_MoveParent,
13589 OPC_CheckType, MVT::v8i1,
13590 OPC_CheckPatternPredicate2,
13591 OPC_EmitRegisterI32, ARM::ZR,
13592 OPC_EmitInteger32, 2,
13593 OPC_EmitInteger32, 2,
13594 OPC_EmitRegisterI32, 0 ,
13595 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13596 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13597 26,
13598 OPC_CheckChild1Integer, 20,
13599 OPC_CheckChild1TypeI32,
13600 OPC_MoveParent,
13601 OPC_CheckType, MVT::v8i1,
13602 OPC_CheckPatternPredicate2,
13603 OPC_EmitRegisterI32, ARM::ZR,
13604 OPC_EmitInteger32, 20,
13605 OPC_EmitInteger32, 2,
13606 OPC_EmitRegisterI32, 0 ,
13607 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13608 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13609 26,
13610 OPC_CheckChild1Integer, 22,
13611 OPC_CheckChild1TypeI32,
13612 OPC_MoveParent,
13613 OPC_CheckType, MVT::v8i1,
13614 OPC_CheckPatternPredicate2,
13615 OPC_EmitRegisterI32, ARM::ZR,
13616 OPC_EmitInteger32, 22,
13617 OPC_EmitInteger32, 2,
13618 OPC_EmitRegisterI32, 0 ,
13619 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13620 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13621 26,
13622 OPC_CheckChild1Integer, 24,
13623 OPC_CheckChild1TypeI32,
13624 OPC_MoveParent,
13625 OPC_CheckType, MVT::v8i1,
13626 OPC_CheckPatternPredicate2,
13627 OPC_EmitRegisterI32, ARM::ZR,
13628 OPC_EmitInteger32, 24,
13629 OPC_EmitInteger32, 2,
13630 OPC_EmitRegisterI32, 0 ,
13631 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13632 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13633 26,
13634 OPC_CheckChild1Integer, 26,
13635 OPC_CheckChild1TypeI32,
13636 OPC_MoveParent,
13637 OPC_CheckType, MVT::v8i1,
13638 OPC_CheckPatternPredicate2,
13639 OPC_EmitRegisterI32, ARM::ZR,
13640 OPC_EmitInteger32, 26,
13641 OPC_EmitInteger32, 2,
13642 OPC_EmitRegisterI32, 0 ,
13643 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
13644 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13645 0,
13646 38|128,1,
13647 OPC_CheckChild0Type, MVT::v4f32,
13648 OPC_Scope, 26,
13649 OPC_CheckChild1Integer, 0,
13650 OPC_CheckChild1TypeI32,
13651 OPC_MoveParent,
13652 OPC_CheckType, MVT::v4i1,
13653 OPC_CheckPatternPredicate2,
13654 OPC_EmitRegisterI32, ARM::ZR,
13655 OPC_EmitInteger32, 0,
13656 OPC_EmitInteger32, 2,
13657 OPC_EmitRegisterI32, 0 ,
13658 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13659 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13660 26,
13661 OPC_CheckChild1Integer, 2,
13662 OPC_CheckChild1TypeI32,
13663 OPC_MoveParent,
13664 OPC_CheckType, MVT::v4i1,
13665 OPC_CheckPatternPredicate2,
13666 OPC_EmitRegisterI32, ARM::ZR,
13667 OPC_EmitInteger32, 2,
13668 OPC_EmitInteger32, 2,
13669 OPC_EmitRegisterI32, 0 ,
13670 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13671 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13672 26,
13673 OPC_CheckChild1Integer, 20,
13674 OPC_CheckChild1TypeI32,
13675 OPC_MoveParent,
13676 OPC_CheckType, MVT::v4i1,
13677 OPC_CheckPatternPredicate2,
13678 OPC_EmitRegisterI32, ARM::ZR,
13679 OPC_EmitInteger32, 20,
13680 OPC_EmitInteger32, 2,
13681 OPC_EmitRegisterI32, 0 ,
13682 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13683 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13684 26,
13685 OPC_CheckChild1Integer, 22,
13686 OPC_CheckChild1TypeI32,
13687 OPC_MoveParent,
13688 OPC_CheckType, MVT::v4i1,
13689 OPC_CheckPatternPredicate2,
13690 OPC_EmitRegisterI32, ARM::ZR,
13691 OPC_EmitInteger32, 22,
13692 OPC_EmitInteger32, 2,
13693 OPC_EmitRegisterI32, 0 ,
13694 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13695 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13696 26,
13697 OPC_CheckChild1Integer, 24,
13698 OPC_CheckChild1TypeI32,
13699 OPC_MoveParent,
13700 OPC_CheckType, MVT::v4i1,
13701 OPC_CheckPatternPredicate2,
13702 OPC_EmitRegisterI32, ARM::ZR,
13703 OPC_EmitInteger32, 24,
13704 OPC_EmitInteger32, 2,
13705 OPC_EmitRegisterI32, 0 ,
13706 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13707 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13708 26,
13709 OPC_CheckChild1Integer, 26,
13710 OPC_CheckChild1TypeI32,
13711 OPC_MoveParent,
13712 OPC_CheckType, MVT::v4i1,
13713 OPC_CheckPatternPredicate2,
13714 OPC_EmitRegisterI32, ARM::ZR,
13715 OPC_EmitInteger32, 26,
13716 OPC_EmitInteger32, 2,
13717 OPC_EmitRegisterI32, 0 ,
13718 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
13719 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13720 0,
13721 0,
13722 42|128,7, TARGET_VAL(ARMISD::VCMP),
13723 OPC_RecordChild0,
13724 OPC_Scope, 77|128,1,
13725 OPC_CheckChild0Type, MVT::v16i8,
13726 OPC_RecordChild1,
13727 OPC_Scope, 24,
13728 OPC_CheckChild2Integer, 0,
13729 OPC_CheckChild2TypeI32,
13730 OPC_MoveParent,
13731 OPC_CheckType, MVT::v16i1,
13732 OPC_CheckPatternPredicate0,
13733 OPC_EmitInteger32, 0,
13734 OPC_EmitInteger32, 2,
13735 OPC_EmitRegisterI32, 0 ,
13736 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8),
13737 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13738 24,
13739 OPC_CheckChild2Integer, 2,
13740 OPC_CheckChild2TypeI32,
13741 OPC_MoveParent,
13742 OPC_CheckType, MVT::v16i1,
13743 OPC_CheckPatternPredicate0,
13744 OPC_EmitInteger32, 2,
13745 OPC_EmitInteger32, 2,
13746 OPC_EmitRegisterI32, 0 ,
13747 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8),
13748 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13749 24,
13750 OPC_CheckChild2Integer, 20,
13751 OPC_CheckChild2TypeI32,
13752 OPC_MoveParent,
13753 OPC_CheckType, MVT::v16i1,
13754 OPC_CheckPatternPredicate0,
13755 OPC_EmitInteger32, 20,
13756 OPC_EmitInteger32, 2,
13757 OPC_EmitRegisterI32, 0 ,
13758 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
13759 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13760 24,
13761 OPC_CheckChild2Integer, 22,
13762 OPC_CheckChild2TypeI32,
13763 OPC_MoveParent,
13764 OPC_CheckType, MVT::v16i1,
13765 OPC_CheckPatternPredicate0,
13766 OPC_EmitInteger32, 22,
13767 OPC_EmitInteger32, 2,
13768 OPC_EmitRegisterI32, 0 ,
13769 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
13770 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13771 24,
13772 OPC_CheckChild2Integer, 24,
13773 OPC_CheckChild2TypeI32,
13774 OPC_MoveParent,
13775 OPC_CheckType, MVT::v16i1,
13776 OPC_CheckPatternPredicate0,
13777 OPC_EmitInteger32, 24,
13778 OPC_EmitInteger32, 2,
13779 OPC_EmitRegisterI32, 0 ,
13780 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
13781 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13782 24,
13783 OPC_CheckChild2Integer, 26,
13784 OPC_CheckChild2TypeI32,
13785 OPC_MoveParent,
13786 OPC_CheckType, MVT::v16i1,
13787 OPC_CheckPatternPredicate0,
13788 OPC_EmitInteger32, 26,
13789 OPC_EmitInteger32, 2,
13790 OPC_EmitRegisterI32, 0 ,
13791 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
13792 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13793 24,
13794 OPC_CheckChild2Integer, 16,
13795 OPC_CheckChild2TypeI32,
13796 OPC_MoveParent,
13797 OPC_CheckType, MVT::v16i1,
13798 OPC_CheckPatternPredicate0,
13799 OPC_EmitInteger32, 16,
13800 OPC_EmitInteger32, 2,
13801 OPC_EmitRegisterI32, 0 ,
13802 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8),
13803 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13804 24,
13805 OPC_CheckChild2Integer, 4,
13806 OPC_CheckChild2TypeI32,
13807 OPC_MoveParent,
13808 OPC_CheckType, MVT::v16i1,
13809 OPC_CheckPatternPredicate0,
13810 OPC_EmitInteger32, 4,
13811 OPC_EmitInteger32, 2,
13812 OPC_EmitRegisterI32, 0 ,
13813 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8),
13814 MVT::v16i1, 6, 1, 2, 3, 4, 0, 5,
13815 0,
13816 77|128,1,
13817 OPC_CheckChild0Type, MVT::v8i16,
13818 OPC_RecordChild1,
13819 OPC_Scope, 24,
13820 OPC_CheckChild2Integer, 0,
13821 OPC_CheckChild2TypeI32,
13822 OPC_MoveParent,
13823 OPC_CheckType, MVT::v8i1,
13824 OPC_CheckPatternPredicate0,
13825 OPC_EmitInteger32, 0,
13826 OPC_EmitInteger32, 2,
13827 OPC_EmitRegisterI32, 0 ,
13828 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16),
13829 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13830 24,
13831 OPC_CheckChild2Integer, 2,
13832 OPC_CheckChild2TypeI32,
13833 OPC_MoveParent,
13834 OPC_CheckType, MVT::v8i1,
13835 OPC_CheckPatternPredicate0,
13836 OPC_EmitInteger32, 2,
13837 OPC_EmitInteger32, 2,
13838 OPC_EmitRegisterI32, 0 ,
13839 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16),
13840 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13841 24,
13842 OPC_CheckChild2Integer, 20,
13843 OPC_CheckChild2TypeI32,
13844 OPC_MoveParent,
13845 OPC_CheckType, MVT::v8i1,
13846 OPC_CheckPatternPredicate0,
13847 OPC_EmitInteger32, 20,
13848 OPC_EmitInteger32, 2,
13849 OPC_EmitRegisterI32, 0 ,
13850 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
13851 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13852 24,
13853 OPC_CheckChild2Integer, 22,
13854 OPC_CheckChild2TypeI32,
13855 OPC_MoveParent,
13856 OPC_CheckType, MVT::v8i1,
13857 OPC_CheckPatternPredicate0,
13858 OPC_EmitInteger32, 22,
13859 OPC_EmitInteger32, 2,
13860 OPC_EmitRegisterI32, 0 ,
13861 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
13862 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13863 24,
13864 OPC_CheckChild2Integer, 24,
13865 OPC_CheckChild2TypeI32,
13866 OPC_MoveParent,
13867 OPC_CheckType, MVT::v8i1,
13868 OPC_CheckPatternPredicate0,
13869 OPC_EmitInteger32, 24,
13870 OPC_EmitInteger32, 2,
13871 OPC_EmitRegisterI32, 0 ,
13872 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
13873 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13874 24,
13875 OPC_CheckChild2Integer, 26,
13876 OPC_CheckChild2TypeI32,
13877 OPC_MoveParent,
13878 OPC_CheckType, MVT::v8i1,
13879 OPC_CheckPatternPredicate0,
13880 OPC_EmitInteger32, 26,
13881 OPC_EmitInteger32, 2,
13882 OPC_EmitRegisterI32, 0 ,
13883 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
13884 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13885 24,
13886 OPC_CheckChild2Integer, 16,
13887 OPC_CheckChild2TypeI32,
13888 OPC_MoveParent,
13889 OPC_CheckType, MVT::v8i1,
13890 OPC_CheckPatternPredicate0,
13891 OPC_EmitInteger32, 16,
13892 OPC_EmitInteger32, 2,
13893 OPC_EmitRegisterI32, 0 ,
13894 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16),
13895 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13896 24,
13897 OPC_CheckChild2Integer, 4,
13898 OPC_CheckChild2TypeI32,
13899 OPC_MoveParent,
13900 OPC_CheckType, MVT::v8i1,
13901 OPC_CheckPatternPredicate0,
13902 OPC_EmitInteger32, 4,
13903 OPC_EmitInteger32, 2,
13904 OPC_EmitRegisterI32, 0 ,
13905 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16),
13906 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
13907 0,
13908 77|128,1,
13909 OPC_CheckChild0Type, MVT::v4i32,
13910 OPC_RecordChild1,
13911 OPC_Scope, 24,
13912 OPC_CheckChild2Integer, 0,
13913 OPC_CheckChild2TypeI32,
13914 OPC_MoveParent,
13915 OPC_CheckType, MVT::v4i1,
13916 OPC_CheckPatternPredicate0,
13917 OPC_EmitInteger32, 0,
13918 OPC_EmitInteger32, 2,
13919 OPC_EmitRegisterI32, 0 ,
13920 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32),
13921 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13922 24,
13923 OPC_CheckChild2Integer, 2,
13924 OPC_CheckChild2TypeI32,
13925 OPC_MoveParent,
13926 OPC_CheckType, MVT::v4i1,
13927 OPC_CheckPatternPredicate0,
13928 OPC_EmitInteger32, 2,
13929 OPC_EmitInteger32, 2,
13930 OPC_EmitRegisterI32, 0 ,
13931 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32),
13932 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13933 24,
13934 OPC_CheckChild2Integer, 20,
13935 OPC_CheckChild2TypeI32,
13936 OPC_MoveParent,
13937 OPC_CheckType, MVT::v4i1,
13938 OPC_CheckPatternPredicate0,
13939 OPC_EmitInteger32, 20,
13940 OPC_EmitInteger32, 2,
13941 OPC_EmitRegisterI32, 0 ,
13942 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
13943 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13944 24,
13945 OPC_CheckChild2Integer, 22,
13946 OPC_CheckChild2TypeI32,
13947 OPC_MoveParent,
13948 OPC_CheckType, MVT::v4i1,
13949 OPC_CheckPatternPredicate0,
13950 OPC_EmitInteger32, 22,
13951 OPC_EmitInteger32, 2,
13952 OPC_EmitRegisterI32, 0 ,
13953 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
13954 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13955 24,
13956 OPC_CheckChild2Integer, 24,
13957 OPC_CheckChild2TypeI32,
13958 OPC_MoveParent,
13959 OPC_CheckType, MVT::v4i1,
13960 OPC_CheckPatternPredicate0,
13961 OPC_EmitInteger32, 24,
13962 OPC_EmitInteger32, 2,
13963 OPC_EmitRegisterI32, 0 ,
13964 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
13965 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13966 24,
13967 OPC_CheckChild2Integer, 26,
13968 OPC_CheckChild2TypeI32,
13969 OPC_MoveParent,
13970 OPC_CheckType, MVT::v4i1,
13971 OPC_CheckPatternPredicate0,
13972 OPC_EmitInteger32, 26,
13973 OPC_EmitInteger32, 2,
13974 OPC_EmitRegisterI32, 0 ,
13975 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
13976 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13977 24,
13978 OPC_CheckChild2Integer, 16,
13979 OPC_CheckChild2TypeI32,
13980 OPC_MoveParent,
13981 OPC_CheckType, MVT::v4i1,
13982 OPC_CheckPatternPredicate0,
13983 OPC_EmitInteger32, 16,
13984 OPC_EmitInteger32, 2,
13985 OPC_EmitRegisterI32, 0 ,
13986 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32),
13987 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13988 24,
13989 OPC_CheckChild2Integer, 4,
13990 OPC_CheckChild2TypeI32,
13991 OPC_MoveParent,
13992 OPC_CheckType, MVT::v4i1,
13993 OPC_CheckPatternPredicate0,
13994 OPC_EmitInteger32, 4,
13995 OPC_EmitInteger32, 2,
13996 OPC_EmitRegisterI32, 0 ,
13997 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32),
13998 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
13999 0,
14000 27|128,1,
14001 OPC_CheckChild0Type, MVT::v8f16,
14002 OPC_RecordChild1,
14003 OPC_Scope, 24,
14004 OPC_CheckChild2Integer, 0,
14005 OPC_CheckChild2TypeI32,
14006 OPC_MoveParent,
14007 OPC_CheckType, MVT::v8i1,
14008 OPC_CheckPatternPredicate2,
14009 OPC_EmitInteger32, 0,
14010 OPC_EmitInteger32, 2,
14011 OPC_EmitRegisterI32, 0 ,
14012 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
14013 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
14014 24,
14015 OPC_CheckChild2Integer, 2,
14016 OPC_CheckChild2TypeI32,
14017 OPC_MoveParent,
14018 OPC_CheckType, MVT::v8i1,
14019 OPC_CheckPatternPredicate2,
14020 OPC_EmitInteger32, 2,
14021 OPC_EmitInteger32, 2,
14022 OPC_EmitRegisterI32, 0 ,
14023 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
14024 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
14025 24,
14026 OPC_CheckChild2Integer, 20,
14027 OPC_CheckChild2TypeI32,
14028 OPC_MoveParent,
14029 OPC_CheckType, MVT::v8i1,
14030 OPC_CheckPatternPredicate2,
14031 OPC_EmitInteger32, 20,
14032 OPC_EmitInteger32, 2,
14033 OPC_EmitRegisterI32, 0 ,
14034 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
14035 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
14036 24,
14037 OPC_CheckChild2Integer, 22,
14038 OPC_CheckChild2TypeI32,
14039 OPC_MoveParent,
14040 OPC_CheckType, MVT::v8i1,
14041 OPC_CheckPatternPredicate2,
14042 OPC_EmitInteger32, 22,
14043 OPC_EmitInteger32, 2,
14044 OPC_EmitRegisterI32, 0 ,
14045 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
14046 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
14047 24,
14048 OPC_CheckChild2Integer, 24,
14049 OPC_CheckChild2TypeI32,
14050 OPC_MoveParent,
14051 OPC_CheckType, MVT::v8i1,
14052 OPC_CheckPatternPredicate2,
14053 OPC_EmitInteger32, 24,
14054 OPC_EmitInteger32, 2,
14055 OPC_EmitRegisterI32, 0 ,
14056 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
14057 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
14058 24,
14059 OPC_CheckChild2Integer, 26,
14060 OPC_CheckChild2TypeI32,
14061 OPC_MoveParent,
14062 OPC_CheckType, MVT::v8i1,
14063 OPC_CheckPatternPredicate2,
14064 OPC_EmitInteger32, 26,
14065 OPC_EmitInteger32, 2,
14066 OPC_EmitRegisterI32, 0 ,
14067 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
14068 MVT::v8i1, 6, 1, 2, 3, 4, 0, 5,
14069 0,
14070 27|128,1,
14071 OPC_CheckChild0Type, MVT::v4f32,
14072 OPC_RecordChild1,
14073 OPC_Scope, 24,
14074 OPC_CheckChild2Integer, 0,
14075 OPC_CheckChild2TypeI32,
14076 OPC_MoveParent,
14077 OPC_CheckType, MVT::v4i1,
14078 OPC_CheckPatternPredicate2,
14079 OPC_EmitInteger32, 0,
14080 OPC_EmitInteger32, 2,
14081 OPC_EmitRegisterI32, 0 ,
14082 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
14083 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
14084 24,
14085 OPC_CheckChild2Integer, 2,
14086 OPC_CheckChild2TypeI32,
14087 OPC_MoveParent,
14088 OPC_CheckType, MVT::v4i1,
14089 OPC_CheckPatternPredicate2,
14090 OPC_EmitInteger32, 2,
14091 OPC_EmitInteger32, 2,
14092 OPC_EmitRegisterI32, 0 ,
14093 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
14094 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
14095 24,
14096 OPC_CheckChild2Integer, 20,
14097 OPC_CheckChild2TypeI32,
14098 OPC_MoveParent,
14099 OPC_CheckType, MVT::v4i1,
14100 OPC_CheckPatternPredicate2,
14101 OPC_EmitInteger32, 20,
14102 OPC_EmitInteger32, 2,
14103 OPC_EmitRegisterI32, 0 ,
14104 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
14105 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
14106 24,
14107 OPC_CheckChild2Integer, 22,
14108 OPC_CheckChild2TypeI32,
14109 OPC_MoveParent,
14110 OPC_CheckType, MVT::v4i1,
14111 OPC_CheckPatternPredicate2,
14112 OPC_EmitInteger32, 22,
14113 OPC_EmitInteger32, 2,
14114 OPC_EmitRegisterI32, 0 ,
14115 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
14116 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
14117 24,
14118 OPC_CheckChild2Integer, 24,
14119 OPC_CheckChild2TypeI32,
14120 OPC_MoveParent,
14121 OPC_CheckType, MVT::v4i1,
14122 OPC_CheckPatternPredicate2,
14123 OPC_EmitInteger32, 24,
14124 OPC_EmitInteger32, 2,
14125 OPC_EmitRegisterI32, 0 ,
14126 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
14127 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
14128 24,
14129 OPC_CheckChild2Integer, 26,
14130 OPC_CheckChild2TypeI32,
14131 OPC_MoveParent,
14132 OPC_CheckType, MVT::v4i1,
14133 OPC_CheckPatternPredicate2,
14134 OPC_EmitInteger32, 26,
14135 OPC_EmitInteger32, 2,
14136 OPC_EmitRegisterI32, 0 ,
14137 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
14138 MVT::v4i1, 6, 1, 2, 3, 4, 0, 5,
14139 0,
14140 0,
14141 0,
14142 99|128,16,
14143 OPC_MoveChild0,
14144 OPC_SwitchOpcode , 86, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
14145 OPC_Scope, 20,
14146 OPC_CheckChild0Integer, 30|128,51,
14147 OPC_RecordChild1,
14148 OPC_MoveParent,
14149 OPC_RecordChild1,
14150 OPC_CheckPatternPredicate0,
14151 OPC_EmitInteger32, 2,
14152 OPC_EmitRegisterI32, 0 ,
14153 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP8),
14154 MVT::v16i1, 4, 0, 2, 1, 3,
14155 20,
14156 OPC_CheckChild0Integer, 24|128,51,
14157 OPC_RecordChild1,
14158 OPC_MoveParent,
14159 OPC_RecordChild1,
14160 OPC_CheckPatternPredicate0,
14161 OPC_EmitInteger32, 2,
14162 OPC_EmitRegisterI32, 0 ,
14163 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP16),
14164 MVT::v8i1, 4, 0, 2, 1, 3,
14165 20,
14166 OPC_CheckChild0Integer, 26|128,51,
14167 OPC_RecordChild1,
14168 OPC_MoveParent,
14169 OPC_RecordChild1,
14170 OPC_CheckPatternPredicate0,
14171 OPC_EmitInteger32, 2,
14172 OPC_EmitRegisterI32, 0 ,
14173 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP32),
14174 MVT::v4i1, 4, 0, 2, 1, 3,
14175 20,
14176 OPC_CheckChild0Integer, 28|128,51,
14177 OPC_RecordChild1,
14178 OPC_MoveParent,
14179 OPC_RecordChild1,
14180 OPC_CheckPatternPredicate0,
14181 OPC_EmitInteger32, 2,
14182 OPC_EmitRegisterI32, 0 ,
14183 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP64),
14184 MVT::v2i1, 4, 0, 2, 1, 3,
14185 0,
14186 29, TARGET_VAL(ARMISD::VMOVIMM),
14187 OPC_CheckChild0Integer, 126|128,51,
14188 OPC_MoveParent,
14189 OPC_RecordChild1,
14190 OPC_CheckType, MVT::v4i32,
14191 OPC_CheckPatternPredicate0,
14192 OPC_EmitInteger32, 0,
14193 OPC_EmitRegisterI32, 0 ,
14194 OPC_EmitRegisterI32, 0 ,
14195 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
14196 MVT::v4i32, 0,
14197 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu16bh),
14198 MVT::v4i32, 5, 0, 1, 2, 3, 4,
14199 17|128,8, TARGET_VAL(ARMISD::VCMPZ),
14200 OPC_RecordChild0,
14201 OPC_Scope, 100|128,1,
14202 OPC_CheckChild0Type, MVT::v16i8,
14203 OPC_Scope, 27,
14204 OPC_CheckChild1Integer, 0,
14205 OPC_CheckChild1TypeI32,
14206 OPC_MoveParent,
14207 OPC_RecordChild1,
14208 OPC_CheckType, MVT::v16i1,
14209 OPC_CheckPatternPredicate0,
14210 OPC_EmitRegisterI32, ARM::ZR,
14211 OPC_EmitInteger32, 0,
14212 OPC_EmitInteger32, 2,
14213 OPC_EmitRegisterI32, 0 ,
14214 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
14215 MVT::v16i1, 6, 0, 2, 3, 4, 1, 5,
14216 27,
14217 OPC_CheckChild1Integer, 2,
14218 OPC_CheckChild1TypeI32,
14219 OPC_MoveParent,
14220 OPC_RecordChild1,
14221 OPC_CheckType, MVT::v16i1,
14222 OPC_CheckPatternPredicate0,
14223 OPC_EmitRegisterI32, ARM::ZR,
14224 OPC_EmitInteger32, 2,
14225 OPC_EmitInteger32, 2,
14226 OPC_EmitRegisterI32, 0 ,
14227 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
14228 MVT::v16i1, 6, 0, 2, 3, 4, 1, 5,
14229 27,
14230 OPC_CheckChild1Integer, 20,
14231 OPC_CheckChild1TypeI32,
14232 OPC_MoveParent,
14233 OPC_RecordChild1,
14234 OPC_CheckType, MVT::v16i1,
14235 OPC_CheckPatternPredicate0,
14236 OPC_EmitRegisterI32, ARM::ZR,
14237 OPC_EmitInteger32, 20,
14238 OPC_EmitInteger32, 2,
14239 OPC_EmitRegisterI32, 0 ,
14240 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
14241 MVT::v16i1, 6, 0, 2, 3, 4, 1, 5,
14242 27,
14243 OPC_CheckChild1Integer, 22,
14244 OPC_CheckChild1TypeI32,
14245 OPC_MoveParent,
14246 OPC_RecordChild1,
14247 OPC_CheckType, MVT::v16i1,
14248 OPC_CheckPatternPredicate0,
14249 OPC_EmitRegisterI32, ARM::ZR,
14250 OPC_EmitInteger32, 22,
14251 OPC_EmitInteger32, 2,
14252 OPC_EmitRegisterI32, 0 ,
14253 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
14254 MVT::v16i1, 6, 0, 2, 3, 4, 1, 5,
14255 27,
14256 OPC_CheckChild1Integer, 24,
14257 OPC_CheckChild1TypeI32,
14258 OPC_MoveParent,
14259 OPC_RecordChild1,
14260 OPC_CheckType, MVT::v16i1,
14261 OPC_CheckPatternPredicate0,
14262 OPC_EmitRegisterI32, ARM::ZR,
14263 OPC_EmitInteger32, 24,
14264 OPC_EmitInteger32, 2,
14265 OPC_EmitRegisterI32, 0 ,
14266 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
14267 MVT::v16i1, 6, 0, 2, 3, 4, 1, 5,
14268 27,
14269 OPC_CheckChild1Integer, 26,
14270 OPC_CheckChild1TypeI32,
14271 OPC_MoveParent,
14272 OPC_RecordChild1,
14273 OPC_CheckType, MVT::v16i1,
14274 OPC_CheckPatternPredicate0,
14275 OPC_EmitRegisterI32, ARM::ZR,
14276 OPC_EmitInteger32, 26,
14277 OPC_EmitInteger32, 2,
14278 OPC_EmitRegisterI32, 0 ,
14279 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
14280 MVT::v16i1, 6, 0, 2, 3, 4, 1, 5,
14281 27,
14282 OPC_CheckChild1Integer, 16,
14283 OPC_CheckChild1TypeI32,
14284 OPC_MoveParent,
14285 OPC_RecordChild1,
14286 OPC_CheckType, MVT::v16i1,
14287 OPC_CheckPatternPredicate0,
14288 OPC_EmitRegisterI32, ARM::ZR,
14289 OPC_EmitInteger32, 16,
14290 OPC_EmitInteger32, 2,
14291 OPC_EmitRegisterI32, 0 ,
14292 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
14293 MVT::v16i1, 6, 0, 2, 3, 4, 1, 5,
14294 27,
14295 OPC_CheckChild1Integer, 4,
14296 OPC_CheckChild1TypeI32,
14297 OPC_MoveParent,
14298 OPC_RecordChild1,
14299 OPC_CheckType, MVT::v16i1,
14300 OPC_CheckPatternPredicate0,
14301 OPC_EmitRegisterI32, ARM::ZR,
14302 OPC_EmitInteger32, 4,
14303 OPC_EmitInteger32, 2,
14304 OPC_EmitRegisterI32, 0 ,
14305 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
14306 MVT::v16i1, 6, 0, 2, 3, 4, 1, 5,
14307 0,
14308 100|128,1,
14309 OPC_CheckChild0Type, MVT::v8i16,
14310 OPC_Scope, 27,
14311 OPC_CheckChild1Integer, 0,
14312 OPC_CheckChild1TypeI32,
14313 OPC_MoveParent,
14314 OPC_RecordChild1,
14315 OPC_CheckType, MVT::v8i1,
14316 OPC_CheckPatternPredicate0,
14317 OPC_EmitRegisterI32, ARM::ZR,
14318 OPC_EmitInteger32, 0,
14319 OPC_EmitInteger32, 2,
14320 OPC_EmitRegisterI32, 0 ,
14321 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
14322 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14323 27,
14324 OPC_CheckChild1Integer, 2,
14325 OPC_CheckChild1TypeI32,
14326 OPC_MoveParent,
14327 OPC_RecordChild1,
14328 OPC_CheckType, MVT::v8i1,
14329 OPC_CheckPatternPredicate0,
14330 OPC_EmitRegisterI32, ARM::ZR,
14331 OPC_EmitInteger32, 2,
14332 OPC_EmitInteger32, 2,
14333 OPC_EmitRegisterI32, 0 ,
14334 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
14335 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14336 27,
14337 OPC_CheckChild1Integer, 20,
14338 OPC_CheckChild1TypeI32,
14339 OPC_MoveParent,
14340 OPC_RecordChild1,
14341 OPC_CheckType, MVT::v8i1,
14342 OPC_CheckPatternPredicate0,
14343 OPC_EmitRegisterI32, ARM::ZR,
14344 OPC_EmitInteger32, 20,
14345 OPC_EmitInteger32, 2,
14346 OPC_EmitRegisterI32, 0 ,
14347 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
14348 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14349 27,
14350 OPC_CheckChild1Integer, 22,
14351 OPC_CheckChild1TypeI32,
14352 OPC_MoveParent,
14353 OPC_RecordChild1,
14354 OPC_CheckType, MVT::v8i1,
14355 OPC_CheckPatternPredicate0,
14356 OPC_EmitRegisterI32, ARM::ZR,
14357 OPC_EmitInteger32, 22,
14358 OPC_EmitInteger32, 2,
14359 OPC_EmitRegisterI32, 0 ,
14360 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
14361 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14362 27,
14363 OPC_CheckChild1Integer, 24,
14364 OPC_CheckChild1TypeI32,
14365 OPC_MoveParent,
14366 OPC_RecordChild1,
14367 OPC_CheckType, MVT::v8i1,
14368 OPC_CheckPatternPredicate0,
14369 OPC_EmitRegisterI32, ARM::ZR,
14370 OPC_EmitInteger32, 24,
14371 OPC_EmitInteger32, 2,
14372 OPC_EmitRegisterI32, 0 ,
14373 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
14374 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14375 27,
14376 OPC_CheckChild1Integer, 26,
14377 OPC_CheckChild1TypeI32,
14378 OPC_MoveParent,
14379 OPC_RecordChild1,
14380 OPC_CheckType, MVT::v8i1,
14381 OPC_CheckPatternPredicate0,
14382 OPC_EmitRegisterI32, ARM::ZR,
14383 OPC_EmitInteger32, 26,
14384 OPC_EmitInteger32, 2,
14385 OPC_EmitRegisterI32, 0 ,
14386 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
14387 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14388 27,
14389 OPC_CheckChild1Integer, 16,
14390 OPC_CheckChild1TypeI32,
14391 OPC_MoveParent,
14392 OPC_RecordChild1,
14393 OPC_CheckType, MVT::v8i1,
14394 OPC_CheckPatternPredicate0,
14395 OPC_EmitRegisterI32, ARM::ZR,
14396 OPC_EmitInteger32, 16,
14397 OPC_EmitInteger32, 2,
14398 OPC_EmitRegisterI32, 0 ,
14399 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
14400 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14401 27,
14402 OPC_CheckChild1Integer, 4,
14403 OPC_CheckChild1TypeI32,
14404 OPC_MoveParent,
14405 OPC_RecordChild1,
14406 OPC_CheckType, MVT::v8i1,
14407 OPC_CheckPatternPredicate0,
14408 OPC_EmitRegisterI32, ARM::ZR,
14409 OPC_EmitInteger32, 4,
14410 OPC_EmitInteger32, 2,
14411 OPC_EmitRegisterI32, 0 ,
14412 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
14413 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14414 0,
14415 100|128,1,
14416 OPC_CheckChild0Type, MVT::v4i32,
14417 OPC_Scope, 27,
14418 OPC_CheckChild1Integer, 0,
14419 OPC_CheckChild1TypeI32,
14420 OPC_MoveParent,
14421 OPC_RecordChild1,
14422 OPC_CheckType, MVT::v4i1,
14423 OPC_CheckPatternPredicate0,
14424 OPC_EmitRegisterI32, ARM::ZR,
14425 OPC_EmitInteger32, 0,
14426 OPC_EmitInteger32, 2,
14427 OPC_EmitRegisterI32, 0 ,
14428 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
14429 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14430 27,
14431 OPC_CheckChild1Integer, 2,
14432 OPC_CheckChild1TypeI32,
14433 OPC_MoveParent,
14434 OPC_RecordChild1,
14435 OPC_CheckType, MVT::v4i1,
14436 OPC_CheckPatternPredicate0,
14437 OPC_EmitRegisterI32, ARM::ZR,
14438 OPC_EmitInteger32, 2,
14439 OPC_EmitInteger32, 2,
14440 OPC_EmitRegisterI32, 0 ,
14441 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
14442 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14443 27,
14444 OPC_CheckChild1Integer, 20,
14445 OPC_CheckChild1TypeI32,
14446 OPC_MoveParent,
14447 OPC_RecordChild1,
14448 OPC_CheckType, MVT::v4i1,
14449 OPC_CheckPatternPredicate0,
14450 OPC_EmitRegisterI32, ARM::ZR,
14451 OPC_EmitInteger32, 20,
14452 OPC_EmitInteger32, 2,
14453 OPC_EmitRegisterI32, 0 ,
14454 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
14455 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14456 27,
14457 OPC_CheckChild1Integer, 22,
14458 OPC_CheckChild1TypeI32,
14459 OPC_MoveParent,
14460 OPC_RecordChild1,
14461 OPC_CheckType, MVT::v4i1,
14462 OPC_CheckPatternPredicate0,
14463 OPC_EmitRegisterI32, ARM::ZR,
14464 OPC_EmitInteger32, 22,
14465 OPC_EmitInteger32, 2,
14466 OPC_EmitRegisterI32, 0 ,
14467 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
14468 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14469 27,
14470 OPC_CheckChild1Integer, 24,
14471 OPC_CheckChild1TypeI32,
14472 OPC_MoveParent,
14473 OPC_RecordChild1,
14474 OPC_CheckType, MVT::v4i1,
14475 OPC_CheckPatternPredicate0,
14476 OPC_EmitRegisterI32, ARM::ZR,
14477 OPC_EmitInteger32, 24,
14478 OPC_EmitInteger32, 2,
14479 OPC_EmitRegisterI32, 0 ,
14480 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
14481 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14482 27,
14483 OPC_CheckChild1Integer, 26,
14484 OPC_CheckChild1TypeI32,
14485 OPC_MoveParent,
14486 OPC_RecordChild1,
14487 OPC_CheckType, MVT::v4i1,
14488 OPC_CheckPatternPredicate0,
14489 OPC_EmitRegisterI32, ARM::ZR,
14490 OPC_EmitInteger32, 26,
14491 OPC_EmitInteger32, 2,
14492 OPC_EmitRegisterI32, 0 ,
14493 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
14494 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14495 27,
14496 OPC_CheckChild1Integer, 16,
14497 OPC_CheckChild1TypeI32,
14498 OPC_MoveParent,
14499 OPC_RecordChild1,
14500 OPC_CheckType, MVT::v4i1,
14501 OPC_CheckPatternPredicate0,
14502 OPC_EmitRegisterI32, ARM::ZR,
14503 OPC_EmitInteger32, 16,
14504 OPC_EmitInteger32, 2,
14505 OPC_EmitRegisterI32, 0 ,
14506 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
14507 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14508 27,
14509 OPC_CheckChild1Integer, 4,
14510 OPC_CheckChild1TypeI32,
14511 OPC_MoveParent,
14512 OPC_RecordChild1,
14513 OPC_CheckType, MVT::v4i1,
14514 OPC_CheckPatternPredicate0,
14515 OPC_EmitRegisterI32, ARM::ZR,
14516 OPC_EmitInteger32, 4,
14517 OPC_EmitInteger32, 2,
14518 OPC_EmitRegisterI32, 0 ,
14519 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
14520 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14521 0,
14522 44|128,1,
14523 OPC_CheckChild0Type, MVT::v8f16,
14524 OPC_Scope, 27,
14525 OPC_CheckChild1Integer, 0,
14526 OPC_CheckChild1TypeI32,
14527 OPC_MoveParent,
14528 OPC_RecordChild1,
14529 OPC_CheckType, MVT::v8i1,
14530 OPC_CheckPatternPredicate2,
14531 OPC_EmitRegisterI32, ARM::ZR,
14532 OPC_EmitInteger32, 0,
14533 OPC_EmitInteger32, 2,
14534 OPC_EmitRegisterI32, 0 ,
14535 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
14536 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14537 27,
14538 OPC_CheckChild1Integer, 2,
14539 OPC_CheckChild1TypeI32,
14540 OPC_MoveParent,
14541 OPC_RecordChild1,
14542 OPC_CheckType, MVT::v8i1,
14543 OPC_CheckPatternPredicate2,
14544 OPC_EmitRegisterI32, ARM::ZR,
14545 OPC_EmitInteger32, 2,
14546 OPC_EmitInteger32, 2,
14547 OPC_EmitRegisterI32, 0 ,
14548 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
14549 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14550 27,
14551 OPC_CheckChild1Integer, 20,
14552 OPC_CheckChild1TypeI32,
14553 OPC_MoveParent,
14554 OPC_RecordChild1,
14555 OPC_CheckType, MVT::v8i1,
14556 OPC_CheckPatternPredicate2,
14557 OPC_EmitRegisterI32, ARM::ZR,
14558 OPC_EmitInteger32, 20,
14559 OPC_EmitInteger32, 2,
14560 OPC_EmitRegisterI32, 0 ,
14561 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
14562 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14563 27,
14564 OPC_CheckChild1Integer, 22,
14565 OPC_CheckChild1TypeI32,
14566 OPC_MoveParent,
14567 OPC_RecordChild1,
14568 OPC_CheckType, MVT::v8i1,
14569 OPC_CheckPatternPredicate2,
14570 OPC_EmitRegisterI32, ARM::ZR,
14571 OPC_EmitInteger32, 22,
14572 OPC_EmitInteger32, 2,
14573 OPC_EmitRegisterI32, 0 ,
14574 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
14575 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14576 27,
14577 OPC_CheckChild1Integer, 24,
14578 OPC_CheckChild1TypeI32,
14579 OPC_MoveParent,
14580 OPC_RecordChild1,
14581 OPC_CheckType, MVT::v8i1,
14582 OPC_CheckPatternPredicate2,
14583 OPC_EmitRegisterI32, ARM::ZR,
14584 OPC_EmitInteger32, 24,
14585 OPC_EmitInteger32, 2,
14586 OPC_EmitRegisterI32, 0 ,
14587 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
14588 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14589 27,
14590 OPC_CheckChild1Integer, 26,
14591 OPC_CheckChild1TypeI32,
14592 OPC_MoveParent,
14593 OPC_RecordChild1,
14594 OPC_CheckType, MVT::v8i1,
14595 OPC_CheckPatternPredicate2,
14596 OPC_EmitRegisterI32, ARM::ZR,
14597 OPC_EmitInteger32, 26,
14598 OPC_EmitInteger32, 2,
14599 OPC_EmitRegisterI32, 0 ,
14600 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
14601 MVT::v8i1, 6, 0, 2, 3, 4, 1, 5,
14602 0,
14603 44|128,1,
14604 OPC_CheckChild0Type, MVT::v4f32,
14605 OPC_Scope, 27,
14606 OPC_CheckChild1Integer, 0,
14607 OPC_CheckChild1TypeI32,
14608 OPC_MoveParent,
14609 OPC_RecordChild1,
14610 OPC_CheckType, MVT::v4i1,
14611 OPC_CheckPatternPredicate2,
14612 OPC_EmitRegisterI32, ARM::ZR,
14613 OPC_EmitInteger32, 0,
14614 OPC_EmitInteger32, 2,
14615 OPC_EmitRegisterI32, 0 ,
14616 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
14617 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14618 27,
14619 OPC_CheckChild1Integer, 2,
14620 OPC_CheckChild1TypeI32,
14621 OPC_MoveParent,
14622 OPC_RecordChild1,
14623 OPC_CheckType, MVT::v4i1,
14624 OPC_CheckPatternPredicate2,
14625 OPC_EmitRegisterI32, ARM::ZR,
14626 OPC_EmitInteger32, 2,
14627 OPC_EmitInteger32, 2,
14628 OPC_EmitRegisterI32, 0 ,
14629 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
14630 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14631 27,
14632 OPC_CheckChild1Integer, 20,
14633 OPC_CheckChild1TypeI32,
14634 OPC_MoveParent,
14635 OPC_RecordChild1,
14636 OPC_CheckType, MVT::v4i1,
14637 OPC_CheckPatternPredicate2,
14638 OPC_EmitRegisterI32, ARM::ZR,
14639 OPC_EmitInteger32, 20,
14640 OPC_EmitInteger32, 2,
14641 OPC_EmitRegisterI32, 0 ,
14642 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
14643 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14644 27,
14645 OPC_CheckChild1Integer, 22,
14646 OPC_CheckChild1TypeI32,
14647 OPC_MoveParent,
14648 OPC_RecordChild1,
14649 OPC_CheckType, MVT::v4i1,
14650 OPC_CheckPatternPredicate2,
14651 OPC_EmitRegisterI32, ARM::ZR,
14652 OPC_EmitInteger32, 22,
14653 OPC_EmitInteger32, 2,
14654 OPC_EmitRegisterI32, 0 ,
14655 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
14656 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14657 27,
14658 OPC_CheckChild1Integer, 24,
14659 OPC_CheckChild1TypeI32,
14660 OPC_MoveParent,
14661 OPC_RecordChild1,
14662 OPC_CheckType, MVT::v4i1,
14663 OPC_CheckPatternPredicate2,
14664 OPC_EmitRegisterI32, ARM::ZR,
14665 OPC_EmitInteger32, 24,
14666 OPC_EmitInteger32, 2,
14667 OPC_EmitRegisterI32, 0 ,
14668 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
14669 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14670 27,
14671 OPC_CheckChild1Integer, 26,
14672 OPC_CheckChild1TypeI32,
14673 OPC_MoveParent,
14674 OPC_RecordChild1,
14675 OPC_CheckType, MVT::v4i1,
14676 OPC_CheckPatternPredicate2,
14677 OPC_EmitRegisterI32, ARM::ZR,
14678 OPC_EmitInteger32, 26,
14679 OPC_EmitInteger32, 2,
14680 OPC_EmitRegisterI32, 0 ,
14681 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
14682 MVT::v4i1, 6, 0, 2, 3, 4, 1, 5,
14683 0,
14684 0,
14685 78|128,7, TARGET_VAL(ARMISD::VCMP),
14686 OPC_RecordChild0,
14687 OPC_Scope, 85|128,1,
14688 OPC_CheckChild0Type, MVT::v16i8,
14689 OPC_RecordChild1,
14690 OPC_Scope, 25,
14691 OPC_CheckChild2Integer, 0,
14692 OPC_CheckChild2TypeI32,
14693 OPC_MoveParent,
14694 OPC_RecordChild1,
14695 OPC_CheckType, MVT::v16i1,
14696 OPC_CheckPatternPredicate0,
14697 OPC_EmitInteger32, 0,
14698 OPC_EmitInteger32, 2,
14699 OPC_EmitRegisterI32, 0 ,
14700 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8),
14701 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
14702 25,
14703 OPC_CheckChild2Integer, 2,
14704 OPC_CheckChild2TypeI32,
14705 OPC_MoveParent,
14706 OPC_RecordChild1,
14707 OPC_CheckType, MVT::v16i1,
14708 OPC_CheckPatternPredicate0,
14709 OPC_EmitInteger32, 2,
14710 OPC_EmitInteger32, 2,
14711 OPC_EmitRegisterI32, 0 ,
14712 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8),
14713 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
14714 25,
14715 OPC_CheckChild2Integer, 20,
14716 OPC_CheckChild2TypeI32,
14717 OPC_MoveParent,
14718 OPC_RecordChild1,
14719 OPC_CheckType, MVT::v16i1,
14720 OPC_CheckPatternPredicate0,
14721 OPC_EmitInteger32, 20,
14722 OPC_EmitInteger32, 2,
14723 OPC_EmitRegisterI32, 0 ,
14724 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
14725 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
14726 25,
14727 OPC_CheckChild2Integer, 22,
14728 OPC_CheckChild2TypeI32,
14729 OPC_MoveParent,
14730 OPC_RecordChild1,
14731 OPC_CheckType, MVT::v16i1,
14732 OPC_CheckPatternPredicate0,
14733 OPC_EmitInteger32, 22,
14734 OPC_EmitInteger32, 2,
14735 OPC_EmitRegisterI32, 0 ,
14736 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
14737 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
14738 25,
14739 OPC_CheckChild2Integer, 24,
14740 OPC_CheckChild2TypeI32,
14741 OPC_MoveParent,
14742 OPC_RecordChild1,
14743 OPC_CheckType, MVT::v16i1,
14744 OPC_CheckPatternPredicate0,
14745 OPC_EmitInteger32, 24,
14746 OPC_EmitInteger32, 2,
14747 OPC_EmitRegisterI32, 0 ,
14748 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
14749 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
14750 25,
14751 OPC_CheckChild2Integer, 26,
14752 OPC_CheckChild2TypeI32,
14753 OPC_MoveParent,
14754 OPC_RecordChild1,
14755 OPC_CheckType, MVT::v16i1,
14756 OPC_CheckPatternPredicate0,
14757 OPC_EmitInteger32, 26,
14758 OPC_EmitInteger32, 2,
14759 OPC_EmitRegisterI32, 0 ,
14760 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
14761 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
14762 25,
14763 OPC_CheckChild2Integer, 16,
14764 OPC_CheckChild2TypeI32,
14765 OPC_MoveParent,
14766 OPC_RecordChild1,
14767 OPC_CheckType, MVT::v16i1,
14768 OPC_CheckPatternPredicate0,
14769 OPC_EmitInteger32, 16,
14770 OPC_EmitInteger32, 2,
14771 OPC_EmitRegisterI32, 0 ,
14772 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8),
14773 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
14774 25,
14775 OPC_CheckChild2Integer, 4,
14776 OPC_CheckChild2TypeI32,
14777 OPC_MoveParent,
14778 OPC_RecordChild1,
14779 OPC_CheckType, MVT::v16i1,
14780 OPC_CheckPatternPredicate0,
14781 OPC_EmitInteger32, 4,
14782 OPC_EmitInteger32, 2,
14783 OPC_EmitRegisterI32, 0 ,
14784 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8),
14785 MVT::v16i1, 6, 0, 1, 3, 4, 2, 5,
14786 0,
14787 85|128,1,
14788 OPC_CheckChild0Type, MVT::v8i16,
14789 OPC_RecordChild1,
14790 OPC_Scope, 25,
14791 OPC_CheckChild2Integer, 0,
14792 OPC_CheckChild2TypeI32,
14793 OPC_MoveParent,
14794 OPC_RecordChild1,
14795 OPC_CheckType, MVT::v8i1,
14796 OPC_CheckPatternPredicate0,
14797 OPC_EmitInteger32, 0,
14798 OPC_EmitInteger32, 2,
14799 OPC_EmitRegisterI32, 0 ,
14800 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16),
14801 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
14802 25,
14803 OPC_CheckChild2Integer, 2,
14804 OPC_CheckChild2TypeI32,
14805 OPC_MoveParent,
14806 OPC_RecordChild1,
14807 OPC_CheckType, MVT::v8i1,
14808 OPC_CheckPatternPredicate0,
14809 OPC_EmitInteger32, 2,
14810 OPC_EmitInteger32, 2,
14811 OPC_EmitRegisterI32, 0 ,
14812 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16),
14813 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
14814 25,
14815 OPC_CheckChild2Integer, 20,
14816 OPC_CheckChild2TypeI32,
14817 OPC_MoveParent,
14818 OPC_RecordChild1,
14819 OPC_CheckType, MVT::v8i1,
14820 OPC_CheckPatternPredicate0,
14821 OPC_EmitInteger32, 20,
14822 OPC_EmitInteger32, 2,
14823 OPC_EmitRegisterI32, 0 ,
14824 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
14825 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
14826 25,
14827 OPC_CheckChild2Integer, 22,
14828 OPC_CheckChild2TypeI32,
14829 OPC_MoveParent,
14830 OPC_RecordChild1,
14831 OPC_CheckType, MVT::v8i1,
14832 OPC_CheckPatternPredicate0,
14833 OPC_EmitInteger32, 22,
14834 OPC_EmitInteger32, 2,
14835 OPC_EmitRegisterI32, 0 ,
14836 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
14837 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
14838 25,
14839 OPC_CheckChild2Integer, 24,
14840 OPC_CheckChild2TypeI32,
14841 OPC_MoveParent,
14842 OPC_RecordChild1,
14843 OPC_CheckType, MVT::v8i1,
14844 OPC_CheckPatternPredicate0,
14845 OPC_EmitInteger32, 24,
14846 OPC_EmitInteger32, 2,
14847 OPC_EmitRegisterI32, 0 ,
14848 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
14849 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
14850 25,
14851 OPC_CheckChild2Integer, 26,
14852 OPC_CheckChild2TypeI32,
14853 OPC_MoveParent,
14854 OPC_RecordChild1,
14855 OPC_CheckType, MVT::v8i1,
14856 OPC_CheckPatternPredicate0,
14857 OPC_EmitInteger32, 26,
14858 OPC_EmitInteger32, 2,
14859 OPC_EmitRegisterI32, 0 ,
14860 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
14861 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
14862 25,
14863 OPC_CheckChild2Integer, 16,
14864 OPC_CheckChild2TypeI32,
14865 OPC_MoveParent,
14866 OPC_RecordChild1,
14867 OPC_CheckType, MVT::v8i1,
14868 OPC_CheckPatternPredicate0,
14869 OPC_EmitInteger32, 16,
14870 OPC_EmitInteger32, 2,
14871 OPC_EmitRegisterI32, 0 ,
14872 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16),
14873 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
14874 25,
14875 OPC_CheckChild2Integer, 4,
14876 OPC_CheckChild2TypeI32,
14877 OPC_MoveParent,
14878 OPC_RecordChild1,
14879 OPC_CheckType, MVT::v8i1,
14880 OPC_CheckPatternPredicate0,
14881 OPC_EmitInteger32, 4,
14882 OPC_EmitInteger32, 2,
14883 OPC_EmitRegisterI32, 0 ,
14884 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16),
14885 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
14886 0,
14887 85|128,1,
14888 OPC_CheckChild0Type, MVT::v4i32,
14889 OPC_RecordChild1,
14890 OPC_Scope, 25,
14891 OPC_CheckChild2Integer, 0,
14892 OPC_CheckChild2TypeI32,
14893 OPC_MoveParent,
14894 OPC_RecordChild1,
14895 OPC_CheckType, MVT::v4i1,
14896 OPC_CheckPatternPredicate0,
14897 OPC_EmitInteger32, 0,
14898 OPC_EmitInteger32, 2,
14899 OPC_EmitRegisterI32, 0 ,
14900 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32),
14901 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
14902 25,
14903 OPC_CheckChild2Integer, 2,
14904 OPC_CheckChild2TypeI32,
14905 OPC_MoveParent,
14906 OPC_RecordChild1,
14907 OPC_CheckType, MVT::v4i1,
14908 OPC_CheckPatternPredicate0,
14909 OPC_EmitInteger32, 2,
14910 OPC_EmitInteger32, 2,
14911 OPC_EmitRegisterI32, 0 ,
14912 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32),
14913 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
14914 25,
14915 OPC_CheckChild2Integer, 20,
14916 OPC_CheckChild2TypeI32,
14917 OPC_MoveParent,
14918 OPC_RecordChild1,
14919 OPC_CheckType, MVT::v4i1,
14920 OPC_CheckPatternPredicate0,
14921 OPC_EmitInteger32, 20,
14922 OPC_EmitInteger32, 2,
14923 OPC_EmitRegisterI32, 0 ,
14924 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
14925 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
14926 25,
14927 OPC_CheckChild2Integer, 22,
14928 OPC_CheckChild2TypeI32,
14929 OPC_MoveParent,
14930 OPC_RecordChild1,
14931 OPC_CheckType, MVT::v4i1,
14932 OPC_CheckPatternPredicate0,
14933 OPC_EmitInteger32, 22,
14934 OPC_EmitInteger32, 2,
14935 OPC_EmitRegisterI32, 0 ,
14936 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
14937 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
14938 25,
14939 OPC_CheckChild2Integer, 24,
14940 OPC_CheckChild2TypeI32,
14941 OPC_MoveParent,
14942 OPC_RecordChild1,
14943 OPC_CheckType, MVT::v4i1,
14944 OPC_CheckPatternPredicate0,
14945 OPC_EmitInteger32, 24,
14946 OPC_EmitInteger32, 2,
14947 OPC_EmitRegisterI32, 0 ,
14948 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
14949 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
14950 25,
14951 OPC_CheckChild2Integer, 26,
14952 OPC_CheckChild2TypeI32,
14953 OPC_MoveParent,
14954 OPC_RecordChild1,
14955 OPC_CheckType, MVT::v4i1,
14956 OPC_CheckPatternPredicate0,
14957 OPC_EmitInteger32, 26,
14958 OPC_EmitInteger32, 2,
14959 OPC_EmitRegisterI32, 0 ,
14960 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
14961 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
14962 25,
14963 OPC_CheckChild2Integer, 16,
14964 OPC_CheckChild2TypeI32,
14965 OPC_MoveParent,
14966 OPC_RecordChild1,
14967 OPC_CheckType, MVT::v4i1,
14968 OPC_CheckPatternPredicate0,
14969 OPC_EmitInteger32, 16,
14970 OPC_EmitInteger32, 2,
14971 OPC_EmitRegisterI32, 0 ,
14972 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32),
14973 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
14974 25,
14975 OPC_CheckChild2Integer, 4,
14976 OPC_CheckChild2TypeI32,
14977 OPC_MoveParent,
14978 OPC_RecordChild1,
14979 OPC_CheckType, MVT::v4i1,
14980 OPC_CheckPatternPredicate0,
14981 OPC_EmitInteger32, 4,
14982 OPC_EmitInteger32, 2,
14983 OPC_EmitRegisterI32, 0 ,
14984 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32),
14985 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
14986 0,
14987 33|128,1,
14988 OPC_CheckChild0Type, MVT::v8f16,
14989 OPC_RecordChild1,
14990 OPC_Scope, 25,
14991 OPC_CheckChild2Integer, 0,
14992 OPC_CheckChild2TypeI32,
14993 OPC_MoveParent,
14994 OPC_RecordChild1,
14995 OPC_CheckType, MVT::v8i1,
14996 OPC_CheckPatternPredicate2,
14997 OPC_EmitInteger32, 0,
14998 OPC_EmitInteger32, 2,
14999 OPC_EmitRegisterI32, 0 ,
15000 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
15001 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
15002 25,
15003 OPC_CheckChild2Integer, 2,
15004 OPC_CheckChild2TypeI32,
15005 OPC_MoveParent,
15006 OPC_RecordChild1,
15007 OPC_CheckType, MVT::v8i1,
15008 OPC_CheckPatternPredicate2,
15009 OPC_EmitInteger32, 2,
15010 OPC_EmitInteger32, 2,
15011 OPC_EmitRegisterI32, 0 ,
15012 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
15013 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
15014 25,
15015 OPC_CheckChild2Integer, 20,
15016 OPC_CheckChild2TypeI32,
15017 OPC_MoveParent,
15018 OPC_RecordChild1,
15019 OPC_CheckType, MVT::v8i1,
15020 OPC_CheckPatternPredicate2,
15021 OPC_EmitInteger32, 20,
15022 OPC_EmitInteger32, 2,
15023 OPC_EmitRegisterI32, 0 ,
15024 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
15025 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
15026 25,
15027 OPC_CheckChild2Integer, 22,
15028 OPC_CheckChild2TypeI32,
15029 OPC_MoveParent,
15030 OPC_RecordChild1,
15031 OPC_CheckType, MVT::v8i1,
15032 OPC_CheckPatternPredicate2,
15033 OPC_EmitInteger32, 22,
15034 OPC_EmitInteger32, 2,
15035 OPC_EmitRegisterI32, 0 ,
15036 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
15037 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
15038 25,
15039 OPC_CheckChild2Integer, 24,
15040 OPC_CheckChild2TypeI32,
15041 OPC_MoveParent,
15042 OPC_RecordChild1,
15043 OPC_CheckType, MVT::v8i1,
15044 OPC_CheckPatternPredicate2,
15045 OPC_EmitInteger32, 24,
15046 OPC_EmitInteger32, 2,
15047 OPC_EmitRegisterI32, 0 ,
15048 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
15049 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
15050 25,
15051 OPC_CheckChild2Integer, 26,
15052 OPC_CheckChild2TypeI32,
15053 OPC_MoveParent,
15054 OPC_RecordChild1,
15055 OPC_CheckType, MVT::v8i1,
15056 OPC_CheckPatternPredicate2,
15057 OPC_EmitInteger32, 26,
15058 OPC_EmitInteger32, 2,
15059 OPC_EmitRegisterI32, 0 ,
15060 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
15061 MVT::v8i1, 6, 0, 1, 3, 4, 2, 5,
15062 0,
15063 33|128,1,
15064 OPC_CheckChild0Type, MVT::v4f32,
15065 OPC_RecordChild1,
15066 OPC_Scope, 25,
15067 OPC_CheckChild2Integer, 0,
15068 OPC_CheckChild2TypeI32,
15069 OPC_MoveParent,
15070 OPC_RecordChild1,
15071 OPC_CheckType, MVT::v4i1,
15072 OPC_CheckPatternPredicate2,
15073 OPC_EmitInteger32, 0,
15074 OPC_EmitInteger32, 2,
15075 OPC_EmitRegisterI32, 0 ,
15076 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
15077 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
15078 25,
15079 OPC_CheckChild2Integer, 2,
15080 OPC_CheckChild2TypeI32,
15081 OPC_MoveParent,
15082 OPC_RecordChild1,
15083 OPC_CheckType, MVT::v4i1,
15084 OPC_CheckPatternPredicate2,
15085 OPC_EmitInteger32, 2,
15086 OPC_EmitInteger32, 2,
15087 OPC_EmitRegisterI32, 0 ,
15088 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
15089 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
15090 25,
15091 OPC_CheckChild2Integer, 20,
15092 OPC_CheckChild2TypeI32,
15093 OPC_MoveParent,
15094 OPC_RecordChild1,
15095 OPC_CheckType, MVT::v4i1,
15096 OPC_CheckPatternPredicate2,
15097 OPC_EmitInteger32, 20,
15098 OPC_EmitInteger32, 2,
15099 OPC_EmitRegisterI32, 0 ,
15100 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
15101 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
15102 25,
15103 OPC_CheckChild2Integer, 22,
15104 OPC_CheckChild2TypeI32,
15105 OPC_MoveParent,
15106 OPC_RecordChild1,
15107 OPC_CheckType, MVT::v4i1,
15108 OPC_CheckPatternPredicate2,
15109 OPC_EmitInteger32, 22,
15110 OPC_EmitInteger32, 2,
15111 OPC_EmitRegisterI32, 0 ,
15112 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
15113 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
15114 25,
15115 OPC_CheckChild2Integer, 24,
15116 OPC_CheckChild2TypeI32,
15117 OPC_MoveParent,
15118 OPC_RecordChild1,
15119 OPC_CheckType, MVT::v4i1,
15120 OPC_CheckPatternPredicate2,
15121 OPC_EmitInteger32, 24,
15122 OPC_EmitInteger32, 2,
15123 OPC_EmitRegisterI32, 0 ,
15124 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
15125 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
15126 25,
15127 OPC_CheckChild2Integer, 26,
15128 OPC_CheckChild2TypeI32,
15129 OPC_MoveParent,
15130 OPC_RecordChild1,
15131 OPC_CheckType, MVT::v4i1,
15132 OPC_CheckPatternPredicate2,
15133 OPC_EmitInteger32, 26,
15134 OPC_EmitInteger32, 2,
15135 OPC_EmitRegisterI32, 0 ,
15136 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
15137 MVT::v4i1, 6, 0, 1, 3, 4, 2, 5,
15138 0,
15139 0,
15140 0,
15141 3|128,4,
15142 OPC_RecordChild0,
15143 OPC_Scope, 86,
15144 OPC_MoveChild1,
15145 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
15146 OPC_Scope, 19,
15147 OPC_CheckChild0Integer, 30|128,51,
15148 OPC_RecordChild1,
15149 OPC_MoveParent,
15150 OPC_CheckPatternPredicate0,
15151 OPC_EmitInteger32, 2,
15152 OPC_EmitRegisterI32, 0 ,
15153 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP8),
15154 MVT::v16i1, 4, 1, 2, 0, 3,
15155 19,
15156 OPC_CheckChild0Integer, 24|128,51,
15157 OPC_RecordChild1,
15158 OPC_MoveParent,
15159 OPC_CheckPatternPredicate0,
15160 OPC_EmitInteger32, 2,
15161 OPC_EmitRegisterI32, 0 ,
15162 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP16),
15163 MVT::v8i1, 4, 1, 2, 0, 3,
15164 19,
15165 OPC_CheckChild0Integer, 26|128,51,
15166 OPC_RecordChild1,
15167 OPC_MoveParent,
15168 OPC_CheckPatternPredicate0,
15169 OPC_EmitInteger32, 2,
15170 OPC_EmitRegisterI32, 0 ,
15171 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP32),
15172 MVT::v4i1, 4, 1, 2, 0, 3,
15173 19,
15174 OPC_CheckChild0Integer, 28|128,51,
15175 OPC_RecordChild1,
15176 OPC_MoveParent,
15177 OPC_CheckPatternPredicate0,
15178 OPC_EmitInteger32, 2,
15179 OPC_EmitRegisterI32, 0 ,
15180 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP64),
15181 MVT::v2i1, 4, 1, 2, 0, 3,
15182 0,
15183 39|128,3,
15184 OPC_RecordChild1,
15185 OPC_SwitchType , 14, MVT::v2i32,
15186 OPC_CheckPatternPredicate1,
15187 OPC_EmitInteger32, 28,
15188 OPC_EmitRegisterI32, 0 ,
15189 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VANDd),
15190 MVT::v2i32, 4, 0, 1, 2, 3,
15191 41, MVT::v4i32,
15192 OPC_Scope, 14,
15193 OPC_CheckPatternPredicate1,
15194 OPC_EmitInteger32, 28,
15195 OPC_EmitRegisterI32, 0 ,
15196 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VANDq),
15197 MVT::v4i32, 4, 0, 1, 2, 3,
15198 23,
15199 OPC_CheckPatternPredicate0,
15200 OPC_EmitInteger32, 0,
15201 OPC_EmitRegisterI32, 0 ,
15202 OPC_EmitRegisterI32, 0 ,
15203 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
15204 MVT::v4i32, 0,
15205 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
15206 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
15207 0,
15208 14, MVT::v8i8,
15209 OPC_CheckPatternPredicate1,
15210 OPC_EmitInteger32, 28,
15211 OPC_EmitRegisterI32, 0 ,
15212 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VANDd),
15213 MVT::v8i8, 4, 0, 1, 2, 3,
15214 14, MVT::v4i16,
15215 OPC_CheckPatternPredicate1,
15216 OPC_EmitInteger32, 28,
15217 OPC_EmitRegisterI32, 0 ,
15218 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VANDd),
15219 MVT::v4i16, 4, 0, 1, 2, 3,
15220 14, MVT::v1i64,
15221 OPC_CheckPatternPredicate1,
15222 OPC_EmitInteger32, 28,
15223 OPC_EmitRegisterI32, 0 ,
15224 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VANDd),
15225 MVT::v1i64, 4, 0, 1, 2, 3,
15226 41, MVT::v16i8,
15227 OPC_Scope, 14,
15228 OPC_CheckPatternPredicate1,
15229 OPC_EmitInteger32, 28,
15230 OPC_EmitRegisterI32, 0 ,
15231 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VANDq),
15232 MVT::v16i8, 4, 0, 1, 2, 3,
15233 23,
15234 OPC_CheckPatternPredicate0,
15235 OPC_EmitInteger32, 0,
15236 OPC_EmitRegisterI32, 0 ,
15237 OPC_EmitRegisterI32, 0 ,
15238 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
15239 MVT::v4i32, 0,
15240 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
15241 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
15242 0,
15243 41, MVT::v8i16,
15244 OPC_Scope, 14,
15245 OPC_CheckPatternPredicate1,
15246 OPC_EmitInteger32, 28,
15247 OPC_EmitRegisterI32, 0 ,
15248 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VANDq),
15249 MVT::v8i16, 4, 0, 1, 2, 3,
15250 23,
15251 OPC_CheckPatternPredicate0,
15252 OPC_EmitInteger32, 0,
15253 OPC_EmitRegisterI32, 0 ,
15254 OPC_EmitRegisterI32, 0 ,
15255 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
15256 MVT::v4i32, 0,
15257 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
15258 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
15259 0,
15260 41, MVT::v2i64,
15261 OPC_Scope, 14,
15262 OPC_CheckPatternPredicate1,
15263 OPC_EmitInteger32, 28,
15264 OPC_EmitRegisterI32, 0 ,
15265 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VANDq),
15266 MVT::v2i64, 4, 0, 1, 2, 3,
15267 23,
15268 OPC_CheckPatternPredicate0,
15269 OPC_EmitInteger32, 0,
15270 OPC_EmitRegisterI32, 0 ,
15271 OPC_EmitRegisterI32, 0 ,
15272 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
15273 MVT::v4i32, 0,
15274 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
15275 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
15276 0,
15277 44, MVT::v16i1,
15278 OPC_CheckPatternPredicate0,
15279 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
15280 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15281 MVT::i32, 2, 0, 2,
15282 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
15283 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15284 MVT::i32, 2, 1, 4,
15285 OPC_EmitInteger32, 28,
15286 OPC_EmitRegisterI32, 0 ,
15287 OPC_EmitRegisterI32, 0 ,
15288 OPC_EmitNode1None, TARGET_VAL(ARM::t2ANDrr),
15289 MVT::i32, 5, 3, 5, 6, 7, 8,
15290 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
15291 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15292 MVT::v16i1, 2, 9, 10,
15293 44, MVT::v8i1,
15294 OPC_CheckPatternPredicate0,
15295 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
15296 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15297 MVT::i32, 2, 0, 2,
15298 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
15299 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15300 MVT::i32, 2, 1, 4,
15301 OPC_EmitInteger32, 28,
15302 OPC_EmitRegisterI32, 0 ,
15303 OPC_EmitRegisterI32, 0 ,
15304 OPC_EmitNode1None, TARGET_VAL(ARM::t2ANDrr),
15305 MVT::i32, 5, 3, 5, 6, 7, 8,
15306 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
15307 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15308 MVT::v8i1, 2, 9, 10,
15309 44, MVT::v4i1,
15310 OPC_CheckPatternPredicate0,
15311 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
15312 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15313 MVT::i32, 2, 0, 2,
15314 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
15315 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15316 MVT::i32, 2, 1, 4,
15317 OPC_EmitInteger32, 28,
15318 OPC_EmitRegisterI32, 0 ,
15319 OPC_EmitRegisterI32, 0 ,
15320 OPC_EmitNode1None, TARGET_VAL(ARM::t2ANDrr),
15321 MVT::i32, 5, 3, 5, 6, 7, 8,
15322 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
15323 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15324 MVT::v4i1, 2, 9, 10,
15325 44, MVT::v2i1,
15326 OPC_CheckPatternPredicate0,
15327 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
15328 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15329 MVT::i32, 2, 0, 2,
15330 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
15331 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15332 MVT::i32, 2, 1, 4,
15333 OPC_EmitInteger32, 28,
15334 OPC_EmitRegisterI32, 0 ,
15335 OPC_EmitRegisterI32, 0 ,
15336 OPC_EmitNode1None, TARGET_VAL(ARM::t2ANDrr),
15337 MVT::i32, 5, 3, 5, 6, 7, 8,
15338 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
15339 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
15340 MVT::v2i1, 2, 9, 10,
15341 0,
15342 0,
15343 0,
15344 59|128,95|128,2, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
15345 OPC_Scope, 101,
15346 OPC_CheckChild0Integer, 60|128,56,
15347 OPC_Scope, 56,
15348 OPC_MoveChild1,
15349 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
15350 OPC_RecordChild0,
15351 OPC_RecordChild1,
15352 OPC_MoveChild1,
15353 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
15354 OPC_CheckPredicate, 12,
15355 OPC_CheckTypeI32,
15356 OPC_MoveParent,
15357 OPC_MoveParent,
15358 OPC_Scope, 19,
15359 OPC_CheckPatternPredicate, 9,
15360 OPC_EmitConvertToTarget1,
15361 OPC_EmitNodeXForm, 2, 2,
15362 OPC_EmitInteger32, 28,
15363 OPC_EmitRegisterI32, 0 ,
15364 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTB16),
15365 MVT::i32, 4, 0, 3, 4, 5,
15366 18,
15367 OPC_CheckPatternPredicate5,
15368 OPC_EmitConvertToTarget1,
15369 OPC_EmitNodeXForm, 2, 2,
15370 OPC_EmitInteger32, 28,
15371 OPC_EmitRegisterI32, 0 ,
15372 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTB16),
15373 MVT::i32, 4, 0, 3, 4, 5,
15374 0,
15375 38,
15376 OPC_RecordChild1,
15377 OPC_Scope, 17,
15378 OPC_CheckPatternPredicate, 9,
15379 OPC_EmitInteger32, 0,
15380 OPC_EmitInteger32, 28,
15381 OPC_EmitRegisterI32, 0 ,
15382 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTB16),
15383 MVT::i32, 4, 0, 1, 2, 3,
15384 16,
15385 OPC_CheckPatternPredicate5,
15386 OPC_EmitInteger32, 0,
15387 OPC_EmitInteger32, 28,
15388 OPC_EmitRegisterI32, 0 ,
15389 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTB16),
15390 MVT::i32, 4, 0, 1, 2, 3,
15391 0,
15392 0,
15393 116,
15394 OPC_CheckChild0Integer, 58|128,56,
15395 OPC_RecordChild1,
15396 OPC_Scope, 34,
15397 OPC_MoveChild2,
15398 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
15399 OPC_RecordChild0,
15400 OPC_RecordChild1,
15401 OPC_MoveChild1,
15402 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
15403 OPC_CheckPredicate, 12,
15404 OPC_CheckTypeI32,
15405 OPC_MoveParent,
15406 OPC_MoveParent,
15407 OPC_CheckPatternPredicate5,
15408 OPC_EmitConvertToTarget2,
15409 OPC_EmitNodeXForm, 2, 3,
15410 OPC_EmitInteger32, 28,
15411 OPC_EmitRegisterI32, 0 ,
15412 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAB16),
15413 MVT::i32, 5, 0, 1, 4, 5, 6,
15414 18,
15415 OPC_RecordChild2,
15416 OPC_CheckPatternPredicate5,
15417 OPC_EmitInteger32, 0,
15418 OPC_EmitInteger32, 28,
15419 OPC_EmitRegisterI32, 0 ,
15420 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UXTAB16),
15421 MVT::i32, 5, 0, 1, 2, 3, 4,
15422 35,
15423 OPC_MoveChild2,
15424 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
15425 OPC_RecordChild0,
15426 OPC_RecordChild1,
15427 OPC_MoveChild1,
15428 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
15429 OPC_CheckPredicate, 12,
15430 OPC_CheckTypeI32,
15431 OPC_MoveParent,
15432 OPC_MoveParent,
15433 OPC_CheckPatternPredicate, 9,
15434 OPC_EmitConvertToTarget2,
15435 OPC_EmitNodeXForm, 2, 3,
15436 OPC_EmitInteger32, 28,
15437 OPC_EmitRegisterI32, 0 ,
15438 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAB16),
15439 MVT::i32, 5, 0, 1, 4, 5, 6,
15440 19,
15441 OPC_RecordChild2,
15442 OPC_CheckPatternPredicate, 9,
15443 OPC_EmitInteger32, 0,
15444 OPC_EmitInteger32, 28,
15445 OPC_EmitRegisterI32, 0 ,
15446 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UXTAB16),
15447 MVT::i32, 5, 0, 1, 2, 3, 4,
15448 0,
15449 49|128,6,
15450 OPC_CheckChild0Integer, 110|128,51,
15451 OPC_Scope, 8|128,5,
15452 OPC_CheckChild1Integer, 0,
15453 OPC_Scope, 64|128,2,
15454 OPC_CheckChild2Integer, 0,
15455 OPC_Scope, 28|128,1,
15456 OPC_CheckChild3Integer, 0,
15457 OPC_Scope, 74,
15458 OPC_CheckChild4Integer, 0,
15459 OPC_RecordChild5,
15460 OPC_Scope, 22,
15461 OPC_CheckChild5Type, MVT::v16i8,
15462 OPC_RecordChild6,
15463 OPC_CheckChild6Type, MVT::v16i8,
15464 OPC_CheckPatternPredicate0,
15465 OPC_EmitInteger32, 0,
15466 OPC_EmitRegisterI32, 0 ,
15467 OPC_EmitRegisterI32, 0 ,
15468 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVs8),
15469 MVT::i32, 5, 0, 1, 2, 3, 4,
15470 22,
15471 OPC_CheckChild5Type, MVT::v8i16,
15472 OPC_RecordChild6,
15473 OPC_CheckChild6Type, MVT::v8i16,
15474 OPC_CheckPatternPredicate0,
15475 OPC_EmitInteger32, 0,
15476 OPC_EmitRegisterI32, 0 ,
15477 OPC_EmitRegisterI32, 0 ,
15478 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVs16),
15479 MVT::i32, 5, 0, 1, 2, 3, 4,
15480 22,
15481 OPC_CheckChild5Type, MVT::v4i32,
15482 OPC_RecordChild6,
15483 OPC_CheckChild6Type, MVT::v4i32,
15484 OPC_CheckPatternPredicate0,
15485 OPC_EmitInteger32, 0,
15486 OPC_EmitRegisterI32, 0 ,
15487 OPC_EmitRegisterI32, 0 ,
15488 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVs32),
15489 MVT::i32, 5, 0, 1, 2, 3, 4,
15490 0,
15491 76,
15492 OPC_RecordChild4,
15493 OPC_RecordChild5,
15494 OPC_Scope, 23,
15495 OPC_CheckChild5Type, MVT::v16i8,
15496 OPC_RecordChild6,
15497 OPC_CheckChild6Type, MVT::v16i8,
15498 OPC_CheckPatternPredicate0,
15499 OPC_EmitInteger32, 0,
15500 OPC_EmitRegisterI32, 0 ,
15501 OPC_EmitRegisterI32, 0 ,
15502 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas8),
15503 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15504 23,
15505 OPC_CheckChild5Type, MVT::v8i16,
15506 OPC_RecordChild6,
15507 OPC_CheckChild6Type, MVT::v8i16,
15508 OPC_CheckPatternPredicate0,
15509 OPC_EmitInteger32, 0,
15510 OPC_EmitRegisterI32, 0 ,
15511 OPC_EmitRegisterI32, 0 ,
15512 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas16),
15513 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15514 23,
15515 OPC_CheckChild5Type, MVT::v4i32,
15516 OPC_RecordChild6,
15517 OPC_CheckChild6Type, MVT::v4i32,
15518 OPC_CheckPatternPredicate0,
15519 OPC_EmitInteger32, 0,
15520 OPC_EmitRegisterI32, 0 ,
15521 OPC_EmitRegisterI32, 0 ,
15522 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas32),
15523 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15524 0,
15525 0,
15526 28|128,1,
15527 OPC_CheckChild3Integer, 2,
15528 OPC_Scope, 74,
15529 OPC_CheckChild4Integer, 0,
15530 OPC_RecordChild5,
15531 OPC_Scope, 22,
15532 OPC_CheckChild5Type, MVT::v16i8,
15533 OPC_RecordChild6,
15534 OPC_CheckChild6Type, MVT::v16i8,
15535 OPC_CheckPatternPredicate0,
15536 OPC_EmitInteger32, 0,
15537 OPC_EmitRegisterI32, 0 ,
15538 OPC_EmitRegisterI32, 0 ,
15539 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVxs8),
15540 MVT::i32, 5, 0, 1, 2, 3, 4,
15541 22,
15542 OPC_CheckChild5Type, MVT::v8i16,
15543 OPC_RecordChild6,
15544 OPC_CheckChild6Type, MVT::v8i16,
15545 OPC_CheckPatternPredicate0,
15546 OPC_EmitInteger32, 0,
15547 OPC_EmitRegisterI32, 0 ,
15548 OPC_EmitRegisterI32, 0 ,
15549 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVxs16),
15550 MVT::i32, 5, 0, 1, 2, 3, 4,
15551 22,
15552 OPC_CheckChild5Type, MVT::v4i32,
15553 OPC_RecordChild6,
15554 OPC_CheckChild6Type, MVT::v4i32,
15555 OPC_CheckPatternPredicate0,
15556 OPC_EmitInteger32, 0,
15557 OPC_EmitRegisterI32, 0 ,
15558 OPC_EmitRegisterI32, 0 ,
15559 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVxs32),
15560 MVT::i32, 5, 0, 1, 2, 3, 4,
15561 0,
15562 76,
15563 OPC_RecordChild4,
15564 OPC_RecordChild5,
15565 OPC_Scope, 23,
15566 OPC_CheckChild5Type, MVT::v16i8,
15567 OPC_RecordChild6,
15568 OPC_CheckChild6Type, MVT::v16i8,
15569 OPC_CheckPatternPredicate0,
15570 OPC_EmitInteger32, 0,
15571 OPC_EmitRegisterI32, 0 ,
15572 OPC_EmitRegisterI32, 0 ,
15573 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVaxs8),
15574 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15575 23,
15576 OPC_CheckChild5Type, MVT::v8i16,
15577 OPC_RecordChild6,
15578 OPC_CheckChild6Type, MVT::v8i16,
15579 OPC_CheckPatternPredicate0,
15580 OPC_EmitInteger32, 0,
15581 OPC_EmitRegisterI32, 0 ,
15582 OPC_EmitRegisterI32, 0 ,
15583 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVaxs16),
15584 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15585 23,
15586 OPC_CheckChild5Type, MVT::v4i32,
15587 OPC_RecordChild6,
15588 OPC_CheckChild6Type, MVT::v4i32,
15589 OPC_CheckPatternPredicate0,
15590 OPC_EmitInteger32, 0,
15591 OPC_EmitRegisterI32, 0 ,
15592 OPC_EmitRegisterI32, 0 ,
15593 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVaxs32),
15594 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15595 0,
15596 0,
15597 0,
15598 64|128,2,
15599 OPC_CheckChild2Integer, 2,
15600 OPC_Scope, 28|128,1,
15601 OPC_CheckChild3Integer, 0,
15602 OPC_Scope, 74,
15603 OPC_CheckChild4Integer, 0,
15604 OPC_RecordChild5,
15605 OPC_Scope, 22,
15606 OPC_CheckChild5Type, MVT::v16i8,
15607 OPC_RecordChild6,
15608 OPC_CheckChild6Type, MVT::v16i8,
15609 OPC_CheckPatternPredicate0,
15610 OPC_EmitInteger32, 0,
15611 OPC_EmitRegisterI32, 0 ,
15612 OPC_EmitRegisterI32, 0 ,
15613 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVs8),
15614 MVT::i32, 5, 0, 1, 2, 3, 4,
15615 22,
15616 OPC_CheckChild5Type, MVT::v8i16,
15617 OPC_RecordChild6,
15618 OPC_CheckChild6Type, MVT::v8i16,
15619 OPC_CheckPatternPredicate0,
15620 OPC_EmitInteger32, 0,
15621 OPC_EmitRegisterI32, 0 ,
15622 OPC_EmitRegisterI32, 0 ,
15623 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVs16),
15624 MVT::i32, 5, 0, 1, 2, 3, 4,
15625 22,
15626 OPC_CheckChild5Type, MVT::v4i32,
15627 OPC_RecordChild6,
15628 OPC_CheckChild6Type, MVT::v4i32,
15629 OPC_CheckPatternPredicate0,
15630 OPC_EmitInteger32, 0,
15631 OPC_EmitRegisterI32, 0 ,
15632 OPC_EmitRegisterI32, 0 ,
15633 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVs32),
15634 MVT::i32, 5, 0, 1, 2, 3, 4,
15635 0,
15636 76,
15637 OPC_RecordChild4,
15638 OPC_RecordChild5,
15639 OPC_Scope, 23,
15640 OPC_CheckChild5Type, MVT::v16i8,
15641 OPC_RecordChild6,
15642 OPC_CheckChild6Type, MVT::v16i8,
15643 OPC_CheckPatternPredicate0,
15644 OPC_EmitInteger32, 0,
15645 OPC_EmitRegisterI32, 0 ,
15646 OPC_EmitRegisterI32, 0 ,
15647 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVas8),
15648 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15649 23,
15650 OPC_CheckChild5Type, MVT::v8i16,
15651 OPC_RecordChild6,
15652 OPC_CheckChild6Type, MVT::v8i16,
15653 OPC_CheckPatternPredicate0,
15654 OPC_EmitInteger32, 0,
15655 OPC_EmitRegisterI32, 0 ,
15656 OPC_EmitRegisterI32, 0 ,
15657 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVas16),
15658 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15659 23,
15660 OPC_CheckChild5Type, MVT::v4i32,
15661 OPC_RecordChild6,
15662 OPC_CheckChild6Type, MVT::v4i32,
15663 OPC_CheckPatternPredicate0,
15664 OPC_EmitInteger32, 0,
15665 OPC_EmitRegisterI32, 0 ,
15666 OPC_EmitRegisterI32, 0 ,
15667 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVas32),
15668 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15669 0,
15670 0,
15671 28|128,1,
15672 OPC_CheckChild3Integer, 2,
15673 OPC_Scope, 74,
15674 OPC_CheckChild4Integer, 0,
15675 OPC_RecordChild5,
15676 OPC_Scope, 22,
15677 OPC_CheckChild5Type, MVT::v16i8,
15678 OPC_RecordChild6,
15679 OPC_CheckChild6Type, MVT::v16i8,
15680 OPC_CheckPatternPredicate0,
15681 OPC_EmitInteger32, 0,
15682 OPC_EmitRegisterI32, 0 ,
15683 OPC_EmitRegisterI32, 0 ,
15684 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVxs8),
15685 MVT::i32, 5, 0, 1, 2, 3, 4,
15686 22,
15687 OPC_CheckChild5Type, MVT::v8i16,
15688 OPC_RecordChild6,
15689 OPC_CheckChild6Type, MVT::v8i16,
15690 OPC_CheckPatternPredicate0,
15691 OPC_EmitInteger32, 0,
15692 OPC_EmitRegisterI32, 0 ,
15693 OPC_EmitRegisterI32, 0 ,
15694 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVxs16),
15695 MVT::i32, 5, 0, 1, 2, 3, 4,
15696 22,
15697 OPC_CheckChild5Type, MVT::v4i32,
15698 OPC_RecordChild6,
15699 OPC_CheckChild6Type, MVT::v4i32,
15700 OPC_CheckPatternPredicate0,
15701 OPC_EmitInteger32, 0,
15702 OPC_EmitRegisterI32, 0 ,
15703 OPC_EmitRegisterI32, 0 ,
15704 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVxs32),
15705 MVT::i32, 5, 0, 1, 2, 3, 4,
15706 0,
15707 76,
15708 OPC_RecordChild4,
15709 OPC_RecordChild5,
15710 OPC_Scope, 23,
15711 OPC_CheckChild5Type, MVT::v16i8,
15712 OPC_RecordChild6,
15713 OPC_CheckChild6Type, MVT::v16i8,
15714 OPC_CheckPatternPredicate0,
15715 OPC_EmitInteger32, 0,
15716 OPC_EmitRegisterI32, 0 ,
15717 OPC_EmitRegisterI32, 0 ,
15718 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVaxs8),
15719 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15720 23,
15721 OPC_CheckChild5Type, MVT::v8i16,
15722 OPC_RecordChild6,
15723 OPC_CheckChild6Type, MVT::v8i16,
15724 OPC_CheckPatternPredicate0,
15725 OPC_EmitInteger32, 0,
15726 OPC_EmitRegisterI32, 0 ,
15727 OPC_EmitRegisterI32, 0 ,
15728 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVaxs16),
15729 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15730 23,
15731 OPC_CheckChild5Type, MVT::v4i32,
15732 OPC_RecordChild6,
15733 OPC_CheckChild6Type, MVT::v4i32,
15734 OPC_CheckPatternPredicate0,
15735 OPC_EmitInteger32, 0,
15736 OPC_EmitRegisterI32, 0 ,
15737 OPC_EmitRegisterI32, 0 ,
15738 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVaxs32),
15739 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15740 0,
15741 0,
15742 0,
15743 0,
15744 32|128,1,
15745 OPC_CheckChild1Integer, 2,
15746 OPC_CheckChild2Integer, 0,
15747 OPC_CheckChild3Integer, 0,
15748 OPC_Scope, 74,
15749 OPC_CheckChild4Integer, 0,
15750 OPC_RecordChild5,
15751 OPC_Scope, 22,
15752 OPC_CheckChild5Type, MVT::v16i8,
15753 OPC_RecordChild6,
15754 OPC_CheckChild6Type, MVT::v16i8,
15755 OPC_CheckPatternPredicate0,
15756 OPC_EmitInteger32, 0,
15757 OPC_EmitRegisterI32, 0 ,
15758 OPC_EmitRegisterI32, 0 ,
15759 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu8),
15760 MVT::i32, 5, 0, 1, 2, 3, 4,
15761 22,
15762 OPC_CheckChild5Type, MVT::v8i16,
15763 OPC_RecordChild6,
15764 OPC_CheckChild6Type, MVT::v8i16,
15765 OPC_CheckPatternPredicate0,
15766 OPC_EmitInteger32, 0,
15767 OPC_EmitRegisterI32, 0 ,
15768 OPC_EmitRegisterI32, 0 ,
15769 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu16),
15770 MVT::i32, 5, 0, 1, 2, 3, 4,
15771 22,
15772 OPC_CheckChild5Type, MVT::v4i32,
15773 OPC_RecordChild6,
15774 OPC_CheckChild6Type, MVT::v4i32,
15775 OPC_CheckPatternPredicate0,
15776 OPC_EmitInteger32, 0,
15777 OPC_EmitRegisterI32, 0 ,
15778 OPC_EmitRegisterI32, 0 ,
15779 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu32),
15780 MVT::i32, 5, 0, 1, 2, 3, 4,
15781 0,
15782 76,
15783 OPC_RecordChild4,
15784 OPC_RecordChild5,
15785 OPC_Scope, 23,
15786 OPC_CheckChild5Type, MVT::v16i8,
15787 OPC_RecordChild6,
15788 OPC_CheckChild6Type, MVT::v16i8,
15789 OPC_CheckPatternPredicate0,
15790 OPC_EmitInteger32, 0,
15791 OPC_EmitRegisterI32, 0 ,
15792 OPC_EmitRegisterI32, 0 ,
15793 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau8),
15794 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15795 23,
15796 OPC_CheckChild5Type, MVT::v8i16,
15797 OPC_RecordChild6,
15798 OPC_CheckChild6Type, MVT::v8i16,
15799 OPC_CheckPatternPredicate0,
15800 OPC_EmitInteger32, 0,
15801 OPC_EmitRegisterI32, 0 ,
15802 OPC_EmitRegisterI32, 0 ,
15803 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau16),
15804 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15805 23,
15806 OPC_CheckChild5Type, MVT::v4i32,
15807 OPC_RecordChild6,
15808 OPC_CheckChild6Type, MVT::v4i32,
15809 OPC_CheckPatternPredicate0,
15810 OPC_EmitInteger32, 0,
15811 OPC_EmitRegisterI32, 0 ,
15812 OPC_EmitRegisterI32, 0 ,
15813 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau32),
15814 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
15815 0,
15816 0,
15817 0,
15818 79|128,6,
15819 OPC_CheckChild0Integer, 112|128,51,
15820 OPC_Scope, 32|128,5,
15821 OPC_CheckChild1Integer, 0,
15822 OPC_Scope, 76|128,2,
15823 OPC_CheckChild2Integer, 0,
15824 OPC_Scope, 34|128,1,
15825 OPC_CheckChild3Integer, 0,
15826 OPC_Scope, 77,
15827 OPC_CheckChild4Integer, 0,
15828 OPC_RecordChild5,
15829 OPC_Scope, 23,
15830 OPC_CheckChild5Type, MVT::v16i8,
15831 OPC_RecordChild6,
15832 OPC_CheckChild6Type, MVT::v16i8,
15833 OPC_RecordChild7,
15834 OPC_CheckChild7Type, MVT::v16i1,
15835 OPC_CheckPatternPredicate0,
15836 OPC_EmitInteger32, 2,
15837 OPC_EmitRegisterI32, 0 ,
15838 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVs8),
15839 MVT::i32, 5, 0, 1, 3, 2, 4,
15840 23,
15841 OPC_CheckChild5Type, MVT::v8i16,
15842 OPC_RecordChild6,
15843 OPC_CheckChild6Type, MVT::v8i16,
15844 OPC_RecordChild7,
15845 OPC_CheckChild7Type, MVT::v8i1,
15846 OPC_CheckPatternPredicate0,
15847 OPC_EmitInteger32, 2,
15848 OPC_EmitRegisterI32, 0 ,
15849 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVs16),
15850 MVT::i32, 5, 0, 1, 3, 2, 4,
15851 23,
15852 OPC_CheckChild5Type, MVT::v4i32,
15853 OPC_RecordChild6,
15854 OPC_CheckChild6Type, MVT::v4i32,
15855 OPC_RecordChild7,
15856 OPC_CheckChild7Type, MVT::v4i1,
15857 OPC_CheckPatternPredicate0,
15858 OPC_EmitInteger32, 2,
15859 OPC_EmitRegisterI32, 0 ,
15860 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVs32),
15861 MVT::i32, 5, 0, 1, 3, 2, 4,
15862 0,
15863 79,
15864 OPC_RecordChild4,
15865 OPC_RecordChild5,
15866 OPC_Scope, 24,
15867 OPC_CheckChild5Type, MVT::v16i8,
15868 OPC_RecordChild6,
15869 OPC_CheckChild6Type, MVT::v16i8,
15870 OPC_RecordChild7,
15871 OPC_CheckChild7Type, MVT::v16i1,
15872 OPC_CheckPatternPredicate0,
15873 OPC_EmitInteger32, 2,
15874 OPC_EmitRegisterI32, 0 ,
15875 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas8),
15876 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
15877 24,
15878 OPC_CheckChild5Type, MVT::v8i16,
15879 OPC_RecordChild6,
15880 OPC_CheckChild6Type, MVT::v8i16,
15881 OPC_RecordChild7,
15882 OPC_CheckChild7Type, MVT::v8i1,
15883 OPC_CheckPatternPredicate0,
15884 OPC_EmitInteger32, 2,
15885 OPC_EmitRegisterI32, 0 ,
15886 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas16),
15887 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
15888 24,
15889 OPC_CheckChild5Type, MVT::v4i32,
15890 OPC_RecordChild6,
15891 OPC_CheckChild6Type, MVT::v4i32,
15892 OPC_RecordChild7,
15893 OPC_CheckChild7Type, MVT::v4i1,
15894 OPC_CheckPatternPredicate0,
15895 OPC_EmitInteger32, 2,
15896 OPC_EmitRegisterI32, 0 ,
15897 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVas32),
15898 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
15899 0,
15900 0,
15901 34|128,1,
15902 OPC_CheckChild3Integer, 2,
15903 OPC_Scope, 77,
15904 OPC_CheckChild4Integer, 0,
15905 OPC_RecordChild5,
15906 OPC_Scope, 23,
15907 OPC_CheckChild5Type, MVT::v16i8,
15908 OPC_RecordChild6,
15909 OPC_CheckChild6Type, MVT::v16i8,
15910 OPC_RecordChild7,
15911 OPC_CheckChild7Type, MVT::v16i1,
15912 OPC_CheckPatternPredicate0,
15913 OPC_EmitInteger32, 2,
15914 OPC_EmitRegisterI32, 0 ,
15915 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVxs8),
15916 MVT::i32, 5, 0, 1, 3, 2, 4,
15917 23,
15918 OPC_CheckChild5Type, MVT::v8i16,
15919 OPC_RecordChild6,
15920 OPC_CheckChild6Type, MVT::v8i16,
15921 OPC_RecordChild7,
15922 OPC_CheckChild7Type, MVT::v8i1,
15923 OPC_CheckPatternPredicate0,
15924 OPC_EmitInteger32, 2,
15925 OPC_EmitRegisterI32, 0 ,
15926 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVxs16),
15927 MVT::i32, 5, 0, 1, 3, 2, 4,
15928 23,
15929 OPC_CheckChild5Type, MVT::v4i32,
15930 OPC_RecordChild6,
15931 OPC_CheckChild6Type, MVT::v4i32,
15932 OPC_RecordChild7,
15933 OPC_CheckChild7Type, MVT::v4i1,
15934 OPC_CheckPatternPredicate0,
15935 OPC_EmitInteger32, 2,
15936 OPC_EmitRegisterI32, 0 ,
15937 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVxs32),
15938 MVT::i32, 5, 0, 1, 3, 2, 4,
15939 0,
15940 79,
15941 OPC_RecordChild4,
15942 OPC_RecordChild5,
15943 OPC_Scope, 24,
15944 OPC_CheckChild5Type, MVT::v16i8,
15945 OPC_RecordChild6,
15946 OPC_CheckChild6Type, MVT::v16i8,
15947 OPC_RecordChild7,
15948 OPC_CheckChild7Type, MVT::v16i1,
15949 OPC_CheckPatternPredicate0,
15950 OPC_EmitInteger32, 2,
15951 OPC_EmitRegisterI32, 0 ,
15952 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVaxs8),
15953 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
15954 24,
15955 OPC_CheckChild5Type, MVT::v8i16,
15956 OPC_RecordChild6,
15957 OPC_CheckChild6Type, MVT::v8i16,
15958 OPC_RecordChild7,
15959 OPC_CheckChild7Type, MVT::v8i1,
15960 OPC_CheckPatternPredicate0,
15961 OPC_EmitInteger32, 2,
15962 OPC_EmitRegisterI32, 0 ,
15963 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVaxs16),
15964 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
15965 24,
15966 OPC_CheckChild5Type, MVT::v4i32,
15967 OPC_RecordChild6,
15968 OPC_CheckChild6Type, MVT::v4i32,
15969 OPC_RecordChild7,
15970 OPC_CheckChild7Type, MVT::v4i1,
15971 OPC_CheckPatternPredicate0,
15972 OPC_EmitInteger32, 2,
15973 OPC_EmitRegisterI32, 0 ,
15974 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVaxs32),
15975 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
15976 0,
15977 0,
15978 0,
15979 76|128,2,
15980 OPC_CheckChild2Integer, 2,
15981 OPC_Scope, 34|128,1,
15982 OPC_CheckChild3Integer, 0,
15983 OPC_Scope, 77,
15984 OPC_CheckChild4Integer, 0,
15985 OPC_RecordChild5,
15986 OPC_Scope, 23,
15987 OPC_CheckChild5Type, MVT::v16i8,
15988 OPC_RecordChild6,
15989 OPC_CheckChild6Type, MVT::v16i8,
15990 OPC_RecordChild7,
15991 OPC_CheckChild7Type, MVT::v16i1,
15992 OPC_CheckPatternPredicate0,
15993 OPC_EmitInteger32, 2,
15994 OPC_EmitRegisterI32, 0 ,
15995 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVs8),
15996 MVT::i32, 5, 0, 1, 3, 2, 4,
15997 23,
15998 OPC_CheckChild5Type, MVT::v8i16,
15999 OPC_RecordChild6,
16000 OPC_CheckChild6Type, MVT::v8i16,
16001 OPC_RecordChild7,
16002 OPC_CheckChild7Type, MVT::v8i1,
16003 OPC_CheckPatternPredicate0,
16004 OPC_EmitInteger32, 2,
16005 OPC_EmitRegisterI32, 0 ,
16006 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVs16),
16007 MVT::i32, 5, 0, 1, 3, 2, 4,
16008 23,
16009 OPC_CheckChild5Type, MVT::v4i32,
16010 OPC_RecordChild6,
16011 OPC_CheckChild6Type, MVT::v4i32,
16012 OPC_RecordChild7,
16013 OPC_CheckChild7Type, MVT::v4i1,
16014 OPC_CheckPatternPredicate0,
16015 OPC_EmitInteger32, 2,
16016 OPC_EmitRegisterI32, 0 ,
16017 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVs32),
16018 MVT::i32, 5, 0, 1, 3, 2, 4,
16019 0,
16020 79,
16021 OPC_RecordChild4,
16022 OPC_RecordChild5,
16023 OPC_Scope, 24,
16024 OPC_CheckChild5Type, MVT::v16i8,
16025 OPC_RecordChild6,
16026 OPC_CheckChild6Type, MVT::v16i8,
16027 OPC_RecordChild7,
16028 OPC_CheckChild7Type, MVT::v16i1,
16029 OPC_CheckPatternPredicate0,
16030 OPC_EmitInteger32, 2,
16031 OPC_EmitRegisterI32, 0 ,
16032 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVas8),
16033 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16034 24,
16035 OPC_CheckChild5Type, MVT::v8i16,
16036 OPC_RecordChild6,
16037 OPC_CheckChild6Type, MVT::v8i16,
16038 OPC_RecordChild7,
16039 OPC_CheckChild7Type, MVT::v8i1,
16040 OPC_CheckPatternPredicate0,
16041 OPC_EmitInteger32, 2,
16042 OPC_EmitRegisterI32, 0 ,
16043 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVas16),
16044 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16045 24,
16046 OPC_CheckChild5Type, MVT::v4i32,
16047 OPC_RecordChild6,
16048 OPC_CheckChild6Type, MVT::v4i32,
16049 OPC_RecordChild7,
16050 OPC_CheckChild7Type, MVT::v4i1,
16051 OPC_CheckPatternPredicate0,
16052 OPC_EmitInteger32, 2,
16053 OPC_EmitRegisterI32, 0 ,
16054 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVas32),
16055 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16056 0,
16057 0,
16058 34|128,1,
16059 OPC_CheckChild3Integer, 2,
16060 OPC_Scope, 77,
16061 OPC_CheckChild4Integer, 0,
16062 OPC_RecordChild5,
16063 OPC_Scope, 23,
16064 OPC_CheckChild5Type, MVT::v16i8,
16065 OPC_RecordChild6,
16066 OPC_CheckChild6Type, MVT::v16i8,
16067 OPC_RecordChild7,
16068 OPC_CheckChild7Type, MVT::v16i1,
16069 OPC_CheckPatternPredicate0,
16070 OPC_EmitInteger32, 2,
16071 OPC_EmitRegisterI32, 0 ,
16072 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVxs8),
16073 MVT::i32, 5, 0, 1, 3, 2, 4,
16074 23,
16075 OPC_CheckChild5Type, MVT::v8i16,
16076 OPC_RecordChild6,
16077 OPC_CheckChild6Type, MVT::v8i16,
16078 OPC_RecordChild7,
16079 OPC_CheckChild7Type, MVT::v8i1,
16080 OPC_CheckPatternPredicate0,
16081 OPC_EmitInteger32, 2,
16082 OPC_EmitRegisterI32, 0 ,
16083 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVxs16),
16084 MVT::i32, 5, 0, 1, 3, 2, 4,
16085 23,
16086 OPC_CheckChild5Type, MVT::v4i32,
16087 OPC_RecordChild6,
16088 OPC_CheckChild6Type, MVT::v4i32,
16089 OPC_RecordChild7,
16090 OPC_CheckChild7Type, MVT::v4i1,
16091 OPC_CheckPatternPredicate0,
16092 OPC_EmitInteger32, 2,
16093 OPC_EmitRegisterI32, 0 ,
16094 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVxs32),
16095 MVT::i32, 5, 0, 1, 3, 2, 4,
16096 0,
16097 79,
16098 OPC_RecordChild4,
16099 OPC_RecordChild5,
16100 OPC_Scope, 24,
16101 OPC_CheckChild5Type, MVT::v16i8,
16102 OPC_RecordChild6,
16103 OPC_CheckChild6Type, MVT::v16i8,
16104 OPC_RecordChild7,
16105 OPC_CheckChild7Type, MVT::v16i1,
16106 OPC_CheckPatternPredicate0,
16107 OPC_EmitInteger32, 2,
16108 OPC_EmitRegisterI32, 0 ,
16109 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVaxs8),
16110 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16111 24,
16112 OPC_CheckChild5Type, MVT::v8i16,
16113 OPC_RecordChild6,
16114 OPC_CheckChild6Type, MVT::v8i16,
16115 OPC_RecordChild7,
16116 OPC_CheckChild7Type, MVT::v8i1,
16117 OPC_CheckPatternPredicate0,
16118 OPC_EmitInteger32, 2,
16119 OPC_EmitRegisterI32, 0 ,
16120 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVaxs16),
16121 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16122 24,
16123 OPC_CheckChild5Type, MVT::v4i32,
16124 OPC_RecordChild6,
16125 OPC_CheckChild6Type, MVT::v4i32,
16126 OPC_RecordChild7,
16127 OPC_CheckChild7Type, MVT::v4i1,
16128 OPC_CheckPatternPredicate0,
16129 OPC_EmitInteger32, 2,
16130 OPC_EmitRegisterI32, 0 ,
16131 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLSDAVaxs32),
16132 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16133 0,
16134 0,
16135 0,
16136 0,
16137 38|128,1,
16138 OPC_CheckChild1Integer, 2,
16139 OPC_CheckChild2Integer, 0,
16140 OPC_CheckChild3Integer, 0,
16141 OPC_Scope, 77,
16142 OPC_CheckChild4Integer, 0,
16143 OPC_RecordChild5,
16144 OPC_Scope, 23,
16145 OPC_CheckChild5Type, MVT::v16i8,
16146 OPC_RecordChild6,
16147 OPC_CheckChild6Type, MVT::v16i8,
16148 OPC_RecordChild7,
16149 OPC_CheckChild7Type, MVT::v16i1,
16150 OPC_CheckPatternPredicate0,
16151 OPC_EmitInteger32, 2,
16152 OPC_EmitRegisterI32, 0 ,
16153 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu8),
16154 MVT::i32, 5, 0, 1, 3, 2, 4,
16155 23,
16156 OPC_CheckChild5Type, MVT::v8i16,
16157 OPC_RecordChild6,
16158 OPC_CheckChild6Type, MVT::v8i16,
16159 OPC_RecordChild7,
16160 OPC_CheckChild7Type, MVT::v8i1,
16161 OPC_CheckPatternPredicate0,
16162 OPC_EmitInteger32, 2,
16163 OPC_EmitRegisterI32, 0 ,
16164 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu16),
16165 MVT::i32, 5, 0, 1, 3, 2, 4,
16166 23,
16167 OPC_CheckChild5Type, MVT::v4i32,
16168 OPC_RecordChild6,
16169 OPC_CheckChild6Type, MVT::v4i32,
16170 OPC_RecordChild7,
16171 OPC_CheckChild7Type, MVT::v4i1,
16172 OPC_CheckPatternPredicate0,
16173 OPC_EmitInteger32, 2,
16174 OPC_EmitRegisterI32, 0 ,
16175 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu32),
16176 MVT::i32, 5, 0, 1, 3, 2, 4,
16177 0,
16178 79,
16179 OPC_RecordChild4,
16180 OPC_RecordChild5,
16181 OPC_Scope, 24,
16182 OPC_CheckChild5Type, MVT::v16i8,
16183 OPC_RecordChild6,
16184 OPC_CheckChild6Type, MVT::v16i8,
16185 OPC_RecordChild7,
16186 OPC_CheckChild7Type, MVT::v16i1,
16187 OPC_CheckPatternPredicate0,
16188 OPC_EmitInteger32, 2,
16189 OPC_EmitRegisterI32, 0 ,
16190 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau8),
16191 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16192 24,
16193 OPC_CheckChild5Type, MVT::v8i16,
16194 OPC_RecordChild6,
16195 OPC_CheckChild6Type, MVT::v8i16,
16196 OPC_RecordChild7,
16197 OPC_CheckChild7Type, MVT::v8i1,
16198 OPC_CheckPatternPredicate0,
16199 OPC_EmitInteger32, 2,
16200 OPC_EmitRegisterI32, 0 ,
16201 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau16),
16202 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16203 24,
16204 OPC_CheckChild5Type, MVT::v4i32,
16205 OPC_RecordChild6,
16206 OPC_CheckChild6Type, MVT::v4i32,
16207 OPC_RecordChild7,
16208 OPC_CheckChild7Type, MVT::v4i1,
16209 OPC_CheckPatternPredicate0,
16210 OPC_EmitInteger32, 2,
16211 OPC_EmitRegisterI32, 0 ,
16212 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVau32),
16213 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16214 0,
16215 0,
16216 0,
16217 76|128,1,
16218 OPC_CheckChild0Integer, 110|128,55,
16219 OPC_Scope, 12|128,1,
16220 OPC_MoveChild1,
16221 OPC_SwitchOpcode , 62, TARGET_VAL(ISD::SHL),
16222 OPC_RecordChild0,
16223 OPC_RecordChild1,
16224 OPC_MoveChild1,
16225 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16226 OPC_CheckPredicate5,
16227 OPC_CheckTypeI32,
16228 OPC_MoveParent,
16229 OPC_MoveSibling2,
16230 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16231 OPC_RecordNode,
16232 OPC_CheckPredicate, 74,
16233 OPC_MoveParent,
16234 OPC_Scope, 21,
16235 OPC_CheckPatternPredicate, 9,
16236 OPC_EmitConvertToTarget2,
16237 OPC_EmitNodeXForm, 11, 3,
16238 OPC_EmitConvertToTarget1,
16239 OPC_EmitInteger32, 28,
16240 OPC_EmitRegisterI32, 0 ,
16241 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SSAT),
16242 MVT::i32, 5, 4, 0, 5, 6, 7,
16243 20,
16244 OPC_CheckPatternPredicate4,
16245 OPC_EmitConvertToTarget2,
16246 OPC_EmitNodeXForm, 11, 3,
16247 OPC_EmitConvertToTarget1,
16248 OPC_EmitInteger32, 28,
16249 OPC_EmitRegisterI32, 0 ,
16250 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SSAT),
16251 MVT::i32, 5, 4, 0, 5, 6, 7,
16252 0,
16253 69, TARGET_VAL(ISD::SRA),
16254 OPC_RecordChild0,
16255 OPC_RecordChild1,
16256 OPC_MoveChild1,
16257 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16258 OPC_CheckPredicate, 19,
16259 OPC_CheckTypeI32,
16260 OPC_MoveParent,
16261 OPC_MoveSibling2,
16262 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16263 OPC_RecordNode,
16264 OPC_CheckPredicate, 74,
16265 OPC_MoveParent,
16266 OPC_Scope, 24,
16267 OPC_CheckPatternPredicate, 9,
16268 OPC_EmitConvertToTarget2,
16269 OPC_EmitNodeXForm, 11, 3,
16270 OPC_EmitConvertToTarget1,
16271 OPC_EmitNodeXForm, 12, 5,
16272 OPC_EmitInteger32, 28,
16273 OPC_EmitRegisterI32, 0 ,
16274 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SSAT),
16275 MVT::i32, 5, 4, 0, 6, 7, 8,
16276 23,
16277 OPC_CheckPatternPredicate4,
16278 OPC_EmitConvertToTarget2,
16279 OPC_EmitNodeXForm, 11, 3,
16280 OPC_EmitConvertToTarget1,
16281 OPC_EmitNodeXForm, 12, 5,
16282 OPC_EmitInteger32, 28,
16283 OPC_EmitRegisterI32, 0 ,
16284 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SSAT),
16285 MVT::i32, 5, 4, 0, 6, 7, 8,
16286 0,
16287 0,
16288 56,
16289 OPC_RecordChild1,
16290 OPC_RecordChild2,
16291 OPC_MoveChild2,
16292 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16293 OPC_CheckPredicate, 74,
16294 OPC_MoveParent,
16295 OPC_Scope, 22,
16296 OPC_CheckPatternPredicate, 9,
16297 OPC_EmitConvertToTarget1,
16298 OPC_EmitNodeXForm, 11, 2,
16299 OPC_EmitInteger32, 0,
16300 OPC_EmitInteger32, 28,
16301 OPC_EmitRegisterI32, 0 ,
16302 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SSAT),
16303 MVT::i32, 5, 3, 0, 4, 5, 6,
16304 21,
16305 OPC_CheckPatternPredicate4,
16306 OPC_EmitConvertToTarget1,
16307 OPC_EmitNodeXForm, 11, 2,
16308 OPC_EmitInteger32, 0,
16309 OPC_EmitInteger32, 28,
16310 OPC_EmitRegisterI32, 0 ,
16311 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SSAT),
16312 MVT::i32, 5, 3, 0, 4, 5, 6,
16313 0,
16314 0,
16315 54|128,1,
16316 OPC_CheckChild0Integer, 48|128,56,
16317 OPC_Scope, 126,
16318 OPC_MoveChild1,
16319 OPC_SwitchOpcode , 55, TARGET_VAL(ISD::SHL),
16320 OPC_RecordChild0,
16321 OPC_RecordChild1,
16322 OPC_MoveChild1,
16323 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16324 OPC_CheckPredicate5,
16325 OPC_CheckTypeI32,
16326 OPC_MoveParent,
16327 OPC_MoveSibling2,
16328 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16329 OPC_RecordNode,
16330 OPC_CheckPredicate5,
16331 OPC_MoveParent,
16332 OPC_Scope, 18,
16333 OPC_CheckPatternPredicate, 9,
16334 OPC_EmitConvertToTarget2,
16335 OPC_EmitConvertToTarget1,
16336 OPC_EmitInteger32, 28,
16337 OPC_EmitRegisterI32, 0 ,
16338 OPC_MorphNodeTo1None, TARGET_VAL(ARM::USAT),
16339 MVT::i32, 5, 3, 0, 4, 5, 6,
16340 17,
16341 OPC_CheckPatternPredicate4,
16342 OPC_EmitConvertToTarget2,
16343 OPC_EmitConvertToTarget1,
16344 OPC_EmitInteger32, 28,
16345 OPC_EmitRegisterI32, 0 ,
16346 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2USAT),
16347 MVT::i32, 5, 3, 0, 4, 5, 6,
16348 0,
16349 62, TARGET_VAL(ISD::SRA),
16350 OPC_RecordChild0,
16351 OPC_RecordChild1,
16352 OPC_MoveChild1,
16353 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16354 OPC_CheckPredicate, 19,
16355 OPC_CheckTypeI32,
16356 OPC_MoveParent,
16357 OPC_MoveSibling2,
16358 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16359 OPC_RecordNode,
16360 OPC_CheckPredicate5,
16361 OPC_MoveParent,
16362 OPC_Scope, 21,
16363 OPC_CheckPatternPredicate, 9,
16364 OPC_EmitConvertToTarget2,
16365 OPC_EmitConvertToTarget1,
16366 OPC_EmitNodeXForm, 12, 4,
16367 OPC_EmitInteger32, 28,
16368 OPC_EmitRegisterI32, 0 ,
16369 OPC_MorphNodeTo1None, TARGET_VAL(ARM::USAT),
16370 MVT::i32, 5, 3, 0, 5, 6, 7,
16371 20,
16372 OPC_CheckPatternPredicate4,
16373 OPC_EmitConvertToTarget2,
16374 OPC_EmitConvertToTarget1,
16375 OPC_EmitNodeXForm, 12, 4,
16376 OPC_EmitInteger32, 28,
16377 OPC_EmitRegisterI32, 0 ,
16378 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2USAT),
16379 MVT::i32, 5, 3, 0, 5, 6, 7,
16380 0,
16381 0,
16382 49,
16383 OPC_RecordChild1,
16384 OPC_RecordChild2,
16385 OPC_MoveChild2,
16386 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16387 OPC_CheckPredicate5,
16388 OPC_MoveParent,
16389 OPC_Scope, 19,
16390 OPC_CheckPatternPredicate, 9,
16391 OPC_EmitConvertToTarget1,
16392 OPC_EmitInteger32, 0,
16393 OPC_EmitInteger32, 28,
16394 OPC_EmitRegisterI32, 0 ,
16395 OPC_MorphNodeTo1None, TARGET_VAL(ARM::USAT),
16396 MVT::i32, 5, 2, 0, 3, 4, 5,
16397 18,
16398 OPC_CheckPatternPredicate4,
16399 OPC_EmitConvertToTarget1,
16400 OPC_EmitInteger32, 0,
16401 OPC_EmitInteger32, 28,
16402 OPC_EmitRegisterI32, 0 ,
16403 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2USAT),
16404 MVT::i32, 5, 2, 0, 3, 4, 5,
16405 0,
16406 0,
16407 2|128,1,
16408 OPC_CheckChild0Integer, 22|128,55,
16409 OPC_Scope, 44,
16410 OPC_RecordChild1,
16411 OPC_MoveChild2,
16412 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
16413 OPC_CheckChild0Integer, 22|128,55,
16414 OPC_RecordChild1,
16415 OPC_CheckChild2Same, 1,
16416 OPC_MoveParent,
16417 OPC_Scope, 14,
16418 OPC_CheckPatternPredicate3,
16419 OPC_EmitInteger32, 28,
16420 OPC_EmitRegisterI32, 0 ,
16421 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QDADD),
16422 MVT::i32, 4, 0, 1, 2, 3,
16423 14,
16424 OPC_CheckPatternPredicate5,
16425 OPC_EmitInteger32, 28,
16426 OPC_EmitRegisterI32, 0 ,
16427 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QDADD),
16428 MVT::i32, 4, 0, 1, 2, 3,
16429 0,
16430 44,
16431 OPC_MoveChild1,
16432 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
16433 OPC_CheckChild0Integer, 22|128,55,
16434 OPC_RecordChild1,
16435 OPC_CheckChild2Same, 0,
16436 OPC_MoveParent,
16437 OPC_RecordChild2,
16438 OPC_Scope, 14,
16439 OPC_CheckPatternPredicate3,
16440 OPC_EmitInteger32, 28,
16441 OPC_EmitRegisterI32, 0 ,
16442 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QDADD),
16443 MVT::i32, 4, 1, 0, 2, 3,
16444 14,
16445 OPC_CheckPatternPredicate5,
16446 OPC_EmitInteger32, 28,
16447 OPC_EmitRegisterI32, 0 ,
16448 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QDADD),
16449 MVT::i32, 4, 1, 0, 2, 3,
16450 0,
16451 34,
16452 OPC_RecordChild1,
16453 OPC_RecordChild2,
16454 OPC_Scope, 14,
16455 OPC_CheckPatternPredicate3,
16456 OPC_EmitInteger32, 28,
16457 OPC_EmitRegisterI32, 0 ,
16458 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QADD),
16459 MVT::i32, 4, 0, 1, 2, 3,
16460 14,
16461 OPC_CheckPatternPredicate5,
16462 OPC_EmitInteger32, 28,
16463 OPC_EmitRegisterI32, 0 ,
16464 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QADD),
16465 MVT::i32, 4, 0, 1, 2, 3,
16466 0,
16467 0,
16468 84,
16469 OPC_CheckChild0Integer, 32|128,55,
16470 OPC_RecordChild1,
16471 OPC_Scope, 43,
16472 OPC_MoveChild2,
16473 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
16474 OPC_CheckChild0Integer, 22|128,55,
16475 OPC_RecordChild1,
16476 OPC_CheckChild2Same, 1,
16477 OPC_MoveParent,
16478 OPC_Scope, 14,
16479 OPC_CheckPatternPredicate3,
16480 OPC_EmitInteger32, 28,
16481 OPC_EmitRegisterI32, 0 ,
16482 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QDSUB),
16483 MVT::i32, 4, 0, 1, 2, 3,
16484 14,
16485 OPC_CheckPatternPredicate5,
16486 OPC_EmitInteger32, 28,
16487 OPC_EmitRegisterI32, 0 ,
16488 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QDSUB),
16489 MVT::i32, 4, 0, 1, 2, 3,
16490 0,
16491 33,
16492 OPC_RecordChild2,
16493 OPC_Scope, 14,
16494 OPC_CheckPatternPredicate3,
16495 OPC_EmitInteger32, 28,
16496 OPC_EmitRegisterI32, 0 ,
16497 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QSUB),
16498 MVT::i32, 4, 0, 1, 2, 3,
16499 14,
16500 OPC_CheckPatternPredicate5,
16501 OPC_EmitInteger32, 28,
16502 OPC_EmitRegisterI32, 0 ,
16503 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QSUB),
16504 MVT::i32, 4, 0, 1, 2, 3,
16505 0,
16506 0,
16507 101,
16508 OPC_CheckChild0Integer, 10|128,56,
16509 OPC_Scope, 56,
16510 OPC_MoveChild1,
16511 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
16512 OPC_RecordChild0,
16513 OPC_RecordChild1,
16514 OPC_MoveChild1,
16515 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16516 OPC_CheckPredicate, 12,
16517 OPC_CheckTypeI32,
16518 OPC_MoveParent,
16519 OPC_MoveParent,
16520 OPC_Scope, 19,
16521 OPC_CheckPatternPredicate, 9,
16522 OPC_EmitConvertToTarget1,
16523 OPC_EmitNodeXForm, 2, 2,
16524 OPC_EmitInteger32, 28,
16525 OPC_EmitRegisterI32, 0 ,
16526 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTB16),
16527 MVT::i32, 4, 0, 3, 4, 5,
16528 18,
16529 OPC_CheckPatternPredicate5,
16530 OPC_EmitConvertToTarget1,
16531 OPC_EmitNodeXForm, 2, 2,
16532 OPC_EmitInteger32, 28,
16533 OPC_EmitRegisterI32, 0 ,
16534 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTB16),
16535 MVT::i32, 4, 0, 3, 4, 5,
16536 0,
16537 38,
16538 OPC_RecordChild1,
16539 OPC_Scope, 17,
16540 OPC_CheckPatternPredicate, 9,
16541 OPC_EmitInteger32, 0,
16542 OPC_EmitInteger32, 28,
16543 OPC_EmitRegisterI32, 0 ,
16544 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTB16),
16545 MVT::i32, 4, 0, 1, 2, 3,
16546 16,
16547 OPC_CheckPatternPredicate5,
16548 OPC_EmitInteger32, 0,
16549 OPC_EmitInteger32, 28,
16550 OPC_EmitRegisterI32, 0 ,
16551 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTB16),
16552 MVT::i32, 4, 0, 1, 2, 3,
16553 0,
16554 0,
16555 106,
16556 OPC_CheckChild0Integer, 8|128,56,
16557 OPC_RecordChild1,
16558 OPC_Scope, 58,
16559 OPC_MoveChild2,
16560 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
16561 OPC_RecordChild0,
16562 OPC_RecordChild1,
16563 OPC_MoveChild1,
16564 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
16565 OPC_CheckPredicate, 12,
16566 OPC_CheckTypeI32,
16567 OPC_MoveParent,
16568 OPC_MoveParent,
16569 OPC_Scope, 20,
16570 OPC_CheckPatternPredicate, 9,
16571 OPC_EmitConvertToTarget2,
16572 OPC_EmitNodeXForm, 2, 3,
16573 OPC_EmitInteger32, 28,
16574 OPC_EmitRegisterI32, 0 ,
16575 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAB16),
16576 MVT::i32, 5, 0, 1, 4, 5, 6,
16577 19,
16578 OPC_CheckPatternPredicate5,
16579 OPC_EmitConvertToTarget2,
16580 OPC_EmitNodeXForm, 2, 3,
16581 OPC_EmitInteger32, 28,
16582 OPC_EmitRegisterI32, 0 ,
16583 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAB16),
16584 MVT::i32, 5, 0, 1, 4, 5, 6,
16585 0,
16586 40,
16587 OPC_RecordChild2,
16588 OPC_Scope, 18,
16589 OPC_CheckPatternPredicate, 9,
16590 OPC_EmitInteger32, 0,
16591 OPC_EmitInteger32, 28,
16592 OPC_EmitRegisterI32, 0 ,
16593 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTAB16),
16594 MVT::i32, 5, 0, 1, 2, 3, 4,
16595 17,
16596 OPC_CheckPatternPredicate5,
16597 OPC_EmitInteger32, 0,
16598 OPC_EmitInteger32, 28,
16599 OPC_EmitRegisterI32, 0 ,
16600 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTAB16),
16601 MVT::i32, 5, 0, 1, 2, 3, 4,
16602 0,
16603 0,
16604 24,
16605 OPC_CheckChild0Integer, 108|128,48,
16606 OPC_RecordChild1,
16607 OPC_MoveChild1,
16608 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16609 OPC_MoveSibling2,
16610 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16611 OPC_RecordNode,
16612 OPC_MoveParent,
16613 OPC_CheckPatternPredicate, 52,
16614 OPC_EmitConvertToTarget1,
16615 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_CX1),
16616 MVT::i32, 2, 0, 2,
16617 33,
16618 OPC_CheckChild0Integer, 110|128,48,
16619 OPC_RecordChild1,
16620 OPC_MoveChild1,
16621 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16622 OPC_MoveParent,
16623 OPC_RecordChild2,
16624 OPC_RecordChild3,
16625 OPC_MoveChild3,
16626 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16627 OPC_MoveParent,
16628 OPC_CheckPatternPredicate, 52,
16629 OPC_EmitConvertToTarget2,
16630 OPC_EmitInteger32, 28,
16631 OPC_EmitRegisterI32, 0 ,
16632 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_CX1A),
16633 MVT::i32, 5, 0, 1, 3, 4, 5,
16634 27,
16635 OPC_CheckChild0Integer, 116|128,48,
16636 OPC_RecordChild1,
16637 OPC_MoveChild1,
16638 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16639 OPC_MoveParent,
16640 OPC_RecordChild2,
16641 OPC_RecordChild3,
16642 OPC_MoveChild3,
16643 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16644 OPC_MoveParent,
16645 OPC_CheckPatternPredicate, 52,
16646 OPC_EmitConvertToTarget2,
16647 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_CX2),
16648 MVT::i32, 3, 0, 1, 3,
16649 35,
16650 OPC_CheckChild0Integer, 118|128,48,
16651 OPC_RecordChild1,
16652 OPC_MoveChild1,
16653 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16654 OPC_MoveParent,
16655 OPC_RecordChild2,
16656 OPC_RecordChild3,
16657 OPC_RecordChild4,
16658 OPC_MoveChild4,
16659 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16660 OPC_MoveParent,
16661 OPC_CheckPatternPredicate, 52,
16662 OPC_EmitConvertToTarget3,
16663 OPC_EmitInteger32, 28,
16664 OPC_EmitRegisterI32, 0 ,
16665 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_CX2A),
16666 MVT::i32, 6, 0, 1, 2, 4, 5, 6,
16667 29,
16668 OPC_CheckChild0Integer, 124|128,48,
16669 OPC_RecordChild1,
16670 OPC_MoveChild1,
16671 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16672 OPC_MoveParent,
16673 OPC_RecordChild2,
16674 OPC_RecordChild3,
16675 OPC_RecordChild4,
16676 OPC_MoveChild4,
16677 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16678 OPC_MoveParent,
16679 OPC_CheckPatternPredicate, 52,
16680 OPC_EmitConvertToTarget3,
16681 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_CX3),
16682 MVT::i32, 4, 0, 1, 2, 4,
16683 37,
16684 OPC_CheckChild0Integer, 126|128,48,
16685 OPC_RecordChild1,
16686 OPC_MoveChild1,
16687 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16688 OPC_MoveParent,
16689 OPC_RecordChild2,
16690 OPC_RecordChild3,
16691 OPC_RecordChild4,
16692 OPC_RecordChild5,
16693 OPC_MoveChild5,
16694 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
16695 OPC_MoveParent,
16696 OPC_CheckPatternPredicate, 52,
16697 OPC_EmitConvertToTarget4,
16698 OPC_EmitInteger32, 28,
16699 OPC_EmitRegisterI32, 0 ,
16700 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_CX3A),
16701 MVT::i32, 7, 0, 1, 2, 3, 5, 6, 7,
16702 35|128,1,
16703 OPC_CheckChild0Integer, 124|128,50,
16704 OPC_Scope, 78,
16705 OPC_CheckChild1Integer, 0,
16706 OPC_RecordChild2,
16707 OPC_RecordChild3,
16708 OPC_Scope, 23,
16709 OPC_CheckChild3Type, MVT::v16i8,
16710 OPC_RecordChild4,
16711 OPC_CheckChild4Type, MVT::v16i8,
16712 OPC_CheckPatternPredicate0,
16713 OPC_EmitInteger32, 0,
16714 OPC_EmitRegisterI32, 0 ,
16715 OPC_EmitRegisterI32, 0 ,
16716 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVs8),
16717 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
16718 23,
16719 OPC_CheckChild3Type, MVT::v8i16,
16720 OPC_RecordChild4,
16721 OPC_CheckChild4Type, MVT::v8i16,
16722 OPC_CheckPatternPredicate0,
16723 OPC_EmitInteger32, 0,
16724 OPC_EmitRegisterI32, 0 ,
16725 OPC_EmitRegisterI32, 0 ,
16726 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVs16),
16727 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
16728 23,
16729 OPC_CheckChild3Type, MVT::v4i32,
16730 OPC_RecordChild4,
16731 OPC_CheckChild4Type, MVT::v4i32,
16732 OPC_CheckPatternPredicate0,
16733 OPC_EmitInteger32, 0,
16734 OPC_EmitRegisterI32, 0 ,
16735 OPC_EmitRegisterI32, 0 ,
16736 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVs32),
16737 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
16738 0,
16739 78,
16740 OPC_CheckChild1Integer, 2,
16741 OPC_RecordChild2,
16742 OPC_RecordChild3,
16743 OPC_Scope, 23,
16744 OPC_CheckChild3Type, MVT::v16i8,
16745 OPC_RecordChild4,
16746 OPC_CheckChild4Type, MVT::v16i8,
16747 OPC_CheckPatternPredicate0,
16748 OPC_EmitInteger32, 0,
16749 OPC_EmitRegisterI32, 0 ,
16750 OPC_EmitRegisterI32, 0 ,
16751 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVu8),
16752 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
16753 23,
16754 OPC_CheckChild3Type, MVT::v8i16,
16755 OPC_RecordChild4,
16756 OPC_CheckChild4Type, MVT::v8i16,
16757 OPC_CheckPatternPredicate0,
16758 OPC_EmitInteger32, 0,
16759 OPC_EmitRegisterI32, 0 ,
16760 OPC_EmitRegisterI32, 0 ,
16761 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVu16),
16762 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
16763 23,
16764 OPC_CheckChild3Type, MVT::v4i32,
16765 OPC_RecordChild4,
16766 OPC_CheckChild4Type, MVT::v4i32,
16767 OPC_CheckPatternPredicate0,
16768 OPC_EmitInteger32, 0,
16769 OPC_EmitRegisterI32, 0 ,
16770 OPC_EmitRegisterI32, 0 ,
16771 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVu32),
16772 MVT::i32, 6, 0, 1, 2, 3, 4, 5,
16773 0,
16774 0,
16775 41|128,1,
16776 OPC_CheckChild0Integer, 126|128,50,
16777 OPC_Scope, 81,
16778 OPC_CheckChild1Integer, 0,
16779 OPC_RecordChild2,
16780 OPC_RecordChild3,
16781 OPC_Scope, 24,
16782 OPC_CheckChild3Type, MVT::v16i8,
16783 OPC_RecordChild4,
16784 OPC_CheckChild4Type, MVT::v16i8,
16785 OPC_RecordChild5,
16786 OPC_CheckChild5Type, MVT::v16i1,
16787 OPC_CheckPatternPredicate0,
16788 OPC_EmitInteger32, 2,
16789 OPC_EmitRegisterI32, 0 ,
16790 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVs8),
16791 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16792 24,
16793 OPC_CheckChild3Type, MVT::v8i16,
16794 OPC_RecordChild4,
16795 OPC_CheckChild4Type, MVT::v8i16,
16796 OPC_RecordChild5,
16797 OPC_CheckChild5Type, MVT::v8i1,
16798 OPC_CheckPatternPredicate0,
16799 OPC_EmitInteger32, 2,
16800 OPC_EmitRegisterI32, 0 ,
16801 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVs16),
16802 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16803 24,
16804 OPC_CheckChild3Type, MVT::v4i32,
16805 OPC_RecordChild4,
16806 OPC_CheckChild4Type, MVT::v4i32,
16807 OPC_RecordChild5,
16808 OPC_CheckChild5Type, MVT::v4i1,
16809 OPC_CheckPatternPredicate0,
16810 OPC_EmitInteger32, 2,
16811 OPC_EmitRegisterI32, 0 ,
16812 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVs32),
16813 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16814 0,
16815 81,
16816 OPC_CheckChild1Integer, 2,
16817 OPC_RecordChild2,
16818 OPC_RecordChild3,
16819 OPC_Scope, 24,
16820 OPC_CheckChild3Type, MVT::v16i8,
16821 OPC_RecordChild4,
16822 OPC_CheckChild4Type, MVT::v16i8,
16823 OPC_RecordChild5,
16824 OPC_CheckChild5Type, MVT::v16i1,
16825 OPC_CheckPatternPredicate0,
16826 OPC_EmitInteger32, 2,
16827 OPC_EmitRegisterI32, 0 ,
16828 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVu8),
16829 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16830 24,
16831 OPC_CheckChild3Type, MVT::v8i16,
16832 OPC_RecordChild4,
16833 OPC_CheckChild4Type, MVT::v8i16,
16834 OPC_RecordChild5,
16835 OPC_CheckChild5Type, MVT::v8i1,
16836 OPC_CheckPatternPredicate0,
16837 OPC_EmitInteger32, 2,
16838 OPC_EmitRegisterI32, 0 ,
16839 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVu16),
16840 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16841 24,
16842 OPC_CheckChild3Type, MVT::v4i32,
16843 OPC_RecordChild4,
16844 OPC_CheckChild4Type, MVT::v4i32,
16845 OPC_RecordChild5,
16846 OPC_CheckChild5Type, MVT::v4i1,
16847 OPC_CheckPatternPredicate0,
16848 OPC_EmitInteger32, 2,
16849 OPC_EmitRegisterI32, 0 ,
16850 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABAVu32),
16851 MVT::i32, 6, 0, 1, 2, 4, 3, 5,
16852 0,
16853 0,
16854 13|128,1,
16855 OPC_CheckChild0Integer, 0|128,50,
16856 OPC_RecordChild1,
16857 OPC_Scope, 44,
16858 OPC_CheckChild1Type, MVT::v16i8,
16859 OPC_Scope, 19,
16860 OPC_CheckChild2Integer, 0,
16861 OPC_RecordChild3,
16862 OPC_CheckChild3Type, MVT::v16i1,
16863 OPC_CheckPatternPredicate0,
16864 OPC_EmitInteger32, 2,
16865 OPC_EmitRegisterI32, 0 ,
16866 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs8no_acc),
16867 MVT::i32, 4, 0, 2, 1, 3,
16868 19,
16869 OPC_CheckChild2Integer, 2,
16870 OPC_RecordChild3,
16871 OPC_CheckChild3Type, MVT::v16i1,
16872 OPC_CheckPatternPredicate0,
16873 OPC_EmitInteger32, 2,
16874 OPC_EmitRegisterI32, 0 ,
16875 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8no_acc),
16876 MVT::i32, 4, 0, 2, 1, 3,
16877 0,
16878 44,
16879 OPC_CheckChild1Type, MVT::v8i16,
16880 OPC_Scope, 19,
16881 OPC_CheckChild2Integer, 0,
16882 OPC_RecordChild3,
16883 OPC_CheckChild3Type, MVT::v8i1,
16884 OPC_CheckPatternPredicate0,
16885 OPC_EmitInteger32, 2,
16886 OPC_EmitRegisterI32, 0 ,
16887 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs16no_acc),
16888 MVT::i32, 4, 0, 2, 1, 3,
16889 19,
16890 OPC_CheckChild2Integer, 2,
16891 OPC_RecordChild3,
16892 OPC_CheckChild3Type, MVT::v8i1,
16893 OPC_CheckPatternPredicate0,
16894 OPC_EmitInteger32, 2,
16895 OPC_EmitRegisterI32, 0 ,
16896 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16no_acc),
16897 MVT::i32, 4, 0, 2, 1, 3,
16898 0,
16899 44,
16900 OPC_CheckChild1Type, MVT::v4i32,
16901 OPC_Scope, 19,
16902 OPC_CheckChild2Integer, 0,
16903 OPC_RecordChild3,
16904 OPC_CheckChild3Type, MVT::v4i1,
16905 OPC_CheckPatternPredicate0,
16906 OPC_EmitInteger32, 2,
16907 OPC_EmitRegisterI32, 0 ,
16908 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs32no_acc),
16909 MVT::i32, 4, 0, 2, 1, 3,
16910 19,
16911 OPC_CheckChild2Integer, 2,
16912 OPC_RecordChild3,
16913 OPC_CheckChild3Type, MVT::v4i1,
16914 OPC_CheckPatternPredicate0,
16915 OPC_EmitInteger32, 2,
16916 OPC_EmitRegisterI32, 0 ,
16917 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32no_acc),
16918 MVT::i32, 4, 0, 2, 1, 3,
16919 0,
16920 0,
16921 14|128,1,
16922 OPC_CheckChild0Integer, 54|128,50,
16923 OPC_RecordChild1,
16924 OPC_RecordChild2,
16925 OPC_Scope, 44,
16926 OPC_CheckChild2Type, MVT::v16i8,
16927 OPC_Scope, 19,
16928 OPC_CheckChild3Integer, 0,
16929 OPC_CheckPatternPredicate0,
16930 OPC_EmitInteger32, 0,
16931 OPC_EmitRegisterI32, 0 ,
16932 OPC_EmitRegisterI32, 0 ,
16933 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs8),
16934 MVT::i32, 5, 0, 1, 2, 3, 4,
16935 19,
16936 OPC_CheckChild3Integer, 2,
16937 OPC_CheckPatternPredicate0,
16938 OPC_EmitInteger32, 0,
16939 OPC_EmitRegisterI32, 0 ,
16940 OPC_EmitRegisterI32, 0 ,
16941 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu8),
16942 MVT::i32, 5, 0, 1, 2, 3, 4,
16943 0,
16944 44,
16945 OPC_CheckChild2Type, MVT::v8i16,
16946 OPC_Scope, 19,
16947 OPC_CheckChild3Integer, 0,
16948 OPC_CheckPatternPredicate0,
16949 OPC_EmitInteger32, 0,
16950 OPC_EmitRegisterI32, 0 ,
16951 OPC_EmitRegisterI32, 0 ,
16952 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs16),
16953 MVT::i32, 5, 0, 1, 2, 3, 4,
16954 19,
16955 OPC_CheckChild3Integer, 2,
16956 OPC_CheckPatternPredicate0,
16957 OPC_EmitInteger32, 0,
16958 OPC_EmitRegisterI32, 0 ,
16959 OPC_EmitRegisterI32, 0 ,
16960 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu16),
16961 MVT::i32, 5, 0, 1, 2, 3, 4,
16962 0,
16963 44,
16964 OPC_CheckChild2Type, MVT::v4i32,
16965 OPC_Scope, 19,
16966 OPC_CheckChild3Integer, 0,
16967 OPC_CheckPatternPredicate0,
16968 OPC_EmitInteger32, 0,
16969 OPC_EmitRegisterI32, 0 ,
16970 OPC_EmitRegisterI32, 0 ,
16971 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs32),
16972 MVT::i32, 5, 0, 1, 2, 3, 4,
16973 19,
16974 OPC_CheckChild3Integer, 2,
16975 OPC_CheckPatternPredicate0,
16976 OPC_EmitInteger32, 0,
16977 OPC_EmitRegisterI32, 0 ,
16978 OPC_EmitRegisterI32, 0 ,
16979 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu32),
16980 MVT::i32, 5, 0, 1, 2, 3, 4,
16981 0,
16982 0,
16983 20|128,1,
16984 OPC_CheckChild0Integer, 56|128,50,
16985 OPC_RecordChild1,
16986 OPC_RecordChild2,
16987 OPC_Scope, 46,
16988 OPC_CheckChild2Type, MVT::v16i8,
16989 OPC_Scope, 20,
16990 OPC_CheckChild3Integer, 0,
16991 OPC_RecordChild4,
16992 OPC_CheckChild4Type, MVT::v16i1,
16993 OPC_CheckPatternPredicate0,
16994 OPC_EmitInteger32, 2,
16995 OPC_EmitRegisterI32, 0 ,
16996 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs8),
16997 MVT::i32, 5, 0, 1, 3, 2, 4,
16998 20,
16999 OPC_CheckChild3Integer, 2,
17000 OPC_RecordChild4,
17001 OPC_CheckChild4Type, MVT::v16i1,
17002 OPC_CheckPatternPredicate0,
17003 OPC_EmitInteger32, 2,
17004 OPC_EmitRegisterI32, 0 ,
17005 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu8),
17006 MVT::i32, 5, 0, 1, 3, 2, 4,
17007 0,
17008 46,
17009 OPC_CheckChild2Type, MVT::v8i16,
17010 OPC_Scope, 20,
17011 OPC_CheckChild3Integer, 0,
17012 OPC_RecordChild4,
17013 OPC_CheckChild4Type, MVT::v8i1,
17014 OPC_CheckPatternPredicate0,
17015 OPC_EmitInteger32, 2,
17016 OPC_EmitRegisterI32, 0 ,
17017 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs16),
17018 MVT::i32, 5, 0, 1, 3, 2, 4,
17019 20,
17020 OPC_CheckChild3Integer, 2,
17021 OPC_RecordChild4,
17022 OPC_CheckChild4Type, MVT::v8i1,
17023 OPC_CheckPatternPredicate0,
17024 OPC_EmitInteger32, 2,
17025 OPC_EmitRegisterI32, 0 ,
17026 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu16),
17027 MVT::i32, 5, 0, 1, 3, 2, 4,
17028 0,
17029 46,
17030 OPC_CheckChild2Type, MVT::v4i32,
17031 OPC_Scope, 20,
17032 OPC_CheckChild3Integer, 0,
17033 OPC_RecordChild4,
17034 OPC_CheckChild4Type, MVT::v4i1,
17035 OPC_CheckPatternPredicate0,
17036 OPC_EmitInteger32, 2,
17037 OPC_EmitRegisterI32, 0 ,
17038 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs32),
17039 MVT::i32, 5, 0, 1, 3, 2, 4,
17040 20,
17041 OPC_CheckChild3Integer, 2,
17042 OPC_RecordChild4,
17043 OPC_CheckChild4Type, MVT::v4i1,
17044 OPC_CheckPatternPredicate0,
17045 OPC_EmitInteger32, 2,
17046 OPC_EmitRegisterI32, 0 ,
17047 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu32),
17048 MVT::i32, 5, 0, 1, 3, 2, 4,
17049 0,
17050 0,
17051 14|128,1,
17052 OPC_CheckChild0Integer, 36|128,50,
17053 OPC_RecordChild1,
17054 OPC_RecordChild2,
17055 OPC_Scope, 44,
17056 OPC_CheckChild2Type, MVT::v16i8,
17057 OPC_Scope, 19,
17058 OPC_CheckChild3Integer, 0,
17059 OPC_CheckPatternPredicate0,
17060 OPC_EmitInteger32, 0,
17061 OPC_EmitRegisterI32, 0 ,
17062 OPC_EmitRegisterI32, 0 ,
17063 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs8),
17064 MVT::i32, 5, 0, 1, 2, 3, 4,
17065 19,
17066 OPC_CheckChild3Integer, 2,
17067 OPC_CheckPatternPredicate0,
17068 OPC_EmitInteger32, 0,
17069 OPC_EmitRegisterI32, 0 ,
17070 OPC_EmitRegisterI32, 0 ,
17071 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu8),
17072 MVT::i32, 5, 0, 1, 2, 3, 4,
17073 0,
17074 44,
17075 OPC_CheckChild2Type, MVT::v8i16,
17076 OPC_Scope, 19,
17077 OPC_CheckChild3Integer, 0,
17078 OPC_CheckPatternPredicate0,
17079 OPC_EmitInteger32, 0,
17080 OPC_EmitRegisterI32, 0 ,
17081 OPC_EmitRegisterI32, 0 ,
17082 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs16),
17083 MVT::i32, 5, 0, 1, 2, 3, 4,
17084 19,
17085 OPC_CheckChild3Integer, 2,
17086 OPC_CheckPatternPredicate0,
17087 OPC_EmitInteger32, 0,
17088 OPC_EmitRegisterI32, 0 ,
17089 OPC_EmitRegisterI32, 0 ,
17090 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu16),
17091 MVT::i32, 5, 0, 1, 2, 3, 4,
17092 0,
17093 44,
17094 OPC_CheckChild2Type, MVT::v4i32,
17095 OPC_Scope, 19,
17096 OPC_CheckChild3Integer, 0,
17097 OPC_CheckPatternPredicate0,
17098 OPC_EmitInteger32, 0,
17099 OPC_EmitRegisterI32, 0 ,
17100 OPC_EmitRegisterI32, 0 ,
17101 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs32),
17102 MVT::i32, 5, 0, 1, 2, 3, 4,
17103 19,
17104 OPC_CheckChild3Integer, 2,
17105 OPC_CheckPatternPredicate0,
17106 OPC_EmitInteger32, 0,
17107 OPC_EmitRegisterI32, 0 ,
17108 OPC_EmitRegisterI32, 0 ,
17109 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu32),
17110 MVT::i32, 5, 0, 1, 2, 3, 4,
17111 0,
17112 0,
17113 20|128,1,
17114 OPC_CheckChild0Integer, 38|128,50,
17115 OPC_RecordChild1,
17116 OPC_RecordChild2,
17117 OPC_Scope, 46,
17118 OPC_CheckChild2Type, MVT::v16i8,
17119 OPC_Scope, 20,
17120 OPC_CheckChild3Integer, 0,
17121 OPC_RecordChild4,
17122 OPC_CheckChild4Type, MVT::v16i1,
17123 OPC_CheckPatternPredicate0,
17124 OPC_EmitInteger32, 2,
17125 OPC_EmitRegisterI32, 0 ,
17126 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs8),
17127 MVT::i32, 5, 0, 1, 3, 2, 4,
17128 20,
17129 OPC_CheckChild3Integer, 2,
17130 OPC_RecordChild4,
17131 OPC_CheckChild4Type, MVT::v16i1,
17132 OPC_CheckPatternPredicate0,
17133 OPC_EmitInteger32, 2,
17134 OPC_EmitRegisterI32, 0 ,
17135 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu8),
17136 MVT::i32, 5, 0, 1, 3, 2, 4,
17137 0,
17138 46,
17139 OPC_CheckChild2Type, MVT::v8i16,
17140 OPC_Scope, 20,
17141 OPC_CheckChild3Integer, 0,
17142 OPC_RecordChild4,
17143 OPC_CheckChild4Type, MVT::v8i1,
17144 OPC_CheckPatternPredicate0,
17145 OPC_EmitInteger32, 2,
17146 OPC_EmitRegisterI32, 0 ,
17147 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs16),
17148 MVT::i32, 5, 0, 1, 3, 2, 4,
17149 20,
17150 OPC_CheckChild3Integer, 2,
17151 OPC_RecordChild4,
17152 OPC_CheckChild4Type, MVT::v8i1,
17153 OPC_CheckPatternPredicate0,
17154 OPC_EmitInteger32, 2,
17155 OPC_EmitRegisterI32, 0 ,
17156 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu16),
17157 MVT::i32, 5, 0, 1, 3, 2, 4,
17158 0,
17159 46,
17160 OPC_CheckChild2Type, MVT::v4i32,
17161 OPC_Scope, 20,
17162 OPC_CheckChild3Integer, 0,
17163 OPC_RecordChild4,
17164 OPC_CheckChild4Type, MVT::v4i1,
17165 OPC_CheckPatternPredicate0,
17166 OPC_EmitInteger32, 2,
17167 OPC_EmitRegisterI32, 0 ,
17168 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs32),
17169 MVT::i32, 5, 0, 1, 3, 2, 4,
17170 20,
17171 OPC_CheckChild3Integer, 2,
17172 OPC_RecordChild4,
17173 OPC_CheckChild4Type, MVT::v4i1,
17174 OPC_CheckPatternPredicate0,
17175 OPC_EmitInteger32, 2,
17176 OPC_EmitRegisterI32, 0 ,
17177 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu32),
17178 MVT::i32, 5, 0, 1, 3, 2, 4,
17179 0,
17180 0,
17181 53,
17182 OPC_CheckChild0Integer, 112|128,55,
17183 OPC_RecordChild1,
17184 OPC_RecordChild2,
17185 OPC_MoveChild2,
17186 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
17187 OPC_CheckPredicate, 100,
17188 OPC_MoveParent,
17189 OPC_Scope, 19,
17190 OPC_CheckPatternPredicate, 9,
17191 OPC_EmitConvertToTarget1,
17192 OPC_EmitNodeXForm, 13, 2,
17193 OPC_EmitInteger32, 28,
17194 OPC_EmitRegisterI32, 0 ,
17195 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SSAT16),
17196 MVT::i32, 4, 3, 0, 4, 5,
17197 18,
17198 OPC_CheckPatternPredicate4,
17199 OPC_EmitConvertToTarget1,
17200 OPC_EmitNodeXForm, 13, 2,
17201 OPC_EmitInteger32, 28,
17202 OPC_EmitRegisterI32, 0 ,
17203 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SSAT16),
17204 MVT::i32, 4, 3, 0, 4, 5,
17205 0,
17206 47,
17207 OPC_CheckChild0Integer, 50|128,56,
17208 OPC_RecordChild1,
17209 OPC_RecordChild2,
17210 OPC_MoveChild2,
17211 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
17212 OPC_CheckPredicate, 23,
17213 OPC_MoveParent,
17214 OPC_Scope, 16,
17215 OPC_CheckPatternPredicate, 9,
17216 OPC_EmitConvertToTarget1,
17217 OPC_EmitInteger32, 28,
17218 OPC_EmitRegisterI32, 0 ,
17219 OPC_MorphNodeTo1None, TARGET_VAL(ARM::USAT16),
17220 MVT::i32, 4, 2, 0, 3, 4,
17221 15,
17222 OPC_CheckPatternPredicate4,
17223 OPC_EmitConvertToTarget1,
17224 OPC_EmitInteger32, 28,
17225 OPC_EmitRegisterI32, 0 ,
17226 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2USAT16),
17227 MVT::i32, 4, 2, 0, 3, 4,
17228 0,
17229 26,
17230 OPC_CheckChild0Integer, 102|128,50,
17231 OPC_RecordChild1,
17232 OPC_RecordChild2,
17233 OPC_MoveChild2,
17234 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
17235 OPC_MoveParent,
17236 OPC_CheckPatternPredicate, 36,
17237 OPC_EmitConvertToTarget1,
17238 OPC_EmitInteger32, 28,
17239 OPC_EmitRegisterI32, 0 ,
17240 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_SQSHL),
17241 MVT::i32, 4, 0, 2, 3, 4,
17242 26,
17243 OPC_CheckChild0Integer, 106|128,50,
17244 OPC_RecordChild1,
17245 OPC_RecordChild2,
17246 OPC_MoveChild2,
17247 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
17248 OPC_MoveParent,
17249 OPC_CheckPatternPredicate, 36,
17250 OPC_EmitConvertToTarget1,
17251 OPC_EmitInteger32, 28,
17252 OPC_EmitRegisterI32, 0 ,
17253 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_SRSHR),
17254 MVT::i32, 4, 0, 2, 3, 4,
17255 26,
17256 OPC_CheckChild0Integer, 116|128,50,
17257 OPC_RecordChild1,
17258 OPC_RecordChild2,
17259 OPC_MoveChild2,
17260 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
17261 OPC_MoveParent,
17262 OPC_CheckPatternPredicate, 36,
17263 OPC_EmitConvertToTarget1,
17264 OPC_EmitInteger32, 28,
17265 OPC_EmitRegisterI32, 0 ,
17266 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_UQSHL),
17267 MVT::i32, 4, 0, 2, 3, 4,
17268 26,
17269 OPC_CheckChild0Integer, 120|128,50,
17270 OPC_RecordChild1,
17271 OPC_RecordChild2,
17272 OPC_MoveChild2,
17273 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
17274 OPC_MoveParent,
17275 OPC_CheckPatternPredicate, 36,
17276 OPC_EmitConvertToTarget1,
17277 OPC_EmitInteger32, 28,
17278 OPC_EmitRegisterI32, 0 ,
17279 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_URSHR),
17280 MVT::i32, 4, 0, 2, 3, 4,
17281 37,
17282 OPC_CheckChild0Integer, 26|128,55,
17283 OPC_RecordChild1,
17284 OPC_RecordChild2,
17285 OPC_Scope, 14,
17286 OPC_CheckPatternPredicate3,
17287 OPC_EmitInteger32, 28,
17288 OPC_EmitRegisterI32, 0 ,
17289 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QADD8),
17290 MVT::i32, 4, 0, 1, 2, 3,
17291 14,
17292 OPC_CheckPatternPredicate5,
17293 OPC_EmitInteger32, 28,
17294 OPC_EmitRegisterI32, 0 ,
17295 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QADD8),
17296 MVT::i32, 4, 0, 1, 2, 3,
17297 0,
17298 37,
17299 OPC_CheckChild0Integer, 24|128,55,
17300 OPC_RecordChild1,
17301 OPC_RecordChild2,
17302 OPC_Scope, 14,
17303 OPC_CheckPatternPredicate3,
17304 OPC_EmitInteger32, 28,
17305 OPC_EmitRegisterI32, 0 ,
17306 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QADD16),
17307 MVT::i32, 4, 0, 1, 2, 3,
17308 14,
17309 OPC_CheckPatternPredicate5,
17310 OPC_EmitInteger32, 28,
17311 OPC_EmitRegisterI32, 0 ,
17312 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QADD16),
17313 MVT::i32, 4, 0, 1, 2, 3,
17314 0,
17315 37,
17316 OPC_CheckChild0Integer, 34|128,55,
17317 OPC_RecordChild1,
17318 OPC_RecordChild2,
17319 OPC_Scope, 14,
17320 OPC_CheckPatternPredicate3,
17321 OPC_EmitInteger32, 28,
17322 OPC_EmitRegisterI32, 0 ,
17323 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QSUB16),
17324 MVT::i32, 4, 0, 1, 2, 3,
17325 14,
17326 OPC_CheckPatternPredicate5,
17327 OPC_EmitInteger32, 28,
17328 OPC_EmitRegisterI32, 0 ,
17329 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QSUB16),
17330 MVT::i32, 4, 0, 1, 2, 3,
17331 0,
17332 37,
17333 OPC_CheckChild0Integer, 36|128,55,
17334 OPC_RecordChild1,
17335 OPC_RecordChild2,
17336 OPC_Scope, 14,
17337 OPC_CheckPatternPredicate3,
17338 OPC_EmitInteger32, 28,
17339 OPC_EmitRegisterI32, 0 ,
17340 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QSUB8),
17341 MVT::i32, 4, 0, 1, 2, 3,
17342 14,
17343 OPC_CheckPatternPredicate5,
17344 OPC_EmitInteger32, 28,
17345 OPC_EmitRegisterI32, 0 ,
17346 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QSUB8),
17347 MVT::i32, 4, 0, 1, 2, 3,
17348 0,
17349 37,
17350 OPC_CheckChild0Integer, 32|128,56,
17351 OPC_RecordChild1,
17352 OPC_RecordChild2,
17353 OPC_Scope, 14,
17354 OPC_CheckPatternPredicate3,
17355 OPC_EmitInteger32, 28,
17356 OPC_EmitRegisterI32, 0 ,
17357 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UQADD16),
17358 MVT::i32, 4, 0, 1, 2, 3,
17359 14,
17360 OPC_CheckPatternPredicate5,
17361 OPC_EmitInteger32, 28,
17362 OPC_EmitRegisterI32, 0 ,
17363 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UQADD16),
17364 MVT::i32, 4, 0, 1, 2, 3,
17365 0,
17366 37,
17367 OPC_CheckChild0Integer, 34|128,56,
17368 OPC_RecordChild1,
17369 OPC_RecordChild2,
17370 OPC_Scope, 14,
17371 OPC_CheckPatternPredicate3,
17372 OPC_EmitInteger32, 28,
17373 OPC_EmitRegisterI32, 0 ,
17374 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UQADD8),
17375 MVT::i32, 4, 0, 1, 2, 3,
17376 14,
17377 OPC_CheckPatternPredicate5,
17378 OPC_EmitInteger32, 28,
17379 OPC_EmitRegisterI32, 0 ,
17380 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UQADD8),
17381 MVT::i32, 4, 0, 1, 2, 3,
17382 0,
17383 37,
17384 OPC_CheckChild0Integer, 40|128,56,
17385 OPC_RecordChild1,
17386 OPC_RecordChild2,
17387 OPC_Scope, 14,
17388 OPC_CheckPatternPredicate3,
17389 OPC_EmitInteger32, 28,
17390 OPC_EmitRegisterI32, 0 ,
17391 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UQSUB16),
17392 MVT::i32, 4, 0, 1, 2, 3,
17393 14,
17394 OPC_CheckPatternPredicate5,
17395 OPC_EmitInteger32, 28,
17396 OPC_EmitRegisterI32, 0 ,
17397 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UQSUB16),
17398 MVT::i32, 4, 0, 1, 2, 3,
17399 0,
17400 37,
17401 OPC_CheckChild0Integer, 42|128,56,
17402 OPC_RecordChild1,
17403 OPC_RecordChild2,
17404 OPC_Scope, 14,
17405 OPC_CheckPatternPredicate3,
17406 OPC_EmitInteger32, 28,
17407 OPC_EmitRegisterI32, 0 ,
17408 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UQSUB8),
17409 MVT::i32, 4, 0, 1, 2, 3,
17410 14,
17411 OPC_CheckPatternPredicate5,
17412 OPC_EmitInteger32, 28,
17413 OPC_EmitRegisterI32, 0 ,
17414 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UQSUB8),
17415 MVT::i32, 4, 0, 1, 2, 3,
17416 0,
17417 37,
17418 OPC_CheckChild0Integer, 28|128,55,
17419 OPC_RecordChild1,
17420 OPC_RecordChild2,
17421 OPC_Scope, 14,
17422 OPC_CheckPatternPredicate3,
17423 OPC_EmitInteger32, 28,
17424 OPC_EmitRegisterI32, 0 ,
17425 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QASX),
17426 MVT::i32, 4, 0, 1, 2, 3,
17427 14,
17428 OPC_CheckPatternPredicate5,
17429 OPC_EmitInteger32, 28,
17430 OPC_EmitRegisterI32, 0 ,
17431 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QASX),
17432 MVT::i32, 4, 0, 1, 2, 3,
17433 0,
17434 37,
17435 OPC_CheckChild0Integer, 30|128,55,
17436 OPC_RecordChild1,
17437 OPC_RecordChild2,
17438 OPC_Scope, 14,
17439 OPC_CheckPatternPredicate3,
17440 OPC_EmitInteger32, 28,
17441 OPC_EmitRegisterI32, 0 ,
17442 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QSAX),
17443 MVT::i32, 4, 0, 1, 2, 3,
17444 14,
17445 OPC_CheckPatternPredicate5,
17446 OPC_EmitInteger32, 28,
17447 OPC_EmitRegisterI32, 0 ,
17448 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QSAX),
17449 MVT::i32, 4, 0, 1, 2, 3,
17450 0,
17451 37,
17452 OPC_CheckChild0Integer, 36|128,56,
17453 OPC_RecordChild1,
17454 OPC_RecordChild2,
17455 OPC_Scope, 14,
17456 OPC_CheckPatternPredicate3,
17457 OPC_EmitInteger32, 28,
17458 OPC_EmitRegisterI32, 0 ,
17459 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UQASX),
17460 MVT::i32, 4, 0, 1, 2, 3,
17461 14,
17462 OPC_CheckPatternPredicate5,
17463 OPC_EmitInteger32, 28,
17464 OPC_EmitRegisterI32, 0 ,
17465 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UQASX),
17466 MVT::i32, 4, 0, 1, 2, 3,
17467 0,
17468 37,
17469 OPC_CheckChild0Integer, 38|128,56,
17470 OPC_RecordChild1,
17471 OPC_RecordChild2,
17472 OPC_Scope, 14,
17473 OPC_CheckPatternPredicate3,
17474 OPC_EmitInteger32, 28,
17475 OPC_EmitRegisterI32, 0 ,
17476 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UQSAX),
17477 MVT::i32, 4, 0, 1, 2, 3,
17478 14,
17479 OPC_CheckPatternPredicate5,
17480 OPC_EmitInteger32, 28,
17481 OPC_EmitRegisterI32, 0 ,
17482 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UQSAX),
17483 MVT::i32, 4, 0, 1, 2, 3,
17484 0,
17485 37,
17486 OPC_CheckChild0Integer, 52|128,55,
17487 OPC_RecordChild1,
17488 OPC_RecordChild2,
17489 OPC_Scope, 14,
17490 OPC_CheckPatternPredicate3,
17491 OPC_EmitInteger32, 28,
17492 OPC_EmitRegisterI32, 0 ,
17493 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHASX),
17494 MVT::i32, 4, 0, 1, 2, 3,
17495 14,
17496 OPC_CheckPatternPredicate5,
17497 OPC_EmitInteger32, 28,
17498 OPC_EmitRegisterI32, 0 ,
17499 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SHASX),
17500 MVT::i32, 4, 0, 1, 2, 3,
17501 0,
17502 37,
17503 OPC_CheckChild0Integer, 48|128,55,
17504 OPC_RecordChild1,
17505 OPC_RecordChild2,
17506 OPC_Scope, 14,
17507 OPC_CheckPatternPredicate3,
17508 OPC_EmitInteger32, 28,
17509 OPC_EmitRegisterI32, 0 ,
17510 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHADD16),
17511 MVT::i32, 4, 0, 1, 2, 3,
17512 14,
17513 OPC_CheckPatternPredicate5,
17514 OPC_EmitInteger32, 28,
17515 OPC_EmitRegisterI32, 0 ,
17516 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SHADD16),
17517 MVT::i32, 4, 0, 1, 2, 3,
17518 0,
17519 37,
17520 OPC_CheckChild0Integer, 50|128,55,
17521 OPC_RecordChild1,
17522 OPC_RecordChild2,
17523 OPC_Scope, 14,
17524 OPC_CheckPatternPredicate3,
17525 OPC_EmitInteger32, 28,
17526 OPC_EmitRegisterI32, 0 ,
17527 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHADD8),
17528 MVT::i32, 4, 0, 1, 2, 3,
17529 14,
17530 OPC_CheckPatternPredicate5,
17531 OPC_EmitInteger32, 28,
17532 OPC_EmitRegisterI32, 0 ,
17533 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SHADD8),
17534 MVT::i32, 4, 0, 1, 2, 3,
17535 0,
17536 37,
17537 OPC_CheckChild0Integer, 54|128,55,
17538 OPC_RecordChild1,
17539 OPC_RecordChild2,
17540 OPC_Scope, 14,
17541 OPC_CheckPatternPredicate3,
17542 OPC_EmitInteger32, 28,
17543 OPC_EmitRegisterI32, 0 ,
17544 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHSAX),
17545 MVT::i32, 4, 0, 1, 2, 3,
17546 14,
17547 OPC_CheckPatternPredicate5,
17548 OPC_EmitInteger32, 28,
17549 OPC_EmitRegisterI32, 0 ,
17550 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SHSAX),
17551 MVT::i32, 4, 0, 1, 2, 3,
17552 0,
17553 37,
17554 OPC_CheckChild0Integer, 56|128,55,
17555 OPC_RecordChild1,
17556 OPC_RecordChild2,
17557 OPC_Scope, 14,
17558 OPC_CheckPatternPredicate3,
17559 OPC_EmitInteger32, 28,
17560 OPC_EmitRegisterI32, 0 ,
17561 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHSUB16),
17562 MVT::i32, 4, 0, 1, 2, 3,
17563 14,
17564 OPC_CheckPatternPredicate5,
17565 OPC_EmitInteger32, 28,
17566 OPC_EmitRegisterI32, 0 ,
17567 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SHSUB16),
17568 MVT::i32, 4, 0, 1, 2, 3,
17569 0,
17570 37,
17571 OPC_CheckChild0Integer, 58|128,55,
17572 OPC_RecordChild1,
17573 OPC_RecordChild2,
17574 OPC_Scope, 14,
17575 OPC_CheckPatternPredicate3,
17576 OPC_EmitInteger32, 28,
17577 OPC_EmitRegisterI32, 0 ,
17578 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHSUB8),
17579 MVT::i32, 4, 0, 1, 2, 3,
17580 14,
17581 OPC_CheckPatternPredicate5,
17582 OPC_EmitInteger32, 28,
17583 OPC_EmitRegisterI32, 0 ,
17584 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SHSUB8),
17585 MVT::i32, 4, 0, 1, 2, 3,
17586 0,
17587 37,
17588 OPC_CheckChild0Integer, 22|128,56,
17589 OPC_RecordChild1,
17590 OPC_RecordChild2,
17591 OPC_Scope, 14,
17592 OPC_CheckPatternPredicate3,
17593 OPC_EmitInteger32, 28,
17594 OPC_EmitRegisterI32, 0 ,
17595 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UHASX),
17596 MVT::i32, 4, 0, 1, 2, 3,
17597 14,
17598 OPC_CheckPatternPredicate5,
17599 OPC_EmitInteger32, 28,
17600 OPC_EmitRegisterI32, 0 ,
17601 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UHASX),
17602 MVT::i32, 4, 0, 1, 2, 3,
17603 0,
17604 37,
17605 OPC_CheckChild0Integer, 18|128,56,
17606 OPC_RecordChild1,
17607 OPC_RecordChild2,
17608 OPC_Scope, 14,
17609 OPC_CheckPatternPredicate3,
17610 OPC_EmitInteger32, 28,
17611 OPC_EmitRegisterI32, 0 ,
17612 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UHADD16),
17613 MVT::i32, 4, 0, 1, 2, 3,
17614 14,
17615 OPC_CheckPatternPredicate5,
17616 OPC_EmitInteger32, 28,
17617 OPC_EmitRegisterI32, 0 ,
17618 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UHADD16),
17619 MVT::i32, 4, 0, 1, 2, 3,
17620 0,
17621 37,
17622 OPC_CheckChild0Integer, 20|128,56,
17623 OPC_RecordChild1,
17624 OPC_RecordChild2,
17625 OPC_Scope, 14,
17626 OPC_CheckPatternPredicate3,
17627 OPC_EmitInteger32, 28,
17628 OPC_EmitRegisterI32, 0 ,
17629 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UHADD8),
17630 MVT::i32, 4, 0, 1, 2, 3,
17631 14,
17632 OPC_CheckPatternPredicate5,
17633 OPC_EmitInteger32, 28,
17634 OPC_EmitRegisterI32, 0 ,
17635 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UHADD8),
17636 MVT::i32, 4, 0, 1, 2, 3,
17637 0,
17638 37,
17639 OPC_CheckChild0Integer, 24|128,56,
17640 OPC_RecordChild1,
17641 OPC_RecordChild2,
17642 OPC_Scope, 14,
17643 OPC_CheckPatternPredicate3,
17644 OPC_EmitInteger32, 28,
17645 OPC_EmitRegisterI32, 0 ,
17646 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UHSAX),
17647 MVT::i32, 4, 0, 1, 2, 3,
17648 14,
17649 OPC_CheckPatternPredicate5,
17650 OPC_EmitInteger32, 28,
17651 OPC_EmitRegisterI32, 0 ,
17652 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UHSAX),
17653 MVT::i32, 4, 0, 1, 2, 3,
17654 0,
17655 37,
17656 OPC_CheckChild0Integer, 26|128,56,
17657 OPC_RecordChild1,
17658 OPC_RecordChild2,
17659 OPC_Scope, 14,
17660 OPC_CheckPatternPredicate3,
17661 OPC_EmitInteger32, 28,
17662 OPC_EmitRegisterI32, 0 ,
17663 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UHSUB16),
17664 MVT::i32, 4, 0, 1, 2, 3,
17665 14,
17666 OPC_CheckPatternPredicate5,
17667 OPC_EmitInteger32, 28,
17668 OPC_EmitRegisterI32, 0 ,
17669 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UHSUB16),
17670 MVT::i32, 4, 0, 1, 2, 3,
17671 0,
17672 37,
17673 OPC_CheckChild0Integer, 28|128,56,
17674 OPC_RecordChild1,
17675 OPC_RecordChild2,
17676 OPC_Scope, 14,
17677 OPC_CheckPatternPredicate3,
17678 OPC_EmitInteger32, 28,
17679 OPC_EmitRegisterI32, 0 ,
17680 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UHSUB8),
17681 MVT::i32, 4, 0, 1, 2, 3,
17682 14,
17683 OPC_CheckPatternPredicate5,
17684 OPC_EmitInteger32, 28,
17685 OPC_EmitRegisterI32, 0 ,
17686 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UHSUB8),
17687 MVT::i32, 4, 0, 1, 2, 3,
17688 0,
17689 38,
17690 OPC_CheckChild0Integer, 44|128,56,
17691 OPC_RecordChild1,
17692 OPC_RecordChild2,
17693 OPC_Scope, 15,
17694 OPC_CheckPatternPredicate, 9,
17695 OPC_EmitInteger32, 28,
17696 OPC_EmitRegisterI32, 0 ,
17697 OPC_MorphNodeTo1None, TARGET_VAL(ARM::USAD8),
17698 MVT::i32, 4, 0, 1, 2, 3,
17699 14,
17700 OPC_CheckPatternPredicate5,
17701 OPC_EmitInteger32, 28,
17702 OPC_EmitRegisterI32, 0 ,
17703 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2USAD8),
17704 MVT::i32, 4, 0, 1, 2, 3,
17705 0,
17706 41,
17707 OPC_CheckChild0Integer, 46|128,56,
17708 OPC_RecordChild1,
17709 OPC_RecordChild2,
17710 OPC_RecordChild3,
17711 OPC_Scope, 16,
17712 OPC_CheckPatternPredicate, 9,
17713 OPC_EmitInteger32, 28,
17714 OPC_EmitRegisterI32, 0 ,
17715 OPC_MorphNodeTo1None, TARGET_VAL(ARM::USADA8),
17716 MVT::i32, 5, 0, 1, 2, 3, 4,
17717 15,
17718 OPC_CheckPatternPredicate5,
17719 OPC_EmitInteger32, 28,
17720 OPC_EmitRegisterI32, 0 ,
17721 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2USADA8),
17722 MVT::i32, 5, 0, 1, 2, 3, 4,
17723 0,
17724 41,
17725 OPC_CheckChild0Integer, 64|128,55,
17726 OPC_RecordChild1,
17727 OPC_RecordChild2,
17728 OPC_RecordChild3,
17729 OPC_Scope, 16,
17730 OPC_CheckPatternPredicate, 9,
17731 OPC_EmitInteger32, 28,
17732 OPC_EmitRegisterI32, 0 ,
17733 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLAD),
17734 MVT::i32, 5, 0, 1, 2, 3, 4,
17735 15,
17736 OPC_CheckPatternPredicate5,
17737 OPC_EmitInteger32, 28,
17738 OPC_EmitRegisterI32, 0 ,
17739 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLAD),
17740 MVT::i32, 5, 0, 1, 2, 3, 4,
17741 0,
17742 41,
17743 OPC_CheckChild0Integer, 66|128,55,
17744 OPC_RecordChild1,
17745 OPC_RecordChild2,
17746 OPC_RecordChild3,
17747 OPC_Scope, 16,
17748 OPC_CheckPatternPredicate, 9,
17749 OPC_EmitInteger32, 28,
17750 OPC_EmitRegisterI32, 0 ,
17751 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLADX),
17752 MVT::i32, 5, 0, 1, 2, 3, 4,
17753 15,
17754 OPC_CheckPatternPredicate5,
17755 OPC_EmitInteger32, 28,
17756 OPC_EmitRegisterI32, 0 ,
17757 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLADX),
17758 MVT::i32, 5, 0, 1, 2, 3, 4,
17759 0,
17760 41,
17761 OPC_CheckChild0Integer, 80|128,55,
17762 OPC_RecordChild1,
17763 OPC_RecordChild2,
17764 OPC_RecordChild3,
17765 OPC_Scope, 16,
17766 OPC_CheckPatternPredicate, 9,
17767 OPC_EmitInteger32, 28,
17768 OPC_EmitRegisterI32, 0 ,
17769 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLSD),
17770 MVT::i32, 5, 0, 1, 2, 3, 4,
17771 15,
17772 OPC_CheckPatternPredicate5,
17773 OPC_EmitInteger32, 28,
17774 OPC_EmitRegisterI32, 0 ,
17775 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLSD),
17776 MVT::i32, 5, 0, 1, 2, 3, 4,
17777 0,
17778 41,
17779 OPC_CheckChild0Integer, 82|128,55,
17780 OPC_RecordChild1,
17781 OPC_RecordChild2,
17782 OPC_RecordChild3,
17783 OPC_Scope, 16,
17784 OPC_CheckPatternPredicate, 9,
17785 OPC_EmitInteger32, 28,
17786 OPC_EmitRegisterI32, 0 ,
17787 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLSDX),
17788 MVT::i32, 5, 0, 1, 2, 3, 4,
17789 15,
17790 OPC_CheckPatternPredicate5,
17791 OPC_EmitInteger32, 28,
17792 OPC_EmitRegisterI32, 0 ,
17793 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLSDX),
17794 MVT::i32, 5, 0, 1, 2, 3, 4,
17795 0,
17796 38,
17797 OPC_CheckChild0Integer, 88|128,55,
17798 OPC_RecordChild1,
17799 OPC_RecordChild2,
17800 OPC_Scope, 15,
17801 OPC_CheckPatternPredicate, 9,
17802 OPC_EmitInteger32, 28,
17803 OPC_EmitRegisterI32, 0 ,
17804 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMUAD),
17805 MVT::i32, 4, 0, 1, 2, 3,
17806 14,
17807 OPC_CheckPatternPredicate5,
17808 OPC_EmitInteger32, 28,
17809 OPC_EmitRegisterI32, 0 ,
17810 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMUAD),
17811 MVT::i32, 4, 0, 1, 2, 3,
17812 0,
17813 38,
17814 OPC_CheckChild0Integer, 90|128,55,
17815 OPC_RecordChild1,
17816 OPC_RecordChild2,
17817 OPC_Scope, 15,
17818 OPC_CheckPatternPredicate, 9,
17819 OPC_EmitInteger32, 28,
17820 OPC_EmitRegisterI32, 0 ,
17821 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMUADX),
17822 MVT::i32, 4, 0, 1, 2, 3,
17823 14,
17824 OPC_CheckPatternPredicate5,
17825 OPC_EmitInteger32, 28,
17826 OPC_EmitRegisterI32, 0 ,
17827 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMUADX),
17828 MVT::i32, 4, 0, 1, 2, 3,
17829 0,
17830 38,
17831 OPC_CheckChild0Integer, 104|128,55,
17832 OPC_RecordChild1,
17833 OPC_RecordChild2,
17834 OPC_Scope, 15,
17835 OPC_CheckPatternPredicate, 9,
17836 OPC_EmitInteger32, 28,
17837 OPC_EmitRegisterI32, 0 ,
17838 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMUSD),
17839 MVT::i32, 4, 0, 1, 2, 3,
17840 14,
17841 OPC_CheckPatternPredicate5,
17842 OPC_EmitInteger32, 28,
17843 OPC_EmitRegisterI32, 0 ,
17844 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMUSD),
17845 MVT::i32, 4, 0, 1, 2, 3,
17846 0,
17847 38,
17848 OPC_CheckChild0Integer, 106|128,55,
17849 OPC_RecordChild1,
17850 OPC_RecordChild2,
17851 OPC_Scope, 15,
17852 OPC_CheckPatternPredicate, 9,
17853 OPC_EmitInteger32, 28,
17854 OPC_EmitRegisterI32, 0 ,
17855 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMUSDX),
17856 MVT::i32, 4, 0, 1, 2, 3,
17857 14,
17858 OPC_CheckPatternPredicate5,
17859 OPC_EmitInteger32, 28,
17860 OPC_EmitRegisterI32, 0 ,
17861 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMUSDX),
17862 MVT::i32, 4, 0, 1, 2, 3,
17863 0,
17864 27,
17865 OPC_CheckChild0Integer, 58|128,49,
17866 OPC_RecordChild1,
17867 OPC_RecordChild2,
17868 OPC_Scope, 9,
17869 OPC_CheckPatternPredicate, 53,
17870 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CRC32B),
17871 MVT::i32, 2, 0, 1,
17872 9,
17873 OPC_CheckPatternPredicate, 54,
17874 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2CRC32B),
17875 MVT::i32, 2, 0, 1,
17876 0,
17877 27,
17878 OPC_CheckChild0Integer, 60|128,49,
17879 OPC_RecordChild1,
17880 OPC_RecordChild2,
17881 OPC_Scope, 9,
17882 OPC_CheckPatternPredicate, 53,
17883 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CRC32CB),
17884 MVT::i32, 2, 0, 1,
17885 9,
17886 OPC_CheckPatternPredicate, 54,
17887 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2CRC32CB),
17888 MVT::i32, 2, 0, 1,
17889 0,
17890 27,
17891 OPC_CheckChild0Integer, 66|128,49,
17892 OPC_RecordChild1,
17893 OPC_RecordChild2,
17894 OPC_Scope, 9,
17895 OPC_CheckPatternPredicate, 53,
17896 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CRC32H),
17897 MVT::i32, 2, 0, 1,
17898 9,
17899 OPC_CheckPatternPredicate, 54,
17900 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2CRC32H),
17901 MVT::i32, 2, 0, 1,
17902 0,
17903 27,
17904 OPC_CheckChild0Integer, 62|128,49,
17905 OPC_RecordChild1,
17906 OPC_RecordChild2,
17907 OPC_Scope, 9,
17908 OPC_CheckPatternPredicate, 53,
17909 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CRC32CH),
17910 MVT::i32, 2, 0, 1,
17911 9,
17912 OPC_CheckPatternPredicate, 54,
17913 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2CRC32CH),
17914 MVT::i32, 2, 0, 1,
17915 0,
17916 27,
17917 OPC_CheckChild0Integer, 68|128,49,
17918 OPC_RecordChild1,
17919 OPC_RecordChild2,
17920 OPC_Scope, 9,
17921 OPC_CheckPatternPredicate, 53,
17922 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CRC32W),
17923 MVT::i32, 2, 0, 1,
17924 9,
17925 OPC_CheckPatternPredicate, 54,
17926 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2CRC32W),
17927 MVT::i32, 2, 0, 1,
17928 0,
17929 27,
17930 OPC_CheckChild0Integer, 64|128,49,
17931 OPC_RecordChild1,
17932 OPC_RecordChild2,
17933 OPC_Scope, 9,
17934 OPC_CheckPatternPredicate, 53,
17935 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CRC32CW),
17936 MVT::i32, 2, 0, 1,
17937 9,
17938 OPC_CheckPatternPredicate, 54,
17939 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2CRC32CW),
17940 MVT::i32, 2, 0, 1,
17941 0,
17942 38,
17943 OPC_CheckChild0Integer, 92|128,55,
17944 OPC_RecordChild1,
17945 OPC_RecordChild2,
17946 OPC_Scope, 15,
17947 OPC_CheckPatternPredicate, 14,
17948 OPC_EmitInteger32, 28,
17949 OPC_EmitRegisterI32, 0 ,
17950 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULBB),
17951 MVT::i32, 4, 0, 1, 2, 3,
17952 14,
17953 OPC_CheckPatternPredicate5,
17954 OPC_EmitInteger32, 28,
17955 OPC_EmitRegisterI32, 0 ,
17956 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULBB),
17957 MVT::i32, 4, 0, 1, 2, 3,
17958 0,
17959 38,
17960 OPC_CheckChild0Integer, 94|128,55,
17961 OPC_RecordChild1,
17962 OPC_RecordChild2,
17963 OPC_Scope, 15,
17964 OPC_CheckPatternPredicate, 14,
17965 OPC_EmitInteger32, 28,
17966 OPC_EmitRegisterI32, 0 ,
17967 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULBT),
17968 MVT::i32, 4, 0, 1, 2, 3,
17969 14,
17970 OPC_CheckPatternPredicate5,
17971 OPC_EmitInteger32, 28,
17972 OPC_EmitRegisterI32, 0 ,
17973 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULBT),
17974 MVT::i32, 4, 0, 1, 2, 3,
17975 0,
17976 38,
17977 OPC_CheckChild0Integer, 96|128,55,
17978 OPC_RecordChild1,
17979 OPC_RecordChild2,
17980 OPC_Scope, 15,
17981 OPC_CheckPatternPredicate, 14,
17982 OPC_EmitInteger32, 28,
17983 OPC_EmitRegisterI32, 0 ,
17984 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULTB),
17985 MVT::i32, 4, 0, 1, 2, 3,
17986 14,
17987 OPC_CheckPatternPredicate5,
17988 OPC_EmitInteger32, 28,
17989 OPC_EmitRegisterI32, 0 ,
17990 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULTB),
17991 MVT::i32, 4, 0, 1, 2, 3,
17992 0,
17993 38,
17994 OPC_CheckChild0Integer, 98|128,55,
17995 OPC_RecordChild1,
17996 OPC_RecordChild2,
17997 OPC_Scope, 15,
17998 OPC_CheckPatternPredicate, 14,
17999 OPC_EmitInteger32, 28,
18000 OPC_EmitRegisterI32, 0 ,
18001 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULTT),
18002 MVT::i32, 4, 0, 1, 2, 3,
18003 14,
18004 OPC_CheckPatternPredicate5,
18005 OPC_EmitInteger32, 28,
18006 OPC_EmitRegisterI32, 0 ,
18007 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULTT),
18008 MVT::i32, 4, 0, 1, 2, 3,
18009 0,
18010 38,
18011 OPC_CheckChild0Integer, 100|128,55,
18012 OPC_RecordChild1,
18013 OPC_RecordChild2,
18014 OPC_Scope, 15,
18015 OPC_CheckPatternPredicate, 14,
18016 OPC_EmitInteger32, 28,
18017 OPC_EmitRegisterI32, 0 ,
18018 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULWB),
18019 MVT::i32, 4, 0, 1, 2, 3,
18020 14,
18021 OPC_CheckPatternPredicate5,
18022 OPC_EmitInteger32, 28,
18023 OPC_EmitRegisterI32, 0 ,
18024 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULWB),
18025 MVT::i32, 4, 0, 1, 2, 3,
18026 0,
18027 38,
18028 OPC_CheckChild0Integer, 102|128,55,
18029 OPC_RecordChild1,
18030 OPC_RecordChild2,
18031 OPC_Scope, 15,
18032 OPC_CheckPatternPredicate, 14,
18033 OPC_EmitInteger32, 28,
18034 OPC_EmitRegisterI32, 0 ,
18035 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULWT),
18036 MVT::i32, 4, 0, 1, 2, 3,
18037 14,
18038 OPC_CheckPatternPredicate5,
18039 OPC_EmitInteger32, 28,
18040 OPC_EmitRegisterI32, 0 ,
18041 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULWT),
18042 MVT::i32, 4, 0, 1, 2, 3,
18043 0,
18044 41,
18045 OPC_CheckChild0Integer, 60|128,55,
18046 OPC_RecordChild1,
18047 OPC_RecordChild2,
18048 OPC_RecordChild3,
18049 OPC_Scope, 16,
18050 OPC_CheckPatternPredicate, 14,
18051 OPC_EmitInteger32, 28,
18052 OPC_EmitRegisterI32, 0 ,
18053 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABB),
18054 MVT::i32, 5, 0, 1, 2, 3, 4,
18055 15,
18056 OPC_CheckPatternPredicate5,
18057 OPC_EmitInteger32, 28,
18058 OPC_EmitRegisterI32, 0 ,
18059 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABB),
18060 MVT::i32, 5, 0, 1, 2, 3, 4,
18061 0,
18062 41,
18063 OPC_CheckChild0Integer, 62|128,55,
18064 OPC_RecordChild1,
18065 OPC_RecordChild2,
18066 OPC_RecordChild3,
18067 OPC_Scope, 16,
18068 OPC_CheckPatternPredicate, 14,
18069 OPC_EmitInteger32, 28,
18070 OPC_EmitRegisterI32, 0 ,
18071 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLABT),
18072 MVT::i32, 5, 0, 1, 2, 3, 4,
18073 15,
18074 OPC_CheckPatternPredicate5,
18075 OPC_EmitInteger32, 28,
18076 OPC_EmitRegisterI32, 0 ,
18077 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLABT),
18078 MVT::i32, 5, 0, 1, 2, 3, 4,
18079 0,
18080 41,
18081 OPC_CheckChild0Integer, 72|128,55,
18082 OPC_RecordChild1,
18083 OPC_RecordChild2,
18084 OPC_RecordChild3,
18085 OPC_Scope, 16,
18086 OPC_CheckPatternPredicate, 14,
18087 OPC_EmitInteger32, 28,
18088 OPC_EmitRegisterI32, 0 ,
18089 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLATB),
18090 MVT::i32, 5, 0, 1, 2, 3, 4,
18091 15,
18092 OPC_CheckPatternPredicate5,
18093 OPC_EmitInteger32, 28,
18094 OPC_EmitRegisterI32, 0 ,
18095 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLATB),
18096 MVT::i32, 5, 0, 1, 2, 3, 4,
18097 0,
18098 41,
18099 OPC_CheckChild0Integer, 74|128,55,
18100 OPC_RecordChild1,
18101 OPC_RecordChild2,
18102 OPC_RecordChild3,
18103 OPC_Scope, 16,
18104 OPC_CheckPatternPredicate, 14,
18105 OPC_EmitInteger32, 28,
18106 OPC_EmitRegisterI32, 0 ,
18107 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLATT),
18108 MVT::i32, 5, 0, 1, 2, 3, 4,
18109 15,
18110 OPC_CheckPatternPredicate5,
18111 OPC_EmitInteger32, 28,
18112 OPC_EmitRegisterI32, 0 ,
18113 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLATT),
18114 MVT::i32, 5, 0, 1, 2, 3, 4,
18115 0,
18116 41,
18117 OPC_CheckChild0Integer, 76|128,55,
18118 OPC_RecordChild1,
18119 OPC_RecordChild2,
18120 OPC_RecordChild3,
18121 OPC_Scope, 16,
18122 OPC_CheckPatternPredicate, 14,
18123 OPC_EmitInteger32, 28,
18124 OPC_EmitRegisterI32, 0 ,
18125 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLAWB),
18126 MVT::i32, 5, 0, 1, 2, 3, 4,
18127 15,
18128 OPC_CheckPatternPredicate5,
18129 OPC_EmitInteger32, 28,
18130 OPC_EmitRegisterI32, 0 ,
18131 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLAWB),
18132 MVT::i32, 5, 0, 1, 2, 3, 4,
18133 0,
18134 41,
18135 OPC_CheckChild0Integer, 78|128,55,
18136 OPC_RecordChild1,
18137 OPC_RecordChild2,
18138 OPC_RecordChild3,
18139 OPC_Scope, 16,
18140 OPC_CheckPatternPredicate, 14,
18141 OPC_EmitInteger32, 28,
18142 OPC_EmitRegisterI32, 0 ,
18143 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMLAWT),
18144 MVT::i32, 5, 0, 1, 2, 3, 4,
18145 15,
18146 OPC_CheckPatternPredicate5,
18147 OPC_EmitInteger32, 28,
18148 OPC_EmitRegisterI32, 0 ,
18149 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMLAWT),
18150 MVT::i32, 5, 0, 1, 2, 3, 4,
18151 0,
18152 19,
18153 OPC_CheckChild0Integer, 50|128,49,
18154 OPC_RecordChild1,
18155 OPC_CheckChild1TypeI32,
18156 OPC_CheckPatternPredicate, 63,
18157 OPC_EmitInteger32, 28,
18158 OPC_EmitRegisterI32, 0 ,
18159 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2TT),
18160 MVT::i32, 3, 0, 1, 2,
18161 19,
18162 OPC_CheckChild0Integer, 56|128,49,
18163 OPC_RecordChild1,
18164 OPC_CheckChild1TypeI32,
18165 OPC_CheckPatternPredicate, 63,
18166 OPC_EmitInteger32, 28,
18167 OPC_EmitRegisterI32, 0 ,
18168 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2TTT),
18169 MVT::i32, 3, 0, 1, 2,
18170 19,
18171 OPC_CheckChild0Integer, 52|128,49,
18172 OPC_RecordChild1,
18173 OPC_CheckChild1TypeI32,
18174 OPC_CheckPatternPredicate, 63,
18175 OPC_EmitInteger32, 28,
18176 OPC_EmitRegisterI32, 0 ,
18177 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2TTA),
18178 MVT::i32, 3, 0, 1, 2,
18179 19,
18180 OPC_CheckChild0Integer, 54|128,49,
18181 OPC_RecordChild1,
18182 OPC_CheckChild1TypeI32,
18183 OPC_CheckPatternPredicate, 63,
18184 OPC_EmitInteger32, 28,
18185 OPC_EmitRegisterI32, 0 ,
18186 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2TTAT),
18187 MVT::i32, 3, 0, 1, 2,
18188 20,
18189 OPC_CheckChild0Integer, 98|128,50,
18190 OPC_RecordChild1,
18191 OPC_RecordChild2,
18192 OPC_CheckPatternPredicate, 36,
18193 OPC_EmitInteger32, 28,
18194 OPC_EmitRegisterI32, 0 ,
18195 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_SQRSHR),
18196 MVT::i32, 4, 0, 1, 2, 3,
18197 20,
18198 OPC_CheckChild0Integer, 112|128,50,
18199 OPC_RecordChild1,
18200 OPC_RecordChild2,
18201 OPC_CheckPatternPredicate, 36,
18202 OPC_EmitInteger32, 28,
18203 OPC_EmitRegisterI32, 0 ,
18204 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_UQRSHL),
18205 MVT::i32, 4, 0, 1, 2, 3,
18206 67,
18207 OPC_CheckChild0Integer, 42|128,50,
18208 OPC_RecordChild1,
18209 OPC_RecordChild2,
18210 OPC_Scope, 19,
18211 OPC_CheckChild2Type, MVT::v16i8,
18212 OPC_CheckPatternPredicate0,
18213 OPC_EmitInteger32, 0,
18214 OPC_EmitRegisterI32, 0 ,
18215 OPC_EmitRegisterI32, 0 ,
18216 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAVs8),
18217 MVT::i32, 5, 0, 1, 2, 3, 4,
18218 19,
18219 OPC_CheckChild2Type, MVT::v8i16,
18220 OPC_CheckPatternPredicate0,
18221 OPC_EmitInteger32, 0,
18222 OPC_EmitRegisterI32, 0 ,
18223 OPC_EmitRegisterI32, 0 ,
18224 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAVs16),
18225 MVT::i32, 5, 0, 1, 2, 3, 4,
18226 19,
18227 OPC_CheckChild2Type, MVT::v4i32,
18228 OPC_CheckPatternPredicate0,
18229 OPC_EmitInteger32, 0,
18230 OPC_EmitRegisterI32, 0 ,
18231 OPC_EmitRegisterI32, 0 ,
18232 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAVs32),
18233 MVT::i32, 5, 0, 1, 2, 3, 4,
18234 0,
18235 70,
18236 OPC_CheckChild0Integer, 44|128,50,
18237 OPC_RecordChild1,
18238 OPC_RecordChild2,
18239 OPC_Scope, 20,
18240 OPC_CheckChild2Type, MVT::v16i8,
18241 OPC_RecordChild3,
18242 OPC_CheckChild3Type, MVT::v16i1,
18243 OPC_CheckPatternPredicate0,
18244 OPC_EmitInteger32, 2,
18245 OPC_EmitRegisterI32, 0 ,
18246 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAVs8),
18247 MVT::i32, 5, 0, 1, 3, 2, 4,
18248 20,
18249 OPC_CheckChild2Type, MVT::v8i16,
18250 OPC_RecordChild3,
18251 OPC_CheckChild3Type, MVT::v8i1,
18252 OPC_CheckPatternPredicate0,
18253 OPC_EmitInteger32, 2,
18254 OPC_EmitRegisterI32, 0 ,
18255 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAVs16),
18256 MVT::i32, 5, 0, 1, 3, 2, 4,
18257 20,
18258 OPC_CheckChild2Type, MVT::v4i32,
18259 OPC_RecordChild3,
18260 OPC_CheckChild3Type, MVT::v4i1,
18261 OPC_CheckPatternPredicate0,
18262 OPC_EmitInteger32, 2,
18263 OPC_EmitRegisterI32, 0 ,
18264 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAVs32),
18265 MVT::i32, 5, 0, 1, 3, 2, 4,
18266 0,
18267 67,
18268 OPC_CheckChild0Integer, 24|128,50,
18269 OPC_RecordChild1,
18270 OPC_RecordChild2,
18271 OPC_Scope, 19,
18272 OPC_CheckChild2Type, MVT::v16i8,
18273 OPC_CheckPatternPredicate0,
18274 OPC_EmitInteger32, 0,
18275 OPC_EmitRegisterI32, 0 ,
18276 OPC_EmitRegisterI32, 0 ,
18277 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAVs8),
18278 MVT::i32, 5, 0, 1, 2, 3, 4,
18279 19,
18280 OPC_CheckChild2Type, MVT::v8i16,
18281 OPC_CheckPatternPredicate0,
18282 OPC_EmitInteger32, 0,
18283 OPC_EmitRegisterI32, 0 ,
18284 OPC_EmitRegisterI32, 0 ,
18285 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAVs16),
18286 MVT::i32, 5, 0, 1, 2, 3, 4,
18287 19,
18288 OPC_CheckChild2Type, MVT::v4i32,
18289 OPC_CheckPatternPredicate0,
18290 OPC_EmitInteger32, 0,
18291 OPC_EmitRegisterI32, 0 ,
18292 OPC_EmitRegisterI32, 0 ,
18293 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAVs32),
18294 MVT::i32, 5, 0, 1, 2, 3, 4,
18295 0,
18296 70,
18297 OPC_CheckChild0Integer, 26|128,50,
18298 OPC_RecordChild1,
18299 OPC_RecordChild2,
18300 OPC_Scope, 20,
18301 OPC_CheckChild2Type, MVT::v16i8,
18302 OPC_RecordChild3,
18303 OPC_CheckChild3Type, MVT::v16i1,
18304 OPC_CheckPatternPredicate0,
18305 OPC_EmitInteger32, 2,
18306 OPC_EmitRegisterI32, 0 ,
18307 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAVs8),
18308 MVT::i32, 5, 0, 1, 3, 2, 4,
18309 20,
18310 OPC_CheckChild2Type, MVT::v8i16,
18311 OPC_RecordChild3,
18312 OPC_CheckChild3Type, MVT::v8i1,
18313 OPC_CheckPatternPredicate0,
18314 OPC_EmitInteger32, 2,
18315 OPC_EmitRegisterI32, 0 ,
18316 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAVs16),
18317 MVT::i32, 5, 0, 1, 3, 2, 4,
18318 20,
18319 OPC_CheckChild2Type, MVT::v4i32,
18320 OPC_RecordChild3,
18321 OPC_CheckChild3Type, MVT::v4i1,
18322 OPC_CheckPatternPredicate0,
18323 OPC_EmitInteger32, 2,
18324 OPC_EmitRegisterI32, 0 ,
18325 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAVs32),
18326 MVT::i32, 5, 0, 1, 3, 2, 4,
18327 0,
18328 50,
18329 OPC_CheckChild0Integer, 10|128,53,
18330 OPC_RecordChild1,
18331 OPC_CheckPatternPredicate1,
18332 OPC_EmitInteger64, 0,
18333 OPC_EmitStringInteger32, ARM::SPRRegClassID,
18334 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18335 MVT::f32, 2, 0, 2,
18336 OPC_EmitStringInteger32, ARM::ssub_0,
18337 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
18338 MVT::v16i8, 3, 1, 3, 4,
18339 OPC_EmitNode1None, TARGET_VAL(ARM::SHA1H),
18340 MVT::v16i8, 1, 5,
18341 OPC_EmitStringInteger32, ARM::ssub_0,
18342 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
18343 MVT::f32, 2, 6, 7,
18344 OPC_EmitStringInteger32, ARM::GPRRegClassID,
18345 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18346 MVT::i32, 2, 8, 9,
18347 40,
18348 OPC_CheckChild0Integer, 4|128,49,
18349 OPC_RecordChild1,
18350 OPC_MoveChild1,
18351 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18352 OPC_MoveSibling2,
18353 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18354 OPC_RecordNode,
18355 OPC_MoveParent,
18356 OPC_SwitchType , 10, MVT::f32,
18357 OPC_CheckPatternPredicate, 33,
18358 OPC_EmitConvertToTarget1,
18359 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1_fpsp),
18360 MVT::f32, 2, 0, 2,
18361 10, MVT::f64,
18362 OPC_CheckPatternPredicate, 33,
18363 OPC_EmitConvertToTarget1,
18364 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1_fpdp),
18365 MVT::f64, 2, 0, 2,
18366 0,
18367 56,
18368 OPC_CheckChild0Integer, 6|128,49,
18369 OPC_RecordChild1,
18370 OPC_MoveChild1,
18371 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18372 OPC_MoveParent,
18373 OPC_RecordChild2,
18374 OPC_Scope, 21,
18375 OPC_CheckChild2Type, MVT::f32,
18376 OPC_RecordChild3,
18377 OPC_MoveChild3,
18378 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18379 OPC_MoveParent,
18380 OPC_CheckType, MVT::f32,
18381 OPC_CheckPatternPredicate, 33,
18382 OPC_EmitConvertToTarget2,
18383 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1A_fpsp),
18384 MVT::f32, 3, 0, 1, 3,
18385 21,
18386 OPC_CheckChild2Type, MVT::f64,
18387 OPC_RecordChild3,
18388 OPC_MoveChild3,
18389 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18390 OPC_MoveParent,
18391 OPC_CheckType, MVT::f64,
18392 OPC_CheckPatternPredicate, 33,
18393 OPC_EmitConvertToTarget2,
18394 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1A_fpdp),
18395 MVT::f64, 3, 0, 1, 3,
18396 0,
18397 56,
18398 OPC_CheckChild0Integer, 16|128,49,
18399 OPC_RecordChild1,
18400 OPC_MoveChild1,
18401 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18402 OPC_MoveParent,
18403 OPC_RecordChild2,
18404 OPC_Scope, 21,
18405 OPC_CheckChild2Type, MVT::f32,
18406 OPC_RecordChild3,
18407 OPC_MoveChild3,
18408 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18409 OPC_MoveParent,
18410 OPC_CheckType, MVT::f32,
18411 OPC_CheckPatternPredicate, 33,
18412 OPC_EmitConvertToTarget2,
18413 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2_fpsp),
18414 MVT::f32, 3, 0, 1, 3,
18415 21,
18416 OPC_CheckChild2Type, MVT::f64,
18417 OPC_RecordChild3,
18418 OPC_MoveChild3,
18419 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18420 OPC_MoveParent,
18421 OPC_CheckType, MVT::f64,
18422 OPC_CheckPatternPredicate, 33,
18423 OPC_EmitConvertToTarget2,
18424 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2_fpdp),
18425 MVT::f64, 3, 0, 1, 3,
18426 0,
18427 64,
18428 OPC_CheckChild0Integer, 18|128,49,
18429 OPC_RecordChild1,
18430 OPC_MoveChild1,
18431 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18432 OPC_MoveParent,
18433 OPC_RecordChild2,
18434 OPC_Scope, 25,
18435 OPC_CheckChild2Type, MVT::f32,
18436 OPC_RecordChild3,
18437 OPC_CheckChild3Type, MVT::f32,
18438 OPC_RecordChild4,
18439 OPC_MoveChild4,
18440 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18441 OPC_MoveParent,
18442 OPC_CheckType, MVT::f32,
18443 OPC_CheckPatternPredicate, 33,
18444 OPC_EmitConvertToTarget3,
18445 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2A_fpsp),
18446 MVT::f32, 4, 0, 1, 2, 4,
18447 25,
18448 OPC_CheckChild2Type, MVT::f64,
18449 OPC_RecordChild3,
18450 OPC_CheckChild3Type, MVT::f64,
18451 OPC_RecordChild4,
18452 OPC_MoveChild4,
18453 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18454 OPC_MoveParent,
18455 OPC_CheckType, MVT::f64,
18456 OPC_CheckPatternPredicate, 33,
18457 OPC_EmitConvertToTarget3,
18458 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2A_fpdp),
18459 MVT::f64, 4, 0, 1, 2, 4,
18460 0,
18461 64,
18462 OPC_CheckChild0Integer, 28|128,49,
18463 OPC_RecordChild1,
18464 OPC_MoveChild1,
18465 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18466 OPC_MoveParent,
18467 OPC_RecordChild2,
18468 OPC_Scope, 25,
18469 OPC_CheckChild2Type, MVT::f32,
18470 OPC_RecordChild3,
18471 OPC_CheckChild3Type, MVT::f32,
18472 OPC_RecordChild4,
18473 OPC_MoveChild4,
18474 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18475 OPC_MoveParent,
18476 OPC_CheckType, MVT::f32,
18477 OPC_CheckPatternPredicate, 33,
18478 OPC_EmitConvertToTarget3,
18479 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3_fpsp),
18480 MVT::f32, 4, 0, 1, 2, 4,
18481 25,
18482 OPC_CheckChild2Type, MVT::f64,
18483 OPC_RecordChild3,
18484 OPC_CheckChild3Type, MVT::f64,
18485 OPC_RecordChild4,
18486 OPC_MoveChild4,
18487 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18488 OPC_MoveParent,
18489 OPC_CheckType, MVT::f64,
18490 OPC_CheckPatternPredicate, 33,
18491 OPC_EmitConvertToTarget3,
18492 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3_fpdp),
18493 MVT::f64, 4, 0, 1, 2, 4,
18494 0,
18495 72,
18496 OPC_CheckChild0Integer, 30|128,49,
18497 OPC_RecordChild1,
18498 OPC_MoveChild1,
18499 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18500 OPC_MoveParent,
18501 OPC_RecordChild2,
18502 OPC_Scope, 29,
18503 OPC_CheckChild2Type, MVT::f32,
18504 OPC_RecordChild3,
18505 OPC_CheckChild3Type, MVT::f32,
18506 OPC_RecordChild4,
18507 OPC_CheckChild4Type, MVT::f32,
18508 OPC_RecordChild5,
18509 OPC_MoveChild5,
18510 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18511 OPC_MoveParent,
18512 OPC_CheckType, MVT::f32,
18513 OPC_CheckPatternPredicate, 33,
18514 OPC_EmitConvertToTarget4,
18515 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3A_fpsp),
18516 MVT::f32, 5, 0, 1, 2, 3, 5,
18517 29,
18518 OPC_CheckChild2Type, MVT::f64,
18519 OPC_RecordChild3,
18520 OPC_CheckChild3Type, MVT::f64,
18521 OPC_RecordChild4,
18522 OPC_CheckChild4Type, MVT::f64,
18523 OPC_RecordChild5,
18524 OPC_MoveChild5,
18525 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
18526 OPC_MoveParent,
18527 OPC_CheckType, MVT::f64,
18528 OPC_CheckPatternPredicate, 33,
18529 OPC_EmitConvertToTarget4,
18530 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3A_fpdp),
18531 MVT::f64, 5, 0, 1, 2, 3, 5,
18532 0,
18533 90,
18534 OPC_CheckChild0Integer, 88|128,54,
18535 OPC_RecordChild1,
18536 OPC_SwitchType , 10, MVT::f16,
18537 OPC_CheckChild1Type, MVT::f16,
18538 OPC_CheckPatternPredicate, 13,
18539 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTNH),
18540 MVT::f16, 1, 0,
18541 10, MVT::f32,
18542 OPC_CheckChild1Type, MVT::f32,
18543 OPC_CheckPatternPredicate, 25,
18544 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTNS),
18545 MVT::f32, 1, 0,
18546 10, MVT::f64,
18547 OPC_CheckChild1Type, MVT::f64,
18548 OPC_CheckPatternPredicate, 22,
18549 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTND),
18550 MVT::f64, 1, 0,
18551 10, MVT::v2f32,
18552 OPC_CheckChild1Type, MVT::v2f32,
18553 OPC_CheckPatternPredicate, 16,
18554 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTNNDf),
18555 MVT::v2f32, 1, 0,
18556 10, MVT::v4f32,
18557 OPC_CheckChild1Type, MVT::v4f32,
18558 OPC_CheckPatternPredicate, 16,
18559 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTNNQf),
18560 MVT::v4f32, 1, 0,
18561 10, MVT::v4f16,
18562 OPC_CheckChild1Type, MVT::v4f16,
18563 OPC_CheckPatternPredicate, 17,
18564 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTNNDh),
18565 MVT::v4f16, 1, 0,
18566 10, MVT::v8f16,
18567 OPC_CheckChild1Type, MVT::v8f16,
18568 OPC_CheckPatternPredicate, 17,
18569 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTNNQh),
18570 MVT::v8f16, 1, 0,
18571 0,
18572 40,
18573 OPC_CheckChild0Integer, 62|128,56,
18574 OPC_RecordChild1,
18575 OPC_Scope, 16,
18576 OPC_CheckChild1Type, MVT::f64,
18577 OPC_CheckPatternPredicate, 18,
18578 OPC_EmitInteger32, 28,
18579 OPC_EmitRegisterI32, 0 ,
18580 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTOSIRD),
18581 MVT::f32, 3, 0, 1, 2,
18582 16,
18583 OPC_CheckChild1Type, MVT::f32,
18584 OPC_CheckPatternPredicate, 26,
18585 OPC_EmitInteger32, 28,
18586 OPC_EmitRegisterI32, 0 ,
18587 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTOSIRS),
18588 MVT::f32, 3, 0, 1, 2,
18589 0,
18590 40,
18591 OPC_CheckChild0Integer, 64|128,56,
18592 OPC_RecordChild1,
18593 OPC_Scope, 16,
18594 OPC_CheckChild1Type, MVT::f64,
18595 OPC_CheckPatternPredicate, 18,
18596 OPC_EmitInteger32, 28,
18597 OPC_EmitRegisterI32, 0 ,
18598 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTOUIRD),
18599 MVT::f32, 3, 0, 1, 2,
18600 16,
18601 OPC_CheckChild1Type, MVT::f32,
18602 OPC_CheckPatternPredicate, 26,
18603 OPC_EmitInteger32, 28,
18604 OPC_EmitRegisterI32, 0 ,
18605 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTOUIRS),
18606 MVT::f32, 3, 0, 1, 2,
18607 0,
18608 90,
18609 OPC_CheckChild0Integer, 50|128,50,
18610 OPC_RecordChild1,
18611 OPC_SwitchType , 40, MVT::f32,
18612 OPC_CheckChild1Type, MVT::f32,
18613 OPC_RecordChild2,
18614 OPC_CheckChild2Type, MVT::v4f32,
18615 OPC_CheckPatternPredicate2,
18616 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18617 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18618 MVT::i32, 2, 0, 2,
18619 OPC_EmitInteger32, 0,
18620 OPC_EmitRegisterI32, 0 ,
18621 OPC_EmitRegisterI32, 0 ,
18622 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMINNMVf32),
18623 MVT::i32, 5, 3, 1, 4, 5, 6,
18624 OPC_EmitStringInteger32, ARM::SPRRegClassID,
18625 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18626 MVT::f32, 2, 7, 8,
18627 40, MVT::f16,
18628 OPC_CheckChild1Type, MVT::f16,
18629 OPC_RecordChild2,
18630 OPC_CheckChild2Type, MVT::v8f16,
18631 OPC_CheckPatternPredicate2,
18632 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18633 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18634 MVT::i32, 2, 0, 2,
18635 OPC_EmitInteger32, 0,
18636 OPC_EmitRegisterI32, 0 ,
18637 OPC_EmitRegisterI32, 0 ,
18638 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMINNMVf16),
18639 MVT::i32, 5, 3, 1, 4, 5, 6,
18640 OPC_EmitStringInteger32, ARM::HPRRegClassID,
18641 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18642 MVT::f16, 2, 7, 8,
18643 0,
18644 92,
18645 OPC_CheckChild0Integer, 52|128,50,
18646 OPC_RecordChild1,
18647 OPC_SwitchType , 41, MVT::f32,
18648 OPC_CheckChild1Type, MVT::f32,
18649 OPC_RecordChild2,
18650 OPC_CheckChild2Type, MVT::v4f32,
18651 OPC_RecordChild3,
18652 OPC_CheckChild3Type, MVT::v4i1,
18653 OPC_CheckPatternPredicate2,
18654 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18655 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18656 MVT::i32, 2, 0, 3,
18657 OPC_EmitInteger32, 2,
18658 OPC_EmitRegisterI32, 0 ,
18659 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMINNMVf32),
18660 MVT::i32, 5, 4, 1, 5, 2, 6,
18661 OPC_EmitStringInteger32, ARM::SPRRegClassID,
18662 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18663 MVT::f32, 2, 7, 8,
18664 41, MVT::f16,
18665 OPC_CheckChild1Type, MVT::f16,
18666 OPC_RecordChild2,
18667 OPC_CheckChild2Type, MVT::v8f16,
18668 OPC_RecordChild3,
18669 OPC_CheckChild3Type, MVT::v8i1,
18670 OPC_CheckPatternPredicate2,
18671 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18672 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18673 MVT::i32, 2, 0, 3,
18674 OPC_EmitInteger32, 2,
18675 OPC_EmitRegisterI32, 0 ,
18676 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMINNMVf16),
18677 MVT::i32, 5, 4, 1, 5, 2, 6,
18678 OPC_EmitStringInteger32, ARM::HPRRegClassID,
18679 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18680 MVT::f16, 2, 7, 8,
18681 0,
18682 90,
18683 OPC_CheckChild0Integer, 32|128,50,
18684 OPC_RecordChild1,
18685 OPC_SwitchType , 40, MVT::f32,
18686 OPC_CheckChild1Type, MVT::f32,
18687 OPC_RecordChild2,
18688 OPC_CheckChild2Type, MVT::v4f32,
18689 OPC_CheckPatternPredicate2,
18690 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18691 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18692 MVT::i32, 2, 0, 2,
18693 OPC_EmitInteger32, 0,
18694 OPC_EmitRegisterI32, 0 ,
18695 OPC_EmitRegisterI32, 0 ,
18696 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMAXNMVf32),
18697 MVT::i32, 5, 3, 1, 4, 5, 6,
18698 OPC_EmitStringInteger32, ARM::SPRRegClassID,
18699 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18700 MVT::f32, 2, 7, 8,
18701 40, MVT::f16,
18702 OPC_CheckChild1Type, MVT::f16,
18703 OPC_RecordChild2,
18704 OPC_CheckChild2Type, MVT::v8f16,
18705 OPC_CheckPatternPredicate2,
18706 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18707 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18708 MVT::i32, 2, 0, 2,
18709 OPC_EmitInteger32, 0,
18710 OPC_EmitRegisterI32, 0 ,
18711 OPC_EmitRegisterI32, 0 ,
18712 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMAXNMVf16),
18713 MVT::i32, 5, 3, 1, 4, 5, 6,
18714 OPC_EmitStringInteger32, ARM::HPRRegClassID,
18715 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18716 MVT::f16, 2, 7, 8,
18717 0,
18718 92,
18719 OPC_CheckChild0Integer, 34|128,50,
18720 OPC_RecordChild1,
18721 OPC_SwitchType , 41, MVT::f32,
18722 OPC_CheckChild1Type, MVT::f32,
18723 OPC_RecordChild2,
18724 OPC_CheckChild2Type, MVT::v4f32,
18725 OPC_RecordChild3,
18726 OPC_CheckChild3Type, MVT::v4i1,
18727 OPC_CheckPatternPredicate2,
18728 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18729 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18730 MVT::i32, 2, 0, 3,
18731 OPC_EmitInteger32, 2,
18732 OPC_EmitRegisterI32, 0 ,
18733 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMAXNMVf32),
18734 MVT::i32, 5, 4, 1, 5, 2, 6,
18735 OPC_EmitStringInteger32, ARM::SPRRegClassID,
18736 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18737 MVT::f32, 2, 7, 8,
18738 41, MVT::f16,
18739 OPC_CheckChild1Type, MVT::f16,
18740 OPC_RecordChild2,
18741 OPC_CheckChild2Type, MVT::v8f16,
18742 OPC_RecordChild3,
18743 OPC_CheckChild3Type, MVT::v8i1,
18744 OPC_CheckPatternPredicate2,
18745 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18746 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18747 MVT::i32, 2, 0, 3,
18748 OPC_EmitInteger32, 2,
18749 OPC_EmitRegisterI32, 0 ,
18750 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMAXNMVf16),
18751 MVT::i32, 5, 4, 1, 5, 2, 6,
18752 OPC_EmitStringInteger32, ARM::HPRRegClassID,
18753 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18754 MVT::f16, 2, 7, 8,
18755 0,
18756 90,
18757 OPC_CheckChild0Integer, 46|128,50,
18758 OPC_RecordChild1,
18759 OPC_SwitchType , 40, MVT::f32,
18760 OPC_CheckChild1Type, MVT::f32,
18761 OPC_RecordChild2,
18762 OPC_CheckChild2Type, MVT::v4f32,
18763 OPC_CheckPatternPredicate2,
18764 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18765 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18766 MVT::i32, 2, 0, 2,
18767 OPC_EmitInteger32, 0,
18768 OPC_EmitRegisterI32, 0 ,
18769 OPC_EmitRegisterI32, 0 ,
18770 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMINNMAVf32),
18771 MVT::i32, 5, 3, 1, 4, 5, 6,
18772 OPC_EmitStringInteger32, ARM::SPRRegClassID,
18773 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18774 MVT::f32, 2, 7, 8,
18775 40, MVT::f16,
18776 OPC_CheckChild1Type, MVT::f16,
18777 OPC_RecordChild2,
18778 OPC_CheckChild2Type, MVT::v8f16,
18779 OPC_CheckPatternPredicate2,
18780 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18781 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18782 MVT::i32, 2, 0, 2,
18783 OPC_EmitInteger32, 0,
18784 OPC_EmitRegisterI32, 0 ,
18785 OPC_EmitRegisterI32, 0 ,
18786 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMINNMAVf16),
18787 MVT::i32, 5, 3, 1, 4, 5, 6,
18788 OPC_EmitStringInteger32, ARM::HPRRegClassID,
18789 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18790 MVT::f16, 2, 7, 8,
18791 0,
18792 92,
18793 OPC_CheckChild0Integer, 48|128,50,
18794 OPC_RecordChild1,
18795 OPC_SwitchType , 41, MVT::f32,
18796 OPC_CheckChild1Type, MVT::f32,
18797 OPC_RecordChild2,
18798 OPC_CheckChild2Type, MVT::v4f32,
18799 OPC_RecordChild3,
18800 OPC_CheckChild3Type, MVT::v4i1,
18801 OPC_CheckPatternPredicate2,
18802 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18803 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18804 MVT::i32, 2, 0, 3,
18805 OPC_EmitInteger32, 2,
18806 OPC_EmitRegisterI32, 0 ,
18807 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMINNMAVf32),
18808 MVT::i32, 5, 4, 1, 5, 2, 6,
18809 OPC_EmitStringInteger32, ARM::SPRRegClassID,
18810 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18811 MVT::f32, 2, 7, 8,
18812 41, MVT::f16,
18813 OPC_CheckChild1Type, MVT::f16,
18814 OPC_RecordChild2,
18815 OPC_CheckChild2Type, MVT::v8f16,
18816 OPC_RecordChild3,
18817 OPC_CheckChild3Type, MVT::v8i1,
18818 OPC_CheckPatternPredicate2,
18819 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18820 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18821 MVT::i32, 2, 0, 3,
18822 OPC_EmitInteger32, 2,
18823 OPC_EmitRegisterI32, 0 ,
18824 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMINNMAVf16),
18825 MVT::i32, 5, 4, 1, 5, 2, 6,
18826 OPC_EmitStringInteger32, ARM::HPRRegClassID,
18827 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18828 MVT::f16, 2, 7, 8,
18829 0,
18830 90,
18831 OPC_CheckChild0Integer, 28|128,50,
18832 OPC_RecordChild1,
18833 OPC_SwitchType , 40, MVT::f32,
18834 OPC_CheckChild1Type, MVT::f32,
18835 OPC_RecordChild2,
18836 OPC_CheckChild2Type, MVT::v4f32,
18837 OPC_CheckPatternPredicate2,
18838 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18839 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18840 MVT::i32, 2, 0, 2,
18841 OPC_EmitInteger32, 0,
18842 OPC_EmitRegisterI32, 0 ,
18843 OPC_EmitRegisterI32, 0 ,
18844 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMAXNMAVf32),
18845 MVT::i32, 5, 3, 1, 4, 5, 6,
18846 OPC_EmitStringInteger32, ARM::SPRRegClassID,
18847 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18848 MVT::f32, 2, 7, 8,
18849 40, MVT::f16,
18850 OPC_CheckChild1Type, MVT::f16,
18851 OPC_RecordChild2,
18852 OPC_CheckChild2Type, MVT::v8f16,
18853 OPC_CheckPatternPredicate2,
18854 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18855 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18856 MVT::i32, 2, 0, 2,
18857 OPC_EmitInteger32, 0,
18858 OPC_EmitRegisterI32, 0 ,
18859 OPC_EmitRegisterI32, 0 ,
18860 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMAXNMAVf16),
18861 MVT::i32, 5, 3, 1, 4, 5, 6,
18862 OPC_EmitStringInteger32, ARM::HPRRegClassID,
18863 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18864 MVT::f16, 2, 7, 8,
18865 0,
18866 92,
18867 OPC_CheckChild0Integer, 30|128,50,
18868 OPC_RecordChild1,
18869 OPC_SwitchType , 41, MVT::f32,
18870 OPC_CheckChild1Type, MVT::f32,
18871 OPC_RecordChild2,
18872 OPC_CheckChild2Type, MVT::v4f32,
18873 OPC_RecordChild3,
18874 OPC_CheckChild3Type, MVT::v4i1,
18875 OPC_CheckPatternPredicate2,
18876 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18877 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18878 MVT::i32, 2, 0, 3,
18879 OPC_EmitInteger32, 2,
18880 OPC_EmitRegisterI32, 0 ,
18881 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMAXNMAVf32),
18882 MVT::i32, 5, 4, 1, 5, 2, 6,
18883 OPC_EmitStringInteger32, ARM::SPRRegClassID,
18884 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18885 MVT::f32, 2, 7, 8,
18886 41, MVT::f16,
18887 OPC_CheckChild1Type, MVT::f16,
18888 OPC_RecordChild2,
18889 OPC_CheckChild2Type, MVT::v8f16,
18890 OPC_RecordChild3,
18891 OPC_CheckChild3Type, MVT::v8i1,
18892 OPC_CheckPatternPredicate2,
18893 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
18894 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18895 MVT::i32, 2, 0, 3,
18896 OPC_EmitInteger32, 2,
18897 OPC_EmitRegisterI32, 0 ,
18898 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMAXNMAVf16),
18899 MVT::i32, 5, 4, 1, 5, 2, 6,
18900 OPC_EmitStringInteger32, ARM::HPRRegClassID,
18901 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
18902 MVT::f16, 2, 7, 8,
18903 0,
18904 0|128,10,
18905 OPC_CheckChild0Integer, 90|128,52,
18906 OPC_RecordChild1,
18907 OPC_Scope, 123|128,4,
18908 OPC_CheckChild1Type, MVT::v16i8,
18909 OPC_RecordChild2,
18910 OPC_CheckChild2Type, MVT::v8i16,
18911 OPC_RecordChild3,
18912 OPC_MoveChild3,
18913 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
18914 OPC_CheckPredicate, 29,
18915 OPC_MoveParent,
18916 OPC_Scope, 121|128,1,
18917 OPC_CheckChild4Integer, 0,
18918 OPC_MoveChild5,
18919 OPC_Scope, 121,
18920 OPC_CheckInteger, 0,
18921 OPC_MoveSibling6,
18922 OPC_Scope, 57,
18923 OPC_CheckInteger, 0,
18924 OPC_MoveSibling7,
18925 OPC_CheckInteger, 0,
18926 OPC_MoveSibling, 8,
18927 OPC_Scope, 23,
18928 OPC_CheckInteger, 0,
18929 OPC_MoveParent,
18930 OPC_CheckType, MVT::v16i8,
18931 OPC_EmitConvertToTarget2,
18932 OPC_EmitInteger32, 0,
18933 OPC_EmitRegisterI32, 0 ,
18934 OPC_EmitRegisterI32, 0 ,
18935 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi16bh),
18936 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
18937 23,
18938 OPC_CheckInteger, 2,
18939 OPC_MoveParent,
18940 OPC_CheckType, MVT::v16i8,
18941 OPC_EmitConvertToTarget2,
18942 OPC_EmitInteger32, 0,
18943 OPC_EmitRegisterI32, 0 ,
18944 OPC_EmitRegisterI32, 0 ,
18945 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi16th),
18946 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
18947 0,
18948 57,
18949 OPC_CheckInteger, 2,
18950 OPC_MoveSibling7,
18951 OPC_CheckInteger, 2,
18952 OPC_MoveSibling, 8,
18953 OPC_Scope, 23,
18954 OPC_CheckInteger, 0,
18955 OPC_MoveParent,
18956 OPC_CheckType, MVT::v16i8,
18957 OPC_EmitConvertToTarget2,
18958 OPC_EmitInteger32, 0,
18959 OPC_EmitRegisterI32, 0 ,
18960 OPC_EmitRegisterI32, 0 ,
18961 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi16bh),
18962 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
18963 23,
18964 OPC_CheckInteger, 2,
18965 OPC_MoveParent,
18966 OPC_CheckType, MVT::v16i8,
18967 OPC_EmitConvertToTarget2,
18968 OPC_EmitInteger32, 0,
18969 OPC_EmitRegisterI32, 0 ,
18970 OPC_EmitRegisterI32, 0 ,
18971 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi16th),
18972 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
18973 0,
18974 0,
18975 121,
18976 OPC_CheckInteger, 2,
18977 OPC_MoveSibling6,
18978 OPC_Scope, 57,
18979 OPC_CheckInteger, 0,
18980 OPC_MoveSibling7,
18981 OPC_CheckInteger, 0,
18982 OPC_MoveSibling, 8,
18983 OPC_Scope, 23,
18984 OPC_CheckInteger, 0,
18985 OPC_MoveParent,
18986 OPC_CheckType, MVT::v16i8,
18987 OPC_EmitConvertToTarget2,
18988 OPC_EmitInteger32, 0,
18989 OPC_EmitRegisterI32, 0 ,
18990 OPC_EmitRegisterI32, 0 ,
18991 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi16bh),
18992 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
18993 23,
18994 OPC_CheckInteger, 2,
18995 OPC_MoveParent,
18996 OPC_CheckType, MVT::v16i8,
18997 OPC_EmitConvertToTarget2,
18998 OPC_EmitInteger32, 0,
18999 OPC_EmitRegisterI32, 0 ,
19000 OPC_EmitRegisterI32, 0 ,
19001 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi16th),
19002 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19003 0,
19004 57,
19005 OPC_CheckInteger, 2,
19006 OPC_MoveSibling7,
19007 OPC_CheckInteger, 2,
19008 OPC_MoveSibling, 8,
19009 OPC_Scope, 23,
19010 OPC_CheckInteger, 0,
19011 OPC_MoveParent,
19012 OPC_CheckType, MVT::v16i8,
19013 OPC_EmitConvertToTarget2,
19014 OPC_EmitInteger32, 0,
19015 OPC_EmitRegisterI32, 0 ,
19016 OPC_EmitRegisterI32, 0 ,
19017 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi16bh),
19018 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19019 23,
19020 OPC_CheckInteger, 2,
19021 OPC_MoveParent,
19022 OPC_CheckType, MVT::v16i8,
19023 OPC_EmitConvertToTarget2,
19024 OPC_EmitInteger32, 0,
19025 OPC_EmitRegisterI32, 0 ,
19026 OPC_EmitRegisterI32, 0 ,
19027 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi16th),
19028 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19029 0,
19030 0,
19031 0,
19032 111|128,2,
19033 OPC_CheckChild4Integer, 2,
19034 OPC_MoveChild5,
19035 OPC_Scope, 51|128,1,
19036 OPC_CheckInteger, 0,
19037 OPC_MoveSibling6,
19038 OPC_Scope, 57,
19039 OPC_CheckInteger, 0,
19040 OPC_MoveSibling7,
19041 OPC_CheckInteger, 0,
19042 OPC_MoveSibling, 8,
19043 OPC_Scope, 23,
19044 OPC_CheckInteger, 0,
19045 OPC_MoveParent,
19046 OPC_CheckType, MVT::v16i8,
19047 OPC_EmitConvertToTarget2,
19048 OPC_EmitInteger32, 0,
19049 OPC_EmitRegisterI32, 0 ,
19050 OPC_EmitRegisterI32, 0 ,
19051 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhs16),
19052 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19053 23,
19054 OPC_CheckInteger, 2,
19055 OPC_MoveParent,
19056 OPC_CheckType, MVT::v16i8,
19057 OPC_EmitConvertToTarget2,
19058 OPC_EmitInteger32, 0,
19059 OPC_EmitRegisterI32, 0 ,
19060 OPC_EmitRegisterI32, 0 ,
19061 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNths16),
19062 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19063 0,
19064 115,
19065 OPC_CheckInteger, 2,
19066 OPC_MoveSibling7,
19067 OPC_Scope, 54,
19068 OPC_CheckInteger, 2,
19069 OPC_MoveSibling, 8,
19070 OPC_Scope, 23,
19071 OPC_CheckInteger, 0,
19072 OPC_MoveParent,
19073 OPC_CheckType, MVT::v16i8,
19074 OPC_EmitConvertToTarget2,
19075 OPC_EmitInteger32, 0,
19076 OPC_EmitRegisterI32, 0 ,
19077 OPC_EmitRegisterI32, 0 ,
19078 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhu16),
19079 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19080 23,
19081 OPC_CheckInteger, 2,
19082 OPC_MoveParent,
19083 OPC_CheckType, MVT::v16i8,
19084 OPC_EmitConvertToTarget2,
19085 OPC_EmitInteger32, 0,
19086 OPC_EmitRegisterI32, 0 ,
19087 OPC_EmitRegisterI32, 0 ,
19088 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNthu16),
19089 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19090 0,
19091 54,
19092 OPC_CheckInteger, 0,
19093 OPC_MoveSibling, 8,
19094 OPC_Scope, 23,
19095 OPC_CheckInteger, 0,
19096 OPC_MoveParent,
19097 OPC_CheckType, MVT::v16i8,
19098 OPC_EmitConvertToTarget2,
19099 OPC_EmitInteger32, 0,
19100 OPC_EmitRegisterI32, 0 ,
19101 OPC_EmitRegisterI32, 0 ,
19102 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRUNs16bh),
19103 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19104 23,
19105 OPC_CheckInteger, 2,
19106 OPC_MoveParent,
19107 OPC_CheckType, MVT::v16i8,
19108 OPC_EmitConvertToTarget2,
19109 OPC_EmitInteger32, 0,
19110 OPC_EmitRegisterI32, 0 ,
19111 OPC_EmitRegisterI32, 0 ,
19112 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRUNs16th),
19113 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19114 0,
19115 0,
19116 0,
19117 51|128,1,
19118 OPC_CheckInteger, 2,
19119 OPC_MoveSibling6,
19120 OPC_Scope, 57,
19121 OPC_CheckInteger, 0,
19122 OPC_MoveSibling7,
19123 OPC_CheckInteger, 0,
19124 OPC_MoveSibling, 8,
19125 OPC_Scope, 23,
19126 OPC_CheckInteger, 0,
19127 OPC_MoveParent,
19128 OPC_CheckType, MVT::v16i8,
19129 OPC_EmitConvertToTarget2,
19130 OPC_EmitInteger32, 0,
19131 OPC_EmitRegisterI32, 0 ,
19132 OPC_EmitRegisterI32, 0 ,
19133 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNbhs16),
19134 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19135 23,
19136 OPC_CheckInteger, 2,
19137 OPC_MoveParent,
19138 OPC_CheckType, MVT::v16i8,
19139 OPC_EmitConvertToTarget2,
19140 OPC_EmitInteger32, 0,
19141 OPC_EmitRegisterI32, 0 ,
19142 OPC_EmitRegisterI32, 0 ,
19143 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNths16),
19144 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19145 0,
19146 115,
19147 OPC_CheckInteger, 2,
19148 OPC_MoveSibling7,
19149 OPC_Scope, 54,
19150 OPC_CheckInteger, 2,
19151 OPC_MoveSibling, 8,
19152 OPC_Scope, 23,
19153 OPC_CheckInteger, 0,
19154 OPC_MoveParent,
19155 OPC_CheckType, MVT::v16i8,
19156 OPC_EmitConvertToTarget2,
19157 OPC_EmitInteger32, 0,
19158 OPC_EmitRegisterI32, 0 ,
19159 OPC_EmitRegisterI32, 0 ,
19160 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNbhu16),
19161 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19162 23,
19163 OPC_CheckInteger, 2,
19164 OPC_MoveParent,
19165 OPC_CheckType, MVT::v16i8,
19166 OPC_EmitConvertToTarget2,
19167 OPC_EmitInteger32, 0,
19168 OPC_EmitRegisterI32, 0 ,
19169 OPC_EmitRegisterI32, 0 ,
19170 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNthu16),
19171 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19172 0,
19173 54,
19174 OPC_CheckInteger, 0,
19175 OPC_MoveSibling, 8,
19176 OPC_Scope, 23,
19177 OPC_CheckInteger, 0,
19178 OPC_MoveParent,
19179 OPC_CheckType, MVT::v16i8,
19180 OPC_EmitConvertToTarget2,
19181 OPC_EmitInteger32, 0,
19182 OPC_EmitRegisterI32, 0 ,
19183 OPC_EmitRegisterI32, 0 ,
19184 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRUNs16bh),
19185 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19186 23,
19187 OPC_CheckInteger, 2,
19188 OPC_MoveParent,
19189 OPC_CheckType, MVT::v16i8,
19190 OPC_EmitConvertToTarget2,
19191 OPC_EmitInteger32, 0,
19192 OPC_EmitRegisterI32, 0 ,
19193 OPC_EmitRegisterI32, 0 ,
19194 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRUNs16th),
19195 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
19196 0,
19197 0,
19198 0,
19199 0,
19200 0,
19201 123|128,4,
19202 OPC_CheckChild1Type, MVT::v8i16,
19203 OPC_RecordChild2,
19204 OPC_CheckChild2Type, MVT::v4i32,
19205 OPC_RecordChild3,
19206 OPC_MoveChild3,
19207 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
19208 OPC_CheckPredicate, 30,
19209 OPC_MoveParent,
19210 OPC_Scope, 121|128,1,
19211 OPC_CheckChild4Integer, 0,
19212 OPC_MoveChild5,
19213 OPC_Scope, 121,
19214 OPC_CheckInteger, 0,
19215 OPC_MoveSibling6,
19216 OPC_Scope, 57,
19217 OPC_CheckInteger, 0,
19218 OPC_MoveSibling7,
19219 OPC_CheckInteger, 0,
19220 OPC_MoveSibling, 8,
19221 OPC_Scope, 23,
19222 OPC_CheckInteger, 0,
19223 OPC_MoveParent,
19224 OPC_CheckType, MVT::v8i16,
19225 OPC_EmitConvertToTarget2,
19226 OPC_EmitInteger32, 0,
19227 OPC_EmitRegisterI32, 0 ,
19228 OPC_EmitRegisterI32, 0 ,
19229 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi32bh),
19230 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19231 23,
19232 OPC_CheckInteger, 2,
19233 OPC_MoveParent,
19234 OPC_CheckType, MVT::v8i16,
19235 OPC_EmitConvertToTarget2,
19236 OPC_EmitInteger32, 0,
19237 OPC_EmitRegisterI32, 0 ,
19238 OPC_EmitRegisterI32, 0 ,
19239 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi32th),
19240 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19241 0,
19242 57,
19243 OPC_CheckInteger, 2,
19244 OPC_MoveSibling7,
19245 OPC_CheckInteger, 2,
19246 OPC_MoveSibling, 8,
19247 OPC_Scope, 23,
19248 OPC_CheckInteger, 0,
19249 OPC_MoveParent,
19250 OPC_CheckType, MVT::v8i16,
19251 OPC_EmitConvertToTarget2,
19252 OPC_EmitInteger32, 0,
19253 OPC_EmitRegisterI32, 0 ,
19254 OPC_EmitRegisterI32, 0 ,
19255 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi32bh),
19256 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19257 23,
19258 OPC_CheckInteger, 2,
19259 OPC_MoveParent,
19260 OPC_CheckType, MVT::v8i16,
19261 OPC_EmitConvertToTarget2,
19262 OPC_EmitInteger32, 0,
19263 OPC_EmitRegisterI32, 0 ,
19264 OPC_EmitRegisterI32, 0 ,
19265 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi32th),
19266 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19267 0,
19268 0,
19269 121,
19270 OPC_CheckInteger, 2,
19271 OPC_MoveSibling6,
19272 OPC_Scope, 57,
19273 OPC_CheckInteger, 0,
19274 OPC_MoveSibling7,
19275 OPC_CheckInteger, 0,
19276 OPC_MoveSibling, 8,
19277 OPC_Scope, 23,
19278 OPC_CheckInteger, 0,
19279 OPC_MoveParent,
19280 OPC_CheckType, MVT::v8i16,
19281 OPC_EmitConvertToTarget2,
19282 OPC_EmitInteger32, 0,
19283 OPC_EmitRegisterI32, 0 ,
19284 OPC_EmitRegisterI32, 0 ,
19285 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi32bh),
19286 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19287 23,
19288 OPC_CheckInteger, 2,
19289 OPC_MoveParent,
19290 OPC_CheckType, MVT::v8i16,
19291 OPC_EmitConvertToTarget2,
19292 OPC_EmitInteger32, 0,
19293 OPC_EmitRegisterI32, 0 ,
19294 OPC_EmitRegisterI32, 0 ,
19295 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi32th),
19296 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19297 0,
19298 57,
19299 OPC_CheckInteger, 2,
19300 OPC_MoveSibling7,
19301 OPC_CheckInteger, 2,
19302 OPC_MoveSibling, 8,
19303 OPC_Scope, 23,
19304 OPC_CheckInteger, 0,
19305 OPC_MoveParent,
19306 OPC_CheckType, MVT::v8i16,
19307 OPC_EmitConvertToTarget2,
19308 OPC_EmitInteger32, 0,
19309 OPC_EmitRegisterI32, 0 ,
19310 OPC_EmitRegisterI32, 0 ,
19311 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi32bh),
19312 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19313 23,
19314 OPC_CheckInteger, 2,
19315 OPC_MoveParent,
19316 OPC_CheckType, MVT::v8i16,
19317 OPC_EmitConvertToTarget2,
19318 OPC_EmitInteger32, 0,
19319 OPC_EmitRegisterI32, 0 ,
19320 OPC_EmitRegisterI32, 0 ,
19321 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi32th),
19322 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19323 0,
19324 0,
19325 0,
19326 111|128,2,
19327 OPC_CheckChild4Integer, 2,
19328 OPC_MoveChild5,
19329 OPC_Scope, 51|128,1,
19330 OPC_CheckInteger, 0,
19331 OPC_MoveSibling6,
19332 OPC_Scope, 57,
19333 OPC_CheckInteger, 0,
19334 OPC_MoveSibling7,
19335 OPC_CheckInteger, 0,
19336 OPC_MoveSibling, 8,
19337 OPC_Scope, 23,
19338 OPC_CheckInteger, 0,
19339 OPC_MoveParent,
19340 OPC_CheckType, MVT::v8i16,
19341 OPC_EmitConvertToTarget2,
19342 OPC_EmitInteger32, 0,
19343 OPC_EmitRegisterI32, 0 ,
19344 OPC_EmitRegisterI32, 0 ,
19345 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhs32),
19346 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19347 23,
19348 OPC_CheckInteger, 2,
19349 OPC_MoveParent,
19350 OPC_CheckType, MVT::v8i16,
19351 OPC_EmitConvertToTarget2,
19352 OPC_EmitInteger32, 0,
19353 OPC_EmitRegisterI32, 0 ,
19354 OPC_EmitRegisterI32, 0 ,
19355 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNths32),
19356 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19357 0,
19358 115,
19359 OPC_CheckInteger, 2,
19360 OPC_MoveSibling7,
19361 OPC_Scope, 54,
19362 OPC_CheckInteger, 2,
19363 OPC_MoveSibling, 8,
19364 OPC_Scope, 23,
19365 OPC_CheckInteger, 0,
19366 OPC_MoveParent,
19367 OPC_CheckType, MVT::v8i16,
19368 OPC_EmitConvertToTarget2,
19369 OPC_EmitInteger32, 0,
19370 OPC_EmitRegisterI32, 0 ,
19371 OPC_EmitRegisterI32, 0 ,
19372 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhu32),
19373 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19374 23,
19375 OPC_CheckInteger, 2,
19376 OPC_MoveParent,
19377 OPC_CheckType, MVT::v8i16,
19378 OPC_EmitConvertToTarget2,
19379 OPC_EmitInteger32, 0,
19380 OPC_EmitRegisterI32, 0 ,
19381 OPC_EmitRegisterI32, 0 ,
19382 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNthu32),
19383 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19384 0,
19385 54,
19386 OPC_CheckInteger, 0,
19387 OPC_MoveSibling, 8,
19388 OPC_Scope, 23,
19389 OPC_CheckInteger, 0,
19390 OPC_MoveParent,
19391 OPC_CheckType, MVT::v8i16,
19392 OPC_EmitConvertToTarget2,
19393 OPC_EmitInteger32, 0,
19394 OPC_EmitRegisterI32, 0 ,
19395 OPC_EmitRegisterI32, 0 ,
19396 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRUNs32bh),
19397 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19398 23,
19399 OPC_CheckInteger, 2,
19400 OPC_MoveParent,
19401 OPC_CheckType, MVT::v8i16,
19402 OPC_EmitConvertToTarget2,
19403 OPC_EmitInteger32, 0,
19404 OPC_EmitRegisterI32, 0 ,
19405 OPC_EmitRegisterI32, 0 ,
19406 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRUNs32th),
19407 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19408 0,
19409 0,
19410 0,
19411 51|128,1,
19412 OPC_CheckInteger, 2,
19413 OPC_MoveSibling6,
19414 OPC_Scope, 57,
19415 OPC_CheckInteger, 0,
19416 OPC_MoveSibling7,
19417 OPC_CheckInteger, 0,
19418 OPC_MoveSibling, 8,
19419 OPC_Scope, 23,
19420 OPC_CheckInteger, 0,
19421 OPC_MoveParent,
19422 OPC_CheckType, MVT::v8i16,
19423 OPC_EmitConvertToTarget2,
19424 OPC_EmitInteger32, 0,
19425 OPC_EmitRegisterI32, 0 ,
19426 OPC_EmitRegisterI32, 0 ,
19427 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNbhs32),
19428 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19429 23,
19430 OPC_CheckInteger, 2,
19431 OPC_MoveParent,
19432 OPC_CheckType, MVT::v8i16,
19433 OPC_EmitConvertToTarget2,
19434 OPC_EmitInteger32, 0,
19435 OPC_EmitRegisterI32, 0 ,
19436 OPC_EmitRegisterI32, 0 ,
19437 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNths32),
19438 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19439 0,
19440 115,
19441 OPC_CheckInteger, 2,
19442 OPC_MoveSibling7,
19443 OPC_Scope, 54,
19444 OPC_CheckInteger, 2,
19445 OPC_MoveSibling, 8,
19446 OPC_Scope, 23,
19447 OPC_CheckInteger, 0,
19448 OPC_MoveParent,
19449 OPC_CheckType, MVT::v8i16,
19450 OPC_EmitConvertToTarget2,
19451 OPC_EmitInteger32, 0,
19452 OPC_EmitRegisterI32, 0 ,
19453 OPC_EmitRegisterI32, 0 ,
19454 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNbhu32),
19455 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19456 23,
19457 OPC_CheckInteger, 2,
19458 OPC_MoveParent,
19459 OPC_CheckType, MVT::v8i16,
19460 OPC_EmitConvertToTarget2,
19461 OPC_EmitInteger32, 0,
19462 OPC_EmitRegisterI32, 0 ,
19463 OPC_EmitRegisterI32, 0 ,
19464 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNthu32),
19465 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19466 0,
19467 54,
19468 OPC_CheckInteger, 0,
19469 OPC_MoveSibling, 8,
19470 OPC_Scope, 23,
19471 OPC_CheckInteger, 0,
19472 OPC_MoveParent,
19473 OPC_CheckType, MVT::v8i16,
19474 OPC_EmitConvertToTarget2,
19475 OPC_EmitInteger32, 0,
19476 OPC_EmitRegisterI32, 0 ,
19477 OPC_EmitRegisterI32, 0 ,
19478 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRUNs32bh),
19479 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19480 23,
19481 OPC_CheckInteger, 2,
19482 OPC_MoveParent,
19483 OPC_CheckType, MVT::v8i16,
19484 OPC_EmitConvertToTarget2,
19485 OPC_EmitInteger32, 0,
19486 OPC_EmitRegisterI32, 0 ,
19487 OPC_EmitRegisterI32, 0 ,
19488 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRUNs32th),
19489 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
19490 0,
19491 0,
19492 0,
19493 0,
19494 0,
19495 0,
19496 124|128,10,
19497 OPC_CheckChild0Integer, 92|128,52,
19498 OPC_RecordChild1,
19499 OPC_Scope, 57|128,5,
19500 OPC_CheckChild1Type, MVT::v16i8,
19501 OPC_RecordChild2,
19502 OPC_CheckChild2Type, MVT::v8i16,
19503 OPC_RecordChild3,
19504 OPC_MoveChild3,
19505 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
19506 OPC_CheckPredicate, 29,
19507 OPC_MoveParent,
19508 OPC_Scope, 19|128,2,
19509 OPC_CheckChild4Integer, 0,
19510 OPC_MoveChild5,
19511 OPC_Scope, 5|128,1,
19512 OPC_CheckInteger, 0,
19513 OPC_MoveSibling6,
19514 OPC_Scope, 63,
19515 OPC_CheckInteger, 0,
19516 OPC_MoveSibling7,
19517 OPC_CheckInteger, 0,
19518 OPC_MoveSibling, 8,
19519 OPC_Scope, 26,
19520 OPC_CheckInteger, 0,
19521 OPC_MoveSibling, 9,
19522 OPC_RecordNode,
19523 OPC_CheckType, MVT::v8i1,
19524 OPC_MoveParent,
19525 OPC_CheckType, MVT::v16i8,
19526 OPC_EmitConvertToTarget2,
19527 OPC_EmitInteger32, 2,
19528 OPC_EmitRegisterI32, 0 ,
19529 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi16bh),
19530 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19531 26,
19532 OPC_CheckInteger, 2,
19533 OPC_MoveSibling, 9,
19534 OPC_RecordNode,
19535 OPC_CheckType, MVT::v8i1,
19536 OPC_MoveParent,
19537 OPC_CheckType, MVT::v16i8,
19538 OPC_EmitConvertToTarget2,
19539 OPC_EmitInteger32, 2,
19540 OPC_EmitRegisterI32, 0 ,
19541 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi16th),
19542 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19543 0,
19544 63,
19545 OPC_CheckInteger, 2,
19546 OPC_MoveSibling7,
19547 OPC_CheckInteger, 2,
19548 OPC_MoveSibling, 8,
19549 OPC_Scope, 26,
19550 OPC_CheckInteger, 0,
19551 OPC_MoveSibling, 9,
19552 OPC_RecordNode,
19553 OPC_CheckType, MVT::v8i1,
19554 OPC_MoveParent,
19555 OPC_CheckType, MVT::v16i8,
19556 OPC_EmitConvertToTarget2,
19557 OPC_EmitInteger32, 2,
19558 OPC_EmitRegisterI32, 0 ,
19559 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi16bh),
19560 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19561 26,
19562 OPC_CheckInteger, 2,
19563 OPC_MoveSibling, 9,
19564 OPC_RecordNode,
19565 OPC_CheckType, MVT::v8i1,
19566 OPC_MoveParent,
19567 OPC_CheckType, MVT::v16i8,
19568 OPC_EmitConvertToTarget2,
19569 OPC_EmitInteger32, 2,
19570 OPC_EmitRegisterI32, 0 ,
19571 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi16th),
19572 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19573 0,
19574 0,
19575 5|128,1,
19576 OPC_CheckInteger, 2,
19577 OPC_MoveSibling6,
19578 OPC_Scope, 63,
19579 OPC_CheckInteger, 0,
19580 OPC_MoveSibling7,
19581 OPC_CheckInteger, 0,
19582 OPC_MoveSibling, 8,
19583 OPC_Scope, 26,
19584 OPC_CheckInteger, 0,
19585 OPC_MoveSibling, 9,
19586 OPC_RecordNode,
19587 OPC_CheckType, MVT::v8i1,
19588 OPC_MoveParent,
19589 OPC_CheckType, MVT::v16i8,
19590 OPC_EmitConvertToTarget2,
19591 OPC_EmitInteger32, 2,
19592 OPC_EmitRegisterI32, 0 ,
19593 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi16bh),
19594 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19595 26,
19596 OPC_CheckInteger, 2,
19597 OPC_MoveSibling, 9,
19598 OPC_RecordNode,
19599 OPC_CheckType, MVT::v8i1,
19600 OPC_MoveParent,
19601 OPC_CheckType, MVT::v16i8,
19602 OPC_EmitConvertToTarget2,
19603 OPC_EmitInteger32, 2,
19604 OPC_EmitRegisterI32, 0 ,
19605 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi16th),
19606 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19607 0,
19608 63,
19609 OPC_CheckInteger, 2,
19610 OPC_MoveSibling7,
19611 OPC_CheckInteger, 2,
19612 OPC_MoveSibling, 8,
19613 OPC_Scope, 26,
19614 OPC_CheckInteger, 0,
19615 OPC_MoveSibling, 9,
19616 OPC_RecordNode,
19617 OPC_CheckType, MVT::v8i1,
19618 OPC_MoveParent,
19619 OPC_CheckType, MVT::v16i8,
19620 OPC_EmitConvertToTarget2,
19621 OPC_EmitInteger32, 2,
19622 OPC_EmitRegisterI32, 0 ,
19623 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi16bh),
19624 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19625 26,
19626 OPC_CheckInteger, 2,
19627 OPC_MoveSibling, 9,
19628 OPC_RecordNode,
19629 OPC_CheckType, MVT::v8i1,
19630 OPC_MoveParent,
19631 OPC_CheckType, MVT::v16i8,
19632 OPC_EmitConvertToTarget2,
19633 OPC_EmitInteger32, 2,
19634 OPC_EmitRegisterI32, 0 ,
19635 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi16th),
19636 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19637 0,
19638 0,
19639 0,
19640 19|128,3,
19641 OPC_CheckChild4Integer, 2,
19642 OPC_MoveChild5,
19643 OPC_Scope, 69|128,1,
19644 OPC_CheckInteger, 0,
19645 OPC_MoveSibling6,
19646 OPC_Scope, 63,
19647 OPC_CheckInteger, 0,
19648 OPC_MoveSibling7,
19649 OPC_CheckInteger, 0,
19650 OPC_MoveSibling, 8,
19651 OPC_Scope, 26,
19652 OPC_CheckInteger, 0,
19653 OPC_MoveSibling, 9,
19654 OPC_RecordNode,
19655 OPC_CheckType, MVT::v8i1,
19656 OPC_MoveParent,
19657 OPC_CheckType, MVT::v16i8,
19658 OPC_EmitConvertToTarget2,
19659 OPC_EmitInteger32, 2,
19660 OPC_EmitRegisterI32, 0 ,
19661 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhs16),
19662 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19663 26,
19664 OPC_CheckInteger, 2,
19665 OPC_MoveSibling, 9,
19666 OPC_RecordNode,
19667 OPC_CheckType, MVT::v8i1,
19668 OPC_MoveParent,
19669 OPC_CheckType, MVT::v16i8,
19670 OPC_EmitConvertToTarget2,
19671 OPC_EmitInteger32, 2,
19672 OPC_EmitRegisterI32, 0 ,
19673 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNths16),
19674 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19675 0,
19676 127,
19677 OPC_CheckInteger, 2,
19678 OPC_MoveSibling7,
19679 OPC_Scope, 60,
19680 OPC_CheckInteger, 2,
19681 OPC_MoveSibling, 8,
19682 OPC_Scope, 26,
19683 OPC_CheckInteger, 0,
19684 OPC_MoveSibling, 9,
19685 OPC_RecordNode,
19686 OPC_CheckType, MVT::v8i1,
19687 OPC_MoveParent,
19688 OPC_CheckType, MVT::v16i8,
19689 OPC_EmitConvertToTarget2,
19690 OPC_EmitInteger32, 2,
19691 OPC_EmitRegisterI32, 0 ,
19692 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhu16),
19693 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19694 26,
19695 OPC_CheckInteger, 2,
19696 OPC_MoveSibling, 9,
19697 OPC_RecordNode,
19698 OPC_CheckType, MVT::v8i1,
19699 OPC_MoveParent,
19700 OPC_CheckType, MVT::v16i8,
19701 OPC_EmitConvertToTarget2,
19702 OPC_EmitInteger32, 2,
19703 OPC_EmitRegisterI32, 0 ,
19704 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNthu16),
19705 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19706 0,
19707 60,
19708 OPC_CheckInteger, 0,
19709 OPC_MoveSibling, 8,
19710 OPC_Scope, 26,
19711 OPC_CheckInteger, 0,
19712 OPC_MoveSibling, 9,
19713 OPC_RecordNode,
19714 OPC_CheckType, MVT::v8i1,
19715 OPC_MoveParent,
19716 OPC_CheckType, MVT::v16i8,
19717 OPC_EmitConvertToTarget2,
19718 OPC_EmitInteger32, 2,
19719 OPC_EmitRegisterI32, 0 ,
19720 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRUNs16bh),
19721 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19722 26,
19723 OPC_CheckInteger, 2,
19724 OPC_MoveSibling, 9,
19725 OPC_RecordNode,
19726 OPC_CheckType, MVT::v8i1,
19727 OPC_MoveParent,
19728 OPC_CheckType, MVT::v16i8,
19729 OPC_EmitConvertToTarget2,
19730 OPC_EmitInteger32, 2,
19731 OPC_EmitRegisterI32, 0 ,
19732 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRUNs16th),
19733 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19734 0,
19735 0,
19736 0,
19737 69|128,1,
19738 OPC_CheckInteger, 2,
19739 OPC_MoveSibling6,
19740 OPC_Scope, 63,
19741 OPC_CheckInteger, 0,
19742 OPC_MoveSibling7,
19743 OPC_CheckInteger, 0,
19744 OPC_MoveSibling, 8,
19745 OPC_Scope, 26,
19746 OPC_CheckInteger, 0,
19747 OPC_MoveSibling, 9,
19748 OPC_RecordNode,
19749 OPC_CheckType, MVT::v8i1,
19750 OPC_MoveParent,
19751 OPC_CheckType, MVT::v16i8,
19752 OPC_EmitConvertToTarget2,
19753 OPC_EmitInteger32, 2,
19754 OPC_EmitRegisterI32, 0 ,
19755 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNbhs16),
19756 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19757 26,
19758 OPC_CheckInteger, 2,
19759 OPC_MoveSibling, 9,
19760 OPC_RecordNode,
19761 OPC_CheckType, MVT::v8i1,
19762 OPC_MoveParent,
19763 OPC_CheckType, MVT::v16i8,
19764 OPC_EmitConvertToTarget2,
19765 OPC_EmitInteger32, 2,
19766 OPC_EmitRegisterI32, 0 ,
19767 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNths16),
19768 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19769 0,
19770 127,
19771 OPC_CheckInteger, 2,
19772 OPC_MoveSibling7,
19773 OPC_Scope, 60,
19774 OPC_CheckInteger, 2,
19775 OPC_MoveSibling, 8,
19776 OPC_Scope, 26,
19777 OPC_CheckInteger, 0,
19778 OPC_MoveSibling, 9,
19779 OPC_RecordNode,
19780 OPC_CheckType, MVT::v8i1,
19781 OPC_MoveParent,
19782 OPC_CheckType, MVT::v16i8,
19783 OPC_EmitConvertToTarget2,
19784 OPC_EmitInteger32, 2,
19785 OPC_EmitRegisterI32, 0 ,
19786 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNbhu16),
19787 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19788 26,
19789 OPC_CheckInteger, 2,
19790 OPC_MoveSibling, 9,
19791 OPC_RecordNode,
19792 OPC_CheckType, MVT::v8i1,
19793 OPC_MoveParent,
19794 OPC_CheckType, MVT::v16i8,
19795 OPC_EmitConvertToTarget2,
19796 OPC_EmitInteger32, 2,
19797 OPC_EmitRegisterI32, 0 ,
19798 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNthu16),
19799 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19800 0,
19801 60,
19802 OPC_CheckInteger, 0,
19803 OPC_MoveSibling, 8,
19804 OPC_Scope, 26,
19805 OPC_CheckInteger, 0,
19806 OPC_MoveSibling, 9,
19807 OPC_RecordNode,
19808 OPC_CheckType, MVT::v8i1,
19809 OPC_MoveParent,
19810 OPC_CheckType, MVT::v16i8,
19811 OPC_EmitConvertToTarget2,
19812 OPC_EmitInteger32, 2,
19813 OPC_EmitRegisterI32, 0 ,
19814 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRUNs16bh),
19815 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19816 26,
19817 OPC_CheckInteger, 2,
19818 OPC_MoveSibling, 9,
19819 OPC_RecordNode,
19820 OPC_CheckType, MVT::v8i1,
19821 OPC_MoveParent,
19822 OPC_CheckType, MVT::v16i8,
19823 OPC_EmitConvertToTarget2,
19824 OPC_EmitInteger32, 2,
19825 OPC_EmitRegisterI32, 0 ,
19826 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRUNs16th),
19827 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
19828 0,
19829 0,
19830 0,
19831 0,
19832 0,
19833 57|128,5,
19834 OPC_CheckChild1Type, MVT::v8i16,
19835 OPC_RecordChild2,
19836 OPC_CheckChild2Type, MVT::v4i32,
19837 OPC_RecordChild3,
19838 OPC_MoveChild3,
19839 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
19840 OPC_CheckPredicate, 30,
19841 OPC_MoveParent,
19842 OPC_Scope, 19|128,2,
19843 OPC_CheckChild4Integer, 0,
19844 OPC_MoveChild5,
19845 OPC_Scope, 5|128,1,
19846 OPC_CheckInteger, 0,
19847 OPC_MoveSibling6,
19848 OPC_Scope, 63,
19849 OPC_CheckInteger, 0,
19850 OPC_MoveSibling7,
19851 OPC_CheckInteger, 0,
19852 OPC_MoveSibling, 8,
19853 OPC_Scope, 26,
19854 OPC_CheckInteger, 0,
19855 OPC_MoveSibling, 9,
19856 OPC_RecordNode,
19857 OPC_CheckType, MVT::v4i1,
19858 OPC_MoveParent,
19859 OPC_CheckType, MVT::v8i16,
19860 OPC_EmitConvertToTarget2,
19861 OPC_EmitInteger32, 2,
19862 OPC_EmitRegisterI32, 0 ,
19863 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi32bh),
19864 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
19865 26,
19866 OPC_CheckInteger, 2,
19867 OPC_MoveSibling, 9,
19868 OPC_RecordNode,
19869 OPC_CheckType, MVT::v4i1,
19870 OPC_MoveParent,
19871 OPC_CheckType, MVT::v8i16,
19872 OPC_EmitConvertToTarget2,
19873 OPC_EmitInteger32, 2,
19874 OPC_EmitRegisterI32, 0 ,
19875 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi32th),
19876 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
19877 0,
19878 63,
19879 OPC_CheckInteger, 2,
19880 OPC_MoveSibling7,
19881 OPC_CheckInteger, 2,
19882 OPC_MoveSibling, 8,
19883 OPC_Scope, 26,
19884 OPC_CheckInteger, 0,
19885 OPC_MoveSibling, 9,
19886 OPC_RecordNode,
19887 OPC_CheckType, MVT::v4i1,
19888 OPC_MoveParent,
19889 OPC_CheckType, MVT::v8i16,
19890 OPC_EmitConvertToTarget2,
19891 OPC_EmitInteger32, 2,
19892 OPC_EmitRegisterI32, 0 ,
19893 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi32bh),
19894 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
19895 26,
19896 OPC_CheckInteger, 2,
19897 OPC_MoveSibling, 9,
19898 OPC_RecordNode,
19899 OPC_CheckType, MVT::v4i1,
19900 OPC_MoveParent,
19901 OPC_CheckType, MVT::v8i16,
19902 OPC_EmitConvertToTarget2,
19903 OPC_EmitInteger32, 2,
19904 OPC_EmitRegisterI32, 0 ,
19905 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHRNi32th),
19906 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
19907 0,
19908 0,
19909 5|128,1,
19910 OPC_CheckInteger, 2,
19911 OPC_MoveSibling6,
19912 OPC_Scope, 63,
19913 OPC_CheckInteger, 0,
19914 OPC_MoveSibling7,
19915 OPC_CheckInteger, 0,
19916 OPC_MoveSibling, 8,
19917 OPC_Scope, 26,
19918 OPC_CheckInteger, 0,
19919 OPC_MoveSibling, 9,
19920 OPC_RecordNode,
19921 OPC_CheckType, MVT::v4i1,
19922 OPC_MoveParent,
19923 OPC_CheckType, MVT::v8i16,
19924 OPC_EmitConvertToTarget2,
19925 OPC_EmitInteger32, 2,
19926 OPC_EmitRegisterI32, 0 ,
19927 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi32bh),
19928 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
19929 26,
19930 OPC_CheckInteger, 2,
19931 OPC_MoveSibling, 9,
19932 OPC_RecordNode,
19933 OPC_CheckType, MVT::v4i1,
19934 OPC_MoveParent,
19935 OPC_CheckType, MVT::v8i16,
19936 OPC_EmitConvertToTarget2,
19937 OPC_EmitInteger32, 2,
19938 OPC_EmitRegisterI32, 0 ,
19939 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi32th),
19940 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
19941 0,
19942 63,
19943 OPC_CheckInteger, 2,
19944 OPC_MoveSibling7,
19945 OPC_CheckInteger, 2,
19946 OPC_MoveSibling, 8,
19947 OPC_Scope, 26,
19948 OPC_CheckInteger, 0,
19949 OPC_MoveSibling, 9,
19950 OPC_RecordNode,
19951 OPC_CheckType, MVT::v4i1,
19952 OPC_MoveParent,
19953 OPC_CheckType, MVT::v8i16,
19954 OPC_EmitConvertToTarget2,
19955 OPC_EmitInteger32, 2,
19956 OPC_EmitRegisterI32, 0 ,
19957 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi32bh),
19958 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
19959 26,
19960 OPC_CheckInteger, 2,
19961 OPC_MoveSibling, 9,
19962 OPC_RecordNode,
19963 OPC_CheckType, MVT::v4i1,
19964 OPC_MoveParent,
19965 OPC_CheckType, MVT::v8i16,
19966 OPC_EmitConvertToTarget2,
19967 OPC_EmitInteger32, 2,
19968 OPC_EmitRegisterI32, 0 ,
19969 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHRNi32th),
19970 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
19971 0,
19972 0,
19973 0,
19974 19|128,3,
19975 OPC_CheckChild4Integer, 2,
19976 OPC_MoveChild5,
19977 OPC_Scope, 69|128,1,
19978 OPC_CheckInteger, 0,
19979 OPC_MoveSibling6,
19980 OPC_Scope, 63,
19981 OPC_CheckInteger, 0,
19982 OPC_MoveSibling7,
19983 OPC_CheckInteger, 0,
19984 OPC_MoveSibling, 8,
19985 OPC_Scope, 26,
19986 OPC_CheckInteger, 0,
19987 OPC_MoveSibling, 9,
19988 OPC_RecordNode,
19989 OPC_CheckType, MVT::v4i1,
19990 OPC_MoveParent,
19991 OPC_CheckType, MVT::v8i16,
19992 OPC_EmitConvertToTarget2,
19993 OPC_EmitInteger32, 2,
19994 OPC_EmitRegisterI32, 0 ,
19995 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhs32),
19996 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
19997 26,
19998 OPC_CheckInteger, 2,
19999 OPC_MoveSibling, 9,
20000 OPC_RecordNode,
20001 OPC_CheckType, MVT::v4i1,
20002 OPC_MoveParent,
20003 OPC_CheckType, MVT::v8i16,
20004 OPC_EmitConvertToTarget2,
20005 OPC_EmitInteger32, 2,
20006 OPC_EmitRegisterI32, 0 ,
20007 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNths32),
20008 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
20009 0,
20010 127,
20011 OPC_CheckInteger, 2,
20012 OPC_MoveSibling7,
20013 OPC_Scope, 60,
20014 OPC_CheckInteger, 2,
20015 OPC_MoveSibling, 8,
20016 OPC_Scope, 26,
20017 OPC_CheckInteger, 0,
20018 OPC_MoveSibling, 9,
20019 OPC_RecordNode,
20020 OPC_CheckType, MVT::v4i1,
20021 OPC_MoveParent,
20022 OPC_CheckType, MVT::v8i16,
20023 OPC_EmitConvertToTarget2,
20024 OPC_EmitInteger32, 2,
20025 OPC_EmitRegisterI32, 0 ,
20026 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhu32),
20027 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
20028 26,
20029 OPC_CheckInteger, 2,
20030 OPC_MoveSibling, 9,
20031 OPC_RecordNode,
20032 OPC_CheckType, MVT::v4i1,
20033 OPC_MoveParent,
20034 OPC_CheckType, MVT::v8i16,
20035 OPC_EmitConvertToTarget2,
20036 OPC_EmitInteger32, 2,
20037 OPC_EmitRegisterI32, 0 ,
20038 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNthu32),
20039 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
20040 0,
20041 60,
20042 OPC_CheckInteger, 0,
20043 OPC_MoveSibling, 8,
20044 OPC_Scope, 26,
20045 OPC_CheckInteger, 0,
20046 OPC_MoveSibling, 9,
20047 OPC_RecordNode,
20048 OPC_CheckType, MVT::v4i1,
20049 OPC_MoveParent,
20050 OPC_CheckType, MVT::v8i16,
20051 OPC_EmitConvertToTarget2,
20052 OPC_EmitInteger32, 2,
20053 OPC_EmitRegisterI32, 0 ,
20054 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRUNs32bh),
20055 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
20056 26,
20057 OPC_CheckInteger, 2,
20058 OPC_MoveSibling, 9,
20059 OPC_RecordNode,
20060 OPC_CheckType, MVT::v4i1,
20061 OPC_MoveParent,
20062 OPC_CheckType, MVT::v8i16,
20063 OPC_EmitConvertToTarget2,
20064 OPC_EmitInteger32, 2,
20065 OPC_EmitRegisterI32, 0 ,
20066 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRUNs32th),
20067 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
20068 0,
20069 0,
20070 0,
20071 69|128,1,
20072 OPC_CheckInteger, 2,
20073 OPC_MoveSibling6,
20074 OPC_Scope, 63,
20075 OPC_CheckInteger, 0,
20076 OPC_MoveSibling7,
20077 OPC_CheckInteger, 0,
20078 OPC_MoveSibling, 8,
20079 OPC_Scope, 26,
20080 OPC_CheckInteger, 0,
20081 OPC_MoveSibling, 9,
20082 OPC_RecordNode,
20083 OPC_CheckType, MVT::v4i1,
20084 OPC_MoveParent,
20085 OPC_CheckType, MVT::v8i16,
20086 OPC_EmitConvertToTarget2,
20087 OPC_EmitInteger32, 2,
20088 OPC_EmitRegisterI32, 0 ,
20089 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNbhs32),
20090 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
20091 26,
20092 OPC_CheckInteger, 2,
20093 OPC_MoveSibling, 9,
20094 OPC_RecordNode,
20095 OPC_CheckType, MVT::v4i1,
20096 OPC_MoveParent,
20097 OPC_CheckType, MVT::v8i16,
20098 OPC_EmitConvertToTarget2,
20099 OPC_EmitInteger32, 2,
20100 OPC_EmitRegisterI32, 0 ,
20101 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNths32),
20102 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
20103 0,
20104 127,
20105 OPC_CheckInteger, 2,
20106 OPC_MoveSibling7,
20107 OPC_Scope, 60,
20108 OPC_CheckInteger, 2,
20109 OPC_MoveSibling, 8,
20110 OPC_Scope, 26,
20111 OPC_CheckInteger, 0,
20112 OPC_MoveSibling, 9,
20113 OPC_RecordNode,
20114 OPC_CheckType, MVT::v4i1,
20115 OPC_MoveParent,
20116 OPC_CheckType, MVT::v8i16,
20117 OPC_EmitConvertToTarget2,
20118 OPC_EmitInteger32, 2,
20119 OPC_EmitRegisterI32, 0 ,
20120 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNbhu32),
20121 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
20122 26,
20123 OPC_CheckInteger, 2,
20124 OPC_MoveSibling, 9,
20125 OPC_RecordNode,
20126 OPC_CheckType, MVT::v4i1,
20127 OPC_MoveParent,
20128 OPC_CheckType, MVT::v8i16,
20129 OPC_EmitConvertToTarget2,
20130 OPC_EmitInteger32, 2,
20131 OPC_EmitRegisterI32, 0 ,
20132 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRNthu32),
20133 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
20134 0,
20135 60,
20136 OPC_CheckInteger, 0,
20137 OPC_MoveSibling, 8,
20138 OPC_Scope, 26,
20139 OPC_CheckInteger, 0,
20140 OPC_MoveSibling, 9,
20141 OPC_RecordNode,
20142 OPC_CheckType, MVT::v4i1,
20143 OPC_MoveParent,
20144 OPC_CheckType, MVT::v8i16,
20145 OPC_EmitConvertToTarget2,
20146 OPC_EmitInteger32, 2,
20147 OPC_EmitRegisterI32, 0 ,
20148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRUNs32bh),
20149 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
20150 26,
20151 OPC_CheckInteger, 2,
20152 OPC_MoveSibling, 9,
20153 OPC_RecordNode,
20154 OPC_CheckType, MVT::v4i1,
20155 OPC_MoveParent,
20156 OPC_CheckType, MVT::v8i16,
20157 OPC_EmitConvertToTarget2,
20158 OPC_EmitInteger32, 2,
20159 OPC_EmitRegisterI32, 0 ,
20160 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHRUNs32th),
20161 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
20162 0,
20163 0,
20164 0,
20165 0,
20166 0,
20167 0,
20168 110|128,3,
20169 OPC_CheckChild0Integer, 86|128,52,
20170 OPC_RecordChild1,
20171 OPC_SwitchType , 113|128,1, MVT::v8i16,
20172 OPC_CheckChild1Type, MVT::v16i8,
20173 OPC_Scope, 125,
20174 OPC_RecordChild2,
20175 OPC_Scope, 60,
20176 OPC_CheckChild3Integer, 0,
20177 OPC_Scope, 27,
20178 OPC_CheckChild4Integer, 0,
20179 OPC_CheckComplexPat, /*CP*/24, /*#*/1,
20180 OPC_EmitInteger32, 0,
20181 OPC_EmitRegisterI32, 0 ,
20182 OPC_EmitRegisterI32, 0 ,
20183 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20184 MVT::v4i32, 0,
20185 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_imms8bh),
20186 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
20187 27,
20188 OPC_CheckChild4Integer, 2,
20189 OPC_CheckComplexPat, /*CP*/24, /*#*/1,
20190 OPC_EmitInteger32, 0,
20191 OPC_EmitRegisterI32, 0 ,
20192 OPC_EmitRegisterI32, 0 ,
20193 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20194 MVT::v4i32, 0,
20195 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_imms8th),
20196 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
20197 0,
20198 60,
20199 OPC_CheckChild3Integer, 2,
20200 OPC_Scope, 27,
20201 OPC_CheckChild4Integer, 0,
20202 OPC_CheckComplexPat, /*CP*/24, /*#*/1,
20203 OPC_EmitInteger32, 0,
20204 OPC_EmitRegisterI32, 0 ,
20205 OPC_EmitRegisterI32, 0 ,
20206 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20207 MVT::v4i32, 0,
20208 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_immu8bh),
20209 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
20210 27,
20211 OPC_CheckChild4Integer, 2,
20212 OPC_CheckComplexPat, /*CP*/24, /*#*/1,
20213 OPC_EmitInteger32, 0,
20214 OPC_EmitRegisterI32, 0 ,
20215 OPC_EmitRegisterI32, 0 ,
20216 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20217 MVT::v4i32, 0,
20218 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_immu8th),
20219 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
20220 0,
20221 0,
20222 110,
20223 OPC_CheckChild2Integer, 16,
20224 OPC_Scope, 52,
20225 OPC_CheckChild3Integer, 0,
20226 OPC_Scope, 23,
20227 OPC_CheckChild4Integer, 0,
20228 OPC_EmitInteger32, 0,
20229 OPC_EmitRegisterI32, 0 ,
20230 OPC_EmitRegisterI32, 0 ,
20231 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20232 MVT::v4i32, 0,
20233 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lws8bh),
20234 MVT::v8i16, 5, 0, 1, 2, 3, 4,
20235 23,
20236 OPC_CheckChild4Integer, 2,
20237 OPC_EmitInteger32, 0,
20238 OPC_EmitRegisterI32, 0 ,
20239 OPC_EmitRegisterI32, 0 ,
20240 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20241 MVT::v4i32, 0,
20242 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lws8th),
20243 MVT::v8i16, 5, 0, 1, 2, 3, 4,
20244 0,
20245 52,
20246 OPC_CheckChild3Integer, 2,
20247 OPC_Scope, 23,
20248 OPC_CheckChild4Integer, 0,
20249 OPC_EmitInteger32, 0,
20250 OPC_EmitRegisterI32, 0 ,
20251 OPC_EmitRegisterI32, 0 ,
20252 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20253 MVT::v4i32, 0,
20254 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lwu8bh),
20255 MVT::v8i16, 5, 0, 1, 2, 3, 4,
20256 23,
20257 OPC_CheckChild4Integer, 2,
20258 OPC_EmitInteger32, 0,
20259 OPC_EmitRegisterI32, 0 ,
20260 OPC_EmitRegisterI32, 0 ,
20261 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20262 MVT::v4i32, 0,
20263 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lwu8th),
20264 MVT::v8i16, 5, 0, 1, 2, 3, 4,
20265 0,
20266 0,
20267 0,
20268 113|128,1, MVT::v4i32,
20269 OPC_CheckChild1Type, MVT::v8i16,
20270 OPC_Scope, 125,
20271 OPC_RecordChild2,
20272 OPC_Scope, 60,
20273 OPC_CheckChild3Integer, 0,
20274 OPC_Scope, 27,
20275 OPC_CheckChild4Integer, 0,
20276 OPC_CheckComplexPat, /*CP*/25, /*#*/1,
20277 OPC_EmitInteger32, 0,
20278 OPC_EmitRegisterI32, 0 ,
20279 OPC_EmitRegisterI32, 0 ,
20280 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20281 MVT::v4i32, 0,
20282 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_imms16bh),
20283 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
20284 27,
20285 OPC_CheckChild4Integer, 2,
20286 OPC_CheckComplexPat, /*CP*/25, /*#*/1,
20287 OPC_EmitInteger32, 0,
20288 OPC_EmitRegisterI32, 0 ,
20289 OPC_EmitRegisterI32, 0 ,
20290 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20291 MVT::v4i32, 0,
20292 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_imms16th),
20293 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
20294 0,
20295 60,
20296 OPC_CheckChild3Integer, 2,
20297 OPC_Scope, 27,
20298 OPC_CheckChild4Integer, 0,
20299 OPC_CheckComplexPat, /*CP*/25, /*#*/1,
20300 OPC_EmitInteger32, 0,
20301 OPC_EmitRegisterI32, 0 ,
20302 OPC_EmitRegisterI32, 0 ,
20303 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20304 MVT::v4i32, 0,
20305 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_immu16bh),
20306 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
20307 27,
20308 OPC_CheckChild4Integer, 2,
20309 OPC_CheckComplexPat, /*CP*/25, /*#*/1,
20310 OPC_EmitInteger32, 0,
20311 OPC_EmitRegisterI32, 0 ,
20312 OPC_EmitRegisterI32, 0 ,
20313 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20314 MVT::v4i32, 0,
20315 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_immu16th),
20316 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
20317 0,
20318 0,
20319 110,
20320 OPC_CheckChild2Integer, 32,
20321 OPC_Scope, 52,
20322 OPC_CheckChild3Integer, 0,
20323 OPC_Scope, 23,
20324 OPC_CheckChild4Integer, 0,
20325 OPC_EmitInteger32, 0,
20326 OPC_EmitRegisterI32, 0 ,
20327 OPC_EmitRegisterI32, 0 ,
20328 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20329 MVT::v4i32, 0,
20330 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lws16bh),
20331 MVT::v4i32, 5, 0, 1, 2, 3, 4,
20332 23,
20333 OPC_CheckChild4Integer, 2,
20334 OPC_EmitInteger32, 0,
20335 OPC_EmitRegisterI32, 0 ,
20336 OPC_EmitRegisterI32, 0 ,
20337 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20338 MVT::v4i32, 0,
20339 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lws16th),
20340 MVT::v4i32, 5, 0, 1, 2, 3, 4,
20341 0,
20342 52,
20343 OPC_CheckChild3Integer, 2,
20344 OPC_Scope, 23,
20345 OPC_CheckChild4Integer, 0,
20346 OPC_EmitInteger32, 0,
20347 OPC_EmitRegisterI32, 0 ,
20348 OPC_EmitRegisterI32, 0 ,
20349 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20350 MVT::v4i32, 0,
20351 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lwu16bh),
20352 MVT::v4i32, 5, 0, 1, 2, 3, 4,
20353 23,
20354 OPC_CheckChild4Integer, 2,
20355 OPC_EmitInteger32, 0,
20356 OPC_EmitRegisterI32, 0 ,
20357 OPC_EmitRegisterI32, 0 ,
20358 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20359 MVT::v4i32, 0,
20360 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lwu16th),
20361 MVT::v4i32, 5, 0, 1, 2, 3, 4,
20362 0,
20363 0,
20364 0,
20365 0,
20366 94|128,3,
20367 OPC_CheckChild0Integer, 88|128,52,
20368 OPC_RecordChild1,
20369 OPC_SwitchType , 105|128,1, MVT::v8i16,
20370 OPC_CheckChild1Type, MVT::v16i8,
20371 OPC_Scope, 121,
20372 OPC_RecordChild2,
20373 OPC_Scope, 58,
20374 OPC_CheckChild3Integer, 0,
20375 OPC_Scope, 26,
20376 OPC_CheckChild4Integer, 0,
20377 OPC_RecordChild5,
20378 OPC_CheckChild5Type, MVT::v8i1,
20379 OPC_RecordChild6,
20380 OPC_CheckChild6Type, MVT::v8i16,
20381 OPC_CheckComplexPat, /*CP*/24, /*#*/1,
20382 OPC_EmitInteger32, 2,
20383 OPC_EmitRegisterI32, 0 ,
20384 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_imms8bh),
20385 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
20386 26,
20387 OPC_CheckChild4Integer, 2,
20388 OPC_RecordChild5,
20389 OPC_CheckChild5Type, MVT::v8i1,
20390 OPC_RecordChild6,
20391 OPC_CheckChild6Type, MVT::v8i16,
20392 OPC_CheckComplexPat, /*CP*/24, /*#*/1,
20393 OPC_EmitInteger32, 2,
20394 OPC_EmitRegisterI32, 0 ,
20395 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_imms8th),
20396 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
20397 0,
20398 58,
20399 OPC_CheckChild3Integer, 2,
20400 OPC_Scope, 26,
20401 OPC_CheckChild4Integer, 0,
20402 OPC_RecordChild5,
20403 OPC_CheckChild5Type, MVT::v8i1,
20404 OPC_RecordChild6,
20405 OPC_CheckChild6Type, MVT::v8i16,
20406 OPC_CheckComplexPat, /*CP*/24, /*#*/1,
20407 OPC_EmitInteger32, 2,
20408 OPC_EmitRegisterI32, 0 ,
20409 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_immu8bh),
20410 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
20411 26,
20412 OPC_CheckChild4Integer, 2,
20413 OPC_RecordChild5,
20414 OPC_CheckChild5Type, MVT::v8i1,
20415 OPC_RecordChild6,
20416 OPC_CheckChild6Type, MVT::v8i16,
20417 OPC_CheckComplexPat, /*CP*/24, /*#*/1,
20418 OPC_EmitInteger32, 2,
20419 OPC_EmitRegisterI32, 0 ,
20420 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_immu8th),
20421 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
20422 0,
20423 0,
20424 106,
20425 OPC_CheckChild2Integer, 16,
20426 OPC_Scope, 50,
20427 OPC_CheckChild3Integer, 0,
20428 OPC_Scope, 22,
20429 OPC_CheckChild4Integer, 0,
20430 OPC_RecordChild5,
20431 OPC_CheckChild5Type, MVT::v8i1,
20432 OPC_RecordChild6,
20433 OPC_CheckChild6Type, MVT::v8i16,
20434 OPC_EmitInteger32, 2,
20435 OPC_EmitRegisterI32, 0 ,
20436 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lws8bh),
20437 MVT::v8i16, 5, 0, 3, 1, 4, 2,
20438 22,
20439 OPC_CheckChild4Integer, 2,
20440 OPC_RecordChild5,
20441 OPC_CheckChild5Type, MVT::v8i1,
20442 OPC_RecordChild6,
20443 OPC_CheckChild6Type, MVT::v8i16,
20444 OPC_EmitInteger32, 2,
20445 OPC_EmitRegisterI32, 0 ,
20446 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lws8th),
20447 MVT::v8i16, 5, 0, 3, 1, 4, 2,
20448 0,
20449 50,
20450 OPC_CheckChild3Integer, 2,
20451 OPC_Scope, 22,
20452 OPC_CheckChild4Integer, 0,
20453 OPC_RecordChild5,
20454 OPC_CheckChild5Type, MVT::v8i1,
20455 OPC_RecordChild6,
20456 OPC_CheckChild6Type, MVT::v8i16,
20457 OPC_EmitInteger32, 2,
20458 OPC_EmitRegisterI32, 0 ,
20459 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lwu8bh),
20460 MVT::v8i16, 5, 0, 3, 1, 4, 2,
20461 22,
20462 OPC_CheckChild4Integer, 2,
20463 OPC_RecordChild5,
20464 OPC_CheckChild5Type, MVT::v8i1,
20465 OPC_RecordChild6,
20466 OPC_CheckChild6Type, MVT::v8i16,
20467 OPC_EmitInteger32, 2,
20468 OPC_EmitRegisterI32, 0 ,
20469 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lwu8th),
20470 MVT::v8i16, 5, 0, 3, 1, 4, 2,
20471 0,
20472 0,
20473 0,
20474 105|128,1, MVT::v4i32,
20475 OPC_CheckChild1Type, MVT::v8i16,
20476 OPC_Scope, 121,
20477 OPC_RecordChild2,
20478 OPC_Scope, 58,
20479 OPC_CheckChild3Integer, 0,
20480 OPC_Scope, 26,
20481 OPC_CheckChild4Integer, 0,
20482 OPC_RecordChild5,
20483 OPC_CheckChild5Type, MVT::v4i1,
20484 OPC_RecordChild6,
20485 OPC_CheckChild6Type, MVT::v4i32,
20486 OPC_CheckComplexPat, /*CP*/25, /*#*/1,
20487 OPC_EmitInteger32, 2,
20488 OPC_EmitRegisterI32, 0 ,
20489 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_imms16bh),
20490 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
20491 26,
20492 OPC_CheckChild4Integer, 2,
20493 OPC_RecordChild5,
20494 OPC_CheckChild5Type, MVT::v4i1,
20495 OPC_RecordChild6,
20496 OPC_CheckChild6Type, MVT::v4i32,
20497 OPC_CheckComplexPat, /*CP*/25, /*#*/1,
20498 OPC_EmitInteger32, 2,
20499 OPC_EmitRegisterI32, 0 ,
20500 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_imms16th),
20501 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
20502 0,
20503 58,
20504 OPC_CheckChild3Integer, 2,
20505 OPC_Scope, 26,
20506 OPC_CheckChild4Integer, 0,
20507 OPC_RecordChild5,
20508 OPC_CheckChild5Type, MVT::v4i1,
20509 OPC_RecordChild6,
20510 OPC_CheckChild6Type, MVT::v4i32,
20511 OPC_CheckComplexPat, /*CP*/25, /*#*/1,
20512 OPC_EmitInteger32, 2,
20513 OPC_EmitRegisterI32, 0 ,
20514 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_immu16bh),
20515 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
20516 26,
20517 OPC_CheckChild4Integer, 2,
20518 OPC_RecordChild5,
20519 OPC_CheckChild5Type, MVT::v4i1,
20520 OPC_RecordChild6,
20521 OPC_CheckChild6Type, MVT::v4i32,
20522 OPC_CheckComplexPat, /*CP*/25, /*#*/1,
20523 OPC_EmitInteger32, 2,
20524 OPC_EmitRegisterI32, 0 ,
20525 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_immu16th),
20526 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
20527 0,
20528 0,
20529 106,
20530 OPC_CheckChild2Integer, 32,
20531 OPC_Scope, 50,
20532 OPC_CheckChild3Integer, 0,
20533 OPC_Scope, 22,
20534 OPC_CheckChild4Integer, 0,
20535 OPC_RecordChild5,
20536 OPC_CheckChild5Type, MVT::v4i1,
20537 OPC_RecordChild6,
20538 OPC_CheckChild6Type, MVT::v4i32,
20539 OPC_EmitInteger32, 2,
20540 OPC_EmitRegisterI32, 0 ,
20541 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lws16bh),
20542 MVT::v4i32, 5, 0, 3, 1, 4, 2,
20543 22,
20544 OPC_CheckChild4Integer, 2,
20545 OPC_RecordChild5,
20546 OPC_CheckChild5Type, MVT::v4i1,
20547 OPC_RecordChild6,
20548 OPC_CheckChild6Type, MVT::v4i32,
20549 OPC_EmitInteger32, 2,
20550 OPC_EmitRegisterI32, 0 ,
20551 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lws16th),
20552 MVT::v4i32, 5, 0, 3, 1, 4, 2,
20553 0,
20554 50,
20555 OPC_CheckChild3Integer, 2,
20556 OPC_Scope, 22,
20557 OPC_CheckChild4Integer, 0,
20558 OPC_RecordChild5,
20559 OPC_CheckChild5Type, MVT::v4i1,
20560 OPC_RecordChild6,
20561 OPC_CheckChild6Type, MVT::v4i32,
20562 OPC_EmitInteger32, 2,
20563 OPC_EmitRegisterI32, 0 ,
20564 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lwu16bh),
20565 MVT::v4i32, 5, 0, 3, 1, 4, 2,
20566 22,
20567 OPC_CheckChild4Integer, 2,
20568 OPC_RecordChild5,
20569 OPC_CheckChild5Type, MVT::v4i1,
20570 OPC_RecordChild6,
20571 OPC_CheckChild6Type, MVT::v4i32,
20572 OPC_EmitInteger32, 2,
20573 OPC_EmitRegisterI32, 0 ,
20574 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHLL_lwu16th),
20575 MVT::v4i32, 5, 0, 3, 1, 4, 2,
20576 0,
20577 0,
20578 0,
20579 0,
20580 45|128,6,
20581 OPC_CheckChild0Integer, 78|128,52,
20582 OPC_RecordChild1,
20583 OPC_Scope, 11|128,2,
20584 OPC_CheckChild1Type, MVT::v16i8,
20585 OPC_RecordChild2,
20586 OPC_CheckChild2Type, MVT::v16i8,
20587 OPC_Scope, 0|128,1,
20588 OPC_CheckChild3Integer, 0,
20589 OPC_Scope, 61,
20590 OPC_CheckChild4Integer, 0,
20591 OPC_MoveChild5,
20592 OPC_Scope, 27,
20593 OPC_CheckInteger, 0,
20594 OPC_MoveParent,
20595 OPC_CheckType, MVT::v16i8,
20596 OPC_EmitInteger32, 0,
20597 OPC_EmitRegisterI32, 0 ,
20598 OPC_EmitRegisterI32, 0 ,
20599 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20600 MVT::v4i32, 0,
20601 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs8),
20602 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
20603 27,
20604 OPC_CheckInteger, 2,
20605 OPC_MoveParent,
20606 OPC_CheckType, MVT::v16i8,
20607 OPC_EmitInteger32, 0,
20608 OPC_EmitRegisterI32, 0 ,
20609 OPC_EmitRegisterI32, 0 ,
20610 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20611 MVT::v4i32, 0,
20612 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu8),
20613 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
20614 0,
20615 61,
20616 OPC_CheckChild4Integer, 2,
20617 OPC_MoveChild5,
20618 OPC_Scope, 27,
20619 OPC_CheckInteger, 0,
20620 OPC_MoveParent,
20621 OPC_CheckType, MVT::v16i8,
20622 OPC_EmitInteger32, 0,
20623 OPC_EmitRegisterI32, 0 ,
20624 OPC_EmitRegisterI32, 0 ,
20625 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20626 MVT::v4i32, 0,
20627 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecs8),
20628 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
20629 27,
20630 OPC_CheckInteger, 2,
20631 OPC_MoveParent,
20632 OPC_CheckType, MVT::v16i8,
20633 OPC_EmitInteger32, 0,
20634 OPC_EmitRegisterI32, 0 ,
20635 OPC_EmitRegisterI32, 0 ,
20636 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20637 MVT::v4i32, 0,
20638 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecu8),
20639 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
20640 0,
20641 0,
20642 0|128,1,
20643 OPC_CheckChild3Integer, 2,
20644 OPC_Scope, 61,
20645 OPC_CheckChild4Integer, 0,
20646 OPC_MoveChild5,
20647 OPC_Scope, 27,
20648 OPC_CheckInteger, 0,
20649 OPC_MoveParent,
20650 OPC_CheckType, MVT::v16i8,
20651 OPC_EmitInteger32, 0,
20652 OPC_EmitRegisterI32, 0 ,
20653 OPC_EmitRegisterI32, 0 ,
20654 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20655 MVT::v4i32, 0,
20656 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecs8),
20657 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
20658 27,
20659 OPC_CheckInteger, 2,
20660 OPC_MoveParent,
20661 OPC_CheckType, MVT::v16i8,
20662 OPC_EmitInteger32, 0,
20663 OPC_EmitRegisterI32, 0 ,
20664 OPC_EmitRegisterI32, 0 ,
20665 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20666 MVT::v4i32, 0,
20667 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecu8),
20668 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
20669 0,
20670 61,
20671 OPC_CheckChild4Integer, 2,
20672 OPC_MoveChild5,
20673 OPC_Scope, 27,
20674 OPC_CheckInteger, 0,
20675 OPC_MoveParent,
20676 OPC_CheckType, MVT::v16i8,
20677 OPC_EmitInteger32, 0,
20678 OPC_EmitRegisterI32, 0 ,
20679 OPC_EmitRegisterI32, 0 ,
20680 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20681 MVT::v4i32, 0,
20682 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecs8),
20683 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
20684 27,
20685 OPC_CheckInteger, 2,
20686 OPC_MoveParent,
20687 OPC_CheckType, MVT::v16i8,
20688 OPC_EmitInteger32, 0,
20689 OPC_EmitRegisterI32, 0 ,
20690 OPC_EmitRegisterI32, 0 ,
20691 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20692 MVT::v4i32, 0,
20693 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecu8),
20694 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
20695 0,
20696 0,
20697 0,
20698 11|128,2,
20699 OPC_CheckChild1Type, MVT::v8i16,
20700 OPC_RecordChild2,
20701 OPC_CheckChild2Type, MVT::v8i16,
20702 OPC_Scope, 0|128,1,
20703 OPC_CheckChild3Integer, 0,
20704 OPC_Scope, 61,
20705 OPC_CheckChild4Integer, 0,
20706 OPC_MoveChild5,
20707 OPC_Scope, 27,
20708 OPC_CheckInteger, 0,
20709 OPC_MoveParent,
20710 OPC_CheckType, MVT::v8i16,
20711 OPC_EmitInteger32, 0,
20712 OPC_EmitRegisterI32, 0 ,
20713 OPC_EmitRegisterI32, 0 ,
20714 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20715 MVT::v4i32, 0,
20716 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs16),
20717 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
20718 27,
20719 OPC_CheckInteger, 2,
20720 OPC_MoveParent,
20721 OPC_CheckType, MVT::v8i16,
20722 OPC_EmitInteger32, 0,
20723 OPC_EmitRegisterI32, 0 ,
20724 OPC_EmitRegisterI32, 0 ,
20725 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20726 MVT::v4i32, 0,
20727 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu16),
20728 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
20729 0,
20730 61,
20731 OPC_CheckChild4Integer, 2,
20732 OPC_MoveChild5,
20733 OPC_Scope, 27,
20734 OPC_CheckInteger, 0,
20735 OPC_MoveParent,
20736 OPC_CheckType, MVT::v8i16,
20737 OPC_EmitInteger32, 0,
20738 OPC_EmitRegisterI32, 0 ,
20739 OPC_EmitRegisterI32, 0 ,
20740 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20741 MVT::v4i32, 0,
20742 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecs16),
20743 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
20744 27,
20745 OPC_CheckInteger, 2,
20746 OPC_MoveParent,
20747 OPC_CheckType, MVT::v8i16,
20748 OPC_EmitInteger32, 0,
20749 OPC_EmitRegisterI32, 0 ,
20750 OPC_EmitRegisterI32, 0 ,
20751 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20752 MVT::v4i32, 0,
20753 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecu16),
20754 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
20755 0,
20756 0,
20757 0|128,1,
20758 OPC_CheckChild3Integer, 2,
20759 OPC_Scope, 61,
20760 OPC_CheckChild4Integer, 0,
20761 OPC_MoveChild5,
20762 OPC_Scope, 27,
20763 OPC_CheckInteger, 0,
20764 OPC_MoveParent,
20765 OPC_CheckType, MVT::v8i16,
20766 OPC_EmitInteger32, 0,
20767 OPC_EmitRegisterI32, 0 ,
20768 OPC_EmitRegisterI32, 0 ,
20769 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20770 MVT::v4i32, 0,
20771 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecs16),
20772 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
20773 27,
20774 OPC_CheckInteger, 2,
20775 OPC_MoveParent,
20776 OPC_CheckType, MVT::v8i16,
20777 OPC_EmitInteger32, 0,
20778 OPC_EmitRegisterI32, 0 ,
20779 OPC_EmitRegisterI32, 0 ,
20780 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20781 MVT::v4i32, 0,
20782 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecu16),
20783 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
20784 0,
20785 61,
20786 OPC_CheckChild4Integer, 2,
20787 OPC_MoveChild5,
20788 OPC_Scope, 27,
20789 OPC_CheckInteger, 0,
20790 OPC_MoveParent,
20791 OPC_CheckType, MVT::v8i16,
20792 OPC_EmitInteger32, 0,
20793 OPC_EmitRegisterI32, 0 ,
20794 OPC_EmitRegisterI32, 0 ,
20795 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20796 MVT::v4i32, 0,
20797 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecs16),
20798 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
20799 27,
20800 OPC_CheckInteger, 2,
20801 OPC_MoveParent,
20802 OPC_CheckType, MVT::v8i16,
20803 OPC_EmitInteger32, 0,
20804 OPC_EmitRegisterI32, 0 ,
20805 OPC_EmitRegisterI32, 0 ,
20806 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20807 MVT::v4i32, 0,
20808 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecu16),
20809 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
20810 0,
20811 0,
20812 0,
20813 11|128,2,
20814 OPC_CheckChild1Type, MVT::v4i32,
20815 OPC_RecordChild2,
20816 OPC_CheckChild2Type, MVT::v4i32,
20817 OPC_Scope, 0|128,1,
20818 OPC_CheckChild3Integer, 0,
20819 OPC_Scope, 61,
20820 OPC_CheckChild4Integer, 0,
20821 OPC_MoveChild5,
20822 OPC_Scope, 27,
20823 OPC_CheckInteger, 0,
20824 OPC_MoveParent,
20825 OPC_CheckType, MVT::v4i32,
20826 OPC_EmitInteger32, 0,
20827 OPC_EmitRegisterI32, 0 ,
20828 OPC_EmitRegisterI32, 0 ,
20829 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20830 MVT::v4i32, 0,
20831 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs32),
20832 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
20833 27,
20834 OPC_CheckInteger, 2,
20835 OPC_MoveParent,
20836 OPC_CheckType, MVT::v4i32,
20837 OPC_EmitInteger32, 0,
20838 OPC_EmitRegisterI32, 0 ,
20839 OPC_EmitRegisterI32, 0 ,
20840 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20841 MVT::v4i32, 0,
20842 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu32),
20843 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
20844 0,
20845 61,
20846 OPC_CheckChild4Integer, 2,
20847 OPC_MoveChild5,
20848 OPC_Scope, 27,
20849 OPC_CheckInteger, 0,
20850 OPC_MoveParent,
20851 OPC_CheckType, MVT::v4i32,
20852 OPC_EmitInteger32, 0,
20853 OPC_EmitRegisterI32, 0 ,
20854 OPC_EmitRegisterI32, 0 ,
20855 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20856 MVT::v4i32, 0,
20857 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecs32),
20858 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
20859 27,
20860 OPC_CheckInteger, 2,
20861 OPC_MoveParent,
20862 OPC_CheckType, MVT::v4i32,
20863 OPC_EmitInteger32, 0,
20864 OPC_EmitRegisterI32, 0 ,
20865 OPC_EmitRegisterI32, 0 ,
20866 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20867 MVT::v4i32, 0,
20868 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecu32),
20869 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
20870 0,
20871 0,
20872 0|128,1,
20873 OPC_CheckChild3Integer, 2,
20874 OPC_Scope, 61,
20875 OPC_CheckChild4Integer, 0,
20876 OPC_MoveChild5,
20877 OPC_Scope, 27,
20878 OPC_CheckInteger, 0,
20879 OPC_MoveParent,
20880 OPC_CheckType, MVT::v4i32,
20881 OPC_EmitInteger32, 0,
20882 OPC_EmitRegisterI32, 0 ,
20883 OPC_EmitRegisterI32, 0 ,
20884 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20885 MVT::v4i32, 0,
20886 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecs32),
20887 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
20888 27,
20889 OPC_CheckInteger, 2,
20890 OPC_MoveParent,
20891 OPC_CheckType, MVT::v4i32,
20892 OPC_EmitInteger32, 0,
20893 OPC_EmitRegisterI32, 0 ,
20894 OPC_EmitRegisterI32, 0 ,
20895 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20896 MVT::v4i32, 0,
20897 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecu32),
20898 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
20899 0,
20900 61,
20901 OPC_CheckChild4Integer, 2,
20902 OPC_MoveChild5,
20903 OPC_Scope, 27,
20904 OPC_CheckInteger, 0,
20905 OPC_MoveParent,
20906 OPC_CheckType, MVT::v4i32,
20907 OPC_EmitInteger32, 0,
20908 OPC_EmitRegisterI32, 0 ,
20909 OPC_EmitRegisterI32, 0 ,
20910 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20911 MVT::v4i32, 0,
20912 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecs32),
20913 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
20914 27,
20915 OPC_CheckInteger, 2,
20916 OPC_MoveParent,
20917 OPC_CheckType, MVT::v4i32,
20918 OPC_EmitInteger32, 0,
20919 OPC_EmitRegisterI32, 0 ,
20920 OPC_EmitRegisterI32, 0 ,
20921 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
20922 MVT::v4i32, 0,
20923 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecu32),
20924 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
20925 0,
20926 0,
20927 0,
20928 0,
20929 10|128,7,
20930 OPC_CheckChild0Integer, 80|128,52,
20931 OPC_RecordChild1,
20932 OPC_Scope, 42|128,2,
20933 OPC_CheckChild1Type, MVT::v16i8,
20934 OPC_RecordChild2,
20935 OPC_CheckChild2Type, MVT::v16i8,
20936 OPC_Scope, 36|128,1,
20937 OPC_CheckChild3Integer, 0,
20938 OPC_Scope, 99,
20939 OPC_CheckChild4Integer, 0,
20940 OPC_MoveChild5,
20941 OPC_Scope, 46,
20942 OPC_CheckInteger, 0,
20943 OPC_MoveParent,
20944 OPC_RecordChild6,
20945 OPC_CheckChild6Type, MVT::v16i1,
20946 OPC_RecordChild7,
20947 OPC_CheckChild7Type, MVT::v16i8,
20948 OPC_CheckType, MVT::v16i8,
20949 OPC_Scope, 15,
20950 OPC_EmitInteger32, 2,
20951 OPC_EmitRegisterI32, 0 ,
20952 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs8),
20953 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
20954 16,
20955 OPC_CheckPatternPredicate0,
20956 OPC_EmitInteger32, 2,
20957 OPC_EmitRegisterI32, 0 ,
20958 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs8),
20959 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
20960 0,
20961 46,
20962 OPC_CheckInteger, 2,
20963 OPC_MoveParent,
20964 OPC_RecordChild6,
20965 OPC_CheckChild6Type, MVT::v16i1,
20966 OPC_RecordChild7,
20967 OPC_CheckChild7Type, MVT::v16i8,
20968 OPC_CheckType, MVT::v16i8,
20969 OPC_Scope, 15,
20970 OPC_EmitInteger32, 2,
20971 OPC_EmitRegisterI32, 0 ,
20972 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu8),
20973 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
20974 16,
20975 OPC_CheckPatternPredicate0,
20976 OPC_EmitInteger32, 2,
20977 OPC_EmitRegisterI32, 0 ,
20978 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu8),
20979 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
20980 0,
20981 0,
20982 59,
20983 OPC_CheckChild4Integer, 2,
20984 OPC_MoveChild5,
20985 OPC_Scope, 26,
20986 OPC_CheckInteger, 0,
20987 OPC_MoveParent,
20988 OPC_RecordChild6,
20989 OPC_CheckChild6Type, MVT::v16i1,
20990 OPC_RecordChild7,
20991 OPC_CheckChild7Type, MVT::v16i8,
20992 OPC_CheckType, MVT::v16i8,
20993 OPC_EmitInteger32, 2,
20994 OPC_EmitRegisterI32, 0 ,
20995 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecs8),
20996 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
20997 26,
20998 OPC_CheckInteger, 2,
20999 OPC_MoveParent,
21000 OPC_RecordChild6,
21001 OPC_CheckChild6Type, MVT::v16i1,
21002 OPC_RecordChild7,
21003 OPC_CheckChild7Type, MVT::v16i8,
21004 OPC_CheckType, MVT::v16i8,
21005 OPC_EmitInteger32, 2,
21006 OPC_EmitRegisterI32, 0 ,
21007 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecu8),
21008 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
21009 0,
21010 0,
21011 124,
21012 OPC_CheckChild3Integer, 2,
21013 OPC_Scope, 59,
21014 OPC_CheckChild4Integer, 0,
21015 OPC_MoveChild5,
21016 OPC_Scope, 26,
21017 OPC_CheckInteger, 0,
21018 OPC_MoveParent,
21019 OPC_RecordChild6,
21020 OPC_CheckChild6Type, MVT::v16i1,
21021 OPC_RecordChild7,
21022 OPC_CheckChild7Type, MVT::v16i8,
21023 OPC_CheckType, MVT::v16i8,
21024 OPC_EmitInteger32, 2,
21025 OPC_EmitRegisterI32, 0 ,
21026 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecs8),
21027 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
21028 26,
21029 OPC_CheckInteger, 2,
21030 OPC_MoveParent,
21031 OPC_RecordChild6,
21032 OPC_CheckChild6Type, MVT::v16i1,
21033 OPC_RecordChild7,
21034 OPC_CheckChild7Type, MVT::v16i8,
21035 OPC_CheckType, MVT::v16i8,
21036 OPC_EmitInteger32, 2,
21037 OPC_EmitRegisterI32, 0 ,
21038 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecu8),
21039 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
21040 0,
21041 59,
21042 OPC_CheckChild4Integer, 2,
21043 OPC_MoveChild5,
21044 OPC_Scope, 26,
21045 OPC_CheckInteger, 0,
21046 OPC_MoveParent,
21047 OPC_RecordChild6,
21048 OPC_CheckChild6Type, MVT::v16i1,
21049 OPC_RecordChild7,
21050 OPC_CheckChild7Type, MVT::v16i8,
21051 OPC_CheckType, MVT::v16i8,
21052 OPC_EmitInteger32, 2,
21053 OPC_EmitRegisterI32, 0 ,
21054 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecs8),
21055 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
21056 26,
21057 OPC_CheckInteger, 2,
21058 OPC_MoveParent,
21059 OPC_RecordChild6,
21060 OPC_CheckChild6Type, MVT::v16i1,
21061 OPC_RecordChild7,
21062 OPC_CheckChild7Type, MVT::v16i8,
21063 OPC_CheckType, MVT::v16i8,
21064 OPC_EmitInteger32, 2,
21065 OPC_EmitRegisterI32, 0 ,
21066 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecu8),
21067 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
21068 0,
21069 0,
21070 0,
21071 42|128,2,
21072 OPC_CheckChild1Type, MVT::v8i16,
21073 OPC_RecordChild2,
21074 OPC_CheckChild2Type, MVT::v8i16,
21075 OPC_Scope, 36|128,1,
21076 OPC_CheckChild3Integer, 0,
21077 OPC_Scope, 99,
21078 OPC_CheckChild4Integer, 0,
21079 OPC_MoveChild5,
21080 OPC_Scope, 46,
21081 OPC_CheckInteger, 0,
21082 OPC_MoveParent,
21083 OPC_RecordChild6,
21084 OPC_CheckChild6Type, MVT::v8i1,
21085 OPC_RecordChild7,
21086 OPC_CheckChild7Type, MVT::v8i16,
21087 OPC_CheckType, MVT::v8i16,
21088 OPC_Scope, 15,
21089 OPC_EmitInteger32, 2,
21090 OPC_EmitRegisterI32, 0 ,
21091 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs16),
21092 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
21093 16,
21094 OPC_CheckPatternPredicate0,
21095 OPC_EmitInteger32, 2,
21096 OPC_EmitRegisterI32, 0 ,
21097 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs16),
21098 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
21099 0,
21100 46,
21101 OPC_CheckInteger, 2,
21102 OPC_MoveParent,
21103 OPC_RecordChild6,
21104 OPC_CheckChild6Type, MVT::v8i1,
21105 OPC_RecordChild7,
21106 OPC_CheckChild7Type, MVT::v8i16,
21107 OPC_CheckType, MVT::v8i16,
21108 OPC_Scope, 15,
21109 OPC_EmitInteger32, 2,
21110 OPC_EmitRegisterI32, 0 ,
21111 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu16),
21112 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
21113 16,
21114 OPC_CheckPatternPredicate0,
21115 OPC_EmitInteger32, 2,
21116 OPC_EmitRegisterI32, 0 ,
21117 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu16),
21118 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
21119 0,
21120 0,
21121 59,
21122 OPC_CheckChild4Integer, 2,
21123 OPC_MoveChild5,
21124 OPC_Scope, 26,
21125 OPC_CheckInteger, 0,
21126 OPC_MoveParent,
21127 OPC_RecordChild6,
21128 OPC_CheckChild6Type, MVT::v8i1,
21129 OPC_RecordChild7,
21130 OPC_CheckChild7Type, MVT::v8i16,
21131 OPC_CheckType, MVT::v8i16,
21132 OPC_EmitInteger32, 2,
21133 OPC_EmitRegisterI32, 0 ,
21134 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecs16),
21135 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
21136 26,
21137 OPC_CheckInteger, 2,
21138 OPC_MoveParent,
21139 OPC_RecordChild6,
21140 OPC_CheckChild6Type, MVT::v8i1,
21141 OPC_RecordChild7,
21142 OPC_CheckChild7Type, MVT::v8i16,
21143 OPC_CheckType, MVT::v8i16,
21144 OPC_EmitInteger32, 2,
21145 OPC_EmitRegisterI32, 0 ,
21146 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecu16),
21147 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
21148 0,
21149 0,
21150 124,
21151 OPC_CheckChild3Integer, 2,
21152 OPC_Scope, 59,
21153 OPC_CheckChild4Integer, 0,
21154 OPC_MoveChild5,
21155 OPC_Scope, 26,
21156 OPC_CheckInteger, 0,
21157 OPC_MoveParent,
21158 OPC_RecordChild6,
21159 OPC_CheckChild6Type, MVT::v8i1,
21160 OPC_RecordChild7,
21161 OPC_CheckChild7Type, MVT::v8i16,
21162 OPC_CheckType, MVT::v8i16,
21163 OPC_EmitInteger32, 2,
21164 OPC_EmitRegisterI32, 0 ,
21165 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecs16),
21166 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
21167 26,
21168 OPC_CheckInteger, 2,
21169 OPC_MoveParent,
21170 OPC_RecordChild6,
21171 OPC_CheckChild6Type, MVT::v8i1,
21172 OPC_RecordChild7,
21173 OPC_CheckChild7Type, MVT::v8i16,
21174 OPC_CheckType, MVT::v8i16,
21175 OPC_EmitInteger32, 2,
21176 OPC_EmitRegisterI32, 0 ,
21177 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecu16),
21178 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
21179 0,
21180 59,
21181 OPC_CheckChild4Integer, 2,
21182 OPC_MoveChild5,
21183 OPC_Scope, 26,
21184 OPC_CheckInteger, 0,
21185 OPC_MoveParent,
21186 OPC_RecordChild6,
21187 OPC_CheckChild6Type, MVT::v8i1,
21188 OPC_RecordChild7,
21189 OPC_CheckChild7Type, MVT::v8i16,
21190 OPC_CheckType, MVT::v8i16,
21191 OPC_EmitInteger32, 2,
21192 OPC_EmitRegisterI32, 0 ,
21193 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecs16),
21194 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
21195 26,
21196 OPC_CheckInteger, 2,
21197 OPC_MoveParent,
21198 OPC_RecordChild6,
21199 OPC_CheckChild6Type, MVT::v8i1,
21200 OPC_RecordChild7,
21201 OPC_CheckChild7Type, MVT::v8i16,
21202 OPC_CheckType, MVT::v8i16,
21203 OPC_EmitInteger32, 2,
21204 OPC_EmitRegisterI32, 0 ,
21205 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecu16),
21206 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
21207 0,
21208 0,
21209 0,
21210 42|128,2,
21211 OPC_CheckChild1Type, MVT::v4i32,
21212 OPC_RecordChild2,
21213 OPC_CheckChild2Type, MVT::v4i32,
21214 OPC_Scope, 36|128,1,
21215 OPC_CheckChild3Integer, 0,
21216 OPC_Scope, 99,
21217 OPC_CheckChild4Integer, 0,
21218 OPC_MoveChild5,
21219 OPC_Scope, 46,
21220 OPC_CheckInteger, 0,
21221 OPC_MoveParent,
21222 OPC_RecordChild6,
21223 OPC_CheckChild6Type, MVT::v4i1,
21224 OPC_RecordChild7,
21225 OPC_CheckChild7Type, MVT::v4i32,
21226 OPC_CheckType, MVT::v4i32,
21227 OPC_Scope, 15,
21228 OPC_EmitInteger32, 2,
21229 OPC_EmitRegisterI32, 0 ,
21230 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs32),
21231 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
21232 16,
21233 OPC_CheckPatternPredicate0,
21234 OPC_EmitInteger32, 2,
21235 OPC_EmitRegisterI32, 0 ,
21236 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs32),
21237 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
21238 0,
21239 46,
21240 OPC_CheckInteger, 2,
21241 OPC_MoveParent,
21242 OPC_RecordChild6,
21243 OPC_CheckChild6Type, MVT::v4i1,
21244 OPC_RecordChild7,
21245 OPC_CheckChild7Type, MVT::v4i32,
21246 OPC_CheckType, MVT::v4i32,
21247 OPC_Scope, 15,
21248 OPC_EmitInteger32, 2,
21249 OPC_EmitRegisterI32, 0 ,
21250 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu32),
21251 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
21252 16,
21253 OPC_CheckPatternPredicate0,
21254 OPC_EmitInteger32, 2,
21255 OPC_EmitRegisterI32, 0 ,
21256 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu32),
21257 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
21258 0,
21259 0,
21260 59,
21261 OPC_CheckChild4Integer, 2,
21262 OPC_MoveChild5,
21263 OPC_Scope, 26,
21264 OPC_CheckInteger, 0,
21265 OPC_MoveParent,
21266 OPC_RecordChild6,
21267 OPC_CheckChild6Type, MVT::v4i1,
21268 OPC_RecordChild7,
21269 OPC_CheckChild7Type, MVT::v4i32,
21270 OPC_CheckType, MVT::v4i32,
21271 OPC_EmitInteger32, 2,
21272 OPC_EmitRegisterI32, 0 ,
21273 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecs32),
21274 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
21275 26,
21276 OPC_CheckInteger, 2,
21277 OPC_MoveParent,
21278 OPC_RecordChild6,
21279 OPC_CheckChild6Type, MVT::v4i1,
21280 OPC_RecordChild7,
21281 OPC_CheckChild7Type, MVT::v4i32,
21282 OPC_CheckType, MVT::v4i32,
21283 OPC_EmitInteger32, 2,
21284 OPC_EmitRegisterI32, 0 ,
21285 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_by_vecu32),
21286 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
21287 0,
21288 0,
21289 124,
21290 OPC_CheckChild3Integer, 2,
21291 OPC_Scope, 59,
21292 OPC_CheckChild4Integer, 0,
21293 OPC_MoveChild5,
21294 OPC_Scope, 26,
21295 OPC_CheckInteger, 0,
21296 OPC_MoveParent,
21297 OPC_RecordChild6,
21298 OPC_CheckChild6Type, MVT::v4i1,
21299 OPC_RecordChild7,
21300 OPC_CheckChild7Type, MVT::v4i32,
21301 OPC_CheckType, MVT::v4i32,
21302 OPC_EmitInteger32, 2,
21303 OPC_EmitRegisterI32, 0 ,
21304 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecs32),
21305 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
21306 26,
21307 OPC_CheckInteger, 2,
21308 OPC_MoveParent,
21309 OPC_RecordChild6,
21310 OPC_CheckChild6Type, MVT::v4i1,
21311 OPC_RecordChild7,
21312 OPC_CheckChild7Type, MVT::v4i32,
21313 OPC_CheckType, MVT::v4i32,
21314 OPC_EmitInteger32, 2,
21315 OPC_EmitRegisterI32, 0 ,
21316 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_by_vecu32),
21317 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
21318 0,
21319 59,
21320 OPC_CheckChild4Integer, 2,
21321 OPC_MoveChild5,
21322 OPC_Scope, 26,
21323 OPC_CheckInteger, 0,
21324 OPC_MoveParent,
21325 OPC_RecordChild6,
21326 OPC_CheckChild6Type, MVT::v4i1,
21327 OPC_RecordChild7,
21328 OPC_CheckChild7Type, MVT::v4i32,
21329 OPC_CheckType, MVT::v4i32,
21330 OPC_EmitInteger32, 2,
21331 OPC_EmitRegisterI32, 0 ,
21332 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecs32),
21333 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
21334 26,
21335 OPC_CheckInteger, 2,
21336 OPC_MoveParent,
21337 OPC_RecordChild6,
21338 OPC_CheckChild6Type, MVT::v4i1,
21339 OPC_RecordChild7,
21340 OPC_CheckChild7Type, MVT::v4i32,
21341 OPC_CheckType, MVT::v4i32,
21342 OPC_EmitInteger32, 2,
21343 OPC_EmitRegisterI32, 0 ,
21344 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_by_vecu32),
21345 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
21346 0,
21347 0,
21348 0,
21349 0,
21350 62|128,5,
21351 OPC_CheckChild0Integer, 0|128,52,
21352 OPC_RecordChild1,
21353 OPC_Scope, 102|128,1,
21354 OPC_CheckChild1Type, MVT::v16i8,
21355 OPC_RecordChild2,
21356 OPC_CheckChild2Type, MVT::v16i8,
21357 OPC_RecordChild3,
21358 OPC_CheckChild3Type, MVT::v16i8,
21359 OPC_Scope, 109,
21360 OPC_CheckChild4Integer, 0,
21361 OPC_MoveChild5,
21362 OPC_Scope, 51,
21363 OPC_CheckInteger, 0,
21364 OPC_MoveSibling6,
21365 OPC_Scope, 22,
21366 OPC_CheckInteger, 0,
21367 OPC_MoveParent,
21368 OPC_CheckType, MVT::v16i8,
21369 OPC_EmitInteger32, 0,
21370 OPC_EmitRegisterI32, 0 ,
21371 OPC_EmitRegisterI32, 0 ,
21372 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHs8),
21373 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
21374 22,
21375 OPC_CheckInteger, 2,
21376 OPC_MoveParent,
21377 OPC_CheckType, MVT::v16i8,
21378 OPC_EmitInteger32, 0,
21379 OPC_EmitRegisterI32, 0 ,
21380 OPC_EmitRegisterI32, 0 ,
21381 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHs8),
21382 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
21383 0,
21384 51,
21385 OPC_CheckInteger, 2,
21386 OPC_MoveSibling6,
21387 OPC_Scope, 22,
21388 OPC_CheckInteger, 0,
21389 OPC_MoveParent,
21390 OPC_CheckType, MVT::v16i8,
21391 OPC_EmitInteger32, 0,
21392 OPC_EmitRegisterI32, 0 ,
21393 OPC_EmitRegisterI32, 0 ,
21394 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHs8),
21395 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
21396 22,
21397 OPC_CheckInteger, 2,
21398 OPC_MoveParent,
21399 OPC_CheckType, MVT::v16i8,
21400 OPC_EmitInteger32, 0,
21401 OPC_EmitRegisterI32, 0 ,
21402 OPC_EmitRegisterI32, 0 ,
21403 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHs8),
21404 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
21405 0,
21406 0,
21407 109,
21408 OPC_CheckChild4Integer, 2,
21409 OPC_MoveChild5,
21410 OPC_Scope, 51,
21411 OPC_CheckInteger, 0,
21412 OPC_MoveSibling6,
21413 OPC_Scope, 22,
21414 OPC_CheckInteger, 0,
21415 OPC_MoveParent,
21416 OPC_CheckType, MVT::v16i8,
21417 OPC_EmitInteger32, 0,
21418 OPC_EmitRegisterI32, 0 ,
21419 OPC_EmitRegisterI32, 0 ,
21420 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHXs8),
21421 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
21422 22,
21423 OPC_CheckInteger, 2,
21424 OPC_MoveParent,
21425 OPC_CheckType, MVT::v16i8,
21426 OPC_EmitInteger32, 0,
21427 OPC_EmitRegisterI32, 0 ,
21428 OPC_EmitRegisterI32, 0 ,
21429 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHXs8),
21430 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
21431 0,
21432 51,
21433 OPC_CheckInteger, 2,
21434 OPC_MoveSibling6,
21435 OPC_Scope, 22,
21436 OPC_CheckInteger, 0,
21437 OPC_MoveParent,
21438 OPC_CheckType, MVT::v16i8,
21439 OPC_EmitInteger32, 0,
21440 OPC_EmitRegisterI32, 0 ,
21441 OPC_EmitRegisterI32, 0 ,
21442 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHXs8),
21443 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
21444 22,
21445 OPC_CheckInteger, 2,
21446 OPC_MoveParent,
21447 OPC_CheckType, MVT::v16i8,
21448 OPC_EmitInteger32, 0,
21449 OPC_EmitRegisterI32, 0 ,
21450 OPC_EmitRegisterI32, 0 ,
21451 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHXs8),
21452 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
21453 0,
21454 0,
21455 0,
21456 102|128,1,
21457 OPC_CheckChild1Type, MVT::v8i16,
21458 OPC_RecordChild2,
21459 OPC_CheckChild2Type, MVT::v8i16,
21460 OPC_RecordChild3,
21461 OPC_CheckChild3Type, MVT::v8i16,
21462 OPC_Scope, 109,
21463 OPC_CheckChild4Integer, 0,
21464 OPC_MoveChild5,
21465 OPC_Scope, 51,
21466 OPC_CheckInteger, 0,
21467 OPC_MoveSibling6,
21468 OPC_Scope, 22,
21469 OPC_CheckInteger, 0,
21470 OPC_MoveParent,
21471 OPC_CheckType, MVT::v8i16,
21472 OPC_EmitInteger32, 0,
21473 OPC_EmitRegisterI32, 0 ,
21474 OPC_EmitRegisterI32, 0 ,
21475 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHs16),
21476 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
21477 22,
21478 OPC_CheckInteger, 2,
21479 OPC_MoveParent,
21480 OPC_CheckType, MVT::v8i16,
21481 OPC_EmitInteger32, 0,
21482 OPC_EmitRegisterI32, 0 ,
21483 OPC_EmitRegisterI32, 0 ,
21484 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHs16),
21485 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
21486 0,
21487 51,
21488 OPC_CheckInteger, 2,
21489 OPC_MoveSibling6,
21490 OPC_Scope, 22,
21491 OPC_CheckInteger, 0,
21492 OPC_MoveParent,
21493 OPC_CheckType, MVT::v8i16,
21494 OPC_EmitInteger32, 0,
21495 OPC_EmitRegisterI32, 0 ,
21496 OPC_EmitRegisterI32, 0 ,
21497 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHs16),
21498 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
21499 22,
21500 OPC_CheckInteger, 2,
21501 OPC_MoveParent,
21502 OPC_CheckType, MVT::v8i16,
21503 OPC_EmitInteger32, 0,
21504 OPC_EmitRegisterI32, 0 ,
21505 OPC_EmitRegisterI32, 0 ,
21506 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHs16),
21507 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
21508 0,
21509 0,
21510 109,
21511 OPC_CheckChild4Integer, 2,
21512 OPC_MoveChild5,
21513 OPC_Scope, 51,
21514 OPC_CheckInteger, 0,
21515 OPC_MoveSibling6,
21516 OPC_Scope, 22,
21517 OPC_CheckInteger, 0,
21518 OPC_MoveParent,
21519 OPC_CheckType, MVT::v8i16,
21520 OPC_EmitInteger32, 0,
21521 OPC_EmitRegisterI32, 0 ,
21522 OPC_EmitRegisterI32, 0 ,
21523 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHXs16),
21524 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
21525 22,
21526 OPC_CheckInteger, 2,
21527 OPC_MoveParent,
21528 OPC_CheckType, MVT::v8i16,
21529 OPC_EmitInteger32, 0,
21530 OPC_EmitRegisterI32, 0 ,
21531 OPC_EmitRegisterI32, 0 ,
21532 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHXs16),
21533 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
21534 0,
21535 51,
21536 OPC_CheckInteger, 2,
21537 OPC_MoveSibling6,
21538 OPC_Scope, 22,
21539 OPC_CheckInteger, 0,
21540 OPC_MoveParent,
21541 OPC_CheckType, MVT::v8i16,
21542 OPC_EmitInteger32, 0,
21543 OPC_EmitRegisterI32, 0 ,
21544 OPC_EmitRegisterI32, 0 ,
21545 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHXs16),
21546 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
21547 22,
21548 OPC_CheckInteger, 2,
21549 OPC_MoveParent,
21550 OPC_CheckType, MVT::v8i16,
21551 OPC_EmitInteger32, 0,
21552 OPC_EmitRegisterI32, 0 ,
21553 OPC_EmitRegisterI32, 0 ,
21554 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHXs16),
21555 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
21556 0,
21557 0,
21558 0,
21559 102|128,1,
21560 OPC_CheckChild1Type, MVT::v4i32,
21561 OPC_RecordChild2,
21562 OPC_CheckChild2Type, MVT::v4i32,
21563 OPC_RecordChild3,
21564 OPC_CheckChild3Type, MVT::v4i32,
21565 OPC_Scope, 109,
21566 OPC_CheckChild4Integer, 0,
21567 OPC_MoveChild5,
21568 OPC_Scope, 51,
21569 OPC_CheckInteger, 0,
21570 OPC_MoveSibling6,
21571 OPC_Scope, 22,
21572 OPC_CheckInteger, 0,
21573 OPC_MoveParent,
21574 OPC_CheckType, MVT::v4i32,
21575 OPC_EmitInteger32, 0,
21576 OPC_EmitRegisterI32, 0 ,
21577 OPC_EmitRegisterI32, 0 ,
21578 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHs32),
21579 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
21580 22,
21581 OPC_CheckInteger, 2,
21582 OPC_MoveParent,
21583 OPC_CheckType, MVT::v4i32,
21584 OPC_EmitInteger32, 0,
21585 OPC_EmitRegisterI32, 0 ,
21586 OPC_EmitRegisterI32, 0 ,
21587 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHs32),
21588 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
21589 0,
21590 51,
21591 OPC_CheckInteger, 2,
21592 OPC_MoveSibling6,
21593 OPC_Scope, 22,
21594 OPC_CheckInteger, 0,
21595 OPC_MoveParent,
21596 OPC_CheckType, MVT::v4i32,
21597 OPC_EmitInteger32, 0,
21598 OPC_EmitRegisterI32, 0 ,
21599 OPC_EmitRegisterI32, 0 ,
21600 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHs32),
21601 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
21602 22,
21603 OPC_CheckInteger, 2,
21604 OPC_MoveParent,
21605 OPC_CheckType, MVT::v4i32,
21606 OPC_EmitInteger32, 0,
21607 OPC_EmitRegisterI32, 0 ,
21608 OPC_EmitRegisterI32, 0 ,
21609 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHs32),
21610 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
21611 0,
21612 0,
21613 109,
21614 OPC_CheckChild4Integer, 2,
21615 OPC_MoveChild5,
21616 OPC_Scope, 51,
21617 OPC_CheckInteger, 0,
21618 OPC_MoveSibling6,
21619 OPC_Scope, 22,
21620 OPC_CheckInteger, 0,
21621 OPC_MoveParent,
21622 OPC_CheckType, MVT::v4i32,
21623 OPC_EmitInteger32, 0,
21624 OPC_EmitRegisterI32, 0 ,
21625 OPC_EmitRegisterI32, 0 ,
21626 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHXs32),
21627 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
21628 22,
21629 OPC_CheckInteger, 2,
21630 OPC_MoveParent,
21631 OPC_CheckType, MVT::v4i32,
21632 OPC_EmitInteger32, 0,
21633 OPC_EmitRegisterI32, 0 ,
21634 OPC_EmitRegisterI32, 0 ,
21635 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHXs32),
21636 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
21637 0,
21638 51,
21639 OPC_CheckInteger, 2,
21640 OPC_MoveSibling6,
21641 OPC_Scope, 22,
21642 OPC_CheckInteger, 0,
21643 OPC_MoveParent,
21644 OPC_CheckType, MVT::v4i32,
21645 OPC_EmitInteger32, 0,
21646 OPC_EmitRegisterI32, 0 ,
21647 OPC_EmitRegisterI32, 0 ,
21648 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHXs32),
21649 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
21650 22,
21651 OPC_CheckInteger, 2,
21652 OPC_MoveParent,
21653 OPC_CheckType, MVT::v4i32,
21654 OPC_EmitInteger32, 0,
21655 OPC_EmitRegisterI32, 0 ,
21656 OPC_EmitRegisterI32, 0 ,
21657 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHXs32),
21658 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
21659 0,
21660 0,
21661 0,
21662 0,
21663 86|128,5,
21664 OPC_CheckChild0Integer, 2|128,52,
21665 OPC_RecordChild1,
21666 OPC_Scope, 110|128,1,
21667 OPC_CheckChild1Type, MVT::v16i8,
21668 OPC_RecordChild2,
21669 OPC_CheckChild2Type, MVT::v16i8,
21670 OPC_RecordChild3,
21671 OPC_CheckChild3Type, MVT::v16i8,
21672 OPC_Scope, 113,
21673 OPC_CheckChild4Integer, 0,
21674 OPC_MoveChild5,
21675 OPC_Scope, 53,
21676 OPC_CheckInteger, 0,
21677 OPC_MoveSibling6,
21678 OPC_Scope, 23,
21679 OPC_CheckInteger, 0,
21680 OPC_MoveParent,
21681 OPC_RecordChild7,
21682 OPC_CheckChild7Type, MVT::v16i1,
21683 OPC_CheckType, MVT::v16i8,
21684 OPC_EmitInteger32, 2,
21685 OPC_EmitRegisterI32, 0 ,
21686 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHs8),
21687 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
21688 23,
21689 OPC_CheckInteger, 2,
21690 OPC_MoveParent,
21691 OPC_RecordChild7,
21692 OPC_CheckChild7Type, MVT::v16i1,
21693 OPC_CheckType, MVT::v16i8,
21694 OPC_EmitInteger32, 2,
21695 OPC_EmitRegisterI32, 0 ,
21696 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHs8),
21697 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
21698 0,
21699 53,
21700 OPC_CheckInteger, 2,
21701 OPC_MoveSibling6,
21702 OPC_Scope, 23,
21703 OPC_CheckInteger, 0,
21704 OPC_MoveParent,
21705 OPC_RecordChild7,
21706 OPC_CheckChild7Type, MVT::v16i1,
21707 OPC_CheckType, MVT::v16i8,
21708 OPC_EmitInteger32, 2,
21709 OPC_EmitRegisterI32, 0 ,
21710 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHs8),
21711 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
21712 23,
21713 OPC_CheckInteger, 2,
21714 OPC_MoveParent,
21715 OPC_RecordChild7,
21716 OPC_CheckChild7Type, MVT::v16i1,
21717 OPC_CheckType, MVT::v16i8,
21718 OPC_EmitInteger32, 2,
21719 OPC_EmitRegisterI32, 0 ,
21720 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHs8),
21721 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
21722 0,
21723 0,
21724 113,
21725 OPC_CheckChild4Integer, 2,
21726 OPC_MoveChild5,
21727 OPC_Scope, 53,
21728 OPC_CheckInteger, 0,
21729 OPC_MoveSibling6,
21730 OPC_Scope, 23,
21731 OPC_CheckInteger, 0,
21732 OPC_MoveParent,
21733 OPC_RecordChild7,
21734 OPC_CheckChild7Type, MVT::v16i1,
21735 OPC_CheckType, MVT::v16i8,
21736 OPC_EmitInteger32, 2,
21737 OPC_EmitRegisterI32, 0 ,
21738 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHXs8),
21739 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
21740 23,
21741 OPC_CheckInteger, 2,
21742 OPC_MoveParent,
21743 OPC_RecordChild7,
21744 OPC_CheckChild7Type, MVT::v16i1,
21745 OPC_CheckType, MVT::v16i8,
21746 OPC_EmitInteger32, 2,
21747 OPC_EmitRegisterI32, 0 ,
21748 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHXs8),
21749 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
21750 0,
21751 53,
21752 OPC_CheckInteger, 2,
21753 OPC_MoveSibling6,
21754 OPC_Scope, 23,
21755 OPC_CheckInteger, 0,
21756 OPC_MoveParent,
21757 OPC_RecordChild7,
21758 OPC_CheckChild7Type, MVT::v16i1,
21759 OPC_CheckType, MVT::v16i8,
21760 OPC_EmitInteger32, 2,
21761 OPC_EmitRegisterI32, 0 ,
21762 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHXs8),
21763 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
21764 23,
21765 OPC_CheckInteger, 2,
21766 OPC_MoveParent,
21767 OPC_RecordChild7,
21768 OPC_CheckChild7Type, MVT::v16i1,
21769 OPC_CheckType, MVT::v16i8,
21770 OPC_EmitInteger32, 2,
21771 OPC_EmitRegisterI32, 0 ,
21772 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHXs8),
21773 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
21774 0,
21775 0,
21776 0,
21777 110|128,1,
21778 OPC_CheckChild1Type, MVT::v8i16,
21779 OPC_RecordChild2,
21780 OPC_CheckChild2Type, MVT::v8i16,
21781 OPC_RecordChild3,
21782 OPC_CheckChild3Type, MVT::v8i16,
21783 OPC_Scope, 113,
21784 OPC_CheckChild4Integer, 0,
21785 OPC_MoveChild5,
21786 OPC_Scope, 53,
21787 OPC_CheckInteger, 0,
21788 OPC_MoveSibling6,
21789 OPC_Scope, 23,
21790 OPC_CheckInteger, 0,
21791 OPC_MoveParent,
21792 OPC_RecordChild7,
21793 OPC_CheckChild7Type, MVT::v8i1,
21794 OPC_CheckType, MVT::v8i16,
21795 OPC_EmitInteger32, 2,
21796 OPC_EmitRegisterI32, 0 ,
21797 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHs16),
21798 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
21799 23,
21800 OPC_CheckInteger, 2,
21801 OPC_MoveParent,
21802 OPC_RecordChild7,
21803 OPC_CheckChild7Type, MVT::v8i1,
21804 OPC_CheckType, MVT::v8i16,
21805 OPC_EmitInteger32, 2,
21806 OPC_EmitRegisterI32, 0 ,
21807 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHs16),
21808 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
21809 0,
21810 53,
21811 OPC_CheckInteger, 2,
21812 OPC_MoveSibling6,
21813 OPC_Scope, 23,
21814 OPC_CheckInteger, 0,
21815 OPC_MoveParent,
21816 OPC_RecordChild7,
21817 OPC_CheckChild7Type, MVT::v8i1,
21818 OPC_CheckType, MVT::v8i16,
21819 OPC_EmitInteger32, 2,
21820 OPC_EmitRegisterI32, 0 ,
21821 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHs16),
21822 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
21823 23,
21824 OPC_CheckInteger, 2,
21825 OPC_MoveParent,
21826 OPC_RecordChild7,
21827 OPC_CheckChild7Type, MVT::v8i1,
21828 OPC_CheckType, MVT::v8i16,
21829 OPC_EmitInteger32, 2,
21830 OPC_EmitRegisterI32, 0 ,
21831 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHs16),
21832 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
21833 0,
21834 0,
21835 113,
21836 OPC_CheckChild4Integer, 2,
21837 OPC_MoveChild5,
21838 OPC_Scope, 53,
21839 OPC_CheckInteger, 0,
21840 OPC_MoveSibling6,
21841 OPC_Scope, 23,
21842 OPC_CheckInteger, 0,
21843 OPC_MoveParent,
21844 OPC_RecordChild7,
21845 OPC_CheckChild7Type, MVT::v8i1,
21846 OPC_CheckType, MVT::v8i16,
21847 OPC_EmitInteger32, 2,
21848 OPC_EmitRegisterI32, 0 ,
21849 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHXs16),
21850 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
21851 23,
21852 OPC_CheckInteger, 2,
21853 OPC_MoveParent,
21854 OPC_RecordChild7,
21855 OPC_CheckChild7Type, MVT::v8i1,
21856 OPC_CheckType, MVT::v8i16,
21857 OPC_EmitInteger32, 2,
21858 OPC_EmitRegisterI32, 0 ,
21859 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHXs16),
21860 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
21861 0,
21862 53,
21863 OPC_CheckInteger, 2,
21864 OPC_MoveSibling6,
21865 OPC_Scope, 23,
21866 OPC_CheckInteger, 0,
21867 OPC_MoveParent,
21868 OPC_RecordChild7,
21869 OPC_CheckChild7Type, MVT::v8i1,
21870 OPC_CheckType, MVT::v8i16,
21871 OPC_EmitInteger32, 2,
21872 OPC_EmitRegisterI32, 0 ,
21873 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHXs16),
21874 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
21875 23,
21876 OPC_CheckInteger, 2,
21877 OPC_MoveParent,
21878 OPC_RecordChild7,
21879 OPC_CheckChild7Type, MVT::v8i1,
21880 OPC_CheckType, MVT::v8i16,
21881 OPC_EmitInteger32, 2,
21882 OPC_EmitRegisterI32, 0 ,
21883 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHXs16),
21884 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
21885 0,
21886 0,
21887 0,
21888 110|128,1,
21889 OPC_CheckChild1Type, MVT::v4i32,
21890 OPC_RecordChild2,
21891 OPC_CheckChild2Type, MVT::v4i32,
21892 OPC_RecordChild3,
21893 OPC_CheckChild3Type, MVT::v4i32,
21894 OPC_Scope, 113,
21895 OPC_CheckChild4Integer, 0,
21896 OPC_MoveChild5,
21897 OPC_Scope, 53,
21898 OPC_CheckInteger, 0,
21899 OPC_MoveSibling6,
21900 OPC_Scope, 23,
21901 OPC_CheckInteger, 0,
21902 OPC_MoveParent,
21903 OPC_RecordChild7,
21904 OPC_CheckChild7Type, MVT::v4i1,
21905 OPC_CheckType, MVT::v4i32,
21906 OPC_EmitInteger32, 2,
21907 OPC_EmitRegisterI32, 0 ,
21908 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHs32),
21909 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
21910 23,
21911 OPC_CheckInteger, 2,
21912 OPC_MoveParent,
21913 OPC_RecordChild7,
21914 OPC_CheckChild7Type, MVT::v4i1,
21915 OPC_CheckType, MVT::v4i32,
21916 OPC_EmitInteger32, 2,
21917 OPC_EmitRegisterI32, 0 ,
21918 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHs32),
21919 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
21920 0,
21921 53,
21922 OPC_CheckInteger, 2,
21923 OPC_MoveSibling6,
21924 OPC_Scope, 23,
21925 OPC_CheckInteger, 0,
21926 OPC_MoveParent,
21927 OPC_RecordChild7,
21928 OPC_CheckChild7Type, MVT::v4i1,
21929 OPC_CheckType, MVT::v4i32,
21930 OPC_EmitInteger32, 2,
21931 OPC_EmitRegisterI32, 0 ,
21932 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHs32),
21933 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
21934 23,
21935 OPC_CheckInteger, 2,
21936 OPC_MoveParent,
21937 OPC_RecordChild7,
21938 OPC_CheckChild7Type, MVT::v4i1,
21939 OPC_CheckType, MVT::v4i32,
21940 OPC_EmitInteger32, 2,
21941 OPC_EmitRegisterI32, 0 ,
21942 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHs32),
21943 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
21944 0,
21945 0,
21946 113,
21947 OPC_CheckChild4Integer, 2,
21948 OPC_MoveChild5,
21949 OPC_Scope, 53,
21950 OPC_CheckInteger, 0,
21951 OPC_MoveSibling6,
21952 OPC_Scope, 23,
21953 OPC_CheckInteger, 0,
21954 OPC_MoveParent,
21955 OPC_RecordChild7,
21956 OPC_CheckChild7Type, MVT::v4i1,
21957 OPC_CheckType, MVT::v4i32,
21958 OPC_EmitInteger32, 2,
21959 OPC_EmitRegisterI32, 0 ,
21960 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLADHXs32),
21961 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
21962 23,
21963 OPC_CheckInteger, 2,
21964 OPC_MoveParent,
21965 OPC_RecordChild7,
21966 OPC_CheckChild7Type, MVT::v4i1,
21967 OPC_CheckType, MVT::v4i32,
21968 OPC_EmitInteger32, 2,
21969 OPC_EmitRegisterI32, 0 ,
21970 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLSDHXs32),
21971 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
21972 0,
21973 53,
21974 OPC_CheckInteger, 2,
21975 OPC_MoveSibling6,
21976 OPC_Scope, 23,
21977 OPC_CheckInteger, 0,
21978 OPC_MoveParent,
21979 OPC_RecordChild7,
21980 OPC_CheckChild7Type, MVT::v4i1,
21981 OPC_CheckType, MVT::v4i32,
21982 OPC_EmitInteger32, 2,
21983 OPC_EmitRegisterI32, 0 ,
21984 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLADHXs32),
21985 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
21986 23,
21987 OPC_CheckInteger, 2,
21988 OPC_MoveParent,
21989 OPC_RecordChild7,
21990 OPC_CheckChild7Type, MVT::v4i1,
21991 OPC_CheckType, MVT::v4i32,
21992 OPC_EmitInteger32, 2,
21993 OPC_EmitRegisterI32, 0 ,
21994 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLSDHXs32),
21995 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
21996 0,
21997 0,
21998 0,
21999 0,
22000 82|128,2,
22001 OPC_CheckChild0Integer, 18|128,52,
22002 OPC_RecordChild1,
22003 OPC_Scope, 36|128,1,
22004 OPC_CheckChild1Type, MVT::v8i16,
22005 OPC_RecordChild2,
22006 OPC_CheckChild2Type, MVT::v4i32,
22007 OPC_Scope, 51,
22008 OPC_CheckChild3Integer, 0,
22009 OPC_CheckChild4Integer, 0,
22010 OPC_MoveChild5,
22011 OPC_Scope, 21,
22012 OPC_CheckInteger, 0,
22013 OPC_MoveParent,
22014 OPC_CheckType, MVT::v8i16,
22015 OPC_EmitInteger32, 0,
22016 OPC_EmitRegisterI32, 0 ,
22017 OPC_EmitRegisterI32, 0 ,
22018 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs32bh),
22019 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22020 21,
22021 OPC_CheckInteger, 2,
22022 OPC_MoveParent,
22023 OPC_CheckType, MVT::v8i16,
22024 OPC_EmitInteger32, 0,
22025 OPC_EmitRegisterI32, 0 ,
22026 OPC_EmitRegisterI32, 0 ,
22027 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs32th),
22028 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22029 0,
22030 104,
22031 OPC_CheckChild3Integer, 2,
22032 OPC_Scope, 49,
22033 OPC_CheckChild4Integer, 2,
22034 OPC_MoveChild5,
22035 OPC_Scope, 21,
22036 OPC_CheckInteger, 0,
22037 OPC_MoveParent,
22038 OPC_CheckType, MVT::v8i16,
22039 OPC_EmitInteger32, 0,
22040 OPC_EmitRegisterI32, 0 ,
22041 OPC_EmitRegisterI32, 0 ,
22042 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu32bh),
22043 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22044 21,
22045 OPC_CheckInteger, 2,
22046 OPC_MoveParent,
22047 OPC_CheckType, MVT::v8i16,
22048 OPC_EmitInteger32, 0,
22049 OPC_EmitRegisterI32, 0 ,
22050 OPC_EmitRegisterI32, 0 ,
22051 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu32th),
22052 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22053 0,
22054 49,
22055 OPC_CheckChild4Integer, 0,
22056 OPC_MoveChild5,
22057 OPC_Scope, 21,
22058 OPC_CheckInteger, 0,
22059 OPC_MoveParent,
22060 OPC_CheckType, MVT::v8i16,
22061 OPC_EmitInteger32, 0,
22062 OPC_EmitRegisterI32, 0 ,
22063 OPC_EmitRegisterI32, 0 ,
22064 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVUNs32bh),
22065 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22066 21,
22067 OPC_CheckInteger, 2,
22068 OPC_MoveParent,
22069 OPC_CheckType, MVT::v8i16,
22070 OPC_EmitInteger32, 0,
22071 OPC_EmitRegisterI32, 0 ,
22072 OPC_EmitRegisterI32, 0 ,
22073 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVUNs32th),
22074 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22075 0,
22076 0,
22077 0,
22078 36|128,1,
22079 OPC_CheckChild1Type, MVT::v16i8,
22080 OPC_RecordChild2,
22081 OPC_CheckChild2Type, MVT::v8i16,
22082 OPC_Scope, 51,
22083 OPC_CheckChild3Integer, 0,
22084 OPC_CheckChild4Integer, 0,
22085 OPC_MoveChild5,
22086 OPC_Scope, 21,
22087 OPC_CheckInteger, 0,
22088 OPC_MoveParent,
22089 OPC_CheckType, MVT::v16i8,
22090 OPC_EmitInteger32, 0,
22091 OPC_EmitRegisterI32, 0 ,
22092 OPC_EmitRegisterI32, 0 ,
22093 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs16bh),
22094 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22095 21,
22096 OPC_CheckInteger, 2,
22097 OPC_MoveParent,
22098 OPC_CheckType, MVT::v16i8,
22099 OPC_EmitInteger32, 0,
22100 OPC_EmitRegisterI32, 0 ,
22101 OPC_EmitRegisterI32, 0 ,
22102 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs16th),
22103 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22104 0,
22105 104,
22106 OPC_CheckChild3Integer, 2,
22107 OPC_Scope, 49,
22108 OPC_CheckChild4Integer, 2,
22109 OPC_MoveChild5,
22110 OPC_Scope, 21,
22111 OPC_CheckInteger, 0,
22112 OPC_MoveParent,
22113 OPC_CheckType, MVT::v16i8,
22114 OPC_EmitInteger32, 0,
22115 OPC_EmitRegisterI32, 0 ,
22116 OPC_EmitRegisterI32, 0 ,
22117 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu16bh),
22118 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22119 21,
22120 OPC_CheckInteger, 2,
22121 OPC_MoveParent,
22122 OPC_CheckType, MVT::v16i8,
22123 OPC_EmitInteger32, 0,
22124 OPC_EmitRegisterI32, 0 ,
22125 OPC_EmitRegisterI32, 0 ,
22126 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu16th),
22127 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22128 0,
22129 49,
22130 OPC_CheckChild4Integer, 0,
22131 OPC_MoveChild5,
22132 OPC_Scope, 21,
22133 OPC_CheckInteger, 0,
22134 OPC_MoveParent,
22135 OPC_CheckType, MVT::v16i8,
22136 OPC_EmitInteger32, 0,
22137 OPC_EmitRegisterI32, 0 ,
22138 OPC_EmitRegisterI32, 0 ,
22139 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVUNs16bh),
22140 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22141 21,
22142 OPC_CheckInteger, 2,
22143 OPC_MoveParent,
22144 OPC_CheckType, MVT::v16i8,
22145 OPC_EmitInteger32, 0,
22146 OPC_EmitRegisterI32, 0 ,
22147 OPC_EmitRegisterI32, 0 ,
22148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVUNs16th),
22149 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22150 0,
22151 0,
22152 0,
22153 0,
22154 94|128,2,
22155 OPC_CheckChild0Integer, 20|128,52,
22156 OPC_RecordChild1,
22157 OPC_Scope, 42|128,1,
22158 OPC_CheckChild1Type, MVT::v8i16,
22159 OPC_RecordChild2,
22160 OPC_CheckChild2Type, MVT::v4i32,
22161 OPC_Scope, 53,
22162 OPC_CheckChild3Integer, 0,
22163 OPC_CheckChild4Integer, 0,
22164 OPC_MoveChild5,
22165 OPC_Scope, 22,
22166 OPC_CheckInteger, 0,
22167 OPC_MoveParent,
22168 OPC_RecordChild6,
22169 OPC_CheckChild6Type, MVT::v4i1,
22170 OPC_CheckType, MVT::v8i16,
22171 OPC_EmitInteger32, 2,
22172 OPC_EmitRegisterI32, 0 ,
22173 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs32bh),
22174 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22175 22,
22176 OPC_CheckInteger, 2,
22177 OPC_MoveParent,
22178 OPC_RecordChild6,
22179 OPC_CheckChild6Type, MVT::v4i1,
22180 OPC_CheckType, MVT::v8i16,
22181 OPC_EmitInteger32, 2,
22182 OPC_EmitRegisterI32, 0 ,
22183 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs32th),
22184 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22185 0,
22186 108,
22187 OPC_CheckChild3Integer, 2,
22188 OPC_Scope, 51,
22189 OPC_CheckChild4Integer, 2,
22190 OPC_MoveChild5,
22191 OPC_Scope, 22,
22192 OPC_CheckInteger, 0,
22193 OPC_MoveParent,
22194 OPC_RecordChild6,
22195 OPC_CheckChild6Type, MVT::v4i1,
22196 OPC_CheckType, MVT::v8i16,
22197 OPC_EmitInteger32, 2,
22198 OPC_EmitRegisterI32, 0 ,
22199 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu32bh),
22200 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22201 22,
22202 OPC_CheckInteger, 2,
22203 OPC_MoveParent,
22204 OPC_RecordChild6,
22205 OPC_CheckChild6Type, MVT::v4i1,
22206 OPC_CheckType, MVT::v8i16,
22207 OPC_EmitInteger32, 2,
22208 OPC_EmitRegisterI32, 0 ,
22209 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu32th),
22210 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22211 0,
22212 51,
22213 OPC_CheckChild4Integer, 0,
22214 OPC_MoveChild5,
22215 OPC_Scope, 22,
22216 OPC_CheckInteger, 0,
22217 OPC_MoveParent,
22218 OPC_RecordChild6,
22219 OPC_CheckChild6Type, MVT::v4i1,
22220 OPC_CheckType, MVT::v8i16,
22221 OPC_EmitInteger32, 2,
22222 OPC_EmitRegisterI32, 0 ,
22223 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVUNs32bh),
22224 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22225 22,
22226 OPC_CheckInteger, 2,
22227 OPC_MoveParent,
22228 OPC_RecordChild6,
22229 OPC_CheckChild6Type, MVT::v4i1,
22230 OPC_CheckType, MVT::v8i16,
22231 OPC_EmitInteger32, 2,
22232 OPC_EmitRegisterI32, 0 ,
22233 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVUNs32th),
22234 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22235 0,
22236 0,
22237 0,
22238 42|128,1,
22239 OPC_CheckChild1Type, MVT::v16i8,
22240 OPC_RecordChild2,
22241 OPC_CheckChild2Type, MVT::v8i16,
22242 OPC_Scope, 53,
22243 OPC_CheckChild3Integer, 0,
22244 OPC_CheckChild4Integer, 0,
22245 OPC_MoveChild5,
22246 OPC_Scope, 22,
22247 OPC_CheckInteger, 0,
22248 OPC_MoveParent,
22249 OPC_RecordChild6,
22250 OPC_CheckChild6Type, MVT::v8i1,
22251 OPC_CheckType, MVT::v16i8,
22252 OPC_EmitInteger32, 2,
22253 OPC_EmitRegisterI32, 0 ,
22254 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs16bh),
22255 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22256 22,
22257 OPC_CheckInteger, 2,
22258 OPC_MoveParent,
22259 OPC_RecordChild6,
22260 OPC_CheckChild6Type, MVT::v8i1,
22261 OPC_CheckType, MVT::v16i8,
22262 OPC_EmitInteger32, 2,
22263 OPC_EmitRegisterI32, 0 ,
22264 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs16th),
22265 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22266 0,
22267 108,
22268 OPC_CheckChild3Integer, 2,
22269 OPC_Scope, 51,
22270 OPC_CheckChild4Integer, 2,
22271 OPC_MoveChild5,
22272 OPC_Scope, 22,
22273 OPC_CheckInteger, 0,
22274 OPC_MoveParent,
22275 OPC_RecordChild6,
22276 OPC_CheckChild6Type, MVT::v8i1,
22277 OPC_CheckType, MVT::v16i8,
22278 OPC_EmitInteger32, 2,
22279 OPC_EmitRegisterI32, 0 ,
22280 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu16bh),
22281 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22282 22,
22283 OPC_CheckInteger, 2,
22284 OPC_MoveParent,
22285 OPC_RecordChild6,
22286 OPC_CheckChild6Type, MVT::v8i1,
22287 OPC_CheckType, MVT::v16i8,
22288 OPC_EmitInteger32, 2,
22289 OPC_EmitRegisterI32, 0 ,
22290 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu16th),
22291 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22292 0,
22293 51,
22294 OPC_CheckChild4Integer, 0,
22295 OPC_MoveChild5,
22296 OPC_Scope, 22,
22297 OPC_CheckInteger, 0,
22298 OPC_MoveParent,
22299 OPC_RecordChild6,
22300 OPC_CheckChild6Type, MVT::v8i1,
22301 OPC_CheckType, MVT::v16i8,
22302 OPC_EmitInteger32, 2,
22303 OPC_EmitRegisterI32, 0 ,
22304 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVUNs16bh),
22305 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22306 22,
22307 OPC_CheckInteger, 2,
22308 OPC_MoveParent,
22309 OPC_RecordChild6,
22310 OPC_CheckChild6Type, MVT::v8i1,
22311 OPC_CheckType, MVT::v16i8,
22312 OPC_EmitInteger32, 2,
22313 OPC_EmitRegisterI32, 0 ,
22314 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVUNs16th),
22315 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22316 0,
22317 0,
22318 0,
22319 0,
22320 17|128,5,
22321 OPC_CheckChild0Integer, 74|128,52,
22322 OPC_RecordChild1,
22323 OPC_Scope, 87|128,1,
22324 OPC_CheckChild1Type, MVT::v16i8,
22325 OPC_RecordChild2,
22326 OPC_Scope, 104,
22327 OPC_CheckChild3Integer, 0,
22328 OPC_Scope, 49,
22329 OPC_CheckChild4Integer, 0,
22330 OPC_MoveChild5,
22331 OPC_Scope, 21,
22332 OPC_CheckInteger, 0,
22333 OPC_MoveParent,
22334 OPC_CheckType, MVT::v16i8,
22335 OPC_EmitInteger32, 0,
22336 OPC_EmitRegisterI32, 0 ,
22337 OPC_EmitRegisterI32, 0 ,
22338 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qrs8),
22339 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22340 21,
22341 OPC_CheckInteger, 2,
22342 OPC_MoveParent,
22343 OPC_CheckType, MVT::v16i8,
22344 OPC_EmitInteger32, 0,
22345 OPC_EmitRegisterI32, 0 ,
22346 OPC_EmitRegisterI32, 0 ,
22347 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qru8),
22348 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22349 0,
22350 49,
22351 OPC_CheckChild4Integer, 2,
22352 OPC_MoveChild5,
22353 OPC_Scope, 21,
22354 OPC_CheckInteger, 0,
22355 OPC_MoveParent,
22356 OPC_CheckType, MVT::v16i8,
22357 OPC_EmitInteger32, 0,
22358 OPC_EmitRegisterI32, 0 ,
22359 OPC_EmitRegisterI32, 0 ,
22360 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qrs8),
22361 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22362 21,
22363 OPC_CheckInteger, 2,
22364 OPC_MoveParent,
22365 OPC_CheckType, MVT::v16i8,
22366 OPC_EmitInteger32, 0,
22367 OPC_EmitRegisterI32, 0 ,
22368 OPC_EmitRegisterI32, 0 ,
22369 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qru8),
22370 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22371 0,
22372 0,
22373 104,
22374 OPC_CheckChild3Integer, 2,
22375 OPC_Scope, 49,
22376 OPC_CheckChild4Integer, 0,
22377 OPC_MoveChild5,
22378 OPC_Scope, 21,
22379 OPC_CheckInteger, 0,
22380 OPC_MoveParent,
22381 OPC_CheckType, MVT::v16i8,
22382 OPC_EmitInteger32, 0,
22383 OPC_EmitRegisterI32, 0 ,
22384 OPC_EmitRegisterI32, 0 ,
22385 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qrs8),
22386 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22387 21,
22388 OPC_CheckInteger, 2,
22389 OPC_MoveParent,
22390 OPC_CheckType, MVT::v16i8,
22391 OPC_EmitInteger32, 0,
22392 OPC_EmitRegisterI32, 0 ,
22393 OPC_EmitRegisterI32, 0 ,
22394 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qru8),
22395 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22396 0,
22397 49,
22398 OPC_CheckChild4Integer, 2,
22399 OPC_MoveChild5,
22400 OPC_Scope, 21,
22401 OPC_CheckInteger, 0,
22402 OPC_MoveParent,
22403 OPC_CheckType, MVT::v16i8,
22404 OPC_EmitInteger32, 0,
22405 OPC_EmitRegisterI32, 0 ,
22406 OPC_EmitRegisterI32, 0 ,
22407 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qrs8),
22408 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22409 21,
22410 OPC_CheckInteger, 2,
22411 OPC_MoveParent,
22412 OPC_CheckType, MVT::v16i8,
22413 OPC_EmitInteger32, 0,
22414 OPC_EmitRegisterI32, 0 ,
22415 OPC_EmitRegisterI32, 0 ,
22416 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qru8),
22417 MVT::v16i8, 5, 0, 1, 2, 3, 4,
22418 0,
22419 0,
22420 0,
22421 87|128,1,
22422 OPC_CheckChild1Type, MVT::v8i16,
22423 OPC_RecordChild2,
22424 OPC_Scope, 104,
22425 OPC_CheckChild3Integer, 0,
22426 OPC_Scope, 49,
22427 OPC_CheckChild4Integer, 0,
22428 OPC_MoveChild5,
22429 OPC_Scope, 21,
22430 OPC_CheckInteger, 0,
22431 OPC_MoveParent,
22432 OPC_CheckType, MVT::v8i16,
22433 OPC_EmitInteger32, 0,
22434 OPC_EmitRegisterI32, 0 ,
22435 OPC_EmitRegisterI32, 0 ,
22436 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qrs16),
22437 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22438 21,
22439 OPC_CheckInteger, 2,
22440 OPC_MoveParent,
22441 OPC_CheckType, MVT::v8i16,
22442 OPC_EmitInteger32, 0,
22443 OPC_EmitRegisterI32, 0 ,
22444 OPC_EmitRegisterI32, 0 ,
22445 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qru16),
22446 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22447 0,
22448 49,
22449 OPC_CheckChild4Integer, 2,
22450 OPC_MoveChild5,
22451 OPC_Scope, 21,
22452 OPC_CheckInteger, 0,
22453 OPC_MoveParent,
22454 OPC_CheckType, MVT::v8i16,
22455 OPC_EmitInteger32, 0,
22456 OPC_EmitRegisterI32, 0 ,
22457 OPC_EmitRegisterI32, 0 ,
22458 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qrs16),
22459 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22460 21,
22461 OPC_CheckInteger, 2,
22462 OPC_MoveParent,
22463 OPC_CheckType, MVT::v8i16,
22464 OPC_EmitInteger32, 0,
22465 OPC_EmitRegisterI32, 0 ,
22466 OPC_EmitRegisterI32, 0 ,
22467 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qru16),
22468 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22469 0,
22470 0,
22471 104,
22472 OPC_CheckChild3Integer, 2,
22473 OPC_Scope, 49,
22474 OPC_CheckChild4Integer, 0,
22475 OPC_MoveChild5,
22476 OPC_Scope, 21,
22477 OPC_CheckInteger, 0,
22478 OPC_MoveParent,
22479 OPC_CheckType, MVT::v8i16,
22480 OPC_EmitInteger32, 0,
22481 OPC_EmitRegisterI32, 0 ,
22482 OPC_EmitRegisterI32, 0 ,
22483 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qrs16),
22484 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22485 21,
22486 OPC_CheckInteger, 2,
22487 OPC_MoveParent,
22488 OPC_CheckType, MVT::v8i16,
22489 OPC_EmitInteger32, 0,
22490 OPC_EmitRegisterI32, 0 ,
22491 OPC_EmitRegisterI32, 0 ,
22492 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qru16),
22493 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22494 0,
22495 49,
22496 OPC_CheckChild4Integer, 2,
22497 OPC_MoveChild5,
22498 OPC_Scope, 21,
22499 OPC_CheckInteger, 0,
22500 OPC_MoveParent,
22501 OPC_CheckType, MVT::v8i16,
22502 OPC_EmitInteger32, 0,
22503 OPC_EmitRegisterI32, 0 ,
22504 OPC_EmitRegisterI32, 0 ,
22505 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qrs16),
22506 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22507 21,
22508 OPC_CheckInteger, 2,
22509 OPC_MoveParent,
22510 OPC_CheckType, MVT::v8i16,
22511 OPC_EmitInteger32, 0,
22512 OPC_EmitRegisterI32, 0 ,
22513 OPC_EmitRegisterI32, 0 ,
22514 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qru16),
22515 MVT::v8i16, 5, 0, 1, 2, 3, 4,
22516 0,
22517 0,
22518 0,
22519 87|128,1,
22520 OPC_CheckChild1Type, MVT::v4i32,
22521 OPC_RecordChild2,
22522 OPC_Scope, 104,
22523 OPC_CheckChild3Integer, 0,
22524 OPC_Scope, 49,
22525 OPC_CheckChild4Integer, 0,
22526 OPC_MoveChild5,
22527 OPC_Scope, 21,
22528 OPC_CheckInteger, 0,
22529 OPC_MoveParent,
22530 OPC_CheckType, MVT::v4i32,
22531 OPC_EmitInteger32, 0,
22532 OPC_EmitRegisterI32, 0 ,
22533 OPC_EmitRegisterI32, 0 ,
22534 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qrs32),
22535 MVT::v4i32, 5, 0, 1, 2, 3, 4,
22536 21,
22537 OPC_CheckInteger, 2,
22538 OPC_MoveParent,
22539 OPC_CheckType, MVT::v4i32,
22540 OPC_EmitInteger32, 0,
22541 OPC_EmitRegisterI32, 0 ,
22542 OPC_EmitRegisterI32, 0 ,
22543 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qru32),
22544 MVT::v4i32, 5, 0, 1, 2, 3, 4,
22545 0,
22546 49,
22547 OPC_CheckChild4Integer, 2,
22548 OPC_MoveChild5,
22549 OPC_Scope, 21,
22550 OPC_CheckInteger, 0,
22551 OPC_MoveParent,
22552 OPC_CheckType, MVT::v4i32,
22553 OPC_EmitInteger32, 0,
22554 OPC_EmitRegisterI32, 0 ,
22555 OPC_EmitRegisterI32, 0 ,
22556 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qrs32),
22557 MVT::v4i32, 5, 0, 1, 2, 3, 4,
22558 21,
22559 OPC_CheckInteger, 2,
22560 OPC_MoveParent,
22561 OPC_CheckType, MVT::v4i32,
22562 OPC_EmitInteger32, 0,
22563 OPC_EmitRegisterI32, 0 ,
22564 OPC_EmitRegisterI32, 0 ,
22565 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qru32),
22566 MVT::v4i32, 5, 0, 1, 2, 3, 4,
22567 0,
22568 0,
22569 104,
22570 OPC_CheckChild3Integer, 2,
22571 OPC_Scope, 49,
22572 OPC_CheckChild4Integer, 0,
22573 OPC_MoveChild5,
22574 OPC_Scope, 21,
22575 OPC_CheckInteger, 0,
22576 OPC_MoveParent,
22577 OPC_CheckType, MVT::v4i32,
22578 OPC_EmitInteger32, 0,
22579 OPC_EmitRegisterI32, 0 ,
22580 OPC_EmitRegisterI32, 0 ,
22581 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qrs32),
22582 MVT::v4i32, 5, 0, 1, 2, 3, 4,
22583 21,
22584 OPC_CheckInteger, 2,
22585 OPC_MoveParent,
22586 OPC_CheckType, MVT::v4i32,
22587 OPC_EmitInteger32, 0,
22588 OPC_EmitRegisterI32, 0 ,
22589 OPC_EmitRegisterI32, 0 ,
22590 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qru32),
22591 MVT::v4i32, 5, 0, 1, 2, 3, 4,
22592 0,
22593 49,
22594 OPC_CheckChild4Integer, 2,
22595 OPC_MoveChild5,
22596 OPC_Scope, 21,
22597 OPC_CheckInteger, 0,
22598 OPC_MoveParent,
22599 OPC_CheckType, MVT::v4i32,
22600 OPC_EmitInteger32, 0,
22601 OPC_EmitRegisterI32, 0 ,
22602 OPC_EmitRegisterI32, 0 ,
22603 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qrs32),
22604 MVT::v4i32, 5, 0, 1, 2, 3, 4,
22605 21,
22606 OPC_CheckInteger, 2,
22607 OPC_MoveParent,
22608 OPC_CheckType, MVT::v4i32,
22609 OPC_EmitInteger32, 0,
22610 OPC_EmitRegisterI32, 0 ,
22611 OPC_EmitRegisterI32, 0 ,
22612 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qru32),
22613 MVT::v4i32, 5, 0, 1, 2, 3, 4,
22614 0,
22615 0,
22616 0,
22617 0,
22618 41|128,5,
22619 OPC_CheckChild0Integer, 76|128,52,
22620 OPC_RecordChild1,
22621 OPC_Scope, 95|128,1,
22622 OPC_CheckChild1Type, MVT::v16i8,
22623 OPC_RecordChild2,
22624 OPC_Scope, 108,
22625 OPC_CheckChild3Integer, 0,
22626 OPC_Scope, 51,
22627 OPC_CheckChild4Integer, 0,
22628 OPC_MoveChild5,
22629 OPC_Scope, 22,
22630 OPC_CheckInteger, 0,
22631 OPC_MoveParent,
22632 OPC_RecordChild6,
22633 OPC_CheckChild6Type, MVT::v16i1,
22634 OPC_CheckType, MVT::v16i8,
22635 OPC_EmitInteger32, 2,
22636 OPC_EmitRegisterI32, 0 ,
22637 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qrs8),
22638 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22639 22,
22640 OPC_CheckInteger, 2,
22641 OPC_MoveParent,
22642 OPC_RecordChild6,
22643 OPC_CheckChild6Type, MVT::v16i1,
22644 OPC_CheckType, MVT::v16i8,
22645 OPC_EmitInteger32, 2,
22646 OPC_EmitRegisterI32, 0 ,
22647 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qru8),
22648 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22649 0,
22650 51,
22651 OPC_CheckChild4Integer, 2,
22652 OPC_MoveChild5,
22653 OPC_Scope, 22,
22654 OPC_CheckInteger, 0,
22655 OPC_MoveParent,
22656 OPC_RecordChild6,
22657 OPC_CheckChild6Type, MVT::v16i1,
22658 OPC_CheckType, MVT::v16i8,
22659 OPC_EmitInteger32, 2,
22660 OPC_EmitRegisterI32, 0 ,
22661 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qrs8),
22662 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22663 22,
22664 OPC_CheckInteger, 2,
22665 OPC_MoveParent,
22666 OPC_RecordChild6,
22667 OPC_CheckChild6Type, MVT::v16i1,
22668 OPC_CheckType, MVT::v16i8,
22669 OPC_EmitInteger32, 2,
22670 OPC_EmitRegisterI32, 0 ,
22671 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qru8),
22672 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22673 0,
22674 0,
22675 108,
22676 OPC_CheckChild3Integer, 2,
22677 OPC_Scope, 51,
22678 OPC_CheckChild4Integer, 0,
22679 OPC_MoveChild5,
22680 OPC_Scope, 22,
22681 OPC_CheckInteger, 0,
22682 OPC_MoveParent,
22683 OPC_RecordChild6,
22684 OPC_CheckChild6Type, MVT::v16i1,
22685 OPC_CheckType, MVT::v16i8,
22686 OPC_EmitInteger32, 2,
22687 OPC_EmitRegisterI32, 0 ,
22688 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qrs8),
22689 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22690 22,
22691 OPC_CheckInteger, 2,
22692 OPC_MoveParent,
22693 OPC_RecordChild6,
22694 OPC_CheckChild6Type, MVT::v16i1,
22695 OPC_CheckType, MVT::v16i8,
22696 OPC_EmitInteger32, 2,
22697 OPC_EmitRegisterI32, 0 ,
22698 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qru8),
22699 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22700 0,
22701 51,
22702 OPC_CheckChild4Integer, 2,
22703 OPC_MoveChild5,
22704 OPC_Scope, 22,
22705 OPC_CheckInteger, 0,
22706 OPC_MoveParent,
22707 OPC_RecordChild6,
22708 OPC_CheckChild6Type, MVT::v16i1,
22709 OPC_CheckType, MVT::v16i8,
22710 OPC_EmitInteger32, 2,
22711 OPC_EmitRegisterI32, 0 ,
22712 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qrs8),
22713 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22714 22,
22715 OPC_CheckInteger, 2,
22716 OPC_MoveParent,
22717 OPC_RecordChild6,
22718 OPC_CheckChild6Type, MVT::v16i1,
22719 OPC_CheckType, MVT::v16i8,
22720 OPC_EmitInteger32, 2,
22721 OPC_EmitRegisterI32, 0 ,
22722 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qru8),
22723 MVT::v16i8, 5, 0, 1, 3, 2, 4,
22724 0,
22725 0,
22726 0,
22727 95|128,1,
22728 OPC_CheckChild1Type, MVT::v8i16,
22729 OPC_RecordChild2,
22730 OPC_Scope, 108,
22731 OPC_CheckChild3Integer, 0,
22732 OPC_Scope, 51,
22733 OPC_CheckChild4Integer, 0,
22734 OPC_MoveChild5,
22735 OPC_Scope, 22,
22736 OPC_CheckInteger, 0,
22737 OPC_MoveParent,
22738 OPC_RecordChild6,
22739 OPC_CheckChild6Type, MVT::v8i1,
22740 OPC_CheckType, MVT::v8i16,
22741 OPC_EmitInteger32, 2,
22742 OPC_EmitRegisterI32, 0 ,
22743 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qrs16),
22744 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22745 22,
22746 OPC_CheckInteger, 2,
22747 OPC_MoveParent,
22748 OPC_RecordChild6,
22749 OPC_CheckChild6Type, MVT::v8i1,
22750 OPC_CheckType, MVT::v8i16,
22751 OPC_EmitInteger32, 2,
22752 OPC_EmitRegisterI32, 0 ,
22753 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qru16),
22754 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22755 0,
22756 51,
22757 OPC_CheckChild4Integer, 2,
22758 OPC_MoveChild5,
22759 OPC_Scope, 22,
22760 OPC_CheckInteger, 0,
22761 OPC_MoveParent,
22762 OPC_RecordChild6,
22763 OPC_CheckChild6Type, MVT::v8i1,
22764 OPC_CheckType, MVT::v8i16,
22765 OPC_EmitInteger32, 2,
22766 OPC_EmitRegisterI32, 0 ,
22767 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qrs16),
22768 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22769 22,
22770 OPC_CheckInteger, 2,
22771 OPC_MoveParent,
22772 OPC_RecordChild6,
22773 OPC_CheckChild6Type, MVT::v8i1,
22774 OPC_CheckType, MVT::v8i16,
22775 OPC_EmitInteger32, 2,
22776 OPC_EmitRegisterI32, 0 ,
22777 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qru16),
22778 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22779 0,
22780 0,
22781 108,
22782 OPC_CheckChild3Integer, 2,
22783 OPC_Scope, 51,
22784 OPC_CheckChild4Integer, 0,
22785 OPC_MoveChild5,
22786 OPC_Scope, 22,
22787 OPC_CheckInteger, 0,
22788 OPC_MoveParent,
22789 OPC_RecordChild6,
22790 OPC_CheckChild6Type, MVT::v8i1,
22791 OPC_CheckType, MVT::v8i16,
22792 OPC_EmitInteger32, 2,
22793 OPC_EmitRegisterI32, 0 ,
22794 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qrs16),
22795 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22796 22,
22797 OPC_CheckInteger, 2,
22798 OPC_MoveParent,
22799 OPC_RecordChild6,
22800 OPC_CheckChild6Type, MVT::v8i1,
22801 OPC_CheckType, MVT::v8i16,
22802 OPC_EmitInteger32, 2,
22803 OPC_EmitRegisterI32, 0 ,
22804 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qru16),
22805 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22806 0,
22807 51,
22808 OPC_CheckChild4Integer, 2,
22809 OPC_MoveChild5,
22810 OPC_Scope, 22,
22811 OPC_CheckInteger, 0,
22812 OPC_MoveParent,
22813 OPC_RecordChild6,
22814 OPC_CheckChild6Type, MVT::v8i1,
22815 OPC_CheckType, MVT::v8i16,
22816 OPC_EmitInteger32, 2,
22817 OPC_EmitRegisterI32, 0 ,
22818 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qrs16),
22819 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22820 22,
22821 OPC_CheckInteger, 2,
22822 OPC_MoveParent,
22823 OPC_RecordChild6,
22824 OPC_CheckChild6Type, MVT::v8i1,
22825 OPC_CheckType, MVT::v8i16,
22826 OPC_EmitInteger32, 2,
22827 OPC_EmitRegisterI32, 0 ,
22828 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qru16),
22829 MVT::v8i16, 5, 0, 1, 3, 2, 4,
22830 0,
22831 0,
22832 0,
22833 95|128,1,
22834 OPC_CheckChild1Type, MVT::v4i32,
22835 OPC_RecordChild2,
22836 OPC_Scope, 108,
22837 OPC_CheckChild3Integer, 0,
22838 OPC_Scope, 51,
22839 OPC_CheckChild4Integer, 0,
22840 OPC_MoveChild5,
22841 OPC_Scope, 22,
22842 OPC_CheckInteger, 0,
22843 OPC_MoveParent,
22844 OPC_RecordChild6,
22845 OPC_CheckChild6Type, MVT::v4i1,
22846 OPC_CheckType, MVT::v4i32,
22847 OPC_EmitInteger32, 2,
22848 OPC_EmitRegisterI32, 0 ,
22849 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qrs32),
22850 MVT::v4i32, 5, 0, 1, 3, 2, 4,
22851 22,
22852 OPC_CheckInteger, 2,
22853 OPC_MoveParent,
22854 OPC_RecordChild6,
22855 OPC_CheckChild6Type, MVT::v4i1,
22856 OPC_CheckType, MVT::v4i32,
22857 OPC_EmitInteger32, 2,
22858 OPC_EmitRegisterI32, 0 ,
22859 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qru32),
22860 MVT::v4i32, 5, 0, 1, 3, 2, 4,
22861 0,
22862 51,
22863 OPC_CheckChild4Integer, 2,
22864 OPC_MoveChild5,
22865 OPC_Scope, 22,
22866 OPC_CheckInteger, 0,
22867 OPC_MoveParent,
22868 OPC_RecordChild6,
22869 OPC_CheckChild6Type, MVT::v4i1,
22870 OPC_CheckType, MVT::v4i32,
22871 OPC_EmitInteger32, 2,
22872 OPC_EmitRegisterI32, 0 ,
22873 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qrs32),
22874 MVT::v4i32, 5, 0, 1, 3, 2, 4,
22875 22,
22876 OPC_CheckInteger, 2,
22877 OPC_MoveParent,
22878 OPC_RecordChild6,
22879 OPC_CheckChild6Type, MVT::v4i1,
22880 OPC_CheckType, MVT::v4i32,
22881 OPC_EmitInteger32, 2,
22882 OPC_EmitRegisterI32, 0 ,
22883 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHL_qru32),
22884 MVT::v4i32, 5, 0, 1, 3, 2, 4,
22885 0,
22886 0,
22887 108,
22888 OPC_CheckChild3Integer, 2,
22889 OPC_Scope, 51,
22890 OPC_CheckChild4Integer, 0,
22891 OPC_MoveChild5,
22892 OPC_Scope, 22,
22893 OPC_CheckInteger, 0,
22894 OPC_MoveParent,
22895 OPC_RecordChild6,
22896 OPC_CheckChild6Type, MVT::v4i1,
22897 OPC_CheckType, MVT::v4i32,
22898 OPC_EmitInteger32, 2,
22899 OPC_EmitRegisterI32, 0 ,
22900 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qrs32),
22901 MVT::v4i32, 5, 0, 1, 3, 2, 4,
22902 22,
22903 OPC_CheckInteger, 2,
22904 OPC_MoveParent,
22905 OPC_RecordChild6,
22906 OPC_CheckChild6Type, MVT::v4i1,
22907 OPC_CheckType, MVT::v4i32,
22908 OPC_EmitInteger32, 2,
22909 OPC_EmitRegisterI32, 0 ,
22910 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHL_qru32),
22911 MVT::v4i32, 5, 0, 1, 3, 2, 4,
22912 0,
22913 51,
22914 OPC_CheckChild4Integer, 2,
22915 OPC_MoveChild5,
22916 OPC_Scope, 22,
22917 OPC_CheckInteger, 0,
22918 OPC_MoveParent,
22919 OPC_RecordChild6,
22920 OPC_CheckChild6Type, MVT::v4i1,
22921 OPC_CheckType, MVT::v4i32,
22922 OPC_EmitInteger32, 2,
22923 OPC_EmitRegisterI32, 0 ,
22924 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qrs32),
22925 MVT::v4i32, 5, 0, 1, 3, 2, 4,
22926 22,
22927 OPC_CheckInteger, 2,
22928 OPC_MoveParent,
22929 OPC_RecordChild6,
22930 OPC_CheckChild6Type, MVT::v4i1,
22931 OPC_CheckType, MVT::v4i32,
22932 OPC_EmitInteger32, 2,
22933 OPC_EmitRegisterI32, 0 ,
22934 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRSHL_qru32),
22935 MVT::v4i32, 5, 0, 1, 3, 2, 4,
22936 0,
22937 0,
22938 0,
22939 0,
22940 11|128,1,
22941 OPC_CheckChild0Integer, 30|128,53,
22942 OPC_RecordChild1,
22943 OPC_Scope, 61,
22944 OPC_CheckChild1Type, MVT::v2i32,
22945 OPC_RecordChild2,
22946 OPC_CheckChild2Type, MVT::v8i8,
22947 OPC_Scope, 37,
22948 OPC_MoveChild3,
22949 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
22950 OPC_MoveChild0,
22951 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
22952 OPC_RecordChild0,
22953 OPC_CheckChild0Type, MVT::v2i32,
22954 OPC_RecordChild1,
22955 OPC_MoveChild1,
22956 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
22957 OPC_CheckPredicate, 34,
22958 OPC_MoveParent,
22959 OPC_CheckType, MVT::v2i32,
22960 OPC_MoveParent,
22961 OPC_CheckType, MVT::v8i8,
22962 OPC_MoveParent,
22963 OPC_CheckType, MVT::v2i32,
22964 OPC_EmitConvertToTarget3,
22965 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUDOTDI),
22966 MVT::v2i32, 4, 0, 1, 2, 4,
22967 15,
22968 OPC_RecordChild3,
22969 OPC_CheckChild3Type, MVT::v8i8,
22970 OPC_CheckType, MVT::v2i32,
22971 OPC_CheckPatternPredicate, 67,
22972 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUDOTD),
22973 MVT::v2i32, 3, 0, 1, 2,
22974 0,
22975 70,
22976 OPC_CheckChild1Type, MVT::v4i32,
22977 OPC_RecordChild2,
22978 OPC_CheckChild2Type, MVT::v16i8,
22979 OPC_Scope, 46,
22980 OPC_MoveChild3,
22981 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
22982 OPC_MoveChild0,
22983 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
22984 OPC_RecordChild0,
22985 OPC_CheckChild0Type, MVT::v4i32,
22986 OPC_RecordChild1,
22987 OPC_MoveChild1,
22988 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
22989 OPC_CheckPredicate, 34,
22990 OPC_MoveParent,
22991 OPC_CheckType, MVT::v4i32,
22992 OPC_MoveParent,
22993 OPC_CheckType, MVT::v16i8,
22994 OPC_MoveParent,
22995 OPC_CheckType, MVT::v4i32,
22996 OPC_EmitStringInteger32, ARM::dsub_0,
22997 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
22998 MVT::f64, 2, 2, 4,
22999 OPC_EmitConvertToTarget3,
23000 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUDOTQI),
23001 MVT::v4i32, 4, 0, 1, 5, 6,
23002 15,
23003 OPC_RecordChild3,
23004 OPC_CheckChild3Type, MVT::v16i8,
23005 OPC_CheckType, MVT::v4i32,
23006 OPC_CheckPatternPredicate, 67,
23007 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUDOTQ),
23008 MVT::v4i32, 3, 0, 1, 2,
23009 0,
23010 0,
23011 11|128,1,
23012 OPC_CheckChild0Integer, 6|128,53,
23013 OPC_RecordChild1,
23014 OPC_Scope, 61,
23015 OPC_CheckChild1Type, MVT::v2i32,
23016 OPC_RecordChild2,
23017 OPC_CheckChild2Type, MVT::v8i8,
23018 OPC_Scope, 37,
23019 OPC_MoveChild3,
23020 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
23021 OPC_MoveChild0,
23022 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
23023 OPC_RecordChild0,
23024 OPC_CheckChild0Type, MVT::v2i32,
23025 OPC_RecordChild1,
23026 OPC_MoveChild1,
23027 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23028 OPC_CheckPredicate, 34,
23029 OPC_MoveParent,
23030 OPC_CheckType, MVT::v2i32,
23031 OPC_MoveParent,
23032 OPC_CheckType, MVT::v8i8,
23033 OPC_MoveParent,
23034 OPC_CheckType, MVT::v2i32,
23035 OPC_EmitConvertToTarget3,
23036 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSDOTDI),
23037 MVT::v2i32, 4, 0, 1, 2, 4,
23038 15,
23039 OPC_RecordChild3,
23040 OPC_CheckChild3Type, MVT::v8i8,
23041 OPC_CheckType, MVT::v2i32,
23042 OPC_CheckPatternPredicate, 67,
23043 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSDOTD),
23044 MVT::v2i32, 3, 0, 1, 2,
23045 0,
23046 70,
23047 OPC_CheckChild1Type, MVT::v4i32,
23048 OPC_RecordChild2,
23049 OPC_CheckChild2Type, MVT::v16i8,
23050 OPC_Scope, 46,
23051 OPC_MoveChild3,
23052 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
23053 OPC_MoveChild0,
23054 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
23055 OPC_RecordChild0,
23056 OPC_CheckChild0Type, MVT::v4i32,
23057 OPC_RecordChild1,
23058 OPC_MoveChild1,
23059 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23060 OPC_CheckPredicate, 34,
23061 OPC_MoveParent,
23062 OPC_CheckType, MVT::v4i32,
23063 OPC_MoveParent,
23064 OPC_CheckType, MVT::v16i8,
23065 OPC_MoveParent,
23066 OPC_CheckType, MVT::v4i32,
23067 OPC_EmitStringInteger32, ARM::dsub_0,
23068 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
23069 MVT::f64, 2, 2, 4,
23070 OPC_EmitConvertToTarget3,
23071 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSDOTQI),
23072 MVT::v4i32, 4, 0, 1, 5, 6,
23073 15,
23074 OPC_RecordChild3,
23075 OPC_CheckChild3Type, MVT::v16i8,
23076 OPC_CheckType, MVT::v4i32,
23077 OPC_CheckPatternPredicate, 67,
23078 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSDOTQ),
23079 MVT::v4i32, 3, 0, 1, 2,
23080 0,
23081 0,
23082 116|128,1,
23083 OPC_CheckChild0Integer, 34|128,53,
23084 OPC_RecordChild1,
23085 OPC_Scope, 109,
23086 OPC_CheckChild1Type, MVT::v2i32,
23087 OPC_Scope, 42,
23088 OPC_RecordChild2,
23089 OPC_CheckChild2Type, MVT::v8i8,
23090 OPC_MoveChild3,
23091 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
23092 OPC_MoveChild0,
23093 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
23094 OPC_RecordChild0,
23095 OPC_CheckChild0Type, MVT::v2i32,
23096 OPC_RecordChild1,
23097 OPC_MoveChild1,
23098 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23099 OPC_CheckPredicate, 34,
23100 OPC_MoveParent,
23101 OPC_CheckType, MVT::v2i32,
23102 OPC_MoveParent,
23103 OPC_CheckType, MVT::v8i8,
23104 OPC_MoveParent,
23105 OPC_CheckType, MVT::v2i32,
23106 OPC_CheckPatternPredicate, 40,
23107 OPC_EmitConvertToTarget3,
23108 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUSDOTDI),
23109 MVT::v2i32, 4, 0, 1, 2, 4,
23110 42,
23111 OPC_MoveChild2,
23112 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
23113 OPC_MoveChild0,
23114 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
23115 OPC_RecordChild0,
23116 OPC_CheckChild0Type, MVT::v2i32,
23117 OPC_RecordChild1,
23118 OPC_MoveChild1,
23119 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23120 OPC_CheckPredicate, 34,
23121 OPC_MoveParent,
23122 OPC_CheckType, MVT::v2i32,
23123 OPC_MoveParent,
23124 OPC_CheckType, MVT::v8i8,
23125 OPC_MoveParent,
23126 OPC_RecordChild3,
23127 OPC_CheckChild3Type, MVT::v8i8,
23128 OPC_CheckType, MVT::v2i32,
23129 OPC_CheckPatternPredicate, 40,
23130 OPC_EmitConvertToTarget2,
23131 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUDOTDI),
23132 MVT::v2i32, 4, 0, 3, 1, 4,
23133 18,
23134 OPC_RecordChild2,
23135 OPC_CheckChild2Type, MVT::v8i8,
23136 OPC_RecordChild3,
23137 OPC_CheckChild3Type, MVT::v8i8,
23138 OPC_CheckType, MVT::v2i32,
23139 OPC_CheckPatternPredicate, 40,
23140 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUSDOTD),
23141 MVT::v2i32, 3, 0, 1, 2,
23142 0,
23143 127,
23144 OPC_CheckChild1Type, MVT::v4i32,
23145 OPC_Scope, 51,
23146 OPC_RecordChild2,
23147 OPC_CheckChild2Type, MVT::v16i8,
23148 OPC_MoveChild3,
23149 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
23150 OPC_MoveChild0,
23151 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
23152 OPC_RecordChild0,
23153 OPC_CheckChild0Type, MVT::v4i32,
23154 OPC_RecordChild1,
23155 OPC_MoveChild1,
23156 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23157 OPC_CheckPredicate, 34,
23158 OPC_MoveParent,
23159 OPC_CheckType, MVT::v4i32,
23160 OPC_MoveParent,
23161 OPC_CheckType, MVT::v16i8,
23162 OPC_MoveParent,
23163 OPC_CheckType, MVT::v4i32,
23164 OPC_CheckPatternPredicate, 40,
23165 OPC_EmitStringInteger32, ARM::dsub_0,
23166 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
23167 MVT::f64, 2, 2, 4,
23168 OPC_EmitConvertToTarget3,
23169 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUSDOTQI),
23170 MVT::v4i32, 4, 0, 1, 5, 6,
23171 51,
23172 OPC_MoveChild2,
23173 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
23174 OPC_MoveChild0,
23175 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
23176 OPC_RecordChild0,
23177 OPC_CheckChild0Type, MVT::v4i32,
23178 OPC_RecordChild1,
23179 OPC_MoveChild1,
23180 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23181 OPC_CheckPredicate, 34,
23182 OPC_MoveParent,
23183 OPC_CheckType, MVT::v4i32,
23184 OPC_MoveParent,
23185 OPC_CheckType, MVT::v16i8,
23186 OPC_MoveParent,
23187 OPC_RecordChild3,
23188 OPC_CheckChild3Type, MVT::v16i8,
23189 OPC_CheckType, MVT::v4i32,
23190 OPC_CheckPatternPredicate, 40,
23191 OPC_EmitStringInteger32, ARM::dsub_0,
23192 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
23193 MVT::f64, 2, 1, 4,
23194 OPC_EmitConvertToTarget2,
23195 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUDOTQI),
23196 MVT::v4i32, 4, 0, 3, 5, 6,
23197 18,
23198 OPC_RecordChild2,
23199 OPC_CheckChild2Type, MVT::v16i8,
23200 OPC_RecordChild3,
23201 OPC_CheckChild3Type, MVT::v16i8,
23202 OPC_CheckType, MVT::v4i32,
23203 OPC_CheckPatternPredicate, 40,
23204 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUSDOTQ),
23205 MVT::v4i32, 3, 0, 1, 2,
23206 0,
23207 0,
23208 94|128,1,
23209 OPC_CheckChild0Integer, 118|128,51,
23210 OPC_RecordChild1,
23211 OPC_SwitchType , 106, MVT::v8i16,
23212 OPC_CheckChild1Type, MVT::v16i8,
23213 OPC_Scope, 50,
23214 OPC_CheckChild2Integer, 0,
23215 OPC_Scope, 22,
23216 OPC_CheckChild3Integer, 0,
23217 OPC_RecordChild4,
23218 OPC_CheckChild4Type, MVT::v8i1,
23219 OPC_RecordChild5,
23220 OPC_CheckChild5Type, MVT::v8i16,
23221 OPC_EmitInteger32, 2,
23222 OPC_EmitRegisterI32, 0 ,
23223 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLs8bh),
23224 MVT::v8i16, 5, 0, 3, 1, 4, 2,
23225 22,
23226 OPC_CheckChild3Integer, 2,
23227 OPC_RecordChild4,
23228 OPC_CheckChild4Type, MVT::v8i1,
23229 OPC_RecordChild5,
23230 OPC_CheckChild5Type, MVT::v8i16,
23231 OPC_EmitInteger32, 2,
23232 OPC_EmitRegisterI32, 0 ,
23233 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLs8th),
23234 MVT::v8i16, 5, 0, 3, 1, 4, 2,
23235 0,
23236 50,
23237 OPC_CheckChild2Integer, 2,
23238 OPC_Scope, 22,
23239 OPC_CheckChild3Integer, 0,
23240 OPC_RecordChild4,
23241 OPC_CheckChild4Type, MVT::v8i1,
23242 OPC_RecordChild5,
23243 OPC_CheckChild5Type, MVT::v8i16,
23244 OPC_EmitInteger32, 2,
23245 OPC_EmitRegisterI32, 0 ,
23246 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu8bh),
23247 MVT::v8i16, 5, 0, 3, 1, 4, 2,
23248 22,
23249 OPC_CheckChild3Integer, 2,
23250 OPC_RecordChild4,
23251 OPC_CheckChild4Type, MVT::v8i1,
23252 OPC_RecordChild5,
23253 OPC_CheckChild5Type, MVT::v8i16,
23254 OPC_EmitInteger32, 2,
23255 OPC_EmitRegisterI32, 0 ,
23256 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu8th),
23257 MVT::v8i16, 5, 0, 3, 1, 4, 2,
23258 0,
23259 0,
23260 106, MVT::v4i32,
23261 OPC_CheckChild1Type, MVT::v8i16,
23262 OPC_Scope, 50,
23263 OPC_CheckChild2Integer, 0,
23264 OPC_Scope, 22,
23265 OPC_CheckChild3Integer, 0,
23266 OPC_RecordChild4,
23267 OPC_CheckChild4Type, MVT::v4i1,
23268 OPC_RecordChild5,
23269 OPC_CheckChild5Type, MVT::v4i32,
23270 OPC_EmitInteger32, 2,
23271 OPC_EmitRegisterI32, 0 ,
23272 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLs16bh),
23273 MVT::v4i32, 5, 0, 3, 1, 4, 2,
23274 22,
23275 OPC_CheckChild3Integer, 2,
23276 OPC_RecordChild4,
23277 OPC_CheckChild4Type, MVT::v4i1,
23278 OPC_RecordChild5,
23279 OPC_CheckChild5Type, MVT::v4i32,
23280 OPC_EmitInteger32, 2,
23281 OPC_EmitRegisterI32, 0 ,
23282 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLs16th),
23283 MVT::v4i32, 5, 0, 3, 1, 4, 2,
23284 0,
23285 50,
23286 OPC_CheckChild2Integer, 2,
23287 OPC_Scope, 22,
23288 OPC_CheckChild3Integer, 0,
23289 OPC_RecordChild4,
23290 OPC_CheckChild4Type, MVT::v4i1,
23291 OPC_RecordChild5,
23292 OPC_CheckChild5Type, MVT::v4i32,
23293 OPC_EmitInteger32, 2,
23294 OPC_EmitRegisterI32, 0 ,
23295 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu16bh),
23296 MVT::v4i32, 5, 0, 3, 1, 4, 2,
23297 22,
23298 OPC_CheckChild3Integer, 2,
23299 OPC_RecordChild4,
23300 OPC_CheckChild4Type, MVT::v4i1,
23301 OPC_RecordChild5,
23302 OPC_CheckChild5Type, MVT::v4i32,
23303 OPC_EmitInteger32, 2,
23304 OPC_EmitRegisterI32, 0 ,
23305 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu16th),
23306 MVT::v4i32, 5, 0, 3, 1, 4, 2,
23307 0,
23308 0,
23309 0,
23310 119|128,2,
23311 OPC_CheckChild0Integer, 124|128,51,
23312 OPC_RecordChild1,
23313 OPC_SwitchType , 121, MVT::v8i16,
23314 OPC_CheckChild1Type, MVT::v16i8,
23315 OPC_RecordChild2,
23316 OPC_CheckChild2Type, MVT::v16i8,
23317 OPC_Scope, 56,
23318 OPC_CheckChild3Integer, 0,
23319 OPC_Scope, 25,
23320 OPC_CheckChild4Integer, 0,
23321 OPC_CheckPatternPredicate0,
23322 OPC_EmitInteger32, 0,
23323 OPC_EmitRegisterI32, 0 ,
23324 OPC_EmitRegisterI32, 0 ,
23325 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23326 MVT::v4i32, 0,
23327 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBs8),
23328 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
23329 25,
23330 OPC_CheckChild4Integer, 2,
23331 OPC_CheckPatternPredicate0,
23332 OPC_EmitInteger32, 0,
23333 OPC_EmitRegisterI32, 0 ,
23334 OPC_EmitRegisterI32, 0 ,
23335 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23336 MVT::v4i32, 0,
23337 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs8),
23338 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
23339 0,
23340 56,
23341 OPC_CheckChild3Integer, 2,
23342 OPC_Scope, 25,
23343 OPC_CheckChild4Integer, 0,
23344 OPC_CheckPatternPredicate0,
23345 OPC_EmitInteger32, 0,
23346 OPC_EmitRegisterI32, 0 ,
23347 OPC_EmitRegisterI32, 0 ,
23348 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23349 MVT::v4i32, 0,
23350 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu8),
23351 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
23352 25,
23353 OPC_CheckChild4Integer, 2,
23354 OPC_CheckPatternPredicate0,
23355 OPC_EmitInteger32, 0,
23356 OPC_EmitRegisterI32, 0 ,
23357 OPC_EmitRegisterI32, 0 ,
23358 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23359 MVT::v4i32, 0,
23360 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu8),
23361 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
23362 0,
23363 0,
23364 121, MVT::v4i32,
23365 OPC_CheckChild1Type, MVT::v8i16,
23366 OPC_RecordChild2,
23367 OPC_CheckChild2Type, MVT::v8i16,
23368 OPC_Scope, 56,
23369 OPC_CheckChild3Integer, 0,
23370 OPC_Scope, 25,
23371 OPC_CheckChild4Integer, 0,
23372 OPC_CheckPatternPredicate0,
23373 OPC_EmitInteger32, 0,
23374 OPC_EmitRegisterI32, 0 ,
23375 OPC_EmitRegisterI32, 0 ,
23376 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23377 MVT::v4i32, 0,
23378 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBs16),
23379 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
23380 25,
23381 OPC_CheckChild4Integer, 2,
23382 OPC_CheckPatternPredicate0,
23383 OPC_EmitInteger32, 0,
23384 OPC_EmitRegisterI32, 0 ,
23385 OPC_EmitRegisterI32, 0 ,
23386 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23387 MVT::v4i32, 0,
23388 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs16),
23389 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
23390 0,
23391 56,
23392 OPC_CheckChild3Integer, 2,
23393 OPC_Scope, 25,
23394 OPC_CheckChild4Integer, 0,
23395 OPC_CheckPatternPredicate0,
23396 OPC_EmitInteger32, 0,
23397 OPC_EmitRegisterI32, 0 ,
23398 OPC_EmitRegisterI32, 0 ,
23399 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23400 MVT::v4i32, 0,
23401 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu16),
23402 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
23403 25,
23404 OPC_CheckChild4Integer, 2,
23405 OPC_CheckPatternPredicate0,
23406 OPC_EmitInteger32, 0,
23407 OPC_EmitRegisterI32, 0 ,
23408 OPC_EmitRegisterI32, 0 ,
23409 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23410 MVT::v4i32, 0,
23411 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
23412 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
23413 0,
23414 0,
23415 121, MVT::v2i64,
23416 OPC_CheckChild1Type, MVT::v4i32,
23417 OPC_RecordChild2,
23418 OPC_CheckChild2Type, MVT::v4i32,
23419 OPC_Scope, 56,
23420 OPC_CheckChild3Integer, 0,
23421 OPC_Scope, 25,
23422 OPC_CheckChild4Integer, 0,
23423 OPC_CheckPatternPredicate0,
23424 OPC_EmitInteger32, 0,
23425 OPC_EmitRegisterI32, 0 ,
23426 OPC_EmitRegisterI32, 0 ,
23427 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23428 MVT::v4i32, 0,
23429 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBs32),
23430 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
23431 25,
23432 OPC_CheckChild4Integer, 2,
23433 OPC_CheckPatternPredicate0,
23434 OPC_EmitInteger32, 0,
23435 OPC_EmitRegisterI32, 0 ,
23436 OPC_EmitRegisterI32, 0 ,
23437 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23438 MVT::v4i32, 0,
23439 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs32),
23440 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
23441 0,
23442 56,
23443 OPC_CheckChild3Integer, 2,
23444 OPC_Scope, 25,
23445 OPC_CheckChild4Integer, 0,
23446 OPC_CheckPatternPredicate0,
23447 OPC_EmitInteger32, 0,
23448 OPC_EmitRegisterI32, 0 ,
23449 OPC_EmitRegisterI32, 0 ,
23450 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23451 MVT::v4i32, 0,
23452 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu32),
23453 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
23454 25,
23455 OPC_CheckChild4Integer, 2,
23456 OPC_CheckPatternPredicate0,
23457 OPC_EmitInteger32, 0,
23458 OPC_EmitRegisterI32, 0 ,
23459 OPC_EmitRegisterI32, 0 ,
23460 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23461 MVT::v4i32, 0,
23462 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu32),
23463 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
23464 0,
23465 0,
23466 0,
23467 107|128,2,
23468 OPC_CheckChild0Integer, 62|128,50,
23469 OPC_RecordChild1,
23470 OPC_SwitchType , 117, MVT::v8i16,
23471 OPC_CheckChild1Type, MVT::v16i8,
23472 OPC_RecordChild2,
23473 OPC_CheckChild2Type, MVT::v16i8,
23474 OPC_Scope, 54,
23475 OPC_CheckChild3Integer, 0,
23476 OPC_Scope, 24,
23477 OPC_CheckChild4Integer, 0,
23478 OPC_RecordChild5,
23479 OPC_CheckChild5Type, MVT::v8i1,
23480 OPC_RecordChild6,
23481 OPC_CheckChild6Type, MVT::v8i16,
23482 OPC_CheckPatternPredicate0,
23483 OPC_EmitInteger32, 2,
23484 OPC_EmitRegisterI32, 0 ,
23485 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBs8),
23486 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
23487 24,
23488 OPC_CheckChild4Integer, 2,
23489 OPC_RecordChild5,
23490 OPC_CheckChild5Type, MVT::v8i1,
23491 OPC_RecordChild6,
23492 OPC_CheckChild6Type, MVT::v8i16,
23493 OPC_CheckPatternPredicate0,
23494 OPC_EmitInteger32, 2,
23495 OPC_EmitRegisterI32, 0 ,
23496 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs8),
23497 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
23498 0,
23499 54,
23500 OPC_CheckChild3Integer, 2,
23501 OPC_Scope, 24,
23502 OPC_CheckChild4Integer, 0,
23503 OPC_RecordChild5,
23504 OPC_CheckChild5Type, MVT::v8i1,
23505 OPC_RecordChild6,
23506 OPC_CheckChild6Type, MVT::v8i16,
23507 OPC_CheckPatternPredicate0,
23508 OPC_EmitInteger32, 2,
23509 OPC_EmitRegisterI32, 0 ,
23510 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu8),
23511 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
23512 24,
23513 OPC_CheckChild4Integer, 2,
23514 OPC_RecordChild5,
23515 OPC_CheckChild5Type, MVT::v8i1,
23516 OPC_RecordChild6,
23517 OPC_CheckChild6Type, MVT::v8i16,
23518 OPC_CheckPatternPredicate0,
23519 OPC_EmitInteger32, 2,
23520 OPC_EmitRegisterI32, 0 ,
23521 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu8),
23522 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
23523 0,
23524 0,
23525 117, MVT::v4i32,
23526 OPC_CheckChild1Type, MVT::v8i16,
23527 OPC_RecordChild2,
23528 OPC_CheckChild2Type, MVT::v8i16,
23529 OPC_Scope, 54,
23530 OPC_CheckChild3Integer, 0,
23531 OPC_Scope, 24,
23532 OPC_CheckChild4Integer, 0,
23533 OPC_RecordChild5,
23534 OPC_CheckChild5Type, MVT::v4i1,
23535 OPC_RecordChild6,
23536 OPC_CheckChild6Type, MVT::v4i32,
23537 OPC_CheckPatternPredicate0,
23538 OPC_EmitInteger32, 2,
23539 OPC_EmitRegisterI32, 0 ,
23540 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBs16),
23541 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
23542 24,
23543 OPC_CheckChild4Integer, 2,
23544 OPC_RecordChild5,
23545 OPC_CheckChild5Type, MVT::v4i1,
23546 OPC_RecordChild6,
23547 OPC_CheckChild6Type, MVT::v4i32,
23548 OPC_CheckPatternPredicate0,
23549 OPC_EmitInteger32, 2,
23550 OPC_EmitRegisterI32, 0 ,
23551 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs16),
23552 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
23553 0,
23554 54,
23555 OPC_CheckChild3Integer, 2,
23556 OPC_Scope, 24,
23557 OPC_CheckChild4Integer, 0,
23558 OPC_RecordChild5,
23559 OPC_CheckChild5Type, MVT::v4i1,
23560 OPC_RecordChild6,
23561 OPC_CheckChild6Type, MVT::v4i32,
23562 OPC_CheckPatternPredicate0,
23563 OPC_EmitInteger32, 2,
23564 OPC_EmitRegisterI32, 0 ,
23565 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu16),
23566 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
23567 24,
23568 OPC_CheckChild4Integer, 2,
23569 OPC_RecordChild5,
23570 OPC_CheckChild5Type, MVT::v4i1,
23571 OPC_RecordChild6,
23572 OPC_CheckChild6Type, MVT::v4i32,
23573 OPC_CheckPatternPredicate0,
23574 OPC_EmitInteger32, 2,
23575 OPC_EmitRegisterI32, 0 ,
23576 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
23577 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
23578 0,
23579 0,
23580 117, MVT::v2i64,
23581 OPC_CheckChild1Type, MVT::v4i32,
23582 OPC_RecordChild2,
23583 OPC_CheckChild2Type, MVT::v4i32,
23584 OPC_Scope, 54,
23585 OPC_CheckChild3Integer, 0,
23586 OPC_Scope, 24,
23587 OPC_CheckChild4Integer, 0,
23588 OPC_RecordChild5,
23589 OPC_CheckChild5Type, MVT::v2i1,
23590 OPC_RecordChild6,
23591 OPC_CheckChild6Type, MVT::v2i64,
23592 OPC_CheckPatternPredicate0,
23593 OPC_EmitInteger32, 2,
23594 OPC_EmitRegisterI32, 0 ,
23595 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBs32),
23596 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
23597 24,
23598 OPC_CheckChild4Integer, 2,
23599 OPC_RecordChild5,
23600 OPC_CheckChild5Type, MVT::v2i1,
23601 OPC_RecordChild6,
23602 OPC_CheckChild6Type, MVT::v2i64,
23603 OPC_CheckPatternPredicate0,
23604 OPC_EmitInteger32, 2,
23605 OPC_EmitRegisterI32, 0 ,
23606 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs32),
23607 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
23608 0,
23609 54,
23610 OPC_CheckChild3Integer, 2,
23611 OPC_Scope, 24,
23612 OPC_CheckChild4Integer, 0,
23613 OPC_RecordChild5,
23614 OPC_CheckChild5Type, MVT::v2i1,
23615 OPC_RecordChild6,
23616 OPC_CheckChild6Type, MVT::v2i64,
23617 OPC_CheckPatternPredicate0,
23618 OPC_EmitInteger32, 2,
23619 OPC_EmitRegisterI32, 0 ,
23620 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu32),
23621 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
23622 24,
23623 OPC_CheckChild4Integer, 2,
23624 OPC_RecordChild5,
23625 OPC_CheckChild5Type, MVT::v2i1,
23626 OPC_RecordChild6,
23627 OPC_CheckChild6Type, MVT::v2i64,
23628 OPC_CheckPatternPredicate0,
23629 OPC_EmitInteger32, 2,
23630 OPC_EmitRegisterI32, 0 ,
23631 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu32),
23632 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
23633 0,
23634 0,
23635 0,
23636 78|128,1,
23637 OPC_CheckChild0Integer, 32|128,52,
23638 OPC_RecordChild1,
23639 OPC_Scope, 66,
23640 OPC_CheckChild1Type, MVT::v16i8,
23641 OPC_RecordChild2,
23642 OPC_MoveChild2,
23643 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23644 OPC_CheckPredicate, 28,
23645 OPC_MoveParent,
23646 OPC_CheckType, MVT::v16i8,
23647 OPC_Scope, 25,
23648 OPC_CheckChild3Integer, 0,
23649 OPC_EmitConvertToTarget1,
23650 OPC_EmitInteger32, 0,
23651 OPC_EmitRegisterI32, 0 ,
23652 OPC_EmitRegisterI32, 0 ,
23653 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23654 MVT::v4i32, 0,
23655 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimms8),
23656 MVT::v16i8, 6, 0, 2, 3, 4, 5, 6,
23657 25,
23658 OPC_CheckChild3Integer, 2,
23659 OPC_EmitConvertToTarget1,
23660 OPC_EmitInteger32, 0,
23661 OPC_EmitRegisterI32, 0 ,
23662 OPC_EmitRegisterI32, 0 ,
23663 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23664 MVT::v4i32, 0,
23665 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimmu8),
23666 MVT::v16i8, 6, 0, 2, 3, 4, 5, 6,
23667 0,
23668 66,
23669 OPC_CheckChild1Type, MVT::v8i16,
23670 OPC_RecordChild2,
23671 OPC_MoveChild2,
23672 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23673 OPC_CheckPredicate, 23,
23674 OPC_MoveParent,
23675 OPC_CheckType, MVT::v8i16,
23676 OPC_Scope, 25,
23677 OPC_CheckChild3Integer, 0,
23678 OPC_EmitConvertToTarget1,
23679 OPC_EmitInteger32, 0,
23680 OPC_EmitRegisterI32, 0 ,
23681 OPC_EmitRegisterI32, 0 ,
23682 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23683 MVT::v4i32, 0,
23684 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimms16),
23685 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
23686 25,
23687 OPC_CheckChild3Integer, 2,
23688 OPC_EmitConvertToTarget1,
23689 OPC_EmitInteger32, 0,
23690 OPC_EmitRegisterI32, 0 ,
23691 OPC_EmitRegisterI32, 0 ,
23692 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23693 MVT::v4i32, 0,
23694 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimmu16),
23695 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
23696 0,
23697 65,
23698 OPC_CheckChild1Type, MVT::v4i32,
23699 OPC_RecordChild2,
23700 OPC_MoveChild2,
23701 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23702 OPC_CheckPredicate5,
23703 OPC_MoveParent,
23704 OPC_CheckType, MVT::v4i32,
23705 OPC_Scope, 25,
23706 OPC_CheckChild3Integer, 0,
23707 OPC_EmitConvertToTarget1,
23708 OPC_EmitInteger32, 0,
23709 OPC_EmitRegisterI32, 0 ,
23710 OPC_EmitRegisterI32, 0 ,
23711 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23712 MVT::v4i32, 0,
23713 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimms32),
23714 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
23715 25,
23716 OPC_CheckChild3Integer, 2,
23717 OPC_EmitConvertToTarget1,
23718 OPC_EmitInteger32, 0,
23719 OPC_EmitRegisterI32, 0 ,
23720 OPC_EmitRegisterI32, 0 ,
23721 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23722 MVT::v4i32, 0,
23723 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimmu32),
23724 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
23725 0,
23726 0,
23727 72|128,1,
23728 OPC_CheckChild0Integer, 34|128,52,
23729 OPC_RecordChild1,
23730 OPC_Scope, 64,
23731 OPC_CheckChild1Type, MVT::v16i8,
23732 OPC_RecordChild2,
23733 OPC_MoveChild2,
23734 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23735 OPC_CheckPredicate, 28,
23736 OPC_MoveParent,
23737 OPC_CheckType, MVT::v16i8,
23738 OPC_Scope, 24,
23739 OPC_CheckChild3Integer, 0,
23740 OPC_RecordChild4,
23741 OPC_CheckChild4Type, MVT::v16i1,
23742 OPC_RecordChild5,
23743 OPC_CheckChild5Type, MVT::v16i8,
23744 OPC_EmitConvertToTarget1,
23745 OPC_EmitInteger32, 2,
23746 OPC_EmitRegisterI32, 0 ,
23747 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimms8),
23748 MVT::v16i8, 6, 0, 4, 5, 2, 6, 3,
23749 24,
23750 OPC_CheckChild3Integer, 2,
23751 OPC_RecordChild4,
23752 OPC_CheckChild4Type, MVT::v16i1,
23753 OPC_RecordChild5,
23754 OPC_CheckChild5Type, MVT::v16i8,
23755 OPC_EmitConvertToTarget1,
23756 OPC_EmitInteger32, 2,
23757 OPC_EmitRegisterI32, 0 ,
23758 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimmu8),
23759 MVT::v16i8, 6, 0, 4, 5, 2, 6, 3,
23760 0,
23761 64,
23762 OPC_CheckChild1Type, MVT::v8i16,
23763 OPC_RecordChild2,
23764 OPC_MoveChild2,
23765 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23766 OPC_CheckPredicate, 23,
23767 OPC_MoveParent,
23768 OPC_CheckType, MVT::v8i16,
23769 OPC_Scope, 24,
23770 OPC_CheckChild3Integer, 0,
23771 OPC_RecordChild4,
23772 OPC_CheckChild4Type, MVT::v8i1,
23773 OPC_RecordChild5,
23774 OPC_CheckChild5Type, MVT::v8i16,
23775 OPC_EmitConvertToTarget1,
23776 OPC_EmitInteger32, 2,
23777 OPC_EmitRegisterI32, 0 ,
23778 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimms16),
23779 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
23780 24,
23781 OPC_CheckChild3Integer, 2,
23782 OPC_RecordChild4,
23783 OPC_CheckChild4Type, MVT::v8i1,
23784 OPC_RecordChild5,
23785 OPC_CheckChild5Type, MVT::v8i16,
23786 OPC_EmitConvertToTarget1,
23787 OPC_EmitInteger32, 2,
23788 OPC_EmitRegisterI32, 0 ,
23789 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimmu16),
23790 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
23791 0,
23792 63,
23793 OPC_CheckChild1Type, MVT::v4i32,
23794 OPC_RecordChild2,
23795 OPC_MoveChild2,
23796 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23797 OPC_CheckPredicate5,
23798 OPC_MoveParent,
23799 OPC_CheckType, MVT::v4i32,
23800 OPC_Scope, 24,
23801 OPC_CheckChild3Integer, 0,
23802 OPC_RecordChild4,
23803 OPC_CheckChild4Type, MVT::v4i1,
23804 OPC_RecordChild5,
23805 OPC_CheckChild5Type, MVT::v4i32,
23806 OPC_EmitConvertToTarget1,
23807 OPC_EmitInteger32, 2,
23808 OPC_EmitRegisterI32, 0 ,
23809 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimms32),
23810 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
23811 24,
23812 OPC_CheckChild3Integer, 2,
23813 OPC_RecordChild4,
23814 OPC_CheckChild4Type, MVT::v4i1,
23815 OPC_RecordChild5,
23816 OPC_CheckChild5Type, MVT::v4i32,
23817 OPC_EmitConvertToTarget1,
23818 OPC_EmitInteger32, 2,
23819 OPC_EmitRegisterI32, 0 ,
23820 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLimmu32),
23821 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
23822 0,
23823 0,
23824 79|128,1,
23825 OPC_CheckChild0Integer, 66|128,52,
23826 OPC_RecordChild1,
23827 OPC_Scope, 66,
23828 OPC_CheckChild1Type, MVT::v16i8,
23829 OPC_RecordChild2,
23830 OPC_MoveChild2,
23831 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23832 OPC_CheckPredicate, 29,
23833 OPC_MoveParent,
23834 OPC_CheckType, MVT::v16i8,
23835 OPC_Scope, 25,
23836 OPC_CheckChild3Integer, 0,
23837 OPC_EmitConvertToTarget1,
23838 OPC_EmitInteger32, 0,
23839 OPC_EmitRegisterI32, 0 ,
23840 OPC_EmitRegisterI32, 0 ,
23841 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23842 MVT::v4i32, 0,
23843 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_imms8),
23844 MVT::v16i8, 6, 0, 2, 3, 4, 5, 6,
23845 25,
23846 OPC_CheckChild3Integer, 2,
23847 OPC_EmitConvertToTarget1,
23848 OPC_EmitInteger32, 0,
23849 OPC_EmitRegisterI32, 0 ,
23850 OPC_EmitRegisterI32, 0 ,
23851 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23852 MVT::v4i32, 0,
23853 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_immu8),
23854 MVT::v16i8, 6, 0, 2, 3, 4, 5, 6,
23855 0,
23856 66,
23857 OPC_CheckChild1Type, MVT::v8i16,
23858 OPC_RecordChild2,
23859 OPC_MoveChild2,
23860 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23861 OPC_CheckPredicate, 30,
23862 OPC_MoveParent,
23863 OPC_CheckType, MVT::v8i16,
23864 OPC_Scope, 25,
23865 OPC_CheckChild3Integer, 0,
23866 OPC_EmitConvertToTarget1,
23867 OPC_EmitInteger32, 0,
23868 OPC_EmitRegisterI32, 0 ,
23869 OPC_EmitRegisterI32, 0 ,
23870 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23871 MVT::v4i32, 0,
23872 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_imms16),
23873 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
23874 25,
23875 OPC_CheckChild3Integer, 2,
23876 OPC_EmitConvertToTarget1,
23877 OPC_EmitInteger32, 0,
23878 OPC_EmitRegisterI32, 0 ,
23879 OPC_EmitRegisterI32, 0 ,
23880 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23881 MVT::v4i32, 0,
23882 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_immu16),
23883 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
23884 0,
23885 66,
23886 OPC_CheckChild1Type, MVT::v4i32,
23887 OPC_RecordChild2,
23888 OPC_MoveChild2,
23889 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23890 OPC_CheckPredicate, 19,
23891 OPC_MoveParent,
23892 OPC_CheckType, MVT::v4i32,
23893 OPC_Scope, 25,
23894 OPC_CheckChild3Integer, 0,
23895 OPC_EmitConvertToTarget1,
23896 OPC_EmitInteger32, 0,
23897 OPC_EmitRegisterI32, 0 ,
23898 OPC_EmitRegisterI32, 0 ,
23899 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23900 MVT::v4i32, 0,
23901 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_imms32),
23902 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
23903 25,
23904 OPC_CheckChild3Integer, 2,
23905 OPC_EmitConvertToTarget1,
23906 OPC_EmitInteger32, 0,
23907 OPC_EmitRegisterI32, 0 ,
23908 OPC_EmitRegisterI32, 0 ,
23909 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
23910 MVT::v4i32, 0,
23911 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_immu32),
23912 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
23913 0,
23914 0,
23915 73|128,1,
23916 OPC_CheckChild0Integer, 68|128,52,
23917 OPC_RecordChild1,
23918 OPC_Scope, 64,
23919 OPC_CheckChild1Type, MVT::v16i8,
23920 OPC_RecordChild2,
23921 OPC_MoveChild2,
23922 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23923 OPC_CheckPredicate, 29,
23924 OPC_MoveParent,
23925 OPC_CheckType, MVT::v16i8,
23926 OPC_Scope, 24,
23927 OPC_CheckChild3Integer, 0,
23928 OPC_RecordChild4,
23929 OPC_CheckChild4Type, MVT::v16i1,
23930 OPC_RecordChild5,
23931 OPC_CheckChild5Type, MVT::v16i8,
23932 OPC_EmitConvertToTarget1,
23933 OPC_EmitInteger32, 2,
23934 OPC_EmitRegisterI32, 0 ,
23935 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_imms8),
23936 MVT::v16i8, 6, 0, 4, 5, 2, 6, 3,
23937 24,
23938 OPC_CheckChild3Integer, 2,
23939 OPC_RecordChild4,
23940 OPC_CheckChild4Type, MVT::v16i1,
23941 OPC_RecordChild5,
23942 OPC_CheckChild5Type, MVT::v16i8,
23943 OPC_EmitConvertToTarget1,
23944 OPC_EmitInteger32, 2,
23945 OPC_EmitRegisterI32, 0 ,
23946 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_immu8),
23947 MVT::v16i8, 6, 0, 4, 5, 2, 6, 3,
23948 0,
23949 64,
23950 OPC_CheckChild1Type, MVT::v8i16,
23951 OPC_RecordChild2,
23952 OPC_MoveChild2,
23953 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23954 OPC_CheckPredicate, 30,
23955 OPC_MoveParent,
23956 OPC_CheckType, MVT::v8i16,
23957 OPC_Scope, 24,
23958 OPC_CheckChild3Integer, 0,
23959 OPC_RecordChild4,
23960 OPC_CheckChild4Type, MVT::v8i1,
23961 OPC_RecordChild5,
23962 OPC_CheckChild5Type, MVT::v8i16,
23963 OPC_EmitConvertToTarget1,
23964 OPC_EmitInteger32, 2,
23965 OPC_EmitRegisterI32, 0 ,
23966 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_imms16),
23967 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
23968 24,
23969 OPC_CheckChild3Integer, 2,
23970 OPC_RecordChild4,
23971 OPC_CheckChild4Type, MVT::v8i1,
23972 OPC_RecordChild5,
23973 OPC_CheckChild5Type, MVT::v8i16,
23974 OPC_EmitConvertToTarget1,
23975 OPC_EmitInteger32, 2,
23976 OPC_EmitRegisterI32, 0 ,
23977 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_immu16),
23978 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
23979 0,
23980 64,
23981 OPC_CheckChild1Type, MVT::v4i32,
23982 OPC_RecordChild2,
23983 OPC_MoveChild2,
23984 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
23985 OPC_CheckPredicate, 19,
23986 OPC_MoveParent,
23987 OPC_CheckType, MVT::v4i32,
23988 OPC_Scope, 24,
23989 OPC_CheckChild3Integer, 0,
23990 OPC_RecordChild4,
23991 OPC_CheckChild4Type, MVT::v4i1,
23992 OPC_RecordChild5,
23993 OPC_CheckChild5Type, MVT::v4i32,
23994 OPC_EmitConvertToTarget1,
23995 OPC_EmitInteger32, 2,
23996 OPC_EmitRegisterI32, 0 ,
23997 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_imms32),
23998 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
23999 24,
24000 OPC_CheckChild3Integer, 2,
24001 OPC_RecordChild4,
24002 OPC_CheckChild4Type, MVT::v4i1,
24003 OPC_RecordChild5,
24004 OPC_CheckChild5Type, MVT::v4i32,
24005 OPC_EmitConvertToTarget1,
24006 OPC_EmitInteger32, 2,
24007 OPC_EmitRegisterI32, 0 ,
24008 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRSHR_immu32),
24009 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
24010 0,
24011 0,
24012 78|128,1,
24013 OPC_CheckChild0Integer, 96|128,50,
24014 OPC_RecordChild1,
24015 OPC_Scope, 66,
24016 OPC_CheckChild1Type, MVT::v16i8,
24017 OPC_RecordChild2,
24018 OPC_MoveChild2,
24019 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24020 OPC_CheckPredicate, 28,
24021 OPC_MoveParent,
24022 OPC_CheckType, MVT::v16i8,
24023 OPC_Scope, 25,
24024 OPC_CheckChild3Integer, 2,
24025 OPC_RecordChild4,
24026 OPC_CheckChild4Type, MVT::v16i1,
24027 OPC_RecordChild5,
24028 OPC_CheckChild5Type, MVT::v16i8,
24029 OPC_CheckPatternPredicate0,
24030 OPC_EmitConvertToTarget1,
24031 OPC_EmitInteger32, 2,
24032 OPC_EmitRegisterI32, 0 ,
24033 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_immu8),
24034 MVT::v16i8, 6, 0, 4, 5, 2, 6, 3,
24035 25,
24036 OPC_CheckChild3Integer, 0,
24037 OPC_RecordChild4,
24038 OPC_CheckChild4Type, MVT::v16i1,
24039 OPC_RecordChild5,
24040 OPC_CheckChild5Type, MVT::v16i8,
24041 OPC_CheckPatternPredicate0,
24042 OPC_EmitConvertToTarget1,
24043 OPC_EmitInteger32, 2,
24044 OPC_EmitRegisterI32, 0 ,
24045 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_imms8),
24046 MVT::v16i8, 6, 0, 4, 5, 2, 6, 3,
24047 0,
24048 66,
24049 OPC_CheckChild1Type, MVT::v8i16,
24050 OPC_RecordChild2,
24051 OPC_MoveChild2,
24052 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24053 OPC_CheckPredicate, 23,
24054 OPC_MoveParent,
24055 OPC_CheckType, MVT::v8i16,
24056 OPC_Scope, 25,
24057 OPC_CheckChild3Integer, 2,
24058 OPC_RecordChild4,
24059 OPC_CheckChild4Type, MVT::v8i1,
24060 OPC_RecordChild5,
24061 OPC_CheckChild5Type, MVT::v8i16,
24062 OPC_CheckPatternPredicate0,
24063 OPC_EmitConvertToTarget1,
24064 OPC_EmitInteger32, 2,
24065 OPC_EmitRegisterI32, 0 ,
24066 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_immu16),
24067 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
24068 25,
24069 OPC_CheckChild3Integer, 0,
24070 OPC_RecordChild4,
24071 OPC_CheckChild4Type, MVT::v8i1,
24072 OPC_RecordChild5,
24073 OPC_CheckChild5Type, MVT::v8i16,
24074 OPC_CheckPatternPredicate0,
24075 OPC_EmitConvertToTarget1,
24076 OPC_EmitInteger32, 2,
24077 OPC_EmitRegisterI32, 0 ,
24078 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_imms16),
24079 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
24080 0,
24081 65,
24082 OPC_CheckChild1Type, MVT::v4i32,
24083 OPC_RecordChild2,
24084 OPC_MoveChild2,
24085 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24086 OPC_CheckPredicate5,
24087 OPC_MoveParent,
24088 OPC_CheckType, MVT::v4i32,
24089 OPC_Scope, 25,
24090 OPC_CheckChild3Integer, 2,
24091 OPC_RecordChild4,
24092 OPC_CheckChild4Type, MVT::v4i1,
24093 OPC_RecordChild5,
24094 OPC_CheckChild5Type, MVT::v4i32,
24095 OPC_CheckPatternPredicate0,
24096 OPC_EmitConvertToTarget1,
24097 OPC_EmitInteger32, 2,
24098 OPC_EmitRegisterI32, 0 ,
24099 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_immu32),
24100 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
24101 25,
24102 OPC_CheckChild3Integer, 0,
24103 OPC_RecordChild4,
24104 OPC_CheckChild4Type, MVT::v4i1,
24105 OPC_RecordChild5,
24106 OPC_CheckChild5Type, MVT::v4i32,
24107 OPC_CheckPatternPredicate0,
24108 OPC_EmitConvertToTarget1,
24109 OPC_EmitInteger32, 2,
24110 OPC_EmitRegisterI32, 0 ,
24111 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_imms32),
24112 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
24113 0,
24114 0,
24115 43|128,2,
24116 OPC_CheckChild0Integer, 32|128,51,
24117 OPC_Scope, 17|128,1,
24118 OPC_CheckChild1Integer, 0,
24119 OPC_RecordChild2,
24120 OPC_Scope, 34,
24121 OPC_CheckChild2Type, MVT::v8f16,
24122 OPC_RecordChild3,
24123 OPC_MoveChild3,
24124 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24125 OPC_MoveParent,
24126 OPC_CheckType, MVT::v8i16,
24127 OPC_CheckPatternPredicate2,
24128 OPC_EmitConvertToTarget1,
24129 OPC_EmitInteger32, 0,
24130 OPC_EmitRegisterI32, 0 ,
24131 OPC_EmitRegisterI32, 0 ,
24132 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24133 MVT::v4i32, 0,
24134 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16_fix),
24135 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
24136 34,
24137 OPC_CheckChild2Type, MVT::v4f32,
24138 OPC_RecordChild3,
24139 OPC_MoveChild3,
24140 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24141 OPC_MoveParent,
24142 OPC_CheckType, MVT::v4i32,
24143 OPC_CheckPatternPredicate2,
24144 OPC_EmitConvertToTarget1,
24145 OPC_EmitInteger32, 0,
24146 OPC_EmitRegisterI32, 0 ,
24147 OPC_EmitRegisterI32, 0 ,
24148 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24149 MVT::v4i32, 0,
24150 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32_fix),
24151 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
24152 34,
24153 OPC_CheckChild2Type, MVT::v8i16,
24154 OPC_RecordChild3,
24155 OPC_MoveChild3,
24156 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24157 OPC_MoveParent,
24158 OPC_CheckType, MVT::v8f16,
24159 OPC_CheckPatternPredicate2,
24160 OPC_EmitConvertToTarget1,
24161 OPC_EmitInteger32, 0,
24162 OPC_EmitRegisterI32, 0 ,
24163 OPC_EmitRegisterI32, 0 ,
24164 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24165 MVT::v4i32, 0,
24166 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16s16_fix),
24167 MVT::v8f16, 6, 0, 2, 3, 4, 5, 6,
24168 34,
24169 OPC_CheckChild2Type, MVT::v4i32,
24170 OPC_RecordChild3,
24171 OPC_MoveChild3,
24172 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24173 OPC_MoveParent,
24174 OPC_CheckType, MVT::v4f32,
24175 OPC_CheckPatternPredicate2,
24176 OPC_EmitConvertToTarget1,
24177 OPC_EmitInteger32, 0,
24178 OPC_EmitRegisterI32, 0 ,
24179 OPC_EmitRegisterI32, 0 ,
24180 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24181 MVT::v4i32, 0,
24182 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32s32_fix),
24183 MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
24184 0,
24185 17|128,1,
24186 OPC_CheckChild1Integer, 2,
24187 OPC_RecordChild2,
24188 OPC_Scope, 34,
24189 OPC_CheckChild2Type, MVT::v8f16,
24190 OPC_RecordChild3,
24191 OPC_MoveChild3,
24192 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24193 OPC_MoveParent,
24194 OPC_CheckType, MVT::v8i16,
24195 OPC_CheckPatternPredicate2,
24196 OPC_EmitConvertToTarget1,
24197 OPC_EmitInteger32, 0,
24198 OPC_EmitRegisterI32, 0 ,
24199 OPC_EmitRegisterI32, 0 ,
24200 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24201 MVT::v4i32, 0,
24202 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16_fix),
24203 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
24204 34,
24205 OPC_CheckChild2Type, MVT::v4f32,
24206 OPC_RecordChild3,
24207 OPC_MoveChild3,
24208 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24209 OPC_MoveParent,
24210 OPC_CheckType, MVT::v4i32,
24211 OPC_CheckPatternPredicate2,
24212 OPC_EmitConvertToTarget1,
24213 OPC_EmitInteger32, 0,
24214 OPC_EmitRegisterI32, 0 ,
24215 OPC_EmitRegisterI32, 0 ,
24216 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24217 MVT::v4i32, 0,
24218 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32_fix),
24219 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
24220 34,
24221 OPC_CheckChild2Type, MVT::v8i16,
24222 OPC_RecordChild3,
24223 OPC_MoveChild3,
24224 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24225 OPC_MoveParent,
24226 OPC_CheckType, MVT::v8f16,
24227 OPC_CheckPatternPredicate2,
24228 OPC_EmitConvertToTarget1,
24229 OPC_EmitInteger32, 0,
24230 OPC_EmitRegisterI32, 0 ,
24231 OPC_EmitRegisterI32, 0 ,
24232 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24233 MVT::v4i32, 0,
24234 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16u16_fix),
24235 MVT::v8f16, 6, 0, 2, 3, 4, 5, 6,
24236 34,
24237 OPC_CheckChild2Type, MVT::v4i32,
24238 OPC_RecordChild3,
24239 OPC_MoveChild3,
24240 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24241 OPC_MoveParent,
24242 OPC_CheckType, MVT::v4f32,
24243 OPC_CheckPatternPredicate2,
24244 OPC_EmitConvertToTarget1,
24245 OPC_EmitInteger32, 0,
24246 OPC_EmitRegisterI32, 0 ,
24247 OPC_EmitRegisterI32, 0 ,
24248 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24249 MVT::v4i32, 0,
24250 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32u32_fix),
24251 MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
24252 0,
24253 0,
24254 35|128,2,
24255 OPC_CheckChild0Integer, 34|128,51,
24256 OPC_Scope, 13|128,1,
24257 OPC_CheckChild1Integer, 0,
24258 OPC_RecordChild2,
24259 OPC_Scope, 33,
24260 OPC_CheckChild2Type, MVT::v8i16,
24261 OPC_RecordChild3,
24262 OPC_CheckChild3Type, MVT::v8f16,
24263 OPC_RecordChild4,
24264 OPC_MoveChild4,
24265 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24266 OPC_MoveParent,
24267 OPC_RecordChild5,
24268 OPC_CheckChild5Type, MVT::v8i1,
24269 OPC_CheckType, MVT::v8i16,
24270 OPC_CheckPatternPredicate2,
24271 OPC_EmitConvertToTarget2,
24272 OPC_EmitInteger32, 2,
24273 OPC_EmitRegisterI32, 0 ,
24274 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16_fix),
24275 MVT::v8i16, 6, 1, 4, 5, 3, 6, 0,
24276 33,
24277 OPC_CheckChild2Type, MVT::v4i32,
24278 OPC_RecordChild3,
24279 OPC_CheckChild3Type, MVT::v4f32,
24280 OPC_RecordChild4,
24281 OPC_MoveChild4,
24282 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24283 OPC_MoveParent,
24284 OPC_RecordChild5,
24285 OPC_CheckChild5Type, MVT::v4i1,
24286 OPC_CheckType, MVT::v4i32,
24287 OPC_CheckPatternPredicate2,
24288 OPC_EmitConvertToTarget2,
24289 OPC_EmitInteger32, 2,
24290 OPC_EmitRegisterI32, 0 ,
24291 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32_fix),
24292 MVT::v4i32, 6, 1, 4, 5, 3, 6, 0,
24293 33,
24294 OPC_CheckChild2Type, MVT::v8f16,
24295 OPC_RecordChild3,
24296 OPC_CheckChild3Type, MVT::v8i16,
24297 OPC_RecordChild4,
24298 OPC_MoveChild4,
24299 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24300 OPC_MoveParent,
24301 OPC_RecordChild5,
24302 OPC_CheckChild5Type, MVT::v8i1,
24303 OPC_CheckType, MVT::v8f16,
24304 OPC_CheckPatternPredicate2,
24305 OPC_EmitConvertToTarget2,
24306 OPC_EmitInteger32, 2,
24307 OPC_EmitRegisterI32, 0 ,
24308 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16s16_fix),
24309 MVT::v8f16, 6, 1, 4, 5, 3, 6, 0,
24310 33,
24311 OPC_CheckChild2Type, MVT::v4f32,
24312 OPC_RecordChild3,
24313 OPC_CheckChild3Type, MVT::v4i32,
24314 OPC_RecordChild4,
24315 OPC_MoveChild4,
24316 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24317 OPC_MoveParent,
24318 OPC_RecordChild5,
24319 OPC_CheckChild5Type, MVT::v4i1,
24320 OPC_CheckType, MVT::v4f32,
24321 OPC_CheckPatternPredicate2,
24322 OPC_EmitConvertToTarget2,
24323 OPC_EmitInteger32, 2,
24324 OPC_EmitRegisterI32, 0 ,
24325 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32s32_fix),
24326 MVT::v4f32, 6, 1, 4, 5, 3, 6, 0,
24327 0,
24328 13|128,1,
24329 OPC_CheckChild1Integer, 2,
24330 OPC_RecordChild2,
24331 OPC_Scope, 33,
24332 OPC_CheckChild2Type, MVT::v8i16,
24333 OPC_RecordChild3,
24334 OPC_CheckChild3Type, MVT::v8f16,
24335 OPC_RecordChild4,
24336 OPC_MoveChild4,
24337 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24338 OPC_MoveParent,
24339 OPC_RecordChild5,
24340 OPC_CheckChild5Type, MVT::v8i1,
24341 OPC_CheckType, MVT::v8i16,
24342 OPC_CheckPatternPredicate2,
24343 OPC_EmitConvertToTarget2,
24344 OPC_EmitInteger32, 2,
24345 OPC_EmitRegisterI32, 0 ,
24346 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16_fix),
24347 MVT::v8i16, 6, 1, 4, 5, 3, 6, 0,
24348 33,
24349 OPC_CheckChild2Type, MVT::v4i32,
24350 OPC_RecordChild3,
24351 OPC_CheckChild3Type, MVT::v4f32,
24352 OPC_RecordChild4,
24353 OPC_MoveChild4,
24354 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24355 OPC_MoveParent,
24356 OPC_RecordChild5,
24357 OPC_CheckChild5Type, MVT::v4i1,
24358 OPC_CheckType, MVT::v4i32,
24359 OPC_CheckPatternPredicate2,
24360 OPC_EmitConvertToTarget2,
24361 OPC_EmitInteger32, 2,
24362 OPC_EmitRegisterI32, 0 ,
24363 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32_fix),
24364 MVT::v4i32, 6, 1, 4, 5, 3, 6, 0,
24365 33,
24366 OPC_CheckChild2Type, MVT::v8f16,
24367 OPC_RecordChild3,
24368 OPC_CheckChild3Type, MVT::v8i16,
24369 OPC_RecordChild4,
24370 OPC_MoveChild4,
24371 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24372 OPC_MoveParent,
24373 OPC_RecordChild5,
24374 OPC_CheckChild5Type, MVT::v8i1,
24375 OPC_CheckType, MVT::v8f16,
24376 OPC_CheckPatternPredicate2,
24377 OPC_EmitConvertToTarget2,
24378 OPC_EmitInteger32, 2,
24379 OPC_EmitRegisterI32, 0 ,
24380 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16u16_fix),
24381 MVT::v8f16, 6, 1, 4, 5, 3, 6, 0,
24382 33,
24383 OPC_CheckChild2Type, MVT::v4f32,
24384 OPC_RecordChild3,
24385 OPC_CheckChild3Type, MVT::v4i32,
24386 OPC_RecordChild4,
24387 OPC_MoveChild4,
24388 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24389 OPC_MoveParent,
24390 OPC_RecordChild5,
24391 OPC_CheckChild5Type, MVT::v4i1,
24392 OPC_CheckType, MVT::v4f32,
24393 OPC_CheckPatternPredicate2,
24394 OPC_EmitConvertToTarget2,
24395 OPC_EmitInteger32, 2,
24396 OPC_EmitRegisterI32, 0 ,
24397 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32u32_fix),
24398 MVT::v4f32, 6, 1, 4, 5, 3, 6, 0,
24399 0,
24400 0,
24401 30|128,2,
24402 OPC_CheckChild0Integer, 10|128,51,
24403 OPC_Scope, 43|128,1,
24404 OPC_CheckChild1Integer, 2,
24405 OPC_RecordChild2,
24406 OPC_MoveChild2,
24407 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24408 OPC_MoveParent,
24409 OPC_RecordChild3,
24410 OPC_SwitchType , 30, MVT::v16i8,
24411 OPC_CheckChild3Type, MVT::v16i8,
24412 OPC_RecordChild4,
24413 OPC_CheckChild4Type, MVT::v16i8,
24414 OPC_CheckPatternPredicate0,
24415 OPC_EmitConvertToTarget0,
24416 OPC_EmitInteger32, 0,
24417 OPC_EmitRegisterI32, 0 ,
24418 OPC_EmitRegisterI32, 0 ,
24419 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24420 MVT::v4i32, 0,
24421 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCADDi8),
24422 MVT::v16i8, 7, 1, 2, 3, 4, 5, 6, 7,
24423 30, MVT::v8i16,
24424 OPC_CheckChild3Type, MVT::v8i16,
24425 OPC_RecordChild4,
24426 OPC_CheckChild4Type, MVT::v8i16,
24427 OPC_CheckPatternPredicate0,
24428 OPC_EmitConvertToTarget0,
24429 OPC_EmitInteger32, 0,
24430 OPC_EmitRegisterI32, 0 ,
24431 OPC_EmitRegisterI32, 0 ,
24432 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24433 MVT::v4i32, 0,
24434 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCADDi16),
24435 MVT::v8i16, 7, 1, 2, 3, 4, 5, 6, 7,
24436 30, MVT::v4i32,
24437 OPC_CheckChild3Type, MVT::v4i32,
24438 OPC_RecordChild4,
24439 OPC_CheckChild4Type, MVT::v4i32,
24440 OPC_CheckPatternPredicate0,
24441 OPC_EmitConvertToTarget0,
24442 OPC_EmitInteger32, 0,
24443 OPC_EmitRegisterI32, 0 ,
24444 OPC_EmitRegisterI32, 0 ,
24445 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24446 MVT::v4i32, 0,
24447 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCADDi32),
24448 MVT::v4i32, 7, 1, 2, 3, 4, 5, 6, 7,
24449 30, MVT::v8f16,
24450 OPC_CheckChild3Type, MVT::v8f16,
24451 OPC_RecordChild4,
24452 OPC_CheckChild4Type, MVT::v8f16,
24453 OPC_CheckPatternPredicate2,
24454 OPC_EmitConvertToTarget0,
24455 OPC_EmitInteger32, 0,
24456 OPC_EmitRegisterI32, 0 ,
24457 OPC_EmitRegisterI32, 0 ,
24458 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24459 MVT::v4i32, 0,
24460 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCADDf16),
24461 MVT::v8f16, 7, 1, 2, 3, 4, 5, 6, 7,
24462 30, MVT::v4f32,
24463 OPC_CheckChild3Type, MVT::v4f32,
24464 OPC_RecordChild4,
24465 OPC_CheckChild4Type, MVT::v4f32,
24466 OPC_CheckPatternPredicate2,
24467 OPC_EmitConvertToTarget0,
24468 OPC_EmitInteger32, 0,
24469 OPC_EmitRegisterI32, 0 ,
24470 OPC_EmitRegisterI32, 0 ,
24471 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24472 MVT::v4i32, 0,
24473 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCADDf32),
24474 MVT::v4f32, 7, 1, 2, 3, 4, 5, 6, 7,
24475 0,
24476 107,
24477 OPC_CheckChild1Integer, 0,
24478 OPC_RecordChild2,
24479 OPC_MoveChild2,
24480 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24481 OPC_MoveParent,
24482 OPC_RecordChild3,
24483 OPC_SwitchType , 30, MVT::v16i8,
24484 OPC_CheckChild3Type, MVT::v16i8,
24485 OPC_RecordChild4,
24486 OPC_CheckChild4Type, MVT::v16i8,
24487 OPC_CheckPatternPredicate0,
24488 OPC_EmitConvertToTarget0,
24489 OPC_EmitInteger32, 0,
24490 OPC_EmitRegisterI32, 0 ,
24491 OPC_EmitRegisterI32, 0 ,
24492 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24493 MVT::v4i32, 0,
24494 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHCADDs8),
24495 MVT::v16i8, 7, 1, 2, 3, 4, 5, 6, 7,
24496 30, MVT::v8i16,
24497 OPC_CheckChild3Type, MVT::v8i16,
24498 OPC_RecordChild4,
24499 OPC_CheckChild4Type, MVT::v8i16,
24500 OPC_CheckPatternPredicate0,
24501 OPC_EmitConvertToTarget0,
24502 OPC_EmitInteger32, 0,
24503 OPC_EmitRegisterI32, 0 ,
24504 OPC_EmitRegisterI32, 0 ,
24505 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24506 MVT::v4i32, 0,
24507 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHCADDs16),
24508 MVT::v8i16, 7, 1, 2, 3, 4, 5, 6, 7,
24509 30, MVT::v4i32,
24510 OPC_CheckChild3Type, MVT::v4i32,
24511 OPC_RecordChild4,
24512 OPC_CheckChild4Type, MVT::v4i32,
24513 OPC_CheckPatternPredicate0,
24514 OPC_EmitConvertToTarget0,
24515 OPC_EmitInteger32, 0,
24516 OPC_EmitRegisterI32, 0 ,
24517 OPC_EmitRegisterI32, 0 ,
24518 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
24519 MVT::v4i32, 0,
24520 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHCADDs32),
24521 MVT::v4i32, 7, 1, 2, 3, 4, 5, 6, 7,
24522 0,
24523 0,
24524 22|128,2,
24525 OPC_CheckChild0Integer, 12|128,51,
24526 OPC_Scope, 38|128,1,
24527 OPC_CheckChild1Integer, 2,
24528 OPC_RecordChild2,
24529 OPC_MoveChild2,
24530 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24531 OPC_MoveParent,
24532 OPC_RecordChild3,
24533 OPC_SwitchType , 29, MVT::v16i8,
24534 OPC_CheckChild3Type, MVT::v16i8,
24535 OPC_RecordChild4,
24536 OPC_CheckChild4Type, MVT::v16i8,
24537 OPC_RecordChild5,
24538 OPC_CheckChild5Type, MVT::v16i8,
24539 OPC_RecordChild6,
24540 OPC_CheckChild6Type, MVT::v16i1,
24541 OPC_CheckPatternPredicate0,
24542 OPC_EmitConvertToTarget0,
24543 OPC_EmitInteger32, 2,
24544 OPC_EmitRegisterI32, 0 ,
24545 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCADDi8),
24546 MVT::v16i8, 7, 2, 3, 5, 6, 4, 7, 1,
24547 29, MVT::v8i16,
24548 OPC_CheckChild3Type, MVT::v8i16,
24549 OPC_RecordChild4,
24550 OPC_CheckChild4Type, MVT::v8i16,
24551 OPC_RecordChild5,
24552 OPC_CheckChild5Type, MVT::v8i16,
24553 OPC_RecordChild6,
24554 OPC_CheckChild6Type, MVT::v8i1,
24555 OPC_CheckPatternPredicate0,
24556 OPC_EmitConvertToTarget0,
24557 OPC_EmitInteger32, 2,
24558 OPC_EmitRegisterI32, 0 ,
24559 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCADDi16),
24560 MVT::v8i16, 7, 2, 3, 5, 6, 4, 7, 1,
24561 29, MVT::v4i32,
24562 OPC_CheckChild3Type, MVT::v4i32,
24563 OPC_RecordChild4,
24564 OPC_CheckChild4Type, MVT::v4i32,
24565 OPC_RecordChild5,
24566 OPC_CheckChild5Type, MVT::v4i32,
24567 OPC_RecordChild6,
24568 OPC_CheckChild6Type, MVT::v4i1,
24569 OPC_CheckPatternPredicate0,
24570 OPC_EmitConvertToTarget0,
24571 OPC_EmitInteger32, 2,
24572 OPC_EmitRegisterI32, 0 ,
24573 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCADDi32),
24574 MVT::v4i32, 7, 2, 3, 5, 6, 4, 7, 1,
24575 29, MVT::v8f16,
24576 OPC_CheckChild3Type, MVT::v8f16,
24577 OPC_RecordChild4,
24578 OPC_CheckChild4Type, MVT::v8f16,
24579 OPC_RecordChild5,
24580 OPC_CheckChild5Type, MVT::v8f16,
24581 OPC_RecordChild6,
24582 OPC_CheckChild6Type, MVT::v8i1,
24583 OPC_CheckPatternPredicate2,
24584 OPC_EmitConvertToTarget0,
24585 OPC_EmitInteger32, 2,
24586 OPC_EmitRegisterI32, 0 ,
24587 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCADDf16),
24588 MVT::v8f16, 7, 2, 3, 5, 6, 4, 7, 1,
24589 29, MVT::v4f32,
24590 OPC_CheckChild3Type, MVT::v4f32,
24591 OPC_RecordChild4,
24592 OPC_CheckChild4Type, MVT::v4f32,
24593 OPC_RecordChild5,
24594 OPC_CheckChild5Type, MVT::v4f32,
24595 OPC_RecordChild6,
24596 OPC_CheckChild6Type, MVT::v4i1,
24597 OPC_CheckPatternPredicate2,
24598 OPC_EmitConvertToTarget0,
24599 OPC_EmitInteger32, 2,
24600 OPC_EmitRegisterI32, 0 ,
24601 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCADDf32),
24602 MVT::v4f32, 7, 2, 3, 5, 6, 4, 7, 1,
24603 0,
24604 104,
24605 OPC_CheckChild1Integer, 0,
24606 OPC_RecordChild2,
24607 OPC_MoveChild2,
24608 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
24609 OPC_MoveParent,
24610 OPC_RecordChild3,
24611 OPC_SwitchType , 29, MVT::v16i8,
24612 OPC_CheckChild3Type, MVT::v16i8,
24613 OPC_RecordChild4,
24614 OPC_CheckChild4Type, MVT::v16i8,
24615 OPC_RecordChild5,
24616 OPC_CheckChild5Type, MVT::v16i8,
24617 OPC_RecordChild6,
24618 OPC_CheckChild6Type, MVT::v16i1,
24619 OPC_CheckPatternPredicate0,
24620 OPC_EmitConvertToTarget0,
24621 OPC_EmitInteger32, 2,
24622 OPC_EmitRegisterI32, 0 ,
24623 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHCADDs8),
24624 MVT::v16i8, 7, 2, 3, 5, 6, 4, 7, 1,
24625 29, MVT::v8i16,
24626 OPC_CheckChild3Type, MVT::v8i16,
24627 OPC_RecordChild4,
24628 OPC_CheckChild4Type, MVT::v8i16,
24629 OPC_RecordChild5,
24630 OPC_CheckChild5Type, MVT::v8i16,
24631 OPC_RecordChild6,
24632 OPC_CheckChild6Type, MVT::v8i1,
24633 OPC_CheckPatternPredicate0,
24634 OPC_EmitConvertToTarget0,
24635 OPC_EmitInteger32, 2,
24636 OPC_EmitRegisterI32, 0 ,
24637 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHCADDs16),
24638 MVT::v8i16, 7, 2, 3, 5, 6, 4, 7, 1,
24639 29, MVT::v4i32,
24640 OPC_CheckChild3Type, MVT::v4i32,
24641 OPC_RecordChild4,
24642 OPC_CheckChild4Type, MVT::v4i32,
24643 OPC_RecordChild5,
24644 OPC_CheckChild5Type, MVT::v4i32,
24645 OPC_RecordChild6,
24646 OPC_CheckChild6Type, MVT::v4i1,
24647 OPC_CheckPatternPredicate0,
24648 OPC_EmitConvertToTarget0,
24649 OPC_EmitInteger32, 2,
24650 OPC_EmitRegisterI32, 0 ,
24651 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHCADDs32),
24652 MVT::v4i32, 7, 2, 3, 5, 6, 4, 7, 1,
24653 0,
24654 0,
24655 3|128,3,
24656 OPC_CheckChild0Integer, 80|128,50,
24657 OPC_RecordChild1,
24658 OPC_Scope, 126,
24659 OPC_CheckChild1Type, MVT::v16i8,
24660 OPC_Scope, 63,
24661 OPC_MoveChild2,
24662 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
24663 OPC_RecordChild0,
24664 OPC_CheckChild0TypeI32,
24665 OPC_CheckType, MVT::v16i8,
24666 OPC_MoveParent,
24667 OPC_CheckType, MVT::v16i8,
24668 OPC_Scope, 24,
24669 OPC_CheckChild3Integer, 0,
24670 OPC_RecordChild4,
24671 OPC_CheckChild4Type, MVT::v16i1,
24672 OPC_RecordChild5,
24673 OPC_CheckChild5Type, MVT::v16i8,
24674 OPC_CheckPatternPredicate0,
24675 OPC_EmitInteger32, 2,
24676 OPC_EmitRegisterI32, 0 ,
24677 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s8),
24678 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
24679 24,
24680 OPC_CheckChild3Integer, 2,
24681 OPC_RecordChild4,
24682 OPC_CheckChild4Type, MVT::v16i1,
24683 OPC_RecordChild5,
24684 OPC_CheckChild5Type, MVT::v16i8,
24685 OPC_CheckPatternPredicate0,
24686 OPC_EmitInteger32, 2,
24687 OPC_EmitRegisterI32, 0 ,
24688 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u8),
24689 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
24690 0,
24691 57,
24692 OPC_RecordChild2,
24693 OPC_CheckChild2Type, MVT::v16i8,
24694 OPC_CheckType, MVT::v16i8,
24695 OPC_Scope, 24,
24696 OPC_CheckChild3Integer, 0,
24697 OPC_RecordChild4,
24698 OPC_CheckChild4Type, MVT::v16i1,
24699 OPC_RecordChild5,
24700 OPC_CheckChild5Type, MVT::v16i8,
24701 OPC_CheckPatternPredicate0,
24702 OPC_EmitInteger32, 2,
24703 OPC_EmitRegisterI32, 0 ,
24704 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDs8),
24705 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
24706 24,
24707 OPC_CheckChild3Integer, 2,
24708 OPC_RecordChild4,
24709 OPC_CheckChild4Type, MVT::v16i1,
24710 OPC_RecordChild5,
24711 OPC_CheckChild5Type, MVT::v16i8,
24712 OPC_CheckPatternPredicate0,
24713 OPC_EmitInteger32, 2,
24714 OPC_EmitRegisterI32, 0 ,
24715 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDu8),
24716 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
24717 0,
24718 0,
24719 126,
24720 OPC_CheckChild1Type, MVT::v8i16,
24721 OPC_Scope, 63,
24722 OPC_MoveChild2,
24723 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
24724 OPC_RecordChild0,
24725 OPC_CheckChild0TypeI32,
24726 OPC_CheckType, MVT::v8i16,
24727 OPC_MoveParent,
24728 OPC_CheckType, MVT::v8i16,
24729 OPC_Scope, 24,
24730 OPC_CheckChild3Integer, 0,
24731 OPC_RecordChild4,
24732 OPC_CheckChild4Type, MVT::v8i1,
24733 OPC_RecordChild5,
24734 OPC_CheckChild5Type, MVT::v8i16,
24735 OPC_CheckPatternPredicate0,
24736 OPC_EmitInteger32, 2,
24737 OPC_EmitRegisterI32, 0 ,
24738 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s16),
24739 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
24740 24,
24741 OPC_CheckChild3Integer, 2,
24742 OPC_RecordChild4,
24743 OPC_CheckChild4Type, MVT::v8i1,
24744 OPC_RecordChild5,
24745 OPC_CheckChild5Type, MVT::v8i16,
24746 OPC_CheckPatternPredicate0,
24747 OPC_EmitInteger32, 2,
24748 OPC_EmitRegisterI32, 0 ,
24749 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u16),
24750 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
24751 0,
24752 57,
24753 OPC_RecordChild2,
24754 OPC_CheckChild2Type, MVT::v8i16,
24755 OPC_CheckType, MVT::v8i16,
24756 OPC_Scope, 24,
24757 OPC_CheckChild3Integer, 0,
24758 OPC_RecordChild4,
24759 OPC_CheckChild4Type, MVT::v8i1,
24760 OPC_RecordChild5,
24761 OPC_CheckChild5Type, MVT::v8i16,
24762 OPC_CheckPatternPredicate0,
24763 OPC_EmitInteger32, 2,
24764 OPC_EmitRegisterI32, 0 ,
24765 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDs16),
24766 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
24767 24,
24768 OPC_CheckChild3Integer, 2,
24769 OPC_RecordChild4,
24770 OPC_CheckChild4Type, MVT::v8i1,
24771 OPC_RecordChild5,
24772 OPC_CheckChild5Type, MVT::v8i16,
24773 OPC_CheckPatternPredicate0,
24774 OPC_EmitInteger32, 2,
24775 OPC_EmitRegisterI32, 0 ,
24776 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDu16),
24777 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
24778 0,
24779 0,
24780 126,
24781 OPC_CheckChild1Type, MVT::v4i32,
24782 OPC_Scope, 63,
24783 OPC_MoveChild2,
24784 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
24785 OPC_RecordChild0,
24786 OPC_CheckChild0TypeI32,
24787 OPC_CheckType, MVT::v4i32,
24788 OPC_MoveParent,
24789 OPC_CheckType, MVT::v4i32,
24790 OPC_Scope, 24,
24791 OPC_CheckChild3Integer, 0,
24792 OPC_RecordChild4,
24793 OPC_CheckChild4Type, MVT::v4i1,
24794 OPC_RecordChild5,
24795 OPC_CheckChild5Type, MVT::v4i32,
24796 OPC_CheckPatternPredicate0,
24797 OPC_EmitInteger32, 2,
24798 OPC_EmitRegisterI32, 0 ,
24799 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s32),
24800 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
24801 24,
24802 OPC_CheckChild3Integer, 2,
24803 OPC_RecordChild4,
24804 OPC_CheckChild4Type, MVT::v4i1,
24805 OPC_RecordChild5,
24806 OPC_CheckChild5Type, MVT::v4i32,
24807 OPC_CheckPatternPredicate0,
24808 OPC_EmitInteger32, 2,
24809 OPC_EmitRegisterI32, 0 ,
24810 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u32),
24811 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
24812 0,
24813 57,
24814 OPC_RecordChild2,
24815 OPC_CheckChild2Type, MVT::v4i32,
24816 OPC_CheckType, MVT::v4i32,
24817 OPC_Scope, 24,
24818 OPC_CheckChild3Integer, 0,
24819 OPC_RecordChild4,
24820 OPC_CheckChild4Type, MVT::v4i1,
24821 OPC_RecordChild5,
24822 OPC_CheckChild5Type, MVT::v4i32,
24823 OPC_CheckPatternPredicate0,
24824 OPC_EmitInteger32, 2,
24825 OPC_EmitRegisterI32, 0 ,
24826 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDs32),
24827 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
24828 24,
24829 OPC_CheckChild3Integer, 2,
24830 OPC_RecordChild4,
24831 OPC_CheckChild4Type, MVT::v4i1,
24832 OPC_RecordChild5,
24833 OPC_CheckChild5Type, MVT::v4i32,
24834 OPC_CheckPatternPredicate0,
24835 OPC_EmitInteger32, 2,
24836 OPC_EmitRegisterI32, 0 ,
24837 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDu32),
24838 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
24839 0,
24840 0,
24841 0,
24842 3|128,3,
24843 OPC_CheckChild0Integer, 88|128,50,
24844 OPC_RecordChild1,
24845 OPC_Scope, 126,
24846 OPC_CheckChild1Type, MVT::v16i8,
24847 OPC_Scope, 63,
24848 OPC_MoveChild2,
24849 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
24850 OPC_RecordChild0,
24851 OPC_CheckChild0TypeI32,
24852 OPC_CheckType, MVT::v16i8,
24853 OPC_MoveParent,
24854 OPC_CheckType, MVT::v16i8,
24855 OPC_Scope, 24,
24856 OPC_CheckChild3Integer, 0,
24857 OPC_RecordChild4,
24858 OPC_CheckChild4Type, MVT::v16i1,
24859 OPC_RecordChild5,
24860 OPC_CheckChild5Type, MVT::v16i8,
24861 OPC_CheckPatternPredicate0,
24862 OPC_EmitInteger32, 2,
24863 OPC_EmitRegisterI32, 0 ,
24864 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_s8),
24865 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
24866 24,
24867 OPC_CheckChild3Integer, 2,
24868 OPC_RecordChild4,
24869 OPC_CheckChild4Type, MVT::v16i1,
24870 OPC_RecordChild5,
24871 OPC_CheckChild5Type, MVT::v16i8,
24872 OPC_CheckPatternPredicate0,
24873 OPC_EmitInteger32, 2,
24874 OPC_EmitRegisterI32, 0 ,
24875 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_u8),
24876 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
24877 0,
24878 57,
24879 OPC_RecordChild2,
24880 OPC_CheckChild2Type, MVT::v16i8,
24881 OPC_CheckType, MVT::v16i8,
24882 OPC_Scope, 24,
24883 OPC_CheckChild3Integer, 0,
24884 OPC_RecordChild4,
24885 OPC_CheckChild4Type, MVT::v16i1,
24886 OPC_RecordChild5,
24887 OPC_CheckChild5Type, MVT::v16i8,
24888 OPC_CheckPatternPredicate0,
24889 OPC_EmitInteger32, 2,
24890 OPC_EmitRegisterI32, 0 ,
24891 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBs8),
24892 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
24893 24,
24894 OPC_CheckChild3Integer, 2,
24895 OPC_RecordChild4,
24896 OPC_CheckChild4Type, MVT::v16i1,
24897 OPC_RecordChild5,
24898 OPC_CheckChild5Type, MVT::v16i8,
24899 OPC_CheckPatternPredicate0,
24900 OPC_EmitInteger32, 2,
24901 OPC_EmitRegisterI32, 0 ,
24902 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBu8),
24903 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
24904 0,
24905 0,
24906 126,
24907 OPC_CheckChild1Type, MVT::v8i16,
24908 OPC_Scope, 63,
24909 OPC_MoveChild2,
24910 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
24911 OPC_RecordChild0,
24912 OPC_CheckChild0TypeI32,
24913 OPC_CheckType, MVT::v8i16,
24914 OPC_MoveParent,
24915 OPC_CheckType, MVT::v8i16,
24916 OPC_Scope, 24,
24917 OPC_CheckChild3Integer, 0,
24918 OPC_RecordChild4,
24919 OPC_CheckChild4Type, MVT::v8i1,
24920 OPC_RecordChild5,
24921 OPC_CheckChild5Type, MVT::v8i16,
24922 OPC_CheckPatternPredicate0,
24923 OPC_EmitInteger32, 2,
24924 OPC_EmitRegisterI32, 0 ,
24925 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_s16),
24926 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
24927 24,
24928 OPC_CheckChild3Integer, 2,
24929 OPC_RecordChild4,
24930 OPC_CheckChild4Type, MVT::v8i1,
24931 OPC_RecordChild5,
24932 OPC_CheckChild5Type, MVT::v8i16,
24933 OPC_CheckPatternPredicate0,
24934 OPC_EmitInteger32, 2,
24935 OPC_EmitRegisterI32, 0 ,
24936 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_u16),
24937 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
24938 0,
24939 57,
24940 OPC_RecordChild2,
24941 OPC_CheckChild2Type, MVT::v8i16,
24942 OPC_CheckType, MVT::v8i16,
24943 OPC_Scope, 24,
24944 OPC_CheckChild3Integer, 0,
24945 OPC_RecordChild4,
24946 OPC_CheckChild4Type, MVT::v8i1,
24947 OPC_RecordChild5,
24948 OPC_CheckChild5Type, MVT::v8i16,
24949 OPC_CheckPatternPredicate0,
24950 OPC_EmitInteger32, 2,
24951 OPC_EmitRegisterI32, 0 ,
24952 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBs16),
24953 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
24954 24,
24955 OPC_CheckChild3Integer, 2,
24956 OPC_RecordChild4,
24957 OPC_CheckChild4Type, MVT::v8i1,
24958 OPC_RecordChild5,
24959 OPC_CheckChild5Type, MVT::v8i16,
24960 OPC_CheckPatternPredicate0,
24961 OPC_EmitInteger32, 2,
24962 OPC_EmitRegisterI32, 0 ,
24963 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBu16),
24964 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
24965 0,
24966 0,
24967 126,
24968 OPC_CheckChild1Type, MVT::v4i32,
24969 OPC_Scope, 63,
24970 OPC_MoveChild2,
24971 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
24972 OPC_RecordChild0,
24973 OPC_CheckChild0TypeI32,
24974 OPC_CheckType, MVT::v4i32,
24975 OPC_MoveParent,
24976 OPC_CheckType, MVT::v4i32,
24977 OPC_Scope, 24,
24978 OPC_CheckChild3Integer, 0,
24979 OPC_RecordChild4,
24980 OPC_CheckChild4Type, MVT::v4i1,
24981 OPC_RecordChild5,
24982 OPC_CheckChild5Type, MVT::v4i32,
24983 OPC_CheckPatternPredicate0,
24984 OPC_EmitInteger32, 2,
24985 OPC_EmitRegisterI32, 0 ,
24986 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_s32),
24987 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
24988 24,
24989 OPC_CheckChild3Integer, 2,
24990 OPC_RecordChild4,
24991 OPC_CheckChild4Type, MVT::v4i1,
24992 OPC_RecordChild5,
24993 OPC_CheckChild5Type, MVT::v4i32,
24994 OPC_CheckPatternPredicate0,
24995 OPC_EmitInteger32, 2,
24996 OPC_EmitRegisterI32, 0 ,
24997 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_u32),
24998 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
24999 0,
25000 57,
25001 OPC_RecordChild2,
25002 OPC_CheckChild2Type, MVT::v4i32,
25003 OPC_CheckType, MVT::v4i32,
25004 OPC_Scope, 24,
25005 OPC_CheckChild3Integer, 0,
25006 OPC_RecordChild4,
25007 OPC_CheckChild4Type, MVT::v4i1,
25008 OPC_RecordChild5,
25009 OPC_CheckChild5Type, MVT::v4i32,
25010 OPC_CheckPatternPredicate0,
25011 OPC_EmitInteger32, 2,
25012 OPC_EmitRegisterI32, 0 ,
25013 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBs32),
25014 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25015 24,
25016 OPC_CheckChild3Integer, 2,
25017 OPC_RecordChild4,
25018 OPC_CheckChild4Type, MVT::v4i1,
25019 OPC_RecordChild5,
25020 OPC_CheckChild5Type, MVT::v4i32,
25021 OPC_CheckPatternPredicate0,
25022 OPC_EmitInteger32, 2,
25023 OPC_EmitRegisterI32, 0 ,
25024 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBu32),
25025 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25026 0,
25027 0,
25028 0,
25029 14|128,2,
25030 OPC_CheckChild0Integer, 14|128,52,
25031 OPC_RecordChild1,
25032 OPC_Scope, 2|128,1,
25033 OPC_CheckChild1Type, MVT::v8i16,
25034 OPC_Scope, 65,
25035 OPC_MoveChild2,
25036 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25037 OPC_RecordChild0,
25038 OPC_CheckChild0TypeI32,
25039 OPC_CheckType, MVT::v8i16,
25040 OPC_MoveParent,
25041 OPC_CheckType, MVT::v4i32,
25042 OPC_Scope, 25,
25043 OPC_CheckChild3Integer, 0,
25044 OPC_CheckPatternPredicate0,
25045 OPC_EmitInteger32, 0,
25046 OPC_EmitRegisterI32, 0 ,
25047 OPC_EmitRegisterI32, 0 ,
25048 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25049 MVT::v4i32, 0,
25050 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULL_qr_s16bh),
25051 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
25052 25,
25053 OPC_CheckChild3Integer, 2,
25054 OPC_CheckPatternPredicate0,
25055 OPC_EmitInteger32, 0,
25056 OPC_EmitRegisterI32, 0 ,
25057 OPC_EmitRegisterI32, 0 ,
25058 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25059 MVT::v4i32, 0,
25060 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULL_qr_s16th),
25061 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
25062 0,
25063 59,
25064 OPC_RecordChild2,
25065 OPC_CheckChild2Type, MVT::v8i16,
25066 OPC_CheckType, MVT::v4i32,
25067 OPC_Scope, 25,
25068 OPC_CheckChild3Integer, 0,
25069 OPC_CheckPatternPredicate0,
25070 OPC_EmitInteger32, 0,
25071 OPC_EmitRegisterI32, 0 ,
25072 OPC_EmitRegisterI32, 0 ,
25073 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25074 MVT::v4i32, 0,
25075 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULLs16bh),
25076 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
25077 25,
25078 OPC_CheckChild3Integer, 2,
25079 OPC_CheckPatternPredicate0,
25080 OPC_EmitInteger32, 0,
25081 OPC_EmitRegisterI32, 0 ,
25082 OPC_EmitRegisterI32, 0 ,
25083 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25084 MVT::v4i32, 0,
25085 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULLs16th),
25086 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
25087 0,
25088 0,
25089 2|128,1,
25090 OPC_CheckChild1Type, MVT::v4i32,
25091 OPC_Scope, 65,
25092 OPC_MoveChild2,
25093 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25094 OPC_RecordChild0,
25095 OPC_CheckChild0TypeI32,
25096 OPC_CheckType, MVT::v4i32,
25097 OPC_MoveParent,
25098 OPC_CheckType, MVT::v2i64,
25099 OPC_Scope, 25,
25100 OPC_CheckChild3Integer, 0,
25101 OPC_CheckPatternPredicate0,
25102 OPC_EmitInteger32, 0,
25103 OPC_EmitRegisterI32, 0 ,
25104 OPC_EmitRegisterI32, 0 ,
25105 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25106 MVT::v4i32, 0,
25107 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULL_qr_s32bh),
25108 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
25109 25,
25110 OPC_CheckChild3Integer, 2,
25111 OPC_CheckPatternPredicate0,
25112 OPC_EmitInteger32, 0,
25113 OPC_EmitRegisterI32, 0 ,
25114 OPC_EmitRegisterI32, 0 ,
25115 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25116 MVT::v4i32, 0,
25117 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULL_qr_s32th),
25118 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
25119 0,
25120 59,
25121 OPC_RecordChild2,
25122 OPC_CheckChild2Type, MVT::v4i32,
25123 OPC_CheckType, MVT::v2i64,
25124 OPC_Scope, 25,
25125 OPC_CheckChild3Integer, 0,
25126 OPC_CheckPatternPredicate0,
25127 OPC_EmitInteger32, 0,
25128 OPC_EmitRegisterI32, 0 ,
25129 OPC_EmitRegisterI32, 0 ,
25130 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25131 MVT::v4i32, 0,
25132 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULLs32bh),
25133 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
25134 25,
25135 OPC_CheckChild3Integer, 2,
25136 OPC_CheckPatternPredicate0,
25137 OPC_EmitInteger32, 0,
25138 OPC_EmitRegisterI32, 0 ,
25139 OPC_EmitRegisterI32, 0 ,
25140 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25141 MVT::v4i32, 0,
25142 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULLs32th),
25143 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
25144 0,
25145 0,
25146 0,
25147 4|128,2,
25148 OPC_CheckChild0Integer, 16|128,52,
25149 OPC_RecordChild1,
25150 OPC_Scope, 126,
25151 OPC_CheckChild1Type, MVT::v8i16,
25152 OPC_Scope, 63,
25153 OPC_MoveChild2,
25154 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25155 OPC_RecordChild0,
25156 OPC_CheckChild0TypeI32,
25157 OPC_CheckType, MVT::v8i16,
25158 OPC_MoveParent,
25159 OPC_CheckType, MVT::v4i32,
25160 OPC_Scope, 24,
25161 OPC_CheckChild3Integer, 0,
25162 OPC_RecordChild4,
25163 OPC_CheckChild4Type, MVT::v4i1,
25164 OPC_RecordChild5,
25165 OPC_CheckChild5Type, MVT::v4i32,
25166 OPC_CheckPatternPredicate0,
25167 OPC_EmitInteger32, 2,
25168 OPC_EmitRegisterI32, 0 ,
25169 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULL_qr_s16bh),
25170 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25171 24,
25172 OPC_CheckChild3Integer, 2,
25173 OPC_RecordChild4,
25174 OPC_CheckChild4Type, MVT::v4i1,
25175 OPC_RecordChild5,
25176 OPC_CheckChild5Type, MVT::v4i32,
25177 OPC_CheckPatternPredicate0,
25178 OPC_EmitInteger32, 2,
25179 OPC_EmitRegisterI32, 0 ,
25180 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULL_qr_s16th),
25181 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25182 0,
25183 57,
25184 OPC_RecordChild2,
25185 OPC_CheckChild2Type, MVT::v8i16,
25186 OPC_CheckType, MVT::v4i32,
25187 OPC_Scope, 24,
25188 OPC_CheckChild3Integer, 0,
25189 OPC_RecordChild4,
25190 OPC_CheckChild4Type, MVT::v4i1,
25191 OPC_RecordChild5,
25192 OPC_CheckChild5Type, MVT::v4i32,
25193 OPC_CheckPatternPredicate0,
25194 OPC_EmitInteger32, 2,
25195 OPC_EmitRegisterI32, 0 ,
25196 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULLs16bh),
25197 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25198 24,
25199 OPC_CheckChild3Integer, 2,
25200 OPC_RecordChild4,
25201 OPC_CheckChild4Type, MVT::v4i1,
25202 OPC_RecordChild5,
25203 OPC_CheckChild5Type, MVT::v4i32,
25204 OPC_CheckPatternPredicate0,
25205 OPC_EmitInteger32, 2,
25206 OPC_EmitRegisterI32, 0 ,
25207 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULLs16th),
25208 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25209 0,
25210 0,
25211 126,
25212 OPC_CheckChild1Type, MVT::v4i32,
25213 OPC_Scope, 63,
25214 OPC_MoveChild2,
25215 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25216 OPC_RecordChild0,
25217 OPC_CheckChild0TypeI32,
25218 OPC_CheckType, MVT::v4i32,
25219 OPC_MoveParent,
25220 OPC_CheckType, MVT::v2i64,
25221 OPC_Scope, 24,
25222 OPC_CheckChild3Integer, 0,
25223 OPC_RecordChild4,
25224 OPC_CheckChild4Type, MVT::v2i1,
25225 OPC_RecordChild5,
25226 OPC_CheckChild5Type, MVT::v2i64,
25227 OPC_CheckPatternPredicate0,
25228 OPC_EmitInteger32, 2,
25229 OPC_EmitRegisterI32, 0 ,
25230 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULL_qr_s32bh),
25231 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
25232 24,
25233 OPC_CheckChild3Integer, 2,
25234 OPC_RecordChild4,
25235 OPC_CheckChild4Type, MVT::v2i1,
25236 OPC_RecordChild5,
25237 OPC_CheckChild5Type, MVT::v2i64,
25238 OPC_CheckPatternPredicate0,
25239 OPC_EmitInteger32, 2,
25240 OPC_EmitRegisterI32, 0 ,
25241 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULL_qr_s32th),
25242 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
25243 0,
25244 57,
25245 OPC_RecordChild2,
25246 OPC_CheckChild2Type, MVT::v4i32,
25247 OPC_CheckType, MVT::v2i64,
25248 OPC_Scope, 24,
25249 OPC_CheckChild3Integer, 0,
25250 OPC_RecordChild4,
25251 OPC_CheckChild4Type, MVT::v2i1,
25252 OPC_RecordChild5,
25253 OPC_CheckChild5Type, MVT::v2i64,
25254 OPC_CheckPatternPredicate0,
25255 OPC_EmitInteger32, 2,
25256 OPC_EmitRegisterI32, 0 ,
25257 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULLs32bh),
25258 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
25259 24,
25260 OPC_CheckChild3Integer, 2,
25261 OPC_RecordChild4,
25262 OPC_CheckChild4Type, MVT::v2i1,
25263 OPC_RecordChild5,
25264 OPC_CheckChild5Type, MVT::v2i64,
25265 OPC_CheckPatternPredicate0,
25266 OPC_EmitInteger32, 2,
25267 OPC_EmitRegisterI32, 0 ,
25268 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULLs32th),
25269 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
25270 0,
25271 0,
25272 0,
25273 114|128,3,
25274 OPC_CheckChild0Integer, 16|128,50,
25275 OPC_RecordChild1,
25276 OPC_Scope, 34|128,1,
25277 OPC_CheckChild1Type, MVT::v16i8,
25278 OPC_Scope, 101,
25279 OPC_MoveChild2,
25280 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25281 OPC_RecordChild0,
25282 OPC_CheckChild0TypeI32,
25283 OPC_CheckType, MVT::v16i8,
25284 OPC_MoveParent,
25285 OPC_CheckType, MVT::v16i8,
25286 OPC_Scope, 43,
25287 OPC_CheckChild3Integer, 0,
25288 OPC_RecordChild4,
25289 OPC_CheckChild4Type, MVT::v16i1,
25290 OPC_RecordChild5,
25291 OPC_CheckChild5Type, MVT::v16i8,
25292 OPC_Scope, 15,
25293 OPC_EmitInteger32, 2,
25294 OPC_EmitRegisterI32, 0 ,
25295 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s8),
25296 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25297 16,
25298 OPC_CheckPatternPredicate0,
25299 OPC_EmitInteger32, 2,
25300 OPC_EmitRegisterI32, 0 ,
25301 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s8),
25302 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25303 0,
25304 43,
25305 OPC_CheckChild3Integer, 2,
25306 OPC_RecordChild4,
25307 OPC_CheckChild4Type, MVT::v16i1,
25308 OPC_RecordChild5,
25309 OPC_CheckChild5Type, MVT::v16i8,
25310 OPC_Scope, 15,
25311 OPC_EmitInteger32, 2,
25312 OPC_EmitRegisterI32, 0 ,
25313 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u8),
25314 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25315 16,
25316 OPC_CheckPatternPredicate0,
25317 OPC_EmitInteger32, 2,
25318 OPC_EmitRegisterI32, 0 ,
25319 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u8),
25320 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25321 0,
25322 0,
25323 55,
25324 OPC_RecordChild2,
25325 OPC_CheckChild2Type, MVT::v16i8,
25326 OPC_CheckType, MVT::v16i8,
25327 OPC_Scope, 23,
25328 OPC_CheckChild3Integer, 0,
25329 OPC_RecordChild4,
25330 OPC_CheckChild4Type, MVT::v16i1,
25331 OPC_RecordChild5,
25332 OPC_CheckChild5Type, MVT::v16i8,
25333 OPC_EmitInteger32, 2,
25334 OPC_EmitRegisterI32, 0 ,
25335 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs8),
25336 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25337 23,
25338 OPC_CheckChild3Integer, 2,
25339 OPC_RecordChild4,
25340 OPC_CheckChild4Type, MVT::v16i1,
25341 OPC_RecordChild5,
25342 OPC_CheckChild5Type, MVT::v16i8,
25343 OPC_EmitInteger32, 2,
25344 OPC_EmitRegisterI32, 0 ,
25345 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu8),
25346 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25347 0,
25348 0,
25349 34|128,1,
25350 OPC_CheckChild1Type, MVT::v8i16,
25351 OPC_Scope, 101,
25352 OPC_MoveChild2,
25353 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25354 OPC_RecordChild0,
25355 OPC_CheckChild0TypeI32,
25356 OPC_CheckType, MVT::v8i16,
25357 OPC_MoveParent,
25358 OPC_CheckType, MVT::v8i16,
25359 OPC_Scope, 43,
25360 OPC_CheckChild3Integer, 0,
25361 OPC_RecordChild4,
25362 OPC_CheckChild4Type, MVT::v8i1,
25363 OPC_RecordChild5,
25364 OPC_CheckChild5Type, MVT::v8i16,
25365 OPC_Scope, 15,
25366 OPC_EmitInteger32, 2,
25367 OPC_EmitRegisterI32, 0 ,
25368 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s16),
25369 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25370 16,
25371 OPC_CheckPatternPredicate0,
25372 OPC_EmitInteger32, 2,
25373 OPC_EmitRegisterI32, 0 ,
25374 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s16),
25375 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25376 0,
25377 43,
25378 OPC_CheckChild3Integer, 2,
25379 OPC_RecordChild4,
25380 OPC_CheckChild4Type, MVT::v8i1,
25381 OPC_RecordChild5,
25382 OPC_CheckChild5Type, MVT::v8i16,
25383 OPC_Scope, 15,
25384 OPC_EmitInteger32, 2,
25385 OPC_EmitRegisterI32, 0 ,
25386 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u16),
25387 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25388 16,
25389 OPC_CheckPatternPredicate0,
25390 OPC_EmitInteger32, 2,
25391 OPC_EmitRegisterI32, 0 ,
25392 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u16),
25393 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25394 0,
25395 0,
25396 55,
25397 OPC_RecordChild2,
25398 OPC_CheckChild2Type, MVT::v8i16,
25399 OPC_CheckType, MVT::v8i16,
25400 OPC_Scope, 23,
25401 OPC_CheckChild3Integer, 0,
25402 OPC_RecordChild4,
25403 OPC_CheckChild4Type, MVT::v8i1,
25404 OPC_RecordChild5,
25405 OPC_CheckChild5Type, MVT::v8i16,
25406 OPC_EmitInteger32, 2,
25407 OPC_EmitRegisterI32, 0 ,
25408 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs16),
25409 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25410 23,
25411 OPC_CheckChild3Integer, 2,
25412 OPC_RecordChild4,
25413 OPC_CheckChild4Type, MVT::v8i1,
25414 OPC_RecordChild5,
25415 OPC_CheckChild5Type, MVT::v8i16,
25416 OPC_EmitInteger32, 2,
25417 OPC_EmitRegisterI32, 0 ,
25418 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu16),
25419 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25420 0,
25421 0,
25422 34|128,1,
25423 OPC_CheckChild1Type, MVT::v4i32,
25424 OPC_Scope, 101,
25425 OPC_MoveChild2,
25426 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25427 OPC_RecordChild0,
25428 OPC_CheckChild0TypeI32,
25429 OPC_CheckType, MVT::v4i32,
25430 OPC_MoveParent,
25431 OPC_CheckType, MVT::v4i32,
25432 OPC_Scope, 43,
25433 OPC_CheckChild3Integer, 0,
25434 OPC_RecordChild4,
25435 OPC_CheckChild4Type, MVT::v4i1,
25436 OPC_RecordChild5,
25437 OPC_CheckChild5Type, MVT::v4i32,
25438 OPC_Scope, 15,
25439 OPC_EmitInteger32, 2,
25440 OPC_EmitRegisterI32, 0 ,
25441 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s32),
25442 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25443 16,
25444 OPC_CheckPatternPredicate0,
25445 OPC_EmitInteger32, 2,
25446 OPC_EmitRegisterI32, 0 ,
25447 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s32),
25448 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25449 0,
25450 43,
25451 OPC_CheckChild3Integer, 2,
25452 OPC_RecordChild4,
25453 OPC_CheckChild4Type, MVT::v4i1,
25454 OPC_RecordChild5,
25455 OPC_CheckChild5Type, MVT::v4i32,
25456 OPC_Scope, 15,
25457 OPC_EmitInteger32, 2,
25458 OPC_EmitRegisterI32, 0 ,
25459 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u32),
25460 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25461 16,
25462 OPC_CheckPatternPredicate0,
25463 OPC_EmitInteger32, 2,
25464 OPC_EmitRegisterI32, 0 ,
25465 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u32),
25466 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25467 0,
25468 0,
25469 55,
25470 OPC_RecordChild2,
25471 OPC_CheckChild2Type, MVT::v4i32,
25472 OPC_CheckType, MVT::v4i32,
25473 OPC_Scope, 23,
25474 OPC_CheckChild3Integer, 0,
25475 OPC_RecordChild4,
25476 OPC_CheckChild4Type, MVT::v4i1,
25477 OPC_RecordChild5,
25478 OPC_CheckChild5Type, MVT::v4i32,
25479 OPC_EmitInteger32, 2,
25480 OPC_EmitRegisterI32, 0 ,
25481 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs32),
25482 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25483 23,
25484 OPC_CheckChild3Integer, 2,
25485 OPC_RecordChild4,
25486 OPC_CheckChild4Type, MVT::v4i1,
25487 OPC_RecordChild5,
25488 OPC_CheckChild5Type, MVT::v4i32,
25489 OPC_EmitInteger32, 2,
25490 OPC_EmitRegisterI32, 0 ,
25491 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu32),
25492 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25493 0,
25494 0,
25495 0,
25496 18|128,3,
25497 OPC_CheckChild0Integer, 70|128,51,
25498 OPC_RecordChild1,
25499 OPC_Scope, 2|128,1,
25500 OPC_CheckChild1Type, MVT::v16i8,
25501 OPC_Scope, 65,
25502 OPC_MoveChild2,
25503 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25504 OPC_RecordChild0,
25505 OPC_CheckChild0TypeI32,
25506 OPC_CheckType, MVT::v16i8,
25507 OPC_MoveParent,
25508 OPC_CheckType, MVT::v16i8,
25509 OPC_Scope, 25,
25510 OPC_CheckChild3Integer, 0,
25511 OPC_CheckPatternPredicate0,
25512 OPC_EmitInteger32, 0,
25513 OPC_EmitRegisterI32, 0 ,
25514 OPC_EmitRegisterI32, 0 ,
25515 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25516 MVT::v4i32, 0,
25517 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s8),
25518 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
25519 25,
25520 OPC_CheckChild3Integer, 2,
25521 OPC_CheckPatternPredicate0,
25522 OPC_EmitInteger32, 0,
25523 OPC_EmitRegisterI32, 0 ,
25524 OPC_EmitRegisterI32, 0 ,
25525 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25526 MVT::v4i32, 0,
25527 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u8),
25528 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
25529 0,
25530 59,
25531 OPC_RecordChild2,
25532 OPC_CheckChild2Type, MVT::v16i8,
25533 OPC_CheckType, MVT::v16i8,
25534 OPC_Scope, 25,
25535 OPC_CheckChild3Integer, 0,
25536 OPC_CheckPatternPredicate0,
25537 OPC_EmitInteger32, 0,
25538 OPC_EmitRegisterI32, 0 ,
25539 OPC_EmitRegisterI32, 0 ,
25540 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25541 MVT::v4i32, 0,
25542 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs8),
25543 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
25544 25,
25545 OPC_CheckChild3Integer, 2,
25546 OPC_CheckPatternPredicate0,
25547 OPC_EmitInteger32, 0,
25548 OPC_EmitRegisterI32, 0 ,
25549 OPC_EmitRegisterI32, 0 ,
25550 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25551 MVT::v4i32, 0,
25552 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu8),
25553 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
25554 0,
25555 0,
25556 2|128,1,
25557 OPC_CheckChild1Type, MVT::v8i16,
25558 OPC_Scope, 65,
25559 OPC_MoveChild2,
25560 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25561 OPC_RecordChild0,
25562 OPC_CheckChild0TypeI32,
25563 OPC_CheckType, MVT::v8i16,
25564 OPC_MoveParent,
25565 OPC_CheckType, MVT::v8i16,
25566 OPC_Scope, 25,
25567 OPC_CheckChild3Integer, 0,
25568 OPC_CheckPatternPredicate0,
25569 OPC_EmitInteger32, 0,
25570 OPC_EmitRegisterI32, 0 ,
25571 OPC_EmitRegisterI32, 0 ,
25572 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25573 MVT::v4i32, 0,
25574 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s16),
25575 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
25576 25,
25577 OPC_CheckChild3Integer, 2,
25578 OPC_CheckPatternPredicate0,
25579 OPC_EmitInteger32, 0,
25580 OPC_EmitRegisterI32, 0 ,
25581 OPC_EmitRegisterI32, 0 ,
25582 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25583 MVT::v4i32, 0,
25584 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u16),
25585 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
25586 0,
25587 59,
25588 OPC_RecordChild2,
25589 OPC_CheckChild2Type, MVT::v8i16,
25590 OPC_CheckType, MVT::v8i16,
25591 OPC_Scope, 25,
25592 OPC_CheckChild3Integer, 0,
25593 OPC_CheckPatternPredicate0,
25594 OPC_EmitInteger32, 0,
25595 OPC_EmitRegisterI32, 0 ,
25596 OPC_EmitRegisterI32, 0 ,
25597 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25598 MVT::v4i32, 0,
25599 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs16),
25600 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
25601 25,
25602 OPC_CheckChild3Integer, 2,
25603 OPC_CheckPatternPredicate0,
25604 OPC_EmitInteger32, 0,
25605 OPC_EmitRegisterI32, 0 ,
25606 OPC_EmitRegisterI32, 0 ,
25607 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25608 MVT::v4i32, 0,
25609 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu16),
25610 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
25611 0,
25612 0,
25613 2|128,1,
25614 OPC_CheckChild1Type, MVT::v4i32,
25615 OPC_Scope, 65,
25616 OPC_MoveChild2,
25617 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25618 OPC_RecordChild0,
25619 OPC_CheckChild0TypeI32,
25620 OPC_CheckType, MVT::v4i32,
25621 OPC_MoveParent,
25622 OPC_CheckType, MVT::v4i32,
25623 OPC_Scope, 25,
25624 OPC_CheckChild3Integer, 0,
25625 OPC_CheckPatternPredicate0,
25626 OPC_EmitInteger32, 0,
25627 OPC_EmitRegisterI32, 0 ,
25628 OPC_EmitRegisterI32, 0 ,
25629 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25630 MVT::v4i32, 0,
25631 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s32),
25632 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
25633 25,
25634 OPC_CheckChild3Integer, 2,
25635 OPC_CheckPatternPredicate0,
25636 OPC_EmitInteger32, 0,
25637 OPC_EmitRegisterI32, 0 ,
25638 OPC_EmitRegisterI32, 0 ,
25639 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25640 MVT::v4i32, 0,
25641 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u32),
25642 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
25643 0,
25644 59,
25645 OPC_RecordChild2,
25646 OPC_CheckChild2Type, MVT::v4i32,
25647 OPC_CheckType, MVT::v4i32,
25648 OPC_Scope, 25,
25649 OPC_CheckChild3Integer, 0,
25650 OPC_CheckPatternPredicate0,
25651 OPC_EmitInteger32, 0,
25652 OPC_EmitRegisterI32, 0 ,
25653 OPC_EmitRegisterI32, 0 ,
25654 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25655 MVT::v4i32, 0,
25656 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs32),
25657 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
25658 25,
25659 OPC_CheckChild3Integer, 2,
25660 OPC_CheckPatternPredicate0,
25661 OPC_EmitInteger32, 0,
25662 OPC_EmitRegisterI32, 0 ,
25663 OPC_EmitRegisterI32, 0 ,
25664 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25665 MVT::v4i32, 0,
25666 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu32),
25667 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
25668 0,
25669 0,
25670 0,
25671 120|128,3,
25672 OPC_CheckChild0Integer, 18|128,50,
25673 OPC_RecordChild1,
25674 OPC_Scope, 36|128,1,
25675 OPC_CheckChild1Type, MVT::v16i8,
25676 OPC_Scope, 101,
25677 OPC_MoveChild2,
25678 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25679 OPC_RecordChild0,
25680 OPC_CheckChild0TypeI32,
25681 OPC_CheckType, MVT::v16i8,
25682 OPC_MoveParent,
25683 OPC_CheckType, MVT::v16i8,
25684 OPC_Scope, 43,
25685 OPC_CheckChild3Integer, 0,
25686 OPC_RecordChild4,
25687 OPC_CheckChild4Type, MVT::v16i1,
25688 OPC_RecordChild5,
25689 OPC_CheckChild5Type, MVT::v16i8,
25690 OPC_Scope, 15,
25691 OPC_EmitInteger32, 2,
25692 OPC_EmitRegisterI32, 0 ,
25693 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s8),
25694 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25695 16,
25696 OPC_CheckPatternPredicate0,
25697 OPC_EmitInteger32, 2,
25698 OPC_EmitRegisterI32, 0 ,
25699 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s8),
25700 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25701 0,
25702 43,
25703 OPC_CheckChild3Integer, 2,
25704 OPC_RecordChild4,
25705 OPC_CheckChild4Type, MVT::v16i1,
25706 OPC_RecordChild5,
25707 OPC_CheckChild5Type, MVT::v16i8,
25708 OPC_Scope, 15,
25709 OPC_EmitInteger32, 2,
25710 OPC_EmitRegisterI32, 0 ,
25711 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u8),
25712 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25713 16,
25714 OPC_CheckPatternPredicate0,
25715 OPC_EmitInteger32, 2,
25716 OPC_EmitRegisterI32, 0 ,
25717 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u8),
25718 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25719 0,
25720 0,
25721 57,
25722 OPC_RecordChild2,
25723 OPC_CheckChild2Type, MVT::v16i8,
25724 OPC_CheckType, MVT::v16i8,
25725 OPC_Scope, 24,
25726 OPC_CheckChild3Integer, 0,
25727 OPC_RecordChild4,
25728 OPC_CheckChild4Type, MVT::v16i1,
25729 OPC_RecordChild5,
25730 OPC_CheckChild5Type, MVT::v16i8,
25731 OPC_CheckPatternPredicate0,
25732 OPC_EmitInteger32, 2,
25733 OPC_EmitRegisterI32, 0 ,
25734 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBs8),
25735 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25736 24,
25737 OPC_CheckChild3Integer, 2,
25738 OPC_RecordChild4,
25739 OPC_CheckChild4Type, MVT::v16i1,
25740 OPC_RecordChild5,
25741 OPC_CheckChild5Type, MVT::v16i8,
25742 OPC_CheckPatternPredicate0,
25743 OPC_EmitInteger32, 2,
25744 OPC_EmitRegisterI32, 0 ,
25745 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBu8),
25746 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
25747 0,
25748 0,
25749 36|128,1,
25750 OPC_CheckChild1Type, MVT::v8i16,
25751 OPC_Scope, 101,
25752 OPC_MoveChild2,
25753 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25754 OPC_RecordChild0,
25755 OPC_CheckChild0TypeI32,
25756 OPC_CheckType, MVT::v8i16,
25757 OPC_MoveParent,
25758 OPC_CheckType, MVT::v8i16,
25759 OPC_Scope, 43,
25760 OPC_CheckChild3Integer, 0,
25761 OPC_RecordChild4,
25762 OPC_CheckChild4Type, MVT::v8i1,
25763 OPC_RecordChild5,
25764 OPC_CheckChild5Type, MVT::v8i16,
25765 OPC_Scope, 15,
25766 OPC_EmitInteger32, 2,
25767 OPC_EmitRegisterI32, 0 ,
25768 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s16),
25769 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25770 16,
25771 OPC_CheckPatternPredicate0,
25772 OPC_EmitInteger32, 2,
25773 OPC_EmitRegisterI32, 0 ,
25774 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s16),
25775 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25776 0,
25777 43,
25778 OPC_CheckChild3Integer, 2,
25779 OPC_RecordChild4,
25780 OPC_CheckChild4Type, MVT::v8i1,
25781 OPC_RecordChild5,
25782 OPC_CheckChild5Type, MVT::v8i16,
25783 OPC_Scope, 15,
25784 OPC_EmitInteger32, 2,
25785 OPC_EmitRegisterI32, 0 ,
25786 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u16),
25787 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25788 16,
25789 OPC_CheckPatternPredicate0,
25790 OPC_EmitInteger32, 2,
25791 OPC_EmitRegisterI32, 0 ,
25792 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u16),
25793 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25794 0,
25795 0,
25796 57,
25797 OPC_RecordChild2,
25798 OPC_CheckChild2Type, MVT::v8i16,
25799 OPC_CheckType, MVT::v8i16,
25800 OPC_Scope, 24,
25801 OPC_CheckChild3Integer, 0,
25802 OPC_RecordChild4,
25803 OPC_CheckChild4Type, MVT::v8i1,
25804 OPC_RecordChild5,
25805 OPC_CheckChild5Type, MVT::v8i16,
25806 OPC_CheckPatternPredicate0,
25807 OPC_EmitInteger32, 2,
25808 OPC_EmitRegisterI32, 0 ,
25809 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBs16),
25810 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25811 24,
25812 OPC_CheckChild3Integer, 2,
25813 OPC_RecordChild4,
25814 OPC_CheckChild4Type, MVT::v8i1,
25815 OPC_RecordChild5,
25816 OPC_CheckChild5Type, MVT::v8i16,
25817 OPC_CheckPatternPredicate0,
25818 OPC_EmitInteger32, 2,
25819 OPC_EmitRegisterI32, 0 ,
25820 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBu16),
25821 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
25822 0,
25823 0,
25824 36|128,1,
25825 OPC_CheckChild1Type, MVT::v4i32,
25826 OPC_Scope, 101,
25827 OPC_MoveChild2,
25828 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25829 OPC_RecordChild0,
25830 OPC_CheckChild0TypeI32,
25831 OPC_CheckType, MVT::v4i32,
25832 OPC_MoveParent,
25833 OPC_CheckType, MVT::v4i32,
25834 OPC_Scope, 43,
25835 OPC_CheckChild3Integer, 0,
25836 OPC_RecordChild4,
25837 OPC_CheckChild4Type, MVT::v4i1,
25838 OPC_RecordChild5,
25839 OPC_CheckChild5Type, MVT::v4i32,
25840 OPC_Scope, 15,
25841 OPC_EmitInteger32, 2,
25842 OPC_EmitRegisterI32, 0 ,
25843 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s32),
25844 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25845 16,
25846 OPC_CheckPatternPredicate0,
25847 OPC_EmitInteger32, 2,
25848 OPC_EmitRegisterI32, 0 ,
25849 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s32),
25850 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25851 0,
25852 43,
25853 OPC_CheckChild3Integer, 2,
25854 OPC_RecordChild4,
25855 OPC_CheckChild4Type, MVT::v4i1,
25856 OPC_RecordChild5,
25857 OPC_CheckChild5Type, MVT::v4i32,
25858 OPC_Scope, 15,
25859 OPC_EmitInteger32, 2,
25860 OPC_EmitRegisterI32, 0 ,
25861 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u32),
25862 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25863 16,
25864 OPC_CheckPatternPredicate0,
25865 OPC_EmitInteger32, 2,
25866 OPC_EmitRegisterI32, 0 ,
25867 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u32),
25868 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25869 0,
25870 0,
25871 57,
25872 OPC_RecordChild2,
25873 OPC_CheckChild2Type, MVT::v4i32,
25874 OPC_CheckType, MVT::v4i32,
25875 OPC_Scope, 24,
25876 OPC_CheckChild3Integer, 0,
25877 OPC_RecordChild4,
25878 OPC_CheckChild4Type, MVT::v4i1,
25879 OPC_RecordChild5,
25880 OPC_CheckChild5Type, MVT::v4i32,
25881 OPC_CheckPatternPredicate0,
25882 OPC_EmitInteger32, 2,
25883 OPC_EmitRegisterI32, 0 ,
25884 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBs32),
25885 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25886 24,
25887 OPC_CheckChild3Integer, 2,
25888 OPC_RecordChild4,
25889 OPC_CheckChild4Type, MVT::v4i1,
25890 OPC_RecordChild5,
25891 OPC_CheckChild5Type, MVT::v4i32,
25892 OPC_CheckPatternPredicate0,
25893 OPC_EmitInteger32, 2,
25894 OPC_EmitRegisterI32, 0 ,
25895 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBu32),
25896 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
25897 0,
25898 0,
25899 0,
25900 18|128,3,
25901 OPC_CheckChild0Integer, 72|128,51,
25902 OPC_RecordChild1,
25903 OPC_Scope, 2|128,1,
25904 OPC_CheckChild1Type, MVT::v16i8,
25905 OPC_Scope, 65,
25906 OPC_MoveChild2,
25907 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25908 OPC_RecordChild0,
25909 OPC_CheckChild0TypeI32,
25910 OPC_CheckType, MVT::v16i8,
25911 OPC_MoveParent,
25912 OPC_CheckType, MVT::v16i8,
25913 OPC_Scope, 25,
25914 OPC_CheckChild3Integer, 0,
25915 OPC_CheckPatternPredicate0,
25916 OPC_EmitInteger32, 0,
25917 OPC_EmitRegisterI32, 0 ,
25918 OPC_EmitRegisterI32, 0 ,
25919 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25920 MVT::v4i32, 0,
25921 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s8),
25922 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
25923 25,
25924 OPC_CheckChild3Integer, 2,
25925 OPC_CheckPatternPredicate0,
25926 OPC_EmitInteger32, 0,
25927 OPC_EmitRegisterI32, 0 ,
25928 OPC_EmitRegisterI32, 0 ,
25929 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25930 MVT::v4i32, 0,
25931 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u8),
25932 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
25933 0,
25934 59,
25935 OPC_RecordChild2,
25936 OPC_CheckChild2Type, MVT::v16i8,
25937 OPC_CheckType, MVT::v16i8,
25938 OPC_Scope, 25,
25939 OPC_CheckChild3Integer, 0,
25940 OPC_CheckPatternPredicate0,
25941 OPC_EmitInteger32, 0,
25942 OPC_EmitRegisterI32, 0 ,
25943 OPC_EmitRegisterI32, 0 ,
25944 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25945 MVT::v4i32, 0,
25946 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBs8),
25947 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
25948 25,
25949 OPC_CheckChild3Integer, 2,
25950 OPC_CheckPatternPredicate0,
25951 OPC_EmitInteger32, 0,
25952 OPC_EmitRegisterI32, 0 ,
25953 OPC_EmitRegisterI32, 0 ,
25954 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25955 MVT::v4i32, 0,
25956 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBu8),
25957 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
25958 0,
25959 0,
25960 2|128,1,
25961 OPC_CheckChild1Type, MVT::v8i16,
25962 OPC_Scope, 65,
25963 OPC_MoveChild2,
25964 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
25965 OPC_RecordChild0,
25966 OPC_CheckChild0TypeI32,
25967 OPC_CheckType, MVT::v8i16,
25968 OPC_MoveParent,
25969 OPC_CheckType, MVT::v8i16,
25970 OPC_Scope, 25,
25971 OPC_CheckChild3Integer, 0,
25972 OPC_CheckPatternPredicate0,
25973 OPC_EmitInteger32, 0,
25974 OPC_EmitRegisterI32, 0 ,
25975 OPC_EmitRegisterI32, 0 ,
25976 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25977 MVT::v4i32, 0,
25978 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s16),
25979 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
25980 25,
25981 OPC_CheckChild3Integer, 2,
25982 OPC_CheckPatternPredicate0,
25983 OPC_EmitInteger32, 0,
25984 OPC_EmitRegisterI32, 0 ,
25985 OPC_EmitRegisterI32, 0 ,
25986 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
25987 MVT::v4i32, 0,
25988 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u16),
25989 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
25990 0,
25991 59,
25992 OPC_RecordChild2,
25993 OPC_CheckChild2Type, MVT::v8i16,
25994 OPC_CheckType, MVT::v8i16,
25995 OPC_Scope, 25,
25996 OPC_CheckChild3Integer, 0,
25997 OPC_CheckPatternPredicate0,
25998 OPC_EmitInteger32, 0,
25999 OPC_EmitRegisterI32, 0 ,
26000 OPC_EmitRegisterI32, 0 ,
26001 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
26002 MVT::v4i32, 0,
26003 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBs16),
26004 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
26005 25,
26006 OPC_CheckChild3Integer, 2,
26007 OPC_CheckPatternPredicate0,
26008 OPC_EmitInteger32, 0,
26009 OPC_EmitRegisterI32, 0 ,
26010 OPC_EmitRegisterI32, 0 ,
26011 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
26012 MVT::v4i32, 0,
26013 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBu16),
26014 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
26015 0,
26016 0,
26017 2|128,1,
26018 OPC_CheckChild1Type, MVT::v4i32,
26019 OPC_Scope, 65,
26020 OPC_MoveChild2,
26021 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
26022 OPC_RecordChild0,
26023 OPC_CheckChild0TypeI32,
26024 OPC_CheckType, MVT::v4i32,
26025 OPC_MoveParent,
26026 OPC_CheckType, MVT::v4i32,
26027 OPC_Scope, 25,
26028 OPC_CheckChild3Integer, 0,
26029 OPC_CheckPatternPredicate0,
26030 OPC_EmitInteger32, 0,
26031 OPC_EmitRegisterI32, 0 ,
26032 OPC_EmitRegisterI32, 0 ,
26033 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
26034 MVT::v4i32, 0,
26035 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s32),
26036 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
26037 25,
26038 OPC_CheckChild3Integer, 2,
26039 OPC_CheckPatternPredicate0,
26040 OPC_EmitInteger32, 0,
26041 OPC_EmitRegisterI32, 0 ,
26042 OPC_EmitRegisterI32, 0 ,
26043 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
26044 MVT::v4i32, 0,
26045 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u32),
26046 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
26047 0,
26048 59,
26049 OPC_RecordChild2,
26050 OPC_CheckChild2Type, MVT::v4i32,
26051 OPC_CheckType, MVT::v4i32,
26052 OPC_Scope, 25,
26053 OPC_CheckChild3Integer, 0,
26054 OPC_CheckPatternPredicate0,
26055 OPC_EmitInteger32, 0,
26056 OPC_EmitRegisterI32, 0 ,
26057 OPC_EmitRegisterI32, 0 ,
26058 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
26059 MVT::v4i32, 0,
26060 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBs32),
26061 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
26062 25,
26063 OPC_CheckChild3Integer, 2,
26064 OPC_CheckPatternPredicate0,
26065 OPC_EmitInteger32, 0,
26066 OPC_EmitRegisterI32, 0 ,
26067 OPC_EmitRegisterI32, 0 ,
26068 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
26069 MVT::v4i32, 0,
26070 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBu32),
26071 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
26072 0,
26073 0,
26074 0,
26075 68|128,4,
26076 OPC_CheckChild0Integer, 34|128,54,
26077 OPC_Scope, 23|128,1,
26078 OPC_RecordChild1,
26079 OPC_Scope, 36,
26080 OPC_CheckChild1Type, MVT::v4i16,
26081 OPC_MoveChild2,
26082 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26083 OPC_RecordChild0,
26084 OPC_CheckChild0Type, MVT::v4i16,
26085 OPC_RecordChild1,
26086 OPC_MoveChild1,
26087 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26088 OPC_MoveParent,
26089 OPC_CheckType, MVT::v4i16,
26090 OPC_MoveParent,
26091 OPC_CheckType, MVT::v4i16,
26092 OPC_CheckPatternPredicate1,
26093 OPC_EmitConvertToTarget2,
26094 OPC_EmitInteger32, 28,
26095 OPC_EmitRegisterI32, 0 ,
26096 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv4i16),
26097 MVT::v4i16, 5, 0, 1, 3, 4, 5,
26098 36,
26099 OPC_CheckChild1Type, MVT::v2i32,
26100 OPC_MoveChild2,
26101 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26102 OPC_RecordChild0,
26103 OPC_CheckChild0Type, MVT::v2i32,
26104 OPC_RecordChild1,
26105 OPC_MoveChild1,
26106 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26107 OPC_MoveParent,
26108 OPC_CheckType, MVT::v2i32,
26109 OPC_MoveParent,
26110 OPC_CheckType, MVT::v2i32,
26111 OPC_CheckPatternPredicate1,
26112 OPC_EmitConvertToTarget2,
26113 OPC_EmitInteger32, 28,
26114 OPC_EmitRegisterI32, 0 ,
26115 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv2i32),
26116 MVT::v2i32, 5, 0, 1, 3, 4, 5,
26117 36,
26118 OPC_CheckChild1Type, MVT::v8i16,
26119 OPC_MoveChild2,
26120 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26121 OPC_RecordChild0,
26122 OPC_CheckChild0Type, MVT::v4i16,
26123 OPC_RecordChild1,
26124 OPC_MoveChild1,
26125 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26126 OPC_MoveParent,
26127 OPC_CheckType, MVT::v8i16,
26128 OPC_MoveParent,
26129 OPC_CheckType, MVT::v8i16,
26130 OPC_CheckPatternPredicate1,
26131 OPC_EmitConvertToTarget2,
26132 OPC_EmitInteger32, 28,
26133 OPC_EmitRegisterI32, 0 ,
26134 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv8i16),
26135 MVT::v8i16, 5, 0, 1, 3, 4, 5,
26136 36,
26137 OPC_CheckChild1Type, MVT::v4i32,
26138 OPC_MoveChild2,
26139 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26140 OPC_RecordChild0,
26141 OPC_CheckChild0Type, MVT::v2i32,
26142 OPC_RecordChild1,
26143 OPC_MoveChild1,
26144 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26145 OPC_MoveParent,
26146 OPC_CheckType, MVT::v4i32,
26147 OPC_MoveParent,
26148 OPC_CheckType, MVT::v4i32,
26149 OPC_CheckPatternPredicate1,
26150 OPC_EmitConvertToTarget2,
26151 OPC_EmitInteger32, 28,
26152 OPC_EmitRegisterI32, 0 ,
26153 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv4i32),
26154 MVT::v4i32, 5, 0, 1, 3, 4, 5,
26155 0,
26156 125,
26157 OPC_MoveChild1,
26158 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26159 OPC_RecordChild0,
26160 OPC_Scope, 58,
26161 OPC_CheckChild0Type, MVT::v4i16,
26162 OPC_RecordChild1,
26163 OPC_MoveChild1,
26164 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26165 OPC_MoveParent,
26166 OPC_SwitchType , 22, MVT::v4i16,
26167 OPC_MoveParent,
26168 OPC_RecordChild2,
26169 OPC_CheckChild2Type, MVT::v4i16,
26170 OPC_CheckType, MVT::v4i16,
26171 OPC_CheckPatternPredicate1,
26172 OPC_EmitConvertToTarget1,
26173 OPC_EmitInteger32, 28,
26174 OPC_EmitRegisterI32, 0 ,
26175 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv4i16),
26176 MVT::v4i16, 5, 2, 0, 3, 4, 5,
26177 22, MVT::v8i16,
26178 OPC_MoveParent,
26179 OPC_RecordChild2,
26180 OPC_CheckChild2Type, MVT::v8i16,
26181 OPC_CheckType, MVT::v8i16,
26182 OPC_CheckPatternPredicate1,
26183 OPC_EmitConvertToTarget1,
26184 OPC_EmitInteger32, 28,
26185 OPC_EmitRegisterI32, 0 ,
26186 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv8i16),
26187 MVT::v8i16, 5, 2, 0, 3, 4, 5,
26188 0,
26189 58,
26190 OPC_CheckChild0Type, MVT::v2i32,
26191 OPC_RecordChild1,
26192 OPC_MoveChild1,
26193 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26194 OPC_MoveParent,
26195 OPC_SwitchType , 22, MVT::v2i32,
26196 OPC_MoveParent,
26197 OPC_RecordChild2,
26198 OPC_CheckChild2Type, MVT::v2i32,
26199 OPC_CheckType, MVT::v2i32,
26200 OPC_CheckPatternPredicate1,
26201 OPC_EmitConvertToTarget1,
26202 OPC_EmitInteger32, 28,
26203 OPC_EmitRegisterI32, 0 ,
26204 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv2i32),
26205 MVT::v2i32, 5, 2, 0, 3, 4, 5,
26206 22, MVT::v4i32,
26207 OPC_MoveParent,
26208 OPC_RecordChild2,
26209 OPC_CheckChild2Type, MVT::v4i32,
26210 OPC_CheckType, MVT::v4i32,
26211 OPC_CheckPatternPredicate1,
26212 OPC_EmitConvertToTarget1,
26213 OPC_EmitInteger32, 28,
26214 OPC_EmitRegisterI32, 0 ,
26215 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv4i32),
26216 MVT::v4i32, 5, 2, 0, 3, 4, 5,
26217 0,
26218 0,
26219 105,
26220 OPC_RecordChild1,
26221 OPC_Scope, 50,
26222 OPC_CheckChild1Type, MVT::v8i16,
26223 OPC_MoveChild2,
26224 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26225 OPC_RecordChild0,
26226 OPC_CheckChild0Type, MVT::v8i16,
26227 OPC_RecordChild1,
26228 OPC_MoveChild1,
26229 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26230 OPC_MoveParent,
26231 OPC_CheckType, MVT::v8i16,
26232 OPC_MoveParent,
26233 OPC_CheckType, MVT::v8i16,
26234 OPC_CheckPatternPredicate1,
26235 OPC_EmitConvertToTarget2,
26236 OPC_EmitNodeXForm, 5, 3,
26237 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
26238 MVT::v4i16, 2, 1, 4,
26239 OPC_EmitConvertToTarget2,
26240 OPC_EmitNodeXForm, 6, 6,
26241 OPC_EmitInteger32, 28,
26242 OPC_EmitRegisterI32, 0 ,
26243 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv8i16),
26244 MVT::v8i16, 5, 0, 5, 7, 8, 9,
26245 50,
26246 OPC_CheckChild1Type, MVT::v4i32,
26247 OPC_MoveChild2,
26248 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26249 OPC_RecordChild0,
26250 OPC_CheckChild0Type, MVT::v4i32,
26251 OPC_RecordChild1,
26252 OPC_MoveChild1,
26253 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26254 OPC_MoveParent,
26255 OPC_CheckType, MVT::v4i32,
26256 OPC_MoveParent,
26257 OPC_CheckType, MVT::v4i32,
26258 OPC_CheckPatternPredicate1,
26259 OPC_EmitConvertToTarget2,
26260 OPC_EmitNodeXForm, 7, 3,
26261 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
26262 MVT::v2i32, 2, 1, 4,
26263 OPC_EmitConvertToTarget2,
26264 OPC_EmitNodeXForm, 8, 6,
26265 OPC_EmitInteger32, 28,
26266 OPC_EmitRegisterI32, 0 ,
26267 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv4i32),
26268 MVT::v4i32, 5, 0, 5, 7, 8, 9,
26269 0,
26270 101,
26271 OPC_MoveChild1,
26272 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26273 OPC_RecordChild0,
26274 OPC_Scope, 46,
26275 OPC_CheckChild0Type, MVT::v8i16,
26276 OPC_RecordChild1,
26277 OPC_MoveChild1,
26278 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26279 OPC_MoveParent,
26280 OPC_CheckType, MVT::v8i16,
26281 OPC_MoveParent,
26282 OPC_RecordChild2,
26283 OPC_CheckChild2Type, MVT::v8i16,
26284 OPC_CheckType, MVT::v8i16,
26285 OPC_CheckPatternPredicate1,
26286 OPC_EmitConvertToTarget1,
26287 OPC_EmitNodeXForm, 5, 3,
26288 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
26289 MVT::v4i16, 2, 0, 4,
26290 OPC_EmitConvertToTarget1,
26291 OPC_EmitNodeXForm, 6, 6,
26292 OPC_EmitInteger32, 28,
26293 OPC_EmitRegisterI32, 0 ,
26294 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv8i16),
26295 MVT::v8i16, 5, 2, 5, 7, 8, 9,
26296 46,
26297 OPC_CheckChild0Type, MVT::v4i32,
26298 OPC_RecordChild1,
26299 OPC_MoveChild1,
26300 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26301 OPC_MoveParent,
26302 OPC_CheckType, MVT::v4i32,
26303 OPC_MoveParent,
26304 OPC_RecordChild2,
26305 OPC_CheckChild2Type, MVT::v4i32,
26306 OPC_CheckType, MVT::v4i32,
26307 OPC_CheckPatternPredicate1,
26308 OPC_EmitConvertToTarget1,
26309 OPC_EmitNodeXForm, 7, 3,
26310 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
26311 MVT::v2i32, 2, 0, 4,
26312 OPC_EmitConvertToTarget1,
26313 OPC_EmitNodeXForm, 8, 6,
26314 OPC_EmitInteger32, 28,
26315 OPC_EmitRegisterI32, 0 ,
26316 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHslv4i32),
26317 MVT::v4i32, 5, 2, 5, 7, 8, 9,
26318 0,
26319 87,
26320 OPC_RecordChild1,
26321 OPC_SwitchType , 19, MVT::v4i16,
26322 OPC_CheckChild1Type, MVT::v4i16,
26323 OPC_RecordChild2,
26324 OPC_CheckChild2Type, MVT::v4i16,
26325 OPC_CheckPatternPredicate1,
26326 OPC_EmitInteger32, 28,
26327 OPC_EmitRegisterI32, 0 ,
26328 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHv4i16),
26329 MVT::v4i16, 4, 0, 1, 2, 3,
26330 19, MVT::v2i32,
26331 OPC_CheckChild1Type, MVT::v2i32,
26332 OPC_RecordChild2,
26333 OPC_CheckChild2Type, MVT::v2i32,
26334 OPC_CheckPatternPredicate1,
26335 OPC_EmitInteger32, 28,
26336 OPC_EmitRegisterI32, 0 ,
26337 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHv2i32),
26338 MVT::v2i32, 4, 0, 1, 2, 3,
26339 19, MVT::v8i16,
26340 OPC_CheckChild1Type, MVT::v8i16,
26341 OPC_RecordChild2,
26342 OPC_CheckChild2Type, MVT::v8i16,
26343 OPC_CheckPatternPredicate1,
26344 OPC_EmitInteger32, 28,
26345 OPC_EmitRegisterI32, 0 ,
26346 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHv8i16),
26347 MVT::v8i16, 4, 0, 1, 2, 3,
26348 19, MVT::v4i32,
26349 OPC_CheckChild1Type, MVT::v4i32,
26350 OPC_RecordChild2,
26351 OPC_CheckChild2Type, MVT::v4i32,
26352 OPC_CheckPatternPredicate1,
26353 OPC_EmitInteger32, 28,
26354 OPC_EmitRegisterI32, 0 ,
26355 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULHv4i32),
26356 MVT::v4i32, 4, 0, 1, 2, 3,
26357 0,
26358 0,
26359 68|128,4,
26360 OPC_CheckChild0Integer, 50|128,54,
26361 OPC_Scope, 23|128,1,
26362 OPC_RecordChild1,
26363 OPC_Scope, 36,
26364 OPC_CheckChild1Type, MVT::v4i16,
26365 OPC_MoveChild2,
26366 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26367 OPC_RecordChild0,
26368 OPC_CheckChild0Type, MVT::v4i16,
26369 OPC_RecordChild1,
26370 OPC_MoveChild1,
26371 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26372 OPC_MoveParent,
26373 OPC_CheckType, MVT::v4i16,
26374 OPC_MoveParent,
26375 OPC_CheckType, MVT::v4i16,
26376 OPC_CheckPatternPredicate1,
26377 OPC_EmitConvertToTarget2,
26378 OPC_EmitInteger32, 28,
26379 OPC_EmitRegisterI32, 0 ,
26380 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv4i16),
26381 MVT::v4i16, 5, 0, 1, 3, 4, 5,
26382 36,
26383 OPC_CheckChild1Type, MVT::v2i32,
26384 OPC_MoveChild2,
26385 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26386 OPC_RecordChild0,
26387 OPC_CheckChild0Type, MVT::v2i32,
26388 OPC_RecordChild1,
26389 OPC_MoveChild1,
26390 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26391 OPC_MoveParent,
26392 OPC_CheckType, MVT::v2i32,
26393 OPC_MoveParent,
26394 OPC_CheckType, MVT::v2i32,
26395 OPC_CheckPatternPredicate1,
26396 OPC_EmitConvertToTarget2,
26397 OPC_EmitInteger32, 28,
26398 OPC_EmitRegisterI32, 0 ,
26399 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv2i32),
26400 MVT::v2i32, 5, 0, 1, 3, 4, 5,
26401 36,
26402 OPC_CheckChild1Type, MVT::v8i16,
26403 OPC_MoveChild2,
26404 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26405 OPC_RecordChild0,
26406 OPC_CheckChild0Type, MVT::v4i16,
26407 OPC_RecordChild1,
26408 OPC_MoveChild1,
26409 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26410 OPC_MoveParent,
26411 OPC_CheckType, MVT::v8i16,
26412 OPC_MoveParent,
26413 OPC_CheckType, MVT::v8i16,
26414 OPC_CheckPatternPredicate1,
26415 OPC_EmitConvertToTarget2,
26416 OPC_EmitInteger32, 28,
26417 OPC_EmitRegisterI32, 0 ,
26418 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv8i16),
26419 MVT::v8i16, 5, 0, 1, 3, 4, 5,
26420 36,
26421 OPC_CheckChild1Type, MVT::v4i32,
26422 OPC_MoveChild2,
26423 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26424 OPC_RecordChild0,
26425 OPC_CheckChild0Type, MVT::v2i32,
26426 OPC_RecordChild1,
26427 OPC_MoveChild1,
26428 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26429 OPC_MoveParent,
26430 OPC_CheckType, MVT::v4i32,
26431 OPC_MoveParent,
26432 OPC_CheckType, MVT::v4i32,
26433 OPC_CheckPatternPredicate1,
26434 OPC_EmitConvertToTarget2,
26435 OPC_EmitInteger32, 28,
26436 OPC_EmitRegisterI32, 0 ,
26437 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv4i32),
26438 MVT::v4i32, 5, 0, 1, 3, 4, 5,
26439 0,
26440 125,
26441 OPC_MoveChild1,
26442 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26443 OPC_RecordChild0,
26444 OPC_Scope, 58,
26445 OPC_CheckChild0Type, MVT::v4i16,
26446 OPC_RecordChild1,
26447 OPC_MoveChild1,
26448 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26449 OPC_MoveParent,
26450 OPC_SwitchType , 22, MVT::v4i16,
26451 OPC_MoveParent,
26452 OPC_RecordChild2,
26453 OPC_CheckChild2Type, MVT::v4i16,
26454 OPC_CheckType, MVT::v4i16,
26455 OPC_CheckPatternPredicate1,
26456 OPC_EmitConvertToTarget1,
26457 OPC_EmitInteger32, 28,
26458 OPC_EmitRegisterI32, 0 ,
26459 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv4i16),
26460 MVT::v4i16, 5, 2, 0, 3, 4, 5,
26461 22, MVT::v8i16,
26462 OPC_MoveParent,
26463 OPC_RecordChild2,
26464 OPC_CheckChild2Type, MVT::v8i16,
26465 OPC_CheckType, MVT::v8i16,
26466 OPC_CheckPatternPredicate1,
26467 OPC_EmitConvertToTarget1,
26468 OPC_EmitInteger32, 28,
26469 OPC_EmitRegisterI32, 0 ,
26470 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv8i16),
26471 MVT::v8i16, 5, 2, 0, 3, 4, 5,
26472 0,
26473 58,
26474 OPC_CheckChild0Type, MVT::v2i32,
26475 OPC_RecordChild1,
26476 OPC_MoveChild1,
26477 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26478 OPC_MoveParent,
26479 OPC_SwitchType , 22, MVT::v2i32,
26480 OPC_MoveParent,
26481 OPC_RecordChild2,
26482 OPC_CheckChild2Type, MVT::v2i32,
26483 OPC_CheckType, MVT::v2i32,
26484 OPC_CheckPatternPredicate1,
26485 OPC_EmitConvertToTarget1,
26486 OPC_EmitInteger32, 28,
26487 OPC_EmitRegisterI32, 0 ,
26488 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv2i32),
26489 MVT::v2i32, 5, 2, 0, 3, 4, 5,
26490 22, MVT::v4i32,
26491 OPC_MoveParent,
26492 OPC_RecordChild2,
26493 OPC_CheckChild2Type, MVT::v4i32,
26494 OPC_CheckType, MVT::v4i32,
26495 OPC_CheckPatternPredicate1,
26496 OPC_EmitConvertToTarget1,
26497 OPC_EmitInteger32, 28,
26498 OPC_EmitRegisterI32, 0 ,
26499 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv4i32),
26500 MVT::v4i32, 5, 2, 0, 3, 4, 5,
26501 0,
26502 0,
26503 105,
26504 OPC_RecordChild1,
26505 OPC_Scope, 50,
26506 OPC_CheckChild1Type, MVT::v8i16,
26507 OPC_MoveChild2,
26508 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26509 OPC_RecordChild0,
26510 OPC_CheckChild0Type, MVT::v8i16,
26511 OPC_RecordChild1,
26512 OPC_MoveChild1,
26513 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26514 OPC_MoveParent,
26515 OPC_CheckType, MVT::v8i16,
26516 OPC_MoveParent,
26517 OPC_CheckType, MVT::v8i16,
26518 OPC_CheckPatternPredicate1,
26519 OPC_EmitConvertToTarget2,
26520 OPC_EmitNodeXForm, 5, 3,
26521 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
26522 MVT::v4i16, 2, 1, 4,
26523 OPC_EmitConvertToTarget2,
26524 OPC_EmitNodeXForm, 6, 6,
26525 OPC_EmitInteger32, 28,
26526 OPC_EmitRegisterI32, 0 ,
26527 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv8i16),
26528 MVT::v8i16, 5, 0, 5, 7, 8, 9,
26529 50,
26530 OPC_CheckChild1Type, MVT::v4i32,
26531 OPC_MoveChild2,
26532 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26533 OPC_RecordChild0,
26534 OPC_CheckChild0Type, MVT::v4i32,
26535 OPC_RecordChild1,
26536 OPC_MoveChild1,
26537 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26538 OPC_MoveParent,
26539 OPC_CheckType, MVT::v4i32,
26540 OPC_MoveParent,
26541 OPC_CheckType, MVT::v4i32,
26542 OPC_CheckPatternPredicate1,
26543 OPC_EmitConvertToTarget2,
26544 OPC_EmitNodeXForm, 7, 3,
26545 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
26546 MVT::v2i32, 2, 1, 4,
26547 OPC_EmitConvertToTarget2,
26548 OPC_EmitNodeXForm, 8, 6,
26549 OPC_EmitInteger32, 28,
26550 OPC_EmitRegisterI32, 0 ,
26551 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv4i32),
26552 MVT::v4i32, 5, 0, 5, 7, 8, 9,
26553 0,
26554 101,
26555 OPC_MoveChild1,
26556 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26557 OPC_RecordChild0,
26558 OPC_Scope, 46,
26559 OPC_CheckChild0Type, MVT::v8i16,
26560 OPC_RecordChild1,
26561 OPC_MoveChild1,
26562 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26563 OPC_MoveParent,
26564 OPC_CheckType, MVT::v8i16,
26565 OPC_MoveParent,
26566 OPC_RecordChild2,
26567 OPC_CheckChild2Type, MVT::v8i16,
26568 OPC_CheckType, MVT::v8i16,
26569 OPC_CheckPatternPredicate1,
26570 OPC_EmitConvertToTarget1,
26571 OPC_EmitNodeXForm, 5, 3,
26572 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
26573 MVT::v4i16, 2, 0, 4,
26574 OPC_EmitConvertToTarget1,
26575 OPC_EmitNodeXForm, 6, 6,
26576 OPC_EmitInteger32, 28,
26577 OPC_EmitRegisterI32, 0 ,
26578 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv8i16),
26579 MVT::v8i16, 5, 2, 5, 7, 8, 9,
26580 46,
26581 OPC_CheckChild0Type, MVT::v4i32,
26582 OPC_RecordChild1,
26583 OPC_MoveChild1,
26584 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26585 OPC_MoveParent,
26586 OPC_CheckType, MVT::v4i32,
26587 OPC_MoveParent,
26588 OPC_RecordChild2,
26589 OPC_CheckChild2Type, MVT::v4i32,
26590 OPC_CheckType, MVT::v4i32,
26591 OPC_CheckPatternPredicate1,
26592 OPC_EmitConvertToTarget1,
26593 OPC_EmitNodeXForm, 7, 3,
26594 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
26595 MVT::v2i32, 2, 0, 4,
26596 OPC_EmitConvertToTarget1,
26597 OPC_EmitNodeXForm, 8, 6,
26598 OPC_EmitInteger32, 28,
26599 OPC_EmitRegisterI32, 0 ,
26600 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHslv4i32),
26601 MVT::v4i32, 5, 2, 5, 7, 8, 9,
26602 0,
26603 87,
26604 OPC_RecordChild1,
26605 OPC_SwitchType , 19, MVT::v4i16,
26606 OPC_CheckChild1Type, MVT::v4i16,
26607 OPC_RecordChild2,
26608 OPC_CheckChild2Type, MVT::v4i16,
26609 OPC_CheckPatternPredicate1,
26610 OPC_EmitInteger32, 28,
26611 OPC_EmitRegisterI32, 0 ,
26612 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHv4i16),
26613 MVT::v4i16, 4, 0, 1, 2, 3,
26614 19, MVT::v2i32,
26615 OPC_CheckChild1Type, MVT::v2i32,
26616 OPC_RecordChild2,
26617 OPC_CheckChild2Type, MVT::v2i32,
26618 OPC_CheckPatternPredicate1,
26619 OPC_EmitInteger32, 28,
26620 OPC_EmitRegisterI32, 0 ,
26621 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHv2i32),
26622 MVT::v2i32, 4, 0, 1, 2, 3,
26623 19, MVT::v8i16,
26624 OPC_CheckChild1Type, MVT::v8i16,
26625 OPC_RecordChild2,
26626 OPC_CheckChild2Type, MVT::v8i16,
26627 OPC_CheckPatternPredicate1,
26628 OPC_EmitInteger32, 28,
26629 OPC_EmitRegisterI32, 0 ,
26630 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHv8i16),
26631 MVT::v8i16, 4, 0, 1, 2, 3,
26632 19, MVT::v4i32,
26633 OPC_CheckChild1Type, MVT::v4i32,
26634 OPC_RecordChild2,
26635 OPC_CheckChild2Type, MVT::v4i32,
26636 OPC_CheckPatternPredicate1,
26637 OPC_EmitInteger32, 28,
26638 OPC_EmitRegisterI32, 0 ,
26639 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMULHv4i32),
26640 MVT::v4i32, 4, 0, 1, 2, 3,
26641 0,
26642 0,
26643 75|128,1,
26644 OPC_CheckChild0Integer, 36|128,54,
26645 OPC_Scope, 77,
26646 OPC_RecordChild1,
26647 OPC_Scope, 36,
26648 OPC_CheckChild1Type, MVT::v4i16,
26649 OPC_MoveChild2,
26650 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26651 OPC_RecordChild0,
26652 OPC_CheckChild0Type, MVT::v4i16,
26653 OPC_RecordChild1,
26654 OPC_MoveChild1,
26655 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26656 OPC_MoveParent,
26657 OPC_CheckType, MVT::v4i16,
26658 OPC_MoveParent,
26659 OPC_CheckType, MVT::v4i32,
26660 OPC_CheckPatternPredicate1,
26661 OPC_EmitConvertToTarget2,
26662 OPC_EmitInteger32, 28,
26663 OPC_EmitRegisterI32, 0 ,
26664 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULLslv4i16),
26665 MVT::v4i32, 5, 0, 1, 3, 4, 5,
26666 36,
26667 OPC_CheckChild1Type, MVT::v2i32,
26668 OPC_MoveChild2,
26669 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26670 OPC_RecordChild0,
26671 OPC_CheckChild0Type, MVT::v2i32,
26672 OPC_RecordChild1,
26673 OPC_MoveChild1,
26674 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26675 OPC_MoveParent,
26676 OPC_CheckType, MVT::v2i32,
26677 OPC_MoveParent,
26678 OPC_CheckType, MVT::v2i64,
26679 OPC_CheckPatternPredicate1,
26680 OPC_EmitConvertToTarget2,
26681 OPC_EmitInteger32, 28,
26682 OPC_EmitRegisterI32, 0 ,
26683 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULLslv2i32),
26684 MVT::v2i64, 5, 0, 1, 3, 4, 5,
26685 0,
26686 73,
26687 OPC_MoveChild1,
26688 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26689 OPC_RecordChild0,
26690 OPC_Scope, 32,
26691 OPC_CheckChild0Type, MVT::v4i16,
26692 OPC_RecordChild1,
26693 OPC_MoveChild1,
26694 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26695 OPC_MoveParent,
26696 OPC_CheckType, MVT::v4i16,
26697 OPC_MoveParent,
26698 OPC_RecordChild2,
26699 OPC_CheckChild2Type, MVT::v4i16,
26700 OPC_CheckType, MVT::v4i32,
26701 OPC_CheckPatternPredicate1,
26702 OPC_EmitConvertToTarget1,
26703 OPC_EmitInteger32, 28,
26704 OPC_EmitRegisterI32, 0 ,
26705 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULLslv4i16),
26706 MVT::v4i32, 5, 2, 0, 3, 4, 5,
26707 32,
26708 OPC_CheckChild0Type, MVT::v2i32,
26709 OPC_RecordChild1,
26710 OPC_MoveChild1,
26711 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26712 OPC_MoveParent,
26713 OPC_CheckType, MVT::v2i32,
26714 OPC_MoveParent,
26715 OPC_RecordChild2,
26716 OPC_CheckChild2Type, MVT::v2i32,
26717 OPC_CheckType, MVT::v2i64,
26718 OPC_CheckPatternPredicate1,
26719 OPC_EmitConvertToTarget1,
26720 OPC_EmitInteger32, 28,
26721 OPC_EmitRegisterI32, 0 ,
26722 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULLslv2i32),
26723 MVT::v2i64, 5, 2, 0, 3, 4, 5,
26724 0,
26725 45,
26726 OPC_RecordChild1,
26727 OPC_SwitchType , 19, MVT::v4i32,
26728 OPC_CheckChild1Type, MVT::v4i16,
26729 OPC_RecordChild2,
26730 OPC_CheckChild2Type, MVT::v4i16,
26731 OPC_CheckPatternPredicate1,
26732 OPC_EmitInteger32, 28,
26733 OPC_EmitRegisterI32, 0 ,
26734 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULLv4i32),
26735 MVT::v4i32, 4, 0, 1, 2, 3,
26736 19, MVT::v2i64,
26737 OPC_CheckChild1Type, MVT::v2i32,
26738 OPC_RecordChild2,
26739 OPC_CheckChild2Type, MVT::v2i32,
26740 OPC_CheckPatternPredicate1,
26741 OPC_EmitInteger32, 28,
26742 OPC_EmitRegisterI32, 0 ,
26743 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMULLv2i64),
26744 MVT::v2i64, 4, 0, 1, 2, 3,
26745 0,
26746 0,
26747 46|128,2,
26748 OPC_CheckChild0Integer, 46|128,54,
26749 OPC_RecordChild1,
26750 OPC_Scope, 66,
26751 OPC_CheckChild1Type, MVT::v4i16,
26752 OPC_RecordChild2,
26753 OPC_CheckChild2Type, MVT::v4i16,
26754 OPC_Scope, 36,
26755 OPC_MoveChild3,
26756 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26757 OPC_RecordChild0,
26758 OPC_CheckChild0Type, MVT::v4i16,
26759 OPC_RecordChild1,
26760 OPC_MoveChild1,
26761 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26762 OPC_MoveParent,
26763 OPC_CheckType, MVT::v4i16,
26764 OPC_MoveParent,
26765 OPC_CheckType, MVT::v4i16,
26766 OPC_CheckPatternPredicate, 30,
26767 OPC_EmitConvertToTarget3,
26768 OPC_EmitInteger32, 28,
26769 OPC_EmitRegisterI32, 0 ,
26770 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLAHslv4i16),
26771 MVT::v4i16, 6, 0, 1, 2, 4, 5, 6,
26772 21,
26773 OPC_RecordChild3,
26774 OPC_CheckChild3Type, MVT::v4i16,
26775 OPC_CheckType, MVT::v4i16,
26776 OPC_CheckPatternPredicate, 30,
26777 OPC_EmitInteger32, 28,
26778 OPC_EmitRegisterI32, 0 ,
26779 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLAHv4i16),
26780 MVT::v4i16, 5, 0, 1, 2, 3, 4,
26781 0,
26782 66,
26783 OPC_CheckChild1Type, MVT::v2i32,
26784 OPC_RecordChild2,
26785 OPC_CheckChild2Type, MVT::v2i32,
26786 OPC_Scope, 36,
26787 OPC_MoveChild3,
26788 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26789 OPC_RecordChild0,
26790 OPC_CheckChild0Type, MVT::v2i32,
26791 OPC_RecordChild1,
26792 OPC_MoveChild1,
26793 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26794 OPC_MoveParent,
26795 OPC_CheckType, MVT::v2i32,
26796 OPC_MoveParent,
26797 OPC_CheckType, MVT::v2i32,
26798 OPC_CheckPatternPredicate, 30,
26799 OPC_EmitConvertToTarget3,
26800 OPC_EmitInteger32, 28,
26801 OPC_EmitRegisterI32, 0 ,
26802 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLAHslv2i32),
26803 MVT::v2i32, 6, 0, 1, 2, 4, 5, 6,
26804 21,
26805 OPC_RecordChild3,
26806 OPC_CheckChild3Type, MVT::v2i32,
26807 OPC_CheckType, MVT::v2i32,
26808 OPC_CheckPatternPredicate, 30,
26809 OPC_EmitInteger32, 28,
26810 OPC_EmitRegisterI32, 0 ,
26811 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLAHv2i32),
26812 MVT::v2i32, 5, 0, 1, 2, 3, 4,
26813 0,
26814 80,
26815 OPC_CheckChild1Type, MVT::v8i16,
26816 OPC_RecordChild2,
26817 OPC_CheckChild2Type, MVT::v8i16,
26818 OPC_Scope, 50,
26819 OPC_MoveChild3,
26820 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26821 OPC_RecordChild0,
26822 OPC_CheckChild0Type, MVT::v8i16,
26823 OPC_RecordChild1,
26824 OPC_MoveChild1,
26825 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26826 OPC_MoveParent,
26827 OPC_CheckType, MVT::v8i16,
26828 OPC_MoveParent,
26829 OPC_CheckType, MVT::v8i16,
26830 OPC_CheckPatternPredicate, 30,
26831 OPC_EmitConvertToTarget3,
26832 OPC_EmitNodeXForm, 5, 4,
26833 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
26834 MVT::v4i16, 2, 2, 5,
26835 OPC_EmitConvertToTarget3,
26836 OPC_EmitNodeXForm, 6, 7,
26837 OPC_EmitInteger32, 28,
26838 OPC_EmitRegisterI32, 0 ,
26839 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLAHslv8i16),
26840 MVT::v8i16, 6, 0, 1, 6, 8, 9, 10,
26841 21,
26842 OPC_RecordChild3,
26843 OPC_CheckChild3Type, MVT::v8i16,
26844 OPC_CheckType, MVT::v8i16,
26845 OPC_CheckPatternPredicate, 30,
26846 OPC_EmitInteger32, 28,
26847 OPC_EmitRegisterI32, 0 ,
26848 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLAHv8i16),
26849 MVT::v8i16, 5, 0, 1, 2, 3, 4,
26850 0,
26851 80,
26852 OPC_CheckChild1Type, MVT::v4i32,
26853 OPC_RecordChild2,
26854 OPC_CheckChild2Type, MVT::v4i32,
26855 OPC_Scope, 50,
26856 OPC_MoveChild3,
26857 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26858 OPC_RecordChild0,
26859 OPC_CheckChild0Type, MVT::v4i32,
26860 OPC_RecordChild1,
26861 OPC_MoveChild1,
26862 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26863 OPC_MoveParent,
26864 OPC_CheckType, MVT::v4i32,
26865 OPC_MoveParent,
26866 OPC_CheckType, MVT::v4i32,
26867 OPC_CheckPatternPredicate, 30,
26868 OPC_EmitConvertToTarget3,
26869 OPC_EmitNodeXForm, 7, 4,
26870 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
26871 MVT::v2i32, 2, 2, 5,
26872 OPC_EmitConvertToTarget3,
26873 OPC_EmitNodeXForm, 8, 7,
26874 OPC_EmitInteger32, 28,
26875 OPC_EmitRegisterI32, 0 ,
26876 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLAHslv4i32),
26877 MVT::v4i32, 6, 0, 1, 6, 8, 9, 10,
26878 21,
26879 OPC_RecordChild3,
26880 OPC_CheckChild3Type, MVT::v4i32,
26881 OPC_CheckType, MVT::v4i32,
26882 OPC_CheckPatternPredicate, 30,
26883 OPC_EmitInteger32, 28,
26884 OPC_EmitRegisterI32, 0 ,
26885 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLAHv4i32),
26886 MVT::v4i32, 5, 0, 1, 2, 3, 4,
26887 0,
26888 0,
26889 46|128,2,
26890 OPC_CheckChild0Integer, 48|128,54,
26891 OPC_RecordChild1,
26892 OPC_Scope, 66,
26893 OPC_CheckChild1Type, MVT::v4i16,
26894 OPC_RecordChild2,
26895 OPC_CheckChild2Type, MVT::v4i16,
26896 OPC_Scope, 36,
26897 OPC_MoveChild3,
26898 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26899 OPC_RecordChild0,
26900 OPC_CheckChild0Type, MVT::v4i16,
26901 OPC_RecordChild1,
26902 OPC_MoveChild1,
26903 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26904 OPC_MoveParent,
26905 OPC_CheckType, MVT::v4i16,
26906 OPC_MoveParent,
26907 OPC_CheckType, MVT::v4i16,
26908 OPC_CheckPatternPredicate, 30,
26909 OPC_EmitConvertToTarget3,
26910 OPC_EmitInteger32, 28,
26911 OPC_EmitRegisterI32, 0 ,
26912 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLSHslv4i16),
26913 MVT::v4i16, 6, 0, 1, 2, 4, 5, 6,
26914 21,
26915 OPC_RecordChild3,
26916 OPC_CheckChild3Type, MVT::v4i16,
26917 OPC_CheckType, MVT::v4i16,
26918 OPC_CheckPatternPredicate, 30,
26919 OPC_EmitInteger32, 28,
26920 OPC_EmitRegisterI32, 0 ,
26921 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLSHv4i16),
26922 MVT::v4i16, 5, 0, 1, 2, 3, 4,
26923 0,
26924 66,
26925 OPC_CheckChild1Type, MVT::v2i32,
26926 OPC_RecordChild2,
26927 OPC_CheckChild2Type, MVT::v2i32,
26928 OPC_Scope, 36,
26929 OPC_MoveChild3,
26930 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26931 OPC_RecordChild0,
26932 OPC_CheckChild0Type, MVT::v2i32,
26933 OPC_RecordChild1,
26934 OPC_MoveChild1,
26935 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26936 OPC_MoveParent,
26937 OPC_CheckType, MVT::v2i32,
26938 OPC_MoveParent,
26939 OPC_CheckType, MVT::v2i32,
26940 OPC_CheckPatternPredicate, 30,
26941 OPC_EmitConvertToTarget3,
26942 OPC_EmitInteger32, 28,
26943 OPC_EmitRegisterI32, 0 ,
26944 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLSHslv2i32),
26945 MVT::v2i32, 6, 0, 1, 2, 4, 5, 6,
26946 21,
26947 OPC_RecordChild3,
26948 OPC_CheckChild3Type, MVT::v2i32,
26949 OPC_CheckType, MVT::v2i32,
26950 OPC_CheckPatternPredicate, 30,
26951 OPC_EmitInteger32, 28,
26952 OPC_EmitRegisterI32, 0 ,
26953 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLSHv2i32),
26954 MVT::v2i32, 5, 0, 1, 2, 3, 4,
26955 0,
26956 80,
26957 OPC_CheckChild1Type, MVT::v8i16,
26958 OPC_RecordChild2,
26959 OPC_CheckChild2Type, MVT::v8i16,
26960 OPC_Scope, 50,
26961 OPC_MoveChild3,
26962 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
26963 OPC_RecordChild0,
26964 OPC_CheckChild0Type, MVT::v8i16,
26965 OPC_RecordChild1,
26966 OPC_MoveChild1,
26967 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
26968 OPC_MoveParent,
26969 OPC_CheckType, MVT::v8i16,
26970 OPC_MoveParent,
26971 OPC_CheckType, MVT::v8i16,
26972 OPC_CheckPatternPredicate, 30,
26973 OPC_EmitConvertToTarget3,
26974 OPC_EmitNodeXForm, 5, 4,
26975 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
26976 MVT::v4i16, 2, 2, 5,
26977 OPC_EmitConvertToTarget3,
26978 OPC_EmitNodeXForm, 6, 7,
26979 OPC_EmitInteger32, 28,
26980 OPC_EmitRegisterI32, 0 ,
26981 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLSHslv8i16),
26982 MVT::v8i16, 6, 0, 1, 6, 8, 9, 10,
26983 21,
26984 OPC_RecordChild3,
26985 OPC_CheckChild3Type, MVT::v8i16,
26986 OPC_CheckType, MVT::v8i16,
26987 OPC_CheckPatternPredicate, 30,
26988 OPC_EmitInteger32, 28,
26989 OPC_EmitRegisterI32, 0 ,
26990 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLSHv8i16),
26991 MVT::v8i16, 5, 0, 1, 2, 3, 4,
26992 0,
26993 80,
26994 OPC_CheckChild1Type, MVT::v4i32,
26995 OPC_RecordChild2,
26996 OPC_CheckChild2Type, MVT::v4i32,
26997 OPC_Scope, 50,
26998 OPC_MoveChild3,
26999 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
27000 OPC_RecordChild0,
27001 OPC_CheckChild0Type, MVT::v4i32,
27002 OPC_RecordChild1,
27003 OPC_MoveChild1,
27004 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
27005 OPC_MoveParent,
27006 OPC_CheckType, MVT::v4i32,
27007 OPC_MoveParent,
27008 OPC_CheckType, MVT::v4i32,
27009 OPC_CheckPatternPredicate, 30,
27010 OPC_EmitConvertToTarget3,
27011 OPC_EmitNodeXForm, 7, 4,
27012 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
27013 MVT::v2i32, 2, 2, 5,
27014 OPC_EmitConvertToTarget3,
27015 OPC_EmitNodeXForm, 8, 7,
27016 OPC_EmitInteger32, 28,
27017 OPC_EmitRegisterI32, 0 ,
27018 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLSHslv4i32),
27019 MVT::v4i32, 6, 0, 1, 6, 8, 9, 10,
27020 21,
27021 OPC_RecordChild3,
27022 OPC_CheckChild3Type, MVT::v4i32,
27023 OPC_CheckType, MVT::v4i32,
27024 OPC_CheckPatternPredicate, 30,
27025 OPC_EmitInteger32, 28,
27026 OPC_EmitRegisterI32, 0 ,
27027 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRDMLSHv4i32),
27028 MVT::v4i32, 5, 0, 1, 2, 3, 4,
27029 0,
27030 0,
27031 39,
27032 OPC_CheckChild0Integer, 8|128,49,
27033 OPC_RecordChild1,
27034 OPC_MoveChild1,
27035 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27036 OPC_MoveSibling2,
27037 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27038 OPC_RecordNode,
27039 OPC_MoveParent,
27040 OPC_CheckPatternPredicate, 15,
27041 OPC_EmitConvertToTarget1,
27042 OPC_EmitInteger32, 0,
27043 OPC_EmitRegisterI32, 0 ,
27044 OPC_EmitRegisterI32, 0 ,
27045 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
27046 MVT::v4i32, 0,
27047 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1_vec),
27048 MVT::v16i8, 6, 0, 2, 3, 4, 5, 6,
27049 36,
27050 OPC_CheckChild0Integer, 12|128,49,
27051 OPC_RecordChild1,
27052 OPC_MoveChild1,
27053 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27054 OPC_MoveParent,
27055 OPC_RecordChild2,
27056 OPC_RecordChild3,
27057 OPC_MoveChild3,
27058 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27059 OPC_MoveParent,
27060 OPC_CheckPatternPredicate, 15,
27061 OPC_EmitConvertToTarget2,
27062 OPC_EmitInteger32, 0,
27063 OPC_EmitRegisterI32, 0 ,
27064 OPC_EmitRegisterI32, 0 ,
27065 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1A_vec),
27066 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
27067 42,
27068 OPC_CheckChild0Integer, 20|128,49,
27069 OPC_RecordChild1,
27070 OPC_MoveChild1,
27071 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27072 OPC_MoveParent,
27073 OPC_RecordChild2,
27074 OPC_RecordChild3,
27075 OPC_MoveChild3,
27076 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27077 OPC_MoveParent,
27078 OPC_CheckPatternPredicate, 15,
27079 OPC_EmitConvertToTarget2,
27080 OPC_EmitInteger32, 0,
27081 OPC_EmitRegisterI32, 0 ,
27082 OPC_EmitRegisterI32, 0 ,
27083 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
27084 MVT::v4i32, 0,
27085 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2_vec),
27086 MVT::v16i8, 7, 0, 1, 3, 4, 5, 6, 7,
27087 38,
27088 OPC_CheckChild0Integer, 24|128,49,
27089 OPC_RecordChild1,
27090 OPC_MoveChild1,
27091 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27092 OPC_MoveParent,
27093 OPC_RecordChild2,
27094 OPC_RecordChild3,
27095 OPC_RecordChild4,
27096 OPC_MoveChild4,
27097 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27098 OPC_MoveParent,
27099 OPC_CheckPatternPredicate, 15,
27100 OPC_EmitConvertToTarget3,
27101 OPC_EmitInteger32, 0,
27102 OPC_EmitRegisterI32, 0 ,
27103 OPC_EmitRegisterI32, 0 ,
27104 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2A_vec),
27105 MVT::v16i8, 7, 0, 1, 2, 4, 5, 6, 7,
27106 44,
27107 OPC_CheckChild0Integer, 32|128,49,
27108 OPC_RecordChild1,
27109 OPC_MoveChild1,
27110 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27111 OPC_MoveParent,
27112 OPC_RecordChild2,
27113 OPC_RecordChild3,
27114 OPC_RecordChild4,
27115 OPC_MoveChild4,
27116 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27117 OPC_MoveParent,
27118 OPC_CheckPatternPredicate, 15,
27119 OPC_EmitConvertToTarget3,
27120 OPC_EmitInteger32, 0,
27121 OPC_EmitRegisterI32, 0 ,
27122 OPC_EmitRegisterI32, 0 ,
27123 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
27124 MVT::v4i32, 0,
27125 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3_vec),
27126 MVT::v16i8, 8, 0, 1, 2, 4, 5, 6, 7, 8,
27127 40,
27128 OPC_CheckChild0Integer, 36|128,49,
27129 OPC_RecordChild1,
27130 OPC_MoveChild1,
27131 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27132 OPC_MoveParent,
27133 OPC_RecordChild2,
27134 OPC_RecordChild3,
27135 OPC_RecordChild4,
27136 OPC_RecordChild5,
27137 OPC_MoveChild5,
27138 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27139 OPC_MoveParent,
27140 OPC_CheckPatternPredicate, 15,
27141 OPC_EmitConvertToTarget4,
27142 OPC_EmitInteger32, 0,
27143 OPC_EmitRegisterI32, 0 ,
27144 OPC_EmitRegisterI32, 0 ,
27145 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3A_vec),
27146 MVT::v16i8, 8, 0, 1, 2, 3, 5, 6, 7, 8,
27147 76|128,1,
27148 OPC_CheckChild0Integer, 10|128,49,
27149 OPC_RecordChild1,
27150 OPC_MoveChild1,
27151 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27152 OPC_MoveParent,
27153 OPC_RecordChild2,
27154 OPC_Scope, 31,
27155 OPC_CheckChild2Type, MVT::v16i8,
27156 OPC_RecordChild3,
27157 OPC_MoveChild3,
27158 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27159 OPC_MoveParent,
27160 OPC_RecordChild4,
27161 OPC_CheckChild4Type, MVT::v16i1,
27162 OPC_CheckType, MVT::v16i8,
27163 OPC_CheckPatternPredicate, 15,
27164 OPC_EmitConvertToTarget2,
27165 OPC_EmitInteger32, 2,
27166 OPC_EmitRegisterI32, 0 ,
27167 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1_vec),
27168 MVT::v16i8, 6, 0, 4, 5, 3, 6, 1,
27169 31,
27170 OPC_CheckChild2Type, MVT::v8i16,
27171 OPC_RecordChild3,
27172 OPC_MoveChild3,
27173 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27174 OPC_MoveParent,
27175 OPC_RecordChild4,
27176 OPC_CheckChild4Type, MVT::v8i1,
27177 OPC_CheckType, MVT::v8i16,
27178 OPC_CheckPatternPredicate, 15,
27179 OPC_EmitConvertToTarget2,
27180 OPC_EmitInteger32, 2,
27181 OPC_EmitRegisterI32, 0 ,
27182 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1_vec),
27183 MVT::v8i16, 6, 0, 4, 5, 3, 6, 1,
27184 31,
27185 OPC_CheckChild2Type, MVT::v4i32,
27186 OPC_RecordChild3,
27187 OPC_MoveChild3,
27188 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27189 OPC_MoveParent,
27190 OPC_RecordChild4,
27191 OPC_CheckChild4Type, MVT::v4i1,
27192 OPC_CheckType, MVT::v4i32,
27193 OPC_CheckPatternPredicate, 15,
27194 OPC_EmitConvertToTarget2,
27195 OPC_EmitInteger32, 2,
27196 OPC_EmitRegisterI32, 0 ,
27197 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1_vec),
27198 MVT::v4i32, 6, 0, 4, 5, 3, 6, 1,
27199 31,
27200 OPC_CheckChild2Type, MVT::v2i64,
27201 OPC_RecordChild3,
27202 OPC_MoveChild3,
27203 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27204 OPC_MoveParent,
27205 OPC_RecordChild4,
27206 OPC_CheckChild4Type, MVT::v2i1,
27207 OPC_CheckType, MVT::v2i64,
27208 OPC_CheckPatternPredicate, 15,
27209 OPC_EmitConvertToTarget2,
27210 OPC_EmitInteger32, 2,
27211 OPC_EmitRegisterI32, 0 ,
27212 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1_vec),
27213 MVT::v2i64, 6, 0, 4, 5, 3, 6, 1,
27214 31,
27215 OPC_CheckChild2Type, MVT::v8f16,
27216 OPC_RecordChild3,
27217 OPC_MoveChild3,
27218 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27219 OPC_MoveParent,
27220 OPC_RecordChild4,
27221 OPC_CheckChild4Type, MVT::v8i1,
27222 OPC_CheckType, MVT::v8f16,
27223 OPC_CheckPatternPredicate, 34,
27224 OPC_EmitConvertToTarget2,
27225 OPC_EmitInteger32, 2,
27226 OPC_EmitRegisterI32, 0 ,
27227 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1_vec),
27228 MVT::v8f16, 6, 0, 4, 5, 3, 6, 1,
27229 31,
27230 OPC_CheckChild2Type, MVT::v4f32,
27231 OPC_RecordChild3,
27232 OPC_MoveChild3,
27233 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27234 OPC_MoveParent,
27235 OPC_RecordChild4,
27236 OPC_CheckChild4Type, MVT::v4i1,
27237 OPC_CheckType, MVT::v4f32,
27238 OPC_CheckPatternPredicate, 34,
27239 OPC_EmitConvertToTarget2,
27240 OPC_EmitInteger32, 2,
27241 OPC_EmitRegisterI32, 0 ,
27242 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1_vec),
27243 MVT::v4f32, 6, 0, 4, 5, 3, 6, 1,
27244 0,
27245 76|128,1,
27246 OPC_CheckChild0Integer, 14|128,49,
27247 OPC_RecordChild1,
27248 OPC_MoveChild1,
27249 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27250 OPC_MoveParent,
27251 OPC_RecordChild2,
27252 OPC_Scope, 31,
27253 OPC_CheckChild2Type, MVT::v16i8,
27254 OPC_RecordChild3,
27255 OPC_MoveChild3,
27256 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27257 OPC_MoveParent,
27258 OPC_RecordChild4,
27259 OPC_CheckChild4Type, MVT::v16i1,
27260 OPC_CheckType, MVT::v16i8,
27261 OPC_CheckPatternPredicate, 15,
27262 OPC_EmitConvertToTarget2,
27263 OPC_EmitInteger32, 2,
27264 OPC_EmitRegisterI32, 0 ,
27265 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1A_vec),
27266 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
27267 31,
27268 OPC_CheckChild2Type, MVT::v8i16,
27269 OPC_RecordChild3,
27270 OPC_MoveChild3,
27271 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27272 OPC_MoveParent,
27273 OPC_RecordChild4,
27274 OPC_CheckChild4Type, MVT::v8i1,
27275 OPC_CheckType, MVT::v8i16,
27276 OPC_CheckPatternPredicate, 15,
27277 OPC_EmitConvertToTarget2,
27278 OPC_EmitInteger32, 2,
27279 OPC_EmitRegisterI32, 0 ,
27280 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1A_vec),
27281 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
27282 31,
27283 OPC_CheckChild2Type, MVT::v4i32,
27284 OPC_RecordChild3,
27285 OPC_MoveChild3,
27286 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27287 OPC_MoveParent,
27288 OPC_RecordChild4,
27289 OPC_CheckChild4Type, MVT::v4i1,
27290 OPC_CheckType, MVT::v4i32,
27291 OPC_CheckPatternPredicate, 15,
27292 OPC_EmitConvertToTarget2,
27293 OPC_EmitInteger32, 2,
27294 OPC_EmitRegisterI32, 0 ,
27295 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1A_vec),
27296 MVT::v4i32, 6, 0, 1, 4, 5, 3, 6,
27297 31,
27298 OPC_CheckChild2Type, MVT::v2i64,
27299 OPC_RecordChild3,
27300 OPC_MoveChild3,
27301 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27302 OPC_MoveParent,
27303 OPC_RecordChild4,
27304 OPC_CheckChild4Type, MVT::v2i1,
27305 OPC_CheckType, MVT::v2i64,
27306 OPC_CheckPatternPredicate, 15,
27307 OPC_EmitConvertToTarget2,
27308 OPC_EmitInteger32, 2,
27309 OPC_EmitRegisterI32, 0 ,
27310 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1A_vec),
27311 MVT::v2i64, 6, 0, 1, 4, 5, 3, 6,
27312 31,
27313 OPC_CheckChild2Type, MVT::v8f16,
27314 OPC_RecordChild3,
27315 OPC_MoveChild3,
27316 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27317 OPC_MoveParent,
27318 OPC_RecordChild4,
27319 OPC_CheckChild4Type, MVT::v8i1,
27320 OPC_CheckType, MVT::v8f16,
27321 OPC_CheckPatternPredicate, 34,
27322 OPC_EmitConvertToTarget2,
27323 OPC_EmitInteger32, 2,
27324 OPC_EmitRegisterI32, 0 ,
27325 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1A_vec),
27326 MVT::v8f16, 6, 0, 1, 4, 5, 3, 6,
27327 31,
27328 OPC_CheckChild2Type, MVT::v4f32,
27329 OPC_RecordChild3,
27330 OPC_MoveChild3,
27331 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27332 OPC_MoveParent,
27333 OPC_RecordChild4,
27334 OPC_CheckChild4Type, MVT::v4i1,
27335 OPC_CheckType, MVT::v4f32,
27336 OPC_CheckPatternPredicate, 34,
27337 OPC_EmitConvertToTarget2,
27338 OPC_EmitInteger32, 2,
27339 OPC_EmitRegisterI32, 0 ,
27340 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX1A_vec),
27341 MVT::v4f32, 6, 0, 1, 4, 5, 3, 6,
27342 0,
27343 88|128,1,
27344 OPC_CheckChild0Integer, 22|128,49,
27345 OPC_RecordChild1,
27346 OPC_MoveChild1,
27347 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27348 OPC_MoveParent,
27349 OPC_RecordChild2,
27350 OPC_Scope, 33,
27351 OPC_CheckChild2Type, MVT::v16i8,
27352 OPC_RecordChild3,
27353 OPC_RecordChild4,
27354 OPC_MoveChild4,
27355 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27356 OPC_MoveParent,
27357 OPC_RecordChild5,
27358 OPC_CheckChild5Type, MVT::v16i1,
27359 OPC_CheckType, MVT::v16i8,
27360 OPC_CheckPatternPredicate, 15,
27361 OPC_EmitConvertToTarget3,
27362 OPC_EmitInteger32, 2,
27363 OPC_EmitRegisterI32, 0 ,
27364 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2_vec),
27365 MVT::v16i8, 7, 0, 2, 5, 6, 4, 7, 1,
27366 33,
27367 OPC_CheckChild2Type, MVT::v8i16,
27368 OPC_RecordChild3,
27369 OPC_RecordChild4,
27370 OPC_MoveChild4,
27371 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27372 OPC_MoveParent,
27373 OPC_RecordChild5,
27374 OPC_CheckChild5Type, MVT::v8i1,
27375 OPC_CheckType, MVT::v8i16,
27376 OPC_CheckPatternPredicate, 15,
27377 OPC_EmitConvertToTarget3,
27378 OPC_EmitInteger32, 2,
27379 OPC_EmitRegisterI32, 0 ,
27380 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2_vec),
27381 MVT::v8i16, 7, 0, 2, 5, 6, 4, 7, 1,
27382 33,
27383 OPC_CheckChild2Type, MVT::v4i32,
27384 OPC_RecordChild3,
27385 OPC_RecordChild4,
27386 OPC_MoveChild4,
27387 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27388 OPC_MoveParent,
27389 OPC_RecordChild5,
27390 OPC_CheckChild5Type, MVT::v4i1,
27391 OPC_CheckType, MVT::v4i32,
27392 OPC_CheckPatternPredicate, 15,
27393 OPC_EmitConvertToTarget3,
27394 OPC_EmitInteger32, 2,
27395 OPC_EmitRegisterI32, 0 ,
27396 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2_vec),
27397 MVT::v4i32, 7, 0, 2, 5, 6, 4, 7, 1,
27398 33,
27399 OPC_CheckChild2Type, MVT::v2i64,
27400 OPC_RecordChild3,
27401 OPC_RecordChild4,
27402 OPC_MoveChild4,
27403 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27404 OPC_MoveParent,
27405 OPC_RecordChild5,
27406 OPC_CheckChild5Type, MVT::v2i1,
27407 OPC_CheckType, MVT::v2i64,
27408 OPC_CheckPatternPredicate, 15,
27409 OPC_EmitConvertToTarget3,
27410 OPC_EmitInteger32, 2,
27411 OPC_EmitRegisterI32, 0 ,
27412 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2_vec),
27413 MVT::v2i64, 7, 0, 2, 5, 6, 4, 7, 1,
27414 33,
27415 OPC_CheckChild2Type, MVT::v8f16,
27416 OPC_RecordChild3,
27417 OPC_RecordChild4,
27418 OPC_MoveChild4,
27419 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27420 OPC_MoveParent,
27421 OPC_RecordChild5,
27422 OPC_CheckChild5Type, MVT::v8i1,
27423 OPC_CheckType, MVT::v8f16,
27424 OPC_CheckPatternPredicate, 34,
27425 OPC_EmitConvertToTarget3,
27426 OPC_EmitInteger32, 2,
27427 OPC_EmitRegisterI32, 0 ,
27428 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2_vec),
27429 MVT::v8f16, 7, 0, 2, 5, 6, 4, 7, 1,
27430 33,
27431 OPC_CheckChild2Type, MVT::v4f32,
27432 OPC_RecordChild3,
27433 OPC_RecordChild4,
27434 OPC_MoveChild4,
27435 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27436 OPC_MoveParent,
27437 OPC_RecordChild5,
27438 OPC_CheckChild5Type, MVT::v4i1,
27439 OPC_CheckType, MVT::v4f32,
27440 OPC_CheckPatternPredicate, 34,
27441 OPC_EmitConvertToTarget3,
27442 OPC_EmitInteger32, 2,
27443 OPC_EmitRegisterI32, 0 ,
27444 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2_vec),
27445 MVT::v4f32, 7, 0, 2, 5, 6, 4, 7, 1,
27446 0,
27447 82|128,1,
27448 OPC_CheckChild0Integer, 26|128,49,
27449 OPC_RecordChild1,
27450 OPC_MoveChild1,
27451 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27452 OPC_MoveParent,
27453 OPC_RecordChild2,
27454 OPC_Scope, 32,
27455 OPC_CheckChild2Type, MVT::v16i8,
27456 OPC_RecordChild3,
27457 OPC_RecordChild4,
27458 OPC_MoveChild4,
27459 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27460 OPC_MoveParent,
27461 OPC_RecordChild5,
27462 OPC_CheckChild5Type, MVT::v16i1,
27463 OPC_CheckType, MVT::v16i8,
27464 OPC_CheckPatternPredicate, 15,
27465 OPC_EmitInteger32, 2,
27466 OPC_EmitRegisterI32, 0 ,
27467 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2A_vec),
27468 MVT::v16i8, 7, 0, 1, 2, 3, 5, 4, 6,
27469 32,
27470 OPC_CheckChild2Type, MVT::v8i16,
27471 OPC_RecordChild3,
27472 OPC_RecordChild4,
27473 OPC_MoveChild4,
27474 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27475 OPC_MoveParent,
27476 OPC_RecordChild5,
27477 OPC_CheckChild5Type, MVT::v8i1,
27478 OPC_CheckType, MVT::v8i16,
27479 OPC_CheckPatternPredicate, 15,
27480 OPC_EmitInteger32, 2,
27481 OPC_EmitRegisterI32, 0 ,
27482 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2A_vec),
27483 MVT::v8i16, 7, 0, 1, 2, 3, 5, 4, 6,
27484 32,
27485 OPC_CheckChild2Type, MVT::v4i32,
27486 OPC_RecordChild3,
27487 OPC_RecordChild4,
27488 OPC_MoveChild4,
27489 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27490 OPC_MoveParent,
27491 OPC_RecordChild5,
27492 OPC_CheckChild5Type, MVT::v4i1,
27493 OPC_CheckType, MVT::v4i32,
27494 OPC_CheckPatternPredicate, 15,
27495 OPC_EmitInteger32, 2,
27496 OPC_EmitRegisterI32, 0 ,
27497 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2A_vec),
27498 MVT::v4i32, 7, 0, 1, 2, 3, 5, 4, 6,
27499 32,
27500 OPC_CheckChild2Type, MVT::v2i64,
27501 OPC_RecordChild3,
27502 OPC_RecordChild4,
27503 OPC_MoveChild4,
27504 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27505 OPC_MoveParent,
27506 OPC_RecordChild5,
27507 OPC_CheckChild5Type, MVT::v2i1,
27508 OPC_CheckType, MVT::v2i64,
27509 OPC_CheckPatternPredicate, 15,
27510 OPC_EmitInteger32, 2,
27511 OPC_EmitRegisterI32, 0 ,
27512 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2A_vec),
27513 MVT::v2i64, 7, 0, 1, 2, 3, 5, 4, 6,
27514 32,
27515 OPC_CheckChild2Type, MVT::v8f16,
27516 OPC_RecordChild3,
27517 OPC_RecordChild4,
27518 OPC_MoveChild4,
27519 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27520 OPC_MoveParent,
27521 OPC_RecordChild5,
27522 OPC_CheckChild5Type, MVT::v8i1,
27523 OPC_CheckType, MVT::v8f16,
27524 OPC_CheckPatternPredicate, 34,
27525 OPC_EmitInteger32, 2,
27526 OPC_EmitRegisterI32, 0 ,
27527 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2A_vec),
27528 MVT::v8f16, 7, 0, 1, 2, 3, 5, 4, 6,
27529 32,
27530 OPC_CheckChild2Type, MVT::v4f32,
27531 OPC_RecordChild3,
27532 OPC_RecordChild4,
27533 OPC_MoveChild4,
27534 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27535 OPC_MoveParent,
27536 OPC_RecordChild5,
27537 OPC_CheckChild5Type, MVT::v4i1,
27538 OPC_CheckType, MVT::v4f32,
27539 OPC_CheckPatternPredicate, 34,
27540 OPC_EmitInteger32, 2,
27541 OPC_EmitRegisterI32, 0 ,
27542 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX2A_vec),
27543 MVT::v4f32, 7, 0, 1, 2, 3, 5, 4, 6,
27544 0,
27545 100|128,1,
27546 OPC_CheckChild0Integer, 34|128,49,
27547 OPC_RecordChild1,
27548 OPC_MoveChild1,
27549 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27550 OPC_MoveParent,
27551 OPC_RecordChild2,
27552 OPC_Scope, 35,
27553 OPC_CheckChild2Type, MVT::v16i8,
27554 OPC_RecordChild3,
27555 OPC_RecordChild4,
27556 OPC_RecordChild5,
27557 OPC_MoveChild5,
27558 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27559 OPC_MoveParent,
27560 OPC_RecordChild6,
27561 OPC_CheckChild6Type, MVT::v16i1,
27562 OPC_CheckType, MVT::v16i8,
27563 OPC_CheckPatternPredicate, 15,
27564 OPC_EmitConvertToTarget4,
27565 OPC_EmitInteger32, 2,
27566 OPC_EmitRegisterI32, 0 ,
27567 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3_vec),
27568 MVT::v16i8, 8, 0, 2, 3, 6, 7, 5, 8, 1,
27569 35,
27570 OPC_CheckChild2Type, MVT::v8i16,
27571 OPC_RecordChild3,
27572 OPC_RecordChild4,
27573 OPC_RecordChild5,
27574 OPC_MoveChild5,
27575 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27576 OPC_MoveParent,
27577 OPC_RecordChild6,
27578 OPC_CheckChild6Type, MVT::v8i1,
27579 OPC_CheckType, MVT::v8i16,
27580 OPC_CheckPatternPredicate, 15,
27581 OPC_EmitConvertToTarget4,
27582 OPC_EmitInteger32, 2,
27583 OPC_EmitRegisterI32, 0 ,
27584 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3_vec),
27585 MVT::v8i16, 8, 0, 2, 3, 6, 7, 5, 8, 1,
27586 35,
27587 OPC_CheckChild2Type, MVT::v4i32,
27588 OPC_RecordChild3,
27589 OPC_RecordChild4,
27590 OPC_RecordChild5,
27591 OPC_MoveChild5,
27592 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27593 OPC_MoveParent,
27594 OPC_RecordChild6,
27595 OPC_CheckChild6Type, MVT::v4i1,
27596 OPC_CheckType, MVT::v4i32,
27597 OPC_CheckPatternPredicate, 15,
27598 OPC_EmitConvertToTarget4,
27599 OPC_EmitInteger32, 2,
27600 OPC_EmitRegisterI32, 0 ,
27601 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3_vec),
27602 MVT::v4i32, 8, 0, 2, 3, 6, 7, 5, 8, 1,
27603 35,
27604 OPC_CheckChild2Type, MVT::v2i64,
27605 OPC_RecordChild3,
27606 OPC_RecordChild4,
27607 OPC_RecordChild5,
27608 OPC_MoveChild5,
27609 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27610 OPC_MoveParent,
27611 OPC_RecordChild6,
27612 OPC_CheckChild6Type, MVT::v2i1,
27613 OPC_CheckType, MVT::v2i64,
27614 OPC_CheckPatternPredicate, 15,
27615 OPC_EmitConvertToTarget4,
27616 OPC_EmitInteger32, 2,
27617 OPC_EmitRegisterI32, 0 ,
27618 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3_vec),
27619 MVT::v2i64, 8, 0, 2, 3, 6, 7, 5, 8, 1,
27620 35,
27621 OPC_CheckChild2Type, MVT::v8f16,
27622 OPC_RecordChild3,
27623 OPC_RecordChild4,
27624 OPC_RecordChild5,
27625 OPC_MoveChild5,
27626 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27627 OPC_MoveParent,
27628 OPC_RecordChild6,
27629 OPC_CheckChild6Type, MVT::v8i1,
27630 OPC_CheckType, MVT::v8f16,
27631 OPC_CheckPatternPredicate, 34,
27632 OPC_EmitConvertToTarget4,
27633 OPC_EmitInteger32, 2,
27634 OPC_EmitRegisterI32, 0 ,
27635 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3_vec),
27636 MVT::v8f16, 8, 0, 2, 3, 6, 7, 5, 8, 1,
27637 35,
27638 OPC_CheckChild2Type, MVT::v4f32,
27639 OPC_RecordChild3,
27640 OPC_RecordChild4,
27641 OPC_RecordChild5,
27642 OPC_MoveChild5,
27643 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27644 OPC_MoveParent,
27645 OPC_RecordChild6,
27646 OPC_CheckChild6Type, MVT::v4i1,
27647 OPC_CheckType, MVT::v4f32,
27648 OPC_CheckPatternPredicate, 34,
27649 OPC_EmitConvertToTarget4,
27650 OPC_EmitInteger32, 2,
27651 OPC_EmitRegisterI32, 0 ,
27652 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3_vec),
27653 MVT::v4f32, 8, 0, 2, 3, 6, 7, 5, 8, 1,
27654 0,
27655 100|128,1,
27656 OPC_CheckChild0Integer, 38|128,49,
27657 OPC_RecordChild1,
27658 OPC_MoveChild1,
27659 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27660 OPC_MoveParent,
27661 OPC_RecordChild2,
27662 OPC_Scope, 35,
27663 OPC_CheckChild2Type, MVT::v16i8,
27664 OPC_RecordChild3,
27665 OPC_RecordChild4,
27666 OPC_RecordChild5,
27667 OPC_MoveChild5,
27668 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27669 OPC_MoveParent,
27670 OPC_RecordChild6,
27671 OPC_CheckChild6Type, MVT::v16i1,
27672 OPC_CheckType, MVT::v16i8,
27673 OPC_CheckPatternPredicate, 15,
27674 OPC_EmitConvertToTarget4,
27675 OPC_EmitInteger32, 2,
27676 OPC_EmitRegisterI32, 0 ,
27677 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3A_vec),
27678 MVT::v16i8, 8, 0, 1, 2, 3, 6, 7, 5, 8,
27679 35,
27680 OPC_CheckChild2Type, MVT::v8i16,
27681 OPC_RecordChild3,
27682 OPC_RecordChild4,
27683 OPC_RecordChild5,
27684 OPC_MoveChild5,
27685 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27686 OPC_MoveParent,
27687 OPC_RecordChild6,
27688 OPC_CheckChild6Type, MVT::v8i1,
27689 OPC_CheckType, MVT::v8i16,
27690 OPC_CheckPatternPredicate, 15,
27691 OPC_EmitConvertToTarget4,
27692 OPC_EmitInteger32, 2,
27693 OPC_EmitRegisterI32, 0 ,
27694 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3A_vec),
27695 MVT::v8i16, 8, 0, 1, 2, 3, 6, 7, 5, 8,
27696 35,
27697 OPC_CheckChild2Type, MVT::v4i32,
27698 OPC_RecordChild3,
27699 OPC_RecordChild4,
27700 OPC_RecordChild5,
27701 OPC_MoveChild5,
27702 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27703 OPC_MoveParent,
27704 OPC_RecordChild6,
27705 OPC_CheckChild6Type, MVT::v4i1,
27706 OPC_CheckType, MVT::v4i32,
27707 OPC_CheckPatternPredicate, 15,
27708 OPC_EmitConvertToTarget4,
27709 OPC_EmitInteger32, 2,
27710 OPC_EmitRegisterI32, 0 ,
27711 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3A_vec),
27712 MVT::v4i32, 8, 0, 1, 2, 3, 6, 7, 5, 8,
27713 35,
27714 OPC_CheckChild2Type, MVT::v2i64,
27715 OPC_RecordChild3,
27716 OPC_RecordChild4,
27717 OPC_RecordChild5,
27718 OPC_MoveChild5,
27719 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27720 OPC_MoveParent,
27721 OPC_RecordChild6,
27722 OPC_CheckChild6Type, MVT::v2i1,
27723 OPC_CheckType, MVT::v2i64,
27724 OPC_CheckPatternPredicate, 15,
27725 OPC_EmitConvertToTarget4,
27726 OPC_EmitInteger32, 2,
27727 OPC_EmitRegisterI32, 0 ,
27728 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3A_vec),
27729 MVT::v2i64, 8, 0, 1, 2, 3, 6, 7, 5, 8,
27730 35,
27731 OPC_CheckChild2Type, MVT::v8f16,
27732 OPC_RecordChild3,
27733 OPC_RecordChild4,
27734 OPC_RecordChild5,
27735 OPC_MoveChild5,
27736 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27737 OPC_MoveParent,
27738 OPC_RecordChild6,
27739 OPC_CheckChild6Type, MVT::v8i1,
27740 OPC_CheckType, MVT::v8f16,
27741 OPC_CheckPatternPredicate, 34,
27742 OPC_EmitConvertToTarget4,
27743 OPC_EmitInteger32, 2,
27744 OPC_EmitRegisterI32, 0 ,
27745 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3A_vec),
27746 MVT::v8f16, 8, 0, 1, 2, 3, 6, 7, 5, 8,
27747 35,
27748 OPC_CheckChild2Type, MVT::v4f32,
27749 OPC_RecordChild3,
27750 OPC_RecordChild4,
27751 OPC_RecordChild5,
27752 OPC_MoveChild5,
27753 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
27754 OPC_MoveParent,
27755 OPC_RecordChild6,
27756 OPC_CheckChild6Type, MVT::v4i1,
27757 OPC_CheckType, MVT::v4f32,
27758 OPC_CheckPatternPredicate, 34,
27759 OPC_EmitConvertToTarget4,
27760 OPC_EmitInteger32, 2,
27761 OPC_EmitRegisterI32, 0 ,
27762 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CDE_VCX3A_vec),
27763 MVT::v4f32, 8, 0, 1, 2, 3, 6, 7, 5, 8,
27764 0,
27765 117|128,1,
27766 OPC_CheckChild0Integer, 40|128,50,
27767 OPC_RecordChild1,
27768 OPC_SwitchType , 57, MVT::v16i8,
27769 OPC_CheckChild1Type, MVT::v16i8,
27770 OPC_RecordChild2,
27771 OPC_CheckChild2Type, MVT::v16i8,
27772 OPC_Scope, 24,
27773 OPC_CheckChild3Integer, 0,
27774 OPC_RecordChild4,
27775 OPC_CheckChild4Type, MVT::v16i1,
27776 OPC_RecordChild5,
27777 OPC_CheckChild5Type, MVT::v16i8,
27778 OPC_CheckPatternPredicate0,
27779 OPC_EmitInteger32, 2,
27780 OPC_EmitRegisterI32, 0 ,
27781 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINs8),
27782 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
27783 24,
27784 OPC_CheckChild3Integer, 2,
27785 OPC_RecordChild4,
27786 OPC_CheckChild4Type, MVT::v16i1,
27787 OPC_RecordChild5,
27788 OPC_CheckChild5Type, MVT::v16i8,
27789 OPC_CheckPatternPredicate0,
27790 OPC_EmitInteger32, 2,
27791 OPC_EmitRegisterI32, 0 ,
27792 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINu8),
27793 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
27794 0,
27795 57, MVT::v8i16,
27796 OPC_CheckChild1Type, MVT::v8i16,
27797 OPC_RecordChild2,
27798 OPC_CheckChild2Type, MVT::v8i16,
27799 OPC_Scope, 24,
27800 OPC_CheckChild3Integer, 0,
27801 OPC_RecordChild4,
27802 OPC_CheckChild4Type, MVT::v8i1,
27803 OPC_RecordChild5,
27804 OPC_CheckChild5Type, MVT::v8i16,
27805 OPC_CheckPatternPredicate0,
27806 OPC_EmitInteger32, 2,
27807 OPC_EmitRegisterI32, 0 ,
27808 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINs16),
27809 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
27810 24,
27811 OPC_CheckChild3Integer, 2,
27812 OPC_RecordChild4,
27813 OPC_CheckChild4Type, MVT::v8i1,
27814 OPC_RecordChild5,
27815 OPC_CheckChild5Type, MVT::v8i16,
27816 OPC_CheckPatternPredicate0,
27817 OPC_EmitInteger32, 2,
27818 OPC_EmitRegisterI32, 0 ,
27819 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINu16),
27820 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
27821 0,
27822 57, MVT::v4i32,
27823 OPC_CheckChild1Type, MVT::v4i32,
27824 OPC_RecordChild2,
27825 OPC_CheckChild2Type, MVT::v4i32,
27826 OPC_Scope, 24,
27827 OPC_CheckChild3Integer, 0,
27828 OPC_RecordChild4,
27829 OPC_CheckChild4Type, MVT::v4i1,
27830 OPC_RecordChild5,
27831 OPC_CheckChild5Type, MVT::v4i32,
27832 OPC_CheckPatternPredicate0,
27833 OPC_EmitInteger32, 2,
27834 OPC_EmitRegisterI32, 0 ,
27835 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINs32),
27836 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
27837 24,
27838 OPC_CheckChild3Integer, 2,
27839 OPC_RecordChild4,
27840 OPC_CheckChild4Type, MVT::v4i1,
27841 OPC_RecordChild5,
27842 OPC_CheckChild5Type, MVT::v4i32,
27843 OPC_CheckPatternPredicate0,
27844 OPC_EmitInteger32, 2,
27845 OPC_EmitRegisterI32, 0 ,
27846 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINu32),
27847 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
27848 0,
27849 29, MVT::v4f32,
27850 OPC_CheckChild1Type, MVT::v4f32,
27851 OPC_RecordChild2,
27852 OPC_CheckChild2Type, MVT::v4f32,
27853 OPC_CheckChild3Integer, 0,
27854 OPC_RecordChild4,
27855 OPC_CheckChild4Type, MVT::v4i1,
27856 OPC_RecordChild5,
27857 OPC_CheckChild5Type, MVT::v4f32,
27858 OPC_CheckPatternPredicate2,
27859 OPC_EmitInteger32, 2,
27860 OPC_EmitRegisterI32, 0 ,
27861 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINNMf32),
27862 MVT::v4f32, 6, 0, 1, 4, 2, 5, 3,
27863 29, MVT::v8f16,
27864 OPC_CheckChild1Type, MVT::v8f16,
27865 OPC_RecordChild2,
27866 OPC_CheckChild2Type, MVT::v8f16,
27867 OPC_CheckChild3Integer, 0,
27868 OPC_RecordChild4,
27869 OPC_CheckChild4Type, MVT::v8i1,
27870 OPC_RecordChild5,
27871 OPC_CheckChild5Type, MVT::v8f16,
27872 OPC_CheckPatternPredicate2,
27873 OPC_EmitInteger32, 2,
27874 OPC_EmitRegisterI32, 0 ,
27875 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINNMf16),
27876 MVT::v8f16, 6, 0, 1, 4, 2, 5, 3,
27877 0,
27878 117|128,1,
27879 OPC_CheckChild0Integer, 22|128,50,
27880 OPC_RecordChild1,
27881 OPC_SwitchType , 57, MVT::v16i8,
27882 OPC_CheckChild1Type, MVT::v16i8,
27883 OPC_RecordChild2,
27884 OPC_CheckChild2Type, MVT::v16i8,
27885 OPC_Scope, 24,
27886 OPC_CheckChild3Integer, 0,
27887 OPC_RecordChild4,
27888 OPC_CheckChild4Type, MVT::v16i1,
27889 OPC_RecordChild5,
27890 OPC_CheckChild5Type, MVT::v16i8,
27891 OPC_CheckPatternPredicate0,
27892 OPC_EmitInteger32, 2,
27893 OPC_EmitRegisterI32, 0 ,
27894 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXs8),
27895 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
27896 24,
27897 OPC_CheckChild3Integer, 2,
27898 OPC_RecordChild4,
27899 OPC_CheckChild4Type, MVT::v16i1,
27900 OPC_RecordChild5,
27901 OPC_CheckChild5Type, MVT::v16i8,
27902 OPC_CheckPatternPredicate0,
27903 OPC_EmitInteger32, 2,
27904 OPC_EmitRegisterI32, 0 ,
27905 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXu8),
27906 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
27907 0,
27908 57, MVT::v8i16,
27909 OPC_CheckChild1Type, MVT::v8i16,
27910 OPC_RecordChild2,
27911 OPC_CheckChild2Type, MVT::v8i16,
27912 OPC_Scope, 24,
27913 OPC_CheckChild3Integer, 0,
27914 OPC_RecordChild4,
27915 OPC_CheckChild4Type, MVT::v8i1,
27916 OPC_RecordChild5,
27917 OPC_CheckChild5Type, MVT::v8i16,
27918 OPC_CheckPatternPredicate0,
27919 OPC_EmitInteger32, 2,
27920 OPC_EmitRegisterI32, 0 ,
27921 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXs16),
27922 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
27923 24,
27924 OPC_CheckChild3Integer, 2,
27925 OPC_RecordChild4,
27926 OPC_CheckChild4Type, MVT::v8i1,
27927 OPC_RecordChild5,
27928 OPC_CheckChild5Type, MVT::v8i16,
27929 OPC_CheckPatternPredicate0,
27930 OPC_EmitInteger32, 2,
27931 OPC_EmitRegisterI32, 0 ,
27932 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXu16),
27933 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
27934 0,
27935 57, MVT::v4i32,
27936 OPC_CheckChild1Type, MVT::v4i32,
27937 OPC_RecordChild2,
27938 OPC_CheckChild2Type, MVT::v4i32,
27939 OPC_Scope, 24,
27940 OPC_CheckChild3Integer, 0,
27941 OPC_RecordChild4,
27942 OPC_CheckChild4Type, MVT::v4i1,
27943 OPC_RecordChild5,
27944 OPC_CheckChild5Type, MVT::v4i32,
27945 OPC_CheckPatternPredicate0,
27946 OPC_EmitInteger32, 2,
27947 OPC_EmitRegisterI32, 0 ,
27948 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXs32),
27949 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
27950 24,
27951 OPC_CheckChild3Integer, 2,
27952 OPC_RecordChild4,
27953 OPC_CheckChild4Type, MVT::v4i1,
27954 OPC_RecordChild5,
27955 OPC_CheckChild5Type, MVT::v4i32,
27956 OPC_CheckPatternPredicate0,
27957 OPC_EmitInteger32, 2,
27958 OPC_EmitRegisterI32, 0 ,
27959 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXu32),
27960 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
27961 0,
27962 29, MVT::v4f32,
27963 OPC_CheckChild1Type, MVT::v4f32,
27964 OPC_RecordChild2,
27965 OPC_CheckChild2Type, MVT::v4f32,
27966 OPC_CheckChild3Integer, 0,
27967 OPC_RecordChild4,
27968 OPC_CheckChild4Type, MVT::v4i1,
27969 OPC_RecordChild5,
27970 OPC_CheckChild5Type, MVT::v4f32,
27971 OPC_CheckPatternPredicate2,
27972 OPC_EmitInteger32, 2,
27973 OPC_EmitRegisterI32, 0 ,
27974 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXNMf32),
27975 MVT::v4f32, 6, 0, 1, 4, 2, 5, 3,
27976 29, MVT::v8f16,
27977 OPC_CheckChild1Type, MVT::v8f16,
27978 OPC_RecordChild2,
27979 OPC_CheckChild2Type, MVT::v8f16,
27980 OPC_CheckChild3Integer, 0,
27981 OPC_RecordChild4,
27982 OPC_CheckChild4Type, MVT::v8i1,
27983 OPC_RecordChild5,
27984 OPC_CheckChild5Type, MVT::v8f16,
27985 OPC_CheckPatternPredicate2,
27986 OPC_EmitInteger32, 2,
27987 OPC_EmitRegisterI32, 0 ,
27988 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXNMf16),
27989 MVT::v8f16, 6, 0, 1, 4, 2, 5, 3,
27990 0,
27991 123|128,1,
27992 OPC_CheckChild0Integer, 42|128,52,
27993 OPC_RecordChild1,
27994 OPC_SwitchType , 26, MVT::v4i32,
27995 OPC_CheckChild1Type, MVT::v4i32,
27996 OPC_CheckChild2Integer, 0|128,1,
27997 OPC_RecordChild3,
27998 OPC_CheckChild3Type, MVT::v4i1,
27999 OPC_RecordChild4,
28000 OPC_CheckChild4Type, MVT::v4i32,
28001 OPC_CheckPatternPredicate0,
28002 OPC_EmitInteger32, 2,
28003 OPC_EmitRegisterI32, 0 ,
28004 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
28005 MVT::v4i32, 5, 0, 3, 1, 4, 2,
28006 53, MVT::v8i16,
28007 OPC_CheckChild1Type, MVT::v8i16,
28008 OPC_Scope, 24,
28009 OPC_CheckChild2Integer, 0|128,1,
28010 OPC_RecordChild3,
28011 OPC_CheckChild3Type, MVT::v8i1,
28012 OPC_RecordChild4,
28013 OPC_CheckChild4Type, MVT::v8i16,
28014 OPC_CheckPatternPredicate0,
28015 OPC_EmitInteger32, 2,
28016 OPC_EmitRegisterI32, 0 ,
28017 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
28018 MVT::v8i16, 5, 0, 3, 1, 4, 2,
28019 23,
28020 OPC_CheckChild2Integer, 64,
28021 OPC_RecordChild3,
28022 OPC_CheckChild3Type, MVT::v8i1,
28023 OPC_RecordChild4,
28024 OPC_CheckChild4Type, MVT::v8i16,
28025 OPC_CheckPatternPredicate0,
28026 OPC_EmitInteger32, 2,
28027 OPC_EmitRegisterI32, 0 ,
28028 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
28029 MVT::v8i16, 5, 0, 3, 1, 4, 2,
28030 0,
28031 77, MVT::v16i8,
28032 OPC_CheckChild1Type, MVT::v16i8,
28033 OPC_Scope, 24,
28034 OPC_CheckChild2Integer, 0|128,1,
28035 OPC_RecordChild3,
28036 OPC_CheckChild3Type, MVT::v16i1,
28037 OPC_RecordChild4,
28038 OPC_CheckChild4Type, MVT::v16i8,
28039 OPC_CheckPatternPredicate0,
28040 OPC_EmitInteger32, 2,
28041 OPC_EmitRegisterI32, 0 ,
28042 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_8),
28043 MVT::v16i8, 5, 0, 3, 1, 4, 2,
28044 23,
28045 OPC_CheckChild2Integer, 64,
28046 OPC_RecordChild3,
28047 OPC_CheckChild3Type, MVT::v16i1,
28048 OPC_RecordChild4,
28049 OPC_CheckChild4Type, MVT::v16i8,
28050 OPC_CheckPatternPredicate0,
28051 OPC_EmitInteger32, 2,
28052 OPC_EmitRegisterI32, 0 ,
28053 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_8),
28054 MVT::v16i8, 5, 0, 3, 1, 4, 2,
28055 23,
28056 OPC_CheckChild2Integer, 32,
28057 OPC_RecordChild3,
28058 OPC_CheckChild3Type, MVT::v16i1,
28059 OPC_RecordChild4,
28060 OPC_CheckChild4Type, MVT::v16i8,
28061 OPC_CheckPatternPredicate0,
28062 OPC_EmitInteger32, 2,
28063 OPC_EmitRegisterI32, 0 ,
28064 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV16_8),
28065 MVT::v16i8, 5, 0, 3, 1, 4, 2,
28066 0,
28067 26, MVT::v4f32,
28068 OPC_CheckChild1Type, MVT::v4f32,
28069 OPC_CheckChild2Integer, 0|128,1,
28070 OPC_RecordChild3,
28071 OPC_CheckChild3Type, MVT::v4i1,
28072 OPC_RecordChild4,
28073 OPC_CheckChild4Type, MVT::v4f32,
28074 OPC_CheckPatternPredicate0,
28075 OPC_EmitInteger32, 2,
28076 OPC_EmitRegisterI32, 0 ,
28077 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
28078 MVT::v4f32, 5, 0, 3, 1, 4, 2,
28079 53, MVT::v8f16,
28080 OPC_CheckChild1Type, MVT::v8f16,
28081 OPC_Scope, 24,
28082 OPC_CheckChild2Integer, 0|128,1,
28083 OPC_RecordChild3,
28084 OPC_CheckChild3Type, MVT::v8i1,
28085 OPC_RecordChild4,
28086 OPC_CheckChild4Type, MVT::v8f16,
28087 OPC_CheckPatternPredicate0,
28088 OPC_EmitInteger32, 2,
28089 OPC_EmitRegisterI32, 0 ,
28090 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
28091 MVT::v8f16, 5, 0, 3, 1, 4, 2,
28092 23,
28093 OPC_CheckChild2Integer, 64,
28094 OPC_RecordChild3,
28095 OPC_CheckChild3Type, MVT::v8i1,
28096 OPC_RecordChild4,
28097 OPC_CheckChild4Type, MVT::v8f16,
28098 OPC_CheckPatternPredicate0,
28099 OPC_EmitInteger32, 2,
28100 OPC_EmitRegisterI32, 0 ,
28101 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
28102 MVT::v8f16, 5, 0, 3, 1, 4, 2,
28103 0,
28104 0,
28105 117|128,1,
28106 OPC_CheckChild0Integer, 116|128,49,
28107 OPC_RecordChild1,
28108 OPC_SwitchType , 57, MVT::v16i8,
28109 OPC_CheckChild1Type, MVT::v16i8,
28110 OPC_RecordChild2,
28111 OPC_CheckChild2Type, MVT::v16i8,
28112 OPC_Scope, 24,
28113 OPC_CheckChild3Integer, 0,
28114 OPC_RecordChild4,
28115 OPC_CheckChild4Type, MVT::v16i1,
28116 OPC_RecordChild5,
28117 OPC_CheckChild5Type, MVT::v16i8,
28118 OPC_CheckPatternPredicate0,
28119 OPC_EmitInteger32, 2,
28120 OPC_EmitRegisterI32, 0 ,
28121 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs8),
28122 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
28123 24,
28124 OPC_CheckChild3Integer, 2,
28125 OPC_RecordChild4,
28126 OPC_CheckChild4Type, MVT::v16i1,
28127 OPC_RecordChild5,
28128 OPC_CheckChild5Type, MVT::v16i8,
28129 OPC_CheckPatternPredicate0,
28130 OPC_EmitInteger32, 2,
28131 OPC_EmitRegisterI32, 0 ,
28132 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu8),
28133 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
28134 0,
28135 57, MVT::v8i16,
28136 OPC_CheckChild1Type, MVT::v8i16,
28137 OPC_RecordChild2,
28138 OPC_CheckChild2Type, MVT::v8i16,
28139 OPC_Scope, 24,
28140 OPC_CheckChild3Integer, 0,
28141 OPC_RecordChild4,
28142 OPC_CheckChild4Type, MVT::v8i1,
28143 OPC_RecordChild5,
28144 OPC_CheckChild5Type, MVT::v8i16,
28145 OPC_CheckPatternPredicate0,
28146 OPC_EmitInteger32, 2,
28147 OPC_EmitRegisterI32, 0 ,
28148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs16),
28149 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
28150 24,
28151 OPC_CheckChild3Integer, 2,
28152 OPC_RecordChild4,
28153 OPC_CheckChild4Type, MVT::v8i1,
28154 OPC_RecordChild5,
28155 OPC_CheckChild5Type, MVT::v8i16,
28156 OPC_CheckPatternPredicate0,
28157 OPC_EmitInteger32, 2,
28158 OPC_EmitRegisterI32, 0 ,
28159 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu16),
28160 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
28161 0,
28162 57, MVT::v4i32,
28163 OPC_CheckChild1Type, MVT::v4i32,
28164 OPC_RecordChild2,
28165 OPC_CheckChild2Type, MVT::v4i32,
28166 OPC_Scope, 24,
28167 OPC_CheckChild3Integer, 0,
28168 OPC_RecordChild4,
28169 OPC_CheckChild4Type, MVT::v4i1,
28170 OPC_RecordChild5,
28171 OPC_CheckChild5Type, MVT::v4i32,
28172 OPC_CheckPatternPredicate0,
28173 OPC_EmitInteger32, 2,
28174 OPC_EmitRegisterI32, 0 ,
28175 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs32),
28176 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
28177 24,
28178 OPC_CheckChild3Integer, 2,
28179 OPC_RecordChild4,
28180 OPC_CheckChild4Type, MVT::v4i1,
28181 OPC_RecordChild5,
28182 OPC_CheckChild5Type, MVT::v4i32,
28183 OPC_CheckPatternPredicate0,
28184 OPC_EmitInteger32, 2,
28185 OPC_EmitRegisterI32, 0 ,
28186 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu32),
28187 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
28188 0,
28189 29, MVT::v4f32,
28190 OPC_CheckChild1Type, MVT::v4f32,
28191 OPC_RecordChild2,
28192 OPC_CheckChild2Type, MVT::v4f32,
28193 OPC_CheckChild3Integer, 0,
28194 OPC_RecordChild4,
28195 OPC_CheckChild4Type, MVT::v4i1,
28196 OPC_RecordChild5,
28197 OPC_CheckChild5Type, MVT::v4f32,
28198 OPC_CheckPatternPredicate2,
28199 OPC_EmitInteger32, 2,
28200 OPC_EmitRegisterI32, 0 ,
28201 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDf32),
28202 MVT::v4f32, 6, 0, 1, 4, 2, 5, 3,
28203 29, MVT::v8f16,
28204 OPC_CheckChild1Type, MVT::v8f16,
28205 OPC_RecordChild2,
28206 OPC_CheckChild2Type, MVT::v8f16,
28207 OPC_CheckChild3Integer, 0,
28208 OPC_RecordChild4,
28209 OPC_CheckChild4Type, MVT::v8i1,
28210 OPC_RecordChild5,
28211 OPC_CheckChild5Type, MVT::v8f16,
28212 OPC_CheckPatternPredicate2,
28213 OPC_EmitInteger32, 2,
28214 OPC_EmitRegisterI32, 0 ,
28215 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDf16),
28216 MVT::v8f16, 6, 0, 1, 4, 2, 5, 3,
28217 0,
28218 125|128,1,
28219 OPC_CheckChild0Integer, 0|128,51,
28220 OPC_RecordChild1,
28221 OPC_SwitchType , 59, MVT::v16i8,
28222 OPC_CheckChild1Type, MVT::v16i8,
28223 OPC_RecordChild2,
28224 OPC_CheckChild2Type, MVT::v16i8,
28225 OPC_Scope, 25,
28226 OPC_CheckChild3Integer, 0,
28227 OPC_CheckPatternPredicate0,
28228 OPC_EmitInteger32, 0,
28229 OPC_EmitRegisterI32, 0 ,
28230 OPC_EmitRegisterI32, 0 ,
28231 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28232 MVT::v4i32, 0,
28233 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs8),
28234 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
28235 25,
28236 OPC_CheckChild3Integer, 2,
28237 OPC_CheckPatternPredicate0,
28238 OPC_EmitInteger32, 0,
28239 OPC_EmitRegisterI32, 0 ,
28240 OPC_EmitRegisterI32, 0 ,
28241 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28242 MVT::v4i32, 0,
28243 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu8),
28244 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
28245 0,
28246 59, MVT::v8i16,
28247 OPC_CheckChild1Type, MVT::v8i16,
28248 OPC_RecordChild2,
28249 OPC_CheckChild2Type, MVT::v8i16,
28250 OPC_Scope, 25,
28251 OPC_CheckChild3Integer, 0,
28252 OPC_CheckPatternPredicate0,
28253 OPC_EmitInteger32, 0,
28254 OPC_EmitRegisterI32, 0 ,
28255 OPC_EmitRegisterI32, 0 ,
28256 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28257 MVT::v4i32, 0,
28258 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs16),
28259 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
28260 25,
28261 OPC_CheckChild3Integer, 2,
28262 OPC_CheckPatternPredicate0,
28263 OPC_EmitInteger32, 0,
28264 OPC_EmitRegisterI32, 0 ,
28265 OPC_EmitRegisterI32, 0 ,
28266 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28267 MVT::v4i32, 0,
28268 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu16),
28269 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
28270 0,
28271 59, MVT::v4i32,
28272 OPC_CheckChild1Type, MVT::v4i32,
28273 OPC_RecordChild2,
28274 OPC_CheckChild2Type, MVT::v4i32,
28275 OPC_Scope, 25,
28276 OPC_CheckChild3Integer, 0,
28277 OPC_CheckPatternPredicate0,
28278 OPC_EmitInteger32, 0,
28279 OPC_EmitRegisterI32, 0 ,
28280 OPC_EmitRegisterI32, 0 ,
28281 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28282 MVT::v4i32, 0,
28283 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs32),
28284 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
28285 25,
28286 OPC_CheckChild3Integer, 2,
28287 OPC_CheckPatternPredicate0,
28288 OPC_EmitInteger32, 0,
28289 OPC_EmitRegisterI32, 0 ,
28290 OPC_EmitRegisterI32, 0 ,
28291 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28292 MVT::v4i32, 0,
28293 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu32),
28294 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
28295 0,
28296 30, MVT::v4f32,
28297 OPC_CheckChild1Type, MVT::v4f32,
28298 OPC_RecordChild2,
28299 OPC_CheckChild2Type, MVT::v4f32,
28300 OPC_CheckChild3Integer, 0,
28301 OPC_CheckPatternPredicate2,
28302 OPC_EmitInteger32, 0,
28303 OPC_EmitRegisterI32, 0 ,
28304 OPC_EmitRegisterI32, 0 ,
28305 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28306 MVT::v4i32, 0,
28307 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDf32),
28308 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
28309 30, MVT::v8f16,
28310 OPC_CheckChild1Type, MVT::v8f16,
28311 OPC_RecordChild2,
28312 OPC_CheckChild2Type, MVT::v8f16,
28313 OPC_CheckChild3Integer, 0,
28314 OPC_CheckPatternPredicate2,
28315 OPC_EmitInteger32, 0,
28316 OPC_EmitRegisterI32, 0 ,
28317 OPC_EmitRegisterI32, 0 ,
28318 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28319 MVT::v4i32, 0,
28320 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDf16),
28321 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
28322 0,
28323 49|128,1,
28324 OPC_CheckChild0Integer, 90|128,50,
28325 OPC_RecordChild1,
28326 OPC_SwitchType , 55, MVT::v16i8,
28327 OPC_CheckChild1Type, MVT::v16i8,
28328 OPC_RecordChild2,
28329 OPC_CheckChild2Type, MVT::v16i8,
28330 OPC_Scope, 23,
28331 OPC_CheckChild3Integer, 0,
28332 OPC_RecordChild4,
28333 OPC_CheckChild4Type, MVT::v16i1,
28334 OPC_RecordChild5,
28335 OPC_CheckChild5Type, MVT::v16i8,
28336 OPC_EmitInteger32, 2,
28337 OPC_EmitRegisterI32, 0 ,
28338 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs8),
28339 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
28340 23,
28341 OPC_CheckChild3Integer, 2,
28342 OPC_RecordChild4,
28343 OPC_CheckChild4Type, MVT::v16i1,
28344 OPC_RecordChild5,
28345 OPC_CheckChild5Type, MVT::v16i8,
28346 OPC_EmitInteger32, 2,
28347 OPC_EmitRegisterI32, 0 ,
28348 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu8),
28349 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
28350 0,
28351 55, MVT::v8i16,
28352 OPC_CheckChild1Type, MVT::v8i16,
28353 OPC_RecordChild2,
28354 OPC_CheckChild2Type, MVT::v8i16,
28355 OPC_Scope, 23,
28356 OPC_CheckChild3Integer, 0,
28357 OPC_RecordChild4,
28358 OPC_CheckChild4Type, MVT::v8i1,
28359 OPC_RecordChild5,
28360 OPC_CheckChild5Type, MVT::v8i16,
28361 OPC_EmitInteger32, 2,
28362 OPC_EmitRegisterI32, 0 ,
28363 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs16),
28364 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
28365 23,
28366 OPC_CheckChild3Integer, 2,
28367 OPC_RecordChild4,
28368 OPC_CheckChild4Type, MVT::v8i1,
28369 OPC_RecordChild5,
28370 OPC_CheckChild5Type, MVT::v8i16,
28371 OPC_EmitInteger32, 2,
28372 OPC_EmitRegisterI32, 0 ,
28373 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu16),
28374 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
28375 0,
28376 55, MVT::v4i32,
28377 OPC_CheckChild1Type, MVT::v4i32,
28378 OPC_RecordChild2,
28379 OPC_CheckChild2Type, MVT::v4i32,
28380 OPC_Scope, 23,
28381 OPC_CheckChild3Integer, 0,
28382 OPC_RecordChild4,
28383 OPC_CheckChild4Type, MVT::v4i1,
28384 OPC_RecordChild5,
28385 OPC_CheckChild5Type, MVT::v4i32,
28386 OPC_EmitInteger32, 2,
28387 OPC_EmitRegisterI32, 0 ,
28388 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs32),
28389 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
28390 23,
28391 OPC_CheckChild3Integer, 2,
28392 OPC_RecordChild4,
28393 OPC_CheckChild4Type, MVT::v4i1,
28394 OPC_RecordChild5,
28395 OPC_CheckChild5Type, MVT::v4i32,
28396 OPC_EmitInteger32, 2,
28397 OPC_EmitRegisterI32, 0 ,
28398 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu32),
28399 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
28400 0,
28401 0,
28402 61|128,1,
28403 OPC_CheckChild0Integer, 44|128,52,
28404 OPC_RecordChild1,
28405 OPC_SwitchType , 59, MVT::v16i8,
28406 OPC_CheckChild1Type, MVT::v16i8,
28407 OPC_RecordChild2,
28408 OPC_CheckChild2Type, MVT::v16i8,
28409 OPC_Scope, 25,
28410 OPC_CheckChild3Integer, 0,
28411 OPC_CheckPatternPredicate0,
28412 OPC_EmitInteger32, 0,
28413 OPC_EmitRegisterI32, 0 ,
28414 OPC_EmitRegisterI32, 0 ,
28415 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28416 MVT::v4i32, 0,
28417 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs8),
28418 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
28419 25,
28420 OPC_CheckChild3Integer, 2,
28421 OPC_CheckPatternPredicate0,
28422 OPC_EmitInteger32, 0,
28423 OPC_EmitRegisterI32, 0 ,
28424 OPC_EmitRegisterI32, 0 ,
28425 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28426 MVT::v4i32, 0,
28427 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu8),
28428 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
28429 0,
28430 59, MVT::v8i16,
28431 OPC_CheckChild1Type, MVT::v8i16,
28432 OPC_RecordChild2,
28433 OPC_CheckChild2Type, MVT::v8i16,
28434 OPC_Scope, 25,
28435 OPC_CheckChild3Integer, 0,
28436 OPC_CheckPatternPredicate0,
28437 OPC_EmitInteger32, 0,
28438 OPC_EmitRegisterI32, 0 ,
28439 OPC_EmitRegisterI32, 0 ,
28440 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28441 MVT::v4i32, 0,
28442 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs16),
28443 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
28444 25,
28445 OPC_CheckChild3Integer, 2,
28446 OPC_CheckPatternPredicate0,
28447 OPC_EmitInteger32, 0,
28448 OPC_EmitRegisterI32, 0 ,
28449 OPC_EmitRegisterI32, 0 ,
28450 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28451 MVT::v4i32, 0,
28452 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu16),
28453 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
28454 0,
28455 59, MVT::v4i32,
28456 OPC_CheckChild1Type, MVT::v4i32,
28457 OPC_RecordChild2,
28458 OPC_CheckChild2Type, MVT::v4i32,
28459 OPC_Scope, 25,
28460 OPC_CheckChild3Integer, 0,
28461 OPC_CheckPatternPredicate0,
28462 OPC_EmitInteger32, 0,
28463 OPC_EmitRegisterI32, 0 ,
28464 OPC_EmitRegisterI32, 0 ,
28465 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28466 MVT::v4i32, 0,
28467 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs32),
28468 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
28469 25,
28470 OPC_CheckChild3Integer, 2,
28471 OPC_CheckPatternPredicate0,
28472 OPC_EmitInteger32, 0,
28473 OPC_EmitRegisterI32, 0 ,
28474 OPC_EmitRegisterI32, 0 ,
28475 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28476 MVT::v4i32, 0,
28477 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu32),
28478 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
28479 0,
28480 0,
28481 121,
28482 OPC_CheckChild0Integer, 46|128,51,
28483 OPC_Scope, 57,
28484 OPC_CheckChild1Integer, 0,
28485 OPC_RecordChild2,
28486 OPC_SwitchType , 24, MVT::v8i16,
28487 OPC_CheckChild2Type, MVT::v8f16,
28488 OPC_CheckPatternPredicate2,
28489 OPC_EmitInteger32, 0,
28490 OPC_EmitRegisterI32, 0 ,
28491 OPC_EmitRegisterI32, 0 ,
28492 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28493 MVT::v4i32, 0,
28494 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16a),
28495 MVT::v8i16, 5, 0, 1, 2, 3, 4,
28496 24, MVT::v4i32,
28497 OPC_CheckChild2Type, MVT::v4f32,
28498 OPC_CheckPatternPredicate2,
28499 OPC_EmitInteger32, 0,
28500 OPC_EmitRegisterI32, 0 ,
28501 OPC_EmitRegisterI32, 0 ,
28502 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28503 MVT::v4i32, 0,
28504 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32a),
28505 MVT::v4i32, 5, 0, 1, 2, 3, 4,
28506 0,
28507 57,
28508 OPC_CheckChild1Integer, 2,
28509 OPC_RecordChild2,
28510 OPC_SwitchType , 24, MVT::v8i16,
28511 OPC_CheckChild2Type, MVT::v8f16,
28512 OPC_CheckPatternPredicate2,
28513 OPC_EmitInteger32, 0,
28514 OPC_EmitRegisterI32, 0 ,
28515 OPC_EmitRegisterI32, 0 ,
28516 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28517 MVT::v4i32, 0,
28518 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16a),
28519 MVT::v8i16, 5, 0, 1, 2, 3, 4,
28520 24, MVT::v4i32,
28521 OPC_CheckChild2Type, MVT::v4f32,
28522 OPC_CheckPatternPredicate2,
28523 OPC_EmitInteger32, 0,
28524 OPC_EmitRegisterI32, 0 ,
28525 OPC_EmitRegisterI32, 0 ,
28526 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28527 MVT::v4i32, 0,
28528 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32a),
28529 MVT::v4i32, 5, 0, 1, 2, 3, 4,
28530 0,
28531 0,
28532 117,
28533 OPC_CheckChild0Integer, 48|128,51,
28534 OPC_Scope, 55,
28535 OPC_CheckChild1Integer, 0,
28536 OPC_RecordChild2,
28537 OPC_SwitchType , 23, MVT::v8i16,
28538 OPC_CheckChild2Type, MVT::v8i16,
28539 OPC_RecordChild3,
28540 OPC_CheckChild3Type, MVT::v8f16,
28541 OPC_RecordChild4,
28542 OPC_CheckChild4Type, MVT::v8i1,
28543 OPC_CheckPatternPredicate2,
28544 OPC_EmitInteger32, 2,
28545 OPC_EmitRegisterI32, 0 ,
28546 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16a),
28547 MVT::v8i16, 5, 1, 3, 2, 4, 0,
28548 23, MVT::v4i32,
28549 OPC_CheckChild2Type, MVT::v4i32,
28550 OPC_RecordChild3,
28551 OPC_CheckChild3Type, MVT::v4f32,
28552 OPC_RecordChild4,
28553 OPC_CheckChild4Type, MVT::v4i1,
28554 OPC_CheckPatternPredicate2,
28555 OPC_EmitInteger32, 2,
28556 OPC_EmitRegisterI32, 0 ,
28557 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32a),
28558 MVT::v4i32, 5, 1, 3, 2, 4, 0,
28559 0,
28560 55,
28561 OPC_CheckChild1Integer, 2,
28562 OPC_RecordChild2,
28563 OPC_SwitchType , 23, MVT::v8i16,
28564 OPC_CheckChild2Type, MVT::v8i16,
28565 OPC_RecordChild3,
28566 OPC_CheckChild3Type, MVT::v8f16,
28567 OPC_RecordChild4,
28568 OPC_CheckChild4Type, MVT::v8i1,
28569 OPC_CheckPatternPredicate2,
28570 OPC_EmitInteger32, 2,
28571 OPC_EmitRegisterI32, 0 ,
28572 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16a),
28573 MVT::v8i16, 5, 1, 3, 2, 4, 0,
28574 23, MVT::v4i32,
28575 OPC_CheckChild2Type, MVT::v4i32,
28576 OPC_RecordChild3,
28577 OPC_CheckChild3Type, MVT::v4f32,
28578 OPC_RecordChild4,
28579 OPC_CheckChild4Type, MVT::v4i1,
28580 OPC_CheckPatternPredicate2,
28581 OPC_EmitInteger32, 2,
28582 OPC_EmitRegisterI32, 0 ,
28583 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32a),
28584 MVT::v4i32, 5, 1, 3, 2, 4, 0,
28585 0,
28586 0,
28587 121,
28588 OPC_CheckChild0Integer, 54|128,51,
28589 OPC_Scope, 57,
28590 OPC_CheckChild1Integer, 0,
28591 OPC_RecordChild2,
28592 OPC_SwitchType , 24, MVT::v8i16,
28593 OPC_CheckChild2Type, MVT::v8f16,
28594 OPC_CheckPatternPredicate2,
28595 OPC_EmitInteger32, 0,
28596 OPC_EmitRegisterI32, 0 ,
28597 OPC_EmitRegisterI32, 0 ,
28598 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28599 MVT::v4i32, 0,
28600 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16n),
28601 MVT::v8i16, 5, 0, 1, 2, 3, 4,
28602 24, MVT::v4i32,
28603 OPC_CheckChild2Type, MVT::v4f32,
28604 OPC_CheckPatternPredicate2,
28605 OPC_EmitInteger32, 0,
28606 OPC_EmitRegisterI32, 0 ,
28607 OPC_EmitRegisterI32, 0 ,
28608 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28609 MVT::v4i32, 0,
28610 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32n),
28611 MVT::v4i32, 5, 0, 1, 2, 3, 4,
28612 0,
28613 57,
28614 OPC_CheckChild1Integer, 2,
28615 OPC_RecordChild2,
28616 OPC_SwitchType , 24, MVT::v8i16,
28617 OPC_CheckChild2Type, MVT::v8f16,
28618 OPC_CheckPatternPredicate2,
28619 OPC_EmitInteger32, 0,
28620 OPC_EmitRegisterI32, 0 ,
28621 OPC_EmitRegisterI32, 0 ,
28622 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28623 MVT::v4i32, 0,
28624 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16n),
28625 MVT::v8i16, 5, 0, 1, 2, 3, 4,
28626 24, MVT::v4i32,
28627 OPC_CheckChild2Type, MVT::v4f32,
28628 OPC_CheckPatternPredicate2,
28629 OPC_EmitInteger32, 0,
28630 OPC_EmitRegisterI32, 0 ,
28631 OPC_EmitRegisterI32, 0 ,
28632 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28633 MVT::v4i32, 0,
28634 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32n),
28635 MVT::v4i32, 5, 0, 1, 2, 3, 4,
28636 0,
28637 0,
28638 117,
28639 OPC_CheckChild0Integer, 56|128,51,
28640 OPC_Scope, 55,
28641 OPC_CheckChild1Integer, 0,
28642 OPC_RecordChild2,
28643 OPC_SwitchType , 23, MVT::v8i16,
28644 OPC_CheckChild2Type, MVT::v8i16,
28645 OPC_RecordChild3,
28646 OPC_CheckChild3Type, MVT::v8f16,
28647 OPC_RecordChild4,
28648 OPC_CheckChild4Type, MVT::v8i1,
28649 OPC_CheckPatternPredicate2,
28650 OPC_EmitInteger32, 2,
28651 OPC_EmitRegisterI32, 0 ,
28652 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16n),
28653 MVT::v8i16, 5, 1, 3, 2, 4, 0,
28654 23, MVT::v4i32,
28655 OPC_CheckChild2Type, MVT::v4i32,
28656 OPC_RecordChild3,
28657 OPC_CheckChild3Type, MVT::v4f32,
28658 OPC_RecordChild4,
28659 OPC_CheckChild4Type, MVT::v4i1,
28660 OPC_CheckPatternPredicate2,
28661 OPC_EmitInteger32, 2,
28662 OPC_EmitRegisterI32, 0 ,
28663 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32n),
28664 MVT::v4i32, 5, 1, 3, 2, 4, 0,
28665 0,
28666 55,
28667 OPC_CheckChild1Integer, 2,
28668 OPC_RecordChild2,
28669 OPC_SwitchType , 23, MVT::v8i16,
28670 OPC_CheckChild2Type, MVT::v8i16,
28671 OPC_RecordChild3,
28672 OPC_CheckChild3Type, MVT::v8f16,
28673 OPC_RecordChild4,
28674 OPC_CheckChild4Type, MVT::v8i1,
28675 OPC_CheckPatternPredicate2,
28676 OPC_EmitInteger32, 2,
28677 OPC_EmitRegisterI32, 0 ,
28678 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16n),
28679 MVT::v8i16, 5, 1, 3, 2, 4, 0,
28680 23, MVT::v4i32,
28681 OPC_CheckChild2Type, MVT::v4i32,
28682 OPC_RecordChild3,
28683 OPC_CheckChild3Type, MVT::v4f32,
28684 OPC_RecordChild4,
28685 OPC_CheckChild4Type, MVT::v4i1,
28686 OPC_CheckPatternPredicate2,
28687 OPC_EmitInteger32, 2,
28688 OPC_EmitRegisterI32, 0 ,
28689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32n),
28690 MVT::v4i32, 5, 1, 3, 2, 4, 0,
28691 0,
28692 0,
28693 121,
28694 OPC_CheckChild0Integer, 58|128,51,
28695 OPC_Scope, 57,
28696 OPC_CheckChild1Integer, 0,
28697 OPC_RecordChild2,
28698 OPC_SwitchType , 24, MVT::v8i16,
28699 OPC_CheckChild2Type, MVT::v8f16,
28700 OPC_CheckPatternPredicate2,
28701 OPC_EmitInteger32, 0,
28702 OPC_EmitRegisterI32, 0 ,
28703 OPC_EmitRegisterI32, 0 ,
28704 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28705 MVT::v4i32, 0,
28706 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16p),
28707 MVT::v8i16, 5, 0, 1, 2, 3, 4,
28708 24, MVT::v4i32,
28709 OPC_CheckChild2Type, MVT::v4f32,
28710 OPC_CheckPatternPredicate2,
28711 OPC_EmitInteger32, 0,
28712 OPC_EmitRegisterI32, 0 ,
28713 OPC_EmitRegisterI32, 0 ,
28714 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28715 MVT::v4i32, 0,
28716 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32p),
28717 MVT::v4i32, 5, 0, 1, 2, 3, 4,
28718 0,
28719 57,
28720 OPC_CheckChild1Integer, 2,
28721 OPC_RecordChild2,
28722 OPC_SwitchType , 24, MVT::v8i16,
28723 OPC_CheckChild2Type, MVT::v8f16,
28724 OPC_CheckPatternPredicate2,
28725 OPC_EmitInteger32, 0,
28726 OPC_EmitRegisterI32, 0 ,
28727 OPC_EmitRegisterI32, 0 ,
28728 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28729 MVT::v4i32, 0,
28730 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16p),
28731 MVT::v8i16, 5, 0, 1, 2, 3, 4,
28732 24, MVT::v4i32,
28733 OPC_CheckChild2Type, MVT::v4f32,
28734 OPC_CheckPatternPredicate2,
28735 OPC_EmitInteger32, 0,
28736 OPC_EmitRegisterI32, 0 ,
28737 OPC_EmitRegisterI32, 0 ,
28738 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28739 MVT::v4i32, 0,
28740 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32p),
28741 MVT::v4i32, 5, 0, 1, 2, 3, 4,
28742 0,
28743 0,
28744 117,
28745 OPC_CheckChild0Integer, 60|128,51,
28746 OPC_Scope, 55,
28747 OPC_CheckChild1Integer, 0,
28748 OPC_RecordChild2,
28749 OPC_SwitchType , 23, MVT::v8i16,
28750 OPC_CheckChild2Type, MVT::v8i16,
28751 OPC_RecordChild3,
28752 OPC_CheckChild3Type, MVT::v8f16,
28753 OPC_RecordChild4,
28754 OPC_CheckChild4Type, MVT::v8i1,
28755 OPC_CheckPatternPredicate2,
28756 OPC_EmitInteger32, 2,
28757 OPC_EmitRegisterI32, 0 ,
28758 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16p),
28759 MVT::v8i16, 5, 1, 3, 2, 4, 0,
28760 23, MVT::v4i32,
28761 OPC_CheckChild2Type, MVT::v4i32,
28762 OPC_RecordChild3,
28763 OPC_CheckChild3Type, MVT::v4f32,
28764 OPC_RecordChild4,
28765 OPC_CheckChild4Type, MVT::v4i1,
28766 OPC_CheckPatternPredicate2,
28767 OPC_EmitInteger32, 2,
28768 OPC_EmitRegisterI32, 0 ,
28769 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32p),
28770 MVT::v4i32, 5, 1, 3, 2, 4, 0,
28771 0,
28772 55,
28773 OPC_CheckChild1Integer, 2,
28774 OPC_RecordChild2,
28775 OPC_SwitchType , 23, MVT::v8i16,
28776 OPC_CheckChild2Type, MVT::v8i16,
28777 OPC_RecordChild3,
28778 OPC_CheckChild3Type, MVT::v8f16,
28779 OPC_RecordChild4,
28780 OPC_CheckChild4Type, MVT::v8i1,
28781 OPC_CheckPatternPredicate2,
28782 OPC_EmitInteger32, 2,
28783 OPC_EmitRegisterI32, 0 ,
28784 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16p),
28785 MVT::v8i16, 5, 1, 3, 2, 4, 0,
28786 23, MVT::v4i32,
28787 OPC_CheckChild2Type, MVT::v4i32,
28788 OPC_RecordChild3,
28789 OPC_CheckChild3Type, MVT::v4f32,
28790 OPC_RecordChild4,
28791 OPC_CheckChild4Type, MVT::v4i1,
28792 OPC_CheckPatternPredicate2,
28793 OPC_EmitInteger32, 2,
28794 OPC_EmitRegisterI32, 0 ,
28795 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32p),
28796 MVT::v4i32, 5, 1, 3, 2, 4, 0,
28797 0,
28798 0,
28799 121,
28800 OPC_CheckChild0Integer, 50|128,51,
28801 OPC_Scope, 57,
28802 OPC_CheckChild1Integer, 0,
28803 OPC_RecordChild2,
28804 OPC_SwitchType , 24, MVT::v8i16,
28805 OPC_CheckChild2Type, MVT::v8f16,
28806 OPC_CheckPatternPredicate2,
28807 OPC_EmitInteger32, 0,
28808 OPC_EmitRegisterI32, 0 ,
28809 OPC_EmitRegisterI32, 0 ,
28810 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28811 MVT::v4i32, 0,
28812 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16m),
28813 MVT::v8i16, 5, 0, 1, 2, 3, 4,
28814 24, MVT::v4i32,
28815 OPC_CheckChild2Type, MVT::v4f32,
28816 OPC_CheckPatternPredicate2,
28817 OPC_EmitInteger32, 0,
28818 OPC_EmitRegisterI32, 0 ,
28819 OPC_EmitRegisterI32, 0 ,
28820 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28821 MVT::v4i32, 0,
28822 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32m),
28823 MVT::v4i32, 5, 0, 1, 2, 3, 4,
28824 0,
28825 57,
28826 OPC_CheckChild1Integer, 2,
28827 OPC_RecordChild2,
28828 OPC_SwitchType , 24, MVT::v8i16,
28829 OPC_CheckChild2Type, MVT::v8f16,
28830 OPC_CheckPatternPredicate2,
28831 OPC_EmitInteger32, 0,
28832 OPC_EmitRegisterI32, 0 ,
28833 OPC_EmitRegisterI32, 0 ,
28834 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28835 MVT::v4i32, 0,
28836 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16m),
28837 MVT::v8i16, 5, 0, 1, 2, 3, 4,
28838 24, MVT::v4i32,
28839 OPC_CheckChild2Type, MVT::v4f32,
28840 OPC_CheckPatternPredicate2,
28841 OPC_EmitInteger32, 0,
28842 OPC_EmitRegisterI32, 0 ,
28843 OPC_EmitRegisterI32, 0 ,
28844 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
28845 MVT::v4i32, 0,
28846 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32m),
28847 MVT::v4i32, 5, 0, 1, 2, 3, 4,
28848 0,
28849 0,
28850 117,
28851 OPC_CheckChild0Integer, 52|128,51,
28852 OPC_Scope, 55,
28853 OPC_CheckChild1Integer, 0,
28854 OPC_RecordChild2,
28855 OPC_SwitchType , 23, MVT::v8i16,
28856 OPC_CheckChild2Type, MVT::v8i16,
28857 OPC_RecordChild3,
28858 OPC_CheckChild3Type, MVT::v8f16,
28859 OPC_RecordChild4,
28860 OPC_CheckChild4Type, MVT::v8i1,
28861 OPC_CheckPatternPredicate2,
28862 OPC_EmitInteger32, 2,
28863 OPC_EmitRegisterI32, 0 ,
28864 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16m),
28865 MVT::v8i16, 5, 1, 3, 2, 4, 0,
28866 23, MVT::v4i32,
28867 OPC_CheckChild2Type, MVT::v4i32,
28868 OPC_RecordChild3,
28869 OPC_CheckChild3Type, MVT::v4f32,
28870 OPC_RecordChild4,
28871 OPC_CheckChild4Type, MVT::v4i1,
28872 OPC_CheckPatternPredicate2,
28873 OPC_EmitInteger32, 2,
28874 OPC_EmitRegisterI32, 0 ,
28875 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32m),
28876 MVT::v4i32, 5, 1, 3, 2, 4, 0,
28877 0,
28878 55,
28879 OPC_CheckChild1Integer, 2,
28880 OPC_RecordChild2,
28881 OPC_SwitchType , 23, MVT::v8i16,
28882 OPC_CheckChild2Type, MVT::v8i16,
28883 OPC_RecordChild3,
28884 OPC_CheckChild3Type, MVT::v8f16,
28885 OPC_RecordChild4,
28886 OPC_CheckChild4Type, MVT::v8i1,
28887 OPC_CheckPatternPredicate2,
28888 OPC_EmitInteger32, 2,
28889 OPC_EmitRegisterI32, 0 ,
28890 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16m),
28891 MVT::v8i16, 5, 1, 3, 2, 4, 0,
28892 23, MVT::v4i32,
28893 OPC_CheckChild2Type, MVT::v4i32,
28894 OPC_RecordChild3,
28895 OPC_CheckChild3Type, MVT::v4f32,
28896 OPC_RecordChild4,
28897 OPC_CheckChild4Type, MVT::v4i1,
28898 OPC_CheckPatternPredicate2,
28899 OPC_EmitInteger32, 2,
28900 OPC_EmitRegisterI32, 0 ,
28901 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32m),
28902 MVT::v4i32, 5, 1, 3, 2, 4, 0,
28903 0,
28904 0,
28905 94|128,1,
28906 OPC_CheckChild0Integer, 36|128,51,
28907 OPC_RecordChild1,
28908 OPC_SwitchType , 52, MVT::v8i16,
28909 OPC_CheckChild1Type, MVT::v8f16,
28910 OPC_Scope, 23,
28911 OPC_CheckChild2Integer, 0,
28912 OPC_RecordChild3,
28913 OPC_CheckChild3Type, MVT::v8i1,
28914 OPC_RecordChild4,
28915 OPC_CheckChild4Type, MVT::v8i16,
28916 OPC_CheckPatternPredicate2,
28917 OPC_EmitInteger32, 2,
28918 OPC_EmitRegisterI32, 0 ,
28919 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16z),
28920 MVT::v8i16, 5, 0, 3, 1, 4, 2,
28921 23,
28922 OPC_CheckChild2Integer, 2,
28923 OPC_RecordChild3,
28924 OPC_CheckChild3Type, MVT::v8i1,
28925 OPC_RecordChild4,
28926 OPC_CheckChild4Type, MVT::v8i16,
28927 OPC_CheckPatternPredicate2,
28928 OPC_EmitInteger32, 2,
28929 OPC_EmitRegisterI32, 0 ,
28930 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16z),
28931 MVT::v8i16, 5, 0, 3, 1, 4, 2,
28932 0,
28933 52, MVT::v4i32,
28934 OPC_CheckChild1Type, MVT::v4f32,
28935 OPC_Scope, 23,
28936 OPC_CheckChild2Integer, 0,
28937 OPC_RecordChild3,
28938 OPC_CheckChild3Type, MVT::v4i1,
28939 OPC_RecordChild4,
28940 OPC_CheckChild4Type, MVT::v4i32,
28941 OPC_CheckPatternPredicate2,
28942 OPC_EmitInteger32, 2,
28943 OPC_EmitRegisterI32, 0 ,
28944 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32z),
28945 MVT::v4i32, 5, 0, 3, 1, 4, 2,
28946 23,
28947 OPC_CheckChild2Integer, 2,
28948 OPC_RecordChild3,
28949 OPC_CheckChild3Type, MVT::v4i1,
28950 OPC_RecordChild4,
28951 OPC_CheckChild4Type, MVT::v4i32,
28952 OPC_CheckPatternPredicate2,
28953 OPC_EmitInteger32, 2,
28954 OPC_EmitRegisterI32, 0 ,
28955 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32z),
28956 MVT::v4i32, 5, 0, 3, 1, 4, 2,
28957 0,
28958 52, MVT::v8f16,
28959 OPC_CheckChild1Type, MVT::v8i16,
28960 OPC_Scope, 23,
28961 OPC_CheckChild2Integer, 0,
28962 OPC_RecordChild3,
28963 OPC_CheckChild3Type, MVT::v8i1,
28964 OPC_RecordChild4,
28965 OPC_CheckChild4Type, MVT::v8f16,
28966 OPC_CheckPatternPredicate2,
28967 OPC_EmitInteger32, 2,
28968 OPC_EmitRegisterI32, 0 ,
28969 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16s16n),
28970 MVT::v8f16, 5, 0, 3, 1, 4, 2,
28971 23,
28972 OPC_CheckChild2Integer, 2,
28973 OPC_RecordChild3,
28974 OPC_CheckChild3Type, MVT::v8i1,
28975 OPC_RecordChild4,
28976 OPC_CheckChild4Type, MVT::v8f16,
28977 OPC_CheckPatternPredicate2,
28978 OPC_EmitInteger32, 2,
28979 OPC_EmitRegisterI32, 0 ,
28980 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16u16n),
28981 MVT::v8f16, 5, 0, 3, 1, 4, 2,
28982 0,
28983 52, MVT::v4f32,
28984 OPC_CheckChild1Type, MVT::v4i32,
28985 OPC_Scope, 23,
28986 OPC_CheckChild2Integer, 0,
28987 OPC_RecordChild3,
28988 OPC_CheckChild3Type, MVT::v4i1,
28989 OPC_RecordChild4,
28990 OPC_CheckChild4Type, MVT::v4f32,
28991 OPC_CheckPatternPredicate2,
28992 OPC_EmitInteger32, 2,
28993 OPC_EmitRegisterI32, 0 ,
28994 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32s32n),
28995 MVT::v4f32, 5, 0, 3, 1, 4, 2,
28996 23,
28997 OPC_CheckChild2Integer, 2,
28998 OPC_RecordChild3,
28999 OPC_CheckChild3Type, MVT::v4i1,
29000 OPC_RecordChild4,
29001 OPC_CheckChild4Type, MVT::v4f32,
29002 OPC_CheckPatternPredicate2,
29003 OPC_EmitInteger32, 2,
29004 OPC_EmitRegisterI32, 0 ,
29005 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32u32n),
29006 MVT::v4f32, 5, 0, 3, 1, 4, 2,
29007 0,
29008 0,
29009 0|128,1,
29010 OPC_CheckChild0Integer, 126|128,51,
29011 OPC_RecordChild1,
29012 OPC_SwitchType , 59, MVT::v8i16,
29013 OPC_CheckChild1Type, MVT::v16i8,
29014 OPC_RecordChild2,
29015 OPC_CheckChild2Type, MVT::v16i8,
29016 OPC_Scope, 25,
29017 OPC_CheckChild3Integer, 0,
29018 OPC_CheckPatternPredicate0,
29019 OPC_EmitInteger32, 0,
29020 OPC_EmitRegisterI32, 0 ,
29021 OPC_EmitRegisterI32, 0 ,
29022 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29023 MVT::v4i32, 0,
29024 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBp8),
29025 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
29026 25,
29027 OPC_CheckChild3Integer, 2,
29028 OPC_CheckPatternPredicate0,
29029 OPC_EmitInteger32, 0,
29030 OPC_EmitRegisterI32, 0 ,
29031 OPC_EmitRegisterI32, 0 ,
29032 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29033 MVT::v4i32, 0,
29034 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTp8),
29035 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
29036 0,
29037 59, MVT::v4i32,
29038 OPC_CheckChild1Type, MVT::v8i16,
29039 OPC_RecordChild2,
29040 OPC_CheckChild2Type, MVT::v8i16,
29041 OPC_Scope, 25,
29042 OPC_CheckChild3Integer, 0,
29043 OPC_CheckPatternPredicate0,
29044 OPC_EmitInteger32, 0,
29045 OPC_EmitRegisterI32, 0 ,
29046 OPC_EmitRegisterI32, 0 ,
29047 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29048 MVT::v4i32, 0,
29049 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBp16),
29050 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
29051 25,
29052 OPC_CheckChild3Integer, 2,
29053 OPC_CheckPatternPredicate0,
29054 OPC_EmitInteger32, 0,
29055 OPC_EmitRegisterI32, 0 ,
29056 OPC_EmitRegisterI32, 0 ,
29057 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29058 MVT::v4i32, 0,
29059 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTp16),
29060 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
29061 0,
29062 0,
29063 124,
29064 OPC_CheckChild0Integer, 64|128,50,
29065 OPC_RecordChild1,
29066 OPC_SwitchType , 57, MVT::v8i16,
29067 OPC_CheckChild1Type, MVT::v16i8,
29068 OPC_RecordChild2,
29069 OPC_CheckChild2Type, MVT::v16i8,
29070 OPC_Scope, 24,
29071 OPC_CheckChild3Integer, 0,
29072 OPC_RecordChild4,
29073 OPC_CheckChild4Type, MVT::v8i1,
29074 OPC_RecordChild5,
29075 OPC_CheckChild5Type, MVT::v8i16,
29076 OPC_CheckPatternPredicate0,
29077 OPC_EmitInteger32, 2,
29078 OPC_EmitRegisterI32, 0 ,
29079 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBp8),
29080 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
29081 24,
29082 OPC_CheckChild3Integer, 2,
29083 OPC_RecordChild4,
29084 OPC_CheckChild4Type, MVT::v8i1,
29085 OPC_RecordChild5,
29086 OPC_CheckChild5Type, MVT::v8i16,
29087 OPC_CheckPatternPredicate0,
29088 OPC_EmitInteger32, 2,
29089 OPC_EmitRegisterI32, 0 ,
29090 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTp8),
29091 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
29092 0,
29093 57, MVT::v4i32,
29094 OPC_CheckChild1Type, MVT::v8i16,
29095 OPC_RecordChild2,
29096 OPC_CheckChild2Type, MVT::v8i16,
29097 OPC_Scope, 24,
29098 OPC_CheckChild3Integer, 0,
29099 OPC_RecordChild4,
29100 OPC_CheckChild4Type, MVT::v4i1,
29101 OPC_RecordChild5,
29102 OPC_CheckChild5Type, MVT::v4i32,
29103 OPC_CheckPatternPredicate0,
29104 OPC_EmitInteger32, 2,
29105 OPC_EmitRegisterI32, 0 ,
29106 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBp16),
29107 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
29108 24,
29109 OPC_CheckChild3Integer, 2,
29110 OPC_RecordChild4,
29111 OPC_CheckChild4Type, MVT::v4i1,
29112 OPC_RecordChild5,
29113 OPC_CheckChild5Type, MVT::v4i32,
29114 OPC_CheckPatternPredicate0,
29115 OPC_EmitInteger32, 2,
29116 OPC_EmitRegisterI32, 0 ,
29117 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTp16),
29118 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
29119 0,
29120 0,
29121 55|128,1,
29122 OPC_CheckChild0Integer, 60|128,50,
29123 OPC_RecordChild1,
29124 OPC_SwitchType , 57, MVT::v16i8,
29125 OPC_CheckChild1Type, MVT::v16i8,
29126 OPC_RecordChild2,
29127 OPC_CheckChild2Type, MVT::v16i8,
29128 OPC_Scope, 24,
29129 OPC_CheckChild3Integer, 0,
29130 OPC_RecordChild4,
29131 OPC_CheckChild4Type, MVT::v16i1,
29132 OPC_RecordChild5,
29133 OPC_CheckChild5Type, MVT::v16i8,
29134 OPC_CheckPatternPredicate0,
29135 OPC_EmitInteger32, 2,
29136 OPC_EmitRegisterI32, 0 ,
29137 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs8),
29138 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
29139 24,
29140 OPC_CheckChild3Integer, 2,
29141 OPC_RecordChild4,
29142 OPC_CheckChild4Type, MVT::v16i1,
29143 OPC_RecordChild5,
29144 OPC_CheckChild5Type, MVT::v16i8,
29145 OPC_CheckPatternPredicate0,
29146 OPC_EmitInteger32, 2,
29147 OPC_EmitRegisterI32, 0 ,
29148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu8),
29149 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
29150 0,
29151 57, MVT::v8i16,
29152 OPC_CheckChild1Type, MVT::v8i16,
29153 OPC_RecordChild2,
29154 OPC_CheckChild2Type, MVT::v8i16,
29155 OPC_Scope, 24,
29156 OPC_CheckChild3Integer, 0,
29157 OPC_RecordChild4,
29158 OPC_CheckChild4Type, MVT::v8i1,
29159 OPC_RecordChild5,
29160 OPC_CheckChild5Type, MVT::v8i16,
29161 OPC_CheckPatternPredicate0,
29162 OPC_EmitInteger32, 2,
29163 OPC_EmitRegisterI32, 0 ,
29164 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs16),
29165 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
29166 24,
29167 OPC_CheckChild3Integer, 2,
29168 OPC_RecordChild4,
29169 OPC_CheckChild4Type, MVT::v8i1,
29170 OPC_RecordChild5,
29171 OPC_CheckChild5Type, MVT::v8i16,
29172 OPC_CheckPatternPredicate0,
29173 OPC_EmitInteger32, 2,
29174 OPC_EmitRegisterI32, 0 ,
29175 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu16),
29176 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
29177 0,
29178 57, MVT::v4i32,
29179 OPC_CheckChild1Type, MVT::v4i32,
29180 OPC_RecordChild2,
29181 OPC_CheckChild2Type, MVT::v4i32,
29182 OPC_Scope, 24,
29183 OPC_CheckChild3Integer, 0,
29184 OPC_RecordChild4,
29185 OPC_CheckChild4Type, MVT::v4i1,
29186 OPC_RecordChild5,
29187 OPC_CheckChild5Type, MVT::v4i32,
29188 OPC_CheckPatternPredicate0,
29189 OPC_EmitInteger32, 2,
29190 OPC_EmitRegisterI32, 0 ,
29191 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs32),
29192 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
29193 24,
29194 OPC_CheckChild3Integer, 2,
29195 OPC_RecordChild4,
29196 OPC_CheckChild4Type, MVT::v4i1,
29197 OPC_RecordChild5,
29198 OPC_CheckChild5Type, MVT::v4i32,
29199 OPC_CheckPatternPredicate0,
29200 OPC_EmitInteger32, 2,
29201 OPC_EmitRegisterI32, 0 ,
29202 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu32),
29203 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
29204 0,
29205 0,
29206 61|128,1,
29207 OPC_CheckChild0Integer, 122|128,51,
29208 OPC_RecordChild1,
29209 OPC_SwitchType , 59, MVT::v16i8,
29210 OPC_CheckChild1Type, MVT::v16i8,
29211 OPC_RecordChild2,
29212 OPC_CheckChild2Type, MVT::v16i8,
29213 OPC_Scope, 25,
29214 OPC_CheckChild3Integer, 0,
29215 OPC_CheckPatternPredicate0,
29216 OPC_EmitInteger32, 0,
29217 OPC_EmitRegisterI32, 0 ,
29218 OPC_EmitRegisterI32, 0 ,
29219 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29220 MVT::v4i32, 0,
29221 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs8),
29222 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
29223 25,
29224 OPC_CheckChild3Integer, 2,
29225 OPC_CheckPatternPredicate0,
29226 OPC_EmitInteger32, 0,
29227 OPC_EmitRegisterI32, 0 ,
29228 OPC_EmitRegisterI32, 0 ,
29229 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29230 MVT::v4i32, 0,
29231 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu8),
29232 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
29233 0,
29234 59, MVT::v8i16,
29235 OPC_CheckChild1Type, MVT::v8i16,
29236 OPC_RecordChild2,
29237 OPC_CheckChild2Type, MVT::v8i16,
29238 OPC_Scope, 25,
29239 OPC_CheckChild3Integer, 0,
29240 OPC_CheckPatternPredicate0,
29241 OPC_EmitInteger32, 0,
29242 OPC_EmitRegisterI32, 0 ,
29243 OPC_EmitRegisterI32, 0 ,
29244 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29245 MVT::v4i32, 0,
29246 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs16),
29247 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
29248 25,
29249 OPC_CheckChild3Integer, 2,
29250 OPC_CheckPatternPredicate0,
29251 OPC_EmitInteger32, 0,
29252 OPC_EmitRegisterI32, 0 ,
29253 OPC_EmitRegisterI32, 0 ,
29254 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29255 MVT::v4i32, 0,
29256 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu16),
29257 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
29258 0,
29259 59, MVT::v4i32,
29260 OPC_CheckChild1Type, MVT::v4i32,
29261 OPC_RecordChild2,
29262 OPC_CheckChild2Type, MVT::v4i32,
29263 OPC_Scope, 25,
29264 OPC_CheckChild3Integer, 0,
29265 OPC_CheckPatternPredicate0,
29266 OPC_EmitInteger32, 0,
29267 OPC_EmitRegisterI32, 0 ,
29268 OPC_EmitRegisterI32, 0 ,
29269 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29270 MVT::v4i32, 0,
29271 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs32),
29272 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
29273 25,
29274 OPC_CheckChild3Integer, 2,
29275 OPC_CheckPatternPredicate0,
29276 OPC_EmitInteger32, 0,
29277 OPC_EmitRegisterI32, 0 ,
29278 OPC_EmitRegisterI32, 0 ,
29279 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29280 MVT::v4i32, 0,
29281 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu32),
29282 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
29283 0,
29284 0,
29285 55|128,1,
29286 OPC_CheckChild0Integer, 92|128,50,
29287 OPC_RecordChild1,
29288 OPC_SwitchType , 57, MVT::v16i8,
29289 OPC_CheckChild1Type, MVT::v16i8,
29290 OPC_RecordChild2,
29291 OPC_CheckChild2Type, MVT::v16i8,
29292 OPC_Scope, 24,
29293 OPC_CheckChild3Integer, 0,
29294 OPC_RecordChild4,
29295 OPC_CheckChild4Type, MVT::v16i1,
29296 OPC_RecordChild5,
29297 OPC_CheckChild5Type, MVT::v16i8,
29298 OPC_CheckPatternPredicate0,
29299 OPC_EmitInteger32, 2,
29300 OPC_EmitRegisterI32, 0 ,
29301 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHs8),
29302 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
29303 24,
29304 OPC_CheckChild3Integer, 2,
29305 OPC_RecordChild4,
29306 OPC_CheckChild4Type, MVT::v16i1,
29307 OPC_RecordChild5,
29308 OPC_CheckChild5Type, MVT::v16i8,
29309 OPC_CheckPatternPredicate0,
29310 OPC_EmitInteger32, 2,
29311 OPC_EmitRegisterI32, 0 ,
29312 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHu8),
29313 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
29314 0,
29315 57, MVT::v8i16,
29316 OPC_CheckChild1Type, MVT::v8i16,
29317 OPC_RecordChild2,
29318 OPC_CheckChild2Type, MVT::v8i16,
29319 OPC_Scope, 24,
29320 OPC_CheckChild3Integer, 0,
29321 OPC_RecordChild4,
29322 OPC_CheckChild4Type, MVT::v8i1,
29323 OPC_RecordChild5,
29324 OPC_CheckChild5Type, MVT::v8i16,
29325 OPC_CheckPatternPredicate0,
29326 OPC_EmitInteger32, 2,
29327 OPC_EmitRegisterI32, 0 ,
29328 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHs16),
29329 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
29330 24,
29331 OPC_CheckChild3Integer, 2,
29332 OPC_RecordChild4,
29333 OPC_CheckChild4Type, MVT::v8i1,
29334 OPC_RecordChild5,
29335 OPC_CheckChild5Type, MVT::v8i16,
29336 OPC_CheckPatternPredicate0,
29337 OPC_EmitInteger32, 2,
29338 OPC_EmitRegisterI32, 0 ,
29339 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHu16),
29340 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
29341 0,
29342 57, MVT::v4i32,
29343 OPC_CheckChild1Type, MVT::v4i32,
29344 OPC_RecordChild2,
29345 OPC_CheckChild2Type, MVT::v4i32,
29346 OPC_Scope, 24,
29347 OPC_CheckChild3Integer, 0,
29348 OPC_RecordChild4,
29349 OPC_CheckChild4Type, MVT::v4i1,
29350 OPC_RecordChild5,
29351 OPC_CheckChild5Type, MVT::v4i32,
29352 OPC_CheckPatternPredicate0,
29353 OPC_EmitInteger32, 2,
29354 OPC_EmitRegisterI32, 0 ,
29355 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHs32),
29356 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
29357 24,
29358 OPC_CheckChild3Integer, 2,
29359 OPC_RecordChild4,
29360 OPC_CheckChild4Type, MVT::v4i1,
29361 OPC_RecordChild5,
29362 OPC_CheckChild5Type, MVT::v4i32,
29363 OPC_CheckPatternPredicate0,
29364 OPC_EmitInteger32, 2,
29365 OPC_EmitRegisterI32, 0 ,
29366 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHu32),
29367 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
29368 0,
29369 0,
29370 61|128,1,
29371 OPC_CheckChild0Integer, 64|128,52,
29372 OPC_RecordChild1,
29373 OPC_SwitchType , 59, MVT::v16i8,
29374 OPC_CheckChild1Type, MVT::v16i8,
29375 OPC_RecordChild2,
29376 OPC_CheckChild2Type, MVT::v16i8,
29377 OPC_Scope, 25,
29378 OPC_CheckChild3Integer, 0,
29379 OPC_CheckPatternPredicate0,
29380 OPC_EmitInteger32, 0,
29381 OPC_EmitRegisterI32, 0 ,
29382 OPC_EmitRegisterI32, 0 ,
29383 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29384 MVT::v4i32, 0,
29385 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHs8),
29386 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
29387 25,
29388 OPC_CheckChild3Integer, 2,
29389 OPC_CheckPatternPredicate0,
29390 OPC_EmitInteger32, 0,
29391 OPC_EmitRegisterI32, 0 ,
29392 OPC_EmitRegisterI32, 0 ,
29393 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29394 MVT::v4i32, 0,
29395 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHu8),
29396 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
29397 0,
29398 59, MVT::v8i16,
29399 OPC_CheckChild1Type, MVT::v8i16,
29400 OPC_RecordChild2,
29401 OPC_CheckChild2Type, MVT::v8i16,
29402 OPC_Scope, 25,
29403 OPC_CheckChild3Integer, 0,
29404 OPC_CheckPatternPredicate0,
29405 OPC_EmitInteger32, 0,
29406 OPC_EmitRegisterI32, 0 ,
29407 OPC_EmitRegisterI32, 0 ,
29408 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29409 MVT::v4i32, 0,
29410 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHs16),
29411 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
29412 25,
29413 OPC_CheckChild3Integer, 2,
29414 OPC_CheckPatternPredicate0,
29415 OPC_EmitInteger32, 0,
29416 OPC_EmitRegisterI32, 0 ,
29417 OPC_EmitRegisterI32, 0 ,
29418 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29419 MVT::v4i32, 0,
29420 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHu16),
29421 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
29422 0,
29423 59, MVT::v4i32,
29424 OPC_CheckChild1Type, MVT::v4i32,
29425 OPC_RecordChild2,
29426 OPC_CheckChild2Type, MVT::v4i32,
29427 OPC_Scope, 25,
29428 OPC_CheckChild3Integer, 0,
29429 OPC_CheckPatternPredicate0,
29430 OPC_EmitInteger32, 0,
29431 OPC_EmitRegisterI32, 0 ,
29432 OPC_EmitRegisterI32, 0 ,
29433 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29434 MVT::v4i32, 0,
29435 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHs32),
29436 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
29437 25,
29438 OPC_CheckChild3Integer, 2,
29439 OPC_CheckPatternPredicate0,
29440 OPC_EmitInteger32, 0,
29441 OPC_EmitRegisterI32, 0 ,
29442 OPC_EmitRegisterI32, 0 ,
29443 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29444 MVT::v4i32, 0,
29445 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRMULHu32),
29446 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
29447 0,
29448 0,
29449 104,
29450 OPC_CheckChild0Integer, 120|128,51,
29451 OPC_RecordChild1,
29452 OPC_SwitchType , 47, MVT::v8i16,
29453 OPC_CheckChild1Type, MVT::v8i16,
29454 OPC_RecordChild2,
29455 OPC_CheckChild2Type, MVT::v4i32,
29456 OPC_Scope, 19,
29457 OPC_CheckChild3Integer, 0,
29458 OPC_RecordChild4,
29459 OPC_CheckChild4Type, MVT::v4i1,
29460 OPC_EmitInteger32, 2,
29461 OPC_EmitRegisterI32, 0 ,
29462 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVNi32bh),
29463 MVT::v8i16, 5, 0, 1, 3, 2, 4,
29464 19,
29465 OPC_CheckChild3Integer, 2,
29466 OPC_RecordChild4,
29467 OPC_CheckChild4Type, MVT::v4i1,
29468 OPC_EmitInteger32, 2,
29469 OPC_EmitRegisterI32, 0 ,
29470 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVNi32th),
29471 MVT::v8i16, 5, 0, 1, 3, 2, 4,
29472 0,
29473 47, MVT::v16i8,
29474 OPC_CheckChild1Type, MVT::v16i8,
29475 OPC_RecordChild2,
29476 OPC_CheckChild2Type, MVT::v8i16,
29477 OPC_Scope, 19,
29478 OPC_CheckChild3Integer, 0,
29479 OPC_RecordChild4,
29480 OPC_CheckChild4Type, MVT::v8i1,
29481 OPC_EmitInteger32, 2,
29482 OPC_EmitRegisterI32, 0 ,
29483 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVNi16bh),
29484 MVT::v16i8, 5, 0, 1, 3, 2, 4,
29485 19,
29486 OPC_CheckChild3Integer, 2,
29487 OPC_RecordChild4,
29488 OPC_CheckChild4Type, MVT::v8i1,
29489 OPC_EmitInteger32, 2,
29490 OPC_EmitRegisterI32, 0 ,
29491 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVNi16th),
29492 MVT::v16i8, 5, 0, 1, 3, 2, 4,
29493 0,
29494 0,
29495 107,
29496 OPC_CheckChild0Integer, 94|128,52,
29497 OPC_RecordChild1,
29498 OPC_Scope, 33,
29499 OPC_CheckChild1Type, MVT::v16i8,
29500 OPC_RecordChild2,
29501 OPC_CheckChild2Type, MVT::v16i8,
29502 OPC_RecordChild3,
29503 OPC_MoveChild3,
29504 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29505 OPC_CheckPredicate, 28,
29506 OPC_MoveParent,
29507 OPC_CheckType, MVT::v16i8,
29508 OPC_EmitConvertToTarget2,
29509 OPC_EmitInteger32, 0,
29510 OPC_EmitRegisterI32, 0 ,
29511 OPC_EmitRegisterI32, 0 ,
29512 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSLIimm8),
29513 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
29514 33,
29515 OPC_CheckChild1Type, MVT::v8i16,
29516 OPC_RecordChild2,
29517 OPC_CheckChild2Type, MVT::v8i16,
29518 OPC_RecordChild3,
29519 OPC_MoveChild3,
29520 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29521 OPC_CheckPredicate, 23,
29522 OPC_MoveParent,
29523 OPC_CheckType, MVT::v8i16,
29524 OPC_EmitConvertToTarget2,
29525 OPC_EmitInteger32, 0,
29526 OPC_EmitRegisterI32, 0 ,
29527 OPC_EmitRegisterI32, 0 ,
29528 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSLIimm16),
29529 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
29530 32,
29531 OPC_CheckChild1Type, MVT::v4i32,
29532 OPC_RecordChild2,
29533 OPC_CheckChild2Type, MVT::v4i32,
29534 OPC_RecordChild3,
29535 OPC_MoveChild3,
29536 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29537 OPC_CheckPredicate5,
29538 OPC_MoveParent,
29539 OPC_CheckType, MVT::v4i32,
29540 OPC_EmitConvertToTarget2,
29541 OPC_EmitInteger32, 0,
29542 OPC_EmitRegisterI32, 0 ,
29543 OPC_EmitRegisterI32, 0 ,
29544 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSLIimm32),
29545 MVT::v4i32, 6, 0, 1, 3, 4, 5, 6,
29546 0,
29547 110,
29548 OPC_CheckChild0Integer, 96|128,52,
29549 OPC_RecordChild1,
29550 OPC_Scope, 34,
29551 OPC_CheckChild1Type, MVT::v16i8,
29552 OPC_RecordChild2,
29553 OPC_CheckChild2Type, MVT::v16i8,
29554 OPC_RecordChild3,
29555 OPC_MoveChild3,
29556 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29557 OPC_CheckPredicate, 28,
29558 OPC_MoveParent,
29559 OPC_RecordChild4,
29560 OPC_CheckChild4Type, MVT::v16i1,
29561 OPC_CheckType, MVT::v16i8,
29562 OPC_EmitConvertToTarget2,
29563 OPC_EmitInteger32, 2,
29564 OPC_EmitRegisterI32, 0 ,
29565 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSLIimm8),
29566 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
29567 34,
29568 OPC_CheckChild1Type, MVT::v8i16,
29569 OPC_RecordChild2,
29570 OPC_CheckChild2Type, MVT::v8i16,
29571 OPC_RecordChild3,
29572 OPC_MoveChild3,
29573 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29574 OPC_CheckPredicate, 23,
29575 OPC_MoveParent,
29576 OPC_RecordChild4,
29577 OPC_CheckChild4Type, MVT::v8i1,
29578 OPC_CheckType, MVT::v8i16,
29579 OPC_EmitConvertToTarget2,
29580 OPC_EmitInteger32, 2,
29581 OPC_EmitRegisterI32, 0 ,
29582 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSLIimm16),
29583 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
29584 33,
29585 OPC_CheckChild1Type, MVT::v4i32,
29586 OPC_RecordChild2,
29587 OPC_CheckChild2Type, MVT::v4i32,
29588 OPC_RecordChild3,
29589 OPC_MoveChild3,
29590 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29591 OPC_CheckPredicate5,
29592 OPC_MoveParent,
29593 OPC_RecordChild4,
29594 OPC_CheckChild4Type, MVT::v4i1,
29595 OPC_CheckType, MVT::v4i32,
29596 OPC_EmitConvertToTarget2,
29597 OPC_EmitInteger32, 2,
29598 OPC_EmitRegisterI32, 0 ,
29599 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSLIimm32),
29600 MVT::v4i32, 6, 0, 1, 4, 5, 3, 6,
29601 0,
29602 108,
29603 OPC_CheckChild0Integer, 98|128,52,
29604 OPC_RecordChild1,
29605 OPC_Scope, 33,
29606 OPC_CheckChild1Type, MVT::v16i8,
29607 OPC_RecordChild2,
29608 OPC_CheckChild2Type, MVT::v16i8,
29609 OPC_RecordChild3,
29610 OPC_MoveChild3,
29611 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29612 OPC_CheckPredicate, 29,
29613 OPC_MoveParent,
29614 OPC_CheckType, MVT::v16i8,
29615 OPC_EmitConvertToTarget2,
29616 OPC_EmitInteger32, 0,
29617 OPC_EmitRegisterI32, 0 ,
29618 OPC_EmitRegisterI32, 0 ,
29619 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSRIimm8),
29620 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
29621 33,
29622 OPC_CheckChild1Type, MVT::v8i16,
29623 OPC_RecordChild2,
29624 OPC_CheckChild2Type, MVT::v8i16,
29625 OPC_RecordChild3,
29626 OPC_MoveChild3,
29627 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29628 OPC_CheckPredicate, 30,
29629 OPC_MoveParent,
29630 OPC_CheckType, MVT::v8i16,
29631 OPC_EmitConvertToTarget2,
29632 OPC_EmitInteger32, 0,
29633 OPC_EmitRegisterI32, 0 ,
29634 OPC_EmitRegisterI32, 0 ,
29635 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSRIimm16),
29636 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
29637 33,
29638 OPC_CheckChild1Type, MVT::v4i32,
29639 OPC_RecordChild2,
29640 OPC_CheckChild2Type, MVT::v4i32,
29641 OPC_RecordChild3,
29642 OPC_MoveChild3,
29643 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29644 OPC_CheckPredicate, 19,
29645 OPC_MoveParent,
29646 OPC_CheckType, MVT::v4i32,
29647 OPC_EmitConvertToTarget2,
29648 OPC_EmitInteger32, 0,
29649 OPC_EmitRegisterI32, 0 ,
29650 OPC_EmitRegisterI32, 0 ,
29651 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSRIimm32),
29652 MVT::v4i32, 6, 0, 1, 3, 4, 5, 6,
29653 0,
29654 111,
29655 OPC_CheckChild0Integer, 100|128,52,
29656 OPC_RecordChild1,
29657 OPC_Scope, 34,
29658 OPC_CheckChild1Type, MVT::v16i8,
29659 OPC_RecordChild2,
29660 OPC_CheckChild2Type, MVT::v16i8,
29661 OPC_RecordChild3,
29662 OPC_MoveChild3,
29663 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29664 OPC_CheckPredicate, 29,
29665 OPC_MoveParent,
29666 OPC_RecordChild4,
29667 OPC_CheckChild4Type, MVT::v16i1,
29668 OPC_CheckType, MVT::v16i8,
29669 OPC_EmitConvertToTarget2,
29670 OPC_EmitInteger32, 2,
29671 OPC_EmitRegisterI32, 0 ,
29672 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSRIimm8),
29673 MVT::v16i8, 6, 0, 1, 4, 5, 3, 6,
29674 34,
29675 OPC_CheckChild1Type, MVT::v8i16,
29676 OPC_RecordChild2,
29677 OPC_CheckChild2Type, MVT::v8i16,
29678 OPC_RecordChild3,
29679 OPC_MoveChild3,
29680 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29681 OPC_CheckPredicate, 30,
29682 OPC_MoveParent,
29683 OPC_RecordChild4,
29684 OPC_CheckChild4Type, MVT::v8i1,
29685 OPC_CheckType, MVT::v8i16,
29686 OPC_EmitConvertToTarget2,
29687 OPC_EmitInteger32, 2,
29688 OPC_EmitRegisterI32, 0 ,
29689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSRIimm16),
29690 MVT::v8i16, 6, 0, 1, 4, 5, 3, 6,
29691 34,
29692 OPC_CheckChild1Type, MVT::v4i32,
29693 OPC_RecordChild2,
29694 OPC_CheckChild2Type, MVT::v4i32,
29695 OPC_RecordChild3,
29696 OPC_MoveChild3,
29697 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29698 OPC_CheckPredicate, 19,
29699 OPC_MoveParent,
29700 OPC_RecordChild4,
29701 OPC_CheckChild4Type, MVT::v4i1,
29702 OPC_CheckType, MVT::v4i32,
29703 OPC_EmitConvertToTarget2,
29704 OPC_EmitInteger32, 2,
29705 OPC_EmitRegisterI32, 0 ,
29706 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSRIimm32),
29707 MVT::v4i32, 6, 0, 1, 4, 5, 3, 6,
29708 0,
29709 113,
29710 OPC_CheckChild0Integer, 36|128,52,
29711 OPC_RecordChild1,
29712 OPC_Scope, 35,
29713 OPC_CheckChild1Type, MVT::v16i8,
29714 OPC_RecordChild2,
29715 OPC_MoveChild2,
29716 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29717 OPC_CheckPredicate, 28,
29718 OPC_MoveParent,
29719 OPC_CheckType, MVT::v16i8,
29720 OPC_EmitConvertToTarget1,
29721 OPC_EmitInteger32, 0,
29722 OPC_EmitRegisterI32, 0 ,
29723 OPC_EmitRegisterI32, 0 ,
29724 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29725 MVT::v4i32, 0,
29726 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLU_imms8),
29727 MVT::v16i8, 6, 0, 2, 3, 4, 5, 6,
29728 35,
29729 OPC_CheckChild1Type, MVT::v8i16,
29730 OPC_RecordChild2,
29731 OPC_MoveChild2,
29732 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29733 OPC_CheckPredicate, 23,
29734 OPC_MoveParent,
29735 OPC_CheckType, MVT::v8i16,
29736 OPC_EmitConvertToTarget1,
29737 OPC_EmitInteger32, 0,
29738 OPC_EmitRegisterI32, 0 ,
29739 OPC_EmitRegisterI32, 0 ,
29740 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29741 MVT::v4i32, 0,
29742 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLU_imms16),
29743 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
29744 34,
29745 OPC_CheckChild1Type, MVT::v4i32,
29746 OPC_RecordChild2,
29747 OPC_MoveChild2,
29748 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29749 OPC_CheckPredicate5,
29750 OPC_MoveParent,
29751 OPC_CheckType, MVT::v4i32,
29752 OPC_EmitConvertToTarget1,
29753 OPC_EmitInteger32, 0,
29754 OPC_EmitRegisterI32, 0 ,
29755 OPC_EmitRegisterI32, 0 ,
29756 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
29757 MVT::v4i32, 0,
29758 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLU_imms32),
29759 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
29760 0,
29761 110,
29762 OPC_CheckChild0Integer, 38|128,52,
29763 OPC_RecordChild1,
29764 OPC_Scope, 34,
29765 OPC_CheckChild1Type, MVT::v16i8,
29766 OPC_RecordChild2,
29767 OPC_MoveChild2,
29768 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29769 OPC_CheckPredicate, 28,
29770 OPC_MoveParent,
29771 OPC_RecordChild3,
29772 OPC_CheckChild3Type, MVT::v16i1,
29773 OPC_RecordChild4,
29774 OPC_CheckChild4Type, MVT::v16i8,
29775 OPC_CheckType, MVT::v16i8,
29776 OPC_EmitConvertToTarget1,
29777 OPC_EmitInteger32, 2,
29778 OPC_EmitRegisterI32, 0 ,
29779 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLU_imms8),
29780 MVT::v16i8, 6, 0, 4, 5, 2, 6, 3,
29781 34,
29782 OPC_CheckChild1Type, MVT::v8i16,
29783 OPC_RecordChild2,
29784 OPC_MoveChild2,
29785 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29786 OPC_CheckPredicate, 23,
29787 OPC_MoveParent,
29788 OPC_RecordChild3,
29789 OPC_CheckChild3Type, MVT::v8i1,
29790 OPC_RecordChild4,
29791 OPC_CheckChild4Type, MVT::v8i16,
29792 OPC_CheckType, MVT::v8i16,
29793 OPC_EmitConvertToTarget1,
29794 OPC_EmitInteger32, 2,
29795 OPC_EmitRegisterI32, 0 ,
29796 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLU_imms16),
29797 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
29798 33,
29799 OPC_CheckChild1Type, MVT::v4i32,
29800 OPC_RecordChild2,
29801 OPC_MoveChild2,
29802 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29803 OPC_CheckPredicate5,
29804 OPC_MoveParent,
29805 OPC_RecordChild3,
29806 OPC_CheckChild3Type, MVT::v4i1,
29807 OPC_RecordChild4,
29808 OPC_CheckChild4Type, MVT::v4i32,
29809 OPC_CheckType, MVT::v4i32,
29810 OPC_EmitConvertToTarget1,
29811 OPC_EmitInteger32, 2,
29812 OPC_EmitRegisterI32, 0 ,
29813 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHLU_imms32),
29814 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
29815 0,
29816 113,
29817 OPC_CheckChild0Integer, 94|128,50,
29818 OPC_RecordChild1,
29819 OPC_Scope, 35,
29820 OPC_CheckChild1Type, MVT::v16i8,
29821 OPC_RecordChild2,
29822 OPC_MoveChild2,
29823 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29824 OPC_CheckPredicate, 28,
29825 OPC_MoveParent,
29826 OPC_RecordChild3,
29827 OPC_CheckChild3Type, MVT::v16i1,
29828 OPC_RecordChild4,
29829 OPC_CheckChild4Type, MVT::v16i8,
29830 OPC_CheckType, MVT::v16i8,
29831 OPC_CheckPatternPredicate0,
29832 OPC_EmitConvertToTarget1,
29833 OPC_EmitInteger32, 2,
29834 OPC_EmitRegisterI32, 0 ,
29835 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_immi8),
29836 MVT::v16i8, 6, 0, 4, 5, 2, 6, 3,
29837 35,
29838 OPC_CheckChild1Type, MVT::v8i16,
29839 OPC_RecordChild2,
29840 OPC_MoveChild2,
29841 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29842 OPC_CheckPredicate, 23,
29843 OPC_MoveParent,
29844 OPC_RecordChild3,
29845 OPC_CheckChild3Type, MVT::v8i1,
29846 OPC_RecordChild4,
29847 OPC_CheckChild4Type, MVT::v8i16,
29848 OPC_CheckType, MVT::v8i16,
29849 OPC_CheckPatternPredicate0,
29850 OPC_EmitConvertToTarget1,
29851 OPC_EmitInteger32, 2,
29852 OPC_EmitRegisterI32, 0 ,
29853 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_immi16),
29854 MVT::v8i16, 6, 0, 4, 5, 2, 6, 3,
29855 34,
29856 OPC_CheckChild1Type, MVT::v4i32,
29857 OPC_RecordChild2,
29858 OPC_MoveChild2,
29859 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29860 OPC_CheckPredicate5,
29861 OPC_MoveParent,
29862 OPC_RecordChild3,
29863 OPC_CheckChild3Type, MVT::v4i1,
29864 OPC_RecordChild4,
29865 OPC_CheckChild4Type, MVT::v4i32,
29866 OPC_CheckType, MVT::v4i32,
29867 OPC_CheckPatternPredicate0,
29868 OPC_EmitConvertToTarget1,
29869 OPC_EmitInteger32, 2,
29870 OPC_EmitRegisterI32, 0 ,
29871 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_immi32),
29872 MVT::v4i32, 6, 0, 4, 5, 2, 6, 3,
29873 0,
29874 112,
29875 OPC_CheckChild0Integer, 64|128,53,
29876 OPC_RecordChild1,
29877 OPC_Scope, 25,
29878 OPC_CheckChild1Type, MVT::v2f32,
29879 OPC_RecordChild2,
29880 OPC_MoveChild2,
29881 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29882 OPC_MoveParent,
29883 OPC_CheckType, MVT::v2i32,
29884 OPC_CheckPatternPredicate1,
29885 OPC_EmitConvertToTarget1,
29886 OPC_EmitInteger32, 28,
29887 OPC_EmitRegisterI32, 0 ,
29888 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTf2xsd),
29889 MVT::v2i32, 4, 0, 2, 3, 4,
29890 26,
29891 OPC_CheckChild1Type, MVT::v4f16,
29892 OPC_RecordChild2,
29893 OPC_MoveChild2,
29894 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29895 OPC_MoveParent,
29896 OPC_CheckType, MVT::v4i16,
29897 OPC_CheckPatternPredicate, 11,
29898 OPC_EmitConvertToTarget1,
29899 OPC_EmitInteger32, 28,
29900 OPC_EmitRegisterI32, 0 ,
29901 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTh2xsd),
29902 MVT::v4i16, 4, 0, 2, 3, 4,
29903 25,
29904 OPC_CheckChild1Type, MVT::v4f32,
29905 OPC_RecordChild2,
29906 OPC_MoveChild2,
29907 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29908 OPC_MoveParent,
29909 OPC_CheckType, MVT::v4i32,
29910 OPC_CheckPatternPredicate1,
29911 OPC_EmitConvertToTarget1,
29912 OPC_EmitInteger32, 28,
29913 OPC_EmitRegisterI32, 0 ,
29914 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTf2xsq),
29915 MVT::v4i32, 4, 0, 2, 3, 4,
29916 26,
29917 OPC_CheckChild1Type, MVT::v8f16,
29918 OPC_RecordChild2,
29919 OPC_MoveChild2,
29920 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29921 OPC_MoveParent,
29922 OPC_CheckType, MVT::v8i16,
29923 OPC_CheckPatternPredicate, 11,
29924 OPC_EmitConvertToTarget1,
29925 OPC_EmitInteger32, 28,
29926 OPC_EmitRegisterI32, 0 ,
29927 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTh2xsq),
29928 MVT::v8i16, 4, 0, 2, 3, 4,
29929 0,
29930 112,
29931 OPC_CheckChild0Integer, 66|128,53,
29932 OPC_RecordChild1,
29933 OPC_Scope, 25,
29934 OPC_CheckChild1Type, MVT::v2f32,
29935 OPC_RecordChild2,
29936 OPC_MoveChild2,
29937 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29938 OPC_MoveParent,
29939 OPC_CheckType, MVT::v2i32,
29940 OPC_CheckPatternPredicate1,
29941 OPC_EmitConvertToTarget1,
29942 OPC_EmitInteger32, 28,
29943 OPC_EmitRegisterI32, 0 ,
29944 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTf2xud),
29945 MVT::v2i32, 4, 0, 2, 3, 4,
29946 26,
29947 OPC_CheckChild1Type, MVT::v4f16,
29948 OPC_RecordChild2,
29949 OPC_MoveChild2,
29950 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29951 OPC_MoveParent,
29952 OPC_CheckType, MVT::v4i16,
29953 OPC_CheckPatternPredicate, 11,
29954 OPC_EmitConvertToTarget1,
29955 OPC_EmitInteger32, 28,
29956 OPC_EmitRegisterI32, 0 ,
29957 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTh2xud),
29958 MVT::v4i16, 4, 0, 2, 3, 4,
29959 25,
29960 OPC_CheckChild1Type, MVT::v4f32,
29961 OPC_RecordChild2,
29962 OPC_MoveChild2,
29963 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29964 OPC_MoveParent,
29965 OPC_CheckType, MVT::v4i32,
29966 OPC_CheckPatternPredicate1,
29967 OPC_EmitConvertToTarget1,
29968 OPC_EmitInteger32, 28,
29969 OPC_EmitRegisterI32, 0 ,
29970 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTf2xuq),
29971 MVT::v4i32, 4, 0, 2, 3, 4,
29972 26,
29973 OPC_CheckChild1Type, MVT::v8f16,
29974 OPC_RecordChild2,
29975 OPC_MoveChild2,
29976 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
29977 OPC_MoveParent,
29978 OPC_CheckType, MVT::v8i16,
29979 OPC_CheckPatternPredicate, 11,
29980 OPC_EmitConvertToTarget1,
29981 OPC_EmitInteger32, 28,
29982 OPC_EmitRegisterI32, 0 ,
29983 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTh2xuq),
29984 MVT::v8i16, 4, 0, 2, 3, 4,
29985 0,
29986 85|128,2,
29987 OPC_CheckChild0Integer, 120|128,49,
29988 OPC_RecordChild1,
29989 OPC_Scope, 66,
29990 OPC_CheckChild1Type, MVT::v16i8,
29991 OPC_Scope, 33,
29992 OPC_MoveChild2,
29993 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
29994 OPC_RecordChild0,
29995 OPC_CheckChild0TypeI32,
29996 OPC_CheckType, MVT::v16i8,
29997 OPC_MoveParent,
29998 OPC_RecordChild3,
29999 OPC_CheckChild3Type, MVT::v16i1,
30000 OPC_RecordChild4,
30001 OPC_CheckChild4Type, MVT::v16i8,
30002 OPC_CheckType, MVT::v16i8,
30003 OPC_CheckPatternPredicate0,
30004 OPC_EmitInteger32, 2,
30005 OPC_EmitRegisterI32, 0 ,
30006 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i8),
30007 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
30008 27,
30009 OPC_RecordChild2,
30010 OPC_CheckChild2Type, MVT::v16i8,
30011 OPC_RecordChild3,
30012 OPC_CheckChild3Type, MVT::v16i1,
30013 OPC_RecordChild4,
30014 OPC_CheckChild4Type, MVT::v16i8,
30015 OPC_CheckType, MVT::v16i8,
30016 OPC_CheckPatternPredicate0,
30017 OPC_EmitInteger32, 2,
30018 OPC_EmitRegisterI32, 0 ,
30019 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi8),
30020 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
30021 0,
30022 66,
30023 OPC_CheckChild1Type, MVT::v8i16,
30024 OPC_Scope, 33,
30025 OPC_MoveChild2,
30026 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30027 OPC_RecordChild0,
30028 OPC_CheckChild0TypeI32,
30029 OPC_CheckType, MVT::v8i16,
30030 OPC_MoveParent,
30031 OPC_RecordChild3,
30032 OPC_CheckChild3Type, MVT::v8i1,
30033 OPC_RecordChild4,
30034 OPC_CheckChild4Type, MVT::v8i16,
30035 OPC_CheckType, MVT::v8i16,
30036 OPC_CheckPatternPredicate0,
30037 OPC_EmitInteger32, 2,
30038 OPC_EmitRegisterI32, 0 ,
30039 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i16),
30040 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
30041 27,
30042 OPC_RecordChild2,
30043 OPC_CheckChild2Type, MVT::v8i16,
30044 OPC_RecordChild3,
30045 OPC_CheckChild3Type, MVT::v8i1,
30046 OPC_RecordChild4,
30047 OPC_CheckChild4Type, MVT::v8i16,
30048 OPC_CheckType, MVT::v8i16,
30049 OPC_CheckPatternPredicate0,
30050 OPC_EmitInteger32, 2,
30051 OPC_EmitRegisterI32, 0 ,
30052 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi16),
30053 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
30054 0,
30055 66,
30056 OPC_CheckChild1Type, MVT::v4i32,
30057 OPC_Scope, 33,
30058 OPC_MoveChild2,
30059 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30060 OPC_RecordChild0,
30061 OPC_CheckChild0TypeI32,
30062 OPC_CheckType, MVT::v4i32,
30063 OPC_MoveParent,
30064 OPC_RecordChild3,
30065 OPC_CheckChild3Type, MVT::v4i1,
30066 OPC_RecordChild4,
30067 OPC_CheckChild4Type, MVT::v4i32,
30068 OPC_CheckType, MVT::v4i32,
30069 OPC_CheckPatternPredicate0,
30070 OPC_EmitInteger32, 2,
30071 OPC_EmitRegisterI32, 0 ,
30072 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i32),
30073 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
30074 27,
30075 OPC_RecordChild2,
30076 OPC_CheckChild2Type, MVT::v4i32,
30077 OPC_RecordChild3,
30078 OPC_CheckChild3Type, MVT::v4i1,
30079 OPC_RecordChild4,
30080 OPC_CheckChild4Type, MVT::v4i32,
30081 OPC_CheckType, MVT::v4i32,
30082 OPC_CheckPatternPredicate0,
30083 OPC_EmitInteger32, 2,
30084 OPC_EmitRegisterI32, 0 ,
30085 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi32),
30086 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
30087 0,
30088 66,
30089 OPC_CheckChild1Type, MVT::v4f32,
30090 OPC_Scope, 33,
30091 OPC_MoveChild2,
30092 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30093 OPC_RecordChild0,
30094 OPC_CheckChild0TypeI32,
30095 OPC_CheckType, MVT::v4f32,
30096 OPC_MoveParent,
30097 OPC_RecordChild3,
30098 OPC_CheckChild3Type, MVT::v4i1,
30099 OPC_RecordChild4,
30100 OPC_CheckChild4Type, MVT::v4f32,
30101 OPC_CheckType, MVT::v4f32,
30102 OPC_CheckPatternPredicate2,
30103 OPC_EmitInteger32, 2,
30104 OPC_EmitRegisterI32, 0 ,
30105 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f32),
30106 MVT::v4f32, 6, 0, 1, 4, 2, 5, 3,
30107 27,
30108 OPC_RecordChild2,
30109 OPC_CheckChild2Type, MVT::v4f32,
30110 OPC_RecordChild3,
30111 OPC_CheckChild3Type, MVT::v4i1,
30112 OPC_RecordChild4,
30113 OPC_CheckChild4Type, MVT::v4f32,
30114 OPC_CheckType, MVT::v4f32,
30115 OPC_CheckPatternPredicate2,
30116 OPC_EmitInteger32, 2,
30117 OPC_EmitRegisterI32, 0 ,
30118 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDf32),
30119 MVT::v4f32, 6, 0, 1, 4, 2, 5, 3,
30120 0,
30121 66,
30122 OPC_CheckChild1Type, MVT::v8f16,
30123 OPC_Scope, 33,
30124 OPC_MoveChild2,
30125 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30126 OPC_RecordChild0,
30127 OPC_CheckChild0TypeI32,
30128 OPC_CheckType, MVT::v8f16,
30129 OPC_MoveParent,
30130 OPC_RecordChild3,
30131 OPC_CheckChild3Type, MVT::v8i1,
30132 OPC_RecordChild4,
30133 OPC_CheckChild4Type, MVT::v8f16,
30134 OPC_CheckType, MVT::v8f16,
30135 OPC_CheckPatternPredicate2,
30136 OPC_EmitInteger32, 2,
30137 OPC_EmitRegisterI32, 0 ,
30138 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f16),
30139 MVT::v8f16, 6, 0, 1, 4, 2, 5, 3,
30140 27,
30141 OPC_RecordChild2,
30142 OPC_CheckChild2Type, MVT::v8f16,
30143 OPC_RecordChild3,
30144 OPC_CheckChild3Type, MVT::v8i1,
30145 OPC_RecordChild4,
30146 OPC_CheckChild4Type, MVT::v8f16,
30147 OPC_CheckType, MVT::v8f16,
30148 OPC_CheckPatternPredicate2,
30149 OPC_EmitInteger32, 2,
30150 OPC_EmitRegisterI32, 0 ,
30151 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDf16),
30152 MVT::v8f16, 6, 0, 1, 4, 2, 5, 3,
30153 0,
30154 0,
30155 85|128,2,
30156 OPC_CheckChild0Integer, 110|128,50,
30157 OPC_RecordChild1,
30158 OPC_Scope, 66,
30159 OPC_CheckChild1Type, MVT::v16i8,
30160 OPC_Scope, 33,
30161 OPC_MoveChild2,
30162 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30163 OPC_RecordChild0,
30164 OPC_CheckChild0TypeI32,
30165 OPC_CheckType, MVT::v16i8,
30166 OPC_MoveParent,
30167 OPC_RecordChild3,
30168 OPC_CheckChild3Type, MVT::v16i1,
30169 OPC_RecordChild4,
30170 OPC_CheckChild4Type, MVT::v16i8,
30171 OPC_CheckType, MVT::v16i8,
30172 OPC_CheckPatternPredicate0,
30173 OPC_EmitInteger32, 2,
30174 OPC_EmitRegisterI32, 0 ,
30175 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i8),
30176 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
30177 27,
30178 OPC_RecordChild2,
30179 OPC_CheckChild2Type, MVT::v16i8,
30180 OPC_RecordChild3,
30181 OPC_CheckChild3Type, MVT::v16i1,
30182 OPC_RecordChild4,
30183 OPC_CheckChild4Type, MVT::v16i8,
30184 OPC_CheckType, MVT::v16i8,
30185 OPC_CheckPatternPredicate0,
30186 OPC_EmitInteger32, 2,
30187 OPC_EmitRegisterI32, 0 ,
30188 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi8),
30189 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
30190 0,
30191 66,
30192 OPC_CheckChild1Type, MVT::v8i16,
30193 OPC_Scope, 33,
30194 OPC_MoveChild2,
30195 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30196 OPC_RecordChild0,
30197 OPC_CheckChild0TypeI32,
30198 OPC_CheckType, MVT::v8i16,
30199 OPC_MoveParent,
30200 OPC_RecordChild3,
30201 OPC_CheckChild3Type, MVT::v8i1,
30202 OPC_RecordChild4,
30203 OPC_CheckChild4Type, MVT::v8i16,
30204 OPC_CheckType, MVT::v8i16,
30205 OPC_CheckPatternPredicate0,
30206 OPC_EmitInteger32, 2,
30207 OPC_EmitRegisterI32, 0 ,
30208 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i16),
30209 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
30210 27,
30211 OPC_RecordChild2,
30212 OPC_CheckChild2Type, MVT::v8i16,
30213 OPC_RecordChild3,
30214 OPC_CheckChild3Type, MVT::v8i1,
30215 OPC_RecordChild4,
30216 OPC_CheckChild4Type, MVT::v8i16,
30217 OPC_CheckType, MVT::v8i16,
30218 OPC_CheckPatternPredicate0,
30219 OPC_EmitInteger32, 2,
30220 OPC_EmitRegisterI32, 0 ,
30221 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi16),
30222 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
30223 0,
30224 66,
30225 OPC_CheckChild1Type, MVT::v4i32,
30226 OPC_Scope, 33,
30227 OPC_MoveChild2,
30228 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30229 OPC_RecordChild0,
30230 OPC_CheckChild0TypeI32,
30231 OPC_CheckType, MVT::v4i32,
30232 OPC_MoveParent,
30233 OPC_RecordChild3,
30234 OPC_CheckChild3Type, MVT::v4i1,
30235 OPC_RecordChild4,
30236 OPC_CheckChild4Type, MVT::v4i32,
30237 OPC_CheckType, MVT::v4i32,
30238 OPC_CheckPatternPredicate0,
30239 OPC_EmitInteger32, 2,
30240 OPC_EmitRegisterI32, 0 ,
30241 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i32),
30242 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
30243 27,
30244 OPC_RecordChild2,
30245 OPC_CheckChild2Type, MVT::v4i32,
30246 OPC_RecordChild3,
30247 OPC_CheckChild3Type, MVT::v4i1,
30248 OPC_RecordChild4,
30249 OPC_CheckChild4Type, MVT::v4i32,
30250 OPC_CheckType, MVT::v4i32,
30251 OPC_CheckPatternPredicate0,
30252 OPC_EmitInteger32, 2,
30253 OPC_EmitRegisterI32, 0 ,
30254 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi32),
30255 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
30256 0,
30257 66,
30258 OPC_CheckChild1Type, MVT::v4f32,
30259 OPC_Scope, 33,
30260 OPC_MoveChild2,
30261 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30262 OPC_RecordChild0,
30263 OPC_CheckChild0TypeI32,
30264 OPC_CheckType, MVT::v4f32,
30265 OPC_MoveParent,
30266 OPC_RecordChild3,
30267 OPC_CheckChild3Type, MVT::v4i1,
30268 OPC_RecordChild4,
30269 OPC_CheckChild4Type, MVT::v4f32,
30270 OPC_CheckType, MVT::v4f32,
30271 OPC_CheckPatternPredicate2,
30272 OPC_EmitInteger32, 2,
30273 OPC_EmitRegisterI32, 0 ,
30274 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_f32),
30275 MVT::v4f32, 6, 0, 1, 4, 2, 5, 3,
30276 27,
30277 OPC_RecordChild2,
30278 OPC_CheckChild2Type, MVT::v4f32,
30279 OPC_RecordChild3,
30280 OPC_CheckChild3Type, MVT::v4i1,
30281 OPC_RecordChild4,
30282 OPC_CheckChild4Type, MVT::v4f32,
30283 OPC_CheckType, MVT::v4f32,
30284 OPC_CheckPatternPredicate2,
30285 OPC_EmitInteger32, 2,
30286 OPC_EmitRegisterI32, 0 ,
30287 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBf32),
30288 MVT::v4f32, 6, 0, 1, 4, 2, 5, 3,
30289 0,
30290 66,
30291 OPC_CheckChild1Type, MVT::v8f16,
30292 OPC_Scope, 33,
30293 OPC_MoveChild2,
30294 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30295 OPC_RecordChild0,
30296 OPC_CheckChild0TypeI32,
30297 OPC_CheckType, MVT::v8f16,
30298 OPC_MoveParent,
30299 OPC_RecordChild3,
30300 OPC_CheckChild3Type, MVT::v8i1,
30301 OPC_RecordChild4,
30302 OPC_CheckChild4Type, MVT::v8f16,
30303 OPC_CheckType, MVT::v8f16,
30304 OPC_CheckPatternPredicate2,
30305 OPC_EmitInteger32, 2,
30306 OPC_EmitRegisterI32, 0 ,
30307 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_f16),
30308 MVT::v8f16, 6, 0, 1, 4, 2, 5, 3,
30309 27,
30310 OPC_RecordChild2,
30311 OPC_CheckChild2Type, MVT::v8f16,
30312 OPC_RecordChild3,
30313 OPC_CheckChild3Type, MVT::v8i1,
30314 OPC_RecordChild4,
30315 OPC_CheckChild4Type, MVT::v8f16,
30316 OPC_CheckType, MVT::v8f16,
30317 OPC_CheckPatternPredicate2,
30318 OPC_EmitInteger32, 2,
30319 OPC_EmitRegisterI32, 0 ,
30320 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBf16),
30321 MVT::v8f16, 6, 0, 1, 4, 2, 5, 3,
30322 0,
30323 0,
30324 85|128,2,
30325 OPC_CheckChild0Integer, 58|128,50,
30326 OPC_RecordChild1,
30327 OPC_Scope, 66,
30328 OPC_CheckChild1Type, MVT::v16i8,
30329 OPC_Scope, 33,
30330 OPC_MoveChild2,
30331 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30332 OPC_RecordChild0,
30333 OPC_CheckChild0TypeI32,
30334 OPC_CheckType, MVT::v16i8,
30335 OPC_MoveParent,
30336 OPC_RecordChild3,
30337 OPC_CheckChild3Type, MVT::v16i1,
30338 OPC_RecordChild4,
30339 OPC_CheckChild4Type, MVT::v16i8,
30340 OPC_CheckType, MVT::v16i8,
30341 OPC_CheckPatternPredicate0,
30342 OPC_EmitInteger32, 2,
30343 OPC_EmitRegisterI32, 0 ,
30344 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i8),
30345 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
30346 27,
30347 OPC_RecordChild2,
30348 OPC_CheckChild2Type, MVT::v16i8,
30349 OPC_RecordChild3,
30350 OPC_CheckChild3Type, MVT::v16i1,
30351 OPC_RecordChild4,
30352 OPC_CheckChild4Type, MVT::v16i8,
30353 OPC_CheckType, MVT::v16i8,
30354 OPC_CheckPatternPredicate0,
30355 OPC_EmitInteger32, 2,
30356 OPC_EmitRegisterI32, 0 ,
30357 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi8),
30358 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
30359 0,
30360 66,
30361 OPC_CheckChild1Type, MVT::v8i16,
30362 OPC_Scope, 33,
30363 OPC_MoveChild2,
30364 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30365 OPC_RecordChild0,
30366 OPC_CheckChild0TypeI32,
30367 OPC_CheckType, MVT::v8i16,
30368 OPC_MoveParent,
30369 OPC_RecordChild3,
30370 OPC_CheckChild3Type, MVT::v8i1,
30371 OPC_RecordChild4,
30372 OPC_CheckChild4Type, MVT::v8i16,
30373 OPC_CheckType, MVT::v8i16,
30374 OPC_CheckPatternPredicate0,
30375 OPC_EmitInteger32, 2,
30376 OPC_EmitRegisterI32, 0 ,
30377 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i16),
30378 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
30379 27,
30380 OPC_RecordChild2,
30381 OPC_CheckChild2Type, MVT::v8i16,
30382 OPC_RecordChild3,
30383 OPC_CheckChild3Type, MVT::v8i1,
30384 OPC_RecordChild4,
30385 OPC_CheckChild4Type, MVT::v8i16,
30386 OPC_CheckType, MVT::v8i16,
30387 OPC_CheckPatternPredicate0,
30388 OPC_EmitInteger32, 2,
30389 OPC_EmitRegisterI32, 0 ,
30390 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi16),
30391 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
30392 0,
30393 66,
30394 OPC_CheckChild1Type, MVT::v4i32,
30395 OPC_Scope, 33,
30396 OPC_MoveChild2,
30397 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30398 OPC_RecordChild0,
30399 OPC_CheckChild0TypeI32,
30400 OPC_CheckType, MVT::v4i32,
30401 OPC_MoveParent,
30402 OPC_RecordChild3,
30403 OPC_CheckChild3Type, MVT::v4i1,
30404 OPC_RecordChild4,
30405 OPC_CheckChild4Type, MVT::v4i32,
30406 OPC_CheckType, MVT::v4i32,
30407 OPC_CheckPatternPredicate0,
30408 OPC_EmitInteger32, 2,
30409 OPC_EmitRegisterI32, 0 ,
30410 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i32),
30411 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
30412 27,
30413 OPC_RecordChild2,
30414 OPC_CheckChild2Type, MVT::v4i32,
30415 OPC_RecordChild3,
30416 OPC_CheckChild3Type, MVT::v4i1,
30417 OPC_RecordChild4,
30418 OPC_CheckChild4Type, MVT::v4i32,
30419 OPC_CheckType, MVT::v4i32,
30420 OPC_CheckPatternPredicate0,
30421 OPC_EmitInteger32, 2,
30422 OPC_EmitRegisterI32, 0 ,
30423 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi32),
30424 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
30425 0,
30426 66,
30427 OPC_CheckChild1Type, MVT::v8f16,
30428 OPC_Scope, 33,
30429 OPC_MoveChild2,
30430 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30431 OPC_RecordChild0,
30432 OPC_CheckChild0TypeI32,
30433 OPC_CheckType, MVT::v8f16,
30434 OPC_MoveParent,
30435 OPC_RecordChild3,
30436 OPC_CheckChild3Type, MVT::v8i1,
30437 OPC_RecordChild4,
30438 OPC_CheckChild4Type, MVT::v8f16,
30439 OPC_CheckType, MVT::v8f16,
30440 OPC_CheckPatternPredicate2,
30441 OPC_EmitInteger32, 2,
30442 OPC_EmitRegisterI32, 0 ,
30443 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f16),
30444 MVT::v8f16, 6, 0, 1, 4, 2, 5, 3,
30445 27,
30446 OPC_RecordChild2,
30447 OPC_CheckChild2Type, MVT::v8f16,
30448 OPC_RecordChild3,
30449 OPC_CheckChild3Type, MVT::v8i1,
30450 OPC_RecordChild4,
30451 OPC_CheckChild4Type, MVT::v8f16,
30452 OPC_CheckType, MVT::v8f16,
30453 OPC_CheckPatternPredicate2,
30454 OPC_EmitInteger32, 2,
30455 OPC_EmitRegisterI32, 0 ,
30456 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULf16),
30457 MVT::v8f16, 6, 0, 1, 4, 2, 5, 3,
30458 0,
30459 66,
30460 OPC_CheckChild1Type, MVT::v4f32,
30461 OPC_Scope, 33,
30462 OPC_MoveChild2,
30463 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30464 OPC_RecordChild0,
30465 OPC_CheckChild0TypeI32,
30466 OPC_CheckType, MVT::v4f32,
30467 OPC_MoveParent,
30468 OPC_RecordChild3,
30469 OPC_CheckChild3Type, MVT::v4i1,
30470 OPC_RecordChild4,
30471 OPC_CheckChild4Type, MVT::v4f32,
30472 OPC_CheckType, MVT::v4f32,
30473 OPC_CheckPatternPredicate2,
30474 OPC_EmitInteger32, 2,
30475 OPC_EmitRegisterI32, 0 ,
30476 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f32),
30477 MVT::v4f32, 6, 0, 1, 4, 2, 5, 3,
30478 27,
30479 OPC_RecordChild2,
30480 OPC_CheckChild2Type, MVT::v4f32,
30481 OPC_RecordChild3,
30482 OPC_CheckChild3Type, MVT::v4i1,
30483 OPC_RecordChild4,
30484 OPC_CheckChild4Type, MVT::v4f32,
30485 OPC_CheckType, MVT::v4f32,
30486 OPC_CheckPatternPredicate2,
30487 OPC_EmitInteger32, 2,
30488 OPC_EmitRegisterI32, 0 ,
30489 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULf32),
30490 MVT::v4f32, 6, 0, 1, 4, 2, 5, 3,
30491 0,
30492 0,
30493 79|128,1,
30494 OPC_CheckChild0Integer, 82|128,50,
30495 OPC_RecordChild1,
30496 OPC_Scope, 66,
30497 OPC_CheckChild1Type, MVT::v16i8,
30498 OPC_Scope, 33,
30499 OPC_MoveChild2,
30500 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30501 OPC_RecordChild0,
30502 OPC_CheckChild0TypeI32,
30503 OPC_CheckType, MVT::v16i8,
30504 OPC_MoveParent,
30505 OPC_RecordChild3,
30506 OPC_CheckChild3Type, MVT::v16i1,
30507 OPC_RecordChild4,
30508 OPC_CheckChild4Type, MVT::v16i8,
30509 OPC_CheckType, MVT::v16i8,
30510 OPC_CheckPatternPredicate0,
30511 OPC_EmitInteger32, 2,
30512 OPC_EmitRegisterI32, 0 ,
30513 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s8),
30514 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
30515 27,
30516 OPC_RecordChild2,
30517 OPC_CheckChild2Type, MVT::v16i8,
30518 OPC_RecordChild3,
30519 OPC_CheckChild3Type, MVT::v16i1,
30520 OPC_RecordChild4,
30521 OPC_CheckChild4Type, MVT::v16i8,
30522 OPC_CheckType, MVT::v16i8,
30523 OPC_CheckPatternPredicate0,
30524 OPC_EmitInteger32, 2,
30525 OPC_EmitRegisterI32, 0 ,
30526 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi8),
30527 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
30528 0,
30529 66,
30530 OPC_CheckChild1Type, MVT::v8i16,
30531 OPC_Scope, 33,
30532 OPC_MoveChild2,
30533 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30534 OPC_RecordChild0,
30535 OPC_CheckChild0TypeI32,
30536 OPC_CheckType, MVT::v8i16,
30537 OPC_MoveParent,
30538 OPC_RecordChild3,
30539 OPC_CheckChild3Type, MVT::v8i1,
30540 OPC_RecordChild4,
30541 OPC_CheckChild4Type, MVT::v8i16,
30542 OPC_CheckType, MVT::v8i16,
30543 OPC_CheckPatternPredicate0,
30544 OPC_EmitInteger32, 2,
30545 OPC_EmitRegisterI32, 0 ,
30546 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s16),
30547 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
30548 27,
30549 OPC_RecordChild2,
30550 OPC_CheckChild2Type, MVT::v8i16,
30551 OPC_RecordChild3,
30552 OPC_CheckChild3Type, MVT::v8i1,
30553 OPC_RecordChild4,
30554 OPC_CheckChild4Type, MVT::v8i16,
30555 OPC_CheckType, MVT::v8i16,
30556 OPC_CheckPatternPredicate0,
30557 OPC_EmitInteger32, 2,
30558 OPC_EmitRegisterI32, 0 ,
30559 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi16),
30560 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
30561 0,
30562 66,
30563 OPC_CheckChild1Type, MVT::v4i32,
30564 OPC_Scope, 33,
30565 OPC_MoveChild2,
30566 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30567 OPC_RecordChild0,
30568 OPC_CheckChild0TypeI32,
30569 OPC_CheckType, MVT::v4i32,
30570 OPC_MoveParent,
30571 OPC_RecordChild3,
30572 OPC_CheckChild3Type, MVT::v4i1,
30573 OPC_RecordChild4,
30574 OPC_CheckChild4Type, MVT::v4i32,
30575 OPC_CheckType, MVT::v4i32,
30576 OPC_CheckPatternPredicate0,
30577 OPC_EmitInteger32, 2,
30578 OPC_EmitRegisterI32, 0 ,
30579 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s32),
30580 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
30581 27,
30582 OPC_RecordChild2,
30583 OPC_CheckChild2Type, MVT::v4i32,
30584 OPC_RecordChild3,
30585 OPC_CheckChild3Type, MVT::v4i1,
30586 OPC_RecordChild4,
30587 OPC_CheckChild4Type, MVT::v4i32,
30588 OPC_CheckType, MVT::v4i32,
30589 OPC_CheckPatternPredicate0,
30590 OPC_EmitInteger32, 2,
30591 OPC_EmitRegisterI32, 0 ,
30592 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi32),
30593 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
30594 0,
30595 0,
30596 85|128,1,
30597 OPC_CheckChild0Integer, 12|128,52,
30598 OPC_RecordChild1,
30599 OPC_Scope, 68,
30600 OPC_CheckChild1Type, MVT::v16i8,
30601 OPC_Scope, 34,
30602 OPC_MoveChild2,
30603 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30604 OPC_RecordChild0,
30605 OPC_CheckChild0TypeI32,
30606 OPC_CheckType, MVT::v16i8,
30607 OPC_MoveParent,
30608 OPC_CheckType, MVT::v16i8,
30609 OPC_CheckPatternPredicate0,
30610 OPC_EmitInteger32, 0,
30611 OPC_EmitRegisterI32, 0 ,
30612 OPC_EmitRegisterI32, 0 ,
30613 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30614 MVT::v4i32, 0,
30615 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s8),
30616 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
30617 28,
30618 OPC_RecordChild2,
30619 OPC_CheckChild2Type, MVT::v16i8,
30620 OPC_CheckType, MVT::v16i8,
30621 OPC_CheckPatternPredicate0,
30622 OPC_EmitInteger32, 0,
30623 OPC_EmitRegisterI32, 0 ,
30624 OPC_EmitRegisterI32, 0 ,
30625 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30626 MVT::v4i32, 0,
30627 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi8),
30628 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
30629 0,
30630 68,
30631 OPC_CheckChild1Type, MVT::v8i16,
30632 OPC_Scope, 34,
30633 OPC_MoveChild2,
30634 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30635 OPC_RecordChild0,
30636 OPC_CheckChild0TypeI32,
30637 OPC_CheckType, MVT::v8i16,
30638 OPC_MoveParent,
30639 OPC_CheckType, MVT::v8i16,
30640 OPC_CheckPatternPredicate0,
30641 OPC_EmitInteger32, 0,
30642 OPC_EmitRegisterI32, 0 ,
30643 OPC_EmitRegisterI32, 0 ,
30644 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30645 MVT::v4i32, 0,
30646 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s16),
30647 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
30648 28,
30649 OPC_RecordChild2,
30650 OPC_CheckChild2Type, MVT::v8i16,
30651 OPC_CheckType, MVT::v8i16,
30652 OPC_CheckPatternPredicate0,
30653 OPC_EmitInteger32, 0,
30654 OPC_EmitRegisterI32, 0 ,
30655 OPC_EmitRegisterI32, 0 ,
30656 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30657 MVT::v4i32, 0,
30658 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi16),
30659 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
30660 0,
30661 68,
30662 OPC_CheckChild1Type, MVT::v4i32,
30663 OPC_Scope, 34,
30664 OPC_MoveChild2,
30665 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30666 OPC_RecordChild0,
30667 OPC_CheckChild0TypeI32,
30668 OPC_CheckType, MVT::v4i32,
30669 OPC_MoveParent,
30670 OPC_CheckType, MVT::v4i32,
30671 OPC_CheckPatternPredicate0,
30672 OPC_EmitInteger32, 0,
30673 OPC_EmitRegisterI32, 0 ,
30674 OPC_EmitRegisterI32, 0 ,
30675 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30676 MVT::v4i32, 0,
30677 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s32),
30678 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
30679 28,
30680 OPC_RecordChild2,
30681 OPC_CheckChild2Type, MVT::v4i32,
30682 OPC_CheckType, MVT::v4i32,
30683 OPC_CheckPatternPredicate0,
30684 OPC_EmitInteger32, 0,
30685 OPC_EmitRegisterI32, 0 ,
30686 OPC_EmitRegisterI32, 0 ,
30687 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30688 MVT::v4i32, 0,
30689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi32),
30690 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
30691 0,
30692 0,
30693 79|128,1,
30694 OPC_CheckChild0Integer, 86|128,50,
30695 OPC_RecordChild1,
30696 OPC_Scope, 66,
30697 OPC_CheckChild1Type, MVT::v16i8,
30698 OPC_Scope, 33,
30699 OPC_MoveChild2,
30700 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30701 OPC_RecordChild0,
30702 OPC_CheckChild0TypeI32,
30703 OPC_CheckType, MVT::v16i8,
30704 OPC_MoveParent,
30705 OPC_RecordChild3,
30706 OPC_CheckChild3Type, MVT::v16i1,
30707 OPC_RecordChild4,
30708 OPC_CheckChild4Type, MVT::v16i8,
30709 OPC_CheckType, MVT::v16i8,
30710 OPC_CheckPatternPredicate0,
30711 OPC_EmitInteger32, 2,
30712 OPC_EmitRegisterI32, 0 ,
30713 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULH_qr_s8),
30714 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
30715 27,
30716 OPC_RecordChild2,
30717 OPC_CheckChild2Type, MVT::v16i8,
30718 OPC_RecordChild3,
30719 OPC_CheckChild3Type, MVT::v16i1,
30720 OPC_RecordChild4,
30721 OPC_CheckChild4Type, MVT::v16i8,
30722 OPC_CheckType, MVT::v16i8,
30723 OPC_CheckPatternPredicate0,
30724 OPC_EmitInteger32, 2,
30725 OPC_EmitRegisterI32, 0 ,
30726 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULHi8),
30727 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
30728 0,
30729 66,
30730 OPC_CheckChild1Type, MVT::v8i16,
30731 OPC_Scope, 33,
30732 OPC_MoveChild2,
30733 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30734 OPC_RecordChild0,
30735 OPC_CheckChild0TypeI32,
30736 OPC_CheckType, MVT::v8i16,
30737 OPC_MoveParent,
30738 OPC_RecordChild3,
30739 OPC_CheckChild3Type, MVT::v8i1,
30740 OPC_RecordChild4,
30741 OPC_CheckChild4Type, MVT::v8i16,
30742 OPC_CheckType, MVT::v8i16,
30743 OPC_CheckPatternPredicate0,
30744 OPC_EmitInteger32, 2,
30745 OPC_EmitRegisterI32, 0 ,
30746 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULH_qr_s16),
30747 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
30748 27,
30749 OPC_RecordChild2,
30750 OPC_CheckChild2Type, MVT::v8i16,
30751 OPC_RecordChild3,
30752 OPC_CheckChild3Type, MVT::v8i1,
30753 OPC_RecordChild4,
30754 OPC_CheckChild4Type, MVT::v8i16,
30755 OPC_CheckType, MVT::v8i16,
30756 OPC_CheckPatternPredicate0,
30757 OPC_EmitInteger32, 2,
30758 OPC_EmitRegisterI32, 0 ,
30759 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULHi16),
30760 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
30761 0,
30762 66,
30763 OPC_CheckChild1Type, MVT::v4i32,
30764 OPC_Scope, 33,
30765 OPC_MoveChild2,
30766 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30767 OPC_RecordChild0,
30768 OPC_CheckChild0TypeI32,
30769 OPC_CheckType, MVT::v4i32,
30770 OPC_MoveParent,
30771 OPC_RecordChild3,
30772 OPC_CheckChild3Type, MVT::v4i1,
30773 OPC_RecordChild4,
30774 OPC_CheckChild4Type, MVT::v4i32,
30775 OPC_CheckType, MVT::v4i32,
30776 OPC_CheckPatternPredicate0,
30777 OPC_EmitInteger32, 2,
30778 OPC_EmitRegisterI32, 0 ,
30779 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULH_qr_s32),
30780 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
30781 27,
30782 OPC_RecordChild2,
30783 OPC_CheckChild2Type, MVT::v4i32,
30784 OPC_RecordChild3,
30785 OPC_CheckChild3Type, MVT::v4i1,
30786 OPC_RecordChild4,
30787 OPC_CheckChild4Type, MVT::v4i32,
30788 OPC_CheckType, MVT::v4i32,
30789 OPC_CheckPatternPredicate0,
30790 OPC_EmitInteger32, 2,
30791 OPC_EmitRegisterI32, 0 ,
30792 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULHi32),
30793 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
30794 0,
30795 0,
30796 85|128,1,
30797 OPC_CheckChild0Integer, 30|128,52,
30798 OPC_RecordChild1,
30799 OPC_Scope, 68,
30800 OPC_CheckChild1Type, MVT::v16i8,
30801 OPC_Scope, 34,
30802 OPC_MoveChild2,
30803 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30804 OPC_RecordChild0,
30805 OPC_CheckChild0TypeI32,
30806 OPC_CheckType, MVT::v16i8,
30807 OPC_MoveParent,
30808 OPC_CheckType, MVT::v16i8,
30809 OPC_CheckPatternPredicate0,
30810 OPC_EmitInteger32, 0,
30811 OPC_EmitRegisterI32, 0 ,
30812 OPC_EmitRegisterI32, 0 ,
30813 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30814 MVT::v4i32, 0,
30815 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULH_qr_s8),
30816 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
30817 28,
30818 OPC_RecordChild2,
30819 OPC_CheckChild2Type, MVT::v16i8,
30820 OPC_CheckType, MVT::v16i8,
30821 OPC_CheckPatternPredicate0,
30822 OPC_EmitInteger32, 0,
30823 OPC_EmitRegisterI32, 0 ,
30824 OPC_EmitRegisterI32, 0 ,
30825 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30826 MVT::v4i32, 0,
30827 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULHi8),
30828 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
30829 0,
30830 68,
30831 OPC_CheckChild1Type, MVT::v8i16,
30832 OPC_Scope, 34,
30833 OPC_MoveChild2,
30834 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30835 OPC_RecordChild0,
30836 OPC_CheckChild0TypeI32,
30837 OPC_CheckType, MVT::v8i16,
30838 OPC_MoveParent,
30839 OPC_CheckType, MVT::v8i16,
30840 OPC_CheckPatternPredicate0,
30841 OPC_EmitInteger32, 0,
30842 OPC_EmitRegisterI32, 0 ,
30843 OPC_EmitRegisterI32, 0 ,
30844 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30845 MVT::v4i32, 0,
30846 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULH_qr_s16),
30847 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
30848 28,
30849 OPC_RecordChild2,
30850 OPC_CheckChild2Type, MVT::v8i16,
30851 OPC_CheckType, MVT::v8i16,
30852 OPC_CheckPatternPredicate0,
30853 OPC_EmitInteger32, 0,
30854 OPC_EmitRegisterI32, 0 ,
30855 OPC_EmitRegisterI32, 0 ,
30856 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30857 MVT::v4i32, 0,
30858 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULHi16),
30859 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
30860 0,
30861 68,
30862 OPC_CheckChild1Type, MVT::v4i32,
30863 OPC_Scope, 34,
30864 OPC_MoveChild2,
30865 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
30866 OPC_RecordChild0,
30867 OPC_CheckChild0TypeI32,
30868 OPC_CheckType, MVT::v4i32,
30869 OPC_MoveParent,
30870 OPC_CheckType, MVT::v4i32,
30871 OPC_CheckPatternPredicate0,
30872 OPC_EmitInteger32, 0,
30873 OPC_EmitRegisterI32, 0 ,
30874 OPC_EmitRegisterI32, 0 ,
30875 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30876 MVT::v4i32, 0,
30877 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULH_qr_s32),
30878 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
30879 28,
30880 OPC_RecordChild2,
30881 OPC_CheckChild2Type, MVT::v4i32,
30882 OPC_CheckType, MVT::v4i32,
30883 OPC_CheckPatternPredicate0,
30884 OPC_EmitInteger32, 0,
30885 OPC_EmitRegisterI32, 0 ,
30886 OPC_EmitRegisterI32, 0 ,
30887 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
30888 MVT::v4i32, 0,
30889 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMULHi32),
30890 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
30891 0,
30892 0,
30893 4|128,1,
30894 OPC_CheckChild0Integer, 88|128,53,
30895 OPC_RecordChild1,
30896 OPC_SwitchType , 19, MVT::v4i16,
30897 OPC_CheckChild1Type, MVT::v4i16,
30898 OPC_RecordChild2,
30899 OPC_CheckChild2Type, MVT::v4i16,
30900 OPC_CheckPatternPredicate1,
30901 OPC_EmitInteger32, 28,
30902 OPC_EmitRegisterI32, 0 ,
30903 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDsv4i16),
30904 MVT::v4i16, 4, 0, 1, 2, 3,
30905 19, MVT::v2i32,
30906 OPC_CheckChild1Type, MVT::v2i32,
30907 OPC_RecordChild2,
30908 OPC_CheckChild2Type, MVT::v2i32,
30909 OPC_CheckPatternPredicate1,
30910 OPC_EmitInteger32, 28,
30911 OPC_EmitRegisterI32, 0 ,
30912 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDsv2i32),
30913 MVT::v2i32, 4, 0, 1, 2, 3,
30914 19, MVT::v8i16,
30915 OPC_CheckChild1Type, MVT::v8i16,
30916 OPC_RecordChild2,
30917 OPC_CheckChild2Type, MVT::v8i16,
30918 OPC_CheckPatternPredicate1,
30919 OPC_EmitInteger32, 28,
30920 OPC_EmitRegisterI32, 0 ,
30921 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDsv8i16),
30922 MVT::v8i16, 4, 0, 1, 2, 3,
30923 19, MVT::v4i32,
30924 OPC_CheckChild1Type, MVT::v4i32,
30925 OPC_RecordChild2,
30926 OPC_CheckChild2Type, MVT::v4i32,
30927 OPC_CheckPatternPredicate1,
30928 OPC_EmitInteger32, 28,
30929 OPC_EmitRegisterI32, 0 ,
30930 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDsv4i32),
30931 MVT::v4i32, 4, 0, 1, 2, 3,
30932 19, MVT::v8i8,
30933 OPC_CheckChild1Type, MVT::v8i8,
30934 OPC_RecordChild2,
30935 OPC_CheckChild2Type, MVT::v8i8,
30936 OPC_CheckPatternPredicate1,
30937 OPC_EmitInteger32, 28,
30938 OPC_EmitRegisterI32, 0 ,
30939 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDsv8i8),
30940 MVT::v8i8, 4, 0, 1, 2, 3,
30941 19, MVT::v16i8,
30942 OPC_CheckChild1Type, MVT::v16i8,
30943 OPC_RecordChild2,
30944 OPC_CheckChild2Type, MVT::v16i8,
30945 OPC_CheckPatternPredicate1,
30946 OPC_EmitInteger32, 28,
30947 OPC_EmitRegisterI32, 0 ,
30948 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDsv16i8),
30949 MVT::v16i8, 4, 0, 1, 2, 3,
30950 0,
30951 4|128,1,
30952 OPC_CheckChild0Integer, 90|128,53,
30953 OPC_RecordChild1,
30954 OPC_SwitchType , 19, MVT::v4i16,
30955 OPC_CheckChild1Type, MVT::v4i16,
30956 OPC_RecordChild2,
30957 OPC_CheckChild2Type, MVT::v4i16,
30958 OPC_CheckPatternPredicate1,
30959 OPC_EmitInteger32, 28,
30960 OPC_EmitRegisterI32, 0 ,
30961 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDuv4i16),
30962 MVT::v4i16, 4, 0, 1, 2, 3,
30963 19, MVT::v2i32,
30964 OPC_CheckChild1Type, MVT::v2i32,
30965 OPC_RecordChild2,
30966 OPC_CheckChild2Type, MVT::v2i32,
30967 OPC_CheckPatternPredicate1,
30968 OPC_EmitInteger32, 28,
30969 OPC_EmitRegisterI32, 0 ,
30970 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDuv2i32),
30971 MVT::v2i32, 4, 0, 1, 2, 3,
30972 19, MVT::v8i16,
30973 OPC_CheckChild1Type, MVT::v8i16,
30974 OPC_RecordChild2,
30975 OPC_CheckChild2Type, MVT::v8i16,
30976 OPC_CheckPatternPredicate1,
30977 OPC_EmitInteger32, 28,
30978 OPC_EmitRegisterI32, 0 ,
30979 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDuv8i16),
30980 MVT::v8i16, 4, 0, 1, 2, 3,
30981 19, MVT::v4i32,
30982 OPC_CheckChild1Type, MVT::v4i32,
30983 OPC_RecordChild2,
30984 OPC_CheckChild2Type, MVT::v4i32,
30985 OPC_CheckPatternPredicate1,
30986 OPC_EmitInteger32, 28,
30987 OPC_EmitRegisterI32, 0 ,
30988 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDuv4i32),
30989 MVT::v4i32, 4, 0, 1, 2, 3,
30990 19, MVT::v8i8,
30991 OPC_CheckChild1Type, MVT::v8i8,
30992 OPC_RecordChild2,
30993 OPC_CheckChild2Type, MVT::v8i8,
30994 OPC_CheckPatternPredicate1,
30995 OPC_EmitInteger32, 28,
30996 OPC_EmitRegisterI32, 0 ,
30997 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDuv8i8),
30998 MVT::v8i8, 4, 0, 1, 2, 3,
30999 19, MVT::v16i8,
31000 OPC_CheckChild1Type, MVT::v16i8,
31001 OPC_RecordChild2,
31002 OPC_CheckChild2Type, MVT::v16i8,
31003 OPC_CheckPatternPredicate1,
31004 OPC_EmitInteger32, 28,
31005 OPC_EmitRegisterI32, 0 ,
31006 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHADDuv16i8),
31007 MVT::v16i8, 4, 0, 1, 2, 3,
31008 0,
31009 4|128,1,
31010 OPC_CheckChild0Integer, 80|128,54,
31011 OPC_RecordChild1,
31012 OPC_SwitchType , 19, MVT::v4i16,
31013 OPC_CheckChild1Type, MVT::v4i16,
31014 OPC_RecordChild2,
31015 OPC_CheckChild2Type, MVT::v4i16,
31016 OPC_CheckPatternPredicate1,
31017 OPC_EmitInteger32, 28,
31018 OPC_EmitRegisterI32, 0 ,
31019 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDsv4i16),
31020 MVT::v4i16, 4, 0, 1, 2, 3,
31021 19, MVT::v2i32,
31022 OPC_CheckChild1Type, MVT::v2i32,
31023 OPC_RecordChild2,
31024 OPC_CheckChild2Type, MVT::v2i32,
31025 OPC_CheckPatternPredicate1,
31026 OPC_EmitInteger32, 28,
31027 OPC_EmitRegisterI32, 0 ,
31028 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDsv2i32),
31029 MVT::v2i32, 4, 0, 1, 2, 3,
31030 19, MVT::v8i16,
31031 OPC_CheckChild1Type, MVT::v8i16,
31032 OPC_RecordChild2,
31033 OPC_CheckChild2Type, MVT::v8i16,
31034 OPC_CheckPatternPredicate1,
31035 OPC_EmitInteger32, 28,
31036 OPC_EmitRegisterI32, 0 ,
31037 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDsv8i16),
31038 MVT::v8i16, 4, 0, 1, 2, 3,
31039 19, MVT::v4i32,
31040 OPC_CheckChild1Type, MVT::v4i32,
31041 OPC_RecordChild2,
31042 OPC_CheckChild2Type, MVT::v4i32,
31043 OPC_CheckPatternPredicate1,
31044 OPC_EmitInteger32, 28,
31045 OPC_EmitRegisterI32, 0 ,
31046 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDsv4i32),
31047 MVT::v4i32, 4, 0, 1, 2, 3,
31048 19, MVT::v8i8,
31049 OPC_CheckChild1Type, MVT::v8i8,
31050 OPC_RecordChild2,
31051 OPC_CheckChild2Type, MVT::v8i8,
31052 OPC_CheckPatternPredicate1,
31053 OPC_EmitInteger32, 28,
31054 OPC_EmitRegisterI32, 0 ,
31055 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDsv8i8),
31056 MVT::v8i8, 4, 0, 1, 2, 3,
31057 19, MVT::v16i8,
31058 OPC_CheckChild1Type, MVT::v16i8,
31059 OPC_RecordChild2,
31060 OPC_CheckChild2Type, MVT::v16i8,
31061 OPC_CheckPatternPredicate1,
31062 OPC_EmitInteger32, 28,
31063 OPC_EmitRegisterI32, 0 ,
31064 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDsv16i8),
31065 MVT::v16i8, 4, 0, 1, 2, 3,
31066 0,
31067 4|128,1,
31068 OPC_CheckChild0Integer, 82|128,54,
31069 OPC_RecordChild1,
31070 OPC_SwitchType , 19, MVT::v4i16,
31071 OPC_CheckChild1Type, MVT::v4i16,
31072 OPC_RecordChild2,
31073 OPC_CheckChild2Type, MVT::v4i16,
31074 OPC_CheckPatternPredicate1,
31075 OPC_EmitInteger32, 28,
31076 OPC_EmitRegisterI32, 0 ,
31077 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDuv4i16),
31078 MVT::v4i16, 4, 0, 1, 2, 3,
31079 19, MVT::v2i32,
31080 OPC_CheckChild1Type, MVT::v2i32,
31081 OPC_RecordChild2,
31082 OPC_CheckChild2Type, MVT::v2i32,
31083 OPC_CheckPatternPredicate1,
31084 OPC_EmitInteger32, 28,
31085 OPC_EmitRegisterI32, 0 ,
31086 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDuv2i32),
31087 MVT::v2i32, 4, 0, 1, 2, 3,
31088 19, MVT::v8i16,
31089 OPC_CheckChild1Type, MVT::v8i16,
31090 OPC_RecordChild2,
31091 OPC_CheckChild2Type, MVT::v8i16,
31092 OPC_CheckPatternPredicate1,
31093 OPC_EmitInteger32, 28,
31094 OPC_EmitRegisterI32, 0 ,
31095 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDuv8i16),
31096 MVT::v8i16, 4, 0, 1, 2, 3,
31097 19, MVT::v4i32,
31098 OPC_CheckChild1Type, MVT::v4i32,
31099 OPC_RecordChild2,
31100 OPC_CheckChild2Type, MVT::v4i32,
31101 OPC_CheckPatternPredicate1,
31102 OPC_EmitInteger32, 28,
31103 OPC_EmitRegisterI32, 0 ,
31104 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDuv4i32),
31105 MVT::v4i32, 4, 0, 1, 2, 3,
31106 19, MVT::v8i8,
31107 OPC_CheckChild1Type, MVT::v8i8,
31108 OPC_RecordChild2,
31109 OPC_CheckChild2Type, MVT::v8i8,
31110 OPC_CheckPatternPredicate1,
31111 OPC_EmitInteger32, 28,
31112 OPC_EmitRegisterI32, 0 ,
31113 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDuv8i8),
31114 MVT::v8i8, 4, 0, 1, 2, 3,
31115 19, MVT::v16i8,
31116 OPC_CheckChild1Type, MVT::v16i8,
31117 OPC_RecordChild2,
31118 OPC_CheckChild2Type, MVT::v16i8,
31119 OPC_CheckPatternPredicate1,
31120 OPC_EmitInteger32, 28,
31121 OPC_EmitRegisterI32, 0 ,
31122 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRHADDuv16i8),
31123 MVT::v16i8, 4, 0, 1, 2, 3,
31124 0,
31125 69,
31126 OPC_CheckChild0Integer, 74|128,54,
31127 OPC_RecordChild1,
31128 OPC_SwitchType , 19, MVT::v8i8,
31129 OPC_CheckChild1Type, MVT::v8i16,
31130 OPC_RecordChild2,
31131 OPC_CheckChild2Type, MVT::v8i16,
31132 OPC_CheckPatternPredicate1,
31133 OPC_EmitInteger32, 28,
31134 OPC_EmitRegisterI32, 0 ,
31135 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRADDHNv8i8),
31136 MVT::v8i8, 4, 0, 1, 2, 3,
31137 19, MVT::v4i16,
31138 OPC_CheckChild1Type, MVT::v4i32,
31139 OPC_RecordChild2,
31140 OPC_CheckChild2Type, MVT::v4i32,
31141 OPC_CheckPatternPredicate1,
31142 OPC_EmitInteger32, 28,
31143 OPC_EmitRegisterI32, 0 ,
31144 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRADDHNv4i16),
31145 MVT::v4i16, 4, 0, 1, 2, 3,
31146 19, MVT::v2i32,
31147 OPC_CheckChild1Type, MVT::v2i64,
31148 OPC_RecordChild2,
31149 OPC_CheckChild2Type, MVT::v2i64,
31150 OPC_CheckPatternPredicate1,
31151 OPC_EmitInteger32, 28,
31152 OPC_EmitRegisterI32, 0 ,
31153 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRADDHNv2i32),
31154 MVT::v2i32, 4, 0, 1, 2, 3,
31155 0,
31156 48,
31157 OPC_CheckChild0Integer, 12|128,54,
31158 OPC_RecordChild1,
31159 OPC_SwitchType , 19, MVT::v8i8,
31160 OPC_CheckChild1Type, MVT::v8i8,
31161 OPC_RecordChild2,
31162 OPC_CheckChild2Type, MVT::v8i8,
31163 OPC_CheckPatternPredicate1,
31164 OPC_EmitInteger32, 28,
31165 OPC_EmitRegisterI32, 0 ,
31166 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULpd),
31167 MVT::v8i8, 4, 0, 1, 2, 3,
31168 19, MVT::v16i8,
31169 OPC_CheckChild1Type, MVT::v16i8,
31170 OPC_RecordChild2,
31171 OPC_CheckChild2Type, MVT::v16i8,
31172 OPC_CheckPatternPredicate1,
31173 OPC_EmitInteger32, 28,
31174 OPC_EmitRegisterI32, 0 ,
31175 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULpq),
31176 MVT::v16i8, 4, 0, 1, 2, 3,
31177 0,
31178 43,
31179 OPC_CheckChild0Integer, 6|128,54,
31180 OPC_RecordChild1,
31181 OPC_SwitchType , 19, MVT::v8i16,
31182 OPC_CheckChild1Type, MVT::v8i8,
31183 OPC_RecordChild2,
31184 OPC_CheckChild2Type, MVT::v8i8,
31185 OPC_CheckPatternPredicate1,
31186 OPC_EmitInteger32, 28,
31187 OPC_EmitRegisterI32, 0 ,
31188 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLp8),
31189 MVT::v8i16, 4, 0, 1, 2, 3,
31190 14, MVT::v2i64,
31191 OPC_CheckChild1Type, MVT::v1i64,
31192 OPC_RecordChild2,
31193 OPC_CheckChild2Type, MVT::v1i64,
31194 OPC_CheckPatternPredicate, 64,
31195 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLp64),
31196 MVT::v2i64, 2, 0, 1,
31197 0,
31198 24,
31199 OPC_CheckChild0Integer, 28|128,53,
31200 OPC_RecordChild1,
31201 OPC_CheckChild1Type, MVT::v4i32,
31202 OPC_RecordChild2,
31203 OPC_CheckChild2Type, MVT::v16i8,
31204 OPC_RecordChild3,
31205 OPC_CheckChild3Type, MVT::v16i8,
31206 OPC_CheckType, MVT::v4i32,
31207 OPC_CheckPatternPredicate, 40,
31208 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSMMLA),
31209 MVT::v4i32, 3, 0, 1, 2,
31210 24,
31211 OPC_CheckChild0Integer, 32|128,53,
31212 OPC_RecordChild1,
31213 OPC_CheckChild1Type, MVT::v4i32,
31214 OPC_RecordChild2,
31215 OPC_CheckChild2Type, MVT::v16i8,
31216 OPC_RecordChild3,
31217 OPC_CheckChild3Type, MVT::v16i8,
31218 OPC_CheckType, MVT::v4i32,
31219 OPC_CheckPatternPredicate, 40,
31220 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUMMLA),
31221 MVT::v4i32, 3, 0, 1, 2,
31222 24,
31223 OPC_CheckChild0Integer, 36|128,53,
31224 OPC_RecordChild1,
31225 OPC_CheckChild1Type, MVT::v4i32,
31226 OPC_RecordChild2,
31227 OPC_CheckChild2Type, MVT::v16i8,
31228 OPC_RecordChild3,
31229 OPC_CheckChild3Type, MVT::v16i8,
31230 OPC_CheckType, MVT::v4i32,
31231 OPC_CheckPatternPredicate, 40,
31232 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUSMMLA),
31233 MVT::v4i32, 3, 0, 1, 2,
31234 4|128,1,
31235 OPC_CheckChild0Integer, 92|128,53,
31236 OPC_RecordChild1,
31237 OPC_SwitchType , 19, MVT::v4i16,
31238 OPC_CheckChild1Type, MVT::v4i16,
31239 OPC_RecordChild2,
31240 OPC_CheckChild2Type, MVT::v4i16,
31241 OPC_CheckPatternPredicate1,
31242 OPC_EmitInteger32, 28,
31243 OPC_EmitRegisterI32, 0 ,
31244 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBsv4i16),
31245 MVT::v4i16, 4, 0, 1, 2, 3,
31246 19, MVT::v2i32,
31247 OPC_CheckChild1Type, MVT::v2i32,
31248 OPC_RecordChild2,
31249 OPC_CheckChild2Type, MVT::v2i32,
31250 OPC_CheckPatternPredicate1,
31251 OPC_EmitInteger32, 28,
31252 OPC_EmitRegisterI32, 0 ,
31253 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBsv2i32),
31254 MVT::v2i32, 4, 0, 1, 2, 3,
31255 19, MVT::v8i16,
31256 OPC_CheckChild1Type, MVT::v8i16,
31257 OPC_RecordChild2,
31258 OPC_CheckChild2Type, MVT::v8i16,
31259 OPC_CheckPatternPredicate1,
31260 OPC_EmitInteger32, 28,
31261 OPC_EmitRegisterI32, 0 ,
31262 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBsv8i16),
31263 MVT::v8i16, 4, 0, 1, 2, 3,
31264 19, MVT::v4i32,
31265 OPC_CheckChild1Type, MVT::v4i32,
31266 OPC_RecordChild2,
31267 OPC_CheckChild2Type, MVT::v4i32,
31268 OPC_CheckPatternPredicate1,
31269 OPC_EmitInteger32, 28,
31270 OPC_EmitRegisterI32, 0 ,
31271 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBsv4i32),
31272 MVT::v4i32, 4, 0, 1, 2, 3,
31273 19, MVT::v8i8,
31274 OPC_CheckChild1Type, MVT::v8i8,
31275 OPC_RecordChild2,
31276 OPC_CheckChild2Type, MVT::v8i8,
31277 OPC_CheckPatternPredicate1,
31278 OPC_EmitInteger32, 28,
31279 OPC_EmitRegisterI32, 0 ,
31280 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBsv8i8),
31281 MVT::v8i8, 4, 0, 1, 2, 3,
31282 19, MVT::v16i8,
31283 OPC_CheckChild1Type, MVT::v16i8,
31284 OPC_RecordChild2,
31285 OPC_CheckChild2Type, MVT::v16i8,
31286 OPC_CheckPatternPredicate1,
31287 OPC_EmitInteger32, 28,
31288 OPC_EmitRegisterI32, 0 ,
31289 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBsv16i8),
31290 MVT::v16i8, 4, 0, 1, 2, 3,
31291 0,
31292 4|128,1,
31293 OPC_CheckChild0Integer, 94|128,53,
31294 OPC_RecordChild1,
31295 OPC_SwitchType , 19, MVT::v4i16,
31296 OPC_CheckChild1Type, MVT::v4i16,
31297 OPC_RecordChild2,
31298 OPC_CheckChild2Type, MVT::v4i16,
31299 OPC_CheckPatternPredicate1,
31300 OPC_EmitInteger32, 28,
31301 OPC_EmitRegisterI32, 0 ,
31302 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBuv4i16),
31303 MVT::v4i16, 4, 0, 1, 2, 3,
31304 19, MVT::v2i32,
31305 OPC_CheckChild1Type, MVT::v2i32,
31306 OPC_RecordChild2,
31307 OPC_CheckChild2Type, MVT::v2i32,
31308 OPC_CheckPatternPredicate1,
31309 OPC_EmitInteger32, 28,
31310 OPC_EmitRegisterI32, 0 ,
31311 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBuv2i32),
31312 MVT::v2i32, 4, 0, 1, 2, 3,
31313 19, MVT::v8i16,
31314 OPC_CheckChild1Type, MVT::v8i16,
31315 OPC_RecordChild2,
31316 OPC_CheckChild2Type, MVT::v8i16,
31317 OPC_CheckPatternPredicate1,
31318 OPC_EmitInteger32, 28,
31319 OPC_EmitRegisterI32, 0 ,
31320 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBuv8i16),
31321 MVT::v8i16, 4, 0, 1, 2, 3,
31322 19, MVT::v4i32,
31323 OPC_CheckChild1Type, MVT::v4i32,
31324 OPC_RecordChild2,
31325 OPC_CheckChild2Type, MVT::v4i32,
31326 OPC_CheckPatternPredicate1,
31327 OPC_EmitInteger32, 28,
31328 OPC_EmitRegisterI32, 0 ,
31329 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBuv4i32),
31330 MVT::v4i32, 4, 0, 1, 2, 3,
31331 19, MVT::v8i8,
31332 OPC_CheckChild1Type, MVT::v8i8,
31333 OPC_RecordChild2,
31334 OPC_CheckChild2Type, MVT::v8i8,
31335 OPC_CheckPatternPredicate1,
31336 OPC_EmitInteger32, 28,
31337 OPC_EmitRegisterI32, 0 ,
31338 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBuv8i8),
31339 MVT::v8i8, 4, 0, 1, 2, 3,
31340 19, MVT::v16i8,
31341 OPC_CheckChild1Type, MVT::v16i8,
31342 OPC_RecordChild2,
31343 OPC_CheckChild2Type, MVT::v16i8,
31344 OPC_CheckPatternPredicate1,
31345 OPC_EmitInteger32, 28,
31346 OPC_EmitRegisterI32, 0 ,
31347 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VHSUBuv16i8),
31348 MVT::v16i8, 4, 0, 1, 2, 3,
31349 0,
31350 69,
31351 OPC_CheckChild0Integer, 106|128,54,
31352 OPC_RecordChild1,
31353 OPC_SwitchType , 19, MVT::v8i8,
31354 OPC_CheckChild1Type, MVT::v8i16,
31355 OPC_RecordChild2,
31356 OPC_CheckChild2Type, MVT::v8i16,
31357 OPC_CheckPatternPredicate1,
31358 OPC_EmitInteger32, 28,
31359 OPC_EmitRegisterI32, 0 ,
31360 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSUBHNv8i8),
31361 MVT::v8i8, 4, 0, 1, 2, 3,
31362 19, MVT::v4i16,
31363 OPC_CheckChild1Type, MVT::v4i32,
31364 OPC_RecordChild2,
31365 OPC_CheckChild2Type, MVT::v4i32,
31366 OPC_CheckPatternPredicate1,
31367 OPC_EmitInteger32, 28,
31368 OPC_EmitRegisterI32, 0 ,
31369 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSUBHNv4i16),
31370 MVT::v4i16, 4, 0, 1, 2, 3,
31371 19, MVT::v2i32,
31372 OPC_CheckChild1Type, MVT::v2i64,
31373 OPC_RecordChild2,
31374 OPC_CheckChild2Type, MVT::v2i64,
31375 OPC_CheckPatternPredicate1,
31376 OPC_EmitInteger32, 28,
31377 OPC_EmitRegisterI32, 0 ,
31378 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSUBHNv2i32),
31379 MVT::v2i32, 4, 0, 1, 2, 3,
31380 0,
31381 92,
31382 OPC_CheckChild0Integer, 44|128,53,
31383 OPC_RecordChild1,
31384 OPC_SwitchType , 19, MVT::v2i32,
31385 OPC_CheckChild1Type, MVT::v2f32,
31386 OPC_RecordChild2,
31387 OPC_CheckChild2Type, MVT::v2f32,
31388 OPC_CheckPatternPredicate1,
31389 OPC_EmitInteger32, 28,
31390 OPC_EmitRegisterI32, 0 ,
31391 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VACGEfd),
31392 MVT::v2i32, 4, 0, 1, 2, 3,
31393 19, MVT::v4i32,
31394 OPC_CheckChild1Type, MVT::v4f32,
31395 OPC_RecordChild2,
31396 OPC_CheckChild2Type, MVT::v4f32,
31397 OPC_CheckPatternPredicate1,
31398 OPC_EmitInteger32, 28,
31399 OPC_EmitRegisterI32, 0 ,
31400 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VACGEfq),
31401 MVT::v4i32, 4, 0, 1, 2, 3,
31402 20, MVT::v4i16,
31403 OPC_CheckChild1Type, MVT::v4f16,
31404 OPC_RecordChild2,
31405 OPC_CheckChild2Type, MVT::v4f16,
31406 OPC_CheckPatternPredicate, 11,
31407 OPC_EmitInteger32, 28,
31408 OPC_EmitRegisterI32, 0 ,
31409 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VACGEhd),
31410 MVT::v4i16, 4, 0, 1, 2, 3,
31411 20, MVT::v8i16,
31412 OPC_CheckChild1Type, MVT::v8f16,
31413 OPC_RecordChild2,
31414 OPC_CheckChild2Type, MVT::v8f16,
31415 OPC_CheckPatternPredicate, 11,
31416 OPC_EmitInteger32, 28,
31417 OPC_EmitRegisterI32, 0 ,
31418 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VACGEhq),
31419 MVT::v8i16, 4, 0, 1, 2, 3,
31420 0,
31421 92,
31422 OPC_CheckChild0Integer, 46|128,53,
31423 OPC_RecordChild1,
31424 OPC_SwitchType , 19, MVT::v2i32,
31425 OPC_CheckChild1Type, MVT::v2f32,
31426 OPC_RecordChild2,
31427 OPC_CheckChild2Type, MVT::v2f32,
31428 OPC_CheckPatternPredicate1,
31429 OPC_EmitInteger32, 28,
31430 OPC_EmitRegisterI32, 0 ,
31431 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VACGTfd),
31432 MVT::v2i32, 4, 0, 1, 2, 3,
31433 19, MVT::v4i32,
31434 OPC_CheckChild1Type, MVT::v4f32,
31435 OPC_RecordChild2,
31436 OPC_CheckChild2Type, MVT::v4f32,
31437 OPC_CheckPatternPredicate1,
31438 OPC_EmitInteger32, 28,
31439 OPC_EmitRegisterI32, 0 ,
31440 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VACGTfq),
31441 MVT::v4i32, 4, 0, 1, 2, 3,
31442 20, MVT::v4i16,
31443 OPC_CheckChild1Type, MVT::v4f16,
31444 OPC_RecordChild2,
31445 OPC_CheckChild2Type, MVT::v4f16,
31446 OPC_CheckPatternPredicate, 11,
31447 OPC_EmitInteger32, 28,
31448 OPC_EmitRegisterI32, 0 ,
31449 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VACGThd),
31450 MVT::v4i16, 4, 0, 1, 2, 3,
31451 20, MVT::v8i16,
31452 OPC_CheckChild1Type, MVT::v8f16,
31453 OPC_RecordChild2,
31454 OPC_CheckChild2Type, MVT::v8f16,
31455 OPC_CheckPatternPredicate, 11,
31456 OPC_EmitInteger32, 28,
31457 OPC_EmitRegisterI32, 0 ,
31458 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VACGThq),
31459 MVT::v8i16, 4, 0, 1, 2, 3,
31460 0,
31461 0|128,2,
31462 OPC_CheckChild0Integer, 48|128,53,
31463 OPC_RecordChild1,
31464 OPC_SwitchType , 23, MVT::v8i8,
31465 OPC_CheckChild1Type, MVT::v8i8,
31466 OPC_RecordChild2,
31467 OPC_CheckChild2Type, MVT::v8i8,
31468 OPC_RecordChild3,
31469 OPC_CheckChild3Type, MVT::v8i8,
31470 OPC_CheckPatternPredicate1,
31471 OPC_EmitInteger32, 28,
31472 OPC_EmitRegisterI32, 0 ,
31473 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
31474 MVT::v8i8, 5, 0, 1, 2, 3, 4,
31475 23, MVT::v4i16,
31476 OPC_CheckChild1Type, MVT::v4i16,
31477 OPC_RecordChild2,
31478 OPC_CheckChild2Type, MVT::v4i16,
31479 OPC_RecordChild3,
31480 OPC_CheckChild3Type, MVT::v4i16,
31481 OPC_CheckPatternPredicate1,
31482 OPC_EmitInteger32, 28,
31483 OPC_EmitRegisterI32, 0 ,
31484 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
31485 MVT::v4i16, 5, 0, 1, 2, 3, 4,
31486 23, MVT::v2i32,
31487 OPC_CheckChild1Type, MVT::v2i32,
31488 OPC_RecordChild2,
31489 OPC_CheckChild2Type, MVT::v2i32,
31490 OPC_RecordChild3,
31491 OPC_CheckChild3Type, MVT::v2i32,
31492 OPC_CheckPatternPredicate1,
31493 OPC_EmitInteger32, 28,
31494 OPC_EmitRegisterI32, 0 ,
31495 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
31496 MVT::v2i32, 5, 0, 1, 2, 3, 4,
31497 23, MVT::v1i64,
31498 OPC_CheckChild1Type, MVT::v1i64,
31499 OPC_RecordChild2,
31500 OPC_CheckChild2Type, MVT::v1i64,
31501 OPC_RecordChild3,
31502 OPC_CheckChild3Type, MVT::v1i64,
31503 OPC_CheckPatternPredicate1,
31504 OPC_EmitInteger32, 28,
31505 OPC_EmitRegisterI32, 0 ,
31506 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
31507 MVT::v1i64, 5, 0, 1, 2, 3, 4,
31508 23, MVT::v16i8,
31509 OPC_CheckChild1Type, MVT::v16i8,
31510 OPC_RecordChild2,
31511 OPC_CheckChild2Type, MVT::v16i8,
31512 OPC_RecordChild3,
31513 OPC_CheckChild3Type, MVT::v16i8,
31514 OPC_CheckPatternPredicate1,
31515 OPC_EmitInteger32, 28,
31516 OPC_EmitRegisterI32, 0 ,
31517 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
31518 MVT::v16i8, 5, 0, 1, 2, 3, 4,
31519 23, MVT::v8i16,
31520 OPC_CheckChild1Type, MVT::v8i16,
31521 OPC_RecordChild2,
31522 OPC_CheckChild2Type, MVT::v8i16,
31523 OPC_RecordChild3,
31524 OPC_CheckChild3Type, MVT::v8i16,
31525 OPC_CheckPatternPredicate1,
31526 OPC_EmitInteger32, 28,
31527 OPC_EmitRegisterI32, 0 ,
31528 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
31529 MVT::v8i16, 5, 0, 1, 2, 3, 4,
31530 23, MVT::v4i32,
31531 OPC_CheckChild1Type, MVT::v4i32,
31532 OPC_RecordChild2,
31533 OPC_CheckChild2Type, MVT::v4i32,
31534 OPC_RecordChild3,
31535 OPC_CheckChild3Type, MVT::v4i32,
31536 OPC_CheckPatternPredicate1,
31537 OPC_EmitInteger32, 28,
31538 OPC_EmitRegisterI32, 0 ,
31539 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
31540 MVT::v4i32, 5, 0, 1, 2, 3, 4,
31541 23, MVT::v2i64,
31542 OPC_CheckChild1Type, MVT::v2i64,
31543 OPC_RecordChild2,
31544 OPC_CheckChild2Type, MVT::v2i64,
31545 OPC_RecordChild3,
31546 OPC_CheckChild3Type, MVT::v2i64,
31547 OPC_CheckPatternPredicate1,
31548 OPC_EmitInteger32, 28,
31549 OPC_EmitRegisterI32, 0 ,
31550 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
31551 MVT::v2i64, 5, 0, 1, 2, 3, 4,
31552 23, MVT::v2f32,
31553 OPC_CheckChild1Type, MVT::v2f32,
31554 OPC_RecordChild2,
31555 OPC_CheckChild2Type, MVT::v2f32,
31556 OPC_RecordChild3,
31557 OPC_CheckChild3Type, MVT::v2f32,
31558 OPC_CheckPatternPredicate1,
31559 OPC_EmitInteger32, 28,
31560 OPC_EmitRegisterI32, 0 ,
31561 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
31562 MVT::v2f32, 5, 0, 1, 2, 3, 4,
31563 23, MVT::v4f32,
31564 OPC_CheckChild1Type, MVT::v4f32,
31565 OPC_RecordChild2,
31566 OPC_CheckChild2Type, MVT::v4f32,
31567 OPC_RecordChild3,
31568 OPC_CheckChild3Type, MVT::v4f32,
31569 OPC_CheckPatternPredicate1,
31570 OPC_EmitInteger32, 28,
31571 OPC_EmitRegisterI32, 0 ,
31572 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
31573 MVT::v4f32, 5, 0, 1, 2, 3, 4,
31574 0,
31575 112,
31576 OPC_CheckChild0Integer, 18|128,54,
31577 OPC_RecordChild1,
31578 OPC_SwitchType , 19, MVT::v8i8,
31579 OPC_CheckChild1Type, MVT::v8i8,
31580 OPC_RecordChild2,
31581 OPC_CheckChild2Type, MVT::v8i8,
31582 OPC_CheckPatternPredicate1,
31583 OPC_EmitInteger32, 28,
31584 OPC_EmitRegisterI32, 0 ,
31585 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDi8),
31586 MVT::v8i8, 4, 0, 1, 2, 3,
31587 19, MVT::v4i16,
31588 OPC_CheckChild1Type, MVT::v4i16,
31589 OPC_RecordChild2,
31590 OPC_CheckChild2Type, MVT::v4i16,
31591 OPC_CheckPatternPredicate1,
31592 OPC_EmitInteger32, 28,
31593 OPC_EmitRegisterI32, 0 ,
31594 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDi16),
31595 MVT::v4i16, 4, 0, 1, 2, 3,
31596 19, MVT::v2i32,
31597 OPC_CheckChild1Type, MVT::v2i32,
31598 OPC_RecordChild2,
31599 OPC_CheckChild2Type, MVT::v2i32,
31600 OPC_CheckPatternPredicate1,
31601 OPC_EmitInteger32, 28,
31602 OPC_EmitRegisterI32, 0 ,
31603 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDi32),
31604 MVT::v2i32, 4, 0, 1, 2, 3,
31605 19, MVT::v2f32,
31606 OPC_CheckChild1Type, MVT::v2f32,
31607 OPC_RecordChild2,
31608 OPC_CheckChild2Type, MVT::v2f32,
31609 OPC_CheckPatternPredicate1,
31610 OPC_EmitInteger32, 28,
31611 OPC_EmitRegisterI32, 0 ,
31612 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDf),
31613 MVT::v2f32, 4, 0, 1, 2, 3,
31614 20, MVT::v4f16,
31615 OPC_CheckChild1Type, MVT::v4f16,
31616 OPC_RecordChild2,
31617 OPC_CheckChild2Type, MVT::v4f16,
31618 OPC_CheckPatternPredicate, 11,
31619 OPC_EmitInteger32, 28,
31620 OPC_EmitRegisterI32, 0 ,
31621 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDh),
31622 MVT::v4f16, 4, 0, 1, 2, 3,
31623 0,
31624 108,
31625 OPC_CheckChild0Integer, 20|128,54,
31626 OPC_RecordChild1,
31627 OPC_SwitchType , 15, MVT::v4i16,
31628 OPC_CheckChild1Type, MVT::v8i8,
31629 OPC_CheckPatternPredicate1,
31630 OPC_EmitInteger32, 28,
31631 OPC_EmitRegisterI32, 0 ,
31632 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLsv8i8),
31633 MVT::v4i16, 3, 0, 1, 2,
31634 15, MVT::v2i32,
31635 OPC_CheckChild1Type, MVT::v4i16,
31636 OPC_CheckPatternPredicate1,
31637 OPC_EmitInteger32, 28,
31638 OPC_EmitRegisterI32, 0 ,
31639 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLsv4i16),
31640 MVT::v2i32, 3, 0, 1, 2,
31641 15, MVT::v1i64,
31642 OPC_CheckChild1Type, MVT::v2i32,
31643 OPC_CheckPatternPredicate1,
31644 OPC_EmitInteger32, 28,
31645 OPC_EmitRegisterI32, 0 ,
31646 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLsv2i32),
31647 MVT::v1i64, 3, 0, 1, 2,
31648 15, MVT::v8i16,
31649 OPC_CheckChild1Type, MVT::v16i8,
31650 OPC_CheckPatternPredicate1,
31651 OPC_EmitInteger32, 28,
31652 OPC_EmitRegisterI32, 0 ,
31653 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLsv16i8),
31654 MVT::v8i16, 3, 0, 1, 2,
31655 15, MVT::v4i32,
31656 OPC_CheckChild1Type, MVT::v8i16,
31657 OPC_CheckPatternPredicate1,
31658 OPC_EmitInteger32, 28,
31659 OPC_EmitRegisterI32, 0 ,
31660 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLsv8i16),
31661 MVT::v4i32, 3, 0, 1, 2,
31662 15, MVT::v2i64,
31663 OPC_CheckChild1Type, MVT::v4i32,
31664 OPC_CheckPatternPredicate1,
31665 OPC_EmitInteger32, 28,
31666 OPC_EmitRegisterI32, 0 ,
31667 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLsv4i32),
31668 MVT::v2i64, 3, 0, 1, 2,
31669 0,
31670 108,
31671 OPC_CheckChild0Integer, 22|128,54,
31672 OPC_RecordChild1,
31673 OPC_SwitchType , 15, MVT::v4i16,
31674 OPC_CheckChild1Type, MVT::v8i8,
31675 OPC_CheckPatternPredicate1,
31676 OPC_EmitInteger32, 28,
31677 OPC_EmitRegisterI32, 0 ,
31678 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLuv8i8),
31679 MVT::v4i16, 3, 0, 1, 2,
31680 15, MVT::v2i32,
31681 OPC_CheckChild1Type, MVT::v4i16,
31682 OPC_CheckPatternPredicate1,
31683 OPC_EmitInteger32, 28,
31684 OPC_EmitRegisterI32, 0 ,
31685 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLuv4i16),
31686 MVT::v2i32, 3, 0, 1, 2,
31687 15, MVT::v1i64,
31688 OPC_CheckChild1Type, MVT::v2i32,
31689 OPC_CheckPatternPredicate1,
31690 OPC_EmitInteger32, 28,
31691 OPC_EmitRegisterI32, 0 ,
31692 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLuv2i32),
31693 MVT::v1i64, 3, 0, 1, 2,
31694 15, MVT::v8i16,
31695 OPC_CheckChild1Type, MVT::v16i8,
31696 OPC_CheckPatternPredicate1,
31697 OPC_EmitInteger32, 28,
31698 OPC_EmitRegisterI32, 0 ,
31699 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLuv16i8),
31700 MVT::v8i16, 3, 0, 1, 2,
31701 15, MVT::v4i32,
31702 OPC_CheckChild1Type, MVT::v8i16,
31703 OPC_CheckPatternPredicate1,
31704 OPC_EmitInteger32, 28,
31705 OPC_EmitRegisterI32, 0 ,
31706 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLuv8i16),
31707 MVT::v4i32, 3, 0, 1, 2,
31708 15, MVT::v2i64,
31709 OPC_CheckChild1Type, MVT::v4i32,
31710 OPC_CheckPatternPredicate1,
31711 OPC_EmitInteger32, 28,
31712 OPC_EmitRegisterI32, 0 ,
31713 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADDLuv4i32),
31714 MVT::v2i64, 3, 0, 1, 2,
31715 0,
31716 4|128,1,
31717 OPC_CheckChild0Integer, 14|128,54,
31718 OPC_RecordChild1,
31719 OPC_SwitchType , 19, MVT::v4i16,
31720 OPC_CheckChild1Type, MVT::v4i16,
31721 OPC_RecordChild2,
31722 OPC_CheckChild2Type, MVT::v8i8,
31723 OPC_CheckPatternPredicate1,
31724 OPC_EmitInteger32, 28,
31725 OPC_EmitRegisterI32, 0 ,
31726 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALsv8i8),
31727 MVT::v4i16, 4, 0, 1, 2, 3,
31728 19, MVT::v2i32,
31729 OPC_CheckChild1Type, MVT::v2i32,
31730 OPC_RecordChild2,
31731 OPC_CheckChild2Type, MVT::v4i16,
31732 OPC_CheckPatternPredicate1,
31733 OPC_EmitInteger32, 28,
31734 OPC_EmitRegisterI32, 0 ,
31735 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALsv4i16),
31736 MVT::v2i32, 4, 0, 1, 2, 3,
31737 19, MVT::v1i64,
31738 OPC_CheckChild1Type, MVT::v1i64,
31739 OPC_RecordChild2,
31740 OPC_CheckChild2Type, MVT::v2i32,
31741 OPC_CheckPatternPredicate1,
31742 OPC_EmitInteger32, 28,
31743 OPC_EmitRegisterI32, 0 ,
31744 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALsv2i32),
31745 MVT::v1i64, 4, 0, 1, 2, 3,
31746 19, MVT::v8i16,
31747 OPC_CheckChild1Type, MVT::v8i16,
31748 OPC_RecordChild2,
31749 OPC_CheckChild2Type, MVT::v16i8,
31750 OPC_CheckPatternPredicate1,
31751 OPC_EmitInteger32, 28,
31752 OPC_EmitRegisterI32, 0 ,
31753 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALsv16i8),
31754 MVT::v8i16, 4, 0, 1, 2, 3,
31755 19, MVT::v4i32,
31756 OPC_CheckChild1Type, MVT::v4i32,
31757 OPC_RecordChild2,
31758 OPC_CheckChild2Type, MVT::v8i16,
31759 OPC_CheckPatternPredicate1,
31760 OPC_EmitInteger32, 28,
31761 OPC_EmitRegisterI32, 0 ,
31762 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALsv8i16),
31763 MVT::v4i32, 4, 0, 1, 2, 3,
31764 19, MVT::v2i64,
31765 OPC_CheckChild1Type, MVT::v2i64,
31766 OPC_RecordChild2,
31767 OPC_CheckChild2Type, MVT::v4i32,
31768 OPC_CheckPatternPredicate1,
31769 OPC_EmitInteger32, 28,
31770 OPC_EmitRegisterI32, 0 ,
31771 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALsv4i32),
31772 MVT::v2i64, 4, 0, 1, 2, 3,
31773 0,
31774 4|128,1,
31775 OPC_CheckChild0Integer, 16|128,54,
31776 OPC_RecordChild1,
31777 OPC_SwitchType , 19, MVT::v4i16,
31778 OPC_CheckChild1Type, MVT::v4i16,
31779 OPC_RecordChild2,
31780 OPC_CheckChild2Type, MVT::v8i8,
31781 OPC_CheckPatternPredicate1,
31782 OPC_EmitInteger32, 28,
31783 OPC_EmitRegisterI32, 0 ,
31784 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALuv8i8),
31785 MVT::v4i16, 4, 0, 1, 2, 3,
31786 19, MVT::v2i32,
31787 OPC_CheckChild1Type, MVT::v2i32,
31788 OPC_RecordChild2,
31789 OPC_CheckChild2Type, MVT::v4i16,
31790 OPC_CheckPatternPredicate1,
31791 OPC_EmitInteger32, 28,
31792 OPC_EmitRegisterI32, 0 ,
31793 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALuv4i16),
31794 MVT::v2i32, 4, 0, 1, 2, 3,
31795 19, MVT::v1i64,
31796 OPC_CheckChild1Type, MVT::v1i64,
31797 OPC_RecordChild2,
31798 OPC_CheckChild2Type, MVT::v2i32,
31799 OPC_CheckPatternPredicate1,
31800 OPC_EmitInteger32, 28,
31801 OPC_EmitRegisterI32, 0 ,
31802 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALuv2i32),
31803 MVT::v1i64, 4, 0, 1, 2, 3,
31804 19, MVT::v8i16,
31805 OPC_CheckChild1Type, MVT::v8i16,
31806 OPC_RecordChild2,
31807 OPC_CheckChild2Type, MVT::v16i8,
31808 OPC_CheckPatternPredicate1,
31809 OPC_EmitInteger32, 28,
31810 OPC_EmitRegisterI32, 0 ,
31811 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALuv16i8),
31812 MVT::v8i16, 4, 0, 1, 2, 3,
31813 19, MVT::v4i32,
31814 OPC_CheckChild1Type, MVT::v4i32,
31815 OPC_RecordChild2,
31816 OPC_CheckChild2Type, MVT::v8i16,
31817 OPC_CheckPatternPredicate1,
31818 OPC_EmitInteger32, 28,
31819 OPC_EmitRegisterI32, 0 ,
31820 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALuv8i16),
31821 MVT::v4i32, 4, 0, 1, 2, 3,
31822 19, MVT::v2i64,
31823 OPC_CheckChild1Type, MVT::v2i64,
31824 OPC_RecordChild2,
31825 OPC_CheckChild2Type, MVT::v4i32,
31826 OPC_CheckPatternPredicate1,
31827 OPC_EmitInteger32, 28,
31828 OPC_EmitRegisterI32, 0 ,
31829 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPADALuv4i32),
31830 MVT::v2i64, 4, 0, 1, 2, 3,
31831 0,
31832 112,
31833 OPC_CheckChild0Integer, 24|128,54,
31834 OPC_RecordChild1,
31835 OPC_SwitchType , 19, MVT::v8i8,
31836 OPC_CheckChild1Type, MVT::v8i8,
31837 OPC_RecordChild2,
31838 OPC_CheckChild2Type, MVT::v8i8,
31839 OPC_CheckPatternPredicate1,
31840 OPC_EmitInteger32, 28,
31841 OPC_EmitRegisterI32, 0 ,
31842 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMAXs8),
31843 MVT::v8i8, 4, 0, 1, 2, 3,
31844 19, MVT::v4i16,
31845 OPC_CheckChild1Type, MVT::v4i16,
31846 OPC_RecordChild2,
31847 OPC_CheckChild2Type, MVT::v4i16,
31848 OPC_CheckPatternPredicate1,
31849 OPC_EmitInteger32, 28,
31850 OPC_EmitRegisterI32, 0 ,
31851 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMAXs16),
31852 MVT::v4i16, 4, 0, 1, 2, 3,
31853 19, MVT::v2i32,
31854 OPC_CheckChild1Type, MVT::v2i32,
31855 OPC_RecordChild2,
31856 OPC_CheckChild2Type, MVT::v2i32,
31857 OPC_CheckPatternPredicate1,
31858 OPC_EmitInteger32, 28,
31859 OPC_EmitRegisterI32, 0 ,
31860 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMAXs32),
31861 MVT::v2i32, 4, 0, 1, 2, 3,
31862 19, MVT::v2f32,
31863 OPC_CheckChild1Type, MVT::v2f32,
31864 OPC_RecordChild2,
31865 OPC_CheckChild2Type, MVT::v2f32,
31866 OPC_CheckPatternPredicate1,
31867 OPC_EmitInteger32, 28,
31868 OPC_EmitRegisterI32, 0 ,
31869 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMAXf),
31870 MVT::v2f32, 4, 0, 1, 2, 3,
31871 20, MVT::v4f16,
31872 OPC_CheckChild1Type, MVT::v4f16,
31873 OPC_RecordChild2,
31874 OPC_CheckChild2Type, MVT::v4f16,
31875 OPC_CheckPatternPredicate, 11,
31876 OPC_EmitInteger32, 28,
31877 OPC_EmitRegisterI32, 0 ,
31878 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMAXh),
31879 MVT::v4f16, 4, 0, 1, 2, 3,
31880 0,
31881 69,
31882 OPC_CheckChild0Integer, 26|128,54,
31883 OPC_RecordChild1,
31884 OPC_SwitchType , 19, MVT::v8i8,
31885 OPC_CheckChild1Type, MVT::v8i8,
31886 OPC_RecordChild2,
31887 OPC_CheckChild2Type, MVT::v8i8,
31888 OPC_CheckPatternPredicate1,
31889 OPC_EmitInteger32, 28,
31890 OPC_EmitRegisterI32, 0 ,
31891 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMAXu8),
31892 MVT::v8i8, 4, 0, 1, 2, 3,
31893 19, MVT::v4i16,
31894 OPC_CheckChild1Type, MVT::v4i16,
31895 OPC_RecordChild2,
31896 OPC_CheckChild2Type, MVT::v4i16,
31897 OPC_CheckPatternPredicate1,
31898 OPC_EmitInteger32, 28,
31899 OPC_EmitRegisterI32, 0 ,
31900 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMAXu16),
31901 MVT::v4i16, 4, 0, 1, 2, 3,
31902 19, MVT::v2i32,
31903 OPC_CheckChild1Type, MVT::v2i32,
31904 OPC_RecordChild2,
31905 OPC_CheckChild2Type, MVT::v2i32,
31906 OPC_CheckPatternPredicate1,
31907 OPC_EmitInteger32, 28,
31908 OPC_EmitRegisterI32, 0 ,
31909 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMAXu32),
31910 MVT::v2i32, 4, 0, 1, 2, 3,
31911 0,
31912 112,
31913 OPC_CheckChild0Integer, 28|128,54,
31914 OPC_RecordChild1,
31915 OPC_SwitchType , 19, MVT::v8i8,
31916 OPC_CheckChild1Type, MVT::v8i8,
31917 OPC_RecordChild2,
31918 OPC_CheckChild2Type, MVT::v8i8,
31919 OPC_CheckPatternPredicate1,
31920 OPC_EmitInteger32, 28,
31921 OPC_EmitRegisterI32, 0 ,
31922 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMINs8),
31923 MVT::v8i8, 4, 0, 1, 2, 3,
31924 19, MVT::v4i16,
31925 OPC_CheckChild1Type, MVT::v4i16,
31926 OPC_RecordChild2,
31927 OPC_CheckChild2Type, MVT::v4i16,
31928 OPC_CheckPatternPredicate1,
31929 OPC_EmitInteger32, 28,
31930 OPC_EmitRegisterI32, 0 ,
31931 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMINs16),
31932 MVT::v4i16, 4, 0, 1, 2, 3,
31933 19, MVT::v2i32,
31934 OPC_CheckChild1Type, MVT::v2i32,
31935 OPC_RecordChild2,
31936 OPC_CheckChild2Type, MVT::v2i32,
31937 OPC_CheckPatternPredicate1,
31938 OPC_EmitInteger32, 28,
31939 OPC_EmitRegisterI32, 0 ,
31940 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMINs32),
31941 MVT::v2i32, 4, 0, 1, 2, 3,
31942 19, MVT::v2f32,
31943 OPC_CheckChild1Type, MVT::v2f32,
31944 OPC_RecordChild2,
31945 OPC_CheckChild2Type, MVT::v2f32,
31946 OPC_CheckPatternPredicate1,
31947 OPC_EmitInteger32, 28,
31948 OPC_EmitRegisterI32, 0 ,
31949 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMINf),
31950 MVT::v2f32, 4, 0, 1, 2, 3,
31951 20, MVT::v4f16,
31952 OPC_CheckChild1Type, MVT::v4f16,
31953 OPC_RecordChild2,
31954 OPC_CheckChild2Type, MVT::v4f16,
31955 OPC_CheckPatternPredicate, 11,
31956 OPC_EmitInteger32, 28,
31957 OPC_EmitRegisterI32, 0 ,
31958 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMINh),
31959 MVT::v4f16, 4, 0, 1, 2, 3,
31960 0,
31961 69,
31962 OPC_CheckChild0Integer, 30|128,54,
31963 OPC_RecordChild1,
31964 OPC_SwitchType , 19, MVT::v8i8,
31965 OPC_CheckChild1Type, MVT::v8i8,
31966 OPC_RecordChild2,
31967 OPC_CheckChild2Type, MVT::v8i8,
31968 OPC_CheckPatternPredicate1,
31969 OPC_EmitInteger32, 28,
31970 OPC_EmitRegisterI32, 0 ,
31971 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMINu8),
31972 MVT::v8i8, 4, 0, 1, 2, 3,
31973 19, MVT::v4i16,
31974 OPC_CheckChild1Type, MVT::v4i16,
31975 OPC_RecordChild2,
31976 OPC_CheckChild2Type, MVT::v4i16,
31977 OPC_CheckPatternPredicate1,
31978 OPC_EmitInteger32, 28,
31979 OPC_EmitRegisterI32, 0 ,
31980 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMINu16),
31981 MVT::v4i16, 4, 0, 1, 2, 3,
31982 19, MVT::v2i32,
31983 OPC_CheckChild1Type, MVT::v2i32,
31984 OPC_RecordChild2,
31985 OPC_CheckChild2Type, MVT::v2i32,
31986 OPC_CheckPatternPredicate1,
31987 OPC_EmitInteger32, 28,
31988 OPC_EmitRegisterI32, 0 ,
31989 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VPMINu32),
31990 MVT::v2i32, 4, 0, 1, 2, 3,
31991 0,
31992 110,
31993 OPC_CheckChild0Integer, 76|128,54,
31994 OPC_RecordChild1,
31995 OPC_SwitchType , 15, MVT::v2i32,
31996 OPC_CheckChild1Type, MVT::v2i32,
31997 OPC_CheckPatternPredicate1,
31998 OPC_EmitInteger32, 28,
31999 OPC_EmitRegisterI32, 0 ,
32000 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRECPEd),
32001 MVT::v2i32, 3, 0, 1, 2,
32002 15, MVT::v4i32,
32003 OPC_CheckChild1Type, MVT::v4i32,
32004 OPC_CheckPatternPredicate1,
32005 OPC_EmitInteger32, 28,
32006 OPC_EmitRegisterI32, 0 ,
32007 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRECPEq),
32008 MVT::v4i32, 3, 0, 1, 2,
32009 15, MVT::v2f32,
32010 OPC_CheckChild1Type, MVT::v2f32,
32011 OPC_CheckPatternPredicate1,
32012 OPC_EmitInteger32, 28,
32013 OPC_EmitRegisterI32, 0 ,
32014 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRECPEfd),
32015 MVT::v2f32, 3, 0, 1, 2,
32016 15, MVT::v4f32,
32017 OPC_CheckChild1Type, MVT::v4f32,
32018 OPC_CheckPatternPredicate1,
32019 OPC_EmitInteger32, 28,
32020 OPC_EmitRegisterI32, 0 ,
32021 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRECPEfq),
32022 MVT::v4f32, 3, 0, 1, 2,
32023 16, MVT::v4f16,
32024 OPC_CheckChild1Type, MVT::v4f16,
32025 OPC_CheckPatternPredicate, 11,
32026 OPC_EmitInteger32, 28,
32027 OPC_EmitRegisterI32, 0 ,
32028 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRECPEhd),
32029 MVT::v4f16, 3, 0, 1, 2,
32030 16, MVT::v8f16,
32031 OPC_CheckChild1Type, MVT::v8f16,
32032 OPC_CheckPatternPredicate, 11,
32033 OPC_EmitInteger32, 28,
32034 OPC_EmitRegisterI32, 0 ,
32035 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRECPEhq),
32036 MVT::v8f16, 3, 0, 1, 2,
32037 0,
32038 110,
32039 OPC_CheckChild0Integer, 102|128,54,
32040 OPC_RecordChild1,
32041 OPC_SwitchType , 15, MVT::v2i32,
32042 OPC_CheckChild1Type, MVT::v2i32,
32043 OPC_CheckPatternPredicate1,
32044 OPC_EmitInteger32, 28,
32045 OPC_EmitRegisterI32, 0 ,
32046 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSQRTEd),
32047 MVT::v2i32, 3, 0, 1, 2,
32048 15, MVT::v4i32,
32049 OPC_CheckChild1Type, MVT::v4i32,
32050 OPC_CheckPatternPredicate1,
32051 OPC_EmitInteger32, 28,
32052 OPC_EmitRegisterI32, 0 ,
32053 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSQRTEq),
32054 MVT::v4i32, 3, 0, 1, 2,
32055 15, MVT::v2f32,
32056 OPC_CheckChild1Type, MVT::v2f32,
32057 OPC_CheckPatternPredicate1,
32058 OPC_EmitInteger32, 28,
32059 OPC_EmitRegisterI32, 0 ,
32060 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSQRTEfd),
32061 MVT::v2f32, 3, 0, 1, 2,
32062 15, MVT::v4f32,
32063 OPC_CheckChild1Type, MVT::v4f32,
32064 OPC_CheckPatternPredicate1,
32065 OPC_EmitInteger32, 28,
32066 OPC_EmitRegisterI32, 0 ,
32067 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSQRTEfq),
32068 MVT::v4f32, 3, 0, 1, 2,
32069 16, MVT::v4f16,
32070 OPC_CheckChild1Type, MVT::v4f16,
32071 OPC_CheckPatternPredicate, 11,
32072 OPC_EmitInteger32, 28,
32073 OPC_EmitRegisterI32, 0 ,
32074 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSQRTEhd),
32075 MVT::v4f16, 3, 0, 1, 2,
32076 16, MVT::v8f16,
32077 OPC_CheckChild1Type, MVT::v8f16,
32078 OPC_CheckPatternPredicate, 11,
32079 OPC_EmitInteger32, 28,
32080 OPC_EmitRegisterI32, 0 ,
32081 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSQRTEhq),
32082 MVT::v8f16, 3, 0, 1, 2,
32083 0,
32084 46|128,1,
32085 OPC_CheckChild0Integer, 110|128,54,
32086 OPC_RecordChild1,
32087 OPC_SwitchType , 19, MVT::v4i16,
32088 OPC_CheckChild1Type, MVT::v4i16,
32089 OPC_RecordChild2,
32090 OPC_CheckChild2Type, MVT::v4i16,
32091 OPC_CheckPatternPredicate1,
32092 OPC_EmitInteger32, 28,
32093 OPC_EmitRegisterI32, 0 ,
32094 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv4i16),
32095 MVT::v4i16, 4, 0, 1, 2, 3,
32096 19, MVT::v2i32,
32097 OPC_CheckChild1Type, MVT::v2i32,
32098 OPC_RecordChild2,
32099 OPC_CheckChild2Type, MVT::v2i32,
32100 OPC_CheckPatternPredicate1,
32101 OPC_EmitInteger32, 28,
32102 OPC_EmitRegisterI32, 0 ,
32103 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv2i32),
32104 MVT::v2i32, 4, 0, 1, 2, 3,
32105 19, MVT::v8i16,
32106 OPC_CheckChild1Type, MVT::v8i16,
32107 OPC_RecordChild2,
32108 OPC_CheckChild2Type, MVT::v8i16,
32109 OPC_CheckPatternPredicate1,
32110 OPC_EmitInteger32, 28,
32111 OPC_EmitRegisterI32, 0 ,
32112 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv8i16),
32113 MVT::v8i16, 4, 0, 1, 2, 3,
32114 19, MVT::v4i32,
32115 OPC_CheckChild1Type, MVT::v4i32,
32116 OPC_RecordChild2,
32117 OPC_CheckChild2Type, MVT::v4i32,
32118 OPC_CheckPatternPredicate1,
32119 OPC_EmitInteger32, 28,
32120 OPC_EmitRegisterI32, 0 ,
32121 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv4i32),
32122 MVT::v4i32, 4, 0, 1, 2, 3,
32123 19, MVT::v8i8,
32124 OPC_CheckChild1Type, MVT::v8i8,
32125 OPC_RecordChild2,
32126 OPC_CheckChild2Type, MVT::v8i8,
32127 OPC_CheckPatternPredicate1,
32128 OPC_EmitInteger32, 28,
32129 OPC_EmitRegisterI32, 0 ,
32130 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv8i8),
32131 MVT::v8i8, 4, 0, 1, 2, 3,
32132 19, MVT::v16i8,
32133 OPC_CheckChild1Type, MVT::v16i8,
32134 OPC_RecordChild2,
32135 OPC_CheckChild2Type, MVT::v16i8,
32136 OPC_CheckPatternPredicate1,
32137 OPC_EmitInteger32, 28,
32138 OPC_EmitRegisterI32, 0 ,
32139 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv16i8),
32140 MVT::v16i8, 4, 0, 1, 2, 3,
32141 19, MVT::v1i64,
32142 OPC_CheckChild1Type, MVT::v1i64,
32143 OPC_RecordChild2,
32144 OPC_CheckChild2Type, MVT::v1i64,
32145 OPC_CheckPatternPredicate1,
32146 OPC_EmitInteger32, 28,
32147 OPC_EmitRegisterI32, 0 ,
32148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv1i64),
32149 MVT::v1i64, 4, 0, 1, 2, 3,
32150 19, MVT::v2i64,
32151 OPC_CheckChild1Type, MVT::v2i64,
32152 OPC_RecordChild2,
32153 OPC_CheckChild2Type, MVT::v2i64,
32154 OPC_CheckPatternPredicate1,
32155 OPC_EmitInteger32, 28,
32156 OPC_EmitRegisterI32, 0 ,
32157 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv2i64),
32158 MVT::v2i64, 4, 0, 1, 2, 3,
32159 0,
32160 46|128,1,
32161 OPC_CheckChild0Integer, 112|128,54,
32162 OPC_RecordChild1,
32163 OPC_SwitchType , 19, MVT::v4i16,
32164 OPC_CheckChild1Type, MVT::v4i16,
32165 OPC_RecordChild2,
32166 OPC_CheckChild2Type, MVT::v4i16,
32167 OPC_CheckPatternPredicate1,
32168 OPC_EmitInteger32, 28,
32169 OPC_EmitRegisterI32, 0 ,
32170 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv4i16),
32171 MVT::v4i16, 4, 0, 1, 2, 3,
32172 19, MVT::v2i32,
32173 OPC_CheckChild1Type, MVT::v2i32,
32174 OPC_RecordChild2,
32175 OPC_CheckChild2Type, MVT::v2i32,
32176 OPC_CheckPatternPredicate1,
32177 OPC_EmitInteger32, 28,
32178 OPC_EmitRegisterI32, 0 ,
32179 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv2i32),
32180 MVT::v2i32, 4, 0, 1, 2, 3,
32181 19, MVT::v8i16,
32182 OPC_CheckChild1Type, MVT::v8i16,
32183 OPC_RecordChild2,
32184 OPC_CheckChild2Type, MVT::v8i16,
32185 OPC_CheckPatternPredicate1,
32186 OPC_EmitInteger32, 28,
32187 OPC_EmitRegisterI32, 0 ,
32188 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv8i16),
32189 MVT::v8i16, 4, 0, 1, 2, 3,
32190 19, MVT::v4i32,
32191 OPC_CheckChild1Type, MVT::v4i32,
32192 OPC_RecordChild2,
32193 OPC_CheckChild2Type, MVT::v4i32,
32194 OPC_CheckPatternPredicate1,
32195 OPC_EmitInteger32, 28,
32196 OPC_EmitRegisterI32, 0 ,
32197 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv4i32),
32198 MVT::v4i32, 4, 0, 1, 2, 3,
32199 19, MVT::v8i8,
32200 OPC_CheckChild1Type, MVT::v8i8,
32201 OPC_RecordChild2,
32202 OPC_CheckChild2Type, MVT::v8i8,
32203 OPC_CheckPatternPredicate1,
32204 OPC_EmitInteger32, 28,
32205 OPC_EmitRegisterI32, 0 ,
32206 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv8i8),
32207 MVT::v8i8, 4, 0, 1, 2, 3,
32208 19, MVT::v16i8,
32209 OPC_CheckChild1Type, MVT::v16i8,
32210 OPC_RecordChild2,
32211 OPC_CheckChild2Type, MVT::v16i8,
32212 OPC_CheckPatternPredicate1,
32213 OPC_EmitInteger32, 28,
32214 OPC_EmitRegisterI32, 0 ,
32215 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv16i8),
32216 MVT::v16i8, 4, 0, 1, 2, 3,
32217 19, MVT::v1i64,
32218 OPC_CheckChild1Type, MVT::v1i64,
32219 OPC_RecordChild2,
32220 OPC_CheckChild2Type, MVT::v1i64,
32221 OPC_CheckPatternPredicate1,
32222 OPC_EmitInteger32, 28,
32223 OPC_EmitRegisterI32, 0 ,
32224 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv1i64),
32225 MVT::v1i64, 4, 0, 1, 2, 3,
32226 19, MVT::v2i64,
32227 OPC_CheckChild1Type, MVT::v2i64,
32228 OPC_RecordChild2,
32229 OPC_CheckChild2Type, MVT::v2i64,
32230 OPC_CheckPatternPredicate1,
32231 OPC_EmitInteger32, 28,
32232 OPC_EmitRegisterI32, 0 ,
32233 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv2i64),
32234 MVT::v2i64, 4, 0, 1, 2, 3,
32235 0,
32236 46|128,1,
32237 OPC_CheckChild0Integer, 98|128,54,
32238 OPC_RecordChild1,
32239 OPC_SwitchType , 19, MVT::v4i16,
32240 OPC_CheckChild1Type, MVT::v4i16,
32241 OPC_RecordChild2,
32242 OPC_CheckChild2Type, MVT::v4i16,
32243 OPC_CheckPatternPredicate1,
32244 OPC_EmitInteger32, 28,
32245 OPC_EmitRegisterI32, 0 ,
32246 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLsv4i16),
32247 MVT::v4i16, 4, 0, 1, 2, 3,
32248 19, MVT::v2i32,
32249 OPC_CheckChild1Type, MVT::v2i32,
32250 OPC_RecordChild2,
32251 OPC_CheckChild2Type, MVT::v2i32,
32252 OPC_CheckPatternPredicate1,
32253 OPC_EmitInteger32, 28,
32254 OPC_EmitRegisterI32, 0 ,
32255 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLsv2i32),
32256 MVT::v2i32, 4, 0, 1, 2, 3,
32257 19, MVT::v8i16,
32258 OPC_CheckChild1Type, MVT::v8i16,
32259 OPC_RecordChild2,
32260 OPC_CheckChild2Type, MVT::v8i16,
32261 OPC_CheckPatternPredicate1,
32262 OPC_EmitInteger32, 28,
32263 OPC_EmitRegisterI32, 0 ,
32264 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLsv8i16),
32265 MVT::v8i16, 4, 0, 1, 2, 3,
32266 19, MVT::v4i32,
32267 OPC_CheckChild1Type, MVT::v4i32,
32268 OPC_RecordChild2,
32269 OPC_CheckChild2Type, MVT::v4i32,
32270 OPC_CheckPatternPredicate1,
32271 OPC_EmitInteger32, 28,
32272 OPC_EmitRegisterI32, 0 ,
32273 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLsv4i32),
32274 MVT::v4i32, 4, 0, 1, 2, 3,
32275 19, MVT::v8i8,
32276 OPC_CheckChild1Type, MVT::v8i8,
32277 OPC_RecordChild2,
32278 OPC_CheckChild2Type, MVT::v8i8,
32279 OPC_CheckPatternPredicate1,
32280 OPC_EmitInteger32, 28,
32281 OPC_EmitRegisterI32, 0 ,
32282 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLsv8i8),
32283 MVT::v8i8, 4, 0, 1, 2, 3,
32284 19, MVT::v16i8,
32285 OPC_CheckChild1Type, MVT::v16i8,
32286 OPC_RecordChild2,
32287 OPC_CheckChild2Type, MVT::v16i8,
32288 OPC_CheckPatternPredicate1,
32289 OPC_EmitInteger32, 28,
32290 OPC_EmitRegisterI32, 0 ,
32291 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLsv16i8),
32292 MVT::v16i8, 4, 0, 1, 2, 3,
32293 19, MVT::v1i64,
32294 OPC_CheckChild1Type, MVT::v1i64,
32295 OPC_RecordChild2,
32296 OPC_CheckChild2Type, MVT::v1i64,
32297 OPC_CheckPatternPredicate1,
32298 OPC_EmitInteger32, 28,
32299 OPC_EmitRegisterI32, 0 ,
32300 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLsv1i64),
32301 MVT::v1i64, 4, 0, 1, 2, 3,
32302 19, MVT::v2i64,
32303 OPC_CheckChild1Type, MVT::v2i64,
32304 OPC_RecordChild2,
32305 OPC_CheckChild2Type, MVT::v2i64,
32306 OPC_CheckPatternPredicate1,
32307 OPC_EmitInteger32, 28,
32308 OPC_EmitRegisterI32, 0 ,
32309 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLsv2i64),
32310 MVT::v2i64, 4, 0, 1, 2, 3,
32311 0,
32312 46|128,1,
32313 OPC_CheckChild0Integer, 100|128,54,
32314 OPC_RecordChild1,
32315 OPC_SwitchType , 19, MVT::v4i16,
32316 OPC_CheckChild1Type, MVT::v4i16,
32317 OPC_RecordChild2,
32318 OPC_CheckChild2Type, MVT::v4i16,
32319 OPC_CheckPatternPredicate1,
32320 OPC_EmitInteger32, 28,
32321 OPC_EmitRegisterI32, 0 ,
32322 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLuv4i16),
32323 MVT::v4i16, 4, 0, 1, 2, 3,
32324 19, MVT::v2i32,
32325 OPC_CheckChild1Type, MVT::v2i32,
32326 OPC_RecordChild2,
32327 OPC_CheckChild2Type, MVT::v2i32,
32328 OPC_CheckPatternPredicate1,
32329 OPC_EmitInteger32, 28,
32330 OPC_EmitRegisterI32, 0 ,
32331 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLuv2i32),
32332 MVT::v2i32, 4, 0, 1, 2, 3,
32333 19, MVT::v8i16,
32334 OPC_CheckChild1Type, MVT::v8i16,
32335 OPC_RecordChild2,
32336 OPC_CheckChild2Type, MVT::v8i16,
32337 OPC_CheckPatternPredicate1,
32338 OPC_EmitInteger32, 28,
32339 OPC_EmitRegisterI32, 0 ,
32340 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLuv8i16),
32341 MVT::v8i16, 4, 0, 1, 2, 3,
32342 19, MVT::v4i32,
32343 OPC_CheckChild1Type, MVT::v4i32,
32344 OPC_RecordChild2,
32345 OPC_CheckChild2Type, MVT::v4i32,
32346 OPC_CheckPatternPredicate1,
32347 OPC_EmitInteger32, 28,
32348 OPC_EmitRegisterI32, 0 ,
32349 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLuv4i32),
32350 MVT::v4i32, 4, 0, 1, 2, 3,
32351 19, MVT::v8i8,
32352 OPC_CheckChild1Type, MVT::v8i8,
32353 OPC_RecordChild2,
32354 OPC_CheckChild2Type, MVT::v8i8,
32355 OPC_CheckPatternPredicate1,
32356 OPC_EmitInteger32, 28,
32357 OPC_EmitRegisterI32, 0 ,
32358 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLuv8i8),
32359 MVT::v8i8, 4, 0, 1, 2, 3,
32360 19, MVT::v16i8,
32361 OPC_CheckChild1Type, MVT::v16i8,
32362 OPC_RecordChild2,
32363 OPC_CheckChild2Type, MVT::v16i8,
32364 OPC_CheckPatternPredicate1,
32365 OPC_EmitInteger32, 28,
32366 OPC_EmitRegisterI32, 0 ,
32367 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLuv16i8),
32368 MVT::v16i8, 4, 0, 1, 2, 3,
32369 19, MVT::v1i64,
32370 OPC_CheckChild1Type, MVT::v1i64,
32371 OPC_RecordChild2,
32372 OPC_CheckChild2Type, MVT::v1i64,
32373 OPC_CheckPatternPredicate1,
32374 OPC_EmitInteger32, 28,
32375 OPC_EmitRegisterI32, 0 ,
32376 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLuv1i64),
32377 MVT::v1i64, 4, 0, 1, 2, 3,
32378 19, MVT::v2i64,
32379 OPC_CheckChild1Type, MVT::v2i64,
32380 OPC_RecordChild2,
32381 OPC_CheckChild2Type, MVT::v2i64,
32382 OPC_CheckPatternPredicate1,
32383 OPC_EmitInteger32, 28,
32384 OPC_EmitRegisterI32, 0 ,
32385 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHLuv2i64),
32386 MVT::v2i64, 4, 0, 1, 2, 3,
32387 0,
32388 46|128,1,
32389 OPC_CheckChild0Integer, 68|128,54,
32390 OPC_RecordChild1,
32391 OPC_SwitchType , 19, MVT::v4i16,
32392 OPC_CheckChild1Type, MVT::v4i16,
32393 OPC_RecordChild2,
32394 OPC_CheckChild2Type, MVT::v4i16,
32395 OPC_CheckPatternPredicate1,
32396 OPC_EmitInteger32, 28,
32397 OPC_EmitRegisterI32, 0 ,
32398 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsv4i16),
32399 MVT::v4i16, 4, 0, 1, 2, 3,
32400 19, MVT::v2i32,
32401 OPC_CheckChild1Type, MVT::v2i32,
32402 OPC_RecordChild2,
32403 OPC_CheckChild2Type, MVT::v2i32,
32404 OPC_CheckPatternPredicate1,
32405 OPC_EmitInteger32, 28,
32406 OPC_EmitRegisterI32, 0 ,
32407 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsv2i32),
32408 MVT::v2i32, 4, 0, 1, 2, 3,
32409 19, MVT::v8i16,
32410 OPC_CheckChild1Type, MVT::v8i16,
32411 OPC_RecordChild2,
32412 OPC_CheckChild2Type, MVT::v8i16,
32413 OPC_CheckPatternPredicate1,
32414 OPC_EmitInteger32, 28,
32415 OPC_EmitRegisterI32, 0 ,
32416 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsv8i16),
32417 MVT::v8i16, 4, 0, 1, 2, 3,
32418 19, MVT::v4i32,
32419 OPC_CheckChild1Type, MVT::v4i32,
32420 OPC_RecordChild2,
32421 OPC_CheckChild2Type, MVT::v4i32,
32422 OPC_CheckPatternPredicate1,
32423 OPC_EmitInteger32, 28,
32424 OPC_EmitRegisterI32, 0 ,
32425 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsv4i32),
32426 MVT::v4i32, 4, 0, 1, 2, 3,
32427 19, MVT::v8i8,
32428 OPC_CheckChild1Type, MVT::v8i8,
32429 OPC_RecordChild2,
32430 OPC_CheckChild2Type, MVT::v8i8,
32431 OPC_CheckPatternPredicate1,
32432 OPC_EmitInteger32, 28,
32433 OPC_EmitRegisterI32, 0 ,
32434 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsv8i8),
32435 MVT::v8i8, 4, 0, 1, 2, 3,
32436 19, MVT::v16i8,
32437 OPC_CheckChild1Type, MVT::v16i8,
32438 OPC_RecordChild2,
32439 OPC_CheckChild2Type, MVT::v16i8,
32440 OPC_CheckPatternPredicate1,
32441 OPC_EmitInteger32, 28,
32442 OPC_EmitRegisterI32, 0 ,
32443 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsv16i8),
32444 MVT::v16i8, 4, 0, 1, 2, 3,
32445 19, MVT::v1i64,
32446 OPC_CheckChild1Type, MVT::v1i64,
32447 OPC_RecordChild2,
32448 OPC_CheckChild2Type, MVT::v1i64,
32449 OPC_CheckPatternPredicate1,
32450 OPC_EmitInteger32, 28,
32451 OPC_EmitRegisterI32, 0 ,
32452 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsv1i64),
32453 MVT::v1i64, 4, 0, 1, 2, 3,
32454 19, MVT::v2i64,
32455 OPC_CheckChild1Type, MVT::v2i64,
32456 OPC_RecordChild2,
32457 OPC_CheckChild2Type, MVT::v2i64,
32458 OPC_CheckPatternPredicate1,
32459 OPC_EmitInteger32, 28,
32460 OPC_EmitRegisterI32, 0 ,
32461 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsv2i64),
32462 MVT::v2i64, 4, 0, 1, 2, 3,
32463 0,
32464 46|128,1,
32465 OPC_CheckChild0Integer, 72|128,54,
32466 OPC_RecordChild1,
32467 OPC_SwitchType , 19, MVT::v4i16,
32468 OPC_CheckChild1Type, MVT::v4i16,
32469 OPC_RecordChild2,
32470 OPC_CheckChild2Type, MVT::v4i16,
32471 OPC_CheckPatternPredicate1,
32472 OPC_EmitInteger32, 28,
32473 OPC_EmitRegisterI32, 0 ,
32474 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuv4i16),
32475 MVT::v4i16, 4, 0, 1, 2, 3,
32476 19, MVT::v2i32,
32477 OPC_CheckChild1Type, MVT::v2i32,
32478 OPC_RecordChild2,
32479 OPC_CheckChild2Type, MVT::v2i32,
32480 OPC_CheckPatternPredicate1,
32481 OPC_EmitInteger32, 28,
32482 OPC_EmitRegisterI32, 0 ,
32483 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuv2i32),
32484 MVT::v2i32, 4, 0, 1, 2, 3,
32485 19, MVT::v8i16,
32486 OPC_CheckChild1Type, MVT::v8i16,
32487 OPC_RecordChild2,
32488 OPC_CheckChild2Type, MVT::v8i16,
32489 OPC_CheckPatternPredicate1,
32490 OPC_EmitInteger32, 28,
32491 OPC_EmitRegisterI32, 0 ,
32492 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuv8i16),
32493 MVT::v8i16, 4, 0, 1, 2, 3,
32494 19, MVT::v4i32,
32495 OPC_CheckChild1Type, MVT::v4i32,
32496 OPC_RecordChild2,
32497 OPC_CheckChild2Type, MVT::v4i32,
32498 OPC_CheckPatternPredicate1,
32499 OPC_EmitInteger32, 28,
32500 OPC_EmitRegisterI32, 0 ,
32501 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuv4i32),
32502 MVT::v4i32, 4, 0, 1, 2, 3,
32503 19, MVT::v8i8,
32504 OPC_CheckChild1Type, MVT::v8i8,
32505 OPC_RecordChild2,
32506 OPC_CheckChild2Type, MVT::v8i8,
32507 OPC_CheckPatternPredicate1,
32508 OPC_EmitInteger32, 28,
32509 OPC_EmitRegisterI32, 0 ,
32510 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuv8i8),
32511 MVT::v8i8, 4, 0, 1, 2, 3,
32512 19, MVT::v16i8,
32513 OPC_CheckChild1Type, MVT::v16i8,
32514 OPC_RecordChild2,
32515 OPC_CheckChild2Type, MVT::v16i8,
32516 OPC_CheckPatternPredicate1,
32517 OPC_EmitInteger32, 28,
32518 OPC_EmitRegisterI32, 0 ,
32519 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuv16i8),
32520 MVT::v16i8, 4, 0, 1, 2, 3,
32521 19, MVT::v1i64,
32522 OPC_CheckChild1Type, MVT::v1i64,
32523 OPC_RecordChild2,
32524 OPC_CheckChild2Type, MVT::v1i64,
32525 OPC_CheckPatternPredicate1,
32526 OPC_EmitInteger32, 28,
32527 OPC_EmitRegisterI32, 0 ,
32528 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuv1i64),
32529 MVT::v1i64, 4, 0, 1, 2, 3,
32530 19, MVT::v2i64,
32531 OPC_CheckChild1Type, MVT::v2i64,
32532 OPC_RecordChild2,
32533 OPC_CheckChild2Type, MVT::v2i64,
32534 OPC_CheckPatternPredicate1,
32535 OPC_EmitInteger32, 28,
32536 OPC_EmitRegisterI32, 0 ,
32537 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuv2i64),
32538 MVT::v2i64, 4, 0, 1, 2, 3,
32539 0,
32540 46|128,1,
32541 OPC_CheckChild0Integer, 58|128,54,
32542 OPC_RecordChild1,
32543 OPC_SwitchType , 19, MVT::v4i16,
32544 OPC_CheckChild1Type, MVT::v4i16,
32545 OPC_RecordChild2,
32546 OPC_CheckChild2Type, MVT::v4i16,
32547 OPC_CheckPatternPredicate1,
32548 OPC_EmitInteger32, 28,
32549 OPC_EmitRegisterI32, 0 ,
32550 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLsv4i16),
32551 MVT::v4i16, 4, 0, 1, 2, 3,
32552 19, MVT::v2i32,
32553 OPC_CheckChild1Type, MVT::v2i32,
32554 OPC_RecordChild2,
32555 OPC_CheckChild2Type, MVT::v2i32,
32556 OPC_CheckPatternPredicate1,
32557 OPC_EmitInteger32, 28,
32558 OPC_EmitRegisterI32, 0 ,
32559 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLsv2i32),
32560 MVT::v2i32, 4, 0, 1, 2, 3,
32561 19, MVT::v8i16,
32562 OPC_CheckChild1Type, MVT::v8i16,
32563 OPC_RecordChild2,
32564 OPC_CheckChild2Type, MVT::v8i16,
32565 OPC_CheckPatternPredicate1,
32566 OPC_EmitInteger32, 28,
32567 OPC_EmitRegisterI32, 0 ,
32568 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLsv8i16),
32569 MVT::v8i16, 4, 0, 1, 2, 3,
32570 19, MVT::v4i32,
32571 OPC_CheckChild1Type, MVT::v4i32,
32572 OPC_RecordChild2,
32573 OPC_CheckChild2Type, MVT::v4i32,
32574 OPC_CheckPatternPredicate1,
32575 OPC_EmitInteger32, 28,
32576 OPC_EmitRegisterI32, 0 ,
32577 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLsv4i32),
32578 MVT::v4i32, 4, 0, 1, 2, 3,
32579 19, MVT::v8i8,
32580 OPC_CheckChild1Type, MVT::v8i8,
32581 OPC_RecordChild2,
32582 OPC_CheckChild2Type, MVT::v8i8,
32583 OPC_CheckPatternPredicate1,
32584 OPC_EmitInteger32, 28,
32585 OPC_EmitRegisterI32, 0 ,
32586 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLsv8i8),
32587 MVT::v8i8, 4, 0, 1, 2, 3,
32588 19, MVT::v16i8,
32589 OPC_CheckChild1Type, MVT::v16i8,
32590 OPC_RecordChild2,
32591 OPC_CheckChild2Type, MVT::v16i8,
32592 OPC_CheckPatternPredicate1,
32593 OPC_EmitInteger32, 28,
32594 OPC_EmitRegisterI32, 0 ,
32595 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLsv16i8),
32596 MVT::v16i8, 4, 0, 1, 2, 3,
32597 19, MVT::v1i64,
32598 OPC_CheckChild1Type, MVT::v1i64,
32599 OPC_RecordChild2,
32600 OPC_CheckChild2Type, MVT::v1i64,
32601 OPC_CheckPatternPredicate1,
32602 OPC_EmitInteger32, 28,
32603 OPC_EmitRegisterI32, 0 ,
32604 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLsv1i64),
32605 MVT::v1i64, 4, 0, 1, 2, 3,
32606 19, MVT::v2i64,
32607 OPC_CheckChild1Type, MVT::v2i64,
32608 OPC_RecordChild2,
32609 OPC_CheckChild2Type, MVT::v2i64,
32610 OPC_CheckPatternPredicate1,
32611 OPC_EmitInteger32, 28,
32612 OPC_EmitRegisterI32, 0 ,
32613 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLsv2i64),
32614 MVT::v2i64, 4, 0, 1, 2, 3,
32615 0,
32616 46|128,1,
32617 OPC_CheckChild0Integer, 60|128,54,
32618 OPC_RecordChild1,
32619 OPC_SwitchType , 19, MVT::v4i16,
32620 OPC_CheckChild1Type, MVT::v4i16,
32621 OPC_RecordChild2,
32622 OPC_CheckChild2Type, MVT::v4i16,
32623 OPC_CheckPatternPredicate1,
32624 OPC_EmitInteger32, 28,
32625 OPC_EmitRegisterI32, 0 ,
32626 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLuv4i16),
32627 MVT::v4i16, 4, 0, 1, 2, 3,
32628 19, MVT::v2i32,
32629 OPC_CheckChild1Type, MVT::v2i32,
32630 OPC_RecordChild2,
32631 OPC_CheckChild2Type, MVT::v2i32,
32632 OPC_CheckPatternPredicate1,
32633 OPC_EmitInteger32, 28,
32634 OPC_EmitRegisterI32, 0 ,
32635 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLuv2i32),
32636 MVT::v2i32, 4, 0, 1, 2, 3,
32637 19, MVT::v8i16,
32638 OPC_CheckChild1Type, MVT::v8i16,
32639 OPC_RecordChild2,
32640 OPC_CheckChild2Type, MVT::v8i16,
32641 OPC_CheckPatternPredicate1,
32642 OPC_EmitInteger32, 28,
32643 OPC_EmitRegisterI32, 0 ,
32644 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLuv8i16),
32645 MVT::v8i16, 4, 0, 1, 2, 3,
32646 19, MVT::v4i32,
32647 OPC_CheckChild1Type, MVT::v4i32,
32648 OPC_RecordChild2,
32649 OPC_CheckChild2Type, MVT::v4i32,
32650 OPC_CheckPatternPredicate1,
32651 OPC_EmitInteger32, 28,
32652 OPC_EmitRegisterI32, 0 ,
32653 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLuv4i32),
32654 MVT::v4i32, 4, 0, 1, 2, 3,
32655 19, MVT::v8i8,
32656 OPC_CheckChild1Type, MVT::v8i8,
32657 OPC_RecordChild2,
32658 OPC_CheckChild2Type, MVT::v8i8,
32659 OPC_CheckPatternPredicate1,
32660 OPC_EmitInteger32, 28,
32661 OPC_EmitRegisterI32, 0 ,
32662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLuv8i8),
32663 MVT::v8i8, 4, 0, 1, 2, 3,
32664 19, MVT::v16i8,
32665 OPC_CheckChild1Type, MVT::v16i8,
32666 OPC_RecordChild2,
32667 OPC_CheckChild2Type, MVT::v16i8,
32668 OPC_CheckPatternPredicate1,
32669 OPC_EmitInteger32, 28,
32670 OPC_EmitRegisterI32, 0 ,
32671 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLuv16i8),
32672 MVT::v16i8, 4, 0, 1, 2, 3,
32673 19, MVT::v1i64,
32674 OPC_CheckChild1Type, MVT::v1i64,
32675 OPC_RecordChild2,
32676 OPC_CheckChild2Type, MVT::v1i64,
32677 OPC_CheckPatternPredicate1,
32678 OPC_EmitInteger32, 28,
32679 OPC_EmitRegisterI32, 0 ,
32680 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLuv1i64),
32681 MVT::v1i64, 4, 0, 1, 2, 3,
32682 19, MVT::v2i64,
32683 OPC_CheckChild1Type, MVT::v2i64,
32684 OPC_RecordChild2,
32685 OPC_CheckChild2Type, MVT::v2i64,
32686 OPC_CheckPatternPredicate1,
32687 OPC_EmitInteger32, 28,
32688 OPC_EmitRegisterI32, 0 ,
32689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHLuv2i64),
32690 MVT::v2i64, 4, 0, 1, 2, 3,
32691 0,
32692 108,
32693 OPC_CheckChild0Integer, 32|128,54,
32694 OPC_RecordChild1,
32695 OPC_SwitchType , 15, MVT::v8i8,
32696 OPC_CheckChild1Type, MVT::v8i8,
32697 OPC_CheckPatternPredicate1,
32698 OPC_EmitInteger32, 28,
32699 OPC_EmitRegisterI32, 0 ,
32700 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQABSv8i8),
32701 MVT::v8i8, 3, 0, 1, 2,
32702 15, MVT::v4i16,
32703 OPC_CheckChild1Type, MVT::v4i16,
32704 OPC_CheckPatternPredicate1,
32705 OPC_EmitInteger32, 28,
32706 OPC_EmitRegisterI32, 0 ,
32707 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQABSv4i16),
32708 MVT::v4i16, 3, 0, 1, 2,
32709 15, MVT::v2i32,
32710 OPC_CheckChild1Type, MVT::v2i32,
32711 OPC_CheckPatternPredicate1,
32712 OPC_EmitInteger32, 28,
32713 OPC_EmitRegisterI32, 0 ,
32714 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQABSv2i32),
32715 MVT::v2i32, 3, 0, 1, 2,
32716 15, MVT::v16i8,
32717 OPC_CheckChild1Type, MVT::v16i8,
32718 OPC_CheckPatternPredicate1,
32719 OPC_EmitInteger32, 28,
32720 OPC_EmitRegisterI32, 0 ,
32721 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQABSv16i8),
32722 MVT::v16i8, 3, 0, 1, 2,
32723 15, MVT::v8i16,
32724 OPC_CheckChild1Type, MVT::v8i16,
32725 OPC_CheckPatternPredicate1,
32726 OPC_EmitInteger32, 28,
32727 OPC_EmitRegisterI32, 0 ,
32728 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQABSv8i16),
32729 MVT::v8i16, 3, 0, 1, 2,
32730 15, MVT::v4i32,
32731 OPC_CheckChild1Type, MVT::v4i32,
32732 OPC_CheckPatternPredicate1,
32733 OPC_EmitInteger32, 28,
32734 OPC_EmitRegisterI32, 0 ,
32735 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQABSv4i32),
32736 MVT::v4i32, 3, 0, 1, 2,
32737 0,
32738 108,
32739 OPC_CheckChild0Integer, 44|128,54,
32740 OPC_RecordChild1,
32741 OPC_SwitchType , 15, MVT::v8i8,
32742 OPC_CheckChild1Type, MVT::v8i8,
32743 OPC_CheckPatternPredicate1,
32744 OPC_EmitInteger32, 28,
32745 OPC_EmitRegisterI32, 0 ,
32746 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQNEGv8i8),
32747 MVT::v8i8, 3, 0, 1, 2,
32748 15, MVT::v4i16,
32749 OPC_CheckChild1Type, MVT::v4i16,
32750 OPC_CheckPatternPredicate1,
32751 OPC_EmitInteger32, 28,
32752 OPC_EmitRegisterI32, 0 ,
32753 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQNEGv4i16),
32754 MVT::v4i16, 3, 0, 1, 2,
32755 15, MVT::v2i32,
32756 OPC_CheckChild1Type, MVT::v2i32,
32757 OPC_CheckPatternPredicate1,
32758 OPC_EmitInteger32, 28,
32759 OPC_EmitRegisterI32, 0 ,
32760 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQNEGv2i32),
32761 MVT::v2i32, 3, 0, 1, 2,
32762 15, MVT::v16i8,
32763 OPC_CheckChild1Type, MVT::v16i8,
32764 OPC_CheckPatternPredicate1,
32765 OPC_EmitInteger32, 28,
32766 OPC_EmitRegisterI32, 0 ,
32767 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQNEGv16i8),
32768 MVT::v16i8, 3, 0, 1, 2,
32769 15, MVT::v8i16,
32770 OPC_CheckChild1Type, MVT::v8i16,
32771 OPC_CheckPatternPredicate1,
32772 OPC_EmitInteger32, 28,
32773 OPC_EmitRegisterI32, 0 ,
32774 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQNEGv8i16),
32775 MVT::v8i16, 3, 0, 1, 2,
32776 15, MVT::v4i32,
32777 OPC_CheckChild1Type, MVT::v4i32,
32778 OPC_CheckPatternPredicate1,
32779 OPC_EmitInteger32, 28,
32780 OPC_EmitRegisterI32, 0 ,
32781 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQNEGv4i32),
32782 MVT::v4i32, 3, 0, 1, 2,
32783 0,
32784 108,
32785 OPC_CheckChild0Integer, 54|128,53,
32786 OPC_RecordChild1,
32787 OPC_SwitchType , 15, MVT::v8i8,
32788 OPC_CheckChild1Type, MVT::v8i8,
32789 OPC_CheckPatternPredicate1,
32790 OPC_EmitInteger32, 28,
32791 OPC_EmitRegisterI32, 0 ,
32792 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLSv8i8),
32793 MVT::v8i8, 3, 0, 1, 2,
32794 15, MVT::v4i16,
32795 OPC_CheckChild1Type, MVT::v4i16,
32796 OPC_CheckPatternPredicate1,
32797 OPC_EmitInteger32, 28,
32798 OPC_EmitRegisterI32, 0 ,
32799 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLSv4i16),
32800 MVT::v4i16, 3, 0, 1, 2,
32801 15, MVT::v2i32,
32802 OPC_CheckChild1Type, MVT::v2i32,
32803 OPC_CheckPatternPredicate1,
32804 OPC_EmitInteger32, 28,
32805 OPC_EmitRegisterI32, 0 ,
32806 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLSv2i32),
32807 MVT::v2i32, 3, 0, 1, 2,
32808 15, MVT::v16i8,
32809 OPC_CheckChild1Type, MVT::v16i8,
32810 OPC_CheckPatternPredicate1,
32811 OPC_EmitInteger32, 28,
32812 OPC_EmitRegisterI32, 0 ,
32813 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLSv16i8),
32814 MVT::v16i8, 3, 0, 1, 2,
32815 15, MVT::v8i16,
32816 OPC_CheckChild1Type, MVT::v8i16,
32817 OPC_CheckPatternPredicate1,
32818 OPC_EmitInteger32, 28,
32819 OPC_EmitRegisterI32, 0 ,
32820 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLSv8i16),
32821 MVT::v8i16, 3, 0, 1, 2,
32822 15, MVT::v4i32,
32823 OPC_CheckChild1Type, MVT::v4i32,
32824 OPC_CheckPatternPredicate1,
32825 OPC_EmitInteger32, 28,
32826 OPC_EmitRegisterI32, 0 ,
32827 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLSv4i32),
32828 MVT::v4i32, 3, 0, 1, 2,
32829 0,
32830 57,
32831 OPC_CheckChild0Integer, 38|128,54,
32832 OPC_RecordChild1,
32833 OPC_SwitchType , 15, MVT::v8i8,
32834 OPC_CheckChild1Type, MVT::v8i16,
32835 OPC_CheckPatternPredicate1,
32836 OPC_EmitInteger32, 28,
32837 OPC_EmitRegisterI32, 0 ,
32838 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQMOVNsv8i8),
32839 MVT::v8i8, 3, 0, 1, 2,
32840 15, MVT::v4i16,
32841 OPC_CheckChild1Type, MVT::v4i32,
32842 OPC_CheckPatternPredicate1,
32843 OPC_EmitInteger32, 28,
32844 OPC_EmitRegisterI32, 0 ,
32845 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQMOVNsv4i16),
32846 MVT::v4i16, 3, 0, 1, 2,
32847 15, MVT::v2i32,
32848 OPC_CheckChild1Type, MVT::v2i64,
32849 OPC_CheckPatternPredicate1,
32850 OPC_EmitInteger32, 28,
32851 OPC_EmitRegisterI32, 0 ,
32852 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQMOVNsv2i32),
32853 MVT::v2i32, 3, 0, 1, 2,
32854 0,
32855 57,
32856 OPC_CheckChild0Integer, 42|128,54,
32857 OPC_RecordChild1,
32858 OPC_SwitchType , 15, MVT::v8i8,
32859 OPC_CheckChild1Type, MVT::v8i16,
32860 OPC_CheckPatternPredicate1,
32861 OPC_EmitInteger32, 28,
32862 OPC_EmitRegisterI32, 0 ,
32863 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQMOVNuv8i8),
32864 MVT::v8i8, 3, 0, 1, 2,
32865 15, MVT::v4i16,
32866 OPC_CheckChild1Type, MVT::v4i32,
32867 OPC_CheckPatternPredicate1,
32868 OPC_EmitInteger32, 28,
32869 OPC_EmitRegisterI32, 0 ,
32870 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQMOVNuv4i16),
32871 MVT::v4i16, 3, 0, 1, 2,
32872 15, MVT::v2i32,
32873 OPC_CheckChild1Type, MVT::v2i64,
32874 OPC_CheckPatternPredicate1,
32875 OPC_EmitInteger32, 28,
32876 OPC_EmitRegisterI32, 0 ,
32877 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQMOVNuv2i32),
32878 MVT::v2i32, 3, 0, 1, 2,
32879 0,
32880 57,
32881 OPC_CheckChild0Integer, 40|128,54,
32882 OPC_RecordChild1,
32883 OPC_SwitchType , 15, MVT::v8i8,
32884 OPC_CheckChild1Type, MVT::v8i16,
32885 OPC_CheckPatternPredicate1,
32886 OPC_EmitInteger32, 28,
32887 OPC_EmitRegisterI32, 0 ,
32888 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQMOVNsuv8i8),
32889 MVT::v8i8, 3, 0, 1, 2,
32890 15, MVT::v4i16,
32891 OPC_CheckChild1Type, MVT::v4i32,
32892 OPC_CheckPatternPredicate1,
32893 OPC_EmitInteger32, 28,
32894 OPC_EmitRegisterI32, 0 ,
32895 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQMOVNsuv4i16),
32896 MVT::v4i16, 3, 0, 1, 2,
32897 15, MVT::v2i32,
32898 OPC_CheckChild1Type, MVT::v2i64,
32899 OPC_CheckPatternPredicate1,
32900 OPC_EmitInteger32, 28,
32901 OPC_EmitRegisterI32, 0 ,
32902 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQMOVNsuv2i32),
32903 MVT::v2i32, 3, 0, 1, 2,
32904 0,
32905 54,
32906 OPC_CheckChild0Integer, 56|128,53,
32907 OPC_RecordChild1,
32908 OPC_SwitchType , 10, MVT::v2i32,
32909 OPC_CheckChild1Type, MVT::v2f32,
32910 OPC_CheckPatternPredicate, 16,
32911 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTANSDf),
32912 MVT::v2i32, 1, 0,
32913 10, MVT::v4i32,
32914 OPC_CheckChild1Type, MVT::v4f32,
32915 OPC_CheckPatternPredicate, 16,
32916 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTANSQf),
32917 MVT::v4i32, 1, 0,
32918 10, MVT::v4i16,
32919 OPC_CheckChild1Type, MVT::v4f16,
32920 OPC_CheckPatternPredicate, 17,
32921 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTANSDh),
32922 MVT::v4i16, 1, 0,
32923 10, MVT::v8i16,
32924 OPC_CheckChild1Type, MVT::v8f16,
32925 OPC_CheckPatternPredicate, 17,
32926 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTANSQh),
32927 MVT::v8i16, 1, 0,
32928 0,
32929 54,
32930 OPC_CheckChild0Integer, 58|128,53,
32931 OPC_RecordChild1,
32932 OPC_SwitchType , 10, MVT::v2i32,
32933 OPC_CheckChild1Type, MVT::v2f32,
32934 OPC_CheckPatternPredicate, 16,
32935 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTANUDf),
32936 MVT::v2i32, 1, 0,
32937 10, MVT::v4i32,
32938 OPC_CheckChild1Type, MVT::v4f32,
32939 OPC_CheckPatternPredicate, 16,
32940 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTANUQf),
32941 MVT::v4i32, 1, 0,
32942 10, MVT::v4i16,
32943 OPC_CheckChild1Type, MVT::v4f16,
32944 OPC_CheckPatternPredicate, 17,
32945 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTANUDh),
32946 MVT::v4i16, 1, 0,
32947 10, MVT::v8i16,
32948 OPC_CheckChild1Type, MVT::v8f16,
32949 OPC_CheckPatternPredicate, 17,
32950 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTANUQh),
32951 MVT::v8i16, 1, 0,
32952 0,
32953 54,
32954 OPC_CheckChild0Integer, 80|128,53,
32955 OPC_RecordChild1,
32956 OPC_SwitchType , 10, MVT::v2i32,
32957 OPC_CheckChild1Type, MVT::v2f32,
32958 OPC_CheckPatternPredicate, 16,
32959 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTNNSDf),
32960 MVT::v2i32, 1, 0,
32961 10, MVT::v4i32,
32962 OPC_CheckChild1Type, MVT::v4f32,
32963 OPC_CheckPatternPredicate, 16,
32964 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTNNSQf),
32965 MVT::v4i32, 1, 0,
32966 10, MVT::v4i16,
32967 OPC_CheckChild1Type, MVT::v4f16,
32968 OPC_CheckPatternPredicate, 17,
32969 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTNNSDh),
32970 MVT::v4i16, 1, 0,
32971 10, MVT::v8i16,
32972 OPC_CheckChild1Type, MVT::v8f16,
32973 OPC_CheckPatternPredicate, 17,
32974 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTNNSQh),
32975 MVT::v8i16, 1, 0,
32976 0,
32977 54,
32978 OPC_CheckChild0Integer, 82|128,53,
32979 OPC_RecordChild1,
32980 OPC_SwitchType , 10, MVT::v2i32,
32981 OPC_CheckChild1Type, MVT::v2f32,
32982 OPC_CheckPatternPredicate, 16,
32983 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTNNUDf),
32984 MVT::v2i32, 1, 0,
32985 10, MVT::v4i32,
32986 OPC_CheckChild1Type, MVT::v4f32,
32987 OPC_CheckPatternPredicate, 16,
32988 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTNNUQf),
32989 MVT::v4i32, 1, 0,
32990 10, MVT::v4i16,
32991 OPC_CheckChild1Type, MVT::v4f16,
32992 OPC_CheckPatternPredicate, 17,
32993 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTNNUDh),
32994 MVT::v4i16, 1, 0,
32995 10, MVT::v8i16,
32996 OPC_CheckChild1Type, MVT::v8f16,
32997 OPC_CheckPatternPredicate, 17,
32998 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTNNUQh),
32999 MVT::v8i16, 1, 0,
33000 0,
33001 54,
33002 OPC_CheckChild0Integer, 84|128,53,
33003 OPC_RecordChild1,
33004 OPC_SwitchType , 10, MVT::v2i32,
33005 OPC_CheckChild1Type, MVT::v2f32,
33006 OPC_CheckPatternPredicate, 16,
33007 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTPNSDf),
33008 MVT::v2i32, 1, 0,
33009 10, MVT::v4i32,
33010 OPC_CheckChild1Type, MVT::v4f32,
33011 OPC_CheckPatternPredicate, 16,
33012 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTPNSQf),
33013 MVT::v4i32, 1, 0,
33014 10, MVT::v4i16,
33015 OPC_CheckChild1Type, MVT::v4f16,
33016 OPC_CheckPatternPredicate, 17,
33017 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTPNSDh),
33018 MVT::v4i16, 1, 0,
33019 10, MVT::v8i16,
33020 OPC_CheckChild1Type, MVT::v8f16,
33021 OPC_CheckPatternPredicate, 17,
33022 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTPNSQh),
33023 MVT::v8i16, 1, 0,
33024 0,
33025 54,
33026 OPC_CheckChild0Integer, 86|128,53,
33027 OPC_RecordChild1,
33028 OPC_SwitchType , 10, MVT::v2i32,
33029 OPC_CheckChild1Type, MVT::v2f32,
33030 OPC_CheckPatternPredicate, 16,
33031 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTPNUDf),
33032 MVT::v2i32, 1, 0,
33033 10, MVT::v4i32,
33034 OPC_CheckChild1Type, MVT::v4f32,
33035 OPC_CheckPatternPredicate, 16,
33036 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTPNUQf),
33037 MVT::v4i32, 1, 0,
33038 10, MVT::v4i16,
33039 OPC_CheckChild1Type, MVT::v4f16,
33040 OPC_CheckPatternPredicate, 17,
33041 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTPNUDh),
33042 MVT::v4i16, 1, 0,
33043 10, MVT::v8i16,
33044 OPC_CheckChild1Type, MVT::v8f16,
33045 OPC_CheckPatternPredicate, 17,
33046 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTPNUQh),
33047 MVT::v8i16, 1, 0,
33048 0,
33049 54,
33050 OPC_CheckChild0Integer, 76|128,53,
33051 OPC_RecordChild1,
33052 OPC_SwitchType , 10, MVT::v2i32,
33053 OPC_CheckChild1Type, MVT::v2f32,
33054 OPC_CheckPatternPredicate, 16,
33055 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTMNSDf),
33056 MVT::v2i32, 1, 0,
33057 10, MVT::v4i32,
33058 OPC_CheckChild1Type, MVT::v4f32,
33059 OPC_CheckPatternPredicate, 16,
33060 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTMNSQf),
33061 MVT::v4i32, 1, 0,
33062 10, MVT::v4i16,
33063 OPC_CheckChild1Type, MVT::v4f16,
33064 OPC_CheckPatternPredicate, 17,
33065 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTMNSDh),
33066 MVT::v4i16, 1, 0,
33067 10, MVT::v8i16,
33068 OPC_CheckChild1Type, MVT::v8f16,
33069 OPC_CheckPatternPredicate, 17,
33070 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTMNSQh),
33071 MVT::v8i16, 1, 0,
33072 0,
33073 54,
33074 OPC_CheckChild0Integer, 78|128,53,
33075 OPC_RecordChild1,
33076 OPC_SwitchType , 10, MVT::v2i32,
33077 OPC_CheckChild1Type, MVT::v2f32,
33078 OPC_CheckPatternPredicate, 16,
33079 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTMNUDf),
33080 MVT::v2i32, 1, 0,
33081 10, MVT::v4i32,
33082 OPC_CheckChild1Type, MVT::v4f32,
33083 OPC_CheckPatternPredicate, 16,
33084 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTMNUQf),
33085 MVT::v4i32, 1, 0,
33086 10, MVT::v4i16,
33087 OPC_CheckChild1Type, MVT::v4f16,
33088 OPC_CheckPatternPredicate, 17,
33089 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTMNUDh),
33090 MVT::v4i16, 1, 0,
33091 10, MVT::v8i16,
33092 OPC_CheckChild1Type, MVT::v8f16,
33093 OPC_CheckPatternPredicate, 17,
33094 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTMNUQh),
33095 MVT::v8i16, 1, 0,
33096 0,
33097 18,
33098 OPC_CheckChild0Integer, 68|128,53,
33099 OPC_RecordChild1,
33100 OPC_CheckPatternPredicate, 88,
33101 OPC_EmitInteger32, 28,
33102 OPC_EmitRegisterI32, 0 ,
33103 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTf2h),
33104 MVT::v4i16, 3, 0, 1, 2,
33105 21,
33106 OPC_CheckChild0Integer, 14|128,55,
33107 OPC_RecordChild1,
33108 OPC_RecordChild2,
33109 OPC_RecordChild3,
33110 OPC_CheckPatternPredicate1,
33111 OPC_EmitInteger32, 28,
33112 OPC_EmitRegisterI32, 0 ,
33113 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTBX1),
33114 MVT::v8i8, 5, 0, 1, 2, 3, 4,
33115 14,
33116 OPC_CheckChild0Integer, 118|128,52,
33117 OPC_RecordChild1,
33118 OPC_RecordChild2,
33119 OPC_CheckPatternPredicate, 64,
33120 OPC_MorphNodeTo1None, TARGET_VAL(ARM::AESD),
33121 MVT::v16i8, 2, 0, 1,
33122 14,
33123 OPC_CheckChild0Integer, 120|128,52,
33124 OPC_RecordChild1,
33125 OPC_RecordChild2,
33126 OPC_CheckPatternPredicate, 64,
33127 OPC_MorphNodeTo1None, TARGET_VAL(ARM::AESE),
33128 MVT::v16i8, 2, 0, 1,
33129 12,
33130 OPC_CheckChild0Integer, 122|128,52,
33131 OPC_RecordChild1,
33132 OPC_CheckPatternPredicate, 64,
33133 OPC_MorphNodeTo1None, TARGET_VAL(ARM::AESIMC),
33134 MVT::v16i8, 1, 0,
33135 12,
33136 OPC_CheckChild0Integer, 124|128,52,
33137 OPC_RecordChild1,
33138 OPC_CheckPatternPredicate, 64,
33139 OPC_MorphNodeTo1None, TARGET_VAL(ARM::AESMC),
33140 MVT::v16i8, 1, 0,
33141 14,
33142 OPC_CheckChild0Integer, 18|128,53,
33143 OPC_RecordChild1,
33144 OPC_RecordChild2,
33145 OPC_CheckPatternPredicate, 55,
33146 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHA1SU1),
33147 MVT::v4i32, 2, 0, 1,
33148 14,
33149 OPC_CheckChild0Integer, 24|128,53,
33150 OPC_RecordChild1,
33151 OPC_RecordChild2,
33152 OPC_CheckPatternPredicate, 55,
33153 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHA256SU0),
33154 MVT::v4i32, 2, 0, 1,
33155 16,
33156 OPC_CheckChild0Integer, 16|128,53,
33157 OPC_RecordChild1,
33158 OPC_RecordChild2,
33159 OPC_RecordChild3,
33160 OPC_CheckPatternPredicate, 55,
33161 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHA1SU0),
33162 MVT::v4i32, 3, 0, 1, 2,
33163 16,
33164 OPC_CheckChild0Integer, 20|128,53,
33165 OPC_RecordChild1,
33166 OPC_RecordChild2,
33167 OPC_RecordChild3,
33168 OPC_CheckPatternPredicate, 55,
33169 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHA256H),
33170 MVT::v4i32, 3, 0, 1, 2,
33171 16,
33172 OPC_CheckChild0Integer, 22|128,53,
33173 OPC_RecordChild1,
33174 OPC_RecordChild2,
33175 OPC_RecordChild3,
33176 OPC_CheckPatternPredicate, 55,
33177 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHA256H2),
33178 MVT::v4i32, 3, 0, 1, 2,
33179 16,
33180 OPC_CheckChild0Integer, 26|128,53,
33181 OPC_RecordChild1,
33182 OPC_RecordChild2,
33183 OPC_RecordChild3,
33184 OPC_CheckPatternPredicate, 55,
33185 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHA256SU1),
33186 MVT::v4i32, 3, 0, 1, 2,
33187 106,
33188 OPC_CheckChild0Integer, 66|128,50,
33189 OPC_RecordChild1,
33190 OPC_SwitchType , 23, MVT::v16i8,
33191 OPC_CheckChild1Type, MVT::v16i8,
33192 OPC_RecordChild2,
33193 OPC_CheckChild2Type, MVT::v16i1,
33194 OPC_RecordChild3,
33195 OPC_CheckChild3Type, MVT::v16i8,
33196 OPC_CheckPatternPredicate0,
33197 OPC_EmitInteger32, 2,
33198 OPC_EmitRegisterI32, 0 ,
33199 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
33200 MVT::v16i8, 5, 0, 3, 1, 4, 2,
33201 23, MVT::v8i16,
33202 OPC_CheckChild1Type, MVT::v8i16,
33203 OPC_RecordChild2,
33204 OPC_CheckChild2Type, MVT::v8i1,
33205 OPC_RecordChild3,
33206 OPC_CheckChild3Type, MVT::v8i16,
33207 OPC_CheckPatternPredicate0,
33208 OPC_EmitInteger32, 2,
33209 OPC_EmitRegisterI32, 0 ,
33210 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
33211 MVT::v8i16, 5, 0, 3, 1, 4, 2,
33212 23, MVT::v4i32,
33213 OPC_CheckChild1Type, MVT::v4i32,
33214 OPC_RecordChild2,
33215 OPC_CheckChild2Type, MVT::v4i1,
33216 OPC_RecordChild3,
33217 OPC_CheckChild3Type, MVT::v4i32,
33218 OPC_CheckPatternPredicate0,
33219 OPC_EmitInteger32, 2,
33220 OPC_EmitRegisterI32, 0 ,
33221 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
33222 MVT::v4i32, 5, 0, 3, 1, 4, 2,
33223 23, MVT::v2i64,
33224 OPC_CheckChild1Type, MVT::v2i64,
33225 OPC_RecordChild2,
33226 OPC_CheckChild2Type, MVT::v2i1,
33227 OPC_RecordChild3,
33228 OPC_CheckChild3Type, MVT::v2i64,
33229 OPC_CheckPatternPredicate0,
33230 OPC_EmitInteger32, 2,
33231 OPC_EmitRegisterI32, 0 ,
33232 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
33233 MVT::v2i64, 5, 0, 3, 1, 4, 2,
33234 0,
33235 122,
33236 OPC_CheckChild0Integer, 2|128,50,
33237 OPC_RecordChild1,
33238 OPC_SwitchType , 27, MVT::v16i8,
33239 OPC_CheckChild1Type, MVT::v16i8,
33240 OPC_RecordChild2,
33241 OPC_CheckChild2Type, MVT::v16i8,
33242 OPC_RecordChild3,
33243 OPC_CheckChild3Type, MVT::v16i1,
33244 OPC_RecordChild4,
33245 OPC_CheckChild4Type, MVT::v16i8,
33246 OPC_CheckPatternPredicate0,
33247 OPC_EmitInteger32, 2,
33248 OPC_EmitRegisterI32, 0 ,
33249 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
33250 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
33251 27, MVT::v8i16,
33252 OPC_CheckChild1Type, MVT::v8i16,
33253 OPC_RecordChild2,
33254 OPC_CheckChild2Type, MVT::v8i16,
33255 OPC_RecordChild3,
33256 OPC_CheckChild3Type, MVT::v8i1,
33257 OPC_RecordChild4,
33258 OPC_CheckChild4Type, MVT::v8i16,
33259 OPC_CheckPatternPredicate0,
33260 OPC_EmitInteger32, 2,
33261 OPC_EmitRegisterI32, 0 ,
33262 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
33263 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
33264 27, MVT::v4i32,
33265 OPC_CheckChild1Type, MVT::v4i32,
33266 OPC_RecordChild2,
33267 OPC_CheckChild2Type, MVT::v4i32,
33268 OPC_RecordChild3,
33269 OPC_CheckChild3Type, MVT::v4i1,
33270 OPC_RecordChild4,
33271 OPC_CheckChild4Type, MVT::v4i32,
33272 OPC_CheckPatternPredicate0,
33273 OPC_EmitInteger32, 2,
33274 OPC_EmitRegisterI32, 0 ,
33275 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
33276 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
33277 27, MVT::v2i64,
33278 OPC_CheckChild1Type, MVT::v2i64,
33279 OPC_RecordChild2,
33280 OPC_CheckChild2Type, MVT::v2i64,
33281 OPC_RecordChild3,
33282 OPC_CheckChild3Type, MVT::v2i1,
33283 OPC_RecordChild4,
33284 OPC_CheckChild4Type, MVT::v2i64,
33285 OPC_CheckPatternPredicate0,
33286 OPC_EmitInteger32, 2,
33287 OPC_EmitRegisterI32, 0 ,
33288 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
33289 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
33290 0,
33291 122,
33292 OPC_CheckChild0Integer, 72|128,50,
33293 OPC_RecordChild1,
33294 OPC_SwitchType , 27, MVT::v16i8,
33295 OPC_CheckChild1Type, MVT::v16i8,
33296 OPC_RecordChild2,
33297 OPC_CheckChild2Type, MVT::v16i8,
33298 OPC_RecordChild3,
33299 OPC_CheckChild3Type, MVT::v16i1,
33300 OPC_RecordChild4,
33301 OPC_CheckChild4Type, MVT::v16i8,
33302 OPC_CheckPatternPredicate0,
33303 OPC_EmitInteger32, 2,
33304 OPC_EmitRegisterI32, 0 ,
33305 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
33306 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
33307 27, MVT::v8i16,
33308 OPC_CheckChild1Type, MVT::v8i16,
33309 OPC_RecordChild2,
33310 OPC_CheckChild2Type, MVT::v8i16,
33311 OPC_RecordChild3,
33312 OPC_CheckChild3Type, MVT::v8i1,
33313 OPC_RecordChild4,
33314 OPC_CheckChild4Type, MVT::v8i16,
33315 OPC_CheckPatternPredicate0,
33316 OPC_EmitInteger32, 2,
33317 OPC_EmitRegisterI32, 0 ,
33318 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
33319 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
33320 27, MVT::v4i32,
33321 OPC_CheckChild1Type, MVT::v4i32,
33322 OPC_RecordChild2,
33323 OPC_CheckChild2Type, MVT::v4i32,
33324 OPC_RecordChild3,
33325 OPC_CheckChild3Type, MVT::v4i1,
33326 OPC_RecordChild4,
33327 OPC_CheckChild4Type, MVT::v4i32,
33328 OPC_CheckPatternPredicate0,
33329 OPC_EmitInteger32, 2,
33330 OPC_EmitRegisterI32, 0 ,
33331 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
33332 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
33333 27, MVT::v2i64,
33334 OPC_CheckChild1Type, MVT::v2i64,
33335 OPC_RecordChild2,
33336 OPC_CheckChild2Type, MVT::v2i64,
33337 OPC_RecordChild3,
33338 OPC_CheckChild3Type, MVT::v2i1,
33339 OPC_RecordChild4,
33340 OPC_CheckChild4Type, MVT::v2i64,
33341 OPC_CheckPatternPredicate0,
33342 OPC_EmitInteger32, 2,
33343 OPC_EmitRegisterI32, 0 ,
33344 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
33345 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
33346 0,
33347 122,
33348 OPC_CheckChild0Integer, 12|128,50,
33349 OPC_RecordChild1,
33350 OPC_SwitchType , 27, MVT::v16i8,
33351 OPC_CheckChild1Type, MVT::v16i8,
33352 OPC_RecordChild2,
33353 OPC_CheckChild2Type, MVT::v16i8,
33354 OPC_RecordChild3,
33355 OPC_CheckChild3Type, MVT::v16i1,
33356 OPC_RecordChild4,
33357 OPC_CheckChild4Type, MVT::v16i8,
33358 OPC_CheckPatternPredicate0,
33359 OPC_EmitInteger32, 2,
33360 OPC_EmitRegisterI32, 0 ,
33361 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
33362 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
33363 27, MVT::v8i16,
33364 OPC_CheckChild1Type, MVT::v8i16,
33365 OPC_RecordChild2,
33366 OPC_CheckChild2Type, MVT::v8i16,
33367 OPC_RecordChild3,
33368 OPC_CheckChild3Type, MVT::v8i1,
33369 OPC_RecordChild4,
33370 OPC_CheckChild4Type, MVT::v8i16,
33371 OPC_CheckPatternPredicate0,
33372 OPC_EmitInteger32, 2,
33373 OPC_EmitRegisterI32, 0 ,
33374 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
33375 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
33376 27, MVT::v4i32,
33377 OPC_CheckChild1Type, MVT::v4i32,
33378 OPC_RecordChild2,
33379 OPC_CheckChild2Type, MVT::v4i32,
33380 OPC_RecordChild3,
33381 OPC_CheckChild3Type, MVT::v4i1,
33382 OPC_RecordChild4,
33383 OPC_CheckChild4Type, MVT::v4i32,
33384 OPC_CheckPatternPredicate0,
33385 OPC_EmitInteger32, 2,
33386 OPC_EmitRegisterI32, 0 ,
33387 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
33388 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
33389 27, MVT::v2i64,
33390 OPC_CheckChild1Type, MVT::v2i64,
33391 OPC_RecordChild2,
33392 OPC_CheckChild2Type, MVT::v2i64,
33393 OPC_RecordChild3,
33394 OPC_CheckChild3Type, MVT::v2i1,
33395 OPC_RecordChild4,
33396 OPC_CheckChild4Type, MVT::v2i64,
33397 OPC_CheckPatternPredicate0,
33398 OPC_EmitInteger32, 2,
33399 OPC_EmitRegisterI32, 0 ,
33400 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
33401 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
33402 0,
33403 122,
33404 OPC_CheckChild0Integer, 6|128,50,
33405 OPC_RecordChild1,
33406 OPC_SwitchType , 27, MVT::v16i8,
33407 OPC_CheckChild1Type, MVT::v16i8,
33408 OPC_RecordChild2,
33409 OPC_CheckChild2Type, MVT::v16i8,
33410 OPC_RecordChild3,
33411 OPC_CheckChild3Type, MVT::v16i1,
33412 OPC_RecordChild4,
33413 OPC_CheckChild4Type, MVT::v16i8,
33414 OPC_CheckPatternPredicate0,
33415 OPC_EmitInteger32, 2,
33416 OPC_EmitRegisterI32, 0 ,
33417 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
33418 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
33419 27, MVT::v8i16,
33420 OPC_CheckChild1Type, MVT::v8i16,
33421 OPC_RecordChild2,
33422 OPC_CheckChild2Type, MVT::v8i16,
33423 OPC_RecordChild3,
33424 OPC_CheckChild3Type, MVT::v8i1,
33425 OPC_RecordChild4,
33426 OPC_CheckChild4Type, MVT::v8i16,
33427 OPC_CheckPatternPredicate0,
33428 OPC_EmitInteger32, 2,
33429 OPC_EmitRegisterI32, 0 ,
33430 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
33431 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
33432 27, MVT::v4i32,
33433 OPC_CheckChild1Type, MVT::v4i32,
33434 OPC_RecordChild2,
33435 OPC_CheckChild2Type, MVT::v4i32,
33436 OPC_RecordChild3,
33437 OPC_CheckChild3Type, MVT::v4i1,
33438 OPC_RecordChild4,
33439 OPC_CheckChild4Type, MVT::v4i32,
33440 OPC_CheckPatternPredicate0,
33441 OPC_EmitInteger32, 2,
33442 OPC_EmitRegisterI32, 0 ,
33443 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
33444 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
33445 27, MVT::v2i64,
33446 OPC_CheckChild1Type, MVT::v2i64,
33447 OPC_RecordChild2,
33448 OPC_CheckChild2Type, MVT::v2i64,
33449 OPC_RecordChild3,
33450 OPC_CheckChild3Type, MVT::v2i1,
33451 OPC_RecordChild4,
33452 OPC_CheckChild4Type, MVT::v2i64,
33453 OPC_CheckPatternPredicate0,
33454 OPC_EmitInteger32, 2,
33455 OPC_EmitRegisterI32, 0 ,
33456 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
33457 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
33458 0,
33459 122,
33460 OPC_CheckChild0Integer, 70|128,50,
33461 OPC_RecordChild1,
33462 OPC_SwitchType , 27, MVT::v16i8,
33463 OPC_CheckChild1Type, MVT::v16i8,
33464 OPC_RecordChild2,
33465 OPC_CheckChild2Type, MVT::v16i8,
33466 OPC_RecordChild3,
33467 OPC_CheckChild3Type, MVT::v16i1,
33468 OPC_RecordChild4,
33469 OPC_CheckChild4Type, MVT::v16i8,
33470 OPC_CheckPatternPredicate0,
33471 OPC_EmitInteger32, 2,
33472 OPC_EmitRegisterI32, 0 ,
33473 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
33474 MVT::v16i8, 6, 0, 1, 4, 2, 5, 3,
33475 27, MVT::v8i16,
33476 OPC_CheckChild1Type, MVT::v8i16,
33477 OPC_RecordChild2,
33478 OPC_CheckChild2Type, MVT::v8i16,
33479 OPC_RecordChild3,
33480 OPC_CheckChild3Type, MVT::v8i1,
33481 OPC_RecordChild4,
33482 OPC_CheckChild4Type, MVT::v8i16,
33483 OPC_CheckPatternPredicate0,
33484 OPC_EmitInteger32, 2,
33485 OPC_EmitRegisterI32, 0 ,
33486 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
33487 MVT::v8i16, 6, 0, 1, 4, 2, 5, 3,
33488 27, MVT::v4i32,
33489 OPC_CheckChild1Type, MVT::v4i32,
33490 OPC_RecordChild2,
33491 OPC_CheckChild2Type, MVT::v4i32,
33492 OPC_RecordChild3,
33493 OPC_CheckChild3Type, MVT::v4i1,
33494 OPC_RecordChild4,
33495 OPC_CheckChild4Type, MVT::v4i32,
33496 OPC_CheckPatternPredicate0,
33497 OPC_EmitInteger32, 2,
33498 OPC_EmitRegisterI32, 0 ,
33499 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
33500 MVT::v4i32, 6, 0, 1, 4, 2, 5, 3,
33501 27, MVT::v2i64,
33502 OPC_CheckChild1Type, MVT::v2i64,
33503 OPC_RecordChild2,
33504 OPC_CheckChild2Type, MVT::v2i64,
33505 OPC_RecordChild3,
33506 OPC_CheckChild3Type, MVT::v2i1,
33507 OPC_RecordChild4,
33508 OPC_CheckChild4Type, MVT::v2i64,
33509 OPC_CheckPatternPredicate0,
33510 OPC_EmitInteger32, 2,
33511 OPC_EmitRegisterI32, 0 ,
33512 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
33513 MVT::v2i64, 6, 0, 1, 4, 2, 5, 3,
33514 0,
33515 84,
33516 OPC_CheckChild0Integer, 14|128,51,
33517 OPC_RecordChild1,
33518 OPC_SwitchType , 24, MVT::v16i8,
33519 OPC_CheckChild1Type, MVT::v16i8,
33520 OPC_CheckPatternPredicate0,
33521 OPC_EmitInteger32, 0,
33522 OPC_EmitRegisterI32, 0 ,
33523 OPC_EmitRegisterI32, 0 ,
33524 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
33525 MVT::v4i32, 0,
33526 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLSs8),
33527 MVT::v16i8, 5, 0, 1, 2, 3, 4,
33528 24, MVT::v8i16,
33529 OPC_CheckChild1Type, MVT::v8i16,
33530 OPC_CheckPatternPredicate0,
33531 OPC_EmitInteger32, 0,
33532 OPC_EmitRegisterI32, 0 ,
33533 OPC_EmitRegisterI32, 0 ,
33534 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
33535 MVT::v4i32, 0,
33536 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLSs16),
33537 MVT::v8i16, 5, 0, 1, 2, 3, 4,
33538 24, MVT::v4i32,
33539 OPC_CheckChild1Type, MVT::v4i32,
33540 OPC_CheckPatternPredicate0,
33541 OPC_EmitInteger32, 0,
33542 OPC_EmitRegisterI32, 0 ,
33543 OPC_EmitRegisterI32, 0 ,
33544 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
33545 MVT::v4i32, 0,
33546 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLSs32),
33547 MVT::v4i32, 5, 0, 1, 2, 3, 4,
33548 0,
33549 81,
33550 OPC_CheckChild0Integer, 8|128,50,
33551 OPC_RecordChild1,
33552 OPC_SwitchType , 23, MVT::v16i8,
33553 OPC_CheckChild1Type, MVT::v16i8,
33554 OPC_RecordChild2,
33555 OPC_CheckChild2Type, MVT::v16i1,
33556 OPC_RecordChild3,
33557 OPC_CheckChild3Type, MVT::v16i8,
33558 OPC_CheckPatternPredicate0,
33559 OPC_EmitInteger32, 2,
33560 OPC_EmitRegisterI32, 0 ,
33561 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLSs8),
33562 MVT::v16i8, 5, 0, 3, 1, 4, 2,
33563 23, MVT::v8i16,
33564 OPC_CheckChild1Type, MVT::v8i16,
33565 OPC_RecordChild2,
33566 OPC_CheckChild2Type, MVT::v8i1,
33567 OPC_RecordChild3,
33568 OPC_CheckChild3Type, MVT::v8i16,
33569 OPC_CheckPatternPredicate0,
33570 OPC_EmitInteger32, 2,
33571 OPC_EmitRegisterI32, 0 ,
33572 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLSs16),
33573 MVT::v8i16, 5, 0, 3, 1, 4, 2,
33574 23, MVT::v4i32,
33575 OPC_CheckChild1Type, MVT::v4i32,
33576 OPC_RecordChild2,
33577 OPC_CheckChild2Type, MVT::v4i1,
33578 OPC_RecordChild3,
33579 OPC_CheckChild3Type, MVT::v4i32,
33580 OPC_CheckPatternPredicate0,
33581 OPC_EmitInteger32, 2,
33582 OPC_EmitRegisterI32, 0 ,
33583 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLSs32),
33584 MVT::v4i32, 5, 0, 3, 1, 4, 2,
33585 0,
33586 81,
33587 OPC_CheckChild0Integer, 10|128,50,
33588 OPC_RecordChild1,
33589 OPC_SwitchType , 23, MVT::v16i8,
33590 OPC_CheckChild1Type, MVT::v16i8,
33591 OPC_RecordChild2,
33592 OPC_CheckChild2Type, MVT::v16i1,
33593 OPC_RecordChild3,
33594 OPC_CheckChild3Type, MVT::v16i8,
33595 OPC_CheckPatternPredicate0,
33596 OPC_EmitInteger32, 2,
33597 OPC_EmitRegisterI32, 0 ,
33598 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLZs8),
33599 MVT::v16i8, 5, 0, 3, 1, 4, 2,
33600 23, MVT::v8i16,
33601 OPC_CheckChild1Type, MVT::v8i16,
33602 OPC_RecordChild2,
33603 OPC_CheckChild2Type, MVT::v8i1,
33604 OPC_RecordChild3,
33605 OPC_CheckChild3Type, MVT::v8i16,
33606 OPC_CheckPatternPredicate0,
33607 OPC_EmitInteger32, 2,
33608 OPC_EmitRegisterI32, 0 ,
33609 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLZs16),
33610 MVT::v8i16, 5, 0, 3, 1, 4, 2,
33611 23, MVT::v4i32,
33612 OPC_CheckChild1Type, MVT::v4i32,
33613 OPC_RecordChild2,
33614 OPC_CheckChild2Type, MVT::v4i1,
33615 OPC_RecordChild3,
33616 OPC_CheckChild3Type, MVT::v4i32,
33617 OPC_CheckPatternPredicate0,
33618 OPC_EmitInteger32, 2,
33619 OPC_EmitRegisterI32, 0 ,
33620 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLZs32),
33621 MVT::v4i32, 5, 0, 3, 1, 4, 2,
33622 0,
33623 3|128,1,
33624 OPC_CheckChild0Integer, 118|128,49,
33625 OPC_RecordChild1,
33626 OPC_SwitchType , 23, MVT::v16i8,
33627 OPC_CheckChild1Type, MVT::v16i8,
33628 OPC_RecordChild2,
33629 OPC_CheckChild2Type, MVT::v16i1,
33630 OPC_RecordChild3,
33631 OPC_CheckChild3Type, MVT::v16i8,
33632 OPC_CheckPatternPredicate0,
33633 OPC_EmitInteger32, 2,
33634 OPC_EmitRegisterI32, 0 ,
33635 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABSs8),
33636 MVT::v16i8, 5, 0, 3, 1, 4, 2,
33637 23, MVT::v8i16,
33638 OPC_CheckChild1Type, MVT::v8i16,
33639 OPC_RecordChild2,
33640 OPC_CheckChild2Type, MVT::v8i1,
33641 OPC_RecordChild3,
33642 OPC_CheckChild3Type, MVT::v8i16,
33643 OPC_CheckPatternPredicate0,
33644 OPC_EmitInteger32, 2,
33645 OPC_EmitRegisterI32, 0 ,
33646 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABSs16),
33647 MVT::v8i16, 5, 0, 3, 1, 4, 2,
33648 23, MVT::v4i32,
33649 OPC_CheckChild1Type, MVT::v4i32,
33650 OPC_RecordChild2,
33651 OPC_CheckChild2Type, MVT::v4i1,
33652 OPC_RecordChild3,
33653 OPC_CheckChild3Type, MVT::v4i32,
33654 OPC_CheckPatternPredicate0,
33655 OPC_EmitInteger32, 2,
33656 OPC_EmitRegisterI32, 0 ,
33657 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABSs32),
33658 MVT::v4i32, 5, 0, 3, 1, 4, 2,
33659 23, MVT::v8f16,
33660 OPC_CheckChild1Type, MVT::v8f16,
33661 OPC_RecordChild2,
33662 OPC_CheckChild2Type, MVT::v8i1,
33663 OPC_RecordChild3,
33664 OPC_CheckChild3Type, MVT::v8f16,
33665 OPC_CheckPatternPredicate0,
33666 OPC_EmitInteger32, 2,
33667 OPC_EmitRegisterI32, 0 ,
33668 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABSf16),
33669 MVT::v8f16, 5, 0, 3, 1, 4, 2,
33670 23, MVT::v4f32,
33671 OPC_CheckChild1Type, MVT::v4f32,
33672 OPC_RecordChild2,
33673 OPC_CheckChild2Type, MVT::v4i1,
33674 OPC_RecordChild3,
33675 OPC_CheckChild3Type, MVT::v4f32,
33676 OPC_CheckPatternPredicate0,
33677 OPC_EmitInteger32, 2,
33678 OPC_EmitRegisterI32, 0 ,
33679 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABSf32),
33680 MVT::v4f32, 5, 0, 3, 1, 4, 2,
33681 0,
33682 81,
33683 OPC_CheckChild0Integer, 78|128,50,
33684 OPC_RecordChild1,
33685 OPC_SwitchType , 23, MVT::v16i8,
33686 OPC_CheckChild1Type, MVT::v16i8,
33687 OPC_RecordChild2,
33688 OPC_CheckChild2Type, MVT::v16i1,
33689 OPC_RecordChild3,
33690 OPC_CheckChild3Type, MVT::v16i8,
33691 OPC_CheckPatternPredicate0,
33692 OPC_EmitInteger32, 2,
33693 OPC_EmitRegisterI32, 0 ,
33694 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQABSs8),
33695 MVT::v16i8, 5, 0, 3, 1, 4, 2,
33696 23, MVT::v8i16,
33697 OPC_CheckChild1Type, MVT::v8i16,
33698 OPC_RecordChild2,
33699 OPC_CheckChild2Type, MVT::v8i1,
33700 OPC_RecordChild3,
33701 OPC_CheckChild3Type, MVT::v8i16,
33702 OPC_CheckPatternPredicate0,
33703 OPC_EmitInteger32, 2,
33704 OPC_EmitRegisterI32, 0 ,
33705 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQABSs16),
33706 MVT::v8i16, 5, 0, 3, 1, 4, 2,
33707 23, MVT::v4i32,
33708 OPC_CheckChild1Type, MVT::v4i32,
33709 OPC_RecordChild2,
33710 OPC_CheckChild2Type, MVT::v4i1,
33711 OPC_RecordChild3,
33712 OPC_CheckChild3Type, MVT::v4i32,
33713 OPC_CheckPatternPredicate0,
33714 OPC_EmitInteger32, 2,
33715 OPC_EmitRegisterI32, 0 ,
33716 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQABSs32),
33717 MVT::v4i32, 5, 0, 3, 1, 4, 2,
33718 0,
33719 3|128,1,
33720 OPC_CheckChild0Integer, 68|128,50,
33721 OPC_RecordChild1,
33722 OPC_SwitchType , 23, MVT::v16i8,
33723 OPC_CheckChild1Type, MVT::v16i8,
33724 OPC_RecordChild2,
33725 OPC_CheckChild2Type, MVT::v16i1,
33726 OPC_RecordChild3,
33727 OPC_CheckChild3Type, MVT::v16i8,
33728 OPC_CheckPatternPredicate0,
33729 OPC_EmitInteger32, 2,
33730 OPC_EmitRegisterI32, 0 ,
33731 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VNEGs8),
33732 MVT::v16i8, 5, 0, 3, 1, 4, 2,
33733 23, MVT::v8i16,
33734 OPC_CheckChild1Type, MVT::v8i16,
33735 OPC_RecordChild2,
33736 OPC_CheckChild2Type, MVT::v8i1,
33737 OPC_RecordChild3,
33738 OPC_CheckChild3Type, MVT::v8i16,
33739 OPC_CheckPatternPredicate0,
33740 OPC_EmitInteger32, 2,
33741 OPC_EmitRegisterI32, 0 ,
33742 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VNEGs16),
33743 MVT::v8i16, 5, 0, 3, 1, 4, 2,
33744 23, MVT::v4i32,
33745 OPC_CheckChild1Type, MVT::v4i32,
33746 OPC_RecordChild2,
33747 OPC_CheckChild2Type, MVT::v4i1,
33748 OPC_RecordChild3,
33749 OPC_CheckChild3Type, MVT::v4i32,
33750 OPC_CheckPatternPredicate0,
33751 OPC_EmitInteger32, 2,
33752 OPC_EmitRegisterI32, 0 ,
33753 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VNEGs32),
33754 MVT::v4i32, 5, 0, 3, 1, 4, 2,
33755 23, MVT::v8f16,
33756 OPC_CheckChild1Type, MVT::v8f16,
33757 OPC_RecordChild2,
33758 OPC_CheckChild2Type, MVT::v8i1,
33759 OPC_RecordChild3,
33760 OPC_CheckChild3Type, MVT::v8f16,
33761 OPC_CheckPatternPredicate0,
33762 OPC_EmitInteger32, 2,
33763 OPC_EmitRegisterI32, 0 ,
33764 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VNEGf16),
33765 MVT::v8f16, 5, 0, 3, 1, 4, 2,
33766 23, MVT::v4f32,
33767 OPC_CheckChild1Type, MVT::v4f32,
33768 OPC_RecordChild2,
33769 OPC_CheckChild2Type, MVT::v4i1,
33770 OPC_RecordChild3,
33771 OPC_CheckChild3Type, MVT::v4f32,
33772 OPC_CheckPatternPredicate0,
33773 OPC_EmitInteger32, 2,
33774 OPC_EmitRegisterI32, 0 ,
33775 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VNEGf32),
33776 MVT::v4f32, 5, 0, 3, 1, 4, 2,
33777 0,
33778 81,
33779 OPC_CheckChild0Integer, 84|128,50,
33780 OPC_RecordChild1,
33781 OPC_SwitchType , 23, MVT::v16i8,
33782 OPC_CheckChild1Type, MVT::v16i8,
33783 OPC_RecordChild2,
33784 OPC_CheckChild2Type, MVT::v16i1,
33785 OPC_RecordChild3,
33786 OPC_CheckChild3Type, MVT::v16i8,
33787 OPC_CheckPatternPredicate0,
33788 OPC_EmitInteger32, 2,
33789 OPC_EmitRegisterI32, 0 ,
33790 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQNEGs8),
33791 MVT::v16i8, 5, 0, 3, 1, 4, 2,
33792 23, MVT::v8i16,
33793 OPC_CheckChild1Type, MVT::v8i16,
33794 OPC_RecordChild2,
33795 OPC_CheckChild2Type, MVT::v8i1,
33796 OPC_RecordChild3,
33797 OPC_CheckChild3Type, MVT::v8i16,
33798 OPC_CheckPatternPredicate0,
33799 OPC_EmitInteger32, 2,
33800 OPC_EmitRegisterI32, 0 ,
33801 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQNEGs16),
33802 MVT::v8i16, 5, 0, 3, 1, 4, 2,
33803 23, MVT::v4i32,
33804 OPC_CheckChild1Type, MVT::v4i32,
33805 OPC_RecordChild2,
33806 OPC_CheckChild2Type, MVT::v4i1,
33807 OPC_RecordChild3,
33808 OPC_CheckChild3Type, MVT::v4i32,
33809 OPC_CheckPatternPredicate0,
33810 OPC_EmitInteger32, 2,
33811 OPC_EmitRegisterI32, 0 ,
33812 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQNEGs32),
33813 MVT::v4i32, 5, 0, 3, 1, 4, 2,
33814 0,
33815 81,
33816 OPC_CheckChild0Integer, 102|128,51,
33817 OPC_RecordChild1,
33818 OPC_SwitchType , 23, MVT::v16i8,
33819 OPC_CheckChild1Type, MVT::v16i8,
33820 OPC_RecordChild2,
33821 OPC_CheckChild2Type, MVT::v16i8,
33822 OPC_RecordChild3,
33823 OPC_CheckChild3Type, MVT::v16i1,
33824 OPC_CheckPatternPredicate0,
33825 OPC_EmitInteger32, 2,
33826 OPC_EmitRegisterI32, 0 ,
33827 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAs8),
33828 MVT::v16i8, 5, 0, 1, 3, 2, 4,
33829 23, MVT::v8i16,
33830 OPC_CheckChild1Type, MVT::v8i16,
33831 OPC_RecordChild2,
33832 OPC_CheckChild2Type, MVT::v8i16,
33833 OPC_RecordChild3,
33834 OPC_CheckChild3Type, MVT::v8i1,
33835 OPC_CheckPatternPredicate0,
33836 OPC_EmitInteger32, 2,
33837 OPC_EmitRegisterI32, 0 ,
33838 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAs16),
33839 MVT::v8i16, 5, 0, 1, 3, 2, 4,
33840 23, MVT::v4i32,
33841 OPC_CheckChild1Type, MVT::v4i32,
33842 OPC_RecordChild2,
33843 OPC_CheckChild2Type, MVT::v4i32,
33844 OPC_RecordChild3,
33845 OPC_CheckChild3Type, MVT::v4i1,
33846 OPC_CheckPatternPredicate0,
33847 OPC_EmitInteger32, 2,
33848 OPC_EmitRegisterI32, 0 ,
33849 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAs32),
33850 MVT::v4i32, 5, 0, 1, 3, 2, 4,
33851 0,
33852 81,
33853 OPC_CheckChild0Integer, 98|128,51,
33854 OPC_RecordChild1,
33855 OPC_SwitchType , 23, MVT::v16i8,
33856 OPC_CheckChild1Type, MVT::v16i8,
33857 OPC_RecordChild2,
33858 OPC_CheckChild2Type, MVT::v16i8,
33859 OPC_RecordChild3,
33860 OPC_CheckChild3Type, MVT::v16i1,
33861 OPC_CheckPatternPredicate0,
33862 OPC_EmitInteger32, 2,
33863 OPC_EmitRegisterI32, 0 ,
33864 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAs8),
33865 MVT::v16i8, 5, 0, 1, 3, 2, 4,
33866 23, MVT::v8i16,
33867 OPC_CheckChild1Type, MVT::v8i16,
33868 OPC_RecordChild2,
33869 OPC_CheckChild2Type, MVT::v8i16,
33870 OPC_RecordChild3,
33871 OPC_CheckChild3Type, MVT::v8i1,
33872 OPC_CheckPatternPredicate0,
33873 OPC_EmitInteger32, 2,
33874 OPC_EmitRegisterI32, 0 ,
33875 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAs16),
33876 MVT::v8i16, 5, 0, 1, 3, 2, 4,
33877 23, MVT::v4i32,
33878 OPC_CheckChild1Type, MVT::v4i32,
33879 OPC_RecordChild2,
33880 OPC_CheckChild2Type, MVT::v4i32,
33881 OPC_RecordChild3,
33882 OPC_CheckChild3Type, MVT::v4i1,
33883 OPC_CheckPatternPredicate0,
33884 OPC_EmitInteger32, 2,
33885 OPC_EmitRegisterI32, 0 ,
33886 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAs32),
33887 MVT::v4i32, 5, 0, 1, 3, 2, 4,
33888 0,
33889 18|128,1,
33890 OPC_CheckChild0Integer, 6|128,51,
33891 OPC_RecordChild1,
33892 OPC_SwitchType , 26, MVT::v16i8,
33893 OPC_CheckChild1Type, MVT::v16i8,
33894 OPC_RecordChild2,
33895 OPC_CheckPatternPredicate0,
33896 OPC_EmitInteger32, 0,
33897 OPC_EmitRegisterI32, 0 ,
33898 OPC_EmitRegisterI32, 0 ,
33899 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
33900 MVT::v4i32, 0,
33901 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR8),
33902 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
33903 26, MVT::v8i16,
33904 OPC_CheckChild1Type, MVT::v8i16,
33905 OPC_RecordChild2,
33906 OPC_CheckPatternPredicate0,
33907 OPC_EmitInteger32, 0,
33908 OPC_EmitRegisterI32, 0 ,
33909 OPC_EmitRegisterI32, 0 ,
33910 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
33911 MVT::v4i32, 0,
33912 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR16),
33913 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
33914 26, MVT::v4i32,
33915 OPC_CheckChild1Type, MVT::v4i32,
33916 OPC_RecordChild2,
33917 OPC_CheckPatternPredicate0,
33918 OPC_EmitInteger32, 0,
33919 OPC_EmitRegisterI32, 0 ,
33920 OPC_EmitRegisterI32, 0 ,
33921 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
33922 MVT::v4i32, 0,
33923 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR32),
33924 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
33925 26, MVT::v8f16,
33926 OPC_CheckChild1Type, MVT::v8f16,
33927 OPC_RecordChild2,
33928 OPC_CheckPatternPredicate2,
33929 OPC_EmitInteger32, 0,
33930 OPC_EmitRegisterI32, 0 ,
33931 OPC_EmitRegisterI32, 0 ,
33932 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
33933 MVT::v4i32, 0,
33934 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR16),
33935 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
33936 26, MVT::v4f32,
33937 OPC_CheckChild1Type, MVT::v4f32,
33938 OPC_RecordChild2,
33939 OPC_CheckPatternPredicate2,
33940 OPC_EmitInteger32, 0,
33941 OPC_EmitRegisterI32, 0 ,
33942 OPC_EmitRegisterI32, 0 ,
33943 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
33944 MVT::v4i32, 0,
33945 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR32),
33946 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
33947 0,
33948 13|128,1,
33949 OPC_CheckChild0Integer, 8|128,51,
33950 OPC_RecordChild1,
33951 OPC_SwitchType , 25, MVT::v16i8,
33952 OPC_CheckChild1Type, MVT::v16i8,
33953 OPC_RecordChild2,
33954 OPC_CheckChild2Type, MVT::v16i8,
33955 OPC_RecordChild3,
33956 OPC_RecordChild4,
33957 OPC_CheckChild4Type, MVT::v16i1,
33958 OPC_CheckPatternPredicate0,
33959 OPC_EmitInteger32, 2,
33960 OPC_EmitRegisterI32, 0 ,
33961 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR8),
33962 MVT::v16i8, 6, 1, 2, 4, 3, 5, 0,
33963 25, MVT::v8i16,
33964 OPC_CheckChild1Type, MVT::v8i16,
33965 OPC_RecordChild2,
33966 OPC_CheckChild2Type, MVT::v8i16,
33967 OPC_RecordChild3,
33968 OPC_RecordChild4,
33969 OPC_CheckChild4Type, MVT::v8i1,
33970 OPC_CheckPatternPredicate0,
33971 OPC_EmitInteger32, 2,
33972 OPC_EmitRegisterI32, 0 ,
33973 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR16),
33974 MVT::v8i16, 6, 1, 2, 4, 3, 5, 0,
33975 25, MVT::v4i32,
33976 OPC_CheckChild1Type, MVT::v4i32,
33977 OPC_RecordChild2,
33978 OPC_CheckChild2Type, MVT::v4i32,
33979 OPC_RecordChild3,
33980 OPC_RecordChild4,
33981 OPC_CheckChild4Type, MVT::v4i1,
33982 OPC_CheckPatternPredicate0,
33983 OPC_EmitInteger32, 2,
33984 OPC_EmitRegisterI32, 0 ,
33985 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR32),
33986 MVT::v4i32, 6, 1, 2, 4, 3, 5, 0,
33987 25, MVT::v8f16,
33988 OPC_CheckChild1Type, MVT::v8f16,
33989 OPC_RecordChild2,
33990 OPC_CheckChild2Type, MVT::v8f16,
33991 OPC_RecordChild3,
33992 OPC_RecordChild4,
33993 OPC_CheckChild4Type, MVT::v8i1,
33994 OPC_CheckPatternPredicate2,
33995 OPC_EmitInteger32, 2,
33996 OPC_EmitRegisterI32, 0 ,
33997 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR16),
33998 MVT::v8f16, 6, 1, 2, 4, 3, 5, 0,
33999 25, MVT::v4f32,
34000 OPC_CheckChild1Type, MVT::v4f32,
34001 OPC_RecordChild2,
34002 OPC_CheckChild2Type, MVT::v4f32,
34003 OPC_RecordChild3,
34004 OPC_RecordChild4,
34005 OPC_CheckChild4Type, MVT::v4i1,
34006 OPC_CheckPatternPredicate2,
34007 OPC_EmitInteger32, 2,
34008 OPC_EmitRegisterI32, 0 ,
34009 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR32),
34010 MVT::v4f32, 6, 1, 2, 4, 3, 5, 0,
34011 0,
34012 87,
34013 OPC_CheckChild0Integer, 106|128,51,
34014 OPC_RecordChild1,
34015 OPC_SwitchType , 25, MVT::v16i8,
34016 OPC_CheckChild1Type, MVT::v16i8,
34017 OPC_RecordChild2,
34018 OPC_CheckChild2Type, MVT::v16i8,
34019 OPC_RecordChild3,
34020 OPC_RecordChild4,
34021 OPC_CheckChild4Type, MVT::v16i1,
34022 OPC_CheckPatternPredicate0,
34023 OPC_EmitInteger32, 2,
34024 OPC_EmitRegisterI32, 0 ,
34025 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i8),
34026 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
34027 25, MVT::v8i16,
34028 OPC_CheckChild1Type, MVT::v8i16,
34029 OPC_RecordChild2,
34030 OPC_CheckChild2Type, MVT::v8i16,
34031 OPC_RecordChild3,
34032 OPC_RecordChild4,
34033 OPC_CheckChild4Type, MVT::v8i1,
34034 OPC_CheckPatternPredicate0,
34035 OPC_EmitInteger32, 2,
34036 OPC_EmitRegisterI32, 0 ,
34037 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i16),
34038 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
34039 25, MVT::v4i32,
34040 OPC_CheckChild1Type, MVT::v4i32,
34041 OPC_RecordChild2,
34042 OPC_CheckChild2Type, MVT::v4i32,
34043 OPC_RecordChild3,
34044 OPC_RecordChild4,
34045 OPC_CheckChild4Type, MVT::v4i1,
34046 OPC_CheckPatternPredicate0,
34047 OPC_EmitInteger32, 2,
34048 OPC_EmitRegisterI32, 0 ,
34049 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLA_qr_i32),
34050 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
34051 0,
34052 87,
34053 OPC_CheckChild0Integer, 108|128,51,
34054 OPC_RecordChild1,
34055 OPC_SwitchType , 25, MVT::v16i8,
34056 OPC_CheckChild1Type, MVT::v16i8,
34057 OPC_RecordChild2,
34058 OPC_CheckChild2Type, MVT::v16i8,
34059 OPC_RecordChild3,
34060 OPC_RecordChild4,
34061 OPC_CheckChild4Type, MVT::v16i1,
34062 OPC_CheckPatternPredicate0,
34063 OPC_EmitInteger32, 2,
34064 OPC_EmitRegisterI32, 0 ,
34065 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLAS_qr_i8),
34066 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
34067 25, MVT::v8i16,
34068 OPC_CheckChild1Type, MVT::v8i16,
34069 OPC_RecordChild2,
34070 OPC_CheckChild2Type, MVT::v8i16,
34071 OPC_RecordChild3,
34072 OPC_RecordChild4,
34073 OPC_CheckChild4Type, MVT::v8i1,
34074 OPC_CheckPatternPredicate0,
34075 OPC_EmitInteger32, 2,
34076 OPC_EmitRegisterI32, 0 ,
34077 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLAS_qr_i16),
34078 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
34079 25, MVT::v4i32,
34080 OPC_CheckChild1Type, MVT::v4i32,
34081 OPC_RecordChild2,
34082 OPC_CheckChild2Type, MVT::v4i32,
34083 OPC_RecordChild3,
34084 OPC_RecordChild4,
34085 OPC_CheckChild4Type, MVT::v4i1,
34086 OPC_CheckPatternPredicate0,
34087 OPC_EmitInteger32, 2,
34088 OPC_EmitRegisterI32, 0 ,
34089 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLAS_qr_i32),
34090 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
34091 0,
34092 84,
34093 OPC_CheckChild0Integer, 4|128,52,
34094 OPC_RecordChild1,
34095 OPC_SwitchType , 24, MVT::v16i8,
34096 OPC_CheckChild1Type, MVT::v16i8,
34097 OPC_RecordChild2,
34098 OPC_CheckChild2Type, MVT::v16i8,
34099 OPC_RecordChild3,
34100 OPC_CheckPatternPredicate0,
34101 OPC_EmitInteger32, 0,
34102 OPC_EmitRegisterI32, 0 ,
34103 OPC_EmitRegisterI32, 0 ,
34104 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLAH_qrs8),
34105 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
34106 24, MVT::v8i16,
34107 OPC_CheckChild1Type, MVT::v8i16,
34108 OPC_RecordChild2,
34109 OPC_CheckChild2Type, MVT::v8i16,
34110 OPC_RecordChild3,
34111 OPC_CheckPatternPredicate0,
34112 OPC_EmitInteger32, 0,
34113 OPC_EmitRegisterI32, 0 ,
34114 OPC_EmitRegisterI32, 0 ,
34115 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLAH_qrs16),
34116 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
34117 24, MVT::v4i32,
34118 OPC_CheckChild1Type, MVT::v4i32,
34119 OPC_RecordChild2,
34120 OPC_CheckChild2Type, MVT::v4i32,
34121 OPC_RecordChild3,
34122 OPC_CheckPatternPredicate0,
34123 OPC_EmitInteger32, 0,
34124 OPC_EmitRegisterI32, 0 ,
34125 OPC_EmitRegisterI32, 0 ,
34126 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLAH_qrs32),
34127 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
34128 0,
34129 87,
34130 OPC_CheckChild0Integer, 6|128,52,
34131 OPC_RecordChild1,
34132 OPC_SwitchType , 25, MVT::v16i8,
34133 OPC_CheckChild1Type, MVT::v16i8,
34134 OPC_RecordChild2,
34135 OPC_CheckChild2Type, MVT::v16i8,
34136 OPC_RecordChild3,
34137 OPC_RecordChild4,
34138 OPC_CheckChild4Type, MVT::v16i1,
34139 OPC_CheckPatternPredicate0,
34140 OPC_EmitInteger32, 2,
34141 OPC_EmitRegisterI32, 0 ,
34142 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLAH_qrs8),
34143 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
34144 25, MVT::v8i16,
34145 OPC_CheckChild1Type, MVT::v8i16,
34146 OPC_RecordChild2,
34147 OPC_CheckChild2Type, MVT::v8i16,
34148 OPC_RecordChild3,
34149 OPC_RecordChild4,
34150 OPC_CheckChild4Type, MVT::v8i1,
34151 OPC_CheckPatternPredicate0,
34152 OPC_EmitInteger32, 2,
34153 OPC_EmitRegisterI32, 0 ,
34154 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLAH_qrs16),
34155 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
34156 25, MVT::v4i32,
34157 OPC_CheckChild1Type, MVT::v4i32,
34158 OPC_RecordChild2,
34159 OPC_CheckChild2Type, MVT::v4i32,
34160 OPC_RecordChild3,
34161 OPC_RecordChild4,
34162 OPC_CheckChild4Type, MVT::v4i1,
34163 OPC_CheckPatternPredicate0,
34164 OPC_EmitInteger32, 2,
34165 OPC_EmitRegisterI32, 0 ,
34166 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLAH_qrs32),
34167 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
34168 0,
34169 84,
34170 OPC_CheckChild0Integer, 22|128,52,
34171 OPC_RecordChild1,
34172 OPC_SwitchType , 24, MVT::v16i8,
34173 OPC_CheckChild1Type, MVT::v16i8,
34174 OPC_RecordChild2,
34175 OPC_CheckChild2Type, MVT::v16i8,
34176 OPC_RecordChild3,
34177 OPC_CheckPatternPredicate0,
34178 OPC_EmitInteger32, 0,
34179 OPC_EmitRegisterI32, 0 ,
34180 OPC_EmitRegisterI32, 0 ,
34181 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLAH_qrs8),
34182 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
34183 24, MVT::v8i16,
34184 OPC_CheckChild1Type, MVT::v8i16,
34185 OPC_RecordChild2,
34186 OPC_CheckChild2Type, MVT::v8i16,
34187 OPC_RecordChild3,
34188 OPC_CheckPatternPredicate0,
34189 OPC_EmitInteger32, 0,
34190 OPC_EmitRegisterI32, 0 ,
34191 OPC_EmitRegisterI32, 0 ,
34192 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLAH_qrs16),
34193 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
34194 24, MVT::v4i32,
34195 OPC_CheckChild1Type, MVT::v4i32,
34196 OPC_RecordChild2,
34197 OPC_CheckChild2Type, MVT::v4i32,
34198 OPC_RecordChild3,
34199 OPC_CheckPatternPredicate0,
34200 OPC_EmitInteger32, 0,
34201 OPC_EmitRegisterI32, 0 ,
34202 OPC_EmitRegisterI32, 0 ,
34203 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLAH_qrs32),
34204 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
34205 0,
34206 87,
34207 OPC_CheckChild0Integer, 24|128,52,
34208 OPC_RecordChild1,
34209 OPC_SwitchType , 25, MVT::v16i8,
34210 OPC_CheckChild1Type, MVT::v16i8,
34211 OPC_RecordChild2,
34212 OPC_CheckChild2Type, MVT::v16i8,
34213 OPC_RecordChild3,
34214 OPC_RecordChild4,
34215 OPC_CheckChild4Type, MVT::v16i1,
34216 OPC_CheckPatternPredicate0,
34217 OPC_EmitInteger32, 2,
34218 OPC_EmitRegisterI32, 0 ,
34219 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLAH_qrs8),
34220 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
34221 25, MVT::v8i16,
34222 OPC_CheckChild1Type, MVT::v8i16,
34223 OPC_RecordChild2,
34224 OPC_CheckChild2Type, MVT::v8i16,
34225 OPC_RecordChild3,
34226 OPC_RecordChild4,
34227 OPC_CheckChild4Type, MVT::v8i1,
34228 OPC_CheckPatternPredicate0,
34229 OPC_EmitInteger32, 2,
34230 OPC_EmitRegisterI32, 0 ,
34231 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLAH_qrs16),
34232 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
34233 25, MVT::v4i32,
34234 OPC_CheckChild1Type, MVT::v4i32,
34235 OPC_RecordChild2,
34236 OPC_CheckChild2Type, MVT::v4i32,
34237 OPC_RecordChild3,
34238 OPC_RecordChild4,
34239 OPC_CheckChild4Type, MVT::v4i1,
34240 OPC_CheckPatternPredicate0,
34241 OPC_EmitInteger32, 2,
34242 OPC_EmitRegisterI32, 0 ,
34243 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLAH_qrs32),
34244 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
34245 0,
34246 84,
34247 OPC_CheckChild0Integer, 8|128,52,
34248 OPC_RecordChild1,
34249 OPC_SwitchType , 24, MVT::v16i8,
34250 OPC_CheckChild1Type, MVT::v16i8,
34251 OPC_RecordChild2,
34252 OPC_CheckChild2Type, MVT::v16i8,
34253 OPC_RecordChild3,
34254 OPC_CheckPatternPredicate0,
34255 OPC_EmitInteger32, 0,
34256 OPC_EmitRegisterI32, 0 ,
34257 OPC_EmitRegisterI32, 0 ,
34258 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLASH_qrs8),
34259 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
34260 24, MVT::v8i16,
34261 OPC_CheckChild1Type, MVT::v8i16,
34262 OPC_RecordChild2,
34263 OPC_CheckChild2Type, MVT::v8i16,
34264 OPC_RecordChild3,
34265 OPC_CheckPatternPredicate0,
34266 OPC_EmitInteger32, 0,
34267 OPC_EmitRegisterI32, 0 ,
34268 OPC_EmitRegisterI32, 0 ,
34269 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLASH_qrs16),
34270 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
34271 24, MVT::v4i32,
34272 OPC_CheckChild1Type, MVT::v4i32,
34273 OPC_RecordChild2,
34274 OPC_CheckChild2Type, MVT::v4i32,
34275 OPC_RecordChild3,
34276 OPC_CheckPatternPredicate0,
34277 OPC_EmitInteger32, 0,
34278 OPC_EmitRegisterI32, 0 ,
34279 OPC_EmitRegisterI32, 0 ,
34280 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLASH_qrs32),
34281 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
34282 0,
34283 87,
34284 OPC_CheckChild0Integer, 10|128,52,
34285 OPC_RecordChild1,
34286 OPC_SwitchType , 25, MVT::v16i8,
34287 OPC_CheckChild1Type, MVT::v16i8,
34288 OPC_RecordChild2,
34289 OPC_CheckChild2Type, MVT::v16i8,
34290 OPC_RecordChild3,
34291 OPC_RecordChild4,
34292 OPC_CheckChild4Type, MVT::v16i1,
34293 OPC_CheckPatternPredicate0,
34294 OPC_EmitInteger32, 2,
34295 OPC_EmitRegisterI32, 0 ,
34296 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLASH_qrs8),
34297 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
34298 25, MVT::v8i16,
34299 OPC_CheckChild1Type, MVT::v8i16,
34300 OPC_RecordChild2,
34301 OPC_CheckChild2Type, MVT::v8i16,
34302 OPC_RecordChild3,
34303 OPC_RecordChild4,
34304 OPC_CheckChild4Type, MVT::v8i1,
34305 OPC_CheckPatternPredicate0,
34306 OPC_EmitInteger32, 2,
34307 OPC_EmitRegisterI32, 0 ,
34308 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLASH_qrs16),
34309 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
34310 25, MVT::v4i32,
34311 OPC_CheckChild1Type, MVT::v4i32,
34312 OPC_RecordChild2,
34313 OPC_CheckChild2Type, MVT::v4i32,
34314 OPC_RecordChild3,
34315 OPC_RecordChild4,
34316 OPC_CheckChild4Type, MVT::v4i1,
34317 OPC_CheckPatternPredicate0,
34318 OPC_EmitInteger32, 2,
34319 OPC_EmitRegisterI32, 0 ,
34320 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMLASH_qrs32),
34321 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
34322 0,
34323 84,
34324 OPC_CheckChild0Integer, 26|128,52,
34325 OPC_RecordChild1,
34326 OPC_SwitchType , 24, MVT::v16i8,
34327 OPC_CheckChild1Type, MVT::v16i8,
34328 OPC_RecordChild2,
34329 OPC_CheckChild2Type, MVT::v16i8,
34330 OPC_RecordChild3,
34331 OPC_CheckPatternPredicate0,
34332 OPC_EmitInteger32, 0,
34333 OPC_EmitRegisterI32, 0 ,
34334 OPC_EmitRegisterI32, 0 ,
34335 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLASH_qrs8),
34336 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
34337 24, MVT::v8i16,
34338 OPC_CheckChild1Type, MVT::v8i16,
34339 OPC_RecordChild2,
34340 OPC_CheckChild2Type, MVT::v8i16,
34341 OPC_RecordChild3,
34342 OPC_CheckPatternPredicate0,
34343 OPC_EmitInteger32, 0,
34344 OPC_EmitRegisterI32, 0 ,
34345 OPC_EmitRegisterI32, 0 ,
34346 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLASH_qrs16),
34347 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
34348 24, MVT::v4i32,
34349 OPC_CheckChild1Type, MVT::v4i32,
34350 OPC_RecordChild2,
34351 OPC_CheckChild2Type, MVT::v4i32,
34352 OPC_RecordChild3,
34353 OPC_CheckPatternPredicate0,
34354 OPC_EmitInteger32, 0,
34355 OPC_EmitRegisterI32, 0 ,
34356 OPC_EmitRegisterI32, 0 ,
34357 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLASH_qrs32),
34358 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
34359 0,
34360 87,
34361 OPC_CheckChild0Integer, 28|128,52,
34362 OPC_RecordChild1,
34363 OPC_SwitchType , 25, MVT::v16i8,
34364 OPC_CheckChild1Type, MVT::v16i8,
34365 OPC_RecordChild2,
34366 OPC_CheckChild2Type, MVT::v16i8,
34367 OPC_RecordChild3,
34368 OPC_RecordChild4,
34369 OPC_CheckChild4Type, MVT::v16i1,
34370 OPC_CheckPatternPredicate0,
34371 OPC_EmitInteger32, 2,
34372 OPC_EmitRegisterI32, 0 ,
34373 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLASH_qrs8),
34374 MVT::v16i8, 6, 0, 1, 2, 4, 3, 5,
34375 25, MVT::v8i16,
34376 OPC_CheckChild1Type, MVT::v8i16,
34377 OPC_RecordChild2,
34378 OPC_CheckChild2Type, MVT::v8i16,
34379 OPC_RecordChild3,
34380 OPC_RecordChild4,
34381 OPC_CheckChild4Type, MVT::v8i1,
34382 OPC_CheckPatternPredicate0,
34383 OPC_EmitInteger32, 2,
34384 OPC_EmitRegisterI32, 0 ,
34385 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLASH_qrs16),
34386 MVT::v8i16, 6, 0, 1, 2, 4, 3, 5,
34387 25, MVT::v4i32,
34388 OPC_CheckChild1Type, MVT::v4i32,
34389 OPC_RecordChild2,
34390 OPC_CheckChild2Type, MVT::v4i32,
34391 OPC_RecordChild3,
34392 OPC_RecordChild4,
34393 OPC_CheckChild4Type, MVT::v4i1,
34394 OPC_CheckPatternPredicate0,
34395 OPC_EmitInteger32, 2,
34396 OPC_EmitRegisterI32, 0 ,
34397 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQRDMLASH_qrs32),
34398 MVT::v4i32, 6, 0, 1, 2, 4, 3, 5,
34399 0,
34400 20,
34401 OPC_CheckChild0Integer, 30|128,51,
34402 OPC_RecordChild1,
34403 OPC_CheckPatternPredicate0,
34404 OPC_EmitInteger32, 0,
34405 OPC_EmitRegisterI32, 0 ,
34406 OPC_EmitRegisterI32, 0 ,
34407 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP8),
34408 MVT::v16i1, 4, 0, 1, 2, 3,
34409 20,
34410 OPC_CheckChild0Integer, 24|128,51,
34411 OPC_RecordChild1,
34412 OPC_CheckPatternPredicate0,
34413 OPC_EmitInteger32, 0,
34414 OPC_EmitRegisterI32, 0 ,
34415 OPC_EmitRegisterI32, 0 ,
34416 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP16),
34417 MVT::v8i1, 4, 0, 1, 2, 3,
34418 20,
34419 OPC_CheckChild0Integer, 26|128,51,
34420 OPC_RecordChild1,
34421 OPC_CheckPatternPredicate0,
34422 OPC_EmitInteger32, 0,
34423 OPC_EmitRegisterI32, 0 ,
34424 OPC_EmitRegisterI32, 0 ,
34425 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP32),
34426 MVT::v4i1, 4, 0, 1, 2, 3,
34427 20,
34428 OPC_CheckChild0Integer, 28|128,51,
34429 OPC_RecordChild1,
34430 OPC_CheckPatternPredicate0,
34431 OPC_EmitInteger32, 0,
34432 OPC_EmitRegisterI32, 0 ,
34433 OPC_EmitRegisterI32, 0 ,
34434 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCTP64),
34435 MVT::v2i1, 4, 0, 1, 2, 3,
34436 38,
34437 OPC_CheckChild0Integer, 16|128,55,
34438 OPC_RecordChild1,
34439 OPC_RecordChild2,
34440 OPC_RecordChild3,
34441 OPC_RecordChild4,
34442 OPC_CheckPatternPredicate1,
34443 OPC_EmitStringInteger32, ARM::DPairRegClassID,
34444 OPC_EmitStringInteger32, ARM::dsub_0,
34445 OPC_EmitStringInteger32, ARM::dsub_1,
34446 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
34447 MVT::v16i8, 5, 4, 1, 5, 2, 6,
34448 OPC_EmitInteger32, 28,
34449 OPC_EmitRegisterI32, 0 ,
34450 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTBX2),
34451 MVT::v8i8, 5, 0, 7, 3, 8, 9,
34452 46,
34453 OPC_CheckChild0Integer, 12|128,55,
34454 OPC_RecordChild1,
34455 OPC_RecordChild2,
34456 OPC_RecordChild3,
34457 OPC_RecordChild4,
34458 OPC_RecordChild5,
34459 OPC_CheckPatternPredicate1,
34460 OPC_EmitStringInteger32, ARM::QQPRRegClassID,
34461 OPC_EmitStringInteger32, ARM::dsub_0,
34462 OPC_EmitStringInteger32, ARM::dsub_1,
34463 OPC_EmitStringInteger32, ARM::dsub_2,
34464 OPC_EmitStringInteger32, ARM::dsub_3,
34465 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
34466 MVT::v4i64, 9, 5, 0, 6, 1, 7, 2, 8, 3, 9,
34467 OPC_EmitInteger32, 28,
34468 OPC_EmitRegisterI32, 0 ,
34469 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTBL4Pseudo),
34470 MVT::v8i8, 4, 10, 4, 11, 12,
34471 48,
34472 OPC_CheckChild0Integer, 20|128,55,
34473 OPC_RecordChild1,
34474 OPC_RecordChild2,
34475 OPC_RecordChild3,
34476 OPC_RecordChild4,
34477 OPC_RecordChild5,
34478 OPC_RecordChild6,
34479 OPC_CheckPatternPredicate1,
34480 OPC_EmitStringInteger32, ARM::QQPRRegClassID,
34481 OPC_EmitStringInteger32, ARM::dsub_0,
34482 OPC_EmitStringInteger32, ARM::dsub_1,
34483 OPC_EmitStringInteger32, ARM::dsub_2,
34484 OPC_EmitStringInteger32, ARM::dsub_3,
34485 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
34486 MVT::v4i64, 9, 6, 1, 7, 2, 8, 3, 9, 4, 10,
34487 OPC_EmitInteger32, 28,
34488 OPC_EmitRegisterI32, 0 ,
34489 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTBX4Pseudo),
34490 MVT::v8i8, 5, 0, 11, 5, 12, 13,
34491 50,
34492 OPC_CheckChild0Integer, 10|128,55,
34493 OPC_RecordChild1,
34494 OPC_RecordChild2,
34495 OPC_RecordChild3,
34496 OPC_RecordChild4,
34497 OPC_CheckPatternPredicate1,
34498 OPC_EmitStringInteger32, ARM::QQPRRegClassID,
34499 OPC_EmitStringInteger32, ARM::dsub_0,
34500 OPC_EmitStringInteger32, ARM::dsub_1,
34501 OPC_EmitStringInteger32, ARM::dsub_2,
34502 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
34503 MVT::v8i8, 0,
34504 OPC_EmitStringInteger32, ARM::dsub_3,
34505 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
34506 MVT::v4i64, 9, 4, 0, 5, 1, 6, 2, 7, 8, 9,
34507 OPC_EmitInteger32, 28,
34508 OPC_EmitRegisterI32, 0 ,
34509 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTBL3Pseudo),
34510 MVT::v8i8, 4, 10, 3, 11, 12,
34511 52,
34512 OPC_CheckChild0Integer, 18|128,55,
34513 OPC_RecordChild1,
34514 OPC_RecordChild2,
34515 OPC_RecordChild3,
34516 OPC_RecordChild4,
34517 OPC_RecordChild5,
34518 OPC_CheckPatternPredicate1,
34519 OPC_EmitStringInteger32, ARM::QQPRRegClassID,
34520 OPC_EmitStringInteger32, ARM::dsub_0,
34521 OPC_EmitStringInteger32, ARM::dsub_1,
34522 OPC_EmitStringInteger32, ARM::dsub_2,
34523 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
34524 MVT::v8i8, 0,
34525 OPC_EmitStringInteger32, ARM::dsub_3,
34526 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
34527 MVT::v4i64, 9, 5, 1, 6, 2, 7, 3, 8, 9, 10,
34528 OPC_EmitInteger32, 28,
34529 OPC_EmitRegisterI32, 0 ,
34530 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTBX3Pseudo),
34531 MVT::v8i8, 5, 0, 11, 4, 12, 13,
34532 36,
34533 OPC_CheckChild0Integer, 8|128,53,
34534 OPC_RecordChild1,
34535 OPC_RecordChild2,
34536 OPC_RecordChild3,
34537 OPC_CheckPatternPredicate1,
34538 OPC_EmitInteger64, 0,
34539 OPC_EmitStringInteger32, ARM::SPRRegClassID,
34540 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
34541 MVT::f32, 2, 1, 4,
34542 OPC_EmitStringInteger32, ARM::ssub_0,
34543 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
34544 MVT::v16i8, 3, 3, 5, 6,
34545 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHA1C),
34546 MVT::v4i32, 3, 0, 7, 2,
34547 36,
34548 OPC_CheckChild0Integer, 12|128,53,
34549 OPC_RecordChild1,
34550 OPC_RecordChild2,
34551 OPC_RecordChild3,
34552 OPC_CheckPatternPredicate1,
34553 OPC_EmitInteger64, 0,
34554 OPC_EmitStringInteger32, ARM::SPRRegClassID,
34555 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
34556 MVT::f32, 2, 1, 4,
34557 OPC_EmitStringInteger32, ARM::ssub_0,
34558 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
34559 MVT::v16i8, 3, 3, 5, 6,
34560 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHA1M),
34561 MVT::v4i32, 3, 0, 7, 2,
34562 36,
34563 OPC_CheckChild0Integer, 14|128,53,
34564 OPC_RecordChild1,
34565 OPC_RecordChild2,
34566 OPC_RecordChild3,
34567 OPC_CheckPatternPredicate1,
34568 OPC_EmitInteger64, 0,
34569 OPC_EmitStringInteger32, ARM::SPRRegClassID,
34570 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
34571 MVT::f32, 2, 1, 4,
34572 OPC_EmitStringInteger32, ARM::ssub_0,
34573 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::SUBREG_TO_REG),
34574 MVT::v16i8, 3, 3, 5, 6,
34575 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SHA1P),
34576 MVT::v4i32, 3, 0, 7, 2,
34577 15|128,1,
34578 OPC_CheckChild0Integer, 126|128,52,
34579 OPC_RecordChild1,
34580 OPC_Scope, 63,
34581 OPC_CheckChild1Type, MVT::v2f32,
34582 OPC_RecordChild2,
34583 OPC_CheckChild2Type, MVT::v4bf16,
34584 OPC_Scope, 39,
34585 OPC_MoveChild3,
34586 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
34587 OPC_MoveChild0,
34588 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
34589 OPC_RecordChild0,
34590 OPC_CheckChild0Type, MVT::v2f32,
34591 OPC_RecordChild1,
34592 OPC_MoveChild1,
34593 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34594 OPC_CheckPredicate, 34,
34595 OPC_MoveParent,
34596 OPC_CheckType, MVT::v2f32,
34597 OPC_MoveParent,
34598 OPC_CheckType, MVT::v4bf16,
34599 OPC_MoveParent,
34600 OPC_CheckType, MVT::v2f32,
34601 OPC_CheckPatternPredicate, 27,
34602 OPC_EmitConvertToTarget3,
34603 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BF16VDOTI_VDOTD),
34604 MVT::v2f32, 4, 0, 1, 2, 4,
34605 15,
34606 OPC_RecordChild3,
34607 OPC_CheckChild3Type, MVT::v4bf16,
34608 OPC_CheckType, MVT::v2f32,
34609 OPC_CheckPatternPredicate, 27,
34610 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BF16VDOTS_VDOTD),
34611 MVT::v2f32, 3, 0, 1, 2,
34612 0,
34613 72,
34614 OPC_CheckChild1Type, MVT::v4f32,
34615 OPC_RecordChild2,
34616 OPC_CheckChild2Type, MVT::v8bf16,
34617 OPC_Scope, 48,
34618 OPC_MoveChild3,
34619 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
34620 OPC_MoveChild0,
34621 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
34622 OPC_RecordChild0,
34623 OPC_CheckChild0Type, MVT::v4f32,
34624 OPC_RecordChild1,
34625 OPC_MoveChild1,
34626 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34627 OPC_CheckPredicate, 34,
34628 OPC_MoveParent,
34629 OPC_CheckType, MVT::v4f32,
34630 OPC_MoveParent,
34631 OPC_CheckType, MVT::v8bf16,
34632 OPC_MoveParent,
34633 OPC_CheckType, MVT::v4f32,
34634 OPC_CheckPatternPredicate, 27,
34635 OPC_EmitStringInteger32, ARM::dsub_0,
34636 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
34637 MVT::f64, 2, 2, 4,
34638 OPC_EmitConvertToTarget3,
34639 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BF16VDOTI_VDOTQ),
34640 MVT::v4f32, 4, 0, 1, 5, 6,
34641 15,
34642 OPC_RecordChild3,
34643 OPC_CheckChild3Type, MVT::v8bf16,
34644 OPC_CheckType, MVT::v4f32,
34645 OPC_CheckPatternPredicate, 27,
34646 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BF16VDOTS_VDOTQ),
34647 MVT::v4f32, 3, 0, 1, 2,
34648 0,
34649 0,
34650 62,
34651 OPC_CheckChild0Integer, 2|128,53,
34652 OPC_RecordChild1,
34653 OPC_RecordChild2,
34654 OPC_Scope, 42,
34655 OPC_MoveChild3,
34656 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
34657 OPC_RecordChild0,
34658 OPC_CheckChild0Type, MVT::v8bf16,
34659 OPC_RecordChild1,
34660 OPC_MoveChild1,
34661 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34662 OPC_CheckPredicate, 89,
34663 OPC_MoveParent,
34664 OPC_MoveParent,
34665 OPC_CheckPatternPredicate, 27,
34666 OPC_EmitConvertToTarget3,
34667 OPC_EmitNodeXForm, 5, 4,
34668 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
34669 MVT::f64, 2, 2, 5,
34670 OPC_EmitConvertToTarget3,
34671 OPC_EmitNodeXForm, 6, 7,
34672 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBF16MALTQI),
34673 MVT::v4f32, 4, 0, 1, 6, 8,
34674 11,
34675 OPC_RecordChild3,
34676 OPC_CheckPatternPredicate, 27,
34677 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBF16MALTQ),
34678 MVT::v4f32, 3, 0, 1, 2,
34679 0,
34680 62,
34681 OPC_CheckChild0Integer, 0|128,53,
34682 OPC_RecordChild1,
34683 OPC_RecordChild2,
34684 OPC_Scope, 42,
34685 OPC_MoveChild3,
34686 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
34687 OPC_RecordChild0,
34688 OPC_CheckChild0Type, MVT::v8bf16,
34689 OPC_RecordChild1,
34690 OPC_MoveChild1,
34691 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34692 OPC_CheckPredicate, 89,
34693 OPC_MoveParent,
34694 OPC_MoveParent,
34695 OPC_CheckPatternPredicate, 27,
34696 OPC_EmitConvertToTarget3,
34697 OPC_EmitNodeXForm, 5, 4,
34698 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
34699 MVT::f64, 2, 2, 5,
34700 OPC_EmitConvertToTarget3,
34701 OPC_EmitNodeXForm, 6, 7,
34702 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBF16MALBQI),
34703 MVT::v4f32, 4, 0, 1, 6, 8,
34704 11,
34705 OPC_RecordChild3,
34706 OPC_CheckPatternPredicate, 27,
34707 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBF16MALBQ),
34708 MVT::v4f32, 3, 0, 1, 2,
34709 0,
34710 47,
34711 OPC_CheckChild0Integer, 38|128,51,
34712 OPC_RecordChild1,
34713 OPC_RecordChild2,
34714 OPC_Scope, 19,
34715 OPC_CheckChild3Integer, 0,
34716 OPC_CheckPatternPredicate2,
34717 OPC_EmitInteger32, 0,
34718 OPC_EmitRegisterI32, 0 ,
34719 OPC_EmitRegisterI32, 0 ,
34720 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16f32bh),
34721 MVT::v8f16, 5, 0, 1, 2, 3, 4,
34722 19,
34723 OPC_CheckChild3Integer, 2,
34724 OPC_CheckPatternPredicate2,
34725 OPC_EmitInteger32, 0,
34726 OPC_EmitRegisterI32, 0 ,
34727 OPC_EmitRegisterI32, 0 ,
34728 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16f32th),
34729 MVT::v8f16, 5, 0, 1, 2, 3, 4,
34730 0,
34731 45,
34732 OPC_CheckChild0Integer, 40|128,51,
34733 OPC_RecordChild1,
34734 OPC_RecordChild2,
34735 OPC_Scope, 18,
34736 OPC_CheckChild3Integer, 0,
34737 OPC_RecordChild4,
34738 OPC_CheckPatternPredicate2,
34739 OPC_EmitInteger32, 2,
34740 OPC_EmitRegisterI32, 0 ,
34741 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16f32bh),
34742 MVT::v8f16, 5, 0, 1, 3, 2, 4,
34743 18,
34744 OPC_CheckChild3Integer, 2,
34745 OPC_RecordChild4,
34746 OPC_CheckPatternPredicate2,
34747 OPC_EmitInteger32, 2,
34748 OPC_EmitRegisterI32, 0 ,
34749 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16f32th),
34750 MVT::v8f16, 5, 0, 1, 3, 2, 4,
34751 0,
34752 56,
34753 OPC_CheckChild0Integer, 42|128,51,
34754 OPC_RecordChild1,
34755 OPC_Scope, 24,
34756 OPC_CheckChild2Integer, 0,
34757 OPC_CheckPatternPredicate2,
34758 OPC_EmitInteger32, 0,
34759 OPC_EmitRegisterI32, 0 ,
34760 OPC_EmitRegisterI32, 0 ,
34761 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
34762 MVT::v4i32, 0,
34763 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32f16bh),
34764 MVT::v4f32, 5, 0, 1, 2, 3, 4,
34765 24,
34766 OPC_CheckChild2Integer, 2,
34767 OPC_CheckPatternPredicate2,
34768 OPC_EmitInteger32, 0,
34769 OPC_EmitRegisterI32, 0 ,
34770 OPC_EmitRegisterI32, 0 ,
34771 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
34772 MVT::v4i32, 0,
34773 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32f16th),
34774 MVT::v4f32, 5, 0, 1, 2, 3, 4,
34775 0,
34776 45,
34777 OPC_CheckChild0Integer, 44|128,51,
34778 OPC_RecordChild1,
34779 OPC_RecordChild2,
34780 OPC_Scope, 18,
34781 OPC_CheckChild3Integer, 0,
34782 OPC_RecordChild4,
34783 OPC_CheckPatternPredicate2,
34784 OPC_EmitInteger32, 2,
34785 OPC_EmitRegisterI32, 0 ,
34786 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32f16bh),
34787 MVT::v4f32, 5, 1, 3, 2, 4, 0,
34788 18,
34789 OPC_CheckChild3Integer, 2,
34790 OPC_RecordChild4,
34791 OPC_CheckPatternPredicate2,
34792 OPC_EmitInteger32, 2,
34793 OPC_EmitRegisterI32, 0 ,
34794 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32f16th),
34795 MVT::v4f32, 5, 1, 3, 2, 4, 0,
34796 0,
34797 112,
34798 OPC_CheckChild0Integer, 70|128,53,
34799 OPC_RecordChild1,
34800 OPC_Scope, 25,
34801 OPC_CheckChild1Type, MVT::v2i32,
34802 OPC_RecordChild2,
34803 OPC_MoveChild2,
34804 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34805 OPC_MoveParent,
34806 OPC_CheckType, MVT::v2f32,
34807 OPC_CheckPatternPredicate1,
34808 OPC_EmitConvertToTarget1,
34809 OPC_EmitInteger32, 28,
34810 OPC_EmitRegisterI32, 0 ,
34811 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTxs2fd),
34812 MVT::v2f32, 4, 0, 2, 3, 4,
34813 26,
34814 OPC_CheckChild1Type, MVT::v4i16,
34815 OPC_RecordChild2,
34816 OPC_MoveChild2,
34817 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34818 OPC_MoveParent,
34819 OPC_CheckType, MVT::v4f16,
34820 OPC_CheckPatternPredicate, 11,
34821 OPC_EmitConvertToTarget1,
34822 OPC_EmitInteger32, 28,
34823 OPC_EmitRegisterI32, 0 ,
34824 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTxs2hd),
34825 MVT::v4f16, 4, 0, 2, 3, 4,
34826 25,
34827 OPC_CheckChild1Type, MVT::v4i32,
34828 OPC_RecordChild2,
34829 OPC_MoveChild2,
34830 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34831 OPC_MoveParent,
34832 OPC_CheckType, MVT::v4f32,
34833 OPC_CheckPatternPredicate1,
34834 OPC_EmitConvertToTarget1,
34835 OPC_EmitInteger32, 28,
34836 OPC_EmitRegisterI32, 0 ,
34837 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTxs2fq),
34838 MVT::v4f32, 4, 0, 2, 3, 4,
34839 26,
34840 OPC_CheckChild1Type, MVT::v8i16,
34841 OPC_RecordChild2,
34842 OPC_MoveChild2,
34843 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34844 OPC_MoveParent,
34845 OPC_CheckType, MVT::v8f16,
34846 OPC_CheckPatternPredicate, 11,
34847 OPC_EmitConvertToTarget1,
34848 OPC_EmitInteger32, 28,
34849 OPC_EmitRegisterI32, 0 ,
34850 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTxs2hq),
34851 MVT::v8f16, 4, 0, 2, 3, 4,
34852 0,
34853 112,
34854 OPC_CheckChild0Integer, 72|128,53,
34855 OPC_RecordChild1,
34856 OPC_Scope, 25,
34857 OPC_CheckChild1Type, MVT::v2i32,
34858 OPC_RecordChild2,
34859 OPC_MoveChild2,
34860 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34861 OPC_MoveParent,
34862 OPC_CheckType, MVT::v2f32,
34863 OPC_CheckPatternPredicate1,
34864 OPC_EmitConvertToTarget1,
34865 OPC_EmitInteger32, 28,
34866 OPC_EmitRegisterI32, 0 ,
34867 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTxu2fd),
34868 MVT::v2f32, 4, 0, 2, 3, 4,
34869 26,
34870 OPC_CheckChild1Type, MVT::v4i16,
34871 OPC_RecordChild2,
34872 OPC_MoveChild2,
34873 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34874 OPC_MoveParent,
34875 OPC_CheckType, MVT::v4f16,
34876 OPC_CheckPatternPredicate, 11,
34877 OPC_EmitConvertToTarget1,
34878 OPC_EmitInteger32, 28,
34879 OPC_EmitRegisterI32, 0 ,
34880 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTxu2hd),
34881 MVT::v4f16, 4, 0, 2, 3, 4,
34882 25,
34883 OPC_CheckChild1Type, MVT::v4i32,
34884 OPC_RecordChild2,
34885 OPC_MoveChild2,
34886 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34887 OPC_MoveParent,
34888 OPC_CheckType, MVT::v4f32,
34889 OPC_CheckPatternPredicate1,
34890 OPC_EmitConvertToTarget1,
34891 OPC_EmitInteger32, 28,
34892 OPC_EmitRegisterI32, 0 ,
34893 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTxu2fq),
34894 MVT::v4f32, 4, 0, 2, 3, 4,
34895 26,
34896 OPC_CheckChild1Type, MVT::v8i16,
34897 OPC_RecordChild2,
34898 OPC_MoveChild2,
34899 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34900 OPC_MoveParent,
34901 OPC_CheckType, MVT::v8f16,
34902 OPC_CheckPatternPredicate, 11,
34903 OPC_EmitConvertToTarget1,
34904 OPC_EmitInteger32, 28,
34905 OPC_EmitRegisterI32, 0 ,
34906 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTxu2hq),
34907 MVT::v8f16, 4, 0, 2, 3, 4,
34908 0,
34909 72,
34910 OPC_CheckChild0Integer, 16|128,51,
34911 OPC_RecordChild1,
34912 OPC_MoveChild1,
34913 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34914 OPC_MoveParent,
34915 OPC_RecordChild2,
34916 OPC_SwitchType , 28, MVT::v8f16,
34917 OPC_CheckChild2Type, MVT::v8f16,
34918 OPC_RecordChild3,
34919 OPC_CheckChild3Type, MVT::v8f16,
34920 OPC_RecordChild4,
34921 OPC_CheckChild4Type, MVT::v8f16,
34922 OPC_CheckPatternPredicate2,
34923 OPC_EmitConvertToTarget0,
34924 OPC_EmitInteger32, 0,
34925 OPC_EmitRegisterI32, 0 ,
34926 OPC_EmitRegisterI32, 0 ,
34927 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMLAf16),
34928 MVT::v8f16, 7, 1, 2, 3, 4, 5, 6, 7,
34929 28, MVT::v4f32,
34930 OPC_CheckChild2Type, MVT::v4f32,
34931 OPC_RecordChild3,
34932 OPC_CheckChild3Type, MVT::v4f32,
34933 OPC_RecordChild4,
34934 OPC_CheckChild4Type, MVT::v4f32,
34935 OPC_CheckPatternPredicate2,
34936 OPC_EmitConvertToTarget0,
34937 OPC_EmitInteger32, 0,
34938 OPC_EmitRegisterI32, 0 ,
34939 OPC_EmitRegisterI32, 0 ,
34940 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMLAf32),
34941 MVT::v4f32, 7, 1, 2, 3, 4, 5, 6, 7,
34942 0,
34943 74,
34944 OPC_CheckChild0Integer, 18|128,51,
34945 OPC_RecordChild1,
34946 OPC_MoveChild1,
34947 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
34948 OPC_MoveParent,
34949 OPC_RecordChild2,
34950 OPC_SwitchType , 29, MVT::v8f16,
34951 OPC_CheckChild2Type, MVT::v8f16,
34952 OPC_RecordChild3,
34953 OPC_CheckChild3Type, MVT::v8f16,
34954 OPC_RecordChild4,
34955 OPC_CheckChild4Type, MVT::v8f16,
34956 OPC_RecordChild5,
34957 OPC_CheckChild5Type, MVT::v8i1,
34958 OPC_CheckPatternPredicate2,
34959 OPC_EmitConvertToTarget0,
34960 OPC_EmitInteger32, 2,
34961 OPC_EmitRegisterI32, 0 ,
34962 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMLAf16),
34963 MVT::v8f16, 7, 1, 2, 3, 5, 6, 4, 7,
34964 29, MVT::v4f32,
34965 OPC_CheckChild2Type, MVT::v4f32,
34966 OPC_RecordChild3,
34967 OPC_CheckChild3Type, MVT::v4f32,
34968 OPC_RecordChild4,
34969 OPC_CheckChild4Type, MVT::v4f32,
34970 OPC_RecordChild5,
34971 OPC_CheckChild5Type, MVT::v4i1,
34972 OPC_CheckPatternPredicate2,
34973 OPC_EmitConvertToTarget0,
34974 OPC_EmitInteger32, 2,
34975 OPC_EmitRegisterI32, 0 ,
34976 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMLAf32),
34977 MVT::v4f32, 7, 1, 2, 3, 5, 6, 4, 7,
34978 0,
34979 43|128,3,
34980 OPC_CheckChild0Integer, 14|128,50,
34981 OPC_Scope, 35,
34982 OPC_MoveChild1,
34983 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
34984 OPC_RecordChild0,
34985 OPC_CheckType, MVT::v4f32,
34986 OPC_MoveParent,
34987 OPC_RecordChild2,
34988 OPC_CheckChild2Type, MVT::v4f32,
34989 OPC_RecordChild3,
34990 OPC_CheckChild3Type, MVT::v4f32,
34991 OPC_RecordChild4,
34992 OPC_CheckChild4Type, MVT::v4i1,
34993 OPC_CheckType, MVT::v4f32,
34994 OPC_CheckPatternPredicate2,
34995 OPC_EmitInteger32, 2,
34996 OPC_EmitRegisterI32, 0 ,
34997 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf32),
34998 MVT::v4f32, 6, 2, 0, 1, 4, 3, 5,
34999 35,
35000 OPC_RecordChild1,
35001 OPC_CheckChild1Type, MVT::v4f32,
35002 OPC_MoveChild2,
35003 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
35004 OPC_RecordChild0,
35005 OPC_CheckType, MVT::v4f32,
35006 OPC_MoveParent,
35007 OPC_RecordChild3,
35008 OPC_CheckChild3Type, MVT::v4f32,
35009 OPC_RecordChild4,
35010 OPC_CheckChild4Type, MVT::v4i1,
35011 OPC_CheckType, MVT::v4f32,
35012 OPC_CheckPatternPredicate2,
35013 OPC_EmitInteger32, 2,
35014 OPC_EmitRegisterI32, 0 ,
35015 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf32),
35016 MVT::v4f32, 6, 2, 0, 1, 4, 3, 5,
35017 35,
35018 OPC_MoveChild1,
35019 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
35020 OPC_RecordChild0,
35021 OPC_CheckType, MVT::v8f16,
35022 OPC_MoveParent,
35023 OPC_RecordChild2,
35024 OPC_CheckChild2Type, MVT::v8f16,
35025 OPC_RecordChild3,
35026 OPC_CheckChild3Type, MVT::v8f16,
35027 OPC_RecordChild4,
35028 OPC_CheckChild4Type, MVT::v8i1,
35029 OPC_CheckType, MVT::v8f16,
35030 OPC_CheckPatternPredicate2,
35031 OPC_EmitInteger32, 2,
35032 OPC_EmitRegisterI32, 0 ,
35033 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf16),
35034 MVT::v8f16, 6, 2, 0, 1, 4, 3, 5,
35035 69,
35036 OPC_RecordChild1,
35037 OPC_CheckChild1Type, MVT::v8f16,
35038 OPC_MoveChild2,
35039 OPC_SwitchOpcode , 28, TARGET_VAL(ISD::FNEG),
35040 OPC_RecordChild0,
35041 OPC_CheckType, MVT::v8f16,
35042 OPC_MoveParent,
35043 OPC_RecordChild3,
35044 OPC_CheckChild3Type, MVT::v8f16,
35045 OPC_RecordChild4,
35046 OPC_CheckChild4Type, MVT::v8i1,
35047 OPC_CheckType, MVT::v8f16,
35048 OPC_CheckPatternPredicate2,
35049 OPC_EmitInteger32, 2,
35050 OPC_EmitRegisterI32, 0 ,
35051 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf16),
35052 MVT::v8f16, 6, 2, 0, 1, 4, 3, 5,
35053 29, TARGET_VAL(ARMISD::VDUP),
35054 OPC_RecordChild0,
35055 OPC_CheckChild0TypeI32,
35056 OPC_CheckType, MVT::v8f16,
35057 OPC_MoveParent,
35058 OPC_RecordChild3,
35059 OPC_CheckChild3Type, MVT::v8f16,
35060 OPC_RecordChild4,
35061 OPC_CheckChild4Type, MVT::v8i1,
35062 OPC_CheckType, MVT::v8f16,
35063 OPC_CheckPatternPredicate2,
35064 OPC_EmitInteger32, 2,
35065 OPC_EmitRegisterI32, 0 ,
35066 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f16),
35067 MVT::v8f16, 6, 2, 0, 1, 4, 3, 5,
35068 0,
35069 36,
35070 OPC_MoveChild1,
35071 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
35072 OPC_RecordChild0,
35073 OPC_CheckChild0TypeI32,
35074 OPC_CheckType, MVT::v8f16,
35075 OPC_MoveParent,
35076 OPC_RecordChild2,
35077 OPC_CheckChild2Type, MVT::v8f16,
35078 OPC_RecordChild3,
35079 OPC_CheckChild3Type, MVT::v8f16,
35080 OPC_RecordChild4,
35081 OPC_CheckChild4Type, MVT::v8i1,
35082 OPC_CheckType, MVT::v8f16,
35083 OPC_CheckPatternPredicate2,
35084 OPC_EmitInteger32, 2,
35085 OPC_EmitRegisterI32, 0 ,
35086 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f16),
35087 MVT::v8f16, 6, 2, 1, 0, 4, 3, 5,
35088 36,
35089 OPC_RecordChild1,
35090 OPC_CheckChild1Type, MVT::v4f32,
35091 OPC_MoveChild2,
35092 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
35093 OPC_RecordChild0,
35094 OPC_CheckChild0TypeI32,
35095 OPC_CheckType, MVT::v4f32,
35096 OPC_MoveParent,
35097 OPC_RecordChild3,
35098 OPC_CheckChild3Type, MVT::v4f32,
35099 OPC_RecordChild4,
35100 OPC_CheckChild4Type, MVT::v4i1,
35101 OPC_CheckType, MVT::v4f32,
35102 OPC_CheckPatternPredicate2,
35103 OPC_EmitInteger32, 2,
35104 OPC_EmitRegisterI32, 0 ,
35105 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f32),
35106 MVT::v4f32, 6, 2, 0, 1, 4, 3, 5,
35107 36,
35108 OPC_MoveChild1,
35109 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
35110 OPC_RecordChild0,
35111 OPC_CheckChild0TypeI32,
35112 OPC_CheckType, MVT::v4f32,
35113 OPC_MoveParent,
35114 OPC_RecordChild2,
35115 OPC_CheckChild2Type, MVT::v4f32,
35116 OPC_RecordChild3,
35117 OPC_CheckChild3Type, MVT::v4f32,
35118 OPC_RecordChild4,
35119 OPC_CheckChild4Type, MVT::v4i1,
35120 OPC_CheckType, MVT::v4f32,
35121 OPC_CheckPatternPredicate2,
35122 OPC_EmitInteger32, 2,
35123 OPC_EmitRegisterI32, 0 ,
35124 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f32),
35125 MVT::v4f32, 6, 2, 1, 0, 4, 3, 5,
35126 3|128,1,
35127 OPC_RecordChild1,
35128 OPC_Scope, 63,
35129 OPC_CheckChild1Type, MVT::v8f16,
35130 OPC_RecordChild2,
35131 OPC_CheckChild2Type, MVT::v8f16,
35132 OPC_Scope, 30,
35133 OPC_MoveChild3,
35134 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
35135 OPC_RecordChild0,
35136 OPC_CheckChild0TypeI32,
35137 OPC_CheckType, MVT::v8f16,
35138 OPC_MoveParent,
35139 OPC_RecordChild4,
35140 OPC_CheckChild4Type, MVT::v8i1,
35141 OPC_CheckType, MVT::v8f16,
35142 OPC_CheckPatternPredicate2,
35143 OPC_EmitInteger32, 2,
35144 OPC_EmitRegisterI32, 0 ,
35145 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_Sf16),
35146 MVT::v8f16, 6, 0, 1, 2, 4, 3, 5,
35147 24,
35148 OPC_RecordChild3,
35149 OPC_CheckChild3Type, MVT::v8f16,
35150 OPC_RecordChild4,
35151 OPC_CheckChild4Type, MVT::v8i1,
35152 OPC_CheckType, MVT::v8f16,
35153 OPC_CheckPatternPredicate2,
35154 OPC_EmitInteger32, 2,
35155 OPC_EmitRegisterI32, 0 ,
35156 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMAf16),
35157 MVT::v8f16, 6, 2, 0, 1, 4, 3, 5,
35158 0,
35159 63,
35160 OPC_CheckChild1Type, MVT::v4f32,
35161 OPC_RecordChild2,
35162 OPC_CheckChild2Type, MVT::v4f32,
35163 OPC_Scope, 30,
35164 OPC_MoveChild3,
35165 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
35166 OPC_RecordChild0,
35167 OPC_CheckChild0TypeI32,
35168 OPC_CheckType, MVT::v4f32,
35169 OPC_MoveParent,
35170 OPC_RecordChild4,
35171 OPC_CheckChild4Type, MVT::v4i1,
35172 OPC_CheckType, MVT::v4f32,
35173 OPC_CheckPatternPredicate2,
35174 OPC_EmitInteger32, 2,
35175 OPC_EmitRegisterI32, 0 ,
35176 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_Sf32),
35177 MVT::v4f32, 6, 0, 1, 2, 4, 3, 5,
35178 24,
35179 OPC_RecordChild3,
35180 OPC_CheckChild3Type, MVT::v4f32,
35181 OPC_RecordChild4,
35182 OPC_CheckChild4Type, MVT::v4i1,
35183 OPC_CheckType, MVT::v4f32,
35184 OPC_CheckPatternPredicate2,
35185 OPC_EmitInteger32, 2,
35186 OPC_EmitRegisterI32, 0 ,
35187 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMAf32),
35188 MVT::v4f32, 6, 2, 0, 1, 4, 3, 5,
35189 0,
35190 0,
35191 0,
35192 76,
35193 OPC_CheckChild0Integer, 20|128,51,
35194 OPC_RecordChild1,
35195 OPC_MoveChild1,
35196 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
35197 OPC_MoveParent,
35198 OPC_RecordChild2,
35199 OPC_SwitchType , 30, MVT::v8f16,
35200 OPC_CheckChild2Type, MVT::v8f16,
35201 OPC_RecordChild3,
35202 OPC_CheckChild3Type, MVT::v8f16,
35203 OPC_CheckPatternPredicate2,
35204 OPC_EmitConvertToTarget0,
35205 OPC_EmitInteger32, 0,
35206 OPC_EmitRegisterI32, 0 ,
35207 OPC_EmitRegisterI32, 0 ,
35208 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
35209 MVT::v4i32, 0,
35210 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMULf16),
35211 MVT::v8f16, 7, 1, 2, 3, 4, 5, 6, 7,
35212 30, MVT::v4f32,
35213 OPC_CheckChild2Type, MVT::v4f32,
35214 OPC_RecordChild3,
35215 OPC_CheckChild3Type, MVT::v4f32,
35216 OPC_CheckPatternPredicate2,
35217 OPC_EmitConvertToTarget0,
35218 OPC_EmitInteger32, 0,
35219 OPC_EmitRegisterI32, 0 ,
35220 OPC_EmitRegisterI32, 0 ,
35221 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
35222 MVT::v4i32, 0,
35223 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMULf32),
35224 MVT::v4f32, 7, 1, 2, 3, 4, 5, 6, 7,
35225 0,
35226 74,
35227 OPC_CheckChild0Integer, 22|128,51,
35228 OPC_RecordChild1,
35229 OPC_MoveChild1,
35230 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
35231 OPC_MoveParent,
35232 OPC_RecordChild2,
35233 OPC_SwitchType , 29, MVT::v8f16,
35234 OPC_CheckChild2Type, MVT::v8f16,
35235 OPC_RecordChild3,
35236 OPC_CheckChild3Type, MVT::v8f16,
35237 OPC_RecordChild4,
35238 OPC_CheckChild4Type, MVT::v8f16,
35239 OPC_RecordChild5,
35240 OPC_CheckChild5Type, MVT::v8i1,
35241 OPC_CheckPatternPredicate2,
35242 OPC_EmitConvertToTarget0,
35243 OPC_EmitInteger32, 2,
35244 OPC_EmitRegisterI32, 0 ,
35245 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMULf16),
35246 MVT::v8f16, 7, 2, 3, 5, 6, 4, 7, 1,
35247 29, MVT::v4f32,
35248 OPC_CheckChild2Type, MVT::v4f32,
35249 OPC_RecordChild3,
35250 OPC_CheckChild3Type, MVT::v4f32,
35251 OPC_RecordChild4,
35252 OPC_CheckChild4Type, MVT::v4f32,
35253 OPC_RecordChild5,
35254 OPC_CheckChild5Type, MVT::v4i1,
35255 OPC_CheckPatternPredicate2,
35256 OPC_EmitConvertToTarget0,
35257 OPC_EmitInteger32, 2,
35258 OPC_EmitRegisterI32, 0 ,
35259 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMULf32),
35260 MVT::v4f32, 7, 2, 3, 5, 6, 4, 7, 1,
35261 0,
35262 82,
35263 OPC_CheckChild0Integer, 52|128,53,
35264 OPC_RecordChild1,
35265 OPC_SwitchType , 17, MVT::v4f16,
35266 OPC_CheckChild1Type, MVT::v4f16,
35267 OPC_RecordChild2,
35268 OPC_CheckChild2Type, MVT::v4f16,
35269 OPC_CheckPatternPredicate, 68,
35270 OPC_EmitInteger32, 0,
35271 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCADDv4f16),
35272 MVT::v4f16, 3, 0, 1, 2,
35273 17, MVT::v8f16,
35274 OPC_CheckChild1Type, MVT::v8f16,
35275 OPC_RecordChild2,
35276 OPC_CheckChild2Type, MVT::v8f16,
35277 OPC_CheckPatternPredicate, 68,
35278 OPC_EmitInteger32, 0,
35279 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCADDv8f16),
35280 MVT::v8f16, 3, 0, 1, 2,
35281 17, MVT::v2f32,
35282 OPC_CheckChild1Type, MVT::v2f32,
35283 OPC_RecordChild2,
35284 OPC_CheckChild2Type, MVT::v2f32,
35285 OPC_CheckPatternPredicate, 69,
35286 OPC_EmitInteger32, 0,
35287 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCADDv2f32),
35288 MVT::v2f32, 3, 0, 1, 2,
35289 17, MVT::v4f32,
35290 OPC_CheckChild1Type, MVT::v4f32,
35291 OPC_RecordChild2,
35292 OPC_CheckChild2Type, MVT::v4f32,
35293 OPC_CheckPatternPredicate, 69,
35294 OPC_EmitInteger32, 0,
35295 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCADDv4f32),
35296 MVT::v4f32, 3, 0, 1, 2,
35297 0,
35298 82,
35299 OPC_CheckChild0Integer, 50|128,53,
35300 OPC_RecordChild1,
35301 OPC_SwitchType , 17, MVT::v4f16,
35302 OPC_CheckChild1Type, MVT::v4f16,
35303 OPC_RecordChild2,
35304 OPC_CheckChild2Type, MVT::v4f16,
35305 OPC_CheckPatternPredicate, 68,
35306 OPC_EmitInteger32, 2,
35307 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCADDv4f16),
35308 MVT::v4f16, 3, 0, 1, 2,
35309 17, MVT::v8f16,
35310 OPC_CheckChild1Type, MVT::v8f16,
35311 OPC_RecordChild2,
35312 OPC_CheckChild2Type, MVT::v8f16,
35313 OPC_CheckPatternPredicate, 68,
35314 OPC_EmitInteger32, 2,
35315 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCADDv8f16),
35316 MVT::v8f16, 3, 0, 1, 2,
35317 17, MVT::v2f32,
35318 OPC_CheckChild1Type, MVT::v2f32,
35319 OPC_RecordChild2,
35320 OPC_CheckChild2Type, MVT::v2f32,
35321 OPC_CheckPatternPredicate, 69,
35322 OPC_EmitInteger32, 2,
35323 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCADDv2f32),
35324 MVT::v2f32, 3, 0, 1, 2,
35325 17, MVT::v4f32,
35326 OPC_CheckChild1Type, MVT::v4f32,
35327 OPC_RecordChild2,
35328 OPC_CheckChild2Type, MVT::v4f32,
35329 OPC_CheckPatternPredicate, 69,
35330 OPC_EmitInteger32, 2,
35331 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCADDv4f32),
35332 MVT::v4f32, 3, 0, 1, 2,
35333 0,
35334 92,
35335 OPC_CheckChild0Integer, 38|128,53,
35336 OPC_RecordChild1,
35337 OPC_SwitchType , 19, MVT::v2f32,
35338 OPC_CheckChild1Type, MVT::v2f32,
35339 OPC_RecordChild2,
35340 OPC_CheckChild2Type, MVT::v2f32,
35341 OPC_CheckPatternPredicate1,
35342 OPC_EmitInteger32, 28,
35343 OPC_EmitRegisterI32, 0 ,
35344 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDfd),
35345 MVT::v2f32, 4, 0, 1, 2, 3,
35346 19, MVT::v4f32,
35347 OPC_CheckChild1Type, MVT::v4f32,
35348 OPC_RecordChild2,
35349 OPC_CheckChild2Type, MVT::v4f32,
35350 OPC_CheckPatternPredicate1,
35351 OPC_EmitInteger32, 28,
35352 OPC_EmitRegisterI32, 0 ,
35353 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDfq),
35354 MVT::v4f32, 4, 0, 1, 2, 3,
35355 20, MVT::v4f16,
35356 OPC_CheckChild1Type, MVT::v4f16,
35357 OPC_RecordChild2,
35358 OPC_CheckChild2Type, MVT::v4f16,
35359 OPC_CheckPatternPredicate, 11,
35360 OPC_EmitInteger32, 28,
35361 OPC_EmitRegisterI32, 0 ,
35362 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDhd),
35363 MVT::v4f16, 4, 0, 1, 2, 3,
35364 20, MVT::v8f16,
35365 OPC_CheckChild1Type, MVT::v8f16,
35366 OPC_RecordChild2,
35367 OPC_CheckChild2Type, MVT::v8f16,
35368 OPC_CheckPatternPredicate, 11,
35369 OPC_EmitInteger32, 28,
35370 OPC_EmitRegisterI32, 0 ,
35371 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDhq),
35372 MVT::v8f16, 4, 0, 1, 2, 3,
35373 0,
35374 92,
35375 OPC_CheckChild0Integer, 78|128,54,
35376 OPC_RecordChild1,
35377 OPC_SwitchType , 19, MVT::v2f32,
35378 OPC_CheckChild1Type, MVT::v2f32,
35379 OPC_RecordChild2,
35380 OPC_CheckChild2Type, MVT::v2f32,
35381 OPC_CheckPatternPredicate1,
35382 OPC_EmitInteger32, 28,
35383 OPC_EmitRegisterI32, 0 ,
35384 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRECPSfd),
35385 MVT::v2f32, 4, 0, 1, 2, 3,
35386 19, MVT::v4f32,
35387 OPC_CheckChild1Type, MVT::v4f32,
35388 OPC_RecordChild2,
35389 OPC_CheckChild2Type, MVT::v4f32,
35390 OPC_CheckPatternPredicate1,
35391 OPC_EmitInteger32, 28,
35392 OPC_EmitRegisterI32, 0 ,
35393 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRECPSfq),
35394 MVT::v4f32, 4, 0, 1, 2, 3,
35395 20, MVT::v4f16,
35396 OPC_CheckChild1Type, MVT::v4f16,
35397 OPC_RecordChild2,
35398 OPC_CheckChild2Type, MVT::v4f16,
35399 OPC_CheckPatternPredicate, 11,
35400 OPC_EmitInteger32, 28,
35401 OPC_EmitRegisterI32, 0 ,
35402 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRECPShd),
35403 MVT::v4f16, 4, 0, 1, 2, 3,
35404 20, MVT::v8f16,
35405 OPC_CheckChild1Type, MVT::v8f16,
35406 OPC_RecordChild2,
35407 OPC_CheckChild2Type, MVT::v8f16,
35408 OPC_CheckPatternPredicate, 11,
35409 OPC_EmitInteger32, 28,
35410 OPC_EmitRegisterI32, 0 ,
35411 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRECPShq),
35412 MVT::v8f16, 4, 0, 1, 2, 3,
35413 0,
35414 92,
35415 OPC_CheckChild0Integer, 104|128,54,
35416 OPC_RecordChild1,
35417 OPC_SwitchType , 19, MVT::v2f32,
35418 OPC_CheckChild1Type, MVT::v2f32,
35419 OPC_RecordChild2,
35420 OPC_CheckChild2Type, MVT::v2f32,
35421 OPC_CheckPatternPredicate1,
35422 OPC_EmitInteger32, 28,
35423 OPC_EmitRegisterI32, 0 ,
35424 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSQRTSfd),
35425 MVT::v2f32, 4, 0, 1, 2, 3,
35426 19, MVT::v4f32,
35427 OPC_CheckChild1Type, MVT::v4f32,
35428 OPC_RecordChild2,
35429 OPC_CheckChild2Type, MVT::v4f32,
35430 OPC_CheckPatternPredicate1,
35431 OPC_EmitInteger32, 28,
35432 OPC_EmitRegisterI32, 0 ,
35433 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSQRTSfq),
35434 MVT::v4f32, 4, 0, 1, 2, 3,
35435 20, MVT::v4f16,
35436 OPC_CheckChild1Type, MVT::v4f16,
35437 OPC_RecordChild2,
35438 OPC_CheckChild2Type, MVT::v4f16,
35439 OPC_CheckPatternPredicate, 11,
35440 OPC_EmitInteger32, 28,
35441 OPC_EmitRegisterI32, 0 ,
35442 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSQRTShd),
35443 MVT::v4f16, 4, 0, 1, 2, 3,
35444 20, MVT::v8f16,
35445 OPC_CheckChild1Type, MVT::v8f16,
35446 OPC_RecordChild2,
35447 OPC_CheckChild2Type, MVT::v8f16,
35448 OPC_CheckPatternPredicate, 11,
35449 OPC_EmitInteger32, 28,
35450 OPC_EmitRegisterI32, 0 ,
35451 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSQRTShq),
35452 MVT::v8f16, 4, 0, 1, 2, 3,
35453 0,
35454 18,
35455 OPC_CheckChild0Integer, 74|128,53,
35456 OPC_RecordChild1,
35457 OPC_CheckPatternPredicate, 88,
35458 OPC_EmitInteger32, 28,
35459 OPC_EmitRegisterI32, 0 ,
35460 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTh2f),
35461 MVT::v4f32, 3, 0, 1, 2,
35462 54,
35463 OPC_CheckChild0Integer, 92|128,54,
35464 OPC_RecordChild1,
35465 OPC_SwitchType , 10, MVT::v2f32,
35466 OPC_CheckChild1Type, MVT::v2f32,
35467 OPC_CheckPatternPredicate, 16,
35468 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTXNDf),
35469 MVT::v2f32, 1, 0,
35470 10, MVT::v4f32,
35471 OPC_CheckChild1Type, MVT::v4f32,
35472 OPC_CheckPatternPredicate, 16,
35473 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTXNQf),
35474 MVT::v4f32, 1, 0,
35475 10, MVT::v4f16,
35476 OPC_CheckChild1Type, MVT::v4f16,
35477 OPC_CheckPatternPredicate, 17,
35478 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTXNDh),
35479 MVT::v4f16, 1, 0,
35480 10, MVT::v8f16,
35481 OPC_CheckChild1Type, MVT::v8f16,
35482 OPC_CheckPatternPredicate, 17,
35483 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTXNQh),
35484 MVT::v8f16, 1, 0,
35485 0,
35486 54,
35487 OPC_CheckChild0Integer, 84|128,54,
35488 OPC_RecordChild1,
35489 OPC_SwitchType , 10, MVT::v2f32,
35490 OPC_CheckChild1Type, MVT::v2f32,
35491 OPC_CheckPatternPredicate, 16,
35492 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTANDf),
35493 MVT::v2f32, 1, 0,
35494 10, MVT::v4f32,
35495 OPC_CheckChild1Type, MVT::v4f32,
35496 OPC_CheckPatternPredicate, 16,
35497 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTANQf),
35498 MVT::v4f32, 1, 0,
35499 10, MVT::v4f16,
35500 OPC_CheckChild1Type, MVT::v4f16,
35501 OPC_CheckPatternPredicate, 17,
35502 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTANDh),
35503 MVT::v4f16, 1, 0,
35504 10, MVT::v8f16,
35505 OPC_CheckChild1Type, MVT::v8f16,
35506 OPC_CheckPatternPredicate, 17,
35507 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTANQh),
35508 MVT::v8f16, 1, 0,
35509 0,
35510 54,
35511 OPC_CheckChild0Integer, 94|128,54,
35512 OPC_RecordChild1,
35513 OPC_SwitchType , 10, MVT::v2f32,
35514 OPC_CheckChild1Type, MVT::v2f32,
35515 OPC_CheckPatternPredicate, 16,
35516 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTZNDf),
35517 MVT::v2f32, 1, 0,
35518 10, MVT::v4f32,
35519 OPC_CheckChild1Type, MVT::v4f32,
35520 OPC_CheckPatternPredicate, 16,
35521 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTZNQf),
35522 MVT::v4f32, 1, 0,
35523 10, MVT::v4f16,
35524 OPC_CheckChild1Type, MVT::v4f16,
35525 OPC_CheckPatternPredicate, 17,
35526 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTZNDh),
35527 MVT::v4f16, 1, 0,
35528 10, MVT::v8f16,
35529 OPC_CheckChild1Type, MVT::v8f16,
35530 OPC_CheckPatternPredicate, 17,
35531 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTZNQh),
35532 MVT::v8f16, 1, 0,
35533 0,
35534 54,
35535 OPC_CheckChild0Integer, 86|128,54,
35536 OPC_RecordChild1,
35537 OPC_SwitchType , 10, MVT::v2f32,
35538 OPC_CheckChild1Type, MVT::v2f32,
35539 OPC_CheckPatternPredicate, 16,
35540 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTMNDf),
35541 MVT::v2f32, 1, 0,
35542 10, MVT::v4f32,
35543 OPC_CheckChild1Type, MVT::v4f32,
35544 OPC_CheckPatternPredicate, 16,
35545 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTMNQf),
35546 MVT::v4f32, 1, 0,
35547 10, MVT::v4f16,
35548 OPC_CheckChild1Type, MVT::v4f16,
35549 OPC_CheckPatternPredicate, 17,
35550 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTMNDh),
35551 MVT::v4f16, 1, 0,
35552 10, MVT::v8f16,
35553 OPC_CheckChild1Type, MVT::v8f16,
35554 OPC_CheckPatternPredicate, 17,
35555 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTMNQh),
35556 MVT::v8f16, 1, 0,
35557 0,
35558 54,
35559 OPC_CheckChild0Integer, 90|128,54,
35560 OPC_RecordChild1,
35561 OPC_SwitchType , 10, MVT::v2f32,
35562 OPC_CheckChild1Type, MVT::v2f32,
35563 OPC_CheckPatternPredicate, 16,
35564 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTPNDf),
35565 MVT::v2f32, 1, 0,
35566 10, MVT::v4f32,
35567 OPC_CheckChild1Type, MVT::v4f32,
35568 OPC_CheckPatternPredicate, 16,
35569 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTPNQf),
35570 MVT::v4f32, 1, 0,
35571 10, MVT::v4f16,
35572 OPC_CheckChild1Type, MVT::v4f16,
35573 OPC_CheckPatternPredicate, 17,
35574 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTPNDh),
35575 MVT::v4f16, 1, 0,
35576 10, MVT::v8f16,
35577 OPC_CheckChild1Type, MVT::v8f16,
35578 OPC_CheckPatternPredicate, 17,
35579 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTPNQh),
35580 MVT::v8f16, 1, 0,
35581 0,
35582 16,
35583 OPC_CheckChild0Integer, 4|128,53,
35584 OPC_RecordChild1,
35585 OPC_RecordChild2,
35586 OPC_RecordChild3,
35587 OPC_CheckPatternPredicate, 27,
35588 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMMLA),
35589 MVT::v4f32, 3, 0, 1, 2,
35590 58,
35591 OPC_CheckChild0Integer, 50|128,52,
35592 OPC_RecordChild1,
35593 OPC_SwitchType , 24, MVT::v8f16,
35594 OPC_CheckChild1Type, MVT::v8f16,
35595 OPC_CheckPatternPredicate2,
35596 OPC_EmitInteger32, 0,
35597 OPC_EmitRegisterI32, 0 ,
35598 OPC_EmitRegisterI32, 0 ,
35599 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
35600 MVT::v4i32, 0,
35601 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16N),
35602 MVT::v8f16, 5, 0, 1, 2, 3, 4,
35603 24, MVT::v4f32,
35604 OPC_CheckChild1Type, MVT::v4f32,
35605 OPC_CheckPatternPredicate2,
35606 OPC_EmitInteger32, 0,
35607 OPC_EmitRegisterI32, 0 ,
35608 OPC_EmitRegisterI32, 0 ,
35609 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
35610 MVT::v4i32, 0,
35611 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32N),
35612 MVT::v4f32, 5, 0, 1, 2, 3, 4,
35613 0,
35614 56,
35615 OPC_CheckChild0Integer, 52|128,52,
35616 OPC_RecordChild1,
35617 OPC_SwitchType , 23, MVT::v8f16,
35618 OPC_CheckChild1Type, MVT::v8f16,
35619 OPC_RecordChild2,
35620 OPC_CheckChild2Type, MVT::v8i1,
35621 OPC_RecordChild3,
35622 OPC_CheckChild3Type, MVT::v8f16,
35623 OPC_CheckPatternPredicate2,
35624 OPC_EmitInteger32, 2,
35625 OPC_EmitRegisterI32, 0 ,
35626 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16N),
35627 MVT::v8f16, 5, 0, 3, 1, 4, 2,
35628 23, MVT::v4f32,
35629 OPC_CheckChild1Type, MVT::v4f32,
35630 OPC_RecordChild2,
35631 OPC_CheckChild2Type, MVT::v4i1,
35632 OPC_RecordChild3,
35633 OPC_CheckChild3Type, MVT::v4f32,
35634 OPC_CheckPatternPredicate2,
35635 OPC_EmitInteger32, 2,
35636 OPC_EmitRegisterI32, 0 ,
35637 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32N),
35638 MVT::v4f32, 5, 0, 3, 1, 4, 2,
35639 0,
35640 56,
35641 OPC_CheckChild0Integer, 56|128,52,
35642 OPC_RecordChild1,
35643 OPC_SwitchType , 23, MVT::v8f16,
35644 OPC_CheckChild1Type, MVT::v8f16,
35645 OPC_RecordChild2,
35646 OPC_CheckChild2Type, MVT::v8i1,
35647 OPC_RecordChild3,
35648 OPC_CheckChild3Type, MVT::v8f16,
35649 OPC_CheckPatternPredicate2,
35650 OPC_EmitInteger32, 2,
35651 OPC_EmitRegisterI32, 0 ,
35652 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16X),
35653 MVT::v8f16, 5, 0, 3, 1, 4, 2,
35654 23, MVT::v4f32,
35655 OPC_CheckChild1Type, MVT::v4f32,
35656 OPC_RecordChild2,
35657 OPC_CheckChild2Type, MVT::v4i1,
35658 OPC_RecordChild3,
35659 OPC_CheckChild3Type, MVT::v4f32,
35660 OPC_CheckPatternPredicate2,
35661 OPC_EmitInteger32, 2,
35662 OPC_EmitRegisterI32, 0 ,
35663 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32X),
35664 MVT::v4f32, 5, 0, 3, 1, 4, 2,
35665 0,
35666 56,
35667 OPC_CheckChild0Integer, 46|128,52,
35668 OPC_RecordChild1,
35669 OPC_SwitchType , 23, MVT::v8f16,
35670 OPC_CheckChild1Type, MVT::v8f16,
35671 OPC_RecordChild2,
35672 OPC_CheckChild2Type, MVT::v8i1,
35673 OPC_RecordChild3,
35674 OPC_CheckChild3Type, MVT::v8f16,
35675 OPC_CheckPatternPredicate2,
35676 OPC_EmitInteger32, 2,
35677 OPC_EmitRegisterI32, 0 ,
35678 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16A),
35679 MVT::v8f16, 5, 0, 3, 1, 4, 2,
35680 23, MVT::v4f32,
35681 OPC_CheckChild1Type, MVT::v4f32,
35682 OPC_RecordChild2,
35683 OPC_CheckChild2Type, MVT::v4i1,
35684 OPC_RecordChild3,
35685 OPC_CheckChild3Type, MVT::v4f32,
35686 OPC_CheckPatternPredicate2,
35687 OPC_EmitInteger32, 2,
35688 OPC_EmitRegisterI32, 0 ,
35689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32A),
35690 MVT::v4f32, 5, 0, 3, 1, 4, 2,
35691 0,
35692 56,
35693 OPC_CheckChild0Integer, 58|128,52,
35694 OPC_RecordChild1,
35695 OPC_SwitchType , 23, MVT::v8f16,
35696 OPC_CheckChild1Type, MVT::v8f16,
35697 OPC_RecordChild2,
35698 OPC_CheckChild2Type, MVT::v8i1,
35699 OPC_RecordChild3,
35700 OPC_CheckChild3Type, MVT::v8f16,
35701 OPC_CheckPatternPredicate2,
35702 OPC_EmitInteger32, 2,
35703 OPC_EmitRegisterI32, 0 ,
35704 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16Z),
35705 MVT::v8f16, 5, 0, 3, 1, 4, 2,
35706 23, MVT::v4f32,
35707 OPC_CheckChild1Type, MVT::v4f32,
35708 OPC_RecordChild2,
35709 OPC_CheckChild2Type, MVT::v4i1,
35710 OPC_RecordChild3,
35711 OPC_CheckChild3Type, MVT::v4f32,
35712 OPC_CheckPatternPredicate2,
35713 OPC_EmitInteger32, 2,
35714 OPC_EmitRegisterI32, 0 ,
35715 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32Z),
35716 MVT::v4f32, 5, 0, 3, 1, 4, 2,
35717 0,
35718 56,
35719 OPC_CheckChild0Integer, 48|128,52,
35720 OPC_RecordChild1,
35721 OPC_SwitchType , 23, MVT::v8f16,
35722 OPC_CheckChild1Type, MVT::v8f16,
35723 OPC_RecordChild2,
35724 OPC_CheckChild2Type, MVT::v8i1,
35725 OPC_RecordChild3,
35726 OPC_CheckChild3Type, MVT::v8f16,
35727 OPC_CheckPatternPredicate2,
35728 OPC_EmitInteger32, 2,
35729 OPC_EmitRegisterI32, 0 ,
35730 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16M),
35731 MVT::v8f16, 5, 0, 3, 1, 4, 2,
35732 23, MVT::v4f32,
35733 OPC_CheckChild1Type, MVT::v4f32,
35734 OPC_RecordChild2,
35735 OPC_CheckChild2Type, MVT::v4i1,
35736 OPC_RecordChild3,
35737 OPC_CheckChild3Type, MVT::v4f32,
35738 OPC_CheckPatternPredicate2,
35739 OPC_EmitInteger32, 2,
35740 OPC_EmitRegisterI32, 0 ,
35741 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32M),
35742 MVT::v4f32, 5, 0, 3, 1, 4, 2,
35743 0,
35744 56,
35745 OPC_CheckChild0Integer, 54|128,52,
35746 OPC_RecordChild1,
35747 OPC_SwitchType , 23, MVT::v8f16,
35748 OPC_CheckChild1Type, MVT::v8f16,
35749 OPC_RecordChild2,
35750 OPC_CheckChild2Type, MVT::v8i1,
35751 OPC_RecordChild3,
35752 OPC_CheckChild3Type, MVT::v8f16,
35753 OPC_CheckPatternPredicate2,
35754 OPC_EmitInteger32, 2,
35755 OPC_EmitRegisterI32, 0 ,
35756 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16P),
35757 MVT::v8f16, 5, 0, 3, 1, 4, 2,
35758 23, MVT::v4f32,
35759 OPC_CheckChild1Type, MVT::v4f32,
35760 OPC_RecordChild2,
35761 OPC_CheckChild2Type, MVT::v4i1,
35762 OPC_RecordChild3,
35763 OPC_CheckChild3Type, MVT::v4f32,
35764 OPC_CheckPatternPredicate2,
35765 OPC_EmitInteger32, 2,
35766 OPC_EmitRegisterI32, 0 ,
35767 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32P),
35768 MVT::v4f32, 5, 0, 3, 1, 4, 2,
35769 0,
35770 56,
35771 OPC_CheckChild0Integer, 100|128,51,
35772 OPC_RecordChild1,
35773 OPC_SwitchType , 23, MVT::v4f32,
35774 OPC_CheckChild1Type, MVT::v4f32,
35775 OPC_RecordChild2,
35776 OPC_CheckChild2Type, MVT::v4f32,
35777 OPC_RecordChild3,
35778 OPC_CheckChild3Type, MVT::v4i1,
35779 OPC_CheckPatternPredicate0,
35780 OPC_EmitInteger32, 2,
35781 OPC_EmitRegisterI32, 0 ,
35782 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXNMAf32),
35783 MVT::v4f32, 5, 0, 1, 3, 2, 4,
35784 23, MVT::v8f16,
35785 OPC_CheckChild1Type, MVT::v8f16,
35786 OPC_RecordChild2,
35787 OPC_CheckChild2Type, MVT::v8f16,
35788 OPC_RecordChild3,
35789 OPC_CheckChild3Type, MVT::v8i1,
35790 OPC_CheckPatternPredicate0,
35791 OPC_EmitInteger32, 2,
35792 OPC_EmitRegisterI32, 0 ,
35793 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXNMAf16),
35794 MVT::v8f16, 5, 0, 1, 3, 2, 4,
35795 0,
35796 56,
35797 OPC_CheckChild0Integer, 104|128,51,
35798 OPC_RecordChild1,
35799 OPC_SwitchType , 23, MVT::v4f32,
35800 OPC_CheckChild1Type, MVT::v4f32,
35801 OPC_RecordChild2,
35802 OPC_CheckChild2Type, MVT::v4f32,
35803 OPC_RecordChild3,
35804 OPC_CheckChild3Type, MVT::v4i1,
35805 OPC_CheckPatternPredicate0,
35806 OPC_EmitInteger32, 2,
35807 OPC_EmitRegisterI32, 0 ,
35808 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINNMAf32),
35809 MVT::v4f32, 5, 0, 1, 3, 2, 4,
35810 23, MVT::v8f16,
35811 OPC_CheckChild1Type, MVT::v8f16,
35812 OPC_RecordChild2,
35813 OPC_CheckChild2Type, MVT::v8f16,
35814 OPC_RecordChild3,
35815 OPC_CheckChild3Type, MVT::v8i1,
35816 OPC_CheckPatternPredicate0,
35817 OPC_EmitInteger32, 2,
35818 OPC_EmitRegisterI32, 0 ,
35819 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINNMAf16),
35820 MVT::v8f16, 5, 0, 1, 3, 2, 4,
35821 0,
35822 0,
35823 86|128,2, TARGET_VAL(ISD::SRL),
35824 OPC_Scope, 127,
35825 OPC_MoveChild0,
35826 OPC_CheckOpcode, TARGET_VAL(ISD::BSWAP),
35827 OPC_MoveChild0,
35828 OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
35829 OPC_RecordMemRef,
35830 OPC_RecordNode,
35831 OPC_CheckFoldableChainNode,
35832 OPC_RecordChild1,
35833 OPC_CheckChild1TypeI32,
35834 OPC_CheckPredicate, 27,
35835 OPC_CheckPredicate, 15,
35836 OPC_CheckPredicate4,
35837 OPC_MoveParent,
35838 OPC_MoveParent,
35839 OPC_CheckChild1Integer, 32,
35840 OPC_CheckChild1TypeI32,
35841 OPC_CheckTypeI32,
35842 OPC_Scope, 33,
35843 OPC_CheckPatternPredicate, 9,
35844 OPC_CheckComplexPat, /*CP*/21, /*#*/1,
35845 OPC_EmitMergeInputChains1_0,
35846 OPC_EmitInteger32, 28,
35847 OPC_EmitRegisterI32, 0 ,
35848 OPC_EmitNode1, TARGET_VAL(ARM::LDRH), 0|OPFL_Chain|OPFL_MemRefs,
35849 MVT::i32, 5, 2, 3, 4, 5, 6,
35850 OPC_EmitInteger32, 28,
35851 OPC_EmitRegisterI32, 0 ,
35852 OPC_MorphNodeTo1None, TARGET_VAL(ARM::REV16),
35853 MVT::i32, 3, 7, 8, 9,
35854 66,
35855 OPC_CheckPatternPredicate, 10,
35856 OPC_Scope, 30,
35857 OPC_CheckComplexPat, /*CP*/26, /*#*/1,
35858 OPC_EmitMergeInputChains1_0,
35859 OPC_EmitInteger32, 28,
35860 OPC_EmitRegisterI32, 0 ,
35861 OPC_EmitNode1, TARGET_VAL(ARM::tLDRHi), 0|OPFL_Chain|OPFL_MemRefs,
35862 MVT::i32, 4, 2, 3, 4, 5,
35863 OPC_EmitInteger32, 28,
35864 OPC_EmitRegisterI32, 0 ,
35865 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tREV16),
35866 MVT::i32, 3, 6, 7, 8,
35867 30,
35868 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
35869 OPC_EmitMergeInputChains1_0,
35870 OPC_EmitInteger32, 28,
35871 OPC_EmitRegisterI32, 0 ,
35872 OPC_EmitNode1, TARGET_VAL(ARM::tLDRHr), 0|OPFL_Chain|OPFL_MemRefs,
35873 MVT::i32, 4, 2, 3, 4, 5,
35874 OPC_EmitInteger32, 28,
35875 OPC_EmitRegisterI32, 0 ,
35876 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tREV16),
35877 MVT::i32, 3, 6, 7, 8,
35878 0,
35879 0,
35880 23,
35881 OPC_RecordNode,
35882 OPC_CheckTypeI32,
35883 OPC_CheckPatternPredicate3,
35884 OPC_CheckComplexPat, /*CP*/32, /*#*/0,
35885 OPC_EmitInteger32, 28,
35886 OPC_EmitRegisterI32, 0 ,
35887 OPC_EmitRegisterI32, 0 ,
35888 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVsr),
35889 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
35890 60,
35891 OPC_MoveChild0,
35892 OPC_CheckOpcode, TARGET_VAL(ISD::BSWAP),
35893 OPC_RecordChild0,
35894 OPC_MoveChild0,
35895 OPC_CheckPredicate, 88,
35896 OPC_MoveParent,
35897 OPC_MoveParent,
35898 OPC_CheckChild1Integer, 32,
35899 OPC_CheckChild1TypeI32,
35900 OPC_CheckTypeI32,
35901 OPC_Scope, 14,
35902 OPC_CheckPatternPredicate, 9,
35903 OPC_EmitInteger32, 28,
35904 OPC_EmitRegisterI32, 0 ,
35905 OPC_MorphNodeTo1None, TARGET_VAL(ARM::REV16),
35906 MVT::i32, 3, 0, 1, 2,
35907 14,
35908 OPC_CheckPatternPredicate, 10,
35909 OPC_EmitInteger32, 28,
35910 OPC_EmitRegisterI32, 0 ,
35911 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tREV16),
35912 MVT::i32, 3, 0, 1, 2,
35913 13,
35914 OPC_CheckPatternPredicate4,
35915 OPC_EmitInteger32, 28,
35916 OPC_EmitRegisterI32, 0 ,
35917 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2REV16),
35918 MVT::i32, 3, 0, 1, 2,
35919 0,
35920 22,
35921 OPC_RecordNode,
35922 OPC_CheckTypeI32,
35923 OPC_CheckPatternPredicate3,
35924 OPC_CheckComplexPat, /*CP*/33, /*#*/0,
35925 OPC_EmitInteger32, 28,
35926 OPC_EmitRegisterI32, 0 ,
35927 OPC_EmitRegisterI32, 0 ,
35928 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVsi),
35929 MVT::i32, 5, 1, 2, 3, 4, 5,
35930 103,
35931 OPC_RecordChild0,
35932 OPC_RecordChild1,
35933 OPC_Scope, 56,
35934 OPC_MoveChild1,
35935 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
35936 OPC_CheckPredicate, 65,
35937 OPC_CheckTypeI32,
35938 OPC_MoveParent,
35939 OPC_CheckTypeI32,
35940 OPC_Scope, 22,
35941 OPC_CheckPatternPredicate, 10,
35942 OPC_EmitRegisterI32, ARM::CPSR,
35943 OPC_EmitConvertToTarget1,
35944 OPC_EmitNodeXForm, 14, 3,
35945 OPC_EmitInteger32, 28,
35946 OPC_EmitRegisterI32, 0 ,
35947 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tLSRri),
35948 MVT::i32, 5, 2, 0, 4, 5, 6,
35949 21,
35950 OPC_CheckPatternPredicate4,
35951 OPC_EmitConvertToTarget1,
35952 OPC_EmitNodeXForm, 14, 2,
35953 OPC_EmitInteger32, 28,
35954 OPC_EmitRegisterI32, 0 ,
35955 OPC_EmitRegisterI32, 0 ,
35956 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2LSRri),
35957 MVT::i32, 5, 0, 3, 4, 5, 6,
35958 0,
35959 41,
35960 OPC_CheckChild1TypeI32,
35961 OPC_CheckTypeI32,
35962 OPC_Scope, 18,
35963 OPC_CheckPatternPredicate, 10,
35964 OPC_EmitRegisterI32, ARM::CPSR,
35965 OPC_EmitInteger32, 28,
35966 OPC_EmitRegisterI32, 0 ,
35967 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tLSRrr),
35968 MVT::i32, 5, 2, 0, 1, 3, 4,
35969 17,
35970 OPC_CheckPatternPredicate4,
35971 OPC_EmitInteger32, 28,
35972 OPC_EmitRegisterI32, 0 ,
35973 OPC_EmitRegisterI32, 0 ,
35974 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2LSRrr),
35975 MVT::i32, 5, 0, 1, 2, 3, 4,
35976 0,
35977 0,
35978 0,
35979 14|128,42, TARGET_VAL(ISD::STORE),
35980 OPC_RecordMemRef,
35981 OPC_RecordNode,
35982 OPC_Scope, 13|128,3,
35983 OPC_MoveChild1,
35984 OPC_SwitchOpcode , 121, TARGET_VAL(ISD::SRL),
35985 OPC_MoveChild0,
35986 OPC_CheckOpcode, TARGET_VAL(ISD::BSWAP),
35987 OPC_RecordChild0,
35988 OPC_MoveParent,
35989 OPC_CheckChild1Integer, 32,
35990 OPC_CheckChild1TypeI32,
35991 OPC_CheckTypeI32,
35992 OPC_MoveParent,
35993 OPC_RecordChild2,
35994 OPC_CheckChild2TypeI32,
35995 OPC_CheckPredicate7,
35996 OPC_CheckPredicate, 21,
35997 OPC_CheckPredicate, 43,
35998 OPC_Scope, 33,
35999 OPC_CheckPatternPredicate, 9,
36000 OPC_CheckComplexPat, /*CP*/21, /*#*/2,
36001 OPC_EmitMergeInputChains1_0,
36002 OPC_EmitInteger32, 28,
36003 OPC_EmitRegisterI32, 0 ,
36004 OPC_EmitNode1None, TARGET_VAL(ARM::REV16),
36005 MVT::i32, 3, 1, 6, 7,
36006 OPC_EmitInteger32, 28,
36007 OPC_EmitRegisterI32, 0 ,
36008 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRH), 0|OPFL_Chain|OPFL_MemRefs,
36009 6, 8, 3, 4, 5, 9, 10,
36010 66,
36011 OPC_CheckPatternPredicate, 10,
36012 OPC_Scope, 30,
36013 OPC_CheckComplexPat, /*CP*/26, /*#*/2,
36014 OPC_EmitMergeInputChains1_0,
36015 OPC_EmitInteger32, 28,
36016 OPC_EmitRegisterI32, 0 ,
36017 OPC_EmitNode1None, TARGET_VAL(ARM::tREV16),
36018 MVT::i32, 3, 1, 5, 6,
36019 OPC_EmitInteger32, 28,
36020 OPC_EmitRegisterI32, 0 ,
36021 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRHi), 0|OPFL_Chain|OPFL_MemRefs,
36022 5, 7, 3, 4, 8, 9,
36023 30,
36024 OPC_CheckComplexPat, /*CP*/17, /*#*/2,
36025 OPC_EmitMergeInputChains1_0,
36026 OPC_EmitInteger32, 28,
36027 OPC_EmitRegisterI32, 0 ,
36028 OPC_EmitNode1None, TARGET_VAL(ARM::tREV16),
36029 MVT::i32, 3, 1, 5, 6,
36030 OPC_EmitInteger32, 28,
36031 OPC_EmitRegisterI32, 0 ,
36032 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRHr), 0|OPFL_Chain|OPFL_MemRefs,
36033 5, 7, 3, 4, 8, 9,
36034 0,
36035 0,
36036 47|128,1, TARGET_VAL(ARMISD::VGETLANEu),
36037 OPC_RecordChild0,
36038 OPC_Scope, 42,
36039 OPC_CheckChild0Type, MVT::v8i8,
36040 OPC_RecordChild1,
36041 OPC_MoveChild1,
36042 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36043 OPC_MoveParent,
36044 OPC_MoveParent,
36045 OPC_RecordChild2,
36046 OPC_RecordChild3,
36047 OPC_CheckChild3TypeI32,
36048 OPC_CheckPredicate, 21,
36049 OPC_CheckPredicate6,
36050 OPC_CheckPredicate3,
36051 OPC_CheckTypeI32,
36052 OPC_CheckPatternPredicate1,
36053 OPC_CheckComplexPat0, /*#*/3,
36054 OPC_CheckComplexPat, /*CP*/29, /*#*/4,
36055 OPC_EmitMergeInputChains1_0,
36056 OPC_EmitConvertToTarget2,
36057 OPC_EmitInteger32, 28,
36058 OPC_EmitRegisterI32, 0 ,
36059 OPC_MorphNodeTo1, TARGET_VAL(ARM::VST1LNd8_UPD), 0|OPFL_Chain|OPFL_MemRefs,
36060 MVT::i32, 7, 5, 6, 7, 1, 8, 9, 10,
36061 42,
36062 OPC_CheckChild0Type, MVT::v4i16,
36063 OPC_RecordChild1,
36064 OPC_MoveChild1,
36065 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36066 OPC_MoveParent,
36067 OPC_MoveParent,
36068 OPC_RecordChild2,
36069 OPC_RecordChild3,
36070 OPC_CheckChild3TypeI32,
36071 OPC_CheckPredicate, 21,
36072 OPC_CheckPredicate6,
36073 OPC_CheckPredicate4,
36074 OPC_CheckTypeI32,
36075 OPC_CheckPatternPredicate1,
36076 OPC_CheckComplexPat0, /*#*/3,
36077 OPC_CheckComplexPat, /*CP*/29, /*#*/4,
36078 OPC_EmitMergeInputChains1_0,
36079 OPC_EmitConvertToTarget2,
36080 OPC_EmitInteger32, 28,
36081 OPC_EmitRegisterI32, 0 ,
36082 OPC_MorphNodeTo1, TARGET_VAL(ARM::VST1LNd16_UPD), 0|OPFL_Chain|OPFL_MemRefs,
36083 MVT::i32, 7, 5, 6, 7, 1, 8, 9, 10,
36084 42,
36085 OPC_CheckChild0Type, MVT::v16i8,
36086 OPC_RecordChild1,
36087 OPC_MoveChild1,
36088 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36089 OPC_MoveParent,
36090 OPC_MoveParent,
36091 OPC_RecordChild2,
36092 OPC_RecordChild3,
36093 OPC_CheckChild3TypeI32,
36094 OPC_CheckPredicate, 21,
36095 OPC_CheckPredicate6,
36096 OPC_CheckPredicate3,
36097 OPC_CheckTypeI32,
36098 OPC_CheckPatternPredicate1,
36099 OPC_CheckComplexPat0, /*#*/3,
36100 OPC_CheckComplexPat, /*CP*/29, /*#*/4,
36101 OPC_EmitMergeInputChains1_0,
36102 OPC_EmitConvertToTarget2,
36103 OPC_EmitInteger32, 28,
36104 OPC_EmitRegisterI32, 0 ,
36105 OPC_MorphNodeTo1, TARGET_VAL(ARM::VST1LNq8Pseudo_UPD), 0|OPFL_Chain|OPFL_MemRefs,
36106 MVT::i32, 7, 5, 6, 7, 1, 8, 9, 10,
36107 42,
36108 OPC_CheckChild0Type, MVT::v8i16,
36109 OPC_RecordChild1,
36110 OPC_MoveChild1,
36111 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36112 OPC_MoveParent,
36113 OPC_MoveParent,
36114 OPC_RecordChild2,
36115 OPC_RecordChild3,
36116 OPC_CheckChild3TypeI32,
36117 OPC_CheckPredicate, 21,
36118 OPC_CheckPredicate6,
36119 OPC_CheckPredicate4,
36120 OPC_CheckTypeI32,
36121 OPC_CheckPatternPredicate1,
36122 OPC_CheckComplexPat0, /*#*/3,
36123 OPC_CheckComplexPat, /*CP*/29, /*#*/4,
36124 OPC_EmitMergeInputChains1_0,
36125 OPC_EmitConvertToTarget2,
36126 OPC_EmitInteger32, 28,
36127 OPC_EmitRegisterI32, 0 ,
36128 OPC_MorphNodeTo1, TARGET_VAL(ARM::VST1LNq16Pseudo_UPD), 0|OPFL_Chain|OPFL_MemRefs,
36129 MVT::i32, 7, 5, 6, 7, 1, 8, 9, 10,
36130 0,
36131 88, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
36132 OPC_RecordChild0,
36133 OPC_Scope, 42,
36134 OPC_CheckChild0Type, MVT::v2i32,
36135 OPC_RecordChild1,
36136 OPC_MoveChild1,
36137 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36138 OPC_MoveParent,
36139 OPC_CheckTypeI32,
36140 OPC_MoveParent,
36141 OPC_RecordChild2,
36142 OPC_RecordChild3,
36143 OPC_CheckChild3TypeI32,
36144 OPC_CheckPredicate0,
36145 OPC_CheckPredicate6,
36146 OPC_CheckTypeI32,
36147 OPC_CheckPatternPredicate1,
36148 OPC_CheckComplexPat, /*CP*/8, /*#*/3,
36149 OPC_CheckComplexPat, /*CP*/29, /*#*/4,
36150 OPC_EmitMergeInputChains1_0,
36151 OPC_EmitConvertToTarget2,
36152 OPC_EmitInteger32, 28,
36153 OPC_EmitRegisterI32, 0 ,
36154 OPC_MorphNodeTo1, TARGET_VAL(ARM::VST1LNd32_UPD), 0|OPFL_Chain|OPFL_MemRefs,
36155 MVT::i32, 7, 5, 6, 7, 1, 8, 9, 10,
36156 41,
36157 OPC_CheckChild0Type, MVT::v4i32,
36158 OPC_RecordChild1,
36159 OPC_MoveChild1,
36160 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36161 OPC_MoveParent,
36162 OPC_CheckTypeI32,
36163 OPC_MoveParent,
36164 OPC_RecordChild2,
36165 OPC_RecordChild3,
36166 OPC_CheckChild3TypeI32,
36167 OPC_CheckPredicate0,
36168 OPC_CheckPredicate6,
36169 OPC_CheckTypeI32,
36170 OPC_CheckPatternPredicate1,
36171 OPC_CheckComplexPat0, /*#*/3,
36172 OPC_CheckComplexPat, /*CP*/29, /*#*/4,
36173 OPC_EmitMergeInputChains1_0,
36174 OPC_EmitConvertToTarget2,
36175 OPC_EmitInteger32, 28,
36176 OPC_EmitRegisterI32, 0 ,
36177 OPC_MorphNodeTo1, TARGET_VAL(ARM::VST1LNq32Pseudo_UPD), 0|OPFL_Chain|OPFL_MemRefs,
36178 MVT::i32, 7, 5, 6, 7, 1, 8, 9, 10,
36179 0,
36180 0,
36181 89|128,1,
36182 OPC_RecordChild1,
36183 OPC_CheckChild1TypeI32,
36184 OPC_RecordChild2,
36185 OPC_Scope, 74,
36186 OPC_CheckChild2TypeI32,
36187 OPC_CheckPredicate7,
36188 OPC_Scope, 20,
36189 OPC_CheckPredicate0,
36190 OPC_CheckPatternPredicate3,
36191 OPC_CheckComplexPat, /*CP*/22, /*#*/2,
36192 OPC_EmitMergeInputChains1_0,
36193 OPC_EmitInteger32, 28,
36194 OPC_EmitRegisterI32, 0 ,
36195 OPC_MorphNodeTo0, TARGET_VAL(ARM::PICSTR), 0|OPFL_Chain|OPFL_MemRefs,
36196 5, 1, 3, 4, 5, 6,
36197 48,
36198 OPC_CheckPredicate, 21,
36199 OPC_Scope, 21,
36200 OPC_CheckPredicate, 43,
36201 OPC_CheckPatternPredicate3,
36202 OPC_CheckComplexPat, /*CP*/22, /*#*/2,
36203 OPC_EmitMergeInputChains1_0,
36204 OPC_EmitInteger32, 28,
36205 OPC_EmitRegisterI32, 0 ,
36206 OPC_MorphNodeTo0, TARGET_VAL(ARM::PICSTRH), 0|OPFL_Chain|OPFL_MemRefs,
36207 5, 1, 3, 4, 5, 6,
36208 21,
36209 OPC_CheckPredicate, 44,
36210 OPC_CheckPatternPredicate3,
36211 OPC_CheckComplexPat, /*CP*/22, /*#*/2,
36212 OPC_EmitMergeInputChains1_0,
36213 OPC_EmitInteger32, 28,
36214 OPC_EmitRegisterI32, 0 ,
36215 OPC_MorphNodeTo0, TARGET_VAL(ARM::PICSTRB), 0|OPFL_Chain|OPFL_MemRefs,
36216 5, 1, 3, 4, 5, 6,
36217 0,
36218 0,
36219 7|128,1,
36220 OPC_RecordChild3,
36221 OPC_CheckChild3TypeI32,
36222 OPC_CheckTypeI32,
36223 OPC_Scope, 49,
36224 OPC_CheckPredicate0,
36225 OPC_CheckPredicate6,
36226 OPC_CheckPatternPredicate3,
36227 OPC_CheckComplexPat1, /*#*/2,
36228 OPC_Scope, 20,
36229 OPC_CheckComplexPat, /*CP*/34, /*#*/3,
36230 OPC_EmitMergeInputChains1_0,
36231 OPC_EmitInteger32, 28,
36232 OPC_EmitRegisterI32, 0 ,
36233 OPC_MorphNodeTo1, TARGET_VAL(ARM::STR_POST_REG), 0|OPFL_Chain|OPFL_MemRefs,
36234 MVT::i32, 6, 1, 4, 5, 6, 7, 8,
36235 20,
36236 OPC_CheckComplexPat, /*CP*/35, /*#*/3,
36237 OPC_EmitMergeInputChains1_0,
36238 OPC_EmitInteger32, 28,
36239 OPC_EmitRegisterI32, 0 ,
36240 OPC_MorphNodeTo1, TARGET_VAL(ARM::STR_POST_IMM), 0|OPFL_Chain|OPFL_MemRefs,
36241 MVT::i32, 6, 1, 4, 5, 6, 7, 8,
36242 0,
36243 79,
36244 OPC_CheckPredicate, 21,
36245 OPC_CheckPredicate6,
36246 OPC_Scope, 48,
36247 OPC_CheckPredicate3,
36248 OPC_CheckPatternPredicate3,
36249 OPC_CheckComplexPat1, /*#*/2,
36250 OPC_Scope, 20,
36251 OPC_CheckComplexPat, /*CP*/34, /*#*/3,
36252 OPC_EmitMergeInputChains1_0,
36253 OPC_EmitInteger32, 28,
36254 OPC_EmitRegisterI32, 0 ,
36255 OPC_MorphNodeTo1, TARGET_VAL(ARM::STRB_POST_REG), 0|OPFL_Chain|OPFL_MemRefs,
36256 MVT::i32, 6, 1, 4, 5, 6, 7, 8,
36257 20,
36258 OPC_CheckComplexPat, /*CP*/35, /*#*/3,
36259 OPC_EmitMergeInputChains1_0,
36260 OPC_EmitInteger32, 28,
36261 OPC_EmitRegisterI32, 0 ,
36262 OPC_MorphNodeTo1, TARGET_VAL(ARM::STRB_POST_IMM), 0|OPFL_Chain|OPFL_MemRefs,
36263 MVT::i32, 6, 1, 4, 5, 6, 7, 8,
36264 0,
36265 24,
36266 OPC_CheckPredicate4,
36267 OPC_CheckPatternPredicate3,
36268 OPC_CheckComplexPat1, /*#*/2,
36269 OPC_CheckComplexPat, /*CP*/39, /*#*/3,
36270 OPC_EmitMergeInputChains1_0,
36271 OPC_EmitInteger32, 28,
36272 OPC_EmitRegisterI32, 0 ,
36273 OPC_MorphNodeTo1, TARGET_VAL(ARM::STRH_POST), 0|OPFL_Chain|OPFL_MemRefs,
36274 MVT::i32, 6, 1, 4, 5, 6, 7, 8,
36275 0,
36276 0,
36277 0,
36278 124|128,2,
36279 OPC_MoveChild1,
36280 OPC_SwitchOpcode , 23|128,1, TARGET_VAL(ARMISD::VGETLANEu),
36281 OPC_RecordChild0,
36282 OPC_Scope, 36,
36283 OPC_CheckChild0Type, MVT::v8i8,
36284 OPC_RecordChild1,
36285 OPC_MoveChild1,
36286 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36287 OPC_MoveParent,
36288 OPC_MoveParent,
36289 OPC_RecordChild2,
36290 OPC_CheckChild2TypeI32,
36291 OPC_CheckPredicate7,
36292 OPC_CheckPredicate, 21,
36293 OPC_CheckPredicate, 44,
36294 OPC_CheckPatternPredicate1,
36295 OPC_CheckComplexPat0, /*#*/3,
36296 OPC_EmitMergeInputChains1_0,
36297 OPC_EmitConvertToTarget2,
36298 OPC_EmitInteger32, 28,
36299 OPC_EmitRegisterI32, 0 ,
36300 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1LNd8), 0|OPFL_Chain|OPFL_MemRefs,
36301 6, 4, 5, 1, 6, 7, 8,
36302 36,
36303 OPC_CheckChild0Type, MVT::v4i16,
36304 OPC_RecordChild1,
36305 OPC_MoveChild1,
36306 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36307 OPC_MoveParent,
36308 OPC_MoveParent,
36309 OPC_RecordChild2,
36310 OPC_CheckChild2TypeI32,
36311 OPC_CheckPredicate7,
36312 OPC_CheckPredicate, 21,
36313 OPC_CheckPredicate, 43,
36314 OPC_CheckPatternPredicate1,
36315 OPC_CheckComplexPat0, /*#*/3,
36316 OPC_EmitMergeInputChains1_0,
36317 OPC_EmitConvertToTarget2,
36318 OPC_EmitInteger32, 28,
36319 OPC_EmitRegisterI32, 0 ,
36320 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
36321 6, 4, 5, 1, 6, 7, 8,
36322 36,
36323 OPC_CheckChild0Type, MVT::v16i8,
36324 OPC_RecordChild1,
36325 OPC_MoveChild1,
36326 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36327 OPC_MoveParent,
36328 OPC_MoveParent,
36329 OPC_RecordChild2,
36330 OPC_CheckChild2TypeI32,
36331 OPC_CheckPredicate7,
36332 OPC_CheckPredicate, 21,
36333 OPC_CheckPredicate, 44,
36334 OPC_CheckPatternPredicate1,
36335 OPC_CheckComplexPat0, /*#*/3,
36336 OPC_EmitMergeInputChains1_0,
36337 OPC_EmitConvertToTarget2,
36338 OPC_EmitInteger32, 28,
36339 OPC_EmitRegisterI32, 0 ,
36340 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1LNq8Pseudo), 0|OPFL_Chain|OPFL_MemRefs,
36341 6, 4, 5, 1, 6, 7, 8,
36342 36,
36343 OPC_CheckChild0Type, MVT::v8i16,
36344 OPC_RecordChild1,
36345 OPC_MoveChild1,
36346 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36347 OPC_MoveParent,
36348 OPC_MoveParent,
36349 OPC_RecordChild2,
36350 OPC_CheckChild2TypeI32,
36351 OPC_CheckPredicate7,
36352 OPC_CheckPredicate, 21,
36353 OPC_CheckPredicate, 43,
36354 OPC_CheckPatternPredicate1,
36355 OPC_CheckComplexPat0, /*#*/3,
36356 OPC_EmitMergeInputChains1_0,
36357 OPC_EmitConvertToTarget2,
36358 OPC_EmitInteger32, 28,
36359 OPC_EmitRegisterI32, 0 ,
36360 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1LNq16Pseudo), 0|OPFL_Chain|OPFL_MemRefs,
36361 6, 4, 5, 1, 6, 7, 8,
36362 0,
36363 90|128,1, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
36364 OPC_RecordChild0,
36365 OPC_Scope, 35,
36366 OPC_CheckChild0Type, MVT::v2i32,
36367 OPC_RecordChild1,
36368 OPC_MoveChild1,
36369 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36370 OPC_MoveParent,
36371 OPC_CheckTypeI32,
36372 OPC_MoveParent,
36373 OPC_RecordChild2,
36374 OPC_CheckChild2TypeI32,
36375 OPC_CheckPredicate7,
36376 OPC_CheckPredicate0,
36377 OPC_CheckPatternPredicate1,
36378 OPC_CheckComplexPat, /*CP*/8, /*#*/3,
36379 OPC_EmitMergeInputChains1_0,
36380 OPC_EmitConvertToTarget2,
36381 OPC_EmitInteger32, 28,
36382 OPC_EmitRegisterI32, 0 ,
36383 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
36384 6, 4, 5, 1, 6, 7, 8,
36385 34,
36386 OPC_CheckChild0Type, MVT::v4i32,
36387 OPC_RecordChild1,
36388 OPC_MoveChild1,
36389 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36390 OPC_MoveParent,
36391 OPC_CheckTypeI32,
36392 OPC_MoveParent,
36393 OPC_RecordChild2,
36394 OPC_CheckChild2TypeI32,
36395 OPC_CheckPredicate7,
36396 OPC_CheckPredicate0,
36397 OPC_CheckPatternPredicate1,
36398 OPC_CheckComplexPat0, /*#*/3,
36399 OPC_EmitMergeInputChains1_0,
36400 OPC_EmitConvertToTarget2,
36401 OPC_EmitInteger32, 28,
36402 OPC_EmitRegisterI32, 0 ,
36403 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1LNq32Pseudo), 0|OPFL_Chain|OPFL_MemRefs,
36404 6, 4, 5, 1, 6, 7, 8,
36405 35,
36406 OPC_CheckChild0Type, MVT::v2f32,
36407 OPC_RecordChild1,
36408 OPC_MoveChild1,
36409 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36410 OPC_MoveParent,
36411 OPC_CheckType, MVT::f32,
36412 OPC_MoveParent,
36413 OPC_RecordChild2,
36414 OPC_CheckChild2TypeI32,
36415 OPC_CheckPredicate7,
36416 OPC_CheckPredicate0,
36417 OPC_CheckPatternPredicate1,
36418 OPC_CheckComplexPat0, /*#*/3,
36419 OPC_EmitMergeInputChains1_0,
36420 OPC_EmitConvertToTarget2,
36421 OPC_EmitInteger32, 28,
36422 OPC_EmitRegisterI32, 0 ,
36423 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
36424 6, 4, 5, 1, 6, 7, 8,
36425 35,
36426 OPC_CheckChild0Type, MVT::v4f32,
36427 OPC_RecordChild1,
36428 OPC_MoveChild1,
36429 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36430 OPC_MoveParent,
36431 OPC_CheckType, MVT::f32,
36432 OPC_MoveParent,
36433 OPC_RecordChild2,
36434 OPC_CheckChild2TypeI32,
36435 OPC_CheckPredicate7,
36436 OPC_CheckPredicate0,
36437 OPC_CheckPatternPredicate1,
36438 OPC_CheckComplexPat0, /*#*/3,
36439 OPC_EmitMergeInputChains1_0,
36440 OPC_EmitConvertToTarget2,
36441 OPC_EmitInteger32, 28,
36442 OPC_EmitRegisterI32, 0 ,
36443 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1LNq32Pseudo), 0|OPFL_Chain|OPFL_MemRefs,
36444 6, 4, 5, 1, 6, 7, 8,
36445 35,
36446 OPC_CheckChild0Type, MVT::v4f16,
36447 OPC_RecordChild1,
36448 OPC_MoveChild1,
36449 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36450 OPC_MoveParent,
36451 OPC_CheckType, MVT::f16,
36452 OPC_MoveParent,
36453 OPC_RecordChild2,
36454 OPC_CheckChild2TypeI32,
36455 OPC_CheckPredicate7,
36456 OPC_CheckPredicate0,
36457 OPC_CheckPatternPredicate1,
36458 OPC_CheckComplexPat0, /*#*/3,
36459 OPC_EmitMergeInputChains1_0,
36460 OPC_EmitConvertToTarget2,
36461 OPC_EmitInteger32, 28,
36462 OPC_EmitRegisterI32, 0 ,
36463 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
36464 6, 4, 5, 1, 6, 7, 8,
36465 35,
36466 OPC_CheckChild0Type, MVT::v8f16,
36467 OPC_RecordChild1,
36468 OPC_MoveChild1,
36469 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
36470 OPC_MoveParent,
36471 OPC_CheckType, MVT::f16,
36472 OPC_MoveParent,
36473 OPC_RecordChild2,
36474 OPC_CheckChild2TypeI32,
36475 OPC_CheckPredicate7,
36476 OPC_CheckPredicate0,
36477 OPC_CheckPatternPredicate1,
36478 OPC_CheckComplexPat0, /*#*/3,
36479 OPC_EmitMergeInputChains1_0,
36480 OPC_EmitConvertToTarget2,
36481 OPC_EmitInteger32, 28,
36482 OPC_EmitRegisterI32, 0 ,
36483 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1LNq16Pseudo), 0|OPFL_Chain|OPFL_MemRefs,
36484 6, 4, 5, 1, 6, 7, 8,
36485 0,
36486 0,
36487 29|128,2,
36488 OPC_RecordChild1,
36489 OPC_Scope, 113|128,1,
36490 OPC_CheckChild1TypeI32,
36491 OPC_RecordChild2,
36492 OPC_Scope, 22|128,1,
36493 OPC_CheckChild2TypeI32,
36494 OPC_CheckPredicate7,
36495 OPC_Scope, 21,
36496 OPC_CheckPredicate0,
36497 OPC_CheckPatternPredicate3,
36498 OPC_CheckComplexPat, /*CP*/19, /*#*/2,
36499 OPC_EmitMergeInputChains1_0,
36500 OPC_EmitInteger32, 28,
36501 OPC_EmitRegisterI32, 0 ,
36502 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRrs), 0|OPFL_Chain|OPFL_MemRefs,
36503 6, 1, 3, 4, 5, 6, 7,
36504 50,
36505 OPC_CheckPredicate, 21,
36506 OPC_Scope, 22,
36507 OPC_CheckPredicate, 44,
36508 OPC_CheckPatternPredicate3,
36509 OPC_CheckComplexPat, /*CP*/19, /*#*/2,
36510 OPC_EmitMergeInputChains1_0,
36511 OPC_EmitInteger32, 28,
36512 OPC_EmitRegisterI32, 0 ,
36513 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRBrs), 0|OPFL_Chain|OPFL_MemRefs,
36514 6, 1, 3, 4, 5, 6, 7,
36515 22,
36516 OPC_CheckPredicate, 43,
36517 OPC_CheckPatternPredicate3,
36518 OPC_CheckComplexPat, /*CP*/21, /*#*/2,
36519 OPC_EmitMergeInputChains1_0,
36520 OPC_EmitInteger32, 28,
36521 OPC_EmitRegisterI32, 0 ,
36522 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRH), 0|OPFL_Chain|OPFL_MemRefs,
36523 6, 1, 3, 4, 5, 6, 7,
36524 0,
36525 21,
36526 OPC_CheckPredicate0,
36527 OPC_CheckPatternPredicate4,
36528 OPC_CheckComplexPat, /*CP*/15, /*#*/2,
36529 OPC_EmitMergeInputChains1_0,
36530 OPC_EmitInteger32, 28,
36531 OPC_EmitRegisterI32, 0 ,
36532 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRs), 0|OPFL_Chain|OPFL_MemRefs,
36533 6, 1, 3, 4, 5, 6, 7,
36534 50,
36535 OPC_CheckPredicate, 21,
36536 OPC_Scope, 22,
36537 OPC_CheckPredicate, 44,
36538 OPC_CheckPatternPredicate4,
36539 OPC_CheckComplexPat, /*CP*/15, /*#*/2,
36540 OPC_EmitMergeInputChains1_0,
36541 OPC_EmitInteger32, 28,
36542 OPC_EmitRegisterI32, 0 ,
36543 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRBs), 0|OPFL_Chain|OPFL_MemRefs,
36544 6, 1, 3, 4, 5, 6, 7,
36545 22,
36546 OPC_CheckPredicate, 43,
36547 OPC_CheckPatternPredicate4,
36548 OPC_CheckComplexPat, /*CP*/15, /*#*/2,
36549 OPC_EmitMergeInputChains1_0,
36550 OPC_EmitInteger32, 28,
36551 OPC_EmitRegisterI32, 0 ,
36552 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRHs), 0|OPFL_Chain|OPFL_MemRefs,
36553 6, 1, 3, 4, 5, 6, 7,
36554 0,
36555 0,
36556 84,
36557 OPC_RecordChild3,
36558 OPC_CheckChild3TypeI32,
36559 OPC_CheckTypeI32,
36560 OPC_Scope, 24,
36561 OPC_CheckPredicate0,
36562 OPC_CheckPredicate6,
36563 OPC_CheckPatternPredicate4,
36564 OPC_CheckComplexPat1, /*#*/2,
36565 OPC_CheckComplexPat, /*CP*/30, /*#*/3,
36566 OPC_EmitMergeInputChains1_0,
36567 OPC_EmitInteger32, 28,
36568 OPC_EmitRegisterI32, 0 ,
36569 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2STR_POST), 0|OPFL_Chain|OPFL_MemRefs,
36570 MVT::i32, 5, 1, 4, 5, 6, 7,
36571 53,
36572 OPC_CheckPredicate, 21,
36573 OPC_CheckPredicate6,
36574 OPC_Scope, 23,
36575 OPC_CheckPredicate4,
36576 OPC_CheckPatternPredicate4,
36577 OPC_CheckComplexPat1, /*#*/2,
36578 OPC_CheckComplexPat, /*CP*/30, /*#*/3,
36579 OPC_EmitMergeInputChains1_0,
36580 OPC_EmitInteger32, 28,
36581 OPC_EmitRegisterI32, 0 ,
36582 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2STRH_POST), 0|OPFL_Chain|OPFL_MemRefs,
36583 MVT::i32, 5, 1, 4, 5, 6, 7,
36584 23,
36585 OPC_CheckPredicate3,
36586 OPC_CheckPatternPredicate4,
36587 OPC_CheckComplexPat1, /*#*/2,
36588 OPC_CheckComplexPat, /*CP*/30, /*#*/3,
36589 OPC_EmitMergeInputChains1_0,
36590 OPC_EmitInteger32, 28,
36591 OPC_EmitRegisterI32, 0 ,
36592 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2STRB_POST), 0|OPFL_Chain|OPFL_MemRefs,
36593 MVT::i32, 5, 1, 4, 5, 6, 7,
36594 0,
36595 0,
36596 0,
36597 38,
36598 OPC_CheckChild1Type, MVT::bf16,
36599 OPC_RecordChild2,
36600 OPC_CheckChild2TypeI32,
36601 OPC_CheckPredicate7,
36602 OPC_CheckPredicate0,
36603 OPC_CheckPredicate, 22,
36604 OPC_CheckPatternPredicate, 89,
36605 OPC_CheckComplexPat, /*CP*/21, /*#*/2,
36606 OPC_EmitMergeInputChains1_0,
36607 OPC_EmitStringInteger32, ARM::GPRRegClassID,
36608 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
36609 MVT::i32, 2, 1, 6,
36610 OPC_EmitInteger32, 28,
36611 OPC_EmitRegisterI32, 0 ,
36612 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRH), 0|OPFL_Chain|OPFL_MemRefs,
36613 6, 7, 3, 4, 5, 8, 9,
36614 0,
36615 121|128,2,
36616 OPC_MoveChild1,
36617 OPC_SwitchOpcode , 86, TARGET_VAL(ISD::FP_TO_SINT),
36618 OPC_RecordChild0,
36619 OPC_CheckTypeI32,
36620 OPC_Scope, 40,
36621 OPC_CheckChild0Type, MVT::f64,
36622 OPC_MoveParent,
36623 OPC_RecordChild2,
36624 OPC_CheckChild2TypeI32,
36625 OPC_CheckPredicate7,
36626 OPC_CheckPredicate0,
36627 OPC_CheckPredicate, 8,
36628 OPC_CheckPatternPredicate, 18,
36629 OPC_CheckComplexPat3, /*#*/2,
36630 OPC_EmitMergeInputChains1_0,
36631 OPC_EmitInteger32, 28,
36632 OPC_EmitRegisterI32, 0 ,
36633 OPC_EmitNode1None, TARGET_VAL(ARM::VTOSIZD),
36634 MVT::f32, 3, 1, 5, 6,
36635 OPC_EmitInteger32, 28,
36636 OPC_EmitRegisterI32, 0 ,
36637 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRS), 0|OPFL_Chain|OPFL_MemRefs,
36638 5, 7, 3, 4, 8, 9,
36639 40,
36640 OPC_CheckChild0Type, MVT::f32,
36641 OPC_MoveParent,
36642 OPC_RecordChild2,
36643 OPC_CheckChild2TypeI32,
36644 OPC_CheckPredicate7,
36645 OPC_CheckPredicate0,
36646 OPC_CheckPredicate, 8,
36647 OPC_CheckPatternPredicate, 26,
36648 OPC_CheckComplexPat3, /*#*/2,
36649 OPC_EmitMergeInputChains1_0,
36650 OPC_EmitInteger32, 28,
36651 OPC_EmitRegisterI32, 0 ,
36652 OPC_EmitNode1None, TARGET_VAL(ARM::VTOSIZS),
36653 MVT::f32, 3, 1, 5, 6,
36654 OPC_EmitInteger32, 28,
36655 OPC_EmitRegisterI32, 0 ,
36656 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRS), 0|OPFL_Chain|OPFL_MemRefs,
36657 5, 7, 3, 4, 8, 9,
36658 0,
36659 95, TARGET_VAL(ISD::FP_TO_SINT_SAT),
36660 OPC_RecordChild0,
36661 OPC_Scope, 45,
36662 OPC_CheckChild0Type, MVT::f64,
36663 OPC_MoveChild1,
36664 OPC_CheckValueType, MVT::i32,
36665 OPC_MoveParent,
36666 OPC_CheckTypeI32,
36667 OPC_MoveParent,
36668 OPC_RecordChild2,
36669 OPC_CheckChild2TypeI32,
36670 OPC_CheckPredicate7,
36671 OPC_CheckPredicate0,
36672 OPC_CheckPredicate, 8,
36673 OPC_CheckPatternPredicate, 18,
36674 OPC_CheckComplexPat3, /*#*/2,
36675 OPC_EmitMergeInputChains1_0,
36676 OPC_EmitInteger32, 28,
36677 OPC_EmitRegisterI32, 0 ,
36678 OPC_EmitNode1None, TARGET_VAL(ARM::VTOSIZD),
36679 MVT::f32, 3, 1, 5, 6,
36680 OPC_EmitInteger32, 28,
36681 OPC_EmitRegisterI32, 0 ,
36682 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRS), 0|OPFL_Chain|OPFL_MemRefs,
36683 5, 7, 3, 4, 8, 9,
36684 45,
36685 OPC_CheckChild0Type, MVT::f32,
36686 OPC_MoveChild1,
36687 OPC_CheckValueType, MVT::i32,
36688 OPC_MoveParent,
36689 OPC_CheckTypeI32,
36690 OPC_MoveParent,
36691 OPC_RecordChild2,
36692 OPC_CheckChild2TypeI32,
36693 OPC_CheckPredicate7,
36694 OPC_CheckPredicate0,
36695 OPC_CheckPredicate, 8,
36696 OPC_CheckPatternPredicate, 24,
36697 OPC_CheckComplexPat3, /*#*/2,
36698 OPC_EmitMergeInputChains1_0,
36699 OPC_EmitInteger32, 28,
36700 OPC_EmitRegisterI32, 0 ,
36701 OPC_EmitNode1None, TARGET_VAL(ARM::VTOSIZS),
36702 MVT::f32, 3, 1, 5, 6,
36703 OPC_EmitInteger32, 28,
36704 OPC_EmitRegisterI32, 0 ,
36705 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRS), 0|OPFL_Chain|OPFL_MemRefs,
36706 5, 7, 3, 4, 8, 9,
36707 0,
36708 86, TARGET_VAL(ISD::FP_TO_UINT),
36709 OPC_RecordChild0,
36710 OPC_CheckTypeI32,
36711 OPC_Scope, 40,
36712 OPC_CheckChild0Type, MVT::f64,
36713 OPC_MoveParent,
36714 OPC_RecordChild2,
36715 OPC_CheckChild2TypeI32,
36716 OPC_CheckPredicate7,
36717 OPC_CheckPredicate0,
36718 OPC_CheckPredicate, 8,
36719 OPC_CheckPatternPredicate, 18,
36720 OPC_CheckComplexPat3, /*#*/2,
36721 OPC_EmitMergeInputChains1_0,
36722 OPC_EmitInteger32, 28,
36723 OPC_EmitRegisterI32, 0 ,
36724 OPC_EmitNode1None, TARGET_VAL(ARM::VTOUIZD),
36725 MVT::f32, 3, 1, 5, 6,
36726 OPC_EmitInteger32, 28,
36727 OPC_EmitRegisterI32, 0 ,
36728 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRS), 0|OPFL_Chain|OPFL_MemRefs,
36729 5, 7, 3, 4, 8, 9,
36730 40,
36731 OPC_CheckChild0Type, MVT::f32,
36732 OPC_MoveParent,
36733 OPC_RecordChild2,
36734 OPC_CheckChild2TypeI32,
36735 OPC_CheckPredicate7,
36736 OPC_CheckPredicate0,
36737 OPC_CheckPredicate, 8,
36738 OPC_CheckPatternPredicate, 26,
36739 OPC_CheckComplexPat3, /*#*/2,
36740 OPC_EmitMergeInputChains1_0,
36741 OPC_EmitInteger32, 28,
36742 OPC_EmitRegisterI32, 0 ,
36743 OPC_EmitNode1None, TARGET_VAL(ARM::VTOUIZS),
36744 MVT::f32, 3, 1, 5, 6,
36745 OPC_EmitInteger32, 28,
36746 OPC_EmitRegisterI32, 0 ,
36747 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRS), 0|OPFL_Chain|OPFL_MemRefs,
36748 5, 7, 3, 4, 8, 9,
36749 0,
36750 95, TARGET_VAL(ISD::FP_TO_UINT_SAT),
36751 OPC_RecordChild0,
36752 OPC_Scope, 45,
36753 OPC_CheckChild0Type, MVT::f64,
36754 OPC_MoveChild1,
36755 OPC_CheckValueType, MVT::i32,
36756 OPC_MoveParent,
36757 OPC_CheckTypeI32,
36758 OPC_MoveParent,
36759 OPC_RecordChild2,
36760 OPC_CheckChild2TypeI32,
36761 OPC_CheckPredicate7,
36762 OPC_CheckPredicate0,
36763 OPC_CheckPredicate, 8,
36764 OPC_CheckPatternPredicate, 18,
36765 OPC_CheckComplexPat3, /*#*/2,
36766 OPC_EmitMergeInputChains1_0,
36767 OPC_EmitInteger32, 28,
36768 OPC_EmitRegisterI32, 0 ,
36769 OPC_EmitNode1None, TARGET_VAL(ARM::VTOUIZD),
36770 MVT::f32, 3, 1, 5, 6,
36771 OPC_EmitInteger32, 28,
36772 OPC_EmitRegisterI32, 0 ,
36773 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRS), 0|OPFL_Chain|OPFL_MemRefs,
36774 5, 7, 3, 4, 8, 9,
36775 45,
36776 OPC_CheckChild0Type, MVT::f32,
36777 OPC_MoveChild1,
36778 OPC_CheckValueType, MVT::i32,
36779 OPC_MoveParent,
36780 OPC_CheckTypeI32,
36781 OPC_MoveParent,
36782 OPC_RecordChild2,
36783 OPC_CheckChild2TypeI32,
36784 OPC_CheckPredicate7,
36785 OPC_CheckPredicate0,
36786 OPC_CheckPredicate, 8,
36787 OPC_CheckPatternPredicate, 24,
36788 OPC_CheckComplexPat3, /*#*/2,
36789 OPC_EmitMergeInputChains1_0,
36790 OPC_EmitInteger32, 28,
36791 OPC_EmitRegisterI32, 0 ,
36792 OPC_EmitNode1None, TARGET_VAL(ARM::VTOUIZS),
36793 MVT::f32, 3, 1, 5, 6,
36794 OPC_EmitInteger32, 28,
36795 OPC_EmitRegisterI32, 0 ,
36796 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRS), 0|OPFL_Chain|OPFL_MemRefs,
36797 5, 7, 3, 4, 8, 9,
36798 0,
36799 0,
36800 6|128,29,
36801 OPC_RecordChild1,
36802 OPC_Scope, 68|128,4,
36803 OPC_CheckChild1TypeI32,
36804 OPC_RecordChild2,
36805 OPC_Scope, 87|128,2,
36806 OPC_CheckChild2TypeI32,
36807 OPC_CheckPredicate7,
36808 OPC_Scope, 20,
36809 OPC_CheckPredicate0,
36810 OPC_CheckPatternPredicate3,
36811 OPC_CheckComplexPat, /*CP*/20, /*#*/2,
36812 OPC_EmitMergeInputChains1_0,
36813 OPC_EmitInteger32, 28,
36814 OPC_EmitRegisterI32, 0 ,
36815 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRi12), 0|OPFL_Chain|OPFL_MemRefs,
36816 5, 1, 3, 4, 5, 6,
36817 23,
36818 OPC_CheckPredicate, 21,
36819 OPC_CheckPredicate, 44,
36820 OPC_CheckPatternPredicate3,
36821 OPC_CheckComplexPat, /*CP*/20, /*#*/2,
36822 OPC_EmitMergeInputChains1_0,
36823 OPC_EmitInteger32, 28,
36824 OPC_EmitRegisterI32, 0 ,
36825 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRBi12), 0|OPFL_Chain|OPFL_MemRefs,
36826 5, 1, 3, 4, 5, 6,
36827 62,
36828 OPC_CheckPredicate0,
36829 OPC_CheckPatternPredicate, 10,
36830 OPC_Scope, 18,
36831 OPC_CheckComplexPat, /*CP*/31, /*#*/2,
36832 OPC_EmitMergeInputChains1_0,
36833 OPC_EmitInteger32, 28,
36834 OPC_EmitRegisterI32, 0 ,
36835 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRspi), 0|OPFL_Chain|OPFL_MemRefs,
36836 5, 1, 3, 4, 5, 6,
36837 18,
36838 OPC_CheckComplexPat, /*CP*/36, /*#*/2,
36839 OPC_EmitMergeInputChains1_0,
36840 OPC_EmitInteger32, 28,
36841 OPC_EmitRegisterI32, 0 ,
36842 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRi), 0|OPFL_Chain|OPFL_MemRefs,
36843 5, 1, 3, 4, 5, 6,
36844 18,
36845 OPC_CheckComplexPat, /*CP*/17, /*#*/2,
36846 OPC_EmitMergeInputChains1_0,
36847 OPC_EmitInteger32, 28,
36848 OPC_EmitRegisterI32, 0 ,
36849 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRr), 0|OPFL_Chain|OPFL_MemRefs,
36850 5, 1, 3, 4, 5, 6,
36851 0,
36852 94,
36853 OPC_CheckPredicate, 21,
36854 OPC_Scope, 44,
36855 OPC_CheckPredicate, 44,
36856 OPC_CheckPatternPredicate, 10,
36857 OPC_Scope, 18,
36858 OPC_CheckComplexPat, /*CP*/27, /*#*/2,
36859 OPC_EmitMergeInputChains1_0,
36860 OPC_EmitInteger32, 28,
36861 OPC_EmitRegisterI32, 0 ,
36862 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRBi), 0|OPFL_Chain|OPFL_MemRefs,
36863 5, 1, 3, 4, 5, 6,
36864 18,
36865 OPC_CheckComplexPat, /*CP*/17, /*#*/2,
36866 OPC_EmitMergeInputChains1_0,
36867 OPC_EmitInteger32, 28,
36868 OPC_EmitRegisterI32, 0 ,
36869 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRBr), 0|OPFL_Chain|OPFL_MemRefs,
36870 5, 1, 3, 4, 5, 6,
36871 0,
36872 44,
36873 OPC_CheckPredicate, 43,
36874 OPC_CheckPatternPredicate, 10,
36875 OPC_Scope, 18,
36876 OPC_CheckComplexPat, /*CP*/26, /*#*/2,
36877 OPC_EmitMergeInputChains1_0,
36878 OPC_EmitInteger32, 28,
36879 OPC_EmitRegisterI32, 0 ,
36880 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRHi), 0|OPFL_Chain|OPFL_MemRefs,
36881 5, 1, 3, 4, 5, 6,
36882 18,
36883 OPC_CheckComplexPat, /*CP*/17, /*#*/2,
36884 OPC_EmitMergeInputChains1_0,
36885 OPC_EmitInteger32, 28,
36886 OPC_EmitRegisterI32, 0 ,
36887 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRHr), 0|OPFL_Chain|OPFL_MemRefs,
36888 5, 1, 3, 4, 5, 6,
36889 0,
36890 0,
36891 42,
36892 OPC_CheckPredicate0,
36893 OPC_CheckPatternPredicate4,
36894 OPC_Scope, 18,
36895 OPC_CheckComplexPat, /*CP*/11, /*#*/2,
36896 OPC_EmitMergeInputChains1_0,
36897 OPC_EmitInteger32, 28,
36898 OPC_EmitRegisterI32, 0 ,
36899 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRi12), 0|OPFL_Chain|OPFL_MemRefs,
36900 5, 1, 3, 4, 5, 6,
36901 18,
36902 OPC_CheckComplexPat, /*CP*/16, /*#*/2,
36903 OPC_EmitMergeInputChains1_0,
36904 OPC_EmitInteger32, 28,
36905 OPC_EmitRegisterI32, 0 ,
36906 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRi8), 0|OPFL_Chain|OPFL_MemRefs,
36907 5, 1, 3, 4, 5, 6,
36908 0,
36909 92,
36910 OPC_CheckPredicate, 21,
36911 OPC_Scope, 43,
36912 OPC_CheckPredicate, 44,
36913 OPC_CheckPatternPredicate4,
36914 OPC_Scope, 18,
36915 OPC_CheckComplexPat, /*CP*/11, /*#*/2,
36916 OPC_EmitMergeInputChains1_0,
36917 OPC_EmitInteger32, 28,
36918 OPC_EmitRegisterI32, 0 ,
36919 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRBi12), 0|OPFL_Chain|OPFL_MemRefs,
36920 5, 1, 3, 4, 5, 6,
36921 18,
36922 OPC_CheckComplexPat, /*CP*/16, /*#*/2,
36923 OPC_EmitMergeInputChains1_0,
36924 OPC_EmitInteger32, 28,
36925 OPC_EmitRegisterI32, 0 ,
36926 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRBi8), 0|OPFL_Chain|OPFL_MemRefs,
36927 5, 1, 3, 4, 5, 6,
36928 0,
36929 43,
36930 OPC_CheckPredicate, 43,
36931 OPC_CheckPatternPredicate4,
36932 OPC_Scope, 18,
36933 OPC_CheckComplexPat, /*CP*/11, /*#*/2,
36934 OPC_EmitMergeInputChains1_0,
36935 OPC_EmitInteger32, 28,
36936 OPC_EmitRegisterI32, 0 ,
36937 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRHi12), 0|OPFL_Chain|OPFL_MemRefs,
36938 5, 1, 3, 4, 5, 6,
36939 18,
36940 OPC_CheckComplexPat, /*CP*/16, /*#*/2,
36941 OPC_EmitMergeInputChains1_0,
36942 OPC_EmitInteger32, 28,
36943 OPC_EmitRegisterI32, 0 ,
36944 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRHi8), 0|OPFL_Chain|OPFL_MemRefs,
36945 5, 1, 3, 4, 5, 6,
36946 0,
36947 0,
36948 0,
36949 78|128,1,
36950 OPC_RecordChild3,
36951 OPC_CheckChild3TypeI32,
36952 OPC_CheckTypeI32,
36953 OPC_Scope, 48,
36954 OPC_CheckPredicate0,
36955 OPC_CheckPredicate, 9,
36956 OPC_CheckPatternPredicate3,
36957 OPC_Scope, 20,
36958 OPC_CheckComplexPat, /*CP*/35, /*#*/3,
36959 OPC_EmitMergeInputChains1_0,
36960 OPC_EmitInteger32, 28,
36961 OPC_EmitRegisterI32, 0 ,
36962 OPC_MorphNodeTo1, TARGET_VAL(ARM::STRi_preidx), 0|OPFL_Chain|OPFL_MemRefs,
36963 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
36964 20,
36965 OPC_CheckComplexPat, /*CP*/34, /*#*/3,
36966 OPC_EmitMergeInputChains1_0,
36967 OPC_EmitInteger32, 28,
36968 OPC_EmitRegisterI32, 0 ,
36969 OPC_MorphNodeTo1, TARGET_VAL(ARM::STRr_preidx), 0|OPFL_Chain|OPFL_MemRefs,
36970 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
36971 0,
36972 76,
36973 OPC_CheckPredicate, 21,
36974 OPC_CheckPredicate, 9,
36975 OPC_Scope, 46,
36976 OPC_CheckPredicate3,
36977 OPC_CheckPatternPredicate3,
36978 OPC_Scope, 20,
36979 OPC_CheckComplexPat, /*CP*/35, /*#*/3,
36980 OPC_EmitMergeInputChains1_0,
36981 OPC_EmitInteger32, 28,
36982 OPC_EmitRegisterI32, 0 ,
36983 OPC_MorphNodeTo1, TARGET_VAL(ARM::STRBi_preidx), 0|OPFL_Chain|OPFL_MemRefs,
36984 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
36985 20,
36986 OPC_CheckComplexPat, /*CP*/34, /*#*/3,
36987 OPC_EmitMergeInputChains1_0,
36988 OPC_EmitInteger32, 28,
36989 OPC_EmitRegisterI32, 0 ,
36990 OPC_MorphNodeTo1, TARGET_VAL(ARM::STRBr_preidx), 0|OPFL_Chain|OPFL_MemRefs,
36991 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
36992 0,
36993 22,
36994 OPC_CheckPredicate4,
36995 OPC_CheckPatternPredicate3,
36996 OPC_CheckComplexPat, /*CP*/39, /*#*/3,
36997 OPC_EmitMergeInputChains1_0,
36998 OPC_EmitInteger32, 28,
36999 OPC_EmitRegisterI32, 0 ,
37000 OPC_MorphNodeTo1, TARGET_VAL(ARM::STRH_preidx), 0|OPFL_Chain|OPFL_MemRefs,
37001 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37002 0,
37003 23,
37004 OPC_CheckPredicate0,
37005 OPC_CheckPredicate, 9,
37006 OPC_CheckPatternPredicate4,
37007 OPC_CheckComplexPat, /*CP*/30, /*#*/3,
37008 OPC_EmitMergeInputChains1_0,
37009 OPC_EmitInteger32, 28,
37010 OPC_EmitRegisterI32, 0 ,
37011 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2STR_preidx), 0|OPFL_Chain|OPFL_MemRefs,
37012 MVT::i32, 5, 1, 2, 4, 5, 6,
37013 50,
37014 OPC_CheckPredicate, 21,
37015 OPC_CheckPredicate, 9,
37016 OPC_Scope, 21,
37017 OPC_CheckPredicate3,
37018 OPC_CheckPatternPredicate4,
37019 OPC_CheckComplexPat, /*CP*/30, /*#*/3,
37020 OPC_EmitMergeInputChains1_0,
37021 OPC_EmitInteger32, 28,
37022 OPC_EmitRegisterI32, 0 ,
37023 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2STRB_preidx), 0|OPFL_Chain|OPFL_MemRefs,
37024 MVT::i32, 5, 1, 2, 4, 5, 6,
37025 21,
37026 OPC_CheckPredicate4,
37027 OPC_CheckPatternPredicate4,
37028 OPC_CheckComplexPat, /*CP*/30, /*#*/3,
37029 OPC_EmitMergeInputChains1_0,
37030 OPC_EmitInteger32, 28,
37031 OPC_EmitRegisterI32, 0 ,
37032 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2STRH_preidx), 0|OPFL_Chain|OPFL_MemRefs,
37033 MVT::i32, 5, 1, 2, 4, 5, 6,
37034 0,
37035 0,
37036 22,
37037 OPC_CheckChild3Integer, 8,
37038 OPC_CheckPredicate0,
37039 OPC_CheckPredicate6,
37040 OPC_CheckTypeI32,
37041 OPC_CheckPatternPredicate, 10,
37042 OPC_EmitMergeInputChains1_0,
37043 OPC_EmitInteger32, 28,
37044 OPC_EmitRegisterI32, 0 ,
37045 OPC_MorphNodeTo1, TARGET_VAL(ARM::tSTMIA_UPD), 0|OPFL_Chain|OPFL_MemRefs,
37046 MVT::i32, 4, 2, 3, 4, 1,
37047 0,
37048 94,
37049 OPC_CheckChild1Type, MVT::f64,
37050 OPC_RecordChild2,
37051 OPC_CheckChild2TypeI32,
37052 OPC_CheckPredicate7,
37053 OPC_CheckPredicate0,
37054 OPC_Scope, 21,
37055 OPC_CheckPredicate, 8,
37056 OPC_CheckPatternPredicate, 35,
37057 OPC_CheckComplexPat3, /*#*/2,
37058 OPC_EmitMergeInputChains1_0,
37059 OPC_EmitInteger32, 28,
37060 OPC_EmitRegisterI32, 0 ,
37061 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRD), 0|OPFL_Chain|OPFL_MemRefs,
37062 5, 1, 3, 4, 5, 6,
37063 20,
37064 OPC_CheckPredicate, 38,
37065 OPC_CheckPatternPredicate6,
37066 OPC_CheckComplexPat0, /*#*/2,
37067 OPC_EmitMergeInputChains1_0,
37068 OPC_EmitInteger32, 28,
37069 OPC_EmitRegisterI32, 0 ,
37070 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1d16), 0|OPFL_Chain|OPFL_MemRefs,
37071 5, 3, 4, 1, 5, 6,
37072 20,
37073 OPC_CheckPredicate, 39,
37074 OPC_CheckPatternPredicate6,
37075 OPC_CheckComplexPat0, /*#*/2,
37076 OPC_EmitMergeInputChains1_0,
37077 OPC_EmitInteger32, 28,
37078 OPC_EmitRegisterI32, 0 ,
37079 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1d8), 0|OPFL_Chain|OPFL_MemRefs,
37080 5, 3, 4, 1, 5, 6,
37081 21,
37082 OPC_CheckPredicate, 101,
37083 OPC_CheckPatternPredicate, 8,
37084 OPC_CheckComplexPat0, /*#*/2,
37085 OPC_EmitMergeInputChains1_0,
37086 OPC_EmitInteger32, 28,
37087 OPC_EmitRegisterI32, 0 ,
37088 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1d64), 0|OPFL_Chain|OPFL_MemRefs,
37089 5, 3, 4, 1, 5, 6,
37090 0,
37091 27,
37092 OPC_CheckChild1Type, MVT::f32,
37093 OPC_RecordChild2,
37094 OPC_CheckChild2TypeI32,
37095 OPC_CheckPredicate7,
37096 OPC_CheckPredicate0,
37097 OPC_CheckPredicate, 8,
37098 OPC_CheckPatternPredicate, 35,
37099 OPC_CheckComplexPat3, /*#*/2,
37100 OPC_EmitMergeInputChains1_0,
37101 OPC_EmitInteger32, 28,
37102 OPC_EmitRegisterI32, 0 ,
37103 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRS), 0|OPFL_Chain|OPFL_MemRefs,
37104 5, 1, 3, 4, 5, 6,
37105 28,
37106 OPC_CheckChild1Type, MVT::f16,
37107 OPC_RecordChild2,
37108 OPC_CheckChild2TypeI32,
37109 OPC_CheckPredicate7,
37110 OPC_CheckPredicate0,
37111 OPC_CheckPredicate, 22,
37112 OPC_CheckPatternPredicate, 45,
37113 OPC_CheckComplexPat, /*CP*/37, /*#*/2,
37114 OPC_EmitMergeInputChains1_0,
37115 OPC_EmitInteger32, 28,
37116 OPC_EmitRegisterI32, 0 ,
37117 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRH), 0|OPFL_Chain|OPFL_MemRefs,
37118 5, 1, 3, 4, 5, 6,
37119 61,
37120 OPC_CheckChild1Type, MVT::bf16,
37121 OPC_RecordChild2,
37122 OPC_CheckChild2TypeI32,
37123 OPC_CheckPredicate7,
37124 OPC_CheckPredicate0,
37125 OPC_CheckPredicate, 22,
37126 OPC_Scope, 20,
37127 OPC_CheckPatternPredicate, 45,
37128 OPC_CheckComplexPat, /*CP*/37, /*#*/2,
37129 OPC_EmitMergeInputChains1_0,
37130 OPC_EmitInteger32, 28,
37131 OPC_EmitRegisterI32, 0 ,
37132 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTRH), 0|OPFL_Chain|OPFL_MemRefs,
37133 5, 1, 3, 4, 5, 6,
37134 29,
37135 OPC_CheckPatternPredicate, 90,
37136 OPC_CheckComplexPat, /*CP*/11, /*#*/2,
37137 OPC_EmitMergeInputChains1_0,
37138 OPC_EmitStringInteger32, ARM::GPRRegClassID,
37139 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
37140 MVT::i32, 2, 1, 5,
37141 OPC_EmitInteger32, 28,
37142 OPC_EmitRegisterI32, 0 ,
37143 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRHi12), 0|OPFL_Chain|OPFL_MemRefs,
37144 5, 6, 3, 4, 7, 8,
37145 0,
37146 90|128,3,
37147 OPC_CheckChild1Type, MVT::v2f64,
37148 OPC_RecordChild2,
37149 OPC_Scope, 20|128,2,
37150 OPC_CheckChild2TypeI32,
37151 OPC_CheckPredicate7,
37152 OPC_CheckPredicate0,
37153 OPC_Scope, 20,
37154 OPC_CheckPredicate, 102,
37155 OPC_CheckPatternPredicate1,
37156 OPC_CheckComplexPat0, /*#*/2,
37157 OPC_EmitMergeInputChains1_0,
37158 OPC_EmitInteger32, 28,
37159 OPC_EmitRegisterI32, 0 ,
37160 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1q64), 0|OPFL_Chain|OPFL_MemRefs,
37161 5, 3, 4, 1, 5, 6,
37162 20,
37163 OPC_CheckPredicate, 90,
37164 OPC_CheckPatternPredicate6,
37165 OPC_CheckComplexPat0, /*#*/2,
37166 OPC_EmitMergeInputChains1_0,
37167 OPC_EmitInteger32, 28,
37168 OPC_EmitRegisterI32, 0 ,
37169 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1q32), 0|OPFL_Chain|OPFL_MemRefs,
37170 5, 3, 4, 1, 5, 6,
37171 20,
37172 OPC_CheckPredicate, 38,
37173 OPC_CheckPatternPredicate6,
37174 OPC_CheckComplexPat0, /*#*/2,
37175 OPC_EmitMergeInputChains1_0,
37176 OPC_EmitInteger32, 28,
37177 OPC_EmitRegisterI32, 0 ,
37178 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1q16), 0|OPFL_Chain|OPFL_MemRefs,
37179 5, 3, 4, 1, 5, 6,
37180 45,
37181 OPC_CheckPredicate, 39,
37182 OPC_Scope, 18,
37183 OPC_CheckPatternPredicate6,
37184 OPC_CheckComplexPat0, /*#*/2,
37185 OPC_EmitMergeInputChains1_0,
37186 OPC_EmitInteger32, 28,
37187 OPC_EmitRegisterI32, 0 ,
37188 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1q8), 0|OPFL_Chain|OPFL_MemRefs,
37189 5, 3, 4, 1, 5, 6,
37190 21,
37191 OPC_CheckPatternPredicate7,
37192 OPC_CheckComplexPat6, /*#*/2,
37193 OPC_EmitMergeInputChains1_0,
37194 OPC_EmitInteger32, 0,
37195 OPC_EmitRegisterI32, 0 ,
37196 OPC_EmitRegisterI32, 0 ,
37197 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
37198 6, 1, 3, 4, 5, 6, 7,
37199 0,
37200 24,
37201 OPC_CheckPredicate, 38,
37202 OPC_CheckPatternPredicate7,
37203 OPC_CheckComplexPat, /*CP*/12, /*#*/2,
37204 OPC_EmitMergeInputChains1_0,
37205 OPC_EmitInteger32, 0,
37206 OPC_EmitRegisterI32, 0 ,
37207 OPC_EmitRegisterI32, 0 ,
37208 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRHU16), 0|OPFL_Chain|OPFL_MemRefs,
37209 6, 1, 3, 4, 5, 6, 7,
37210 24,
37211 OPC_CheckPredicate, 8,
37212 OPC_CheckPatternPredicate7,
37213 OPC_CheckComplexPat, /*CP*/13, /*#*/2,
37214 OPC_EmitMergeInputChains1_0,
37215 OPC_EmitInteger32, 0,
37216 OPC_EmitRegisterI32, 0 ,
37217 OPC_EmitRegisterI32, 0 ,
37218 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRWU32), 0|OPFL_Chain|OPFL_MemRefs,
37219 6, 1, 3, 4, 5, 6, 7,
37220 33,
37221 OPC_CheckPredicate, 39,
37222 OPC_CheckPatternPredicate, 8,
37223 OPC_CheckComplexPat0, /*#*/2,
37224 OPC_EmitMergeInputChains1_0,
37225 OPC_EmitInteger32, 28,
37226 OPC_EmitRegisterI32, 0 ,
37227 OPC_EmitNode1None, TARGET_VAL(ARM::VREV64q8),
37228 MVT::v16i8, 3, 1, 5, 6,
37229 OPC_EmitInteger32, 28,
37230 OPC_EmitRegisterI32, 0 ,
37231 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1q8), 0|OPFL_Chain|OPFL_MemRefs,
37232 5, 3, 4, 7, 8, 9,
37233 33,
37234 OPC_CheckPredicate, 38,
37235 OPC_CheckPatternPredicate, 8,
37236 OPC_CheckComplexPat0, /*#*/2,
37237 OPC_EmitMergeInputChains1_0,
37238 OPC_EmitInteger32, 28,
37239 OPC_EmitRegisterI32, 0 ,
37240 OPC_EmitNode1None, TARGET_VAL(ARM::VREV64q16),
37241 MVT::v16i8, 3, 1, 5, 6,
37242 OPC_EmitInteger32, 28,
37243 OPC_EmitRegisterI32, 0 ,
37244 OPC_MorphNodeTo0, TARGET_VAL(ARM::VST1q16), 0|OPFL_Chain|OPFL_MemRefs,
37245 5, 3, 4, 7, 8, 9,
37246 43,
37247 OPC_CheckPatternPredicate, 12,
37248 OPC_CheckComplexPat6, /*#*/2,
37249 OPC_EmitMergeInputChains1_0,
37250 OPC_EmitInteger32, 0,
37251 OPC_EmitRegisterI32, 0 ,
37252 OPC_EmitRegisterI32, 0 ,
37253 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
37254 MVT::v4i32, 0,
37255 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VREV64_8),
37256 MVT::v16i8, 5, 1, 5, 6, 7, 8,
37257 OPC_EmitInteger32, 0,
37258 OPC_EmitRegisterI32, 0 ,
37259 OPC_EmitRegisterI32, 0 ,
37260 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
37261 6, 9, 3, 4, 10, 11, 12,
37262 0,
37263 39|128,1,
37264 OPC_RecordChild3,
37265 OPC_CheckChild3TypeI32,
37266 OPC_CheckPredicate0,
37267 OPC_CheckTypeI32,
37268 OPC_Scope, 25,
37269 OPC_CheckPredicate, 9,
37270 OPC_CheckPatternPredicate7,
37271 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37272 OPC_EmitMergeInputChains1_0,
37273 OPC_EmitInteger32, 0,
37274 OPC_EmitRegisterI32, 0 ,
37275 OPC_EmitRegisterI32, 0 ,
37276 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_pre), 0|OPFL_Chain|OPFL_MemRefs,
37277 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37278 24,
37279 OPC_CheckPredicate6,
37280 OPC_CheckPatternPredicate7,
37281 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37282 OPC_EmitMergeInputChains1_0,
37283 OPC_EmitInteger32, 0,
37284 OPC_EmitRegisterI32, 0 ,
37285 OPC_EmitRegisterI32, 0 ,
37286 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_post), 0|OPFL_Chain|OPFL_MemRefs,
37287 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37288 27,
37289 OPC_CheckPredicate, 9,
37290 OPC_CheckPredicate, 22,
37291 OPC_CheckPatternPredicate7,
37292 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37293 OPC_EmitMergeInputChains1_0,
37294 OPC_EmitInteger32, 0,
37295 OPC_EmitRegisterI32, 0 ,
37296 OPC_EmitRegisterI32, 0 ,
37297 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_pre), 0|OPFL_Chain|OPFL_MemRefs,
37298 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37299 26,
37300 OPC_CheckPredicate6,
37301 OPC_CheckPredicate, 22,
37302 OPC_CheckPatternPredicate7,
37303 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37304 OPC_EmitMergeInputChains1_0,
37305 OPC_EmitInteger32, 0,
37306 OPC_EmitRegisterI32, 0 ,
37307 OPC_EmitRegisterI32, 0 ,
37308 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_post), 0|OPFL_Chain|OPFL_MemRefs,
37309 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37310 27,
37311 OPC_CheckPredicate, 9,
37312 OPC_CheckPredicate, 8,
37313 OPC_CheckPatternPredicate7,
37314 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
37315 OPC_EmitMergeInputChains1_0,
37316 OPC_EmitInteger32, 0,
37317 OPC_EmitRegisterI32, 0 ,
37318 OPC_EmitRegisterI32, 0 ,
37319 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_pre), 0|OPFL_Chain|OPFL_MemRefs,
37320 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37321 26,
37322 OPC_CheckPredicate6,
37323 OPC_CheckPredicate, 8,
37324 OPC_CheckPatternPredicate7,
37325 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
37326 OPC_EmitMergeInputChains1_0,
37327 OPC_EmitInteger32, 0,
37328 OPC_EmitRegisterI32, 0 ,
37329 OPC_EmitRegisterI32, 0 ,
37330 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_post), 0|OPFL_Chain|OPFL_MemRefs,
37331 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37332 0,
37333 21,
37334 OPC_CheckChild2TypeI32,
37335 OPC_CheckPredicate7,
37336 OPC_CheckPredicate0,
37337 OPC_CheckPredicate, 90,
37338 OPC_CheckPatternPredicate, 24,
37339 OPC_EmitMergeInputChains1_0,
37340 OPC_EmitInteger32, 28,
37341 OPC_EmitRegisterI32, 0 ,
37342 OPC_MorphNodeTo0, TARGET_VAL(ARM::VSTMQIA), 0|OPFL_Chain|OPFL_MemRefs,
37343 4, 1, 2, 3, 4,
37344 0,
37345 74|128,2,
37346 OPC_CheckChild1Type, MVT::v16i8,
37347 OPC_RecordChild2,
37348 OPC_Scope, 102,
37349 OPC_CheckChild2TypeI32,
37350 OPC_CheckPredicate7,
37351 OPC_CheckPredicate0,
37352 OPC_Scope, 23,
37353 OPC_CheckPredicate, 39,
37354 OPC_CheckPatternPredicate7,
37355 OPC_CheckComplexPat6, /*#*/2,
37356 OPC_EmitMergeInputChains1_0,
37357 OPC_EmitInteger32, 0,
37358 OPC_EmitRegisterI32, 0 ,
37359 OPC_EmitRegisterI32, 0 ,
37360 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
37361 6, 1, 3, 4, 5, 6, 7,
37362 24,
37363 OPC_CheckPredicate, 38,
37364 OPC_CheckPatternPredicate7,
37365 OPC_CheckComplexPat, /*CP*/12, /*#*/2,
37366 OPC_EmitMergeInputChains1_0,
37367 OPC_EmitInteger32, 0,
37368 OPC_EmitRegisterI32, 0 ,
37369 OPC_EmitRegisterI32, 0 ,
37370 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRHU16), 0|OPFL_Chain|OPFL_MemRefs,
37371 6, 1, 3, 4, 5, 6, 7,
37372 24,
37373 OPC_CheckPredicate, 8,
37374 OPC_CheckPatternPredicate7,
37375 OPC_CheckComplexPat, /*CP*/13, /*#*/2,
37376 OPC_EmitMergeInputChains1_0,
37377 OPC_EmitInteger32, 0,
37378 OPC_EmitRegisterI32, 0 ,
37379 OPC_EmitRegisterI32, 0 ,
37380 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRWU32), 0|OPFL_Chain|OPFL_MemRefs,
37381 6, 1, 3, 4, 5, 6, 7,
37382 22,
37383 OPC_CheckPatternPredicate, 12,
37384 OPC_CheckComplexPat6, /*#*/2,
37385 OPC_EmitMergeInputChains1_0,
37386 OPC_EmitInteger32, 0,
37387 OPC_EmitRegisterI32, 0 ,
37388 OPC_EmitRegisterI32, 0 ,
37389 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
37390 6, 1, 3, 4, 5, 6, 7,
37391 0,
37392 92|128,1,
37393 OPC_RecordChild3,
37394 OPC_CheckChild3TypeI32,
37395 OPC_CheckPredicate0,
37396 OPC_CheckTypeI32,
37397 OPC_Scope, 25,
37398 OPC_CheckPredicate, 9,
37399 OPC_CheckPatternPredicate7,
37400 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37401 OPC_EmitMergeInputChains1_0,
37402 OPC_EmitInteger32, 0,
37403 OPC_EmitRegisterI32, 0 ,
37404 OPC_EmitRegisterI32, 0 ,
37405 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_pre), 0|OPFL_Chain|OPFL_MemRefs,
37406 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37407 24,
37408 OPC_CheckPredicate6,
37409 OPC_CheckPatternPredicate7,
37410 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37411 OPC_EmitMergeInputChains1_0,
37412 OPC_EmitInteger32, 0,
37413 OPC_EmitRegisterI32, 0 ,
37414 OPC_EmitRegisterI32, 0 ,
37415 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_post), 0|OPFL_Chain|OPFL_MemRefs,
37416 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37417 27,
37418 OPC_CheckPredicate, 9,
37419 OPC_CheckPredicate, 22,
37420 OPC_CheckPatternPredicate7,
37421 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37422 OPC_EmitMergeInputChains1_0,
37423 OPC_EmitInteger32, 0,
37424 OPC_EmitRegisterI32, 0 ,
37425 OPC_EmitRegisterI32, 0 ,
37426 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_pre), 0|OPFL_Chain|OPFL_MemRefs,
37427 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37428 26,
37429 OPC_CheckPredicate6,
37430 OPC_CheckPredicate, 22,
37431 OPC_CheckPatternPredicate7,
37432 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37433 OPC_EmitMergeInputChains1_0,
37434 OPC_EmitInteger32, 0,
37435 OPC_EmitRegisterI32, 0 ,
37436 OPC_EmitRegisterI32, 0 ,
37437 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_post), 0|OPFL_Chain|OPFL_MemRefs,
37438 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37439 27,
37440 OPC_CheckPredicate, 9,
37441 OPC_CheckPredicate, 8,
37442 OPC_CheckPatternPredicate7,
37443 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
37444 OPC_EmitMergeInputChains1_0,
37445 OPC_EmitInteger32, 0,
37446 OPC_EmitRegisterI32, 0 ,
37447 OPC_EmitRegisterI32, 0 ,
37448 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_pre), 0|OPFL_Chain|OPFL_MemRefs,
37449 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37450 26,
37451 OPC_CheckPredicate6,
37452 OPC_CheckPredicate, 8,
37453 OPC_CheckPatternPredicate7,
37454 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
37455 OPC_EmitMergeInputChains1_0,
37456 OPC_EmitInteger32, 0,
37457 OPC_EmitRegisterI32, 0 ,
37458 OPC_EmitRegisterI32, 0 ,
37459 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_post), 0|OPFL_Chain|OPFL_MemRefs,
37460 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37461 26,
37462 OPC_CheckPredicate, 9,
37463 OPC_CheckPatternPredicate, 12,
37464 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37465 OPC_EmitMergeInputChains1_0,
37466 OPC_EmitInteger32, 0,
37467 OPC_EmitRegisterI32, 0 ,
37468 OPC_EmitRegisterI32, 0 ,
37469 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_pre), 0|OPFL_Chain|OPFL_MemRefs,
37470 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37471 25,
37472 OPC_CheckPredicate6,
37473 OPC_CheckPatternPredicate, 12,
37474 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37475 OPC_EmitMergeInputChains1_0,
37476 OPC_EmitInteger32, 0,
37477 OPC_EmitRegisterI32, 0 ,
37478 OPC_EmitRegisterI32, 0 ,
37479 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_post), 0|OPFL_Chain|OPFL_MemRefs,
37480 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37481 0,
37482 0,
37483 93|128,3,
37484 OPC_CheckChild1Type, MVT::v8i16,
37485 OPC_RecordChild2,
37486 OPC_Scope, 52|128,1,
37487 OPC_CheckChild2TypeI32,
37488 OPC_CheckPredicate7,
37489 OPC_Scope, 103,
37490 OPC_CheckPredicate0,
37491 OPC_Scope, 23,
37492 OPC_CheckPredicate, 39,
37493 OPC_CheckPatternPredicate7,
37494 OPC_CheckComplexPat6, /*#*/2,
37495 OPC_EmitMergeInputChains1_0,
37496 OPC_EmitInteger32, 0,
37497 OPC_EmitRegisterI32, 0 ,
37498 OPC_EmitRegisterI32, 0 ,
37499 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
37500 6, 1, 3, 4, 5, 6, 7,
37501 24,
37502 OPC_CheckPredicate, 38,
37503 OPC_CheckPatternPredicate7,
37504 OPC_CheckComplexPat, /*CP*/12, /*#*/2,
37505 OPC_EmitMergeInputChains1_0,
37506 OPC_EmitInteger32, 0,
37507 OPC_EmitRegisterI32, 0 ,
37508 OPC_EmitRegisterI32, 0 ,
37509 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRHU16), 0|OPFL_Chain|OPFL_MemRefs,
37510 6, 1, 3, 4, 5, 6, 7,
37511 24,
37512 OPC_CheckPredicate, 8,
37513 OPC_CheckPatternPredicate7,
37514 OPC_CheckComplexPat, /*CP*/13, /*#*/2,
37515 OPC_EmitMergeInputChains1_0,
37516 OPC_EmitInteger32, 0,
37517 OPC_EmitRegisterI32, 0 ,
37518 OPC_EmitRegisterI32, 0 ,
37519 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRWU32), 0|OPFL_Chain|OPFL_MemRefs,
37520 6, 1, 3, 4, 5, 6, 7,
37521 25,
37522 OPC_CheckPredicate, 22,
37523 OPC_CheckPatternPredicate, 12,
37524 OPC_CheckComplexPat, /*CP*/12, /*#*/2,
37525 OPC_EmitMergeInputChains1_0,
37526 OPC_EmitInteger32, 0,
37527 OPC_EmitRegisterI32, 0 ,
37528 OPC_EmitRegisterI32, 0 ,
37529 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRHU16), 0|OPFL_Chain|OPFL_MemRefs,
37530 6, 1, 3, 4, 5, 6, 7,
37531 0,
37532 26,
37533 OPC_CheckPredicate, 21,
37534 OPC_CheckPredicate, 50,
37535 OPC_CheckPatternPredicate0,
37536 OPC_CheckComplexPat, /*CP*/18, /*#*/2,
37537 OPC_EmitMergeInputChains1_0,
37538 OPC_EmitInteger32, 0,
37539 OPC_EmitRegisterI32, 0 ,
37540 OPC_EmitRegisterI32, 0 ,
37541 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRB16), 0|OPFL_Chain|OPFL_MemRefs,
37542 6, 1, 3, 4, 5, 6, 7,
37543 44,
37544 OPC_CheckPredicate0,
37545 OPC_CheckPatternPredicate, 12,
37546 OPC_CheckComplexPat6, /*#*/2,
37547 OPC_EmitMergeInputChains1_0,
37548 OPC_EmitInteger32, 0,
37549 OPC_EmitRegisterI32, 0 ,
37550 OPC_EmitRegisterI32, 0 ,
37551 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
37552 MVT::v4i32, 0,
37553 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VREV16_8),
37554 MVT::v16i8, 5, 1, 5, 6, 7, 8,
37555 OPC_EmitInteger32, 0,
37556 OPC_EmitRegisterI32, 0 ,
37557 OPC_EmitRegisterI32, 0 ,
37558 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
37559 6, 9, 3, 4, 10, 11, 12,
37560 0,
37561 32|128,2,
37562 OPC_RecordChild3,
37563 OPC_CheckChild3TypeI32,
37564 OPC_CheckTypeI32,
37565 OPC_Scope, 93|128,1,
37566 OPC_CheckPredicate0,
37567 OPC_Scope, 25,
37568 OPC_CheckPredicate, 9,
37569 OPC_CheckPatternPredicate7,
37570 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37571 OPC_EmitMergeInputChains1_0,
37572 OPC_EmitInteger32, 0,
37573 OPC_EmitRegisterI32, 0 ,
37574 OPC_EmitRegisterI32, 0 ,
37575 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_pre), 0|OPFL_Chain|OPFL_MemRefs,
37576 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37577 24,
37578 OPC_CheckPredicate6,
37579 OPC_CheckPatternPredicate7,
37580 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37581 OPC_EmitMergeInputChains1_0,
37582 OPC_EmitInteger32, 0,
37583 OPC_EmitRegisterI32, 0 ,
37584 OPC_EmitRegisterI32, 0 ,
37585 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_post), 0|OPFL_Chain|OPFL_MemRefs,
37586 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37587 27,
37588 OPC_CheckPredicate, 9,
37589 OPC_CheckPredicate, 22,
37590 OPC_CheckPatternPredicate7,
37591 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37592 OPC_EmitMergeInputChains1_0,
37593 OPC_EmitInteger32, 0,
37594 OPC_EmitRegisterI32, 0 ,
37595 OPC_EmitRegisterI32, 0 ,
37596 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_pre), 0|OPFL_Chain|OPFL_MemRefs,
37597 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37598 26,
37599 OPC_CheckPredicate6,
37600 OPC_CheckPredicate, 22,
37601 OPC_CheckPatternPredicate7,
37602 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37603 OPC_EmitMergeInputChains1_0,
37604 OPC_EmitInteger32, 0,
37605 OPC_EmitRegisterI32, 0 ,
37606 OPC_EmitRegisterI32, 0 ,
37607 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_post), 0|OPFL_Chain|OPFL_MemRefs,
37608 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37609 27,
37610 OPC_CheckPredicate, 9,
37611 OPC_CheckPredicate, 8,
37612 OPC_CheckPatternPredicate7,
37613 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
37614 OPC_EmitMergeInputChains1_0,
37615 OPC_EmitInteger32, 0,
37616 OPC_EmitRegisterI32, 0 ,
37617 OPC_EmitRegisterI32, 0 ,
37618 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_pre), 0|OPFL_Chain|OPFL_MemRefs,
37619 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37620 26,
37621 OPC_CheckPredicate6,
37622 OPC_CheckPredicate, 8,
37623 OPC_CheckPatternPredicate7,
37624 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
37625 OPC_EmitMergeInputChains1_0,
37626 OPC_EmitInteger32, 0,
37627 OPC_EmitRegisterI32, 0 ,
37628 OPC_EmitRegisterI32, 0 ,
37629 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_post), 0|OPFL_Chain|OPFL_MemRefs,
37630 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37631 28,
37632 OPC_CheckPredicate, 9,
37633 OPC_CheckPredicate, 22,
37634 OPC_CheckPatternPredicate, 12,
37635 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37636 OPC_EmitMergeInputChains1_0,
37637 OPC_EmitInteger32, 0,
37638 OPC_EmitRegisterI32, 0 ,
37639 OPC_EmitRegisterI32, 0 ,
37640 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_pre), 0|OPFL_Chain|OPFL_MemRefs,
37641 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37642 27,
37643 OPC_CheckPredicate6,
37644 OPC_CheckPredicate, 22,
37645 OPC_CheckPatternPredicate, 12,
37646 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37647 OPC_EmitMergeInputChains1_0,
37648 OPC_EmitInteger32, 0,
37649 OPC_EmitRegisterI32, 0 ,
37650 OPC_EmitRegisterI32, 0 ,
37651 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_post), 0|OPFL_Chain|OPFL_MemRefs,
37652 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37653 0,
37654 59,
37655 OPC_CheckPredicate, 21,
37656 OPC_Scope, 26,
37657 OPC_CheckPredicate6,
37658 OPC_CheckPredicate, 50,
37659 OPC_CheckPatternPredicate0,
37660 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37661 OPC_EmitMergeInputChains1_0,
37662 OPC_EmitInteger32, 0,
37663 OPC_EmitRegisterI32, 0 ,
37664 OPC_EmitRegisterI32, 0 ,
37665 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRB16_post), 0|OPFL_Chain|OPFL_MemRefs,
37666 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37667 27,
37668 OPC_CheckPredicate, 9,
37669 OPC_CheckPredicate, 50,
37670 OPC_CheckPatternPredicate0,
37671 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37672 OPC_EmitMergeInputChains1_0,
37673 OPC_EmitInteger32, 0,
37674 OPC_EmitRegisterI32, 0 ,
37675 OPC_EmitRegisterI32, 0 ,
37676 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRB16_pre), 0|OPFL_Chain|OPFL_MemRefs,
37677 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37678 0,
37679 0,
37680 0,
37681 126|128,2,
37682 OPC_CheckChild1Type, MVT::v8f16,
37683 OPC_RecordChild2,
37684 OPC_Scope, 21|128,1,
37685 OPC_CheckChild2TypeI32,
37686 OPC_CheckPredicate7,
37687 OPC_CheckPredicate0,
37688 OPC_Scope, 23,
37689 OPC_CheckPredicate, 39,
37690 OPC_CheckPatternPredicate7,
37691 OPC_CheckComplexPat6, /*#*/2,
37692 OPC_EmitMergeInputChains1_0,
37693 OPC_EmitInteger32, 0,
37694 OPC_EmitRegisterI32, 0 ,
37695 OPC_EmitRegisterI32, 0 ,
37696 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
37697 6, 1, 3, 4, 5, 6, 7,
37698 24,
37699 OPC_CheckPredicate, 38,
37700 OPC_CheckPatternPredicate7,
37701 OPC_CheckComplexPat, /*CP*/12, /*#*/2,
37702 OPC_EmitMergeInputChains1_0,
37703 OPC_EmitInteger32, 0,
37704 OPC_EmitRegisterI32, 0 ,
37705 OPC_EmitRegisterI32, 0 ,
37706 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRHU16), 0|OPFL_Chain|OPFL_MemRefs,
37707 6, 1, 3, 4, 5, 6, 7,
37708 24,
37709 OPC_CheckPredicate, 8,
37710 OPC_CheckPatternPredicate7,
37711 OPC_CheckComplexPat, /*CP*/13, /*#*/2,
37712 OPC_EmitMergeInputChains1_0,
37713 OPC_EmitInteger32, 0,
37714 OPC_EmitRegisterI32, 0 ,
37715 OPC_EmitRegisterI32, 0 ,
37716 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRWU32), 0|OPFL_Chain|OPFL_MemRefs,
37717 6, 1, 3, 4, 5, 6, 7,
37718 25,
37719 OPC_CheckPredicate, 22,
37720 OPC_CheckPatternPredicate, 12,
37721 OPC_CheckComplexPat, /*CP*/12, /*#*/2,
37722 OPC_EmitMergeInputChains1_0,
37723 OPC_EmitInteger32, 0,
37724 OPC_EmitRegisterI32, 0 ,
37725 OPC_EmitRegisterI32, 0 ,
37726 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRHU16), 0|OPFL_Chain|OPFL_MemRefs,
37727 6, 1, 3, 4, 5, 6, 7,
37728 43,
37729 OPC_CheckPatternPredicate, 12,
37730 OPC_CheckComplexPat6, /*#*/2,
37731 OPC_EmitMergeInputChains1_0,
37732 OPC_EmitInteger32, 0,
37733 OPC_EmitRegisterI32, 0 ,
37734 OPC_EmitRegisterI32, 0 ,
37735 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
37736 MVT::v4i32, 0,
37737 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VREV16_8),
37738 MVT::v16i8, 5, 1, 5, 6, 7, 8,
37739 OPC_EmitInteger32, 0,
37740 OPC_EmitRegisterI32, 0 ,
37741 OPC_EmitRegisterI32, 0 ,
37742 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
37743 6, 9, 3, 4, 10, 11, 12,
37744 0,
37745 96|128,1,
37746 OPC_RecordChild3,
37747 OPC_CheckChild3TypeI32,
37748 OPC_CheckPredicate0,
37749 OPC_CheckTypeI32,
37750 OPC_Scope, 25,
37751 OPC_CheckPredicate, 9,
37752 OPC_CheckPatternPredicate7,
37753 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37754 OPC_EmitMergeInputChains1_0,
37755 OPC_EmitInteger32, 0,
37756 OPC_EmitRegisterI32, 0 ,
37757 OPC_EmitRegisterI32, 0 ,
37758 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_pre), 0|OPFL_Chain|OPFL_MemRefs,
37759 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37760 24,
37761 OPC_CheckPredicate6,
37762 OPC_CheckPatternPredicate7,
37763 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37764 OPC_EmitMergeInputChains1_0,
37765 OPC_EmitInteger32, 0,
37766 OPC_EmitRegisterI32, 0 ,
37767 OPC_EmitRegisterI32, 0 ,
37768 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_post), 0|OPFL_Chain|OPFL_MemRefs,
37769 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37770 27,
37771 OPC_CheckPredicate, 9,
37772 OPC_CheckPredicate, 22,
37773 OPC_CheckPatternPredicate7,
37774 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37775 OPC_EmitMergeInputChains1_0,
37776 OPC_EmitInteger32, 0,
37777 OPC_EmitRegisterI32, 0 ,
37778 OPC_EmitRegisterI32, 0 ,
37779 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_pre), 0|OPFL_Chain|OPFL_MemRefs,
37780 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37781 26,
37782 OPC_CheckPredicate6,
37783 OPC_CheckPredicate, 22,
37784 OPC_CheckPatternPredicate7,
37785 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37786 OPC_EmitMergeInputChains1_0,
37787 OPC_EmitInteger32, 0,
37788 OPC_EmitRegisterI32, 0 ,
37789 OPC_EmitRegisterI32, 0 ,
37790 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_post), 0|OPFL_Chain|OPFL_MemRefs,
37791 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37792 27,
37793 OPC_CheckPredicate, 9,
37794 OPC_CheckPredicate, 8,
37795 OPC_CheckPatternPredicate7,
37796 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
37797 OPC_EmitMergeInputChains1_0,
37798 OPC_EmitInteger32, 0,
37799 OPC_EmitRegisterI32, 0 ,
37800 OPC_EmitRegisterI32, 0 ,
37801 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_pre), 0|OPFL_Chain|OPFL_MemRefs,
37802 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37803 26,
37804 OPC_CheckPredicate6,
37805 OPC_CheckPredicate, 8,
37806 OPC_CheckPatternPredicate7,
37807 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
37808 OPC_EmitMergeInputChains1_0,
37809 OPC_EmitInteger32, 0,
37810 OPC_EmitRegisterI32, 0 ,
37811 OPC_EmitRegisterI32, 0 ,
37812 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_post), 0|OPFL_Chain|OPFL_MemRefs,
37813 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37814 28,
37815 OPC_CheckPredicate, 9,
37816 OPC_CheckPredicate, 22,
37817 OPC_CheckPatternPredicate, 12,
37818 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37819 OPC_EmitMergeInputChains1_0,
37820 OPC_EmitInteger32, 0,
37821 OPC_EmitRegisterI32, 0 ,
37822 OPC_EmitRegisterI32, 0 ,
37823 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_pre), 0|OPFL_Chain|OPFL_MemRefs,
37824 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37825 27,
37826 OPC_CheckPredicate6,
37827 OPC_CheckPredicate, 22,
37828 OPC_CheckPatternPredicate, 12,
37829 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37830 OPC_EmitMergeInputChains1_0,
37831 OPC_EmitInteger32, 0,
37832 OPC_EmitRegisterI32, 0 ,
37833 OPC_EmitRegisterI32, 0 ,
37834 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_post), 0|OPFL_Chain|OPFL_MemRefs,
37835 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37836 0,
37837 0,
37838 49|128,4,
37839 OPC_CheckChild1Type, MVT::v4i32,
37840 OPC_RecordChild2,
37841 OPC_Scope, 81|128,1,
37842 OPC_CheckChild2TypeI32,
37843 OPC_CheckPredicate7,
37844 OPC_Scope, 104,
37845 OPC_CheckPredicate0,
37846 OPC_Scope, 23,
37847 OPC_CheckPredicate, 39,
37848 OPC_CheckPatternPredicate7,
37849 OPC_CheckComplexPat6, /*#*/2,
37850 OPC_EmitMergeInputChains1_0,
37851 OPC_EmitInteger32, 0,
37852 OPC_EmitRegisterI32, 0 ,
37853 OPC_EmitRegisterI32, 0 ,
37854 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
37855 6, 1, 3, 4, 5, 6, 7,
37856 24,
37857 OPC_CheckPredicate, 38,
37858 OPC_CheckPatternPredicate7,
37859 OPC_CheckComplexPat, /*CP*/12, /*#*/2,
37860 OPC_EmitMergeInputChains1_0,
37861 OPC_EmitInteger32, 0,
37862 OPC_EmitRegisterI32, 0 ,
37863 OPC_EmitRegisterI32, 0 ,
37864 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRHU16), 0|OPFL_Chain|OPFL_MemRefs,
37865 6, 1, 3, 4, 5, 6, 7,
37866 51,
37867 OPC_CheckPredicate, 8,
37868 OPC_Scope, 22,
37869 OPC_CheckPatternPredicate7,
37870 OPC_CheckComplexPat, /*CP*/13, /*#*/2,
37871 OPC_EmitMergeInputChains1_0,
37872 OPC_EmitInteger32, 0,
37873 OPC_EmitRegisterI32, 0 ,
37874 OPC_EmitRegisterI32, 0 ,
37875 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRWU32), 0|OPFL_Chain|OPFL_MemRefs,
37876 6, 1, 3, 4, 5, 6, 7,
37877 23,
37878 OPC_CheckPatternPredicate, 12,
37879 OPC_CheckComplexPat, /*CP*/13, /*#*/2,
37880 OPC_EmitMergeInputChains1_0,
37881 OPC_EmitInteger32, 0,
37882 OPC_EmitRegisterI32, 0 ,
37883 OPC_EmitRegisterI32, 0 ,
37884 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRWU32), 0|OPFL_Chain|OPFL_MemRefs,
37885 6, 1, 3, 4, 5, 6, 7,
37886 0,
37887 0,
37888 54,
37889 OPC_CheckPredicate, 21,
37890 OPC_Scope, 24,
37891 OPC_CheckPredicate, 50,
37892 OPC_CheckPatternPredicate0,
37893 OPC_CheckComplexPat, /*CP*/18, /*#*/2,
37894 OPC_EmitMergeInputChains1_0,
37895 OPC_EmitInteger32, 0,
37896 OPC_EmitRegisterI32, 0 ,
37897 OPC_EmitRegisterI32, 0 ,
37898 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRB32), 0|OPFL_Chain|OPFL_MemRefs,
37899 6, 1, 3, 4, 5, 6, 7,
37900 24,
37901 OPC_CheckPredicate, 75,
37902 OPC_CheckPatternPredicate0,
37903 OPC_CheckComplexPat, /*CP*/28, /*#*/2,
37904 OPC_EmitMergeInputChains1_0,
37905 OPC_EmitInteger32, 0,
37906 OPC_EmitRegisterI32, 0 ,
37907 OPC_EmitRegisterI32, 0 ,
37908 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH32), 0|OPFL_Chain|OPFL_MemRefs,
37909 6, 1, 3, 4, 5, 6, 7,
37910 0,
37911 44,
37912 OPC_CheckPredicate0,
37913 OPC_CheckPatternPredicate, 12,
37914 OPC_CheckComplexPat6, /*#*/2,
37915 OPC_EmitMergeInputChains1_0,
37916 OPC_EmitInteger32, 0,
37917 OPC_EmitRegisterI32, 0 ,
37918 OPC_EmitRegisterI32, 0 ,
37919 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
37920 MVT::v4i32, 0,
37921 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VREV32_8),
37922 MVT::v16i8, 5, 1, 5, 6, 7, 8,
37923 OPC_EmitInteger32, 0,
37924 OPC_EmitRegisterI32, 0 ,
37925 OPC_EmitRegisterI32, 0 ,
37926 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
37927 6, 9, 3, 4, 10, 11, 12,
37928 0,
37929 87|128,2,
37930 OPC_RecordChild3,
37931 OPC_CheckChild3TypeI32,
37932 OPC_CheckTypeI32,
37933 OPC_Scope, 93|128,1,
37934 OPC_CheckPredicate0,
37935 OPC_Scope, 25,
37936 OPC_CheckPredicate, 9,
37937 OPC_CheckPatternPredicate7,
37938 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37939 OPC_EmitMergeInputChains1_0,
37940 OPC_EmitInteger32, 0,
37941 OPC_EmitRegisterI32, 0 ,
37942 OPC_EmitRegisterI32, 0 ,
37943 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_pre), 0|OPFL_Chain|OPFL_MemRefs,
37944 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37945 24,
37946 OPC_CheckPredicate6,
37947 OPC_CheckPatternPredicate7,
37948 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
37949 OPC_EmitMergeInputChains1_0,
37950 OPC_EmitInteger32, 0,
37951 OPC_EmitRegisterI32, 0 ,
37952 OPC_EmitRegisterI32, 0 ,
37953 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_post), 0|OPFL_Chain|OPFL_MemRefs,
37954 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37955 27,
37956 OPC_CheckPredicate, 9,
37957 OPC_CheckPredicate, 22,
37958 OPC_CheckPatternPredicate7,
37959 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37960 OPC_EmitMergeInputChains1_0,
37961 OPC_EmitInteger32, 0,
37962 OPC_EmitRegisterI32, 0 ,
37963 OPC_EmitRegisterI32, 0 ,
37964 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_pre), 0|OPFL_Chain|OPFL_MemRefs,
37965 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37966 26,
37967 OPC_CheckPredicate6,
37968 OPC_CheckPredicate, 22,
37969 OPC_CheckPatternPredicate7,
37970 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
37971 OPC_EmitMergeInputChains1_0,
37972 OPC_EmitInteger32, 0,
37973 OPC_EmitRegisterI32, 0 ,
37974 OPC_EmitRegisterI32, 0 ,
37975 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_post), 0|OPFL_Chain|OPFL_MemRefs,
37976 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37977 27,
37978 OPC_CheckPredicate, 9,
37979 OPC_CheckPredicate, 8,
37980 OPC_CheckPatternPredicate7,
37981 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
37982 OPC_EmitMergeInputChains1_0,
37983 OPC_EmitInteger32, 0,
37984 OPC_EmitRegisterI32, 0 ,
37985 OPC_EmitRegisterI32, 0 ,
37986 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_pre), 0|OPFL_Chain|OPFL_MemRefs,
37987 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37988 26,
37989 OPC_CheckPredicate6,
37990 OPC_CheckPredicate, 8,
37991 OPC_CheckPatternPredicate7,
37992 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
37993 OPC_EmitMergeInputChains1_0,
37994 OPC_EmitInteger32, 0,
37995 OPC_EmitRegisterI32, 0 ,
37996 OPC_EmitRegisterI32, 0 ,
37997 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_post), 0|OPFL_Chain|OPFL_MemRefs,
37998 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
37999 28,
38000 OPC_CheckPredicate, 9,
38001 OPC_CheckPredicate, 8,
38002 OPC_CheckPatternPredicate, 12,
38003 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
38004 OPC_EmitMergeInputChains1_0,
38005 OPC_EmitInteger32, 0,
38006 OPC_EmitRegisterI32, 0 ,
38007 OPC_EmitRegisterI32, 0 ,
38008 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_pre), 0|OPFL_Chain|OPFL_MemRefs,
38009 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38010 27,
38011 OPC_CheckPredicate6,
38012 OPC_CheckPredicate, 8,
38013 OPC_CheckPatternPredicate, 12,
38014 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
38015 OPC_EmitMergeInputChains1_0,
38016 OPC_EmitInteger32, 0,
38017 OPC_EmitRegisterI32, 0 ,
38018 OPC_EmitRegisterI32, 0 ,
38019 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_post), 0|OPFL_Chain|OPFL_MemRefs,
38020 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38021 0,
38022 114,
38023 OPC_CheckPredicate, 21,
38024 OPC_Scope, 26,
38025 OPC_CheckPredicate6,
38026 OPC_CheckPredicate, 50,
38027 OPC_CheckPatternPredicate0,
38028 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
38029 OPC_EmitMergeInputChains1_0,
38030 OPC_EmitInteger32, 0,
38031 OPC_EmitRegisterI32, 0 ,
38032 OPC_EmitRegisterI32, 0 ,
38033 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRB32_post), 0|OPFL_Chain|OPFL_MemRefs,
38034 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38035 27,
38036 OPC_CheckPredicate, 9,
38037 OPC_CheckPredicate, 50,
38038 OPC_CheckPatternPredicate0,
38039 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
38040 OPC_EmitMergeInputChains1_0,
38041 OPC_EmitInteger32, 0,
38042 OPC_EmitRegisterI32, 0 ,
38043 OPC_EmitRegisterI32, 0 ,
38044 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRB32_pre), 0|OPFL_Chain|OPFL_MemRefs,
38045 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38046 26,
38047 OPC_CheckPredicate6,
38048 OPC_CheckPredicate, 75,
38049 OPC_CheckPatternPredicate0,
38050 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
38051 OPC_EmitMergeInputChains1_0,
38052 OPC_EmitInteger32, 0,
38053 OPC_EmitRegisterI32, 0 ,
38054 OPC_EmitRegisterI32, 0 ,
38055 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRH32_post), 0|OPFL_Chain|OPFL_MemRefs,
38056 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38057 27,
38058 OPC_CheckPredicate, 9,
38059 OPC_CheckPredicate, 75,
38060 OPC_CheckPatternPredicate0,
38061 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
38062 OPC_EmitMergeInputChains1_0,
38063 OPC_EmitInteger32, 0,
38064 OPC_EmitRegisterI32, 0 ,
38065 OPC_EmitRegisterI32, 0 ,
38066 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRH32_pre), 0|OPFL_Chain|OPFL_MemRefs,
38067 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38068 0,
38069 0,
38070 0,
38071 127|128,2,
38072 OPC_CheckChild1Type, MVT::v4f32,
38073 OPC_RecordChild2,
38074 OPC_Scope, 22|128,1,
38075 OPC_CheckChild2TypeI32,
38076 OPC_CheckPredicate7,
38077 OPC_CheckPredicate0,
38078 OPC_Scope, 23,
38079 OPC_CheckPredicate, 39,
38080 OPC_CheckPatternPredicate7,
38081 OPC_CheckComplexPat6, /*#*/2,
38082 OPC_EmitMergeInputChains1_0,
38083 OPC_EmitInteger32, 0,
38084 OPC_EmitRegisterI32, 0 ,
38085 OPC_EmitRegisterI32, 0 ,
38086 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
38087 6, 1, 3, 4, 5, 6, 7,
38088 24,
38089 OPC_CheckPredicate, 38,
38090 OPC_CheckPatternPredicate7,
38091 OPC_CheckComplexPat, /*CP*/12, /*#*/2,
38092 OPC_EmitMergeInputChains1_0,
38093 OPC_EmitInteger32, 0,
38094 OPC_EmitRegisterI32, 0 ,
38095 OPC_EmitRegisterI32, 0 ,
38096 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRHU16), 0|OPFL_Chain|OPFL_MemRefs,
38097 6, 1, 3, 4, 5, 6, 7,
38098 51,
38099 OPC_CheckPredicate, 8,
38100 OPC_Scope, 22,
38101 OPC_CheckPatternPredicate7,
38102 OPC_CheckComplexPat, /*CP*/13, /*#*/2,
38103 OPC_EmitMergeInputChains1_0,
38104 OPC_EmitInteger32, 0,
38105 OPC_EmitRegisterI32, 0 ,
38106 OPC_EmitRegisterI32, 0 ,
38107 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRWU32), 0|OPFL_Chain|OPFL_MemRefs,
38108 6, 1, 3, 4, 5, 6, 7,
38109 23,
38110 OPC_CheckPatternPredicate, 12,
38111 OPC_CheckComplexPat, /*CP*/13, /*#*/2,
38112 OPC_EmitMergeInputChains1_0,
38113 OPC_EmitInteger32, 0,
38114 OPC_EmitRegisterI32, 0 ,
38115 OPC_EmitRegisterI32, 0 ,
38116 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRWU32), 0|OPFL_Chain|OPFL_MemRefs,
38117 6, 1, 3, 4, 5, 6, 7,
38118 0,
38119 43,
38120 OPC_CheckPatternPredicate, 12,
38121 OPC_CheckComplexPat6, /*#*/2,
38122 OPC_EmitMergeInputChains1_0,
38123 OPC_EmitInteger32, 0,
38124 OPC_EmitRegisterI32, 0 ,
38125 OPC_EmitRegisterI32, 0 ,
38126 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
38127 MVT::v4i32, 0,
38128 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VREV32_8),
38129 MVT::v16i8, 5, 1, 5, 6, 7, 8,
38130 OPC_EmitInteger32, 0,
38131 OPC_EmitRegisterI32, 0 ,
38132 OPC_EmitRegisterI32, 0 ,
38133 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
38134 6, 9, 3, 4, 10, 11, 12,
38135 0,
38136 96|128,1,
38137 OPC_RecordChild3,
38138 OPC_CheckChild3TypeI32,
38139 OPC_CheckPredicate0,
38140 OPC_CheckTypeI32,
38141 OPC_Scope, 25,
38142 OPC_CheckPredicate, 9,
38143 OPC_CheckPatternPredicate7,
38144 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
38145 OPC_EmitMergeInputChains1_0,
38146 OPC_EmitInteger32, 0,
38147 OPC_EmitRegisterI32, 0 ,
38148 OPC_EmitRegisterI32, 0 ,
38149 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_pre), 0|OPFL_Chain|OPFL_MemRefs,
38150 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38151 24,
38152 OPC_CheckPredicate6,
38153 OPC_CheckPatternPredicate7,
38154 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
38155 OPC_EmitMergeInputChains1_0,
38156 OPC_EmitInteger32, 0,
38157 OPC_EmitRegisterI32, 0 ,
38158 OPC_EmitRegisterI32, 0 ,
38159 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_post), 0|OPFL_Chain|OPFL_MemRefs,
38160 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38161 27,
38162 OPC_CheckPredicate, 9,
38163 OPC_CheckPredicate, 22,
38164 OPC_CheckPatternPredicate7,
38165 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
38166 OPC_EmitMergeInputChains1_0,
38167 OPC_EmitInteger32, 0,
38168 OPC_EmitRegisterI32, 0 ,
38169 OPC_EmitRegisterI32, 0 ,
38170 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_pre), 0|OPFL_Chain|OPFL_MemRefs,
38171 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38172 26,
38173 OPC_CheckPredicate6,
38174 OPC_CheckPredicate, 22,
38175 OPC_CheckPatternPredicate7,
38176 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
38177 OPC_EmitMergeInputChains1_0,
38178 OPC_EmitInteger32, 0,
38179 OPC_EmitRegisterI32, 0 ,
38180 OPC_EmitRegisterI32, 0 ,
38181 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_post), 0|OPFL_Chain|OPFL_MemRefs,
38182 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38183 27,
38184 OPC_CheckPredicate, 9,
38185 OPC_CheckPredicate, 8,
38186 OPC_CheckPatternPredicate7,
38187 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
38188 OPC_EmitMergeInputChains1_0,
38189 OPC_EmitInteger32, 0,
38190 OPC_EmitRegisterI32, 0 ,
38191 OPC_EmitRegisterI32, 0 ,
38192 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_pre), 0|OPFL_Chain|OPFL_MemRefs,
38193 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38194 26,
38195 OPC_CheckPredicate6,
38196 OPC_CheckPredicate, 8,
38197 OPC_CheckPatternPredicate7,
38198 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
38199 OPC_EmitMergeInputChains1_0,
38200 OPC_EmitInteger32, 0,
38201 OPC_EmitRegisterI32, 0 ,
38202 OPC_EmitRegisterI32, 0 ,
38203 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_post), 0|OPFL_Chain|OPFL_MemRefs,
38204 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38205 28,
38206 OPC_CheckPredicate, 9,
38207 OPC_CheckPredicate, 8,
38208 OPC_CheckPatternPredicate, 12,
38209 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
38210 OPC_EmitMergeInputChains1_0,
38211 OPC_EmitInteger32, 0,
38212 OPC_EmitRegisterI32, 0 ,
38213 OPC_EmitRegisterI32, 0 ,
38214 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_pre), 0|OPFL_Chain|OPFL_MemRefs,
38215 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38216 27,
38217 OPC_CheckPredicate6,
38218 OPC_CheckPredicate, 8,
38219 OPC_CheckPatternPredicate, 12,
38220 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
38221 OPC_EmitMergeInputChains1_0,
38222 OPC_EmitInteger32, 0,
38223 OPC_EmitRegisterI32, 0 ,
38224 OPC_EmitRegisterI32, 0 ,
38225 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_post), 0|OPFL_Chain|OPFL_MemRefs,
38226 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38227 0,
38228 0,
38229 42|128,2,
38230 OPC_CheckChild1Type, MVT::v2i64,
38231 OPC_RecordChild2,
38232 OPC_Scope, 123,
38233 OPC_CheckChild2TypeI32,
38234 OPC_CheckPredicate7,
38235 OPC_CheckPredicate0,
38236 OPC_Scope, 23,
38237 OPC_CheckPredicate, 39,
38238 OPC_CheckPatternPredicate7,
38239 OPC_CheckComplexPat6, /*#*/2,
38240 OPC_EmitMergeInputChains1_0,
38241 OPC_EmitInteger32, 0,
38242 OPC_EmitRegisterI32, 0 ,
38243 OPC_EmitRegisterI32, 0 ,
38244 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
38245 6, 1, 3, 4, 5, 6, 7,
38246 24,
38247 OPC_CheckPredicate, 38,
38248 OPC_CheckPatternPredicate7,
38249 OPC_CheckComplexPat, /*CP*/12, /*#*/2,
38250 OPC_EmitMergeInputChains1_0,
38251 OPC_EmitInteger32, 0,
38252 OPC_EmitRegisterI32, 0 ,
38253 OPC_EmitRegisterI32, 0 ,
38254 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRHU16), 0|OPFL_Chain|OPFL_MemRefs,
38255 6, 1, 3, 4, 5, 6, 7,
38256 24,
38257 OPC_CheckPredicate, 8,
38258 OPC_CheckPatternPredicate7,
38259 OPC_CheckComplexPat, /*CP*/13, /*#*/2,
38260 OPC_EmitMergeInputChains1_0,
38261 OPC_EmitInteger32, 0,
38262 OPC_EmitRegisterI32, 0 ,
38263 OPC_EmitRegisterI32, 0 ,
38264 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRWU32), 0|OPFL_Chain|OPFL_MemRefs,
38265 6, 1, 3, 4, 5, 6, 7,
38266 43,
38267 OPC_CheckPatternPredicate, 12,
38268 OPC_CheckComplexPat6, /*#*/2,
38269 OPC_EmitMergeInputChains1_0,
38270 OPC_EmitInteger32, 0,
38271 OPC_EmitRegisterI32, 0 ,
38272 OPC_EmitRegisterI32, 0 ,
38273 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
38274 MVT::v4i32, 0,
38275 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VREV64_8),
38276 MVT::v16i8, 5, 1, 5, 6, 7, 8,
38277 OPC_EmitInteger32, 0,
38278 OPC_EmitRegisterI32, 0 ,
38279 OPC_EmitRegisterI32, 0 ,
38280 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
38281 6, 9, 3, 4, 10, 11, 12,
38282 0,
38283 39|128,1,
38284 OPC_RecordChild3,
38285 OPC_CheckChild3TypeI32,
38286 OPC_CheckPredicate0,
38287 OPC_CheckTypeI32,
38288 OPC_Scope, 25,
38289 OPC_CheckPredicate, 9,
38290 OPC_CheckPatternPredicate7,
38291 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
38292 OPC_EmitMergeInputChains1_0,
38293 OPC_EmitInteger32, 0,
38294 OPC_EmitRegisterI32, 0 ,
38295 OPC_EmitRegisterI32, 0 ,
38296 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_pre), 0|OPFL_Chain|OPFL_MemRefs,
38297 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38298 24,
38299 OPC_CheckPredicate6,
38300 OPC_CheckPatternPredicate7,
38301 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
38302 OPC_EmitMergeInputChains1_0,
38303 OPC_EmitInteger32, 0,
38304 OPC_EmitRegisterI32, 0 ,
38305 OPC_EmitRegisterI32, 0 ,
38306 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_post), 0|OPFL_Chain|OPFL_MemRefs,
38307 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38308 27,
38309 OPC_CheckPredicate, 9,
38310 OPC_CheckPredicate, 22,
38311 OPC_CheckPatternPredicate7,
38312 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
38313 OPC_EmitMergeInputChains1_0,
38314 OPC_EmitInteger32, 0,
38315 OPC_EmitRegisterI32, 0 ,
38316 OPC_EmitRegisterI32, 0 ,
38317 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_pre), 0|OPFL_Chain|OPFL_MemRefs,
38318 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38319 26,
38320 OPC_CheckPredicate6,
38321 OPC_CheckPredicate, 22,
38322 OPC_CheckPatternPredicate7,
38323 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
38324 OPC_EmitMergeInputChains1_0,
38325 OPC_EmitInteger32, 0,
38326 OPC_EmitRegisterI32, 0 ,
38327 OPC_EmitRegisterI32, 0 ,
38328 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_post), 0|OPFL_Chain|OPFL_MemRefs,
38329 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38330 27,
38331 OPC_CheckPredicate, 9,
38332 OPC_CheckPredicate, 8,
38333 OPC_CheckPatternPredicate7,
38334 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
38335 OPC_EmitMergeInputChains1_0,
38336 OPC_EmitInteger32, 0,
38337 OPC_EmitRegisterI32, 0 ,
38338 OPC_EmitRegisterI32, 0 ,
38339 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_pre), 0|OPFL_Chain|OPFL_MemRefs,
38340 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38341 26,
38342 OPC_CheckPredicate6,
38343 OPC_CheckPredicate, 8,
38344 OPC_CheckPatternPredicate7,
38345 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
38346 OPC_EmitMergeInputChains1_0,
38347 OPC_EmitInteger32, 0,
38348 OPC_EmitRegisterI32, 0 ,
38349 OPC_EmitRegisterI32, 0 ,
38350 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_post), 0|OPFL_Chain|OPFL_MemRefs,
38351 MVT::i32, 6, 1, 2, 4, 5, 6, 7,
38352 0,
38353 0,
38354 0,
38355 0,
38356 54|128,27, TARGET_VAL(ISD::INTRINSIC_VOID),
38357 OPC_Scope, 91|128,5,
38358 OPC_RecordNode,
38359 OPC_Scope, 76,
38360 OPC_CheckChild1Integer, 40|128,49,
38361 OPC_RecordChild2,
38362 OPC_MoveChild2,
38363 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38364 OPC_MoveSibling3,
38365 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38366 OPC_RecordNode,
38367 OPC_MoveSibling4,
38368 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38369 OPC_RecordNode,
38370 OPC_MoveSibling5,
38371 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38372 OPC_RecordNode,
38373 OPC_MoveSibling6,
38374 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38375 OPC_RecordNode,
38376 OPC_MoveSibling7,
38377 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38378 OPC_RecordNode,
38379 OPC_MoveParent,
38380 OPC_Scope, 19,
38381 OPC_CheckPatternPredicate, 46,
38382 OPC_EmitMergeInputChains1_0,
38383 OPC_EmitInteger32, 28,
38384 OPC_EmitRegisterI32, 0 ,
38385 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::CDP),
38386 8, 1, 2, 3, 4, 5, 6, 7, 8,
38387 19,
38388 OPC_CheckPatternPredicate, 47,
38389 OPC_EmitMergeInputChains1_0,
38390 OPC_EmitInteger32, 28,
38391 OPC_EmitRegisterI32, 0 ,
38392 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2CDP),
38393 8, 1, 2, 3, 4, 5, 6, 7, 8,
38394 0,
38395 70,
38396 OPC_CheckChild1Integer, 42|128,49,
38397 OPC_RecordChild2,
38398 OPC_MoveChild2,
38399 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38400 OPC_MoveSibling3,
38401 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38402 OPC_RecordNode,
38403 OPC_MoveSibling4,
38404 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38405 OPC_RecordNode,
38406 OPC_MoveSibling5,
38407 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38408 OPC_RecordNode,
38409 OPC_MoveSibling6,
38410 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38411 OPC_RecordNode,
38412 OPC_MoveSibling7,
38413 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38414 OPC_RecordNode,
38415 OPC_MoveParent,
38416 OPC_Scope, 13,
38417 OPC_CheckPatternPredicate, 46,
38418 OPC_EmitMergeInputChains1_0,
38419 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::CDP2),
38420 6, 1, 2, 3, 4, 5, 6,
38421 19,
38422 OPC_CheckPatternPredicate, 47,
38423 OPC_EmitMergeInputChains1_0,
38424 OPC_EmitInteger32, 28,
38425 OPC_EmitRegisterI32, 0 ,
38426 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2CDP2),
38427 8, 1, 2, 3, 4, 5, 6, 7, 8,
38428 0,
38429 56,
38430 OPC_CheckChild1Integer, 88|128,49,
38431 OPC_RecordChild2,
38432 OPC_MoveChild2,
38433 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38434 OPC_MoveSibling3,
38435 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38436 OPC_RecordNode,
38437 OPC_MoveParent,
38438 OPC_RecordChild4,
38439 OPC_CheckChild4TypeI32,
38440 OPC_Scope, 18,
38441 OPC_CheckPatternPredicate3,
38442 OPC_CheckComplexPat3, /*#*/3,
38443 OPC_EmitMergeInputChains1_0,
38444 OPC_EmitInteger32, 28,
38445 OPC_EmitRegisterI32, 0 ,
38446 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::LDC_OFFSET),
38447 6, 1, 2, 4, 5, 6, 7,
38448 18,
38449 OPC_CheckPatternPredicate4,
38450 OPC_CheckComplexPat3, /*#*/3,
38451 OPC_EmitMergeInputChains1_0,
38452 OPC_EmitInteger32, 28,
38453 OPC_EmitRegisterI32, 0 ,
38454 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2LDC_OFFSET),
38455 6, 1, 2, 4, 5, 6, 7,
38456 0,
38457 56,
38458 OPC_CheckChild1Integer, 94|128,49,
38459 OPC_RecordChild2,
38460 OPC_MoveChild2,
38461 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38462 OPC_MoveSibling3,
38463 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38464 OPC_RecordNode,
38465 OPC_MoveParent,
38466 OPC_RecordChild4,
38467 OPC_CheckChild4TypeI32,
38468 OPC_Scope, 18,
38469 OPC_CheckPatternPredicate3,
38470 OPC_CheckComplexPat3, /*#*/3,
38471 OPC_EmitMergeInputChains1_0,
38472 OPC_EmitInteger32, 28,
38473 OPC_EmitRegisterI32, 0 ,
38474 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::LDCL_OFFSET),
38475 6, 1, 2, 4, 5, 6, 7,
38476 18,
38477 OPC_CheckPatternPredicate4,
38478 OPC_CheckComplexPat3, /*#*/3,
38479 OPC_EmitMergeInputChains1_0,
38480 OPC_EmitInteger32, 28,
38481 OPC_EmitRegisterI32, 0 ,
38482 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2LDCL_OFFSET),
38483 6, 1, 2, 4, 5, 6, 7,
38484 0,
38485 52,
38486 OPC_CheckChild1Integer, 90|128,49,
38487 OPC_RecordChild2,
38488 OPC_MoveChild2,
38489 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38490 OPC_MoveSibling3,
38491 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38492 OPC_RecordNode,
38493 OPC_MoveParent,
38494 OPC_RecordChild4,
38495 OPC_CheckChild4TypeI32,
38496 OPC_Scope, 13,
38497 OPC_CheckPatternPredicate, 46,
38498 OPC_CheckComplexPat3, /*#*/3,
38499 OPC_EmitMergeInputChains1_0,
38500 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::LDC2_OFFSET),
38501 4, 1, 2, 4, 5,
38502 19,
38503 OPC_CheckPatternPredicate, 47,
38504 OPC_CheckComplexPat3, /*#*/3,
38505 OPC_EmitMergeInputChains1_0,
38506 OPC_EmitInteger32, 28,
38507 OPC_EmitRegisterI32, 0 ,
38508 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2LDC2_OFFSET),
38509 6, 1, 2, 4, 5, 6, 7,
38510 0,
38511 52,
38512 OPC_CheckChild1Integer, 92|128,49,
38513 OPC_RecordChild2,
38514 OPC_MoveChild2,
38515 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38516 OPC_MoveSibling3,
38517 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38518 OPC_RecordNode,
38519 OPC_MoveParent,
38520 OPC_RecordChild4,
38521 OPC_CheckChild4TypeI32,
38522 OPC_Scope, 13,
38523 OPC_CheckPatternPredicate, 46,
38524 OPC_CheckComplexPat3, /*#*/3,
38525 OPC_EmitMergeInputChains1_0,
38526 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::LDC2L_OFFSET),
38527 4, 1, 2, 4, 5,
38528 19,
38529 OPC_CheckPatternPredicate, 47,
38530 OPC_CheckComplexPat3, /*#*/3,
38531 OPC_EmitMergeInputChains1_0,
38532 OPC_EmitInteger32, 28,
38533 OPC_EmitRegisterI32, 0 ,
38534 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2LDC2L_OFFSET),
38535 6, 1, 2, 4, 5, 6, 7,
38536 0,
38537 56,
38538 OPC_CheckChild1Integer, 120|128,55,
38539 OPC_RecordChild2,
38540 OPC_MoveChild2,
38541 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38542 OPC_MoveSibling3,
38543 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38544 OPC_RecordNode,
38545 OPC_MoveParent,
38546 OPC_RecordChild4,
38547 OPC_CheckChild4TypeI32,
38548 OPC_Scope, 18,
38549 OPC_CheckPatternPredicate3,
38550 OPC_CheckComplexPat3, /*#*/3,
38551 OPC_EmitMergeInputChains1_0,
38552 OPC_EmitInteger32, 28,
38553 OPC_EmitRegisterI32, 0 ,
38554 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::STC_OFFSET),
38555 6, 1, 2, 4, 5, 6, 7,
38556 18,
38557 OPC_CheckPatternPredicate4,
38558 OPC_CheckComplexPat3, /*#*/3,
38559 OPC_EmitMergeInputChains1_0,
38560 OPC_EmitInteger32, 28,
38561 OPC_EmitRegisterI32, 0 ,
38562 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2STC_OFFSET),
38563 6, 1, 2, 4, 5, 6, 7,
38564 0,
38565 56,
38566 OPC_CheckChild1Integer, 126|128,55,
38567 OPC_RecordChild2,
38568 OPC_MoveChild2,
38569 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38570 OPC_MoveSibling3,
38571 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38572 OPC_RecordNode,
38573 OPC_MoveParent,
38574 OPC_RecordChild4,
38575 OPC_CheckChild4TypeI32,
38576 OPC_Scope, 18,
38577 OPC_CheckPatternPredicate3,
38578 OPC_CheckComplexPat3, /*#*/3,
38579 OPC_EmitMergeInputChains1_0,
38580 OPC_EmitInteger32, 28,
38581 OPC_EmitRegisterI32, 0 ,
38582 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::STCL_OFFSET),
38583 6, 1, 2, 4, 5, 6, 7,
38584 18,
38585 OPC_CheckPatternPredicate4,
38586 OPC_CheckComplexPat3, /*#*/3,
38587 OPC_EmitMergeInputChains1_0,
38588 OPC_EmitInteger32, 28,
38589 OPC_EmitRegisterI32, 0 ,
38590 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2STCL_OFFSET),
38591 6, 1, 2, 4, 5, 6, 7,
38592 0,
38593 52,
38594 OPC_CheckChild1Integer, 122|128,55,
38595 OPC_RecordChild2,
38596 OPC_MoveChild2,
38597 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38598 OPC_MoveSibling3,
38599 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38600 OPC_RecordNode,
38601 OPC_MoveParent,
38602 OPC_RecordChild4,
38603 OPC_CheckChild4TypeI32,
38604 OPC_Scope, 13,
38605 OPC_CheckPatternPredicate, 46,
38606 OPC_CheckComplexPat3, /*#*/3,
38607 OPC_EmitMergeInputChains1_0,
38608 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::STC2_OFFSET),
38609 4, 1, 2, 4, 5,
38610 19,
38611 OPC_CheckPatternPredicate, 47,
38612 OPC_CheckComplexPat3, /*#*/3,
38613 OPC_EmitMergeInputChains1_0,
38614 OPC_EmitInteger32, 28,
38615 OPC_EmitRegisterI32, 0 ,
38616 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2STC2_OFFSET),
38617 6, 1, 2, 4, 5, 6, 7,
38618 0,
38619 52,
38620 OPC_CheckChild1Integer, 124|128,55,
38621 OPC_RecordChild2,
38622 OPC_MoveChild2,
38623 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38624 OPC_MoveSibling3,
38625 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38626 OPC_RecordNode,
38627 OPC_MoveParent,
38628 OPC_RecordChild4,
38629 OPC_CheckChild4TypeI32,
38630 OPC_Scope, 13,
38631 OPC_CheckPatternPredicate, 46,
38632 OPC_CheckComplexPat3, /*#*/3,
38633 OPC_EmitMergeInputChains1_0,
38634 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::STC2L_OFFSET),
38635 4, 1, 2, 4, 5,
38636 19,
38637 OPC_CheckPatternPredicate, 47,
38638 OPC_CheckComplexPat3, /*#*/3,
38639 OPC_EmitMergeInputChains1_0,
38640 OPC_EmitInteger32, 28,
38641 OPC_EmitRegisterI32, 0 ,
38642 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2STC2L_OFFSET),
38643 6, 1, 2, 4, 5, 6, 7,
38644 0,
38645 71,
38646 OPC_CheckChild1Integer, 100|128,49,
38647 OPC_RecordChild2,
38648 OPC_MoveChild2,
38649 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38650 OPC_MoveSibling3,
38651 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38652 OPC_RecordNode,
38653 OPC_MoveParent,
38654 OPC_RecordChild4,
38655 OPC_RecordChild5,
38656 OPC_MoveChild5,
38657 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38658 OPC_MoveSibling6,
38659 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38660 OPC_RecordNode,
38661 OPC_MoveSibling7,
38662 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38663 OPC_RecordNode,
38664 OPC_MoveParent,
38665 OPC_Scope, 18,
38666 OPC_CheckPatternPredicate3,
38667 OPC_EmitMergeInputChains1_0,
38668 OPC_EmitInteger32, 28,
38669 OPC_EmitRegisterI32, 0 ,
38670 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::MCR),
38671 8, 1, 2, 3, 4, 5, 6, 7, 8,
38672 18,
38673 OPC_CheckPatternPredicate4,
38674 OPC_EmitMergeInputChains1_0,
38675 OPC_EmitInteger32, 28,
38676 OPC_EmitRegisterI32, 0 ,
38677 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2MCR),
38678 8, 1, 2, 3, 4, 5, 6, 7, 8,
38679 0,
38680 67,
38681 OPC_CheckChild1Integer, 102|128,49,
38682 OPC_RecordChild2,
38683 OPC_MoveChild2,
38684 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38685 OPC_MoveSibling3,
38686 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38687 OPC_RecordNode,
38688 OPC_MoveParent,
38689 OPC_RecordChild4,
38690 OPC_RecordChild5,
38691 OPC_MoveChild5,
38692 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38693 OPC_MoveSibling6,
38694 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38695 OPC_RecordNode,
38696 OPC_MoveSibling7,
38697 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
38698 OPC_RecordNode,
38699 OPC_MoveParent,
38700 OPC_Scope, 13,
38701 OPC_CheckPatternPredicate, 46,
38702 OPC_EmitMergeInputChains1_0,
38703 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::MCR2),
38704 6, 1, 2, 3, 4, 5, 6,
38705 19,
38706 OPC_CheckPatternPredicate, 47,
38707 OPC_EmitMergeInputChains1_0,
38708 OPC_EmitInteger32, 28,
38709 OPC_EmitRegisterI32, 0 ,
38710 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2MCR2),
38711 8, 1, 2, 3, 4, 5, 6, 7, 8,
38712 0,
38713 0,
38714 113|128,6,
38715 OPC_RecordMemRef,
38716 OPC_RecordNode,
38717 OPC_Scope, 45|128,3,
38718 OPC_CheckChild1Integer, 114|128,52,
38719 OPC_RecordChild2,
38720 OPC_CheckChild2TypeI32,
38721 OPC_RecordChild3,
38722 OPC_Scope, 30,
38723 OPC_CheckChild3Type, MVT::v16i8,
38724 OPC_RecordChild4,
38725 OPC_CheckChild4Type, MVT::v16i8,
38726 OPC_MoveChild5,
38727 OPC_CheckInteger, 16,
38728 OPC_MoveSibling6,
38729 OPC_CheckInteger, 0,
38730 OPC_MoveParent,
38731 OPC_EmitMergeInputChains1_0,
38732 OPC_EmitInteger32, 0,
38733 OPC_EmitRegisterI32, 0 ,
38734 OPC_EmitRegisterI32, 0 ,
38735 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRB8_rq), 0|OPFL_Chain|OPFL_MemRefs,
38736 6, 3, 1, 2, 4, 5, 6,
38737 11|128,1,
38738 OPC_CheckChild3Type, MVT::v8i16,
38739 OPC_RecordChild4,
38740 OPC_Scope, 80,
38741 OPC_CheckChild4Type, MVT::v8i16,
38742 OPC_MoveChild5,
38743 OPC_Scope, 24,
38744 OPC_CheckInteger, 16,
38745 OPC_MoveSibling6,
38746 OPC_CheckInteger, 0,
38747 OPC_MoveParent,
38748 OPC_EmitMergeInputChains1_0,
38749 OPC_EmitInteger32, 0,
38750 OPC_EmitRegisterI32, 0 ,
38751 OPC_EmitRegisterI32, 0 ,
38752 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRB16_rq), 0|OPFL_Chain|OPFL_MemRefs,
38753 6, 3, 1, 2, 4, 5, 6,
38754 49,
38755 OPC_CheckInteger, 32,
38756 OPC_MoveSibling6,
38757 OPC_Scope, 21,
38758 OPC_CheckInteger, 0,
38759 OPC_MoveParent,
38760 OPC_EmitMergeInputChains1_0,
38761 OPC_EmitInteger32, 0,
38762 OPC_EmitRegisterI32, 0 ,
38763 OPC_EmitRegisterI32, 0 ,
38764 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
38765 6, 3, 1, 2, 4, 5, 6,
38766 21,
38767 OPC_CheckInteger, 2,
38768 OPC_MoveParent,
38769 OPC_EmitMergeInputChains1_0,
38770 OPC_EmitInteger32, 0,
38771 OPC_EmitRegisterI32, 0 ,
38772 OPC_EmitRegisterI32, 0 ,
38773 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH16_rq), 0|OPFL_Chain|OPFL_MemRefs,
38774 6, 3, 1, 2, 4, 5, 6,
38775 0,
38776 0,
38777 52,
38778 OPC_CheckChild4Type, MVT::v8f16,
38779 OPC_MoveChild5,
38780 OPC_CheckInteger, 32,
38781 OPC_MoveSibling6,
38782 OPC_Scope, 21,
38783 OPC_CheckInteger, 0,
38784 OPC_MoveParent,
38785 OPC_EmitMergeInputChains1_0,
38786 OPC_EmitInteger32, 0,
38787 OPC_EmitRegisterI32, 0 ,
38788 OPC_EmitRegisterI32, 0 ,
38789 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
38790 6, 3, 1, 2, 4, 5, 6,
38791 21,
38792 OPC_CheckInteger, 2,
38793 OPC_MoveParent,
38794 OPC_EmitMergeInputChains1_0,
38795 OPC_EmitInteger32, 0,
38796 OPC_EmitRegisterI32, 0 ,
38797 OPC_EmitRegisterI32, 0 ,
38798 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH16_rq), 0|OPFL_Chain|OPFL_MemRefs,
38799 6, 3, 1, 2, 4, 5, 6,
38800 0,
38801 0,
38802 62|128,1,
38803 OPC_CheckChild3Type, MVT::v4i32,
38804 OPC_RecordChild4,
38805 OPC_Scope, 2|128,1,
38806 OPC_CheckChild4Type, MVT::v4i32,
38807 OPC_MoveChild5,
38808 OPC_Scope, 24,
38809 OPC_CheckInteger, 16,
38810 OPC_MoveSibling6,
38811 OPC_CheckInteger, 0,
38812 OPC_MoveParent,
38813 OPC_EmitMergeInputChains1_0,
38814 OPC_EmitInteger32, 0,
38815 OPC_EmitRegisterI32, 0 ,
38816 OPC_EmitRegisterI32, 0 ,
38817 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRB32_rq), 0|OPFL_Chain|OPFL_MemRefs,
38818 6, 3, 1, 2, 4, 5, 6,
38819 49,
38820 OPC_CheckInteger, 32,
38821 OPC_MoveSibling6,
38822 OPC_Scope, 21,
38823 OPC_CheckInteger, 0,
38824 OPC_MoveParent,
38825 OPC_EmitMergeInputChains1_0,
38826 OPC_EmitInteger32, 0,
38827 OPC_EmitRegisterI32, 0 ,
38828 OPC_EmitRegisterI32, 0 ,
38829 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
38830 6, 3, 1, 2, 4, 5, 6,
38831 21,
38832 OPC_CheckInteger, 2,
38833 OPC_MoveParent,
38834 OPC_EmitMergeInputChains1_0,
38835 OPC_EmitInteger32, 0,
38836 OPC_EmitRegisterI32, 0 ,
38837 OPC_EmitRegisterI32, 0 ,
38838 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH32_rq), 0|OPFL_Chain|OPFL_MemRefs,
38839 6, 3, 1, 2, 4, 5, 6,
38840 0,
38841 49,
38842 OPC_CheckInteger, 64,
38843 OPC_MoveSibling6,
38844 OPC_Scope, 21,
38845 OPC_CheckInteger, 0,
38846 OPC_MoveParent,
38847 OPC_EmitMergeInputChains1_0,
38848 OPC_EmitInteger32, 0,
38849 OPC_EmitRegisterI32, 0 ,
38850 OPC_EmitRegisterI32, 0 ,
38851 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
38852 6, 3, 1, 2, 4, 5, 6,
38853 21,
38854 OPC_CheckInteger, 4,
38855 OPC_MoveParent,
38856 OPC_EmitMergeInputChains1_0,
38857 OPC_EmitInteger32, 0,
38858 OPC_EmitRegisterI32, 0 ,
38859 OPC_EmitRegisterI32, 0 ,
38860 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_rq), 0|OPFL_Chain|OPFL_MemRefs,
38861 6, 3, 1, 2, 4, 5, 6,
38862 0,
38863 0,
38864 52,
38865 OPC_CheckChild4Type, MVT::v4f32,
38866 OPC_MoveChild5,
38867 OPC_CheckInteger, 64,
38868 OPC_MoveSibling6,
38869 OPC_Scope, 21,
38870 OPC_CheckInteger, 0,
38871 OPC_MoveParent,
38872 OPC_EmitMergeInputChains1_0,
38873 OPC_EmitInteger32, 0,
38874 OPC_EmitRegisterI32, 0 ,
38875 OPC_EmitRegisterI32, 0 ,
38876 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
38877 6, 3, 1, 2, 4, 5, 6,
38878 21,
38879 OPC_CheckInteger, 4,
38880 OPC_MoveParent,
38881 OPC_EmitMergeInputChains1_0,
38882 OPC_EmitInteger32, 0,
38883 OPC_EmitRegisterI32, 0 ,
38884 OPC_EmitRegisterI32, 0 ,
38885 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_rq), 0|OPFL_Chain|OPFL_MemRefs,
38886 6, 3, 1, 2, 4, 5, 6,
38887 0,
38888 0,
38889 56,
38890 OPC_CheckChild3Type, MVT::v2i64,
38891 OPC_RecordChild4,
38892 OPC_CheckChild4Type, MVT::v2i64,
38893 OPC_MoveChild5,
38894 OPC_CheckInteger, 0|128,1,
38895 OPC_MoveSibling6,
38896 OPC_Scope, 21,
38897 OPC_CheckInteger, 0,
38898 OPC_MoveParent,
38899 OPC_EmitMergeInputChains1_0,
38900 OPC_EmitInteger32, 0,
38901 OPC_EmitRegisterI32, 0 ,
38902 OPC_EmitRegisterI32, 0 ,
38903 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRD64_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
38904 6, 3, 1, 2, 4, 5, 6,
38905 21,
38906 OPC_CheckInteger, 6,
38907 OPC_MoveParent,
38908 OPC_EmitMergeInputChains1_0,
38909 OPC_EmitInteger32, 0,
38910 OPC_EmitRegisterI32, 0 ,
38911 OPC_EmitRegisterI32, 0 ,
38912 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRD64_rq), 0|OPFL_Chain|OPFL_MemRefs,
38913 6, 3, 1, 2, 4, 5, 6,
38914 0,
38915 0,
38916 60|128,3,
38917 OPC_CheckChild1Integer, 116|128,52,
38918 OPC_RecordChild2,
38919 OPC_CheckChild2TypeI32,
38920 OPC_RecordChild3,
38921 OPC_Scope, 31,
38922 OPC_CheckChild3Type, MVT::v16i8,
38923 OPC_RecordChild4,
38924 OPC_CheckChild4Type, MVT::v16i8,
38925 OPC_MoveChild5,
38926 OPC_CheckInteger, 16,
38927 OPC_MoveSibling6,
38928 OPC_CheckInteger, 0,
38929 OPC_MoveParent,
38930 OPC_RecordChild7,
38931 OPC_CheckChild7Type, MVT::v16i1,
38932 OPC_EmitMergeInputChains1_0,
38933 OPC_EmitInteger32, 2,
38934 OPC_EmitRegisterI32, 0 ,
38935 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRB8_rq), 0|OPFL_Chain|OPFL_MemRefs,
38936 6, 3, 1, 2, 5, 4, 6,
38937 16|128,1,
38938 OPC_CheckChild3Type, MVT::v8i16,
38939 OPC_RecordChild4,
38940 OPC_Scope, 83,
38941 OPC_CheckChild4Type, MVT::v8i16,
38942 OPC_MoveChild5,
38943 OPC_Scope, 25,
38944 OPC_CheckInteger, 16,
38945 OPC_MoveSibling6,
38946 OPC_CheckInteger, 0,
38947 OPC_MoveParent,
38948 OPC_RecordChild7,
38949 OPC_CheckChild7Type, MVT::v8i1,
38950 OPC_EmitMergeInputChains1_0,
38951 OPC_EmitInteger32, 2,
38952 OPC_EmitRegisterI32, 0 ,
38953 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRB16_rq), 0|OPFL_Chain|OPFL_MemRefs,
38954 6, 3, 1, 2, 5, 4, 6,
38955 51,
38956 OPC_CheckInteger, 32,
38957 OPC_MoveSibling6,
38958 OPC_Scope, 22,
38959 OPC_CheckInteger, 0,
38960 OPC_MoveParent,
38961 OPC_RecordChild7,
38962 OPC_CheckChild7Type, MVT::v8i1,
38963 OPC_EmitMergeInputChains1_0,
38964 OPC_EmitInteger32, 2,
38965 OPC_EmitRegisterI32, 0 ,
38966 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
38967 6, 3, 1, 2, 5, 4, 6,
38968 22,
38969 OPC_CheckInteger, 2,
38970 OPC_MoveParent,
38971 OPC_RecordChild7,
38972 OPC_CheckChild7Type, MVT::v8i1,
38973 OPC_EmitMergeInputChains1_0,
38974 OPC_EmitInteger32, 2,
38975 OPC_EmitRegisterI32, 0 ,
38976 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH16_rq), 0|OPFL_Chain|OPFL_MemRefs,
38977 6, 3, 1, 2, 5, 4, 6,
38978 0,
38979 0,
38980 54,
38981 OPC_CheckChild4Type, MVT::v8f16,
38982 OPC_MoveChild5,
38983 OPC_CheckInteger, 32,
38984 OPC_MoveSibling6,
38985 OPC_Scope, 22,
38986 OPC_CheckInteger, 0,
38987 OPC_MoveParent,
38988 OPC_RecordChild7,
38989 OPC_CheckChild7Type, MVT::v8i1,
38990 OPC_EmitMergeInputChains1_0,
38991 OPC_EmitInteger32, 2,
38992 OPC_EmitRegisterI32, 0 ,
38993 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
38994 6, 3, 1, 2, 5, 4, 6,
38995 22,
38996 OPC_CheckInteger, 2,
38997 OPC_MoveParent,
38998 OPC_RecordChild7,
38999 OPC_CheckChild7Type, MVT::v8i1,
39000 OPC_EmitMergeInputChains1_0,
39001 OPC_EmitInteger32, 2,
39002 OPC_EmitRegisterI32, 0 ,
39003 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH16_rq), 0|OPFL_Chain|OPFL_MemRefs,
39004 6, 3, 1, 2, 5, 4, 6,
39005 0,
39006 0,
39007 69|128,1,
39008 OPC_CheckChild3Type, MVT::v4i32,
39009 OPC_RecordChild4,
39010 OPC_Scope, 7|128,1,
39011 OPC_CheckChild4Type, MVT::v4i32,
39012 OPC_MoveChild5,
39013 OPC_Scope, 25,
39014 OPC_CheckInteger, 16,
39015 OPC_MoveSibling6,
39016 OPC_CheckInteger, 0,
39017 OPC_MoveParent,
39018 OPC_RecordChild7,
39019 OPC_CheckChild7Type, MVT::v4i1,
39020 OPC_EmitMergeInputChains1_0,
39021 OPC_EmitInteger32, 2,
39022 OPC_EmitRegisterI32, 0 ,
39023 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRB32_rq), 0|OPFL_Chain|OPFL_MemRefs,
39024 6, 3, 1, 2, 5, 4, 6,
39025 51,
39026 OPC_CheckInteger, 32,
39027 OPC_MoveSibling6,
39028 OPC_Scope, 22,
39029 OPC_CheckInteger, 0,
39030 OPC_MoveParent,
39031 OPC_RecordChild7,
39032 OPC_CheckChild7Type, MVT::v4i1,
39033 OPC_EmitMergeInputChains1_0,
39034 OPC_EmitInteger32, 2,
39035 OPC_EmitRegisterI32, 0 ,
39036 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
39037 6, 3, 1, 2, 5, 4, 6,
39038 22,
39039 OPC_CheckInteger, 2,
39040 OPC_MoveParent,
39041 OPC_RecordChild7,
39042 OPC_CheckChild7Type, MVT::v4i1,
39043 OPC_EmitMergeInputChains1_0,
39044 OPC_EmitInteger32, 2,
39045 OPC_EmitRegisterI32, 0 ,
39046 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH32_rq), 0|OPFL_Chain|OPFL_MemRefs,
39047 6, 3, 1, 2, 5, 4, 6,
39048 0,
39049 51,
39050 OPC_CheckInteger, 64,
39051 OPC_MoveSibling6,
39052 OPC_Scope, 22,
39053 OPC_CheckInteger, 0,
39054 OPC_MoveParent,
39055 OPC_RecordChild7,
39056 OPC_CheckChild7Type, MVT::v4i1,
39057 OPC_EmitMergeInputChains1_0,
39058 OPC_EmitInteger32, 2,
39059 OPC_EmitRegisterI32, 0 ,
39060 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
39061 6, 3, 1, 2, 5, 4, 6,
39062 22,
39063 OPC_CheckInteger, 4,
39064 OPC_MoveParent,
39065 OPC_RecordChild7,
39066 OPC_CheckChild7Type, MVT::v4i1,
39067 OPC_EmitMergeInputChains1_0,
39068 OPC_EmitInteger32, 2,
39069 OPC_EmitRegisterI32, 0 ,
39070 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_rq), 0|OPFL_Chain|OPFL_MemRefs,
39071 6, 3, 1, 2, 5, 4, 6,
39072 0,
39073 0,
39074 54,
39075 OPC_CheckChild4Type, MVT::v4f32,
39076 OPC_MoveChild5,
39077 OPC_CheckInteger, 64,
39078 OPC_MoveSibling6,
39079 OPC_Scope, 22,
39080 OPC_CheckInteger, 0,
39081 OPC_MoveParent,
39082 OPC_RecordChild7,
39083 OPC_CheckChild7Type, MVT::v4i1,
39084 OPC_EmitMergeInputChains1_0,
39085 OPC_EmitInteger32, 2,
39086 OPC_EmitRegisterI32, 0 ,
39087 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
39088 6, 3, 1, 2, 5, 4, 6,
39089 22,
39090 OPC_CheckInteger, 4,
39091 OPC_MoveParent,
39092 OPC_RecordChild7,
39093 OPC_CheckChild7Type, MVT::v4i1,
39094 OPC_EmitMergeInputChains1_0,
39095 OPC_EmitInteger32, 2,
39096 OPC_EmitRegisterI32, 0 ,
39097 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_rq), 0|OPFL_Chain|OPFL_MemRefs,
39098 6, 3, 1, 2, 5, 4, 6,
39099 0,
39100 0,
39101 58,
39102 OPC_CheckChild3Type, MVT::v2i64,
39103 OPC_RecordChild4,
39104 OPC_CheckChild4Type, MVT::v2i64,
39105 OPC_MoveChild5,
39106 OPC_CheckInteger, 0|128,1,
39107 OPC_MoveSibling6,
39108 OPC_Scope, 22,
39109 OPC_CheckInteger, 0,
39110 OPC_MoveParent,
39111 OPC_RecordChild7,
39112 OPC_CheckChild7Type, MVT::v2i1,
39113 OPC_EmitMergeInputChains1_0,
39114 OPC_EmitInteger32, 2,
39115 OPC_EmitRegisterI32, 0 ,
39116 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRD64_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
39117 6, 3, 1, 2, 5, 4, 6,
39118 22,
39119 OPC_CheckInteger, 6,
39120 OPC_MoveParent,
39121 OPC_RecordChild7,
39122 OPC_CheckChild7Type, MVT::v2i1,
39123 OPC_EmitMergeInputChains1_0,
39124 OPC_EmitInteger32, 2,
39125 OPC_EmitRegisterI32, 0 ,
39126 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRD64_rq), 0|OPFL_Chain|OPFL_MemRefs,
39127 6, 3, 1, 2, 5, 4, 6,
39128 0,
39129 0,
39130 0,
39131 7|128,1,
39132 OPC_RecordNode,
39133 OPC_Scope, 60,
39134 OPC_CheckChild1Integer, 104|128,49,
39135 OPC_RecordChild2,
39136 OPC_MoveChild2,
39137 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
39138 OPC_MoveSibling3,
39139 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
39140 OPC_RecordNode,
39141 OPC_MoveParent,
39142 OPC_RecordChild4,
39143 OPC_RecordChild5,
39144 OPC_RecordChild6,
39145 OPC_MoveChild6,
39146 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
39147 OPC_MoveParent,
39148 OPC_Scope, 17,
39149 OPC_CheckPatternPredicate3,
39150 OPC_EmitMergeInputChains1_0,
39151 OPC_EmitInteger32, 28,
39152 OPC_EmitRegisterI32, 0 ,
39153 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::MCRR),
39154 7, 1, 2, 3, 4, 5, 6, 7,
39155 17,
39156 OPC_CheckPatternPredicate4,
39157 OPC_EmitMergeInputChains1_0,
39158 OPC_EmitInteger32, 28,
39159 OPC_EmitRegisterI32, 0 ,
39160 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2MCRR),
39161 7, 1, 2, 3, 4, 5, 6, 7,
39162 0,
39163 56,
39164 OPC_CheckChild1Integer, 106|128,49,
39165 OPC_RecordChild2,
39166 OPC_MoveChild2,
39167 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
39168 OPC_MoveSibling3,
39169 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
39170 OPC_RecordNode,
39171 OPC_MoveParent,
39172 OPC_RecordChild4,
39173 OPC_RecordChild5,
39174 OPC_RecordChild6,
39175 OPC_MoveChild6,
39176 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
39177 OPC_MoveParent,
39178 OPC_Scope, 12,
39179 OPC_CheckPatternPredicate, 46,
39180 OPC_EmitMergeInputChains1_0,
39181 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::MCRR2),
39182 5, 1, 2, 3, 4, 5,
39183 18,
39184 OPC_CheckPatternPredicate, 47,
39185 OPC_EmitMergeInputChains1_0,
39186 OPC_EmitInteger32, 28,
39187 OPC_EmitRegisterI32, 0 ,
39188 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2MCRR2),
39189 7, 1, 2, 3, 4, 5, 6, 7,
39190 0,
39191 13,
39192 OPC_CheckChild1Integer, 30|128,56,
39193 OPC_CheckChild2Integer, 114|128,3,
39194 OPC_CheckPatternPredicate, 91,
39195 OPC_EmitMergeInputChains1_0,
39196 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t__brkdiv0),
39197 0,
39198 0,
39199 17|128,9,
39200 OPC_RecordMemRef,
39201 OPC_RecordNode,
39202 OPC_Scope, 77|128,2,
39203 OPC_CheckChild1Integer, 102|128,52,
39204 OPC_RecordChild2,
39205 OPC_CheckChild2TypeI32,
39206 OPC_RecordChild3,
39207 OPC_Scope, 64,
39208 OPC_CheckChild3Type, MVT::v16i8,
39209 OPC_RecordChild4,
39210 OPC_CheckChild4Type, MVT::v16i8,
39211 OPC_MoveChild5,
39212 OPC_Scope, 27,
39213 OPC_CheckInteger, 0,
39214 OPC_MoveParent,
39215 OPC_EmitMergeInputChains1_0,
39216 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
39217 OPC_EmitStringInteger32, ARM::qsub_0,
39218 OPC_EmitStringInteger32, ARM::qsub_1,
39219 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39220 MVT::v4i64, 5, 4, 2, 5, 3, 6,
39221 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST20_8), 0|OPFL_Chain|OPFL_MemRefs,
39222 2, 7, 1,
39223 27,
39224 OPC_CheckInteger, 2,
39225 OPC_MoveParent,
39226 OPC_EmitMergeInputChains1_0,
39227 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
39228 OPC_EmitStringInteger32, ARM::qsub_0,
39229 OPC_EmitStringInteger32, ARM::qsub_1,
39230 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39231 MVT::v4i64, 5, 4, 2, 5, 3, 6,
39232 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST21_8), 0|OPFL_Chain|OPFL_MemRefs,
39233 2, 7, 1,
39234 0,
39235 64,
39236 OPC_CheckChild3Type, MVT::v8i16,
39237 OPC_RecordChild4,
39238 OPC_CheckChild4Type, MVT::v8i16,
39239 OPC_MoveChild5,
39240 OPC_Scope, 27,
39241 OPC_CheckInteger, 0,
39242 OPC_MoveParent,
39243 OPC_EmitMergeInputChains1_0,
39244 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
39245 OPC_EmitStringInteger32, ARM::qsub_0,
39246 OPC_EmitStringInteger32, ARM::qsub_1,
39247 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39248 MVT::v4i64, 5, 4, 2, 5, 3, 6,
39249 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST20_16), 0|OPFL_Chain|OPFL_MemRefs,
39250 2, 7, 1,
39251 27,
39252 OPC_CheckInteger, 2,
39253 OPC_MoveParent,
39254 OPC_EmitMergeInputChains1_0,
39255 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
39256 OPC_EmitStringInteger32, ARM::qsub_0,
39257 OPC_EmitStringInteger32, ARM::qsub_1,
39258 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39259 MVT::v4i64, 5, 4, 2, 5, 3, 6,
39260 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST21_16), 0|OPFL_Chain|OPFL_MemRefs,
39261 2, 7, 1,
39262 0,
39263 64,
39264 OPC_CheckChild3Type, MVT::v4i32,
39265 OPC_RecordChild4,
39266 OPC_CheckChild4Type, MVT::v4i32,
39267 OPC_MoveChild5,
39268 OPC_Scope, 27,
39269 OPC_CheckInteger, 0,
39270 OPC_MoveParent,
39271 OPC_EmitMergeInputChains1_0,
39272 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
39273 OPC_EmitStringInteger32, ARM::qsub_0,
39274 OPC_EmitStringInteger32, ARM::qsub_1,
39275 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39276 MVT::v4i64, 5, 4, 2, 5, 3, 6,
39277 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST20_32), 0|OPFL_Chain|OPFL_MemRefs,
39278 2, 7, 1,
39279 27,
39280 OPC_CheckInteger, 2,
39281 OPC_MoveParent,
39282 OPC_EmitMergeInputChains1_0,
39283 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
39284 OPC_EmitStringInteger32, ARM::qsub_0,
39285 OPC_EmitStringInteger32, ARM::qsub_1,
39286 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39287 MVT::v4i64, 5, 4, 2, 5, 3, 6,
39288 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST21_32), 0|OPFL_Chain|OPFL_MemRefs,
39289 2, 7, 1,
39290 0,
39291 64,
39292 OPC_CheckChild3Type, MVT::v8f16,
39293 OPC_RecordChild4,
39294 OPC_CheckChild4Type, MVT::v8f16,
39295 OPC_MoveChild5,
39296 OPC_Scope, 27,
39297 OPC_CheckInteger, 0,
39298 OPC_MoveParent,
39299 OPC_EmitMergeInputChains1_0,
39300 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
39301 OPC_EmitStringInteger32, ARM::qsub_0,
39302 OPC_EmitStringInteger32, ARM::qsub_1,
39303 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39304 MVT::v4i64, 5, 4, 2, 5, 3, 6,
39305 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST20_16), 0|OPFL_Chain|OPFL_MemRefs,
39306 2, 7, 1,
39307 27,
39308 OPC_CheckInteger, 2,
39309 OPC_MoveParent,
39310 OPC_EmitMergeInputChains1_0,
39311 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
39312 OPC_EmitStringInteger32, ARM::qsub_0,
39313 OPC_EmitStringInteger32, ARM::qsub_1,
39314 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39315 MVT::v4i64, 5, 4, 2, 5, 3, 6,
39316 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST21_16), 0|OPFL_Chain|OPFL_MemRefs,
39317 2, 7, 1,
39318 0,
39319 64,
39320 OPC_CheckChild3Type, MVT::v4f32,
39321 OPC_RecordChild4,
39322 OPC_CheckChild4Type, MVT::v4f32,
39323 OPC_MoveChild5,
39324 OPC_Scope, 27,
39325 OPC_CheckInteger, 0,
39326 OPC_MoveParent,
39327 OPC_EmitMergeInputChains1_0,
39328 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
39329 OPC_EmitStringInteger32, ARM::qsub_0,
39330 OPC_EmitStringInteger32, ARM::qsub_1,
39331 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39332 MVT::v4i64, 5, 4, 2, 5, 3, 6,
39333 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST20_32), 0|OPFL_Chain|OPFL_MemRefs,
39334 2, 7, 1,
39335 27,
39336 OPC_CheckInteger, 2,
39337 OPC_MoveParent,
39338 OPC_EmitMergeInputChains1_0,
39339 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
39340 OPC_EmitStringInteger32, ARM::qsub_0,
39341 OPC_EmitStringInteger32, ARM::qsub_1,
39342 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39343 MVT::v4i64, 5, 4, 2, 5, 3, 6,
39344 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST21_32), 0|OPFL_Chain|OPFL_MemRefs,
39345 2, 7, 1,
39346 0,
39347 0,
39348 60|128,6,
39349 OPC_CheckChild1Integer, 104|128,52,
39350 OPC_RecordChild2,
39351 OPC_CheckChild2TypeI32,
39352 OPC_RecordChild3,
39353 OPC_Scope, 34|128,1,
39354 OPC_CheckChild3Type, MVT::v16i8,
39355 OPC_RecordChild4,
39356 OPC_CheckChild4Type, MVT::v16i8,
39357 OPC_RecordChild5,
39358 OPC_CheckChild5Type, MVT::v16i8,
39359 OPC_RecordChild6,
39360 OPC_CheckChild6Type, MVT::v16i8,
39361 OPC_MoveChild7,
39362 OPC_Scope, 36,
39363 OPC_CheckInteger, 0,
39364 OPC_MoveParent,
39365 OPC_EmitMergeInputChains1_0,
39366 OPC_EmitInteger32, 6|128,2,
39367 OPC_EmitStringInteger32, ARM::qsub_0,
39368 OPC_EmitStringInteger32, ARM::qsub_1,
39369 OPC_EmitStringInteger32, ARM::qsub_2,
39370 OPC_EmitStringInteger32, ARM::qsub_3,
39371 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39372 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39373 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST40_8), 0|OPFL_Chain|OPFL_MemRefs,
39374 2, 11, 1,
39375 36,
39376 OPC_CheckInteger, 2,
39377 OPC_MoveParent,
39378 OPC_EmitMergeInputChains1_0,
39379 OPC_EmitInteger32, 6|128,2,
39380 OPC_EmitStringInteger32, ARM::qsub_0,
39381 OPC_EmitStringInteger32, ARM::qsub_1,
39382 OPC_EmitStringInteger32, ARM::qsub_2,
39383 OPC_EmitStringInteger32, ARM::qsub_3,
39384 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39385 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39386 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST41_8), 0|OPFL_Chain|OPFL_MemRefs,
39387 2, 11, 1,
39388 36,
39389 OPC_CheckInteger, 4,
39390 OPC_MoveParent,
39391 OPC_EmitMergeInputChains1_0,
39392 OPC_EmitInteger32, 6|128,2,
39393 OPC_EmitStringInteger32, ARM::qsub_0,
39394 OPC_EmitStringInteger32, ARM::qsub_1,
39395 OPC_EmitStringInteger32, ARM::qsub_2,
39396 OPC_EmitStringInteger32, ARM::qsub_3,
39397 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39398 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39399 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST42_8), 0|OPFL_Chain|OPFL_MemRefs,
39400 2, 11, 1,
39401 36,
39402 OPC_CheckInteger, 6,
39403 OPC_MoveParent,
39404 OPC_EmitMergeInputChains1_0,
39405 OPC_EmitInteger32, 6|128,2,
39406 OPC_EmitStringInteger32, ARM::qsub_0,
39407 OPC_EmitStringInteger32, ARM::qsub_1,
39408 OPC_EmitStringInteger32, ARM::qsub_2,
39409 OPC_EmitStringInteger32, ARM::qsub_3,
39410 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39411 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39412 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST43_8), 0|OPFL_Chain|OPFL_MemRefs,
39413 2, 11, 1,
39414 0,
39415 34|128,1,
39416 OPC_CheckChild3Type, MVT::v8i16,
39417 OPC_RecordChild4,
39418 OPC_CheckChild4Type, MVT::v8i16,
39419 OPC_RecordChild5,
39420 OPC_CheckChild5Type, MVT::v8i16,
39421 OPC_RecordChild6,
39422 OPC_CheckChild6Type, MVT::v8i16,
39423 OPC_MoveChild7,
39424 OPC_Scope, 36,
39425 OPC_CheckInteger, 0,
39426 OPC_MoveParent,
39427 OPC_EmitMergeInputChains1_0,
39428 OPC_EmitInteger32, 6|128,2,
39429 OPC_EmitStringInteger32, ARM::qsub_0,
39430 OPC_EmitStringInteger32, ARM::qsub_1,
39431 OPC_EmitStringInteger32, ARM::qsub_2,
39432 OPC_EmitStringInteger32, ARM::qsub_3,
39433 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39434 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39435 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST40_16), 0|OPFL_Chain|OPFL_MemRefs,
39436 2, 11, 1,
39437 36,
39438 OPC_CheckInteger, 2,
39439 OPC_MoveParent,
39440 OPC_EmitMergeInputChains1_0,
39441 OPC_EmitInteger32, 6|128,2,
39442 OPC_EmitStringInteger32, ARM::qsub_0,
39443 OPC_EmitStringInteger32, ARM::qsub_1,
39444 OPC_EmitStringInteger32, ARM::qsub_2,
39445 OPC_EmitStringInteger32, ARM::qsub_3,
39446 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39447 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39448 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST41_16), 0|OPFL_Chain|OPFL_MemRefs,
39449 2, 11, 1,
39450 36,
39451 OPC_CheckInteger, 4,
39452 OPC_MoveParent,
39453 OPC_EmitMergeInputChains1_0,
39454 OPC_EmitInteger32, 6|128,2,
39455 OPC_EmitStringInteger32, ARM::qsub_0,
39456 OPC_EmitStringInteger32, ARM::qsub_1,
39457 OPC_EmitStringInteger32, ARM::qsub_2,
39458 OPC_EmitStringInteger32, ARM::qsub_3,
39459 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39460 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39461 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST42_16), 0|OPFL_Chain|OPFL_MemRefs,
39462 2, 11, 1,
39463 36,
39464 OPC_CheckInteger, 6,
39465 OPC_MoveParent,
39466 OPC_EmitMergeInputChains1_0,
39467 OPC_EmitInteger32, 6|128,2,
39468 OPC_EmitStringInteger32, ARM::qsub_0,
39469 OPC_EmitStringInteger32, ARM::qsub_1,
39470 OPC_EmitStringInteger32, ARM::qsub_2,
39471 OPC_EmitStringInteger32, ARM::qsub_3,
39472 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39473 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39474 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST43_16), 0|OPFL_Chain|OPFL_MemRefs,
39475 2, 11, 1,
39476 0,
39477 34|128,1,
39478 OPC_CheckChild3Type, MVT::v4i32,
39479 OPC_RecordChild4,
39480 OPC_CheckChild4Type, MVT::v4i32,
39481 OPC_RecordChild5,
39482 OPC_CheckChild5Type, MVT::v4i32,
39483 OPC_RecordChild6,
39484 OPC_CheckChild6Type, MVT::v4i32,
39485 OPC_MoveChild7,
39486 OPC_Scope, 36,
39487 OPC_CheckInteger, 0,
39488 OPC_MoveParent,
39489 OPC_EmitMergeInputChains1_0,
39490 OPC_EmitInteger32, 6|128,2,
39491 OPC_EmitStringInteger32, ARM::qsub_0,
39492 OPC_EmitStringInteger32, ARM::qsub_1,
39493 OPC_EmitStringInteger32, ARM::qsub_2,
39494 OPC_EmitStringInteger32, ARM::qsub_3,
39495 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39496 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39497 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST40_32), 0|OPFL_Chain|OPFL_MemRefs,
39498 2, 11, 1,
39499 36,
39500 OPC_CheckInteger, 2,
39501 OPC_MoveParent,
39502 OPC_EmitMergeInputChains1_0,
39503 OPC_EmitInteger32, 6|128,2,
39504 OPC_EmitStringInteger32, ARM::qsub_0,
39505 OPC_EmitStringInteger32, ARM::qsub_1,
39506 OPC_EmitStringInteger32, ARM::qsub_2,
39507 OPC_EmitStringInteger32, ARM::qsub_3,
39508 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39509 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39510 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST41_32), 0|OPFL_Chain|OPFL_MemRefs,
39511 2, 11, 1,
39512 36,
39513 OPC_CheckInteger, 4,
39514 OPC_MoveParent,
39515 OPC_EmitMergeInputChains1_0,
39516 OPC_EmitInteger32, 6|128,2,
39517 OPC_EmitStringInteger32, ARM::qsub_0,
39518 OPC_EmitStringInteger32, ARM::qsub_1,
39519 OPC_EmitStringInteger32, ARM::qsub_2,
39520 OPC_EmitStringInteger32, ARM::qsub_3,
39521 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39522 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39523 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST42_32), 0|OPFL_Chain|OPFL_MemRefs,
39524 2, 11, 1,
39525 36,
39526 OPC_CheckInteger, 6,
39527 OPC_MoveParent,
39528 OPC_EmitMergeInputChains1_0,
39529 OPC_EmitInteger32, 6|128,2,
39530 OPC_EmitStringInteger32, ARM::qsub_0,
39531 OPC_EmitStringInteger32, ARM::qsub_1,
39532 OPC_EmitStringInteger32, ARM::qsub_2,
39533 OPC_EmitStringInteger32, ARM::qsub_3,
39534 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39535 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39536 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST43_32), 0|OPFL_Chain|OPFL_MemRefs,
39537 2, 11, 1,
39538 0,
39539 34|128,1,
39540 OPC_CheckChild3Type, MVT::v8f16,
39541 OPC_RecordChild4,
39542 OPC_CheckChild4Type, MVT::v8f16,
39543 OPC_RecordChild5,
39544 OPC_CheckChild5Type, MVT::v8f16,
39545 OPC_RecordChild6,
39546 OPC_CheckChild6Type, MVT::v8f16,
39547 OPC_MoveChild7,
39548 OPC_Scope, 36,
39549 OPC_CheckInteger, 0,
39550 OPC_MoveParent,
39551 OPC_EmitMergeInputChains1_0,
39552 OPC_EmitInteger32, 6|128,2,
39553 OPC_EmitStringInteger32, ARM::qsub_0,
39554 OPC_EmitStringInteger32, ARM::qsub_1,
39555 OPC_EmitStringInteger32, ARM::qsub_2,
39556 OPC_EmitStringInteger32, ARM::qsub_3,
39557 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39558 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39559 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST40_16), 0|OPFL_Chain|OPFL_MemRefs,
39560 2, 11, 1,
39561 36,
39562 OPC_CheckInteger, 2,
39563 OPC_MoveParent,
39564 OPC_EmitMergeInputChains1_0,
39565 OPC_EmitInteger32, 6|128,2,
39566 OPC_EmitStringInteger32, ARM::qsub_0,
39567 OPC_EmitStringInteger32, ARM::qsub_1,
39568 OPC_EmitStringInteger32, ARM::qsub_2,
39569 OPC_EmitStringInteger32, ARM::qsub_3,
39570 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39571 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39572 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST41_16), 0|OPFL_Chain|OPFL_MemRefs,
39573 2, 11, 1,
39574 36,
39575 OPC_CheckInteger, 4,
39576 OPC_MoveParent,
39577 OPC_EmitMergeInputChains1_0,
39578 OPC_EmitInteger32, 6|128,2,
39579 OPC_EmitStringInteger32, ARM::qsub_0,
39580 OPC_EmitStringInteger32, ARM::qsub_1,
39581 OPC_EmitStringInteger32, ARM::qsub_2,
39582 OPC_EmitStringInteger32, ARM::qsub_3,
39583 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39584 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39585 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST42_16), 0|OPFL_Chain|OPFL_MemRefs,
39586 2, 11, 1,
39587 36,
39588 OPC_CheckInteger, 6,
39589 OPC_MoveParent,
39590 OPC_EmitMergeInputChains1_0,
39591 OPC_EmitInteger32, 6|128,2,
39592 OPC_EmitStringInteger32, ARM::qsub_0,
39593 OPC_EmitStringInteger32, ARM::qsub_1,
39594 OPC_EmitStringInteger32, ARM::qsub_2,
39595 OPC_EmitStringInteger32, ARM::qsub_3,
39596 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39597 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39598 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST43_16), 0|OPFL_Chain|OPFL_MemRefs,
39599 2, 11, 1,
39600 0,
39601 34|128,1,
39602 OPC_CheckChild3Type, MVT::v4f32,
39603 OPC_RecordChild4,
39604 OPC_CheckChild4Type, MVT::v4f32,
39605 OPC_RecordChild5,
39606 OPC_CheckChild5Type, MVT::v4f32,
39607 OPC_RecordChild6,
39608 OPC_CheckChild6Type, MVT::v4f32,
39609 OPC_MoveChild7,
39610 OPC_Scope, 36,
39611 OPC_CheckInteger, 0,
39612 OPC_MoveParent,
39613 OPC_EmitMergeInputChains1_0,
39614 OPC_EmitInteger32, 6|128,2,
39615 OPC_EmitStringInteger32, ARM::qsub_0,
39616 OPC_EmitStringInteger32, ARM::qsub_1,
39617 OPC_EmitStringInteger32, ARM::qsub_2,
39618 OPC_EmitStringInteger32, ARM::qsub_3,
39619 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39620 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39621 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST40_32), 0|OPFL_Chain|OPFL_MemRefs,
39622 2, 11, 1,
39623 36,
39624 OPC_CheckInteger, 2,
39625 OPC_MoveParent,
39626 OPC_EmitMergeInputChains1_0,
39627 OPC_EmitInteger32, 6|128,2,
39628 OPC_EmitStringInteger32, ARM::qsub_0,
39629 OPC_EmitStringInteger32, ARM::qsub_1,
39630 OPC_EmitStringInteger32, ARM::qsub_2,
39631 OPC_EmitStringInteger32, ARM::qsub_3,
39632 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39633 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39634 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST41_32), 0|OPFL_Chain|OPFL_MemRefs,
39635 2, 11, 1,
39636 36,
39637 OPC_CheckInteger, 4,
39638 OPC_MoveParent,
39639 OPC_EmitMergeInputChains1_0,
39640 OPC_EmitInteger32, 6|128,2,
39641 OPC_EmitStringInteger32, ARM::qsub_0,
39642 OPC_EmitStringInteger32, ARM::qsub_1,
39643 OPC_EmitStringInteger32, ARM::qsub_2,
39644 OPC_EmitStringInteger32, ARM::qsub_3,
39645 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39646 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39647 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST42_32), 0|OPFL_Chain|OPFL_MemRefs,
39648 2, 11, 1,
39649 36,
39650 OPC_CheckInteger, 6,
39651 OPC_MoveParent,
39652 OPC_EmitMergeInputChains1_0,
39653 OPC_EmitInteger32, 6|128,2,
39654 OPC_EmitStringInteger32, ARM::qsub_0,
39655 OPC_EmitStringInteger32, ARM::qsub_1,
39656 OPC_EmitStringInteger32, ARM::qsub_2,
39657 OPC_EmitStringInteger32, ARM::qsub_3,
39658 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
39659 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
39660 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VST43_32), 0|OPFL_Chain|OPFL_MemRefs,
39661 2, 11, 1,
39662 0,
39663 0,
39664 0,
39665 27|128,2,
39666 OPC_RecordNode,
39667 OPC_Scope, 66,
39668 OPC_CheckChild1Integer, 80|128,49,
39669 OPC_RecordChild2,
39670 OPC_MoveChild2,
39671 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39672 OPC_Scope, 18,
39673 OPC_CheckPredicate, 91,
39674 OPC_MoveParent,
39675 OPC_CheckPatternPredicate, 9,
39676 OPC_EmitMergeInputChains1_0,
39677 OPC_EmitConvertToTarget1,
39678 OPC_EmitInteger32, 28,
39679 OPC_EmitRegisterI32, 0 ,
39680 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::HINT),
39681 3, 2, 3, 4,
39682 18,
39683 OPC_CheckPredicate, 23,
39684 OPC_MoveParent,
39685 OPC_CheckPatternPredicate, 113,
39686 OPC_EmitMergeInputChains1_0,
39687 OPC_EmitConvertToTarget1,
39688 OPC_EmitInteger32, 28,
39689 OPC_EmitRegisterI32, 0 ,
39690 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::tHINT),
39691 3, 2, 3, 4,
39692 17,
39693 OPC_CheckPredicate, 91,
39694 OPC_MoveParent,
39695 OPC_CheckPatternPredicate4,
39696 OPC_EmitMergeInputChains1_0,
39697 OPC_EmitConvertToTarget1,
39698 OPC_EmitInteger32, 28,
39699 OPC_EmitRegisterI32, 0 ,
39700 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2HINT),
39701 3, 2, 3, 4,
39702 0,
39703 44,
39704 OPC_CheckChild1Integer, 70|128,49,
39705 OPC_RecordChild2,
39706 OPC_MoveChild2,
39707 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39708 OPC_CheckPredicate, 23,
39709 OPC_MoveParent,
39710 OPC_Scope, 15,
39711 OPC_CheckPatternPredicate, 74,
39712 OPC_EmitMergeInputChains1_0,
39713 OPC_EmitConvertToTarget1,
39714 OPC_EmitInteger32, 28,
39715 OPC_EmitRegisterI32, 0 ,
39716 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::DBG),
39717 3, 2, 3, 4,
39718 14,
39719 OPC_CheckPatternPredicate4,
39720 OPC_EmitMergeInputChains1_0,
39721 OPC_EmitConvertToTarget1,
39722 OPC_EmitInteger32, 28,
39723 OPC_EmitRegisterI32, 0 ,
39724 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2DBG),
39725 3, 2, 3, 4,
39726 0,
39727 47,
39728 OPC_CheckChild1Integer, 30|128,56,
39729 OPC_RecordChild2,
39730 OPC_MoveChild2,
39731 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39732 OPC_Scope, 11,
39733 OPC_CheckPredicate, 51,
39734 OPC_MoveParent,
39735 OPC_CheckPatternPredicate3,
39736 OPC_EmitMergeInputChains1_0,
39737 OPC_EmitConvertToTarget1,
39738 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::UDF),
39739 1, 2,
39740 12,
39741 OPC_CheckPredicate, 47,
39742 OPC_MoveParent,
39743 OPC_CheckPatternPredicate, 41,
39744 OPC_EmitMergeInputChains1_0,
39745 OPC_EmitConvertToTarget1,
39746 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::tUDF),
39747 1, 2,
39748 11,
39749 OPC_CheckPredicate, 51,
39750 OPC_MoveParent,
39751 OPC_CheckPatternPredicate4,
39752 OPC_EmitMergeInputChains1_0,
39753 OPC_EmitConvertToTarget1,
39754 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2UDF),
39755 1, 2,
39756 0,
39757 39,
39758 OPC_CheckChild1Integer, 72|128,49,
39759 OPC_RecordChild2,
39760 OPC_MoveChild2,
39761 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39762 OPC_CheckPredicate, 23,
39763 OPC_MoveParent,
39764 OPC_Scope, 9,
39765 OPC_CheckPatternPredicate, 75,
39766 OPC_EmitMergeInputChains1_0,
39767 OPC_EmitConvertToTarget1,
39768 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::DMB),
39769 1, 2,
39770 15,
39771 OPC_CheckPatternPredicate, 76,
39772 OPC_EmitMergeInputChains1_0,
39773 OPC_EmitConvertToTarget1,
39774 OPC_EmitInteger32, 28,
39775 OPC_EmitRegisterI32, 0 ,
39776 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2DMB),
39777 3, 2, 3, 4,
39778 0,
39779 39,
39780 OPC_CheckChild1Integer, 74|128,49,
39781 OPC_RecordChild2,
39782 OPC_MoveChild2,
39783 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39784 OPC_CheckPredicate, 23,
39785 OPC_MoveParent,
39786 OPC_Scope, 9,
39787 OPC_CheckPatternPredicate, 75,
39788 OPC_EmitMergeInputChains1_0,
39789 OPC_EmitConvertToTarget1,
39790 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::DSB),
39791 1, 2,
39792 15,
39793 OPC_CheckPatternPredicate, 76,
39794 OPC_EmitMergeInputChains1_0,
39795 OPC_EmitConvertToTarget1,
39796 OPC_EmitInteger32, 28,
39797 OPC_EmitRegisterI32, 0 ,
39798 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2DSB),
39799 3, 2, 3, 4,
39800 0,
39801 39,
39802 OPC_CheckChild1Integer, 82|128,49,
39803 OPC_RecordChild2,
39804 OPC_MoveChild2,
39805 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39806 OPC_CheckPredicate, 23,
39807 OPC_MoveParent,
39808 OPC_Scope, 9,
39809 OPC_CheckPatternPredicate, 75,
39810 OPC_EmitMergeInputChains1_0,
39811 OPC_EmitConvertToTarget1,
39812 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::ISB),
39813 1, 2,
39814 15,
39815 OPC_CheckPatternPredicate, 76,
39816 OPC_EmitMergeInputChains1_0,
39817 OPC_EmitConvertToTarget1,
39818 OPC_EmitInteger32, 28,
39819 OPC_EmitRegisterI32, 0 ,
39820 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2ISB),
39821 3, 2, 3, 4,
39822 0,
39823 0,
39824 118|128,1,
39825 OPC_RecordMemRef,
39826 OPC_RecordNode,
39827 OPC_Scope, 118,
39828 OPC_CheckChild1Integer, 106|128,52,
39829 OPC_RecordChild2,
39830 OPC_Scope, 55,
39831 OPC_CheckChild2Type, MVT::v4i32,
39832 OPC_RecordChild3,
39833 OPC_MoveChild3,
39834 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39835 OPC_MoveParent,
39836 OPC_RecordChild4,
39837 OPC_Scope, 21,
39838 OPC_CheckChild4Type, MVT::v4i32,
39839 OPC_EmitMergeInputChains1_0,
39840 OPC_EmitConvertToTarget2,
39841 OPC_EmitInteger32, 0,
39842 OPC_EmitRegisterI32, 0 ,
39843 OPC_EmitRegisterI32, 0 ,
39844 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_qi), 0|OPFL_Chain|OPFL_MemRefs,
39845 6, 3, 1, 4, 5, 6, 7,
39846 21,
39847 OPC_CheckChild4Type, MVT::v4f32,
39848 OPC_EmitMergeInputChains1_0,
39849 OPC_EmitConvertToTarget2,
39850 OPC_EmitInteger32, 0,
39851 OPC_EmitRegisterI32, 0 ,
39852 OPC_EmitRegisterI32, 0 ,
39853 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_qi), 0|OPFL_Chain|OPFL_MemRefs,
39854 6, 3, 1, 4, 5, 6, 7,
39855 0,
39856 55,
39857 OPC_CheckChild2Type, MVT::v2i64,
39858 OPC_RecordChild3,
39859 OPC_MoveChild3,
39860 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39861 OPC_MoveParent,
39862 OPC_RecordChild4,
39863 OPC_Scope, 21,
39864 OPC_CheckChild4Type, MVT::v2i64,
39865 OPC_EmitMergeInputChains1_0,
39866 OPC_EmitConvertToTarget2,
39867 OPC_EmitInteger32, 0,
39868 OPC_EmitRegisterI32, 0 ,
39869 OPC_EmitRegisterI32, 0 ,
39870 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRD64_qi), 0|OPFL_Chain|OPFL_MemRefs,
39871 6, 3, 1, 4, 5, 6, 7,
39872 21,
39873 OPC_CheckChild4Type, MVT::v2f64,
39874 OPC_EmitMergeInputChains1_0,
39875 OPC_EmitConvertToTarget2,
39876 OPC_EmitInteger32, 0,
39877 OPC_EmitRegisterI32, 0 ,
39878 OPC_EmitRegisterI32, 0 ,
39879 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRD64_qi), 0|OPFL_Chain|OPFL_MemRefs,
39880 6, 3, 1, 4, 5, 6, 7,
39881 0,
39882 0,
39883 122,
39884 OPC_CheckChild1Integer, 108|128,52,
39885 OPC_RecordChild2,
39886 OPC_Scope, 57,
39887 OPC_CheckChild2Type, MVT::v4i32,
39888 OPC_RecordChild3,
39889 OPC_MoveChild3,
39890 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39891 OPC_MoveParent,
39892 OPC_RecordChild4,
39893 OPC_Scope, 22,
39894 OPC_CheckChild4Type, MVT::v4i32,
39895 OPC_RecordChild5,
39896 OPC_CheckChild5Type, MVT::v4i1,
39897 OPC_EmitMergeInputChains1_0,
39898 OPC_EmitConvertToTarget2,
39899 OPC_EmitInteger32, 2,
39900 OPC_EmitRegisterI32, 0 ,
39901 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_qi), 0|OPFL_Chain|OPFL_MemRefs,
39902 6, 3, 1, 5, 6, 4, 7,
39903 22,
39904 OPC_CheckChild4Type, MVT::v4f32,
39905 OPC_RecordChild5,
39906 OPC_CheckChild5Type, MVT::v4i1,
39907 OPC_EmitMergeInputChains1_0,
39908 OPC_EmitConvertToTarget2,
39909 OPC_EmitInteger32, 2,
39910 OPC_EmitRegisterI32, 0 ,
39911 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRW32_qi), 0|OPFL_Chain|OPFL_MemRefs,
39912 6, 3, 1, 5, 6, 4, 7,
39913 0,
39914 57,
39915 OPC_CheckChild2Type, MVT::v2i64,
39916 OPC_RecordChild3,
39917 OPC_MoveChild3,
39918 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
39919 OPC_MoveParent,
39920 OPC_RecordChild4,
39921 OPC_Scope, 22,
39922 OPC_CheckChild4Type, MVT::v2i64,
39923 OPC_RecordChild5,
39924 OPC_CheckChild5Type, MVT::v2i1,
39925 OPC_EmitMergeInputChains1_0,
39926 OPC_EmitConvertToTarget2,
39927 OPC_EmitInteger32, 2,
39928 OPC_EmitRegisterI32, 0 ,
39929 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRD64_qi), 0|OPFL_Chain|OPFL_MemRefs,
39930 6, 3, 1, 5, 6, 4, 7,
39931 22,
39932 OPC_CheckChild4Type, MVT::v2f64,
39933 OPC_RecordChild5,
39934 OPC_CheckChild5Type, MVT::v2i1,
39935 OPC_EmitMergeInputChains1_0,
39936 OPC_EmitConvertToTarget2,
39937 OPC_EmitInteger32, 2,
39938 OPC_EmitRegisterI32, 0 ,
39939 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRD64_qi), 0|OPFL_Chain|OPFL_MemRefs,
39940 6, 3, 1, 5, 6, 4, 7,
39941 0,
39942 0,
39943 0,
39944 50,
39945 OPC_RecordNode,
39946 OPC_Scope, 27,
39947 OPC_CheckChild1Integer, 44|128,49,
39948 OPC_Scope, 7,
39949 OPC_CheckPatternPredicate, 114,
39950 OPC_EmitMergeInputChains1_0,
39951 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::CLREX),
39952 0,
39953 13,
39954 OPC_CheckPatternPredicate, 115,
39955 OPC_EmitMergeInputChains1_0,
39956 OPC_EmitInteger32, 28,
39957 OPC_EmitRegisterI32, 0 ,
39958 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2CLREX),
39959 2, 1, 2,
39960 0,
39961 18,
39962 OPC_CheckChild1Integer, 46|128,55,
39963 OPC_RecordChild2,
39964 OPC_CheckPatternPredicate, 35,
39965 OPC_EmitMergeInputChains1_0,
39966 OPC_EmitInteger32, 28,
39967 OPC_EmitRegisterI32, 0 ,
39968 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::VMSR),
39969 3, 1, 2, 3,
39970 0,
39971 0,
39972 85|128,2, TARGET_VAL(ARMISD::PRELOAD),
39973 OPC_RecordNode,
39974 OPC_Scope, 30|128,2,
39975 OPC_RecordChild1,
39976 OPC_CheckChild1TypeI32,
39977 OPC_Scope, 125,
39978 OPC_CheckChild2Integer, 2,
39979 OPC_CheckChild2TypeI32,
39980 OPC_Scope, 28,
39981 OPC_CheckChild3Integer, 2,
39982 OPC_CheckPatternPredicate3,
39983 OPC_Scope, 11,
39984 OPC_CheckComplexPat, /*CP*/19, /*#*/1,
39985 OPC_EmitMergeInputChains1_0,
39986 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::PLDrs),
39987 3, 2, 3, 4,
39988 10,
39989 OPC_CheckComplexPat, /*CP*/20, /*#*/1,
39990 OPC_EmitMergeInputChains1_0,
39991 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::PLDi12),
39992 2, 2, 3,
39993 0,
39994 90,
39995 OPC_CheckChild3Integer, 0,
39996 OPC_Scope, 13,
39997 OPC_CheckPatternPredicate, 74,
39998 OPC_CheckComplexPat, /*CP*/19, /*#*/1,
39999 OPC_EmitMergeInputChains1_0,
40000 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::PLIrs),
40001 3, 2, 3, 4,
40002 19,
40003 OPC_CheckPatternPredicate, 92,
40004 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
40005 OPC_EmitMergeInputChains1_0,
40006 OPC_EmitInteger32, 28,
40007 OPC_EmitRegisterI32, 0 ,
40008 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2PLDWs),
40009 5, 2, 3, 4, 5, 6,
40010 12,
40011 OPC_CheckPatternPredicate, 74,
40012 OPC_CheckComplexPat, /*CP*/20, /*#*/1,
40013 OPC_EmitMergeInputChains1_0,
40014 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::PLIi12),
40015 2, 2, 3,
40016 38,
40017 OPC_CheckPatternPredicate, 92,
40018 OPC_Scope, 16,
40019 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
40020 OPC_EmitMergeInputChains1_0,
40021 OPC_EmitInteger32, 28,
40022 OPC_EmitRegisterI32, 0 ,
40023 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2PLDWi12),
40024 4, 2, 3, 4, 5,
40025 16,
40026 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
40027 OPC_EmitMergeInputChains1_0,
40028 OPC_EmitInteger32, 28,
40029 OPC_EmitRegisterI32, 0 ,
40030 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2PLDWi8),
40031 4, 2, 3, 4, 5,
40032 0,
40033 0,
40034 0,
40035 26|128,1,
40036 OPC_CheckChild2Integer, 0,
40037 OPC_CheckChild2TypeI32,
40038 OPC_Scope, 90,
40039 OPC_CheckChild3Integer, 2,
40040 OPC_Scope, 13,
40041 OPC_CheckPatternPredicate, 93,
40042 OPC_CheckComplexPat, /*CP*/19, /*#*/1,
40043 OPC_EmitMergeInputChains1_0,
40044 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::PLDWrs),
40045 3, 2, 3, 4,
40046 19,
40047 OPC_CheckPatternPredicate, 77,
40048 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
40049 OPC_EmitMergeInputChains1_0,
40050 OPC_EmitInteger32, 28,
40051 OPC_EmitRegisterI32, 0 ,
40052 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2PLIs),
40053 5, 2, 3, 4, 5, 6,
40054 12,
40055 OPC_CheckPatternPredicate, 93,
40056 OPC_CheckComplexPat, /*CP*/20, /*#*/1,
40057 OPC_EmitMergeInputChains1_0,
40058 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::PLDWi12),
40059 2, 2, 3,
40060 38,
40061 OPC_CheckPatternPredicate, 77,
40062 OPC_Scope, 16,
40063 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
40064 OPC_EmitMergeInputChains1_0,
40065 OPC_EmitInteger32, 28,
40066 OPC_EmitRegisterI32, 0 ,
40067 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2PLIi12),
40068 4, 2, 3, 4, 5,
40069 16,
40070 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
40071 OPC_EmitMergeInputChains1_0,
40072 OPC_EmitInteger32, 28,
40073 OPC_EmitRegisterI32, 0 ,
40074 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2PLIi8),
40075 4, 2, 3, 4, 5,
40076 0,
40077 0,
40078 57,
40079 OPC_CheckChild3Integer, 0,
40080 OPC_CheckPatternPredicate4,
40081 OPC_Scope, 17,
40082 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
40083 OPC_EmitMergeInputChains1_0,
40084 OPC_EmitInteger32, 28,
40085 OPC_EmitRegisterI32, 0 ,
40086 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2PLDs),
40087 5, 2, 3, 4, 5, 6,
40088 16,
40089 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
40090 OPC_EmitMergeInputChains1_0,
40091 OPC_EmitInteger32, 28,
40092 OPC_EmitRegisterI32, 0 ,
40093 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2PLDi12),
40094 4, 2, 3, 4, 5,
40095 16,
40096 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
40097 OPC_EmitMergeInputChains1_0,
40098 OPC_EmitInteger32, 28,
40099 OPC_EmitRegisterI32, 0 ,
40100 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2PLDi8),
40101 4, 2, 3, 4, 5,
40102 0,
40103 0,
40104 0,
40105 49,
40106 OPC_MoveChild1,
40107 OPC_CheckOpcode, TARGET_VAL(ARMISD::Wrapper),
40108 OPC_RecordChild0,
40109 OPC_MoveChild0,
40110 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstantPool),
40111 OPC_MoveParent,
40112 OPC_MoveParent,
40113 OPC_CheckChild2Integer, 0,
40114 OPC_CheckChild2TypeI32,
40115 OPC_Scope, 15,
40116 OPC_CheckChild3Integer, 0,
40117 OPC_CheckPatternPredicate4,
40118 OPC_EmitMergeInputChains1_0,
40119 OPC_EmitInteger32, 28,
40120 OPC_EmitRegisterI32, 0 ,
40121 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2PLDpci),
40122 3, 1, 2, 3,
40123 16,
40124 OPC_CheckChild3Integer, 2,
40125 OPC_CheckPatternPredicate, 77,
40126 OPC_EmitMergeInputChains1_0,
40127 OPC_EmitInteger32, 28,
40128 OPC_EmitRegisterI32, 0 ,
40129 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2PLIpci),
40130 3, 1, 2, 3,
40131 0,
40132 0,
40133 20|128,9, TARGET_VAL(ARMISD::CMPZ),
40134 OPC_Scope, 101,
40135 OPC_MoveChild0,
40136 OPC_SwitchOpcode , 46, TARGET_VAL(ISD::AND),
40137 OPC_RecordChild0,
40138 OPC_RecordChild1,
40139 OPC_CheckPredicate2,
40140 OPC_CheckTypeI32,
40141 OPC_MoveParent,
40142 OPC_CheckChild1Integer, 0,
40143 OPC_CheckPatternPredicate3,
40144 OPC_Scope, 17,
40145 OPC_CheckComplexPat4, /*#*/1,
40146 OPC_EmitInteger32, 28,
40147 OPC_EmitRegisterI32, 0 ,
40148 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TSTrsr),
40149 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
40150 17,
40151 OPC_CheckComplexPat4, /*#*/0,
40152 OPC_EmitInteger32, 28,
40153 OPC_EmitRegisterI32, 0 ,
40154 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TSTrsr),
40155 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
40156 0,
40157 46, TARGET_VAL(ISD::XOR),
40158 OPC_RecordChild0,
40159 OPC_RecordChild1,
40160 OPC_CheckPredicate2,
40161 OPC_CheckTypeI32,
40162 OPC_MoveParent,
40163 OPC_CheckChild1Integer, 0,
40164 OPC_CheckPatternPredicate3,
40165 OPC_Scope, 17,
40166 OPC_CheckComplexPat4, /*#*/1,
40167 OPC_EmitInteger32, 28,
40168 OPC_EmitRegisterI32, 0 ,
40169 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TEQrsr),
40170 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
40171 17,
40172 OPC_CheckComplexPat4, /*#*/0,
40173 OPC_EmitInteger32, 28,
40174 OPC_EmitRegisterI32, 0 ,
40175 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TEQrsr),
40176 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
40177 0,
40178 0,
40179 28,
40180 OPC_RecordChild0,
40181 OPC_CheckChild0TypeI32,
40182 OPC_MoveChild1,
40183 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
40184 OPC_CheckChild0Integer, 0,
40185 OPC_RecordChild1,
40186 OPC_MoveParent,
40187 OPC_CheckPatternPredicate3,
40188 OPC_CheckComplexPat4, /*#*/1,
40189 OPC_EmitInteger32, 28,
40190 OPC_EmitRegisterI32, 0 ,
40191 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMNzrsr),
40192 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
40193 70|128,1,
40194 OPC_MoveChild0,
40195 OPC_SwitchOpcode , 24, TARGET_VAL(ISD::SUB),
40196 OPC_CheckChild0Integer, 0,
40197 OPC_RecordChild1,
40198 OPC_CheckTypeI32,
40199 OPC_MoveParent,
40200 OPC_RecordChild1,
40201 OPC_CheckPatternPredicate3,
40202 OPC_CheckComplexPat4, /*#*/0,
40203 OPC_EmitInteger32, 28,
40204 OPC_EmitRegisterI32, 0 ,
40205 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMNzrsr),
40206 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
40207 81, TARGET_VAL(ISD::AND),
40208 OPC_RecordChild0,
40209 OPC_RecordChild1,
40210 OPC_CheckPredicate2,
40211 OPC_CheckTypeI32,
40212 OPC_MoveParent,
40213 OPC_CheckChild1Integer, 0,
40214 OPC_Scope, 17,
40215 OPC_CheckPatternPredicate3,
40216 OPC_CheckComplexPat5, /*#*/1,
40217 OPC_EmitInteger32, 28,
40218 OPC_EmitRegisterI32, 0 ,
40219 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TSTrsi),
40220 MVT::i32, 5, 0, 2, 3, 4, 5,
40221 17,
40222 OPC_CheckPatternPredicate4,
40223 OPC_CheckComplexPat7, /*#*/1,
40224 OPC_EmitInteger32, 28,
40225 OPC_EmitRegisterI32, 0 ,
40226 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2TSTrs),
40227 MVT::i32, 5, 0, 2, 3, 4, 5,
40228 17,
40229 OPC_CheckPatternPredicate3,
40230 OPC_CheckComplexPat5, /*#*/0,
40231 OPC_EmitInteger32, 28,
40232 OPC_EmitRegisterI32, 0 ,
40233 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TSTrsi),
40234 MVT::i32, 5, 1, 2, 3, 4, 5,
40235 17,
40236 OPC_CheckPatternPredicate4,
40237 OPC_CheckComplexPat7, /*#*/0,
40238 OPC_EmitInteger32, 28,
40239 OPC_EmitRegisterI32, 0 ,
40240 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2TSTrs),
40241 MVT::i32, 5, 1, 2, 3, 4, 5,
40242 0,
40243 81, TARGET_VAL(ISD::XOR),
40244 OPC_RecordChild0,
40245 OPC_RecordChild1,
40246 OPC_CheckPredicate2,
40247 OPC_CheckTypeI32,
40248 OPC_MoveParent,
40249 OPC_CheckChild1Integer, 0,
40250 OPC_Scope, 17,
40251 OPC_CheckPatternPredicate3,
40252 OPC_CheckComplexPat5, /*#*/1,
40253 OPC_EmitInteger32, 28,
40254 OPC_EmitRegisterI32, 0 ,
40255 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TEQrsi),
40256 MVT::i32, 5, 0, 2, 3, 4, 5,
40257 17,
40258 OPC_CheckPatternPredicate4,
40259 OPC_CheckComplexPat7, /*#*/1,
40260 OPC_EmitInteger32, 28,
40261 OPC_EmitRegisterI32, 0 ,
40262 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2TEQrs),
40263 MVT::i32, 5, 0, 2, 3, 4, 5,
40264 17,
40265 OPC_CheckPatternPredicate3,
40266 OPC_CheckComplexPat5, /*#*/0,
40267 OPC_EmitInteger32, 28,
40268 OPC_EmitRegisterI32, 0 ,
40269 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TEQrsi),
40270 MVT::i32, 5, 1, 2, 3, 4, 5,
40271 17,
40272 OPC_CheckPatternPredicate4,
40273 OPC_CheckComplexPat7, /*#*/0,
40274 OPC_EmitInteger32, 28,
40275 OPC_EmitRegisterI32, 0 ,
40276 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2TEQrs),
40277 MVT::i32, 5, 1, 2, 3, 4, 5,
40278 0,
40279 0,
40280 48,
40281 OPC_RecordChild0,
40282 OPC_CheckChild0TypeI32,
40283 OPC_MoveChild1,
40284 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
40285 OPC_CheckChild0Integer, 0,
40286 OPC_RecordChild1,
40287 OPC_MoveParent,
40288 OPC_Scope, 17,
40289 OPC_CheckPatternPredicate3,
40290 OPC_CheckComplexPat5, /*#*/1,
40291 OPC_EmitInteger32, 28,
40292 OPC_EmitRegisterI32, 0 ,
40293 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMNzrsi),
40294 MVT::i32, 5, 0, 2, 3, 4, 5,
40295 17,
40296 OPC_CheckPatternPredicate4,
40297 OPC_CheckComplexPat7, /*#*/1,
40298 OPC_EmitInteger32, 28,
40299 OPC_EmitRegisterI32, 0 ,
40300 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMNzrs),
40301 MVT::i32, 5, 0, 2, 3, 4, 5,
40302 0,
40303 48,
40304 OPC_MoveChild0,
40305 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
40306 OPC_CheckChild0Integer, 0,
40307 OPC_RecordChild1,
40308 OPC_CheckTypeI32,
40309 OPC_MoveParent,
40310 OPC_RecordChild1,
40311 OPC_Scope, 17,
40312 OPC_CheckPatternPredicate3,
40313 OPC_CheckComplexPat5, /*#*/0,
40314 OPC_EmitInteger32, 28,
40315 OPC_EmitRegisterI32, 0 ,
40316 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMNzrsi),
40317 MVT::i32, 5, 1, 2, 3, 4, 5,
40318 17,
40319 OPC_CheckPatternPredicate4,
40320 OPC_CheckComplexPat7, /*#*/0,
40321 OPC_EmitInteger32, 28,
40322 OPC_EmitRegisterI32, 0 ,
40323 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMNzrs),
40324 MVT::i32, 5, 1, 2, 3, 4, 5,
40325 0,
40326 76,
40327 OPC_RecordChild0,
40328 OPC_CheckChild0TypeI32,
40329 OPC_CheckChild1Integer, 0,
40330 OPC_CheckPatternPredicate3,
40331 OPC_Scope, 34,
40332 OPC_CheckComplexPat4, /*#*/0,
40333 OPC_EmitInteger32, 28,
40334 OPC_EmitRegisterI32, 0 ,
40335 OPC_EmitRegisterI32, 0 ,
40336 OPC_EmitNode1None, TARGET_VAL(ARM::MOVsr),
40337 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
40338 OPC_EmitInteger32, 0,
40339 OPC_EmitInteger32, 28,
40340 OPC_EmitRegisterI32, 0 ,
40341 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPri),
40342 MVT::i32, 4, 7, 8, 9, 10,
40343 33,
40344 OPC_CheckComplexPat5, /*#*/0,
40345 OPC_EmitInteger32, 28,
40346 OPC_EmitRegisterI32, 0 ,
40347 OPC_EmitRegisterI32, 0 ,
40348 OPC_EmitNode1None, TARGET_VAL(ARM::MOVsi),
40349 MVT::i32, 5, 1, 2, 3, 4, 5,
40350 OPC_EmitInteger32, 0,
40351 OPC_EmitInteger32, 28,
40352 OPC_EmitRegisterI32, 0 ,
40353 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPri),
40354 MVT::i32, 4, 6, 7, 8, 9,
40355 0,
40356 121,
40357 OPC_MoveChild0,
40358 OPC_SwitchOpcode , 56, TARGET_VAL(ISD::AND),
40359 OPC_RecordChild0,
40360 OPC_RecordChild1,
40361 OPC_MoveChild1,
40362 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40363 OPC_Scope, 23,
40364 OPC_CheckPredicate, 20,
40365 OPC_MoveParent,
40366 OPC_CheckPredicate2,
40367 OPC_CheckTypeI32,
40368 OPC_MoveParent,
40369 OPC_CheckChild1Integer, 0,
40370 OPC_CheckPatternPredicate3,
40371 OPC_EmitConvertToTarget1,
40372 OPC_EmitInteger32, 28,
40373 OPC_EmitRegisterI32, 0 ,
40374 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TSTri),
40375 MVT::i32, 4, 0, 2, 3, 4,
40376 23,
40377 OPC_CheckPredicate, 13,
40378 OPC_MoveParent,
40379 OPC_CheckPredicate2,
40380 OPC_CheckTypeI32,
40381 OPC_MoveParent,
40382 OPC_CheckChild1Integer, 0,
40383 OPC_CheckPatternPredicate4,
40384 OPC_EmitConvertToTarget1,
40385 OPC_EmitInteger32, 28,
40386 OPC_EmitRegisterI32, 0 ,
40387 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2TSTri),
40388 MVT::i32, 4, 0, 2, 3, 4,
40389 0,
40390 56, TARGET_VAL(ISD::XOR),
40391 OPC_RecordChild0,
40392 OPC_RecordChild1,
40393 OPC_MoveChild1,
40394 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40395 OPC_Scope, 23,
40396 OPC_CheckPredicate, 20,
40397 OPC_MoveParent,
40398 OPC_CheckPredicate2,
40399 OPC_CheckTypeI32,
40400 OPC_MoveParent,
40401 OPC_CheckChild1Integer, 0,
40402 OPC_CheckPatternPredicate3,
40403 OPC_EmitConvertToTarget1,
40404 OPC_EmitInteger32, 28,
40405 OPC_EmitRegisterI32, 0 ,
40406 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TEQri),
40407 MVT::i32, 4, 0, 2, 3, 4,
40408 23,
40409 OPC_CheckPredicate, 13,
40410 OPC_MoveParent,
40411 OPC_CheckPredicate2,
40412 OPC_CheckTypeI32,
40413 OPC_MoveParent,
40414 OPC_CheckChild1Integer, 0,
40415 OPC_CheckPatternPredicate4,
40416 OPC_EmitConvertToTarget1,
40417 OPC_EmitInteger32, 28,
40418 OPC_EmitRegisterI32, 0 ,
40419 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2TEQri),
40420 MVT::i32, 4, 0, 2, 3, 4,
40421 0,
40422 0,
40423 59,
40424 OPC_RecordChild0,
40425 OPC_CheckChild0TypeI32,
40426 OPC_RecordChild1,
40427 OPC_CheckPatternPredicate3,
40428 OPC_Scope, 17,
40429 OPC_CheckComplexPat4, /*#*/1,
40430 OPC_EmitInteger32, 28,
40431 OPC_EmitRegisterI32, 0 ,
40432 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPrsr),
40433 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
40434 17,
40435 OPC_CheckComplexPat4, /*#*/0,
40436 OPC_EmitInteger32, 28,
40437 OPC_EmitRegisterI32, 0 ,
40438 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPrsr),
40439 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
40440 16,
40441 OPC_CheckComplexPat5, /*#*/1,
40442 OPC_EmitInteger32, 28,
40443 OPC_EmitRegisterI32, 0 ,
40444 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPrsi),
40445 MVT::i32, 5, 0, 2, 3, 4, 5,
40446 0,
40447 70,
40448 OPC_MoveChild0,
40449 OPC_SwitchOpcode , 40, TARGET_VAL(ISD::AND),
40450 OPC_RecordChild0,
40451 OPC_RecordChild1,
40452 OPC_CheckPredicate2,
40453 OPC_CheckTypeI32,
40454 OPC_MoveParent,
40455 OPC_CheckChild1Integer, 0,
40456 OPC_Scope, 14,
40457 OPC_CheckPatternPredicate3,
40458 OPC_EmitInteger32, 28,
40459 OPC_EmitRegisterI32, 0 ,
40460 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TSTrr),
40461 MVT::i32, 4, 0, 1, 2, 3,
40462 15,
40463 OPC_CheckPatternPredicate, 10,
40464 OPC_EmitInteger32, 28,
40465 OPC_EmitRegisterI32, 0 ,
40466 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::tTST),
40467 MVT::i32, 4, 0, 1, 2, 3,
40468 0,
40469 21, TARGET_VAL(ISD::XOR),
40470 OPC_RecordChild0,
40471 OPC_RecordChild1,
40472 OPC_CheckPredicate2,
40473 OPC_CheckTypeI32,
40474 OPC_MoveParent,
40475 OPC_CheckChild1Integer, 0,
40476 OPC_CheckPatternPredicate3,
40477 OPC_EmitInteger32, 28,
40478 OPC_EmitRegisterI32, 0 ,
40479 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::TEQrr),
40480 MVT::i32, 4, 0, 1, 2, 3,
40481 0,
40482 21,
40483 OPC_RecordChild0,
40484 OPC_CheckChild0TypeI32,
40485 OPC_RecordChild1,
40486 OPC_CheckPatternPredicate4,
40487 OPC_CheckComplexPat, /*CP*/40, /*#*/1,
40488 OPC_EmitInteger32, 28,
40489 OPC_EmitRegisterI32, 0 ,
40490 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMPrs),
40491 MVT::i32, 5, 0, 2, 3, 4, 5,
40492 51,
40493 OPC_MoveChild0,
40494 OPC_SwitchOpcode , 21, TARGET_VAL(ISD::AND),
40495 OPC_RecordChild0,
40496 OPC_RecordChild1,
40497 OPC_CheckPredicate2,
40498 OPC_CheckTypeI32,
40499 OPC_MoveParent,
40500 OPC_CheckChild1Integer, 0,
40501 OPC_CheckPatternPredicate4,
40502 OPC_EmitInteger32, 28,
40503 OPC_EmitRegisterI32, 0 ,
40504 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2TSTrr),
40505 MVT::i32, 4, 0, 1, 2, 3,
40506 21, TARGET_VAL(ISD::XOR),
40507 OPC_RecordChild0,
40508 OPC_RecordChild1,
40509 OPC_CheckPredicate2,
40510 OPC_CheckTypeI32,
40511 OPC_MoveParent,
40512 OPC_CheckChild1Integer, 0,
40513 OPC_CheckPatternPredicate4,
40514 OPC_EmitInteger32, 28,
40515 OPC_EmitRegisterI32, 0 ,
40516 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2TEQrr),
40517 MVT::i32, 4, 0, 1, 2, 3,
40518 0,
40519 102,
40520 OPC_RecordChild0,
40521 OPC_CheckChild0TypeI32,
40522 OPC_Scope, 40,
40523 OPC_RecordChild1,
40524 OPC_Scope, 17,
40525 OPC_CheckPatternPredicate3,
40526 OPC_CheckComplexPat5, /*#*/0,
40527 OPC_EmitInteger32, 28,
40528 OPC_EmitRegisterI32, 0 ,
40529 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPrsi),
40530 MVT::i32, 5, 1, 2, 3, 4, 5,
40531 18,
40532 OPC_CheckPatternPredicate4,
40533 OPC_CheckComplexPat, /*CP*/40, /*#*/0,
40534 OPC_EmitInteger32, 28,
40535 OPC_EmitRegisterI32, 0 ,
40536 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMPrs),
40537 MVT::i32, 5, 1, 2, 3, 4, 5,
40538 0,
40539 56,
40540 OPC_MoveChild1,
40541 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
40542 OPC_CheckChild0Integer, 0,
40543 OPC_RecordChild1,
40544 OPC_MoveParent,
40545 OPC_Scope, 14,
40546 OPC_CheckPatternPredicate3,
40547 OPC_EmitInteger32, 28,
40548 OPC_EmitRegisterI32, 0 ,
40549 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMNzrr),
40550 MVT::i32, 4, 0, 1, 2, 3,
40551 15,
40552 OPC_CheckPatternPredicate, 10,
40553 OPC_EmitInteger32, 28,
40554 OPC_EmitRegisterI32, 0 ,
40555 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::tCMNz),
40556 MVT::i32, 4, 0, 1, 2, 3,
40557 14,
40558 OPC_CheckPatternPredicate4,
40559 OPC_EmitInteger32, 28,
40560 OPC_EmitRegisterI32, 0 ,
40561 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMNzrr),
40562 MVT::i32, 4, 0, 1, 2, 3,
40563 0,
40564 0,
40565 58,
40566 OPC_MoveChild0,
40567 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
40568 OPC_CheckChild0Integer, 0,
40569 OPC_RecordChild1,
40570 OPC_CheckTypeI32,
40571 OPC_MoveParent,
40572 OPC_RecordChild1,
40573 OPC_Scope, 14,
40574 OPC_CheckPatternPredicate3,
40575 OPC_EmitInteger32, 28,
40576 OPC_EmitRegisterI32, 0 ,
40577 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMNzrr),
40578 MVT::i32, 4, 1, 0, 2, 3,
40579 15,
40580 OPC_CheckPatternPredicate, 10,
40581 OPC_EmitInteger32, 28,
40582 OPC_EmitRegisterI32, 0 ,
40583 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::tCMNz),
40584 MVT::i32, 4, 1, 0, 2, 3,
40585 14,
40586 OPC_CheckPatternPredicate4,
40587 OPC_EmitInteger32, 28,
40588 OPC_EmitRegisterI32, 0 ,
40589 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMNzrr),
40590 MVT::i32, 4, 1, 0, 2, 3,
40591 0,
40592 45|128,1,
40593 OPC_RecordChild0,
40594 OPC_CheckChild0TypeI32,
40595 OPC_RecordChild1,
40596 OPC_Scope, 108,
40597 OPC_MoveChild1,
40598 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40599 OPC_Scope, 18,
40600 OPC_CheckPredicate, 20,
40601 OPC_MoveParent,
40602 OPC_CheckPatternPredicate3,
40603 OPC_EmitConvertToTarget1,
40604 OPC_EmitInteger32, 28,
40605 OPC_EmitRegisterI32, 0 ,
40606 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPri),
40607 MVT::i32, 4, 0, 2, 3, 4,
40608 21,
40609 OPC_CheckPredicate, 62,
40610 OPC_MoveParent,
40611 OPC_CheckPatternPredicate3,
40612 OPC_EmitConvertToTarget1,
40613 OPC_EmitNodeXForm, 3, 2,
40614 OPC_EmitInteger32, 28,
40615 OPC_EmitRegisterI32, 0 ,
40616 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMNri),
40617 MVT::i32, 4, 0, 3, 4, 5,
40618 19,
40619 OPC_CheckPredicate, 47,
40620 OPC_MoveParent,
40621 OPC_CheckPatternPredicate, 10,
40622 OPC_EmitConvertToTarget1,
40623 OPC_EmitInteger32, 28,
40624 OPC_EmitRegisterI32, 0 ,
40625 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::tCMPi8),
40626 MVT::i32, 4, 0, 2, 3, 4,
40627 18,
40628 OPC_CheckPredicate, 13,
40629 OPC_MoveParent,
40630 OPC_CheckPatternPredicate4,
40631 OPC_EmitConvertToTarget1,
40632 OPC_EmitInteger32, 28,
40633 OPC_EmitRegisterI32, 0 ,
40634 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMPri),
40635 MVT::i32, 4, 0, 2, 3, 4,
40636 21,
40637 OPC_CheckPredicate, 63,
40638 OPC_MoveParent,
40639 OPC_CheckPatternPredicate4,
40640 OPC_EmitConvertToTarget1,
40641 OPC_EmitNodeXForm, 4, 2,
40642 OPC_EmitInteger32, 28,
40643 OPC_EmitRegisterI32, 0 ,
40644 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMNri),
40645 MVT::i32, 4, 0, 3, 4, 5,
40646 0,
40647 14,
40648 OPC_CheckPatternPredicate3,
40649 OPC_EmitInteger32, 28,
40650 OPC_EmitRegisterI32, 0 ,
40651 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPrr),
40652 MVT::i32, 4, 0, 1, 2, 3,
40653 15,
40654 OPC_CheckPatternPredicate, 10,
40655 OPC_EmitInteger32, 28,
40656 OPC_EmitRegisterI32, 0 ,
40657 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::tCMPr),
40658 MVT::i32, 4, 0, 1, 2, 3,
40659 27,
40660 OPC_CheckPatternPredicate4,
40661 OPC_EmitInteger32, 28,
40662 OPC_EmitRegisterI32, 0 ,
40663 OPC_Scope, 9,
40664 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMPrr),
40665 MVT::i32, 4, 0, 1, 2, 3,
40666 9,
40667 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMPrr),
40668 MVT::i32, 4, 1, 0, 2, 3,
40669 0,
40670 0,
40671 0,
40672 97|128,6, TARGET_VAL(ARMISD::CMOV),
40673 OPC_CaptureGlueInput,
40674 OPC_Scope, 20,
40675 OPC_RecordChild0,
40676 OPC_RecordChild1,
40677 OPC_RecordChild2,
40678 OPC_CheckTypeI32,
40679 OPC_CheckPatternPredicate3,
40680 OPC_CheckComplexPat4, /*#*/1,
40681 OPC_CheckComplexPat2, /*#*/2,
40682 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::MOVCCsr),
40683 MVT::i32, 6, 0, 3, 4, 5, 6, 7,
40684 22,
40685 OPC_CheckChild0Integer, 2,
40686 OPC_CheckChild1Integer, 0,
40687 OPC_RecordChild2,
40688 OPC_CheckTypeI32,
40689 OPC_CheckPatternPredicate, 20,
40690 OPC_CheckComplexPat2, /*#*/0,
40691 OPC_EmitRegisterI32, ARM::ZR,
40692 OPC_EmitRegisterI32, ARM::ZR,
40693 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINC),
40694 MVT::i32, 3, 3, 4, 1,
40695 22,
40696 OPC_CheckChild0Integer, 3,
40697 OPC_CheckChild1Integer, 0,
40698 OPC_RecordChild2,
40699 OPC_CheckTypeI32,
40700 OPC_CheckPatternPredicate, 20,
40701 OPC_CheckComplexPat2, /*#*/0,
40702 OPC_EmitRegisterI32, ARM::ZR,
40703 OPC_EmitRegisterI32, ARM::ZR,
40704 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINV),
40705 MVT::i32, 3, 3, 4, 1,
40706 51,
40707 OPC_CheckChild0Integer, 0,
40708 OPC_CheckTypeI32,
40709 OPC_Scope, 22,
40710 OPC_CheckChild1Integer, 2,
40711 OPC_RecordChild2,
40712 OPC_CheckPatternPredicate, 20,
40713 OPC_CheckComplexPat2, /*#*/0,
40714 OPC_EmitRegisterI32, ARM::ZR,
40715 OPC_EmitRegisterI32, ARM::ZR,
40716 OPC_EmitNodeXForm, 15, 1,
40717 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINC),
40718 MVT::i32, 3, 3, 4, 5,
40719 22,
40720 OPC_CheckChild1Integer, 3,
40721 OPC_RecordChild2,
40722 OPC_CheckPatternPredicate, 20,
40723 OPC_CheckComplexPat2, /*#*/0,
40724 OPC_EmitRegisterI32, ARM::ZR,
40725 OPC_EmitRegisterI32, ARM::ZR,
40726 OPC_EmitNodeXForm, 15, 1,
40727 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINV),
40728 MVT::i32, 3, 3, 4, 5,
40729 0,
40730 19,
40731 OPC_RecordChild0,
40732 OPC_RecordChild1,
40733 OPC_RecordChild2,
40734 OPC_CheckTypeI32,
40735 OPC_CheckPatternPredicate3,
40736 OPC_CheckComplexPat5, /*#*/1,
40737 OPC_CheckComplexPat2, /*#*/2,
40738 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::MOVCCsi),
40739 MVT::i32, 5, 0, 3, 4, 5, 6,
40740 23,
40741 OPC_MoveChild0,
40742 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
40743 OPC_RecordChild0,
40744 OPC_CheckChild1Integer, 2,
40745 OPC_MoveParent,
40746 OPC_RecordChild1,
40747 OPC_RecordChild2,
40748 OPC_CheckTypeI32,
40749 OPC_CheckPatternPredicate, 20,
40750 OPC_CheckComplexPat2, /*#*/2,
40751 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINC),
40752 MVT::i32, 3, 1, 0, 3,
40753 26,
40754 OPC_RecordChild0,
40755 OPC_MoveChild1,
40756 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
40757 OPC_RecordChild0,
40758 OPC_CheckChild1Integer, 2,
40759 OPC_MoveParent,
40760 OPC_RecordChild2,
40761 OPC_CheckTypeI32,
40762 OPC_CheckPatternPredicate, 20,
40763 OPC_CheckComplexPat2, /*#*/2,
40764 OPC_EmitNodeXForm, 15, 3,
40765 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINC),
40766 MVT::i32, 3, 0, 1, 5,
40767 23,
40768 OPC_MoveChild0,
40769 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
40770 OPC_RecordChild0,
40771 OPC_CheckChild1Integer, 3,
40772 OPC_MoveParent,
40773 OPC_RecordChild1,
40774 OPC_RecordChild2,
40775 OPC_CheckTypeI32,
40776 OPC_CheckPatternPredicate, 20,
40777 OPC_CheckComplexPat2, /*#*/2,
40778 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINV),
40779 MVT::i32, 3, 1, 0, 3,
40780 26,
40781 OPC_RecordChild0,
40782 OPC_MoveChild1,
40783 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
40784 OPC_RecordChild0,
40785 OPC_CheckChild1Integer, 3,
40786 OPC_MoveParent,
40787 OPC_RecordChild2,
40788 OPC_CheckTypeI32,
40789 OPC_CheckPatternPredicate, 20,
40790 OPC_CheckComplexPat2, /*#*/2,
40791 OPC_EmitNodeXForm, 15, 3,
40792 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINV),
40793 MVT::i32, 3, 0, 1, 5,
40794 23,
40795 OPC_MoveChild0,
40796 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
40797 OPC_CheckChild0Integer, 0,
40798 OPC_RecordChild1,
40799 OPC_MoveParent,
40800 OPC_RecordChild1,
40801 OPC_RecordChild2,
40802 OPC_CheckTypeI32,
40803 OPC_CheckPatternPredicate, 20,
40804 OPC_CheckComplexPat2, /*#*/2,
40805 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSNEG),
40806 MVT::i32, 3, 1, 0, 3,
40807 83|128,4,
40808 OPC_RecordChild0,
40809 OPC_Scope, 23|128,1,
40810 OPC_MoveChild1,
40811 OPC_SwitchOpcode , 21, TARGET_VAL(ISD::SUB),
40812 OPC_CheckChild0Integer, 0,
40813 OPC_RecordChild1,
40814 OPC_MoveParent,
40815 OPC_RecordChild2,
40816 OPC_CheckTypeI32,
40817 OPC_CheckPatternPredicate, 20,
40818 OPC_CheckComplexPat2, /*#*/2,
40819 OPC_EmitNodeXForm, 15, 3,
40820 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSNEG),
40821 MVT::i32, 3, 0, 1, 5,
40822 26, TARGET_VAL(ISD::SHL),
40823 OPC_RecordChild0,
40824 OPC_RecordChild1,
40825 OPC_MoveChild1,
40826 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40827 OPC_CheckPredicate5,
40828 OPC_CheckTypeI32,
40829 OPC_MoveParent,
40830 OPC_MoveParent,
40831 OPC_RecordChild2,
40832 OPC_CheckTypeI32,
40833 OPC_CheckPatternPredicate4,
40834 OPC_CheckComplexPat2, /*#*/3,
40835 OPC_EmitConvertToTarget2,
40836 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2MOVCClsl),
40837 MVT::i32, 5, 0, 1, 6, 4, 5,
40838 30, TARGET_VAL(ISD::SRL),
40839 OPC_RecordChild0,
40840 OPC_RecordChild1,
40841 OPC_MoveChild1,
40842 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40843 OPC_CheckPredicate, 65,
40844 OPC_CheckTypeI32,
40845 OPC_MoveParent,
40846 OPC_MoveParent,
40847 OPC_RecordChild2,
40848 OPC_CheckTypeI32,
40849 OPC_CheckPatternPredicate4,
40850 OPC_CheckComplexPat2, /*#*/3,
40851 OPC_EmitConvertToTarget2,
40852 OPC_EmitNodeXForm, 14, 6,
40853 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2MOVCClsr),
40854 MVT::i32, 5, 0, 1, 7, 4, 5,
40855 30, TARGET_VAL(ISD::SRA),
40856 OPC_RecordChild0,
40857 OPC_RecordChild1,
40858 OPC_MoveChild1,
40859 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40860 OPC_CheckPredicate, 65,
40861 OPC_CheckTypeI32,
40862 OPC_MoveParent,
40863 OPC_MoveParent,
40864 OPC_RecordChild2,
40865 OPC_CheckTypeI32,
40866 OPC_CheckPatternPredicate4,
40867 OPC_CheckComplexPat2, /*#*/3,
40868 OPC_EmitConvertToTarget2,
40869 OPC_EmitNodeXForm, 14, 6,
40870 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2MOVCCasr),
40871 MVT::i32, 5, 0, 1, 7, 4, 5,
40872 26, TARGET_VAL(ISD::ROTR),
40873 OPC_RecordChild0,
40874 OPC_RecordChild1,
40875 OPC_MoveChild1,
40876 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40877 OPC_CheckPredicate5,
40878 OPC_CheckTypeI32,
40879 OPC_MoveParent,
40880 OPC_MoveParent,
40881 OPC_RecordChild2,
40882 OPC_CheckTypeI32,
40883 OPC_CheckPatternPredicate4,
40884 OPC_CheckComplexPat2, /*#*/3,
40885 OPC_EmitConvertToTarget2,
40886 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2MOVCCror),
40887 MVT::i32, 5, 0, 1, 6, 4, 5,
40888 0,
40889 25,
40890 OPC_MoveChild0,
40891 OPC_CheckPredicate, 72,
40892 OPC_MoveParent,
40893 OPC_CheckChild1Integer, 2,
40894 OPC_RecordChild2,
40895 OPC_CheckTypeI32,
40896 OPC_CheckPatternPredicate, 20,
40897 OPC_CheckComplexPat2, /*#*/1,
40898 OPC_EmitRegisterI32, ARM::ZR,
40899 OPC_EmitNodeXForm, 15, 2,
40900 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINC),
40901 MVT::i32, 3, 0, 4, 5,
40902 27|128,3,
40903 OPC_RecordChild1,
40904 OPC_Scope, 34|128,1,
40905 OPC_MoveChild1,
40906 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
40907 OPC_Scope, 19,
40908 OPC_CheckPredicate, 51,
40909 OPC_MoveParent,
40910 OPC_RecordChild2,
40911 OPC_CheckTypeI32,
40912 OPC_CheckPatternPredicate, 32,
40913 OPC_CheckComplexPat2, /*#*/2,
40914 OPC_EmitConvertToTarget1,
40915 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::MOVCCi16),
40916 MVT::i32, 4, 0, 5, 3, 4,
40917 18,
40918 OPC_CheckPredicate, 20,
40919 OPC_MoveParent,
40920 OPC_RecordChild2,
40921 OPC_CheckTypeI32,
40922 OPC_CheckPatternPredicate3,
40923 OPC_CheckComplexPat2, /*#*/2,
40924 OPC_EmitConvertToTarget1,
40925 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::MOVCCi),
40926 MVT::i32, 4, 0, 5, 3, 4,
40927 21,
40928 OPC_CheckPredicate, 64,
40929 OPC_MoveParent,
40930 OPC_RecordChild2,
40931 OPC_CheckTypeI32,
40932 OPC_CheckPatternPredicate3,
40933 OPC_CheckComplexPat2, /*#*/2,
40934 OPC_EmitConvertToTarget1,
40935 OPC_EmitNodeXForm, 9, 5,
40936 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::MVNCCi),
40937 MVT::i32, 4, 0, 6, 3, 4,
40938 18,
40939 OPC_CheckPredicate, 13,
40940 OPC_MoveParent,
40941 OPC_RecordChild2,
40942 OPC_CheckTypeI32,
40943 OPC_CheckPatternPredicate4,
40944 OPC_CheckComplexPat2, /*#*/2,
40945 OPC_EmitConvertToTarget1,
40946 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2MOVCCi),
40947 MVT::i32, 4, 0, 5, 3, 4,
40948 18,
40949 OPC_CheckPredicate, 51,
40950 OPC_MoveParent,
40951 OPC_RecordChild2,
40952 OPC_CheckTypeI32,
40953 OPC_CheckPatternPredicate4,
40954 OPC_CheckComplexPat2, /*#*/2,
40955 OPC_EmitConvertToTarget1,
40956 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2MOVCCi16),
40957 MVT::i32, 4, 0, 5, 3, 4,
40958 21,
40959 OPC_CheckPredicate, 56,
40960 OPC_MoveParent,
40961 OPC_RecordChild2,
40962 OPC_CheckTypeI32,
40963 OPC_CheckPatternPredicate4,
40964 OPC_CheckComplexPat2, /*#*/2,
40965 OPC_EmitConvertToTarget1,
40966 OPC_EmitNodeXForm, 1, 5,
40967 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2MVNCCi),
40968 MVT::i32, 4, 0, 6, 3, 4,
40969 34,
40970 OPC_MoveParent,
40971 OPC_RecordChild2,
40972 OPC_CheckTypeI32,
40973 OPC_Scope, 14,
40974 OPC_CheckPatternPredicate, 32,
40975 OPC_CheckComplexPat2, /*#*/2,
40976 OPC_EmitConvertToTarget1,
40977 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::MOVCCi32imm),
40978 MVT::i32, 4, 0, 5, 3, 4,
40979 13,
40980 OPC_CheckPatternPredicate4,
40981 OPC_CheckComplexPat2, /*#*/2,
40982 OPC_EmitConvertToTarget1,
40983 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2MOVCCi32imm),
40984 MVT::i32, 4, 0, 5, 3, 4,
40985 0,
40986 0,
40987 42,
40988 OPC_RecordChild2,
40989 OPC_CheckTypeI32,
40990 OPC_Scope, 12,
40991 OPC_CheckPatternPredicate3,
40992 OPC_CheckComplexPat2, /*#*/2,
40993 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::MOVCCr),
40994 MVT::i32, 4, 0, 1, 3, 4,
40995 12,
40996 OPC_CheckPatternPredicate4,
40997 OPC_CheckComplexPat2, /*#*/2,
40998 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2MOVCCr),
40999 MVT::i32, 4, 0, 1, 3, 4,
41000 11,
41001 OPC_CheckComplexPat2, /*#*/2,
41002 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::tMOVCCr_pseudo),
41003 MVT::i32, 4, 0, 1, 3, 4,
41004 0,
41005 37,
41006 OPC_CheckChild2Integer, 24,
41007 OPC_SwitchType , 9, MVT::f16,
41008 OPC_CheckPatternPredicate, 13,
41009 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELGTH),
41010 MVT::f16, 2, 1, 0,
41011 9, MVT::f32,
41012 OPC_CheckPatternPredicate, 25,
41013 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELGTS),
41014 MVT::f32, 2, 1, 0,
41015 9, MVT::f64,
41016 OPC_CheckPatternPredicate, 22,
41017 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELGTD),
41018 MVT::f64, 2, 1, 0,
41019 0,
41020 37,
41021 OPC_CheckChild2Integer, 20,
41022 OPC_SwitchType , 9, MVT::f16,
41023 OPC_CheckPatternPredicate, 13,
41024 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELGEH),
41025 MVT::f16, 2, 1, 0,
41026 9, MVT::f32,
41027 OPC_CheckPatternPredicate, 25,
41028 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELGES),
41029 MVT::f32, 2, 1, 0,
41030 9, MVT::f64,
41031 OPC_CheckPatternPredicate, 22,
41032 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELGED),
41033 MVT::f64, 2, 1, 0,
41034 0,
41035 37,
41036 OPC_CheckChild2Integer, 0,
41037 OPC_SwitchType , 9, MVT::f16,
41038 OPC_CheckPatternPredicate, 13,
41039 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELEQH),
41040 MVT::f16, 2, 1, 0,
41041 9, MVT::f32,
41042 OPC_CheckPatternPredicate, 25,
41043 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELEQS),
41044 MVT::f32, 2, 1, 0,
41045 9, MVT::f64,
41046 OPC_CheckPatternPredicate, 22,
41047 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELEQD),
41048 MVT::f64, 2, 1, 0,
41049 0,
41050 37,
41051 OPC_CheckChild2Integer, 12,
41052 OPC_SwitchType , 9, MVT::f16,
41053 OPC_CheckPatternPredicate, 13,
41054 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELVSH),
41055 MVT::f16, 2, 1, 0,
41056 9, MVT::f32,
41057 OPC_CheckPatternPredicate, 25,
41058 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELVSS),
41059 MVT::f32, 2, 1, 0,
41060 9, MVT::f64,
41061 OPC_CheckPatternPredicate, 22,
41062 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VSELVSD),
41063 MVT::f64, 2, 1, 0,
41064 0,
41065 48,
41066 OPC_RecordChild2,
41067 OPC_SwitchType , 13, MVT::f64,
41068 OPC_CheckPatternPredicate, 116,
41069 OPC_CheckComplexPat2, /*#*/2,
41070 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VMOVDcc),
41071 MVT::f64, 4, 0, 1, 3, 4,
41072 13, MVT::f32,
41073 OPC_CheckPatternPredicate, 35,
41074 OPC_CheckComplexPat2, /*#*/2,
41075 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VMOVScc),
41076 MVT::f32, 4, 0, 1, 3, 4,
41077 13, MVT::f16,
41078 OPC_CheckPatternPredicate, 35,
41079 OPC_CheckComplexPat2, /*#*/2,
41080 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::VMOVHcc),
41081 MVT::f16, 4, 0, 1, 3, 4,
41082 0,
41083 0,
41084 0,
41085 0,
41086 76|128,54, TARGET_VAL(ISD::LOAD),
41087 OPC_RecordMemRef,
41088 OPC_RecordNode,
41089 OPC_Scope, 41|128,1,
41090 OPC_RecordChild1,
41091 OPC_CheckChild1TypeI32,
41092 OPC_CheckPredicate, 27,
41093 OPC_CheckTypeI32,
41094 OPC_Scope, 21,
41095 OPC_CheckPredicate, 17,
41096 OPC_CheckPatternPredicate3,
41097 OPC_CheckComplexPat, /*CP*/22, /*#*/1,
41098 OPC_EmitMergeInputChains1_0,
41099 OPC_EmitInteger32, 28,
41100 OPC_EmitRegisterI32, 0 ,
41101 OPC_MorphNodeTo1, TARGET_VAL(ARM::PICLDR), 0|OPFL_Chain|OPFL_MemRefs,
41102 MVT::i32, 4, 2, 3, 4, 5,
41103 46,
41104 OPC_CheckPredicate, 16,
41105 OPC_Scope, 20,
41106 OPC_CheckPredicate4,
41107 OPC_CheckPatternPredicate3,
41108 OPC_CheckComplexPat, /*CP*/22, /*#*/1,
41109 OPC_EmitMergeInputChains1_0,
41110 OPC_EmitInteger32, 28,
41111 OPC_EmitRegisterI32, 0 ,
41112 OPC_MorphNodeTo1, TARGET_VAL(ARM::PICLDRH), 0|OPFL_Chain|OPFL_MemRefs,
41113 MVT::i32, 4, 2, 3, 4, 5,
41114 20,
41115 OPC_CheckPredicate3,
41116 OPC_CheckPatternPredicate3,
41117 OPC_CheckComplexPat, /*CP*/22, /*#*/1,
41118 OPC_EmitMergeInputChains1_0,
41119 OPC_EmitInteger32, 28,
41120 OPC_EmitRegisterI32, 0 ,
41121 OPC_MorphNodeTo1, TARGET_VAL(ARM::PICLDRB), 0|OPFL_Chain|OPFL_MemRefs,
41122 MVT::i32, 4, 2, 3, 4, 5,
41123 0,
41124 92,
41125 OPC_CheckPredicate, 18,
41126 OPC_Scope, 20,
41127 OPC_CheckPredicate4,
41128 OPC_CheckPatternPredicate3,
41129 OPC_CheckComplexPat, /*CP*/22, /*#*/1,
41130 OPC_EmitMergeInputChains1_0,
41131 OPC_EmitInteger32, 28,
41132 OPC_EmitRegisterI32, 0 ,
41133 OPC_MorphNodeTo1, TARGET_VAL(ARM::PICLDRSH), 0|OPFL_Chain|OPFL_MemRefs,
41134 MVT::i32, 4, 2, 3, 4, 5,
41135 44,
41136 OPC_CheckPredicate3,
41137 OPC_Scope, 19,
41138 OPC_CheckPatternPredicate3,
41139 OPC_CheckComplexPat, /*CP*/22, /*#*/1,
41140 OPC_EmitMergeInputChains1_0,
41141 OPC_EmitInteger32, 28,
41142 OPC_EmitRegisterI32, 0 ,
41143 OPC_MorphNodeTo1, TARGET_VAL(ARM::PICLDRSB), 0|OPFL_Chain|OPFL_MemRefs,
41144 MVT::i32, 4, 2, 3, 4, 5,
41145 20,
41146 OPC_CheckPatternPredicate, 10,
41147 OPC_CheckComplexPat, /*CP*/41, /*#*/1,
41148 OPC_EmitMergeInputChains1_0,
41149 OPC_EmitInteger32, 28,
41150 OPC_EmitRegisterI32, 0 ,
41151 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRSB), 0|OPFL_Chain|OPFL_MemRefs,
41152 MVT::i32, 4, 2, 3, 4, 5,
41153 0,
41154 21,
41155 OPC_CheckPredicate4,
41156 OPC_CheckPatternPredicate, 10,
41157 OPC_CheckComplexPat, /*CP*/41, /*#*/1,
41158 OPC_EmitMergeInputChains1_0,
41159 OPC_EmitInteger32, 28,
41160 OPC_EmitRegisterI32, 0 ,
41161 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRSH), 0|OPFL_Chain|OPFL_MemRefs,
41162 MVT::i32, 4, 2, 3, 4, 5,
41163 0,
41164 0,
41165 95,
41166 OPC_MoveChild1,
41167 OPC_SwitchOpcode , 58, TARGET_VAL(ARMISD::WrapperPIC),
41168 OPC_RecordChild0,
41169 OPC_MoveChild0,
41170 OPC_SwitchOpcode , 31, TARGET_VAL(ISD::TargetGlobalAddress),
41171 OPC_MoveParent,
41172 OPC_MoveParent,
41173 OPC_CheckPredicate, 27,
41174 OPC_CheckPredicate, 17,
41175 OPC_CheckTypeI32,
41176 OPC_Scope, 10,
41177 OPC_CheckPatternPredicate, 78,
41178 OPC_EmitMergeInputChains1_0,
41179 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRLIT_ga_pcrel_ldr), 0|OPFL_Chain|OPFL_MemRefs,
41180 MVT::i32, 1, 1,
41181 10,
41182 OPC_CheckPatternPredicate, 70,
41183 OPC_EmitMergeInputChains1_0,
41184 OPC_MorphNodeTo1, TARGET_VAL(ARM::MOV_ga_pcrel_ldr), 0|OPFL_Chain|OPFL_MemRefs,
41185 MVT::i32, 1, 1,
41186 0,
41187 17, TARGET_VAL(ISD::TargetGlobalTLSAddress),
41188 OPC_MoveParent,
41189 OPC_MoveParent,
41190 OPC_CheckPredicate, 27,
41191 OPC_CheckPredicate, 17,
41192 OPC_CheckTypeI32,
41193 OPC_CheckPatternPredicate, 70,
41194 OPC_EmitMergeInputChains1_0,
41195 OPC_MorphNodeTo1, TARGET_VAL(ARM::MOV_ga_pcrel_ldr), 0|OPFL_Chain|OPFL_MemRefs,
41196 MVT::i32, 1, 1,
41197 0,
41198 28, TARGET_VAL(ARMISD::Wrapper),
41199 OPC_RecordChild0,
41200 OPC_MoveChild0,
41201 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstantPool),
41202 OPC_MoveParent,
41203 OPC_MoveParent,
41204 OPC_CheckPredicate, 27,
41205 OPC_CheckPredicate, 17,
41206 OPC_CheckTypeI32,
41207 OPC_CheckPatternPredicate, 10,
41208 OPC_EmitMergeInputChains1_0,
41209 OPC_EmitInteger32, 28,
41210 OPC_EmitRegisterI32, 0 ,
41211 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRpci), 0|OPFL_Chain|OPFL_MemRefs,
41212 MVT::i32, 3, 1, 2, 3,
41213 0,
41214 84|128,13,
41215 OPC_RecordChild1,
41216 OPC_CheckChild1TypeI32,
41217 OPC_CheckPredicate, 27,
41218 OPC_CheckTypeI32,
41219 OPC_Scope, 22,
41220 OPC_CheckPredicate, 17,
41221 OPC_CheckPatternPredicate3,
41222 OPC_CheckComplexPat, /*CP*/19, /*#*/1,
41223 OPC_EmitMergeInputChains1_0,
41224 OPC_EmitInteger32, 28,
41225 OPC_EmitRegisterI32, 0 ,
41226 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRrs), 0|OPFL_Chain|OPFL_MemRefs,
41227 MVT::i32, 5, 2, 3, 4, 5, 6,
41228 48,
41229 OPC_CheckPredicate, 16,
41230 OPC_Scope, 21,
41231 OPC_CheckPredicate3,
41232 OPC_CheckPatternPredicate3,
41233 OPC_CheckComplexPat, /*CP*/19, /*#*/1,
41234 OPC_EmitMergeInputChains1_0,
41235 OPC_EmitInteger32, 28,
41236 OPC_EmitRegisterI32, 0 ,
41237 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRBrs), 0|OPFL_Chain|OPFL_MemRefs,
41238 MVT::i32, 5, 2, 3, 4, 5, 6,
41239 21,
41240 OPC_CheckPredicate4,
41241 OPC_CheckPatternPredicate3,
41242 OPC_CheckComplexPat, /*CP*/21, /*#*/1,
41243 OPC_EmitMergeInputChains1_0,
41244 OPC_EmitInteger32, 28,
41245 OPC_EmitRegisterI32, 0 ,
41246 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRH), 0|OPFL_Chain|OPFL_MemRefs,
41247 MVT::i32, 5, 2, 3, 4, 5, 6,
41248 0,
41249 48,
41250 OPC_CheckPredicate, 18,
41251 OPC_Scope, 21,
41252 OPC_CheckPredicate4,
41253 OPC_CheckPatternPredicate3,
41254 OPC_CheckComplexPat, /*CP*/21, /*#*/1,
41255 OPC_EmitMergeInputChains1_0,
41256 OPC_EmitInteger32, 28,
41257 OPC_EmitRegisterI32, 0 ,
41258 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRSH), 0|OPFL_Chain|OPFL_MemRefs,
41259 MVT::i32, 5, 2, 3, 4, 5, 6,
41260 21,
41261 OPC_CheckPredicate3,
41262 OPC_CheckPatternPredicate3,
41263 OPC_CheckComplexPat, /*CP*/21, /*#*/1,
41264 OPC_EmitMergeInputChains1_0,
41265 OPC_EmitInteger32, 28,
41266 OPC_EmitRegisterI32, 0 ,
41267 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRSB), 0|OPFL_Chain|OPFL_MemRefs,
41268 MVT::i32, 5, 2, 3, 4, 5, 6,
41269 0,
41270 24,
41271 OPC_CheckPredicate, 16,
41272 OPC_CheckPredicate, 35,
41273 OPC_CheckPatternPredicate3,
41274 OPC_CheckComplexPat, /*CP*/19, /*#*/1,
41275 OPC_EmitMergeInputChains1_0,
41276 OPC_EmitInteger32, 28,
41277 OPC_EmitRegisterI32, 0 ,
41278 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRBrs), 0|OPFL_Chain|OPFL_MemRefs,
41279 MVT::i32, 5, 2, 3, 4, 5, 6,
41280 71,
41281 OPC_CheckPredicate, 15,
41282 OPC_Scope, 22,
41283 OPC_CheckPredicate, 35,
41284 OPC_CheckPatternPredicate3,
41285 OPC_CheckComplexPat, /*CP*/19, /*#*/1,
41286 OPC_EmitMergeInputChains1_0,
41287 OPC_EmitInteger32, 28,
41288 OPC_EmitRegisterI32, 0 ,
41289 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRBrs), 0|OPFL_Chain|OPFL_MemRefs,
41290 MVT::i32, 5, 2, 3, 4, 5, 6,
41291 21,
41292 OPC_CheckPredicate3,
41293 OPC_CheckPatternPredicate3,
41294 OPC_CheckComplexPat, /*CP*/19, /*#*/1,
41295 OPC_EmitMergeInputChains1_0,
41296 OPC_EmitInteger32, 28,
41297 OPC_EmitRegisterI32, 0 ,
41298 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRBrs), 0|OPFL_Chain|OPFL_MemRefs,
41299 MVT::i32, 5, 2, 3, 4, 5, 6,
41300 21,
41301 OPC_CheckPredicate4,
41302 OPC_CheckPatternPredicate3,
41303 OPC_CheckComplexPat, /*CP*/21, /*#*/1,
41304 OPC_EmitMergeInputChains1_0,
41305 OPC_EmitInteger32, 28,
41306 OPC_EmitRegisterI32, 0 ,
41307 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRH), 0|OPFL_Chain|OPFL_MemRefs,
41308 MVT::i32, 5, 2, 3, 4, 5, 6,
41309 0,
41310 22,
41311 OPC_CheckPredicate, 17,
41312 OPC_CheckPatternPredicate4,
41313 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
41314 OPC_EmitMergeInputChains1_0,
41315 OPC_EmitInteger32, 28,
41316 OPC_EmitRegisterI32, 0 ,
41317 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRs), 0|OPFL_Chain|OPFL_MemRefs,
41318 MVT::i32, 5, 2, 3, 4, 5, 6,
41319 48,
41320 OPC_CheckPredicate, 16,
41321 OPC_Scope, 21,
41322 OPC_CheckPredicate4,
41323 OPC_CheckPatternPredicate4,
41324 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
41325 OPC_EmitMergeInputChains1_0,
41326 OPC_EmitInteger32, 28,
41327 OPC_EmitRegisterI32, 0 ,
41328 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRHs), 0|OPFL_Chain|OPFL_MemRefs,
41329 MVT::i32, 5, 2, 3, 4, 5, 6,
41330 21,
41331 OPC_CheckPredicate3,
41332 OPC_CheckPatternPredicate4,
41333 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
41334 OPC_EmitMergeInputChains1_0,
41335 OPC_EmitInteger32, 28,
41336 OPC_EmitRegisterI32, 0 ,
41337 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBs), 0|OPFL_Chain|OPFL_MemRefs,
41338 MVT::i32, 5, 2, 3, 4, 5, 6,
41339 0,
41340 48,
41341 OPC_CheckPredicate, 18,
41342 OPC_Scope, 21,
41343 OPC_CheckPredicate4,
41344 OPC_CheckPatternPredicate4,
41345 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
41346 OPC_EmitMergeInputChains1_0,
41347 OPC_EmitInteger32, 28,
41348 OPC_EmitRegisterI32, 0 ,
41349 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRSHs), 0|OPFL_Chain|OPFL_MemRefs,
41350 MVT::i32, 5, 2, 3, 4, 5, 6,
41351 21,
41352 OPC_CheckPredicate3,
41353 OPC_CheckPatternPredicate4,
41354 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
41355 OPC_EmitMergeInputChains1_0,
41356 OPC_EmitInteger32, 28,
41357 OPC_EmitRegisterI32, 0 ,
41358 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRSBs), 0|OPFL_Chain|OPFL_MemRefs,
41359 MVT::i32, 5, 2, 3, 4, 5, 6,
41360 0,
41361 24,
41362 OPC_CheckPredicate, 16,
41363 OPC_CheckPredicate, 35,
41364 OPC_CheckPatternPredicate4,
41365 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
41366 OPC_EmitMergeInputChains1_0,
41367 OPC_EmitInteger32, 28,
41368 OPC_EmitRegisterI32, 0 ,
41369 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBs), 0|OPFL_Chain|OPFL_MemRefs,
41370 MVT::i32, 5, 2, 3, 4, 5, 6,
41371 71,
41372 OPC_CheckPredicate, 15,
41373 OPC_Scope, 22,
41374 OPC_CheckPredicate, 35,
41375 OPC_CheckPatternPredicate4,
41376 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
41377 OPC_EmitMergeInputChains1_0,
41378 OPC_EmitInteger32, 28,
41379 OPC_EmitRegisterI32, 0 ,
41380 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBs), 0|OPFL_Chain|OPFL_MemRefs,
41381 MVT::i32, 5, 2, 3, 4, 5, 6,
41382 21,
41383 OPC_CheckPredicate3,
41384 OPC_CheckPatternPredicate4,
41385 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
41386 OPC_EmitMergeInputChains1_0,
41387 OPC_EmitInteger32, 28,
41388 OPC_EmitRegisterI32, 0 ,
41389 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBs), 0|OPFL_Chain|OPFL_MemRefs,
41390 MVT::i32, 5, 2, 3, 4, 5, 6,
41391 21,
41392 OPC_CheckPredicate4,
41393 OPC_CheckPatternPredicate4,
41394 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
41395 OPC_EmitMergeInputChains1_0,
41396 OPC_EmitInteger32, 28,
41397 OPC_EmitRegisterI32, 0 ,
41398 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRHs), 0|OPFL_Chain|OPFL_MemRefs,
41399 MVT::i32, 5, 2, 3, 4, 5, 6,
41400 0,
41401 76,
41402 OPC_CheckPredicate, 18,
41403 OPC_Scope, 35,
41404 OPC_CheckPredicate3,
41405 OPC_CheckPatternPredicate, 39,
41406 OPC_EmitMergeInputChains1_0,
41407 OPC_EmitRegisterI32, ARM::CPSR,
41408 OPC_EmitInteger32, 0,
41409 OPC_EmitInteger32, 28,
41410 OPC_EmitRegisterI32, 0 ,
41411 OPC_EmitNode1None, TARGET_VAL(ARM::tMOVi8),
41412 MVT::i32, 4, 2, 3, 4, 5,
41413 OPC_EmitInteger32, 28,
41414 OPC_EmitRegisterI32, 0 ,
41415 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRSB), 0|OPFL_Chain|OPFL_MemRefs,
41416 MVT::i32, 4, 1, 6, 7, 8,
41417 35,
41418 OPC_CheckPredicate4,
41419 OPC_CheckPatternPredicate, 39,
41420 OPC_EmitMergeInputChains1_0,
41421 OPC_EmitRegisterI32, ARM::CPSR,
41422 OPC_EmitInteger32, 0,
41423 OPC_EmitInteger32, 28,
41424 OPC_EmitRegisterI32, 0 ,
41425 OPC_EmitNode1None, TARGET_VAL(ARM::tMOVi8),
41426 MVT::i32, 4, 2, 3, 4, 5,
41427 OPC_EmitInteger32, 28,
41428 OPC_EmitRegisterI32, 0 ,
41429 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRSH), 0|OPFL_Chain|OPFL_MemRefs,
41430 MVT::i32, 4, 1, 6, 7, 8,
41431 0,
41432 21,
41433 OPC_CheckPredicate, 17,
41434 OPC_CheckPatternPredicate3,
41435 OPC_CheckComplexPat, /*CP*/20, /*#*/1,
41436 OPC_EmitMergeInputChains1_0,
41437 OPC_EmitInteger32, 28,
41438 OPC_EmitRegisterI32, 0 ,
41439 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRi12), 0|OPFL_Chain|OPFL_MemRefs,
41440 MVT::i32, 4, 2, 3, 4, 5,
41441 47,
41442 OPC_CheckPredicate, 16,
41443 OPC_Scope, 20,
41444 OPC_CheckPredicate3,
41445 OPC_CheckPatternPredicate3,
41446 OPC_CheckComplexPat, /*CP*/20, /*#*/1,
41447 OPC_EmitMergeInputChains1_0,
41448 OPC_EmitInteger32, 28,
41449 OPC_EmitRegisterI32, 0 ,
41450 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRBi12), 0|OPFL_Chain|OPFL_MemRefs,
41451 MVT::i32, 4, 2, 3, 4, 5,
41452 21,
41453 OPC_CheckPredicate, 35,
41454 OPC_CheckPatternPredicate3,
41455 OPC_CheckComplexPat, /*CP*/20, /*#*/1,
41456 OPC_EmitMergeInputChains1_0,
41457 OPC_EmitInteger32, 28,
41458 OPC_EmitRegisterI32, 0 ,
41459 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRBi12), 0|OPFL_Chain|OPFL_MemRefs,
41460 MVT::i32, 4, 2, 3, 4, 5,
41461 0,
41462 90,
41463 OPC_CheckPredicate, 15,
41464 OPC_Scope, 21,
41465 OPC_CheckPredicate, 35,
41466 OPC_CheckPatternPredicate3,
41467 OPC_CheckComplexPat, /*CP*/20, /*#*/1,
41468 OPC_EmitMergeInputChains1_0,
41469 OPC_EmitInteger32, 28,
41470 OPC_EmitRegisterI32, 0 ,
41471 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRBi12), 0|OPFL_Chain|OPFL_MemRefs,
41472 MVT::i32, 4, 2, 3, 4, 5,
41473 42,
41474 OPC_CheckPredicate3,
41475 OPC_CheckPatternPredicate3,
41476 OPC_Scope, 18,
41477 OPC_CheckComplexPat, /*CP*/20, /*#*/1,
41478 OPC_EmitMergeInputChains1_0,
41479 OPC_EmitInteger32, 28,
41480 OPC_EmitRegisterI32, 0 ,
41481 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRBi12), 0|OPFL_Chain|OPFL_MemRefs,
41482 MVT::i32, 4, 2, 3, 4, 5,
41483 18,
41484 OPC_CheckComplexPat, /*CP*/22, /*#*/1,
41485 OPC_EmitMergeInputChains1_0,
41486 OPC_EmitInteger32, 28,
41487 OPC_EmitRegisterI32, 0 ,
41488 OPC_MorphNodeTo1, TARGET_VAL(ARM::PICLDRB), 0|OPFL_Chain|OPFL_MemRefs,
41489 MVT::i32, 4, 2, 3, 4, 5,
41490 0,
41491 20,
41492 OPC_CheckPredicate4,
41493 OPC_CheckPatternPredicate3,
41494 OPC_CheckComplexPat, /*CP*/22, /*#*/1,
41495 OPC_EmitMergeInputChains1_0,
41496 OPC_EmitInteger32, 28,
41497 OPC_EmitRegisterI32, 0 ,
41498 OPC_MorphNodeTo1, TARGET_VAL(ARM::PICLDRH), 0|OPFL_Chain|OPFL_MemRefs,
41499 MVT::i32, 4, 2, 3, 4, 5,
41500 0,
41501 63,
41502 OPC_CheckPredicate, 17,
41503 OPC_CheckPatternPredicate, 10,
41504 OPC_Scope, 18,
41505 OPC_CheckComplexPat, /*CP*/31, /*#*/1,
41506 OPC_EmitMergeInputChains1_0,
41507 OPC_EmitInteger32, 28,
41508 OPC_EmitRegisterI32, 0 ,
41509 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRspi), 0|OPFL_Chain|OPFL_MemRefs,
41510 MVT::i32, 4, 2, 3, 4, 5,
41511 18,
41512 OPC_CheckComplexPat, /*CP*/36, /*#*/1,
41513 OPC_EmitMergeInputChains1_0,
41514 OPC_EmitInteger32, 28,
41515 OPC_EmitRegisterI32, 0 ,
41516 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRi), 0|OPFL_Chain|OPFL_MemRefs,
41517 MVT::i32, 4, 2, 3, 4, 5,
41518 18,
41519 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
41520 OPC_EmitMergeInputChains1_0,
41521 OPC_EmitInteger32, 28,
41522 OPC_EmitRegisterI32, 0 ,
41523 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRr), 0|OPFL_Chain|OPFL_MemRefs,
41524 MVT::i32, 4, 2, 3, 4, 5,
41525 0,
41526 9|128,1,
41527 OPC_CheckPredicate, 16,
41528 OPC_Scope, 43,
41529 OPC_CheckPredicate3,
41530 OPC_CheckPatternPredicate, 10,
41531 OPC_Scope, 18,
41532 OPC_CheckComplexPat, /*CP*/27, /*#*/1,
41533 OPC_EmitMergeInputChains1_0,
41534 OPC_EmitInteger32, 28,
41535 OPC_EmitRegisterI32, 0 ,
41536 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRBi), 0|OPFL_Chain|OPFL_MemRefs,
41537 MVT::i32, 4, 2, 3, 4, 5,
41538 18,
41539 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
41540 OPC_EmitMergeInputChains1_0,
41541 OPC_EmitInteger32, 28,
41542 OPC_EmitRegisterI32, 0 ,
41543 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRBr), 0|OPFL_Chain|OPFL_MemRefs,
41544 MVT::i32, 4, 2, 3, 4, 5,
41545 0,
41546 43,
41547 OPC_CheckPredicate4,
41548 OPC_CheckPatternPredicate, 10,
41549 OPC_Scope, 18,
41550 OPC_CheckComplexPat, /*CP*/26, /*#*/1,
41551 OPC_EmitMergeInputChains1_0,
41552 OPC_EmitInteger32, 28,
41553 OPC_EmitRegisterI32, 0 ,
41554 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRHi), 0|OPFL_Chain|OPFL_MemRefs,
41555 MVT::i32, 4, 2, 3, 4, 5,
41556 18,
41557 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
41558 OPC_EmitMergeInputChains1_0,
41559 OPC_EmitInteger32, 28,
41560 OPC_EmitRegisterI32, 0 ,
41561 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRHr), 0|OPFL_Chain|OPFL_MemRefs,
41562 MVT::i32, 4, 2, 3, 4, 5,
41563 0,
41564 44,
41565 OPC_CheckPredicate, 35,
41566 OPC_CheckPatternPredicate, 10,
41567 OPC_Scope, 18,
41568 OPC_CheckComplexPat, /*CP*/27, /*#*/1,
41569 OPC_EmitMergeInputChains1_0,
41570 OPC_EmitInteger32, 28,
41571 OPC_EmitRegisterI32, 0 ,
41572 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRBi), 0|OPFL_Chain|OPFL_MemRefs,
41573 MVT::i32, 4, 2, 3, 4, 5,
41574 18,
41575 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
41576 OPC_EmitMergeInputChains1_0,
41577 OPC_EmitInteger32, 28,
41578 OPC_EmitRegisterI32, 0 ,
41579 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRBr), 0|OPFL_Chain|OPFL_MemRefs,
41580 MVT::i32, 4, 2, 3, 4, 5,
41581 0,
41582 0,
41583 76|128,1,
41584 OPC_CheckPredicate, 15,
41585 OPC_Scope, 22,
41586 OPC_CheckPredicate, 35,
41587 OPC_CheckPatternPredicate, 79,
41588 OPC_CheckComplexPat, /*CP*/31, /*#*/1,
41589 OPC_EmitMergeInputChains1_0,
41590 OPC_EmitInteger32, 28,
41591 OPC_EmitRegisterI32, 0 ,
41592 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRspi), 0|OPFL_Chain|OPFL_MemRefs,
41593 MVT::i32, 4, 2, 3, 4, 5,
41594 21,
41595 OPC_CheckPredicate3,
41596 OPC_CheckPatternPredicate, 79,
41597 OPC_CheckComplexPat, /*CP*/31, /*#*/1,
41598 OPC_EmitMergeInputChains1_0,
41599 OPC_EmitInteger32, 28,
41600 OPC_EmitRegisterI32, 0 ,
41601 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRspi), 0|OPFL_Chain|OPFL_MemRefs,
41602 MVT::i32, 4, 2, 3, 4, 5,
41603 21,
41604 OPC_CheckPredicate4,
41605 OPC_CheckPatternPredicate, 79,
41606 OPC_CheckComplexPat, /*CP*/31, /*#*/1,
41607 OPC_EmitMergeInputChains1_0,
41608 OPC_EmitInteger32, 28,
41609 OPC_EmitRegisterI32, 0 ,
41610 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRspi), 0|OPFL_Chain|OPFL_MemRefs,
41611 MVT::i32, 4, 2, 3, 4, 5,
41612 44,
41613 OPC_CheckPredicate, 35,
41614 OPC_CheckPatternPredicate, 10,
41615 OPC_Scope, 18,
41616 OPC_CheckComplexPat, /*CP*/27, /*#*/1,
41617 OPC_EmitMergeInputChains1_0,
41618 OPC_EmitInteger32, 28,
41619 OPC_EmitRegisterI32, 0 ,
41620 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRBi), 0|OPFL_Chain|OPFL_MemRefs,
41621 MVT::i32, 4, 2, 3, 4, 5,
41622 18,
41623 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
41624 OPC_EmitMergeInputChains1_0,
41625 OPC_EmitInteger32, 28,
41626 OPC_EmitRegisterI32, 0 ,
41627 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRBr), 0|OPFL_Chain|OPFL_MemRefs,
41628 MVT::i32, 4, 2, 3, 4, 5,
41629 0,
41630 43,
41631 OPC_CheckPredicate3,
41632 OPC_CheckPatternPredicate, 10,
41633 OPC_Scope, 18,
41634 OPC_CheckComplexPat, /*CP*/27, /*#*/1,
41635 OPC_EmitMergeInputChains1_0,
41636 OPC_EmitInteger32, 28,
41637 OPC_EmitRegisterI32, 0 ,
41638 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRBi), 0|OPFL_Chain|OPFL_MemRefs,
41639 MVT::i32, 4, 2, 3, 4, 5,
41640 18,
41641 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
41642 OPC_EmitMergeInputChains1_0,
41643 OPC_EmitInteger32, 28,
41644 OPC_EmitRegisterI32, 0 ,
41645 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRBr), 0|OPFL_Chain|OPFL_MemRefs,
41646 MVT::i32, 4, 2, 3, 4, 5,
41647 0,
41648 43,
41649 OPC_CheckPredicate4,
41650 OPC_CheckPatternPredicate, 10,
41651 OPC_Scope, 18,
41652 OPC_CheckComplexPat, /*CP*/26, /*#*/1,
41653 OPC_EmitMergeInputChains1_0,
41654 OPC_EmitInteger32, 28,
41655 OPC_EmitRegisterI32, 0 ,
41656 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRHi), 0|OPFL_Chain|OPFL_MemRefs,
41657 MVT::i32, 4, 2, 3, 4, 5,
41658 18,
41659 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
41660 OPC_EmitMergeInputChains1_0,
41661 OPC_EmitInteger32, 28,
41662 OPC_EmitRegisterI32, 0 ,
41663 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRHr), 0|OPFL_Chain|OPFL_MemRefs,
41664 MVT::i32, 4, 2, 3, 4, 5,
41665 0,
41666 0,
41667 43,
41668 OPC_CheckPredicate, 17,
41669 OPC_CheckPatternPredicate4,
41670 OPC_Scope, 18,
41671 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
41672 OPC_EmitMergeInputChains1_0,
41673 OPC_EmitInteger32, 28,
41674 OPC_EmitRegisterI32, 0 ,
41675 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRi12), 0|OPFL_Chain|OPFL_MemRefs,
41676 MVT::i32, 4, 2, 3, 4, 5,
41677 18,
41678 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
41679 OPC_EmitMergeInputChains1_0,
41680 OPC_EmitInteger32, 28,
41681 OPC_EmitRegisterI32, 0 ,
41682 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRi8), 0|OPFL_Chain|OPFL_MemRefs,
41683 MVT::i32, 4, 2, 3, 4, 5,
41684 0,
41685 90,
41686 OPC_CheckPredicate, 16,
41687 OPC_Scope, 42,
41688 OPC_CheckPredicate4,
41689 OPC_CheckPatternPredicate4,
41690 OPC_Scope, 18,
41691 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
41692 OPC_EmitMergeInputChains1_0,
41693 OPC_EmitInteger32, 28,
41694 OPC_EmitRegisterI32, 0 ,
41695 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRHi12), 0|OPFL_Chain|OPFL_MemRefs,
41696 MVT::i32, 4, 2, 3, 4, 5,
41697 18,
41698 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
41699 OPC_EmitMergeInputChains1_0,
41700 OPC_EmitInteger32, 28,
41701 OPC_EmitRegisterI32, 0 ,
41702 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRHi8), 0|OPFL_Chain|OPFL_MemRefs,
41703 MVT::i32, 4, 2, 3, 4, 5,
41704 0,
41705 42,
41706 OPC_CheckPredicate3,
41707 OPC_CheckPatternPredicate4,
41708 OPC_Scope, 18,
41709 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
41710 OPC_EmitMergeInputChains1_0,
41711 OPC_EmitInteger32, 28,
41712 OPC_EmitRegisterI32, 0 ,
41713 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBi12), 0|OPFL_Chain|OPFL_MemRefs,
41714 MVT::i32, 4, 2, 3, 4, 5,
41715 18,
41716 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
41717 OPC_EmitMergeInputChains1_0,
41718 OPC_EmitInteger32, 28,
41719 OPC_EmitRegisterI32, 0 ,
41720 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBi8), 0|OPFL_Chain|OPFL_MemRefs,
41721 MVT::i32, 4, 2, 3, 4, 5,
41722 0,
41723 0,
41724 90,
41725 OPC_CheckPredicate, 18,
41726 OPC_Scope, 42,
41727 OPC_CheckPredicate4,
41728 OPC_CheckPatternPredicate4,
41729 OPC_Scope, 18,
41730 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
41731 OPC_EmitMergeInputChains1_0,
41732 OPC_EmitInteger32, 28,
41733 OPC_EmitRegisterI32, 0 ,
41734 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRSHi12), 0|OPFL_Chain|OPFL_MemRefs,
41735 MVT::i32, 4, 2, 3, 4, 5,
41736 18,
41737 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
41738 OPC_EmitMergeInputChains1_0,
41739 OPC_EmitInteger32, 28,
41740 OPC_EmitRegisterI32, 0 ,
41741 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRSHi8), 0|OPFL_Chain|OPFL_MemRefs,
41742 MVT::i32, 4, 2, 3, 4, 5,
41743 0,
41744 42,
41745 OPC_CheckPredicate3,
41746 OPC_CheckPatternPredicate4,
41747 OPC_Scope, 18,
41748 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
41749 OPC_EmitMergeInputChains1_0,
41750 OPC_EmitInteger32, 28,
41751 OPC_EmitRegisterI32, 0 ,
41752 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRSBi12), 0|OPFL_Chain|OPFL_MemRefs,
41753 MVT::i32, 4, 2, 3, 4, 5,
41754 18,
41755 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
41756 OPC_EmitMergeInputChains1_0,
41757 OPC_EmitInteger32, 28,
41758 OPC_EmitRegisterI32, 0 ,
41759 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRSBi8), 0|OPFL_Chain|OPFL_MemRefs,
41760 MVT::i32, 4, 2, 3, 4, 5,
41761 0,
41762 0,
41763 45,
41764 OPC_CheckPredicate, 16,
41765 OPC_CheckPredicate, 35,
41766 OPC_CheckPatternPredicate4,
41767 OPC_Scope, 18,
41768 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
41769 OPC_EmitMergeInputChains1_0,
41770 OPC_EmitInteger32, 28,
41771 OPC_EmitRegisterI32, 0 ,
41772 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBi12), 0|OPFL_Chain|OPFL_MemRefs,
41773 MVT::i32, 4, 2, 3, 4, 5,
41774 18,
41775 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
41776 OPC_EmitMergeInputChains1_0,
41777 OPC_EmitInteger32, 28,
41778 OPC_EmitRegisterI32, 0 ,
41779 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBi8), 0|OPFL_Chain|OPFL_MemRefs,
41780 MVT::i32, 4, 2, 3, 4, 5,
41781 0,
41782 6|128,1,
41783 OPC_CheckPredicate, 15,
41784 OPC_Scope, 43,
41785 OPC_CheckPredicate, 35,
41786 OPC_CheckPatternPredicate4,
41787 OPC_Scope, 18,
41788 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
41789 OPC_EmitMergeInputChains1_0,
41790 OPC_EmitInteger32, 28,
41791 OPC_EmitRegisterI32, 0 ,
41792 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBi12), 0|OPFL_Chain|OPFL_MemRefs,
41793 MVT::i32, 4, 2, 3, 4, 5,
41794 18,
41795 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
41796 OPC_EmitMergeInputChains1_0,
41797 OPC_EmitInteger32, 28,
41798 OPC_EmitRegisterI32, 0 ,
41799 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBi8), 0|OPFL_Chain|OPFL_MemRefs,
41800 MVT::i32, 4, 2, 3, 4, 5,
41801 0,
41802 42,
41803 OPC_CheckPredicate3,
41804 OPC_CheckPatternPredicate4,
41805 OPC_Scope, 18,
41806 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
41807 OPC_EmitMergeInputChains1_0,
41808 OPC_EmitInteger32, 28,
41809 OPC_EmitRegisterI32, 0 ,
41810 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBi12), 0|OPFL_Chain|OPFL_MemRefs,
41811 MVT::i32, 4, 2, 3, 4, 5,
41812 18,
41813 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
41814 OPC_EmitMergeInputChains1_0,
41815 OPC_EmitInteger32, 28,
41816 OPC_EmitRegisterI32, 0 ,
41817 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBi8), 0|OPFL_Chain|OPFL_MemRefs,
41818 MVT::i32, 4, 2, 3, 4, 5,
41819 0,
41820 42,
41821 OPC_CheckPredicate4,
41822 OPC_CheckPatternPredicate4,
41823 OPC_Scope, 18,
41824 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
41825 OPC_EmitMergeInputChains1_0,
41826 OPC_EmitInteger32, 28,
41827 OPC_EmitRegisterI32, 0 ,
41828 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRHi12), 0|OPFL_Chain|OPFL_MemRefs,
41829 MVT::i32, 4, 2, 3, 4, 5,
41830 18,
41831 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
41832 OPC_EmitMergeInputChains1_0,
41833 OPC_EmitInteger32, 28,
41834 OPC_EmitRegisterI32, 0 ,
41835 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRHi8), 0|OPFL_Chain|OPFL_MemRefs,
41836 MVT::i32, 4, 2, 3, 4, 5,
41837 0,
41838 0,
41839 120|128,1,
41840 OPC_CheckPredicate, 18,
41841 OPC_Scope, 121,
41842 OPC_CheckPredicate3,
41843 OPC_CheckPatternPredicate, 10,
41844 OPC_Scope, 57,
41845 OPC_CheckComplexPat, /*CP*/27, /*#*/1,
41846 OPC_EmitMergeInputChains1_0,
41847 OPC_EmitRegisterI32, ARM::CPSR,
41848 OPC_EmitRegisterI32, ARM::CPSR,
41849 OPC_EmitInteger32, 28,
41850 OPC_EmitRegisterI32, 0 ,
41851 OPC_EmitNode1, TARGET_VAL(ARM::tLDRBi), 0|OPFL_Chain|OPFL_MemRefs,
41852 MVT::i32, 4, 2, 3, 6, 7,
41853 OPC_EmitInteger32, 48,
41854 OPC_EmitInteger32, 28,
41855 OPC_EmitRegisterI32, 0 ,
41856 OPC_EmitNode1None, TARGET_VAL(ARM::tLSLri),
41857 MVT::i32, 5, 5, 8, 9, 10, 11,
41858 OPC_EmitInteger32, 48,
41859 OPC_EmitInteger32, 28,
41860 OPC_EmitRegisterI32, 0 ,
41861 OPC_EmitNode1None, TARGET_VAL(ARM::tASRri),
41862 MVT::i32, 5, 4, 12, 13, 14, 15,
41863 OPC_CompleteMatch, 1, 16,
41864
41865 57,
41866 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
41867 OPC_EmitMergeInputChains1_0,
41868 OPC_EmitRegisterI32, ARM::CPSR,
41869 OPC_EmitRegisterI32, ARM::CPSR,
41870 OPC_EmitInteger32, 28,
41871 OPC_EmitRegisterI32, 0 ,
41872 OPC_EmitNode1, TARGET_VAL(ARM::tLDRBr), 0|OPFL_Chain|OPFL_MemRefs,
41873 MVT::i32, 4, 2, 3, 6, 7,
41874 OPC_EmitInteger32, 48,
41875 OPC_EmitInteger32, 28,
41876 OPC_EmitRegisterI32, 0 ,
41877 OPC_EmitNode1None, TARGET_VAL(ARM::tLSLri),
41878 MVT::i32, 5, 5, 8, 9, 10, 11,
41879 OPC_EmitInteger32, 48,
41880 OPC_EmitInteger32, 28,
41881 OPC_EmitRegisterI32, 0 ,
41882 OPC_EmitNode1None, TARGET_VAL(ARM::tASRri),
41883 MVT::i32, 5, 4, 12, 13, 14, 15,
41884 OPC_CompleteMatch, 1, 16,
41885
41886 0,
41887 121,
41888 OPC_CheckPredicate4,
41889 OPC_CheckPatternPredicate, 10,
41890 OPC_Scope, 57,
41891 OPC_CheckComplexPat, /*CP*/26, /*#*/1,
41892 OPC_EmitMergeInputChains1_0,
41893 OPC_EmitRegisterI32, ARM::CPSR,
41894 OPC_EmitRegisterI32, ARM::CPSR,
41895 OPC_EmitInteger32, 28,
41896 OPC_EmitRegisterI32, 0 ,
41897 OPC_EmitNode1, TARGET_VAL(ARM::tLDRHi), 0|OPFL_Chain|OPFL_MemRefs,
41898 MVT::i32, 4, 2, 3, 6, 7,
41899 OPC_EmitInteger32, 32,
41900 OPC_EmitInteger32, 28,
41901 OPC_EmitRegisterI32, 0 ,
41902 OPC_EmitNode1None, TARGET_VAL(ARM::tLSLri),
41903 MVT::i32, 5, 5, 8, 9, 10, 11,
41904 OPC_EmitInteger32, 32,
41905 OPC_EmitInteger32, 28,
41906 OPC_EmitRegisterI32, 0 ,
41907 OPC_EmitNode1None, TARGET_VAL(ARM::tASRri),
41908 MVT::i32, 5, 4, 12, 13, 14, 15,
41909 OPC_CompleteMatch, 1, 16,
41910
41911 57,
41912 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
41913 OPC_EmitMergeInputChains1_0,
41914 OPC_EmitRegisterI32, ARM::CPSR,
41915 OPC_EmitRegisterI32, ARM::CPSR,
41916 OPC_EmitInteger32, 28,
41917 OPC_EmitRegisterI32, 0 ,
41918 OPC_EmitNode1, TARGET_VAL(ARM::tLDRHr), 0|OPFL_Chain|OPFL_MemRefs,
41919 MVT::i32, 4, 2, 3, 6, 7,
41920 OPC_EmitInteger32, 32,
41921 OPC_EmitInteger32, 28,
41922 OPC_EmitRegisterI32, 0 ,
41923 OPC_EmitNode1None, TARGET_VAL(ARM::tLSLri),
41924 MVT::i32, 5, 5, 8, 9, 10, 11,
41925 OPC_EmitInteger32, 32,
41926 OPC_EmitInteger32, 28,
41927 OPC_EmitRegisterI32, 0 ,
41928 OPC_EmitNode1None, TARGET_VAL(ARM::tASRri),
41929 MVT::i32, 5, 4, 12, 13, 14, 15,
41930 OPC_CompleteMatch, 1, 16,
41931
41932 0,
41933 0,
41934 0,
41935 61|128,1,
41936 OPC_MoveChild1,
41937 OPC_CheckOpcode, TARGET_VAL(ARMISD::Wrapper),
41938 OPC_RecordChild0,
41939 OPC_MoveChild0,
41940 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstantPool),
41941 OPC_MoveParent,
41942 OPC_MoveParent,
41943 OPC_CheckPredicate, 27,
41944 OPC_CheckTypeI32,
41945 OPC_Scope, 17,
41946 OPC_CheckPredicate, 17,
41947 OPC_CheckPatternPredicate4,
41948 OPC_EmitMergeInputChains1_0,
41949 OPC_EmitInteger32, 28,
41950 OPC_EmitRegisterI32, 0 ,
41951 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRpci), 0|OPFL_Chain|OPFL_MemRefs,
41952 MVT::i32, 3, 1, 2, 3,
41953 38,
41954 OPC_CheckPredicate, 16,
41955 OPC_Scope, 16,
41956 OPC_CheckPredicate4,
41957 OPC_CheckPatternPredicate4,
41958 OPC_EmitMergeInputChains1_0,
41959 OPC_EmitInteger32, 28,
41960 OPC_EmitRegisterI32, 0 ,
41961 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRHpci), 0|OPFL_Chain|OPFL_MemRefs,
41962 MVT::i32, 3, 1, 2, 3,
41963 16,
41964 OPC_CheckPredicate3,
41965 OPC_CheckPatternPredicate4,
41966 OPC_EmitMergeInputChains1_0,
41967 OPC_EmitInteger32, 28,
41968 OPC_EmitRegisterI32, 0 ,
41969 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBpci), 0|OPFL_Chain|OPFL_MemRefs,
41970 MVT::i32, 3, 1, 2, 3,
41971 0,
41972 38,
41973 OPC_CheckPredicate, 18,
41974 OPC_Scope, 16,
41975 OPC_CheckPredicate4,
41976 OPC_CheckPatternPredicate4,
41977 OPC_EmitMergeInputChains1_0,
41978 OPC_EmitInteger32, 28,
41979 OPC_EmitRegisterI32, 0 ,
41980 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRSHpci), 0|OPFL_Chain|OPFL_MemRefs,
41981 MVT::i32, 3, 1, 2, 3,
41982 16,
41983 OPC_CheckPredicate3,
41984 OPC_CheckPatternPredicate4,
41985 OPC_EmitMergeInputChains1_0,
41986 OPC_EmitInteger32, 28,
41987 OPC_EmitRegisterI32, 0 ,
41988 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRSBpci), 0|OPFL_Chain|OPFL_MemRefs,
41989 MVT::i32, 3, 1, 2, 3,
41990 0,
41991 19,
41992 OPC_CheckPredicate, 16,
41993 OPC_CheckPredicate, 35,
41994 OPC_CheckPatternPredicate4,
41995 OPC_EmitMergeInputChains1_0,
41996 OPC_EmitInteger32, 28,
41997 OPC_EmitRegisterI32, 0 ,
41998 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBpci), 0|OPFL_Chain|OPFL_MemRefs,
41999 MVT::i32, 3, 1, 2, 3,
42000 56,
42001 OPC_CheckPredicate, 15,
42002 OPC_Scope, 17,
42003 OPC_CheckPredicate, 35,
42004 OPC_CheckPatternPredicate4,
42005 OPC_EmitMergeInputChains1_0,
42006 OPC_EmitInteger32, 28,
42007 OPC_EmitRegisterI32, 0 ,
42008 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBpci), 0|OPFL_Chain|OPFL_MemRefs,
42009 MVT::i32, 3, 1, 2, 3,
42010 16,
42011 OPC_CheckPredicate3,
42012 OPC_CheckPatternPredicate4,
42013 OPC_EmitMergeInputChains1_0,
42014 OPC_EmitInteger32, 28,
42015 OPC_EmitRegisterI32, 0 ,
42016 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBpci), 0|OPFL_Chain|OPFL_MemRefs,
42017 MVT::i32, 3, 1, 2, 3,
42018 16,
42019 OPC_CheckPredicate4,
42020 OPC_CheckPatternPredicate4,
42021 OPC_EmitMergeInputChains1_0,
42022 OPC_EmitInteger32, 28,
42023 OPC_EmitRegisterI32, 0 ,
42024 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRHpci), 0|OPFL_Chain|OPFL_MemRefs,
42025 MVT::i32, 3, 1, 2, 3,
42026 0,
42027 0,
42028 38|128,37,
42029 OPC_RecordChild1,
42030 OPC_CheckChild1TypeI32,
42031 OPC_CheckPredicate, 27,
42032 OPC_Scope, 111|128,1,
42033 OPC_CheckPredicate, 17,
42034 OPC_Scope, 34,
42035 OPC_CheckPredicate, 57,
42036 OPC_CheckType, MVT::bf16,
42037 OPC_CheckPatternPredicate, 89,
42038 OPC_CheckComplexPat, /*CP*/21, /*#*/1,
42039 OPC_EmitMergeInputChains1_0,
42040 OPC_EmitInteger32, 28,
42041 OPC_EmitRegisterI32, 0 ,
42042 OPC_EmitNode1, TARGET_VAL(ARM::LDRH), 0|OPFL_Chain|OPFL_MemRefs,
42043 MVT::i32, 5, 2, 3, 4, 5, 6,
42044 OPC_EmitStringInteger32, ARM::HPRRegClassID,
42045 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
42046 MVT::bf16, 2, 7, 8,
42047 46,
42048 OPC_CheckPredicate, 45,
42049 OPC_SwitchType , 19, MVT::f64,
42050 OPC_CheckPatternPredicate, 35,
42051 OPC_CheckComplexPat3, /*#*/1,
42052 OPC_EmitMergeInputChains1_0,
42053 OPC_EmitInteger32, 28,
42054 OPC_EmitRegisterI32, 0 ,
42055 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLDRD), 0|OPFL_Chain|OPFL_MemRefs,
42056 MVT::f64, 4, 2, 3, 4, 5,
42057 19, MVT::f32,
42058 OPC_CheckPatternPredicate, 35,
42059 OPC_CheckComplexPat3, /*#*/1,
42060 OPC_EmitMergeInputChains1_0,
42061 OPC_EmitInteger32, 28,
42062 OPC_EmitRegisterI32, 0 ,
42063 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLDRS), 0|OPFL_Chain|OPFL_MemRefs,
42064 MVT::f32, 4, 2, 3, 4, 5,
42065 0,
42066 48,
42067 OPC_CheckPredicate, 57,
42068 OPC_SwitchType , 20, MVT::f16,
42069 OPC_CheckPatternPredicate, 45,
42070 OPC_CheckComplexPat, /*CP*/37, /*#*/1,
42071 OPC_EmitMergeInputChains1_0,
42072 OPC_EmitInteger32, 28,
42073 OPC_EmitRegisterI32, 0 ,
42074 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLDRH), 0|OPFL_Chain|OPFL_MemRefs,
42075 MVT::f16, 4, 2, 3, 4, 5,
42076 20, MVT::bf16,
42077 OPC_CheckPatternPredicate, 45,
42078 OPC_CheckComplexPat, /*CP*/37, /*#*/1,
42079 OPC_EmitMergeInputChains1_0,
42080 OPC_EmitInteger32, 28,
42081 OPC_EmitRegisterI32, 0 ,
42082 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLDRH), 0|OPFL_Chain|OPFL_MemRefs,
42083 MVT::bf16, 4, 2, 3, 4, 5,
42084 0,
42085 22,
42086 OPC_CheckPredicate, 58,
42087 OPC_CheckType, MVT::f64,
42088 OPC_CheckPatternPredicate6,
42089 OPC_CheckComplexPat0, /*#*/1,
42090 OPC_EmitMergeInputChains1_0,
42091 OPC_EmitInteger32, 28,
42092 OPC_EmitRegisterI32, 0 ,
42093 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1d16), 0|OPFL_Chain|OPFL_MemRefs,
42094 MVT::f64, 4, 2, 3, 4, 5,
42095 22,
42096 OPC_CheckPredicate, 66,
42097 OPC_CheckType, MVT::f64,
42098 OPC_CheckPatternPredicate6,
42099 OPC_CheckComplexPat0, /*#*/1,
42100 OPC_EmitMergeInputChains1_0,
42101 OPC_EmitInteger32, 28,
42102 OPC_EmitRegisterI32, 0 ,
42103 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1d8), 0|OPFL_Chain|OPFL_MemRefs,
42104 MVT::f64, 4, 2, 3, 4, 5,
42105 23,
42106 OPC_CheckPredicate, 103,
42107 OPC_CheckType, MVT::f64,
42108 OPC_CheckPatternPredicate, 8,
42109 OPC_CheckComplexPat0, /*#*/1,
42110 OPC_EmitMergeInputChains1_0,
42111 OPC_EmitInteger32, 28,
42112 OPC_EmitRegisterI32, 0 ,
42113 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1d64), 0|OPFL_Chain|OPFL_MemRefs,
42114 MVT::f64, 4, 2, 3, 4, 5,
42115 33,
42116 OPC_CheckPredicate, 57,
42117 OPC_CheckType, MVT::bf16,
42118 OPC_CheckPatternPredicate, 90,
42119 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
42120 OPC_EmitMergeInputChains1_0,
42121 OPC_EmitInteger32, 28,
42122 OPC_EmitRegisterI32, 0 ,
42123 OPC_EmitNode1, TARGET_VAL(ARM::t2LDRHi12), 0|OPFL_Chain|OPFL_MemRefs,
42124 MVT::i32, 4, 2, 3, 4, 5,
42125 OPC_EmitStringInteger32, ARM::HPRRegClassID,
42126 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
42127 MVT::bf16, 2, 6, 7,
42128 0,
42129 39,
42130 OPC_CheckPredicate, 15,
42131 OPC_CheckPredicate, 10,
42132 OPC_CheckType, MVT::v8i16,
42133 OPC_CheckPatternPredicate1,
42134 OPC_CheckComplexPat0, /*#*/1,
42135 OPC_EmitMergeInputChains1_0,
42136 OPC_EmitInteger32, 28,
42137 OPC_EmitRegisterI32, 0 ,
42138 OPC_EmitNode1, TARGET_VAL(ARM::VLD1d8), 0|OPFL_Chain|OPFL_MemRefs,
42139 MVT::f64, 4, 2, 3, 4, 5,
42140 OPC_EmitInteger32, 28,
42141 OPC_EmitRegisterI32, 0 ,
42142 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
42143 MVT::v8i16, 3, 6, 7, 8,
42144 OPC_CompleteMatch, 1, 9,
42145
42146 39,
42147 OPC_CheckPredicate, 16,
42148 OPC_CheckPredicate, 10,
42149 OPC_CheckType, MVT::v8i16,
42150 OPC_CheckPatternPredicate1,
42151 OPC_CheckComplexPat0, /*#*/1,
42152 OPC_EmitMergeInputChains1_0,
42153 OPC_EmitInteger32, 28,
42154 OPC_EmitRegisterI32, 0 ,
42155 OPC_EmitNode1, TARGET_VAL(ARM::VLD1d8), 0|OPFL_Chain|OPFL_MemRefs,
42156 MVT::f64, 4, 2, 3, 4, 5,
42157 OPC_EmitInteger32, 28,
42158 OPC_EmitRegisterI32, 0 ,
42159 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
42160 MVT::v8i16, 3, 6, 7, 8,
42161 OPC_CompleteMatch, 1, 9,
42162
42163 39,
42164 OPC_CheckPredicate, 18,
42165 OPC_CheckPredicate, 10,
42166 OPC_CheckType, MVT::v8i16,
42167 OPC_CheckPatternPredicate1,
42168 OPC_CheckComplexPat0, /*#*/1,
42169 OPC_EmitMergeInputChains1_0,
42170 OPC_EmitInteger32, 28,
42171 OPC_EmitRegisterI32, 0 ,
42172 OPC_EmitNode1, TARGET_VAL(ARM::VLD1d8), 0|OPFL_Chain|OPFL_MemRefs,
42173 MVT::f64, 4, 2, 3, 4, 5,
42174 OPC_EmitInteger32, 28,
42175 OPC_EmitRegisterI32, 0 ,
42176 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv8i16),
42177 MVT::v8i16, 3, 6, 7, 8,
42178 OPC_CompleteMatch, 1, 9,
42179
42180 39,
42181 OPC_CheckPredicate, 15,
42182 OPC_CheckPredicate, 24,
42183 OPC_CheckType, MVT::v4i32,
42184 OPC_CheckPatternPredicate1,
42185 OPC_CheckComplexPat0, /*#*/1,
42186 OPC_EmitMergeInputChains1_0,
42187 OPC_EmitInteger32, 28,
42188 OPC_EmitRegisterI32, 0 ,
42189 OPC_EmitNode1, TARGET_VAL(ARM::VLD1d16), 0|OPFL_Chain|OPFL_MemRefs,
42190 MVT::f64, 4, 2, 3, 4, 5,
42191 OPC_EmitInteger32, 28,
42192 OPC_EmitRegisterI32, 0 ,
42193 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
42194 MVT::v4i32, 3, 6, 7, 8,
42195 OPC_CompleteMatch, 1, 9,
42196
42197 39,
42198 OPC_CheckPredicate, 16,
42199 OPC_CheckPredicate, 24,
42200 OPC_CheckType, MVT::v4i32,
42201 OPC_CheckPatternPredicate1,
42202 OPC_CheckComplexPat0, /*#*/1,
42203 OPC_EmitMergeInputChains1_0,
42204 OPC_EmitInteger32, 28,
42205 OPC_EmitRegisterI32, 0 ,
42206 OPC_EmitNode1, TARGET_VAL(ARM::VLD1d16), 0|OPFL_Chain|OPFL_MemRefs,
42207 MVT::f64, 4, 2, 3, 4, 5,
42208 OPC_EmitInteger32, 28,
42209 OPC_EmitRegisterI32, 0 ,
42210 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
42211 MVT::v4i32, 3, 6, 7, 8,
42212 OPC_CompleteMatch, 1, 9,
42213
42214 39,
42215 OPC_CheckPredicate, 18,
42216 OPC_CheckPredicate, 24,
42217 OPC_CheckType, MVT::v4i32,
42218 OPC_CheckPatternPredicate1,
42219 OPC_CheckComplexPat0, /*#*/1,
42220 OPC_EmitMergeInputChains1_0,
42221 OPC_EmitInteger32, 28,
42222 OPC_EmitRegisterI32, 0 ,
42223 OPC_EmitNode1, TARGET_VAL(ARM::VLD1d16), 0|OPFL_Chain|OPFL_MemRefs,
42224 MVT::f64, 4, 2, 3, 4, 5,
42225 OPC_EmitInteger32, 28,
42226 OPC_EmitRegisterI32, 0 ,
42227 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv4i32),
42228 MVT::v4i32, 3, 6, 7, 8,
42229 OPC_CompleteMatch, 1, 9,
42230
42231 39,
42232 OPC_CheckPredicate, 15,
42233 OPC_CheckPredicate, 76,
42234 OPC_CheckType, MVT::v2i64,
42235 OPC_CheckPatternPredicate1,
42236 OPC_CheckComplexPat0, /*#*/1,
42237 OPC_EmitMergeInputChains1_0,
42238 OPC_EmitInteger32, 28,
42239 OPC_EmitRegisterI32, 0 ,
42240 OPC_EmitNode1, TARGET_VAL(ARM::VLD1d32), 0|OPFL_Chain|OPFL_MemRefs,
42241 MVT::f64, 4, 2, 3, 4, 5,
42242 OPC_EmitInteger32, 28,
42243 OPC_EmitRegisterI32, 0 ,
42244 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv2i64),
42245 MVT::v2i64, 3, 6, 7, 8,
42246 OPC_CompleteMatch, 1, 9,
42247
42248 39,
42249 OPC_CheckPredicate, 16,
42250 OPC_CheckPredicate, 76,
42251 OPC_CheckType, MVT::v2i64,
42252 OPC_CheckPatternPredicate1,
42253 OPC_CheckComplexPat0, /*#*/1,
42254 OPC_EmitMergeInputChains1_0,
42255 OPC_EmitInteger32, 28,
42256 OPC_EmitRegisterI32, 0 ,
42257 OPC_EmitNode1, TARGET_VAL(ARM::VLD1d32), 0|OPFL_Chain|OPFL_MemRefs,
42258 MVT::f64, 4, 2, 3, 4, 5,
42259 OPC_EmitInteger32, 28,
42260 OPC_EmitRegisterI32, 0 ,
42261 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv2i64),
42262 MVT::v2i64, 3, 6, 7, 8,
42263 OPC_CompleteMatch, 1, 9,
42264
42265 39,
42266 OPC_CheckPredicate, 18,
42267 OPC_CheckPredicate, 76,
42268 OPC_CheckType, MVT::v2i64,
42269 OPC_CheckPatternPredicate1,
42270 OPC_CheckComplexPat0, /*#*/1,
42271 OPC_EmitMergeInputChains1_0,
42272 OPC_EmitInteger32, 28,
42273 OPC_EmitRegisterI32, 0 ,
42274 OPC_EmitNode1, TARGET_VAL(ARM::VLD1d32), 0|OPFL_Chain|OPFL_MemRefs,
42275 MVT::f64, 4, 2, 3, 4, 5,
42276 OPC_EmitInteger32, 28,
42277 OPC_EmitRegisterI32, 0 ,
42278 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv2i64),
42279 MVT::v2i64, 3, 6, 7, 8,
42280 OPC_CompleteMatch, 1, 9,
42281
42282 0|128,3,
42283 OPC_CheckPredicate, 17,
42284 OPC_Scope, 96,
42285 OPC_CheckPredicate, 66,
42286 OPC_SwitchType , 21, MVT::v16i8,
42287 OPC_CheckPatternPredicate7,
42288 OPC_CheckComplexPat6, /*#*/1,
42289 OPC_EmitMergeInputChains1_0,
42290 OPC_EmitInteger32, 0,
42291 OPC_EmitRegisterI32, 0 ,
42292 OPC_EmitRegisterI32, 0 ,
42293 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
42294 MVT::v16i8, 5, 2, 3, 4, 5, 6,
42295 21, MVT::v8i16,
42296 OPC_CheckPatternPredicate7,
42297 OPC_CheckComplexPat6, /*#*/1,
42298 OPC_EmitMergeInputChains1_0,
42299 OPC_EmitInteger32, 0,
42300 OPC_EmitRegisterI32, 0 ,
42301 OPC_EmitRegisterI32, 0 ,
42302 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
42303 MVT::v8i16, 5, 2, 3, 4, 5, 6,
42304 21, MVT::v4i32,
42305 OPC_CheckPatternPredicate7,
42306 OPC_CheckComplexPat6, /*#*/1,
42307 OPC_EmitMergeInputChains1_0,
42308 OPC_EmitInteger32, 0,
42309 OPC_EmitRegisterI32, 0 ,
42310 OPC_EmitRegisterI32, 0 ,
42311 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
42312 MVT::v4i32, 5, 2, 3, 4, 5, 6,
42313 21, MVT::v2i64,
42314 OPC_CheckPatternPredicate7,
42315 OPC_CheckComplexPat6, /*#*/1,
42316 OPC_EmitMergeInputChains1_0,
42317 OPC_EmitInteger32, 0,
42318 OPC_EmitRegisterI32, 0 ,
42319 OPC_EmitRegisterI32, 0 ,
42320 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
42321 MVT::v2i64, 5, 2, 3, 4, 5, 6,
42322 0,
42323 100,
42324 OPC_CheckPredicate, 58,
42325 OPC_SwitchType , 22, MVT::v16i8,
42326 OPC_CheckPatternPredicate7,
42327 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
42328 OPC_EmitMergeInputChains1_0,
42329 OPC_EmitInteger32, 0,
42330 OPC_EmitRegisterI32, 0 ,
42331 OPC_EmitRegisterI32, 0 ,
42332 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16), 0|OPFL_Chain|OPFL_MemRefs,
42333 MVT::v16i8, 5, 2, 3, 4, 5, 6,
42334 22, MVT::v8i16,
42335 OPC_CheckPatternPredicate7,
42336 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
42337 OPC_EmitMergeInputChains1_0,
42338 OPC_EmitInteger32, 0,
42339 OPC_EmitRegisterI32, 0 ,
42340 OPC_EmitRegisterI32, 0 ,
42341 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16), 0|OPFL_Chain|OPFL_MemRefs,
42342 MVT::v8i16, 5, 2, 3, 4, 5, 6,
42343 22, MVT::v4i32,
42344 OPC_CheckPatternPredicate7,
42345 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
42346 OPC_EmitMergeInputChains1_0,
42347 OPC_EmitInteger32, 0,
42348 OPC_EmitRegisterI32, 0 ,
42349 OPC_EmitRegisterI32, 0 ,
42350 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16), 0|OPFL_Chain|OPFL_MemRefs,
42351 MVT::v4i32, 5, 2, 3, 4, 5, 6,
42352 22, MVT::v2i64,
42353 OPC_CheckPatternPredicate7,
42354 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
42355 OPC_EmitMergeInputChains1_0,
42356 OPC_EmitInteger32, 0,
42357 OPC_EmitRegisterI32, 0 ,
42358 OPC_EmitRegisterI32, 0 ,
42359 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16), 0|OPFL_Chain|OPFL_MemRefs,
42360 MVT::v2i64, 5, 2, 3, 4, 5, 6,
42361 0,
42362 100,
42363 OPC_CheckPredicate, 45,
42364 OPC_SwitchType , 22, MVT::v16i8,
42365 OPC_CheckPatternPredicate7,
42366 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
42367 OPC_EmitMergeInputChains1_0,
42368 OPC_EmitInteger32, 0,
42369 OPC_EmitRegisterI32, 0 ,
42370 OPC_EmitRegisterI32, 0 ,
42371 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32), 0|OPFL_Chain|OPFL_MemRefs,
42372 MVT::v16i8, 5, 2, 3, 4, 5, 6,
42373 22, MVT::v8i16,
42374 OPC_CheckPatternPredicate7,
42375 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
42376 OPC_EmitMergeInputChains1_0,
42377 OPC_EmitInteger32, 0,
42378 OPC_EmitRegisterI32, 0 ,
42379 OPC_EmitRegisterI32, 0 ,
42380 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32), 0|OPFL_Chain|OPFL_MemRefs,
42381 MVT::v8i16, 5, 2, 3, 4, 5, 6,
42382 22, MVT::v4i32,
42383 OPC_CheckPatternPredicate7,
42384 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
42385 OPC_EmitMergeInputChains1_0,
42386 OPC_EmitInteger32, 0,
42387 OPC_EmitRegisterI32, 0 ,
42388 OPC_EmitRegisterI32, 0 ,
42389 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32), 0|OPFL_Chain|OPFL_MemRefs,
42390 MVT::v4i32, 5, 2, 3, 4, 5, 6,
42391 22, MVT::v2i64,
42392 OPC_CheckPatternPredicate7,
42393 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
42394 OPC_EmitMergeInputChains1_0,
42395 OPC_EmitInteger32, 0,
42396 OPC_EmitRegisterI32, 0 ,
42397 OPC_EmitRegisterI32, 0 ,
42398 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32), 0|OPFL_Chain|OPFL_MemRefs,
42399 MVT::v2i64, 5, 2, 3, 4, 5, 6,
42400 0,
42401 24,
42402 OPC_CheckType, MVT::v16i8,
42403 OPC_CheckPatternPredicate, 12,
42404 OPC_CheckComplexPat6, /*#*/1,
42405 OPC_EmitMergeInputChains1_0,
42406 OPC_EmitInteger32, 0,
42407 OPC_EmitRegisterI32, 0 ,
42408 OPC_EmitRegisterI32, 0 ,
42409 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
42410 MVT::v16i8, 5, 2, 3, 4, 5, 6,
42411 27,
42412 OPC_CheckType, MVT::v8i16,
42413 OPC_CheckPredicate, 57,
42414 OPC_CheckPatternPredicate, 12,
42415 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
42416 OPC_EmitMergeInputChains1_0,
42417 OPC_EmitInteger32, 0,
42418 OPC_EmitRegisterI32, 0 ,
42419 OPC_EmitRegisterI32, 0 ,
42420 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16), 0|OPFL_Chain|OPFL_MemRefs,
42421 MVT::v8i16, 5, 2, 3, 4, 5, 6,
42422 27,
42423 OPC_CheckType, MVT::v4i32,
42424 OPC_CheckPredicate, 45,
42425 OPC_CheckPatternPredicate, 12,
42426 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
42427 OPC_EmitMergeInputChains1_0,
42428 OPC_EmitInteger32, 0,
42429 OPC_EmitRegisterI32, 0 ,
42430 OPC_EmitRegisterI32, 0 ,
42431 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32), 0|OPFL_Chain|OPFL_MemRefs,
42432 MVT::v4i32, 5, 2, 3, 4, 5, 6,
42433 0,
42434 28,
42435 OPC_CheckPredicate, 15,
42436 OPC_CheckPredicate, 10,
42437 OPC_CheckType, MVT::v8i16,
42438 OPC_CheckPatternPredicate0,
42439 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
42440 OPC_EmitMergeInputChains1_0,
42441 OPC_EmitInteger32, 0,
42442 OPC_EmitRegisterI32, 0 ,
42443 OPC_EmitRegisterI32, 0 ,
42444 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU16), 0|OPFL_Chain|OPFL_MemRefs,
42445 MVT::v8i16, 5, 2, 3, 4, 5, 6,
42446 28,
42447 OPC_CheckPredicate, 18,
42448 OPC_CheckPredicate, 10,
42449 OPC_CheckType, MVT::v8i16,
42450 OPC_CheckPatternPredicate0,
42451 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
42452 OPC_EmitMergeInputChains1_0,
42453 OPC_EmitInteger32, 0,
42454 OPC_EmitRegisterI32, 0 ,
42455 OPC_EmitRegisterI32, 0 ,
42456 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBS16), 0|OPFL_Chain|OPFL_MemRefs,
42457 MVT::v8i16, 5, 2, 3, 4, 5, 6,
42458 28,
42459 OPC_CheckPredicate, 16,
42460 OPC_CheckPredicate, 10,
42461 OPC_CheckType, MVT::v8i16,
42462 OPC_CheckPatternPredicate0,
42463 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
42464 OPC_EmitMergeInputChains1_0,
42465 OPC_EmitInteger32, 0,
42466 OPC_EmitRegisterI32, 0 ,
42467 OPC_EmitRegisterI32, 0 ,
42468 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU16), 0|OPFL_Chain|OPFL_MemRefs,
42469 MVT::v8i16, 5, 2, 3, 4, 5, 6,
42470 28,
42471 OPC_CheckPredicate, 15,
42472 OPC_CheckPredicate, 10,
42473 OPC_CheckType, MVT::v4i32,
42474 OPC_CheckPatternPredicate0,
42475 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
42476 OPC_EmitMergeInputChains1_0,
42477 OPC_EmitInteger32, 0,
42478 OPC_EmitRegisterI32, 0 ,
42479 OPC_EmitRegisterI32, 0 ,
42480 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU32), 0|OPFL_Chain|OPFL_MemRefs,
42481 MVT::v4i32, 5, 2, 3, 4, 5, 6,
42482 28,
42483 OPC_CheckPredicate, 18,
42484 OPC_CheckPredicate, 10,
42485 OPC_CheckType, MVT::v4i32,
42486 OPC_CheckPatternPredicate0,
42487 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
42488 OPC_EmitMergeInputChains1_0,
42489 OPC_EmitInteger32, 0,
42490 OPC_EmitRegisterI32, 0 ,
42491 OPC_EmitRegisterI32, 0 ,
42492 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBS32), 0|OPFL_Chain|OPFL_MemRefs,
42493 MVT::v4i32, 5, 2, 3, 4, 5, 6,
42494 28,
42495 OPC_CheckPredicate, 16,
42496 OPC_CheckPredicate, 10,
42497 OPC_CheckType, MVT::v4i32,
42498 OPC_CheckPatternPredicate0,
42499 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
42500 OPC_EmitMergeInputChains1_0,
42501 OPC_EmitInteger32, 0,
42502 OPC_EmitRegisterI32, 0 ,
42503 OPC_EmitRegisterI32, 0 ,
42504 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU32), 0|OPFL_Chain|OPFL_MemRefs,
42505 MVT::v4i32, 5, 2, 3, 4, 5, 6,
42506 28,
42507 OPC_CheckPredicate, 15,
42508 OPC_CheckPredicate, 24,
42509 OPC_CheckType, MVT::v4i32,
42510 OPC_CheckPatternPredicate0,
42511 OPC_CheckComplexPat, /*CP*/28, /*#*/1,
42512 OPC_EmitMergeInputChains1_0,
42513 OPC_EmitInteger32, 0,
42514 OPC_EmitRegisterI32, 0 ,
42515 OPC_EmitRegisterI32, 0 ,
42516 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU32), 0|OPFL_Chain|OPFL_MemRefs,
42517 MVT::v4i32, 5, 2, 3, 4, 5, 6,
42518 28,
42519 OPC_CheckPredicate, 18,
42520 OPC_CheckPredicate, 24,
42521 OPC_CheckType, MVT::v4i32,
42522 OPC_CheckPatternPredicate0,
42523 OPC_CheckComplexPat, /*CP*/28, /*#*/1,
42524 OPC_EmitMergeInputChains1_0,
42525 OPC_EmitInteger32, 0,
42526 OPC_EmitRegisterI32, 0 ,
42527 OPC_EmitRegisterI32, 0 ,
42528 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHS32), 0|OPFL_Chain|OPFL_MemRefs,
42529 MVT::v4i32, 5, 2, 3, 4, 5, 6,
42530 28,
42531 OPC_CheckPredicate, 16,
42532 OPC_CheckPredicate, 24,
42533 OPC_CheckType, MVT::v4i32,
42534 OPC_CheckPatternPredicate0,
42535 OPC_CheckComplexPat, /*CP*/28, /*#*/1,
42536 OPC_EmitMergeInputChains1_0,
42537 OPC_EmitInteger32, 0,
42538 OPC_EmitRegisterI32, 0 ,
42539 OPC_EmitRegisterI32, 0 ,
42540 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU32), 0|OPFL_Chain|OPFL_MemRefs,
42541 MVT::v4i32, 5, 2, 3, 4, 5, 6,
42542 11|128,1,
42543 OPC_CheckPredicate, 17,
42544 OPC_SwitchType , 43, MVT::v2i64,
42545 OPC_CheckPatternPredicate, 12,
42546 OPC_CheckComplexPat6, /*#*/1,
42547 OPC_EmitMergeInputChains1_0,
42548 OPC_EmitInteger32, 0,
42549 OPC_EmitRegisterI32, 0 ,
42550 OPC_EmitRegisterI32, 0 ,
42551 OPC_EmitNode1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
42552 MVT::v16i8, 5, 2, 3, 4, 5, 6,
42553 OPC_EmitInteger32, 0,
42554 OPC_EmitRegisterI32, 0 ,
42555 OPC_EmitRegisterI32, 0 ,
42556 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42557 MVT::v4i32, 0,
42558 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::MVE_VREV64_8),
42559 MVT::v2i64, 5, 7, 8, 9, 10, 11,
42560 43, MVT::v4i32,
42561 OPC_CheckPatternPredicate, 12,
42562 OPC_CheckComplexPat6, /*#*/1,
42563 OPC_EmitMergeInputChains1_0,
42564 OPC_EmitInteger32, 0,
42565 OPC_EmitRegisterI32, 0 ,
42566 OPC_EmitRegisterI32, 0 ,
42567 OPC_EmitNode1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
42568 MVT::v16i8, 5, 2, 3, 4, 5, 6,
42569 OPC_EmitInteger32, 0,
42570 OPC_EmitRegisterI32, 0 ,
42571 OPC_EmitRegisterI32, 0 ,
42572 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42573 MVT::v4i32, 0,
42574 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::MVE_VREV32_8),
42575 MVT::v4i32, 5, 7, 8, 9, 10, 11,
42576 43, MVT::v8i16,
42577 OPC_CheckPatternPredicate, 12,
42578 OPC_CheckComplexPat6, /*#*/1,
42579 OPC_EmitMergeInputChains1_0,
42580 OPC_EmitInteger32, 0,
42581 OPC_EmitRegisterI32, 0 ,
42582 OPC_EmitRegisterI32, 0 ,
42583 OPC_EmitNode1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
42584 MVT::v16i8, 5, 2, 3, 4, 5, 6,
42585 OPC_EmitInteger32, 0,
42586 OPC_EmitRegisterI32, 0 ,
42587 OPC_EmitRegisterI32, 0 ,
42588 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42589 MVT::v4i32, 0,
42590 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::MVE_VREV16_8),
42591 MVT::v8i16, 5, 7, 8, 9, 10, 11,
42592 0,
42593 55,
42594 OPC_CheckPredicate, 15,
42595 OPC_CheckPredicate, 10,
42596 OPC_CheckType, MVT::v4i16,
42597 OPC_CheckPatternPredicate6,
42598 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42599 OPC_EmitMergeInputChains1_0,
42600 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42601 MVT::f64, 0,
42602 OPC_EmitInteger32, 0,
42603 OPC_EmitInteger32, 28,
42604 OPC_EmitRegisterI32, 0 ,
42605 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42606 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42607 OPC_EmitInteger32, 28,
42608 OPC_EmitRegisterI32, 0 ,
42609 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
42610 MVT::v16i8, 3, 8, 9, 10,
42611 OPC_EmitStringInteger32, ARM::dsub_0,
42612 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42613 MVT::v4i16, 2, 11, 12,
42614 55,
42615 OPC_CheckPredicate, 16,
42616 OPC_CheckPredicate, 10,
42617 OPC_CheckType, MVT::v4i16,
42618 OPC_CheckPatternPredicate6,
42619 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42620 OPC_EmitMergeInputChains1_0,
42621 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42622 MVT::f64, 0,
42623 OPC_EmitInteger32, 0,
42624 OPC_EmitInteger32, 28,
42625 OPC_EmitRegisterI32, 0 ,
42626 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42627 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42628 OPC_EmitInteger32, 28,
42629 OPC_EmitRegisterI32, 0 ,
42630 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
42631 MVT::v16i8, 3, 8, 9, 10,
42632 OPC_EmitStringInteger32, ARM::dsub_0,
42633 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42634 MVT::v4i16, 2, 11, 12,
42635 55,
42636 OPC_CheckPredicate, 18,
42637 OPC_CheckPredicate, 10,
42638 OPC_CheckType, MVT::v4i16,
42639 OPC_CheckPatternPredicate6,
42640 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42641 OPC_EmitMergeInputChains1_0,
42642 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42643 MVT::f64, 0,
42644 OPC_EmitInteger32, 0,
42645 OPC_EmitInteger32, 28,
42646 OPC_EmitRegisterI32, 0 ,
42647 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42648 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42649 OPC_EmitInteger32, 28,
42650 OPC_EmitRegisterI32, 0 ,
42651 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv8i16),
42652 MVT::v16i8, 3, 8, 9, 10,
42653 OPC_EmitStringInteger32, ARM::dsub_0,
42654 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42655 MVT::v4i16, 2, 11, 12,
42656 55,
42657 OPC_CheckPredicate, 15,
42658 OPC_CheckPredicate, 24,
42659 OPC_CheckType, MVT::v2i32,
42660 OPC_CheckPatternPredicate6,
42661 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42662 OPC_EmitMergeInputChains1_0,
42663 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42664 MVT::f64, 0,
42665 OPC_EmitInteger32, 0,
42666 OPC_EmitInteger32, 28,
42667 OPC_EmitRegisterI32, 0 ,
42668 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42669 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42670 OPC_EmitInteger32, 28,
42671 OPC_EmitRegisterI32, 0 ,
42672 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
42673 MVT::v16i8, 3, 8, 9, 10,
42674 OPC_EmitStringInteger32, ARM::dsub_0,
42675 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42676 MVT::v2i32, 2, 11, 12,
42677 55,
42678 OPC_CheckPredicate, 16,
42679 OPC_CheckPredicate, 24,
42680 OPC_CheckType, MVT::v2i32,
42681 OPC_CheckPatternPredicate6,
42682 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42683 OPC_EmitMergeInputChains1_0,
42684 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42685 MVT::f64, 0,
42686 OPC_EmitInteger32, 0,
42687 OPC_EmitInteger32, 28,
42688 OPC_EmitRegisterI32, 0 ,
42689 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42690 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42691 OPC_EmitInteger32, 28,
42692 OPC_EmitRegisterI32, 0 ,
42693 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
42694 MVT::v16i8, 3, 8, 9, 10,
42695 OPC_EmitStringInteger32, ARM::dsub_0,
42696 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42697 MVT::v2i32, 2, 11, 12,
42698 55,
42699 OPC_CheckPredicate, 18,
42700 OPC_CheckPredicate, 24,
42701 OPC_CheckType, MVT::v2i32,
42702 OPC_CheckPatternPredicate6,
42703 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42704 OPC_EmitMergeInputChains1_0,
42705 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42706 MVT::f64, 0,
42707 OPC_EmitInteger32, 0,
42708 OPC_EmitInteger32, 28,
42709 OPC_EmitRegisterI32, 0 ,
42710 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42711 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42712 OPC_EmitInteger32, 28,
42713 OPC_EmitRegisterI32, 0 ,
42714 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv4i32),
42715 MVT::v16i8, 3, 8, 9, 10,
42716 OPC_EmitStringInteger32, ARM::dsub_0,
42717 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42718 MVT::v2i32, 2, 11, 12,
42719 70,
42720 OPC_CheckPredicate, 15,
42721 OPC_CheckPredicate, 10,
42722 OPC_CheckType, MVT::v4i32,
42723 OPC_CheckPatternPredicate6,
42724 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42725 OPC_EmitMergeInputChains1_0,
42726 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42727 MVT::f64, 0,
42728 OPC_EmitInteger32, 0,
42729 OPC_EmitInteger32, 28,
42730 OPC_EmitRegisterI32, 0 ,
42731 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42732 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42733 OPC_EmitInteger32, 28,
42734 OPC_EmitRegisterI32, 0 ,
42735 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
42736 MVT::v16i8, 3, 8, 9, 10,
42737 OPC_EmitStringInteger32, ARM::dsub_0,
42738 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42739 MVT::f64, 2, 11, 12,
42740 OPC_EmitInteger32, 28,
42741 OPC_EmitRegisterI32, 0 ,
42742 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
42743 MVT::v4i32, 3, 13, 14, 15,
42744 OPC_CompleteMatch, 1, 16,
42745
42746 70,
42747 OPC_CheckPredicate, 16,
42748 OPC_CheckPredicate, 10,
42749 OPC_CheckType, MVT::v4i32,
42750 OPC_CheckPatternPredicate6,
42751 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42752 OPC_EmitMergeInputChains1_0,
42753 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42754 MVT::f64, 0,
42755 OPC_EmitInteger32, 0,
42756 OPC_EmitInteger32, 28,
42757 OPC_EmitRegisterI32, 0 ,
42758 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42759 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42760 OPC_EmitInteger32, 28,
42761 OPC_EmitRegisterI32, 0 ,
42762 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
42763 MVT::v16i8, 3, 8, 9, 10,
42764 OPC_EmitStringInteger32, ARM::dsub_0,
42765 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42766 MVT::f64, 2, 11, 12,
42767 OPC_EmitInteger32, 28,
42768 OPC_EmitRegisterI32, 0 ,
42769 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
42770 MVT::v4i32, 3, 13, 14, 15,
42771 OPC_CompleteMatch, 1, 16,
42772
42773 70,
42774 OPC_CheckPredicate, 18,
42775 OPC_CheckPredicate, 10,
42776 OPC_CheckType, MVT::v4i32,
42777 OPC_CheckPatternPredicate6,
42778 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42779 OPC_EmitMergeInputChains1_0,
42780 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42781 MVT::f64, 0,
42782 OPC_EmitInteger32, 0,
42783 OPC_EmitInteger32, 28,
42784 OPC_EmitRegisterI32, 0 ,
42785 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42786 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42787 OPC_EmitInteger32, 28,
42788 OPC_EmitRegisterI32, 0 ,
42789 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv8i16),
42790 MVT::v16i8, 3, 8, 9, 10,
42791 OPC_EmitStringInteger32, ARM::dsub_0,
42792 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42793 MVT::f64, 2, 11, 12,
42794 OPC_EmitInteger32, 28,
42795 OPC_EmitRegisterI32, 0 ,
42796 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv4i32),
42797 MVT::v4i32, 3, 13, 14, 15,
42798 OPC_CompleteMatch, 1, 16,
42799
42800 70,
42801 OPC_CheckPredicate, 15,
42802 OPC_CheckPredicate, 24,
42803 OPC_CheckType, MVT::v2i64,
42804 OPC_CheckPatternPredicate6,
42805 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42806 OPC_EmitMergeInputChains1_0,
42807 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42808 MVT::f64, 0,
42809 OPC_EmitInteger32, 0,
42810 OPC_EmitInteger32, 28,
42811 OPC_EmitRegisterI32, 0 ,
42812 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42813 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42814 OPC_EmitInteger32, 28,
42815 OPC_EmitRegisterI32, 0 ,
42816 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
42817 MVT::v16i8, 3, 8, 9, 10,
42818 OPC_EmitStringInteger32, ARM::dsub_0,
42819 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42820 MVT::f64, 2, 11, 12,
42821 OPC_EmitInteger32, 28,
42822 OPC_EmitRegisterI32, 0 ,
42823 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv2i64),
42824 MVT::v2i64, 3, 13, 14, 15,
42825 OPC_CompleteMatch, 1, 16,
42826
42827 70,
42828 OPC_CheckPredicate, 16,
42829 OPC_CheckPredicate, 24,
42830 OPC_CheckType, MVT::v2i64,
42831 OPC_CheckPatternPredicate6,
42832 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42833 OPC_EmitMergeInputChains1_0,
42834 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42835 MVT::f64, 0,
42836 OPC_EmitInteger32, 0,
42837 OPC_EmitInteger32, 28,
42838 OPC_EmitRegisterI32, 0 ,
42839 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42840 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42841 OPC_EmitInteger32, 28,
42842 OPC_EmitRegisterI32, 0 ,
42843 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
42844 MVT::v16i8, 3, 8, 9, 10,
42845 OPC_EmitStringInteger32, ARM::dsub_0,
42846 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42847 MVT::f64, 2, 11, 12,
42848 OPC_EmitInteger32, 28,
42849 OPC_EmitRegisterI32, 0 ,
42850 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv2i64),
42851 MVT::v2i64, 3, 13, 14, 15,
42852 OPC_CompleteMatch, 1, 16,
42853
42854 70,
42855 OPC_CheckPredicate, 18,
42856 OPC_CheckPredicate, 24,
42857 OPC_CheckType, MVT::v2i64,
42858 OPC_CheckPatternPredicate6,
42859 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42860 OPC_EmitMergeInputChains1_0,
42861 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42862 MVT::f64, 0,
42863 OPC_EmitInteger32, 0,
42864 OPC_EmitInteger32, 28,
42865 OPC_EmitRegisterI32, 0 ,
42866 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42867 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42868 OPC_EmitInteger32, 28,
42869 OPC_EmitRegisterI32, 0 ,
42870 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv4i32),
42871 MVT::v16i8, 3, 8, 9, 10,
42872 OPC_EmitStringInteger32, ARM::dsub_0,
42873 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42874 MVT::f64, 2, 11, 12,
42875 OPC_EmitInteger32, 28,
42876 OPC_EmitRegisterI32, 0 ,
42877 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv2i64),
42878 MVT::v2i64, 3, 13, 14, 15,
42879 OPC_CompleteMatch, 1, 16,
42880
42881 68,
42882 OPC_CheckPredicate, 15,
42883 OPC_CheckPredicate, 10,
42884 OPC_CheckType, MVT::v4i16,
42885 OPC_CheckPatternPredicate, 8,
42886 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42887 OPC_EmitMergeInputChains1_0,
42888 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42889 MVT::f64, 0,
42890 OPC_EmitInteger32, 0,
42891 OPC_EmitInteger32, 28,
42892 OPC_EmitRegisterI32, 0 ,
42893 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42894 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42895 OPC_EmitInteger32, 28,
42896 OPC_EmitRegisterI32, 0 ,
42897 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d8),
42898 MVT::f64, 3, 8, 9, 10,
42899 OPC_EmitInteger32, 28,
42900 OPC_EmitRegisterI32, 0 ,
42901 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
42902 MVT::v16i8, 3, 11, 12, 13,
42903 OPC_EmitStringInteger32, ARM::dsub_0,
42904 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42905 MVT::v4i16, 2, 14, 15,
42906 68,
42907 OPC_CheckPredicate, 16,
42908 OPC_CheckPredicate, 10,
42909 OPC_CheckType, MVT::v4i16,
42910 OPC_CheckPatternPredicate, 8,
42911 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42912 OPC_EmitMergeInputChains1_0,
42913 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42914 MVT::f64, 0,
42915 OPC_EmitInteger32, 0,
42916 OPC_EmitInteger32, 28,
42917 OPC_EmitRegisterI32, 0 ,
42918 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42919 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42920 OPC_EmitInteger32, 28,
42921 OPC_EmitRegisterI32, 0 ,
42922 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d8),
42923 MVT::f64, 3, 8, 9, 10,
42924 OPC_EmitInteger32, 28,
42925 OPC_EmitRegisterI32, 0 ,
42926 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
42927 MVT::v16i8, 3, 11, 12, 13,
42928 OPC_EmitStringInteger32, ARM::dsub_0,
42929 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42930 MVT::v4i16, 2, 14, 15,
42931 68,
42932 OPC_CheckPredicate, 18,
42933 OPC_CheckPredicate, 10,
42934 OPC_CheckType, MVT::v4i16,
42935 OPC_CheckPatternPredicate, 8,
42936 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42937 OPC_EmitMergeInputChains1_0,
42938 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42939 MVT::f64, 0,
42940 OPC_EmitInteger32, 0,
42941 OPC_EmitInteger32, 28,
42942 OPC_EmitRegisterI32, 0 ,
42943 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42944 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42945 OPC_EmitInteger32, 28,
42946 OPC_EmitRegisterI32, 0 ,
42947 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d8),
42948 MVT::f64, 3, 8, 9, 10,
42949 OPC_EmitInteger32, 28,
42950 OPC_EmitRegisterI32, 0 ,
42951 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv8i16),
42952 MVT::v16i8, 3, 11, 12, 13,
42953 OPC_EmitStringInteger32, ARM::dsub_0,
42954 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42955 MVT::v4i16, 2, 14, 15,
42956 68,
42957 OPC_CheckPredicate, 15,
42958 OPC_CheckPredicate, 24,
42959 OPC_CheckType, MVT::v2i32,
42960 OPC_CheckPatternPredicate, 8,
42961 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42962 OPC_EmitMergeInputChains1_0,
42963 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42964 MVT::f64, 0,
42965 OPC_EmitInteger32, 0,
42966 OPC_EmitInteger32, 28,
42967 OPC_EmitRegisterI32, 0 ,
42968 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42969 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42970 OPC_EmitInteger32, 28,
42971 OPC_EmitRegisterI32, 0 ,
42972 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d16),
42973 MVT::f64, 3, 8, 9, 10,
42974 OPC_EmitInteger32, 28,
42975 OPC_EmitRegisterI32, 0 ,
42976 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
42977 MVT::v16i8, 3, 11, 12, 13,
42978 OPC_EmitStringInteger32, ARM::dsub_0,
42979 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
42980 MVT::v2i32, 2, 14, 15,
42981 68,
42982 OPC_CheckPredicate, 16,
42983 OPC_CheckPredicate, 24,
42984 OPC_CheckType, MVT::v2i32,
42985 OPC_CheckPatternPredicate, 8,
42986 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
42987 OPC_EmitMergeInputChains1_0,
42988 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
42989 MVT::f64, 0,
42990 OPC_EmitInteger32, 0,
42991 OPC_EmitInteger32, 28,
42992 OPC_EmitRegisterI32, 0 ,
42993 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
42994 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
42995 OPC_EmitInteger32, 28,
42996 OPC_EmitRegisterI32, 0 ,
42997 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d16),
42998 MVT::f64, 3, 8, 9, 10,
42999 OPC_EmitInteger32, 28,
43000 OPC_EmitRegisterI32, 0 ,
43001 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43002 MVT::v16i8, 3, 11, 12, 13,
43003 OPC_EmitStringInteger32, ARM::dsub_0,
43004 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43005 MVT::v2i32, 2, 14, 15,
43006 68,
43007 OPC_CheckPredicate, 18,
43008 OPC_CheckPredicate, 24,
43009 OPC_CheckType, MVT::v2i32,
43010 OPC_CheckPatternPredicate, 8,
43011 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
43012 OPC_EmitMergeInputChains1_0,
43013 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43014 MVT::f64, 0,
43015 OPC_EmitInteger32, 0,
43016 OPC_EmitInteger32, 28,
43017 OPC_EmitRegisterI32, 0 ,
43018 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
43019 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43020 OPC_EmitInteger32, 28,
43021 OPC_EmitRegisterI32, 0 ,
43022 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d16),
43023 MVT::f64, 3, 8, 9, 10,
43024 OPC_EmitInteger32, 28,
43025 OPC_EmitRegisterI32, 0 ,
43026 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv4i32),
43027 MVT::v16i8, 3, 11, 12, 13,
43028 OPC_EmitStringInteger32, ARM::dsub_0,
43029 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43030 MVT::v2i32, 2, 14, 15,
43031 75,
43032 OPC_CheckPredicate, 15,
43033 OPC_CheckPredicate, 10,
43034 OPC_CheckType, MVT::v2i32,
43035 OPC_CheckPatternPredicate6,
43036 OPC_CheckComplexPat0, /*#*/1,
43037 OPC_EmitMergeInputChains1_0,
43038 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43039 MVT::f64, 0,
43040 OPC_EmitInteger32, 0,
43041 OPC_EmitInteger32, 28,
43042 OPC_EmitRegisterI32, 0 ,
43043 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43044 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43045 OPC_EmitInteger32, 28,
43046 OPC_EmitRegisterI32, 0 ,
43047 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
43048 MVT::v16i8, 3, 8, 9, 10,
43049 OPC_EmitStringInteger32, ARM::dsub_0,
43050 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43051 MVT::f64, 2, 11, 12,
43052 OPC_EmitInteger32, 28,
43053 OPC_EmitRegisterI32, 0 ,
43054 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43055 MVT::v16i8, 3, 13, 14, 15,
43056 OPC_EmitStringInteger32, ARM::dsub_0,
43057 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43058 MVT::v2i32, 2, 16, 17,
43059 75,
43060 OPC_CheckPredicate, 16,
43061 OPC_CheckPredicate, 10,
43062 OPC_CheckType, MVT::v2i32,
43063 OPC_CheckPatternPredicate6,
43064 OPC_CheckComplexPat0, /*#*/1,
43065 OPC_EmitMergeInputChains1_0,
43066 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43067 MVT::f64, 0,
43068 OPC_EmitInteger32, 0,
43069 OPC_EmitInteger32, 28,
43070 OPC_EmitRegisterI32, 0 ,
43071 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43072 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43073 OPC_EmitInteger32, 28,
43074 OPC_EmitRegisterI32, 0 ,
43075 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
43076 MVT::v16i8, 3, 8, 9, 10,
43077 OPC_EmitStringInteger32, ARM::dsub_0,
43078 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43079 MVT::f64, 2, 11, 12,
43080 OPC_EmitInteger32, 28,
43081 OPC_EmitRegisterI32, 0 ,
43082 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43083 MVT::v16i8, 3, 13, 14, 15,
43084 OPC_EmitStringInteger32, ARM::dsub_0,
43085 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43086 MVT::v2i32, 2, 16, 17,
43087 75,
43088 OPC_CheckPredicate, 18,
43089 OPC_CheckPredicate, 10,
43090 OPC_CheckType, MVT::v2i32,
43091 OPC_CheckPatternPredicate6,
43092 OPC_CheckComplexPat0, /*#*/1,
43093 OPC_EmitMergeInputChains1_0,
43094 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43095 MVT::f64, 0,
43096 OPC_EmitInteger32, 0,
43097 OPC_EmitInteger32, 28,
43098 OPC_EmitRegisterI32, 0 ,
43099 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43100 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43101 OPC_EmitInteger32, 28,
43102 OPC_EmitRegisterI32, 0 ,
43103 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv8i16),
43104 MVT::v16i8, 3, 8, 9, 10,
43105 OPC_EmitStringInteger32, ARM::dsub_0,
43106 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43107 MVT::f64, 2, 11, 12,
43108 OPC_EmitInteger32, 28,
43109 OPC_EmitRegisterI32, 0 ,
43110 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv4i32),
43111 MVT::v16i8, 3, 13, 14, 15,
43112 OPC_EmitStringInteger32, ARM::dsub_0,
43113 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43114 MVT::v2i32, 2, 16, 17,
43115 83,
43116 OPC_CheckPredicate, 15,
43117 OPC_CheckPredicate, 10,
43118 OPC_CheckType, MVT::v4i32,
43119 OPC_CheckPatternPredicate, 8,
43120 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
43121 OPC_EmitMergeInputChains1_0,
43122 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43123 MVT::f64, 0,
43124 OPC_EmitInteger32, 0,
43125 OPC_EmitInteger32, 28,
43126 OPC_EmitRegisterI32, 0 ,
43127 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
43128 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43129 OPC_EmitInteger32, 28,
43130 OPC_EmitRegisterI32, 0 ,
43131 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d8),
43132 MVT::f64, 3, 8, 9, 10,
43133 OPC_EmitInteger32, 28,
43134 OPC_EmitRegisterI32, 0 ,
43135 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
43136 MVT::v16i8, 3, 11, 12, 13,
43137 OPC_EmitStringInteger32, ARM::dsub_0,
43138 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43139 MVT::f64, 2, 14, 15,
43140 OPC_EmitInteger32, 28,
43141 OPC_EmitRegisterI32, 0 ,
43142 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43143 MVT::v4i32, 3, 16, 17, 18,
43144 OPC_CompleteMatch, 1, 19,
43145
43146 83,
43147 OPC_CheckPredicate, 16,
43148 OPC_CheckPredicate, 10,
43149 OPC_CheckType, MVT::v4i32,
43150 OPC_CheckPatternPredicate, 8,
43151 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
43152 OPC_EmitMergeInputChains1_0,
43153 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43154 MVT::f64, 0,
43155 OPC_EmitInteger32, 0,
43156 OPC_EmitInteger32, 28,
43157 OPC_EmitRegisterI32, 0 ,
43158 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
43159 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43160 OPC_EmitInteger32, 28,
43161 OPC_EmitRegisterI32, 0 ,
43162 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d8),
43163 MVT::f64, 3, 8, 9, 10,
43164 OPC_EmitInteger32, 28,
43165 OPC_EmitRegisterI32, 0 ,
43166 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
43167 MVT::v16i8, 3, 11, 12, 13,
43168 OPC_EmitStringInteger32, ARM::dsub_0,
43169 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43170 MVT::f64, 2, 14, 15,
43171 OPC_EmitInteger32, 28,
43172 OPC_EmitRegisterI32, 0 ,
43173 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43174 MVT::v4i32, 3, 16, 17, 18,
43175 OPC_CompleteMatch, 1, 19,
43176
43177 83,
43178 OPC_CheckPredicate, 18,
43179 OPC_CheckPredicate, 10,
43180 OPC_CheckType, MVT::v4i32,
43181 OPC_CheckPatternPredicate, 8,
43182 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
43183 OPC_EmitMergeInputChains1_0,
43184 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43185 MVT::f64, 0,
43186 OPC_EmitInteger32, 0,
43187 OPC_EmitInteger32, 28,
43188 OPC_EmitRegisterI32, 0 ,
43189 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
43190 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43191 OPC_EmitInteger32, 28,
43192 OPC_EmitRegisterI32, 0 ,
43193 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d8),
43194 MVT::f64, 3, 8, 9, 10,
43195 OPC_EmitInteger32, 28,
43196 OPC_EmitRegisterI32, 0 ,
43197 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv8i16),
43198 MVT::v16i8, 3, 11, 12, 13,
43199 OPC_EmitStringInteger32, ARM::dsub_0,
43200 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43201 MVT::f64, 2, 14, 15,
43202 OPC_EmitInteger32, 28,
43203 OPC_EmitRegisterI32, 0 ,
43204 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv4i32),
43205 MVT::v4i32, 3, 16, 17, 18,
43206 OPC_CompleteMatch, 1, 19,
43207
43208 83,
43209 OPC_CheckPredicate, 15,
43210 OPC_CheckPredicate, 24,
43211 OPC_CheckType, MVT::v2i64,
43212 OPC_CheckPatternPredicate, 8,
43213 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
43214 OPC_EmitMergeInputChains1_0,
43215 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43216 MVT::f64, 0,
43217 OPC_EmitInteger32, 0,
43218 OPC_EmitInteger32, 28,
43219 OPC_EmitRegisterI32, 0 ,
43220 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
43221 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43222 OPC_EmitInteger32, 28,
43223 OPC_EmitRegisterI32, 0 ,
43224 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d16),
43225 MVT::f64, 3, 8, 9, 10,
43226 OPC_EmitInteger32, 28,
43227 OPC_EmitRegisterI32, 0 ,
43228 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43229 MVT::v16i8, 3, 11, 12, 13,
43230 OPC_EmitStringInteger32, ARM::dsub_0,
43231 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43232 MVT::f64, 2, 14, 15,
43233 OPC_EmitInteger32, 28,
43234 OPC_EmitRegisterI32, 0 ,
43235 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv2i64),
43236 MVT::v2i64, 3, 16, 17, 18,
43237 OPC_CompleteMatch, 1, 19,
43238
43239 83,
43240 OPC_CheckPredicate, 16,
43241 OPC_CheckPredicate, 24,
43242 OPC_CheckType, MVT::v2i64,
43243 OPC_CheckPatternPredicate, 8,
43244 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
43245 OPC_EmitMergeInputChains1_0,
43246 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43247 MVT::f64, 0,
43248 OPC_EmitInteger32, 0,
43249 OPC_EmitInteger32, 28,
43250 OPC_EmitRegisterI32, 0 ,
43251 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
43252 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43253 OPC_EmitInteger32, 28,
43254 OPC_EmitRegisterI32, 0 ,
43255 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d16),
43256 MVT::f64, 3, 8, 9, 10,
43257 OPC_EmitInteger32, 28,
43258 OPC_EmitRegisterI32, 0 ,
43259 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43260 MVT::v16i8, 3, 11, 12, 13,
43261 OPC_EmitStringInteger32, ARM::dsub_0,
43262 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43263 MVT::f64, 2, 14, 15,
43264 OPC_EmitInteger32, 28,
43265 OPC_EmitRegisterI32, 0 ,
43266 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv2i64),
43267 MVT::v2i64, 3, 16, 17, 18,
43268 OPC_CompleteMatch, 1, 19,
43269
43270 83,
43271 OPC_CheckPredicate, 18,
43272 OPC_CheckPredicate, 24,
43273 OPC_CheckType, MVT::v2i64,
43274 OPC_CheckPatternPredicate, 8,
43275 OPC_CheckComplexPat, /*CP*/8, /*#*/1,
43276 OPC_EmitMergeInputChains1_0,
43277 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43278 MVT::f64, 0,
43279 OPC_EmitInteger32, 0,
43280 OPC_EmitInteger32, 28,
43281 OPC_EmitRegisterI32, 0 ,
43282 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
43283 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43284 OPC_EmitInteger32, 28,
43285 OPC_EmitRegisterI32, 0 ,
43286 OPC_EmitNode1None, TARGET_VAL(ARM::VREV32d16),
43287 MVT::f64, 3, 8, 9, 10,
43288 OPC_EmitInteger32, 28,
43289 OPC_EmitRegisterI32, 0 ,
43290 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv4i32),
43291 MVT::v16i8, 3, 11, 12, 13,
43292 OPC_EmitStringInteger32, ARM::dsub_0,
43293 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43294 MVT::f64, 2, 14, 15,
43295 OPC_EmitInteger32, 28,
43296 OPC_EmitRegisterI32, 0 ,
43297 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv2i64),
43298 MVT::v2i64, 3, 16, 17, 18,
43299 OPC_CompleteMatch, 1, 19,
43300
43301 88,
43302 OPC_CheckPredicate, 15,
43303 OPC_CheckPredicate, 10,
43304 OPC_CheckType, MVT::v2i32,
43305 OPC_CheckPatternPredicate, 8,
43306 OPC_CheckComplexPat0, /*#*/1,
43307 OPC_EmitMergeInputChains1_0,
43308 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43309 MVT::f64, 0,
43310 OPC_EmitInteger32, 0,
43311 OPC_EmitInteger32, 28,
43312 OPC_EmitRegisterI32, 0 ,
43313 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43314 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43315 OPC_EmitInteger32, 28,
43316 OPC_EmitRegisterI32, 0 ,
43317 OPC_EmitNode1None, TARGET_VAL(ARM::VREV16d8),
43318 MVT::f64, 3, 8, 9, 10,
43319 OPC_EmitInteger32, 28,
43320 OPC_EmitRegisterI32, 0 ,
43321 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
43322 MVT::v16i8, 3, 11, 12, 13,
43323 OPC_EmitStringInteger32, ARM::dsub_0,
43324 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43325 MVT::f64, 2, 14, 15,
43326 OPC_EmitInteger32, 28,
43327 OPC_EmitRegisterI32, 0 ,
43328 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43329 MVT::v16i8, 3, 16, 17, 18,
43330 OPC_EmitStringInteger32, ARM::dsub_0,
43331 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43332 MVT::v2i32, 2, 19, 20,
43333 88,
43334 OPC_CheckPredicate, 16,
43335 OPC_CheckPredicate, 10,
43336 OPC_CheckType, MVT::v2i32,
43337 OPC_CheckPatternPredicate, 8,
43338 OPC_CheckComplexPat0, /*#*/1,
43339 OPC_EmitMergeInputChains1_0,
43340 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43341 MVT::f64, 0,
43342 OPC_EmitInteger32, 0,
43343 OPC_EmitInteger32, 28,
43344 OPC_EmitRegisterI32, 0 ,
43345 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43346 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43347 OPC_EmitInteger32, 28,
43348 OPC_EmitRegisterI32, 0 ,
43349 OPC_EmitNode1None, TARGET_VAL(ARM::VREV16d8),
43350 MVT::f64, 3, 8, 9, 10,
43351 OPC_EmitInteger32, 28,
43352 OPC_EmitRegisterI32, 0 ,
43353 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
43354 MVT::v16i8, 3, 11, 12, 13,
43355 OPC_EmitStringInteger32, ARM::dsub_0,
43356 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43357 MVT::f64, 2, 14, 15,
43358 OPC_EmitInteger32, 28,
43359 OPC_EmitRegisterI32, 0 ,
43360 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43361 MVT::v16i8, 3, 16, 17, 18,
43362 OPC_EmitStringInteger32, ARM::dsub_0,
43363 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43364 MVT::v2i32, 2, 19, 20,
43365 88,
43366 OPC_CheckPredicate, 18,
43367 OPC_CheckPredicate, 10,
43368 OPC_CheckType, MVT::v2i32,
43369 OPC_CheckPatternPredicate, 8,
43370 OPC_CheckComplexPat0, /*#*/1,
43371 OPC_EmitMergeInputChains1_0,
43372 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43373 MVT::f64, 0,
43374 OPC_EmitInteger32, 0,
43375 OPC_EmitInteger32, 28,
43376 OPC_EmitRegisterI32, 0 ,
43377 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43378 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43379 OPC_EmitInteger32, 28,
43380 OPC_EmitRegisterI32, 0 ,
43381 OPC_EmitNode1None, TARGET_VAL(ARM::VREV16d8),
43382 MVT::f64, 3, 8, 9, 10,
43383 OPC_EmitInteger32, 28,
43384 OPC_EmitRegisterI32, 0 ,
43385 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv8i16),
43386 MVT::v16i8, 3, 11, 12, 13,
43387 OPC_EmitStringInteger32, ARM::dsub_0,
43388 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43389 MVT::f64, 2, 14, 15,
43390 OPC_EmitInteger32, 28,
43391 OPC_EmitRegisterI32, 0 ,
43392 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv4i32),
43393 MVT::v16i8, 3, 16, 17, 18,
43394 OPC_EmitStringInteger32, ARM::dsub_0,
43395 OPC_MorphNodeTo1Chain, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43396 MVT::v2i32, 2, 19, 20,
43397 90,
43398 OPC_CheckPredicate, 15,
43399 OPC_CheckPredicate, 10,
43400 OPC_CheckType, MVT::v2i64,
43401 OPC_CheckPatternPredicate6,
43402 OPC_CheckComplexPat0, /*#*/1,
43403 OPC_EmitMergeInputChains1_0,
43404 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43405 MVT::f64, 0,
43406 OPC_EmitInteger32, 0,
43407 OPC_EmitInteger32, 28,
43408 OPC_EmitRegisterI32, 0 ,
43409 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43410 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43411 OPC_EmitInteger32, 28,
43412 OPC_EmitRegisterI32, 0 ,
43413 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
43414 MVT::v16i8, 3, 8, 9, 10,
43415 OPC_EmitStringInteger32, ARM::dsub_0,
43416 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43417 MVT::f64, 2, 11, 12,
43418 OPC_EmitInteger32, 28,
43419 OPC_EmitRegisterI32, 0 ,
43420 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43421 MVT::v16i8, 3, 13, 14, 15,
43422 OPC_EmitStringInteger32, ARM::dsub_0,
43423 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43424 MVT::f64, 2, 16, 17,
43425 OPC_EmitInteger32, 28,
43426 OPC_EmitRegisterI32, 0 ,
43427 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv2i64),
43428 MVT::v2i64, 3, 18, 19, 20,
43429 OPC_CompleteMatch, 1, 21,
43430
43431 90,
43432 OPC_CheckPredicate, 16,
43433 OPC_CheckPredicate, 10,
43434 OPC_CheckType, MVT::v2i64,
43435 OPC_CheckPatternPredicate6,
43436 OPC_CheckComplexPat0, /*#*/1,
43437 OPC_EmitMergeInputChains1_0,
43438 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43439 MVT::f64, 0,
43440 OPC_EmitInteger32, 0,
43441 OPC_EmitInteger32, 28,
43442 OPC_EmitRegisterI32, 0 ,
43443 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43444 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43445 OPC_EmitInteger32, 28,
43446 OPC_EmitRegisterI32, 0 ,
43447 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
43448 MVT::v16i8, 3, 8, 9, 10,
43449 OPC_EmitStringInteger32, ARM::dsub_0,
43450 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43451 MVT::f64, 2, 11, 12,
43452 OPC_EmitInteger32, 28,
43453 OPC_EmitRegisterI32, 0 ,
43454 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43455 MVT::v16i8, 3, 13, 14, 15,
43456 OPC_EmitStringInteger32, ARM::dsub_0,
43457 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43458 MVT::f64, 2, 16, 17,
43459 OPC_EmitInteger32, 28,
43460 OPC_EmitRegisterI32, 0 ,
43461 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv2i64),
43462 MVT::v2i64, 3, 18, 19, 20,
43463 OPC_CompleteMatch, 1, 21,
43464
43465 90,
43466 OPC_CheckPredicate, 18,
43467 OPC_CheckPredicate, 10,
43468 OPC_CheckType, MVT::v2i64,
43469 OPC_CheckPatternPredicate6,
43470 OPC_CheckComplexPat0, /*#*/1,
43471 OPC_EmitMergeInputChains1_0,
43472 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43473 MVT::f64, 0,
43474 OPC_EmitInteger32, 0,
43475 OPC_EmitInteger32, 28,
43476 OPC_EmitRegisterI32, 0 ,
43477 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43478 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43479 OPC_EmitInteger32, 28,
43480 OPC_EmitRegisterI32, 0 ,
43481 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv8i16),
43482 MVT::v16i8, 3, 8, 9, 10,
43483 OPC_EmitStringInteger32, ARM::dsub_0,
43484 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43485 MVT::f64, 2, 11, 12,
43486 OPC_EmitInteger32, 28,
43487 OPC_EmitRegisterI32, 0 ,
43488 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv4i32),
43489 MVT::v16i8, 3, 13, 14, 15,
43490 OPC_EmitStringInteger32, ARM::dsub_0,
43491 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43492 MVT::f64, 2, 16, 17,
43493 OPC_EmitInteger32, 28,
43494 OPC_EmitRegisterI32, 0 ,
43495 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv2i64),
43496 MVT::v2i64, 3, 18, 19, 20,
43497 OPC_CompleteMatch, 1, 21,
43498
43499 103,
43500 OPC_CheckPredicate, 15,
43501 OPC_CheckPredicate, 10,
43502 OPC_CheckType, MVT::v2i64,
43503 OPC_CheckPatternPredicate, 8,
43504 OPC_CheckComplexPat0, /*#*/1,
43505 OPC_EmitMergeInputChains1_0,
43506 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43507 MVT::f64, 0,
43508 OPC_EmitInteger32, 0,
43509 OPC_EmitInteger32, 28,
43510 OPC_EmitRegisterI32, 0 ,
43511 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43512 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43513 OPC_EmitInteger32, 28,
43514 OPC_EmitRegisterI32, 0 ,
43515 OPC_EmitNode1None, TARGET_VAL(ARM::VREV16d8),
43516 MVT::f64, 3, 8, 9, 10,
43517 OPC_EmitInteger32, 28,
43518 OPC_EmitRegisterI32, 0 ,
43519 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
43520 MVT::v16i8, 3, 11, 12, 13,
43521 OPC_EmitStringInteger32, ARM::dsub_0,
43522 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43523 MVT::f64, 2, 14, 15,
43524 OPC_EmitInteger32, 28,
43525 OPC_EmitRegisterI32, 0 ,
43526 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43527 MVT::v16i8, 3, 16, 17, 18,
43528 OPC_EmitStringInteger32, ARM::dsub_0,
43529 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43530 MVT::f64, 2, 19, 20,
43531 OPC_EmitInteger32, 28,
43532 OPC_EmitRegisterI32, 0 ,
43533 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv2i64),
43534 MVT::v2i64, 3, 21, 22, 23,
43535 OPC_CompleteMatch, 1, 24,
43536
43537 103,
43538 OPC_CheckPredicate, 16,
43539 OPC_CheckPredicate, 10,
43540 OPC_CheckType, MVT::v2i64,
43541 OPC_CheckPatternPredicate, 8,
43542 OPC_CheckComplexPat0, /*#*/1,
43543 OPC_EmitMergeInputChains1_0,
43544 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43545 MVT::f64, 0,
43546 OPC_EmitInteger32, 0,
43547 OPC_EmitInteger32, 28,
43548 OPC_EmitRegisterI32, 0 ,
43549 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43550 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43551 OPC_EmitInteger32, 28,
43552 OPC_EmitRegisterI32, 0 ,
43553 OPC_EmitNode1None, TARGET_VAL(ARM::VREV16d8),
43554 MVT::f64, 3, 8, 9, 10,
43555 OPC_EmitInteger32, 28,
43556 OPC_EmitRegisterI32, 0 ,
43557 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv8i16),
43558 MVT::v16i8, 3, 11, 12, 13,
43559 OPC_EmitStringInteger32, ARM::dsub_0,
43560 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43561 MVT::f64, 2, 14, 15,
43562 OPC_EmitInteger32, 28,
43563 OPC_EmitRegisterI32, 0 ,
43564 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv4i32),
43565 MVT::v16i8, 3, 16, 17, 18,
43566 OPC_EmitStringInteger32, ARM::dsub_0,
43567 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43568 MVT::f64, 2, 19, 20,
43569 OPC_EmitInteger32, 28,
43570 OPC_EmitRegisterI32, 0 ,
43571 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLuv2i64),
43572 MVT::v2i64, 3, 21, 22, 23,
43573 OPC_CompleteMatch, 1, 24,
43574
43575 103,
43576 OPC_CheckPredicate, 18,
43577 OPC_CheckPredicate, 10,
43578 OPC_CheckType, MVT::v2i64,
43579 OPC_CheckPatternPredicate, 8,
43580 OPC_CheckComplexPat0, /*#*/1,
43581 OPC_EmitMergeInputChains1_0,
43582 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43583 MVT::f64, 0,
43584 OPC_EmitInteger32, 0,
43585 OPC_EmitInteger32, 28,
43586 OPC_EmitRegisterI32, 0 ,
43587 OPC_EmitNode1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
43588 MVT::f64, 6, 2, 3, 4, 5, 6, 7,
43589 OPC_EmitInteger32, 28,
43590 OPC_EmitRegisterI32, 0 ,
43591 OPC_EmitNode1None, TARGET_VAL(ARM::VREV16d8),
43592 MVT::f64, 3, 8, 9, 10,
43593 OPC_EmitInteger32, 28,
43594 OPC_EmitRegisterI32, 0 ,
43595 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv8i16),
43596 MVT::v16i8, 3, 11, 12, 13,
43597 OPC_EmitStringInteger32, ARM::dsub_0,
43598 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43599 MVT::f64, 2, 14, 15,
43600 OPC_EmitInteger32, 28,
43601 OPC_EmitRegisterI32, 0 ,
43602 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv4i32),
43603 MVT::v16i8, 3, 16, 17, 18,
43604 OPC_EmitStringInteger32, ARM::dsub_0,
43605 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
43606 MVT::f64, 2, 19, 20,
43607 OPC_EmitInteger32, 28,
43608 OPC_EmitRegisterI32, 0 ,
43609 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVLsv2i64),
43610 MVT::v2i64, 3, 21, 22, 23,
43611 OPC_CompleteMatch, 1, 24,
43612
43613 105|128,4,
43614 OPC_CheckPredicate, 17,
43615 OPC_Scope, 22,
43616 OPC_CheckPredicate, 104,
43617 OPC_CheckType, MVT::v2f64,
43618 OPC_CheckPatternPredicate1,
43619 OPC_CheckComplexPat0, /*#*/1,
43620 OPC_EmitMergeInputChains1_0,
43621 OPC_EmitInteger32, 28,
43622 OPC_EmitRegisterI32, 0 ,
43623 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1q64), 0|OPFL_Chain|OPFL_MemRefs,
43624 MVT::v2f64, 4, 2, 3, 4, 5,
43625 22,
43626 OPC_CheckPredicate, 92,
43627 OPC_CheckType, MVT::v2f64,
43628 OPC_CheckPatternPredicate6,
43629 OPC_CheckComplexPat0, /*#*/1,
43630 OPC_EmitMergeInputChains1_0,
43631 OPC_EmitInteger32, 28,
43632 OPC_EmitRegisterI32, 0 ,
43633 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1q32), 0|OPFL_Chain|OPFL_MemRefs,
43634 MVT::v2f64, 4, 2, 3, 4, 5,
43635 22,
43636 OPC_CheckPredicate, 58,
43637 OPC_CheckType, MVT::v2f64,
43638 OPC_CheckPatternPredicate6,
43639 OPC_CheckComplexPat0, /*#*/1,
43640 OPC_EmitMergeInputChains1_0,
43641 OPC_EmitInteger32, 28,
43642 OPC_EmitRegisterI32, 0 ,
43643 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1q16), 0|OPFL_Chain|OPFL_MemRefs,
43644 MVT::v2f64, 4, 2, 3, 4, 5,
43645 95,
43646 OPC_CheckPredicate, 66,
43647 OPC_SwitchType , 43, MVT::v2f64,
43648 OPC_Scope, 18,
43649 OPC_CheckPatternPredicate6,
43650 OPC_CheckComplexPat0, /*#*/1,
43651 OPC_EmitMergeInputChains1_0,
43652 OPC_EmitInteger32, 28,
43653 OPC_EmitRegisterI32, 0 ,
43654 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1q8), 0|OPFL_Chain|OPFL_MemRefs,
43655 MVT::v2f64, 4, 2, 3, 4, 5,
43656 21,
43657 OPC_CheckPatternPredicate7,
43658 OPC_CheckComplexPat6, /*#*/1,
43659 OPC_EmitMergeInputChains1_0,
43660 OPC_EmitInteger32, 0,
43661 OPC_EmitRegisterI32, 0 ,
43662 OPC_EmitRegisterI32, 0 ,
43663 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
43664 MVT::v2f64, 5, 2, 3, 4, 5, 6,
43665 0,
43666 21, MVT::v8f16,
43667 OPC_CheckPatternPredicate7,
43668 OPC_CheckComplexPat6, /*#*/1,
43669 OPC_EmitMergeInputChains1_0,
43670 OPC_EmitInteger32, 0,
43671 OPC_EmitRegisterI32, 0 ,
43672 OPC_EmitRegisterI32, 0 ,
43673 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
43674 MVT::v8f16, 5, 2, 3, 4, 5, 6,
43675 21, MVT::v4f32,
43676 OPC_CheckPatternPredicate7,
43677 OPC_CheckComplexPat6, /*#*/1,
43678 OPC_EmitMergeInputChains1_0,
43679 OPC_EmitInteger32, 0,
43680 OPC_EmitRegisterI32, 0 ,
43681 OPC_EmitRegisterI32, 0 ,
43682 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
43683 MVT::v4f32, 5, 2, 3, 4, 5, 6,
43684 0,
43685 76,
43686 OPC_CheckPredicate, 58,
43687 OPC_SwitchType , 22, MVT::v8f16,
43688 OPC_CheckPatternPredicate7,
43689 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
43690 OPC_EmitMergeInputChains1_0,
43691 OPC_EmitInteger32, 0,
43692 OPC_EmitRegisterI32, 0 ,
43693 OPC_EmitRegisterI32, 0 ,
43694 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16), 0|OPFL_Chain|OPFL_MemRefs,
43695 MVT::v8f16, 5, 2, 3, 4, 5, 6,
43696 22, MVT::v4f32,
43697 OPC_CheckPatternPredicate7,
43698 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
43699 OPC_EmitMergeInputChains1_0,
43700 OPC_EmitInteger32, 0,
43701 OPC_EmitRegisterI32, 0 ,
43702 OPC_EmitRegisterI32, 0 ,
43703 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16), 0|OPFL_Chain|OPFL_MemRefs,
43704 MVT::v4f32, 5, 2, 3, 4, 5, 6,
43705 22, MVT::v2f64,
43706 OPC_CheckPatternPredicate7,
43707 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
43708 OPC_EmitMergeInputChains1_0,
43709 OPC_EmitInteger32, 0,
43710 OPC_EmitRegisterI32, 0 ,
43711 OPC_EmitRegisterI32, 0 ,
43712 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16), 0|OPFL_Chain|OPFL_MemRefs,
43713 MVT::v2f64, 5, 2, 3, 4, 5, 6,
43714 0,
43715 76,
43716 OPC_CheckPredicate, 45,
43717 OPC_SwitchType , 22, MVT::v8f16,
43718 OPC_CheckPatternPredicate7,
43719 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
43720 OPC_EmitMergeInputChains1_0,
43721 OPC_EmitInteger32, 0,
43722 OPC_EmitRegisterI32, 0 ,
43723 OPC_EmitRegisterI32, 0 ,
43724 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32), 0|OPFL_Chain|OPFL_MemRefs,
43725 MVT::v8f16, 5, 2, 3, 4, 5, 6,
43726 22, MVT::v4f32,
43727 OPC_CheckPatternPredicate7,
43728 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
43729 OPC_EmitMergeInputChains1_0,
43730 OPC_EmitInteger32, 0,
43731 OPC_EmitRegisterI32, 0 ,
43732 OPC_EmitRegisterI32, 0 ,
43733 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32), 0|OPFL_Chain|OPFL_MemRefs,
43734 MVT::v4f32, 5, 2, 3, 4, 5, 6,
43735 22, MVT::v2f64,
43736 OPC_CheckPatternPredicate7,
43737 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
43738 OPC_EmitMergeInputChains1_0,
43739 OPC_EmitInteger32, 0,
43740 OPC_EmitRegisterI32, 0 ,
43741 OPC_EmitRegisterI32, 0 ,
43742 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32), 0|OPFL_Chain|OPFL_MemRefs,
43743 MVT::v2f64, 5, 2, 3, 4, 5, 6,
43744 0,
43745 27,
43746 OPC_CheckPredicate, 57,
43747 OPC_CheckType, MVT::v8f16,
43748 OPC_CheckPatternPredicate, 12,
43749 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
43750 OPC_EmitMergeInputChains1_0,
43751 OPC_EmitInteger32, 0,
43752 OPC_EmitRegisterI32, 0 ,
43753 OPC_EmitRegisterI32, 0 ,
43754 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16), 0|OPFL_Chain|OPFL_MemRefs,
43755 MVT::v8f16, 5, 2, 3, 4, 5, 6,
43756 27,
43757 OPC_CheckPredicate, 45,
43758 OPC_CheckType, MVT::v4f32,
43759 OPC_CheckPatternPredicate, 12,
43760 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
43761 OPC_EmitMergeInputChains1_0,
43762 OPC_EmitInteger32, 0,
43763 OPC_EmitRegisterI32, 0 ,
43764 OPC_EmitRegisterI32, 0 ,
43765 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32), 0|OPFL_Chain|OPFL_MemRefs,
43766 MVT::v4f32, 5, 2, 3, 4, 5, 6,
43767 38,
43768 OPC_CheckPredicate, 66,
43769 OPC_CheckType, MVT::v2f64,
43770 OPC_CheckPatternPredicate, 8,
43771 OPC_CheckComplexPat0, /*#*/1,
43772 OPC_EmitMergeInputChains1_0,
43773 OPC_EmitInteger32, 28,
43774 OPC_EmitRegisterI32, 0 ,
43775 OPC_EmitNode1, TARGET_VAL(ARM::VLD1q8), 0|OPFL_Chain|OPFL_MemRefs,
43776 MVT::v16i8, 4, 2, 3, 4, 5,
43777 OPC_EmitInteger32, 28,
43778 OPC_EmitRegisterI32, 0 ,
43779 OPC_EmitNode1None, TARGET_VAL(ARM::VREV64q8),
43780 MVT::v2f64, 3, 6, 7, 8,
43781 OPC_CompleteMatch, 1, 9,
43782
43783 38,
43784 OPC_CheckPredicate, 58,
43785 OPC_CheckType, MVT::v2f64,
43786 OPC_CheckPatternPredicate, 8,
43787 OPC_CheckComplexPat0, /*#*/1,
43788 OPC_EmitMergeInputChains1_0,
43789 OPC_EmitInteger32, 28,
43790 OPC_EmitRegisterI32, 0 ,
43791 OPC_EmitNode1, TARGET_VAL(ARM::VLD1q16), 0|OPFL_Chain|OPFL_MemRefs,
43792 MVT::v16i8, 4, 2, 3, 4, 5,
43793 OPC_EmitInteger32, 28,
43794 OPC_EmitRegisterI32, 0 ,
43795 OPC_EmitNode1None, TARGET_VAL(ARM::VREV64q16),
43796 MVT::v2f64, 3, 6, 7, 8,
43797 OPC_CompleteMatch, 1, 9,
43798
43799 67,
43800 OPC_CheckType, MVT::v2f64,
43801 OPC_Scope, 43,
43802 OPC_CheckPatternPredicate, 12,
43803 OPC_CheckComplexPat6, /*#*/1,
43804 OPC_EmitMergeInputChains1_0,
43805 OPC_EmitInteger32, 0,
43806 OPC_EmitRegisterI32, 0 ,
43807 OPC_EmitRegisterI32, 0 ,
43808 OPC_EmitNode1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
43809 MVT::v16i8, 5, 2, 3, 4, 5, 6,
43810 OPC_EmitInteger32, 0,
43811 OPC_EmitRegisterI32, 0 ,
43812 OPC_EmitRegisterI32, 0 ,
43813 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43814 MVT::v4i32, 0,
43815 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::MVE_VREV64_8),
43816 MVT::v2f64, 5, 7, 8, 9, 10, 11,
43817 18,
43818 OPC_CheckPredicate, 92,
43819 OPC_CheckPatternPredicate, 24,
43820 OPC_EmitMergeInputChains1_0,
43821 OPC_EmitInteger32, 28,
43822 OPC_EmitRegisterI32, 0 ,
43823 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLDMQIA), 0|OPFL_Chain|OPFL_MemRefs,
43824 MVT::v2f64, 3, 1, 2, 3,
43825 0,
43826 45,
43827 OPC_CheckType, MVT::v4f32,
43828 OPC_CheckPatternPredicate, 12,
43829 OPC_CheckComplexPat6, /*#*/1,
43830 OPC_EmitMergeInputChains1_0,
43831 OPC_EmitInteger32, 0,
43832 OPC_EmitRegisterI32, 0 ,
43833 OPC_EmitRegisterI32, 0 ,
43834 OPC_EmitNode1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
43835 MVT::v16i8, 5, 2, 3, 4, 5, 6,
43836 OPC_EmitInteger32, 0,
43837 OPC_EmitRegisterI32, 0 ,
43838 OPC_EmitRegisterI32, 0 ,
43839 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43840 MVT::v4i32, 0,
43841 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::MVE_VREV32_8),
43842 MVT::v4f32, 5, 7, 8, 9, 10, 11,
43843 45,
43844 OPC_CheckType, MVT::v8f16,
43845 OPC_CheckPatternPredicate, 12,
43846 OPC_CheckComplexPat6, /*#*/1,
43847 OPC_EmitMergeInputChains1_0,
43848 OPC_EmitInteger32, 0,
43849 OPC_EmitRegisterI32, 0 ,
43850 OPC_EmitRegisterI32, 0 ,
43851 OPC_EmitNode1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
43852 MVT::v16i8, 5, 2, 3, 4, 5, 6,
43853 OPC_EmitInteger32, 0,
43854 OPC_EmitRegisterI32, 0 ,
43855 OPC_EmitRegisterI32, 0 ,
43856 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
43857 MVT::v4i32, 0,
43858 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::MVE_VREV16_8),
43859 MVT::v8f16, 5, 7, 8, 9, 10, 11,
43860 0,
43861 0,
43862 0,
43863 67|128,28, TARGET_VAL(ISD::INTRINSIC_W_CHAIN),
43864 OPC_Scope, 80|128,11,
43865 OPC_RecordNode,
43866 OPC_Scope, 125|128,1,
43867 OPC_CheckChild1Integer, 4|128,56,
43868 OPC_Scope, 115,
43869 OPC_MoveChild2,
43870 OPC_Scope, 26,
43871 OPC_CheckAndImm, 127|128,1,
43872 OPC_RecordChild0,
43873 OPC_MoveParent,
43874 OPC_RecordChild3,
43875 OPC_CheckChild3TypeI32,
43876 OPC_CheckPredicate, 31,
43877 OPC_CheckPatternPredicate3,
43878 OPC_CheckComplexPat1, /*#*/2,
43879 OPC_EmitMergeInputChains1_0,
43880 OPC_EmitInteger32, 28,
43881 OPC_EmitRegisterI32, 0 ,
43882 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::STREXB),
43883 MVT::i32, 4, 1, 3, 4, 5,
43884 27,
43885 OPC_CheckAndImm, 127|128,127|128,3,
43886 OPC_RecordChild0,
43887 OPC_MoveParent,
43888 OPC_RecordChild3,
43889 OPC_CheckChild3TypeI32,
43890 OPC_CheckPredicate, 32,
43891 OPC_CheckPatternPredicate3,
43892 OPC_CheckComplexPat1, /*#*/2,
43893 OPC_EmitMergeInputChains1_0,
43894 OPC_EmitInteger32, 28,
43895 OPC_EmitRegisterI32, 0 ,
43896 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::STREXH),
43897 MVT::i32, 4, 1, 3, 4, 5,
43898 27,
43899 OPC_CheckAndImm, 127|128,1,
43900 OPC_RecordChild0,
43901 OPC_MoveParent,
43902 OPC_RecordChild3,
43903 OPC_CheckChild3TypeI32,
43904 OPC_CheckPredicate, 31,
43905 OPC_CheckPatternPredicate, 31,
43906 OPC_CheckComplexPat1, /*#*/2,
43907 OPC_EmitMergeInputChains1_0,
43908 OPC_EmitInteger32, 28,
43909 OPC_EmitRegisterI32, 0 ,
43910 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2STREXB),
43911 MVT::i32, 4, 1, 3, 4, 5,
43912 28,
43913 OPC_CheckAndImm, 127|128,127|128,3,
43914 OPC_RecordChild0,
43915 OPC_MoveParent,
43916 OPC_RecordChild3,
43917 OPC_CheckChild3TypeI32,
43918 OPC_CheckPredicate, 32,
43919 OPC_CheckPatternPredicate, 31,
43920 OPC_CheckComplexPat1, /*#*/2,
43921 OPC_EmitMergeInputChains1_0,
43922 OPC_EmitInteger32, 28,
43923 OPC_EmitRegisterI32, 0 ,
43924 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2STREXH),
43925 MVT::i32, 4, 1, 3, 4, 5,
43926 0,
43927 2|128,1,
43928 OPC_RecordChild2,
43929 OPC_RecordChild3,
43930 OPC_CheckChild3TypeI32,
43931 OPC_Scope, 22,
43932 OPC_CheckPredicate, 46,
43933 OPC_CheckPatternPredicate, 31,
43934 OPC_CheckComplexPat, /*CP*/42, /*#*/2,
43935 OPC_EmitMergeInputChains1_0,
43936 OPC_EmitInteger32, 28,
43937 OPC_EmitRegisterI32, 0 ,
43938 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2STREX),
43939 MVT::i32, 5, 1, 3, 4, 5, 6,
43940 19,
43941 OPC_CheckPredicate, 31,
43942 OPC_CheckPatternPredicate3,
43943 OPC_CheckComplexPat1, /*#*/2,
43944 OPC_EmitMergeInputChains1_0,
43945 OPC_EmitInteger32, 28,
43946 OPC_EmitRegisterI32, 0 ,
43947 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::STREXB),
43948 MVT::i32, 4, 1, 3, 4, 5,
43949 19,
43950 OPC_CheckPredicate, 32,
43951 OPC_CheckPatternPredicate3,
43952 OPC_CheckComplexPat1, /*#*/2,
43953 OPC_EmitMergeInputChains1_0,
43954 OPC_EmitInteger32, 28,
43955 OPC_EmitRegisterI32, 0 ,
43956 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::STREXH),
43957 MVT::i32, 4, 1, 3, 4, 5,
43958 19,
43959 OPC_CheckPredicate, 46,
43960 OPC_CheckPatternPredicate3,
43961 OPC_CheckComplexPat1, /*#*/2,
43962 OPC_EmitMergeInputChains1_0,
43963 OPC_EmitInteger32, 28,
43964 OPC_EmitRegisterI32, 0 ,
43965 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::STREX),
43966 MVT::i32, 4, 1, 3, 4, 5,
43967 20,
43968 OPC_CheckPredicate, 31,
43969 OPC_CheckPatternPredicate, 31,
43970 OPC_CheckComplexPat1, /*#*/2,
43971 OPC_EmitMergeInputChains1_0,
43972 OPC_EmitInteger32, 28,
43973 OPC_EmitRegisterI32, 0 ,
43974 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2STREXB),
43975 MVT::i32, 4, 1, 3, 4, 5,
43976 20,
43977 OPC_CheckPredicate, 32,
43978 OPC_CheckPatternPredicate, 31,
43979 OPC_CheckComplexPat1, /*#*/2,
43980 OPC_EmitMergeInputChains1_0,
43981 OPC_EmitInteger32, 28,
43982 OPC_EmitRegisterI32, 0 ,
43983 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2STREXH),
43984 MVT::i32, 4, 1, 3, 4, 5,
43985 0,
43986 0,
43987 126|128,1,
43988 OPC_CheckChild1Integer, 0|128,56,
43989 OPC_Scope, 115,
43990 OPC_MoveChild2,
43991 OPC_Scope, 26,
43992 OPC_CheckAndImm, 127|128,1,
43993 OPC_RecordChild0,
43994 OPC_MoveParent,
43995 OPC_RecordChild3,
43996 OPC_CheckChild3TypeI32,
43997 OPC_CheckPredicate, 31,
43998 OPC_CheckPatternPredicate3,
43999 OPC_CheckComplexPat1, /*#*/2,
44000 OPC_EmitMergeInputChains1_0,
44001 OPC_EmitInteger32, 28,
44002 OPC_EmitRegisterI32, 0 ,
44003 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::STLEXB),
44004 MVT::i32, 4, 1, 3, 4, 5,
44005 27,
44006 OPC_CheckAndImm, 127|128,127|128,3,
44007 OPC_RecordChild0,
44008 OPC_MoveParent,
44009 OPC_RecordChild3,
44010 OPC_CheckChild3TypeI32,
44011 OPC_CheckPredicate, 32,
44012 OPC_CheckPatternPredicate3,
44013 OPC_CheckComplexPat1, /*#*/2,
44014 OPC_EmitMergeInputChains1_0,
44015 OPC_EmitInteger32, 28,
44016 OPC_EmitRegisterI32, 0 ,
44017 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::STLEXH),
44018 MVT::i32, 4, 1, 3, 4, 5,
44019 27,
44020 OPC_CheckAndImm, 127|128,1,
44021 OPC_RecordChild0,
44022 OPC_MoveParent,
44023 OPC_RecordChild3,
44024 OPC_CheckChild3TypeI32,
44025 OPC_CheckPredicate, 31,
44026 OPC_CheckPatternPredicate, 29,
44027 OPC_CheckComplexPat1, /*#*/2,
44028 OPC_EmitMergeInputChains1_0,
44029 OPC_EmitInteger32, 28,
44030 OPC_EmitRegisterI32, 0 ,
44031 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2STLEXB),
44032 MVT::i32, 4, 1, 3, 4, 5,
44033 28,
44034 OPC_CheckAndImm, 127|128,127|128,3,
44035 OPC_RecordChild0,
44036 OPC_MoveParent,
44037 OPC_RecordChild3,
44038 OPC_CheckChild3TypeI32,
44039 OPC_CheckPredicate, 32,
44040 OPC_CheckPatternPredicate, 29,
44041 OPC_CheckComplexPat1, /*#*/2,
44042 OPC_EmitMergeInputChains1_0,
44043 OPC_EmitInteger32, 28,
44044 OPC_EmitRegisterI32, 0 ,
44045 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2STLEXH),
44046 MVT::i32, 4, 1, 3, 4, 5,
44047 0,
44048 3|128,1,
44049 OPC_RecordChild2,
44050 OPC_RecordChild3,
44051 OPC_CheckChild3TypeI32,
44052 OPC_Scope, 20,
44053 OPC_CheckPredicate, 31,
44054 OPC_CheckPatternPredicate, 56,
44055 OPC_CheckComplexPat1, /*#*/2,
44056 OPC_EmitMergeInputChains1_0,
44057 OPC_EmitInteger32, 28,
44058 OPC_EmitRegisterI32, 0 ,
44059 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::STLEXB),
44060 MVT::i32, 4, 1, 3, 4, 5,
44061 20,
44062 OPC_CheckPredicate, 32,
44063 OPC_CheckPatternPredicate, 56,
44064 OPC_CheckComplexPat1, /*#*/2,
44065 OPC_EmitMergeInputChains1_0,
44066 OPC_EmitInteger32, 28,
44067 OPC_EmitRegisterI32, 0 ,
44068 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::STLEXH),
44069 MVT::i32, 4, 1, 3, 4, 5,
44070 20,
44071 OPC_CheckPredicate, 46,
44072 OPC_CheckPatternPredicate, 56,
44073 OPC_CheckComplexPat1, /*#*/2,
44074 OPC_EmitMergeInputChains1_0,
44075 OPC_EmitInteger32, 28,
44076 OPC_EmitRegisterI32, 0 ,
44077 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::STLEX),
44078 MVT::i32, 4, 1, 3, 4, 5,
44079 20,
44080 OPC_CheckPredicate, 31,
44081 OPC_CheckPatternPredicate, 29,
44082 OPC_CheckComplexPat1, /*#*/2,
44083 OPC_EmitMergeInputChains1_0,
44084 OPC_EmitInteger32, 28,
44085 OPC_EmitRegisterI32, 0 ,
44086 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2STLEXB),
44087 MVT::i32, 4, 1, 3, 4, 5,
44088 20,
44089 OPC_CheckPredicate, 32,
44090 OPC_CheckPatternPredicate, 29,
44091 OPC_CheckComplexPat1, /*#*/2,
44092 OPC_EmitMergeInputChains1_0,
44093 OPC_EmitInteger32, 28,
44094 OPC_EmitRegisterI32, 0 ,
44095 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2STLEXH),
44096 MVT::i32, 4, 1, 3, 4, 5,
44097 20,
44098 OPC_CheckPredicate, 46,
44099 OPC_CheckPatternPredicate, 29,
44100 OPC_CheckComplexPat1, /*#*/2,
44101 OPC_EmitMergeInputChains1_0,
44102 OPC_EmitInteger32, 28,
44103 OPC_EmitRegisterI32, 0 ,
44104 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2STLEX),
44105 MVT::i32, 4, 1, 3, 4, 5,
44106 0,
44107 0,
44108 74,
44109 OPC_CheckChild1Integer, 108|128,49,
44110 OPC_RecordChild2,
44111 OPC_MoveChild2,
44112 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
44113 OPC_MoveSibling3,
44114 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
44115 OPC_RecordNode,
44116 OPC_MoveSibling4,
44117 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
44118 OPC_RecordNode,
44119 OPC_MoveSibling5,
44120 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
44121 OPC_RecordNode,
44122 OPC_MoveSibling6,
44123 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
44124 OPC_RecordNode,
44125 OPC_MoveParent,
44126 OPC_Scope, 20,
44127 OPC_CheckPatternPredicate3,
44128 OPC_EmitMergeInputChains1_0,
44129 OPC_EmitConvertToTarget2,
44130 OPC_EmitConvertToTarget5,
44131 OPC_EmitInteger32, 28,
44132 OPC_EmitRegisterI32, 0 ,
44133 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::MRC),
44134 MVT::i32, 7, 1, 6, 3, 4, 7, 8, 9,
44135 21,
44136 OPC_CheckPatternPredicate, 80,
44137 OPC_EmitMergeInputChains1_0,
44138 OPC_EmitConvertToTarget2,
44139 OPC_EmitConvertToTarget5,
44140 OPC_EmitInteger32, 28,
44141 OPC_EmitRegisterI32, 0 ,
44142 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2MRC),
44143 MVT::i32, 7, 1, 6, 3, 4, 7, 8, 9,
44144 0,
44145 69,
44146 OPC_CheckChild1Integer, 110|128,49,
44147 OPC_RecordChild2,
44148 OPC_MoveChild2,
44149 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
44150 OPC_MoveSibling3,
44151 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
44152 OPC_RecordNode,
44153 OPC_MoveSibling4,
44154 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
44155 OPC_RecordNode,
44156 OPC_MoveSibling5,
44157 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
44158 OPC_RecordNode,
44159 OPC_MoveSibling6,
44160 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
44161 OPC_RecordNode,
44162 OPC_MoveParent,
44163 OPC_Scope, 15,
44164 OPC_CheckPatternPredicate, 81,
44165 OPC_EmitMergeInputChains1_0,
44166 OPC_EmitConvertToTarget2,
44167 OPC_EmitConvertToTarget5,
44168 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::MRC2),
44169 MVT::i32, 5, 1, 6, 3, 4, 7,
44170 21,
44171 OPC_CheckPatternPredicate, 80,
44172 OPC_EmitMergeInputChains1_0,
44173 OPC_EmitConvertToTarget2,
44174 OPC_EmitConvertToTarget5,
44175 OPC_EmitInteger32, 28,
44176 OPC_EmitRegisterI32, 0 ,
44177 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2MRC2),
44178 MVT::i32, 7, 1, 6, 3, 4, 7, 8, 9,
44179 0,
44180 126,
44181 OPC_CheckChild1Integer, 96|128,49,
44182 OPC_RecordChild2,
44183 OPC_CheckChild2TypeI32,
44184 OPC_Scope, 21,
44185 OPC_CheckPredicate, 46,
44186 OPC_CheckPatternPredicate, 31,
44187 OPC_CheckComplexPat, /*CP*/42, /*#*/1,
44188 OPC_EmitMergeInputChains1_0,
44189 OPC_EmitInteger32, 28,
44190 OPC_EmitRegisterI32, 0 ,
44191 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2LDREX),
44192 MVT::i32, 4, 2, 3, 4, 5,
44193 18,
44194 OPC_CheckPredicate, 31,
44195 OPC_CheckPatternPredicate3,
44196 OPC_CheckComplexPat1, /*#*/1,
44197 OPC_EmitMergeInputChains1_0,
44198 OPC_EmitInteger32, 28,
44199 OPC_EmitRegisterI32, 0 ,
44200 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::LDREXB),
44201 MVT::i32, 3, 2, 3, 4,
44202 18,
44203 OPC_CheckPredicate, 32,
44204 OPC_CheckPatternPredicate3,
44205 OPC_CheckComplexPat1, /*#*/1,
44206 OPC_EmitMergeInputChains1_0,
44207 OPC_EmitInteger32, 28,
44208 OPC_EmitRegisterI32, 0 ,
44209 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::LDREXH),
44210 MVT::i32, 3, 2, 3, 4,
44211 18,
44212 OPC_CheckPredicate, 46,
44213 OPC_CheckPatternPredicate3,
44214 OPC_CheckComplexPat1, /*#*/1,
44215 OPC_EmitMergeInputChains1_0,
44216 OPC_EmitInteger32, 28,
44217 OPC_EmitRegisterI32, 0 ,
44218 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::LDREX),
44219 MVT::i32, 3, 2, 3, 4,
44220 19,
44221 OPC_CheckPredicate, 31,
44222 OPC_CheckPatternPredicate, 31,
44223 OPC_CheckComplexPat1, /*#*/1,
44224 OPC_EmitMergeInputChains1_0,
44225 OPC_EmitInteger32, 28,
44226 OPC_EmitRegisterI32, 0 ,
44227 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2LDREXB),
44228 MVT::i32, 3, 2, 3, 4,
44229 19,
44230 OPC_CheckPredicate, 32,
44231 OPC_CheckPatternPredicate, 31,
44232 OPC_CheckComplexPat1, /*#*/1,
44233 OPC_EmitMergeInputChains1_0,
44234 OPC_EmitInteger32, 28,
44235 OPC_EmitRegisterI32, 0 ,
44236 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2LDREXH),
44237 MVT::i32, 3, 2, 3, 4,
44238 0,
44239 127,
44240 OPC_CheckChild1Integer, 84|128,49,
44241 OPC_RecordChild2,
44242 OPC_CheckChild2TypeI32,
44243 OPC_Scope, 19,
44244 OPC_CheckPredicate, 31,
44245 OPC_CheckPatternPredicate, 56,
44246 OPC_CheckComplexPat1, /*#*/1,
44247 OPC_EmitMergeInputChains1_0,
44248 OPC_EmitInteger32, 28,
44249 OPC_EmitRegisterI32, 0 ,
44250 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::LDAEXB),
44251 MVT::i32, 3, 2, 3, 4,
44252 19,
44253 OPC_CheckPredicate, 32,
44254 OPC_CheckPatternPredicate, 56,
44255 OPC_CheckComplexPat1, /*#*/1,
44256 OPC_EmitMergeInputChains1_0,
44257 OPC_EmitInteger32, 28,
44258 OPC_EmitRegisterI32, 0 ,
44259 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::LDAEXH),
44260 MVT::i32, 3, 2, 3, 4,
44261 19,
44262 OPC_CheckPredicate, 46,
44263 OPC_CheckPatternPredicate, 56,
44264 OPC_CheckComplexPat1, /*#*/1,
44265 OPC_EmitMergeInputChains1_0,
44266 OPC_EmitInteger32, 28,
44267 OPC_EmitRegisterI32, 0 ,
44268 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::LDAEX),
44269 MVT::i32, 3, 2, 3, 4,
44270 19,
44271 OPC_CheckPredicate, 31,
44272 OPC_CheckPatternPredicate, 29,
44273 OPC_CheckComplexPat1, /*#*/1,
44274 OPC_EmitMergeInputChains1_0,
44275 OPC_EmitInteger32, 28,
44276 OPC_EmitRegisterI32, 0 ,
44277 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2LDAEXB),
44278 MVT::i32, 3, 2, 3, 4,
44279 19,
44280 OPC_CheckPredicate, 32,
44281 OPC_CheckPatternPredicate, 29,
44282 OPC_CheckComplexPat1, /*#*/1,
44283 OPC_EmitMergeInputChains1_0,
44284 OPC_EmitInteger32, 28,
44285 OPC_EmitRegisterI32, 0 ,
44286 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2LDAEXH),
44287 MVT::i32, 3, 2, 3, 4,
44288 19,
44289 OPC_CheckPredicate, 46,
44290 OPC_CheckPatternPredicate, 29,
44291 OPC_CheckComplexPat1, /*#*/1,
44292 OPC_EmitMergeInputChains1_0,
44293 OPC_EmitInteger32, 28,
44294 OPC_EmitRegisterI32, 0 ,
44295 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2LDAEX),
44296 MVT::i32, 3, 2, 3, 4,
44297 0,
44298 18,
44299 OPC_CheckChild1Integer, 108|128,55,
44300 OPC_RecordChild2,
44301 OPC_MoveChild2,
44302 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
44303 OPC_MoveParent,
44304 OPC_RecordChild3,
44305 OPC_EmitMergeInputChains1_0,
44306 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::SPACE),
44307 MVT::i32, 2, 1, 2,
44308 40,
44309 OPC_CheckChild1Integer, 44|128,55,
44310 OPC_RecordChild2,
44311 OPC_RecordChild3,
44312 OPC_Scope, 16,
44313 OPC_CheckPatternPredicate, 9,
44314 OPC_EmitMergeInputChains1_0,
44315 OPC_EmitInteger32, 28,
44316 OPC_EmitRegisterI32, 0 ,
44317 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::SEL),
44318 MVT::i32, 4, 1, 2, 3, 4,
44319 15,
44320 OPC_CheckPatternPredicate5,
44321 OPC_EmitMergeInputChains1_0,
44322 OPC_EmitInteger32, 28,
44323 OPC_EmitRegisterI32, 0 ,
44324 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2SEL),
44325 MVT::i32, 4, 1, 2, 3, 4,
44326 0,
44327 39,
44328 OPC_CheckChild1Integer, 42|128,55,
44329 OPC_RecordChild2,
44330 OPC_RecordChild3,
44331 OPC_Scope, 15,
44332 OPC_CheckPatternPredicate3,
44333 OPC_EmitMergeInputChains1_0,
44334 OPC_EmitInteger32, 28,
44335 OPC_EmitRegisterI32, 0 ,
44336 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::SASX),
44337 MVT::i32, 4, 1, 2, 3, 4,
44338 15,
44339 OPC_CheckPatternPredicate5,
44340 OPC_EmitMergeInputChains1_0,
44341 OPC_EmitInteger32, 28,
44342 OPC_EmitRegisterI32, 0 ,
44343 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2SASX),
44344 MVT::i32, 4, 1, 2, 3, 4,
44345 0,
44346 39,
44347 OPC_CheckChild1Integer, 38|128,55,
44348 OPC_RecordChild2,
44349 OPC_RecordChild3,
44350 OPC_Scope, 15,
44351 OPC_CheckPatternPredicate3,
44352 OPC_EmitMergeInputChains1_0,
44353 OPC_EmitInteger32, 28,
44354 OPC_EmitRegisterI32, 0 ,
44355 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::SADD16),
44356 MVT::i32, 4, 1, 2, 3, 4,
44357 15,
44358 OPC_CheckPatternPredicate5,
44359 OPC_EmitMergeInputChains1_0,
44360 OPC_EmitInteger32, 28,
44361 OPC_EmitRegisterI32, 0 ,
44362 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2SADD16),
44363 MVT::i32, 4, 1, 2, 3, 4,
44364 0,
44365 39,
44366 OPC_CheckChild1Integer, 40|128,55,
44367 OPC_RecordChild2,
44368 OPC_RecordChild3,
44369 OPC_Scope, 15,
44370 OPC_CheckPatternPredicate3,
44371 OPC_EmitMergeInputChains1_0,
44372 OPC_EmitInteger32, 28,
44373 OPC_EmitRegisterI32, 0 ,
44374 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::SADD8),
44375 MVT::i32, 4, 1, 2, 3, 4,
44376 15,
44377 OPC_CheckPatternPredicate5,
44378 OPC_EmitMergeInputChains1_0,
44379 OPC_EmitInteger32, 28,
44380 OPC_EmitRegisterI32, 0 ,
44381 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2SADD8),
44382 MVT::i32, 4, 1, 2, 3, 4,
44383 0,
44384 39,
44385 OPC_CheckChild1Integer, 114|128,55,
44386 OPC_RecordChild2,
44387 OPC_RecordChild3,
44388 OPC_Scope, 15,
44389 OPC_CheckPatternPredicate3,
44390 OPC_EmitMergeInputChains1_0,
44391 OPC_EmitInteger32, 28,
44392 OPC_EmitRegisterI32, 0 ,
44393 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::SSAX),
44394 MVT::i32, 4, 1, 2, 3, 4,
44395 15,
44396 OPC_CheckPatternPredicate5,
44397 OPC_EmitMergeInputChains1_0,
44398 OPC_EmitInteger32, 28,
44399 OPC_EmitRegisterI32, 0 ,
44400 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2SSAX),
44401 MVT::i32, 4, 1, 2, 3, 4,
44402 0,
44403 39,
44404 OPC_CheckChild1Integer, 116|128,55,
44405 OPC_RecordChild2,
44406 OPC_RecordChild3,
44407 OPC_Scope, 15,
44408 OPC_CheckPatternPredicate3,
44409 OPC_EmitMergeInputChains1_0,
44410 OPC_EmitInteger32, 28,
44411 OPC_EmitRegisterI32, 0 ,
44412 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::SSUB16),
44413 MVT::i32, 4, 1, 2, 3, 4,
44414 15,
44415 OPC_CheckPatternPredicate5,
44416 OPC_EmitMergeInputChains1_0,
44417 OPC_EmitInteger32, 28,
44418 OPC_EmitRegisterI32, 0 ,
44419 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2SSUB16),
44420 MVT::i32, 4, 1, 2, 3, 4,
44421 0,
44422 39,
44423 OPC_CheckChild1Integer, 118|128,55,
44424 OPC_RecordChild2,
44425 OPC_RecordChild3,
44426 OPC_Scope, 15,
44427 OPC_CheckPatternPredicate3,
44428 OPC_EmitMergeInputChains1_0,
44429 OPC_EmitInteger32, 28,
44430 OPC_EmitRegisterI32, 0 ,
44431 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::SSUB8),
44432 MVT::i32, 4, 1, 2, 3, 4,
44433 15,
44434 OPC_CheckPatternPredicate5,
44435 OPC_EmitMergeInputChains1_0,
44436 OPC_EmitInteger32, 28,
44437 OPC_EmitRegisterI32, 0 ,
44438 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2SSUB8),
44439 MVT::i32, 4, 1, 2, 3, 4,
44440 0,
44441 39,
44442 OPC_CheckChild1Integer, 16|128,56,
44443 OPC_RecordChild2,
44444 OPC_RecordChild3,
44445 OPC_Scope, 15,
44446 OPC_CheckPatternPredicate3,
44447 OPC_EmitMergeInputChains1_0,
44448 OPC_EmitInteger32, 28,
44449 OPC_EmitRegisterI32, 0 ,
44450 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::UASX),
44451 MVT::i32, 4, 1, 2, 3, 4,
44452 15,
44453 OPC_CheckPatternPredicate5,
44454 OPC_EmitMergeInputChains1_0,
44455 OPC_EmitInteger32, 28,
44456 OPC_EmitRegisterI32, 0 ,
44457 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2UASX),
44458 MVT::i32, 4, 1, 2, 3, 4,
44459 0,
44460 39,
44461 OPC_CheckChild1Integer, 12|128,56,
44462 OPC_RecordChild2,
44463 OPC_RecordChild3,
44464 OPC_Scope, 15,
44465 OPC_CheckPatternPredicate3,
44466 OPC_EmitMergeInputChains1_0,
44467 OPC_EmitInteger32, 28,
44468 OPC_EmitRegisterI32, 0 ,
44469 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::UADD16),
44470 MVT::i32, 4, 1, 2, 3, 4,
44471 15,
44472 OPC_CheckPatternPredicate5,
44473 OPC_EmitMergeInputChains1_0,
44474 OPC_EmitInteger32, 28,
44475 OPC_EmitRegisterI32, 0 ,
44476 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2UADD16),
44477 MVT::i32, 4, 1, 2, 3, 4,
44478 0,
44479 39,
44480 OPC_CheckChild1Integer, 14|128,56,
44481 OPC_RecordChild2,
44482 OPC_RecordChild3,
44483 OPC_Scope, 15,
44484 OPC_CheckPatternPredicate3,
44485 OPC_EmitMergeInputChains1_0,
44486 OPC_EmitInteger32, 28,
44487 OPC_EmitRegisterI32, 0 ,
44488 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::UADD8),
44489 MVT::i32, 4, 1, 2, 3, 4,
44490 15,
44491 OPC_CheckPatternPredicate5,
44492 OPC_EmitMergeInputChains1_0,
44493 OPC_EmitInteger32, 28,
44494 OPC_EmitRegisterI32, 0 ,
44495 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2UADD8),
44496 MVT::i32, 4, 1, 2, 3, 4,
44497 0,
44498 39,
44499 OPC_CheckChild1Integer, 52|128,56,
44500 OPC_RecordChild2,
44501 OPC_RecordChild3,
44502 OPC_Scope, 15,
44503 OPC_CheckPatternPredicate3,
44504 OPC_EmitMergeInputChains1_0,
44505 OPC_EmitInteger32, 28,
44506 OPC_EmitRegisterI32, 0 ,
44507 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::USAX),
44508 MVT::i32, 4, 1, 2, 3, 4,
44509 15,
44510 OPC_CheckPatternPredicate5,
44511 OPC_EmitMergeInputChains1_0,
44512 OPC_EmitInteger32, 28,
44513 OPC_EmitRegisterI32, 0 ,
44514 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2USAX),
44515 MVT::i32, 4, 1, 2, 3, 4,
44516 0,
44517 39,
44518 OPC_CheckChild1Integer, 54|128,56,
44519 OPC_RecordChild2,
44520 OPC_RecordChild3,
44521 OPC_Scope, 15,
44522 OPC_CheckPatternPredicate3,
44523 OPC_EmitMergeInputChains1_0,
44524 OPC_EmitInteger32, 28,
44525 OPC_EmitRegisterI32, 0 ,
44526 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::USUB16),
44527 MVT::i32, 4, 1, 2, 3, 4,
44528 15,
44529 OPC_CheckPatternPredicate5,
44530 OPC_EmitMergeInputChains1_0,
44531 OPC_EmitInteger32, 28,
44532 OPC_EmitRegisterI32, 0 ,
44533 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2USUB16),
44534 MVT::i32, 4, 1, 2, 3, 4,
44535 0,
44536 39,
44537 OPC_CheckChild1Integer, 56|128,56,
44538 OPC_RecordChild2,
44539 OPC_RecordChild3,
44540 OPC_Scope, 15,
44541 OPC_CheckPatternPredicate3,
44542 OPC_EmitMergeInputChains1_0,
44543 OPC_EmitInteger32, 28,
44544 OPC_EmitRegisterI32, 0 ,
44545 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::USUB8),
44546 MVT::i32, 4, 1, 2, 3, 4,
44547 15,
44548 OPC_CheckPatternPredicate5,
44549 OPC_EmitMergeInputChains1_0,
44550 OPC_EmitInteger32, 28,
44551 OPC_EmitRegisterI32, 0 ,
44552 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2USUB8),
44553 MVT::i32, 4, 1, 2, 3, 4,
44554 0,
44555 15,
44556 OPC_CheckChild1Integer, 26|128,5,
44557 OPC_RecordChild2,
44558 OPC_CheckChild2TypeI32,
44559 OPC_CheckTypeI32,
44560 OPC_CheckPatternPredicate, 117,
44561 OPC_EmitMergeInputChains1_0,
44562 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2DoLoopStart),
44563 MVT::i32, 1, 1,
44564 17,
44565 OPC_CheckChild1Integer, 76|128,49,
44566 OPC_CheckPatternPredicate, 35,
44567 OPC_EmitMergeInputChains1_0,
44568 OPC_EmitInteger32, 28,
44569 OPC_EmitRegisterI32, 0 ,
44570 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::VMRS),
44571 MVT::i32, 2, 1, 2,
44572 0,
44573 109|128,16,
44574 OPC_RecordMemRef,
44575 OPC_RecordNode,
44576 OPC_Scope, 62|128,6,
44577 OPC_CheckChild1Integer, 94|128,51,
44578 OPC_RecordChild2,
44579 OPC_CheckChild2TypeI32,
44580 OPC_RecordChild3,
44581 OPC_Scope, 58,
44582 OPC_CheckChild3Type, MVT::v16i8,
44583 OPC_CheckChild4Integer, 16,
44584 OPC_MoveChild5,
44585 OPC_CheckInteger, 0,
44586 OPC_MoveSibling6,
44587 OPC_Scope, 23,
44588 OPC_CheckInteger, 2,
44589 OPC_MoveParent,
44590 OPC_CheckType, MVT::v16i8,
44591 OPC_EmitMergeInputChains1_0,
44592 OPC_EmitInteger32, 0,
44593 OPC_EmitRegisterI32, 0 ,
44594 OPC_EmitRegisterI32, 0 ,
44595 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8_rq), 0|OPFL_Chain|OPFL_MemRefs,
44596 MVT::v16i8, 5, 1, 2, 3, 4, 5,
44597 23,
44598 OPC_CheckInteger, 0,
44599 OPC_MoveParent,
44600 OPC_CheckType, MVT::v16i8,
44601 OPC_EmitMergeInputChains1_0,
44602 OPC_EmitInteger32, 0,
44603 OPC_EmitRegisterI32, 0 ,
44604 OPC_EmitRegisterI32, 0 ,
44605 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8_rq), 0|OPFL_Chain|OPFL_MemRefs,
44606 MVT::v16i8, 5, 1, 2, 3, 4, 5,
44607 0,
44608 8|128,2,
44609 OPC_CheckChild3Type, MVT::v8i16,
44610 OPC_Scope, 56,
44611 OPC_CheckChild4Integer, 16,
44612 OPC_MoveChild5,
44613 OPC_CheckInteger, 0,
44614 OPC_MoveSibling6,
44615 OPC_Scope, 23,
44616 OPC_CheckInteger, 2,
44617 OPC_MoveParent,
44618 OPC_CheckType, MVT::v8i16,
44619 OPC_EmitMergeInputChains1_0,
44620 OPC_EmitInteger32, 0,
44621 OPC_EmitRegisterI32, 0 ,
44622 OPC_EmitRegisterI32, 0 ,
44623 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU16_rq), 0|OPFL_Chain|OPFL_MemRefs,
44624 MVT::v8i16, 5, 1, 2, 3, 4, 5,
44625 23,
44626 OPC_CheckInteger, 0,
44627 OPC_MoveParent,
44628 OPC_CheckType, MVT::v8i16,
44629 OPC_EmitMergeInputChains1_0,
44630 OPC_EmitInteger32, 0,
44631 OPC_EmitRegisterI32, 0 ,
44632 OPC_EmitRegisterI32, 0 ,
44633 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBS16_rq), 0|OPFL_Chain|OPFL_MemRefs,
44634 MVT::v8i16, 5, 1, 2, 3, 4, 5,
44635 0,
44636 73|128,1,
44637 OPC_CheckChild4Integer, 32,
44638 OPC_MoveChild5,
44639 OPC_Scope, 97,
44640 OPC_CheckInteger, 0,
44641 OPC_MoveSibling6,
44642 OPC_Scope, 45,
44643 OPC_CheckInteger, 0,
44644 OPC_MoveParent,
44645 OPC_SwitchType , 18, MVT::v8i16,
44646 OPC_EmitMergeInputChains1_0,
44647 OPC_EmitInteger32, 0,
44648 OPC_EmitRegisterI32, 0 ,
44649 OPC_EmitRegisterI32, 0 ,
44650 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44651 MVT::v8i16, 5, 1, 2, 3, 4, 5,
44652 18, MVT::v8f16,
44653 OPC_EmitMergeInputChains1_0,
44654 OPC_EmitInteger32, 0,
44655 OPC_EmitRegisterI32, 0 ,
44656 OPC_EmitRegisterI32, 0 ,
44657 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44658 MVT::v8f16, 5, 1, 2, 3, 4, 5,
44659 0,
44660 45,
44661 OPC_CheckInteger, 2,
44662 OPC_MoveParent,
44663 OPC_SwitchType , 18, MVT::v8i16,
44664 OPC_EmitMergeInputChains1_0,
44665 OPC_EmitInteger32, 0,
44666 OPC_EmitRegisterI32, 0 ,
44667 OPC_EmitRegisterI32, 0 ,
44668 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44669 MVT::v8i16, 5, 1, 2, 3, 4, 5,
44670 18, MVT::v8f16,
44671 OPC_EmitMergeInputChains1_0,
44672 OPC_EmitInteger32, 0,
44673 OPC_EmitRegisterI32, 0 ,
44674 OPC_EmitRegisterI32, 0 ,
44675 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44676 MVT::v8f16, 5, 1, 2, 3, 4, 5,
44677 0,
44678 0,
44679 97,
44680 OPC_CheckInteger, 2,
44681 OPC_MoveSibling6,
44682 OPC_Scope, 45,
44683 OPC_CheckInteger, 0,
44684 OPC_MoveParent,
44685 OPC_SwitchType , 18, MVT::v8i16,
44686 OPC_EmitMergeInputChains1_0,
44687 OPC_EmitInteger32, 0,
44688 OPC_EmitRegisterI32, 0 ,
44689 OPC_EmitRegisterI32, 0 ,
44690 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq), 0|OPFL_Chain|OPFL_MemRefs,
44691 MVT::v8i16, 5, 1, 2, 3, 4, 5,
44692 18, MVT::v8f16,
44693 OPC_EmitMergeInputChains1_0,
44694 OPC_EmitInteger32, 0,
44695 OPC_EmitRegisterI32, 0 ,
44696 OPC_EmitRegisterI32, 0 ,
44697 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq), 0|OPFL_Chain|OPFL_MemRefs,
44698 MVT::v8f16, 5, 1, 2, 3, 4, 5,
44699 0,
44700 45,
44701 OPC_CheckInteger, 2,
44702 OPC_MoveParent,
44703 OPC_SwitchType , 18, MVT::v8i16,
44704 OPC_EmitMergeInputChains1_0,
44705 OPC_EmitInteger32, 0,
44706 OPC_EmitRegisterI32, 0 ,
44707 OPC_EmitRegisterI32, 0 ,
44708 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq), 0|OPFL_Chain|OPFL_MemRefs,
44709 MVT::v8i16, 5, 1, 2, 3, 4, 5,
44710 18, MVT::v8f16,
44711 OPC_EmitMergeInputChains1_0,
44712 OPC_EmitInteger32, 0,
44713 OPC_EmitRegisterI32, 0 ,
44714 OPC_EmitRegisterI32, 0 ,
44715 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq), 0|OPFL_Chain|OPFL_MemRefs,
44716 MVT::v8f16, 5, 1, 2, 3, 4, 5,
44717 0,
44718 0,
44719 0,
44720 0,
44721 122|128,2,
44722 OPC_CheckChild3Type, MVT::v4i32,
44723 OPC_Scope, 56,
44724 OPC_CheckChild4Integer, 16,
44725 OPC_MoveChild5,
44726 OPC_CheckInteger, 0,
44727 OPC_MoveSibling6,
44728 OPC_Scope, 23,
44729 OPC_CheckInteger, 2,
44730 OPC_MoveParent,
44731 OPC_CheckType, MVT::v4i32,
44732 OPC_EmitMergeInputChains1_0,
44733 OPC_EmitInteger32, 0,
44734 OPC_EmitRegisterI32, 0 ,
44735 OPC_EmitRegisterI32, 0 ,
44736 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
44737 MVT::v4i32, 5, 1, 2, 3, 4, 5,
44738 23,
44739 OPC_CheckInteger, 0,
44740 OPC_MoveParent,
44741 OPC_CheckType, MVT::v4i32,
44742 OPC_EmitMergeInputChains1_0,
44743 OPC_EmitInteger32, 0,
44744 OPC_EmitRegisterI32, 0 ,
44745 OPC_EmitRegisterI32, 0 ,
44746 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBS32_rq), 0|OPFL_Chain|OPFL_MemRefs,
44747 MVT::v4i32, 5, 1, 2, 3, 4, 5,
44748 0,
44749 113,
44750 OPC_CheckChild4Integer, 32,
44751 OPC_MoveChild5,
44752 OPC_Scope, 53,
44753 OPC_CheckInteger, 0,
44754 OPC_MoveSibling6,
44755 OPC_Scope, 23,
44756 OPC_CheckInteger, 2,
44757 OPC_MoveParent,
44758 OPC_CheckType, MVT::v4i32,
44759 OPC_EmitMergeInputChains1_0,
44760 OPC_EmitInteger32, 0,
44761 OPC_EmitRegisterI32, 0 ,
44762 OPC_EmitRegisterI32, 0 ,
44763 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44764 MVT::v4i32, 5, 1, 2, 3, 4, 5,
44765 23,
44766 OPC_CheckInteger, 0,
44767 OPC_MoveParent,
44768 OPC_CheckType, MVT::v4i32,
44769 OPC_EmitMergeInputChains1_0,
44770 OPC_EmitInteger32, 0,
44771 OPC_EmitRegisterI32, 0 ,
44772 OPC_EmitRegisterI32, 0 ,
44773 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHS32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44774 MVT::v4i32, 5, 1, 2, 3, 4, 5,
44775 0,
44776 53,
44777 OPC_CheckInteger, 2,
44778 OPC_MoveSibling6,
44779 OPC_Scope, 23,
44780 OPC_CheckInteger, 2,
44781 OPC_MoveParent,
44782 OPC_CheckType, MVT::v4i32,
44783 OPC_EmitMergeInputChains1_0,
44784 OPC_EmitInteger32, 0,
44785 OPC_EmitRegisterI32, 0 ,
44786 OPC_EmitRegisterI32, 0 ,
44787 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
44788 MVT::v4i32, 5, 1, 2, 3, 4, 5,
44789 23,
44790 OPC_CheckInteger, 0,
44791 OPC_MoveParent,
44792 OPC_CheckType, MVT::v4i32,
44793 OPC_EmitMergeInputChains1_0,
44794 OPC_EmitInteger32, 0,
44795 OPC_EmitRegisterI32, 0 ,
44796 OPC_EmitRegisterI32, 0 ,
44797 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHS32_rq), 0|OPFL_Chain|OPFL_MemRefs,
44798 MVT::v4i32, 5, 1, 2, 3, 4, 5,
44799 0,
44800 0,
44801 73|128,1,
44802 OPC_CheckChild4Integer, 64,
44803 OPC_MoveChild5,
44804 OPC_Scope, 97,
44805 OPC_CheckInteger, 0,
44806 OPC_MoveSibling6,
44807 OPC_Scope, 45,
44808 OPC_CheckInteger, 0,
44809 OPC_MoveParent,
44810 OPC_SwitchType , 18, MVT::v4i32,
44811 OPC_EmitMergeInputChains1_0,
44812 OPC_EmitInteger32, 0,
44813 OPC_EmitRegisterI32, 0 ,
44814 OPC_EmitRegisterI32, 0 ,
44815 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44816 MVT::v4i32, 5, 1, 2, 3, 4, 5,
44817 18, MVT::v4f32,
44818 OPC_EmitMergeInputChains1_0,
44819 OPC_EmitInteger32, 0,
44820 OPC_EmitRegisterI32, 0 ,
44821 OPC_EmitRegisterI32, 0 ,
44822 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44823 MVT::v4f32, 5, 1, 2, 3, 4, 5,
44824 0,
44825 45,
44826 OPC_CheckInteger, 2,
44827 OPC_MoveParent,
44828 OPC_SwitchType , 18, MVT::v4i32,
44829 OPC_EmitMergeInputChains1_0,
44830 OPC_EmitInteger32, 0,
44831 OPC_EmitRegisterI32, 0 ,
44832 OPC_EmitRegisterI32, 0 ,
44833 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44834 MVT::v4i32, 5, 1, 2, 3, 4, 5,
44835 18, MVT::v4f32,
44836 OPC_EmitMergeInputChains1_0,
44837 OPC_EmitInteger32, 0,
44838 OPC_EmitRegisterI32, 0 ,
44839 OPC_EmitRegisterI32, 0 ,
44840 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44841 MVT::v4f32, 5, 1, 2, 3, 4, 5,
44842 0,
44843 0,
44844 97,
44845 OPC_CheckInteger, 4,
44846 OPC_MoveSibling6,
44847 OPC_Scope, 45,
44848 OPC_CheckInteger, 0,
44849 OPC_MoveParent,
44850 OPC_SwitchType , 18, MVT::v4i32,
44851 OPC_EmitMergeInputChains1_0,
44852 OPC_EmitInteger32, 0,
44853 OPC_EmitRegisterI32, 0 ,
44854 OPC_EmitRegisterI32, 0 ,
44855 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
44856 MVT::v4i32, 5, 1, 2, 3, 4, 5,
44857 18, MVT::v4f32,
44858 OPC_EmitMergeInputChains1_0,
44859 OPC_EmitInteger32, 0,
44860 OPC_EmitRegisterI32, 0 ,
44861 OPC_EmitRegisterI32, 0 ,
44862 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
44863 MVT::v4f32, 5, 1, 2, 3, 4, 5,
44864 0,
44865 45,
44866 OPC_CheckInteger, 2,
44867 OPC_MoveParent,
44868 OPC_SwitchType , 18, MVT::v4i32,
44869 OPC_EmitMergeInputChains1_0,
44870 OPC_EmitInteger32, 0,
44871 OPC_EmitRegisterI32, 0 ,
44872 OPC_EmitRegisterI32, 0 ,
44873 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
44874 MVT::v4i32, 5, 1, 2, 3, 4, 5,
44875 18, MVT::v4f32,
44876 OPC_EmitMergeInputChains1_0,
44877 OPC_EmitInteger32, 0,
44878 OPC_EmitRegisterI32, 0 ,
44879 OPC_EmitRegisterI32, 0 ,
44880 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
44881 MVT::v4f32, 5, 1, 2, 3, 4, 5,
44882 0,
44883 0,
44884 0,
44885 0,
44886 116,
44887 OPC_CheckChild3Type, MVT::v2i64,
44888 OPC_CheckChild4Integer, 0|128,1,
44889 OPC_MoveChild5,
44890 OPC_Scope, 53,
44891 OPC_CheckInteger, 0,
44892 OPC_MoveSibling6,
44893 OPC_Scope, 23,
44894 OPC_CheckInteger, 0,
44895 OPC_MoveParent,
44896 OPC_CheckType, MVT::v2i64,
44897 OPC_EmitMergeInputChains1_0,
44898 OPC_EmitInteger32, 0,
44899 OPC_EmitRegisterI32, 0 ,
44900 OPC_EmitRegisterI32, 0 ,
44901 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44902 MVT::v2i64, 5, 1, 2, 3, 4, 5,
44903 23,
44904 OPC_CheckInteger, 2,
44905 OPC_MoveParent,
44906 OPC_CheckType, MVT::v2i64,
44907 OPC_EmitMergeInputChains1_0,
44908 OPC_EmitInteger32, 0,
44909 OPC_EmitRegisterI32, 0 ,
44910 OPC_EmitRegisterI32, 0 ,
44911 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
44912 MVT::v2i64, 5, 1, 2, 3, 4, 5,
44913 0,
44914 53,
44915 OPC_CheckInteger, 6,
44916 OPC_MoveSibling6,
44917 OPC_Scope, 23,
44918 OPC_CheckInteger, 0,
44919 OPC_MoveParent,
44920 OPC_CheckType, MVT::v2i64,
44921 OPC_EmitMergeInputChains1_0,
44922 OPC_EmitInteger32, 0,
44923 OPC_EmitRegisterI32, 0 ,
44924 OPC_EmitRegisterI32, 0 ,
44925 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_rq), 0|OPFL_Chain|OPFL_MemRefs,
44926 MVT::v2i64, 5, 1, 2, 3, 4, 5,
44927 23,
44928 OPC_CheckInteger, 2,
44929 OPC_MoveParent,
44930 OPC_CheckType, MVT::v2i64,
44931 OPC_EmitMergeInputChains1_0,
44932 OPC_EmitInteger32, 0,
44933 OPC_EmitRegisterI32, 0 ,
44934 OPC_EmitRegisterI32, 0 ,
44935 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_rq), 0|OPFL_Chain|OPFL_MemRefs,
44936 MVT::v2i64, 5, 1, 2, 3, 4, 5,
44937 0,
44938 0,
44939 0,
44940 68|128,6,
44941 OPC_CheckChild1Integer, 96|128,51,
44942 OPC_RecordChild2,
44943 OPC_CheckChild2TypeI32,
44944 OPC_RecordChild3,
44945 OPC_Scope, 60,
44946 OPC_CheckChild3Type, MVT::v16i8,
44947 OPC_CheckChild4Integer, 16,
44948 OPC_MoveChild5,
44949 OPC_CheckInteger, 0,
44950 OPC_MoveSibling6,
44951 OPC_Scope, 24,
44952 OPC_CheckInteger, 2,
44953 OPC_MoveParent,
44954 OPC_RecordChild7,
44955 OPC_CheckChild7Type, MVT::v16i1,
44956 OPC_CheckType, MVT::v16i8,
44957 OPC_EmitMergeInputChains1_0,
44958 OPC_EmitInteger32, 2,
44959 OPC_EmitRegisterI32, 0 ,
44960 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8_rq), 0|OPFL_Chain|OPFL_MemRefs,
44961 MVT::v16i8, 5, 1, 2, 4, 3, 5,
44962 24,
44963 OPC_CheckInteger, 0,
44964 OPC_MoveParent,
44965 OPC_RecordChild7,
44966 OPC_CheckChild7Type, MVT::v16i1,
44967 OPC_CheckType, MVT::v16i8,
44968 OPC_EmitMergeInputChains1_0,
44969 OPC_EmitInteger32, 2,
44970 OPC_EmitRegisterI32, 0 ,
44971 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8_rq), 0|OPFL_Chain|OPFL_MemRefs,
44972 MVT::v16i8, 5, 1, 2, 4, 3, 5,
44973 0,
44974 6|128,2,
44975 OPC_CheckChild3Type, MVT::v8i16,
44976 OPC_Scope, 58,
44977 OPC_CheckChild4Integer, 16,
44978 OPC_MoveChild5,
44979 OPC_CheckInteger, 0,
44980 OPC_MoveSibling6,
44981 OPC_Scope, 24,
44982 OPC_CheckInteger, 2,
44983 OPC_MoveParent,
44984 OPC_RecordChild7,
44985 OPC_CheckChild7Type, MVT::v8i1,
44986 OPC_CheckType, MVT::v8i16,
44987 OPC_EmitMergeInputChains1_0,
44988 OPC_EmitInteger32, 2,
44989 OPC_EmitRegisterI32, 0 ,
44990 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU16_rq), 0|OPFL_Chain|OPFL_MemRefs,
44991 MVT::v8i16, 5, 1, 2, 4, 3, 5,
44992 24,
44993 OPC_CheckInteger, 0,
44994 OPC_MoveParent,
44995 OPC_RecordChild7,
44996 OPC_CheckChild7Type, MVT::v8i1,
44997 OPC_CheckType, MVT::v8i16,
44998 OPC_EmitMergeInputChains1_0,
44999 OPC_EmitInteger32, 2,
45000 OPC_EmitRegisterI32, 0 ,
45001 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBS16_rq), 0|OPFL_Chain|OPFL_MemRefs,
45002 MVT::v8i16, 5, 1, 2, 4, 3, 5,
45003 0,
45004 69|128,1,
45005 OPC_CheckChild4Integer, 32,
45006 OPC_MoveChild5,
45007 OPC_Scope, 95,
45008 OPC_CheckInteger, 0,
45009 OPC_MoveSibling6,
45010 OPC_Scope, 44,
45011 OPC_CheckInteger, 0,
45012 OPC_MoveParent,
45013 OPC_RecordChild7,
45014 OPC_CheckChild7Type, MVT::v8i1,
45015 OPC_SwitchType , 16, MVT::v8i16,
45016 OPC_EmitMergeInputChains1_0,
45017 OPC_EmitInteger32, 2,
45018 OPC_EmitRegisterI32, 0 ,
45019 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45020 MVT::v8i16, 5, 1, 2, 4, 3, 5,
45021 16, MVT::v8f16,
45022 OPC_EmitMergeInputChains1_0,
45023 OPC_EmitInteger32, 2,
45024 OPC_EmitRegisterI32, 0 ,
45025 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45026 MVT::v8f16, 5, 1, 2, 4, 3, 5,
45027 0,
45028 44,
45029 OPC_CheckInteger, 2,
45030 OPC_MoveParent,
45031 OPC_RecordChild7,
45032 OPC_CheckChild7Type, MVT::v8i1,
45033 OPC_SwitchType , 16, MVT::v8i16,
45034 OPC_EmitMergeInputChains1_0,
45035 OPC_EmitInteger32, 2,
45036 OPC_EmitRegisterI32, 0 ,
45037 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45038 MVT::v8i16, 5, 1, 2, 4, 3, 5,
45039 16, MVT::v8f16,
45040 OPC_EmitMergeInputChains1_0,
45041 OPC_EmitInteger32, 2,
45042 OPC_EmitRegisterI32, 0 ,
45043 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45044 MVT::v8f16, 5, 1, 2, 4, 3, 5,
45045 0,
45046 0,
45047 95,
45048 OPC_CheckInteger, 2,
45049 OPC_MoveSibling6,
45050 OPC_Scope, 44,
45051 OPC_CheckInteger, 0,
45052 OPC_MoveParent,
45053 OPC_RecordChild7,
45054 OPC_CheckChild7Type, MVT::v8i1,
45055 OPC_SwitchType , 16, MVT::v8i16,
45056 OPC_EmitMergeInputChains1_0,
45057 OPC_EmitInteger32, 2,
45058 OPC_EmitRegisterI32, 0 ,
45059 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq), 0|OPFL_Chain|OPFL_MemRefs,
45060 MVT::v8i16, 5, 1, 2, 4, 3, 5,
45061 16, MVT::v8f16,
45062 OPC_EmitMergeInputChains1_0,
45063 OPC_EmitInteger32, 2,
45064 OPC_EmitRegisterI32, 0 ,
45065 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq), 0|OPFL_Chain|OPFL_MemRefs,
45066 MVT::v8f16, 5, 1, 2, 4, 3, 5,
45067 0,
45068 44,
45069 OPC_CheckInteger, 2,
45070 OPC_MoveParent,
45071 OPC_RecordChild7,
45072 OPC_CheckChild7Type, MVT::v8i1,
45073 OPC_SwitchType , 16, MVT::v8i16,
45074 OPC_EmitMergeInputChains1_0,
45075 OPC_EmitInteger32, 2,
45076 OPC_EmitRegisterI32, 0 ,
45077 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq), 0|OPFL_Chain|OPFL_MemRefs,
45078 MVT::v8i16, 5, 1, 2, 4, 3, 5,
45079 16, MVT::v8f16,
45080 OPC_EmitMergeInputChains1_0,
45081 OPC_EmitInteger32, 2,
45082 OPC_EmitRegisterI32, 0 ,
45083 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16_rq), 0|OPFL_Chain|OPFL_MemRefs,
45084 MVT::v8f16, 5, 1, 2, 4, 3, 5,
45085 0,
45086 0,
45087 0,
45088 0,
45089 124|128,2,
45090 OPC_CheckChild3Type, MVT::v4i32,
45091 OPC_Scope, 58,
45092 OPC_CheckChild4Integer, 16,
45093 OPC_MoveChild5,
45094 OPC_CheckInteger, 0,
45095 OPC_MoveSibling6,
45096 OPC_Scope, 24,
45097 OPC_CheckInteger, 2,
45098 OPC_MoveParent,
45099 OPC_RecordChild7,
45100 OPC_CheckChild7Type, MVT::v4i1,
45101 OPC_CheckType, MVT::v4i32,
45102 OPC_EmitMergeInputChains1_0,
45103 OPC_EmitInteger32, 2,
45104 OPC_EmitRegisterI32, 0 ,
45105 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
45106 MVT::v4i32, 5, 1, 2, 4, 3, 5,
45107 24,
45108 OPC_CheckInteger, 0,
45109 OPC_MoveParent,
45110 OPC_RecordChild7,
45111 OPC_CheckChild7Type, MVT::v4i1,
45112 OPC_CheckType, MVT::v4i32,
45113 OPC_EmitMergeInputChains1_0,
45114 OPC_EmitInteger32, 2,
45115 OPC_EmitRegisterI32, 0 ,
45116 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBS32_rq), 0|OPFL_Chain|OPFL_MemRefs,
45117 MVT::v4i32, 5, 1, 2, 4, 3, 5,
45118 0,
45119 117,
45120 OPC_CheckChild4Integer, 32,
45121 OPC_MoveChild5,
45122 OPC_Scope, 55,
45123 OPC_CheckInteger, 0,
45124 OPC_MoveSibling6,
45125 OPC_Scope, 24,
45126 OPC_CheckInteger, 2,
45127 OPC_MoveParent,
45128 OPC_RecordChild7,
45129 OPC_CheckChild7Type, MVT::v4i1,
45130 OPC_CheckType, MVT::v4i32,
45131 OPC_EmitMergeInputChains1_0,
45132 OPC_EmitInteger32, 2,
45133 OPC_EmitRegisterI32, 0 ,
45134 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45135 MVT::v4i32, 5, 1, 2, 4, 3, 5,
45136 24,
45137 OPC_CheckInteger, 0,
45138 OPC_MoveParent,
45139 OPC_RecordChild7,
45140 OPC_CheckChild7Type, MVT::v4i1,
45141 OPC_CheckType, MVT::v4i32,
45142 OPC_EmitMergeInputChains1_0,
45143 OPC_EmitInteger32, 2,
45144 OPC_EmitRegisterI32, 0 ,
45145 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHS32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45146 MVT::v4i32, 5, 1, 2, 4, 3, 5,
45147 0,
45148 55,
45149 OPC_CheckInteger, 2,
45150 OPC_MoveSibling6,
45151 OPC_Scope, 24,
45152 OPC_CheckInteger, 2,
45153 OPC_MoveParent,
45154 OPC_RecordChild7,
45155 OPC_CheckChild7Type, MVT::v4i1,
45156 OPC_CheckType, MVT::v4i32,
45157 OPC_EmitMergeInputChains1_0,
45158 OPC_EmitInteger32, 2,
45159 OPC_EmitRegisterI32, 0 ,
45160 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
45161 MVT::v4i32, 5, 1, 2, 4, 3, 5,
45162 24,
45163 OPC_CheckInteger, 0,
45164 OPC_MoveParent,
45165 OPC_RecordChild7,
45166 OPC_CheckChild7Type, MVT::v4i1,
45167 OPC_CheckType, MVT::v4i32,
45168 OPC_EmitMergeInputChains1_0,
45169 OPC_EmitInteger32, 2,
45170 OPC_EmitRegisterI32, 0 ,
45171 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHS32_rq), 0|OPFL_Chain|OPFL_MemRefs,
45172 MVT::v4i32, 5, 1, 2, 4, 3, 5,
45173 0,
45174 0,
45175 69|128,1,
45176 OPC_CheckChild4Integer, 64,
45177 OPC_MoveChild5,
45178 OPC_Scope, 95,
45179 OPC_CheckInteger, 0,
45180 OPC_MoveSibling6,
45181 OPC_Scope, 44,
45182 OPC_CheckInteger, 0,
45183 OPC_MoveParent,
45184 OPC_RecordChild7,
45185 OPC_CheckChild7Type, MVT::v4i1,
45186 OPC_SwitchType , 16, MVT::v4i32,
45187 OPC_EmitMergeInputChains1_0,
45188 OPC_EmitInteger32, 2,
45189 OPC_EmitRegisterI32, 0 ,
45190 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45191 MVT::v4i32, 5, 1, 2, 4, 3, 5,
45192 16, MVT::v4f32,
45193 OPC_EmitMergeInputChains1_0,
45194 OPC_EmitInteger32, 2,
45195 OPC_EmitRegisterI32, 0 ,
45196 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45197 MVT::v4f32, 5, 1, 2, 4, 3, 5,
45198 0,
45199 44,
45200 OPC_CheckInteger, 2,
45201 OPC_MoveParent,
45202 OPC_RecordChild7,
45203 OPC_CheckChild7Type, MVT::v4i1,
45204 OPC_SwitchType , 16, MVT::v4i32,
45205 OPC_EmitMergeInputChains1_0,
45206 OPC_EmitInteger32, 2,
45207 OPC_EmitRegisterI32, 0 ,
45208 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45209 MVT::v4i32, 5, 1, 2, 4, 3, 5,
45210 16, MVT::v4f32,
45211 OPC_EmitMergeInputChains1_0,
45212 OPC_EmitInteger32, 2,
45213 OPC_EmitRegisterI32, 0 ,
45214 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45215 MVT::v4f32, 5, 1, 2, 4, 3, 5,
45216 0,
45217 0,
45218 95,
45219 OPC_CheckInteger, 4,
45220 OPC_MoveSibling6,
45221 OPC_Scope, 44,
45222 OPC_CheckInteger, 0,
45223 OPC_MoveParent,
45224 OPC_RecordChild7,
45225 OPC_CheckChild7Type, MVT::v4i1,
45226 OPC_SwitchType , 16, MVT::v4i32,
45227 OPC_EmitMergeInputChains1_0,
45228 OPC_EmitInteger32, 2,
45229 OPC_EmitRegisterI32, 0 ,
45230 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
45231 MVT::v4i32, 5, 1, 2, 4, 3, 5,
45232 16, MVT::v4f32,
45233 OPC_EmitMergeInputChains1_0,
45234 OPC_EmitInteger32, 2,
45235 OPC_EmitRegisterI32, 0 ,
45236 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
45237 MVT::v4f32, 5, 1, 2, 4, 3, 5,
45238 0,
45239 44,
45240 OPC_CheckInteger, 2,
45241 OPC_MoveParent,
45242 OPC_RecordChild7,
45243 OPC_CheckChild7Type, MVT::v4i1,
45244 OPC_SwitchType , 16, MVT::v4i32,
45245 OPC_EmitMergeInputChains1_0,
45246 OPC_EmitInteger32, 2,
45247 OPC_EmitRegisterI32, 0 ,
45248 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
45249 MVT::v4i32, 5, 1, 2, 4, 3, 5,
45250 16, MVT::v4f32,
45251 OPC_EmitMergeInputChains1_0,
45252 OPC_EmitInteger32, 2,
45253 OPC_EmitRegisterI32, 0 ,
45254 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_rq), 0|OPFL_Chain|OPFL_MemRefs,
45255 MVT::v4f32, 5, 1, 2, 4, 3, 5,
45256 0,
45257 0,
45258 0,
45259 0,
45260 120,
45261 OPC_CheckChild3Type, MVT::v2i64,
45262 OPC_CheckChild4Integer, 0|128,1,
45263 OPC_MoveChild5,
45264 OPC_Scope, 55,
45265 OPC_CheckInteger, 0,
45266 OPC_MoveSibling6,
45267 OPC_Scope, 24,
45268 OPC_CheckInteger, 0,
45269 OPC_MoveParent,
45270 OPC_RecordChild7,
45271 OPC_CheckChild7Type, MVT::v2i1,
45272 OPC_CheckType, MVT::v2i64,
45273 OPC_EmitMergeInputChains1_0,
45274 OPC_EmitInteger32, 2,
45275 OPC_EmitRegisterI32, 0 ,
45276 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45277 MVT::v2i64, 5, 1, 2, 4, 3, 5,
45278 24,
45279 OPC_CheckInteger, 2,
45280 OPC_MoveParent,
45281 OPC_RecordChild7,
45282 OPC_CheckChild7Type, MVT::v2i1,
45283 OPC_CheckType, MVT::v2i64,
45284 OPC_EmitMergeInputChains1_0,
45285 OPC_EmitInteger32, 2,
45286 OPC_EmitRegisterI32, 0 ,
45287 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_rq_u), 0|OPFL_Chain|OPFL_MemRefs,
45288 MVT::v2i64, 5, 1, 2, 4, 3, 5,
45289 0,
45290 55,
45291 OPC_CheckInteger, 6,
45292 OPC_MoveSibling6,
45293 OPC_Scope, 24,
45294 OPC_CheckInteger, 0,
45295 OPC_MoveParent,
45296 OPC_RecordChild7,
45297 OPC_CheckChild7Type, MVT::v2i1,
45298 OPC_CheckType, MVT::v2i64,
45299 OPC_EmitMergeInputChains1_0,
45300 OPC_EmitInteger32, 2,
45301 OPC_EmitRegisterI32, 0 ,
45302 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_rq), 0|OPFL_Chain|OPFL_MemRefs,
45303 MVT::v2i64, 5, 1, 2, 4, 3, 5,
45304 24,
45305 OPC_CheckInteger, 2,
45306 OPC_MoveParent,
45307 OPC_RecordChild7,
45308 OPC_CheckChild7Type, MVT::v2i1,
45309 OPC_CheckType, MVT::v2i64,
45310 OPC_EmitMergeInputChains1_0,
45311 OPC_EmitInteger32, 2,
45312 OPC_EmitRegisterI32, 0 ,
45313 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_rq), 0|OPFL_Chain|OPFL_MemRefs,
45314 MVT::v2i64, 5, 1, 2, 4, 3, 5,
45315 0,
45316 0,
45317 0,
45318 112,
45319 OPC_CheckChild1Integer, 86|128,51,
45320 OPC_RecordChild2,
45321 OPC_Scope, 52,
45322 OPC_CheckChild2Type, MVT::v4i32,
45323 OPC_RecordChild3,
45324 OPC_MoveChild3,
45325 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
45326 OPC_MoveParent,
45327 OPC_SwitchType , 19, MVT::v4i32,
45328 OPC_EmitMergeInputChains1_0,
45329 OPC_EmitConvertToTarget2,
45330 OPC_EmitInteger32, 0,
45331 OPC_EmitRegisterI32, 0 ,
45332 OPC_EmitRegisterI32, 0 ,
45333 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_qi), 0|OPFL_Chain|OPFL_MemRefs,
45334 MVT::v4i32, 5, 1, 3, 4, 5, 6,
45335 19, MVT::v4f32,
45336 OPC_EmitMergeInputChains1_0,
45337 OPC_EmitConvertToTarget2,
45338 OPC_EmitInteger32, 0,
45339 OPC_EmitRegisterI32, 0 ,
45340 OPC_EmitRegisterI32, 0 ,
45341 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_qi), 0|OPFL_Chain|OPFL_MemRefs,
45342 MVT::v4f32, 5, 1, 3, 4, 5, 6,
45343 0,
45344 52,
45345 OPC_CheckChild2Type, MVT::v2i64,
45346 OPC_RecordChild3,
45347 OPC_MoveChild3,
45348 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
45349 OPC_MoveParent,
45350 OPC_SwitchType , 19, MVT::v2i64,
45351 OPC_EmitMergeInputChains1_0,
45352 OPC_EmitConvertToTarget2,
45353 OPC_EmitInteger32, 0,
45354 OPC_EmitRegisterI32, 0 ,
45355 OPC_EmitRegisterI32, 0 ,
45356 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_qi), 0|OPFL_Chain|OPFL_MemRefs,
45357 MVT::v2i64, 5, 1, 3, 4, 5, 6,
45358 19, MVT::v2f64,
45359 OPC_EmitMergeInputChains1_0,
45360 OPC_EmitConvertToTarget2,
45361 OPC_EmitInteger32, 0,
45362 OPC_EmitRegisterI32, 0 ,
45363 OPC_EmitRegisterI32, 0 ,
45364 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_qi), 0|OPFL_Chain|OPFL_MemRefs,
45365 MVT::v2f64, 5, 1, 3, 4, 5, 6,
45366 0,
45367 0,
45368 110,
45369 OPC_CheckChild1Integer, 88|128,51,
45370 OPC_RecordChild2,
45371 OPC_Scope, 51,
45372 OPC_CheckChild2Type, MVT::v4i32,
45373 OPC_RecordChild3,
45374 OPC_MoveChild3,
45375 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
45376 OPC_MoveParent,
45377 OPC_RecordChild4,
45378 OPC_CheckChild4Type, MVT::v4i1,
45379 OPC_SwitchType , 17, MVT::v4i32,
45380 OPC_EmitMergeInputChains1_0,
45381 OPC_EmitConvertToTarget2,
45382 OPC_EmitInteger32, 2,
45383 OPC_EmitRegisterI32, 0 ,
45384 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_qi), 0|OPFL_Chain|OPFL_MemRefs,
45385 MVT::v4i32, 5, 1, 4, 5, 3, 6,
45386 17, MVT::v4f32,
45387 OPC_EmitMergeInputChains1_0,
45388 OPC_EmitConvertToTarget2,
45389 OPC_EmitInteger32, 2,
45390 OPC_EmitRegisterI32, 0 ,
45391 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32_qi), 0|OPFL_Chain|OPFL_MemRefs,
45392 MVT::v4f32, 5, 1, 4, 5, 3, 6,
45393 0,
45394 51,
45395 OPC_CheckChild2Type, MVT::v2i64,
45396 OPC_RecordChild3,
45397 OPC_MoveChild3,
45398 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
45399 OPC_MoveParent,
45400 OPC_RecordChild4,
45401 OPC_CheckChild4Type, MVT::v2i1,
45402 OPC_SwitchType , 17, MVT::v2i64,
45403 OPC_EmitMergeInputChains1_0,
45404 OPC_EmitConvertToTarget2,
45405 OPC_EmitInteger32, 2,
45406 OPC_EmitRegisterI32, 0 ,
45407 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_qi), 0|OPFL_Chain|OPFL_MemRefs,
45408 MVT::v2i64, 5, 1, 4, 5, 3, 6,
45409 17, MVT::v2f64,
45410 OPC_EmitMergeInputChains1_0,
45411 OPC_EmitConvertToTarget2,
45412 OPC_EmitInteger32, 2,
45413 OPC_EmitRegisterI32, 0 ,
45414 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRDU64_qi), 0|OPFL_Chain|OPFL_MemRefs,
45415 MVT::v2f64, 5, 1, 4, 5, 3, 6,
45416 0,
45417 0,
45418 126,
45419 OPC_CheckChild1Integer, 110|128,52,
45420 OPC_RecordChild2,
45421 OPC_Scope, 59,
45422 OPC_CheckChild2Type, MVT::v4i32,
45423 OPC_RecordChild3,
45424 OPC_MoveChild3,
45425 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
45426 OPC_MoveParent,
45427 OPC_RecordChild4,
45428 OPC_CheckType, MVT::v4i32,
45429 OPC_Scope, 22,
45430 OPC_CheckChild4Type, MVT::v4i32,
45431 OPC_EmitMergeInputChains1_0,
45432 OPC_EmitConvertToTarget2,
45433 OPC_EmitInteger32, 0,
45434 OPC_EmitRegisterI32, 0 ,
45435 OPC_EmitRegisterI32, 0 ,
45436 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRW32_qi_pre), 0|OPFL_Chain|OPFL_MemRefs,
45437 MVT::v4i32, 6, 3, 1, 4, 5, 6, 7,
45438 22,
45439 OPC_CheckChild4Type, MVT::v4f32,
45440 OPC_EmitMergeInputChains1_0,
45441 OPC_EmitConvertToTarget2,
45442 OPC_EmitInteger32, 0,
45443 OPC_EmitRegisterI32, 0 ,
45444 OPC_EmitRegisterI32, 0 ,
45445 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRW32_qi_pre), 0|OPFL_Chain|OPFL_MemRefs,
45446 MVT::v4i32, 6, 3, 1, 4, 5, 6, 7,
45447 0,
45448 59,
45449 OPC_CheckChild2Type, MVT::v2i64,
45450 OPC_RecordChild3,
45451 OPC_MoveChild3,
45452 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
45453 OPC_MoveParent,
45454 OPC_RecordChild4,
45455 OPC_CheckType, MVT::v2i64,
45456 OPC_Scope, 22,
45457 OPC_CheckChild4Type, MVT::v2i64,
45458 OPC_EmitMergeInputChains1_0,
45459 OPC_EmitConvertToTarget2,
45460 OPC_EmitInteger32, 0,
45461 OPC_EmitRegisterI32, 0 ,
45462 OPC_EmitRegisterI32, 0 ,
45463 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRD64_qi_pre), 0|OPFL_Chain|OPFL_MemRefs,
45464 MVT::v2i64, 6, 3, 1, 4, 5, 6, 7,
45465 22,
45466 OPC_CheckChild4Type, MVT::v2f64,
45467 OPC_EmitMergeInputChains1_0,
45468 OPC_EmitConvertToTarget2,
45469 OPC_EmitInteger32, 0,
45470 OPC_EmitRegisterI32, 0 ,
45471 OPC_EmitRegisterI32, 0 ,
45472 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRD64_qi_pre), 0|OPFL_Chain|OPFL_MemRefs,
45473 MVT::v2i64, 6, 3, 1, 4, 5, 6, 7,
45474 0,
45475 0,
45476 2|128,1,
45477 OPC_CheckChild1Integer, 112|128,52,
45478 OPC_RecordChild2,
45479 OPC_Scope, 61,
45480 OPC_CheckChild2Type, MVT::v4i32,
45481 OPC_RecordChild3,
45482 OPC_MoveChild3,
45483 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
45484 OPC_MoveParent,
45485 OPC_RecordChild4,
45486 OPC_CheckType, MVT::v4i32,
45487 OPC_Scope, 23,
45488 OPC_CheckChild4Type, MVT::v4i32,
45489 OPC_RecordChild5,
45490 OPC_CheckChild5Type, MVT::v4i1,
45491 OPC_EmitMergeInputChains1_0,
45492 OPC_EmitConvertToTarget2,
45493 OPC_EmitInteger32, 2,
45494 OPC_EmitRegisterI32, 0 ,
45495 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRW32_qi_pre), 0|OPFL_Chain|OPFL_MemRefs,
45496 MVT::v4i32, 6, 3, 1, 5, 6, 4, 7,
45497 23,
45498 OPC_CheckChild4Type, MVT::v4f32,
45499 OPC_RecordChild5,
45500 OPC_CheckChild5Type, MVT::v4i1,
45501 OPC_EmitMergeInputChains1_0,
45502 OPC_EmitConvertToTarget2,
45503 OPC_EmitInteger32, 2,
45504 OPC_EmitRegisterI32, 0 ,
45505 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRW32_qi_pre), 0|OPFL_Chain|OPFL_MemRefs,
45506 MVT::v4i32, 6, 3, 1, 5, 6, 4, 7,
45507 0,
45508 61,
45509 OPC_CheckChild2Type, MVT::v2i64,
45510 OPC_RecordChild3,
45511 OPC_MoveChild3,
45512 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
45513 OPC_MoveParent,
45514 OPC_RecordChild4,
45515 OPC_CheckType, MVT::v2i64,
45516 OPC_Scope, 23,
45517 OPC_CheckChild4Type, MVT::v2i64,
45518 OPC_RecordChild5,
45519 OPC_CheckChild5Type, MVT::v2i1,
45520 OPC_EmitMergeInputChains1_0,
45521 OPC_EmitConvertToTarget2,
45522 OPC_EmitInteger32, 2,
45523 OPC_EmitRegisterI32, 0 ,
45524 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRD64_qi_pre), 0|OPFL_Chain|OPFL_MemRefs,
45525 MVT::v2i64, 6, 3, 1, 5, 6, 4, 7,
45526 23,
45527 OPC_CheckChild4Type, MVT::v2f64,
45528 OPC_RecordChild5,
45529 OPC_CheckChild5Type, MVT::v2i1,
45530 OPC_EmitMergeInputChains1_0,
45531 OPC_EmitConvertToTarget2,
45532 OPC_EmitInteger32, 2,
45533 OPC_EmitRegisterI32, 0 ,
45534 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRD64_qi_pre), 0|OPFL_Chain|OPFL_MemRefs,
45535 MVT::v2i64, 6, 3, 1, 5, 6, 4, 7,
45536 0,
45537 0,
45538 0,
45539 0,
45540 112, TARGET_VAL(ARMISD::BR_JT),
45541 OPC_RecordNode,
45542 OPC_Scope, 78,
45543 OPC_MoveChild1,
45544 OPC_SwitchOpcode , 52, TARGET_VAL(ISD::LOAD),
45545 OPC_RecordMemRef,
45546 OPC_RecordNode,
45547 OPC_CheckFoldableChainNode,
45548 OPC_RecordChild1,
45549 OPC_CheckChild1TypeI32,
45550 OPC_CheckPredicate, 27,
45551 OPC_CheckPredicate, 17,
45552 OPC_CheckTypeI32,
45553 OPC_MoveSibling2,
45554 OPC_CheckOpcode, TARGET_VAL(ISD::TargetJumpTable),
45555 OPC_RecordNode,
45556 OPC_MoveParent,
45557 OPC_CheckPatternPredicate3,
45558 OPC_Scope, 16,
45559 OPC_CheckComplexPat, /*CP*/19, /*#*/2,
45560 OPC_EmitMergeInputChains, 2, 0, 1,
45561 OPC_MorphNodeTo0, TARGET_VAL(ARM::BR_JTm_rs), 0|OPFL_Chain|OPFL_MemRefs,
45562 4, 4, 5, 6, 3,
45563 15,
45564 OPC_CheckComplexPat, /*CP*/20, /*#*/2,
45565 OPC_EmitMergeInputChains, 2, 0, 1,
45566 OPC_MorphNodeTo0, TARGET_VAL(ARM::BR_JTm_i12), 0|OPFL_Chain|OPFL_MemRefs,
45567 3, 4, 5, 3,
45568 0,
45569 17, TARGET_VAL(ISD::ADD),
45570 OPC_RecordChild0,
45571 OPC_RecordChild1,
45572 OPC_MoveSibling2,
45573 OPC_CheckOpcode, TARGET_VAL(ISD::TargetJumpTable),
45574 OPC_RecordNode,
45575 OPC_MoveParent,
45576 OPC_CheckPatternPredicate3,
45577 OPC_EmitMergeInputChains1_0,
45578 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::BR_JTadd),
45579 3, 1, 2, 3,
45580 0,
45581 29,
45582 OPC_RecordChild1,
45583 OPC_CheckChild1TypeI32,
45584 OPC_RecordChild2,
45585 OPC_MoveChild2,
45586 OPC_CheckOpcode, TARGET_VAL(ISD::TargetJumpTable),
45587 OPC_MoveParent,
45588 OPC_Scope, 8,
45589 OPC_CheckPatternPredicate3,
45590 OPC_EmitMergeInputChains1_0,
45591 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::BR_JTr),
45592 2, 1, 2,
45593 9,
45594 OPC_CheckPatternPredicate, 10,
45595 OPC_EmitMergeInputChains1_0,
45596 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::tBR_JTr),
45597 2, 1, 2,
45598 0,
45599 0,
45600 23|128,14, TARGET_VAL(ISD::XOR),
45601 OPC_Scope, 18|128,1,
45602 OPC_RecordChild0,
45603 OPC_Scope, 66,
45604 OPC_CheckChild1Integer, 3,
45605 OPC_CheckTypeI32,
45606 OPC_Scope, 20,
45607 OPC_CheckPatternPredicate3,
45608 OPC_CheckComplexPat4, /*#*/0,
45609 OPC_EmitInteger32, 28,
45610 OPC_EmitRegisterI32, 0 ,
45611 OPC_EmitRegisterI32, 0 ,
45612 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVNsr),
45613 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
45614 19,
45615 OPC_CheckPatternPredicate4,
45616 OPC_CheckComplexPat7, /*#*/0,
45617 OPC_EmitInteger32, 28,
45618 OPC_EmitRegisterI32, 0 ,
45619 OPC_EmitRegisterI32, 0 ,
45620 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MVNs),
45621 MVT::i32, 5, 1, 2, 3, 4, 5,
45622 19,
45623 OPC_CheckPatternPredicate3,
45624 OPC_CheckComplexPat5, /*#*/0,
45625 OPC_EmitInteger32, 28,
45626 OPC_EmitRegisterI32, 0 ,
45627 OPC_EmitRegisterI32, 0 ,
45628 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVNsi),
45629 MVT::i32, 5, 1, 2, 3, 4, 5,
45630 0,
45631 47,
45632 OPC_RecordChild1,
45633 OPC_CheckTypeI32,
45634 OPC_CheckPatternPredicate3,
45635 OPC_Scope, 20,
45636 OPC_CheckComplexPat4, /*#*/1,
45637 OPC_EmitInteger32, 28,
45638 OPC_EmitRegisterI32, 0 ,
45639 OPC_EmitRegisterI32, 0 ,
45640 OPC_MorphNodeTo1None, TARGET_VAL(ARM::EORrsr),
45641 MVT::i32, 7, 0, 2, 3, 4, 5, 6, 7,
45642 20,
45643 OPC_CheckComplexPat4, /*#*/0,
45644 OPC_EmitInteger32, 28,
45645 OPC_EmitRegisterI32, 0 ,
45646 OPC_EmitRegisterI32, 0 ,
45647 OPC_MorphNodeTo1None, TARGET_VAL(ARM::EORrsr),
45648 MVT::i32, 7, 1, 2, 3, 4, 5, 6, 7,
45649 0,
45650 27,
45651 OPC_MoveChild0,
45652 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
45653 OPC_CheckPredicate, 13,
45654 OPC_MoveParent,
45655 OPC_CheckChild1Integer, 3,
45656 OPC_CheckTypeI32,
45657 OPC_CheckPatternPredicate4,
45658 OPC_EmitConvertToTarget0,
45659 OPC_EmitInteger32, 28,
45660 OPC_EmitRegisterI32, 0 ,
45661 OPC_EmitRegisterI32, 0 ,
45662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MVNi),
45663 MVT::i32, 4, 1, 2, 3, 4,
45664 0,
45665 28,
45666 OPC_CheckChild0Integer, 3,
45667 OPC_RecordChild1,
45668 OPC_MoveChild1,
45669 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
45670 OPC_CheckPredicate, 13,
45671 OPC_MoveParent,
45672 OPC_CheckTypeI32,
45673 OPC_CheckPatternPredicate4,
45674 OPC_EmitConvertToTarget0,
45675 OPC_EmitInteger32, 28,
45676 OPC_EmitRegisterI32, 0 ,
45677 OPC_EmitRegisterI32, 0 ,
45678 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MVNi),
45679 MVT::i32, 4, 1, 2, 3, 4,
45680 92|128,2,
45681 OPC_RecordChild0,
45682 OPC_Scope, 88,
45683 OPC_RecordChild1,
45684 OPC_CheckTypeI32,
45685 OPC_Scope, 20,
45686 OPC_CheckPatternPredicate3,
45687 OPC_CheckComplexPat5, /*#*/1,
45688 OPC_EmitInteger32, 28,
45689 OPC_EmitRegisterI32, 0 ,
45690 OPC_EmitRegisterI32, 0 ,
45691 OPC_MorphNodeTo1None, TARGET_VAL(ARM::EORrsi),
45692 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
45693 20,
45694 OPC_CheckPatternPredicate4,
45695 OPC_CheckComplexPat7, /*#*/1,
45696 OPC_EmitInteger32, 28,
45697 OPC_EmitRegisterI32, 0 ,
45698 OPC_EmitRegisterI32, 0 ,
45699 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2EORrs),
45700 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
45701 20,
45702 OPC_CheckPatternPredicate3,
45703 OPC_CheckComplexPat5, /*#*/0,
45704 OPC_EmitInteger32, 28,
45705 OPC_EmitRegisterI32, 0 ,
45706 OPC_EmitRegisterI32, 0 ,
45707 OPC_MorphNodeTo1None, TARGET_VAL(ARM::EORrsi),
45708 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
45709 20,
45710 OPC_CheckPatternPredicate4,
45711 OPC_CheckComplexPat7, /*#*/0,
45712 OPC_EmitInteger32, 28,
45713 OPC_EmitRegisterI32, 0 ,
45714 OPC_EmitRegisterI32, 0 ,
45715 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2EORrs),
45716 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
45717 0,
45718 57,
45719 OPC_CheckChild1Integer, 3,
45720 OPC_CheckTypeI32,
45721 OPC_Scope, 16,
45722 OPC_CheckPatternPredicate4,
45723 OPC_EmitInteger32, 28,
45724 OPC_EmitRegisterI32, 0 ,
45725 OPC_EmitRegisterI32, 0 ,
45726 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MVNr),
45727 MVT::i32, 4, 0, 1, 2, 3,
45728 16,
45729 OPC_CheckPatternPredicate3,
45730 OPC_EmitInteger32, 28,
45731 OPC_EmitRegisterI32, 0 ,
45732 OPC_EmitRegisterI32, 0 ,
45733 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVNr),
45734 MVT::i32, 4, 0, 1, 2, 3,
45735 17,
45736 OPC_CheckPatternPredicate, 10,
45737 OPC_EmitRegisterI32, ARM::CPSR,
45738 OPC_EmitInteger32, 28,
45739 OPC_EmitRegisterI32, 0 ,
45740 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tMVN),
45741 MVT::i32, 4, 1, 0, 2, 3,
45742 0,
45743 115,
45744 OPC_RecordChild1,
45745 OPC_Scope, 52,
45746 OPC_MoveChild1,
45747 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
45748 OPC_Scope, 22,
45749 OPC_CheckPredicate, 20,
45750 OPC_MoveParent,
45751 OPC_CheckTypeI32,
45752 OPC_CheckPatternPredicate3,
45753 OPC_EmitConvertToTarget1,
45754 OPC_EmitInteger32, 28,
45755 OPC_EmitRegisterI32, 0 ,
45756 OPC_EmitRegisterI32, 0 ,
45757 OPC_MorphNodeTo1None, TARGET_VAL(ARM::EORri),
45758 MVT::i32, 5, 0, 2, 3, 4, 5,
45759 22,
45760 OPC_CheckPredicate, 13,
45761 OPC_MoveParent,
45762 OPC_CheckTypeI32,
45763 OPC_CheckPatternPredicate4,
45764 OPC_EmitConvertToTarget1,
45765 OPC_EmitInteger32, 28,
45766 OPC_EmitRegisterI32, 0 ,
45767 OPC_EmitRegisterI32, 0 ,
45768 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2EORri),
45769 MVT::i32, 5, 0, 2, 3, 4, 5,
45770 0,
45771 58,
45772 OPC_CheckTypeI32,
45773 OPC_Scope, 17,
45774 OPC_CheckPatternPredicate3,
45775 OPC_EmitInteger32, 28,
45776 OPC_EmitRegisterI32, 0 ,
45777 OPC_EmitRegisterI32, 0 ,
45778 OPC_MorphNodeTo1None, TARGET_VAL(ARM::EORrr),
45779 MVT::i32, 5, 0, 1, 2, 3, 4,
45780 18,
45781 OPC_CheckPatternPredicate, 10,
45782 OPC_EmitRegisterI32, ARM::CPSR,
45783 OPC_EmitInteger32, 28,
45784 OPC_EmitRegisterI32, 0 ,
45785 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tEOR),
45786 MVT::i32, 5, 2, 0, 1, 3, 4,
45787 17,
45788 OPC_CheckPatternPredicate4,
45789 OPC_EmitInteger32, 28,
45790 OPC_EmitRegisterI32, 0 ,
45791 OPC_EmitRegisterI32, 0 ,
45792 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2EORrr),
45793 MVT::i32, 5, 0, 1, 2, 3, 4,
45794 0,
45795 0,
45796 81,
45797 OPC_MoveChild1,
45798 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
45799 OPC_RecordChild0,
45800 OPC_Scope, 36,
45801 OPC_CheckChild0Type, MVT::v16i1,
45802 OPC_RecordChild1,
45803 OPC_MoveChild2,
45804 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
45805 OPC_MoveChild0,
45806 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
45807 OPC_CheckChild0Integer, 0,
45808 OPC_CheckType, MVT::v4i32,
45809 OPC_MoveParent,
45810 OPC_MoveParent,
45811 OPC_MoveParent,
45812 OPC_CheckType, MVT::v16i8,
45813 OPC_CheckPatternPredicate0,
45814 OPC_EmitInteger32, 2,
45815 OPC_EmitRegisterI32, 0 ,
45816 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
45817 MVT::v16i8, 6, 0, 2, 3, 1, 4, 0,
45818 36,
45819 OPC_CheckChild0Type, MVT::v8i1,
45820 OPC_RecordChild1,
45821 OPC_MoveChild2,
45822 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
45823 OPC_MoveChild0,
45824 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
45825 OPC_CheckChild0Integer, 0,
45826 OPC_CheckType, MVT::v4i32,
45827 OPC_MoveParent,
45828 OPC_MoveParent,
45829 OPC_MoveParent,
45830 OPC_CheckType, MVT::v8i16,
45831 OPC_CheckPatternPredicate0,
45832 OPC_EmitInteger32, 2,
45833 OPC_EmitRegisterI32, 0 ,
45834 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
45835 MVT::v8i16, 6, 0, 2, 3, 1, 4, 0,
45836 0,
45837 0,
45838 83,
45839 OPC_MoveChild0,
45840 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
45841 OPC_RecordChild0,
45842 OPC_Scope, 37,
45843 OPC_CheckChild0Type, MVT::v16i1,
45844 OPC_RecordChild1,
45845 OPC_MoveChild2,
45846 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
45847 OPC_MoveChild0,
45848 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
45849 OPC_CheckChild0Integer, 0,
45850 OPC_CheckType, MVT::v4i32,
45851 OPC_MoveParent,
45852 OPC_MoveParent,
45853 OPC_MoveParent,
45854 OPC_RecordChild1,
45855 OPC_CheckType, MVT::v16i8,
45856 OPC_CheckPatternPredicate0,
45857 OPC_EmitInteger32, 2,
45858 OPC_EmitRegisterI32, 0 ,
45859 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
45860 MVT::v16i8, 6, 2, 1, 3, 0, 4, 2,
45861 37,
45862 OPC_CheckChild0Type, MVT::v8i1,
45863 OPC_RecordChild1,
45864 OPC_MoveChild2,
45865 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
45866 OPC_MoveChild0,
45867 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
45868 OPC_CheckChild0Integer, 0,
45869 OPC_CheckType, MVT::v4i32,
45870 OPC_MoveParent,
45871 OPC_MoveParent,
45872 OPC_MoveParent,
45873 OPC_RecordChild1,
45874 OPC_CheckType, MVT::v8i16,
45875 OPC_CheckPatternPredicate0,
45876 OPC_EmitInteger32, 2,
45877 OPC_EmitRegisterI32, 0 ,
45878 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
45879 MVT::v8i16, 6, 2, 1, 3, 0, 4, 2,
45880 0,
45881 102|128,1,
45882 OPC_RecordChild0,
45883 OPC_MoveChild1,
45884 OPC_SwitchOpcode , 61|128,1, TARGET_VAL(ISD::BITCAST),
45885 OPC_MoveChild0,
45886 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
45887 OPC_CheckChild0Integer, 126|128,59,
45888 OPC_SwitchType , 49, MVT::v8i8,
45889 OPC_MoveParent,
45890 OPC_MoveParent,
45891 OPC_SwitchType , 13, MVT::v2i32,
45892 OPC_CheckPatternPredicate1,
45893 OPC_EmitInteger32, 28,
45894 OPC_EmitRegisterI32, 0 ,
45895 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNd),
45896 MVT::v2i32, 3, 0, 1, 2,
45897 13, MVT::v1i64,
45898 OPC_CheckPatternPredicate1,
45899 OPC_EmitInteger32, 28,
45900 OPC_EmitRegisterI32, 0 ,
45901 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNd),
45902 MVT::v1i64, 3, 0, 1, 2,
45903 13, MVT::v4i16,
45904 OPC_CheckPatternPredicate1,
45905 OPC_EmitInteger32, 28,
45906 OPC_EmitRegisterI32, 0 ,
45907 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNd),
45908 MVT::v4i16, 3, 0, 1, 2,
45909 0,
45910 127, MVT::v16i8,
45911 OPC_MoveParent,
45912 OPC_MoveParent,
45913 OPC_SwitchType , 39, MVT::v4i32,
45914 OPC_Scope, 13,
45915 OPC_CheckPatternPredicate1,
45916 OPC_EmitInteger32, 28,
45917 OPC_EmitRegisterI32, 0 ,
45918 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNq),
45919 MVT::v4i32, 3, 0, 1, 2,
45920 22,
45921 OPC_CheckPatternPredicate0,
45922 OPC_EmitInteger32, 0,
45923 OPC_EmitRegisterI32, 0 ,
45924 OPC_EmitRegisterI32, 0 ,
45925 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
45926 MVT::v4i32, 0,
45927 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
45928 MVT::v4i32, 5, 0, 1, 2, 3, 4,
45929 0,
45930 39, MVT::v2i64,
45931 OPC_Scope, 13,
45932 OPC_CheckPatternPredicate1,
45933 OPC_EmitInteger32, 28,
45934 OPC_EmitRegisterI32, 0 ,
45935 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNq),
45936 MVT::v2i64, 3, 0, 1, 2,
45937 22,
45938 OPC_CheckPatternPredicate0,
45939 OPC_EmitInteger32, 0,
45940 OPC_EmitRegisterI32, 0 ,
45941 OPC_EmitRegisterI32, 0 ,
45942 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
45943 MVT::v4i32, 0,
45944 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
45945 MVT::v2i64, 5, 0, 1, 2, 3, 4,
45946 0,
45947 39, MVT::v8i16,
45948 OPC_Scope, 13,
45949 OPC_CheckPatternPredicate1,
45950 OPC_EmitInteger32, 28,
45951 OPC_EmitRegisterI32, 0 ,
45952 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNq),
45953 MVT::v8i16, 3, 0, 1, 2,
45954 22,
45955 OPC_CheckPatternPredicate0,
45956 OPC_EmitInteger32, 0,
45957 OPC_EmitRegisterI32, 0 ,
45958 OPC_EmitRegisterI32, 0 ,
45959 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
45960 MVT::v4i32, 0,
45961 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
45962 MVT::v8i16, 5, 0, 1, 2, 3, 4,
45963 0,
45964 0,
45965 0,
45966 30, TARGET_VAL(ISD::VSELECT),
45967 OPC_RecordChild0,
45968 OPC_CheckChild0Type, MVT::v4i1,
45969 OPC_RecordChild1,
45970 OPC_MoveChild2,
45971 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
45972 OPC_CheckChild0Integer, 0,
45973 OPC_MoveParent,
45974 OPC_MoveParent,
45975 OPC_CheckType, MVT::v4i32,
45976 OPC_CheckPatternPredicate0,
45977 OPC_EmitInteger32, 2,
45978 OPC_EmitRegisterI32, 0 ,
45979 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
45980 MVT::v4i32, 6, 0, 2, 3, 1, 4, 0,
45981 0,
45982 105|128,1,
45983 OPC_MoveChild0,
45984 OPC_SwitchOpcode , 64|128,1, TARGET_VAL(ISD::BITCAST),
45985 OPC_MoveChild0,
45986 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
45987 OPC_CheckChild0Integer, 126|128,59,
45988 OPC_SwitchType , 50, MVT::v8i8,
45989 OPC_MoveParent,
45990 OPC_MoveParent,
45991 OPC_RecordChild1,
45992 OPC_SwitchType , 13, MVT::v2i32,
45993 OPC_CheckPatternPredicate1,
45994 OPC_EmitInteger32, 28,
45995 OPC_EmitRegisterI32, 0 ,
45996 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNd),
45997 MVT::v2i32, 3, 0, 1, 2,
45998 13, MVT::v1i64,
45999 OPC_CheckPatternPredicate1,
46000 OPC_EmitInteger32, 28,
46001 OPC_EmitRegisterI32, 0 ,
46002 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNd),
46003 MVT::v1i64, 3, 0, 1, 2,
46004 13, MVT::v4i16,
46005 OPC_CheckPatternPredicate1,
46006 OPC_EmitInteger32, 28,
46007 OPC_EmitRegisterI32, 0 ,
46008 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNd),
46009 MVT::v4i16, 3, 0, 1, 2,
46010 0,
46011 0|128,1, MVT::v16i8,
46012 OPC_MoveParent,
46013 OPC_MoveParent,
46014 OPC_RecordChild1,
46015 OPC_SwitchType , 39, MVT::v4i32,
46016 OPC_Scope, 13,
46017 OPC_CheckPatternPredicate1,
46018 OPC_EmitInteger32, 28,
46019 OPC_EmitRegisterI32, 0 ,
46020 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNq),
46021 MVT::v4i32, 3, 0, 1, 2,
46022 22,
46023 OPC_CheckPatternPredicate0,
46024 OPC_EmitInteger32, 0,
46025 OPC_EmitRegisterI32, 0 ,
46026 OPC_EmitRegisterI32, 0 ,
46027 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46028 MVT::v4i32, 0,
46029 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
46030 MVT::v4i32, 5, 0, 1, 2, 3, 4,
46031 0,
46032 39, MVT::v2i64,
46033 OPC_Scope, 13,
46034 OPC_CheckPatternPredicate1,
46035 OPC_EmitInteger32, 28,
46036 OPC_EmitRegisterI32, 0 ,
46037 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNq),
46038 MVT::v2i64, 3, 0, 1, 2,
46039 22,
46040 OPC_CheckPatternPredicate0,
46041 OPC_EmitInteger32, 0,
46042 OPC_EmitRegisterI32, 0 ,
46043 OPC_EmitRegisterI32, 0 ,
46044 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46045 MVT::v4i32, 0,
46046 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
46047 MVT::v2i64, 5, 0, 1, 2, 3, 4,
46048 0,
46049 39, MVT::v8i16,
46050 OPC_Scope, 13,
46051 OPC_CheckPatternPredicate1,
46052 OPC_EmitInteger32, 28,
46053 OPC_EmitRegisterI32, 0 ,
46054 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNq),
46055 MVT::v8i16, 3, 0, 1, 2,
46056 22,
46057 OPC_CheckPatternPredicate0,
46058 OPC_EmitInteger32, 0,
46059 OPC_EmitRegisterI32, 0 ,
46060 OPC_EmitRegisterI32, 0 ,
46061 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46062 MVT::v4i32, 0,
46063 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
46064 MVT::v8i16, 5, 0, 1, 2, 3, 4,
46065 0,
46066 0,
46067 0,
46068 31, TARGET_VAL(ISD::VSELECT),
46069 OPC_RecordChild0,
46070 OPC_CheckChild0Type, MVT::v4i1,
46071 OPC_RecordChild1,
46072 OPC_MoveChild2,
46073 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46074 OPC_CheckChild0Integer, 0,
46075 OPC_MoveParent,
46076 OPC_MoveParent,
46077 OPC_RecordChild1,
46078 OPC_CheckType, MVT::v4i32,
46079 OPC_CheckPatternPredicate0,
46080 OPC_EmitInteger32, 2,
46081 OPC_EmitRegisterI32, 0 ,
46082 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
46083 MVT::v4i32, 6, 2, 1, 3, 0, 4, 2,
46084 0,
46085 24|128,1,
46086 OPC_RecordChild0,
46087 OPC_MoveChild1,
46088 OPC_SwitchOpcode , 62, TARGET_VAL(ARMISD::VMOVIMM),
46089 OPC_CheckChild0Integer, 126|128,59,
46090 OPC_MoveParent,
46091 OPC_SwitchType , 13, MVT::v8i8,
46092 OPC_CheckPatternPredicate1,
46093 OPC_EmitInteger32, 28,
46094 OPC_EmitRegisterI32, 0 ,
46095 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNd),
46096 MVT::v8i8, 3, 0, 1, 2,
46097 39, MVT::v16i8,
46098 OPC_Scope, 13,
46099 OPC_CheckPatternPredicate1,
46100 OPC_EmitInteger32, 28,
46101 OPC_EmitRegisterI32, 0 ,
46102 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNq),
46103 MVT::v16i8, 3, 0, 1, 2,
46104 22,
46105 OPC_CheckPatternPredicate0,
46106 OPC_EmitInteger32, 0,
46107 OPC_EmitRegisterI32, 0 ,
46108 OPC_EmitRegisterI32, 0 ,
46109 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46110 MVT::v4i32, 0,
46111 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
46112 MVT::v16i8, 5, 0, 1, 2, 3, 4,
46113 0,
46114 0,
46115 80, TARGET_VAL(ARMISD::PREDICATE_CAST),
46116 OPC_CheckChild0Integer, 126|128,127|128,7,
46117 OPC_CheckChild0TypeI32,
46118 OPC_MoveParent,
46119 OPC_SwitchType , 16, MVT::v2i1,
46120 OPC_CheckPatternPredicate0,
46121 OPC_EmitInteger32, 0,
46122 OPC_EmitRegisterI32, 0 ,
46123 OPC_EmitRegisterI32, 0 ,
46124 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPNOT),
46125 MVT::v2i1, 4, 0, 1, 2, 3,
46126 16, MVT::v4i1,
46127 OPC_CheckPatternPredicate0,
46128 OPC_EmitInteger32, 0,
46129 OPC_EmitRegisterI32, 0 ,
46130 OPC_EmitRegisterI32, 0 ,
46131 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPNOT),
46132 MVT::v4i1, 4, 0, 1, 2, 3,
46133 16, MVT::v8i1,
46134 OPC_CheckPatternPredicate0,
46135 OPC_EmitInteger32, 0,
46136 OPC_EmitRegisterI32, 0 ,
46137 OPC_EmitRegisterI32, 0 ,
46138 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPNOT),
46139 MVT::v8i1, 4, 0, 1, 2, 3,
46140 16, MVT::v16i1,
46141 OPC_CheckPatternPredicate0,
46142 OPC_EmitInteger32, 0,
46143 OPC_EmitRegisterI32, 0 ,
46144 OPC_EmitRegisterI32, 0 ,
46145 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPNOT),
46146 MVT::v16i1, 4, 0, 1, 2, 3,
46147 0,
46148 0,
46149 25|128,1,
46150 OPC_MoveChild0,
46151 OPC_SwitchOpcode , 63, TARGET_VAL(ARMISD::VMOVIMM),
46152 OPC_CheckChild0Integer, 126|128,59,
46153 OPC_MoveParent,
46154 OPC_RecordChild1,
46155 OPC_SwitchType , 13, MVT::v8i8,
46156 OPC_CheckPatternPredicate1,
46157 OPC_EmitInteger32, 28,
46158 OPC_EmitRegisterI32, 0 ,
46159 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNd),
46160 MVT::v8i8, 3, 0, 1, 2,
46161 39, MVT::v16i8,
46162 OPC_Scope, 13,
46163 OPC_CheckPatternPredicate1,
46164 OPC_EmitInteger32, 28,
46165 OPC_EmitRegisterI32, 0 ,
46166 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNq),
46167 MVT::v16i8, 3, 0, 1, 2,
46168 22,
46169 OPC_CheckPatternPredicate0,
46170 OPC_EmitInteger32, 0,
46171 OPC_EmitRegisterI32, 0 ,
46172 OPC_EmitRegisterI32, 0 ,
46173 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46174 MVT::v4i32, 0,
46175 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVN),
46176 MVT::v16i8, 5, 0, 1, 2, 3, 4,
46177 0,
46178 0,
46179 81, TARGET_VAL(ARMISD::PREDICATE_CAST),
46180 OPC_CheckChild0Integer, 126|128,127|128,7,
46181 OPC_CheckChild0TypeI32,
46182 OPC_MoveParent,
46183 OPC_RecordChild1,
46184 OPC_SwitchType , 16, MVT::v2i1,
46185 OPC_CheckPatternPredicate0,
46186 OPC_EmitInteger32, 0,
46187 OPC_EmitRegisterI32, 0 ,
46188 OPC_EmitRegisterI32, 0 ,
46189 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPNOT),
46190 MVT::v2i1, 4, 0, 1, 2, 3,
46191 16, MVT::v4i1,
46192 OPC_CheckPatternPredicate0,
46193 OPC_EmitInteger32, 0,
46194 OPC_EmitRegisterI32, 0 ,
46195 OPC_EmitRegisterI32, 0 ,
46196 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPNOT),
46197 MVT::v4i1, 4, 0, 1, 2, 3,
46198 16, MVT::v8i1,
46199 OPC_CheckPatternPredicate0,
46200 OPC_EmitInteger32, 0,
46201 OPC_EmitRegisterI32, 0 ,
46202 OPC_EmitRegisterI32, 0 ,
46203 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPNOT),
46204 MVT::v8i1, 4, 0, 1, 2, 3,
46205 16, MVT::v16i1,
46206 OPC_CheckPatternPredicate0,
46207 OPC_EmitInteger32, 0,
46208 OPC_EmitRegisterI32, 0 ,
46209 OPC_EmitRegisterI32, 0 ,
46210 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPNOT),
46211 MVT::v16i1, 4, 0, 1, 2, 3,
46212 0,
46213 0,
46214 40|128,3,
46215 OPC_RecordChild0,
46216 OPC_RecordChild1,
46217 OPC_SwitchType , 14, MVT::v2i32,
46218 OPC_CheckPatternPredicate1,
46219 OPC_EmitInteger32, 28,
46220 OPC_EmitRegisterI32, 0 ,
46221 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEORd),
46222 MVT::v2i32, 4, 0, 1, 2, 3,
46223 41, MVT::v4i32,
46224 OPC_Scope, 14,
46225 OPC_CheckPatternPredicate1,
46226 OPC_EmitInteger32, 28,
46227 OPC_EmitRegisterI32, 0 ,
46228 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEORq),
46229 MVT::v4i32, 4, 0, 1, 2, 3,
46230 23,
46231 OPC_CheckPatternPredicate0,
46232 OPC_EmitInteger32, 0,
46233 OPC_EmitRegisterI32, 0 ,
46234 OPC_EmitRegisterI32, 0 ,
46235 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46236 MVT::v4i32, 0,
46237 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
46238 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
46239 0,
46240 14, MVT::v8i8,
46241 OPC_CheckPatternPredicate1,
46242 OPC_EmitInteger32, 28,
46243 OPC_EmitRegisterI32, 0 ,
46244 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEORd),
46245 MVT::v8i8, 4, 0, 1, 2, 3,
46246 14, MVT::v4i16,
46247 OPC_CheckPatternPredicate1,
46248 OPC_EmitInteger32, 28,
46249 OPC_EmitRegisterI32, 0 ,
46250 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEORd),
46251 MVT::v4i16, 4, 0, 1, 2, 3,
46252 14, MVT::v1i64,
46253 OPC_CheckPatternPredicate1,
46254 OPC_EmitInteger32, 28,
46255 OPC_EmitRegisterI32, 0 ,
46256 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEORd),
46257 MVT::v1i64, 4, 0, 1, 2, 3,
46258 41, MVT::v16i8,
46259 OPC_Scope, 14,
46260 OPC_CheckPatternPredicate1,
46261 OPC_EmitInteger32, 28,
46262 OPC_EmitRegisterI32, 0 ,
46263 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEORq),
46264 MVT::v16i8, 4, 0, 1, 2, 3,
46265 23,
46266 OPC_CheckPatternPredicate0,
46267 OPC_EmitInteger32, 0,
46268 OPC_EmitRegisterI32, 0 ,
46269 OPC_EmitRegisterI32, 0 ,
46270 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46271 MVT::v4i32, 0,
46272 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
46273 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
46274 0,
46275 41, MVT::v8i16,
46276 OPC_Scope, 14,
46277 OPC_CheckPatternPredicate1,
46278 OPC_EmitInteger32, 28,
46279 OPC_EmitRegisterI32, 0 ,
46280 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEORq),
46281 MVT::v8i16, 4, 0, 1, 2, 3,
46282 23,
46283 OPC_CheckPatternPredicate0,
46284 OPC_EmitInteger32, 0,
46285 OPC_EmitRegisterI32, 0 ,
46286 OPC_EmitRegisterI32, 0 ,
46287 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46288 MVT::v4i32, 0,
46289 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
46290 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
46291 0,
46292 41, MVT::v2i64,
46293 OPC_Scope, 14,
46294 OPC_CheckPatternPredicate1,
46295 OPC_EmitInteger32, 28,
46296 OPC_EmitRegisterI32, 0 ,
46297 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEORq),
46298 MVT::v2i64, 4, 0, 1, 2, 3,
46299 23,
46300 OPC_CheckPatternPredicate0,
46301 OPC_EmitInteger32, 0,
46302 OPC_EmitRegisterI32, 0 ,
46303 OPC_EmitRegisterI32, 0 ,
46304 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46305 MVT::v4i32, 0,
46306 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
46307 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
46308 0,
46309 44, MVT::v16i1,
46310 OPC_CheckPatternPredicate0,
46311 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
46312 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46313 MVT::i32, 2, 0, 2,
46314 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
46315 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46316 MVT::i32, 2, 1, 4,
46317 OPC_EmitInteger32, 28,
46318 OPC_EmitRegisterI32, 0 ,
46319 OPC_EmitRegisterI32, 0 ,
46320 OPC_EmitNode1None, TARGET_VAL(ARM::t2EORrr),
46321 MVT::i32, 5, 3, 5, 6, 7, 8,
46322 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
46323 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46324 MVT::v16i1, 2, 9, 10,
46325 44, MVT::v8i1,
46326 OPC_CheckPatternPredicate0,
46327 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
46328 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46329 MVT::i32, 2, 0, 2,
46330 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
46331 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46332 MVT::i32, 2, 1, 4,
46333 OPC_EmitInteger32, 28,
46334 OPC_EmitRegisterI32, 0 ,
46335 OPC_EmitRegisterI32, 0 ,
46336 OPC_EmitNode1None, TARGET_VAL(ARM::t2EORrr),
46337 MVT::i32, 5, 3, 5, 6, 7, 8,
46338 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
46339 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46340 MVT::v8i1, 2, 9, 10,
46341 44, MVT::v4i1,
46342 OPC_CheckPatternPredicate0,
46343 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
46344 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46345 MVT::i32, 2, 0, 2,
46346 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
46347 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46348 MVT::i32, 2, 1, 4,
46349 OPC_EmitInteger32, 28,
46350 OPC_EmitRegisterI32, 0 ,
46351 OPC_EmitRegisterI32, 0 ,
46352 OPC_EmitNode1None, TARGET_VAL(ARM::t2EORrr),
46353 MVT::i32, 5, 3, 5, 6, 7, 8,
46354 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
46355 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46356 MVT::v4i1, 2, 9, 10,
46357 44, MVT::v2i1,
46358 OPC_CheckPatternPredicate0,
46359 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
46360 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46361 MVT::i32, 2, 0, 2,
46362 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
46363 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46364 MVT::i32, 2, 1, 4,
46365 OPC_EmitInteger32, 28,
46366 OPC_EmitRegisterI32, 0 ,
46367 OPC_EmitRegisterI32, 0 ,
46368 OPC_EmitNode1None, TARGET_VAL(ARM::t2EORrr),
46369 MVT::i32, 5, 3, 5, 6, 7, 8,
46370 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
46371 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
46372 MVT::v2i1, 2, 9, 10,
46373 0,
46374 0,
46375 113|128,2, TARGET_VAL(ISD::VECREDUCE_ADD),
46376 OPC_Scope, 47|128,2,
46377 OPC_MoveChild0,
46378 OPC_SwitchOpcode , 98|128,1, TARGET_VAL(ISD::VSELECT),
46379 OPC_RecordChild0,
46380 OPC_Scope, 78,
46381 OPC_CheckChild0Type, MVT::v8i1,
46382 OPC_Scope, 39,
46383 OPC_MoveChild1,
46384 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
46385 OPC_RecordChild0,
46386 OPC_RecordChild1,
46387 OPC_MoveSibling2,
46388 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
46389 OPC_MoveChild0,
46390 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46391 OPC_CheckChild0Integer, 0,
46392 OPC_CheckType, MVT::v4i32,
46393 OPC_MoveParent,
46394 OPC_MoveParent,
46395 OPC_CheckType, MVT::v8i16,
46396 OPC_MoveParent,
46397 OPC_CheckTypeI32,
46398 OPC_CheckPatternPredicate0,
46399 OPC_EmitInteger32, 2,
46400 OPC_EmitRegisterI32, 0 ,
46401 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu16),
46402 MVT::i32, 5, 1, 2, 3, 0, 4,
46403 33,
46404 OPC_RecordChild1,
46405 OPC_MoveChild2,
46406 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
46407 OPC_MoveChild0,
46408 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46409 OPC_CheckChild0Integer, 0,
46410 OPC_CheckType, MVT::v4i32,
46411 OPC_MoveParent,
46412 OPC_MoveParent,
46413 OPC_CheckType, MVT::v8i16,
46414 OPC_MoveParent,
46415 OPC_CheckTypeI32,
46416 OPC_CheckPatternPredicate0,
46417 OPC_EmitInteger32, 2,
46418 OPC_EmitRegisterI32, 0 ,
46419 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16no_acc),
46420 MVT::i32, 4, 1, 2, 0, 3,
46421 0,
46422 78,
46423 OPC_CheckChild0Type, MVT::v16i1,
46424 OPC_Scope, 39,
46425 OPC_MoveChild1,
46426 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
46427 OPC_RecordChild0,
46428 OPC_RecordChild1,
46429 OPC_MoveSibling2,
46430 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
46431 OPC_MoveChild0,
46432 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46433 OPC_CheckChild0Integer, 0,
46434 OPC_CheckType, MVT::v4i32,
46435 OPC_MoveParent,
46436 OPC_MoveParent,
46437 OPC_CheckType, MVT::v16i8,
46438 OPC_MoveParent,
46439 OPC_CheckTypeI32,
46440 OPC_CheckPatternPredicate0,
46441 OPC_EmitInteger32, 2,
46442 OPC_EmitRegisterI32, 0 ,
46443 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu8),
46444 MVT::i32, 5, 1, 2, 3, 0, 4,
46445 33,
46446 OPC_RecordChild1,
46447 OPC_MoveChild2,
46448 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
46449 OPC_MoveChild0,
46450 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46451 OPC_CheckChild0Integer, 0,
46452 OPC_CheckType, MVT::v4i32,
46453 OPC_MoveParent,
46454 OPC_MoveParent,
46455 OPC_CheckType, MVT::v16i8,
46456 OPC_MoveParent,
46457 OPC_CheckTypeI32,
46458 OPC_CheckPatternPredicate0,
46459 OPC_EmitInteger32, 2,
46460 OPC_EmitRegisterI32, 0 ,
46461 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8no_acc),
46462 MVT::i32, 4, 1, 2, 0, 3,
46463 0,
46464 64,
46465 OPC_CheckChild0Type, MVT::v4i1,
46466 OPC_Scope, 32,
46467 OPC_MoveChild1,
46468 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
46469 OPC_RecordChild0,
46470 OPC_RecordChild1,
46471 OPC_MoveSibling2,
46472 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46473 OPC_CheckChild0Integer, 0,
46474 OPC_MoveParent,
46475 OPC_CheckType, MVT::v4i32,
46476 OPC_MoveParent,
46477 OPC_CheckTypeI32,
46478 OPC_CheckPatternPredicate0,
46479 OPC_EmitInteger32, 2,
46480 OPC_EmitRegisterI32, 0 ,
46481 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu32),
46482 MVT::i32, 5, 1, 2, 3, 0, 4,
46483 26,
46484 OPC_RecordChild1,
46485 OPC_MoveChild2,
46486 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46487 OPC_CheckChild0Integer, 0,
46488 OPC_MoveParent,
46489 OPC_CheckType, MVT::v4i32,
46490 OPC_MoveParent,
46491 OPC_CheckTypeI32,
46492 OPC_CheckPatternPredicate0,
46493 OPC_EmitInteger32, 2,
46494 OPC_EmitRegisterI32, 0 ,
46495 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32no_acc),
46496 MVT::i32, 4, 1, 2, 0, 3,
46497 0,
46498 0,
46499 67, TARGET_VAL(ISD::MUL),
46500 OPC_RecordChild0,
46501 OPC_RecordChild1,
46502 OPC_SwitchType , 19, MVT::v4i32,
46503 OPC_MoveParent,
46504 OPC_CheckTypeI32,
46505 OPC_CheckPatternPredicate0,
46506 OPC_EmitInteger32, 0,
46507 OPC_EmitRegisterI32, 0 ,
46508 OPC_EmitRegisterI32, 0 ,
46509 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu32),
46510 MVT::i32, 5, 0, 1, 2, 3, 4,
46511 19, MVT::v8i16,
46512 OPC_MoveParent,
46513 OPC_CheckTypeI32,
46514 OPC_CheckPatternPredicate0,
46515 OPC_EmitInteger32, 0,
46516 OPC_EmitRegisterI32, 0 ,
46517 OPC_EmitRegisterI32, 0 ,
46518 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu16),
46519 MVT::i32, 5, 0, 1, 2, 3, 4,
46520 19, MVT::v16i8,
46521 OPC_MoveParent,
46522 OPC_CheckTypeI32,
46523 OPC_CheckPatternPredicate0,
46524 OPC_EmitInteger32, 0,
46525 OPC_EmitRegisterI32, 0 ,
46526 OPC_EmitRegisterI32, 0 ,
46527 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu8),
46528 MVT::i32, 5, 0, 1, 2, 3, 4,
46529 0,
46530 0,
46531 61,
46532 OPC_RecordChild0,
46533 OPC_CheckTypeI32,
46534 OPC_Scope, 18,
46535 OPC_CheckChild0Type, MVT::v16i8,
46536 OPC_CheckPatternPredicate0,
46537 OPC_EmitInteger32, 0,
46538 OPC_EmitRegisterI32, 0 ,
46539 OPC_EmitRegisterI32, 0 ,
46540 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8no_acc),
46541 MVT::i32, 4, 0, 1, 2, 3,
46542 18,
46543 OPC_CheckChild0Type, MVT::v8i16,
46544 OPC_CheckPatternPredicate0,
46545 OPC_EmitInteger32, 0,
46546 OPC_EmitRegisterI32, 0 ,
46547 OPC_EmitRegisterI32, 0 ,
46548 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16no_acc),
46549 MVT::i32, 4, 0, 1, 2, 3,
46550 18,
46551 OPC_CheckChild0Type, MVT::v4i32,
46552 OPC_CheckPatternPredicate0,
46553 OPC_EmitInteger32, 0,
46554 OPC_EmitRegisterI32, 0 ,
46555 OPC_EmitRegisterI32, 0 ,
46556 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32no_acc),
46557 MVT::i32, 4, 0, 1, 2, 3,
46558 0,
46559 0,
46560 114|128,27, TARGET_VAL(ISD::MUL),
46561 OPC_Scope, 19|128,1,
46562 OPC_MoveChild0,
46563 OPC_SwitchOpcode , 91, TARGET_VAL(ISD::SRA),
46564 OPC_RecordChild0,
46565 OPC_CheckChild1Integer, 32,
46566 OPC_CheckChild1TypeI32,
46567 OPC_MoveSibling1,
46568 OPC_SwitchOpcode , 39, TARGET_VAL(ISD::SRA),
46569 OPC_RecordChild0,
46570 OPC_CheckChild1Integer, 32,
46571 OPC_CheckChild1TypeI32,
46572 OPC_MoveParent,
46573 OPC_CheckTypeI32,
46574 OPC_Scope, 15,
46575 OPC_CheckPatternPredicate, 14,
46576 OPC_EmitInteger32, 28,
46577 OPC_EmitRegisterI32, 0 ,
46578 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULTT),
46579 MVT::i32, 4, 0, 1, 2, 3,
46580 14,
46581 OPC_CheckPatternPredicate5,
46582 OPC_EmitInteger32, 28,
46583 OPC_EmitRegisterI32, 0 ,
46584 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULTT),
46585 MVT::i32, 4, 0, 1, 2, 3,
46586 0,
46587 39, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
46588 OPC_RecordChild0,
46589 OPC_MoveChild1,
46590 OPC_CheckValueType, MVT::i16,
46591 OPC_MoveParent,
46592 OPC_MoveParent,
46593 OPC_Scope, 15,
46594 OPC_CheckPatternPredicate, 14,
46595 OPC_EmitInteger32, 28,
46596 OPC_EmitRegisterI32, 0 ,
46597 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULTB),
46598 MVT::i32, 4, 0, 1, 2, 3,
46599 14,
46600 OPC_CheckPatternPredicate5,
46601 OPC_EmitInteger32, 28,
46602 OPC_EmitRegisterI32, 0 ,
46603 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULTB),
46604 MVT::i32, 4, 0, 1, 2, 3,
46605 0,
46606 0,
46607 47, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
46608 OPC_RecordChild0,
46609 OPC_MoveChild1,
46610 OPC_CheckValueType, MVT::i16,
46611 OPC_MoveParent,
46612 OPC_MoveSibling1,
46613 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
46614 OPC_RecordChild0,
46615 OPC_CheckChild1Integer, 32,
46616 OPC_CheckChild1TypeI32,
46617 OPC_MoveParent,
46618 OPC_Scope, 15,
46619 OPC_CheckPatternPredicate, 14,
46620 OPC_EmitInteger32, 28,
46621 OPC_EmitRegisterI32, 0 ,
46622 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULBT),
46623 MVT::i32, 4, 0, 1, 2, 3,
46624 14,
46625 OPC_CheckPatternPredicate5,
46626 OPC_EmitInteger32, 28,
46627 OPC_EmitRegisterI32, 0 ,
46628 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULBT),
46629 MVT::i32, 4, 0, 1, 2, 3,
46630 0,
46631 0,
46632 29,
46633 OPC_RecordChild0,
46634 OPC_MoveChild0,
46635 OPC_CheckPredicate, 14,
46636 OPC_MoveSibling1,
46637 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
46638 OPC_RecordChild0,
46639 OPC_CheckChild1Integer, 32,
46640 OPC_CheckChild1TypeI32,
46641 OPC_MoveParent,
46642 OPC_CheckTypeI32,
46643 OPC_CheckPatternPredicate, 14,
46644 OPC_EmitInteger32, 28,
46645 OPC_EmitRegisterI32, 0 ,
46646 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULBT),
46647 MVT::i32, 4, 0, 1, 2, 3,
46648 29,
46649 OPC_MoveChild0,
46650 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
46651 OPC_RecordChild0,
46652 OPC_CheckChild1Integer, 32,
46653 OPC_CheckChild1TypeI32,
46654 OPC_MoveSibling1,
46655 OPC_RecordNode,
46656 OPC_CheckPredicate, 14,
46657 OPC_MoveParent,
46658 OPC_CheckTypeI32,
46659 OPC_CheckPatternPredicate, 14,
46660 OPC_EmitInteger32, 28,
46661 OPC_EmitRegisterI32, 0 ,
46662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULTB),
46663 MVT::i32, 4, 0, 1, 2, 3,
46664 28,
46665 OPC_RecordChild0,
46666 OPC_MoveChild0,
46667 OPC_CheckPredicate, 14,
46668 OPC_MoveSibling1,
46669 OPC_CheckOpcode, TARGET_VAL(ISD::SRA),
46670 OPC_RecordChild0,
46671 OPC_CheckChild1Integer, 32,
46672 OPC_CheckChild1TypeI32,
46673 OPC_MoveParent,
46674 OPC_CheckTypeI32,
46675 OPC_CheckPatternPredicate5,
46676 OPC_EmitInteger32, 28,
46677 OPC_EmitRegisterI32, 0 ,
46678 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULBT),
46679 MVT::i32, 4, 0, 1, 2, 3,
46680 81,
46681 OPC_MoveChild0,
46682 OPC_SwitchOpcode , 24, TARGET_VAL(ISD::SRA),
46683 OPC_RecordChild0,
46684 OPC_CheckChild1Integer, 32,
46685 OPC_CheckChild1TypeI32,
46686 OPC_MoveSibling1,
46687 OPC_RecordNode,
46688 OPC_CheckPredicate, 14,
46689 OPC_MoveParent,
46690 OPC_CheckTypeI32,
46691 OPC_CheckPatternPredicate5,
46692 OPC_EmitInteger32, 28,
46693 OPC_EmitRegisterI32, 0 ,
46694 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULTB),
46695 MVT::i32, 4, 0, 1, 2, 3,
46696 48, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
46697 OPC_RecordChild0,
46698 OPC_MoveChild1,
46699 OPC_CheckValueType, MVT::i16,
46700 OPC_MoveParent,
46701 OPC_MoveSibling1,
46702 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
46703 OPC_RecordChild0,
46704 OPC_MoveChild1,
46705 OPC_CheckValueType, MVT::i16,
46706 OPC_MoveParent,
46707 OPC_MoveParent,
46708 OPC_Scope, 15,
46709 OPC_CheckPatternPredicate, 14,
46710 OPC_EmitInteger32, 28,
46711 OPC_EmitRegisterI32, 0 ,
46712 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULBB),
46713 MVT::i32, 4, 0, 1, 2, 3,
46714 14,
46715 OPC_CheckPatternPredicate5,
46716 OPC_EmitInteger32, 28,
46717 OPC_EmitRegisterI32, 0 ,
46718 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULBB),
46719 MVT::i32, 4, 0, 1, 2, 3,
46720 0,
46721 0,
46722 47,
46723 OPC_RecordChild0,
46724 OPC_MoveChild0,
46725 OPC_CheckPredicate, 14,
46726 OPC_MoveSibling1,
46727 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
46728 OPC_RecordChild0,
46729 OPC_MoveChild1,
46730 OPC_CheckValueType, MVT::i16,
46731 OPC_MoveParent,
46732 OPC_MoveParent,
46733 OPC_Scope, 15,
46734 OPC_CheckPatternPredicate, 14,
46735 OPC_EmitInteger32, 28,
46736 OPC_EmitRegisterI32, 0 ,
46737 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULBB),
46738 MVT::i32, 4, 0, 1, 2, 3,
46739 14,
46740 OPC_CheckPatternPredicate5,
46741 OPC_EmitInteger32, 28,
46742 OPC_EmitRegisterI32, 0 ,
46743 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULBB),
46744 MVT::i32, 4, 0, 1, 2, 3,
46745 0,
46746 47,
46747 OPC_MoveChild0,
46748 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
46749 OPC_RecordChild0,
46750 OPC_MoveChild1,
46751 OPC_CheckValueType, MVT::i16,
46752 OPC_MoveParent,
46753 OPC_MoveSibling1,
46754 OPC_RecordNode,
46755 OPC_CheckPredicate, 14,
46756 OPC_MoveParent,
46757 OPC_Scope, 15,
46758 OPC_CheckPatternPredicate, 14,
46759 OPC_EmitInteger32, 28,
46760 OPC_EmitRegisterI32, 0 ,
46761 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULBB),
46762 MVT::i32, 4, 1, 0, 2, 3,
46763 14,
46764 OPC_CheckPatternPredicate5,
46765 OPC_EmitInteger32, 28,
46766 OPC_EmitRegisterI32, 0 ,
46767 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULBB),
46768 MVT::i32, 4, 1, 0, 2, 3,
46769 0,
46770 105,
46771 OPC_RecordChild0,
46772 OPC_Scope, 24,
46773 OPC_MoveChild0,
46774 OPC_CheckPredicate, 14,
46775 OPC_MoveSibling1,
46776 OPC_RecordNode,
46777 OPC_CheckPredicate, 14,
46778 OPC_MoveParent,
46779 OPC_CheckTypeI32,
46780 OPC_CheckPatternPredicate, 14,
46781 OPC_EmitInteger32, 28,
46782 OPC_EmitRegisterI32, 0 ,
46783 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULBB),
46784 MVT::i32, 4, 0, 1, 2, 3,
46785 76,
46786 OPC_RecordChild1,
46787 OPC_CheckTypeI32,
46788 OPC_Scope, 18,
46789 OPC_CheckPatternPredicate, 9,
46790 OPC_EmitInteger32, 28,
46791 OPC_EmitRegisterI32, 0 ,
46792 OPC_EmitRegisterI32, 0 ,
46793 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MUL),
46794 MVT::i32, 5, 0, 1, 2, 3, 4,
46795 18,
46796 OPC_CheckPatternPredicate, 118,
46797 OPC_EmitInteger32, 28,
46798 OPC_EmitRegisterI32, 0 ,
46799 OPC_EmitRegisterI32, 0 ,
46800 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MULv5),
46801 MVT::i32, 5, 0, 1, 2, 3, 4,
46802 18,
46803 OPC_CheckPatternPredicate, 10,
46804 OPC_EmitRegisterI32, ARM::CPSR,
46805 OPC_EmitInteger32, 28,
46806 OPC_EmitRegisterI32, 0 ,
46807 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tMUL),
46808 MVT::i32, 5, 2, 0, 1, 3, 4,
46809 14,
46810 OPC_CheckPatternPredicate4,
46811 OPC_EmitInteger32, 28,
46812 OPC_EmitRegisterI32, 0 ,
46813 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MUL),
46814 MVT::i32, 4, 0, 1, 2, 3,
46815 0,
46816 0,
46817 47|128,13,
46818 OPC_MoveChild0,
46819 OPC_SwitchOpcode , 111|128,7, TARGET_VAL(ISD::AND),
46820 OPC_Scope, 59|128,6,
46821 OPC_MoveChild0,
46822 OPC_SwitchOpcode , 75|128,1, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
46823 OPC_MoveChild0,
46824 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
46825 OPC_RecordChild0,
46826 OPC_CheckType, MVT::v8i16,
46827 OPC_MoveParent,
46828 OPC_CheckPredicate1,
46829 OPC_MoveSibling1,
46830 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46831 OPC_CheckChild0Integer, 126|128,51,
46832 OPC_MoveParent,
46833 OPC_MoveSibling1,
46834 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
46835 OPC_MoveChild0,
46836 OPC_SwitchOpcode , 43, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
46837 OPC_MoveChild0,
46838 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
46839 OPC_RecordChild0,
46840 OPC_CheckType, MVT::v8i16,
46841 OPC_MoveParent,
46842 OPC_CheckPredicate1,
46843 OPC_MoveSibling1,
46844 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46845 OPC_CheckChild0Integer, 126|128,51,
46846 OPC_MoveParent,
46847 OPC_MoveParent,
46848 OPC_CheckType, MVT::v4i32,
46849 OPC_CheckPatternPredicate0,
46850 OPC_EmitInteger32, 0,
46851 OPC_EmitRegisterI32, 0 ,
46852 OPC_EmitRegisterI32, 0 ,
46853 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46854 MVT::v4i32, 0,
46855 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
46856 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
46857 43, TARGET_VAL(ISD::BITCAST),
46858 OPC_MoveChild0,
46859 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
46860 OPC_RecordChild0,
46861 OPC_CheckType, MVT::v8i16,
46862 OPC_MoveParent,
46863 OPC_CheckPredicate1,
46864 OPC_MoveSibling1,
46865 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46866 OPC_CheckChild0Integer, 126|128,51,
46867 OPC_MoveParent,
46868 OPC_MoveParent,
46869 OPC_CheckType, MVT::v4i32,
46870 OPC_CheckPatternPredicate0,
46871 OPC_EmitInteger32, 0,
46872 OPC_EmitRegisterI32, 0 ,
46873 OPC_EmitRegisterI32, 0 ,
46874 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46875 MVT::v4i32, 0,
46876 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
46877 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
46878 84, TARGET_VAL(ARMISD::VMOVIMM),
46879 OPC_CheckChild0Integer, 126|128,51,
46880 OPC_MoveSibling1,
46881 OPC_SwitchOpcode , 36, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
46882 OPC_MoveChild0,
46883 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
46884 OPC_RecordChild0,
46885 OPC_CheckType, MVT::v8i16,
46886 OPC_MoveParent,
46887 OPC_CheckPredicate1,
46888 OPC_MoveParent,
46889 OPC_MoveParent,
46890 OPC_CheckType, MVT::v4i32,
46891 OPC_CheckPatternPredicate0,
46892 OPC_EmitInteger32, 0,
46893 OPC_EmitRegisterI32, 0 ,
46894 OPC_EmitRegisterI32, 0 ,
46895 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46896 MVT::v4i32, 0,
46897 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
46898 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
46899 36, TARGET_VAL(ISD::BITCAST),
46900 OPC_MoveChild0,
46901 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
46902 OPC_RecordChild0,
46903 OPC_CheckType, MVT::v8i16,
46904 OPC_MoveParent,
46905 OPC_CheckPredicate1,
46906 OPC_MoveParent,
46907 OPC_MoveParent,
46908 OPC_CheckType, MVT::v4i32,
46909 OPC_CheckPatternPredicate0,
46910 OPC_EmitInteger32, 0,
46911 OPC_EmitRegisterI32, 0 ,
46912 OPC_EmitRegisterI32, 0 ,
46913 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46914 MVT::v4i32, 0,
46915 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
46916 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
46917 0,
46918 0,
46919 75|128,1, TARGET_VAL(ISD::BITCAST),
46920 OPC_MoveChild0,
46921 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
46922 OPC_RecordChild0,
46923 OPC_CheckType, MVT::v8i16,
46924 OPC_MoveParent,
46925 OPC_CheckPredicate1,
46926 OPC_MoveSibling1,
46927 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46928 OPC_CheckChild0Integer, 126|128,51,
46929 OPC_MoveParent,
46930 OPC_MoveSibling1,
46931 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
46932 OPC_MoveChild0,
46933 OPC_SwitchOpcode , 43, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
46934 OPC_MoveChild0,
46935 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
46936 OPC_RecordChild0,
46937 OPC_CheckType, MVT::v8i16,
46938 OPC_MoveParent,
46939 OPC_CheckPredicate1,
46940 OPC_MoveSibling1,
46941 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46942 OPC_CheckChild0Integer, 126|128,51,
46943 OPC_MoveParent,
46944 OPC_MoveParent,
46945 OPC_CheckType, MVT::v4i32,
46946 OPC_CheckPatternPredicate0,
46947 OPC_EmitInteger32, 0,
46948 OPC_EmitRegisterI32, 0 ,
46949 OPC_EmitRegisterI32, 0 ,
46950 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46951 MVT::v4i32, 0,
46952 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
46953 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
46954 43, TARGET_VAL(ISD::BITCAST),
46955 OPC_MoveChild0,
46956 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
46957 OPC_RecordChild0,
46958 OPC_CheckType, MVT::v8i16,
46959 OPC_MoveParent,
46960 OPC_CheckPredicate1,
46961 OPC_MoveSibling1,
46962 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
46963 OPC_CheckChild0Integer, 126|128,51,
46964 OPC_MoveParent,
46965 OPC_MoveParent,
46966 OPC_CheckType, MVT::v4i32,
46967 OPC_CheckPatternPredicate0,
46968 OPC_EmitInteger32, 0,
46969 OPC_EmitRegisterI32, 0 ,
46970 OPC_EmitRegisterI32, 0 ,
46971 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46972 MVT::v4i32, 0,
46973 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
46974 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
46975 84, TARGET_VAL(ARMISD::VMOVIMM),
46976 OPC_CheckChild0Integer, 126|128,51,
46977 OPC_MoveSibling1,
46978 OPC_SwitchOpcode , 36, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
46979 OPC_MoveChild0,
46980 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
46981 OPC_RecordChild0,
46982 OPC_CheckType, MVT::v8i16,
46983 OPC_MoveParent,
46984 OPC_CheckPredicate1,
46985 OPC_MoveParent,
46986 OPC_MoveParent,
46987 OPC_CheckType, MVT::v4i32,
46988 OPC_CheckPatternPredicate0,
46989 OPC_EmitInteger32, 0,
46990 OPC_EmitRegisterI32, 0 ,
46991 OPC_EmitRegisterI32, 0 ,
46992 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
46993 MVT::v4i32, 0,
46994 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
46995 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
46996 36, TARGET_VAL(ISD::BITCAST),
46997 OPC_MoveChild0,
46998 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
46999 OPC_RecordChild0,
47000 OPC_CheckType, MVT::v8i16,
47001 OPC_MoveParent,
47002 OPC_CheckPredicate1,
47003 OPC_MoveParent,
47004 OPC_MoveParent,
47005 OPC_CheckType, MVT::v4i32,
47006 OPC_CheckPatternPredicate0,
47007 OPC_EmitInteger32, 0,
47008 OPC_EmitRegisterI32, 0 ,
47009 OPC_EmitRegisterI32, 0 ,
47010 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47011 MVT::v4i32, 0,
47012 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
47013 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47014 0,
47015 0,
47016 22|128,3, TARGET_VAL(ARMISD::VMOVIMM),
47017 OPC_CheckChild0Integer, 126|128,51,
47018 OPC_MoveSibling1,
47019 OPC_SwitchOpcode , 68|128,1, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47020 OPC_MoveChild0,
47021 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47022 OPC_RecordChild0,
47023 OPC_CheckType, MVT::v8i16,
47024 OPC_MoveParent,
47025 OPC_CheckPredicate1,
47026 OPC_MoveParent,
47027 OPC_MoveSibling1,
47028 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
47029 OPC_MoveChild0,
47030 OPC_SwitchOpcode , 43, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47031 OPC_MoveChild0,
47032 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47033 OPC_RecordChild0,
47034 OPC_CheckType, MVT::v8i16,
47035 OPC_MoveParent,
47036 OPC_CheckPredicate1,
47037 OPC_MoveSibling1,
47038 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47039 OPC_CheckChild0Integer, 126|128,51,
47040 OPC_MoveParent,
47041 OPC_MoveParent,
47042 OPC_CheckType, MVT::v4i32,
47043 OPC_CheckPatternPredicate0,
47044 OPC_EmitInteger32, 0,
47045 OPC_EmitRegisterI32, 0 ,
47046 OPC_EmitRegisterI32, 0 ,
47047 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47048 MVT::v4i32, 0,
47049 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
47050 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47051 84, TARGET_VAL(ARMISD::VMOVIMM),
47052 OPC_CheckChild0Integer, 126|128,51,
47053 OPC_MoveSibling1,
47054 OPC_SwitchOpcode , 36, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47055 OPC_MoveChild0,
47056 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47057 OPC_RecordChild0,
47058 OPC_CheckType, MVT::v8i16,
47059 OPC_MoveParent,
47060 OPC_CheckPredicate1,
47061 OPC_MoveParent,
47062 OPC_MoveParent,
47063 OPC_CheckType, MVT::v4i32,
47064 OPC_CheckPatternPredicate0,
47065 OPC_EmitInteger32, 0,
47066 OPC_EmitRegisterI32, 0 ,
47067 OPC_EmitRegisterI32, 0 ,
47068 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47069 MVT::v4i32, 0,
47070 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
47071 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47072 36, TARGET_VAL(ISD::BITCAST),
47073 OPC_MoveChild0,
47074 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47075 OPC_RecordChild0,
47076 OPC_CheckType, MVT::v8i16,
47077 OPC_MoveParent,
47078 OPC_CheckPredicate1,
47079 OPC_MoveParent,
47080 OPC_MoveParent,
47081 OPC_CheckType, MVT::v4i32,
47082 OPC_CheckPatternPredicate0,
47083 OPC_EmitInteger32, 0,
47084 OPC_EmitRegisterI32, 0 ,
47085 OPC_EmitRegisterI32, 0 ,
47086 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47087 MVT::v4i32, 0,
47088 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
47089 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47090 0,
47091 43, TARGET_VAL(ISD::BITCAST),
47092 OPC_MoveChild0,
47093 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47094 OPC_RecordChild0,
47095 OPC_CheckType, MVT::v8i16,
47096 OPC_MoveParent,
47097 OPC_CheckPredicate1,
47098 OPC_MoveSibling1,
47099 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47100 OPC_CheckChild0Integer, 126|128,51,
47101 OPC_MoveParent,
47102 OPC_MoveParent,
47103 OPC_CheckType, MVT::v4i32,
47104 OPC_CheckPatternPredicate0,
47105 OPC_EmitInteger32, 0,
47106 OPC_EmitRegisterI32, 0 ,
47107 OPC_EmitRegisterI32, 0 ,
47108 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47109 MVT::v4i32, 0,
47110 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
47111 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47112 0,
47113 68|128,1, TARGET_VAL(ISD::BITCAST),
47114 OPC_MoveChild0,
47115 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47116 OPC_RecordChild0,
47117 OPC_CheckType, MVT::v8i16,
47118 OPC_MoveParent,
47119 OPC_CheckPredicate1,
47120 OPC_MoveParent,
47121 OPC_MoveSibling1,
47122 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
47123 OPC_MoveChild0,
47124 OPC_SwitchOpcode , 43, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47125 OPC_MoveChild0,
47126 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47127 OPC_RecordChild0,
47128 OPC_CheckType, MVT::v8i16,
47129 OPC_MoveParent,
47130 OPC_CheckPredicate1,
47131 OPC_MoveSibling1,
47132 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47133 OPC_CheckChild0Integer, 126|128,51,
47134 OPC_MoveParent,
47135 OPC_MoveParent,
47136 OPC_CheckType, MVT::v4i32,
47137 OPC_CheckPatternPredicate0,
47138 OPC_EmitInteger32, 0,
47139 OPC_EmitRegisterI32, 0 ,
47140 OPC_EmitRegisterI32, 0 ,
47141 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47142 MVT::v4i32, 0,
47143 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
47144 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
47145 84, TARGET_VAL(ARMISD::VMOVIMM),
47146 OPC_CheckChild0Integer, 126|128,51,
47147 OPC_MoveSibling1,
47148 OPC_SwitchOpcode , 36, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47149 OPC_MoveChild0,
47150 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47151 OPC_RecordChild0,
47152 OPC_CheckType, MVT::v8i16,
47153 OPC_MoveParent,
47154 OPC_CheckPredicate1,
47155 OPC_MoveParent,
47156 OPC_MoveParent,
47157 OPC_CheckType, MVT::v4i32,
47158 OPC_CheckPatternPredicate0,
47159 OPC_EmitInteger32, 0,
47160 OPC_EmitRegisterI32, 0 ,
47161 OPC_EmitRegisterI32, 0 ,
47162 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47163 MVT::v4i32, 0,
47164 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
47165 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
47166 36, TARGET_VAL(ISD::BITCAST),
47167 OPC_MoveChild0,
47168 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47169 OPC_RecordChild0,
47170 OPC_CheckType, MVT::v8i16,
47171 OPC_MoveParent,
47172 OPC_CheckPredicate1,
47173 OPC_MoveParent,
47174 OPC_MoveParent,
47175 OPC_CheckType, MVT::v4i32,
47176 OPC_CheckPatternPredicate0,
47177 OPC_EmitInteger32, 0,
47178 OPC_EmitRegisterI32, 0 ,
47179 OPC_EmitRegisterI32, 0 ,
47180 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47181 MVT::v4i32, 0,
47182 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
47183 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47184 0,
47185 43, TARGET_VAL(ISD::BITCAST),
47186 OPC_MoveChild0,
47187 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47188 OPC_RecordChild0,
47189 OPC_CheckType, MVT::v8i16,
47190 OPC_MoveParent,
47191 OPC_CheckPredicate1,
47192 OPC_MoveSibling1,
47193 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47194 OPC_CheckChild0Integer, 126|128,51,
47195 OPC_MoveParent,
47196 OPC_MoveParent,
47197 OPC_CheckType, MVT::v4i32,
47198 OPC_CheckPatternPredicate0,
47199 OPC_EmitInteger32, 0,
47200 OPC_EmitRegisterI32, 0 ,
47201 OPC_EmitRegisterI32, 0 ,
47202 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47203 MVT::v4i32, 0,
47204 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu16),
47205 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47206 0,
47207 0,
47208 0,
47209 87,
47210 OPC_RecordChild0,
47211 OPC_MoveChild1,
47212 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47213 OPC_CheckChild0Integer, 126|128,51,
47214 OPC_MoveParent,
47215 OPC_MoveSibling1,
47216 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
47217 OPC_Scope, 35,
47218 OPC_RecordChild0,
47219 OPC_MoveChild1,
47220 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47221 OPC_CheckChild0Integer, 126|128,51,
47222 OPC_MoveParent,
47223 OPC_MoveParent,
47224 OPC_CheckType, MVT::v4i32,
47225 OPC_CheckPatternPredicate0,
47226 OPC_EmitInteger32, 0,
47227 OPC_EmitRegisterI32, 0 ,
47228 OPC_EmitRegisterI32, 0 ,
47229 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47230 MVT::v4i32, 0,
47231 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu16),
47232 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47233 35,
47234 OPC_MoveChild0,
47235 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47236 OPC_CheckChild0Integer, 126|128,51,
47237 OPC_MoveParent,
47238 OPC_RecordChild1,
47239 OPC_MoveParent,
47240 OPC_CheckType, MVT::v4i32,
47241 OPC_CheckPatternPredicate0,
47242 OPC_EmitInteger32, 0,
47243 OPC_EmitRegisterI32, 0 ,
47244 OPC_EmitRegisterI32, 0 ,
47245 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47246 MVT::v4i32, 0,
47247 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu16),
47248 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47249 0,
47250 87,
47251 OPC_MoveChild0,
47252 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47253 OPC_CheckChild0Integer, 126|128,51,
47254 OPC_MoveParent,
47255 OPC_RecordChild1,
47256 OPC_MoveSibling1,
47257 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
47258 OPC_Scope, 35,
47259 OPC_RecordChild0,
47260 OPC_MoveChild1,
47261 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47262 OPC_CheckChild0Integer, 126|128,51,
47263 OPC_MoveParent,
47264 OPC_MoveParent,
47265 OPC_CheckType, MVT::v4i32,
47266 OPC_CheckPatternPredicate0,
47267 OPC_EmitInteger32, 0,
47268 OPC_EmitRegisterI32, 0 ,
47269 OPC_EmitRegisterI32, 0 ,
47270 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47271 MVT::v4i32, 0,
47272 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu16),
47273 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47274 35,
47275 OPC_MoveChild0,
47276 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47277 OPC_CheckChild0Integer, 126|128,51,
47278 OPC_MoveParent,
47279 OPC_RecordChild1,
47280 OPC_MoveParent,
47281 OPC_CheckType, MVT::v4i32,
47282 OPC_CheckPatternPredicate0,
47283 OPC_EmitInteger32, 0,
47284 OPC_EmitRegisterI32, 0 ,
47285 OPC_EmitRegisterI32, 0 ,
47286 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47287 MVT::v4i32, 0,
47288 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu16),
47289 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47290 0,
47291 0,
47292 4|128,2, TARGET_VAL(ARMISD::VBICIMM),
47293 OPC_Scope, 89|128,1,
47294 OPC_MoveChild0,
47295 OPC_SwitchOpcode , 104, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47296 OPC_MoveChild0,
47297 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
47298 OPC_RecordChild0,
47299 OPC_CheckType, MVT::v16i8,
47300 OPC_MoveParent,
47301 OPC_CheckPredicate1,
47302 OPC_MoveParent,
47303 OPC_CheckChild1Integer, 126|128,43,
47304 OPC_MoveSibling1,
47305 OPC_CheckOpcode, TARGET_VAL(ARMISD::VBICIMM),
47306 OPC_MoveChild0,
47307 OPC_SwitchOpcode , 39, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47308 OPC_MoveChild0,
47309 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
47310 OPC_RecordChild0,
47311 OPC_CheckType, MVT::v16i8,
47312 OPC_MoveParent,
47313 OPC_CheckPredicate1,
47314 OPC_MoveParent,
47315 OPC_CheckChild1Integer, 126|128,43,
47316 OPC_MoveParent,
47317 OPC_CheckType, MVT::v8i16,
47318 OPC_CheckPatternPredicate0,
47319 OPC_EmitInteger32, 0,
47320 OPC_EmitRegisterI32, 0 ,
47321 OPC_EmitRegisterI32, 0 ,
47322 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47323 MVT::v4i32, 0,
47324 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu8),
47325 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
47326 39, TARGET_VAL(ISD::BITCAST),
47327 OPC_MoveChild0,
47328 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
47329 OPC_RecordChild0,
47330 OPC_CheckType, MVT::v16i8,
47331 OPC_MoveParent,
47332 OPC_CheckPredicate1,
47333 OPC_MoveParent,
47334 OPC_CheckChild1Integer, 126|128,43,
47335 OPC_MoveParent,
47336 OPC_CheckType, MVT::v8i16,
47337 OPC_CheckPatternPredicate0,
47338 OPC_EmitInteger32, 0,
47339 OPC_EmitRegisterI32, 0 ,
47340 OPC_EmitRegisterI32, 0 ,
47341 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47342 MVT::v4i32, 0,
47343 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu8),
47344 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
47345 0,
47346 104, TARGET_VAL(ISD::BITCAST),
47347 OPC_MoveChild0,
47348 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
47349 OPC_RecordChild0,
47350 OPC_CheckType, MVT::v16i8,
47351 OPC_MoveParent,
47352 OPC_CheckPredicate1,
47353 OPC_MoveParent,
47354 OPC_CheckChild1Integer, 126|128,43,
47355 OPC_MoveSibling1,
47356 OPC_CheckOpcode, TARGET_VAL(ARMISD::VBICIMM),
47357 OPC_MoveChild0,
47358 OPC_SwitchOpcode , 39, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47359 OPC_MoveChild0,
47360 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
47361 OPC_RecordChild0,
47362 OPC_CheckType, MVT::v16i8,
47363 OPC_MoveParent,
47364 OPC_CheckPredicate1,
47365 OPC_MoveParent,
47366 OPC_CheckChild1Integer, 126|128,43,
47367 OPC_MoveParent,
47368 OPC_CheckType, MVT::v8i16,
47369 OPC_CheckPatternPredicate0,
47370 OPC_EmitInteger32, 0,
47371 OPC_EmitRegisterI32, 0 ,
47372 OPC_EmitRegisterI32, 0 ,
47373 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47374 MVT::v4i32, 0,
47375 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu8),
47376 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
47377 39, TARGET_VAL(ISD::BITCAST),
47378 OPC_MoveChild0,
47379 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
47380 OPC_RecordChild0,
47381 OPC_CheckType, MVT::v16i8,
47382 OPC_MoveParent,
47383 OPC_CheckPredicate1,
47384 OPC_MoveParent,
47385 OPC_CheckChild1Integer, 126|128,43,
47386 OPC_MoveParent,
47387 OPC_CheckType, MVT::v8i16,
47388 OPC_CheckPatternPredicate0,
47389 OPC_EmitInteger32, 0,
47390 OPC_EmitRegisterI32, 0 ,
47391 OPC_EmitRegisterI32, 0 ,
47392 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47393 MVT::v4i32, 0,
47394 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu8),
47395 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
47396 0,
47397 0,
47398 38,
47399 OPC_RecordChild0,
47400 OPC_CheckChild1Integer, 126|128,43,
47401 OPC_MoveSibling1,
47402 OPC_CheckOpcode, TARGET_VAL(ARMISD::VBICIMM),
47403 OPC_RecordChild0,
47404 OPC_CheckChild1Integer, 126|128,43,
47405 OPC_MoveParent,
47406 OPC_CheckType, MVT::v8i16,
47407 OPC_CheckPatternPredicate0,
47408 OPC_EmitInteger32, 0,
47409 OPC_EmitRegisterI32, 0 ,
47410 OPC_EmitRegisterI32, 0 ,
47411 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47412 MVT::v4i32, 0,
47413 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu8),
47414 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
47415 0,
47416 45|128,3, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
47417 OPC_MoveChild0,
47418 OPC_SwitchOpcode , 81|128,1, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47419 OPC_MoveChild0,
47420 OPC_SwitchOpcode , 100, TARGET_VAL(ARMISD::VREV32),
47421 OPC_RecordChild0,
47422 OPC_CheckType, MVT::v8i16,
47423 OPC_MoveParent,
47424 OPC_CheckPredicate1,
47425 OPC_MoveSibling1,
47426 OPC_CheckValueType, MVT::v4i16,
47427 OPC_MoveParent,
47428 OPC_MoveSibling1,
47429 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
47430 OPC_MoveChild0,
47431 OPC_SwitchOpcode , 39, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47432 OPC_MoveChild0,
47433 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47434 OPC_RecordChild0,
47435 OPC_CheckType, MVT::v8i16,
47436 OPC_MoveParent,
47437 OPC_CheckPredicate1,
47438 OPC_MoveSibling1,
47439 OPC_CheckValueType, MVT::v4i16,
47440 OPC_MoveParent,
47441 OPC_MoveParent,
47442 OPC_CheckType, MVT::v4i32,
47443 OPC_CheckPatternPredicate0,
47444 OPC_EmitInteger32, 0,
47445 OPC_EmitRegisterI32, 0 ,
47446 OPC_EmitRegisterI32, 0 ,
47447 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47448 MVT::v4i32, 0,
47449 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs16),
47450 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47451 39, TARGET_VAL(ISD::BITCAST),
47452 OPC_MoveChild0,
47453 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47454 OPC_RecordChild0,
47455 OPC_CheckType, MVT::v8i16,
47456 OPC_MoveParent,
47457 OPC_CheckPredicate1,
47458 OPC_MoveSibling1,
47459 OPC_CheckValueType, MVT::v4i16,
47460 OPC_MoveParent,
47461 OPC_MoveParent,
47462 OPC_CheckType, MVT::v4i32,
47463 OPC_CheckPatternPredicate0,
47464 OPC_EmitInteger32, 0,
47465 OPC_EmitRegisterI32, 0 ,
47466 OPC_EmitRegisterI32, 0 ,
47467 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47468 MVT::v4i32, 0,
47469 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs16),
47470 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47471 0,
47472 100, TARGET_VAL(ARMISD::VREV16),
47473 OPC_RecordChild0,
47474 OPC_CheckType, MVT::v16i8,
47475 OPC_MoveParent,
47476 OPC_CheckPredicate1,
47477 OPC_MoveSibling1,
47478 OPC_CheckValueType, MVT::v8i8,
47479 OPC_MoveParent,
47480 OPC_MoveSibling1,
47481 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
47482 OPC_MoveChild0,
47483 OPC_SwitchOpcode , 39, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47484 OPC_MoveChild0,
47485 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
47486 OPC_RecordChild0,
47487 OPC_CheckType, MVT::v16i8,
47488 OPC_MoveParent,
47489 OPC_CheckPredicate1,
47490 OPC_MoveSibling1,
47491 OPC_CheckValueType, MVT::v8i8,
47492 OPC_MoveParent,
47493 OPC_MoveParent,
47494 OPC_CheckType, MVT::v8i16,
47495 OPC_CheckPatternPredicate0,
47496 OPC_EmitInteger32, 0,
47497 OPC_EmitRegisterI32, 0 ,
47498 OPC_EmitRegisterI32, 0 ,
47499 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47500 MVT::v4i32, 0,
47501 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs8),
47502 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
47503 39, TARGET_VAL(ISD::BITCAST),
47504 OPC_MoveChild0,
47505 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
47506 OPC_RecordChild0,
47507 OPC_CheckType, MVT::v16i8,
47508 OPC_MoveParent,
47509 OPC_CheckPredicate1,
47510 OPC_MoveSibling1,
47511 OPC_CheckValueType, MVT::v8i8,
47512 OPC_MoveParent,
47513 OPC_MoveParent,
47514 OPC_CheckType, MVT::v8i16,
47515 OPC_CheckPatternPredicate0,
47516 OPC_EmitInteger32, 0,
47517 OPC_EmitRegisterI32, 0 ,
47518 OPC_EmitRegisterI32, 0 ,
47519 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47520 MVT::v4i32, 0,
47521 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs8),
47522 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
47523 0,
47524 0,
47525 81|128,1, TARGET_VAL(ISD::BITCAST),
47526 OPC_MoveChild0,
47527 OPC_SwitchOpcode , 100, TARGET_VAL(ARMISD::VREV32),
47528 OPC_RecordChild0,
47529 OPC_CheckType, MVT::v8i16,
47530 OPC_MoveParent,
47531 OPC_CheckPredicate1,
47532 OPC_MoveSibling1,
47533 OPC_CheckValueType, MVT::v4i16,
47534 OPC_MoveParent,
47535 OPC_MoveSibling1,
47536 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
47537 OPC_MoveChild0,
47538 OPC_SwitchOpcode , 39, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47539 OPC_MoveChild0,
47540 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47541 OPC_RecordChild0,
47542 OPC_CheckType, MVT::v8i16,
47543 OPC_MoveParent,
47544 OPC_CheckPredicate1,
47545 OPC_MoveSibling1,
47546 OPC_CheckValueType, MVT::v4i16,
47547 OPC_MoveParent,
47548 OPC_MoveParent,
47549 OPC_CheckType, MVT::v4i32,
47550 OPC_CheckPatternPredicate0,
47551 OPC_EmitInteger32, 0,
47552 OPC_EmitRegisterI32, 0 ,
47553 OPC_EmitRegisterI32, 0 ,
47554 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47555 MVT::v4i32, 0,
47556 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs16),
47557 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47558 39, TARGET_VAL(ISD::BITCAST),
47559 OPC_MoveChild0,
47560 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV32),
47561 OPC_RecordChild0,
47562 OPC_CheckType, MVT::v8i16,
47563 OPC_MoveParent,
47564 OPC_CheckPredicate1,
47565 OPC_MoveSibling1,
47566 OPC_CheckValueType, MVT::v4i16,
47567 OPC_MoveParent,
47568 OPC_MoveParent,
47569 OPC_CheckType, MVT::v4i32,
47570 OPC_CheckPatternPredicate0,
47571 OPC_EmitInteger32, 0,
47572 OPC_EmitRegisterI32, 0 ,
47573 OPC_EmitRegisterI32, 0 ,
47574 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47575 MVT::v4i32, 0,
47576 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs16),
47577 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47578 0,
47579 100, TARGET_VAL(ARMISD::VREV16),
47580 OPC_RecordChild0,
47581 OPC_CheckType, MVT::v16i8,
47582 OPC_MoveParent,
47583 OPC_CheckPredicate1,
47584 OPC_MoveSibling1,
47585 OPC_CheckValueType, MVT::v8i8,
47586 OPC_MoveParent,
47587 OPC_MoveSibling1,
47588 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
47589 OPC_MoveChild0,
47590 OPC_SwitchOpcode , 39, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
47591 OPC_MoveChild0,
47592 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
47593 OPC_RecordChild0,
47594 OPC_CheckType, MVT::v16i8,
47595 OPC_MoveParent,
47596 OPC_CheckPredicate1,
47597 OPC_MoveSibling1,
47598 OPC_CheckValueType, MVT::v8i8,
47599 OPC_MoveParent,
47600 OPC_MoveParent,
47601 OPC_CheckType, MVT::v8i16,
47602 OPC_CheckPatternPredicate0,
47603 OPC_EmitInteger32, 0,
47604 OPC_EmitRegisterI32, 0 ,
47605 OPC_EmitRegisterI32, 0 ,
47606 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47607 MVT::v4i32, 0,
47608 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs8),
47609 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
47610 39, TARGET_VAL(ISD::BITCAST),
47611 OPC_MoveChild0,
47612 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
47613 OPC_RecordChild0,
47614 OPC_CheckType, MVT::v16i8,
47615 OPC_MoveParent,
47616 OPC_CheckPredicate1,
47617 OPC_MoveSibling1,
47618 OPC_CheckValueType, MVT::v8i8,
47619 OPC_MoveParent,
47620 OPC_MoveParent,
47621 OPC_CheckType, MVT::v8i16,
47622 OPC_CheckPatternPredicate0,
47623 OPC_EmitInteger32, 0,
47624 OPC_EmitRegisterI32, 0 ,
47625 OPC_EmitRegisterI32, 0 ,
47626 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47627 MVT::v4i32, 0,
47628 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs8),
47629 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
47630 0,
47631 0,
47632 0,
47633 0,
47634 0|128,1,
47635 OPC_RecordChild0,
47636 OPC_MoveChild1,
47637 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
47638 OPC_RecordChild0,
47639 OPC_Scope, 39,
47640 OPC_CheckChild0Type, MVT::v16i1,
47641 OPC_MoveChild1,
47642 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
47643 OPC_RecordChild0,
47644 OPC_CheckChild0TypeI32,
47645 OPC_MoveSibling2,
47646 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47647 OPC_MoveChild0,
47648 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47649 OPC_MoveParent,
47650 OPC_CheckPredicate, 36,
47651 OPC_MoveParent,
47652 OPC_MoveParent,
47653 OPC_CheckType, MVT::v16i8,
47654 OPC_CheckPatternPredicate0,
47655 OPC_EmitInteger32, 2,
47656 OPC_EmitRegisterI32, 0 ,
47657 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i8),
47658 MVT::v16i8, 6, 0, 2, 3, 1, 4, 0,
47659 39,
47660 OPC_CheckChild0Type, MVT::v8i1,
47661 OPC_MoveChild1,
47662 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
47663 OPC_RecordChild0,
47664 OPC_CheckChild0TypeI32,
47665 OPC_MoveSibling2,
47666 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47667 OPC_MoveChild0,
47668 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47669 OPC_MoveParent,
47670 OPC_CheckPredicate, 36,
47671 OPC_MoveParent,
47672 OPC_MoveParent,
47673 OPC_CheckType, MVT::v8i16,
47674 OPC_CheckPatternPredicate0,
47675 OPC_EmitInteger32, 2,
47676 OPC_EmitRegisterI32, 0 ,
47677 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i16),
47678 MVT::v8i16, 6, 0, 2, 3, 1, 4, 0,
47679 39,
47680 OPC_CheckChild0Type, MVT::v4i1,
47681 OPC_MoveChild1,
47682 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
47683 OPC_RecordChild0,
47684 OPC_CheckChild0TypeI32,
47685 OPC_MoveSibling2,
47686 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47687 OPC_MoveChild0,
47688 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47689 OPC_MoveParent,
47690 OPC_CheckPredicate, 36,
47691 OPC_MoveParent,
47692 OPC_MoveParent,
47693 OPC_CheckType, MVT::v4i32,
47694 OPC_CheckPatternPredicate0,
47695 OPC_EmitInteger32, 2,
47696 OPC_EmitRegisterI32, 0 ,
47697 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i32),
47698 MVT::v4i32, 6, 0, 2, 3, 1, 4, 0,
47699 0,
47700 2|128,1,
47701 OPC_MoveChild0,
47702 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
47703 OPC_RecordChild0,
47704 OPC_Scope, 40,
47705 OPC_CheckChild0Type, MVT::v16i1,
47706 OPC_MoveChild1,
47707 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
47708 OPC_RecordChild0,
47709 OPC_CheckChild0TypeI32,
47710 OPC_MoveSibling2,
47711 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47712 OPC_MoveChild0,
47713 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47714 OPC_MoveParent,
47715 OPC_CheckPredicate, 36,
47716 OPC_MoveParent,
47717 OPC_MoveParent,
47718 OPC_RecordChild1,
47719 OPC_CheckType, MVT::v16i8,
47720 OPC_CheckPatternPredicate0,
47721 OPC_EmitInteger32, 2,
47722 OPC_EmitRegisterI32, 0 ,
47723 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i8),
47724 MVT::v16i8, 6, 2, 1, 3, 0, 4, 2,
47725 40,
47726 OPC_CheckChild0Type, MVT::v8i1,
47727 OPC_MoveChild1,
47728 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
47729 OPC_RecordChild0,
47730 OPC_CheckChild0TypeI32,
47731 OPC_MoveSibling2,
47732 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47733 OPC_MoveChild0,
47734 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47735 OPC_MoveParent,
47736 OPC_CheckPredicate, 36,
47737 OPC_MoveParent,
47738 OPC_MoveParent,
47739 OPC_RecordChild1,
47740 OPC_CheckType, MVT::v8i16,
47741 OPC_CheckPatternPredicate0,
47742 OPC_EmitInteger32, 2,
47743 OPC_EmitRegisterI32, 0 ,
47744 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i16),
47745 MVT::v8i16, 6, 2, 1, 3, 0, 4, 2,
47746 40,
47747 OPC_CheckChild0Type, MVT::v4i1,
47748 OPC_MoveChild1,
47749 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
47750 OPC_RecordChild0,
47751 OPC_CheckChild0TypeI32,
47752 OPC_MoveSibling2,
47753 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47754 OPC_MoveChild0,
47755 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47756 OPC_MoveParent,
47757 OPC_CheckPredicate, 36,
47758 OPC_MoveParent,
47759 OPC_MoveParent,
47760 OPC_RecordChild1,
47761 OPC_CheckType, MVT::v4i32,
47762 OPC_CheckPatternPredicate0,
47763 OPC_EmitInteger32, 2,
47764 OPC_EmitRegisterI32, 0 ,
47765 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i32),
47766 MVT::v4i32, 6, 2, 1, 3, 0, 4, 2,
47767 0,
47768 113,
47769 OPC_RecordChild0,
47770 OPC_MoveChild1,
47771 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
47772 OPC_RecordChild0,
47773 OPC_Scope, 34,
47774 OPC_CheckChild0Type, MVT::v16i1,
47775 OPC_RecordChild1,
47776 OPC_MoveChild2,
47777 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47778 OPC_MoveChild0,
47779 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47780 OPC_MoveParent,
47781 OPC_CheckPredicate, 36,
47782 OPC_MoveParent,
47783 OPC_MoveParent,
47784 OPC_CheckType, MVT::v16i8,
47785 OPC_CheckPatternPredicate0,
47786 OPC_EmitInteger32, 2,
47787 OPC_EmitRegisterI32, 0 ,
47788 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi8),
47789 MVT::v16i8, 6, 0, 2, 3, 1, 4, 0,
47790 34,
47791 OPC_CheckChild0Type, MVT::v8i1,
47792 OPC_RecordChild1,
47793 OPC_MoveChild2,
47794 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47795 OPC_MoveChild0,
47796 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47797 OPC_MoveParent,
47798 OPC_CheckPredicate, 36,
47799 OPC_MoveParent,
47800 OPC_MoveParent,
47801 OPC_CheckType, MVT::v8i16,
47802 OPC_CheckPatternPredicate0,
47803 OPC_EmitInteger32, 2,
47804 OPC_EmitRegisterI32, 0 ,
47805 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi16),
47806 MVT::v8i16, 6, 0, 2, 3, 1, 4, 0,
47807 34,
47808 OPC_CheckChild0Type, MVT::v4i1,
47809 OPC_RecordChild1,
47810 OPC_MoveChild2,
47811 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47812 OPC_MoveChild0,
47813 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47814 OPC_MoveParent,
47815 OPC_CheckPredicate, 36,
47816 OPC_MoveParent,
47817 OPC_MoveParent,
47818 OPC_CheckType, MVT::v4i32,
47819 OPC_CheckPatternPredicate0,
47820 OPC_EmitInteger32, 2,
47821 OPC_EmitRegisterI32, 0 ,
47822 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi32),
47823 MVT::v4i32, 6, 0, 2, 3, 1, 4, 0,
47824 0,
47825 115,
47826 OPC_MoveChild0,
47827 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
47828 OPC_RecordChild0,
47829 OPC_Scope, 35,
47830 OPC_CheckChild0Type, MVT::v16i1,
47831 OPC_RecordChild1,
47832 OPC_MoveChild2,
47833 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47834 OPC_MoveChild0,
47835 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47836 OPC_MoveParent,
47837 OPC_CheckPredicate, 36,
47838 OPC_MoveParent,
47839 OPC_MoveParent,
47840 OPC_RecordChild1,
47841 OPC_CheckType, MVT::v16i8,
47842 OPC_CheckPatternPredicate0,
47843 OPC_EmitInteger32, 2,
47844 OPC_EmitRegisterI32, 0 ,
47845 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi8),
47846 MVT::v16i8, 6, 2, 1, 3, 0, 4, 2,
47847 35,
47848 OPC_CheckChild0Type, MVT::v8i1,
47849 OPC_RecordChild1,
47850 OPC_MoveChild2,
47851 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47852 OPC_MoveChild0,
47853 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47854 OPC_MoveParent,
47855 OPC_CheckPredicate, 36,
47856 OPC_MoveParent,
47857 OPC_MoveParent,
47858 OPC_RecordChild1,
47859 OPC_CheckType, MVT::v8i16,
47860 OPC_CheckPatternPredicate0,
47861 OPC_EmitInteger32, 2,
47862 OPC_EmitRegisterI32, 0 ,
47863 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi16),
47864 MVT::v8i16, 6, 2, 1, 3, 0, 4, 2,
47865 35,
47866 OPC_CheckChild0Type, MVT::v4i1,
47867 OPC_RecordChild1,
47868 OPC_MoveChild2,
47869 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
47870 OPC_MoveChild0,
47871 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
47872 OPC_MoveParent,
47873 OPC_CheckPredicate, 36,
47874 OPC_MoveParent,
47875 OPC_MoveParent,
47876 OPC_RecordChild1,
47877 OPC_CheckType, MVT::v4i32,
47878 OPC_CheckPatternPredicate0,
47879 OPC_EmitInteger32, 2,
47880 OPC_EmitRegisterI32, 0 ,
47881 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi32),
47882 MVT::v4i32, 6, 2, 1, 3, 0, 4, 2,
47883 0,
47884 104,
47885 OPC_RecordChild0,
47886 OPC_MoveChild1,
47887 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
47888 OPC_RecordChild0,
47889 OPC_Scope, 47,
47890 OPC_CheckChild0Type, MVT::v4i16,
47891 OPC_RecordChild1,
47892 OPC_MoveChild1,
47893 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
47894 OPC_MoveParent,
47895 OPC_MoveParent,
47896 OPC_SwitchType , 16, MVT::v4i16,
47897 OPC_CheckPatternPredicate1,
47898 OPC_EmitConvertToTarget2,
47899 OPC_EmitInteger32, 28,
47900 OPC_EmitRegisterI32, 0 ,
47901 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv4i16),
47902 MVT::v4i16, 5, 0, 1, 3, 4, 5,
47903 16, MVT::v8i16,
47904 OPC_CheckPatternPredicate1,
47905 OPC_EmitConvertToTarget2,
47906 OPC_EmitInteger32, 28,
47907 OPC_EmitRegisterI32, 0 ,
47908 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv8i16),
47909 MVT::v8i16, 5, 0, 1, 3, 4, 5,
47910 0,
47911 47,
47912 OPC_CheckChild0Type, MVT::v2i32,
47913 OPC_RecordChild1,
47914 OPC_MoveChild1,
47915 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
47916 OPC_MoveParent,
47917 OPC_MoveParent,
47918 OPC_SwitchType , 16, MVT::v2i32,
47919 OPC_CheckPatternPredicate1,
47920 OPC_EmitConvertToTarget2,
47921 OPC_EmitInteger32, 28,
47922 OPC_EmitRegisterI32, 0 ,
47923 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv2i32),
47924 MVT::v2i32, 5, 0, 1, 3, 4, 5,
47925 16, MVT::v4i32,
47926 OPC_CheckPatternPredicate1,
47927 OPC_EmitConvertToTarget2,
47928 OPC_EmitInteger32, 28,
47929 OPC_EmitRegisterI32, 0 ,
47930 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv4i32),
47931 MVT::v4i32, 5, 0, 1, 3, 4, 5,
47932 0,
47933 0,
47934 64|128,1,
47935 OPC_MoveChild0,
47936 OPC_SwitchOpcode , 82, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
47937 OPC_RecordChild0,
47938 OPC_MoveChild1,
47939 OPC_Scope, 38,
47940 OPC_CheckValueType, MVT::v4i16,
47941 OPC_MoveParent,
47942 OPC_MoveSibling1,
47943 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
47944 OPC_RecordChild0,
47945 OPC_MoveChild1,
47946 OPC_CheckValueType, MVT::v4i16,
47947 OPC_MoveParent,
47948 OPC_MoveParent,
47949 OPC_CheckType, MVT::v4i32,
47950 OPC_CheckPatternPredicate0,
47951 OPC_EmitInteger32, 0,
47952 OPC_EmitRegisterI32, 0 ,
47953 OPC_EmitRegisterI32, 0 ,
47954 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47955 MVT::v4i32, 0,
47956 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBs16),
47957 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
47958 38,
47959 OPC_CheckValueType, MVT::v8i8,
47960 OPC_MoveParent,
47961 OPC_MoveSibling1,
47962 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
47963 OPC_RecordChild0,
47964 OPC_MoveChild1,
47965 OPC_CheckValueType, MVT::v8i8,
47966 OPC_MoveParent,
47967 OPC_MoveParent,
47968 OPC_CheckType, MVT::v8i16,
47969 OPC_CheckPatternPredicate0,
47970 OPC_EmitInteger32, 0,
47971 OPC_EmitRegisterI32, 0 ,
47972 OPC_EmitRegisterI32, 0 ,
47973 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
47974 MVT::v4i32, 0,
47975 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBs8),
47976 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
47977 0,
47978 101, TARGET_VAL(ARMISD::VDUPLANE),
47979 OPC_RecordChild0,
47980 OPC_Scope, 48,
47981 OPC_CheckChild0Type, MVT::v4i16,
47982 OPC_RecordChild1,
47983 OPC_MoveChild1,
47984 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
47985 OPC_MoveParent,
47986 OPC_MoveParent,
47987 OPC_RecordChild1,
47988 OPC_SwitchType , 16, MVT::v4i16,
47989 OPC_CheckPatternPredicate1,
47990 OPC_EmitConvertToTarget1,
47991 OPC_EmitInteger32, 28,
47992 OPC_EmitRegisterI32, 0 ,
47993 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv4i16),
47994 MVT::v4i16, 5, 2, 0, 3, 4, 5,
47995 16, MVT::v8i16,
47996 OPC_CheckPatternPredicate1,
47997 OPC_EmitConvertToTarget1,
47998 OPC_EmitInteger32, 28,
47999 OPC_EmitRegisterI32, 0 ,
48000 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv8i16),
48001 MVT::v8i16, 5, 2, 0, 3, 4, 5,
48002 0,
48003 48,
48004 OPC_CheckChild0Type, MVT::v2i32,
48005 OPC_RecordChild1,
48006 OPC_MoveChild1,
48007 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48008 OPC_MoveParent,
48009 OPC_MoveParent,
48010 OPC_RecordChild1,
48011 OPC_SwitchType , 16, MVT::v2i32,
48012 OPC_CheckPatternPredicate1,
48013 OPC_EmitConvertToTarget1,
48014 OPC_EmitInteger32, 28,
48015 OPC_EmitRegisterI32, 0 ,
48016 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv2i32),
48017 MVT::v2i32, 5, 2, 0, 3, 4, 5,
48018 16, MVT::v4i32,
48019 OPC_CheckPatternPredicate1,
48020 OPC_EmitConvertToTarget1,
48021 OPC_EmitInteger32, 28,
48022 OPC_EmitRegisterI32, 0 ,
48023 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv4i32),
48024 MVT::v4i32, 5, 2, 0, 3, 4, 5,
48025 0,
48026 0,
48027 0,
48028 92,
48029 OPC_RecordChild0,
48030 OPC_MoveChild1,
48031 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
48032 OPC_RecordChild0,
48033 OPC_Scope, 41,
48034 OPC_CheckChild0Type, MVT::v8i16,
48035 OPC_RecordChild1,
48036 OPC_MoveChild1,
48037 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48038 OPC_MoveParent,
48039 OPC_MoveParent,
48040 OPC_CheckType, MVT::v8i16,
48041 OPC_CheckPatternPredicate1,
48042 OPC_EmitConvertToTarget2,
48043 OPC_EmitNodeXForm, 5, 3,
48044 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
48045 MVT::v4i16, 2, 1, 4,
48046 OPC_EmitConvertToTarget2,
48047 OPC_EmitNodeXForm, 6, 6,
48048 OPC_EmitInteger32, 28,
48049 OPC_EmitRegisterI32, 0 ,
48050 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv8i16),
48051 MVT::v8i16, 5, 0, 5, 7, 8, 9,
48052 41,
48053 OPC_CheckChild0Type, MVT::v4i32,
48054 OPC_RecordChild1,
48055 OPC_MoveChild1,
48056 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48057 OPC_MoveParent,
48058 OPC_MoveParent,
48059 OPC_CheckType, MVT::v4i32,
48060 OPC_CheckPatternPredicate1,
48061 OPC_EmitConvertToTarget2,
48062 OPC_EmitNodeXForm, 7, 3,
48063 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
48064 MVT::v2i32, 2, 1, 4,
48065 OPC_EmitConvertToTarget2,
48066 OPC_EmitNodeXForm, 8, 6,
48067 OPC_EmitInteger32, 28,
48068 OPC_EmitRegisterI32, 0 ,
48069 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv4i32),
48070 MVT::v4i32, 5, 0, 5, 7, 8, 9,
48071 0,
48072 93,
48073 OPC_MoveChild0,
48074 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
48075 OPC_RecordChild0,
48076 OPC_Scope, 42,
48077 OPC_CheckChild0Type, MVT::v8i16,
48078 OPC_RecordChild1,
48079 OPC_MoveChild1,
48080 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48081 OPC_MoveParent,
48082 OPC_MoveParent,
48083 OPC_RecordChild1,
48084 OPC_CheckType, MVT::v8i16,
48085 OPC_CheckPatternPredicate1,
48086 OPC_EmitConvertToTarget1,
48087 OPC_EmitNodeXForm, 5, 3,
48088 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
48089 MVT::v4i16, 2, 0, 4,
48090 OPC_EmitConvertToTarget1,
48091 OPC_EmitNodeXForm, 6, 6,
48092 OPC_EmitInteger32, 28,
48093 OPC_EmitRegisterI32, 0 ,
48094 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv8i16),
48095 MVT::v8i16, 5, 2, 5, 7, 8, 9,
48096 42,
48097 OPC_CheckChild0Type, MVT::v4i32,
48098 OPC_RecordChild1,
48099 OPC_MoveChild1,
48100 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48101 OPC_MoveParent,
48102 OPC_MoveParent,
48103 OPC_RecordChild1,
48104 OPC_CheckType, MVT::v4i32,
48105 OPC_CheckPatternPredicate1,
48106 OPC_EmitConvertToTarget1,
48107 OPC_EmitNodeXForm, 7, 3,
48108 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
48109 MVT::v2i32, 2, 0, 4,
48110 OPC_EmitConvertToTarget1,
48111 OPC_EmitNodeXForm, 8, 6,
48112 OPC_EmitInteger32, 28,
48113 OPC_EmitRegisterI32, 0 ,
48114 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslv4i32),
48115 MVT::v4i32, 5, 2, 5, 7, 8, 9,
48116 0,
48117 85,
48118 OPC_RecordChild0,
48119 OPC_MoveChild1,
48120 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
48121 OPC_RecordChild0,
48122 OPC_CheckChild0TypeI32,
48123 OPC_MoveParent,
48124 OPC_SwitchType , 23, MVT::v16i8,
48125 OPC_CheckPatternPredicate0,
48126 OPC_EmitInteger32, 0,
48127 OPC_EmitRegisterI32, 0 ,
48128 OPC_EmitRegisterI32, 0 ,
48129 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
48130 MVT::v4i32, 0,
48131 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i8),
48132 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
48133 23, MVT::v8i16,
48134 OPC_CheckPatternPredicate0,
48135 OPC_EmitInteger32, 0,
48136 OPC_EmitRegisterI32, 0 ,
48137 OPC_EmitRegisterI32, 0 ,
48138 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
48139 MVT::v4i32, 0,
48140 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i16),
48141 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
48142 23, MVT::v4i32,
48143 OPC_CheckPatternPredicate0,
48144 OPC_EmitInteger32, 0,
48145 OPC_EmitRegisterI32, 0 ,
48146 OPC_EmitRegisterI32, 0 ,
48147 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
48148 MVT::v4i32, 0,
48149 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i32),
48150 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
48151 0,
48152 85,
48153 OPC_MoveChild0,
48154 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
48155 OPC_RecordChild0,
48156 OPC_CheckChild0TypeI32,
48157 OPC_MoveParent,
48158 OPC_RecordChild1,
48159 OPC_SwitchType , 23, MVT::v16i8,
48160 OPC_CheckPatternPredicate0,
48161 OPC_EmitInteger32, 0,
48162 OPC_EmitRegisterI32, 0 ,
48163 OPC_EmitRegisterI32, 0 ,
48164 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
48165 MVT::v4i32, 0,
48166 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i8),
48167 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
48168 23, MVT::v8i16,
48169 OPC_CheckPatternPredicate0,
48170 OPC_EmitInteger32, 0,
48171 OPC_EmitRegisterI32, 0 ,
48172 OPC_EmitRegisterI32, 0 ,
48173 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
48174 MVT::v4i32, 0,
48175 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i16),
48176 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
48177 23, MVT::v4i32,
48178 OPC_CheckPatternPredicate0,
48179 OPC_EmitInteger32, 0,
48180 OPC_EmitRegisterI32, 0 ,
48181 OPC_EmitRegisterI32, 0 ,
48182 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
48183 MVT::v4i32, 0,
48184 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i32),
48185 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
48186 0,
48187 53|128,1,
48188 OPC_RecordChild0,
48189 OPC_RecordChild1,
48190 OPC_SwitchType , 14, MVT::v8i8,
48191 OPC_CheckPatternPredicate1,
48192 OPC_EmitInteger32, 28,
48193 OPC_EmitRegisterI32, 0 ,
48194 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULv8i8),
48195 MVT::v8i8, 4, 0, 1, 2, 3,
48196 14, MVT::v4i16,
48197 OPC_CheckPatternPredicate1,
48198 OPC_EmitInteger32, 28,
48199 OPC_EmitRegisterI32, 0 ,
48200 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULv4i16),
48201 MVT::v4i16, 4, 0, 1, 2, 3,
48202 14, MVT::v2i32,
48203 OPC_CheckPatternPredicate1,
48204 OPC_EmitInteger32, 28,
48205 OPC_EmitRegisterI32, 0 ,
48206 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULv2i32),
48207 MVT::v2i32, 4, 0, 1, 2, 3,
48208 41, MVT::v16i8,
48209 OPC_Scope, 14,
48210 OPC_CheckPatternPredicate1,
48211 OPC_EmitInteger32, 28,
48212 OPC_EmitRegisterI32, 0 ,
48213 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULv16i8),
48214 MVT::v16i8, 4, 0, 1, 2, 3,
48215 23,
48216 OPC_CheckPatternPredicate0,
48217 OPC_EmitInteger32, 0,
48218 OPC_EmitRegisterI32, 0 ,
48219 OPC_EmitRegisterI32, 0 ,
48220 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
48221 MVT::v4i32, 0,
48222 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi8),
48223 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
48224 0,
48225 41, MVT::v8i16,
48226 OPC_Scope, 14,
48227 OPC_CheckPatternPredicate1,
48228 OPC_EmitInteger32, 28,
48229 OPC_EmitRegisterI32, 0 ,
48230 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULv8i16),
48231 MVT::v8i16, 4, 0, 1, 2, 3,
48232 23,
48233 OPC_CheckPatternPredicate0,
48234 OPC_EmitInteger32, 0,
48235 OPC_EmitRegisterI32, 0 ,
48236 OPC_EmitRegisterI32, 0 ,
48237 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
48238 MVT::v4i32, 0,
48239 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi16),
48240 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
48241 0,
48242 41, MVT::v4i32,
48243 OPC_Scope, 14,
48244 OPC_CheckPatternPredicate1,
48245 OPC_EmitInteger32, 28,
48246 OPC_EmitRegisterI32, 0 ,
48247 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULv4i32),
48248 MVT::v4i32, 4, 0, 1, 2, 3,
48249 23,
48250 OPC_CheckPatternPredicate0,
48251 OPC_EmitInteger32, 0,
48252 OPC_EmitRegisterI32, 0 ,
48253 OPC_EmitRegisterI32, 0 ,
48254 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
48255 MVT::v4i32, 0,
48256 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi32),
48257 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
48258 0,
48259 0,
48260 0,
48261 66|128,4, TARGET_VAL(ISD::ATOMIC_LOAD),
48262 OPC_RecordMemRef,
48263 OPC_RecordNode,
48264 OPC_RecordChild1,
48265 OPC_CheckChild1TypeI32,
48266 OPC_CheckTypeI32,
48267 OPC_Scope, 20,
48268 OPC_CheckPredicate3,
48269 OPC_CheckPredicate, 52,
48270 OPC_CheckPatternPredicate3,
48271 OPC_CheckComplexPat1, /*#*/1,
48272 OPC_EmitMergeInputChains1_0,
48273 OPC_EmitInteger32, 28,
48274 OPC_EmitRegisterI32, 0 ,
48275 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDAB), 0|OPFL_Chain|OPFL_MemRefs,
48276 MVT::i32, 3, 2, 3, 4,
48277 20,
48278 OPC_CheckPredicate4,
48279 OPC_CheckPredicate, 52,
48280 OPC_CheckPatternPredicate3,
48281 OPC_CheckComplexPat1, /*#*/1,
48282 OPC_EmitMergeInputChains1_0,
48283 OPC_EmitInteger32, 28,
48284 OPC_EmitRegisterI32, 0 ,
48285 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDAH), 0|OPFL_Chain|OPFL_MemRefs,
48286 MVT::i32, 3, 2, 3, 4,
48287 21,
48288 OPC_CheckPredicate, 33,
48289 OPC_CheckPredicate, 52,
48290 OPC_CheckPatternPredicate3,
48291 OPC_CheckComplexPat1, /*#*/1,
48292 OPC_EmitMergeInputChains1_0,
48293 OPC_EmitInteger32, 28,
48294 OPC_EmitRegisterI32, 0 ,
48295 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDA), 0|OPFL_Chain|OPFL_MemRefs,
48296 MVT::i32, 3, 2, 3, 4,
48297 21,
48298 OPC_CheckPredicate3,
48299 OPC_CheckPredicate, 52,
48300 OPC_CheckPatternPredicate, 29,
48301 OPC_CheckComplexPat1, /*#*/1,
48302 OPC_EmitMergeInputChains1_0,
48303 OPC_EmitInteger32, 28,
48304 OPC_EmitRegisterI32, 0 ,
48305 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDAB), 0|OPFL_Chain|OPFL_MemRefs,
48306 MVT::i32, 3, 2, 3, 4,
48307 21,
48308 OPC_CheckPredicate4,
48309 OPC_CheckPredicate, 52,
48310 OPC_CheckPatternPredicate, 29,
48311 OPC_CheckComplexPat1, /*#*/1,
48312 OPC_EmitMergeInputChains1_0,
48313 OPC_EmitInteger32, 28,
48314 OPC_EmitRegisterI32, 0 ,
48315 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDAH), 0|OPFL_Chain|OPFL_MemRefs,
48316 MVT::i32, 3, 2, 3, 4,
48317 22,
48318 OPC_CheckPredicate, 33,
48319 OPC_CheckPredicate, 52,
48320 OPC_CheckPatternPredicate, 29,
48321 OPC_CheckComplexPat1, /*#*/1,
48322 OPC_EmitMergeInputChains1_0,
48323 OPC_EmitInteger32, 28,
48324 OPC_EmitRegisterI32, 0 ,
48325 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDA), 0|OPFL_Chain|OPFL_MemRefs,
48326 MVT::i32, 3, 2, 3, 4,
48327 21,
48328 OPC_CheckPredicate3,
48329 OPC_CheckPatternPredicate3,
48330 OPC_CheckComplexPat, /*CP*/19, /*#*/1,
48331 OPC_EmitMergeInputChains1_0,
48332 OPC_EmitInteger32, 28,
48333 OPC_EmitRegisterI32, 0 ,
48334 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRBrs), 0|OPFL_Chain|OPFL_MemRefs,
48335 MVT::i32, 5, 2, 3, 4, 5, 6,
48336 21,
48337 OPC_CheckPredicate4,
48338 OPC_CheckPatternPredicate3,
48339 OPC_CheckComplexPat, /*CP*/21, /*#*/1,
48340 OPC_EmitMergeInputChains1_0,
48341 OPC_EmitInteger32, 28,
48342 OPC_EmitRegisterI32, 0 ,
48343 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRH), 0|OPFL_Chain|OPFL_MemRefs,
48344 MVT::i32, 5, 2, 3, 4, 5, 6,
48345 22,
48346 OPC_CheckPredicate, 33,
48347 OPC_CheckPatternPredicate3,
48348 OPC_CheckComplexPat, /*CP*/19, /*#*/1,
48349 OPC_EmitMergeInputChains1_0,
48350 OPC_EmitInteger32, 28,
48351 OPC_EmitRegisterI32, 0 ,
48352 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRrs), 0|OPFL_Chain|OPFL_MemRefs,
48353 MVT::i32, 5, 2, 3, 4, 5, 6,
48354 21,
48355 OPC_CheckPredicate3,
48356 OPC_CheckPatternPredicate4,
48357 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
48358 OPC_EmitMergeInputChains1_0,
48359 OPC_EmitInteger32, 28,
48360 OPC_EmitRegisterI32, 0 ,
48361 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBs), 0|OPFL_Chain|OPFL_MemRefs,
48362 MVT::i32, 5, 2, 3, 4, 5, 6,
48363 21,
48364 OPC_CheckPredicate4,
48365 OPC_CheckPatternPredicate4,
48366 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
48367 OPC_EmitMergeInputChains1_0,
48368 OPC_EmitInteger32, 28,
48369 OPC_EmitRegisterI32, 0 ,
48370 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRHs), 0|OPFL_Chain|OPFL_MemRefs,
48371 MVT::i32, 5, 2, 3, 4, 5, 6,
48372 22,
48373 OPC_CheckPredicate, 33,
48374 OPC_CheckPatternPredicate4,
48375 OPC_CheckComplexPat, /*CP*/15, /*#*/1,
48376 OPC_EmitMergeInputChains1_0,
48377 OPC_EmitInteger32, 28,
48378 OPC_EmitRegisterI32, 0 ,
48379 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRs), 0|OPFL_Chain|OPFL_MemRefs,
48380 MVT::i32, 5, 2, 3, 4, 5, 6,
48381 20,
48382 OPC_CheckPredicate3,
48383 OPC_CheckPatternPredicate3,
48384 OPC_CheckComplexPat, /*CP*/20, /*#*/1,
48385 OPC_EmitMergeInputChains1_0,
48386 OPC_EmitInteger32, 28,
48387 OPC_EmitRegisterI32, 0 ,
48388 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRBi12), 0|OPFL_Chain|OPFL_MemRefs,
48389 MVT::i32, 4, 2, 3, 4, 5,
48390 21,
48391 OPC_CheckPredicate, 33,
48392 OPC_CheckPatternPredicate3,
48393 OPC_CheckComplexPat, /*CP*/20, /*#*/1,
48394 OPC_EmitMergeInputChains1_0,
48395 OPC_EmitInteger32, 28,
48396 OPC_EmitRegisterI32, 0 ,
48397 OPC_MorphNodeTo1, TARGET_VAL(ARM::LDRi12), 0|OPFL_Chain|OPFL_MemRefs,
48398 MVT::i32, 4, 2, 3, 4, 5,
48399 43,
48400 OPC_CheckPredicate3,
48401 OPC_CheckPatternPredicate, 10,
48402 OPC_Scope, 18,
48403 OPC_CheckComplexPat, /*CP*/27, /*#*/1,
48404 OPC_EmitMergeInputChains1_0,
48405 OPC_EmitInteger32, 28,
48406 OPC_EmitRegisterI32, 0 ,
48407 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRBi), 0|OPFL_Chain|OPFL_MemRefs,
48408 MVT::i32, 4, 2, 3, 4, 5,
48409 18,
48410 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
48411 OPC_EmitMergeInputChains1_0,
48412 OPC_EmitInteger32, 28,
48413 OPC_EmitRegisterI32, 0 ,
48414 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRBr), 0|OPFL_Chain|OPFL_MemRefs,
48415 MVT::i32, 4, 2, 3, 4, 5,
48416 0,
48417 43,
48418 OPC_CheckPredicate4,
48419 OPC_CheckPatternPredicate, 10,
48420 OPC_Scope, 18,
48421 OPC_CheckComplexPat, /*CP*/26, /*#*/1,
48422 OPC_EmitMergeInputChains1_0,
48423 OPC_EmitInteger32, 28,
48424 OPC_EmitRegisterI32, 0 ,
48425 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRHi), 0|OPFL_Chain|OPFL_MemRefs,
48426 MVT::i32, 4, 2, 3, 4, 5,
48427 18,
48428 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
48429 OPC_EmitMergeInputChains1_0,
48430 OPC_EmitInteger32, 28,
48431 OPC_EmitRegisterI32, 0 ,
48432 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRHr), 0|OPFL_Chain|OPFL_MemRefs,
48433 MVT::i32, 4, 2, 3, 4, 5,
48434 0,
48435 44,
48436 OPC_CheckPredicate, 33,
48437 OPC_CheckPatternPredicate, 10,
48438 OPC_Scope, 18,
48439 OPC_CheckComplexPat, /*CP*/36, /*#*/1,
48440 OPC_EmitMergeInputChains1_0,
48441 OPC_EmitInteger32, 28,
48442 OPC_EmitRegisterI32, 0 ,
48443 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRi), 0|OPFL_Chain|OPFL_MemRefs,
48444 MVT::i32, 4, 2, 3, 4, 5,
48445 18,
48446 OPC_CheckComplexPat, /*CP*/17, /*#*/1,
48447 OPC_EmitMergeInputChains1_0,
48448 OPC_EmitInteger32, 28,
48449 OPC_EmitRegisterI32, 0 ,
48450 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRr), 0|OPFL_Chain|OPFL_MemRefs,
48451 MVT::i32, 4, 2, 3, 4, 5,
48452 0,
48453 42,
48454 OPC_CheckPredicate3,
48455 OPC_CheckPatternPredicate4,
48456 OPC_Scope, 18,
48457 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
48458 OPC_EmitMergeInputChains1_0,
48459 OPC_EmitInteger32, 28,
48460 OPC_EmitRegisterI32, 0 ,
48461 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBi12), 0|OPFL_Chain|OPFL_MemRefs,
48462 MVT::i32, 4, 2, 3, 4, 5,
48463 18,
48464 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
48465 OPC_EmitMergeInputChains1_0,
48466 OPC_EmitInteger32, 28,
48467 OPC_EmitRegisterI32, 0 ,
48468 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRBi8), 0|OPFL_Chain|OPFL_MemRefs,
48469 MVT::i32, 4, 2, 3, 4, 5,
48470 0,
48471 42,
48472 OPC_CheckPredicate4,
48473 OPC_CheckPatternPredicate4,
48474 OPC_Scope, 18,
48475 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
48476 OPC_EmitMergeInputChains1_0,
48477 OPC_EmitInteger32, 28,
48478 OPC_EmitRegisterI32, 0 ,
48479 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRHi12), 0|OPFL_Chain|OPFL_MemRefs,
48480 MVT::i32, 4, 2, 3, 4, 5,
48481 18,
48482 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
48483 OPC_EmitMergeInputChains1_0,
48484 OPC_EmitInteger32, 28,
48485 OPC_EmitRegisterI32, 0 ,
48486 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRHi8), 0|OPFL_Chain|OPFL_MemRefs,
48487 MVT::i32, 4, 2, 3, 4, 5,
48488 0,
48489 43,
48490 OPC_CheckPredicate, 33,
48491 OPC_CheckPatternPredicate4,
48492 OPC_Scope, 18,
48493 OPC_CheckComplexPat, /*CP*/11, /*#*/1,
48494 OPC_EmitMergeInputChains1_0,
48495 OPC_EmitInteger32, 28,
48496 OPC_EmitRegisterI32, 0 ,
48497 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRi12), 0|OPFL_Chain|OPFL_MemRefs,
48498 MVT::i32, 4, 2, 3, 4, 5,
48499 18,
48500 OPC_CheckComplexPat, /*CP*/16, /*#*/1,
48501 OPC_EmitMergeInputChains1_0,
48502 OPC_EmitInteger32, 28,
48503 OPC_EmitRegisterI32, 0 ,
48504 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRi8), 0|OPFL_Chain|OPFL_MemRefs,
48505 MVT::i32, 4, 2, 3, 4, 5,
48506 0,
48507 0,
48508 67|128,4, TARGET_VAL(ISD::ATOMIC_STORE),
48509 OPC_RecordMemRef,
48510 OPC_RecordNode,
48511 OPC_RecordChild1,
48512 OPC_CheckChild1TypeI32,
48513 OPC_RecordChild2,
48514 OPC_CheckChild2TypeI32,
48515 OPC_Scope, 20,
48516 OPC_CheckPredicate3,
48517 OPC_CheckPredicate, 53,
48518 OPC_CheckPatternPredicate3,
48519 OPC_CheckComplexPat1, /*#*/2,
48520 OPC_EmitMergeInputChains1_0,
48521 OPC_EmitInteger32, 28,
48522 OPC_EmitRegisterI32, 0 ,
48523 OPC_MorphNodeTo0, TARGET_VAL(ARM::STLB), 0|OPFL_Chain|OPFL_MemRefs,
48524 4, 1, 3, 4, 5,
48525 20,
48526 OPC_CheckPredicate4,
48527 OPC_CheckPredicate, 53,
48528 OPC_CheckPatternPredicate3,
48529 OPC_CheckComplexPat1, /*#*/2,
48530 OPC_EmitMergeInputChains1_0,
48531 OPC_EmitInteger32, 28,
48532 OPC_EmitRegisterI32, 0 ,
48533 OPC_MorphNodeTo0, TARGET_VAL(ARM::STLH), 0|OPFL_Chain|OPFL_MemRefs,
48534 4, 1, 3, 4, 5,
48535 21,
48536 OPC_CheckPredicate, 33,
48537 OPC_CheckPredicate, 53,
48538 OPC_CheckPatternPredicate3,
48539 OPC_CheckComplexPat1, /*#*/2,
48540 OPC_EmitMergeInputChains1_0,
48541 OPC_EmitInteger32, 28,
48542 OPC_EmitRegisterI32, 0 ,
48543 OPC_MorphNodeTo0, TARGET_VAL(ARM::STL), 0|OPFL_Chain|OPFL_MemRefs,
48544 4, 1, 3, 4, 5,
48545 21,
48546 OPC_CheckPredicate3,
48547 OPC_CheckPredicate, 53,
48548 OPC_CheckPatternPredicate, 29,
48549 OPC_CheckComplexPat1, /*#*/2,
48550 OPC_EmitMergeInputChains1_0,
48551 OPC_EmitInteger32, 28,
48552 OPC_EmitRegisterI32, 0 ,
48553 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STLB), 0|OPFL_Chain|OPFL_MemRefs,
48554 4, 1, 3, 4, 5,
48555 21,
48556 OPC_CheckPredicate4,
48557 OPC_CheckPredicate, 53,
48558 OPC_CheckPatternPredicate, 29,
48559 OPC_CheckComplexPat1, /*#*/2,
48560 OPC_EmitMergeInputChains1_0,
48561 OPC_EmitInteger32, 28,
48562 OPC_EmitRegisterI32, 0 ,
48563 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STLH), 0|OPFL_Chain|OPFL_MemRefs,
48564 4, 1, 3, 4, 5,
48565 22,
48566 OPC_CheckPredicate, 33,
48567 OPC_CheckPredicate, 53,
48568 OPC_CheckPatternPredicate, 29,
48569 OPC_CheckComplexPat1, /*#*/2,
48570 OPC_EmitMergeInputChains1_0,
48571 OPC_EmitInteger32, 28,
48572 OPC_EmitRegisterI32, 0 ,
48573 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STL), 0|OPFL_Chain|OPFL_MemRefs,
48574 4, 1, 3, 4, 5,
48575 21,
48576 OPC_CheckPredicate3,
48577 OPC_CheckPatternPredicate3,
48578 OPC_CheckComplexPat, /*CP*/19, /*#*/2,
48579 OPC_EmitMergeInputChains1_0,
48580 OPC_EmitInteger32, 28,
48581 OPC_EmitRegisterI32, 0 ,
48582 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRBrs), 0|OPFL_Chain|OPFL_MemRefs,
48583 6, 1, 3, 4, 5, 6, 7,
48584 21,
48585 OPC_CheckPredicate4,
48586 OPC_CheckPatternPredicate3,
48587 OPC_CheckComplexPat, /*CP*/21, /*#*/2,
48588 OPC_EmitMergeInputChains1_0,
48589 OPC_EmitInteger32, 28,
48590 OPC_EmitRegisterI32, 0 ,
48591 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRH), 0|OPFL_Chain|OPFL_MemRefs,
48592 6, 1, 3, 4, 5, 6, 7,
48593 22,
48594 OPC_CheckPredicate, 33,
48595 OPC_CheckPatternPredicate3,
48596 OPC_CheckComplexPat, /*CP*/19, /*#*/2,
48597 OPC_EmitMergeInputChains1_0,
48598 OPC_EmitInteger32, 28,
48599 OPC_EmitRegisterI32, 0 ,
48600 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRrs), 0|OPFL_Chain|OPFL_MemRefs,
48601 6, 1, 3, 4, 5, 6, 7,
48602 21,
48603 OPC_CheckPredicate3,
48604 OPC_CheckPatternPredicate4,
48605 OPC_CheckComplexPat, /*CP*/15, /*#*/2,
48606 OPC_EmitMergeInputChains1_0,
48607 OPC_EmitInteger32, 28,
48608 OPC_EmitRegisterI32, 0 ,
48609 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRBs), 0|OPFL_Chain|OPFL_MemRefs,
48610 6, 1, 3, 4, 5, 6, 7,
48611 21,
48612 OPC_CheckPredicate4,
48613 OPC_CheckPatternPredicate4,
48614 OPC_CheckComplexPat, /*CP*/15, /*#*/2,
48615 OPC_EmitMergeInputChains1_0,
48616 OPC_EmitInteger32, 28,
48617 OPC_EmitRegisterI32, 0 ,
48618 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRHs), 0|OPFL_Chain|OPFL_MemRefs,
48619 6, 1, 3, 4, 5, 6, 7,
48620 22,
48621 OPC_CheckPredicate, 33,
48622 OPC_CheckPatternPredicate4,
48623 OPC_CheckComplexPat, /*CP*/15, /*#*/2,
48624 OPC_EmitMergeInputChains1_0,
48625 OPC_EmitInteger32, 28,
48626 OPC_EmitRegisterI32, 0 ,
48627 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRs), 0|OPFL_Chain|OPFL_MemRefs,
48628 6, 1, 3, 4, 5, 6, 7,
48629 20,
48630 OPC_CheckPredicate3,
48631 OPC_CheckPatternPredicate3,
48632 OPC_CheckComplexPat, /*CP*/20, /*#*/2,
48633 OPC_EmitMergeInputChains1_0,
48634 OPC_EmitInteger32, 28,
48635 OPC_EmitRegisterI32, 0 ,
48636 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRBi12), 0|OPFL_Chain|OPFL_MemRefs,
48637 5, 1, 3, 4, 5, 6,
48638 21,
48639 OPC_CheckPredicate, 33,
48640 OPC_CheckPatternPredicate3,
48641 OPC_CheckComplexPat, /*CP*/20, /*#*/2,
48642 OPC_EmitMergeInputChains1_0,
48643 OPC_EmitInteger32, 28,
48644 OPC_EmitRegisterI32, 0 ,
48645 OPC_MorphNodeTo0, TARGET_VAL(ARM::STRi12), 0|OPFL_Chain|OPFL_MemRefs,
48646 5, 1, 3, 4, 5, 6,
48647 43,
48648 OPC_CheckPredicate3,
48649 OPC_CheckPatternPredicate, 10,
48650 OPC_Scope, 18,
48651 OPC_CheckComplexPat, /*CP*/27, /*#*/2,
48652 OPC_EmitMergeInputChains1_0,
48653 OPC_EmitInteger32, 28,
48654 OPC_EmitRegisterI32, 0 ,
48655 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRBi), 0|OPFL_Chain|OPFL_MemRefs,
48656 5, 1, 3, 4, 5, 6,
48657 18,
48658 OPC_CheckComplexPat, /*CP*/17, /*#*/2,
48659 OPC_EmitMergeInputChains1_0,
48660 OPC_EmitInteger32, 28,
48661 OPC_EmitRegisterI32, 0 ,
48662 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRBr), 0|OPFL_Chain|OPFL_MemRefs,
48663 5, 1, 3, 4, 5, 6,
48664 0,
48665 43,
48666 OPC_CheckPredicate4,
48667 OPC_CheckPatternPredicate, 10,
48668 OPC_Scope, 18,
48669 OPC_CheckComplexPat, /*CP*/26, /*#*/2,
48670 OPC_EmitMergeInputChains1_0,
48671 OPC_EmitInteger32, 28,
48672 OPC_EmitRegisterI32, 0 ,
48673 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRHi), 0|OPFL_Chain|OPFL_MemRefs,
48674 5, 1, 3, 4, 5, 6,
48675 18,
48676 OPC_CheckComplexPat, /*CP*/17, /*#*/2,
48677 OPC_EmitMergeInputChains1_0,
48678 OPC_EmitInteger32, 28,
48679 OPC_EmitRegisterI32, 0 ,
48680 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRHr), 0|OPFL_Chain|OPFL_MemRefs,
48681 5, 1, 3, 4, 5, 6,
48682 0,
48683 44,
48684 OPC_CheckPredicate, 33,
48685 OPC_CheckPatternPredicate, 10,
48686 OPC_Scope, 18,
48687 OPC_CheckComplexPat, /*CP*/36, /*#*/2,
48688 OPC_EmitMergeInputChains1_0,
48689 OPC_EmitInteger32, 28,
48690 OPC_EmitRegisterI32, 0 ,
48691 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRi), 0|OPFL_Chain|OPFL_MemRefs,
48692 5, 1, 3, 4, 5, 6,
48693 18,
48694 OPC_CheckComplexPat, /*CP*/17, /*#*/2,
48695 OPC_EmitMergeInputChains1_0,
48696 OPC_EmitInteger32, 28,
48697 OPC_EmitRegisterI32, 0 ,
48698 OPC_MorphNodeTo0, TARGET_VAL(ARM::tSTRr), 0|OPFL_Chain|OPFL_MemRefs,
48699 5, 1, 3, 4, 5, 6,
48700 0,
48701 42,
48702 OPC_CheckPredicate3,
48703 OPC_CheckPatternPredicate4,
48704 OPC_Scope, 18,
48705 OPC_CheckComplexPat, /*CP*/11, /*#*/2,
48706 OPC_EmitMergeInputChains1_0,
48707 OPC_EmitInteger32, 28,
48708 OPC_EmitRegisterI32, 0 ,
48709 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRBi12), 0|OPFL_Chain|OPFL_MemRefs,
48710 5, 1, 3, 4, 5, 6,
48711 18,
48712 OPC_CheckComplexPat, /*CP*/16, /*#*/2,
48713 OPC_EmitMergeInputChains1_0,
48714 OPC_EmitInteger32, 28,
48715 OPC_EmitRegisterI32, 0 ,
48716 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRBi8), 0|OPFL_Chain|OPFL_MemRefs,
48717 5, 1, 3, 4, 5, 6,
48718 0,
48719 42,
48720 OPC_CheckPredicate4,
48721 OPC_CheckPatternPredicate4,
48722 OPC_Scope, 18,
48723 OPC_CheckComplexPat, /*CP*/11, /*#*/2,
48724 OPC_EmitMergeInputChains1_0,
48725 OPC_EmitInteger32, 28,
48726 OPC_EmitRegisterI32, 0 ,
48727 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRHi12), 0|OPFL_Chain|OPFL_MemRefs,
48728 5, 1, 3, 4, 5, 6,
48729 18,
48730 OPC_CheckComplexPat, /*CP*/16, /*#*/2,
48731 OPC_EmitMergeInputChains1_0,
48732 OPC_EmitInteger32, 28,
48733 OPC_EmitRegisterI32, 0 ,
48734 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRHi8), 0|OPFL_Chain|OPFL_MemRefs,
48735 5, 1, 3, 4, 5, 6,
48736 0,
48737 43,
48738 OPC_CheckPredicate, 33,
48739 OPC_CheckPatternPredicate4,
48740 OPC_Scope, 18,
48741 OPC_CheckComplexPat, /*CP*/11, /*#*/2,
48742 OPC_EmitMergeInputChains1_0,
48743 OPC_EmitInteger32, 28,
48744 OPC_EmitRegisterI32, 0 ,
48745 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRi12), 0|OPFL_Chain|OPFL_MemRefs,
48746 5, 1, 3, 4, 5, 6,
48747 18,
48748 OPC_CheckComplexPat, /*CP*/16, /*#*/2,
48749 OPC_EmitMergeInputChains1_0,
48750 OPC_EmitInteger32, 28,
48751 OPC_EmitRegisterI32, 0 ,
48752 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRi8), 0|OPFL_Chain|OPFL_MemRefs,
48753 5, 1, 3, 4, 5, 6,
48754 0,
48755 0,
48756 106, TARGET_VAL(ARMISD::CSINC),
48757 OPC_CaptureGlueInput,
48758 OPC_Scope, 53,
48759 OPC_CheckChild0Integer, 0,
48760 OPC_Scope, 25,
48761 OPC_CheckChild1Integer, 0,
48762 OPC_RecordChild2,
48763 OPC_MoveChild2,
48764 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48765 OPC_CheckPredicate5,
48766 OPC_MoveParent,
48767 OPC_CheckTypeI32,
48768 OPC_CheckPatternPredicate, 20,
48769 OPC_EmitRegisterI32, ARM::ZR,
48770 OPC_EmitRegisterI32, ARM::ZR,
48771 OPC_EmitConvertToTarget0,
48772 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINC),
48773 MVT::i32, 3, 1, 2, 3,
48774 22,
48775 OPC_RecordChild1,
48776 OPC_RecordChild2,
48777 OPC_MoveChild2,
48778 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48779 OPC_CheckPredicate5,
48780 OPC_MoveParent,
48781 OPC_CheckTypeI32,
48782 OPC_CheckPatternPredicate, 20,
48783 OPC_EmitRegisterI32, ARM::ZR,
48784 OPC_EmitConvertToTarget1,
48785 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINC),
48786 MVT::i32, 3, 2, 0, 3,
48787 0,
48788 48,
48789 OPC_RecordChild0,
48790 OPC_Scope, 23,
48791 OPC_CheckChild1Integer, 0,
48792 OPC_RecordChild2,
48793 OPC_MoveChild2,
48794 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48795 OPC_CheckPredicate5,
48796 OPC_MoveParent,
48797 OPC_CheckTypeI32,
48798 OPC_CheckPatternPredicate, 20,
48799 OPC_EmitRegisterI32, ARM::ZR,
48800 OPC_EmitConvertToTarget1,
48801 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINC),
48802 MVT::i32, 3, 0, 2, 3,
48803 20,
48804 OPC_RecordChild1,
48805 OPC_RecordChild2,
48806 OPC_MoveChild2,
48807 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48808 OPC_CheckPredicate5,
48809 OPC_MoveParent,
48810 OPC_CheckTypeI32,
48811 OPC_CheckPatternPredicate, 20,
48812 OPC_EmitConvertToTarget2,
48813 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINC),
48814 MVT::i32, 3, 0, 1, 3,
48815 0,
48816 0,
48817 106, TARGET_VAL(ARMISD::CSINV),
48818 OPC_CaptureGlueInput,
48819 OPC_Scope, 53,
48820 OPC_CheckChild0Integer, 0,
48821 OPC_Scope, 25,
48822 OPC_CheckChild1Integer, 0,
48823 OPC_RecordChild2,
48824 OPC_MoveChild2,
48825 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48826 OPC_CheckPredicate5,
48827 OPC_MoveParent,
48828 OPC_CheckTypeI32,
48829 OPC_CheckPatternPredicate, 20,
48830 OPC_EmitRegisterI32, ARM::ZR,
48831 OPC_EmitRegisterI32, ARM::ZR,
48832 OPC_EmitConvertToTarget0,
48833 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINV),
48834 MVT::i32, 3, 1, 2, 3,
48835 22,
48836 OPC_RecordChild1,
48837 OPC_RecordChild2,
48838 OPC_MoveChild2,
48839 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48840 OPC_CheckPredicate5,
48841 OPC_MoveParent,
48842 OPC_CheckTypeI32,
48843 OPC_CheckPatternPredicate, 20,
48844 OPC_EmitRegisterI32, ARM::ZR,
48845 OPC_EmitConvertToTarget1,
48846 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINV),
48847 MVT::i32, 3, 2, 0, 3,
48848 0,
48849 48,
48850 OPC_RecordChild0,
48851 OPC_Scope, 23,
48852 OPC_CheckChild1Integer, 0,
48853 OPC_RecordChild2,
48854 OPC_MoveChild2,
48855 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48856 OPC_CheckPredicate5,
48857 OPC_MoveParent,
48858 OPC_CheckTypeI32,
48859 OPC_CheckPatternPredicate, 20,
48860 OPC_EmitRegisterI32, ARM::ZR,
48861 OPC_EmitConvertToTarget1,
48862 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINV),
48863 MVT::i32, 3, 0, 2, 3,
48864 20,
48865 OPC_RecordChild1,
48866 OPC_RecordChild2,
48867 OPC_MoveChild2,
48868 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48869 OPC_CheckPredicate5,
48870 OPC_MoveParent,
48871 OPC_CheckTypeI32,
48872 OPC_CheckPatternPredicate, 20,
48873 OPC_EmitConvertToTarget2,
48874 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSINV),
48875 MVT::i32, 3, 0, 1, 3,
48876 0,
48877 0,
48878 106, TARGET_VAL(ARMISD::CSNEG),
48879 OPC_CaptureGlueInput,
48880 OPC_Scope, 53,
48881 OPC_CheckChild0Integer, 0,
48882 OPC_Scope, 25,
48883 OPC_CheckChild1Integer, 0,
48884 OPC_RecordChild2,
48885 OPC_MoveChild2,
48886 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48887 OPC_CheckPredicate5,
48888 OPC_MoveParent,
48889 OPC_CheckTypeI32,
48890 OPC_CheckPatternPredicate, 20,
48891 OPC_EmitRegisterI32, ARM::ZR,
48892 OPC_EmitRegisterI32, ARM::ZR,
48893 OPC_EmitConvertToTarget0,
48894 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSNEG),
48895 MVT::i32, 3, 1, 2, 3,
48896 22,
48897 OPC_RecordChild1,
48898 OPC_RecordChild2,
48899 OPC_MoveChild2,
48900 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48901 OPC_CheckPredicate5,
48902 OPC_MoveParent,
48903 OPC_CheckTypeI32,
48904 OPC_CheckPatternPredicate, 20,
48905 OPC_EmitRegisterI32, ARM::ZR,
48906 OPC_EmitConvertToTarget1,
48907 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSNEG),
48908 MVT::i32, 3, 2, 0, 3,
48909 0,
48910 48,
48911 OPC_RecordChild0,
48912 OPC_Scope, 23,
48913 OPC_CheckChild1Integer, 0,
48914 OPC_RecordChild2,
48915 OPC_MoveChild2,
48916 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48917 OPC_CheckPredicate5,
48918 OPC_MoveParent,
48919 OPC_CheckTypeI32,
48920 OPC_CheckPatternPredicate, 20,
48921 OPC_EmitRegisterI32, ARM::ZR,
48922 OPC_EmitConvertToTarget1,
48923 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSNEG),
48924 MVT::i32, 3, 0, 2, 3,
48925 20,
48926 OPC_RecordChild1,
48927 OPC_RecordChild2,
48928 OPC_MoveChild2,
48929 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48930 OPC_CheckPredicate5,
48931 OPC_MoveParent,
48932 OPC_CheckTypeI32,
48933 OPC_CheckPatternPredicate, 20,
48934 OPC_EmitConvertToTarget2,
48935 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2CSNEG),
48936 MVT::i32, 3, 0, 1, 3,
48937 0,
48938 0,
48939 97|128,1, TARGET_VAL(ISD::ROTR),
48940 OPC_Scope, 24,
48941 OPC_MoveChild0,
48942 OPC_CheckOpcode, TARGET_VAL(ISD::BSWAP),
48943 OPC_RecordChild0,
48944 OPC_MoveParent,
48945 OPC_CheckChild1Integer, 32,
48946 OPC_CheckChild1TypeI32,
48947 OPC_CheckTypeI32,
48948 OPC_CheckPatternPredicate, 9,
48949 OPC_EmitInteger32, 28,
48950 OPC_EmitRegisterI32, 0 ,
48951 OPC_MorphNodeTo1None, TARGET_VAL(ARM::REV16),
48952 MVT::i32, 3, 0, 1, 2,
48953 23,
48954 OPC_RecordNode,
48955 OPC_CheckTypeI32,
48956 OPC_CheckPatternPredicate3,
48957 OPC_CheckComplexPat, /*CP*/32, /*#*/0,
48958 OPC_EmitInteger32, 28,
48959 OPC_EmitRegisterI32, 0 ,
48960 OPC_EmitRegisterI32, 0 ,
48961 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVsr),
48962 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
48963 41,
48964 OPC_MoveChild0,
48965 OPC_CheckOpcode, TARGET_VAL(ISD::BSWAP),
48966 OPC_RecordChild0,
48967 OPC_MoveParent,
48968 OPC_CheckChild1Integer, 32,
48969 OPC_CheckChild1TypeI32,
48970 OPC_CheckTypeI32,
48971 OPC_Scope, 14,
48972 OPC_CheckPatternPredicate, 39,
48973 OPC_EmitInteger32, 28,
48974 OPC_EmitRegisterI32, 0 ,
48975 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tREV16),
48976 MVT::i32, 3, 0, 1, 2,
48977 13,
48978 OPC_CheckPatternPredicate4,
48979 OPC_EmitInteger32, 28,
48980 OPC_EmitRegisterI32, 0 ,
48981 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2REV16),
48982 MVT::i32, 3, 0, 1, 2,
48983 0,
48984 33,
48985 OPC_RecordChild0,
48986 OPC_MoveChild1,
48987 OPC_CheckOpcode, TARGET_VAL(ISD::AND),
48988 OPC_RecordChild0,
48989 OPC_MoveChild1,
48990 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
48991 OPC_CheckPredicate, 105,
48992 OPC_MoveParent,
48993 OPC_CheckTypeI32,
48994 OPC_MoveParent,
48995 OPC_CheckTypeI32,
48996 OPC_CheckPatternPredicate4,
48997 OPC_EmitInteger32, 28,
48998 OPC_EmitRegisterI32, 0 ,
48999 OPC_EmitRegisterI32, 0 ,
49000 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2RORrr),
49001 MVT::i32, 5, 0, 1, 2, 3, 4,
49002 22,
49003 OPC_RecordNode,
49004 OPC_CheckTypeI32,
49005 OPC_CheckPatternPredicate3,
49006 OPC_CheckComplexPat, /*CP*/33, /*#*/0,
49007 OPC_EmitInteger32, 28,
49008 OPC_EmitRegisterI32, 0 ,
49009 OPC_EmitRegisterI32, 0 ,
49010 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVsi),
49011 MVT::i32, 5, 1, 2, 3, 4, 5,
49012 74,
49013 OPC_RecordChild0,
49014 OPC_RecordChild1,
49015 OPC_Scope, 27,
49016 OPC_MoveChild1,
49017 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
49018 OPC_CheckPredicate, 67,
49019 OPC_CheckTypeI32,
49020 OPC_MoveParent,
49021 OPC_CheckTypeI32,
49022 OPC_CheckPatternPredicate4,
49023 OPC_EmitConvertToTarget1,
49024 OPC_EmitInteger32, 28,
49025 OPC_EmitRegisterI32, 0 ,
49026 OPC_EmitRegisterI32, 0 ,
49027 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2RORri),
49028 MVT::i32, 5, 0, 2, 3, 4, 5,
49029 41,
49030 OPC_CheckChild1TypeI32,
49031 OPC_CheckTypeI32,
49032 OPC_Scope, 18,
49033 OPC_CheckPatternPredicate, 10,
49034 OPC_EmitRegisterI32, ARM::CPSR,
49035 OPC_EmitInteger32, 28,
49036 OPC_EmitRegisterI32, 0 ,
49037 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tROR),
49038 MVT::i32, 5, 2, 0, 1, 3, 4,
49039 17,
49040 OPC_CheckPatternPredicate4,
49041 OPC_EmitInteger32, 28,
49042 OPC_EmitRegisterI32, 0 ,
49043 OPC_EmitRegisterI32, 0 ,
49044 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2RORrr),
49045 MVT::i32, 5, 0, 1, 2, 3, 4,
49046 0,
49047 0,
49048 0,
49049 92|128,1, TARGET_VAL(ISD::SRA),
49050 OPC_Scope, 24,
49051 OPC_MoveChild0,
49052 OPC_CheckOpcode, TARGET_VAL(ISD::BSWAP),
49053 OPC_RecordChild0,
49054 OPC_MoveParent,
49055 OPC_CheckChild1Integer, 32,
49056 OPC_CheckChild1TypeI32,
49057 OPC_CheckTypeI32,
49058 OPC_CheckPatternPredicate, 9,
49059 OPC_EmitInteger32, 28,
49060 OPC_EmitRegisterI32, 0 ,
49061 OPC_MorphNodeTo1None, TARGET_VAL(ARM::REVSH),
49062 MVT::i32, 3, 0, 1, 2,
49063 23,
49064 OPC_RecordNode,
49065 OPC_CheckTypeI32,
49066 OPC_CheckPatternPredicate3,
49067 OPC_CheckComplexPat, /*CP*/32, /*#*/0,
49068 OPC_EmitInteger32, 28,
49069 OPC_EmitRegisterI32, 0 ,
49070 OPC_EmitRegisterI32, 0 ,
49071 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVsr),
49072 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
49073 41,
49074 OPC_MoveChild0,
49075 OPC_CheckOpcode, TARGET_VAL(ISD::BSWAP),
49076 OPC_RecordChild0,
49077 OPC_MoveParent,
49078 OPC_CheckChild1Integer, 32,
49079 OPC_CheckChild1TypeI32,
49080 OPC_CheckTypeI32,
49081 OPC_Scope, 14,
49082 OPC_CheckPatternPredicate, 39,
49083 OPC_EmitInteger32, 28,
49084 OPC_EmitRegisterI32, 0 ,
49085 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tREVSH),
49086 MVT::i32, 3, 0, 1, 2,
49087 13,
49088 OPC_CheckPatternPredicate4,
49089 OPC_EmitInteger32, 28,
49090 OPC_EmitRegisterI32, 0 ,
49091 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2REVSH),
49092 MVT::i32, 3, 0, 1, 2,
49093 0,
49094 22,
49095 OPC_RecordNode,
49096 OPC_CheckTypeI32,
49097 OPC_CheckPatternPredicate3,
49098 OPC_CheckComplexPat, /*CP*/33, /*#*/0,
49099 OPC_EmitInteger32, 28,
49100 OPC_EmitRegisterI32, 0 ,
49101 OPC_EmitRegisterI32, 0 ,
49102 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVsi),
49103 MVT::i32, 5, 1, 2, 3, 4, 5,
49104 103,
49105 OPC_RecordChild0,
49106 OPC_RecordChild1,
49107 OPC_Scope, 56,
49108 OPC_MoveChild1,
49109 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
49110 OPC_CheckPredicate, 65,
49111 OPC_CheckTypeI32,
49112 OPC_MoveParent,
49113 OPC_CheckTypeI32,
49114 OPC_Scope, 22,
49115 OPC_CheckPatternPredicate, 10,
49116 OPC_EmitRegisterI32, ARM::CPSR,
49117 OPC_EmitConvertToTarget1,
49118 OPC_EmitNodeXForm, 14, 3,
49119 OPC_EmitInteger32, 28,
49120 OPC_EmitRegisterI32, 0 ,
49121 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tASRri),
49122 MVT::i32, 5, 2, 0, 4, 5, 6,
49123 21,
49124 OPC_CheckPatternPredicate4,
49125 OPC_EmitConvertToTarget1,
49126 OPC_EmitNodeXForm, 14, 2,
49127 OPC_EmitInteger32, 28,
49128 OPC_EmitRegisterI32, 0 ,
49129 OPC_EmitRegisterI32, 0 ,
49130 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ASRri),
49131 MVT::i32, 5, 0, 3, 4, 5, 6,
49132 0,
49133 41,
49134 OPC_CheckChild1TypeI32,
49135 OPC_CheckTypeI32,
49136 OPC_Scope, 18,
49137 OPC_CheckPatternPredicate, 10,
49138 OPC_EmitRegisterI32, ARM::CPSR,
49139 OPC_EmitInteger32, 28,
49140 OPC_EmitRegisterI32, 0 ,
49141 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tASRrr),
49142 MVT::i32, 5, 2, 0, 1, 3, 4,
49143 17,
49144 OPC_CheckPatternPredicate4,
49145 OPC_EmitInteger32, 28,
49146 OPC_EmitRegisterI32, 0 ,
49147 OPC_EmitRegisterI32, 0 ,
49148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2ASRrr),
49149 MVT::i32, 5, 0, 1, 2, 3, 4,
49150 0,
49151 0,
49152 0,
49153 97, TARGET_VAL(ARMISD::PIC_ADD),
49154 OPC_Scope, 56,
49155 OPC_MoveChild0,
49156 OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
49157 OPC_RecordMemRef,
49158 OPC_RecordNode,
49159 OPC_CheckFoldableChainNode,
49160 OPC_MoveChild1,
49161 OPC_CheckOpcode, TARGET_VAL(ARMISD::Wrapper),
49162 OPC_RecordChild0,
49163 OPC_MoveChild0,
49164 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstantPool),
49165 OPC_MoveParent,
49166 OPC_MoveParent,
49167 OPC_CheckPredicate, 27,
49168 OPC_CheckPredicate, 17,
49169 OPC_MoveSibling1,
49170 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
49171 OPC_RecordNode,
49172 OPC_MoveParent,
49173 OPC_CheckTypeI32,
49174 OPC_Scope, 12,
49175 OPC_CheckPatternPredicate, 10,
49176 OPC_EmitMergeInputChains1_0,
49177 OPC_EmitConvertToTarget2,
49178 OPC_MorphNodeTo1, TARGET_VAL(ARM::tLDRpci_pic), 0|OPFL_Chain|OPFL_MemRefs,
49179 MVT::i32, 2, 1, 3,
49180 11,
49181 OPC_CheckPatternPredicate4,
49182 OPC_EmitMergeInputChains1_0,
49183 OPC_EmitConvertToTarget2,
49184 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2LDRpci_pic), 0|OPFL_Chain|OPFL_MemRefs,
49185 MVT::i32, 2, 1, 3,
49186 0,
49187 37,
49188 OPC_RecordChild0,
49189 OPC_RecordChild1,
49190 OPC_MoveChild1,
49191 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
49192 OPC_MoveParent,
49193 OPC_CheckTypeI32,
49194 OPC_Scope, 15,
49195 OPC_CheckPatternPredicate3,
49196 OPC_EmitConvertToTarget1,
49197 OPC_EmitInteger32, 28,
49198 OPC_EmitRegisterI32, 0 ,
49199 OPC_MorphNodeTo1None, TARGET_VAL(ARM::PICADD),
49200 MVT::i32, 4, 0, 2, 3, 4,
49201 10,
49202 OPC_CheckPatternPredicate, 41,
49203 OPC_EmitConvertToTarget1,
49204 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tPICADD),
49205 MVT::i32, 2, 0, 2,
49206 0,
49207 0,
49208 95|128,5, TARGET_VAL(ISD::MSTORE),
49209 OPC_RecordMemRef,
49210 OPC_RecordNode,
49211 OPC_RecordChild1,
49212 OPC_Scope, 96,
49213 OPC_CheckChild1Type, MVT::v16i8,
49214 OPC_RecordChild2,
49215 OPC_CheckChild2TypeI32,
49216 OPC_Scope, 29,
49217 OPC_MoveChild3,
49218 OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF),
49219 OPC_MoveParent,
49220 OPC_RecordChild4,
49221 OPC_CheckChild4Type, MVT::v16i1,
49222 OPC_CheckPredicate, 40,
49223 OPC_CheckPatternPredicate0,
49224 OPC_CheckComplexPat6, /*#*/2,
49225 OPC_EmitMergeInputChains1_0,
49226 OPC_EmitInteger32, 2,
49227 OPC_EmitRegisterI32, 0 ,
49228 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRBU8), 0|OPFL_Chain|OPFL_MemRefs,
49229 6, 1, 4, 5, 6, 3, 7,
49230 59,
49231 OPC_RecordChild3,
49232 OPC_CheckChild3TypeI32,
49233 OPC_RecordChild4,
49234 OPC_CheckChild4Type, MVT::v16i1,
49235 OPC_Scope, 25,
49236 OPC_CheckPredicate, 59,
49237 OPC_CheckPredicate, 40,
49238 OPC_CheckPatternPredicate0,
49239 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
49240 OPC_EmitMergeInputChains1_0,
49241 OPC_EmitInteger32, 2,
49242 OPC_EmitRegisterI32, 0 ,
49243 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_pre), 0|OPFL_Chain|OPFL_MemRefs,
49244 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49245 25,
49246 OPC_CheckPredicate, 60,
49247 OPC_CheckPredicate, 40,
49248 OPC_CheckPatternPredicate0,
49249 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
49250 OPC_EmitMergeInputChains1_0,
49251 OPC_EmitInteger32, 2,
49252 OPC_EmitRegisterI32, 0 ,
49253 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRBU8_post), 0|OPFL_Chain|OPFL_MemRefs,
49254 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49255 0,
49256 0,
49257 49|128,1,
49258 OPC_CheckChild1Type, MVT::v8i16,
49259 OPC_RecordChild2,
49260 OPC_CheckChild2TypeI32,
49261 OPC_Scope, 58,
49262 OPC_MoveChild3,
49263 OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF),
49264 OPC_MoveParent,
49265 OPC_RecordChild4,
49266 OPC_CheckChild4Type, MVT::v8i1,
49267 OPC_Scope, 22,
49268 OPC_CheckPredicate, 41,
49269 OPC_CheckPatternPredicate0,
49270 OPC_CheckComplexPat, /*CP*/12, /*#*/2,
49271 OPC_EmitMergeInputChains1_0,
49272 OPC_EmitInteger32, 2,
49273 OPC_EmitRegisterI32, 0 ,
49274 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRHU16), 0|OPFL_Chain|OPFL_MemRefs,
49275 6, 1, 4, 5, 6, 3, 7,
49276 24,
49277 OPC_CheckPredicate, 93,
49278 OPC_CheckPredicate, 40,
49279 OPC_CheckPatternPredicate0,
49280 OPC_CheckComplexPat, /*CP*/18, /*#*/2,
49281 OPC_EmitMergeInputChains1_0,
49282 OPC_EmitInteger32, 2,
49283 OPC_EmitRegisterI32, 0 ,
49284 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRB16), 0|OPFL_Chain|OPFL_MemRefs,
49285 6, 1, 4, 5, 6, 3, 7,
49286 0,
49287 111,
49288 OPC_RecordChild3,
49289 OPC_CheckChild3TypeI32,
49290 OPC_RecordChild4,
49291 OPC_CheckChild4Type, MVT::v8i1,
49292 OPC_Scope, 25,
49293 OPC_CheckPredicate, 59,
49294 OPC_CheckPredicate, 41,
49295 OPC_CheckPatternPredicate0,
49296 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
49297 OPC_EmitMergeInputChains1_0,
49298 OPC_EmitInteger32, 2,
49299 OPC_EmitRegisterI32, 0 ,
49300 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_pre), 0|OPFL_Chain|OPFL_MemRefs,
49301 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49302 25,
49303 OPC_CheckPredicate, 60,
49304 OPC_CheckPredicate, 41,
49305 OPC_CheckPatternPredicate0,
49306 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
49307 OPC_EmitMergeInputChains1_0,
49308 OPC_EmitInteger32, 2,
49309 OPC_EmitRegisterI32, 0 ,
49310 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_post), 0|OPFL_Chain|OPFL_MemRefs,
49311 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49312 25,
49313 OPC_CheckPredicate, 77,
49314 OPC_CheckPredicate, 40,
49315 OPC_CheckPatternPredicate0,
49316 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
49317 OPC_EmitMergeInputChains1_0,
49318 OPC_EmitInteger32, 2,
49319 OPC_EmitRegisterI32, 0 ,
49320 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRB16_post), 0|OPFL_Chain|OPFL_MemRefs,
49321 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49322 25,
49323 OPC_CheckPredicate, 78,
49324 OPC_CheckPredicate, 40,
49325 OPC_CheckPatternPredicate0,
49326 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
49327 OPC_EmitMergeInputChains1_0,
49328 OPC_EmitInteger32, 2,
49329 OPC_EmitRegisterI32, 0 ,
49330 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRB16_pre), 0|OPFL_Chain|OPFL_MemRefs,
49331 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49332 0,
49333 0,
49334 97,
49335 OPC_CheckChild1Type, MVT::v8f16,
49336 OPC_RecordChild2,
49337 OPC_CheckChild2TypeI32,
49338 OPC_Scope, 30,
49339 OPC_MoveChild3,
49340 OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF),
49341 OPC_MoveParent,
49342 OPC_RecordChild4,
49343 OPC_CheckChild4Type, MVT::v8i1,
49344 OPC_CheckPredicate, 41,
49345 OPC_CheckPatternPredicate0,
49346 OPC_CheckComplexPat, /*CP*/12, /*#*/2,
49347 OPC_EmitMergeInputChains1_0,
49348 OPC_EmitInteger32, 2,
49349 OPC_EmitRegisterI32, 0 ,
49350 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRHU16), 0|OPFL_Chain|OPFL_MemRefs,
49351 6, 1, 4, 5, 6, 3, 7,
49352 59,
49353 OPC_RecordChild3,
49354 OPC_CheckChild3TypeI32,
49355 OPC_RecordChild4,
49356 OPC_CheckChild4Type, MVT::v8i1,
49357 OPC_Scope, 25,
49358 OPC_CheckPredicate, 59,
49359 OPC_CheckPredicate, 41,
49360 OPC_CheckPatternPredicate0,
49361 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
49362 OPC_EmitMergeInputChains1_0,
49363 OPC_EmitInteger32, 2,
49364 OPC_EmitRegisterI32, 0 ,
49365 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_pre), 0|OPFL_Chain|OPFL_MemRefs,
49366 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49367 25,
49368 OPC_CheckPredicate, 60,
49369 OPC_CheckPredicate, 41,
49370 OPC_CheckPatternPredicate0,
49371 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
49372 OPC_EmitMergeInputChains1_0,
49373 OPC_EmitInteger32, 2,
49374 OPC_EmitRegisterI32, 0 ,
49375 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRHU16_post), 0|OPFL_Chain|OPFL_MemRefs,
49376 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49377 0,
49378 0,
49379 0|128,2,
49380 OPC_CheckChild1Type, MVT::v4i32,
49381 OPC_RecordChild2,
49382 OPC_CheckChild2TypeI32,
49383 OPC_Scope, 84,
49384 OPC_MoveChild3,
49385 OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF),
49386 OPC_MoveParent,
49387 OPC_RecordChild4,
49388 OPC_CheckChild4Type, MVT::v4i1,
49389 OPC_Scope, 22,
49390 OPC_CheckPredicate, 54,
49391 OPC_CheckPatternPredicate0,
49392 OPC_CheckComplexPat, /*CP*/13, /*#*/2,
49393 OPC_EmitMergeInputChains1_0,
49394 OPC_EmitInteger32, 2,
49395 OPC_EmitRegisterI32, 0 ,
49396 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRWU32), 0|OPFL_Chain|OPFL_MemRefs,
49397 6, 1, 4, 5, 6, 3, 7,
49398 50,
49399 OPC_CheckPredicate, 93,
49400 OPC_Scope, 22,
49401 OPC_CheckPredicate, 40,
49402 OPC_CheckPatternPredicate0,
49403 OPC_CheckComplexPat, /*CP*/18, /*#*/2,
49404 OPC_EmitMergeInputChains1_0,
49405 OPC_EmitInteger32, 2,
49406 OPC_EmitRegisterI32, 0 ,
49407 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRB32), 0|OPFL_Chain|OPFL_MemRefs,
49408 6, 1, 4, 5, 6, 3, 7,
49409 22,
49410 OPC_CheckPredicate, 41,
49411 OPC_CheckPatternPredicate0,
49412 OPC_CheckComplexPat, /*CP*/28, /*#*/2,
49413 OPC_EmitMergeInputChains1_0,
49414 OPC_EmitInteger32, 2,
49415 OPC_EmitRegisterI32, 0 ,
49416 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRH32), 0|OPFL_Chain|OPFL_MemRefs,
49417 6, 1, 4, 5, 6, 3, 7,
49418 0,
49419 0,
49420 35|128,1,
49421 OPC_RecordChild3,
49422 OPC_CheckChild3TypeI32,
49423 OPC_RecordChild4,
49424 OPC_CheckChild4Type, MVT::v4i1,
49425 OPC_Scope, 25,
49426 OPC_CheckPredicate, 59,
49427 OPC_CheckPredicate, 54,
49428 OPC_CheckPatternPredicate0,
49429 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
49430 OPC_EmitMergeInputChains1_0,
49431 OPC_EmitInteger32, 2,
49432 OPC_EmitRegisterI32, 0 ,
49433 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_pre), 0|OPFL_Chain|OPFL_MemRefs,
49434 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49435 25,
49436 OPC_CheckPredicate, 60,
49437 OPC_CheckPredicate, 54,
49438 OPC_CheckPatternPredicate0,
49439 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
49440 OPC_EmitMergeInputChains1_0,
49441 OPC_EmitInteger32, 2,
49442 OPC_EmitRegisterI32, 0 ,
49443 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_post), 0|OPFL_Chain|OPFL_MemRefs,
49444 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49445 25,
49446 OPC_CheckPredicate, 77,
49447 OPC_CheckPredicate, 40,
49448 OPC_CheckPatternPredicate0,
49449 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
49450 OPC_EmitMergeInputChains1_0,
49451 OPC_EmitInteger32, 2,
49452 OPC_EmitRegisterI32, 0 ,
49453 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRB32_post), 0|OPFL_Chain|OPFL_MemRefs,
49454 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49455 25,
49456 OPC_CheckPredicate, 78,
49457 OPC_CheckPredicate, 40,
49458 OPC_CheckPatternPredicate0,
49459 OPC_CheckComplexPat, /*CP*/9, /*#*/3,
49460 OPC_EmitMergeInputChains1_0,
49461 OPC_EmitInteger32, 2,
49462 OPC_EmitRegisterI32, 0 ,
49463 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRB32_pre), 0|OPFL_Chain|OPFL_MemRefs,
49464 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49465 25,
49466 OPC_CheckPredicate, 77,
49467 OPC_CheckPredicate, 41,
49468 OPC_CheckPatternPredicate0,
49469 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
49470 OPC_EmitMergeInputChains1_0,
49471 OPC_EmitInteger32, 2,
49472 OPC_EmitRegisterI32, 0 ,
49473 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRH32_post), 0|OPFL_Chain|OPFL_MemRefs,
49474 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49475 25,
49476 OPC_CheckPredicate, 78,
49477 OPC_CheckPredicate, 41,
49478 OPC_CheckPatternPredicate0,
49479 OPC_CheckComplexPat, /*CP*/10, /*#*/3,
49480 OPC_EmitMergeInputChains1_0,
49481 OPC_EmitInteger32, 2,
49482 OPC_EmitRegisterI32, 0 ,
49483 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRH32_pre), 0|OPFL_Chain|OPFL_MemRefs,
49484 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49485 0,
49486 0,
49487 97,
49488 OPC_CheckChild1Type, MVT::v4f32,
49489 OPC_RecordChild2,
49490 OPC_CheckChild2TypeI32,
49491 OPC_Scope, 30,
49492 OPC_MoveChild3,
49493 OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF),
49494 OPC_MoveParent,
49495 OPC_RecordChild4,
49496 OPC_CheckChild4Type, MVT::v4i1,
49497 OPC_CheckPredicate, 54,
49498 OPC_CheckPatternPredicate0,
49499 OPC_CheckComplexPat, /*CP*/13, /*#*/2,
49500 OPC_EmitMergeInputChains1_0,
49501 OPC_EmitInteger32, 2,
49502 OPC_EmitRegisterI32, 0 ,
49503 OPC_MorphNodeTo0, TARGET_VAL(ARM::MVE_VSTRWU32), 0|OPFL_Chain|OPFL_MemRefs,
49504 6, 1, 4, 5, 6, 3, 7,
49505 59,
49506 OPC_RecordChild3,
49507 OPC_CheckChild3TypeI32,
49508 OPC_RecordChild4,
49509 OPC_CheckChild4Type, MVT::v4i1,
49510 OPC_Scope, 25,
49511 OPC_CheckPredicate, 59,
49512 OPC_CheckPredicate, 54,
49513 OPC_CheckPatternPredicate0,
49514 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
49515 OPC_EmitMergeInputChains1_0,
49516 OPC_EmitInteger32, 2,
49517 OPC_EmitRegisterI32, 0 ,
49518 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_pre), 0|OPFL_Chain|OPFL_MemRefs,
49519 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49520 25,
49521 OPC_CheckPredicate, 60,
49522 OPC_CheckPredicate, 54,
49523 OPC_CheckPatternPredicate0,
49524 OPC_CheckComplexPat, /*CP*/14, /*#*/3,
49525 OPC_EmitMergeInputChains1_0,
49526 OPC_EmitInteger32, 2,
49527 OPC_EmitRegisterI32, 0 ,
49528 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VSTRWU32_post), 0|OPFL_Chain|OPFL_MemRefs,
49529 MVT::i32, 6, 1, 2, 5, 6, 4, 7,
49530 0,
49531 0,
49532 0,
49533 56, TARGET_VAL(ARMISD::BCC_i64),
49534 OPC_RecordNode,
49535 OPC_RecordChild1,
49536 OPC_MoveChild1,
49537 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
49538 OPC_MoveParent,
49539 OPC_RecordChild2,
49540 OPC_RecordChild3,
49541 OPC_Scope, 22,
49542 OPC_CheckChild4Integer, 0,
49543 OPC_MoveChild5,
49544 OPC_CheckInteger, 0,
49545 OPC_MoveSibling6,
49546 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
49547 OPC_RecordNode,
49548 OPC_MoveParent,
49549 OPC_EmitMergeInputChains1_0,
49550 OPC_EmitConvertToTarget1,
49551 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::BCCZi64),
49552 MVT::i32, 4, 5, 2, 3, 4,
49553 21,
49554 OPC_RecordChild4,
49555 OPC_RecordChild5,
49556 OPC_RecordChild6,
49557 OPC_MoveChild6,
49558 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
49559 OPC_MoveParent,
49560 OPC_EmitMergeInputChains1_0,
49561 OPC_EmitConvertToTarget1,
49562 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::BCCi64),
49563 MVT::i32, 6, 7, 2, 3, 4, 5, 6,
49564 0,
49565 71|128,20, TARGET_VAL(ISD::SUB),
49566 OPC_Scope, 7|128,1,
49567 OPC_RecordChild0,
49568 OPC_RecordChild1,
49569 OPC_CheckTypeI32,
49570 OPC_Scope, 85,
49571 OPC_CheckPatternPredicate3,
49572 OPC_Scope, 20,
49573 OPC_CheckComplexPat4, /*#*/1,
49574 OPC_EmitInteger32, 28,
49575 OPC_EmitRegisterI32, 0 ,
49576 OPC_EmitRegisterI32, 0 ,
49577 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SUBrsr),
49578 MVT::i32, 7, 0, 2, 3, 4, 5, 6, 7,
49579 20,
49580 OPC_CheckComplexPat4, /*#*/0,
49581 OPC_EmitInteger32, 28,
49582 OPC_EmitRegisterI32, 0 ,
49583 OPC_EmitRegisterI32, 0 ,
49584 OPC_MorphNodeTo1None, TARGET_VAL(ARM::RSBrsr),
49585 MVT::i32, 7, 1, 2, 3, 4, 5, 6, 7,
49586 19,
49587 OPC_CheckComplexPat5, /*#*/1,
49588 OPC_EmitInteger32, 28,
49589 OPC_EmitRegisterI32, 0 ,
49590 OPC_EmitRegisterI32, 0 ,
49591 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SUBrsi),
49592 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
49593 19,
49594 OPC_CheckComplexPat5, /*#*/0,
49595 OPC_EmitInteger32, 28,
49596 OPC_EmitRegisterI32, 0 ,
49597 OPC_EmitRegisterI32, 0 ,
49598 OPC_MorphNodeTo1None, TARGET_VAL(ARM::RSBrsi),
49599 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
49600 0,
49601 43,
49602 OPC_CheckPatternPredicate4,
49603 OPC_Scope, 19,
49604 OPC_CheckComplexPat7, /*#*/1,
49605 OPC_EmitInteger32, 28,
49606 OPC_EmitRegisterI32, 0 ,
49607 OPC_EmitRegisterI32, 0 ,
49608 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SUBrs),
49609 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
49610 19,
49611 OPC_CheckComplexPat7, /*#*/0,
49612 OPC_EmitInteger32, 28,
49613 OPC_EmitRegisterI32, 0 ,
49614 OPC_EmitRegisterI32, 0 ,
49615 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2RSBrs),
49616 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
49617 0,
49618 0,
49619 21,
49620 OPC_CheckChild0Integer, 0,
49621 OPC_RecordChild1,
49622 OPC_CheckTypeI32,
49623 OPC_CheckPatternPredicate, 10,
49624 OPC_EmitRegisterI32, ARM::CPSR,
49625 OPC_EmitInteger32, 28,
49626 OPC_EmitRegisterI32, 0 ,
49627 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tRSB),
49628 MVT::i32, 4, 1, 0, 2, 3,
49629 63|128,3,
49630 OPC_RecordChild0,
49631 OPC_Scope, 27,
49632 OPC_RecordChild1,
49633 OPC_MoveChild1,
49634 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
49635 OPC_CheckPredicate, 20,
49636 OPC_MoveParent,
49637 OPC_CheckTypeI32,
49638 OPC_CheckPatternPredicate3,
49639 OPC_EmitConvertToTarget1,
49640 OPC_EmitInteger32, 28,
49641 OPC_EmitRegisterI32, 0 ,
49642 OPC_EmitRegisterI32, 0 ,
49643 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SUBri),
49644 MVT::i32, 5, 0, 2, 3, 4, 5,
49645 27,
49646 OPC_MoveChild0,
49647 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
49648 OPC_CheckPredicate, 20,
49649 OPC_MoveParent,
49650 OPC_RecordChild1,
49651 OPC_CheckTypeI32,
49652 OPC_CheckPatternPredicate3,
49653 OPC_EmitConvertToTarget0,
49654 OPC_EmitInteger32, 28,
49655 OPC_EmitRegisterI32, 0 ,
49656 OPC_EmitRegisterI32, 0 ,
49657 OPC_MorphNodeTo1None, TARGET_VAL(ARM::RSBri),
49658 MVT::i32, 5, 1, 2, 3, 4, 5,
49659 50,
49660 OPC_RecordChild1,
49661 OPC_MoveChild1,
49662 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
49663 OPC_Scope, 22,
49664 OPC_CheckPredicate, 13,
49665 OPC_MoveParent,
49666 OPC_CheckTypeI32,
49667 OPC_CheckPatternPredicate4,
49668 OPC_EmitConvertToTarget1,
49669 OPC_EmitInteger32, 28,
49670 OPC_EmitRegisterI32, 0 ,
49671 OPC_EmitRegisterI32, 0 ,
49672 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SUBri),
49673 MVT::i32, 5, 0, 2, 3, 4, 5,
49674 19,
49675 OPC_CheckPredicate, 70,
49676 OPC_MoveParent,
49677 OPC_CheckTypeI32,
49678 OPC_CheckPatternPredicate4,
49679 OPC_EmitConvertToTarget1,
49680 OPC_EmitInteger32, 28,
49681 OPC_EmitRegisterI32, 0 ,
49682 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SUBri12),
49683 MVT::i32, 4, 0, 2, 3, 4,
49684 0,
49685 27,
49686 OPC_MoveChild0,
49687 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
49688 OPC_CheckPredicate, 13,
49689 OPC_MoveParent,
49690 OPC_RecordChild1,
49691 OPC_CheckTypeI32,
49692 OPC_CheckPatternPredicate4,
49693 OPC_EmitConvertToTarget0,
49694 OPC_EmitInteger32, 28,
49695 OPC_EmitRegisterI32, 0 ,
49696 OPC_EmitRegisterI32, 0 ,
49697 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2RSBri),
49698 MVT::i32, 5, 1, 2, 3, 4, 5,
49699 44,
49700 OPC_MoveChild1,
49701 OPC_CheckOpcode, TARGET_VAL(ISD::MUL),
49702 OPC_RecordChild0,
49703 OPC_RecordChild1,
49704 OPC_MoveParent,
49705 OPC_CheckTypeI32,
49706 OPC_Scope, 16,
49707 OPC_CheckPatternPredicate, 119,
49708 OPC_EmitInteger32, 28,
49709 OPC_EmitRegisterI32, 0 ,
49710 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MLS),
49711 MVT::i32, 5, 1, 2, 0, 3, 4,
49712 16,
49713 OPC_CheckPatternPredicate, 73,
49714 OPC_EmitInteger32, 28,
49715 OPC_EmitRegisterI32, 0 ,
49716 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MLS),
49717 MVT::i32, 5, 1, 2, 0, 3, 4,
49718 0,
49719 59,
49720 OPC_RecordChild1,
49721 OPC_CheckTypeI32,
49722 OPC_Scope, 17,
49723 OPC_CheckPatternPredicate3,
49724 OPC_EmitInteger32, 28,
49725 OPC_EmitRegisterI32, 0 ,
49726 OPC_EmitRegisterI32, 0 ,
49727 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SUBrr),
49728 MVT::i32, 5, 0, 1, 2, 3, 4,
49729 18,
49730 OPC_CheckPatternPredicate, 10,
49731 OPC_EmitRegisterI32, ARM::CPSR,
49732 OPC_EmitInteger32, 28,
49733 OPC_EmitRegisterI32, 0 ,
49734 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tSUBrr),
49735 MVT::i32, 5, 2, 0, 1, 3, 4,
49736 17,
49737 OPC_CheckPatternPredicate4,
49738 OPC_EmitInteger32, 28,
49739 OPC_EmitRegisterI32, 0 ,
49740 OPC_EmitRegisterI32, 0 ,
49741 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SUBrr),
49742 MVT::i32, 5, 0, 1, 2, 3, 4,
49743 0,
49744 74|128,1,
49745 OPC_MoveChild1,
49746 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
49747 OPC_RecordChild0,
49748 OPC_Scope, 79,
49749 OPC_CheckChild0Type, MVT::v16i1,
49750 OPC_Scope, 39,
49751 OPC_MoveChild1,
49752 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
49753 OPC_RecordChild0,
49754 OPC_CheckChild0TypeI32,
49755 OPC_MoveSibling2,
49756 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
49757 OPC_MoveChild0,
49758 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
49759 OPC_CheckChild0Integer, 0,
49760 OPC_CheckType, MVT::v4i32,
49761 OPC_MoveParent,
49762 OPC_MoveParent,
49763 OPC_MoveParent,
49764 OPC_CheckType, MVT::v16i8,
49765 OPC_CheckPatternPredicate0,
49766 OPC_EmitInteger32, 2,
49767 OPC_EmitRegisterI32, 0 ,
49768 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i8),
49769 MVT::v16i8, 6, 0, 2, 3, 1, 4, 0,
49770 34,
49771 OPC_RecordChild1,
49772 OPC_MoveChild2,
49773 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
49774 OPC_MoveChild0,
49775 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
49776 OPC_CheckChild0Integer, 0,
49777 OPC_CheckType, MVT::v4i32,
49778 OPC_MoveParent,
49779 OPC_MoveParent,
49780 OPC_MoveParent,
49781 OPC_CheckType, MVT::v16i8,
49782 OPC_CheckPatternPredicate0,
49783 OPC_EmitInteger32, 2,
49784 OPC_EmitRegisterI32, 0 ,
49785 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi8),
49786 MVT::v16i8, 6, 0, 2, 3, 1, 4, 0,
49787 0,
49788 79,
49789 OPC_CheckChild0Type, MVT::v8i1,
49790 OPC_Scope, 39,
49791 OPC_MoveChild1,
49792 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
49793 OPC_RecordChild0,
49794 OPC_CheckChild0TypeI32,
49795 OPC_MoveSibling2,
49796 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
49797 OPC_MoveChild0,
49798 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
49799 OPC_CheckChild0Integer, 0,
49800 OPC_CheckType, MVT::v4i32,
49801 OPC_MoveParent,
49802 OPC_MoveParent,
49803 OPC_MoveParent,
49804 OPC_CheckType, MVT::v8i16,
49805 OPC_CheckPatternPredicate0,
49806 OPC_EmitInteger32, 2,
49807 OPC_EmitRegisterI32, 0 ,
49808 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i16),
49809 MVT::v8i16, 6, 0, 2, 3, 1, 4, 0,
49810 34,
49811 OPC_RecordChild1,
49812 OPC_MoveChild2,
49813 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
49814 OPC_MoveChild0,
49815 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
49816 OPC_CheckChild0Integer, 0,
49817 OPC_CheckType, MVT::v4i32,
49818 OPC_MoveParent,
49819 OPC_MoveParent,
49820 OPC_MoveParent,
49821 OPC_CheckType, MVT::v8i16,
49822 OPC_CheckPatternPredicate0,
49823 OPC_EmitInteger32, 2,
49824 OPC_EmitRegisterI32, 0 ,
49825 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi16),
49826 MVT::v8i16, 6, 0, 2, 3, 1, 4, 0,
49827 0,
49828 34,
49829 OPC_CheckChild0Type, MVT::v4i1,
49830 OPC_MoveChild1,
49831 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
49832 OPC_RecordChild0,
49833 OPC_CheckChild0TypeI32,
49834 OPC_MoveSibling2,
49835 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
49836 OPC_CheckChild0Integer, 0,
49837 OPC_MoveParent,
49838 OPC_MoveParent,
49839 OPC_CheckType, MVT::v4i32,
49840 OPC_CheckPatternPredicate0,
49841 OPC_EmitInteger32, 2,
49842 OPC_EmitRegisterI32, 0 ,
49843 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i32),
49844 MVT::v4i32, 6, 0, 2, 3, 1, 4, 0,
49845 0,
49846 0,
49847 86,
49848 OPC_MoveChild0,
49849 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
49850 OPC_MoveChild0,
49851 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
49852 OPC_CheckChild0Integer, 0,
49853 OPC_SwitchType , 35, MVT::v2i32,
49854 OPC_MoveParent,
49855 OPC_MoveParent,
49856 OPC_RecordChild1,
49857 OPC_SwitchType , 13, MVT::v8i8,
49858 OPC_CheckPatternPredicate1,
49859 OPC_EmitInteger32, 28,
49860 OPC_EmitRegisterI32, 0 ,
49861 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGs8d),
49862 MVT::v8i8, 3, 0, 1, 2,
49863 13, MVT::v4i16,
49864 OPC_CheckPatternPredicate1,
49865 OPC_EmitInteger32, 28,
49866 OPC_EmitRegisterI32, 0 ,
49867 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGs16d),
49868 MVT::v4i16, 3, 0, 1, 2,
49869 0,
49870 35, MVT::v4i32,
49871 OPC_MoveParent,
49872 OPC_MoveParent,
49873 OPC_RecordChild1,
49874 OPC_SwitchType , 13, MVT::v16i8,
49875 OPC_CheckPatternPredicate1,
49876 OPC_EmitInteger32, 28,
49877 OPC_EmitRegisterI32, 0 ,
49878 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGs8q),
49879 MVT::v16i8, 3, 0, 1, 2,
49880 13, MVT::v8i16,
49881 OPC_CheckPatternPredicate1,
49882 OPC_EmitInteger32, 28,
49883 OPC_EmitRegisterI32, 0 ,
49884 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGs16q),
49885 MVT::v8i16, 3, 0, 1, 2,
49886 0,
49887 0,
49888 35,
49889 OPC_RecordChild0,
49890 OPC_MoveChild1,
49891 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
49892 OPC_RecordChild0,
49893 OPC_CheckChild0Type, MVT::v4i1,
49894 OPC_RecordChild1,
49895 OPC_MoveChild2,
49896 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
49897 OPC_CheckChild0Integer, 0,
49898 OPC_MoveParent,
49899 OPC_MoveParent,
49900 OPC_CheckType, MVT::v4i32,
49901 OPC_CheckPatternPredicate0,
49902 OPC_EmitInteger32, 2,
49903 OPC_EmitRegisterI32, 0 ,
49904 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi32),
49905 MVT::v4i32, 6, 0, 2, 3, 1, 4, 0,
49906 65,
49907 OPC_MoveChild0,
49908 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
49909 OPC_MoveChild0,
49910 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
49911 OPC_CheckChild0Integer, 0,
49912 OPC_CheckType, MVT::v4i32,
49913 OPC_MoveParent,
49914 OPC_MoveParent,
49915 OPC_RecordChild1,
49916 OPC_SwitchType , 22, MVT::v16i8,
49917 OPC_CheckPatternPredicate0,
49918 OPC_EmitInteger32, 0,
49919 OPC_EmitRegisterI32, 0 ,
49920 OPC_EmitRegisterI32, 0 ,
49921 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
49922 MVT::v4i32, 0,
49923 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VNEGs8),
49924 MVT::v16i8, 5, 0, 1, 2, 3, 4,
49925 22, MVT::v8i16,
49926 OPC_CheckPatternPredicate0,
49927 OPC_EmitInteger32, 0,
49928 OPC_EmitRegisterI32, 0 ,
49929 OPC_EmitRegisterI32, 0 ,
49930 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
49931 MVT::v4i32, 0,
49932 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VNEGs16),
49933 MVT::v8i16, 5, 0, 1, 2, 3, 4,
49934 0,
49935 76|128,4,
49936 OPC_RecordChild0,
49937 OPC_MoveChild1,
49938 OPC_SwitchOpcode , 36|128,3, TARGET_VAL(ISD::MUL),
49939 OPC_Scope, 110,
49940 OPC_RecordChild0,
49941 OPC_MoveChild1,
49942 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
49943 OPC_RecordChild0,
49944 OPC_Scope, 50,
49945 OPC_CheckChild0Type, MVT::v4i16,
49946 OPC_RecordChild1,
49947 OPC_MoveChild1,
49948 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
49949 OPC_MoveParent,
49950 OPC_MoveParent,
49951 OPC_MoveParent,
49952 OPC_SwitchType , 17, MVT::v4i16,
49953 OPC_CheckPatternPredicate1,
49954 OPC_EmitConvertToTarget3,
49955 OPC_EmitInteger32, 28,
49956 OPC_EmitRegisterI32, 0 ,
49957 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv4i16),
49958 MVT::v4i16, 6, 0, 1, 2, 4, 5, 6,
49959 17, MVT::v8i16,
49960 OPC_CheckPatternPredicate1,
49961 OPC_EmitConvertToTarget3,
49962 OPC_EmitInteger32, 28,
49963 OPC_EmitRegisterI32, 0 ,
49964 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv8i16),
49965 MVT::v8i16, 6, 0, 1, 2, 4, 5, 6,
49966 0,
49967 50,
49968 OPC_CheckChild0Type, MVT::v2i32,
49969 OPC_RecordChild1,
49970 OPC_MoveChild1,
49971 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
49972 OPC_MoveParent,
49973 OPC_MoveParent,
49974 OPC_MoveParent,
49975 OPC_SwitchType , 17, MVT::v2i32,
49976 OPC_CheckPatternPredicate1,
49977 OPC_EmitConvertToTarget3,
49978 OPC_EmitInteger32, 28,
49979 OPC_EmitRegisterI32, 0 ,
49980 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv2i32),
49981 MVT::v2i32, 6, 0, 1, 2, 4, 5, 6,
49982 17, MVT::v4i32,
49983 OPC_CheckPatternPredicate1,
49984 OPC_EmitConvertToTarget3,
49985 OPC_EmitInteger32, 28,
49986 OPC_EmitRegisterI32, 0 ,
49987 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv4i32),
49988 MVT::v4i32, 6, 0, 1, 2, 4, 5, 6,
49989 0,
49990 0,
49991 111,
49992 OPC_MoveChild0,
49993 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
49994 OPC_RecordChild0,
49995 OPC_Scope, 51,
49996 OPC_CheckChild0Type, MVT::v4i16,
49997 OPC_RecordChild1,
49998 OPC_MoveChild1,
49999 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
50000 OPC_MoveParent,
50001 OPC_MoveParent,
50002 OPC_RecordChild1,
50003 OPC_MoveParent,
50004 OPC_SwitchType , 17, MVT::v4i16,
50005 OPC_CheckPatternPredicate1,
50006 OPC_EmitConvertToTarget2,
50007 OPC_EmitInteger32, 28,
50008 OPC_EmitRegisterI32, 0 ,
50009 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv4i16),
50010 MVT::v4i16, 6, 0, 3, 1, 4, 5, 6,
50011 17, MVT::v8i16,
50012 OPC_CheckPatternPredicate1,
50013 OPC_EmitConvertToTarget2,
50014 OPC_EmitInteger32, 28,
50015 OPC_EmitRegisterI32, 0 ,
50016 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv8i16),
50017 MVT::v8i16, 6, 0, 3, 1, 4, 5, 6,
50018 0,
50019 51,
50020 OPC_CheckChild0Type, MVT::v2i32,
50021 OPC_RecordChild1,
50022 OPC_MoveChild1,
50023 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
50024 OPC_MoveParent,
50025 OPC_MoveParent,
50026 OPC_RecordChild1,
50027 OPC_MoveParent,
50028 OPC_SwitchType , 17, MVT::v2i32,
50029 OPC_CheckPatternPredicate1,
50030 OPC_EmitConvertToTarget2,
50031 OPC_EmitInteger32, 28,
50032 OPC_EmitRegisterI32, 0 ,
50033 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv2i32),
50034 MVT::v2i32, 6, 0, 3, 1, 4, 5, 6,
50035 17, MVT::v4i32,
50036 OPC_CheckPatternPredicate1,
50037 OPC_EmitConvertToTarget2,
50038 OPC_EmitInteger32, 28,
50039 OPC_EmitRegisterI32, 0 ,
50040 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv4i32),
50041 MVT::v4i32, 6, 0, 3, 1, 4, 5, 6,
50042 0,
50043 0,
50044 96,
50045 OPC_RecordChild0,
50046 OPC_MoveChild1,
50047 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
50048 OPC_RecordChild0,
50049 OPC_Scope, 43,
50050 OPC_CheckChild0Type, MVT::v8i16,
50051 OPC_RecordChild1,
50052 OPC_MoveChild1,
50053 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
50054 OPC_MoveParent,
50055 OPC_MoveParent,
50056 OPC_MoveParent,
50057 OPC_CheckType, MVT::v8i16,
50058 OPC_CheckPatternPredicate1,
50059 OPC_EmitConvertToTarget3,
50060 OPC_EmitNodeXForm, 5, 4,
50061 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
50062 MVT::v4i16, 2, 2, 5,
50063 OPC_EmitConvertToTarget3,
50064 OPC_EmitNodeXForm, 6, 7,
50065 OPC_EmitInteger32, 28,
50066 OPC_EmitRegisterI32, 0 ,
50067 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv8i16),
50068 MVT::v8i16, 6, 0, 1, 6, 8, 9, 10,
50069 43,
50070 OPC_CheckChild0Type, MVT::v4i32,
50071 OPC_RecordChild1,
50072 OPC_MoveChild1,
50073 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
50074 OPC_MoveParent,
50075 OPC_MoveParent,
50076 OPC_MoveParent,
50077 OPC_CheckType, MVT::v4i32,
50078 OPC_CheckPatternPredicate1,
50079 OPC_EmitConvertToTarget3,
50080 OPC_EmitNodeXForm, 7, 4,
50081 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
50082 MVT::v2i32, 2, 2, 5,
50083 OPC_EmitConvertToTarget3,
50084 OPC_EmitNodeXForm, 8, 7,
50085 OPC_EmitInteger32, 28,
50086 OPC_EmitRegisterI32, 0 ,
50087 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv4i32),
50088 MVT::v4i32, 6, 0, 1, 6, 8, 9, 10,
50089 0,
50090 97,
50091 OPC_MoveChild0,
50092 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
50093 OPC_RecordChild0,
50094 OPC_Scope, 44,
50095 OPC_CheckChild0Type, MVT::v8i16,
50096 OPC_RecordChild1,
50097 OPC_MoveChild1,
50098 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
50099 OPC_MoveParent,
50100 OPC_MoveParent,
50101 OPC_RecordChild1,
50102 OPC_MoveParent,
50103 OPC_CheckType, MVT::v8i16,
50104 OPC_CheckPatternPredicate1,
50105 OPC_EmitConvertToTarget2,
50106 OPC_EmitNodeXForm, 5, 4,
50107 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
50108 MVT::v4i16, 2, 1, 5,
50109 OPC_EmitConvertToTarget2,
50110 OPC_EmitNodeXForm, 6, 7,
50111 OPC_EmitInteger32, 28,
50112 OPC_EmitRegisterI32, 0 ,
50113 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv8i16),
50114 MVT::v8i16, 6, 0, 3, 6, 8, 9, 10,
50115 44,
50116 OPC_CheckChild0Type, MVT::v4i32,
50117 OPC_RecordChild1,
50118 OPC_MoveChild1,
50119 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
50120 OPC_MoveParent,
50121 OPC_MoveParent,
50122 OPC_RecordChild1,
50123 OPC_MoveParent,
50124 OPC_CheckType, MVT::v4i32,
50125 OPC_CheckPatternPredicate1,
50126 OPC_EmitConvertToTarget2,
50127 OPC_EmitNodeXForm, 7, 4,
50128 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
50129 MVT::v2i32, 2, 1, 5,
50130 OPC_EmitConvertToTarget2,
50131 OPC_EmitNodeXForm, 8, 7,
50132 OPC_EmitInteger32, 28,
50133 OPC_EmitRegisterI32, 0 ,
50134 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslv4i32),
50135 MVT::v4i32, 6, 0, 3, 6, 8, 9, 10,
50136 0,
50137 0,
50138 77, TARGET_VAL(ARMISD::VMULLs),
50139 OPC_RecordChild0,
50140 OPC_Scope, 36,
50141 OPC_CheckChild0Type, MVT::v4i16,
50142 OPC_MoveChild1,
50143 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
50144 OPC_RecordChild0,
50145 OPC_CheckChild0Type, MVT::v4i16,
50146 OPC_RecordChild1,
50147 OPC_MoveChild1,
50148 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
50149 OPC_MoveParent,
50150 OPC_MoveParent,
50151 OPC_MoveParent,
50152 OPC_CheckType, MVT::v4i32,
50153 OPC_CheckPatternPredicate1,
50154 OPC_EmitConvertToTarget3,
50155 OPC_EmitInteger32, 28,
50156 OPC_EmitRegisterI32, 0 ,
50157 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSLslsv4i16),
50158 MVT::v4i32, 6, 0, 1, 2, 4, 5, 6,
50159 36,
50160 OPC_CheckChild0Type, MVT::v2i32,
50161 OPC_MoveChild1,
50162 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
50163 OPC_RecordChild0,
50164 OPC_CheckChild0Type, MVT::v2i32,
50165 OPC_RecordChild1,
50166 OPC_MoveChild1,
50167 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
50168 OPC_MoveParent,
50169 OPC_MoveParent,
50170 OPC_MoveParent,
50171 OPC_CheckType, MVT::v2i64,
50172 OPC_CheckPatternPredicate1,
50173 OPC_EmitConvertToTarget3,
50174 OPC_EmitInteger32, 28,
50175 OPC_EmitRegisterI32, 0 ,
50176 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSLslsv2i32),
50177 MVT::v2i64, 6, 0, 1, 2, 4, 5, 6,
50178 0,
50179 77, TARGET_VAL(ARMISD::VMULLu),
50180 OPC_RecordChild0,
50181 OPC_Scope, 36,
50182 OPC_CheckChild0Type, MVT::v4i16,
50183 OPC_MoveChild1,
50184 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
50185 OPC_RecordChild0,
50186 OPC_CheckChild0Type, MVT::v4i16,
50187 OPC_RecordChild1,
50188 OPC_MoveChild1,
50189 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
50190 OPC_MoveParent,
50191 OPC_MoveParent,
50192 OPC_MoveParent,
50193 OPC_CheckType, MVT::v4i32,
50194 OPC_CheckPatternPredicate1,
50195 OPC_EmitConvertToTarget3,
50196 OPC_EmitInteger32, 28,
50197 OPC_EmitRegisterI32, 0 ,
50198 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSLsluv4i16),
50199 MVT::v4i32, 6, 0, 1, 2, 4, 5, 6,
50200 36,
50201 OPC_CheckChild0Type, MVT::v2i32,
50202 OPC_MoveChild1,
50203 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
50204 OPC_RecordChild0,
50205 OPC_CheckChild0Type, MVT::v2i32,
50206 OPC_RecordChild1,
50207 OPC_MoveChild1,
50208 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
50209 OPC_MoveParent,
50210 OPC_MoveParent,
50211 OPC_MoveParent,
50212 OPC_CheckType, MVT::v2i64,
50213 OPC_CheckPatternPredicate1,
50214 OPC_EmitConvertToTarget3,
50215 OPC_EmitInteger32, 28,
50216 OPC_EmitRegisterI32, 0 ,
50217 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSLsluv2i32),
50218 MVT::v2i64, 6, 0, 1, 2, 4, 5, 6,
50219 0,
50220 0,
50221 97|128,3,
50222 OPC_MoveChild0,
50223 OPC_SwitchOpcode , 62, TARGET_VAL(ARMISD::VMOVIMM),
50224 OPC_CheckChild0Integer, 0,
50225 OPC_MoveParent,
50226 OPC_RecordChild1,
50227 OPC_SwitchType , 13, MVT::v2i32,
50228 OPC_CheckPatternPredicate1,
50229 OPC_EmitInteger32, 28,
50230 OPC_EmitRegisterI32, 0 ,
50231 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGs32d),
50232 MVT::v2i32, 3, 0, 1, 2,
50233 39, MVT::v4i32,
50234 OPC_Scope, 13,
50235 OPC_CheckPatternPredicate1,
50236 OPC_EmitInteger32, 28,
50237 OPC_EmitRegisterI32, 0 ,
50238 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGs32q),
50239 MVT::v4i32, 3, 0, 1, 2,
50240 22,
50241 OPC_CheckPatternPredicate0,
50242 OPC_EmitInteger32, 0,
50243 OPC_EmitRegisterI32, 0 ,
50244 OPC_EmitRegisterI32, 0 ,
50245 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
50246 MVT::v4i32, 0,
50247 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VNEGs32),
50248 MVT::v4i32, 5, 0, 1, 2, 3, 4,
50249 0,
50250 0,
50251 84, TARGET_VAL(ISD::SIGN_EXTEND),
50252 OPC_RecordChild0,
50253 OPC_Scope, 26,
50254 OPC_CheckChild0Type, MVT::v8i8,
50255 OPC_MoveSibling1,
50256 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND),
50257 OPC_RecordChild0,
50258 OPC_CheckChild0Type, MVT::v8i8,
50259 OPC_MoveParent,
50260 OPC_CheckType, MVT::v8i16,
50261 OPC_CheckPatternPredicate1,
50262 OPC_EmitInteger32, 28,
50263 OPC_EmitRegisterI32, 0 ,
50264 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLsv8i16),
50265 MVT::v8i16, 4, 0, 1, 2, 3,
50266 26,
50267 OPC_CheckChild0Type, MVT::v4i16,
50268 OPC_MoveSibling1,
50269 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND),
50270 OPC_RecordChild0,
50271 OPC_CheckChild0Type, MVT::v4i16,
50272 OPC_MoveParent,
50273 OPC_CheckType, MVT::v4i32,
50274 OPC_CheckPatternPredicate1,
50275 OPC_EmitInteger32, 28,
50276 OPC_EmitRegisterI32, 0 ,
50277 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLsv4i32),
50278 MVT::v4i32, 4, 0, 1, 2, 3,
50279 26,
50280 OPC_CheckChild0Type, MVT::v2i32,
50281 OPC_MoveSibling1,
50282 OPC_CheckOpcode, TARGET_VAL(ISD::SIGN_EXTEND),
50283 OPC_RecordChild0,
50284 OPC_CheckChild0Type, MVT::v2i32,
50285 OPC_MoveParent,
50286 OPC_CheckType, MVT::v2i64,
50287 OPC_CheckPatternPredicate1,
50288 OPC_EmitInteger32, 28,
50289 OPC_EmitRegisterI32, 0 ,
50290 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLsv2i64),
50291 MVT::v2i64, 4, 0, 1, 2, 3,
50292 0,
50293 31|128,1, TARGET_VAL(ISD::ZERO_EXTEND),
50294 OPC_RecordChild0,
50295 OPC_Scope, 51,
50296 OPC_CheckChild0Type, MVT::v8i8,
50297 OPC_MoveSibling1,
50298 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
50299 OPC_RecordChild0,
50300 OPC_CheckChild0Type, MVT::v8i8,
50301 OPC_MoveParent,
50302 OPC_CheckType, MVT::v8i16,
50303 OPC_CheckPatternPredicate1,
50304 OPC_EmitInteger32, 28,
50305 OPC_EmitRegisterI32, 0 ,
50306 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv8i16),
50307 MVT::v8i16, 4, 0, 1, 2, 3,
50308 20, TARGET_VAL(ISD::ANY_EXTEND),
50309 OPC_RecordChild0,
50310 OPC_CheckChild0Type, MVT::v8i8,
50311 OPC_MoveParent,
50312 OPC_CheckType, MVT::v8i16,
50313 OPC_CheckPatternPredicate1,
50314 OPC_EmitInteger32, 28,
50315 OPC_EmitRegisterI32, 0 ,
50316 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv8i16),
50317 MVT::v8i16, 4, 0, 1, 2, 3,
50318 0,
50319 51,
50320 OPC_CheckChild0Type, MVT::v4i16,
50321 OPC_MoveSibling1,
50322 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
50323 OPC_RecordChild0,
50324 OPC_CheckChild0Type, MVT::v4i16,
50325 OPC_MoveParent,
50326 OPC_CheckType, MVT::v4i32,
50327 OPC_CheckPatternPredicate1,
50328 OPC_EmitInteger32, 28,
50329 OPC_EmitRegisterI32, 0 ,
50330 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv4i32),
50331 MVT::v4i32, 4, 0, 1, 2, 3,
50332 20, TARGET_VAL(ISD::ANY_EXTEND),
50333 OPC_RecordChild0,
50334 OPC_CheckChild0Type, MVT::v4i16,
50335 OPC_MoveParent,
50336 OPC_CheckType, MVT::v4i32,
50337 OPC_CheckPatternPredicate1,
50338 OPC_EmitInteger32, 28,
50339 OPC_EmitRegisterI32, 0 ,
50340 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv4i32),
50341 MVT::v4i32, 4, 0, 1, 2, 3,
50342 0,
50343 51,
50344 OPC_CheckChild0Type, MVT::v2i32,
50345 OPC_MoveSibling1,
50346 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
50347 OPC_RecordChild0,
50348 OPC_CheckChild0Type, MVT::v2i32,
50349 OPC_MoveParent,
50350 OPC_CheckType, MVT::v2i64,
50351 OPC_CheckPatternPredicate1,
50352 OPC_EmitInteger32, 28,
50353 OPC_EmitRegisterI32, 0 ,
50354 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv2i64),
50355 MVT::v2i64, 4, 0, 1, 2, 3,
50356 20, TARGET_VAL(ISD::ANY_EXTEND),
50357 OPC_RecordChild0,
50358 OPC_CheckChild0Type, MVT::v2i32,
50359 OPC_MoveParent,
50360 OPC_CheckType, MVT::v2i64,
50361 OPC_CheckPatternPredicate1,
50362 OPC_EmitInteger32, 28,
50363 OPC_EmitRegisterI32, 0 ,
50364 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv2i64),
50365 MVT::v2i64, 4, 0, 1, 2, 3,
50366 0,
50367 0,
50368 31|128,1, TARGET_VAL(ISD::ANY_EXTEND),
50369 OPC_RecordChild0,
50370 OPC_Scope, 51,
50371 OPC_CheckChild0Type, MVT::v8i8,
50372 OPC_MoveSibling1,
50373 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
50374 OPC_RecordChild0,
50375 OPC_CheckChild0Type, MVT::v8i8,
50376 OPC_MoveParent,
50377 OPC_CheckType, MVT::v8i16,
50378 OPC_CheckPatternPredicate1,
50379 OPC_EmitInteger32, 28,
50380 OPC_EmitRegisterI32, 0 ,
50381 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv8i16),
50382 MVT::v8i16, 4, 0, 1, 2, 3,
50383 20, TARGET_VAL(ISD::ANY_EXTEND),
50384 OPC_RecordChild0,
50385 OPC_CheckChild0Type, MVT::v8i8,
50386 OPC_MoveParent,
50387 OPC_CheckType, MVT::v8i16,
50388 OPC_CheckPatternPredicate1,
50389 OPC_EmitInteger32, 28,
50390 OPC_EmitRegisterI32, 0 ,
50391 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv8i16),
50392 MVT::v8i16, 4, 0, 1, 2, 3,
50393 0,
50394 51,
50395 OPC_CheckChild0Type, MVT::v4i16,
50396 OPC_MoveSibling1,
50397 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
50398 OPC_RecordChild0,
50399 OPC_CheckChild0Type, MVT::v4i16,
50400 OPC_MoveParent,
50401 OPC_CheckType, MVT::v4i32,
50402 OPC_CheckPatternPredicate1,
50403 OPC_EmitInteger32, 28,
50404 OPC_EmitRegisterI32, 0 ,
50405 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv4i32),
50406 MVT::v4i32, 4, 0, 1, 2, 3,
50407 20, TARGET_VAL(ISD::ANY_EXTEND),
50408 OPC_RecordChild0,
50409 OPC_CheckChild0Type, MVT::v4i16,
50410 OPC_MoveParent,
50411 OPC_CheckType, MVT::v4i32,
50412 OPC_CheckPatternPredicate1,
50413 OPC_EmitInteger32, 28,
50414 OPC_EmitRegisterI32, 0 ,
50415 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv4i32),
50416 MVT::v4i32, 4, 0, 1, 2, 3,
50417 0,
50418 51,
50419 OPC_CheckChild0Type, MVT::v2i32,
50420 OPC_MoveSibling1,
50421 OPC_SwitchOpcode , 20, TARGET_VAL(ISD::ZERO_EXTEND),
50422 OPC_RecordChild0,
50423 OPC_CheckChild0Type, MVT::v2i32,
50424 OPC_MoveParent,
50425 OPC_CheckType, MVT::v2i64,
50426 OPC_CheckPatternPredicate1,
50427 OPC_EmitInteger32, 28,
50428 OPC_EmitRegisterI32, 0 ,
50429 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv2i64),
50430 MVT::v2i64, 4, 0, 1, 2, 3,
50431 20, TARGET_VAL(ISD::ANY_EXTEND),
50432 OPC_RecordChild0,
50433 OPC_CheckChild0Type, MVT::v2i32,
50434 OPC_MoveParent,
50435 OPC_CheckType, MVT::v2i64,
50436 OPC_CheckPatternPredicate1,
50437 OPC_EmitInteger32, 28,
50438 OPC_EmitRegisterI32, 0 ,
50439 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBLuv2i64),
50440 MVT::v2i64, 4, 0, 1, 2, 3,
50441 0,
50442 0,
50443 0,
50444 117|128,5,
50445 OPC_RecordChild0,
50446 OPC_Scope, 26|128,4,
50447 OPC_MoveChild1,
50448 OPC_SwitchOpcode , 107, TARGET_VAL(ISD::MUL),
50449 OPC_RecordChild0,
50450 OPC_RecordChild1,
50451 OPC_MoveParent,
50452 OPC_SwitchType , 15, MVT::v8i8,
50453 OPC_CheckPatternPredicate1,
50454 OPC_EmitInteger32, 28,
50455 OPC_EmitRegisterI32, 0 ,
50456 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSv8i8),
50457 MVT::v8i8, 5, 0, 1, 2, 3, 4,
50458 15, MVT::v4i16,
50459 OPC_CheckPatternPredicate1,
50460 OPC_EmitInteger32, 28,
50461 OPC_EmitRegisterI32, 0 ,
50462 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSv4i16),
50463 MVT::v4i16, 5, 0, 1, 2, 3, 4,
50464 15, MVT::v2i32,
50465 OPC_CheckPatternPredicate1,
50466 OPC_EmitInteger32, 28,
50467 OPC_EmitRegisterI32, 0 ,
50468 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSv2i32),
50469 MVT::v2i32, 5, 0, 1, 2, 3, 4,
50470 15, MVT::v16i8,
50471 OPC_CheckPatternPredicate1,
50472 OPC_EmitInteger32, 28,
50473 OPC_EmitRegisterI32, 0 ,
50474 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSv16i8),
50475 MVT::v16i8, 5, 0, 1, 2, 3, 4,
50476 15, MVT::v8i16,
50477 OPC_CheckPatternPredicate1,
50478 OPC_EmitInteger32, 28,
50479 OPC_EmitRegisterI32, 0 ,
50480 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSv8i16),
50481 MVT::v8i16, 5, 0, 1, 2, 3, 4,
50482 15, MVT::v4i32,
50483 OPC_CheckPatternPredicate1,
50484 OPC_EmitInteger32, 28,
50485 OPC_EmitRegisterI32, 0 ,
50486 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSv4i32),
50487 MVT::v4i32, 5, 0, 1, 2, 3, 4,
50488 0,
50489 69, TARGET_VAL(ARMISD::VMULLs),
50490 OPC_RecordChild0,
50491 OPC_Scope, 21,
50492 OPC_CheckChild0Type, MVT::v8i8,
50493 OPC_RecordChild1,
50494 OPC_MoveParent,
50495 OPC_CheckType, MVT::v8i16,
50496 OPC_CheckPatternPredicate1,
50497 OPC_EmitInteger32, 28,
50498 OPC_EmitRegisterI32, 0 ,
50499 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSLsv8i16),
50500 MVT::v8i16, 5, 0, 1, 2, 3, 4,
50501 21,
50502 OPC_CheckChild0Type, MVT::v4i16,
50503 OPC_RecordChild1,
50504 OPC_MoveParent,
50505 OPC_CheckType, MVT::v4i32,
50506 OPC_CheckPatternPredicate1,
50507 OPC_EmitInteger32, 28,
50508 OPC_EmitRegisterI32, 0 ,
50509 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSLsv4i32),
50510 MVT::v4i32, 5, 0, 1, 2, 3, 4,
50511 21,
50512 OPC_CheckChild0Type, MVT::v2i32,
50513 OPC_RecordChild1,
50514 OPC_MoveParent,
50515 OPC_CheckType, MVT::v2i64,
50516 OPC_CheckPatternPredicate1,
50517 OPC_EmitInteger32, 28,
50518 OPC_EmitRegisterI32, 0 ,
50519 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSLsv2i64),
50520 MVT::v2i64, 5, 0, 1, 2, 3, 4,
50521 0,
50522 69, TARGET_VAL(ARMISD::VMULLu),
50523 OPC_RecordChild0,
50524 OPC_Scope, 21,
50525 OPC_CheckChild0Type, MVT::v8i8,
50526 OPC_RecordChild1,
50527 OPC_MoveParent,
50528 OPC_CheckType, MVT::v8i16,
50529 OPC_CheckPatternPredicate1,
50530 OPC_EmitInteger32, 28,
50531 OPC_EmitRegisterI32, 0 ,
50532 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSLuv8i16),
50533 MVT::v8i16, 5, 0, 1, 2, 3, 4,
50534 21,
50535 OPC_CheckChild0Type, MVT::v4i16,
50536 OPC_RecordChild1,
50537 OPC_MoveParent,
50538 OPC_CheckType, MVT::v4i32,
50539 OPC_CheckPatternPredicate1,
50540 OPC_EmitInteger32, 28,
50541 OPC_EmitRegisterI32, 0 ,
50542 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSLuv4i32),
50543 MVT::v4i32, 5, 0, 1, 2, 3, 4,
50544 21,
50545 OPC_CheckChild0Type, MVT::v2i32,
50546 OPC_RecordChild1,
50547 OPC_MoveParent,
50548 OPC_CheckType, MVT::v2i64,
50549 OPC_CheckPatternPredicate1,
50550 OPC_EmitInteger32, 28,
50551 OPC_EmitRegisterI32, 0 ,
50552 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSLuv2i64),
50553 MVT::v2i64, 5, 0, 1, 2, 3, 4,
50554 0,
50555 63, TARGET_VAL(ISD::SIGN_EXTEND),
50556 OPC_RecordChild0,
50557 OPC_Scope, 19,
50558 OPC_CheckChild0Type, MVT::v8i8,
50559 OPC_MoveParent,
50560 OPC_CheckType, MVT::v8i16,
50561 OPC_CheckPatternPredicate1,
50562 OPC_EmitInteger32, 28,
50563 OPC_EmitRegisterI32, 0 ,
50564 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBWsv8i16),
50565 MVT::v8i16, 4, 0, 1, 2, 3,
50566 19,
50567 OPC_CheckChild0Type, MVT::v4i16,
50568 OPC_MoveParent,
50569 OPC_CheckType, MVT::v4i32,
50570 OPC_CheckPatternPredicate1,
50571 OPC_EmitInteger32, 28,
50572 OPC_EmitRegisterI32, 0 ,
50573 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBWsv4i32),
50574 MVT::v4i32, 4, 0, 1, 2, 3,
50575 19,
50576 OPC_CheckChild0Type, MVT::v2i32,
50577 OPC_MoveParent,
50578 OPC_CheckType, MVT::v2i64,
50579 OPC_CheckPatternPredicate1,
50580 OPC_EmitInteger32, 28,
50581 OPC_EmitRegisterI32, 0 ,
50582 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBWsv2i64),
50583 MVT::v2i64, 4, 0, 1, 2, 3,
50584 0,
50585 63, TARGET_VAL(ISD::ZERO_EXTEND),
50586 OPC_RecordChild0,
50587 OPC_Scope, 19,
50588 OPC_CheckChild0Type, MVT::v8i8,
50589 OPC_MoveParent,
50590 OPC_CheckType, MVT::v8i16,
50591 OPC_CheckPatternPredicate1,
50592 OPC_EmitInteger32, 28,
50593 OPC_EmitRegisterI32, 0 ,
50594 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBWuv8i16),
50595 MVT::v8i16, 4, 0, 1, 2, 3,
50596 19,
50597 OPC_CheckChild0Type, MVT::v4i16,
50598 OPC_MoveParent,
50599 OPC_CheckType, MVT::v4i32,
50600 OPC_CheckPatternPredicate1,
50601 OPC_EmitInteger32, 28,
50602 OPC_EmitRegisterI32, 0 ,
50603 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBWuv4i32),
50604 MVT::v4i32, 4, 0, 1, 2, 3,
50605 19,
50606 OPC_CheckChild0Type, MVT::v2i32,
50607 OPC_MoveParent,
50608 OPC_CheckType, MVT::v2i64,
50609 OPC_CheckPatternPredicate1,
50610 OPC_EmitInteger32, 28,
50611 OPC_EmitRegisterI32, 0 ,
50612 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBWuv2i64),
50613 MVT::v2i64, 4, 0, 1, 2, 3,
50614 0,
50615 63, TARGET_VAL(ISD::ANY_EXTEND),
50616 OPC_RecordChild0,
50617 OPC_Scope, 19,
50618 OPC_CheckChild0Type, MVT::v8i8,
50619 OPC_MoveParent,
50620 OPC_CheckType, MVT::v8i16,
50621 OPC_CheckPatternPredicate1,
50622 OPC_EmitInteger32, 28,
50623 OPC_EmitRegisterI32, 0 ,
50624 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBWuv8i16),
50625 MVT::v8i16, 4, 0, 1, 2, 3,
50626 19,
50627 OPC_CheckChild0Type, MVT::v4i16,
50628 OPC_MoveParent,
50629 OPC_CheckType, MVT::v4i32,
50630 OPC_CheckPatternPredicate1,
50631 OPC_EmitInteger32, 28,
50632 OPC_EmitRegisterI32, 0 ,
50633 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBWuv4i32),
50634 MVT::v4i32, 4, 0, 1, 2, 3,
50635 19,
50636 OPC_CheckChild0Type, MVT::v2i32,
50637 OPC_MoveParent,
50638 OPC_CheckType, MVT::v2i64,
50639 OPC_CheckPatternPredicate1,
50640 OPC_EmitInteger32, 28,
50641 OPC_EmitRegisterI32, 0 ,
50642 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBWuv2i64),
50643 MVT::v2i64, 4, 0, 1, 2, 3,
50644 0,
50645 80, TARGET_VAL(ARMISD::VDUP),
50646 OPC_RecordChild0,
50647 OPC_CheckChild0TypeI32,
50648 OPC_MoveParent,
50649 OPC_SwitchType , 23, MVT::v16i8,
50650 OPC_CheckPatternPredicate0,
50651 OPC_EmitInteger32, 0,
50652 OPC_EmitRegisterI32, 0 ,
50653 OPC_EmitRegisterI32, 0 ,
50654 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
50655 MVT::v4i32, 0,
50656 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i8),
50657 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
50658 23, MVT::v8i16,
50659 OPC_CheckPatternPredicate0,
50660 OPC_EmitInteger32, 0,
50661 OPC_EmitRegisterI32, 0 ,
50662 OPC_EmitRegisterI32, 0 ,
50663 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
50664 MVT::v4i32, 0,
50665 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i16),
50666 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
50667 23, MVT::v4i32,
50668 OPC_CheckPatternPredicate0,
50669 OPC_EmitInteger32, 0,
50670 OPC_EmitRegisterI32, 0 ,
50671 OPC_EmitRegisterI32, 0 ,
50672 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
50673 MVT::v4i32, 0,
50674 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i32),
50675 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
50676 0,
50677 0,
50678 84|128,1,
50679 OPC_RecordChild1,
50680 OPC_SwitchType , 14, MVT::v8i8,
50681 OPC_CheckPatternPredicate1,
50682 OPC_EmitInteger32, 28,
50683 OPC_EmitRegisterI32, 0 ,
50684 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBv8i8),
50685 MVT::v8i8, 4, 0, 1, 2, 3,
50686 14, MVT::v4i16,
50687 OPC_CheckPatternPredicate1,
50688 OPC_EmitInteger32, 28,
50689 OPC_EmitRegisterI32, 0 ,
50690 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBv4i16),
50691 MVT::v4i16, 4, 0, 1, 2, 3,
50692 14, MVT::v2i32,
50693 OPC_CheckPatternPredicate1,
50694 OPC_EmitInteger32, 28,
50695 OPC_EmitRegisterI32, 0 ,
50696 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBv2i32),
50697 MVT::v2i32, 4, 0, 1, 2, 3,
50698 41, MVT::v16i8,
50699 OPC_Scope, 14,
50700 OPC_CheckPatternPredicate1,
50701 OPC_EmitInteger32, 28,
50702 OPC_EmitRegisterI32, 0 ,
50703 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBv16i8),
50704 MVT::v16i8, 4, 0, 1, 2, 3,
50705 23,
50706 OPC_CheckPatternPredicate0,
50707 OPC_EmitInteger32, 0,
50708 OPC_EmitRegisterI32, 0 ,
50709 OPC_EmitRegisterI32, 0 ,
50710 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
50711 MVT::v4i32, 0,
50712 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi8),
50713 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
50714 0,
50715 41, MVT::v8i16,
50716 OPC_Scope, 14,
50717 OPC_CheckPatternPredicate1,
50718 OPC_EmitInteger32, 28,
50719 OPC_EmitRegisterI32, 0 ,
50720 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBv8i16),
50721 MVT::v8i16, 4, 0, 1, 2, 3,
50722 23,
50723 OPC_CheckPatternPredicate0,
50724 OPC_EmitInteger32, 0,
50725 OPC_EmitRegisterI32, 0 ,
50726 OPC_EmitRegisterI32, 0 ,
50727 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
50728 MVT::v4i32, 0,
50729 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi16),
50730 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
50731 0,
50732 41, MVT::v4i32,
50733 OPC_Scope, 14,
50734 OPC_CheckPatternPredicate1,
50735 OPC_EmitInteger32, 28,
50736 OPC_EmitRegisterI32, 0 ,
50737 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBv4i32),
50738 MVT::v4i32, 4, 0, 1, 2, 3,
50739 23,
50740 OPC_CheckPatternPredicate0,
50741 OPC_EmitInteger32, 0,
50742 OPC_EmitRegisterI32, 0 ,
50743 OPC_EmitRegisterI32, 0 ,
50744 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
50745 MVT::v4i32, 0,
50746 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi32),
50747 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
50748 0,
50749 14, MVT::v1i64,
50750 OPC_CheckPatternPredicate1,
50751 OPC_EmitInteger32, 28,
50752 OPC_EmitRegisterI32, 0 ,
50753 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBv1i64),
50754 MVT::v1i64, 4, 0, 1, 2, 3,
50755 14, MVT::v2i64,
50756 OPC_CheckPatternPredicate1,
50757 OPC_EmitInteger32, 28,
50758 OPC_EmitRegisterI32, 0 ,
50759 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBv2i64),
50760 MVT::v2i64, 4, 0, 1, 2, 3,
50761 0,
50762 0,
50763 0,
50764 28|128,3, TARGET_VAL(ARMISD::ADDC),
50765 OPC_RecordChild0,
50766 OPC_RecordChild1,
50767 OPC_Scope, 120,
50768 OPC_CheckTypeI32,
50769 OPC_Scope, 59,
50770 OPC_CheckPatternPredicate3,
50771 OPC_Scope, 18,
50772 OPC_CheckComplexPat4, /*#*/1,
50773 OPC_EmitInteger32, 28,
50774 OPC_EmitRegisterI32, 0 ,
50775 OPC_MorphNodeTo2None, TARGET_VAL(ARM::ADDSrsr),
50776 MVT::i32, MVT::i32, 6, 0, 2, 3, 4, 5, 6,
50777 18,
50778 OPC_CheckComplexPat4, /*#*/0,
50779 OPC_EmitInteger32, 28,
50780 OPC_EmitRegisterI32, 0 ,
50781 OPC_MorphNodeTo2None, TARGET_VAL(ARM::ADDSrsr),
50782 MVT::i32, MVT::i32, 6, 1, 2, 3, 4, 5, 6,
50783 17,
50784 OPC_CheckComplexPat5, /*#*/1,
50785 OPC_EmitInteger32, 28,
50786 OPC_EmitRegisterI32, 0 ,
50787 OPC_MorphNodeTo2None, TARGET_VAL(ARM::ADDSrsi),
50788 MVT::i32, MVT::i32, 5, 0, 2, 3, 4, 5,
50789 0,
50790 18,
50791 OPC_CheckPatternPredicate4,
50792 OPC_CheckComplexPat7, /*#*/1,
50793 OPC_EmitInteger32, 28,
50794 OPC_EmitRegisterI32, 0 ,
50795 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2ADDSrs),
50796 MVT::i32, MVT::i32, 5, 0, 2, 3, 4, 5,
50797 18,
50798 OPC_CheckPatternPredicate3,
50799 OPC_CheckComplexPat5, /*#*/0,
50800 OPC_EmitInteger32, 28,
50801 OPC_EmitRegisterI32, 0 ,
50802 OPC_MorphNodeTo2None, TARGET_VAL(ARM::ADDSrsi),
50803 MVT::i32, MVT::i32, 5, 1, 2, 3, 4, 5,
50804 18,
50805 OPC_CheckPatternPredicate4,
50806 OPC_CheckComplexPat7, /*#*/0,
50807 OPC_EmitInteger32, 28,
50808 OPC_EmitRegisterI32, 0 ,
50809 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2ADDSrs),
50810 MVT::i32, MVT::i32, 5, 1, 2, 3, 4, 5,
50811 0,
50812 96|128,1,
50813 OPC_MoveChild1,
50814 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
50815 OPC_Scope, 23,
50816 OPC_CheckPredicate, 87,
50817 OPC_MoveParent,
50818 OPC_CheckTypeI32,
50819 OPC_CheckPatternPredicate4,
50820 OPC_EmitConvertToTarget1,
50821 OPC_EmitNodeXForm, 3, 2,
50822 OPC_EmitInteger32, 28,
50823 OPC_EmitRegisterI32, 0 ,
50824 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SUBSri),
50825 MVT::i32, MVT::i32, 4, 0, 3, 4, 5,
50826 20,
50827 OPC_CheckPredicate, 20,
50828 OPC_MoveParent,
50829 OPC_CheckTypeI32,
50830 OPC_CheckPatternPredicate3,
50831 OPC_EmitConvertToTarget1,
50832 OPC_EmitInteger32, 28,
50833 OPC_EmitRegisterI32, 0 ,
50834 OPC_MorphNodeTo2None, TARGET_VAL(ARM::ADDSri),
50835 MVT::i32, MVT::i32, 4, 0, 2, 3, 4,
50836 23,
50837 OPC_CheckPredicate, 62,
50838 OPC_MoveParent,
50839 OPC_CheckTypeI32,
50840 OPC_CheckPatternPredicate3,
50841 OPC_EmitConvertToTarget1,
50842 OPC_EmitNodeXForm, 3, 2,
50843 OPC_EmitInteger32, 28,
50844 OPC_EmitRegisterI32, 0 ,
50845 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SUBSri),
50846 MVT::i32, MVT::i32, 4, 0, 3, 4, 5,
50847 15,
50848 OPC_CheckPredicate, 28,
50849 OPC_MoveParent,
50850 OPC_CheckTypeI32,
50851 OPC_CheckPatternPredicate, 37,
50852 OPC_EmitConvertToTarget1,
50853 OPC_MorphNodeTo2None, TARGET_VAL(ARM::tADDSi3),
50854 MVT::i32, MVT::i32, 2, 0, 2,
50855 15,
50856 OPC_CheckPredicate, 47,
50857 OPC_MoveParent,
50858 OPC_CheckTypeI32,
50859 OPC_CheckPatternPredicate, 37,
50860 OPC_EmitConvertToTarget1,
50861 OPC_MorphNodeTo2None, TARGET_VAL(ARM::tADDSi8),
50862 MVT::i32, MVT::i32, 2, 0, 2,
50863 20,
50864 OPC_CheckPredicate, 13,
50865 OPC_MoveParent,
50866 OPC_CheckTypeI32,
50867 OPC_CheckPatternPredicate4,
50868 OPC_EmitConvertToTarget1,
50869 OPC_EmitInteger32, 28,
50870 OPC_EmitRegisterI32, 0 ,
50871 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2ADDSri),
50872 MVT::i32, MVT::i32, 4, 0, 2, 3, 4,
50873 23,
50874 OPC_CheckPredicate, 63,
50875 OPC_MoveParent,
50876 OPC_CheckTypeI32,
50877 OPC_CheckPatternPredicate4,
50878 OPC_EmitConvertToTarget1,
50879 OPC_EmitNodeXForm, 4, 2,
50880 OPC_EmitInteger32, 28,
50881 OPC_EmitRegisterI32, 0 ,
50882 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SUBSri),
50883 MVT::i32, MVT::i32, 4, 0, 3, 4, 5,
50884 71,
50885 OPC_CheckPredicate, 71,
50886 OPC_MoveParent,
50887 OPC_CheckTypeI32,
50888 OPC_Scope, 32,
50889 OPC_CheckPatternPredicate, 32,
50890 OPC_EmitConvertToTarget1,
50891 OPC_EmitNodeXForm, 3, 2,
50892 OPC_EmitInteger32, 28,
50893 OPC_EmitRegisterI32, 0 ,
50894 OPC_EmitNode1None, TARGET_VAL(ARM::MOVi16),
50895 MVT::i32, 3, 3, 4, 5,
50896 OPC_EmitInteger32, 28,
50897 OPC_EmitRegisterI32, 0 ,
50898 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SUBSrr),
50899 MVT::i32, MVT::i32, 4, 0, 6, 7, 8,
50900 31,
50901 OPC_CheckPatternPredicate4,
50902 OPC_EmitConvertToTarget1,
50903 OPC_EmitNodeXForm, 3, 2,
50904 OPC_EmitInteger32, 28,
50905 OPC_EmitRegisterI32, 0 ,
50906 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi16),
50907 MVT::i32, 3, 3, 4, 5,
50908 OPC_EmitInteger32, 28,
50909 OPC_EmitRegisterI32, 0 ,
50910 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SUBSrr),
50911 MVT::i32, MVT::i32, 4, 0, 6, 7, 8,
50912 0,
50913 0,
50914 60,
50915 OPC_CheckTypeI32,
50916 OPC_Scope, 15,
50917 OPC_CheckPatternPredicate3,
50918 OPC_EmitInteger32, 28,
50919 OPC_EmitRegisterI32, 0 ,
50920 OPC_MorphNodeTo2None, TARGET_VAL(ARM::ADDSrr),
50921 MVT::i32, MVT::i32, 4, 0, 1, 2, 3,
50922 10,
50923 OPC_CheckPatternPredicate, 37,
50924 OPC_MorphNodeTo2None, TARGET_VAL(ARM::tADDSrr),
50925 MVT::i32, MVT::i32, 2, 0, 1,
50926 29,
50927 OPC_CheckPatternPredicate4,
50928 OPC_EmitInteger32, 28,
50929 OPC_EmitRegisterI32, 0 ,
50930 OPC_Scope, 10,
50931 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2ADDSrr),
50932 MVT::i32, MVT::i32, 4, 0, 1, 2, 3,
50933 10,
50934 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2ADDSrr),
50935 MVT::i32, MVT::i32, 4, 1, 0, 2, 3,
50936 0,
50937 0,
50938 0,
50939 76|128,2, TARGET_VAL(ARMISD::SUBC),
50940 OPC_Scope, 123,
50941 OPC_RecordChild0,
50942 OPC_RecordChild1,
50943 OPC_CheckTypeI32,
50944 OPC_Scope, 77,
50945 OPC_CheckPatternPredicate3,
50946 OPC_Scope, 18,
50947 OPC_CheckComplexPat4, /*#*/1,
50948 OPC_EmitInteger32, 28,
50949 OPC_EmitRegisterI32, 0 ,
50950 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SUBSrsr),
50951 MVT::i32, MVT::i32, 6, 0, 2, 3, 4, 5, 6,
50952 18,
50953 OPC_CheckComplexPat4, /*#*/0,
50954 OPC_EmitInteger32, 28,
50955 OPC_EmitRegisterI32, 0 ,
50956 OPC_MorphNodeTo2None, TARGET_VAL(ARM::RSBSrsr),
50957 MVT::i32, MVT::i32, 6, 1, 2, 3, 4, 5, 6,
50958 17,
50959 OPC_CheckComplexPat5, /*#*/1,
50960 OPC_EmitInteger32, 28,
50961 OPC_EmitRegisterI32, 0 ,
50962 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SUBSrsi),
50963 MVT::i32, MVT::i32, 5, 0, 2, 3, 4, 5,
50964 17,
50965 OPC_CheckComplexPat5, /*#*/0,
50966 OPC_EmitInteger32, 28,
50967 OPC_EmitRegisterI32, 0 ,
50968 OPC_MorphNodeTo2None, TARGET_VAL(ARM::RSBSrsi),
50969 MVT::i32, MVT::i32, 5, 1, 2, 3, 4, 5,
50970 0,
50971 39,
50972 OPC_CheckPatternPredicate4,
50973 OPC_Scope, 17,
50974 OPC_CheckComplexPat7, /*#*/1,
50975 OPC_EmitInteger32, 28,
50976 OPC_EmitRegisterI32, 0 ,
50977 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SUBSrs),
50978 MVT::i32, MVT::i32, 5, 0, 2, 3, 4, 5,
50979 17,
50980 OPC_CheckComplexPat7, /*#*/0,
50981 OPC_EmitInteger32, 28,
50982 OPC_EmitRegisterI32, 0 ,
50983 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2RSBSrs),
50984 MVT::i32, MVT::i32, 5, 1, 2, 3, 4, 5,
50985 0,
50986 0,
50987 13,
50988 OPC_CheckChild0Integer, 0,
50989 OPC_RecordChild1,
50990 OPC_CheckTypeI32,
50991 OPC_CheckPatternPredicate, 37,
50992 OPC_MorphNodeTo2None, TARGET_VAL(ARM::tRSBS),
50993 MVT::i32, MVT::i32, 1, 0,
50994 62|128,1,
50995 OPC_RecordChild0,
50996 OPC_Scope, 25,
50997 OPC_RecordChild1,
50998 OPC_MoveChild1,
50999 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51000 OPC_CheckPredicate, 20,
51001 OPC_MoveParent,
51002 OPC_CheckTypeI32,
51003 OPC_CheckPatternPredicate3,
51004 OPC_EmitConvertToTarget1,
51005 OPC_EmitInteger32, 28,
51006 OPC_EmitRegisterI32, 0 ,
51007 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SUBSri),
51008 MVT::i32, MVT::i32, 4, 0, 2, 3, 4,
51009 25,
51010 OPC_MoveChild0,
51011 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51012 OPC_CheckPredicate, 20,
51013 OPC_MoveParent,
51014 OPC_RecordChild1,
51015 OPC_CheckTypeI32,
51016 OPC_CheckPatternPredicate3,
51017 OPC_EmitConvertToTarget0,
51018 OPC_EmitInteger32, 28,
51019 OPC_EmitRegisterI32, 0 ,
51020 OPC_MorphNodeTo2None, TARGET_VAL(ARM::RSBSri),
51021 MVT::i32, MVT::i32, 4, 1, 2, 3, 4,
51022 60,
51023 OPC_RecordChild1,
51024 OPC_MoveChild1,
51025 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51026 OPC_Scope, 15,
51027 OPC_CheckPredicate, 28,
51028 OPC_MoveParent,
51029 OPC_CheckTypeI32,
51030 OPC_CheckPatternPredicate, 37,
51031 OPC_EmitConvertToTarget1,
51032 OPC_MorphNodeTo2None, TARGET_VAL(ARM::tSUBSi3),
51033 MVT::i32, MVT::i32, 2, 0, 2,
51034 15,
51035 OPC_CheckPredicate, 85,
51036 OPC_MoveParent,
51037 OPC_CheckTypeI32,
51038 OPC_CheckPatternPredicate, 37,
51039 OPC_EmitConvertToTarget1,
51040 OPC_MorphNodeTo2None, TARGET_VAL(ARM::tSUBSi8),
51041 MVT::i32, MVT::i32, 2, 0, 2,
51042 20,
51043 OPC_CheckPredicate, 13,
51044 OPC_MoveParent,
51045 OPC_CheckTypeI32,
51046 OPC_CheckPatternPredicate4,
51047 OPC_EmitConvertToTarget1,
51048 OPC_EmitInteger32, 28,
51049 OPC_EmitRegisterI32, 0 ,
51050 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SUBSri),
51051 MVT::i32, MVT::i32, 4, 0, 2, 3, 4,
51052 0,
51053 25,
51054 OPC_MoveChild0,
51055 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51056 OPC_CheckPredicate, 13,
51057 OPC_MoveParent,
51058 OPC_RecordChild1,
51059 OPC_CheckTypeI32,
51060 OPC_CheckPatternPredicate4,
51061 OPC_EmitConvertToTarget0,
51062 OPC_EmitInteger32, 28,
51063 OPC_EmitRegisterI32, 0 ,
51064 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2RSBSri),
51065 MVT::i32, MVT::i32, 4, 1, 2, 3, 4,
51066 47,
51067 OPC_RecordChild1,
51068 OPC_CheckTypeI32,
51069 OPC_Scope, 15,
51070 OPC_CheckPatternPredicate3,
51071 OPC_EmitInteger32, 28,
51072 OPC_EmitRegisterI32, 0 ,
51073 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SUBSrr),
51074 MVT::i32, MVT::i32, 4, 0, 1, 2, 3,
51075 10,
51076 OPC_CheckPatternPredicate, 37,
51077 OPC_MorphNodeTo2None, TARGET_VAL(ARM::tSUBSrr),
51078 MVT::i32, MVT::i32, 2, 0, 1,
51079 15,
51080 OPC_CheckPatternPredicate4,
51081 OPC_EmitInteger32, 28,
51082 OPC_EmitRegisterI32, 0 ,
51083 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SUBSrr),
51084 MVT::i32, MVT::i32, 4, 0, 1, 2, 3,
51085 0,
51086 0,
51087 0,
51088 123|128,2, TARGET_VAL(ARMISD::ADDE),
51089 OPC_RecordChild0,
51090 OPC_RecordChild1,
51091 OPC_Scope, 79,
51092 OPC_RecordChild2,
51093 OPC_CheckTypeI32,
51094 OPC_Scope, 50,
51095 OPC_CheckPatternPredicate3,
51096 OPC_Scope, 23,
51097 OPC_CheckComplexPat4, /*#*/1,
51098 OPC_EmitInteger32, 28,
51099 OPC_EmitRegisterI32, 0 ,
51100 OPC_EmitRegisterI32, 0 ,
51101 OPC_EmitCopyToReg2, ARM::CPSR,
51102 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::ADCrsr),
51103 MVT::i32, MVT::i32, 7, 0, 3, 4, 5, 6, 7, 8,
51104 22,
51105 OPC_CheckComplexPat5, /*#*/1,
51106 OPC_EmitInteger32, 28,
51107 OPC_EmitRegisterI32, 0 ,
51108 OPC_EmitRegisterI32, 0 ,
51109 OPC_EmitCopyToReg2, ARM::CPSR,
51110 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::ADCrsi),
51111 MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
51112 0,
51113 23,
51114 OPC_CheckPatternPredicate4,
51115 OPC_CheckComplexPat7, /*#*/1,
51116 OPC_EmitInteger32, 28,
51117 OPC_EmitRegisterI32, 0 ,
51118 OPC_EmitRegisterI32, 0 ,
51119 OPC_EmitCopyToReg2, ARM::CPSR,
51120 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::t2ADCrs),
51121 MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
51122 0,
51123 105|128,1,
51124 OPC_MoveChild1,
51125 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51126 OPC_Scope, 29,
51127 OPC_CheckPredicate, 106,
51128 OPC_MoveParent,
51129 OPC_RecordChild2,
51130 OPC_CheckTypeI32,
51131 OPC_CheckPatternPredicate4,
51132 OPC_EmitConvertToTarget1,
51133 OPC_EmitNodeXForm, 9, 3,
51134 OPC_EmitInteger32, 28,
51135 OPC_EmitRegisterI32, 0 ,
51136 OPC_EmitRegisterI32, 0 ,
51137 OPC_EmitCopyToReg2, ARM::CPSR,
51138 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::t2SBCri),
51139 MVT::i32, MVT::i32, 5, 0, 4, 5, 6, 7,
51140 26,
51141 OPC_CheckPredicate, 20,
51142 OPC_MoveParent,
51143 OPC_RecordChild2,
51144 OPC_CheckTypeI32,
51145 OPC_CheckPatternPredicate3,
51146 OPC_EmitConvertToTarget1,
51147 OPC_EmitInteger32, 28,
51148 OPC_EmitRegisterI32, 0 ,
51149 OPC_EmitRegisterI32, 0 ,
51150 OPC_EmitCopyToReg2, ARM::CPSR,
51151 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::ADCri),
51152 MVT::i32, MVT::i32, 5, 0, 3, 4, 5, 6,
51153 29,
51154 OPC_CheckPredicate, 64,
51155 OPC_MoveParent,
51156 OPC_RecordChild2,
51157 OPC_CheckTypeI32,
51158 OPC_CheckPatternPredicate3,
51159 OPC_EmitConvertToTarget1,
51160 OPC_EmitNodeXForm, 9, 3,
51161 OPC_EmitInteger32, 28,
51162 OPC_EmitRegisterI32, 0 ,
51163 OPC_EmitRegisterI32, 0 ,
51164 OPC_EmitCopyToReg2, ARM::CPSR,
51165 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::SBCri),
51166 MVT::i32, MVT::i32, 5, 0, 4, 5, 6, 7,
51167 26,
51168 OPC_CheckPredicate, 13,
51169 OPC_MoveParent,
51170 OPC_RecordChild2,
51171 OPC_CheckTypeI32,
51172 OPC_CheckPatternPredicate4,
51173 OPC_EmitConvertToTarget1,
51174 OPC_EmitInteger32, 28,
51175 OPC_EmitRegisterI32, 0 ,
51176 OPC_EmitRegisterI32, 0 ,
51177 OPC_EmitCopyToReg2, ARM::CPSR,
51178 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::t2ADCri),
51179 MVT::i32, MVT::i32, 5, 0, 3, 4, 5, 6,
51180 29,
51181 OPC_CheckPredicate, 56,
51182 OPC_MoveParent,
51183 OPC_RecordChild2,
51184 OPC_CheckTypeI32,
51185 OPC_CheckPatternPredicate4,
51186 OPC_EmitConvertToTarget1,
51187 OPC_EmitNodeXForm, 1, 3,
51188 OPC_EmitInteger32, 28,
51189 OPC_EmitRegisterI32, 0 ,
51190 OPC_EmitRegisterI32, 0 ,
51191 OPC_EmitCopyToReg2, ARM::CPSR,
51192 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::t2SBCri),
51193 MVT::i32, MVT::i32, 5, 0, 4, 5, 6, 7,
51194 82,
51195 OPC_CheckPredicate, 71,
51196 OPC_MoveParent,
51197 OPC_RecordChild2,
51198 OPC_CheckTypeI32,
51199 OPC_Scope, 37,
51200 OPC_CheckPatternPredicate, 32,
51201 OPC_EmitConvertToTarget1,
51202 OPC_EmitNodeXForm, 9, 3,
51203 OPC_EmitInteger32, 28,
51204 OPC_EmitRegisterI32, 0 ,
51205 OPC_EmitNode1None, TARGET_VAL(ARM::MOVi16),
51206 MVT::i32, 3, 4, 5, 6,
51207 OPC_EmitInteger32, 28,
51208 OPC_EmitRegisterI32, 0 ,
51209 OPC_EmitRegisterI32, 0 ,
51210 OPC_EmitCopyToReg2, ARM::CPSR,
51211 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::SBCrr),
51212 MVT::i32, MVT::i32, 5, 0, 7, 8, 9, 10,
51213 36,
51214 OPC_CheckPatternPredicate4,
51215 OPC_EmitConvertToTarget1,
51216 OPC_EmitNodeXForm, 9, 3,
51217 OPC_EmitInteger32, 28,
51218 OPC_EmitRegisterI32, 0 ,
51219 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi16),
51220 MVT::i32, 3, 4, 5, 6,
51221 OPC_EmitInteger32, 28,
51222 OPC_EmitRegisterI32, 0 ,
51223 OPC_EmitRegisterI32, 0 ,
51224 OPC_EmitCopyToReg2, ARM::CPSR,
51225 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::t2SBCrr),
51226 MVT::i32, MVT::i32, 5, 0, 7, 8, 9, 10,
51227 0,
51228 0,
51229 59,
51230 OPC_RecordChild2,
51231 OPC_CheckTypeI32,
51232 OPC_Scope, 20,
51233 OPC_CheckPatternPredicate3,
51234 OPC_EmitInteger32, 28,
51235 OPC_EmitRegisterI32, 0 ,
51236 OPC_EmitRegisterI32, 0 ,
51237 OPC_EmitCopyToReg2, ARM::CPSR,
51238 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::ADCrr),
51239 MVT::i32, MVT::i32, 5, 0, 1, 3, 4, 5,
51240 12,
51241 OPC_CheckPatternPredicate, 37,
51242 OPC_EmitCopyToReg2, ARM::CPSR,
51243 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::tADCS),
51244 MVT::i32, MVT::i32, 2, 0, 1,
51245 20,
51246 OPC_CheckPatternPredicate4,
51247 OPC_EmitInteger32, 28,
51248 OPC_EmitRegisterI32, 0 ,
51249 OPC_EmitRegisterI32, 0 ,
51250 OPC_EmitCopyToReg2, ARM::CPSR,
51251 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::t2ADCrr),
51252 MVT::i32, MVT::i32, 5, 0, 1, 3, 4, 5,
51253 0,
51254 0,
51255 37|128,2, TARGET_VAL(ARMISD::SUBE),
51256 OPC_RecordChild0,
51257 OPC_Scope, 33|128,1,
51258 OPC_RecordChild1,
51259 OPC_Scope, 126,
51260 OPC_RecordChild2,
51261 OPC_CheckTypeI32,
51262 OPC_Scope, 97,
51263 OPC_CheckPatternPredicate3,
51264 OPC_Scope, 23,
51265 OPC_CheckComplexPat4, /*#*/1,
51266 OPC_EmitInteger32, 28,
51267 OPC_EmitRegisterI32, 0 ,
51268 OPC_EmitRegisterI32, 0 ,
51269 OPC_EmitCopyToReg2, ARM::CPSR,
51270 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::SBCrsr),
51271 MVT::i32, MVT::i32, 7, 0, 3, 4, 5, 6, 7, 8,
51272 23,
51273 OPC_CheckComplexPat4, /*#*/0,
51274 OPC_EmitInteger32, 28,
51275 OPC_EmitRegisterI32, 0 ,
51276 OPC_EmitRegisterI32, 0 ,
51277 OPC_EmitCopyToReg2, ARM::CPSR,
51278 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::RSCrsr),
51279 MVT::i32, MVT::i32, 7, 1, 3, 4, 5, 6, 7, 8,
51280 22,
51281 OPC_CheckComplexPat5, /*#*/1,
51282 OPC_EmitInteger32, 28,
51283 OPC_EmitRegisterI32, 0 ,
51284 OPC_EmitRegisterI32, 0 ,
51285 OPC_EmitCopyToReg2, ARM::CPSR,
51286 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::SBCrsi),
51287 MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
51288 22,
51289 OPC_CheckComplexPat5, /*#*/0,
51290 OPC_EmitInteger32, 28,
51291 OPC_EmitRegisterI32, 0 ,
51292 OPC_EmitRegisterI32, 0 ,
51293 OPC_EmitCopyToReg2, ARM::CPSR,
51294 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::RSCrsi),
51295 MVT::i32, MVT::i32, 6, 1, 3, 4, 5, 6, 7,
51296 0,
51297 23,
51298 OPC_CheckPatternPredicate4,
51299 OPC_CheckComplexPat7, /*#*/1,
51300 OPC_EmitInteger32, 28,
51301 OPC_EmitRegisterI32, 0 ,
51302 OPC_EmitRegisterI32, 0 ,
51303 OPC_EmitCopyToReg2, ARM::CPSR,
51304 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::t2SBCrs),
51305 MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
51306 0,
51307 30,
51308 OPC_MoveChild1,
51309 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51310 OPC_CheckPredicate, 20,
51311 OPC_MoveParent,
51312 OPC_RecordChild2,
51313 OPC_CheckTypeI32,
51314 OPC_CheckPatternPredicate3,
51315 OPC_EmitConvertToTarget1,
51316 OPC_EmitInteger32, 28,
51317 OPC_EmitRegisterI32, 0 ,
51318 OPC_EmitRegisterI32, 0 ,
51319 OPC_EmitCopyToReg2, ARM::CPSR,
51320 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::SBCri),
51321 MVT::i32, MVT::i32, 5, 0, 3, 4, 5, 6,
51322 0,
51323 31,
51324 OPC_MoveChild0,
51325 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51326 OPC_CheckPredicate, 20,
51327 OPC_MoveParent,
51328 OPC_RecordChild1,
51329 OPC_RecordChild2,
51330 OPC_CheckTypeI32,
51331 OPC_CheckPatternPredicate3,
51332 OPC_EmitConvertToTarget0,
51333 OPC_EmitInteger32, 28,
51334 OPC_EmitRegisterI32, 0 ,
51335 OPC_EmitRegisterI32, 0 ,
51336 OPC_EmitCopyToReg2, ARM::CPSR,
51337 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::RSCri),
51338 MVT::i32, MVT::i32, 5, 1, 3, 4, 5, 6,
51339 94,
51340 OPC_RecordChild1,
51341 OPC_Scope, 30,
51342 OPC_MoveChild1,
51343 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51344 OPC_CheckPredicate, 13,
51345 OPC_MoveParent,
51346 OPC_RecordChild2,
51347 OPC_CheckTypeI32,
51348 OPC_CheckPatternPredicate4,
51349 OPC_EmitConvertToTarget1,
51350 OPC_EmitInteger32, 28,
51351 OPC_EmitRegisterI32, 0 ,
51352 OPC_EmitRegisterI32, 0 ,
51353 OPC_EmitCopyToReg2, ARM::CPSR,
51354 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::t2SBCri),
51355 MVT::i32, MVT::i32, 5, 0, 3, 4, 5, 6,
51356 59,
51357 OPC_RecordChild2,
51358 OPC_CheckTypeI32,
51359 OPC_Scope, 20,
51360 OPC_CheckPatternPredicate3,
51361 OPC_EmitInteger32, 28,
51362 OPC_EmitRegisterI32, 0 ,
51363 OPC_EmitRegisterI32, 0 ,
51364 OPC_EmitCopyToReg2, ARM::CPSR,
51365 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::SBCrr),
51366 MVT::i32, MVT::i32, 5, 0, 1, 3, 4, 5,
51367 12,
51368 OPC_CheckPatternPredicate, 37,
51369 OPC_EmitCopyToReg2, ARM::CPSR,
51370 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::tSBCS),
51371 MVT::i32, MVT::i32, 2, 0, 1,
51372 20,
51373 OPC_CheckPatternPredicate4,
51374 OPC_EmitInteger32, 28,
51375 OPC_EmitRegisterI32, 0 ,
51376 OPC_EmitRegisterI32, 0 ,
51377 OPC_EmitCopyToReg2, ARM::CPSR,
51378 OPC_MorphNodeTo2GlueInput, TARGET_VAL(ARM::t2SBCrr),
51379 MVT::i32, MVT::i32, 5, 0, 1, 3, 4, 5,
51380 0,
51381 0,
51382 0,
51383 89|128,1, TARGET_VAL(ARMISD::CMP),
51384 OPC_RecordChild0,
51385 OPC_CheckChild0TypeI32,
51386 OPC_RecordChild1,
51387 OPC_Scope, 38,
51388 OPC_CheckPatternPredicate3,
51389 OPC_Scope, 17,
51390 OPC_CheckComplexPat4, /*#*/1,
51391 OPC_EmitInteger32, 28,
51392 OPC_EmitRegisterI32, 0 ,
51393 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPrsr),
51394 MVT::i32, 6, 0, 2, 3, 4, 5, 6,
51395 16,
51396 OPC_CheckComplexPat5, /*#*/1,
51397 OPC_EmitInteger32, 28,
51398 OPC_EmitRegisterI32, 0 ,
51399 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPrsi),
51400 MVT::i32, 5, 0, 2, 3, 4, 5,
51401 0,
51402 17,
51403 OPC_CheckPatternPredicate4,
51404 OPC_CheckComplexPat7, /*#*/1,
51405 OPC_EmitInteger32, 28,
51406 OPC_EmitRegisterI32, 0 ,
51407 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMPrs),
51408 MVT::i32, 5, 0, 2, 3, 4, 5,
51409 108,
51410 OPC_MoveChild1,
51411 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51412 OPC_Scope, 18,
51413 OPC_CheckPredicate, 20,
51414 OPC_MoveParent,
51415 OPC_CheckPatternPredicate3,
51416 OPC_EmitConvertToTarget1,
51417 OPC_EmitInteger32, 28,
51418 OPC_EmitRegisterI32, 0 ,
51419 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPri),
51420 MVT::i32, 4, 0, 2, 3, 4,
51421 21,
51422 OPC_CheckPredicate, 62,
51423 OPC_MoveParent,
51424 OPC_CheckPatternPredicate3,
51425 OPC_EmitConvertToTarget1,
51426 OPC_EmitNodeXForm, 3, 2,
51427 OPC_EmitInteger32, 28,
51428 OPC_EmitRegisterI32, 0 ,
51429 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMNri),
51430 MVT::i32, 4, 0, 3, 4, 5,
51431 19,
51432 OPC_CheckPredicate, 47,
51433 OPC_MoveParent,
51434 OPC_CheckPatternPredicate, 10,
51435 OPC_EmitConvertToTarget1,
51436 OPC_EmitInteger32, 28,
51437 OPC_EmitRegisterI32, 0 ,
51438 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::tCMPi8),
51439 MVT::i32, 4, 0, 2, 3, 4,
51440 18,
51441 OPC_CheckPredicate, 13,
51442 OPC_MoveParent,
51443 OPC_CheckPatternPredicate4,
51444 OPC_EmitConvertToTarget1,
51445 OPC_EmitInteger32, 28,
51446 OPC_EmitRegisterI32, 0 ,
51447 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMPri),
51448 MVT::i32, 4, 0, 2, 3, 4,
51449 21,
51450 OPC_CheckPredicate, 63,
51451 OPC_MoveParent,
51452 OPC_CheckPatternPredicate4,
51453 OPC_EmitConvertToTarget1,
51454 OPC_EmitNodeXForm, 4, 2,
51455 OPC_EmitInteger32, 28,
51456 OPC_EmitRegisterI32, 0 ,
51457 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMNri),
51458 MVT::i32, 4, 0, 3, 4, 5,
51459 0,
51460 14,
51461 OPC_CheckPatternPredicate3,
51462 OPC_EmitInteger32, 28,
51463 OPC_EmitRegisterI32, 0 ,
51464 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMPrr),
51465 MVT::i32, 4, 0, 1, 2, 3,
51466 15,
51467 OPC_CheckPatternPredicate, 10,
51468 OPC_EmitInteger32, 28,
51469 OPC_EmitRegisterI32, 0 ,
51470 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::tCMPr),
51471 MVT::i32, 4, 0, 1, 2, 3,
51472 14,
51473 OPC_CheckPatternPredicate4,
51474 OPC_EmitInteger32, 28,
51475 OPC_EmitRegisterI32, 0 ,
51476 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMPrr),
51477 MVT::i32, 4, 0, 1, 2, 3,
51478 0,
51479 59, TARGET_VAL(ARMISD::CMN),
51480 OPC_RecordChild0,
51481 OPC_CheckChild0TypeI32,
51482 OPC_Scope, 30,
51483 OPC_MoveChild1,
51484 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
51485 OPC_CheckChild0Integer, 0,
51486 OPC_RecordChild1,
51487 OPC_MoveChild1,
51488 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51489 OPC_CheckPredicate, 13,
51490 OPC_MoveParent,
51491 OPC_MoveParent,
51492 OPC_CheckPatternPredicate4,
51493 OPC_EmitConvertToTarget1,
51494 OPC_EmitInteger32, 28,
51495 OPC_EmitRegisterI32, 0 ,
51496 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::t2CMNri),
51497 MVT::i32, 4, 0, 2, 3, 4,
51498 23,
51499 OPC_RecordChild1,
51500 OPC_MoveChild1,
51501 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51502 OPC_CheckPredicate, 20,
51503 OPC_MoveParent,
51504 OPC_CheckPatternPredicate3,
51505 OPC_EmitConvertToTarget1,
51506 OPC_EmitInteger32, 28,
51507 OPC_EmitRegisterI32, 0 ,
51508 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::CMNri),
51509 MVT::i32, 4, 0, 2, 3, 4,
51510 0,
51511 55|128,1, TARGET_VAL(ARMISD::SSAT),
51512 OPC_Scope, 0|128,1,
51513 OPC_MoveChild0,
51514 OPC_SwitchOpcode , 56, TARGET_VAL(ISD::SHL),
51515 OPC_RecordChild0,
51516 OPC_RecordChild1,
51517 OPC_MoveChild1,
51518 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51519 OPC_CheckPredicate5,
51520 OPC_CheckTypeI32,
51521 OPC_MoveParent,
51522 OPC_MoveSibling1,
51523 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51524 OPC_RecordNode,
51525 OPC_CheckPredicate5,
51526 OPC_CheckTypeI32,
51527 OPC_MoveParent,
51528 OPC_CheckTypeI32,
51529 OPC_Scope, 17,
51530 OPC_CheckPatternPredicate3,
51531 OPC_EmitConvertToTarget2,
51532 OPC_EmitConvertToTarget1,
51533 OPC_EmitInteger32, 28,
51534 OPC_EmitRegisterI32, 0 ,
51535 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SSAT),
51536 MVT::i32, 5, 3, 0, 4, 5, 6,
51537 17,
51538 OPC_CheckPatternPredicate4,
51539 OPC_EmitConvertToTarget2,
51540 OPC_EmitConvertToTarget1,
51541 OPC_EmitInteger32, 28,
51542 OPC_EmitRegisterI32, 0 ,
51543 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SSAT),
51544 MVT::i32, 5, 3, 0, 4, 5, 6,
51545 0,
51546 63, TARGET_VAL(ISD::SRA),
51547 OPC_RecordChild0,
51548 OPC_RecordChild1,
51549 OPC_MoveChild1,
51550 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51551 OPC_CheckPredicate, 19,
51552 OPC_CheckTypeI32,
51553 OPC_MoveParent,
51554 OPC_MoveSibling1,
51555 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51556 OPC_RecordNode,
51557 OPC_CheckPredicate5,
51558 OPC_CheckTypeI32,
51559 OPC_MoveParent,
51560 OPC_CheckTypeI32,
51561 OPC_Scope, 20,
51562 OPC_CheckPatternPredicate3,
51563 OPC_EmitConvertToTarget2,
51564 OPC_EmitConvertToTarget1,
51565 OPC_EmitNodeXForm, 12, 4,
51566 OPC_EmitInteger32, 28,
51567 OPC_EmitRegisterI32, 0 ,
51568 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SSAT),
51569 MVT::i32, 5, 3, 0, 5, 6, 7,
51570 20,
51571 OPC_CheckPatternPredicate4,
51572 OPC_EmitConvertToTarget2,
51573 OPC_EmitConvertToTarget1,
51574 OPC_EmitNodeXForm, 12, 4,
51575 OPC_EmitInteger32, 28,
51576 OPC_EmitRegisterI32, 0 ,
51577 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SSAT),
51578 MVT::i32, 5, 3, 0, 5, 6, 7,
51579 0,
51580 0,
51581 50,
51582 OPC_RecordChild0,
51583 OPC_RecordChild1,
51584 OPC_MoveChild1,
51585 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51586 OPC_CheckPredicate5,
51587 OPC_CheckTypeI32,
51588 OPC_MoveParent,
51589 OPC_CheckTypeI32,
51590 OPC_Scope, 18,
51591 OPC_CheckPatternPredicate3,
51592 OPC_EmitConvertToTarget1,
51593 OPC_EmitInteger32, 0,
51594 OPC_EmitInteger32, 28,
51595 OPC_EmitRegisterI32, 0 ,
51596 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SSAT),
51597 MVT::i32, 5, 2, 0, 3, 4, 5,
51598 18,
51599 OPC_CheckPatternPredicate4,
51600 OPC_EmitConvertToTarget1,
51601 OPC_EmitInteger32, 0,
51602 OPC_EmitInteger32, 28,
51603 OPC_EmitRegisterI32, 0 ,
51604 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SSAT),
51605 MVT::i32, 5, 2, 0, 3, 4, 5,
51606 0,
51607 0,
51608 55|128,1, TARGET_VAL(ARMISD::USAT),
51609 OPC_Scope, 0|128,1,
51610 OPC_MoveChild0,
51611 OPC_SwitchOpcode , 56, TARGET_VAL(ISD::SHL),
51612 OPC_RecordChild0,
51613 OPC_RecordChild1,
51614 OPC_MoveChild1,
51615 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51616 OPC_CheckPredicate5,
51617 OPC_CheckTypeI32,
51618 OPC_MoveParent,
51619 OPC_MoveSibling1,
51620 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51621 OPC_RecordNode,
51622 OPC_CheckPredicate5,
51623 OPC_CheckTypeI32,
51624 OPC_MoveParent,
51625 OPC_CheckTypeI32,
51626 OPC_Scope, 17,
51627 OPC_CheckPatternPredicate3,
51628 OPC_EmitConvertToTarget2,
51629 OPC_EmitConvertToTarget1,
51630 OPC_EmitInteger32, 28,
51631 OPC_EmitRegisterI32, 0 ,
51632 OPC_MorphNodeTo1None, TARGET_VAL(ARM::USAT),
51633 MVT::i32, 5, 3, 0, 4, 5, 6,
51634 17,
51635 OPC_CheckPatternPredicate4,
51636 OPC_EmitConvertToTarget2,
51637 OPC_EmitConvertToTarget1,
51638 OPC_EmitInteger32, 28,
51639 OPC_EmitRegisterI32, 0 ,
51640 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2USAT),
51641 MVT::i32, 5, 3, 0, 4, 5, 6,
51642 0,
51643 63, TARGET_VAL(ISD::SRA),
51644 OPC_RecordChild0,
51645 OPC_RecordChild1,
51646 OPC_MoveChild1,
51647 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51648 OPC_CheckPredicate, 19,
51649 OPC_CheckTypeI32,
51650 OPC_MoveParent,
51651 OPC_MoveSibling1,
51652 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51653 OPC_RecordNode,
51654 OPC_CheckPredicate5,
51655 OPC_CheckTypeI32,
51656 OPC_MoveParent,
51657 OPC_CheckTypeI32,
51658 OPC_Scope, 20,
51659 OPC_CheckPatternPredicate3,
51660 OPC_EmitConvertToTarget2,
51661 OPC_EmitConvertToTarget1,
51662 OPC_EmitNodeXForm, 12, 4,
51663 OPC_EmitInteger32, 28,
51664 OPC_EmitRegisterI32, 0 ,
51665 OPC_MorphNodeTo1None, TARGET_VAL(ARM::USAT),
51666 MVT::i32, 5, 3, 0, 5, 6, 7,
51667 20,
51668 OPC_CheckPatternPredicate4,
51669 OPC_EmitConvertToTarget2,
51670 OPC_EmitConvertToTarget1,
51671 OPC_EmitNodeXForm, 12, 4,
51672 OPC_EmitInteger32, 28,
51673 OPC_EmitRegisterI32, 0 ,
51674 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2USAT),
51675 MVT::i32, 5, 3, 0, 5, 6, 7,
51676 0,
51677 0,
51678 50,
51679 OPC_RecordChild0,
51680 OPC_RecordChild1,
51681 OPC_MoveChild1,
51682 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
51683 OPC_CheckPredicate5,
51684 OPC_CheckTypeI32,
51685 OPC_MoveParent,
51686 OPC_CheckTypeI32,
51687 OPC_Scope, 18,
51688 OPC_CheckPatternPredicate3,
51689 OPC_EmitConvertToTarget1,
51690 OPC_EmitInteger32, 0,
51691 OPC_EmitInteger32, 28,
51692 OPC_EmitRegisterI32, 0 ,
51693 OPC_MorphNodeTo1None, TARGET_VAL(ARM::USAT),
51694 MVT::i32, 5, 2, 0, 3, 4, 5,
51695 18,
51696 OPC_CheckPatternPredicate4,
51697 OPC_EmitConvertToTarget1,
51698 OPC_EmitInteger32, 0,
51699 OPC_EmitInteger32, 28,
51700 OPC_EmitRegisterI32, 0 ,
51701 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2USAT),
51702 MVT::i32, 5, 2, 0, 3, 4, 5,
51703 0,
51704 0,
51705 88|128,2, TARGET_VAL(ARMISD::VST2_UPD),
51706 OPC_RecordMemRef,
51707 OPC_RecordNode,
51708 OPC_RecordChild1,
51709 OPC_CheckChild1TypeI32,
51710 OPC_CheckChild2Integer, 64,
51711 OPC_RecordChild3,
51712 OPC_Scope, 66,
51713 OPC_CheckChild3Type, MVT::v16i8,
51714 OPC_RecordChild4,
51715 OPC_MoveChild5,
51716 OPC_Scope, 29,
51717 OPC_CheckInteger, 0,
51718 OPC_MoveParent,
51719 OPC_CheckTypeI32,
51720 OPC_EmitMergeInputChains1_0,
51721 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
51722 OPC_EmitStringInteger32, ARM::qsub_0,
51723 OPC_EmitStringInteger32, ARM::qsub_1,
51724 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51725 MVT::v4i64, 5, 4, 2, 5, 3, 6,
51726 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST20_8_wb), 0|OPFL_Chain|OPFL_MemRefs,
51727 MVT::i32, 2, 7, 1,
51728 29,
51729 OPC_CheckInteger, 2,
51730 OPC_MoveParent,
51731 OPC_CheckTypeI32,
51732 OPC_EmitMergeInputChains1_0,
51733 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
51734 OPC_EmitStringInteger32, ARM::qsub_0,
51735 OPC_EmitStringInteger32, ARM::qsub_1,
51736 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51737 MVT::v4i64, 5, 4, 2, 5, 3, 6,
51738 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST21_8_wb), 0|OPFL_Chain|OPFL_MemRefs,
51739 MVT::i32, 2, 7, 1,
51740 0,
51741 66,
51742 OPC_CheckChild3Type, MVT::v8i16,
51743 OPC_RecordChild4,
51744 OPC_MoveChild5,
51745 OPC_Scope, 29,
51746 OPC_CheckInteger, 0,
51747 OPC_MoveParent,
51748 OPC_CheckTypeI32,
51749 OPC_EmitMergeInputChains1_0,
51750 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
51751 OPC_EmitStringInteger32, ARM::qsub_0,
51752 OPC_EmitStringInteger32, ARM::qsub_1,
51753 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51754 MVT::v4i64, 5, 4, 2, 5, 3, 6,
51755 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST20_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
51756 MVT::i32, 2, 7, 1,
51757 29,
51758 OPC_CheckInteger, 2,
51759 OPC_MoveParent,
51760 OPC_CheckTypeI32,
51761 OPC_EmitMergeInputChains1_0,
51762 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
51763 OPC_EmitStringInteger32, ARM::qsub_0,
51764 OPC_EmitStringInteger32, ARM::qsub_1,
51765 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51766 MVT::v4i64, 5, 4, 2, 5, 3, 6,
51767 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST21_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
51768 MVT::i32, 2, 7, 1,
51769 0,
51770 66,
51771 OPC_CheckChild3Type, MVT::v4i32,
51772 OPC_RecordChild4,
51773 OPC_MoveChild5,
51774 OPC_Scope, 29,
51775 OPC_CheckInteger, 0,
51776 OPC_MoveParent,
51777 OPC_CheckTypeI32,
51778 OPC_EmitMergeInputChains1_0,
51779 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
51780 OPC_EmitStringInteger32, ARM::qsub_0,
51781 OPC_EmitStringInteger32, ARM::qsub_1,
51782 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51783 MVT::v4i64, 5, 4, 2, 5, 3, 6,
51784 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST20_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
51785 MVT::i32, 2, 7, 1,
51786 29,
51787 OPC_CheckInteger, 2,
51788 OPC_MoveParent,
51789 OPC_CheckTypeI32,
51790 OPC_EmitMergeInputChains1_0,
51791 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
51792 OPC_EmitStringInteger32, ARM::qsub_0,
51793 OPC_EmitStringInteger32, ARM::qsub_1,
51794 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51795 MVT::v4i64, 5, 4, 2, 5, 3, 6,
51796 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST21_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
51797 MVT::i32, 2, 7, 1,
51798 0,
51799 66,
51800 OPC_CheckChild3Type, MVT::v8f16,
51801 OPC_RecordChild4,
51802 OPC_MoveChild5,
51803 OPC_Scope, 29,
51804 OPC_CheckInteger, 0,
51805 OPC_MoveParent,
51806 OPC_CheckTypeI32,
51807 OPC_EmitMergeInputChains1_0,
51808 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
51809 OPC_EmitStringInteger32, ARM::qsub_0,
51810 OPC_EmitStringInteger32, ARM::qsub_1,
51811 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51812 MVT::v4i64, 5, 4, 2, 5, 3, 6,
51813 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST20_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
51814 MVT::i32, 2, 7, 1,
51815 29,
51816 OPC_CheckInteger, 2,
51817 OPC_MoveParent,
51818 OPC_CheckTypeI32,
51819 OPC_EmitMergeInputChains1_0,
51820 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
51821 OPC_EmitStringInteger32, ARM::qsub_0,
51822 OPC_EmitStringInteger32, ARM::qsub_1,
51823 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51824 MVT::v4i64, 5, 4, 2, 5, 3, 6,
51825 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST21_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
51826 MVT::i32, 2, 7, 1,
51827 0,
51828 66,
51829 OPC_CheckChild3Type, MVT::v4f32,
51830 OPC_RecordChild4,
51831 OPC_MoveChild5,
51832 OPC_Scope, 29,
51833 OPC_CheckInteger, 0,
51834 OPC_MoveParent,
51835 OPC_CheckTypeI32,
51836 OPC_EmitMergeInputChains1_0,
51837 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
51838 OPC_EmitStringInteger32, ARM::qsub_0,
51839 OPC_EmitStringInteger32, ARM::qsub_1,
51840 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51841 MVT::v4i64, 5, 4, 2, 5, 3, 6,
51842 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST20_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
51843 MVT::i32, 2, 7, 1,
51844 29,
51845 OPC_CheckInteger, 2,
51846 OPC_MoveParent,
51847 OPC_CheckTypeI32,
51848 OPC_EmitMergeInputChains1_0,
51849 OPC_EmitStringInteger32, ARM::MQQPRRegClassID,
51850 OPC_EmitStringInteger32, ARM::qsub_0,
51851 OPC_EmitStringInteger32, ARM::qsub_1,
51852 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51853 MVT::v4i64, 5, 4, 2, 5, 3, 6,
51854 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST21_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
51855 MVT::i32, 2, 7, 1,
51856 0,
51857 0,
51858 72|128,6, TARGET_VAL(ARMISD::VST4_UPD),
51859 OPC_RecordMemRef,
51860 OPC_RecordNode,
51861 OPC_RecordChild1,
51862 OPC_CheckChild1TypeI32,
51863 OPC_CheckChild2Integer, 0|128,1,
51864 OPC_RecordChild3,
51865 OPC_Scope, 36|128,1,
51866 OPC_CheckChild3Type, MVT::v16i8,
51867 OPC_RecordChild4,
51868 OPC_RecordChild5,
51869 OPC_RecordChild6,
51870 OPC_MoveChild7,
51871 OPC_Scope, 38,
51872 OPC_CheckInteger, 0,
51873 OPC_MoveParent,
51874 OPC_CheckTypeI32,
51875 OPC_EmitMergeInputChains1_0,
51876 OPC_EmitInteger32, 6|128,2,
51877 OPC_EmitStringInteger32, ARM::qsub_0,
51878 OPC_EmitStringInteger32, ARM::qsub_1,
51879 OPC_EmitStringInteger32, ARM::qsub_2,
51880 OPC_EmitStringInteger32, ARM::qsub_3,
51881 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51882 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
51883 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST40_8_wb), 0|OPFL_Chain|OPFL_MemRefs,
51884 MVT::i32, 2, 11, 1,
51885 38,
51886 OPC_CheckInteger, 2,
51887 OPC_MoveParent,
51888 OPC_CheckTypeI32,
51889 OPC_EmitMergeInputChains1_0,
51890 OPC_EmitInteger32, 6|128,2,
51891 OPC_EmitStringInteger32, ARM::qsub_0,
51892 OPC_EmitStringInteger32, ARM::qsub_1,
51893 OPC_EmitStringInteger32, ARM::qsub_2,
51894 OPC_EmitStringInteger32, ARM::qsub_3,
51895 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51896 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
51897 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST41_8_wb), 0|OPFL_Chain|OPFL_MemRefs,
51898 MVT::i32, 2, 11, 1,
51899 38,
51900 OPC_CheckInteger, 4,
51901 OPC_MoveParent,
51902 OPC_CheckTypeI32,
51903 OPC_EmitMergeInputChains1_0,
51904 OPC_EmitInteger32, 6|128,2,
51905 OPC_EmitStringInteger32, ARM::qsub_0,
51906 OPC_EmitStringInteger32, ARM::qsub_1,
51907 OPC_EmitStringInteger32, ARM::qsub_2,
51908 OPC_EmitStringInteger32, ARM::qsub_3,
51909 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51910 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
51911 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST42_8_wb), 0|OPFL_Chain|OPFL_MemRefs,
51912 MVT::i32, 2, 11, 1,
51913 38,
51914 OPC_CheckInteger, 6,
51915 OPC_MoveParent,
51916 OPC_CheckTypeI32,
51917 OPC_EmitMergeInputChains1_0,
51918 OPC_EmitInteger32, 6|128,2,
51919 OPC_EmitStringInteger32, ARM::qsub_0,
51920 OPC_EmitStringInteger32, ARM::qsub_1,
51921 OPC_EmitStringInteger32, ARM::qsub_2,
51922 OPC_EmitStringInteger32, ARM::qsub_3,
51923 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51924 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
51925 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST43_8_wb), 0|OPFL_Chain|OPFL_MemRefs,
51926 MVT::i32, 2, 11, 1,
51927 0,
51928 36|128,1,
51929 OPC_CheckChild3Type, MVT::v8i16,
51930 OPC_RecordChild4,
51931 OPC_RecordChild5,
51932 OPC_RecordChild6,
51933 OPC_MoveChild7,
51934 OPC_Scope, 38,
51935 OPC_CheckInteger, 0,
51936 OPC_MoveParent,
51937 OPC_CheckTypeI32,
51938 OPC_EmitMergeInputChains1_0,
51939 OPC_EmitInteger32, 6|128,2,
51940 OPC_EmitStringInteger32, ARM::qsub_0,
51941 OPC_EmitStringInteger32, ARM::qsub_1,
51942 OPC_EmitStringInteger32, ARM::qsub_2,
51943 OPC_EmitStringInteger32, ARM::qsub_3,
51944 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51945 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
51946 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST40_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
51947 MVT::i32, 2, 11, 1,
51948 38,
51949 OPC_CheckInteger, 2,
51950 OPC_MoveParent,
51951 OPC_CheckTypeI32,
51952 OPC_EmitMergeInputChains1_0,
51953 OPC_EmitInteger32, 6|128,2,
51954 OPC_EmitStringInteger32, ARM::qsub_0,
51955 OPC_EmitStringInteger32, ARM::qsub_1,
51956 OPC_EmitStringInteger32, ARM::qsub_2,
51957 OPC_EmitStringInteger32, ARM::qsub_3,
51958 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51959 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
51960 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST41_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
51961 MVT::i32, 2, 11, 1,
51962 38,
51963 OPC_CheckInteger, 4,
51964 OPC_MoveParent,
51965 OPC_CheckTypeI32,
51966 OPC_EmitMergeInputChains1_0,
51967 OPC_EmitInteger32, 6|128,2,
51968 OPC_EmitStringInteger32, ARM::qsub_0,
51969 OPC_EmitStringInteger32, ARM::qsub_1,
51970 OPC_EmitStringInteger32, ARM::qsub_2,
51971 OPC_EmitStringInteger32, ARM::qsub_3,
51972 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51973 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
51974 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST42_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
51975 MVT::i32, 2, 11, 1,
51976 38,
51977 OPC_CheckInteger, 6,
51978 OPC_MoveParent,
51979 OPC_CheckTypeI32,
51980 OPC_EmitMergeInputChains1_0,
51981 OPC_EmitInteger32, 6|128,2,
51982 OPC_EmitStringInteger32, ARM::qsub_0,
51983 OPC_EmitStringInteger32, ARM::qsub_1,
51984 OPC_EmitStringInteger32, ARM::qsub_2,
51985 OPC_EmitStringInteger32, ARM::qsub_3,
51986 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
51987 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
51988 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST43_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
51989 MVT::i32, 2, 11, 1,
51990 0,
51991 36|128,1,
51992 OPC_CheckChild3Type, MVT::v4i32,
51993 OPC_RecordChild4,
51994 OPC_RecordChild5,
51995 OPC_RecordChild6,
51996 OPC_MoveChild7,
51997 OPC_Scope, 38,
51998 OPC_CheckInteger, 0,
51999 OPC_MoveParent,
52000 OPC_CheckTypeI32,
52001 OPC_EmitMergeInputChains1_0,
52002 OPC_EmitInteger32, 6|128,2,
52003 OPC_EmitStringInteger32, ARM::qsub_0,
52004 OPC_EmitStringInteger32, ARM::qsub_1,
52005 OPC_EmitStringInteger32, ARM::qsub_2,
52006 OPC_EmitStringInteger32, ARM::qsub_3,
52007 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52008 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52009 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST40_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
52010 MVT::i32, 2, 11, 1,
52011 38,
52012 OPC_CheckInteger, 2,
52013 OPC_MoveParent,
52014 OPC_CheckTypeI32,
52015 OPC_EmitMergeInputChains1_0,
52016 OPC_EmitInteger32, 6|128,2,
52017 OPC_EmitStringInteger32, ARM::qsub_0,
52018 OPC_EmitStringInteger32, ARM::qsub_1,
52019 OPC_EmitStringInteger32, ARM::qsub_2,
52020 OPC_EmitStringInteger32, ARM::qsub_3,
52021 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52022 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52023 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST41_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
52024 MVT::i32, 2, 11, 1,
52025 38,
52026 OPC_CheckInteger, 4,
52027 OPC_MoveParent,
52028 OPC_CheckTypeI32,
52029 OPC_EmitMergeInputChains1_0,
52030 OPC_EmitInteger32, 6|128,2,
52031 OPC_EmitStringInteger32, ARM::qsub_0,
52032 OPC_EmitStringInteger32, ARM::qsub_1,
52033 OPC_EmitStringInteger32, ARM::qsub_2,
52034 OPC_EmitStringInteger32, ARM::qsub_3,
52035 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52036 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52037 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST42_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
52038 MVT::i32, 2, 11, 1,
52039 38,
52040 OPC_CheckInteger, 6,
52041 OPC_MoveParent,
52042 OPC_CheckTypeI32,
52043 OPC_EmitMergeInputChains1_0,
52044 OPC_EmitInteger32, 6|128,2,
52045 OPC_EmitStringInteger32, ARM::qsub_0,
52046 OPC_EmitStringInteger32, ARM::qsub_1,
52047 OPC_EmitStringInteger32, ARM::qsub_2,
52048 OPC_EmitStringInteger32, ARM::qsub_3,
52049 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52050 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52051 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST43_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
52052 MVT::i32, 2, 11, 1,
52053 0,
52054 36|128,1,
52055 OPC_CheckChild3Type, MVT::v8f16,
52056 OPC_RecordChild4,
52057 OPC_RecordChild5,
52058 OPC_RecordChild6,
52059 OPC_MoveChild7,
52060 OPC_Scope, 38,
52061 OPC_CheckInteger, 0,
52062 OPC_MoveParent,
52063 OPC_CheckTypeI32,
52064 OPC_EmitMergeInputChains1_0,
52065 OPC_EmitInteger32, 6|128,2,
52066 OPC_EmitStringInteger32, ARM::qsub_0,
52067 OPC_EmitStringInteger32, ARM::qsub_1,
52068 OPC_EmitStringInteger32, ARM::qsub_2,
52069 OPC_EmitStringInteger32, ARM::qsub_3,
52070 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52071 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52072 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST40_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
52073 MVT::i32, 2, 11, 1,
52074 38,
52075 OPC_CheckInteger, 2,
52076 OPC_MoveParent,
52077 OPC_CheckTypeI32,
52078 OPC_EmitMergeInputChains1_0,
52079 OPC_EmitInteger32, 6|128,2,
52080 OPC_EmitStringInteger32, ARM::qsub_0,
52081 OPC_EmitStringInteger32, ARM::qsub_1,
52082 OPC_EmitStringInteger32, ARM::qsub_2,
52083 OPC_EmitStringInteger32, ARM::qsub_3,
52084 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52085 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52086 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST41_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
52087 MVT::i32, 2, 11, 1,
52088 38,
52089 OPC_CheckInteger, 4,
52090 OPC_MoveParent,
52091 OPC_CheckTypeI32,
52092 OPC_EmitMergeInputChains1_0,
52093 OPC_EmitInteger32, 6|128,2,
52094 OPC_EmitStringInteger32, ARM::qsub_0,
52095 OPC_EmitStringInteger32, ARM::qsub_1,
52096 OPC_EmitStringInteger32, ARM::qsub_2,
52097 OPC_EmitStringInteger32, ARM::qsub_3,
52098 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52099 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52100 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST42_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
52101 MVT::i32, 2, 11, 1,
52102 38,
52103 OPC_CheckInteger, 6,
52104 OPC_MoveParent,
52105 OPC_CheckTypeI32,
52106 OPC_EmitMergeInputChains1_0,
52107 OPC_EmitInteger32, 6|128,2,
52108 OPC_EmitStringInteger32, ARM::qsub_0,
52109 OPC_EmitStringInteger32, ARM::qsub_1,
52110 OPC_EmitStringInteger32, ARM::qsub_2,
52111 OPC_EmitStringInteger32, ARM::qsub_3,
52112 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52113 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52114 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST43_16_wb), 0|OPFL_Chain|OPFL_MemRefs,
52115 MVT::i32, 2, 11, 1,
52116 0,
52117 36|128,1,
52118 OPC_CheckChild3Type, MVT::v4f32,
52119 OPC_RecordChild4,
52120 OPC_RecordChild5,
52121 OPC_RecordChild6,
52122 OPC_MoveChild7,
52123 OPC_Scope, 38,
52124 OPC_CheckInteger, 0,
52125 OPC_MoveParent,
52126 OPC_CheckTypeI32,
52127 OPC_EmitMergeInputChains1_0,
52128 OPC_EmitInteger32, 6|128,2,
52129 OPC_EmitStringInteger32, ARM::qsub_0,
52130 OPC_EmitStringInteger32, ARM::qsub_1,
52131 OPC_EmitStringInteger32, ARM::qsub_2,
52132 OPC_EmitStringInteger32, ARM::qsub_3,
52133 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52134 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52135 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST40_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
52136 MVT::i32, 2, 11, 1,
52137 38,
52138 OPC_CheckInteger, 2,
52139 OPC_MoveParent,
52140 OPC_CheckTypeI32,
52141 OPC_EmitMergeInputChains1_0,
52142 OPC_EmitInteger32, 6|128,2,
52143 OPC_EmitStringInteger32, ARM::qsub_0,
52144 OPC_EmitStringInteger32, ARM::qsub_1,
52145 OPC_EmitStringInteger32, ARM::qsub_2,
52146 OPC_EmitStringInteger32, ARM::qsub_3,
52147 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52148 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52149 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST41_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
52150 MVT::i32, 2, 11, 1,
52151 38,
52152 OPC_CheckInteger, 4,
52153 OPC_MoveParent,
52154 OPC_CheckTypeI32,
52155 OPC_EmitMergeInputChains1_0,
52156 OPC_EmitInteger32, 6|128,2,
52157 OPC_EmitStringInteger32, ARM::qsub_0,
52158 OPC_EmitStringInteger32, ARM::qsub_1,
52159 OPC_EmitStringInteger32, ARM::qsub_2,
52160 OPC_EmitStringInteger32, ARM::qsub_3,
52161 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52162 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52163 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST42_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
52164 MVT::i32, 2, 11, 1,
52165 38,
52166 OPC_CheckInteger, 6,
52167 OPC_MoveParent,
52168 OPC_CheckTypeI32,
52169 OPC_EmitMergeInputChains1_0,
52170 OPC_EmitInteger32, 6|128,2,
52171 OPC_EmitStringInteger32, ARM::qsub_0,
52172 OPC_EmitStringInteger32, ARM::qsub_1,
52173 OPC_EmitStringInteger32, ARM::qsub_2,
52174 OPC_EmitStringInteger32, ARM::qsub_3,
52175 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
52176 MVT::v8i64, 9, 6, 2, 7, 3, 8, 4, 9, 5, 10,
52177 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VST43_32_wb), 0|OPFL_Chain|OPFL_MemRefs,
52178 MVT::i32, 2, 11, 1,
52179 0,
52180 0,
52181 21|128,1, TARGET_VAL(ISD::SHL),
52182 OPC_Scope, 46,
52183 OPC_RecordNode,
52184 OPC_CheckTypeI32,
52185 OPC_CheckPatternPredicate3,
52186 OPC_Scope, 20,
52187 OPC_CheckComplexPat, /*CP*/32, /*#*/0,
52188 OPC_EmitInteger32, 28,
52189 OPC_EmitRegisterI32, 0 ,
52190 OPC_EmitRegisterI32, 0 ,
52191 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVsr),
52192 MVT::i32, 6, 1, 2, 3, 4, 5, 6,
52193 19,
52194 OPC_CheckComplexPat, /*CP*/33, /*#*/0,
52195 OPC_EmitInteger32, 28,
52196 OPC_EmitRegisterI32, 0 ,
52197 OPC_EmitRegisterI32, 0 ,
52198 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVsi),
52199 MVT::i32, 5, 1, 2, 3, 4, 5,
52200 0,
52201 99,
52202 OPC_RecordChild0,
52203 OPC_RecordChild1,
52204 OPC_Scope, 52,
52205 OPC_MoveChild1,
52206 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52207 OPC_CheckTypeI32,
52208 OPC_Scope, 22,
52209 OPC_CheckPredicate, 67,
52210 OPC_MoveParent,
52211 OPC_CheckTypeI32,
52212 OPC_CheckPatternPredicate4,
52213 OPC_EmitConvertToTarget1,
52214 OPC_EmitInteger32, 28,
52215 OPC_EmitRegisterI32, 0 ,
52216 OPC_EmitRegisterI32, 0 ,
52217 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2LSLri),
52218 MVT::i32, 5, 0, 2, 3, 4, 5,
52219 21,
52220 OPC_MoveParent,
52221 OPC_CheckTypeI32,
52222 OPC_CheckPatternPredicate, 10,
52223 OPC_EmitRegisterI32, ARM::CPSR,
52224 OPC_EmitConvertToTarget1,
52225 OPC_EmitInteger32, 28,
52226 OPC_EmitRegisterI32, 0 ,
52227 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tLSLri),
52228 MVT::i32, 5, 2, 0, 3, 4, 5,
52229 0,
52230 41,
52231 OPC_CheckChild1TypeI32,
52232 OPC_CheckTypeI32,
52233 OPC_Scope, 18,
52234 OPC_CheckPatternPredicate, 10,
52235 OPC_EmitRegisterI32, ARM::CPSR,
52236 OPC_EmitInteger32, 28,
52237 OPC_EmitRegisterI32, 0 ,
52238 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tLSLrr),
52239 MVT::i32, 5, 2, 0, 1, 3, 4,
52240 17,
52241 OPC_CheckPatternPredicate4,
52242 OPC_EmitInteger32, 28,
52243 OPC_EmitRegisterI32, 0 ,
52244 OPC_EmitRegisterI32, 0 ,
52245 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2LSLrr),
52246 MVT::i32, 5, 0, 1, 2, 3, 4,
52247 0,
52248 0,
52249 0,
52250 24, TARGET_VAL(ARMISD::LDRD),
52251 OPC_RecordMemRef,
52252 OPC_RecordNode,
52253 OPC_RecordChild1,
52254 OPC_CheckChild1TypeI32,
52255 OPC_CheckPatternPredicate4,
52256 OPC_CheckComplexPat, /*CP*/43, /*#*/1,
52257 OPC_EmitMergeInputChains1_0,
52258 OPC_EmitInteger32, 28,
52259 OPC_EmitRegisterI32, 0 ,
52260 OPC_MorphNodeTo2, TARGET_VAL(ARM::t2LDRDi8), 0|OPFL_Chain|OPFL_MemRefs,
52261 MVT::i32, MVT::i32, 4, 2, 3, 4, 5,
52262 26, TARGET_VAL(ARMISD::STRD),
52263 OPC_RecordMemRef,
52264 OPC_RecordNode,
52265 OPC_RecordChild1,
52266 OPC_RecordChild2,
52267 OPC_RecordChild3,
52268 OPC_CheckChild3TypeI32,
52269 OPC_CheckPatternPredicate4,
52270 OPC_CheckComplexPat, /*CP*/43, /*#*/3,
52271 OPC_EmitMergeInputChains1_0,
52272 OPC_EmitInteger32, 28,
52273 OPC_EmitRegisterI32, 0 ,
52274 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2STRDi8), 0|OPFL_Chain|OPFL_MemRefs,
52275 6, 1, 2, 4, 5, 6, 7,
52276 13, TARGET_VAL(ISD::ATOMIC_FENCE),
52277 OPC_RecordNode,
52278 OPC_MoveChild1,
52279 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
52280 OPC_MoveParent,
52281 OPC_CheckChild2Integer, 0,
52282 OPC_EmitMergeInputChains1_0,
52283 OPC_MorphNodeTo0Chain, TARGET_VAL(TargetOpcode::MEMBARRIER),
52284 0,
52285 114|128,3, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
52286 OPC_Scope, 107,
52287 OPC_MoveChild0,
52288 OPC_CheckOpcode, TARGET_VAL(ISD::ROTR),
52289 OPC_RecordChild0,
52290 OPC_RecordChild1,
52291 OPC_MoveChild1,
52292 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52293 OPC_CheckPredicate, 12,
52294 OPC_CheckTypeI32,
52295 OPC_MoveParent,
52296 OPC_MoveSibling1,
52297 OPC_Scope, 44,
52298 OPC_CheckValueType, MVT::i8,
52299 OPC_MoveParent,
52300 OPC_Scope, 19,
52301 OPC_CheckPatternPredicate, 9,
52302 OPC_EmitConvertToTarget1,
52303 OPC_EmitNodeXForm, 2, 2,
52304 OPC_EmitInteger32, 28,
52305 OPC_EmitRegisterI32, 0 ,
52306 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTB),
52307 MVT::i32, 4, 0, 3, 4, 5,
52308 18,
52309 OPC_CheckPatternPredicate4,
52310 OPC_EmitConvertToTarget1,
52311 OPC_EmitNodeXForm, 2, 2,
52312 OPC_EmitInteger32, 28,
52313 OPC_EmitRegisterI32, 0 ,
52314 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTB),
52315 MVT::i32, 4, 0, 3, 4, 5,
52316 0,
52317 44,
52318 OPC_CheckValueType, MVT::i16,
52319 OPC_MoveParent,
52320 OPC_Scope, 19,
52321 OPC_CheckPatternPredicate, 9,
52322 OPC_EmitConvertToTarget1,
52323 OPC_EmitNodeXForm, 2, 2,
52324 OPC_EmitInteger32, 28,
52325 OPC_EmitRegisterI32, 0 ,
52326 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTH),
52327 MVT::i32, 4, 0, 3, 4, 5,
52328 18,
52329 OPC_CheckPatternPredicate4,
52330 OPC_EmitConvertToTarget1,
52331 OPC_EmitNodeXForm, 2, 2,
52332 OPC_EmitInteger32, 28,
52333 OPC_EmitRegisterI32, 0 ,
52334 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTH),
52335 MVT::i32, 4, 0, 3, 4, 5,
52336 0,
52337 0,
52338 116,
52339 OPC_RecordChild0,
52340 OPC_MoveChild1,
52341 OPC_Scope, 55,
52342 OPC_CheckValueType, MVT::i8,
52343 OPC_MoveParent,
52344 OPC_Scope, 17,
52345 OPC_CheckPatternPredicate, 9,
52346 OPC_EmitInteger32, 0,
52347 OPC_EmitInteger32, 28,
52348 OPC_EmitRegisterI32, 0 ,
52349 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTB),
52350 MVT::i32, 4, 0, 1, 2, 3,
52351 14,
52352 OPC_CheckPatternPredicate, 39,
52353 OPC_EmitInteger32, 28,
52354 OPC_EmitRegisterI32, 0 ,
52355 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tSXTB),
52356 MVT::i32, 3, 0, 1, 2,
52357 16,
52358 OPC_CheckPatternPredicate4,
52359 OPC_EmitInteger32, 0,
52360 OPC_EmitInteger32, 28,
52361 OPC_EmitRegisterI32, 0 ,
52362 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTB),
52363 MVT::i32, 4, 0, 1, 2, 3,
52364 0,
52365 55,
52366 OPC_CheckValueType, MVT::i16,
52367 OPC_MoveParent,
52368 OPC_Scope, 17,
52369 OPC_CheckPatternPredicate, 9,
52370 OPC_EmitInteger32, 0,
52371 OPC_EmitInteger32, 28,
52372 OPC_EmitRegisterI32, 0 ,
52373 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SXTH),
52374 MVT::i32, 4, 0, 1, 2, 3,
52375 14,
52376 OPC_CheckPatternPredicate, 39,
52377 OPC_EmitInteger32, 28,
52378 OPC_EmitRegisterI32, 0 ,
52379 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tSXTH),
52380 MVT::i32, 3, 0, 1, 2,
52381 16,
52382 OPC_CheckPatternPredicate4,
52383 OPC_EmitInteger32, 0,
52384 OPC_EmitInteger32, 28,
52385 OPC_EmitRegisterI32, 0 ,
52386 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SXTH),
52387 MVT::i32, 4, 0, 1, 2, 3,
52388 0,
52389 0,
52390 31|128,1,
52391 OPC_MoveChild0,
52392 OPC_SwitchOpcode , 75, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
52393 OPC_MoveChild0,
52394 OPC_SwitchOpcode , 33, TARGET_VAL(ARMISD::VREV16),
52395 OPC_RecordChild0,
52396 OPC_CheckType, MVT::v16i8,
52397 OPC_MoveParent,
52398 OPC_CheckPredicate1,
52399 OPC_MoveSibling1,
52400 OPC_CheckValueType, MVT::v8i8,
52401 OPC_MoveParent,
52402 OPC_CheckType, MVT::v8i16,
52403 OPC_CheckPatternPredicate0,
52404 OPC_EmitInteger32, 0,
52405 OPC_EmitRegisterI32, 0 ,
52406 OPC_EmitRegisterI32, 0 ,
52407 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
52408 MVT::v4i32, 0,
52409 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLs8th),
52410 MVT::v8i16, 5, 0, 1, 2, 3, 4,
52411 33, TARGET_VAL(ARMISD::VREV32),
52412 OPC_RecordChild0,
52413 OPC_CheckType, MVT::v8i16,
52414 OPC_MoveParent,
52415 OPC_CheckPredicate1,
52416 OPC_MoveSibling1,
52417 OPC_CheckValueType, MVT::v4i16,
52418 OPC_MoveParent,
52419 OPC_CheckType, MVT::v4i32,
52420 OPC_CheckPatternPredicate0,
52421 OPC_EmitInteger32, 0,
52422 OPC_EmitRegisterI32, 0 ,
52423 OPC_EmitRegisterI32, 0 ,
52424 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
52425 MVT::v4i32, 0,
52426 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLs16th),
52427 MVT::v4i32, 5, 0, 1, 2, 3, 4,
52428 0,
52429 75, TARGET_VAL(ISD::BITCAST),
52430 OPC_MoveChild0,
52431 OPC_SwitchOpcode , 33, TARGET_VAL(ARMISD::VREV16),
52432 OPC_RecordChild0,
52433 OPC_CheckType, MVT::v16i8,
52434 OPC_MoveParent,
52435 OPC_CheckPredicate1,
52436 OPC_MoveSibling1,
52437 OPC_CheckValueType, MVT::v8i8,
52438 OPC_MoveParent,
52439 OPC_CheckType, MVT::v8i16,
52440 OPC_CheckPatternPredicate0,
52441 OPC_EmitInteger32, 0,
52442 OPC_EmitRegisterI32, 0 ,
52443 OPC_EmitRegisterI32, 0 ,
52444 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
52445 MVT::v4i32, 0,
52446 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLs8th),
52447 MVT::v8i16, 5, 0, 1, 2, 3, 4,
52448 33, TARGET_VAL(ARMISD::VREV32),
52449 OPC_RecordChild0,
52450 OPC_CheckType, MVT::v8i16,
52451 OPC_MoveParent,
52452 OPC_CheckPredicate1,
52453 OPC_MoveSibling1,
52454 OPC_CheckValueType, MVT::v4i16,
52455 OPC_MoveParent,
52456 OPC_CheckType, MVT::v4i32,
52457 OPC_CheckPatternPredicate0,
52458 OPC_EmitInteger32, 0,
52459 OPC_EmitRegisterI32, 0 ,
52460 OPC_EmitRegisterI32, 0 ,
52461 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
52462 MVT::v4i32, 0,
52463 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLs16th),
52464 MVT::v4i32, 5, 0, 1, 2, 3, 4,
52465 0,
52466 0,
52467 109,
52468 OPC_RecordChild0,
52469 OPC_MoveChild1,
52470 OPC_Scope, 27,
52471 OPC_CheckValueType, MVT::v4i16,
52472 OPC_MoveParent,
52473 OPC_CheckType, MVT::v4i32,
52474 OPC_CheckPatternPredicate0,
52475 OPC_EmitInteger32, 0,
52476 OPC_EmitRegisterI32, 0 ,
52477 OPC_EmitRegisterI32, 0 ,
52478 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
52479 MVT::v4i32, 0,
52480 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLs16bh),
52481 MVT::v4i32, 5, 0, 1, 2, 3, 4,
52482 27,
52483 OPC_CheckValueType, MVT::v8i8,
52484 OPC_MoveParent,
52485 OPC_CheckType, MVT::v8i16,
52486 OPC_CheckPatternPredicate0,
52487 OPC_EmitInteger32, 0,
52488 OPC_EmitRegisterI32, 0 ,
52489 OPC_EmitRegisterI32, 0 ,
52490 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
52491 MVT::v4i32, 0,
52492 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLs8bh),
52493 MVT::v8i16, 5, 0, 1, 2, 3, 4,
52494 48,
52495 OPC_CheckValueType, MVT::v4i8,
52496 OPC_MoveParent,
52497 OPC_CheckType, MVT::v4i32,
52498 OPC_CheckPatternPredicate0,
52499 OPC_EmitInteger32, 0,
52500 OPC_EmitRegisterI32, 0 ,
52501 OPC_EmitRegisterI32, 0 ,
52502 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
52503 MVT::v4i32, 0,
52504 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVLs8bh),
52505 MVT::v16i8, 5, 0, 1, 2, 3, 4,
52506 OPC_EmitInteger32, 0,
52507 OPC_EmitRegisterI32, 0 ,
52508 OPC_EmitRegisterI32, 0 ,
52509 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
52510 MVT::v4i32, 0,
52511 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLs16bh),
52512 MVT::v4i32, 5, 5, 6, 7, 8, 9,
52513 0,
52514 0,
52515 52, TARGET_VAL(ISD::CALLSEQ_END),
52516 OPC_RecordNode,
52517 OPC_CaptureGlueInput,
52518 OPC_RecordChild1,
52519 OPC_MoveChild1,
52520 OPC_SwitchOpcode , 21, TARGET_VAL(ISD::TargetConstant),
52521 OPC_MoveSibling2,
52522 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
52523 OPC_RecordNode,
52524 OPC_MoveParent,
52525 OPC_EmitMergeInputChains1_0,
52526 OPC_EmitInteger32, 28,
52527 OPC_EmitRegisterI32, 0 ,
52528 OPC_MorphNodeTo1, TARGET_VAL(ARM::ADJCALLSTACKUP), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput,
52529 MVT::i32, 4, 1, 2, 3, 4,
52530 19, TARGET_VAL(ISD::Constant),
52531 OPC_MoveSibling2,
52532 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52533 OPC_RecordNode,
52534 OPC_MoveParent,
52535 OPC_CheckPatternPredicate, 10,
52536 OPC_EmitMergeInputChains1_0,
52537 OPC_EmitConvertToTarget1,
52538 OPC_EmitConvertToTarget2,
52539 OPC_MorphNodeTo1, TARGET_VAL(ARM::tADJCALLSTACKUP), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput,
52540 MVT::i32, 2, 3, 4,
52541 0,
52542 51, TARGET_VAL(ISD::CALLSEQ_START),
52543 OPC_RecordNode,
52544 OPC_RecordChild1,
52545 OPC_MoveChild1,
52546 OPC_SwitchOpcode , 21, TARGET_VAL(ISD::TargetConstant),
52547 OPC_MoveSibling2,
52548 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
52549 OPC_RecordNode,
52550 OPC_MoveParent,
52551 OPC_EmitMergeInputChains1_0,
52552 OPC_EmitInteger32, 28,
52553 OPC_EmitRegisterI32, 0 ,
52554 OPC_MorphNodeTo1, TARGET_VAL(ARM::ADJCALLSTACKDOWN), 0|OPFL_Chain|OPFL_GlueOutput,
52555 MVT::i32, 4, 1, 2, 3, 4,
52556 19, TARGET_VAL(ISD::Constant),
52557 OPC_MoveSibling2,
52558 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52559 OPC_RecordNode,
52560 OPC_MoveParent,
52561 OPC_CheckPatternPredicate, 10,
52562 OPC_EmitMergeInputChains1_0,
52563 OPC_EmitConvertToTarget1,
52564 OPC_EmitConvertToTarget2,
52565 OPC_MorphNodeTo1, TARGET_VAL(ARM::tADJCALLSTACKDOWN), 0|OPFL_Chain|OPFL_GlueOutput,
52566 MVT::i32, 2, 3, 4,
52567 0,
52568 80, TARGET_VAL(ARMISD::TC_RETURN),
52569 OPC_RecordNode,
52570 OPC_CaptureGlueInput,
52571 OPC_RecordChild1,
52572 OPC_Scope, 41,
52573 OPC_MoveChild1,
52574 OPC_SwitchOpcode , 16, TARGET_VAL(ISD::TargetGlobalAddress),
52575 OPC_CheckTypeI32,
52576 OPC_MoveSibling2,
52577 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
52578 OPC_RecordNode,
52579 OPC_CheckTypeI32,
52580 OPC_MoveParent,
52581 OPC_EmitMergeInputChains1_0,
52582 OPC_MorphNodeTo0, TARGET_VAL(ARM::TCRETURNdi), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic2,
52583 2, 1, 2,
52584 16, TARGET_VAL(ISD::TargetExternalSymbol),
52585 OPC_CheckTypeI32,
52586 OPC_MoveSibling2,
52587 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
52588 OPC_RecordNode,
52589 OPC_CheckTypeI32,
52590 OPC_MoveParent,
52591 OPC_EmitMergeInputChains1_0,
52592 OPC_MorphNodeTo0, TARGET_VAL(ARM::TCRETURNdi), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic2,
52593 2, 1, 2,
52594 0,
52595 32,
52596 OPC_CheckChild1TypeI32,
52597 OPC_RecordChild2,
52598 OPC_MoveChild2,
52599 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
52600 OPC_CheckTypeI32,
52601 OPC_MoveParent,
52602 OPC_Scope, 10,
52603 OPC_CheckPatternPredicate, 120,
52604 OPC_EmitMergeInputChains1_0,
52605 OPC_MorphNodeTo0, TARGET_VAL(ARM::TCRETURNri), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic2,
52606 2, 1, 2,
52607 10,
52608 OPC_CheckPatternPredicate, 121,
52609 OPC_EmitMergeInputChains1_0,
52610 OPC_MorphNodeTo0, TARGET_VAL(ARM::TCRETURNrinotr12), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic2,
52611 2, 1, 2,
52612 0,
52613 0,
52614 28, TARGET_VAL(ARMISD::COPY_STRUCT_BYVAL),
52615 OPC_RecordNode,
52616 OPC_CaptureGlueInput,
52617 OPC_RecordChild1,
52618 OPC_RecordChild2,
52619 OPC_RecordChild3,
52620 OPC_MoveChild3,
52621 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52622 OPC_MoveSibling4,
52623 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52624 OPC_RecordNode,
52625 OPC_MoveParent,
52626 OPC_EmitMergeInputChains1_0,
52627 OPC_EmitConvertToTarget3,
52628 OPC_EmitConvertToTarget4,
52629 OPC_MorphNodeTo1, TARGET_VAL(ARM::COPY_STRUCT_BYVAL_I32), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput,
52630 MVT::i32, 4, 1, 2, 5, 6,
52631 78, TARGET_VAL(ARMISD::SMMLAR),
52632 OPC_RecordChild0,
52633 OPC_RecordChild1,
52634 OPC_Scope, 35,
52635 OPC_CheckChild2Integer, 0,
52636 OPC_Scope, 15,
52637 OPC_CheckPatternPredicate, 9,
52638 OPC_EmitInteger32, 28,
52639 OPC_EmitRegisterI32, 0 ,
52640 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMMULR),
52641 MVT::i32, 4, 0, 1, 2, 3,
52642 14,
52643 OPC_CheckPatternPredicate5,
52644 OPC_EmitInteger32, 28,
52645 OPC_EmitRegisterI32, 0 ,
52646 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMMULR),
52647 MVT::i32, 4, 0, 1, 2, 3,
52648 0,
52649 37,
52650 OPC_RecordChild2,
52651 OPC_Scope, 16,
52652 OPC_CheckPatternPredicate, 9,
52653 OPC_EmitInteger32, 28,
52654 OPC_EmitRegisterI32, 0 ,
52655 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMMLAR),
52656 MVT::i32, 5, 0, 1, 2, 3, 4,
52657 16,
52658 OPC_CheckPatternPredicate, 19,
52659 OPC_EmitInteger32, 28,
52660 OPC_EmitRegisterI32, 0 ,
52661 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMMLAR),
52662 MVT::i32, 5, 0, 1, 2, 3, 4,
52663 0,
52664 0,
52665 47, TARGET_VAL(ARMISD::BFI),
52666 OPC_RecordChild0,
52667 OPC_RecordChild1,
52668 OPC_RecordChild2,
52669 OPC_MoveChild2,
52670 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52671 OPC_CheckPredicate, 73,
52672 OPC_MoveParent,
52673 OPC_Scope, 17,
52674 OPC_CheckPatternPredicate, 32,
52675 OPC_EmitConvertToTarget2,
52676 OPC_EmitInteger32, 28,
52677 OPC_EmitRegisterI32, 0 ,
52678 OPC_MorphNodeTo1None, TARGET_VAL(ARM::BFI),
52679 MVT::i32, 5, 0, 1, 3, 4, 5,
52680 16,
52681 OPC_CheckPatternPredicate4,
52682 OPC_EmitConvertToTarget2,
52683 OPC_EmitInteger32, 28,
52684 OPC_EmitRegisterI32, 0 ,
52685 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2BFI),
52686 MVT::i32, 5, 0, 1, 3, 4, 5,
52687 0,
52688 20, TARGET_VAL(ARMISD::LSLS),
52689 OPC_RecordChild0,
52690 OPC_RecordChild1,
52691 OPC_MoveChild1,
52692 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52693 OPC_CheckPredicate5,
52694 OPC_MoveParent,
52695 OPC_CheckTypeI32,
52696 OPC_CheckPatternPredicate, 37,
52697 OPC_EmitConvertToTarget1,
52698 OPC_MorphNodeTo2None, TARGET_VAL(ARM::tLSLSri),
52699 MVT::i32, MVT::i32, 2, 0, 2,
52700 47, TARGET_VAL(ARMISD::INTRET_GLUE),
52701 OPC_RecordNode,
52702 OPC_CaptureGlueInput,
52703 OPC_RecordChild1,
52704 OPC_MoveChild1,
52705 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52706 OPC_Scope, 20,
52707 OPC_CheckPredicate, 47,
52708 OPC_MoveParent,
52709 OPC_CheckPatternPredicate, 122,
52710 OPC_EmitMergeInputChains1_0,
52711 OPC_EmitConvertToTarget1,
52712 OPC_EmitInteger32, 28,
52713 OPC_EmitRegisterI32, 0 ,
52714 OPC_MorphNodeTo1, TARGET_VAL(ARM::t2SUBS_PC_LR), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1,
52715 MVT::i32, 3, 2, 3, 4,
52716 16,
52717 OPC_MoveParent,
52718 OPC_CheckPatternPredicate3,
52719 OPC_EmitMergeInputChains1_0,
52720 OPC_EmitConvertToTarget1,
52721 OPC_EmitInteger32, 28,
52722 OPC_EmitRegisterI32, 0 ,
52723 OPC_MorphNodeTo0, TARGET_VAL(ARM::SUBS_PC_LR), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1,
52724 3, 2, 3, 4,
52725 0,
52726 53, TARGET_VAL(ARMISD::ASRL),
52727 OPC_RecordChild0,
52728 OPC_RecordChild1,
52729 OPC_RecordChild2,
52730 OPC_Scope, 27,
52731 OPC_MoveChild2,
52732 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52733 OPC_CheckPredicate, 19,
52734 OPC_CheckTypeI32,
52735 OPC_MoveParent,
52736 OPC_CheckTypeI32,
52737 OPC_CheckPatternPredicate, 36,
52738 OPC_EmitConvertToTarget2,
52739 OPC_EmitInteger32, 28,
52740 OPC_EmitRegisterI32, 0 ,
52741 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_ASRLi),
52742 MVT::i32, MVT::i32, 5, 0, 1, 3, 4, 5,
52743 19,
52744 OPC_CheckChild2TypeI32,
52745 OPC_CheckTypeI32,
52746 OPC_CheckPatternPredicate, 36,
52747 OPC_EmitInteger32, 28,
52748 OPC_EmitRegisterI32, 0 ,
52749 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_ASRLr),
52750 MVT::i32, MVT::i32, 5, 0, 1, 2, 3, 4,
52751 0,
52752 53, TARGET_VAL(ARMISD::LSLL),
52753 OPC_RecordChild0,
52754 OPC_RecordChild1,
52755 OPC_RecordChild2,
52756 OPC_Scope, 27,
52757 OPC_MoveChild2,
52758 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52759 OPC_CheckPredicate, 19,
52760 OPC_CheckTypeI32,
52761 OPC_MoveParent,
52762 OPC_CheckTypeI32,
52763 OPC_CheckPatternPredicate, 36,
52764 OPC_EmitConvertToTarget2,
52765 OPC_EmitInteger32, 28,
52766 OPC_EmitRegisterI32, 0 ,
52767 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_LSLLi),
52768 MVT::i32, MVT::i32, 5, 0, 1, 3, 4, 5,
52769 19,
52770 OPC_CheckChild2TypeI32,
52771 OPC_CheckTypeI32,
52772 OPC_CheckPatternPredicate, 36,
52773 OPC_EmitInteger32, 28,
52774 OPC_EmitRegisterI32, 0 ,
52775 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_LSLLr),
52776 MVT::i32, MVT::i32, 5, 0, 1, 2, 3, 4,
52777 0,
52778 30, TARGET_VAL(ARMISD::LSRL),
52779 OPC_RecordChild0,
52780 OPC_RecordChild1,
52781 OPC_RecordChild2,
52782 OPC_MoveChild2,
52783 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
52784 OPC_CheckPredicate, 19,
52785 OPC_CheckTypeI32,
52786 OPC_MoveParent,
52787 OPC_CheckTypeI32,
52788 OPC_CheckPatternPredicate, 36,
52789 OPC_EmitConvertToTarget2,
52790 OPC_EmitInteger32, 28,
52791 OPC_EmitRegisterI32, 0 ,
52792 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_LSRL),
52793 MVT::i32, MVT::i32, 5, 0, 1, 3, 4, 5,
52794 7|128,1, TARGET_VAL(ARMISD::CALL),
52795 OPC_RecordNode,
52796 OPC_CaptureGlueInput,
52797 OPC_RecordChild1,
52798 OPC_Scope, 69,
52799 OPC_MoveChild1,
52800 OPC_SwitchOpcode , 30, TARGET_VAL(ISD::TargetGlobalAddress),
52801 OPC_MoveParent,
52802 OPC_Scope, 9,
52803 OPC_CheckPatternPredicate3,
52804 OPC_EmitMergeInputChains1_0,
52805 OPC_MorphNodeTo1, TARGET_VAL(ARM::BL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52806 MVT::i32, 1, 1,
52807 16,
52808 OPC_CheckPatternPredicate, 41,
52809 OPC_EmitMergeInputChains1_0,
52810 OPC_EmitInteger32, 28,
52811 OPC_EmitRegisterI32, 0 ,
52812 OPC_MorphNodeTo1, TARGET_VAL(ARM::tBL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52813 MVT::i32, 3, 2, 3, 1,
52814 0,
52815 30, TARGET_VAL(ISD::TargetExternalSymbol),
52816 OPC_MoveParent,
52817 OPC_Scope, 9,
52818 OPC_CheckPatternPredicate3,
52819 OPC_EmitMergeInputChains1_0,
52820 OPC_MorphNodeTo1, TARGET_VAL(ARM::BL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52821 MVT::i32, 1, 1,
52822 16,
52823 OPC_CheckPatternPredicate, 41,
52824 OPC_EmitMergeInputChains1_0,
52825 OPC_EmitInteger32, 28,
52826 OPC_EmitRegisterI32, 0 ,
52827 OPC_MorphNodeTo1, TARGET_VAL(ARM::tBL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52828 MVT::i32, 3, 2, 3, 1,
52829 0,
52830 0,
52831 59,
52832 OPC_CheckChild1TypeI32,
52833 OPC_Scope, 10,
52834 OPC_CheckPatternPredicate, 94,
52835 OPC_EmitMergeInputChains1_0,
52836 OPC_MorphNodeTo1, TARGET_VAL(ARM::BLX), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52837 MVT::i32, 1, 1,
52838 10,
52839 OPC_CheckPatternPredicate, 95,
52840 OPC_EmitMergeInputChains1_0,
52841 OPC_MorphNodeTo1, TARGET_VAL(ARM::BLX_noip), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52842 MVT::i32, 1, 1,
52843 16,
52844 OPC_CheckPatternPredicate, 123,
52845 OPC_EmitMergeInputChains1_0,
52846 OPC_EmitInteger32, 28,
52847 OPC_EmitRegisterI32, 0 ,
52848 OPC_MorphNodeTo1, TARGET_VAL(ARM::tBLXr), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52849 MVT::i32, 3, 2, 3, 1,
52850 16,
52851 OPC_CheckPatternPredicate, 124,
52852 OPC_EmitMergeInputChains1_0,
52853 OPC_EmitInteger32, 28,
52854 OPC_EmitRegisterI32, 0 ,
52855 OPC_MorphNodeTo1, TARGET_VAL(ARM::tBLXr_noip), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52856 MVT::i32, 3, 2, 3, 1,
52857 0,
52858 0,
52859 58, TARGET_VAL(ARMISD::CALL_PRED),
52860 OPC_RecordNode,
52861 OPC_CaptureGlueInput,
52862 OPC_RecordChild1,
52863 OPC_Scope, 20,
52864 OPC_MoveChild1,
52865 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
52866 OPC_MoveParent,
52867 OPC_CheckPatternPredicate3,
52868 OPC_EmitMergeInputChains1_0,
52869 OPC_EmitInteger32, 28,
52870 OPC_EmitRegisterI32, 0 ,
52871 OPC_MorphNodeTo1, TARGET_VAL(ARM::BL_pred), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52872 MVT::i32, 3, 1, 2, 3,
52873 31,
52874 OPC_CheckChild1TypeI32,
52875 OPC_Scope, 16,
52876 OPC_CheckPatternPredicate, 94,
52877 OPC_EmitMergeInputChains1_0,
52878 OPC_EmitInteger32, 28,
52879 OPC_EmitRegisterI32, 0 ,
52880 OPC_MorphNodeTo1, TARGET_VAL(ARM::BLX_pred), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52881 MVT::i32, 3, 1, 2, 3,
52882 10,
52883 OPC_CheckPatternPredicate, 95,
52884 OPC_EmitMergeInputChains1_0,
52885 OPC_MorphNodeTo1, TARGET_VAL(ARM::BLX_pred_noip), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52886 MVT::i32, 1, 1,
52887 0,
52888 0,
52889 72, TARGET_VAL(ARMISD::CALL_NOLINK),
52890 OPC_RecordNode,
52891 OPC_CaptureGlueInput,
52892 OPC_RecordChild1,
52893 OPC_Scope, 29,
52894 OPC_MoveChild1,
52895 OPC_SwitchOpcode , 10, TARGET_VAL(ISD::TargetGlobalAddress),
52896 OPC_MoveParent,
52897 OPC_CheckPatternPredicate3,
52898 OPC_EmitMergeInputChains1_0,
52899 OPC_MorphNodeTo1, TARGET_VAL(ARM::BMOVPCB_CALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52900 MVT::i32, 1, 1,
52901 10, TARGET_VAL(ISD::TargetExternalSymbol),
52902 OPC_MoveParent,
52903 OPC_CheckPatternPredicate3,
52904 OPC_EmitMergeInputChains1_0,
52905 OPC_MorphNodeTo1, TARGET_VAL(ARM::BMOVPCB_CALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52906 MVT::i32, 1, 1,
52907 0,
52908 36,
52909 OPC_CheckChild1TypeI32,
52910 OPC_Scope, 10,
52911 OPC_CheckPatternPredicate, 82,
52912 OPC_EmitMergeInputChains1_0,
52913 OPC_MorphNodeTo1, TARGET_VAL(ARM::BX_CALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52914 MVT::i32, 1, 1,
52915 10,
52916 OPC_CheckPatternPredicate, 83,
52917 OPC_EmitMergeInputChains1_0,
52918 OPC_MorphNodeTo1, TARGET_VAL(ARM::BMOVPCRX_CALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52919 MVT::i32, 1, 1,
52920 10,
52921 OPC_CheckPatternPredicate, 10,
52922 OPC_EmitMergeInputChains1_0,
52923 OPC_MorphNodeTo1, TARGET_VAL(ARM::tBX_CALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
52924 MVT::i32, 1, 1,
52925 0,
52926 0,
52927 108|128,7, TARGET_VAL(ISD::SADDSAT),
52928 OPC_Scope, 43,
52929 OPC_RecordChild0,
52930 OPC_MoveChild1,
52931 OPC_CheckOpcode, TARGET_VAL(ISD::SADDSAT),
52932 OPC_RecordChild0,
52933 OPC_CheckChild1Same, 1,
52934 OPC_MoveParent,
52935 OPC_CheckTypeI32,
52936 OPC_Scope, 15,
52937 OPC_CheckPatternPredicate, 14,
52938 OPC_EmitInteger32, 28,
52939 OPC_EmitRegisterI32, 0 ,
52940 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QDADD),
52941 MVT::i32, 4, 0, 1, 2, 3,
52942 14,
52943 OPC_CheckPatternPredicate5,
52944 OPC_EmitInteger32, 28,
52945 OPC_EmitRegisterI32, 0 ,
52946 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QDADD),
52947 MVT::i32, 4, 0, 1, 2, 3,
52948 0,
52949 43,
52950 OPC_MoveChild0,
52951 OPC_CheckOpcode, TARGET_VAL(ISD::SADDSAT),
52952 OPC_RecordChild0,
52953 OPC_CheckChild1Same, 0,
52954 OPC_MoveParent,
52955 OPC_RecordChild1,
52956 OPC_CheckTypeI32,
52957 OPC_Scope, 15,
52958 OPC_CheckPatternPredicate, 14,
52959 OPC_EmitInteger32, 28,
52960 OPC_EmitRegisterI32, 0 ,
52961 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QDADD),
52962 MVT::i32, 4, 1, 0, 2, 3,
52963 14,
52964 OPC_CheckPatternPredicate5,
52965 OPC_EmitInteger32, 28,
52966 OPC_EmitRegisterI32, 0 ,
52967 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QDADD),
52968 MVT::i32, 4, 1, 0, 2, 3,
52969 0,
52970 44|128,1,
52971 OPC_RecordChild0,
52972 OPC_Scope, 35,
52973 OPC_RecordChild1,
52974 OPC_CheckTypeI32,
52975 OPC_Scope, 15,
52976 OPC_CheckPatternPredicate, 14,
52977 OPC_EmitInteger32, 28,
52978 OPC_EmitRegisterI32, 0 ,
52979 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QADD),
52980 MVT::i32, 4, 0, 1, 2, 3,
52981 14,
52982 OPC_CheckPatternPredicate5,
52983 OPC_EmitInteger32, 28,
52984 OPC_EmitRegisterI32, 0 ,
52985 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QADD),
52986 MVT::i32, 4, 0, 1, 2, 3,
52987 0,
52988 3|128,1,
52989 OPC_MoveChild1,
52990 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
52991 OPC_CheckChild0Integer, 36|128,54,
52992 OPC_Scope, 81,
52993 OPC_RecordChild1,
52994 OPC_Scope, 38,
52995 OPC_CheckChild1Type, MVT::v4i16,
52996 OPC_MoveChild2,
52997 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
52998 OPC_RecordChild0,
52999 OPC_CheckChild0Type, MVT::v4i16,
53000 OPC_RecordChild1,
53001 OPC_MoveChild1,
53002 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53003 OPC_MoveParent,
53004 OPC_CheckType, MVT::v4i16,
53005 OPC_MoveParent,
53006 OPC_MoveParent,
53007 OPC_CheckType, MVT::v4i32,
53008 OPC_CheckPatternPredicate1,
53009 OPC_EmitConvertToTarget3,
53010 OPC_EmitInteger32, 28,
53011 OPC_EmitRegisterI32, 0 ,
53012 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALslv4i16),
53013 MVT::v4i32, 6, 0, 1, 2, 4, 5, 6,
53014 38,
53015 OPC_CheckChild1Type, MVT::v2i32,
53016 OPC_MoveChild2,
53017 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
53018 OPC_RecordChild0,
53019 OPC_CheckChild0Type, MVT::v2i32,
53020 OPC_RecordChild1,
53021 OPC_MoveChild1,
53022 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53023 OPC_MoveParent,
53024 OPC_CheckType, MVT::v2i32,
53025 OPC_MoveParent,
53026 OPC_MoveParent,
53027 OPC_CheckType, MVT::v2i64,
53028 OPC_CheckPatternPredicate1,
53029 OPC_EmitConvertToTarget3,
53030 OPC_EmitInteger32, 28,
53031 OPC_EmitRegisterI32, 0 ,
53032 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALslv2i32),
53033 MVT::v2i64, 6, 0, 1, 2, 4, 5, 6,
53034 0,
53035 39,
53036 OPC_MoveChild1,
53037 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
53038 OPC_RecordChild0,
53039 OPC_CheckChild0Type, MVT::v4i16,
53040 OPC_RecordChild1,
53041 OPC_MoveChild1,
53042 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53043 OPC_MoveParent,
53044 OPC_CheckType, MVT::v4i16,
53045 OPC_MoveParent,
53046 OPC_RecordChild2,
53047 OPC_CheckChild2Type, MVT::v4i16,
53048 OPC_MoveParent,
53049 OPC_CheckType, MVT::v4i32,
53050 OPC_CheckPatternPredicate1,
53051 OPC_EmitConvertToTarget2,
53052 OPC_EmitInteger32, 28,
53053 OPC_EmitRegisterI32, 0 ,
53054 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALslv4i16),
53055 MVT::v4i32, 6, 0, 3, 1, 4, 5, 6,
53056 0,
53057 0,
53058 91,
53059 OPC_MoveChild0,
53060 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
53061 OPC_CheckChild0Integer, 36|128,54,
53062 OPC_Scope, 40,
53063 OPC_RecordChild1,
53064 OPC_CheckChild1Type, MVT::v4i16,
53065 OPC_MoveChild2,
53066 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
53067 OPC_RecordChild0,
53068 OPC_CheckChild0Type, MVT::v4i16,
53069 OPC_RecordChild1,
53070 OPC_MoveChild1,
53071 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53072 OPC_MoveParent,
53073 OPC_CheckType, MVT::v4i16,
53074 OPC_MoveParent,
53075 OPC_MoveParent,
53076 OPC_RecordChild1,
53077 OPC_CheckType, MVT::v4i32,
53078 OPC_CheckPatternPredicate1,
53079 OPC_EmitConvertToTarget2,
53080 OPC_EmitInteger32, 28,
53081 OPC_EmitRegisterI32, 0 ,
53082 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALslv4i16),
53083 MVT::v4i32, 6, 3, 0, 1, 4, 5, 6,
53084 40,
53085 OPC_MoveChild1,
53086 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
53087 OPC_RecordChild0,
53088 OPC_CheckChild0Type, MVT::v4i16,
53089 OPC_RecordChild1,
53090 OPC_MoveChild1,
53091 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53092 OPC_MoveParent,
53093 OPC_CheckType, MVT::v4i16,
53094 OPC_MoveParent,
53095 OPC_RecordChild2,
53096 OPC_CheckChild2Type, MVT::v4i16,
53097 OPC_MoveParent,
53098 OPC_RecordChild1,
53099 OPC_CheckType, MVT::v4i32,
53100 OPC_CheckPatternPredicate1,
53101 OPC_EmitConvertToTarget1,
53102 OPC_EmitInteger32, 28,
53103 OPC_EmitRegisterI32, 0 ,
53104 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALslv4i16),
53105 MVT::v4i32, 6, 3, 2, 0, 4, 5, 6,
53106 0,
53107 47,
53108 OPC_RecordChild0,
53109 OPC_MoveChild1,
53110 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
53111 OPC_CheckChild0Integer, 36|128,54,
53112 OPC_MoveChild1,
53113 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
53114 OPC_RecordChild0,
53115 OPC_CheckChild0Type, MVT::v2i32,
53116 OPC_RecordChild1,
53117 OPC_MoveChild1,
53118 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53119 OPC_MoveParent,
53120 OPC_CheckType, MVT::v2i32,
53121 OPC_MoveParent,
53122 OPC_RecordChild2,
53123 OPC_CheckChild2Type, MVT::v2i32,
53124 OPC_MoveParent,
53125 OPC_CheckType, MVT::v2i64,
53126 OPC_CheckPatternPredicate1,
53127 OPC_EmitConvertToTarget2,
53128 OPC_EmitInteger32, 28,
53129 OPC_EmitRegisterI32, 0 ,
53130 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALslv2i32),
53131 MVT::v2i64, 6, 0, 3, 1, 4, 5, 6,
53132 91,
53133 OPC_MoveChild0,
53134 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
53135 OPC_CheckChild0Integer, 36|128,54,
53136 OPC_Scope, 40,
53137 OPC_RecordChild1,
53138 OPC_CheckChild1Type, MVT::v2i32,
53139 OPC_MoveChild2,
53140 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
53141 OPC_RecordChild0,
53142 OPC_CheckChild0Type, MVT::v2i32,
53143 OPC_RecordChild1,
53144 OPC_MoveChild1,
53145 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53146 OPC_MoveParent,
53147 OPC_CheckType, MVT::v2i32,
53148 OPC_MoveParent,
53149 OPC_MoveParent,
53150 OPC_RecordChild1,
53151 OPC_CheckType, MVT::v2i64,
53152 OPC_CheckPatternPredicate1,
53153 OPC_EmitConvertToTarget2,
53154 OPC_EmitInteger32, 28,
53155 OPC_EmitRegisterI32, 0 ,
53156 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALslv2i32),
53157 MVT::v2i64, 6, 3, 0, 1, 4, 5, 6,
53158 40,
53159 OPC_MoveChild1,
53160 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
53161 OPC_RecordChild0,
53162 OPC_CheckChild0Type, MVT::v2i32,
53163 OPC_RecordChild1,
53164 OPC_MoveChild1,
53165 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53166 OPC_MoveParent,
53167 OPC_CheckType, MVT::v2i32,
53168 OPC_MoveParent,
53169 OPC_RecordChild2,
53170 OPC_CheckChild2Type, MVT::v2i32,
53171 OPC_MoveParent,
53172 OPC_RecordChild1,
53173 OPC_CheckType, MVT::v2i64,
53174 OPC_CheckPatternPredicate1,
53175 OPC_EmitConvertToTarget1,
53176 OPC_EmitInteger32, 28,
53177 OPC_EmitRegisterI32, 0 ,
53178 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALslv2i32),
53179 MVT::v2i64, 6, 3, 2, 0, 4, 5, 6,
53180 0,
53181 59,
53182 OPC_RecordChild0,
53183 OPC_MoveChild1,
53184 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
53185 OPC_CheckChild0Integer, 36|128,54,
53186 OPC_RecordChild1,
53187 OPC_Scope, 23,
53188 OPC_CheckChild1Type, MVT::v4i16,
53189 OPC_RecordChild2,
53190 OPC_CheckChild2Type, MVT::v4i16,
53191 OPC_MoveParent,
53192 OPC_CheckType, MVT::v4i32,
53193 OPC_CheckPatternPredicate1,
53194 OPC_EmitInteger32, 28,
53195 OPC_EmitRegisterI32, 0 ,
53196 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALv4i32),
53197 MVT::v4i32, 5, 0, 1, 2, 3, 4,
53198 23,
53199 OPC_CheckChild1Type, MVT::v2i32,
53200 OPC_RecordChild2,
53201 OPC_CheckChild2Type, MVT::v2i32,
53202 OPC_MoveParent,
53203 OPC_CheckType, MVT::v2i64,
53204 OPC_CheckPatternPredicate1,
53205 OPC_EmitInteger32, 28,
53206 OPC_EmitRegisterI32, 0 ,
53207 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALv2i64),
53208 MVT::v2i64, 5, 0, 1, 2, 3, 4,
53209 0,
53210 60,
53211 OPC_MoveChild0,
53212 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
53213 OPC_CheckChild0Integer, 36|128,54,
53214 OPC_RecordChild1,
53215 OPC_Scope, 24,
53216 OPC_CheckChild1Type, MVT::v4i16,
53217 OPC_RecordChild2,
53218 OPC_CheckChild2Type, MVT::v4i16,
53219 OPC_MoveParent,
53220 OPC_RecordChild1,
53221 OPC_CheckType, MVT::v4i32,
53222 OPC_CheckPatternPredicate1,
53223 OPC_EmitInteger32, 28,
53224 OPC_EmitRegisterI32, 0 ,
53225 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALv4i32),
53226 MVT::v4i32, 5, 2, 0, 1, 3, 4,
53227 24,
53228 OPC_CheckChild1Type, MVT::v2i32,
53229 OPC_RecordChild2,
53230 OPC_CheckChild2Type, MVT::v2i32,
53231 OPC_MoveParent,
53232 OPC_RecordChild1,
53233 OPC_CheckType, MVT::v2i64,
53234 OPC_CheckPatternPredicate1,
53235 OPC_EmitInteger32, 28,
53236 OPC_EmitRegisterI32, 0 ,
53237 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLALv2i64),
53238 MVT::v2i64, 5, 2, 0, 1, 3, 4,
53239 0,
53240 85,
53241 OPC_RecordChild0,
53242 OPC_MoveChild1,
53243 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
53244 OPC_RecordChild0,
53245 OPC_CheckChild0TypeI32,
53246 OPC_MoveParent,
53247 OPC_SwitchType , 23, MVT::v16i8,
53248 OPC_CheckPatternPredicate0,
53249 OPC_EmitInteger32, 0,
53250 OPC_EmitRegisterI32, 0 ,
53251 OPC_EmitRegisterI32, 0 ,
53252 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53253 MVT::v4i32, 0,
53254 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s8),
53255 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
53256 23, MVT::v8i16,
53257 OPC_CheckPatternPredicate0,
53258 OPC_EmitInteger32, 0,
53259 OPC_EmitRegisterI32, 0 ,
53260 OPC_EmitRegisterI32, 0 ,
53261 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53262 MVT::v4i32, 0,
53263 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s16),
53264 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
53265 23, MVT::v4i32,
53266 OPC_CheckPatternPredicate0,
53267 OPC_EmitInteger32, 0,
53268 OPC_EmitRegisterI32, 0 ,
53269 OPC_EmitRegisterI32, 0 ,
53270 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53271 MVT::v4i32, 0,
53272 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s32),
53273 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
53274 0,
53275 85,
53276 OPC_MoveChild0,
53277 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
53278 OPC_RecordChild0,
53279 OPC_CheckChild0TypeI32,
53280 OPC_MoveParent,
53281 OPC_RecordChild1,
53282 OPC_SwitchType , 23, MVT::v16i8,
53283 OPC_CheckPatternPredicate0,
53284 OPC_EmitInteger32, 0,
53285 OPC_EmitRegisterI32, 0 ,
53286 OPC_EmitRegisterI32, 0 ,
53287 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53288 MVT::v4i32, 0,
53289 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s8),
53290 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
53291 23, MVT::v8i16,
53292 OPC_CheckPatternPredicate0,
53293 OPC_EmitInteger32, 0,
53294 OPC_EmitRegisterI32, 0 ,
53295 OPC_EmitRegisterI32, 0 ,
53296 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53297 MVT::v4i32, 0,
53298 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s16),
53299 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
53300 23, MVT::v4i32,
53301 OPC_CheckPatternPredicate0,
53302 OPC_EmitInteger32, 0,
53303 OPC_EmitRegisterI32, 0 ,
53304 OPC_EmitRegisterI32, 0 ,
53305 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53306 MVT::v4i32, 0,
53307 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s32),
53308 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
53309 0,
53310 85|128,1,
53311 OPC_RecordChild0,
53312 OPC_RecordChild1,
53313 OPC_SwitchType , 14, MVT::v4i16,
53314 OPC_CheckPatternPredicate1,
53315 OPC_EmitInteger32, 28,
53316 OPC_EmitRegisterI32, 0 ,
53317 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDsv4i16),
53318 MVT::v4i16, 4, 0, 1, 2, 3,
53319 14, MVT::v2i32,
53320 OPC_CheckPatternPredicate1,
53321 OPC_EmitInteger32, 28,
53322 OPC_EmitRegisterI32, 0 ,
53323 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDsv2i32),
53324 MVT::v2i32, 4, 0, 1, 2, 3,
53325 41, MVT::v8i16,
53326 OPC_Scope, 14,
53327 OPC_CheckPatternPredicate1,
53328 OPC_EmitInteger32, 28,
53329 OPC_EmitRegisterI32, 0 ,
53330 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDsv8i16),
53331 MVT::v8i16, 4, 0, 1, 2, 3,
53332 23,
53333 OPC_CheckPatternPredicate0,
53334 OPC_EmitInteger32, 0,
53335 OPC_EmitRegisterI32, 0 ,
53336 OPC_EmitRegisterI32, 0 ,
53337 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53338 MVT::v4i32, 0,
53339 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDs16),
53340 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
53341 0,
53342 41, MVT::v4i32,
53343 OPC_Scope, 14,
53344 OPC_CheckPatternPredicate1,
53345 OPC_EmitInteger32, 28,
53346 OPC_EmitRegisterI32, 0 ,
53347 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDsv4i32),
53348 MVT::v4i32, 4, 0, 1, 2, 3,
53349 23,
53350 OPC_CheckPatternPredicate0,
53351 OPC_EmitInteger32, 0,
53352 OPC_EmitRegisterI32, 0 ,
53353 OPC_EmitRegisterI32, 0 ,
53354 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53355 MVT::v4i32, 0,
53356 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDs32),
53357 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
53358 0,
53359 14, MVT::v8i8,
53360 OPC_CheckPatternPredicate1,
53361 OPC_EmitInteger32, 28,
53362 OPC_EmitRegisterI32, 0 ,
53363 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDsv8i8),
53364 MVT::v8i8, 4, 0, 1, 2, 3,
53365 41, MVT::v16i8,
53366 OPC_Scope, 14,
53367 OPC_CheckPatternPredicate1,
53368 OPC_EmitInteger32, 28,
53369 OPC_EmitRegisterI32, 0 ,
53370 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDsv16i8),
53371 MVT::v16i8, 4, 0, 1, 2, 3,
53372 23,
53373 OPC_CheckPatternPredicate0,
53374 OPC_EmitInteger32, 0,
53375 OPC_EmitRegisterI32, 0 ,
53376 OPC_EmitRegisterI32, 0 ,
53377 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53378 MVT::v4i32, 0,
53379 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDs8),
53380 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
53381 0,
53382 14, MVT::v1i64,
53383 OPC_CheckPatternPredicate1,
53384 OPC_EmitInteger32, 28,
53385 OPC_EmitRegisterI32, 0 ,
53386 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDsv1i64),
53387 MVT::v1i64, 4, 0, 1, 2, 3,
53388 14, MVT::v2i64,
53389 OPC_CheckPatternPredicate1,
53390 OPC_EmitInteger32, 28,
53391 OPC_EmitRegisterI32, 0 ,
53392 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDsv2i64),
53393 MVT::v2i64, 4, 0, 1, 2, 3,
53394 0,
53395 0,
53396 93|128,4, TARGET_VAL(ISD::SSUBSAT),
53397 OPC_RecordChild0,
53398 OPC_Scope, 42,
53399 OPC_MoveChild1,
53400 OPC_CheckOpcode, TARGET_VAL(ISD::SADDSAT),
53401 OPC_RecordChild0,
53402 OPC_CheckChild1Same, 1,
53403 OPC_MoveParent,
53404 OPC_CheckTypeI32,
53405 OPC_Scope, 15,
53406 OPC_CheckPatternPredicate, 14,
53407 OPC_EmitInteger32, 28,
53408 OPC_EmitRegisterI32, 0 ,
53409 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QDSUB),
53410 MVT::i32, 4, 0, 1, 2, 3,
53411 14,
53412 OPC_CheckPatternPredicate5,
53413 OPC_EmitInteger32, 28,
53414 OPC_EmitRegisterI32, 0 ,
53415 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QDSUB),
53416 MVT::i32, 4, 0, 1, 2, 3,
53417 0,
53418 35,
53419 OPC_RecordChild1,
53420 OPC_CheckTypeI32,
53421 OPC_Scope, 15,
53422 OPC_CheckPatternPredicate, 14,
53423 OPC_EmitInteger32, 28,
53424 OPC_EmitRegisterI32, 0 ,
53425 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QSUB),
53426 MVT::i32, 4, 0, 1, 2, 3,
53427 14,
53428 OPC_CheckPatternPredicate5,
53429 OPC_EmitInteger32, 28,
53430 OPC_EmitRegisterI32, 0 ,
53431 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QSUB),
53432 MVT::i32, 4, 0, 1, 2, 3,
53433 0,
53434 51|128,2,
53435 OPC_MoveChild1,
53436 OPC_SwitchOpcode , 89|128,1, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
53437 OPC_CheckChild0Integer, 36|128,54,
53438 OPC_Scope, 81,
53439 OPC_RecordChild1,
53440 OPC_Scope, 38,
53441 OPC_CheckChild1Type, MVT::v4i16,
53442 OPC_MoveChild2,
53443 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
53444 OPC_RecordChild0,
53445 OPC_CheckChild0Type, MVT::v4i16,
53446 OPC_RecordChild1,
53447 OPC_MoveChild1,
53448 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53449 OPC_MoveParent,
53450 OPC_CheckType, MVT::v4i16,
53451 OPC_MoveParent,
53452 OPC_MoveParent,
53453 OPC_CheckType, MVT::v4i32,
53454 OPC_CheckPatternPredicate1,
53455 OPC_EmitConvertToTarget3,
53456 OPC_EmitInteger32, 28,
53457 OPC_EmitRegisterI32, 0 ,
53458 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLSLslv4i16),
53459 MVT::v4i32, 6, 0, 1, 2, 4, 5, 6,
53460 38,
53461 OPC_CheckChild1Type, MVT::v2i32,
53462 OPC_MoveChild2,
53463 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
53464 OPC_RecordChild0,
53465 OPC_CheckChild0Type, MVT::v2i32,
53466 OPC_RecordChild1,
53467 OPC_MoveChild1,
53468 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53469 OPC_MoveParent,
53470 OPC_CheckType, MVT::v2i32,
53471 OPC_MoveParent,
53472 OPC_MoveParent,
53473 OPC_CheckType, MVT::v2i64,
53474 OPC_CheckPatternPredicate1,
53475 OPC_EmitConvertToTarget3,
53476 OPC_EmitInteger32, 28,
53477 OPC_EmitRegisterI32, 0 ,
53478 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLSLslv2i32),
53479 MVT::v2i64, 6, 0, 1, 2, 4, 5, 6,
53480 0,
53481 77,
53482 OPC_MoveChild1,
53483 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
53484 OPC_RecordChild0,
53485 OPC_Scope, 34,
53486 OPC_CheckChild0Type, MVT::v4i16,
53487 OPC_RecordChild1,
53488 OPC_MoveChild1,
53489 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53490 OPC_MoveParent,
53491 OPC_CheckType, MVT::v4i16,
53492 OPC_MoveParent,
53493 OPC_RecordChild2,
53494 OPC_CheckChild2Type, MVT::v4i16,
53495 OPC_MoveParent,
53496 OPC_CheckType, MVT::v4i32,
53497 OPC_CheckPatternPredicate1,
53498 OPC_EmitConvertToTarget2,
53499 OPC_EmitInteger32, 28,
53500 OPC_EmitRegisterI32, 0 ,
53501 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLSLslv4i16),
53502 MVT::v4i32, 6, 0, 3, 1, 4, 5, 6,
53503 34,
53504 OPC_CheckChild0Type, MVT::v2i32,
53505 OPC_RecordChild1,
53506 OPC_MoveChild1,
53507 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53508 OPC_MoveParent,
53509 OPC_CheckType, MVT::v2i32,
53510 OPC_MoveParent,
53511 OPC_RecordChild2,
53512 OPC_CheckChild2Type, MVT::v2i32,
53513 OPC_MoveParent,
53514 OPC_CheckType, MVT::v2i64,
53515 OPC_CheckPatternPredicate1,
53516 OPC_EmitConvertToTarget2,
53517 OPC_EmitInteger32, 28,
53518 OPC_EmitRegisterI32, 0 ,
53519 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLSLslv2i32),
53520 MVT::v2i64, 6, 0, 3, 1, 4, 5, 6,
53521 0,
53522 51,
53523 OPC_RecordChild1,
53524 OPC_Scope, 23,
53525 OPC_CheckChild1Type, MVT::v4i16,
53526 OPC_RecordChild2,
53527 OPC_CheckChild2Type, MVT::v4i16,
53528 OPC_MoveParent,
53529 OPC_CheckType, MVT::v4i32,
53530 OPC_CheckPatternPredicate1,
53531 OPC_EmitInteger32, 28,
53532 OPC_EmitRegisterI32, 0 ,
53533 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLSLv4i32),
53534 MVT::v4i32, 5, 0, 1, 2, 3, 4,
53535 23,
53536 OPC_CheckChild1Type, MVT::v2i32,
53537 OPC_RecordChild2,
53538 OPC_CheckChild2Type, MVT::v2i32,
53539 OPC_MoveParent,
53540 OPC_CheckType, MVT::v2i64,
53541 OPC_CheckPatternPredicate1,
53542 OPC_EmitInteger32, 28,
53543 OPC_EmitRegisterI32, 0 ,
53544 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQDMLSLv2i64),
53545 MVT::v2i64, 5, 0, 1, 2, 3, 4,
53546 0,
53547 0,
53548 80, TARGET_VAL(ARMISD::VDUP),
53549 OPC_RecordChild0,
53550 OPC_CheckChild0TypeI32,
53551 OPC_MoveParent,
53552 OPC_SwitchType , 23, MVT::v16i8,
53553 OPC_CheckPatternPredicate0,
53554 OPC_EmitInteger32, 0,
53555 OPC_EmitRegisterI32, 0 ,
53556 OPC_EmitRegisterI32, 0 ,
53557 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53558 MVT::v4i32, 0,
53559 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_s8),
53560 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
53561 23, MVT::v8i16,
53562 OPC_CheckPatternPredicate0,
53563 OPC_EmitInteger32, 0,
53564 OPC_EmitRegisterI32, 0 ,
53565 OPC_EmitRegisterI32, 0 ,
53566 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53567 MVT::v4i32, 0,
53568 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_s16),
53569 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
53570 23, MVT::v4i32,
53571 OPC_CheckPatternPredicate0,
53572 OPC_EmitInteger32, 0,
53573 OPC_EmitRegisterI32, 0 ,
53574 OPC_EmitRegisterI32, 0 ,
53575 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53576 MVT::v4i32, 0,
53577 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_s32),
53578 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
53579 0,
53580 0,
53581 84|128,1,
53582 OPC_RecordChild1,
53583 OPC_SwitchType , 14, MVT::v4i16,
53584 OPC_CheckPatternPredicate1,
53585 OPC_EmitInteger32, 28,
53586 OPC_EmitRegisterI32, 0 ,
53587 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBsv4i16),
53588 MVT::v4i16, 4, 0, 1, 2, 3,
53589 14, MVT::v2i32,
53590 OPC_CheckPatternPredicate1,
53591 OPC_EmitInteger32, 28,
53592 OPC_EmitRegisterI32, 0 ,
53593 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBsv2i32),
53594 MVT::v2i32, 4, 0, 1, 2, 3,
53595 41, MVT::v8i16,
53596 OPC_Scope, 14,
53597 OPC_CheckPatternPredicate1,
53598 OPC_EmitInteger32, 28,
53599 OPC_EmitRegisterI32, 0 ,
53600 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBsv8i16),
53601 MVT::v8i16, 4, 0, 1, 2, 3,
53602 23,
53603 OPC_CheckPatternPredicate0,
53604 OPC_EmitInteger32, 0,
53605 OPC_EmitRegisterI32, 0 ,
53606 OPC_EmitRegisterI32, 0 ,
53607 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53608 MVT::v4i32, 0,
53609 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBs16),
53610 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
53611 0,
53612 41, MVT::v4i32,
53613 OPC_Scope, 14,
53614 OPC_CheckPatternPredicate1,
53615 OPC_EmitInteger32, 28,
53616 OPC_EmitRegisterI32, 0 ,
53617 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBsv4i32),
53618 MVT::v4i32, 4, 0, 1, 2, 3,
53619 23,
53620 OPC_CheckPatternPredicate0,
53621 OPC_EmitInteger32, 0,
53622 OPC_EmitRegisterI32, 0 ,
53623 OPC_EmitRegisterI32, 0 ,
53624 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53625 MVT::v4i32, 0,
53626 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBs32),
53627 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
53628 0,
53629 14, MVT::v8i8,
53630 OPC_CheckPatternPredicate1,
53631 OPC_EmitInteger32, 28,
53632 OPC_EmitRegisterI32, 0 ,
53633 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBsv8i8),
53634 MVT::v8i8, 4, 0, 1, 2, 3,
53635 41, MVT::v16i8,
53636 OPC_Scope, 14,
53637 OPC_CheckPatternPredicate1,
53638 OPC_EmitInteger32, 28,
53639 OPC_EmitRegisterI32, 0 ,
53640 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBsv16i8),
53641 MVT::v16i8, 4, 0, 1, 2, 3,
53642 23,
53643 OPC_CheckPatternPredicate0,
53644 OPC_EmitInteger32, 0,
53645 OPC_EmitRegisterI32, 0 ,
53646 OPC_EmitRegisterI32, 0 ,
53647 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
53648 MVT::v4i32, 0,
53649 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBs8),
53650 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
53651 0,
53652 14, MVT::v1i64,
53653 OPC_CheckPatternPredicate1,
53654 OPC_EmitInteger32, 28,
53655 OPC_EmitRegisterI32, 0 ,
53656 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBsv1i64),
53657 MVT::v1i64, 4, 0, 1, 2, 3,
53658 14, MVT::v2i64,
53659 OPC_CheckPatternPredicate1,
53660 OPC_EmitInteger32, 28,
53661 OPC_EmitRegisterI32, 0 ,
53662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBsv2i64),
53663 MVT::v2i64, 4, 0, 1, 2, 3,
53664 0,
53665 0,
53666 22, TARGET_VAL(ARMISD::MEMCPY),
53667 OPC_RecordNode,
53668 OPC_CaptureGlueInput,
53669 OPC_RecordChild1,
53670 OPC_RecordChild2,
53671 OPC_RecordChild3,
53672 OPC_MoveChild3,
53673 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53674 OPC_MoveParent,
53675 OPC_EmitMergeInputChains1_0,
53676 OPC_EmitConvertToTarget3,
53677 OPC_MorphNodeTo2, TARGET_VAL(ARM::MEMCPY), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput,
53678 MVT::i32, MVT::i32, 3, 1, 2, 4,
53679 57|128,1, TARGET_VAL(ARMISD::Wrapper),
53680 OPC_RecordChild0,
53681 OPC_MoveChild0,
53682 OPC_SwitchOpcode , 50, TARGET_VAL(ISD::TargetGlobalAddress),
53683 OPC_MoveParent,
53684 OPC_CheckTypeI32,
53685 OPC_Scope, 8,
53686 OPC_CheckPatternPredicate, 96,
53687 OPC_MorphNodeTo1None, TARGET_VAL(ARM::LDRLIT_ga_abs),
53688 MVT::i32, 1, 0,
53689 8,
53690 OPC_CheckPatternPredicate, 84,
53691 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVi32imm),
53692 MVT::i32, 1, 0,
53693 8,
53694 OPC_CheckPatternPredicate, 125,
53695 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tLDRLIT_ga_abs),
53696 MVT::i32, 1, 0,
53697 9,
53698 OPC_CheckPatternPredicate, 97,
53699 OPC_MorphNodeTo2None, TARGET_VAL(ARM::tMOVi32imm),
53700 MVT::i32, MVT::i32, 1, 0,
53701 8,
53702 OPC_CheckPatternPredicate, 98,
53703 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MOVi32imm),
53704 MVT::i32, 1, 0,
53705 0,
53706 40, TARGET_VAL(ISD::TargetGlobalTLSAddress),
53707 OPC_MoveParent,
53708 OPC_CheckTypeI32,
53709 OPC_Scope, 8,
53710 OPC_CheckPatternPredicate, 84,
53711 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVi32imm),
53712 MVT::i32, 1, 0,
53713 8,
53714 OPC_CheckPatternPredicate, 96,
53715 OPC_MorphNodeTo1None, TARGET_VAL(ARM::LDRLIT_ga_abs),
53716 MVT::i32, 1, 0,
53717 8,
53718 OPC_CheckPatternPredicate, 126,
53719 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tLDRLIT_ga_abs),
53720 MVT::i32, 1, 0,
53721 8,
53722 OPC_CheckPatternPredicate, 127,
53723 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MOVi32imm),
53724 MVT::i32, 1, 0,
53725 0,
53726 47, TARGET_VAL(ISD::TargetConstantPool),
53727 OPC_MoveParent,
53728 OPC_CheckTypeI32,
53729 OPC_Scope, 13,
53730 OPC_CheckPatternPredicate3,
53731 OPC_EmitInteger32, 28,
53732 OPC_EmitRegisterI32, 0 ,
53733 OPC_MorphNodeTo1None, TARGET_VAL(ARM::LEApcrel),
53734 MVT::i32, 3, 0, 1, 2,
53735 14,
53736 OPC_CheckPatternPredicate, 10,
53737 OPC_EmitInteger32, 28,
53738 OPC_EmitRegisterI32, 0 ,
53739 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tLEApcrel),
53740 MVT::i32, 3, 0, 1, 2,
53741 13,
53742 OPC_CheckPatternPredicate4,
53743 OPC_EmitInteger32, 28,
53744 OPC_EmitRegisterI32, 0 ,
53745 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2LEApcrel),
53746 MVT::i32, 3, 0, 1, 2,
53747 0,
53748 32, TARGET_VAL(ISD::TargetExternalSymbol),
53749 OPC_MoveParent,
53750 OPC_CheckTypeI32,
53751 OPC_Scope, 8,
53752 OPC_CheckPatternPredicate, 84,
53753 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVi32imm),
53754 MVT::i32, 1, 0,
53755 9,
53756 OPC_CheckPatternPredicate, 97,
53757 OPC_MorphNodeTo2None, TARGET_VAL(ARM::tMOVi32imm),
53758 MVT::i32, MVT::i32, 1, 0,
53759 8,
53760 OPC_CheckPatternPredicate, 98,
53761 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MOVi32imm),
53762 MVT::i32, 1, 0,
53763 0,
53764 0,
53765 108, TARGET_VAL(ARMISD::WrapperPIC),
53766 OPC_RecordChild0,
53767 OPC_MoveChild0,
53768 OPC_SwitchOpcode , 49, TARGET_VAL(ISD::TargetGlobalAddress),
53769 OPC_MoveParent,
53770 OPC_CheckTypeI32,
53771 OPC_Scope, 8,
53772 OPC_CheckPatternPredicate, 70,
53773 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOV_ga_pcrel),
53774 MVT::i32, 1, 0,
53775 8,
53776 OPC_CheckPatternPredicate, 78,
53777 OPC_MorphNodeTo1None, TARGET_VAL(ARM::LDRLIT_ga_pcrel),
53778 MVT::i32, 1, 0,
53779 8,
53780 OPC_CheckPatternPredicate, 99,
53781 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tLDRLIT_ga_pcrel),
53782 MVT::i32, 1, 0,
53783 8,
53784 OPC_CheckPatternPredicate, 128,
53785 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MOV_ga_pcrel),
53786 MVT::i32, 1, 0,
53787 8,
53788 OPC_CheckPatternPredicate, 100,
53789 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2LDRLIT_ga_pcrel),
53790 MVT::i32, 1, 0,
53791 0,
53792 49, TARGET_VAL(ISD::TargetGlobalTLSAddress),
53793 OPC_MoveParent,
53794 OPC_CheckTypeI32,
53795 OPC_Scope, 8,
53796 OPC_CheckPatternPredicate, 70,
53797 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOV_ga_pcrel),
53798 MVT::i32, 1, 0,
53799 8,
53800 OPC_CheckPatternPredicate, 78,
53801 OPC_MorphNodeTo1None, TARGET_VAL(ARM::LDRLIT_ga_pcrel),
53802 MVT::i32, 1, 0,
53803 8,
53804 OPC_CheckPatternPredicate, 99,
53805 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tLDRLIT_ga_pcrel),
53806 MVT::i32, 1, 0,
53807 8,
53808 OPC_CheckPatternPredicate, 129,
53809 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MOV_ga_pcrel),
53810 MVT::i32, 1, 0,
53811 8,
53812 OPC_CheckPatternPredicate, 100,
53813 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2LDRLIT_ga_pcrel),
53814 MVT::i32, 1, 0,
53815 0,
53816 0,
53817 52, TARGET_VAL(ARMISD::WrapperJT),
53818 OPC_RecordChild0,
53819 OPC_MoveChild0,
53820 OPC_CheckOpcode, TARGET_VAL(ISD::TargetJumpTable),
53821 OPC_MoveParent,
53822 OPC_CheckTypeI32,
53823 OPC_Scope, 13,
53824 OPC_CheckPatternPredicate3,
53825 OPC_EmitInteger32, 28,
53826 OPC_EmitRegisterI32, 0 ,
53827 OPC_MorphNodeTo1None, TARGET_VAL(ARM::LEApcrelJT),
53828 MVT::i32, 3, 0, 1, 2,
53829 14,
53830 OPC_CheckPatternPredicate, 10,
53831 OPC_EmitInteger32, 28,
53832 OPC_EmitRegisterI32, 0 ,
53833 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tLEApcrelJT),
53834 MVT::i32, 3, 0, 1, 2,
53835 13,
53836 OPC_CheckPatternPredicate4,
53837 OPC_EmitInteger32, 28,
53838 OPC_EmitRegisterI32, 0 ,
53839 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2LEApcrelJT),
53840 MVT::i32, 3, 0, 1, 2,
53841 0,
53842 20, TARGET_VAL(ARMISD::BR2_JT),
53843 OPC_RecordNode,
53844 OPC_RecordChild1,
53845 OPC_CheckChild1TypeI32,
53846 OPC_RecordChild2,
53847 OPC_RecordChild3,
53848 OPC_MoveChild3,
53849 OPC_CheckOpcode, TARGET_VAL(ISD::TargetJumpTable),
53850 OPC_MoveParent,
53851 OPC_CheckPatternPredicate, 31,
53852 OPC_EmitMergeInputChains1_0,
53853 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2BR_JT),
53854 3, 1, 2, 3,
53855 22, TARGET_VAL(ARMISD::t2CALL_BTI),
53856 OPC_RecordNode,
53857 OPC_CaptureGlueInput,
53858 OPC_RecordChild1,
53859 OPC_MoveChild1,
53860 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
53861 OPC_MoveParent,
53862 OPC_CheckPatternPredicate4,
53863 OPC_EmitMergeInputChains1_0,
53864 OPC_EmitInteger32, 28,
53865 OPC_EmitRegisterI32, 0 ,
53866 OPC_MorphNodeTo0, TARGET_VAL(ARM::t2CALL_BTI), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
53867 3, 2, 3, 1,
53868 61|128,1, TARGET_VAL(ARMISD::VGETLANEs),
53869 OPC_RecordChild0,
53870 OPC_Scope, 23,
53871 OPC_CheckChild0Type, MVT::v8i8,
53872 OPC_RecordChild1,
53873 OPC_MoveChild1,
53874 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53875 OPC_MoveParent,
53876 OPC_CheckPatternPredicate1,
53877 OPC_EmitConvertToTarget1,
53878 OPC_EmitInteger32, 28,
53879 OPC_EmitRegisterI32, 0 ,
53880 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNs8),
53881 MVT::i32, 4, 0, 2, 3, 4,
53882 23,
53883 OPC_CheckChild0Type, MVT::v4i16,
53884 OPC_RecordChild1,
53885 OPC_MoveChild1,
53886 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53887 OPC_MoveParent,
53888 OPC_CheckPatternPredicate1,
53889 OPC_EmitConvertToTarget1,
53890 OPC_EmitInteger32, 28,
53891 OPC_EmitRegisterI32, 0 ,
53892 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNs16),
53893 MVT::i32, 4, 0, 2, 3, 4,
53894 56,
53895 OPC_CheckChild0Type, MVT::v16i8,
53896 OPC_RecordChild1,
53897 OPC_MoveChild1,
53898 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53899 OPC_MoveParent,
53900 OPC_Scope, 15,
53901 OPC_CheckPatternPredicate0,
53902 OPC_EmitConvertToTarget1,
53903 OPC_EmitInteger32, 28,
53904 OPC_EmitRegisterI32, 0 ,
53905 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_from_lane_s8),
53906 MVT::i32, 4, 0, 2, 3, 4,
53907 29,
53908 OPC_CheckPatternPredicate1,
53909 OPC_EmitConvertToTarget1,
53910 OPC_EmitNodeXForm, 16, 2,
53911 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
53912 MVT::v8i8, 2, 0, 3,
53913 OPC_EmitConvertToTarget1,
53914 OPC_EmitNodeXForm, 17, 5,
53915 OPC_EmitInteger32, 28,
53916 OPC_EmitRegisterI32, 0 ,
53917 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNs8),
53918 MVT::i32, 4, 4, 6, 7, 8,
53919 0,
53920 56,
53921 OPC_CheckChild0Type, MVT::v8i16,
53922 OPC_RecordChild1,
53923 OPC_MoveChild1,
53924 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53925 OPC_MoveParent,
53926 OPC_Scope, 15,
53927 OPC_CheckPatternPredicate0,
53928 OPC_EmitConvertToTarget1,
53929 OPC_EmitInteger32, 28,
53930 OPC_EmitRegisterI32, 0 ,
53931 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_from_lane_s16),
53932 MVT::i32, 4, 0, 2, 3, 4,
53933 29,
53934 OPC_CheckPatternPredicate1,
53935 OPC_EmitConvertToTarget1,
53936 OPC_EmitNodeXForm, 5, 2,
53937 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
53938 MVT::v4i16, 2, 0, 3,
53939 OPC_EmitConvertToTarget1,
53940 OPC_EmitNodeXForm, 6, 5,
53941 OPC_EmitInteger32, 28,
53942 OPC_EmitRegisterI32, 0 ,
53943 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNs16),
53944 MVT::i32, 4, 4, 6, 7, 8,
53945 0,
53946 23,
53947 OPC_CheckChild0Type, MVT::v8f16,
53948 OPC_RecordChild1,
53949 OPC_MoveChild1,
53950 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53951 OPC_MoveParent,
53952 OPC_CheckPatternPredicate0,
53953 OPC_EmitConvertToTarget1,
53954 OPC_EmitInteger32, 28,
53955 OPC_EmitRegisterI32, 0 ,
53956 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_from_lane_s16),
53957 MVT::i32, 4, 0, 2, 3, 4,
53958 0,
53959 52|128,2, TARGET_VAL(ARMISD::VGETLANEu),
53960 OPC_RecordChild0,
53961 OPC_Scope, 23,
53962 OPC_CheckChild0Type, MVT::v8i8,
53963 OPC_RecordChild1,
53964 OPC_MoveChild1,
53965 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53966 OPC_MoveParent,
53967 OPC_CheckPatternPredicate1,
53968 OPC_EmitConvertToTarget1,
53969 OPC_EmitInteger32, 28,
53970 OPC_EmitRegisterI32, 0 ,
53971 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNu8),
53972 MVT::i32, 4, 0, 2, 3, 4,
53973 23,
53974 OPC_CheckChild0Type, MVT::v4i16,
53975 OPC_RecordChild1,
53976 OPC_MoveChild1,
53977 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53978 OPC_MoveParent,
53979 OPC_CheckPatternPredicate1,
53980 OPC_EmitConvertToTarget1,
53981 OPC_EmitInteger32, 28,
53982 OPC_EmitRegisterI32, 0 ,
53983 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNu16),
53984 MVT::i32, 4, 0, 2, 3, 4,
53985 23,
53986 OPC_CheckChild0Type, MVT::v4f16,
53987 OPC_RecordChild1,
53988 OPC_MoveChild1,
53989 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
53990 OPC_MoveParent,
53991 OPC_CheckPatternPredicate1,
53992 OPC_EmitConvertToTarget1,
53993 OPC_EmitInteger32, 28,
53994 OPC_EmitRegisterI32, 0 ,
53995 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNu16),
53996 MVT::i32, 4, 0, 2, 3, 4,
53997 23,
53998 OPC_CheckChild0Type, MVT::v4bf16,
53999 OPC_RecordChild1,
54000 OPC_MoveChild1,
54001 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54002 OPC_MoveParent,
54003 OPC_CheckPatternPredicate1,
54004 OPC_EmitConvertToTarget1,
54005 OPC_EmitInteger32, 28,
54006 OPC_EmitRegisterI32, 0 ,
54007 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNu16),
54008 MVT::i32, 4, 0, 2, 3, 4,
54009 56,
54010 OPC_CheckChild0Type, MVT::v16i8,
54011 OPC_RecordChild1,
54012 OPC_MoveChild1,
54013 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54014 OPC_MoveParent,
54015 OPC_Scope, 15,
54016 OPC_CheckPatternPredicate0,
54017 OPC_EmitConvertToTarget1,
54018 OPC_EmitInteger32, 28,
54019 OPC_EmitRegisterI32, 0 ,
54020 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_from_lane_u8),
54021 MVT::i32, 4, 0, 2, 3, 4,
54022 29,
54023 OPC_CheckPatternPredicate1,
54024 OPC_EmitConvertToTarget1,
54025 OPC_EmitNodeXForm, 16, 2,
54026 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54027 MVT::v8i8, 2, 0, 3,
54028 OPC_EmitConvertToTarget1,
54029 OPC_EmitNodeXForm, 17, 5,
54030 OPC_EmitInteger32, 28,
54031 OPC_EmitRegisterI32, 0 ,
54032 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNu8),
54033 MVT::i32, 4, 4, 6, 7, 8,
54034 0,
54035 56,
54036 OPC_CheckChild0Type, MVT::v8i16,
54037 OPC_RecordChild1,
54038 OPC_MoveChild1,
54039 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54040 OPC_MoveParent,
54041 OPC_Scope, 15,
54042 OPC_CheckPatternPredicate0,
54043 OPC_EmitConvertToTarget1,
54044 OPC_EmitInteger32, 28,
54045 OPC_EmitRegisterI32, 0 ,
54046 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_from_lane_u16),
54047 MVT::i32, 4, 0, 2, 3, 4,
54048 29,
54049 OPC_CheckPatternPredicate1,
54050 OPC_EmitConvertToTarget1,
54051 OPC_EmitNodeXForm, 5, 2,
54052 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54053 MVT::v4i16, 2, 0, 3,
54054 OPC_EmitConvertToTarget1,
54055 OPC_EmitNodeXForm, 6, 5,
54056 OPC_EmitInteger32, 28,
54057 OPC_EmitRegisterI32, 0 ,
54058 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNu16),
54059 MVT::i32, 4, 4, 6, 7, 8,
54060 0,
54061 56,
54062 OPC_CheckChild0Type, MVT::v8f16,
54063 OPC_RecordChild1,
54064 OPC_MoveChild1,
54065 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54066 OPC_MoveParent,
54067 OPC_Scope, 15,
54068 OPC_CheckPatternPredicate0,
54069 OPC_EmitConvertToTarget1,
54070 OPC_EmitInteger32, 28,
54071 OPC_EmitRegisterI32, 0 ,
54072 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_from_lane_u16),
54073 MVT::i32, 4, 0, 2, 3, 4,
54074 29,
54075 OPC_CheckPatternPredicate1,
54076 OPC_EmitConvertToTarget1,
54077 OPC_EmitNodeXForm, 5, 2,
54078 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54079 MVT::v4f16, 2, 0, 3,
54080 OPC_EmitConvertToTarget1,
54081 OPC_EmitNodeXForm, 6, 5,
54082 OPC_EmitInteger32, 28,
54083 OPC_EmitRegisterI32, 0 ,
54084 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNu16),
54085 MVT::i32, 4, 4, 6, 7, 8,
54086 0,
54087 37,
54088 OPC_CheckChild0Type, MVT::v8bf16,
54089 OPC_RecordChild1,
54090 OPC_MoveChild1,
54091 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54092 OPC_MoveParent,
54093 OPC_CheckPatternPredicate1,
54094 OPC_EmitConvertToTarget1,
54095 OPC_EmitNodeXForm, 5, 2,
54096 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54097 MVT::v4bf16, 2, 0, 3,
54098 OPC_EmitConvertToTarget1,
54099 OPC_EmitNodeXForm, 6, 5,
54100 OPC_EmitInteger32, 28,
54101 OPC_EmitRegisterI32, 0 ,
54102 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNu16),
54103 MVT::i32, 4, 4, 6, 7, 8,
54104 0,
54105 73|128,5, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
54106 OPC_RecordChild0,
54107 OPC_Scope, 51,
54108 OPC_CheckChild0Type, MVT::v2i32,
54109 OPC_RecordChild1,
54110 OPC_MoveChild1,
54111 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54112 OPC_MoveParent,
54113 OPC_CheckTypeI32,
54114 OPC_Scope, 16,
54115 OPC_CheckPatternPredicate, 130,
54116 OPC_EmitConvertToTarget1,
54117 OPC_EmitInteger32, 28,
54118 OPC_EmitRegisterI32, 0 ,
54119 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNi32),
54120 MVT::i32, 4, 0, 2, 3, 4,
54121 22,
54122 OPC_CheckPatternPredicate, 101,
54123 OPC_EmitConvertToTarget1,
54124 OPC_EmitNodeXForm, 18, 2,
54125 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54126 MVT::i32, 2, 0, 3,
54127 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54128 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54129 MVT::i32, 2, 4, 5,
54130 0,
54131 87,
54132 OPC_CheckChild0Type, MVT::v4i32,
54133 OPC_RecordChild1,
54134 OPC_MoveChild1,
54135 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54136 OPC_MoveParent,
54137 OPC_CheckTypeI32,
54138 OPC_Scope, 30,
54139 OPC_CheckPatternPredicate, 131,
54140 OPC_EmitConvertToTarget1,
54141 OPC_EmitNodeXForm, 7, 2,
54142 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54143 MVT::v2i32, 2, 0, 3,
54144 OPC_EmitConvertToTarget1,
54145 OPC_EmitNodeXForm, 8, 5,
54146 OPC_EmitInteger32, 28,
54147 OPC_EmitRegisterI32, 0 ,
54148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VGETLNi32),
54149 MVT::i32, 4, 4, 6, 7, 8,
54150 22,
54151 OPC_CheckPatternPredicate, 101,
54152 OPC_EmitConvertToTarget1,
54153 OPC_EmitNodeXForm, 18, 2,
54154 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54155 MVT::i32, 2, 0, 3,
54156 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54157 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54158 MVT::i32, 2, 4, 5,
54159 21,
54160 OPC_CheckPatternPredicate0,
54161 OPC_EmitConvertToTarget1,
54162 OPC_EmitNodeXForm, 18, 2,
54163 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54164 MVT::i32, 2, 0, 3,
54165 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
54166 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54167 MVT::i32, 2, 4, 5,
54168 0,
54169 111,
54170 OPC_CheckChild0Type, MVT::v4bf16,
54171 OPC_RecordChild1,
54172 OPC_MoveChild1,
54173 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54174 OPC_Scope, 42,
54175 OPC_CheckPredicate, 37,
54176 OPC_MoveParent,
54177 OPC_CheckType, MVT::bf16,
54178 OPC_CheckPatternPredicate, 102,
54179 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
54180 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54181 MVT::v2f32, 2, 0, 2,
54182 OPC_EmitConvertToTarget1,
54183 OPC_EmitNodeXForm, 19, 4,
54184 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54185 MVT::f32, 2, 3, 5,
54186 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVH),
54187 MVT::f32, 1, 6,
54188 OPC_EmitStringInteger32, ARM::HPRRegClassID,
54189 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54190 MVT::bf16, 2, 7, 8,
54191 27,
54192 OPC_CheckPredicate, 48,
54193 OPC_MoveParent,
54194 OPC_CheckType, MVT::bf16,
54195 OPC_CheckPatternPredicate, 27,
54196 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
54197 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54198 MVT::v2f32, 2, 0, 2,
54199 OPC_EmitConvertToTarget1,
54200 OPC_EmitNodeXForm, 19, 4,
54201 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54202 MVT::bf16, 2, 3, 5,
54203 30,
54204 OPC_CheckPredicate, 37,
54205 OPC_MoveParent,
54206 OPC_CheckType, MVT::bf16,
54207 OPC_CheckPatternPredicate, 27,
54208 OPC_EmitConvertToTarget1,
54209 OPC_EmitInteger32, 28,
54210 OPC_EmitRegisterI32, 0 ,
54211 OPC_EmitNode1None, TARGET_VAL(ARM::VGETLNu16),
54212 MVT::i32, 4, 0, 2, 3, 4,
54213 OPC_EmitStringInteger32, ARM::HPRRegClassID,
54214 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54215 MVT::bf16, 2, 5, 6,
54216 0,
54217 125,
54218 OPC_CheckChild0Type, MVT::v8bf16,
54219 OPC_RecordChild1,
54220 OPC_MoveChild1,
54221 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54222 OPC_Scope, 42,
54223 OPC_CheckPredicate, 37,
54224 OPC_MoveParent,
54225 OPC_CheckType, MVT::bf16,
54226 OPC_CheckPatternPredicate, 102,
54227 OPC_EmitStringInteger32, ARM::QPR_VFP2RegClassID,
54228 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54229 MVT::v4f32, 2, 0, 2,
54230 OPC_EmitConvertToTarget1,
54231 OPC_EmitNodeXForm, 19, 4,
54232 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54233 MVT::f32, 2, 3, 5,
54234 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVH),
54235 MVT::f32, 1, 6,
54236 OPC_EmitStringInteger32, ARM::HPRRegClassID,
54237 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54238 MVT::bf16, 2, 7, 8,
54239 27,
54240 OPC_CheckPredicate, 48,
54241 OPC_MoveParent,
54242 OPC_CheckType, MVT::bf16,
54243 OPC_CheckPatternPredicate, 27,
54244 OPC_EmitStringInteger32, ARM::QPR_VFP2RegClassID,
54245 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54246 MVT::v4f32, 2, 0, 2,
54247 OPC_EmitConvertToTarget1,
54248 OPC_EmitNodeXForm, 19, 4,
54249 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54250 MVT::bf16, 2, 3, 5,
54251 44,
54252 OPC_CheckPredicate, 37,
54253 OPC_MoveParent,
54254 OPC_CheckType, MVT::bf16,
54255 OPC_CheckPatternPredicate, 27,
54256 OPC_EmitConvertToTarget1,
54257 OPC_EmitNodeXForm, 5, 2,
54258 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54259 MVT::v4i16, 2, 0, 3,
54260 OPC_EmitConvertToTarget1,
54261 OPC_EmitNodeXForm, 6, 5,
54262 OPC_EmitInteger32, 28,
54263 OPC_EmitRegisterI32, 0 ,
54264 OPC_EmitNode1None, TARGET_VAL(ARM::VGETLNu16),
54265 MVT::i32, 4, 4, 6, 7, 8,
54266 OPC_EmitStringInteger32, ARM::HPRRegClassID,
54267 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54268 MVT::bf16, 2, 9, 10,
54269 0,
54270 126,
54271 OPC_CheckChild0Type, MVT::v8f16,
54272 OPC_RecordChild1,
54273 OPC_MoveChild1,
54274 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54275 OPC_Scope, 42,
54276 OPC_CheckPredicate, 48,
54277 OPC_MoveParent,
54278 OPC_CheckType, MVT::f16,
54279 OPC_Scope, 12,
54280 OPC_CheckPatternPredicate0,
54281 OPC_EmitConvertToTarget1,
54282 OPC_EmitNodeXForm, 19, 2,
54283 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54284 MVT::f16, 2, 0, 3,
54285 21,
54286 OPC_CheckPatternPredicate1,
54287 OPC_EmitStringInteger32, ARM::QPR_VFP2RegClassID,
54288 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54289 MVT::v4f32, 2, 0, 2,
54290 OPC_EmitConvertToTarget1,
54291 OPC_EmitNodeXForm, 19, 4,
54292 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54293 MVT::f16, 2, 3, 5,
54294 0,
54295 73,
54296 OPC_CheckPredicate, 37,
54297 OPC_MoveParent,
54298 OPC_CheckType, MVT::f16,
54299 OPC_Scope, 28,
54300 OPC_CheckPatternPredicate, 13,
54301 OPC_EmitConvertToTarget1,
54302 OPC_EmitNodeXForm, 19, 2,
54303 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54304 MVT::f32, 2, 0, 3,
54305 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVH),
54306 MVT::f32, 1, 4,
54307 OPC_EmitStringInteger32, ARM::HPRRegClassID,
54308 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54309 MVT::f16, 2, 5, 6,
54310 36,
54311 OPC_CheckPatternPredicate1,
54312 OPC_EmitStringInteger32, ARM::QPR_VFP2RegClassID,
54313 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54314 MVT::v4f32, 2, 0, 2,
54315 OPC_EmitConvertToTarget1,
54316 OPC_EmitNodeXForm, 19, 4,
54317 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54318 MVT::f32, 2, 3, 5,
54319 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVH),
54320 MVT::f32, 1, 6,
54321 OPC_EmitStringInteger32, ARM::HPRRegClassID,
54322 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54323 MVT::f16, 2, 7, 8,
54324 0,
54325 0,
54326 78,
54327 OPC_CheckChild0Type, MVT::v4f16,
54328 OPC_RecordChild1,
54329 OPC_MoveChild1,
54330 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54331 OPC_Scope, 26,
54332 OPC_CheckPredicate, 48,
54333 OPC_MoveParent,
54334 OPC_CheckType, MVT::f16,
54335 OPC_CheckPatternPredicate1,
54336 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
54337 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54338 MVT::v2f32, 2, 0, 2,
54339 OPC_EmitConvertToTarget1,
54340 OPC_EmitNodeXForm, 19, 4,
54341 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54342 MVT::f16, 2, 3, 5,
54343 41,
54344 OPC_CheckPredicate, 37,
54345 OPC_MoveParent,
54346 OPC_CheckType, MVT::f16,
54347 OPC_CheckPatternPredicate1,
54348 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
54349 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54350 MVT::v2f32, 2, 0, 2,
54351 OPC_EmitConvertToTarget1,
54352 OPC_EmitNodeXForm, 19, 4,
54353 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54354 MVT::f32, 2, 3, 5,
54355 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVH),
54356 MVT::f32, 1, 6,
54357 OPC_EmitStringInteger32, ARM::HPRRegClassID,
54358 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54359 MVT::f16, 2, 7, 8,
54360 0,
54361 36,
54362 OPC_RecordChild1,
54363 OPC_MoveChild1,
54364 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54365 OPC_MoveParent,
54366 OPC_CheckType, MVT::f64,
54367 OPC_Scope, 12,
54368 OPC_CheckPatternPredicate1,
54369 OPC_EmitConvertToTarget1,
54370 OPC_EmitNodeXForm, 20, 2,
54371 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54372 MVT::f64, 2, 0, 3,
54373 12,
54374 OPC_CheckPatternPredicate0,
54375 OPC_EmitConvertToTarget1,
54376 OPC_EmitNodeXForm, 20, 2,
54377 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54378 MVT::f64, 2, 0, 3,
54379 0,
54380 31,
54381 OPC_CheckChild0Type, MVT::v2f32,
54382 OPC_RecordChild1,
54383 OPC_MoveChild1,
54384 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54385 OPC_MoveParent,
54386 OPC_CheckType, MVT::f32,
54387 OPC_CheckPatternPredicate1,
54388 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
54389 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54390 MVT::v2f32, 2, 0, 2,
54391 OPC_EmitConvertToTarget1,
54392 OPC_EmitNodeXForm, 18, 4,
54393 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54394 MVT::f32, 2, 3, 5,
54395 56,
54396 OPC_CheckChild0Type, MVT::v4f32,
54397 OPC_RecordChild1,
54398 OPC_MoveChild1,
54399 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
54400 OPC_MoveParent,
54401 OPC_CheckType, MVT::f32,
54402 OPC_Scope, 21,
54403 OPC_CheckPatternPredicate1,
54404 OPC_EmitStringInteger32, ARM::QPR_VFP2RegClassID,
54405 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54406 MVT::v4f32, 2, 0, 2,
54407 OPC_EmitConvertToTarget1,
54408 OPC_EmitNodeXForm, 18, 4,
54409 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54410 MVT::f32, 2, 3, 5,
54411 21,
54412 OPC_CheckPatternPredicate0,
54413 OPC_EmitConvertToTarget1,
54414 OPC_EmitNodeXForm, 18, 2,
54415 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54416 MVT::f32, 2, 0, 3,
54417 OPC_EmitStringInteger32, ARM::SPRRegClassID,
54418 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54419 MVT::f32, 2, 4, 5,
54420 0,
54421 0,
54422 8|128,4, TARGET_VAL(ISD::FP_TO_SINT),
54423 OPC_Scope, 82|128,1,
54424 OPC_MoveChild0,
54425 OPC_SwitchOpcode , 66, TARGET_VAL(ISD::FROUND),
54426 OPC_RecordChild0,
54427 OPC_SwitchType , 19, MVT::f16,
54428 OPC_MoveParent,
54429 OPC_CheckTypeI32,
54430 OPC_CheckPatternPredicate, 13,
54431 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTASH),
54432 MVT::f32, 1, 0,
54433 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54434 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54435 MVT::i32, 2, 1, 2,
54436 19, MVT::f32,
54437 OPC_MoveParent,
54438 OPC_CheckTypeI32,
54439 OPC_CheckPatternPredicate, 25,
54440 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTASS),
54441 MVT::f32, 1, 0,
54442 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54443 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54444 MVT::i32, 2, 1, 2,
54445 19, MVT::f64,
54446 OPC_MoveParent,
54447 OPC_CheckTypeI32,
54448 OPC_CheckPatternPredicate, 22,
54449 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTASD),
54450 MVT::f32, 1, 0,
54451 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54452 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54453 MVT::i32, 2, 1, 2,
54454 0,
54455 66, TARGET_VAL(ISD::FCEIL),
54456 OPC_RecordChild0,
54457 OPC_SwitchType , 19, MVT::f16,
54458 OPC_MoveParent,
54459 OPC_CheckTypeI32,
54460 OPC_CheckPatternPredicate, 13,
54461 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTPSH),
54462 MVT::f32, 1, 0,
54463 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54464 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54465 MVT::i32, 2, 1, 2,
54466 19, MVT::f32,
54467 OPC_MoveParent,
54468 OPC_CheckTypeI32,
54469 OPC_CheckPatternPredicate, 25,
54470 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTPSS),
54471 MVT::f32, 1, 0,
54472 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54473 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54474 MVT::i32, 2, 1, 2,
54475 19, MVT::f64,
54476 OPC_MoveParent,
54477 OPC_CheckTypeI32,
54478 OPC_CheckPatternPredicate, 22,
54479 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTPSD),
54480 MVT::f32, 1, 0,
54481 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54482 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54483 MVT::i32, 2, 1, 2,
54484 0,
54485 66, TARGET_VAL(ISD::FFLOOR),
54486 OPC_RecordChild0,
54487 OPC_SwitchType , 19, MVT::f16,
54488 OPC_MoveParent,
54489 OPC_CheckTypeI32,
54490 OPC_CheckPatternPredicate, 13,
54491 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTMSH),
54492 MVT::f32, 1, 0,
54493 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54494 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54495 MVT::i32, 2, 1, 2,
54496 19, MVT::f32,
54497 OPC_MoveParent,
54498 OPC_CheckTypeI32,
54499 OPC_CheckPatternPredicate, 25,
54500 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTMSS),
54501 MVT::f32, 1, 0,
54502 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54503 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54504 MVT::i32, 2, 1, 2,
54505 19, MVT::f64,
54506 OPC_MoveParent,
54507 OPC_CheckTypeI32,
54508 OPC_CheckPatternPredicate, 22,
54509 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTMSD),
54510 MVT::f32, 1, 0,
54511 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54512 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54513 MVT::i32, 2, 1, 2,
54514 0,
54515 0,
54516 48|128,2,
54517 OPC_RecordChild0,
54518 OPC_Scope, 26,
54519 OPC_CheckChild0Type, MVT::f64,
54520 OPC_CheckTypeI32,
54521 OPC_CheckPatternPredicate, 18,
54522 OPC_EmitInteger32, 28,
54523 OPC_EmitRegisterI32, 0 ,
54524 OPC_EmitNode1None, TARGET_VAL(ARM::VTOSIZD),
54525 MVT::f32, 3, 0, 1, 2,
54526 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54527 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54528 MVT::i32, 2, 3, 4,
54529 68,
54530 OPC_CheckChild0Type, MVT::f32,
54531 OPC_CheckTypeI32,
54532 OPC_Scope, 23,
54533 OPC_CheckPatternPredicate, 26,
54534 OPC_EmitInteger32, 28,
54535 OPC_EmitRegisterI32, 0 ,
54536 OPC_EmitNode1None, TARGET_VAL(ARM::VTOSIZS),
54537 MVT::f32, 3, 0, 1, 2,
54538 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54539 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54540 MVT::i32, 2, 3, 4,
54541 38,
54542 OPC_CheckPatternPredicate, 42,
54543 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
54544 MVT::v2f32, 0,
54545 OPC_EmitStringInteger32, ARM::ssub_0,
54546 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
54547 MVT::v2f32, 3, 1, 0, 2,
54548 OPC_EmitInteger32, 28,
54549 OPC_EmitRegisterI32, 0 ,
54550 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTf2sd),
54551 MVT::v2f32, 3, 3, 4, 5,
54552 OPC_EmitStringInteger32, ARM::ssub_0,
54553 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54554 MVT::i32, 2, 6, 7,
54555 0,
54556 26,
54557 OPC_CheckChild0Type, MVT::f16,
54558 OPC_CheckTypeI32,
54559 OPC_CheckPatternPredicate, 26,
54560 OPC_EmitInteger32, 28,
54561 OPC_EmitRegisterI32, 0 ,
54562 OPC_EmitNode1None, TARGET_VAL(ARM::VTOSIZH),
54563 MVT::f32, 3, 0, 1, 2,
54564 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54565 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54566 MVT::i32, 2, 3, 4,
54567 17,
54568 OPC_CheckChild0Type, MVT::v2f32,
54569 OPC_CheckType, MVT::v2i32,
54570 OPC_CheckPatternPredicate1,
54571 OPC_EmitInteger32, 28,
54572 OPC_EmitRegisterI32, 0 ,
54573 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTf2sd),
54574 MVT::v2i32, 3, 0, 1, 2,
54575 69,
54576 OPC_CheckChild0Type, MVT::v4f32,
54577 OPC_SwitchType , 39, MVT::v4i32,
54578 OPC_Scope, 13,
54579 OPC_CheckPatternPredicate1,
54580 OPC_EmitInteger32, 28,
54581 OPC_EmitRegisterI32, 0 ,
54582 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTf2sq),
54583 MVT::v4i32, 3, 0, 1, 2,
54584 22,
54585 OPC_CheckPatternPredicate2,
54586 OPC_EmitInteger32, 0,
54587 OPC_EmitRegisterI32, 0 ,
54588 OPC_EmitRegisterI32, 0 ,
54589 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
54590 MVT::v4i32, 0,
54591 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32z),
54592 MVT::v4i32, 5, 0, 1, 2, 3, 4,
54593 0,
54594 22, MVT::v4i1,
54595 OPC_CheckPatternPredicate2,
54596 OPC_EmitRegisterI32, ARM::ZR,
54597 OPC_EmitInteger32, 2,
54598 OPC_EmitInteger32, 0,
54599 OPC_EmitRegisterI32, 0 ,
54600 OPC_EmitRegisterI32, 0 ,
54601 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
54602 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
54603 0,
54604 18,
54605 OPC_CheckChild0Type, MVT::v4f16,
54606 OPC_CheckType, MVT::v4i16,
54607 OPC_CheckPatternPredicate, 11,
54608 OPC_EmitInteger32, 28,
54609 OPC_EmitRegisterI32, 0 ,
54610 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTh2sd),
54611 MVT::v4i16, 3, 0, 1, 2,
54612 70,
54613 OPC_CheckChild0Type, MVT::v8f16,
54614 OPC_SwitchType , 40, MVT::v8i16,
54615 OPC_Scope, 14,
54616 OPC_CheckPatternPredicate, 11,
54617 OPC_EmitInteger32, 28,
54618 OPC_EmitRegisterI32, 0 ,
54619 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTh2sq),
54620 MVT::v8i16, 3, 0, 1, 2,
54621 22,
54622 OPC_CheckPatternPredicate2,
54623 OPC_EmitInteger32, 0,
54624 OPC_EmitRegisterI32, 0 ,
54625 OPC_EmitRegisterI32, 0 ,
54626 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
54627 MVT::v4i32, 0,
54628 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16z),
54629 MVT::v8i16, 5, 0, 1, 2, 3, 4,
54630 0,
54631 22, MVT::v8i1,
54632 OPC_CheckPatternPredicate2,
54633 OPC_EmitRegisterI32, ARM::ZR,
54634 OPC_EmitInteger32, 2,
54635 OPC_EmitInteger32, 0,
54636 OPC_EmitRegisterI32, 0 ,
54637 OPC_EmitRegisterI32, 0 ,
54638 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
54639 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
54640 0,
54641 0,
54642 0,
54643 8|128,4, TARGET_VAL(ISD::FP_TO_UINT),
54644 OPC_Scope, 82|128,1,
54645 OPC_MoveChild0,
54646 OPC_SwitchOpcode , 66, TARGET_VAL(ISD::FROUND),
54647 OPC_RecordChild0,
54648 OPC_SwitchType , 19, MVT::f16,
54649 OPC_MoveParent,
54650 OPC_CheckTypeI32,
54651 OPC_CheckPatternPredicate, 13,
54652 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTAUH),
54653 MVT::f32, 1, 0,
54654 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54655 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54656 MVT::i32, 2, 1, 2,
54657 19, MVT::f32,
54658 OPC_MoveParent,
54659 OPC_CheckTypeI32,
54660 OPC_CheckPatternPredicate, 25,
54661 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTAUS),
54662 MVT::f32, 1, 0,
54663 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54664 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54665 MVT::i32, 2, 1, 2,
54666 19, MVT::f64,
54667 OPC_MoveParent,
54668 OPC_CheckTypeI32,
54669 OPC_CheckPatternPredicate, 22,
54670 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTAUD),
54671 MVT::f32, 1, 0,
54672 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54673 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54674 MVT::i32, 2, 1, 2,
54675 0,
54676 66, TARGET_VAL(ISD::FCEIL),
54677 OPC_RecordChild0,
54678 OPC_SwitchType , 19, MVT::f16,
54679 OPC_MoveParent,
54680 OPC_CheckTypeI32,
54681 OPC_CheckPatternPredicate, 13,
54682 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTPUH),
54683 MVT::f32, 1, 0,
54684 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54685 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54686 MVT::i32, 2, 1, 2,
54687 19, MVT::f32,
54688 OPC_MoveParent,
54689 OPC_CheckTypeI32,
54690 OPC_CheckPatternPredicate, 25,
54691 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTPUS),
54692 MVT::f32, 1, 0,
54693 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54694 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54695 MVT::i32, 2, 1, 2,
54696 19, MVT::f64,
54697 OPC_MoveParent,
54698 OPC_CheckTypeI32,
54699 OPC_CheckPatternPredicate, 22,
54700 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTPUD),
54701 MVT::f32, 1, 0,
54702 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54703 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54704 MVT::i32, 2, 1, 2,
54705 0,
54706 66, TARGET_VAL(ISD::FFLOOR),
54707 OPC_RecordChild0,
54708 OPC_SwitchType , 19, MVT::f16,
54709 OPC_MoveParent,
54710 OPC_CheckTypeI32,
54711 OPC_CheckPatternPredicate, 13,
54712 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTMUH),
54713 MVT::f32, 1, 0,
54714 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54715 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54716 MVT::i32, 2, 1, 2,
54717 19, MVT::f32,
54718 OPC_MoveParent,
54719 OPC_CheckTypeI32,
54720 OPC_CheckPatternPredicate, 25,
54721 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTMUS),
54722 MVT::f32, 1, 0,
54723 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54724 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54725 MVT::i32, 2, 1, 2,
54726 19, MVT::f64,
54727 OPC_MoveParent,
54728 OPC_CheckTypeI32,
54729 OPC_CheckPatternPredicate, 22,
54730 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTMUD),
54731 MVT::f32, 1, 0,
54732 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54733 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54734 MVT::i32, 2, 1, 2,
54735 0,
54736 0,
54737 48|128,2,
54738 OPC_RecordChild0,
54739 OPC_Scope, 26,
54740 OPC_CheckChild0Type, MVT::f64,
54741 OPC_CheckTypeI32,
54742 OPC_CheckPatternPredicate, 18,
54743 OPC_EmitInteger32, 28,
54744 OPC_EmitRegisterI32, 0 ,
54745 OPC_EmitNode1None, TARGET_VAL(ARM::VTOUIZD),
54746 MVT::f32, 3, 0, 1, 2,
54747 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54748 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54749 MVT::i32, 2, 3, 4,
54750 68,
54751 OPC_CheckChild0Type, MVT::f32,
54752 OPC_CheckTypeI32,
54753 OPC_Scope, 23,
54754 OPC_CheckPatternPredicate, 26,
54755 OPC_EmitInteger32, 28,
54756 OPC_EmitRegisterI32, 0 ,
54757 OPC_EmitNode1None, TARGET_VAL(ARM::VTOUIZS),
54758 MVT::f32, 3, 0, 1, 2,
54759 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54760 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54761 MVT::i32, 2, 3, 4,
54762 38,
54763 OPC_CheckPatternPredicate, 42,
54764 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
54765 MVT::v2f32, 0,
54766 OPC_EmitStringInteger32, ARM::ssub_0,
54767 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
54768 MVT::v2f32, 3, 1, 0, 2,
54769 OPC_EmitInteger32, 28,
54770 OPC_EmitRegisterI32, 0 ,
54771 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTf2ud),
54772 MVT::v2f32, 3, 3, 4, 5,
54773 OPC_EmitStringInteger32, ARM::ssub_0,
54774 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
54775 MVT::i32, 2, 6, 7,
54776 0,
54777 26,
54778 OPC_CheckChild0Type, MVT::f16,
54779 OPC_CheckTypeI32,
54780 OPC_CheckPatternPredicate, 26,
54781 OPC_EmitInteger32, 28,
54782 OPC_EmitRegisterI32, 0 ,
54783 OPC_EmitNode1None, TARGET_VAL(ARM::VTOUIZH),
54784 MVT::f32, 3, 0, 1, 2,
54785 OPC_EmitStringInteger32, ARM::GPRRegClassID,
54786 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
54787 MVT::i32, 2, 3, 4,
54788 17,
54789 OPC_CheckChild0Type, MVT::v2f32,
54790 OPC_CheckType, MVT::v2i32,
54791 OPC_CheckPatternPredicate1,
54792 OPC_EmitInteger32, 28,
54793 OPC_EmitRegisterI32, 0 ,
54794 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTf2ud),
54795 MVT::v2i32, 3, 0, 1, 2,
54796 69,
54797 OPC_CheckChild0Type, MVT::v4f32,
54798 OPC_SwitchType , 39, MVT::v4i32,
54799 OPC_Scope, 13,
54800 OPC_CheckPatternPredicate1,
54801 OPC_EmitInteger32, 28,
54802 OPC_EmitRegisterI32, 0 ,
54803 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTf2uq),
54804 MVT::v4i32, 3, 0, 1, 2,
54805 22,
54806 OPC_CheckPatternPredicate2,
54807 OPC_EmitInteger32, 0,
54808 OPC_EmitRegisterI32, 0 ,
54809 OPC_EmitRegisterI32, 0 ,
54810 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
54811 MVT::v4i32, 0,
54812 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32z),
54813 MVT::v4i32, 5, 0, 1, 2, 3, 4,
54814 0,
54815 22, MVT::v4i1,
54816 OPC_CheckPatternPredicate2,
54817 OPC_EmitRegisterI32, ARM::ZR,
54818 OPC_EmitInteger32, 2,
54819 OPC_EmitInteger32, 0,
54820 OPC_EmitRegisterI32, 0 ,
54821 OPC_EmitRegisterI32, 0 ,
54822 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
54823 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
54824 0,
54825 18,
54826 OPC_CheckChild0Type, MVT::v4f16,
54827 OPC_CheckType, MVT::v4i16,
54828 OPC_CheckPatternPredicate, 11,
54829 OPC_EmitInteger32, 28,
54830 OPC_EmitRegisterI32, 0 ,
54831 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTh2ud),
54832 MVT::v4i16, 3, 0, 1, 2,
54833 70,
54834 OPC_CheckChild0Type, MVT::v8f16,
54835 OPC_SwitchType , 40, MVT::v8i16,
54836 OPC_Scope, 14,
54837 OPC_CheckPatternPredicate, 11,
54838 OPC_EmitInteger32, 28,
54839 OPC_EmitRegisterI32, 0 ,
54840 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTh2uq),
54841 MVT::v8i16, 3, 0, 1, 2,
54842 22,
54843 OPC_CheckPatternPredicate2,
54844 OPC_EmitInteger32, 0,
54845 OPC_EmitRegisterI32, 0 ,
54846 OPC_EmitRegisterI32, 0 ,
54847 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
54848 MVT::v4i32, 0,
54849 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16z),
54850 MVT::v8i16, 5, 0, 1, 2, 3, 4,
54851 0,
54852 22, MVT::v8i1,
54853 OPC_CheckPatternPredicate2,
54854 OPC_EmitRegisterI32, ARM::ZR,
54855 OPC_EmitInteger32, 2,
54856 OPC_EmitInteger32, 0,
54857 OPC_EmitRegisterI32, 0 ,
54858 OPC_EmitRegisterI32, 0 ,
54859 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
54860 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
54861 0,
54862 0,
54863 0,
54864 49|128,2, TARGET_VAL(ISD::Constant),
54865 OPC_RecordNode,
54866 OPC_CheckTypeI32,
54867 OPC_Scope, 19,
54868 OPC_CheckPredicate, 13,
54869 OPC_CheckPatternPredicate4,
54870 OPC_EmitConvertToTarget0,
54871 OPC_EmitInteger32, 28,
54872 OPC_EmitRegisterI32, 0 ,
54873 OPC_EmitRegisterI32, 0 ,
54874 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MOVi),
54875 MVT::i32, 4, 1, 2, 3, 4,
54876 19,
54877 OPC_CheckPredicate, 20,
54878 OPC_CheckPatternPredicate3,
54879 OPC_EmitConvertToTarget0,
54880 OPC_EmitInteger32, 28,
54881 OPC_EmitRegisterI32, 0 ,
54882 OPC_EmitRegisterI32, 0 ,
54883 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVi),
54884 MVT::i32, 4, 1, 2, 3, 4,
54885 17,
54886 OPC_CheckPredicate, 51,
54887 OPC_CheckPatternPredicate, 32,
54888 OPC_EmitConvertToTarget0,
54889 OPC_EmitInteger32, 28,
54890 OPC_EmitRegisterI32, 0 ,
54891 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVi16),
54892 MVT::i32, 3, 1, 2, 3,
54893 22,
54894 OPC_CheckPredicate, 64,
54895 OPC_CheckPatternPredicate3,
54896 OPC_EmitConvertToTarget0,
54897 OPC_EmitNodeXForm, 9, 1,
54898 OPC_EmitInteger32, 28,
54899 OPC_EmitRegisterI32, 0 ,
54900 OPC_EmitRegisterI32, 0 ,
54901 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVNi),
54902 MVT::i32, 4, 2, 3, 4, 5,
54903 10,
54904 OPC_CheckPredicate, 107,
54905 OPC_CheckPatternPredicate3,
54906 OPC_EmitConvertToTarget0,
54907 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MOVi32imm),
54908 MVT::i32, 1, 1,
54909 20,
54910 OPC_CheckPredicate, 47,
54911 OPC_CheckPatternPredicate, 10,
54912 OPC_EmitRegisterI32, ARM::CPSR,
54913 OPC_EmitConvertToTarget0,
54914 OPC_EmitInteger32, 28,
54915 OPC_EmitRegisterI32, 0 ,
54916 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tMOVi8),
54917 MVT::i32, 4, 1, 2, 3, 4,
54918 17,
54919 OPC_CheckPredicate, 51,
54920 OPC_CheckPatternPredicate, 31,
54921 OPC_EmitConvertToTarget0,
54922 OPC_EmitInteger32, 28,
54923 OPC_EmitRegisterI32, 0 ,
54924 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MOVi16),
54925 MVT::i32, 3, 1, 2, 3,
54926 22,
54927 OPC_CheckPredicate, 56,
54928 OPC_CheckPatternPredicate4,
54929 OPC_EmitConvertToTarget0,
54930 OPC_EmitNodeXForm, 1, 1,
54931 OPC_EmitInteger32, 28,
54932 OPC_EmitRegisterI32, 0 ,
54933 OPC_EmitRegisterI32, 0 ,
54934 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MVNi),
54935 MVT::i32, 4, 2, 3, 4, 5,
54936 43,
54937 OPC_CheckPredicate, 108,
54938 OPC_CheckPatternPredicate, 10,
54939 OPC_EmitRegisterI32, ARM::CPSR,
54940 OPC_EmitRegisterI32, ARM::CPSR,
54941 OPC_EmitConvertToTarget0,
54942 OPC_EmitNodeXForm, 21, 3,
54943 OPC_EmitInteger32, 28,
54944 OPC_EmitRegisterI32, 0 ,
54945 OPC_EmitNode1None, TARGET_VAL(ARM::tMOVi8),
54946 MVT::i32, 4, 2, 4, 5, 6,
54947 OPC_EmitConvertToTarget0,
54948 OPC_EmitNodeXForm, 22, 8,
54949 OPC_EmitInteger32, 28,
54950 OPC_EmitRegisterI32, 0 ,
54951 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tLSLri),
54952 MVT::i32, 5, 1, 7, 9, 10, 11,
54953 38,
54954 OPC_CheckPredicate, 109,
54955 OPC_CheckPatternPredicate, 10,
54956 OPC_EmitRegisterI32, ARM::CPSR,
54957 OPC_EmitRegisterI32, ARM::CPSR,
54958 OPC_EmitConvertToTarget0,
54959 OPC_EmitNodeXForm, 9, 3,
54960 OPC_EmitInteger32, 28,
54961 OPC_EmitRegisterI32, 0 ,
54962 OPC_EmitNode1None, TARGET_VAL(ARM::tMOVi8),
54963 MVT::i32, 4, 2, 4, 5, 6,
54964 OPC_EmitInteger32, 28,
54965 OPC_EmitRegisterI32, 0 ,
54966 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tMVN),
54967 MVT::i32, 4, 1, 7, 8, 9,
54968 42,
54969 OPC_CheckPredicate, 110,
54970 OPC_CheckPatternPredicate, 10,
54971 OPC_EmitRegisterI32, ARM::CPSR,
54972 OPC_EmitRegisterI32, ARM::CPSR,
54973 OPC_EmitInteger32, 126|128,3,
54974 OPC_EmitInteger32, 28,
54975 OPC_EmitRegisterI32, 0 ,
54976 OPC_EmitNode1None, TARGET_VAL(ARM::tMOVi8),
54977 MVT::i32, 4, 2, 3, 4, 5,
54978 OPC_EmitConvertToTarget0,
54979 OPC_EmitNodeXForm, 23, 7,
54980 OPC_EmitInteger32, 28,
54981 OPC_EmitRegisterI32, 0 ,
54982 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tADDi8),
54983 MVT::i32, 5, 1, 6, 8, 9, 10,
54984 10,
54985 OPC_CheckPatternPredicate, 132,
54986 OPC_EmitConvertToTarget0,
54987 OPC_MorphNodeTo2None, TARGET_VAL(ARM::tMOVi32imm),
54988 MVT::i32, MVT::i32, 1, 1,
54989 9,
54990 OPC_CheckPatternPredicate, 133,
54991 OPC_EmitConvertToTarget0,
54992 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MOVi32imm),
54993 MVT::i32, 1, 1,
54994 0,
54995 27, TARGET_VAL(ISD::TRAP),
54996 OPC_RecordNode,
54997 OPC_Scope, 7,
54998 OPC_CheckPatternPredicate, 134,
54999 OPC_EmitMergeInputChains1_0,
55000 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::TRAPNaCl),
55001 0,
55002 7,
55003 OPC_CheckPatternPredicate, 135,
55004 OPC_EmitMergeInputChains1_0,
55005 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::TRAP),
55006 0,
55007 7,
55008 OPC_CheckPatternPredicate, 41,
55009 OPC_EmitMergeInputChains1_0,
55010 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::tTRAP),
55011 0,
55012 0,
55013 49, TARGET_VAL(ISD::DEBUGTRAP),
55014 OPC_RecordNode,
55015 OPC_Scope, 10,
55016 OPC_CheckPatternPredicate, 81,
55017 OPC_EmitMergeInputChains1_0,
55018 OPC_EmitInteger32, 0,
55019 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::BKPT),
55020 1, 1,
55021 11,
55022 OPC_CheckPatternPredicate, 136,
55023 OPC_EmitMergeInputChains1_0,
55024 OPC_EmitInteger32, 124|128,3,
55025 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::UDF),
55026 1, 1,
55027 10,
55028 OPC_CheckPatternPredicate, 137,
55029 OPC_EmitMergeInputChains1_0,
55030 OPC_EmitInteger32, 0,
55031 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::tBKPT),
55032 1, 1,
55033 11,
55034 OPC_CheckPatternPredicate, 138,
55035 OPC_EmitMergeInputChains1_0,
55036 OPC_EmitInteger32, 124|128,3,
55037 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::tUDF),
55038 1, 1,
55039 0,
55040 49, TARGET_VAL(ARMISD::RET_GLUE),
55041 OPC_RecordNode,
55042 OPC_CaptureGlueInput,
55043 OPC_Scope, 14,
55044 OPC_CheckPatternPredicate, 82,
55045 OPC_EmitMergeInputChains1_0,
55046 OPC_EmitInteger32, 28,
55047 OPC_EmitRegisterI32, 0 ,
55048 OPC_MorphNodeTo0, TARGET_VAL(ARM::BX_RET), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic0,
55049 2, 1, 2,
55050 14,
55051 OPC_CheckPatternPredicate, 83,
55052 OPC_EmitMergeInputChains1_0,
55053 OPC_EmitInteger32, 28,
55054 OPC_EmitRegisterI32, 0 ,
55055 OPC_MorphNodeTo0, TARGET_VAL(ARM::MOVPCLR), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic0,
55056 2, 1, 2,
55057 14,
55058 OPC_CheckPatternPredicate, 41,
55059 OPC_EmitMergeInputChains1_0,
55060 OPC_EmitInteger32, 28,
55061 OPC_EmitRegisterI32, 0 ,
55062 OPC_MorphNodeTo0, TARGET_VAL(ARM::tBX_RET), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic0,
55063 2, 1, 2,
55064 0,
55065 38, TARGET_VAL(ISD::BRIND),
55066 OPC_RecordNode,
55067 OPC_RecordChild1,
55068 OPC_CheckChild1TypeI32,
55069 OPC_Scope, 8,
55070 OPC_CheckPatternPredicate, 82,
55071 OPC_EmitMergeInputChains1_0,
55072 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::BX),
55073 1, 1,
55074 8,
55075 OPC_CheckPatternPredicate, 83,
55076 OPC_EmitMergeInputChains1_0,
55077 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::MOVPCRX),
55078 1, 1,
55079 14,
55080 OPC_CheckPatternPredicate, 41,
55081 OPC_EmitMergeInputChains1_0,
55082 OPC_EmitInteger32, 28,
55083 OPC_EmitRegisterI32, 0 ,
55084 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::tBRIND),
55085 3, 1, 2, 3,
55086 0,
55087 47, TARGET_VAL(ISD::BR),
55088 OPC_RecordNode,
55089 OPC_RecordChild1,
55090 OPC_MoveChild1,
55091 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
55092 OPC_MoveParent,
55093 OPC_Scope, 7,
55094 OPC_CheckPatternPredicate3,
55095 OPC_EmitMergeInputChains1_0,
55096 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::B),
55097 1, 1,
55098 14,
55099 OPC_CheckPatternPredicate, 10,
55100 OPC_EmitMergeInputChains1_0,
55101 OPC_EmitInteger32, 28,
55102 OPC_EmitRegisterI32, 0 ,
55103 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::tB),
55104 3, 1, 2, 3,
55105 14,
55106 OPC_CheckPatternPredicate, 31,
55107 OPC_EmitMergeInputChains1_0,
55108 OPC_EmitInteger32, 28,
55109 OPC_EmitRegisterI32, 0 ,
55110 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::t2B),
55111 3, 1, 2, 3,
55112 0,
55113 30, TARGET_VAL(ARMISD::RRX),
55114 OPC_CaptureGlueInput,
55115 OPC_RecordChild0,
55116 OPC_CheckTypeI32,
55117 OPC_Scope, 7,
55118 OPC_CheckPatternPredicate3,
55119 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::RRX),
55120 MVT::i32, 1, 0,
55121 16,
55122 OPC_CheckPatternPredicate4,
55123 OPC_EmitInteger32, 28,
55124 OPC_EmitRegisterI32, 0 ,
55125 OPC_EmitRegisterI32, 0 ,
55126 OPC_MorphNodeTo1GlueInput, TARGET_VAL(ARM::t2RRX),
55127 MVT::i32, 4, 0, 1, 2, 3,
55128 0,
55129 28, TARGET_VAL(ARMISD::SRL_GLUE),
55130 OPC_RecordChild0,
55131 OPC_CheckTypeI32,
55132 OPC_Scope, 8,
55133 OPC_CheckPatternPredicate3,
55134 OPC_MorphNodeTo2GlueOutput, TARGET_VAL(ARM::MOVsrl_glue),
55135 MVT::i32, MVT::i32, 1, 0,
55136 14,
55137 OPC_CheckPatternPredicate4,
55138 OPC_EmitInteger32, 28,
55139 OPC_EmitRegisterI32, 0 ,
55140 OPC_MorphNodeTo2GlueOutput, TARGET_VAL(ARM::t2MOVsrl_glue),
55141 MVT::i32, MVT::i32, 3, 0, 1, 2,
55142 0,
55143 28, TARGET_VAL(ARMISD::SRA_GLUE),
55144 OPC_RecordChild0,
55145 OPC_CheckTypeI32,
55146 OPC_Scope, 8,
55147 OPC_CheckPatternPredicate3,
55148 OPC_MorphNodeTo2GlueOutput, TARGET_VAL(ARM::MOVsra_glue),
55149 MVT::i32, MVT::i32, 1, 0,
55150 14,
55151 OPC_CheckPatternPredicate4,
55152 OPC_EmitInteger32, 28,
55153 OPC_EmitRegisterI32, 0 ,
55154 OPC_MorphNodeTo2GlueOutput, TARGET_VAL(ARM::t2MOVsra_glue),
55155 MVT::i32, MVT::i32, 3, 0, 1, 2,
55156 0,
55157 35, TARGET_VAL(ARMISD::QADD8b),
55158 OPC_RecordChild0,
55159 OPC_RecordChild1,
55160 OPC_Scope, 15,
55161 OPC_CheckPatternPredicate, 9,
55162 OPC_EmitInteger32, 28,
55163 OPC_EmitRegisterI32, 0 ,
55164 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QADD8),
55165 MVT::i32, 4, 0, 1, 2, 3,
55166 14,
55167 OPC_CheckPatternPredicate5,
55168 OPC_EmitInteger32, 28,
55169 OPC_EmitRegisterI32, 0 ,
55170 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QADD8),
55171 MVT::i32, 4, 0, 1, 2, 3,
55172 0,
55173 35, TARGET_VAL(ARMISD::QSUB8b),
55174 OPC_RecordChild0,
55175 OPC_RecordChild1,
55176 OPC_Scope, 15,
55177 OPC_CheckPatternPredicate, 9,
55178 OPC_EmitInteger32, 28,
55179 OPC_EmitRegisterI32, 0 ,
55180 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QSUB8),
55181 MVT::i32, 4, 0, 1, 2, 3,
55182 14,
55183 OPC_CheckPatternPredicate5,
55184 OPC_EmitInteger32, 28,
55185 OPC_EmitRegisterI32, 0 ,
55186 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QSUB8),
55187 MVT::i32, 4, 0, 1, 2, 3,
55188 0,
55189 35, TARGET_VAL(ARMISD::QADD16b),
55190 OPC_RecordChild0,
55191 OPC_RecordChild1,
55192 OPC_Scope, 15,
55193 OPC_CheckPatternPredicate, 9,
55194 OPC_EmitInteger32, 28,
55195 OPC_EmitRegisterI32, 0 ,
55196 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QADD16),
55197 MVT::i32, 4, 0, 1, 2, 3,
55198 14,
55199 OPC_CheckPatternPredicate5,
55200 OPC_EmitInteger32, 28,
55201 OPC_EmitRegisterI32, 0 ,
55202 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QADD16),
55203 MVT::i32, 4, 0, 1, 2, 3,
55204 0,
55205 35, TARGET_VAL(ARMISD::QSUB16b),
55206 OPC_RecordChild0,
55207 OPC_RecordChild1,
55208 OPC_Scope, 15,
55209 OPC_CheckPatternPredicate, 9,
55210 OPC_EmitInteger32, 28,
55211 OPC_EmitRegisterI32, 0 ,
55212 OPC_MorphNodeTo1None, TARGET_VAL(ARM::QSUB16),
55213 MVT::i32, 4, 0, 1, 2, 3,
55214 14,
55215 OPC_CheckPatternPredicate5,
55216 OPC_EmitInteger32, 28,
55217 OPC_EmitRegisterI32, 0 ,
55218 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2QSUB16),
55219 MVT::i32, 4, 0, 1, 2, 3,
55220 0,
55221 35, TARGET_VAL(ARMISD::UQADD8b),
55222 OPC_RecordChild0,
55223 OPC_RecordChild1,
55224 OPC_Scope, 15,
55225 OPC_CheckPatternPredicate, 9,
55226 OPC_EmitInteger32, 28,
55227 OPC_EmitRegisterI32, 0 ,
55228 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UQADD8),
55229 MVT::i32, 4, 0, 1, 2, 3,
55230 14,
55231 OPC_CheckPatternPredicate5,
55232 OPC_EmitInteger32, 28,
55233 OPC_EmitRegisterI32, 0 ,
55234 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UQADD8),
55235 MVT::i32, 4, 0, 1, 2, 3,
55236 0,
55237 35, TARGET_VAL(ARMISD::UQSUB8b),
55238 OPC_RecordChild0,
55239 OPC_RecordChild1,
55240 OPC_Scope, 15,
55241 OPC_CheckPatternPredicate, 9,
55242 OPC_EmitInteger32, 28,
55243 OPC_EmitRegisterI32, 0 ,
55244 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UQSUB8),
55245 MVT::i32, 4, 0, 1, 2, 3,
55246 14,
55247 OPC_CheckPatternPredicate5,
55248 OPC_EmitInteger32, 28,
55249 OPC_EmitRegisterI32, 0 ,
55250 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UQSUB8),
55251 MVT::i32, 4, 0, 1, 2, 3,
55252 0,
55253 35, TARGET_VAL(ARMISD::UQADD16b),
55254 OPC_RecordChild0,
55255 OPC_RecordChild1,
55256 OPC_Scope, 15,
55257 OPC_CheckPatternPredicate, 9,
55258 OPC_EmitInteger32, 28,
55259 OPC_EmitRegisterI32, 0 ,
55260 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UQADD16),
55261 MVT::i32, 4, 0, 1, 2, 3,
55262 14,
55263 OPC_CheckPatternPredicate5,
55264 OPC_EmitInteger32, 28,
55265 OPC_EmitRegisterI32, 0 ,
55266 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UQADD16),
55267 MVT::i32, 4, 0, 1, 2, 3,
55268 0,
55269 35, TARGET_VAL(ARMISD::UQSUB16b),
55270 OPC_RecordChild0,
55271 OPC_RecordChild1,
55272 OPC_Scope, 15,
55273 OPC_CheckPatternPredicate, 9,
55274 OPC_EmitInteger32, 28,
55275 OPC_EmitRegisterI32, 0 ,
55276 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UQSUB16),
55277 MVT::i32, 4, 0, 1, 2, 3,
55278 14,
55279 OPC_CheckPatternPredicate5,
55280 OPC_EmitInteger32, 28,
55281 OPC_EmitRegisterI32, 0 ,
55282 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UQSUB16),
55283 MVT::i32, 4, 0, 1, 2, 3,
55284 0,
55285 61, TARGET_VAL(ISD::SMUL_LOHI),
55286 OPC_RecordChild0,
55287 OPC_RecordChild1,
55288 OPC_CheckTypeI32,
55289 OPC_Scope, 19,
55290 OPC_CheckPatternPredicate, 9,
55291 OPC_EmitInteger32, 28,
55292 OPC_EmitRegisterI32, 0 ,
55293 OPC_EmitRegisterI32, 0 ,
55294 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SMULL),
55295 MVT::i32, MVT::i32, 5, 0, 1, 2, 3, 4,
55296 19,
55297 OPC_CheckPatternPredicate, 66,
55298 OPC_EmitInteger32, 28,
55299 OPC_EmitRegisterI32, 0 ,
55300 OPC_EmitRegisterI32, 0 ,
55301 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SMULLv5),
55302 MVT::i32, MVT::i32, 5, 0, 1, 2, 3, 4,
55303 15,
55304 OPC_CheckPatternPredicate4,
55305 OPC_EmitInteger32, 28,
55306 OPC_EmitRegisterI32, 0 ,
55307 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SMULL),
55308 MVT::i32, MVT::i32, 4, 0, 1, 2, 3,
55309 0,
55310 61, TARGET_VAL(ISD::UMUL_LOHI),
55311 OPC_RecordChild0,
55312 OPC_RecordChild1,
55313 OPC_CheckTypeI32,
55314 OPC_Scope, 19,
55315 OPC_CheckPatternPredicate, 9,
55316 OPC_EmitInteger32, 28,
55317 OPC_EmitRegisterI32, 0 ,
55318 OPC_EmitRegisterI32, 0 ,
55319 OPC_MorphNodeTo2None, TARGET_VAL(ARM::UMULL),
55320 MVT::i32, MVT::i32, 5, 0, 1, 2, 3, 4,
55321 19,
55322 OPC_CheckPatternPredicate, 66,
55323 OPC_EmitInteger32, 28,
55324 OPC_EmitRegisterI32, 0 ,
55325 OPC_EmitRegisterI32, 0 ,
55326 OPC_MorphNodeTo2None, TARGET_VAL(ARM::UMULLv5),
55327 MVT::i32, MVT::i32, 5, 0, 1, 2, 3, 4,
55328 15,
55329 OPC_CheckPatternPredicate4,
55330 OPC_EmitInteger32, 28,
55331 OPC_EmitRegisterI32, 0 ,
55332 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2UMULL),
55333 MVT::i32, MVT::i32, 4, 0, 1, 2, 3,
55334 0,
55335 114, TARGET_VAL(ISD::MULHS),
55336 OPC_RecordChild0,
55337 OPC_RecordChild1,
55338 OPC_SwitchType , 33, MVT::i32,
55339 OPC_Scope, 15,
55340 OPC_CheckPatternPredicate, 9,
55341 OPC_EmitInteger32, 28,
55342 OPC_EmitRegisterI32, 0 ,
55343 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMMUL),
55344 MVT::i32, 4, 0, 1, 2, 3,
55345 14,
55346 OPC_CheckPatternPredicate5,
55347 OPC_EmitInteger32, 28,
55348 OPC_EmitRegisterI32, 0 ,
55349 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMMUL),
55350 MVT::i32, 4, 0, 1, 2, 3,
55351 0,
55352 23, MVT::v16i8,
55353 OPC_CheckPatternPredicate0,
55354 OPC_EmitInteger32, 0,
55355 OPC_EmitRegisterI32, 0 ,
55356 OPC_EmitRegisterI32, 0 ,
55357 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
55358 MVT::v4i32, 0,
55359 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs8),
55360 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
55361 23, MVT::v8i16,
55362 OPC_CheckPatternPredicate0,
55363 OPC_EmitInteger32, 0,
55364 OPC_EmitRegisterI32, 0 ,
55365 OPC_EmitRegisterI32, 0 ,
55366 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
55367 MVT::v4i32, 0,
55368 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs16),
55369 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
55370 23, MVT::v4i32,
55371 OPC_CheckPatternPredicate0,
55372 OPC_EmitInteger32, 0,
55373 OPC_EmitRegisterI32, 0 ,
55374 OPC_EmitRegisterI32, 0 ,
55375 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
55376 MVT::v4i32, 0,
55377 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs32),
55378 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
55379 0,
55380 39, TARGET_VAL(ARMISD::SMMLSR),
55381 OPC_RecordChild0,
55382 OPC_RecordChild1,
55383 OPC_RecordChild2,
55384 OPC_Scope, 16,
55385 OPC_CheckPatternPredicate, 9,
55386 OPC_EmitInteger32, 28,
55387 OPC_EmitRegisterI32, 0 ,
55388 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMMLSR),
55389 MVT::i32, 5, 0, 1, 2, 3, 4,
55390 16,
55391 OPC_CheckPatternPredicate, 19,
55392 OPC_EmitInteger32, 28,
55393 OPC_EmitRegisterI32, 0 ,
55394 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMMLSR),
55395 MVT::i32, 5, 0, 1, 2, 3, 4,
55396 0,
55397 36, TARGET_VAL(ARMISD::SMULWB),
55398 OPC_RecordChild0,
55399 OPC_RecordChild1,
55400 OPC_CheckTypeI32,
55401 OPC_Scope, 15,
55402 OPC_CheckPatternPredicate, 14,
55403 OPC_EmitInteger32, 28,
55404 OPC_EmitRegisterI32, 0 ,
55405 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULWB),
55406 MVT::i32, 4, 0, 1, 2, 3,
55407 14,
55408 OPC_CheckPatternPredicate5,
55409 OPC_EmitInteger32, 28,
55410 OPC_EmitRegisterI32, 0 ,
55411 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULWB),
55412 MVT::i32, 4, 0, 1, 2, 3,
55413 0,
55414 36, TARGET_VAL(ARMISD::SMULWT),
55415 OPC_RecordChild0,
55416 OPC_RecordChild1,
55417 OPC_CheckTypeI32,
55418 OPC_Scope, 15,
55419 OPC_CheckPatternPredicate, 14,
55420 OPC_EmitInteger32, 28,
55421 OPC_EmitRegisterI32, 0 ,
55422 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SMULWT),
55423 MVT::i32, 4, 0, 1, 2, 3,
55424 14,
55425 OPC_CheckPatternPredicate5,
55426 OPC_EmitInteger32, 28,
55427 OPC_EmitRegisterI32, 0 ,
55428 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SMULWT),
55429 MVT::i32, 4, 0, 1, 2, 3,
55430 0,
55431 43, TARGET_VAL(ARMISD::SMLALBB),
55432 OPC_RecordChild0,
55433 OPC_RecordChild1,
55434 OPC_RecordChild2,
55435 OPC_RecordChild3,
55436 OPC_Scope, 18,
55437 OPC_CheckPatternPredicate, 14,
55438 OPC_EmitInteger32, 28,
55439 OPC_EmitRegisterI32, 0 ,
55440 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SMLALBB),
55441 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55442 17,
55443 OPC_CheckPatternPredicate5,
55444 OPC_EmitInteger32, 28,
55445 OPC_EmitRegisterI32, 0 ,
55446 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SMLALBB),
55447 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55448 0,
55449 43, TARGET_VAL(ARMISD::SMLALBT),
55450 OPC_RecordChild0,
55451 OPC_RecordChild1,
55452 OPC_RecordChild2,
55453 OPC_RecordChild3,
55454 OPC_Scope, 18,
55455 OPC_CheckPatternPredicate, 14,
55456 OPC_EmitInteger32, 28,
55457 OPC_EmitRegisterI32, 0 ,
55458 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SMLALBT),
55459 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55460 17,
55461 OPC_CheckPatternPredicate5,
55462 OPC_EmitInteger32, 28,
55463 OPC_EmitRegisterI32, 0 ,
55464 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SMLALBT),
55465 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55466 0,
55467 43, TARGET_VAL(ARMISD::SMLALTB),
55468 OPC_RecordChild0,
55469 OPC_RecordChild1,
55470 OPC_RecordChild2,
55471 OPC_RecordChild3,
55472 OPC_Scope, 18,
55473 OPC_CheckPatternPredicate, 14,
55474 OPC_EmitInteger32, 28,
55475 OPC_EmitRegisterI32, 0 ,
55476 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SMLALTB),
55477 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55478 17,
55479 OPC_CheckPatternPredicate5,
55480 OPC_EmitInteger32, 28,
55481 OPC_EmitRegisterI32, 0 ,
55482 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SMLALTB),
55483 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55484 0,
55485 43, TARGET_VAL(ARMISD::SMLALTT),
55486 OPC_RecordChild0,
55487 OPC_RecordChild1,
55488 OPC_RecordChild2,
55489 OPC_RecordChild3,
55490 OPC_Scope, 18,
55491 OPC_CheckPatternPredicate, 14,
55492 OPC_EmitInteger32, 28,
55493 OPC_EmitRegisterI32, 0 ,
55494 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SMLALTT),
55495 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55496 17,
55497 OPC_CheckPatternPredicate5,
55498 OPC_EmitInteger32, 28,
55499 OPC_EmitRegisterI32, 0 ,
55500 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SMLALTT),
55501 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55502 0,
55503 43, TARGET_VAL(ARMISD::SMLALD),
55504 OPC_RecordChild0,
55505 OPC_RecordChild1,
55506 OPC_RecordChild2,
55507 OPC_RecordChild3,
55508 OPC_Scope, 18,
55509 OPC_CheckPatternPredicate, 9,
55510 OPC_EmitInteger32, 28,
55511 OPC_EmitRegisterI32, 0 ,
55512 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SMLALD),
55513 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55514 17,
55515 OPC_CheckPatternPredicate5,
55516 OPC_EmitInteger32, 28,
55517 OPC_EmitRegisterI32, 0 ,
55518 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SMLALD),
55519 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55520 0,
55521 43, TARGET_VAL(ARMISD::SMLALDX),
55522 OPC_RecordChild0,
55523 OPC_RecordChild1,
55524 OPC_RecordChild2,
55525 OPC_RecordChild3,
55526 OPC_Scope, 18,
55527 OPC_CheckPatternPredicate, 9,
55528 OPC_EmitInteger32, 28,
55529 OPC_EmitRegisterI32, 0 ,
55530 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SMLALDX),
55531 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55532 17,
55533 OPC_CheckPatternPredicate5,
55534 OPC_EmitInteger32, 28,
55535 OPC_EmitRegisterI32, 0 ,
55536 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SMLALDX),
55537 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55538 0,
55539 43, TARGET_VAL(ARMISD::SMLSLD),
55540 OPC_RecordChild0,
55541 OPC_RecordChild1,
55542 OPC_RecordChild2,
55543 OPC_RecordChild3,
55544 OPC_Scope, 18,
55545 OPC_CheckPatternPredicate, 9,
55546 OPC_EmitInteger32, 28,
55547 OPC_EmitRegisterI32, 0 ,
55548 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SMLSLD),
55549 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55550 17,
55551 OPC_CheckPatternPredicate5,
55552 OPC_EmitInteger32, 28,
55553 OPC_EmitRegisterI32, 0 ,
55554 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SMLSLD),
55555 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55556 0,
55557 43, TARGET_VAL(ARMISD::SMLSLDX),
55558 OPC_RecordChild0,
55559 OPC_RecordChild1,
55560 OPC_RecordChild2,
55561 OPC_RecordChild3,
55562 OPC_Scope, 18,
55563 OPC_CheckPatternPredicate, 9,
55564 OPC_EmitInteger32, 28,
55565 OPC_EmitRegisterI32, 0 ,
55566 OPC_MorphNodeTo2None, TARGET_VAL(ARM::SMLSLDX),
55567 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55568 17,
55569 OPC_CheckPatternPredicate5,
55570 OPC_EmitInteger32, 28,
55571 OPC_EmitRegisterI32, 0 ,
55572 OPC_MorphNodeTo2None, TARGET_VAL(ARM::t2SMLSLDX),
55573 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
55574 0,
55575 37, TARGET_VAL(ISD::SDIV),
55576 OPC_RecordChild0,
55577 OPC_RecordChild1,
55578 OPC_CheckTypeI32,
55579 OPC_Scope, 15,
55580 OPC_CheckPatternPredicate, 103,
55581 OPC_EmitInteger32, 28,
55582 OPC_EmitRegisterI32, 0 ,
55583 OPC_MorphNodeTo1None, TARGET_VAL(ARM::SDIV),
55584 MVT::i32, 4, 0, 1, 2, 3,
55585 15,
55586 OPC_CheckPatternPredicate, 104,
55587 OPC_EmitInteger32, 28,
55588 OPC_EmitRegisterI32, 0 ,
55589 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2SDIV),
55590 MVT::i32, 4, 0, 1, 2, 3,
55591 0,
55592 37, TARGET_VAL(ISD::UDIV),
55593 OPC_RecordChild0,
55594 OPC_RecordChild1,
55595 OPC_CheckTypeI32,
55596 OPC_Scope, 15,
55597 OPC_CheckPatternPredicate, 103,
55598 OPC_EmitInteger32, 28,
55599 OPC_EmitRegisterI32, 0 ,
55600 OPC_MorphNodeTo1None, TARGET_VAL(ARM::UDIV),
55601 MVT::i32, 4, 0, 1, 2, 3,
55602 15,
55603 OPC_CheckPatternPredicate, 104,
55604 OPC_EmitInteger32, 28,
55605 OPC_EmitRegisterI32, 0 ,
55606 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2UDIV),
55607 MVT::i32, 4, 0, 1, 2, 3,
55608 0,
55609 89|128,1, TARGET_VAL(ISD::CTLZ),
55610 OPC_RecordChild0,
55611 OPC_SwitchType , 32, MVT::i32,
55612 OPC_CheckChild0TypeI32,
55613 OPC_Scope, 14,
55614 OPC_CheckPatternPredicate, 81,
55615 OPC_EmitInteger32, 28,
55616 OPC_EmitRegisterI32, 0 ,
55617 OPC_MorphNodeTo1None, TARGET_VAL(ARM::CLZ),
55618 MVT::i32, 3, 0, 1, 2,
55619 13,
55620 OPC_CheckPatternPredicate4,
55621 OPC_EmitInteger32, 28,
55622 OPC_EmitRegisterI32, 0 ,
55623 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2CLZ),
55624 MVT::i32, 3, 0, 1, 2,
55625 0,
55626 15, MVT::v8i8,
55627 OPC_CheckChild0Type, MVT::v8i8,
55628 OPC_CheckPatternPredicate1,
55629 OPC_EmitInteger32, 28,
55630 OPC_EmitRegisterI32, 0 ,
55631 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLZv8i8),
55632 MVT::v8i8, 3, 0, 1, 2,
55633 15, MVT::v4i16,
55634 OPC_CheckChild0Type, MVT::v4i16,
55635 OPC_CheckPatternPredicate1,
55636 OPC_EmitInteger32, 28,
55637 OPC_EmitRegisterI32, 0 ,
55638 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLZv4i16),
55639 MVT::v4i16, 3, 0, 1, 2,
55640 15, MVT::v2i32,
55641 OPC_CheckChild0Type, MVT::v2i32,
55642 OPC_CheckPatternPredicate1,
55643 OPC_EmitInteger32, 28,
55644 OPC_EmitRegisterI32, 0 ,
55645 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLZv2i32),
55646 MVT::v2i32, 3, 0, 1, 2,
55647 41, MVT::v16i8,
55648 OPC_CheckChild0Type, MVT::v16i8,
55649 OPC_Scope, 13,
55650 OPC_CheckPatternPredicate1,
55651 OPC_EmitInteger32, 28,
55652 OPC_EmitRegisterI32, 0 ,
55653 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLZv16i8),
55654 MVT::v16i8, 3, 0, 1, 2,
55655 22,
55656 OPC_CheckPatternPredicate0,
55657 OPC_EmitInteger32, 0,
55658 OPC_EmitRegisterI32, 0 ,
55659 OPC_EmitRegisterI32, 0 ,
55660 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
55661 MVT::v4i32, 0,
55662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLZs8),
55663 MVT::v16i8, 5, 0, 1, 2, 3, 4,
55664 0,
55665 41, MVT::v8i16,
55666 OPC_CheckChild0Type, MVT::v8i16,
55667 OPC_Scope, 13,
55668 OPC_CheckPatternPredicate1,
55669 OPC_EmitInteger32, 28,
55670 OPC_EmitRegisterI32, 0 ,
55671 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLZv8i16),
55672 MVT::v8i16, 3, 0, 1, 2,
55673 22,
55674 OPC_CheckPatternPredicate0,
55675 OPC_EmitInteger32, 0,
55676 OPC_EmitRegisterI32, 0 ,
55677 OPC_EmitRegisterI32, 0 ,
55678 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
55679 MVT::v4i32, 0,
55680 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLZs16),
55681 MVT::v8i16, 5, 0, 1, 2, 3, 4,
55682 0,
55683 41, MVT::v4i32,
55684 OPC_CheckChild0Type, MVT::v4i32,
55685 OPC_Scope, 13,
55686 OPC_CheckPatternPredicate1,
55687 OPC_EmitInteger32, 28,
55688 OPC_EmitRegisterI32, 0 ,
55689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLZv4i32),
55690 MVT::v4i32, 3, 0, 1, 2,
55691 22,
55692 OPC_CheckPatternPredicate0,
55693 OPC_EmitInteger32, 0,
55694 OPC_EmitRegisterI32, 0 ,
55695 OPC_EmitRegisterI32, 0 ,
55696 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
55697 MVT::v4i32, 0,
55698 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCLZs32),
55699 MVT::v4i32, 5, 0, 1, 2, 3, 4,
55700 0,
55701 0,
55702 34|128,1, TARGET_VAL(ISD::BITREVERSE),
55703 OPC_RecordChild0,
55704 OPC_SwitchType , 31, MVT::i32,
55705 OPC_Scope, 14,
55706 OPC_CheckPatternPredicate, 32,
55707 OPC_EmitInteger32, 28,
55708 OPC_EmitRegisterI32, 0 ,
55709 OPC_MorphNodeTo1None, TARGET_VAL(ARM::RBIT),
55710 MVT::i32, 3, 0, 1, 2,
55711 13,
55712 OPC_CheckPatternPredicate4,
55713 OPC_EmitInteger32, 28,
55714 OPC_EmitRegisterI32, 0 ,
55715 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2RBIT),
55716 MVT::i32, 3, 0, 1, 2,
55717 0,
55718 40, MVT::v16i8,
55719 OPC_CheckPatternPredicate0,
55720 OPC_EmitInteger32, 16,
55721 OPC_EmitInteger32, 28,
55722 OPC_EmitRegisterI32, 0 ,
55723 OPC_EmitRegisterI32, 0 ,
55724 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi),
55725 MVT::i32, 4, 1, 2, 3, 4,
55726 OPC_EmitInteger32, 0,
55727 OPC_EmitRegisterI32, 0 ,
55728 OPC_EmitRegisterI32, 0 ,
55729 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
55730 MVT::v4i32, 0,
55731 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR8),
55732 MVT::v16i8, 6, 0, 5, 6, 7, 8, 9,
55733 40, MVT::v4i32,
55734 OPC_CheckPatternPredicate0,
55735 OPC_EmitInteger32, 64,
55736 OPC_EmitInteger32, 28,
55737 OPC_EmitRegisterI32, 0 ,
55738 OPC_EmitRegisterI32, 0 ,
55739 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi),
55740 MVT::i32, 4, 1, 2, 3, 4,
55741 OPC_EmitInteger32, 0,
55742 OPC_EmitRegisterI32, 0 ,
55743 OPC_EmitRegisterI32, 0 ,
55744 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
55745 MVT::v4i32, 0,
55746 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR32),
55747 MVT::v4i32, 6, 0, 5, 6, 7, 8, 9,
55748 40, MVT::v8i16,
55749 OPC_CheckPatternPredicate0,
55750 OPC_EmitInteger32, 32,
55751 OPC_EmitInteger32, 28,
55752 OPC_EmitRegisterI32, 0 ,
55753 OPC_EmitRegisterI32, 0 ,
55754 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi),
55755 MVT::i32, 4, 1, 2, 3, 4,
55756 OPC_EmitInteger32, 0,
55757 OPC_EmitRegisterI32, 0 ,
55758 OPC_EmitRegisterI32, 0 ,
55759 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
55760 MVT::v4i32, 0,
55761 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBRSR16),
55762 MVT::v8i16, 6, 0, 5, 6, 7, 8, 9,
55763 0,
55764 99, TARGET_VAL(ISD::BSWAP),
55765 OPC_RecordChild0,
55766 OPC_SwitchType , 46, MVT::i32,
55767 OPC_Scope, 14,
55768 OPC_CheckPatternPredicate, 9,
55769 OPC_EmitInteger32, 28,
55770 OPC_EmitRegisterI32, 0 ,
55771 OPC_MorphNodeTo1None, TARGET_VAL(ARM::REV),
55772 MVT::i32, 3, 0, 1, 2,
55773 14,
55774 OPC_CheckPatternPredicate, 39,
55775 OPC_EmitInteger32, 28,
55776 OPC_EmitRegisterI32, 0 ,
55777 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tREV),
55778 MVT::i32, 3, 0, 1, 2,
55779 13,
55780 OPC_CheckPatternPredicate4,
55781 OPC_EmitInteger32, 28,
55782 OPC_EmitRegisterI32, 0 ,
55783 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2REV),
55784 MVT::i32, 3, 0, 1, 2,
55785 0,
55786 22, MVT::v8i16,
55787 OPC_CheckPatternPredicate0,
55788 OPC_EmitInteger32, 0,
55789 OPC_EmitRegisterI32, 0 ,
55790 OPC_EmitRegisterI32, 0 ,
55791 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
55792 MVT::v4i32, 0,
55793 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV16_8),
55794 MVT::v8i16, 5, 0, 1, 2, 3, 4,
55795 22, MVT::v4i32,
55796 OPC_CheckPatternPredicate0,
55797 OPC_EmitInteger32, 0,
55798 OPC_EmitRegisterI32, 0 ,
55799 OPC_EmitRegisterI32, 0 ,
55800 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
55801 MVT::v4i32, 0,
55802 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_8),
55803 MVT::v4i32, 5, 0, 1, 2, 3, 4,
55804 0,
55805 65|128,1, TARGET_VAL(ARMISD::THREAD_POINTER),
55806 OPC_CheckTypeI32,
55807 OPC_Scope, 7,
55808 OPC_CheckPatternPredicate, 139,
55809 OPC_MorphNodeTo1None, TARGET_VAL(ARM::TPsoft),
55810 MVT::i32, 0,
55811 28,
55812 OPC_CheckPatternPredicate, 140,
55813 OPC_EmitInteger32, 30,
55814 OPC_EmitInteger32, 0,
55815 OPC_EmitInteger32, 26,
55816 OPC_EmitInteger32, 0,
55817 OPC_EmitInteger32, 4,
55818 OPC_EmitInteger32, 28,
55819 OPC_EmitRegisterI32, 0 ,
55820 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MRC),
55821 MVT::i32, 7, 0, 1, 2, 3, 4, 5, 6,
55822 28,
55823 OPC_CheckPatternPredicate, 141,
55824 OPC_EmitInteger32, 30,
55825 OPC_EmitInteger32, 0,
55826 OPC_EmitInteger32, 26,
55827 OPC_EmitInteger32, 0,
55828 OPC_EmitInteger32, 6,
55829 OPC_EmitInteger32, 28,
55830 OPC_EmitRegisterI32, 0 ,
55831 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MRC),
55832 MVT::i32, 7, 0, 1, 2, 3, 4, 5, 6,
55833 28,
55834 OPC_CheckPatternPredicate, 142,
55835 OPC_EmitInteger32, 30,
55836 OPC_EmitInteger32, 0,
55837 OPC_EmitInteger32, 26,
55838 OPC_EmitInteger32, 0,
55839 OPC_EmitInteger32, 8,
55840 OPC_EmitInteger32, 28,
55841 OPC_EmitRegisterI32, 0 ,
55842 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MRC),
55843 MVT::i32, 7, 0, 1, 2, 3, 4, 5, 6,
55844 7,
55845 OPC_CheckPatternPredicate, 143,
55846 OPC_MorphNodeTo1None, TARGET_VAL(ARM::tTPsoft),
55847 MVT::i32, 0,
55848 28,
55849 OPC_CheckPatternPredicate, 144,
55850 OPC_EmitInteger32, 30,
55851 OPC_EmitInteger32, 0,
55852 OPC_EmitInteger32, 26,
55853 OPC_EmitInteger32, 0,
55854 OPC_EmitInteger32, 4,
55855 OPC_EmitInteger32, 28,
55856 OPC_EmitRegisterI32, 0 ,
55857 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MRC),
55858 MVT::i32, 7, 0, 1, 2, 3, 4, 5, 6,
55859 28,
55860 OPC_CheckPatternPredicate, 145,
55861 OPC_EmitInteger32, 30,
55862 OPC_EmitInteger32, 0,
55863 OPC_EmitInteger32, 26,
55864 OPC_EmitInteger32, 0,
55865 OPC_EmitInteger32, 6,
55866 OPC_EmitInteger32, 28,
55867 OPC_EmitRegisterI32, 0 ,
55868 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MRC),
55869 MVT::i32, 7, 0, 1, 2, 3, 4, 5, 6,
55870 28,
55871 OPC_CheckPatternPredicate, 146,
55872 OPC_EmitInteger32, 30,
55873 OPC_EmitInteger32, 0,
55874 OPC_EmitInteger32, 26,
55875 OPC_EmitInteger32, 0,
55876 OPC_EmitInteger32, 8,
55877 OPC_EmitInteger32, 28,
55878 OPC_EmitRegisterI32, 0 ,
55879 OPC_MorphNodeTo1None, TARGET_VAL(ARM::t2MRC),
55880 MVT::i32, 7, 0, 1, 2, 3, 4, 5, 6,
55881 0,
55882 39, TARGET_VAL(ARMISD::EH_SJLJ_LONGJMP),
55883 OPC_RecordNode,
55884 OPC_RecordChild1,
55885 OPC_CheckChild1TypeI32,
55886 OPC_RecordChild2,
55887 OPC_CheckChild2TypeI32,
55888 OPC_Scope, 9,
55889 OPC_CheckPatternPredicate3,
55890 OPC_EmitMergeInputChains1_0,
55891 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::Int_eh_sjlj_longjmp),
55892 MVT::i32, 2, 1, 2,
55893 10,
55894 OPC_CheckPatternPredicate, 147,
55895 OPC_EmitMergeInputChains1_0,
55896 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::tInt_eh_sjlj_longjmp),
55897 MVT::i32, 2, 1, 2,
55898 10,
55899 OPC_CheckPatternPredicate, 91,
55900 OPC_EmitMergeInputChains1_0,
55901 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::tInt_WIN_eh_sjlj_longjmp),
55902 MVT::i32, 2, 1, 2,
55903 0,
55904 32, TARGET_VAL(ARMISD::MEMBARRIER_MCR),
55905 OPC_RecordNode,
55906 OPC_RecordChild1,
55907 OPC_CheckChild1TypeI32,
55908 OPC_CheckPatternPredicate, 9,
55909 OPC_EmitMergeInputChains1_0,
55910 OPC_EmitInteger32, 30,
55911 OPC_EmitInteger32, 0,
55912 OPC_EmitInteger32, 14,
55913 OPC_EmitInteger32, 20,
55914 OPC_EmitInteger32, 10,
55915 OPC_EmitInteger32, 28,
55916 OPC_EmitRegisterI32, 0 ,
55917 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::MCR),
55918 8, 2, 3, 1, 4, 5, 6, 7, 8,
55919 10, TARGET_VAL(ARMISD::SERET_GLUE),
55920 OPC_RecordNode,
55921 OPC_CaptureGlueInput,
55922 OPC_CheckPatternPredicate, 41,
55923 OPC_EmitMergeInputChains1_0,
55924 OPC_MorphNodeTo0, TARGET_VAL(ARM::tBXNS_RET), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic0,
55925 0,
55926 14, TARGET_VAL(ARMISD::tSECALL),
55927 OPC_RecordNode,
55928 OPC_CaptureGlueInput,
55929 OPC_RecordChild1,
55930 OPC_CheckChild1TypeI32,
55931 OPC_CheckPatternPredicate, 63,
55932 OPC_EmitMergeInputChains1_0,
55933 OPC_MorphNodeTo1, TARGET_VAL(ARM::tBLXNS_CALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
55934 MVT::i32, 1, 1,
55935 60, TARGET_VAL(ARMISD::CMPFPE),
55936 OPC_RecordChild0,
55937 OPC_Scope, 18,
55938 OPC_CheckChild0Type, MVT::f64,
55939 OPC_RecordChild1,
55940 OPC_CheckPatternPredicate, 18,
55941 OPC_EmitInteger32, 28,
55942 OPC_EmitRegisterI32, 0 ,
55943 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPED),
55944 MVT::i32, 4, 0, 1, 2, 3,
55945 18,
55946 OPC_CheckChild0Type, MVT::f32,
55947 OPC_RecordChild1,
55948 OPC_CheckPatternPredicate, 24,
55949 OPC_EmitInteger32, 28,
55950 OPC_EmitRegisterI32, 0 ,
55951 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPES),
55952 MVT::i32, 4, 0, 1, 2, 3,
55953 18,
55954 OPC_CheckChild0Type, MVT::f16,
55955 OPC_RecordChild1,
55956 OPC_CheckPatternPredicate, 13,
55957 OPC_EmitInteger32, 28,
55958 OPC_EmitRegisterI32, 0 ,
55959 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPEH),
55960 MVT::i32, 4, 0, 1, 2, 3,
55961 0,
55962 60, TARGET_VAL(ARMISD::CMPFP),
55963 OPC_RecordChild0,
55964 OPC_Scope, 18,
55965 OPC_CheckChild0Type, MVT::f64,
55966 OPC_RecordChild1,
55967 OPC_CheckPatternPredicate, 18,
55968 OPC_EmitInteger32, 28,
55969 OPC_EmitRegisterI32, 0 ,
55970 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPD),
55971 MVT::i32, 4, 0, 1, 2, 3,
55972 18,
55973 OPC_CheckChild0Type, MVT::f32,
55974 OPC_RecordChild1,
55975 OPC_CheckPatternPredicate, 24,
55976 OPC_EmitInteger32, 28,
55977 OPC_EmitRegisterI32, 0 ,
55978 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPS),
55979 MVT::i32, 4, 0, 1, 2, 3,
55980 18,
55981 OPC_CheckChild0Type, MVT::f16,
55982 OPC_RecordChild1,
55983 OPC_CheckPatternPredicate, 13,
55984 OPC_EmitInteger32, 28,
55985 OPC_EmitRegisterI32, 0 ,
55986 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPH),
55987 MVT::i32, 4, 0, 1, 2, 3,
55988 0,
55989 54, TARGET_VAL(ARMISD::CMPFPEw0),
55990 OPC_RecordChild0,
55991 OPC_Scope, 16,
55992 OPC_CheckChild0Type, MVT::f64,
55993 OPC_CheckPatternPredicate, 18,
55994 OPC_EmitInteger32, 28,
55995 OPC_EmitRegisterI32, 0 ,
55996 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPEZD),
55997 MVT::i32, 3, 0, 1, 2,
55998 16,
55999 OPC_CheckChild0Type, MVT::f32,
56000 OPC_CheckPatternPredicate, 24,
56001 OPC_EmitInteger32, 28,
56002 OPC_EmitRegisterI32, 0 ,
56003 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPEZS),
56004 MVT::i32, 3, 0, 1, 2,
56005 16,
56006 OPC_CheckChild0Type, MVT::f16,
56007 OPC_CheckPatternPredicate, 13,
56008 OPC_EmitInteger32, 28,
56009 OPC_EmitRegisterI32, 0 ,
56010 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPEZH),
56011 MVT::i32, 3, 0, 1, 2,
56012 0,
56013 54, TARGET_VAL(ARMISD::CMPFPw0),
56014 OPC_RecordChild0,
56015 OPC_Scope, 16,
56016 OPC_CheckChild0Type, MVT::f64,
56017 OPC_CheckPatternPredicate, 18,
56018 OPC_EmitInteger32, 28,
56019 OPC_EmitRegisterI32, 0 ,
56020 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPZD),
56021 MVT::i32, 3, 0, 1, 2,
56022 16,
56023 OPC_CheckChild0Type, MVT::f32,
56024 OPC_CheckPatternPredicate, 24,
56025 OPC_EmitInteger32, 28,
56026 OPC_EmitRegisterI32, 0 ,
56027 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPZS),
56028 MVT::i32, 3, 0, 1, 2,
56029 16,
56030 OPC_CheckChild0Type, MVT::f16,
56031 OPC_CheckPatternPredicate, 13,
56032 OPC_EmitInteger32, 28,
56033 OPC_EmitRegisterI32, 0 ,
56034 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(ARM::VCMPZH),
56035 MVT::i32, 3, 0, 1, 2,
56036 0,
56037 10|128,28, TARGET_VAL(ISD::BITCAST),
56038 OPC_Scope, 18,
56039 OPC_RecordChild0,
56040 OPC_CheckChild0Type, MVT::f32,
56041 OPC_CheckTypeI32,
56042 OPC_CheckPatternPredicate, 35,
56043 OPC_EmitInteger32, 28,
56044 OPC_EmitRegisterI32, 0 ,
56045 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVRS),
56046 MVT::i32, 3, 0, 1, 2,
56047 29,
56048 OPC_MoveChild0,
56049 OPC_CheckOpcode, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
56050 OPC_RecordChild0,
56051 OPC_CheckChild0Type, MVT::v2i32,
56052 OPC_RecordChild1,
56053 OPC_MoveChild1,
56054 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
56055 OPC_MoveParent,
56056 OPC_CheckTypeI32,
56057 OPC_MoveParent,
56058 OPC_CheckType, MVT::f32,
56059 OPC_CheckPatternPredicate1,
56060 OPC_EmitConvertToTarget1,
56061 OPC_EmitNodeXForm, 18, 2,
56062 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
56063 MVT::f32, 2, 0, 3,
56064 85|128,27,
56065 OPC_RecordChild0,
56066 OPC_Scope, 26|128,1,
56067 OPC_CheckChild0Type, MVT::v1i64,
56068 OPC_SwitchType , 4, MVT::f64,
56069 OPC_CheckPatternPredicate1,
56070 OPC_CompleteMatch, 1, 0,
56071
56072 22, MVT::v2i32,
56073 OPC_Scope, 4,
56074 OPC_CheckPatternPredicate6,
56075 OPC_CompleteMatch, 1, 0,
56076
56077 14,
56078 OPC_CheckPatternPredicate, 8,
56079 OPC_EmitInteger32, 28,
56080 OPC_EmitRegisterI32, 0 ,
56081 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d32),
56082 MVT::v2i32, 3, 0, 1, 2,
56083 0,
56084 22, MVT::v4i16,
56085 OPC_Scope, 4,
56086 OPC_CheckPatternPredicate6,
56087 OPC_CompleteMatch, 1, 0,
56088
56089 14,
56090 OPC_CheckPatternPredicate, 8,
56091 OPC_EmitInteger32, 28,
56092 OPC_EmitRegisterI32, 0 ,
56093 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56094 MVT::v4i16, 3, 0, 1, 2,
56095 0,
56096 22, MVT::v8i8,
56097 OPC_Scope, 4,
56098 OPC_CheckPatternPredicate6,
56099 OPC_CompleteMatch, 1, 0,
56100
56101 14,
56102 OPC_CheckPatternPredicate, 8,
56103 OPC_EmitInteger32, 28,
56104 OPC_EmitRegisterI32, 0 ,
56105 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d8),
56106 MVT::v8i8, 3, 0, 1, 2,
56107 0,
56108 22, MVT::v2f32,
56109 OPC_Scope, 4,
56110 OPC_CheckPatternPredicate6,
56111 OPC_CompleteMatch, 1, 0,
56112
56113 14,
56114 OPC_CheckPatternPredicate, 8,
56115 OPC_EmitInteger32, 28,
56116 OPC_EmitRegisterI32, 0 ,
56117 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d32),
56118 MVT::v2f32, 3, 0, 1, 2,
56119 0,
56120 22, MVT::v4f16,
56121 OPC_Scope, 4,
56122 OPC_CheckPatternPredicate6,
56123 OPC_CompleteMatch, 1, 0,
56124
56125 14,
56126 OPC_CheckPatternPredicate, 8,
56127 OPC_EmitInteger32, 28,
56128 OPC_EmitRegisterI32, 0 ,
56129 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56130 MVT::v4f16, 3, 0, 1, 2,
56131 0,
56132 22, MVT::v4bf16,
56133 OPC_Scope, 4,
56134 OPC_CheckPatternPredicate6,
56135 OPC_CompleteMatch, 1, 0,
56136
56137 14,
56138 OPC_CheckPatternPredicate, 8,
56139 OPC_EmitInteger32, 28,
56140 OPC_EmitRegisterI32, 0 ,
56141 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56142 MVT::v4bf16, 3, 0, 1, 2,
56143 0,
56144 0,
56145 26|128,1,
56146 OPC_CheckChild0Type, MVT::v2f32,
56147 OPC_SwitchType , 22, MVT::f64,
56148 OPC_Scope, 4,
56149 OPC_CheckPatternPredicate6,
56150 OPC_CompleteMatch, 1, 0,
56151
56152 14,
56153 OPC_CheckPatternPredicate, 8,
56154 OPC_EmitInteger32, 28,
56155 OPC_EmitRegisterI32, 0 ,
56156 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d32),
56157 MVT::f64, 3, 0, 1, 2,
56158 0,
56159 4, MVT::v2i32,
56160 OPC_CheckPatternPredicate1,
56161 OPC_CompleteMatch, 1, 0,
56162
56163 22, MVT::v1i64,
56164 OPC_Scope, 4,
56165 OPC_CheckPatternPredicate6,
56166 OPC_CompleteMatch, 1, 0,
56167
56168 14,
56169 OPC_CheckPatternPredicate, 8,
56170 OPC_EmitInteger32, 28,
56171 OPC_EmitRegisterI32, 0 ,
56172 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d32),
56173 MVT::v1i64, 3, 0, 1, 2,
56174 0,
56175 22, MVT::v4i16,
56176 OPC_Scope, 4,
56177 OPC_CheckPatternPredicate6,
56178 OPC_CompleteMatch, 1, 0,
56179
56180 14,
56181 OPC_CheckPatternPredicate, 8,
56182 OPC_EmitInteger32, 28,
56183 OPC_EmitRegisterI32, 0 ,
56184 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56185 MVT::v4i16, 3, 0, 1, 2,
56186 0,
56187 22, MVT::v8i8,
56188 OPC_Scope, 4,
56189 OPC_CheckPatternPredicate6,
56190 OPC_CompleteMatch, 1, 0,
56191
56192 14,
56193 OPC_CheckPatternPredicate, 8,
56194 OPC_EmitInteger32, 28,
56195 OPC_EmitRegisterI32, 0 ,
56196 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d8),
56197 MVT::v8i8, 3, 0, 1, 2,
56198 0,
56199 22, MVT::v4f16,
56200 OPC_Scope, 4,
56201 OPC_CheckPatternPredicate6,
56202 OPC_CompleteMatch, 1, 0,
56203
56204 14,
56205 OPC_CheckPatternPredicate, 8,
56206 OPC_EmitInteger32, 28,
56207 OPC_EmitRegisterI32, 0 ,
56208 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56209 MVT::v4f16, 3, 0, 1, 2,
56210 0,
56211 22, MVT::v4bf16,
56212 OPC_Scope, 4,
56213 OPC_CheckPatternPredicate6,
56214 OPC_CompleteMatch, 1, 0,
56215
56216 14,
56217 OPC_CheckPatternPredicate, 8,
56218 OPC_EmitInteger32, 28,
56219 OPC_EmitRegisterI32, 0 ,
56220 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56221 MVT::v4bf16, 3, 0, 1, 2,
56222 0,
56223 0,
56224 26|128,1,
56225 OPC_CheckChild0Type, MVT::v2i32,
56226 OPC_SwitchType , 22, MVT::f64,
56227 OPC_Scope, 4,
56228 OPC_CheckPatternPredicate6,
56229 OPC_CompleteMatch, 1, 0,
56230
56231 14,
56232 OPC_CheckPatternPredicate, 8,
56233 OPC_EmitInteger32, 28,
56234 OPC_EmitRegisterI32, 0 ,
56235 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d32),
56236 MVT::f64, 3, 0, 1, 2,
56237 0,
56238 22, MVT::v1i64,
56239 OPC_Scope, 4,
56240 OPC_CheckPatternPredicate6,
56241 OPC_CompleteMatch, 1, 0,
56242
56243 14,
56244 OPC_CheckPatternPredicate, 8,
56245 OPC_EmitInteger32, 28,
56246 OPC_EmitRegisterI32, 0 ,
56247 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d32),
56248 MVT::v1i64, 3, 0, 1, 2,
56249 0,
56250 22, MVT::v4i16,
56251 OPC_Scope, 4,
56252 OPC_CheckPatternPredicate6,
56253 OPC_CompleteMatch, 1, 0,
56254
56255 14,
56256 OPC_CheckPatternPredicate, 8,
56257 OPC_EmitInteger32, 28,
56258 OPC_EmitRegisterI32, 0 ,
56259 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56260 MVT::v4i16, 3, 0, 1, 2,
56261 0,
56262 22, MVT::v8i8,
56263 OPC_Scope, 4,
56264 OPC_CheckPatternPredicate6,
56265 OPC_CompleteMatch, 1, 0,
56266
56267 14,
56268 OPC_CheckPatternPredicate, 8,
56269 OPC_EmitInteger32, 28,
56270 OPC_EmitRegisterI32, 0 ,
56271 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d8),
56272 MVT::v8i8, 3, 0, 1, 2,
56273 0,
56274 4, MVT::v2f32,
56275 OPC_CheckPatternPredicate1,
56276 OPC_CompleteMatch, 1, 0,
56277
56278 22, MVT::v4f16,
56279 OPC_Scope, 4,
56280 OPC_CheckPatternPredicate6,
56281 OPC_CompleteMatch, 1, 0,
56282
56283 14,
56284 OPC_CheckPatternPredicate, 8,
56285 OPC_EmitInteger32, 28,
56286 OPC_EmitRegisterI32, 0 ,
56287 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56288 MVT::v4f16, 3, 0, 1, 2,
56289 0,
56290 22, MVT::v4bf16,
56291 OPC_Scope, 4,
56292 OPC_CheckPatternPredicate6,
56293 OPC_CompleteMatch, 1, 0,
56294
56295 14,
56296 OPC_CheckPatternPredicate, 8,
56297 OPC_EmitInteger32, 28,
56298 OPC_EmitRegisterI32, 0 ,
56299 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56300 MVT::v4bf16, 3, 0, 1, 2,
56301 0,
56302 0,
56303 2|128,1,
56304 OPC_CheckChild0Type, MVT::v4f16,
56305 OPC_SwitchType , 22, MVT::f64,
56306 OPC_Scope, 4,
56307 OPC_CheckPatternPredicate6,
56308 OPC_CompleteMatch, 1, 0,
56309
56310 14,
56311 OPC_CheckPatternPredicate, 8,
56312 OPC_EmitInteger32, 28,
56313 OPC_EmitRegisterI32, 0 ,
56314 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56315 MVT::f64, 3, 0, 1, 2,
56316 0,
56317 4, MVT::v4i16,
56318 OPC_CheckPatternPredicate1,
56319 OPC_CompleteMatch, 1, 0,
56320
56321 22, MVT::v1i64,
56322 OPC_Scope, 4,
56323 OPC_CheckPatternPredicate6,
56324 OPC_CompleteMatch, 1, 0,
56325
56326 14,
56327 OPC_CheckPatternPredicate, 8,
56328 OPC_EmitInteger32, 28,
56329 OPC_EmitRegisterI32, 0 ,
56330 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56331 MVT::v1i64, 3, 0, 1, 2,
56332 0,
56333 22, MVT::v2i32,
56334 OPC_Scope, 4,
56335 OPC_CheckPatternPredicate6,
56336 OPC_CompleteMatch, 1, 0,
56337
56338 14,
56339 OPC_CheckPatternPredicate, 8,
56340 OPC_EmitInteger32, 28,
56341 OPC_EmitRegisterI32, 0 ,
56342 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56343 MVT::v2i32, 3, 0, 1, 2,
56344 0,
56345 22, MVT::v8i8,
56346 OPC_Scope, 4,
56347 OPC_CheckPatternPredicate6,
56348 OPC_CompleteMatch, 1, 0,
56349
56350 14,
56351 OPC_CheckPatternPredicate, 8,
56352 OPC_EmitInteger32, 28,
56353 OPC_EmitRegisterI32, 0 ,
56354 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16d8),
56355 MVT::v8i8, 3, 0, 1, 2,
56356 0,
56357 22, MVT::v2f32,
56358 OPC_Scope, 4,
56359 OPC_CheckPatternPredicate6,
56360 OPC_CompleteMatch, 1, 0,
56361
56362 14,
56363 OPC_CheckPatternPredicate, 8,
56364 OPC_EmitInteger32, 28,
56365 OPC_EmitRegisterI32, 0 ,
56366 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56367 MVT::v2f32, 3, 0, 1, 2,
56368 0,
56369 0,
56370 2|128,1,
56371 OPC_CheckChild0Type, MVT::v4bf16,
56372 OPC_SwitchType , 22, MVT::f64,
56373 OPC_Scope, 4,
56374 OPC_CheckPatternPredicate6,
56375 OPC_CompleteMatch, 1, 0,
56376
56377 14,
56378 OPC_CheckPatternPredicate, 8,
56379 OPC_EmitInteger32, 28,
56380 OPC_EmitRegisterI32, 0 ,
56381 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56382 MVT::f64, 3, 0, 1, 2,
56383 0,
56384 4, MVT::v4i16,
56385 OPC_CheckPatternPredicate1,
56386 OPC_CompleteMatch, 1, 0,
56387
56388 22, MVT::v1i64,
56389 OPC_Scope, 4,
56390 OPC_CheckPatternPredicate6,
56391 OPC_CompleteMatch, 1, 0,
56392
56393 14,
56394 OPC_CheckPatternPredicate, 8,
56395 OPC_EmitInteger32, 28,
56396 OPC_EmitRegisterI32, 0 ,
56397 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56398 MVT::v1i64, 3, 0, 1, 2,
56399 0,
56400 22, MVT::v2i32,
56401 OPC_Scope, 4,
56402 OPC_CheckPatternPredicate6,
56403 OPC_CompleteMatch, 1, 0,
56404
56405 14,
56406 OPC_CheckPatternPredicate, 8,
56407 OPC_EmitInteger32, 28,
56408 OPC_EmitRegisterI32, 0 ,
56409 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56410 MVT::v2i32, 3, 0, 1, 2,
56411 0,
56412 22, MVT::v8i8,
56413 OPC_Scope, 4,
56414 OPC_CheckPatternPredicate6,
56415 OPC_CompleteMatch, 1, 0,
56416
56417 14,
56418 OPC_CheckPatternPredicate, 8,
56419 OPC_EmitInteger32, 28,
56420 OPC_EmitRegisterI32, 0 ,
56421 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16d8),
56422 MVT::v8i8, 3, 0, 1, 2,
56423 0,
56424 22, MVT::v2f32,
56425 OPC_Scope, 4,
56426 OPC_CheckPatternPredicate6,
56427 OPC_CompleteMatch, 1, 0,
56428
56429 14,
56430 OPC_CheckPatternPredicate, 8,
56431 OPC_EmitInteger32, 28,
56432 OPC_EmitRegisterI32, 0 ,
56433 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56434 MVT::v2f32, 3, 0, 1, 2,
56435 0,
56436 0,
56437 8|128,1,
56438 OPC_CheckChild0Type, MVT::v4i16,
56439 OPC_SwitchType , 22, MVT::f64,
56440 OPC_Scope, 4,
56441 OPC_CheckPatternPredicate6,
56442 OPC_CompleteMatch, 1, 0,
56443
56444 14,
56445 OPC_CheckPatternPredicate, 8,
56446 OPC_EmitInteger32, 28,
56447 OPC_EmitRegisterI32, 0 ,
56448 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56449 MVT::f64, 3, 0, 1, 2,
56450 0,
56451 22, MVT::v1i64,
56452 OPC_Scope, 4,
56453 OPC_CheckPatternPredicate6,
56454 OPC_CompleteMatch, 1, 0,
56455
56456 14,
56457 OPC_CheckPatternPredicate, 8,
56458 OPC_EmitInteger32, 28,
56459 OPC_EmitRegisterI32, 0 ,
56460 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56461 MVT::v1i64, 3, 0, 1, 2,
56462 0,
56463 22, MVT::v2i32,
56464 OPC_Scope, 4,
56465 OPC_CheckPatternPredicate6,
56466 OPC_CompleteMatch, 1, 0,
56467
56468 14,
56469 OPC_CheckPatternPredicate, 8,
56470 OPC_EmitInteger32, 28,
56471 OPC_EmitRegisterI32, 0 ,
56472 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56473 MVT::v2i32, 3, 0, 1, 2,
56474 0,
56475 22, MVT::v8i8,
56476 OPC_Scope, 4,
56477 OPC_CheckPatternPredicate6,
56478 OPC_CompleteMatch, 1, 0,
56479
56480 14,
56481 OPC_CheckPatternPredicate, 8,
56482 OPC_EmitInteger32, 28,
56483 OPC_EmitRegisterI32, 0 ,
56484 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16d8),
56485 MVT::v8i8, 3, 0, 1, 2,
56486 0,
56487 4, MVT::v4f16,
56488 OPC_CheckPatternPredicate1,
56489 OPC_CompleteMatch, 1, 0,
56490
56491 4, MVT::v4bf16,
56492 OPC_CheckPatternPredicate1,
56493 OPC_CompleteMatch, 1, 0,
56494
56495 22, MVT::v2f32,
56496 OPC_Scope, 4,
56497 OPC_CheckPatternPredicate6,
56498 OPC_CompleteMatch, 1, 0,
56499
56500 14,
56501 OPC_CheckPatternPredicate, 8,
56502 OPC_EmitInteger32, 28,
56503 OPC_EmitRegisterI32, 0 ,
56504 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
56505 MVT::v2f32, 3, 0, 1, 2,
56506 0,
56507 0,
56508 44|128,1,
56509 OPC_CheckChild0Type, MVT::v8i8,
56510 OPC_SwitchType , 22, MVT::f64,
56511 OPC_Scope, 4,
56512 OPC_CheckPatternPredicate6,
56513 OPC_CompleteMatch, 1, 0,
56514
56515 14,
56516 OPC_CheckPatternPredicate, 8,
56517 OPC_EmitInteger32, 28,
56518 OPC_EmitRegisterI32, 0 ,
56519 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d8),
56520 MVT::f64, 3, 0, 1, 2,
56521 0,
56522 22, MVT::v1i64,
56523 OPC_Scope, 4,
56524 OPC_CheckPatternPredicate6,
56525 OPC_CompleteMatch, 1, 0,
56526
56527 14,
56528 OPC_CheckPatternPredicate, 8,
56529 OPC_EmitInteger32, 28,
56530 OPC_EmitRegisterI32, 0 ,
56531 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d8),
56532 MVT::v1i64, 3, 0, 1, 2,
56533 0,
56534 22, MVT::v2i32,
56535 OPC_Scope, 4,
56536 OPC_CheckPatternPredicate6,
56537 OPC_CompleteMatch, 1, 0,
56538
56539 14,
56540 OPC_CheckPatternPredicate, 8,
56541 OPC_EmitInteger32, 28,
56542 OPC_EmitRegisterI32, 0 ,
56543 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d8),
56544 MVT::v2i32, 3, 0, 1, 2,
56545 0,
56546 22, MVT::v4i16,
56547 OPC_Scope, 4,
56548 OPC_CheckPatternPredicate6,
56549 OPC_CompleteMatch, 1, 0,
56550
56551 14,
56552 OPC_CheckPatternPredicate, 8,
56553 OPC_EmitInteger32, 28,
56554 OPC_EmitRegisterI32, 0 ,
56555 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16d8),
56556 MVT::v4i16, 3, 0, 1, 2,
56557 0,
56558 22, MVT::v2f32,
56559 OPC_Scope, 4,
56560 OPC_CheckPatternPredicate6,
56561 OPC_CompleteMatch, 1, 0,
56562
56563 14,
56564 OPC_CheckPatternPredicate, 8,
56565 OPC_EmitInteger32, 28,
56566 OPC_EmitRegisterI32, 0 ,
56567 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d8),
56568 MVT::v2f32, 3, 0, 1, 2,
56569 0,
56570 22, MVT::v4f16,
56571 OPC_Scope, 4,
56572 OPC_CheckPatternPredicate6,
56573 OPC_CompleteMatch, 1, 0,
56574
56575 14,
56576 OPC_CheckPatternPredicate, 8,
56577 OPC_EmitInteger32, 28,
56578 OPC_EmitRegisterI32, 0 ,
56579 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16d8),
56580 MVT::v4f16, 3, 0, 1, 2,
56581 0,
56582 22, MVT::v4bf16,
56583 OPC_Scope, 4,
56584 OPC_CheckPatternPredicate6,
56585 OPC_CompleteMatch, 1, 0,
56586
56587 14,
56588 OPC_CheckPatternPredicate, 8,
56589 OPC_EmitInteger32, 28,
56590 OPC_EmitRegisterI32, 0 ,
56591 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16d8),
56592 MVT::v4bf16, 3, 0, 1, 2,
56593 0,
56594 0,
56595 45,
56596 OPC_CheckChild0TypeI32,
56597 OPC_CheckType, MVT::f32,
56598 OPC_Scope, 14,
56599 OPC_CheckPatternPredicate, 105,
56600 OPC_EmitInteger32, 28,
56601 OPC_EmitRegisterI32, 0 ,
56602 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVSR),
56603 MVT::f32, 3, 0, 1, 2,
56604 24,
56605 OPC_CheckPatternPredicate, 106,
56606 OPC_EmitInteger32, 28,
56607 OPC_EmitRegisterI32, 0 ,
56608 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVDRR),
56609 MVT::f64, 4, 0, 0, 1, 2,
56610 OPC_EmitStringInteger32, ARM::ssub_0,
56611 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
56612 MVT::f32, 2, 3, 4,
56613 0,
56614 26|128,1,
56615 OPC_CheckChild0Type, MVT::f64,
56616 OPC_SwitchType , 4, MVT::v1i64,
56617 OPC_CheckPatternPredicate1,
56618 OPC_CompleteMatch, 1, 0,
56619
56620 22, MVT::v2i32,
56621 OPC_Scope, 4,
56622 OPC_CheckPatternPredicate6,
56623 OPC_CompleteMatch, 1, 0,
56624
56625 14,
56626 OPC_CheckPatternPredicate, 8,
56627 OPC_EmitInteger32, 28,
56628 OPC_EmitRegisterI32, 0 ,
56629 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d32),
56630 MVT::v2i32, 3, 0, 1, 2,
56631 0,
56632 22, MVT::v4i16,
56633 OPC_Scope, 4,
56634 OPC_CheckPatternPredicate6,
56635 OPC_CompleteMatch, 1, 0,
56636
56637 14,
56638 OPC_CheckPatternPredicate, 8,
56639 OPC_EmitInteger32, 28,
56640 OPC_EmitRegisterI32, 0 ,
56641 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56642 MVT::v4i16, 3, 0, 1, 2,
56643 0,
56644 22, MVT::v8i8,
56645 OPC_Scope, 4,
56646 OPC_CheckPatternPredicate6,
56647 OPC_CompleteMatch, 1, 0,
56648
56649 14,
56650 OPC_CheckPatternPredicate, 8,
56651 OPC_EmitInteger32, 28,
56652 OPC_EmitRegisterI32, 0 ,
56653 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d8),
56654 MVT::v8i8, 3, 0, 1, 2,
56655 0,
56656 22, MVT::v2f32,
56657 OPC_Scope, 4,
56658 OPC_CheckPatternPredicate6,
56659 OPC_CompleteMatch, 1, 0,
56660
56661 14,
56662 OPC_CheckPatternPredicate, 8,
56663 OPC_EmitInteger32, 28,
56664 OPC_EmitRegisterI32, 0 ,
56665 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d32),
56666 MVT::v2f32, 3, 0, 1, 2,
56667 0,
56668 22, MVT::v4f16,
56669 OPC_Scope, 4,
56670 OPC_CheckPatternPredicate6,
56671 OPC_CompleteMatch, 1, 0,
56672
56673 14,
56674 OPC_CheckPatternPredicate, 8,
56675 OPC_EmitInteger32, 28,
56676 OPC_EmitRegisterI32, 0 ,
56677 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56678 MVT::v4f16, 3, 0, 1, 2,
56679 0,
56680 22, MVT::v4bf16,
56681 OPC_Scope, 4,
56682 OPC_CheckPatternPredicate6,
56683 OPC_CompleteMatch, 1, 0,
56684
56685 14,
56686 OPC_CheckPatternPredicate, 8,
56687 OPC_EmitInteger32, 28,
56688 OPC_EmitRegisterI32, 0 ,
56689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
56690 MVT::v4bf16, 3, 0, 1, 2,
56691 0,
56692 0,
56693 51|128,2,
56694 OPC_CheckChild0Type, MVT::v2f64,
56695 OPC_SwitchType , 12, MVT::v2i64,
56696 OPC_Scope, 4,
56697 OPC_CheckPatternPredicate1,
56698 OPC_CompleteMatch, 1, 0,
56699
56700 4,
56701 OPC_CheckPatternPredicate0,
56702 OPC_CompleteMatch, 1, 0,
56703
56704 0,
56705 51, MVT::v4i32,
56706 OPC_Scope, 4,
56707 OPC_CheckPatternPredicate6,
56708 OPC_CompleteMatch, 1, 0,
56709
56710 4,
56711 OPC_CheckPatternPredicate7,
56712 OPC_CompleteMatch, 1, 0,
56713
56714 14,
56715 OPC_CheckPatternPredicate, 8,
56716 OPC_EmitInteger32, 28,
56717 OPC_EmitRegisterI32, 0 ,
56718 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q32),
56719 MVT::v4i32, 3, 0, 1, 2,
56720 23,
56721 OPC_CheckPatternPredicate, 12,
56722 OPC_EmitInteger32, 0,
56723 OPC_EmitRegisterI32, 0 ,
56724 OPC_EmitRegisterI32, 0 ,
56725 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
56726 MVT::v4i32, 0,
56727 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
56728 MVT::v4i32, 5, 0, 1, 2, 3, 4,
56729 0,
56730 51, MVT::v8i16,
56731 OPC_Scope, 4,
56732 OPC_CheckPatternPredicate6,
56733 OPC_CompleteMatch, 1, 0,
56734
56735 4,
56736 OPC_CheckPatternPredicate7,
56737 OPC_CompleteMatch, 1, 0,
56738
56739 14,
56740 OPC_CheckPatternPredicate, 8,
56741 OPC_EmitInteger32, 28,
56742 OPC_EmitRegisterI32, 0 ,
56743 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
56744 MVT::v8i16, 3, 0, 1, 2,
56745 23,
56746 OPC_CheckPatternPredicate, 12,
56747 OPC_EmitInteger32, 0,
56748 OPC_EmitRegisterI32, 0 ,
56749 OPC_EmitRegisterI32, 0 ,
56750 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
56751 MVT::v4i32, 0,
56752 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
56753 MVT::v8i16, 5, 0, 1, 2, 3, 4,
56754 0,
56755 51, MVT::v16i8,
56756 OPC_Scope, 4,
56757 OPC_CheckPatternPredicate6,
56758 OPC_CompleteMatch, 1, 0,
56759
56760 4,
56761 OPC_CheckPatternPredicate7,
56762 OPC_CompleteMatch, 1, 0,
56763
56764 14,
56765 OPC_CheckPatternPredicate, 8,
56766 OPC_EmitInteger32, 28,
56767 OPC_EmitRegisterI32, 0 ,
56768 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q8),
56769 MVT::v16i8, 3, 0, 1, 2,
56770 23,
56771 OPC_CheckPatternPredicate, 12,
56772 OPC_EmitInteger32, 0,
56773 OPC_EmitRegisterI32, 0 ,
56774 OPC_EmitRegisterI32, 0 ,
56775 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
56776 MVT::v4i32, 0,
56777 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_8),
56778 MVT::v16i8, 5, 0, 1, 2, 3, 4,
56779 0,
56780 51, MVT::v4f32,
56781 OPC_Scope, 4,
56782 OPC_CheckPatternPredicate6,
56783 OPC_CompleteMatch, 1, 0,
56784
56785 4,
56786 OPC_CheckPatternPredicate7,
56787 OPC_CompleteMatch, 1, 0,
56788
56789 14,
56790 OPC_CheckPatternPredicate, 8,
56791 OPC_EmitInteger32, 28,
56792 OPC_EmitRegisterI32, 0 ,
56793 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q32),
56794 MVT::v4f32, 3, 0, 1, 2,
56795 23,
56796 OPC_CheckPatternPredicate, 12,
56797 OPC_EmitInteger32, 0,
56798 OPC_EmitRegisterI32, 0 ,
56799 OPC_EmitRegisterI32, 0 ,
56800 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
56801 MVT::v4i32, 0,
56802 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
56803 MVT::v4f32, 5, 0, 1, 2, 3, 4,
56804 0,
56805 51, MVT::v8f16,
56806 OPC_Scope, 4,
56807 OPC_CheckPatternPredicate6,
56808 OPC_CompleteMatch, 1, 0,
56809
56810 4,
56811 OPC_CheckPatternPredicate7,
56812 OPC_CompleteMatch, 1, 0,
56813
56814 14,
56815 OPC_CheckPatternPredicate, 8,
56816 OPC_EmitInteger32, 28,
56817 OPC_EmitRegisterI32, 0 ,
56818 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
56819 MVT::v8f16, 3, 0, 1, 2,
56820 23,
56821 OPC_CheckPatternPredicate, 12,
56822 OPC_EmitInteger32, 0,
56823 OPC_EmitRegisterI32, 0 ,
56824 OPC_EmitRegisterI32, 0 ,
56825 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
56826 MVT::v4i32, 0,
56827 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
56828 MVT::v8f16, 5, 0, 1, 2, 3, 4,
56829 0,
56830 22, MVT::v8bf16,
56831 OPC_Scope, 4,
56832 OPC_CheckPatternPredicate6,
56833 OPC_CompleteMatch, 1, 0,
56834
56835 14,
56836 OPC_CheckPatternPredicate, 8,
56837 OPC_EmitInteger32, 28,
56838 OPC_EmitRegisterI32, 0 ,
56839 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
56840 MVT::v8bf16, 3, 0, 1, 2,
56841 0,
56842 0,
56843 51|128,2,
56844 OPC_CheckChild0Type, MVT::v4f32,
56845 OPC_SwitchType , 12, MVT::v4i32,
56846 OPC_Scope, 4,
56847 OPC_CheckPatternPredicate1,
56848 OPC_CompleteMatch, 1, 0,
56849
56850 4,
56851 OPC_CheckPatternPredicate0,
56852 OPC_CompleteMatch, 1, 0,
56853
56854 0,
56855 51, MVT::v2i64,
56856 OPC_Scope, 4,
56857 OPC_CheckPatternPredicate6,
56858 OPC_CompleteMatch, 1, 0,
56859
56860 4,
56861 OPC_CheckPatternPredicate7,
56862 OPC_CompleteMatch, 1, 0,
56863
56864 14,
56865 OPC_CheckPatternPredicate, 8,
56866 OPC_EmitInteger32, 28,
56867 OPC_EmitRegisterI32, 0 ,
56868 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q32),
56869 MVT::v2i64, 3, 0, 1, 2,
56870 23,
56871 OPC_CheckPatternPredicate, 12,
56872 OPC_EmitInteger32, 0,
56873 OPC_EmitRegisterI32, 0 ,
56874 OPC_EmitRegisterI32, 0 ,
56875 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
56876 MVT::v4i32, 0,
56877 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
56878 MVT::v2i64, 5, 0, 1, 2, 3, 4,
56879 0,
56880 51, MVT::v8i16,
56881 OPC_Scope, 4,
56882 OPC_CheckPatternPredicate6,
56883 OPC_CompleteMatch, 1, 0,
56884
56885 4,
56886 OPC_CheckPatternPredicate7,
56887 OPC_CompleteMatch, 1, 0,
56888
56889 14,
56890 OPC_CheckPatternPredicate, 8,
56891 OPC_EmitInteger32, 28,
56892 OPC_EmitRegisterI32, 0 ,
56893 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
56894 MVT::v8i16, 3, 0, 1, 2,
56895 23,
56896 OPC_CheckPatternPredicate, 12,
56897 OPC_EmitInteger32, 0,
56898 OPC_EmitRegisterI32, 0 ,
56899 OPC_EmitRegisterI32, 0 ,
56900 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
56901 MVT::v4i32, 0,
56902 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
56903 MVT::v8i16, 5, 0, 1, 2, 3, 4,
56904 0,
56905 51, MVT::v16i8,
56906 OPC_Scope, 4,
56907 OPC_CheckPatternPredicate6,
56908 OPC_CompleteMatch, 1, 0,
56909
56910 4,
56911 OPC_CheckPatternPredicate7,
56912 OPC_CompleteMatch, 1, 0,
56913
56914 14,
56915 OPC_CheckPatternPredicate, 8,
56916 OPC_EmitInteger32, 28,
56917 OPC_EmitRegisterI32, 0 ,
56918 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q8),
56919 MVT::v16i8, 3, 0, 1, 2,
56920 23,
56921 OPC_CheckPatternPredicate, 12,
56922 OPC_EmitInteger32, 0,
56923 OPC_EmitRegisterI32, 0 ,
56924 OPC_EmitRegisterI32, 0 ,
56925 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
56926 MVT::v4i32, 0,
56927 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_8),
56928 MVT::v16i8, 5, 0, 1, 2, 3, 4,
56929 0,
56930 51, MVT::v2f64,
56931 OPC_Scope, 4,
56932 OPC_CheckPatternPredicate6,
56933 OPC_CompleteMatch, 1, 0,
56934
56935 4,
56936 OPC_CheckPatternPredicate7,
56937 OPC_CompleteMatch, 1, 0,
56938
56939 14,
56940 OPC_CheckPatternPredicate, 8,
56941 OPC_EmitInteger32, 28,
56942 OPC_EmitRegisterI32, 0 ,
56943 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q32),
56944 MVT::v2f64, 3, 0, 1, 2,
56945 23,
56946 OPC_CheckPatternPredicate, 12,
56947 OPC_EmitInteger32, 0,
56948 OPC_EmitRegisterI32, 0 ,
56949 OPC_EmitRegisterI32, 0 ,
56950 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
56951 MVT::v4i32, 0,
56952 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
56953 MVT::v2f64, 5, 0, 1, 2, 3, 4,
56954 0,
56955 51, MVT::v8f16,
56956 OPC_Scope, 4,
56957 OPC_CheckPatternPredicate6,
56958 OPC_CompleteMatch, 1, 0,
56959
56960 4,
56961 OPC_CheckPatternPredicate7,
56962 OPC_CompleteMatch, 1, 0,
56963
56964 14,
56965 OPC_CheckPatternPredicate, 8,
56966 OPC_EmitInteger32, 28,
56967 OPC_EmitRegisterI32, 0 ,
56968 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
56969 MVT::v8f16, 3, 0, 1, 2,
56970 23,
56971 OPC_CheckPatternPredicate, 12,
56972 OPC_EmitInteger32, 0,
56973 OPC_EmitRegisterI32, 0 ,
56974 OPC_EmitRegisterI32, 0 ,
56975 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
56976 MVT::v4i32, 0,
56977 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
56978 MVT::v8f16, 5, 0, 1, 2, 3, 4,
56979 0,
56980 22, MVT::v8bf16,
56981 OPC_Scope, 4,
56982 OPC_CheckPatternPredicate6,
56983 OPC_CompleteMatch, 1, 0,
56984
56985 14,
56986 OPC_CheckPatternPredicate, 8,
56987 OPC_EmitInteger32, 28,
56988 OPC_EmitRegisterI32, 0 ,
56989 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
56990 MVT::v8bf16, 3, 0, 1, 2,
56991 0,
56992 0,
56993 27|128,2,
56994 OPC_CheckChild0Type, MVT::v8f16,
56995 OPC_SwitchType , 12, MVT::v8i16,
56996 OPC_Scope, 4,
56997 OPC_CheckPatternPredicate1,
56998 OPC_CompleteMatch, 1, 0,
56999
57000 4,
57001 OPC_CheckPatternPredicate0,
57002 OPC_CompleteMatch, 1, 0,
57003
57004 0,
57005 51, MVT::v2i64,
57006 OPC_Scope, 4,
57007 OPC_CheckPatternPredicate6,
57008 OPC_CompleteMatch, 1, 0,
57009
57010 4,
57011 OPC_CheckPatternPredicate7,
57012 OPC_CompleteMatch, 1, 0,
57013
57014 14,
57015 OPC_CheckPatternPredicate, 8,
57016 OPC_EmitInteger32, 28,
57017 OPC_EmitRegisterI32, 0 ,
57018 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
57019 MVT::v2i64, 3, 0, 1, 2,
57020 23,
57021 OPC_CheckPatternPredicate, 12,
57022 OPC_EmitInteger32, 0,
57023 OPC_EmitRegisterI32, 0 ,
57024 OPC_EmitRegisterI32, 0 ,
57025 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57026 MVT::v4i32, 0,
57027 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
57028 MVT::v2i64, 5, 0, 1, 2, 3, 4,
57029 0,
57030 51, MVT::v4i32,
57031 OPC_Scope, 4,
57032 OPC_CheckPatternPredicate6,
57033 OPC_CompleteMatch, 1, 0,
57034
57035 4,
57036 OPC_CheckPatternPredicate7,
57037 OPC_CompleteMatch, 1, 0,
57038
57039 14,
57040 OPC_CheckPatternPredicate, 8,
57041 OPC_EmitInteger32, 28,
57042 OPC_EmitRegisterI32, 0 ,
57043 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
57044 MVT::v4i32, 3, 0, 1, 2,
57045 23,
57046 OPC_CheckPatternPredicate, 12,
57047 OPC_EmitInteger32, 0,
57048 OPC_EmitRegisterI32, 0 ,
57049 OPC_EmitRegisterI32, 0 ,
57050 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57051 MVT::v4i32, 0,
57052 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
57053 MVT::v4i32, 5, 0, 1, 2, 3, 4,
57054 0,
57055 51, MVT::v16i8,
57056 OPC_Scope, 4,
57057 OPC_CheckPatternPredicate6,
57058 OPC_CompleteMatch, 1, 0,
57059
57060 4,
57061 OPC_CheckPatternPredicate7,
57062 OPC_CompleteMatch, 1, 0,
57063
57064 14,
57065 OPC_CheckPatternPredicate, 8,
57066 OPC_EmitInteger32, 28,
57067 OPC_EmitRegisterI32, 0 ,
57068 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16q8),
57069 MVT::v16i8, 3, 0, 1, 2,
57070 23,
57071 OPC_CheckPatternPredicate, 12,
57072 OPC_EmitInteger32, 0,
57073 OPC_EmitRegisterI32, 0 ,
57074 OPC_EmitRegisterI32, 0 ,
57075 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57076 MVT::v4i32, 0,
57077 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV16_8),
57078 MVT::v16i8, 5, 0, 1, 2, 3, 4,
57079 0,
57080 51, MVT::v2f64,
57081 OPC_Scope, 4,
57082 OPC_CheckPatternPredicate6,
57083 OPC_CompleteMatch, 1, 0,
57084
57085 4,
57086 OPC_CheckPatternPredicate7,
57087 OPC_CompleteMatch, 1, 0,
57088
57089 14,
57090 OPC_CheckPatternPredicate, 8,
57091 OPC_EmitInteger32, 28,
57092 OPC_EmitRegisterI32, 0 ,
57093 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
57094 MVT::v2f64, 3, 0, 1, 2,
57095 23,
57096 OPC_CheckPatternPredicate, 12,
57097 OPC_EmitInteger32, 0,
57098 OPC_EmitRegisterI32, 0 ,
57099 OPC_EmitRegisterI32, 0 ,
57100 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57101 MVT::v4i32, 0,
57102 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
57103 MVT::v2f64, 5, 0, 1, 2, 3, 4,
57104 0,
57105 51, MVT::v4f32,
57106 OPC_Scope, 4,
57107 OPC_CheckPatternPredicate6,
57108 OPC_CompleteMatch, 1, 0,
57109
57110 4,
57111 OPC_CheckPatternPredicate7,
57112 OPC_CompleteMatch, 1, 0,
57113
57114 14,
57115 OPC_CheckPatternPredicate, 8,
57116 OPC_EmitInteger32, 28,
57117 OPC_EmitRegisterI32, 0 ,
57118 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
57119 MVT::v4f32, 3, 0, 1, 2,
57120 23,
57121 OPC_CheckPatternPredicate, 12,
57122 OPC_EmitInteger32, 0,
57123 OPC_EmitRegisterI32, 0 ,
57124 OPC_EmitRegisterI32, 0 ,
57125 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57126 MVT::v4i32, 0,
57127 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
57128 MVT::v4f32, 5, 0, 1, 2, 3, 4,
57129 0,
57130 0,
57131 2|128,1,
57132 OPC_CheckChild0Type, MVT::v8bf16,
57133 OPC_SwitchType , 4, MVT::v8i16,
57134 OPC_CheckPatternPredicate1,
57135 OPC_CompleteMatch, 1, 0,
57136
57137 22, MVT::v2i64,
57138 OPC_Scope, 4,
57139 OPC_CheckPatternPredicate6,
57140 OPC_CompleteMatch, 1, 0,
57141
57142 14,
57143 OPC_CheckPatternPredicate, 8,
57144 OPC_EmitInteger32, 28,
57145 OPC_EmitRegisterI32, 0 ,
57146 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
57147 MVT::v2i64, 3, 0, 1, 2,
57148 0,
57149 22, MVT::v4i32,
57150 OPC_Scope, 4,
57151 OPC_CheckPatternPredicate6,
57152 OPC_CompleteMatch, 1, 0,
57153
57154 14,
57155 OPC_CheckPatternPredicate, 8,
57156 OPC_EmitInteger32, 28,
57157 OPC_EmitRegisterI32, 0 ,
57158 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
57159 MVT::v4i32, 3, 0, 1, 2,
57160 0,
57161 22, MVT::v16i8,
57162 OPC_Scope, 4,
57163 OPC_CheckPatternPredicate6,
57164 OPC_CompleteMatch, 1, 0,
57165
57166 14,
57167 OPC_CheckPatternPredicate, 8,
57168 OPC_EmitInteger32, 28,
57169 OPC_EmitRegisterI32, 0 ,
57170 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16q8),
57171 MVT::v16i8, 3, 0, 1, 2,
57172 0,
57173 22, MVT::v2f64,
57174 OPC_Scope, 4,
57175 OPC_CheckPatternPredicate6,
57176 OPC_CompleteMatch, 1, 0,
57177
57178 14,
57179 OPC_CheckPatternPredicate, 8,
57180 OPC_EmitInteger32, 28,
57181 OPC_EmitRegisterI32, 0 ,
57182 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
57183 MVT::v2f64, 3, 0, 1, 2,
57184 0,
57185 22, MVT::v4f32,
57186 OPC_Scope, 4,
57187 OPC_CheckPatternPredicate6,
57188 OPC_CompleteMatch, 1, 0,
57189
57190 14,
57191 OPC_CheckPatternPredicate, 8,
57192 OPC_EmitInteger32, 28,
57193 OPC_EmitRegisterI32, 0 ,
57194 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
57195 MVT::v4f32, 3, 0, 1, 2,
57196 0,
57197 0,
57198 51|128,2,
57199 OPC_CheckChild0Type, MVT::v4i32,
57200 OPC_SwitchType , 51, MVT::v2i64,
57201 OPC_Scope, 4,
57202 OPC_CheckPatternPredicate6,
57203 OPC_CompleteMatch, 1, 0,
57204
57205 4,
57206 OPC_CheckPatternPredicate7,
57207 OPC_CompleteMatch, 1, 0,
57208
57209 14,
57210 OPC_CheckPatternPredicate, 8,
57211 OPC_EmitInteger32, 28,
57212 OPC_EmitRegisterI32, 0 ,
57213 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q32),
57214 MVT::v2i64, 3, 0, 1, 2,
57215 23,
57216 OPC_CheckPatternPredicate, 12,
57217 OPC_EmitInteger32, 0,
57218 OPC_EmitRegisterI32, 0 ,
57219 OPC_EmitRegisterI32, 0 ,
57220 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57221 MVT::v4i32, 0,
57222 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
57223 MVT::v2i64, 5, 0, 1, 2, 3, 4,
57224 0,
57225 51, MVT::v8i16,
57226 OPC_Scope, 4,
57227 OPC_CheckPatternPredicate6,
57228 OPC_CompleteMatch, 1, 0,
57229
57230 4,
57231 OPC_CheckPatternPredicate7,
57232 OPC_CompleteMatch, 1, 0,
57233
57234 14,
57235 OPC_CheckPatternPredicate, 8,
57236 OPC_EmitInteger32, 28,
57237 OPC_EmitRegisterI32, 0 ,
57238 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
57239 MVT::v8i16, 3, 0, 1, 2,
57240 23,
57241 OPC_CheckPatternPredicate, 12,
57242 OPC_EmitInteger32, 0,
57243 OPC_EmitRegisterI32, 0 ,
57244 OPC_EmitRegisterI32, 0 ,
57245 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57246 MVT::v4i32, 0,
57247 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
57248 MVT::v8i16, 5, 0, 1, 2, 3, 4,
57249 0,
57250 51, MVT::v16i8,
57251 OPC_Scope, 4,
57252 OPC_CheckPatternPredicate6,
57253 OPC_CompleteMatch, 1, 0,
57254
57255 4,
57256 OPC_CheckPatternPredicate7,
57257 OPC_CompleteMatch, 1, 0,
57258
57259 14,
57260 OPC_CheckPatternPredicate, 8,
57261 OPC_EmitInteger32, 28,
57262 OPC_EmitRegisterI32, 0 ,
57263 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q8),
57264 MVT::v16i8, 3, 0, 1, 2,
57265 23,
57266 OPC_CheckPatternPredicate, 12,
57267 OPC_EmitInteger32, 0,
57268 OPC_EmitRegisterI32, 0 ,
57269 OPC_EmitRegisterI32, 0 ,
57270 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57271 MVT::v4i32, 0,
57272 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_8),
57273 MVT::v16i8, 5, 0, 1, 2, 3, 4,
57274 0,
57275 12, MVT::v4f32,
57276 OPC_Scope, 4,
57277 OPC_CheckPatternPredicate1,
57278 OPC_CompleteMatch, 1, 0,
57279
57280 4,
57281 OPC_CheckPatternPredicate0,
57282 OPC_CompleteMatch, 1, 0,
57283
57284 0,
57285 51, MVT::v2f64,
57286 OPC_Scope, 4,
57287 OPC_CheckPatternPredicate6,
57288 OPC_CompleteMatch, 1, 0,
57289
57290 4,
57291 OPC_CheckPatternPredicate7,
57292 OPC_CompleteMatch, 1, 0,
57293
57294 14,
57295 OPC_CheckPatternPredicate, 8,
57296 OPC_EmitInteger32, 28,
57297 OPC_EmitRegisterI32, 0 ,
57298 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q32),
57299 MVT::v2f64, 3, 0, 1, 2,
57300 23,
57301 OPC_CheckPatternPredicate, 12,
57302 OPC_EmitInteger32, 0,
57303 OPC_EmitRegisterI32, 0 ,
57304 OPC_EmitRegisterI32, 0 ,
57305 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57306 MVT::v4i32, 0,
57307 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
57308 MVT::v2f64, 5, 0, 1, 2, 3, 4,
57309 0,
57310 51, MVT::v8f16,
57311 OPC_Scope, 4,
57312 OPC_CheckPatternPredicate6,
57313 OPC_CompleteMatch, 1, 0,
57314
57315 4,
57316 OPC_CheckPatternPredicate7,
57317 OPC_CompleteMatch, 1, 0,
57318
57319 14,
57320 OPC_CheckPatternPredicate, 8,
57321 OPC_EmitInteger32, 28,
57322 OPC_EmitRegisterI32, 0 ,
57323 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
57324 MVT::v8f16, 3, 0, 1, 2,
57325 23,
57326 OPC_CheckPatternPredicate, 12,
57327 OPC_EmitInteger32, 0,
57328 OPC_EmitRegisterI32, 0 ,
57329 OPC_EmitRegisterI32, 0 ,
57330 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57331 MVT::v4i32, 0,
57332 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
57333 MVT::v8f16, 5, 0, 1, 2, 3, 4,
57334 0,
57335 22, MVT::v8bf16,
57336 OPC_Scope, 4,
57337 OPC_CheckPatternPredicate6,
57338 OPC_CompleteMatch, 1, 0,
57339
57340 14,
57341 OPC_CheckPatternPredicate, 8,
57342 OPC_EmitInteger32, 28,
57343 OPC_EmitRegisterI32, 0 ,
57344 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
57345 MVT::v8bf16, 3, 0, 1, 2,
57346 0,
57347 0,
57348 33|128,2,
57349 OPC_CheckChild0Type, MVT::v8i16,
57350 OPC_SwitchType , 51, MVT::v2i64,
57351 OPC_Scope, 4,
57352 OPC_CheckPatternPredicate6,
57353 OPC_CompleteMatch, 1, 0,
57354
57355 4,
57356 OPC_CheckPatternPredicate7,
57357 OPC_CompleteMatch, 1, 0,
57358
57359 14,
57360 OPC_CheckPatternPredicate, 8,
57361 OPC_EmitInteger32, 28,
57362 OPC_EmitRegisterI32, 0 ,
57363 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
57364 MVT::v2i64, 3, 0, 1, 2,
57365 23,
57366 OPC_CheckPatternPredicate, 12,
57367 OPC_EmitInteger32, 0,
57368 OPC_EmitRegisterI32, 0 ,
57369 OPC_EmitRegisterI32, 0 ,
57370 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57371 MVT::v4i32, 0,
57372 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
57373 MVT::v2i64, 5, 0, 1, 2, 3, 4,
57374 0,
57375 51, MVT::v4i32,
57376 OPC_Scope, 4,
57377 OPC_CheckPatternPredicate6,
57378 OPC_CompleteMatch, 1, 0,
57379
57380 4,
57381 OPC_CheckPatternPredicate7,
57382 OPC_CompleteMatch, 1, 0,
57383
57384 14,
57385 OPC_CheckPatternPredicate, 8,
57386 OPC_EmitInteger32, 28,
57387 OPC_EmitRegisterI32, 0 ,
57388 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
57389 MVT::v4i32, 3, 0, 1, 2,
57390 23,
57391 OPC_CheckPatternPredicate, 12,
57392 OPC_EmitInteger32, 0,
57393 OPC_EmitRegisterI32, 0 ,
57394 OPC_EmitRegisterI32, 0 ,
57395 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57396 MVT::v4i32, 0,
57397 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
57398 MVT::v4i32, 5, 0, 1, 2, 3, 4,
57399 0,
57400 51, MVT::v16i8,
57401 OPC_Scope, 4,
57402 OPC_CheckPatternPredicate6,
57403 OPC_CompleteMatch, 1, 0,
57404
57405 4,
57406 OPC_CheckPatternPredicate7,
57407 OPC_CompleteMatch, 1, 0,
57408
57409 14,
57410 OPC_CheckPatternPredicate, 8,
57411 OPC_EmitInteger32, 28,
57412 OPC_EmitRegisterI32, 0 ,
57413 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16q8),
57414 MVT::v16i8, 3, 0, 1, 2,
57415 23,
57416 OPC_CheckPatternPredicate, 12,
57417 OPC_EmitInteger32, 0,
57418 OPC_EmitRegisterI32, 0 ,
57419 OPC_EmitRegisterI32, 0 ,
57420 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57421 MVT::v4i32, 0,
57422 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV16_8),
57423 MVT::v16i8, 5, 0, 1, 2, 3, 4,
57424 0,
57425 12, MVT::v8f16,
57426 OPC_Scope, 4,
57427 OPC_CheckPatternPredicate1,
57428 OPC_CompleteMatch, 1, 0,
57429
57430 4,
57431 OPC_CheckPatternPredicate0,
57432 OPC_CompleteMatch, 1, 0,
57433
57434 0,
57435 4, MVT::v8bf16,
57436 OPC_CheckPatternPredicate1,
57437 OPC_CompleteMatch, 1, 0,
57438
57439 51, MVT::v2f64,
57440 OPC_Scope, 4,
57441 OPC_CheckPatternPredicate6,
57442 OPC_CompleteMatch, 1, 0,
57443
57444 4,
57445 OPC_CheckPatternPredicate7,
57446 OPC_CompleteMatch, 1, 0,
57447
57448 14,
57449 OPC_CheckPatternPredicate, 8,
57450 OPC_EmitInteger32, 28,
57451 OPC_EmitRegisterI32, 0 ,
57452 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
57453 MVT::v2f64, 3, 0, 1, 2,
57454 23,
57455 OPC_CheckPatternPredicate, 12,
57456 OPC_EmitInteger32, 0,
57457 OPC_EmitRegisterI32, 0 ,
57458 OPC_EmitRegisterI32, 0 ,
57459 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57460 MVT::v4i32, 0,
57461 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
57462 MVT::v2f64, 5, 0, 1, 2, 3, 4,
57463 0,
57464 51, MVT::v4f32,
57465 OPC_Scope, 4,
57466 OPC_CheckPatternPredicate6,
57467 OPC_CompleteMatch, 1, 0,
57468
57469 4,
57470 OPC_CheckPatternPredicate7,
57471 OPC_CompleteMatch, 1, 0,
57472
57473 14,
57474 OPC_CheckPatternPredicate, 8,
57475 OPC_EmitInteger32, 28,
57476 OPC_EmitRegisterI32, 0 ,
57477 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
57478 MVT::v4f32, 3, 0, 1, 2,
57479 23,
57480 OPC_CheckPatternPredicate, 12,
57481 OPC_EmitInteger32, 0,
57482 OPC_EmitRegisterI32, 0 ,
57483 OPC_EmitRegisterI32, 0 ,
57484 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57485 MVT::v4i32, 0,
57486 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
57487 MVT::v4f32, 5, 0, 1, 2, 3, 4,
57488 0,
57489 0,
57490 90|128,2,
57491 OPC_CheckChild0Type, MVT::v16i8,
57492 OPC_SwitchType , 51, MVT::v2i64,
57493 OPC_Scope, 4,
57494 OPC_CheckPatternPredicate6,
57495 OPC_CompleteMatch, 1, 0,
57496
57497 4,
57498 OPC_CheckPatternPredicate7,
57499 OPC_CompleteMatch, 1, 0,
57500
57501 14,
57502 OPC_CheckPatternPredicate, 8,
57503 OPC_EmitInteger32, 28,
57504 OPC_EmitRegisterI32, 0 ,
57505 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q8),
57506 MVT::v2i64, 3, 0, 1, 2,
57507 23,
57508 OPC_CheckPatternPredicate, 12,
57509 OPC_EmitInteger32, 0,
57510 OPC_EmitRegisterI32, 0 ,
57511 OPC_EmitRegisterI32, 0 ,
57512 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57513 MVT::v4i32, 0,
57514 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_8),
57515 MVT::v2i64, 5, 0, 1, 2, 3, 4,
57516 0,
57517 51, MVT::v4i32,
57518 OPC_Scope, 4,
57519 OPC_CheckPatternPredicate6,
57520 OPC_CompleteMatch, 1, 0,
57521
57522 4,
57523 OPC_CheckPatternPredicate7,
57524 OPC_CompleteMatch, 1, 0,
57525
57526 14,
57527 OPC_CheckPatternPredicate, 8,
57528 OPC_EmitInteger32, 28,
57529 OPC_EmitRegisterI32, 0 ,
57530 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q8),
57531 MVT::v4i32, 3, 0, 1, 2,
57532 23,
57533 OPC_CheckPatternPredicate, 12,
57534 OPC_EmitInteger32, 0,
57535 OPC_EmitRegisterI32, 0 ,
57536 OPC_EmitRegisterI32, 0 ,
57537 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57538 MVT::v4i32, 0,
57539 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_8),
57540 MVT::v4i32, 5, 0, 1, 2, 3, 4,
57541 0,
57542 51, MVT::v8i16,
57543 OPC_Scope, 4,
57544 OPC_CheckPatternPredicate6,
57545 OPC_CompleteMatch, 1, 0,
57546
57547 4,
57548 OPC_CheckPatternPredicate7,
57549 OPC_CompleteMatch, 1, 0,
57550
57551 14,
57552 OPC_CheckPatternPredicate, 8,
57553 OPC_EmitInteger32, 28,
57554 OPC_EmitRegisterI32, 0 ,
57555 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16q8),
57556 MVT::v8i16, 3, 0, 1, 2,
57557 23,
57558 OPC_CheckPatternPredicate, 12,
57559 OPC_EmitInteger32, 0,
57560 OPC_EmitRegisterI32, 0 ,
57561 OPC_EmitRegisterI32, 0 ,
57562 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57563 MVT::v4i32, 0,
57564 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV16_8),
57565 MVT::v8i16, 5, 0, 1, 2, 3, 4,
57566 0,
57567 51, MVT::v2f64,
57568 OPC_Scope, 4,
57569 OPC_CheckPatternPredicate6,
57570 OPC_CompleteMatch, 1, 0,
57571
57572 4,
57573 OPC_CheckPatternPredicate7,
57574 OPC_CompleteMatch, 1, 0,
57575
57576 14,
57577 OPC_CheckPatternPredicate, 8,
57578 OPC_EmitInteger32, 28,
57579 OPC_EmitRegisterI32, 0 ,
57580 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q8),
57581 MVT::v2f64, 3, 0, 1, 2,
57582 23,
57583 OPC_CheckPatternPredicate, 12,
57584 OPC_EmitInteger32, 0,
57585 OPC_EmitRegisterI32, 0 ,
57586 OPC_EmitRegisterI32, 0 ,
57587 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57588 MVT::v4i32, 0,
57589 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_8),
57590 MVT::v2f64, 5, 0, 1, 2, 3, 4,
57591 0,
57592 51, MVT::v4f32,
57593 OPC_Scope, 4,
57594 OPC_CheckPatternPredicate6,
57595 OPC_CompleteMatch, 1, 0,
57596
57597 4,
57598 OPC_CheckPatternPredicate7,
57599 OPC_CompleteMatch, 1, 0,
57600
57601 14,
57602 OPC_CheckPatternPredicate, 8,
57603 OPC_EmitInteger32, 28,
57604 OPC_EmitRegisterI32, 0 ,
57605 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q8),
57606 MVT::v4f32, 3, 0, 1, 2,
57607 23,
57608 OPC_CheckPatternPredicate, 12,
57609 OPC_EmitInteger32, 0,
57610 OPC_EmitRegisterI32, 0 ,
57611 OPC_EmitRegisterI32, 0 ,
57612 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57613 MVT::v4i32, 0,
57614 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_8),
57615 MVT::v4f32, 5, 0, 1, 2, 3, 4,
57616 0,
57617 51, MVT::v8f16,
57618 OPC_Scope, 4,
57619 OPC_CheckPatternPredicate6,
57620 OPC_CompleteMatch, 1, 0,
57621
57622 4,
57623 OPC_CheckPatternPredicate7,
57624 OPC_CompleteMatch, 1, 0,
57625
57626 14,
57627 OPC_CheckPatternPredicate, 8,
57628 OPC_EmitInteger32, 28,
57629 OPC_EmitRegisterI32, 0 ,
57630 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16q8),
57631 MVT::v8f16, 3, 0, 1, 2,
57632 23,
57633 OPC_CheckPatternPredicate, 12,
57634 OPC_EmitInteger32, 0,
57635 OPC_EmitRegisterI32, 0 ,
57636 OPC_EmitRegisterI32, 0 ,
57637 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57638 MVT::v4i32, 0,
57639 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV16_8),
57640 MVT::v8f16, 5, 0, 1, 2, 3, 4,
57641 0,
57642 22, MVT::v8bf16,
57643 OPC_Scope, 4,
57644 OPC_CheckPatternPredicate6,
57645 OPC_CompleteMatch, 1, 0,
57646
57647 14,
57648 OPC_CheckPatternPredicate, 8,
57649 OPC_EmitInteger32, 28,
57650 OPC_EmitRegisterI32, 0 ,
57651 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16q8),
57652 MVT::v8bf16, 3, 0, 1, 2,
57653 0,
57654 0,
57655 51|128,2,
57656 OPC_CheckChild0Type, MVT::v2i64,
57657 OPC_SwitchType , 51, MVT::v4i32,
57658 OPC_Scope, 4,
57659 OPC_CheckPatternPredicate6,
57660 OPC_CompleteMatch, 1, 0,
57661
57662 4,
57663 OPC_CheckPatternPredicate7,
57664 OPC_CompleteMatch, 1, 0,
57665
57666 14,
57667 OPC_CheckPatternPredicate, 8,
57668 OPC_EmitInteger32, 28,
57669 OPC_EmitRegisterI32, 0 ,
57670 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q32),
57671 MVT::v4i32, 3, 0, 1, 2,
57672 23,
57673 OPC_CheckPatternPredicate, 12,
57674 OPC_EmitInteger32, 0,
57675 OPC_EmitRegisterI32, 0 ,
57676 OPC_EmitRegisterI32, 0 ,
57677 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57678 MVT::v4i32, 0,
57679 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
57680 MVT::v4i32, 5, 0, 1, 2, 3, 4,
57681 0,
57682 51, MVT::v8i16,
57683 OPC_Scope, 4,
57684 OPC_CheckPatternPredicate6,
57685 OPC_CompleteMatch, 1, 0,
57686
57687 4,
57688 OPC_CheckPatternPredicate7,
57689 OPC_CompleteMatch, 1, 0,
57690
57691 14,
57692 OPC_CheckPatternPredicate, 8,
57693 OPC_EmitInteger32, 28,
57694 OPC_EmitRegisterI32, 0 ,
57695 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
57696 MVT::v8i16, 3, 0, 1, 2,
57697 23,
57698 OPC_CheckPatternPredicate, 12,
57699 OPC_EmitInteger32, 0,
57700 OPC_EmitRegisterI32, 0 ,
57701 OPC_EmitRegisterI32, 0 ,
57702 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57703 MVT::v4i32, 0,
57704 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
57705 MVT::v8i16, 5, 0, 1, 2, 3, 4,
57706 0,
57707 51, MVT::v16i8,
57708 OPC_Scope, 4,
57709 OPC_CheckPatternPredicate6,
57710 OPC_CompleteMatch, 1, 0,
57711
57712 4,
57713 OPC_CheckPatternPredicate7,
57714 OPC_CompleteMatch, 1, 0,
57715
57716 14,
57717 OPC_CheckPatternPredicate, 8,
57718 OPC_EmitInteger32, 28,
57719 OPC_EmitRegisterI32, 0 ,
57720 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q8),
57721 MVT::v16i8, 3, 0, 1, 2,
57722 23,
57723 OPC_CheckPatternPredicate, 12,
57724 OPC_EmitInteger32, 0,
57725 OPC_EmitRegisterI32, 0 ,
57726 OPC_EmitRegisterI32, 0 ,
57727 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57728 MVT::v4i32, 0,
57729 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_8),
57730 MVT::v16i8, 5, 0, 1, 2, 3, 4,
57731 0,
57732 12, MVT::v2f64,
57733 OPC_Scope, 4,
57734 OPC_CheckPatternPredicate1,
57735 OPC_CompleteMatch, 1, 0,
57736
57737 4,
57738 OPC_CheckPatternPredicate0,
57739 OPC_CompleteMatch, 1, 0,
57740
57741 0,
57742 51, MVT::v4f32,
57743 OPC_Scope, 4,
57744 OPC_CheckPatternPredicate6,
57745 OPC_CompleteMatch, 1, 0,
57746
57747 4,
57748 OPC_CheckPatternPredicate7,
57749 OPC_CompleteMatch, 1, 0,
57750
57751 14,
57752 OPC_CheckPatternPredicate, 8,
57753 OPC_EmitInteger32, 28,
57754 OPC_EmitRegisterI32, 0 ,
57755 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q32),
57756 MVT::v4f32, 3, 0, 1, 2,
57757 23,
57758 OPC_CheckPatternPredicate, 12,
57759 OPC_EmitInteger32, 0,
57760 OPC_EmitRegisterI32, 0 ,
57761 OPC_EmitRegisterI32, 0 ,
57762 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57763 MVT::v4i32, 0,
57764 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
57765 MVT::v4f32, 5, 0, 1, 2, 3, 4,
57766 0,
57767 51, MVT::v8f16,
57768 OPC_Scope, 4,
57769 OPC_CheckPatternPredicate6,
57770 OPC_CompleteMatch, 1, 0,
57771
57772 4,
57773 OPC_CheckPatternPredicate7,
57774 OPC_CompleteMatch, 1, 0,
57775
57776 14,
57777 OPC_CheckPatternPredicate, 8,
57778 OPC_EmitInteger32, 28,
57779 OPC_EmitRegisterI32, 0 ,
57780 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
57781 MVT::v8f16, 3, 0, 1, 2,
57782 23,
57783 OPC_CheckPatternPredicate, 12,
57784 OPC_EmitInteger32, 0,
57785 OPC_EmitRegisterI32, 0 ,
57786 OPC_EmitRegisterI32, 0 ,
57787 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
57788 MVT::v4i32, 0,
57789 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
57790 MVT::v8f16, 5, 0, 1, 2, 3, 4,
57791 0,
57792 22, MVT::v8bf16,
57793 OPC_Scope, 4,
57794 OPC_CheckPatternPredicate6,
57795 OPC_CompleteMatch, 1, 0,
57796
57797 14,
57798 OPC_CheckPatternPredicate, 8,
57799 OPC_EmitInteger32, 28,
57800 OPC_EmitRegisterI32, 0 ,
57801 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
57802 MVT::v8bf16, 3, 0, 1, 2,
57803 0,
57804 0,
57805 0,
57806 0,
57807 16, TARGET_VAL(ARMISD::VMOVRRD),
57808 OPC_RecordChild0,
57809 OPC_CheckPatternPredicate, 35,
57810 OPC_EmitInteger32, 28,
57811 OPC_EmitRegisterI32, 0 ,
57812 OPC_MorphNodeTo2None, TARGET_VAL(ARM::VMOVRRD),
57813 MVT::i32, MVT::i32, 3, 0, 1, 2,
57814 37, TARGET_VAL(ARMISD::VMOVrh),
57815 OPC_RecordChild0,
57816 OPC_Scope, 16,
57817 OPC_CheckChild0Type, MVT::f16,
57818 OPC_CheckPatternPredicate, 45,
57819 OPC_EmitInteger32, 28,
57820 OPC_EmitRegisterI32, 0 ,
57821 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVRH),
57822 MVT::i32, 3, 0, 1, 2,
57823 16,
57824 OPC_CheckChild0Type, MVT::bf16,
57825 OPC_CheckPatternPredicate, 45,
57826 OPC_EmitInteger32, 28,
57827 OPC_EmitRegisterI32, 0 ,
57828 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVRH),
57829 MVT::i32, 3, 0, 1, 2,
57830 0,
57831 15, TARGET_VAL(ARMISD::FMSTAT),
57832 OPC_CaptureGlueInput,
57833 OPC_CheckPatternPredicate, 35,
57834 OPC_EmitInteger32, 28,
57835 OPC_EmitRegisterI32, 0 ,
57836 OPC_MorphNodeTo1, TARGET_VAL(ARM::FMSTAT), 0|OPFL_GlueInput|OPFL_GlueOutput,
57837 MVT::i32, 2, 0, 1,
57838 14, TARGET_VAL(ISD::GET_FPENV),
57839 OPC_RecordNode,
57840 OPC_CheckTypeI32,
57841 OPC_EmitMergeInputChains1_0,
57842 OPC_EmitInteger32, 28,
57843 OPC_EmitRegisterI32, 0 ,
57844 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::VMRS),
57845 MVT::i32, 2, 1, 2,
57846 15, TARGET_VAL(ISD::SET_FPENV),
57847 OPC_RecordNode,
57848 OPC_RecordChild1,
57849 OPC_CheckChild1TypeI32,
57850 OPC_EmitMergeInputChains1_0,
57851 OPC_EmitInteger32, 28,
57852 OPC_EmitRegisterI32, 0 ,
57853 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::VMSR),
57854 3, 1, 2, 3,
57855 14, TARGET_VAL(ISD::GET_FPMODE),
57856 OPC_RecordNode,
57857 OPC_CheckTypeI32,
57858 OPC_EmitMergeInputChains1_0,
57859 OPC_EmitInteger32, 28,
57860 OPC_EmitRegisterI32, 0 ,
57861 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::VMRS),
57862 MVT::i32, 2, 1, 2,
57863 61, TARGET_VAL(ARMISD::VADDVs),
57864 OPC_RecordChild0,
57865 OPC_CheckTypeI32,
57866 OPC_Scope, 18,
57867 OPC_CheckChild0Type, MVT::v16i8,
57868 OPC_CheckPatternPredicate0,
57869 OPC_EmitInteger32, 0,
57870 OPC_EmitRegisterI32, 0 ,
57871 OPC_EmitRegisterI32, 0 ,
57872 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs8no_acc),
57873 MVT::i32, 4, 0, 1, 2, 3,
57874 18,
57875 OPC_CheckChild0Type, MVT::v8i16,
57876 OPC_CheckPatternPredicate0,
57877 OPC_EmitInteger32, 0,
57878 OPC_EmitRegisterI32, 0 ,
57879 OPC_EmitRegisterI32, 0 ,
57880 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs16no_acc),
57881 MVT::i32, 4, 0, 1, 2, 3,
57882 18,
57883 OPC_CheckChild0Type, MVT::v4i32,
57884 OPC_CheckPatternPredicate0,
57885 OPC_EmitInteger32, 0,
57886 OPC_EmitRegisterI32, 0 ,
57887 OPC_EmitRegisterI32, 0 ,
57888 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs32no_acc),
57889 MVT::i32, 4, 0, 1, 2, 3,
57890 0,
57891 64, TARGET_VAL(ARMISD::VADDVps),
57892 OPC_RecordChild0,
57893 OPC_CheckTypeI32,
57894 OPC_Scope, 19,
57895 OPC_CheckChild0Type, MVT::v16i8,
57896 OPC_RecordChild1,
57897 OPC_CheckChild1Type, MVT::v16i1,
57898 OPC_CheckPatternPredicate0,
57899 OPC_EmitInteger32, 2,
57900 OPC_EmitRegisterI32, 0 ,
57901 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs8no_acc),
57902 MVT::i32, 4, 0, 2, 1, 3,
57903 19,
57904 OPC_CheckChild0Type, MVT::v8i16,
57905 OPC_RecordChild1,
57906 OPC_CheckChild1Type, MVT::v8i1,
57907 OPC_CheckPatternPredicate0,
57908 OPC_EmitInteger32, 2,
57909 OPC_EmitRegisterI32, 0 ,
57910 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs16no_acc),
57911 MVT::i32, 4, 0, 2, 1, 3,
57912 19,
57913 OPC_CheckChild0Type, MVT::v4i32,
57914 OPC_RecordChild1,
57915 OPC_CheckChild1Type, MVT::v4i1,
57916 OPC_CheckPatternPredicate0,
57917 OPC_EmitInteger32, 2,
57918 OPC_EmitRegisterI32, 0 ,
57919 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVs32no_acc),
57920 MVT::i32, 4, 0, 2, 1, 3,
57921 0,
57922 61, TARGET_VAL(ARMISD::VADDVu),
57923 OPC_RecordChild0,
57924 OPC_CheckTypeI32,
57925 OPC_Scope, 18,
57926 OPC_CheckChild0Type, MVT::v16i8,
57927 OPC_CheckPatternPredicate0,
57928 OPC_EmitInteger32, 0,
57929 OPC_EmitRegisterI32, 0 ,
57930 OPC_EmitRegisterI32, 0 ,
57931 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8no_acc),
57932 MVT::i32, 4, 0, 1, 2, 3,
57933 18,
57934 OPC_CheckChild0Type, MVT::v8i16,
57935 OPC_CheckPatternPredicate0,
57936 OPC_EmitInteger32, 0,
57937 OPC_EmitRegisterI32, 0 ,
57938 OPC_EmitRegisterI32, 0 ,
57939 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16no_acc),
57940 MVT::i32, 4, 0, 1, 2, 3,
57941 18,
57942 OPC_CheckChild0Type, MVT::v4i32,
57943 OPC_CheckPatternPredicate0,
57944 OPC_EmitInteger32, 0,
57945 OPC_EmitRegisterI32, 0 ,
57946 OPC_EmitRegisterI32, 0 ,
57947 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32no_acc),
57948 MVT::i32, 4, 0, 1, 2, 3,
57949 0,
57950 64, TARGET_VAL(ARMISD::VADDVpu),
57951 OPC_RecordChild0,
57952 OPC_CheckTypeI32,
57953 OPC_Scope, 19,
57954 OPC_CheckChild0Type, MVT::v16i8,
57955 OPC_RecordChild1,
57956 OPC_CheckChild1Type, MVT::v16i1,
57957 OPC_CheckPatternPredicate0,
57958 OPC_EmitInteger32, 2,
57959 OPC_EmitRegisterI32, 0 ,
57960 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu8no_acc),
57961 MVT::i32, 4, 0, 2, 1, 3,
57962 19,
57963 OPC_CheckChild0Type, MVT::v8i16,
57964 OPC_RecordChild1,
57965 OPC_CheckChild1Type, MVT::v8i1,
57966 OPC_CheckPatternPredicate0,
57967 OPC_EmitInteger32, 2,
57968 OPC_EmitRegisterI32, 0 ,
57969 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu16no_acc),
57970 MVT::i32, 4, 0, 2, 1, 3,
57971 19,
57972 OPC_CheckChild0Type, MVT::v4i32,
57973 OPC_RecordChild1,
57974 OPC_CheckChild1Type, MVT::v4i1,
57975 OPC_CheckPatternPredicate0,
57976 OPC_EmitInteger32, 2,
57977 OPC_EmitRegisterI32, 0 ,
57978 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDVu32no_acc),
57979 MVT::i32, 4, 0, 2, 1, 3,
57980 0,
57981 24, TARGET_VAL(ARMISD::VADDLVs),
57982 OPC_RecordChild0,
57983 OPC_CheckChild0Type, MVT::v4i32,
57984 OPC_CheckTypeI32,
57985 OPC_CheckTypeRes, 1, MVT::i32,
57986 OPC_CheckPatternPredicate0,
57987 OPC_EmitInteger32, 0,
57988 OPC_EmitRegisterI32, 0 ,
57989 OPC_EmitRegisterI32, 0 ,
57990 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VADDLVs32no_acc),
57991 MVT::i32, MVT::i32, 4, 0, 1, 2, 3,
57992 30, TARGET_VAL(ARMISD::VADDLVAs),
57993 OPC_RecordChild0,
57994 OPC_CheckChild0TypeI32,
57995 OPC_RecordChild1,
57996 OPC_CheckChild1TypeI32,
57997 OPC_RecordChild2,
57998 OPC_CheckChild2Type, MVT::v4i32,
57999 OPC_CheckTypeI32,
58000 OPC_CheckTypeRes, 1, MVT::i32,
58001 OPC_CheckPatternPredicate0,
58002 OPC_EmitInteger32, 0,
58003 OPC_EmitRegisterI32, 0 ,
58004 OPC_EmitRegisterI32, 0 ,
58005 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VADDLVs32acc),
58006 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
58007 25, TARGET_VAL(ARMISD::VADDLVps),
58008 OPC_RecordChild0,
58009 OPC_CheckChild0Type, MVT::v4i32,
58010 OPC_RecordChild1,
58011 OPC_CheckChild1Type, MVT::v4i1,
58012 OPC_CheckTypeI32,
58013 OPC_CheckTypeRes, 1, MVT::i32,
58014 OPC_CheckPatternPredicate0,
58015 OPC_EmitInteger32, 2,
58016 OPC_EmitRegisterI32, 0 ,
58017 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VADDLVs32no_acc),
58018 MVT::i32, MVT::i32, 4, 0, 2, 1, 3,
58019 31, TARGET_VAL(ARMISD::VADDLVAps),
58020 OPC_RecordChild0,
58021 OPC_CheckChild0TypeI32,
58022 OPC_RecordChild1,
58023 OPC_CheckChild1TypeI32,
58024 OPC_RecordChild2,
58025 OPC_CheckChild2Type, MVT::v4i32,
58026 OPC_RecordChild3,
58027 OPC_CheckChild3Type, MVT::v4i1,
58028 OPC_CheckTypeI32,
58029 OPC_CheckTypeRes, 1, MVT::i32,
58030 OPC_CheckPatternPredicate0,
58031 OPC_EmitInteger32, 2,
58032 OPC_EmitRegisterI32, 0 ,
58033 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VADDLVs32acc),
58034 MVT::i32, MVT::i32, 6, 0, 1, 2, 4, 3, 5,
58035 24, TARGET_VAL(ARMISD::VADDLVu),
58036 OPC_RecordChild0,
58037 OPC_CheckChild0Type, MVT::v4i32,
58038 OPC_CheckTypeI32,
58039 OPC_CheckTypeRes, 1, MVT::i32,
58040 OPC_CheckPatternPredicate0,
58041 OPC_EmitInteger32, 0,
58042 OPC_EmitRegisterI32, 0 ,
58043 OPC_EmitRegisterI32, 0 ,
58044 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VADDLVu32no_acc),
58045 MVT::i32, MVT::i32, 4, 0, 1, 2, 3,
58046 30, TARGET_VAL(ARMISD::VADDLVAu),
58047 OPC_RecordChild0,
58048 OPC_CheckChild0TypeI32,
58049 OPC_RecordChild1,
58050 OPC_CheckChild1TypeI32,
58051 OPC_RecordChild2,
58052 OPC_CheckChild2Type, MVT::v4i32,
58053 OPC_CheckTypeI32,
58054 OPC_CheckTypeRes, 1, MVT::i32,
58055 OPC_CheckPatternPredicate0,
58056 OPC_EmitInteger32, 0,
58057 OPC_EmitRegisterI32, 0 ,
58058 OPC_EmitRegisterI32, 0 ,
58059 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VADDLVu32acc),
58060 MVT::i32, MVT::i32, 6, 0, 1, 2, 3, 4, 5,
58061 25, TARGET_VAL(ARMISD::VADDLVpu),
58062 OPC_RecordChild0,
58063 OPC_CheckChild0Type, MVT::v4i32,
58064 OPC_RecordChild1,
58065 OPC_CheckChild1Type, MVT::v4i1,
58066 OPC_CheckTypeI32,
58067 OPC_CheckTypeRes, 1, MVT::i32,
58068 OPC_CheckPatternPredicate0,
58069 OPC_EmitInteger32, 2,
58070 OPC_EmitRegisterI32, 0 ,
58071 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VADDLVu32no_acc),
58072 MVT::i32, MVT::i32, 4, 0, 2, 1, 3,
58073 31, TARGET_VAL(ARMISD::VADDLVApu),
58074 OPC_RecordChild0,
58075 OPC_CheckChild0TypeI32,
58076 OPC_RecordChild1,
58077 OPC_CheckChild1TypeI32,
58078 OPC_RecordChild2,
58079 OPC_CheckChild2Type, MVT::v4i32,
58080 OPC_RecordChild3,
58081 OPC_CheckChild3Type, MVT::v4i1,
58082 OPC_CheckTypeI32,
58083 OPC_CheckTypeRes, 1, MVT::i32,
58084 OPC_CheckPatternPredicate0,
58085 OPC_EmitInteger32, 2,
58086 OPC_EmitRegisterI32, 0 ,
58087 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VADDLVu32acc),
58088 MVT::i32, MVT::i32, 6, 0, 1, 2, 4, 3, 5,
58089 66, TARGET_VAL(ARMISD::VMINVu),
58090 OPC_RecordChild0,
58091 OPC_CheckChild0TypeI32,
58092 OPC_RecordChild1,
58093 OPC_CheckTypeI32,
58094 OPC_Scope, 19,
58095 OPC_CheckChild1Type, MVT::v16i8,
58096 OPC_CheckPatternPredicate0,
58097 OPC_EmitInteger32, 0,
58098 OPC_EmitRegisterI32, 0 ,
58099 OPC_EmitRegisterI32, 0 ,
58100 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu8),
58101 MVT::i32, 5, 0, 1, 2, 3, 4,
58102 19,
58103 OPC_CheckChild1Type, MVT::v8i16,
58104 OPC_CheckPatternPredicate0,
58105 OPC_EmitInteger32, 0,
58106 OPC_EmitRegisterI32, 0 ,
58107 OPC_EmitRegisterI32, 0 ,
58108 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu16),
58109 MVT::i32, 5, 0, 1, 2, 3, 4,
58110 19,
58111 OPC_CheckChild1Type, MVT::v4i32,
58112 OPC_CheckPatternPredicate0,
58113 OPC_EmitInteger32, 0,
58114 OPC_EmitRegisterI32, 0 ,
58115 OPC_EmitRegisterI32, 0 ,
58116 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu32),
58117 MVT::i32, 5, 0, 1, 2, 3, 4,
58118 0,
58119 66, TARGET_VAL(ARMISD::VMINVs),
58120 OPC_RecordChild0,
58121 OPC_CheckChild0TypeI32,
58122 OPC_RecordChild1,
58123 OPC_CheckTypeI32,
58124 OPC_Scope, 19,
58125 OPC_CheckChild1Type, MVT::v16i8,
58126 OPC_CheckPatternPredicate0,
58127 OPC_EmitInteger32, 0,
58128 OPC_EmitRegisterI32, 0 ,
58129 OPC_EmitRegisterI32, 0 ,
58130 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs8),
58131 MVT::i32, 5, 0, 1, 2, 3, 4,
58132 19,
58133 OPC_CheckChild1Type, MVT::v8i16,
58134 OPC_CheckPatternPredicate0,
58135 OPC_EmitInteger32, 0,
58136 OPC_EmitRegisterI32, 0 ,
58137 OPC_EmitRegisterI32, 0 ,
58138 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs16),
58139 MVT::i32, 5, 0, 1, 2, 3, 4,
58140 19,
58141 OPC_CheckChild1Type, MVT::v4i32,
58142 OPC_CheckPatternPredicate0,
58143 OPC_EmitInteger32, 0,
58144 OPC_EmitRegisterI32, 0 ,
58145 OPC_EmitRegisterI32, 0 ,
58146 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs32),
58147 MVT::i32, 5, 0, 1, 2, 3, 4,
58148 0,
58149 66, TARGET_VAL(ARMISD::VMAXVu),
58150 OPC_RecordChild0,
58151 OPC_CheckChild0TypeI32,
58152 OPC_RecordChild1,
58153 OPC_CheckTypeI32,
58154 OPC_Scope, 19,
58155 OPC_CheckChild1Type, MVT::v16i8,
58156 OPC_CheckPatternPredicate0,
58157 OPC_EmitInteger32, 0,
58158 OPC_EmitRegisterI32, 0 ,
58159 OPC_EmitRegisterI32, 0 ,
58160 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu8),
58161 MVT::i32, 5, 0, 1, 2, 3, 4,
58162 19,
58163 OPC_CheckChild1Type, MVT::v8i16,
58164 OPC_CheckPatternPredicate0,
58165 OPC_EmitInteger32, 0,
58166 OPC_EmitRegisterI32, 0 ,
58167 OPC_EmitRegisterI32, 0 ,
58168 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu16),
58169 MVT::i32, 5, 0, 1, 2, 3, 4,
58170 19,
58171 OPC_CheckChild1Type, MVT::v4i32,
58172 OPC_CheckPatternPredicate0,
58173 OPC_EmitInteger32, 0,
58174 OPC_EmitRegisterI32, 0 ,
58175 OPC_EmitRegisterI32, 0 ,
58176 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu32),
58177 MVT::i32, 5, 0, 1, 2, 3, 4,
58178 0,
58179 66, TARGET_VAL(ARMISD::VMAXVs),
58180 OPC_RecordChild0,
58181 OPC_CheckChild0TypeI32,
58182 OPC_RecordChild1,
58183 OPC_CheckTypeI32,
58184 OPC_Scope, 19,
58185 OPC_CheckChild1Type, MVT::v16i8,
58186 OPC_CheckPatternPredicate0,
58187 OPC_EmitInteger32, 0,
58188 OPC_EmitRegisterI32, 0 ,
58189 OPC_EmitRegisterI32, 0 ,
58190 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs8),
58191 MVT::i32, 5, 0, 1, 2, 3, 4,
58192 19,
58193 OPC_CheckChild1Type, MVT::v8i16,
58194 OPC_CheckPatternPredicate0,
58195 OPC_EmitInteger32, 0,
58196 OPC_EmitRegisterI32, 0 ,
58197 OPC_EmitRegisterI32, 0 ,
58198 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs16),
58199 MVT::i32, 5, 0, 1, 2, 3, 4,
58200 19,
58201 OPC_CheckChild1Type, MVT::v4i32,
58202 OPC_CheckPatternPredicate0,
58203 OPC_EmitInteger32, 0,
58204 OPC_EmitRegisterI32, 0 ,
58205 OPC_EmitRegisterI32, 0 ,
58206 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs32),
58207 MVT::i32, 5, 0, 1, 2, 3, 4,
58208 0,
58209 50, TARGET_VAL(ARMISD::VMLAVs),
58210 OPC_RecordChild0,
58211 OPC_CheckTypeI32,
58212 OPC_Scope, 22,
58213 OPC_CheckChild0Type, MVT::v8i16,
58214 OPC_RecordChild1,
58215 OPC_CheckChild1Type, MVT::v8i16,
58216 OPC_CheckPatternPredicate0,
58217 OPC_EmitInteger32, 0,
58218 OPC_EmitRegisterI32, 0 ,
58219 OPC_EmitRegisterI32, 0 ,
58220 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVs16),
58221 MVT::i32, 5, 0, 1, 2, 3, 4,
58222 22,
58223 OPC_CheckChild0Type, MVT::v16i8,
58224 OPC_RecordChild1,
58225 OPC_CheckChild1Type, MVT::v16i8,
58226 OPC_CheckPatternPredicate0,
58227 OPC_EmitInteger32, 0,
58228 OPC_EmitRegisterI32, 0 ,
58229 OPC_EmitRegisterI32, 0 ,
58230 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVs8),
58231 MVT::i32, 5, 0, 1, 2, 3, 4,
58232 0,
58233 50, TARGET_VAL(ARMISD::VMLAVu),
58234 OPC_RecordChild0,
58235 OPC_CheckTypeI32,
58236 OPC_Scope, 22,
58237 OPC_CheckChild0Type, MVT::v8i16,
58238 OPC_RecordChild1,
58239 OPC_CheckChild1Type, MVT::v8i16,
58240 OPC_CheckPatternPredicate0,
58241 OPC_EmitInteger32, 0,
58242 OPC_EmitRegisterI32, 0 ,
58243 OPC_EmitRegisterI32, 0 ,
58244 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu16),
58245 MVT::i32, 5, 0, 1, 2, 3, 4,
58246 22,
58247 OPC_CheckChild0Type, MVT::v16i8,
58248 OPC_RecordChild1,
58249 OPC_CheckChild1Type, MVT::v16i8,
58250 OPC_CheckPatternPredicate0,
58251 OPC_EmitInteger32, 0,
58252 OPC_EmitRegisterI32, 0 ,
58253 OPC_EmitRegisterI32, 0 ,
58254 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu8),
58255 MVT::i32, 5, 0, 1, 2, 3, 4,
58256 0,
58257 52, TARGET_VAL(ARMISD::VMLAVps),
58258 OPC_RecordChild0,
58259 OPC_CheckTypeI32,
58260 OPC_Scope, 23,
58261 OPC_CheckChild0Type, MVT::v8i16,
58262 OPC_RecordChild1,
58263 OPC_CheckChild1Type, MVT::v8i16,
58264 OPC_RecordChild2,
58265 OPC_CheckChild2Type, MVT::v8i1,
58266 OPC_CheckPatternPredicate0,
58267 OPC_EmitInteger32, 2,
58268 OPC_EmitRegisterI32, 0 ,
58269 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVs16),
58270 MVT::i32, 5, 0, 1, 3, 2, 4,
58271 23,
58272 OPC_CheckChild0Type, MVT::v16i8,
58273 OPC_RecordChild1,
58274 OPC_CheckChild1Type, MVT::v16i8,
58275 OPC_RecordChild2,
58276 OPC_CheckChild2Type, MVT::v16i1,
58277 OPC_CheckPatternPredicate0,
58278 OPC_EmitInteger32, 2,
58279 OPC_EmitRegisterI32, 0 ,
58280 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVs8),
58281 MVT::i32, 5, 0, 1, 3, 2, 4,
58282 0,
58283 52, TARGET_VAL(ARMISD::VMLAVpu),
58284 OPC_RecordChild0,
58285 OPC_CheckTypeI32,
58286 OPC_Scope, 23,
58287 OPC_CheckChild0Type, MVT::v8i16,
58288 OPC_RecordChild1,
58289 OPC_CheckChild1Type, MVT::v8i16,
58290 OPC_RecordChild2,
58291 OPC_CheckChild2Type, MVT::v8i1,
58292 OPC_CheckPatternPredicate0,
58293 OPC_EmitInteger32, 2,
58294 OPC_EmitRegisterI32, 0 ,
58295 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu16),
58296 MVT::i32, 5, 0, 1, 3, 2, 4,
58297 23,
58298 OPC_CheckChild0Type, MVT::v16i8,
58299 OPC_RecordChild1,
58300 OPC_CheckChild1Type, MVT::v16i8,
58301 OPC_RecordChild2,
58302 OPC_CheckChild2Type, MVT::v16i1,
58303 OPC_CheckPatternPredicate0,
58304 OPC_EmitInteger32, 2,
58305 OPC_EmitRegisterI32, 0 ,
58306 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMLADAVu8),
58307 MVT::i32, 5, 0, 1, 3, 2, 4,
58308 0,
58309 58, TARGET_VAL(ARMISD::VMLALVs),
58310 OPC_RecordChild0,
58311 OPC_CheckTypeI32,
58312 OPC_Scope, 26,
58313 OPC_CheckChild0Type, MVT::v4i32,
58314 OPC_RecordChild1,
58315 OPC_CheckChild1Type, MVT::v4i32,
58316 OPC_CheckTypeRes, 1, MVT::i32,
58317 OPC_CheckPatternPredicate0,
58318 OPC_EmitInteger32, 0,
58319 OPC_EmitRegisterI32, 0 ,
58320 OPC_EmitRegisterI32, 0 ,
58321 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVs32),
58322 MVT::i32, MVT::i32, 5, 0, 1, 2, 3, 4,
58323 26,
58324 OPC_CheckChild0Type, MVT::v8i16,
58325 OPC_RecordChild1,
58326 OPC_CheckChild1Type, MVT::v8i16,
58327 OPC_CheckTypeRes, 1, MVT::i32,
58328 OPC_CheckPatternPredicate0,
58329 OPC_EmitInteger32, 0,
58330 OPC_EmitRegisterI32, 0 ,
58331 OPC_EmitRegisterI32, 0 ,
58332 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVs16),
58333 MVT::i32, MVT::i32, 5, 0, 1, 2, 3, 4,
58334 0,
58335 58, TARGET_VAL(ARMISD::VMLALVu),
58336 OPC_RecordChild0,
58337 OPC_CheckTypeI32,
58338 OPC_Scope, 26,
58339 OPC_CheckChild0Type, MVT::v4i32,
58340 OPC_RecordChild1,
58341 OPC_CheckChild1Type, MVT::v4i32,
58342 OPC_CheckTypeRes, 1, MVT::i32,
58343 OPC_CheckPatternPredicate0,
58344 OPC_EmitInteger32, 0,
58345 OPC_EmitRegisterI32, 0 ,
58346 OPC_EmitRegisterI32, 0 ,
58347 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVu32),
58348 MVT::i32, MVT::i32, 5, 0, 1, 2, 3, 4,
58349 26,
58350 OPC_CheckChild0Type, MVT::v8i16,
58351 OPC_RecordChild1,
58352 OPC_CheckChild1Type, MVT::v8i16,
58353 OPC_CheckTypeRes, 1, MVT::i32,
58354 OPC_CheckPatternPredicate0,
58355 OPC_EmitInteger32, 0,
58356 OPC_EmitRegisterI32, 0 ,
58357 OPC_EmitRegisterI32, 0 ,
58358 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVu16),
58359 MVT::i32, MVT::i32, 5, 0, 1, 2, 3, 4,
58360 0,
58361 66, TARGET_VAL(ARMISD::VMLALVAs),
58362 OPC_RecordChild0,
58363 OPC_CheckChild0TypeI32,
58364 OPC_RecordChild1,
58365 OPC_CheckChild1TypeI32,
58366 OPC_RecordChild2,
58367 OPC_CheckTypeI32,
58368 OPC_Scope, 28,
58369 OPC_CheckChild2Type, MVT::v4i32,
58370 OPC_RecordChild3,
58371 OPC_CheckChild3Type, MVT::v4i32,
58372 OPC_CheckTypeRes, 1, MVT::i32,
58373 OPC_CheckPatternPredicate0,
58374 OPC_EmitInteger32, 0,
58375 OPC_EmitRegisterI32, 0 ,
58376 OPC_EmitRegisterI32, 0 ,
58377 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVas32),
58378 MVT::i32, MVT::i32, 7, 0, 1, 2, 3, 4, 5, 6,
58379 28,
58380 OPC_CheckChild2Type, MVT::v8i16,
58381 OPC_RecordChild3,
58382 OPC_CheckChild3Type, MVT::v8i16,
58383 OPC_CheckTypeRes, 1, MVT::i32,
58384 OPC_CheckPatternPredicate0,
58385 OPC_EmitInteger32, 0,
58386 OPC_EmitRegisterI32, 0 ,
58387 OPC_EmitRegisterI32, 0 ,
58388 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVas16),
58389 MVT::i32, MVT::i32, 7, 0, 1, 2, 3, 4, 5, 6,
58390 0,
58391 66, TARGET_VAL(ARMISD::VMLALVAu),
58392 OPC_RecordChild0,
58393 OPC_CheckChild0TypeI32,
58394 OPC_RecordChild1,
58395 OPC_CheckChild1TypeI32,
58396 OPC_RecordChild2,
58397 OPC_CheckTypeI32,
58398 OPC_Scope, 28,
58399 OPC_CheckChild2Type, MVT::v4i32,
58400 OPC_RecordChild3,
58401 OPC_CheckChild3Type, MVT::v4i32,
58402 OPC_CheckTypeRes, 1, MVT::i32,
58403 OPC_CheckPatternPredicate0,
58404 OPC_EmitInteger32, 0,
58405 OPC_EmitRegisterI32, 0 ,
58406 OPC_EmitRegisterI32, 0 ,
58407 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVau32),
58408 MVT::i32, MVT::i32, 7, 0, 1, 2, 3, 4, 5, 6,
58409 28,
58410 OPC_CheckChild2Type, MVT::v8i16,
58411 OPC_RecordChild3,
58412 OPC_CheckChild3Type, MVT::v8i16,
58413 OPC_CheckTypeRes, 1, MVT::i32,
58414 OPC_CheckPatternPredicate0,
58415 OPC_EmitInteger32, 0,
58416 OPC_EmitRegisterI32, 0 ,
58417 OPC_EmitRegisterI32, 0 ,
58418 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVau16),
58419 MVT::i32, MVT::i32, 7, 0, 1, 2, 3, 4, 5, 6,
58420 0,
58421 60, TARGET_VAL(ARMISD::VMLALVps),
58422 OPC_RecordChild0,
58423 OPC_CheckTypeI32,
58424 OPC_Scope, 27,
58425 OPC_CheckChild0Type, MVT::v4i32,
58426 OPC_RecordChild1,
58427 OPC_CheckChild1Type, MVT::v4i32,
58428 OPC_RecordChild2,
58429 OPC_CheckChild2Type, MVT::v4i1,
58430 OPC_CheckTypeRes, 1, MVT::i32,
58431 OPC_CheckPatternPredicate0,
58432 OPC_EmitInteger32, 2,
58433 OPC_EmitRegisterI32, 0 ,
58434 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVs32),
58435 MVT::i32, MVT::i32, 5, 0, 1, 3, 2, 4,
58436 27,
58437 OPC_CheckChild0Type, MVT::v8i16,
58438 OPC_RecordChild1,
58439 OPC_CheckChild1Type, MVT::v8i16,
58440 OPC_RecordChild2,
58441 OPC_CheckChild2Type, MVT::v8i1,
58442 OPC_CheckTypeRes, 1, MVT::i32,
58443 OPC_CheckPatternPredicate0,
58444 OPC_EmitInteger32, 2,
58445 OPC_EmitRegisterI32, 0 ,
58446 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVs16),
58447 MVT::i32, MVT::i32, 5, 0, 1, 3, 2, 4,
58448 0,
58449 60, TARGET_VAL(ARMISD::VMLALVpu),
58450 OPC_RecordChild0,
58451 OPC_CheckTypeI32,
58452 OPC_Scope, 27,
58453 OPC_CheckChild0Type, MVT::v4i32,
58454 OPC_RecordChild1,
58455 OPC_CheckChild1Type, MVT::v4i32,
58456 OPC_RecordChild2,
58457 OPC_CheckChild2Type, MVT::v4i1,
58458 OPC_CheckTypeRes, 1, MVT::i32,
58459 OPC_CheckPatternPredicate0,
58460 OPC_EmitInteger32, 2,
58461 OPC_EmitRegisterI32, 0 ,
58462 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVu32),
58463 MVT::i32, MVT::i32, 5, 0, 1, 3, 2, 4,
58464 27,
58465 OPC_CheckChild0Type, MVT::v8i16,
58466 OPC_RecordChild1,
58467 OPC_CheckChild1Type, MVT::v8i16,
58468 OPC_RecordChild2,
58469 OPC_CheckChild2Type, MVT::v8i1,
58470 OPC_CheckTypeRes, 1, MVT::i32,
58471 OPC_CheckPatternPredicate0,
58472 OPC_EmitInteger32, 2,
58473 OPC_EmitRegisterI32, 0 ,
58474 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVu16),
58475 MVT::i32, MVT::i32, 5, 0, 1, 3, 2, 4,
58476 0,
58477 68, TARGET_VAL(ARMISD::VMLALVAps),
58478 OPC_RecordChild0,
58479 OPC_CheckChild0TypeI32,
58480 OPC_RecordChild1,
58481 OPC_CheckChild1TypeI32,
58482 OPC_RecordChild2,
58483 OPC_CheckTypeI32,
58484 OPC_Scope, 29,
58485 OPC_CheckChild2Type, MVT::v4i32,
58486 OPC_RecordChild3,
58487 OPC_CheckChild3Type, MVT::v4i32,
58488 OPC_RecordChild4,
58489 OPC_CheckChild4Type, MVT::v4i1,
58490 OPC_CheckTypeRes, 1, MVT::i32,
58491 OPC_CheckPatternPredicate0,
58492 OPC_EmitInteger32, 2,
58493 OPC_EmitRegisterI32, 0 ,
58494 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVas32),
58495 MVT::i32, MVT::i32, 7, 0, 1, 2, 3, 5, 4, 6,
58496 29,
58497 OPC_CheckChild2Type, MVT::v8i16,
58498 OPC_RecordChild3,
58499 OPC_CheckChild3Type, MVT::v8i16,
58500 OPC_RecordChild4,
58501 OPC_CheckChild4Type, MVT::v8i1,
58502 OPC_CheckTypeRes, 1, MVT::i32,
58503 OPC_CheckPatternPredicate0,
58504 OPC_EmitInteger32, 2,
58505 OPC_EmitRegisterI32, 0 ,
58506 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVas16),
58507 MVT::i32, MVT::i32, 7, 0, 1, 2, 3, 5, 4, 6,
58508 0,
58509 68, TARGET_VAL(ARMISD::VMLALVApu),
58510 OPC_RecordChild0,
58511 OPC_CheckChild0TypeI32,
58512 OPC_RecordChild1,
58513 OPC_CheckChild1TypeI32,
58514 OPC_RecordChild2,
58515 OPC_CheckTypeI32,
58516 OPC_Scope, 29,
58517 OPC_CheckChild2Type, MVT::v4i32,
58518 OPC_RecordChild3,
58519 OPC_CheckChild3Type, MVT::v4i32,
58520 OPC_RecordChild4,
58521 OPC_CheckChild4Type, MVT::v4i1,
58522 OPC_CheckTypeRes, 1, MVT::i32,
58523 OPC_CheckPatternPredicate0,
58524 OPC_EmitInteger32, 2,
58525 OPC_EmitRegisterI32, 0 ,
58526 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVau32),
58527 MVT::i32, MVT::i32, 7, 0, 1, 2, 3, 5, 4, 6,
58528 29,
58529 OPC_CheckChild2Type, MVT::v8i16,
58530 OPC_RecordChild3,
58531 OPC_CheckChild3Type, MVT::v8i16,
58532 OPC_RecordChild4,
58533 OPC_CheckChild4Type, MVT::v8i1,
58534 OPC_CheckTypeRes, 1, MVT::i32,
58535 OPC_CheckPatternPredicate0,
58536 OPC_EmitInteger32, 2,
58537 OPC_EmitRegisterI32, 0 ,
58538 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VMLALDAVau16),
58539 MVT::i32, MVT::i32, 7, 0, 1, 2, 3, 5, 4, 6,
58540 0,
58541 47|128,3, TARGET_VAL(ARMISD::PREDICATE_CAST),
58542 OPC_Scope, 56,
58543 OPC_RecordChild0,
58544 OPC_CheckTypeI32,
58545 OPC_Scope, 12,
58546 OPC_CheckChild0Type, MVT::v2i1,
58547 OPC_CheckPatternPredicate0,
58548 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58549 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58550 MVT::i32, 2, 0, 1,
58551 12,
58552 OPC_CheckChild0Type, MVT::v4i1,
58553 OPC_CheckPatternPredicate0,
58554 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58555 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58556 MVT::i32, 2, 0, 1,
58557 12,
58558 OPC_CheckChild0Type, MVT::v8i1,
58559 OPC_CheckPatternPredicate0,
58560 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58561 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58562 MVT::i32, 2, 0, 1,
58563 12,
58564 OPC_CheckChild0Type, MVT::v16i1,
58565 OPC_CheckPatternPredicate0,
58566 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58567 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58568 MVT::i32, 2, 0, 1,
58569 0,
58570 102,
58571 OPC_MoveChild0,
58572 OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
58573 OPC_RecordMemRef,
58574 OPC_RecordNode,
58575 OPC_RecordChild1,
58576 OPC_CheckChild1TypeI32,
58577 OPC_CheckPredicate, 27,
58578 OPC_CheckPredicate, 17,
58579 OPC_CheckPredicate, 45,
58580 OPC_CheckTypeI32,
58581 OPC_MoveParent,
58582 OPC_SwitchType , 19, MVT::v2i1,
58583 OPC_CheckPatternPredicate0,
58584 OPC_CheckComplexPat, /*CP*/38, /*#*/1,
58585 OPC_EmitMergeInputChains1_0,
58586 OPC_EmitInteger32, 28,
58587 OPC_EmitRegisterI32, 0 ,
58588 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLDR_P0_off), 0|OPFL_Chain|OPFL_MemRefs,
58589 MVT::v2i1, 4, 2, 3, 4, 5,
58590 19, MVT::v4i1,
58591 OPC_CheckPatternPredicate0,
58592 OPC_CheckComplexPat, /*CP*/38, /*#*/1,
58593 OPC_EmitMergeInputChains1_0,
58594 OPC_EmitInteger32, 28,
58595 OPC_EmitRegisterI32, 0 ,
58596 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLDR_P0_off), 0|OPFL_Chain|OPFL_MemRefs,
58597 MVT::v4i1, 4, 2, 3, 4, 5,
58598 19, MVT::v8i1,
58599 OPC_CheckPatternPredicate0,
58600 OPC_CheckComplexPat, /*CP*/38, /*#*/1,
58601 OPC_EmitMergeInputChains1_0,
58602 OPC_EmitInteger32, 28,
58603 OPC_EmitRegisterI32, 0 ,
58604 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLDR_P0_off), 0|OPFL_Chain|OPFL_MemRefs,
58605 MVT::v8i1, 4, 2, 3, 4, 5,
58606 19, MVT::v16i1,
58607 OPC_CheckPatternPredicate0,
58608 OPC_CheckComplexPat, /*CP*/38, /*#*/1,
58609 OPC_EmitMergeInputChains1_0,
58610 OPC_EmitInteger32, 28,
58611 OPC_EmitRegisterI32, 0 ,
58612 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLDR_P0_off), 0|OPFL_Chain|OPFL_MemRefs,
58613 MVT::v16i1, 4, 2, 3, 4, 5,
58614 0,
58615 11|128,2,
58616 OPC_RecordChild0,
58617 OPC_Scope, 51,
58618 OPC_CheckChild0TypeI32,
58619 OPC_SwitchType , 10, MVT::v2i1,
58620 OPC_CheckPatternPredicate0,
58621 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58622 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58623 MVT::v2i1, 2, 0, 1,
58624 10, MVT::v4i1,
58625 OPC_CheckPatternPredicate0,
58626 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58627 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58628 MVT::v4i1, 2, 0, 1,
58629 10, MVT::v8i1,
58630 OPC_CheckPatternPredicate0,
58631 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58632 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58633 MVT::v8i1, 2, 0, 1,
58634 10, MVT::v16i1,
58635 OPC_CheckPatternPredicate0,
58636 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58637 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58638 MVT::v16i1, 2, 0, 1,
58639 0,
58640 52,
58641 OPC_CheckChild0Type, MVT::v2i1,
58642 OPC_SwitchType , 10, MVT::v2i1,
58643 OPC_CheckPatternPredicate0,
58644 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58645 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58646 MVT::v2i1, 2, 0, 1,
58647 10, MVT::v4i1,
58648 OPC_CheckPatternPredicate0,
58649 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58650 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58651 MVT::v4i1, 2, 0, 1,
58652 10, MVT::v8i1,
58653 OPC_CheckPatternPredicate0,
58654 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58655 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58656 MVT::v8i1, 2, 0, 1,
58657 10, MVT::v16i1,
58658 OPC_CheckPatternPredicate0,
58659 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58660 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58661 MVT::v16i1, 2, 0, 1,
58662 0,
58663 52,
58664 OPC_CheckChild0Type, MVT::v4i1,
58665 OPC_SwitchType , 10, MVT::v2i1,
58666 OPC_CheckPatternPredicate0,
58667 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58668 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58669 MVT::v2i1, 2, 0, 1,
58670 10, MVT::v4i1,
58671 OPC_CheckPatternPredicate0,
58672 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58673 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58674 MVT::v4i1, 2, 0, 1,
58675 10, MVT::v8i1,
58676 OPC_CheckPatternPredicate0,
58677 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58678 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58679 MVT::v8i1, 2, 0, 1,
58680 10, MVT::v16i1,
58681 OPC_CheckPatternPredicate0,
58682 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58683 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58684 MVT::v16i1, 2, 0, 1,
58685 0,
58686 52,
58687 OPC_CheckChild0Type, MVT::v8i1,
58688 OPC_SwitchType , 10, MVT::v2i1,
58689 OPC_CheckPatternPredicate0,
58690 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58691 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58692 MVT::v2i1, 2, 0, 1,
58693 10, MVT::v4i1,
58694 OPC_CheckPatternPredicate0,
58695 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58696 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58697 MVT::v4i1, 2, 0, 1,
58698 10, MVT::v8i1,
58699 OPC_CheckPatternPredicate0,
58700 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58701 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58702 MVT::v8i1, 2, 0, 1,
58703 10, MVT::v16i1,
58704 OPC_CheckPatternPredicate0,
58705 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58706 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58707 MVT::v16i1, 2, 0, 1,
58708 0,
58709 52,
58710 OPC_CheckChild0Type, MVT::v16i1,
58711 OPC_SwitchType , 10, MVT::v2i1,
58712 OPC_CheckPatternPredicate0,
58713 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58714 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58715 MVT::v2i1, 2, 0, 1,
58716 10, MVT::v4i1,
58717 OPC_CheckPatternPredicate0,
58718 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58719 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58720 MVT::v4i1, 2, 0, 1,
58721 10, MVT::v8i1,
58722 OPC_CheckPatternPredicate0,
58723 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58724 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58725 MVT::v8i1, 2, 0, 1,
58726 10, MVT::v16i1,
58727 OPC_CheckPatternPredicate0,
58728 OPC_EmitStringInteger32, ARM::VCCRRegClassID,
58729 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58730 MVT::v16i1, 2, 0, 1,
58731 0,
58732 0,
58733 0,
58734 30|128,1, TARGET_VAL(ISD::FP_TO_SINT_SAT),
58735 OPC_RecordChild0,
58736 OPC_Scope, 30,
58737 OPC_CheckChild0Type, MVT::f64,
58738 OPC_MoveChild1,
58739 OPC_CheckValueType, MVT::i32,
58740 OPC_MoveParent,
58741 OPC_CheckTypeI32,
58742 OPC_CheckPatternPredicate, 18,
58743 OPC_EmitInteger32, 28,
58744 OPC_EmitRegisterI32, 0 ,
58745 OPC_EmitNode1None, TARGET_VAL(ARM::VTOSIZD),
58746 MVT::f32, 3, 0, 1, 2,
58747 OPC_EmitStringInteger32, ARM::GPRRegClassID,
58748 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58749 MVT::i32, 2, 3, 4,
58750 30,
58751 OPC_CheckChild0Type, MVT::f32,
58752 OPC_MoveChild1,
58753 OPC_CheckValueType, MVT::i32,
58754 OPC_MoveParent,
58755 OPC_CheckTypeI32,
58756 OPC_CheckPatternPredicate, 24,
58757 OPC_EmitInteger32, 28,
58758 OPC_EmitRegisterI32, 0 ,
58759 OPC_EmitNode1None, TARGET_VAL(ARM::VTOSIZS),
58760 MVT::f32, 3, 0, 1, 2,
58761 OPC_EmitStringInteger32, ARM::GPRRegClassID,
58762 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58763 MVT::i32, 2, 3, 4,
58764 30,
58765 OPC_CheckChild0Type, MVT::f16,
58766 OPC_MoveChild1,
58767 OPC_CheckValueType, MVT::i32,
58768 OPC_MoveParent,
58769 OPC_CheckTypeI32,
58770 OPC_CheckPatternPredicate, 24,
58771 OPC_EmitInteger32, 28,
58772 OPC_EmitRegisterI32, 0 ,
58773 OPC_EmitNode1None, TARGET_VAL(ARM::VTOSIZH),
58774 MVT::f32, 3, 0, 1, 2,
58775 OPC_EmitStringInteger32, ARM::GPRRegClassID,
58776 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58777 MVT::i32, 2, 3, 4,
58778 30,
58779 OPC_CheckChild0Type, MVT::v4f32,
58780 OPC_MoveChild1,
58781 OPC_CheckValueType, MVT::i32,
58782 OPC_MoveParent,
58783 OPC_CheckType, MVT::v4i32,
58784 OPC_CheckPatternPredicate2,
58785 OPC_EmitInteger32, 0,
58786 OPC_EmitRegisterI32, 0 ,
58787 OPC_EmitRegisterI32, 0 ,
58788 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
58789 MVT::v4i32, 0,
58790 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs32f32z),
58791 MVT::v4i32, 5, 0, 1, 2, 3, 4,
58792 30,
58793 OPC_CheckChild0Type, MVT::v8f16,
58794 OPC_MoveChild1,
58795 OPC_CheckValueType, MVT::i16,
58796 OPC_MoveParent,
58797 OPC_CheckType, MVT::v8i16,
58798 OPC_CheckPatternPredicate2,
58799 OPC_EmitInteger32, 0,
58800 OPC_EmitRegisterI32, 0 ,
58801 OPC_EmitRegisterI32, 0 ,
58802 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
58803 MVT::v4i32, 0,
58804 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTs16f16z),
58805 MVT::v8i16, 5, 0, 1, 2, 3, 4,
58806 0,
58807 30|128,1, TARGET_VAL(ISD::FP_TO_UINT_SAT),
58808 OPC_RecordChild0,
58809 OPC_Scope, 30,
58810 OPC_CheckChild0Type, MVT::f64,
58811 OPC_MoveChild1,
58812 OPC_CheckValueType, MVT::i32,
58813 OPC_MoveParent,
58814 OPC_CheckTypeI32,
58815 OPC_CheckPatternPredicate, 18,
58816 OPC_EmitInteger32, 28,
58817 OPC_EmitRegisterI32, 0 ,
58818 OPC_EmitNode1None, TARGET_VAL(ARM::VTOUIZD),
58819 MVT::f32, 3, 0, 1, 2,
58820 OPC_EmitStringInteger32, ARM::GPRRegClassID,
58821 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58822 MVT::i32, 2, 3, 4,
58823 30,
58824 OPC_CheckChild0Type, MVT::f32,
58825 OPC_MoveChild1,
58826 OPC_CheckValueType, MVT::i32,
58827 OPC_MoveParent,
58828 OPC_CheckTypeI32,
58829 OPC_CheckPatternPredicate, 24,
58830 OPC_EmitInteger32, 28,
58831 OPC_EmitRegisterI32, 0 ,
58832 OPC_EmitNode1None, TARGET_VAL(ARM::VTOUIZS),
58833 MVT::f32, 3, 0, 1, 2,
58834 OPC_EmitStringInteger32, ARM::GPRRegClassID,
58835 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58836 MVT::i32, 2, 3, 4,
58837 30,
58838 OPC_CheckChild0Type, MVT::f16,
58839 OPC_MoveChild1,
58840 OPC_CheckValueType, MVT::i32,
58841 OPC_MoveParent,
58842 OPC_CheckTypeI32,
58843 OPC_CheckPatternPredicate, 24,
58844 OPC_EmitInteger32, 28,
58845 OPC_EmitRegisterI32, 0 ,
58846 OPC_EmitNode1None, TARGET_VAL(ARM::VTOUIZH),
58847 MVT::f32, 3, 0, 1, 2,
58848 OPC_EmitStringInteger32, ARM::GPRRegClassID,
58849 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
58850 MVT::i32, 2, 3, 4,
58851 30,
58852 OPC_CheckChild0Type, MVT::v4f32,
58853 OPC_MoveChild1,
58854 OPC_CheckValueType, MVT::i32,
58855 OPC_MoveParent,
58856 OPC_CheckType, MVT::v4i32,
58857 OPC_CheckPatternPredicate2,
58858 OPC_EmitInteger32, 0,
58859 OPC_EmitRegisterI32, 0 ,
58860 OPC_EmitRegisterI32, 0 ,
58861 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
58862 MVT::v4i32, 0,
58863 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu32f32z),
58864 MVT::v4i32, 5, 0, 1, 2, 3, 4,
58865 30,
58866 OPC_CheckChild0Type, MVT::v8f16,
58867 OPC_MoveChild1,
58868 OPC_CheckValueType, MVT::i16,
58869 OPC_MoveParent,
58870 OPC_CheckType, MVT::v8i16,
58871 OPC_CheckPatternPredicate2,
58872 OPC_EmitInteger32, 0,
58873 OPC_EmitRegisterI32, 0 ,
58874 OPC_EmitRegisterI32, 0 ,
58875 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
58876 MVT::v4i32, 0,
58877 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTu16f16z),
58878 MVT::v8i16, 5, 0, 1, 2, 3, 4,
58879 0,
58880 66, TARGET_VAL(ISD::RESET_FPENV),
58881 OPC_RecordNode,
58882 OPC_Scope, 30,
58883 OPC_CheckPatternPredicate3,
58884 OPC_EmitMergeInputChains1_0,
58885 OPC_EmitInteger32, 0,
58886 OPC_EmitInteger32, 28,
58887 OPC_EmitRegisterI32, 0 ,
58888 OPC_EmitRegisterI32, 0 ,
58889 OPC_EmitNode1None, TARGET_VAL(ARM::MOVi),
58890 MVT::i32, 4, 1, 2, 3, 4,
58891 OPC_EmitInteger32, 28,
58892 OPC_EmitRegisterI32, 0 ,
58893 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::VMSR),
58894 3, 5, 6, 7,
58895 31,
58896 OPC_CheckPatternPredicate, 41,
58897 OPC_EmitMergeInputChains1_0,
58898 OPC_EmitRegisterI32, ARM::CPSR,
58899 OPC_EmitInteger32, 0,
58900 OPC_EmitInteger32, 28,
58901 OPC_EmitRegisterI32, 0 ,
58902 OPC_EmitNode1None, TARGET_VAL(ARM::tMOVi8),
58903 MVT::i32, 4, 1, 2, 3, 4,
58904 OPC_EmitInteger32, 28,
58905 OPC_EmitRegisterI32, 0 ,
58906 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::VMSR),
58907 3, 5, 6, 7,
58908 0,
58909 113, TARGET_VAL(ISD::VECREDUCE_SMAX),
58910 OPC_RecordChild0,
58911 OPC_CheckTypeI32,
58912 OPC_Scope, 37,
58913 OPC_CheckChild0Type, MVT::v16i8,
58914 OPC_CheckPatternPredicate0,
58915 OPC_EmitInteger32, 126|128,1,
58916 OPC_EmitInteger32, 28,
58917 OPC_EmitRegisterI32, 0 ,
58918 OPC_EmitRegisterI32, 0 ,
58919 OPC_EmitNode1None, TARGET_VAL(ARM::t2MVNi),
58920 MVT::i32, 4, 1, 2, 3, 4,
58921 OPC_EmitInteger32, 0,
58922 OPC_EmitRegisterI32, 0 ,
58923 OPC_EmitRegisterI32, 0 ,
58924 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs8),
58925 MVT::i32, 5, 5, 0, 6, 7, 8,
58926 29,
58927 OPC_CheckChild0Type, MVT::v8i16,
58928 OPC_CheckPatternPredicate0,
58929 OPC_EmitInteger32, 1|128,0|128,4,
58930 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi32imm),
58931 MVT::i32, 1, 1,
58932 OPC_EmitInteger32, 0,
58933 OPC_EmitRegisterI32, 0 ,
58934 OPC_EmitRegisterI32, 0 ,
58935 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs16),
58936 MVT::i32, 5, 2, 0, 3, 4, 5,
58937 40,
58938 OPC_CheckChild0Type, MVT::v4i32,
58939 OPC_CheckPatternPredicate0,
58940 OPC_EmitInteger32, 1|128,0|128,0|128,0|128,16,
58941 OPC_EmitInteger32, 28,
58942 OPC_EmitRegisterI32, 0 ,
58943 OPC_EmitRegisterI32, 0 ,
58944 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi),
58945 MVT::i32, 4, 1, 2, 3, 4,
58946 OPC_EmitInteger32, 0,
58947 OPC_EmitRegisterI32, 0 ,
58948 OPC_EmitRegisterI32, 0 ,
58949 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVs32),
58950 MVT::i32, 5, 5, 0, 6, 7, 8,
58951 0,
58952 115, TARGET_VAL(ISD::VECREDUCE_UMAX),
58953 OPC_RecordChild0,
58954 OPC_CheckTypeI32,
58955 OPC_Scope, 36,
58956 OPC_CheckChild0Type, MVT::v16i8,
58957 OPC_CheckPatternPredicate0,
58958 OPC_EmitInteger32, 0,
58959 OPC_EmitInteger32, 28,
58960 OPC_EmitRegisterI32, 0 ,
58961 OPC_EmitRegisterI32, 0 ,
58962 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi),
58963 MVT::i32, 4, 1, 2, 3, 4,
58964 OPC_EmitInteger32, 0,
58965 OPC_EmitRegisterI32, 0 ,
58966 OPC_EmitRegisterI32, 0 ,
58967 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu8),
58968 MVT::i32, 5, 5, 0, 6, 7, 8,
58969 36,
58970 OPC_CheckChild0Type, MVT::v8i16,
58971 OPC_CheckPatternPredicate0,
58972 OPC_EmitInteger32, 0,
58973 OPC_EmitInteger32, 28,
58974 OPC_EmitRegisterI32, 0 ,
58975 OPC_EmitRegisterI32, 0 ,
58976 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi),
58977 MVT::i32, 4, 1, 2, 3, 4,
58978 OPC_EmitInteger32, 0,
58979 OPC_EmitRegisterI32, 0 ,
58980 OPC_EmitRegisterI32, 0 ,
58981 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu16),
58982 MVT::i32, 5, 5, 0, 6, 7, 8,
58983 36,
58984 OPC_CheckChild0Type, MVT::v4i32,
58985 OPC_CheckPatternPredicate0,
58986 OPC_EmitInteger32, 0,
58987 OPC_EmitInteger32, 28,
58988 OPC_EmitRegisterI32, 0 ,
58989 OPC_EmitRegisterI32, 0 ,
58990 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi),
58991 MVT::i32, 4, 1, 2, 3, 4,
58992 OPC_EmitInteger32, 0,
58993 OPC_EmitRegisterI32, 0 ,
58994 OPC_EmitRegisterI32, 0 ,
58995 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXVu32),
58996 MVT::i32, 5, 5, 0, 6, 7, 8,
58997 0,
58998 119, TARGET_VAL(ISD::VECREDUCE_SMIN),
58999 OPC_RecordChild0,
59000 OPC_CheckTypeI32,
59001 OPC_Scope, 37,
59002 OPC_CheckChild0Type, MVT::v16i8,
59003 OPC_CheckPatternPredicate0,
59004 OPC_EmitInteger32, 126|128,1,
59005 OPC_EmitInteger32, 28,
59006 OPC_EmitRegisterI32, 0 ,
59007 OPC_EmitRegisterI32, 0 ,
59008 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi),
59009 MVT::i32, 4, 1, 2, 3, 4,
59010 OPC_EmitInteger32, 0,
59011 OPC_EmitRegisterI32, 0 ,
59012 OPC_EmitRegisterI32, 0 ,
59013 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs8),
59014 MVT::i32, 5, 5, 0, 6, 7, 8,
59015 35,
59016 OPC_CheckChild0Type, MVT::v8i16,
59017 OPC_CheckPatternPredicate0,
59018 OPC_EmitInteger32, 126|128,127|128,3,
59019 OPC_EmitInteger32, 28,
59020 OPC_EmitRegisterI32, 0 ,
59021 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi16),
59022 MVT::i32, 3, 1, 2, 3,
59023 OPC_EmitInteger32, 0,
59024 OPC_EmitRegisterI32, 0 ,
59025 OPC_EmitRegisterI32, 0 ,
59026 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs16),
59027 MVT::i32, 5, 4, 0, 5, 6, 7,
59028 40,
59029 OPC_CheckChild0Type, MVT::v4i32,
59030 OPC_CheckPatternPredicate0,
59031 OPC_EmitInteger32, 1|128,0|128,0|128,0|128,16,
59032 OPC_EmitInteger32, 28,
59033 OPC_EmitRegisterI32, 0 ,
59034 OPC_EmitRegisterI32, 0 ,
59035 OPC_EmitNode1None, TARGET_VAL(ARM::t2MVNi),
59036 MVT::i32, 4, 1, 2, 3, 4,
59037 OPC_EmitInteger32, 0,
59038 OPC_EmitRegisterI32, 0 ,
59039 OPC_EmitRegisterI32, 0 ,
59040 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVs32),
59041 MVT::i32, 5, 5, 0, 6, 7, 8,
59042 0,
59043 119, TARGET_VAL(ISD::VECREDUCE_UMIN),
59044 OPC_RecordChild0,
59045 OPC_CheckTypeI32,
59046 OPC_Scope, 37,
59047 OPC_CheckChild0Type, MVT::v16i8,
59048 OPC_CheckPatternPredicate0,
59049 OPC_EmitInteger32, 126|128,3,
59050 OPC_EmitInteger32, 28,
59051 OPC_EmitRegisterI32, 0 ,
59052 OPC_EmitRegisterI32, 0 ,
59053 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi),
59054 MVT::i32, 4, 1, 2, 3, 4,
59055 OPC_EmitInteger32, 0,
59056 OPC_EmitRegisterI32, 0 ,
59057 OPC_EmitRegisterI32, 0 ,
59058 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu8),
59059 MVT::i32, 5, 5, 0, 6, 7, 8,
59060 35,
59061 OPC_CheckChild0Type, MVT::v8i16,
59062 OPC_CheckPatternPredicate0,
59063 OPC_EmitInteger32, 126|128,127|128,7,
59064 OPC_EmitInteger32, 28,
59065 OPC_EmitRegisterI32, 0 ,
59066 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi16),
59067 MVT::i32, 3, 1, 2, 3,
59068 OPC_EmitInteger32, 0,
59069 OPC_EmitRegisterI32, 0 ,
59070 OPC_EmitRegisterI32, 0 ,
59071 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu16),
59072 MVT::i32, 5, 4, 0, 5, 6, 7,
59073 40,
59074 OPC_CheckChild0Type, MVT::v4i32,
59075 OPC_CheckPatternPredicate0,
59076 OPC_EmitInteger32, 126|128,127|128,127|128,127|128,31,
59077 OPC_EmitInteger32, 28,
59078 OPC_EmitRegisterI32, 0 ,
59079 OPC_EmitRegisterI32, 0 ,
59080 OPC_EmitNode1None, TARGET_VAL(ARM::t2MOVi),
59081 MVT::i32, 4, 1, 2, 3, 4,
59082 OPC_EmitInteger32, 0,
59083 OPC_EmitRegisterI32, 0 ,
59084 OPC_EmitRegisterI32, 0 ,
59085 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINVu32),
59086 MVT::i32, 5, 5, 0, 6, 7, 8,
59087 0,
59088 68, TARGET_VAL(ISD::FP_TO_FP16),
59089 OPC_RecordChild0,
59090 OPC_CheckTypeI32,
59091 OPC_Scope, 31,
59092 OPC_CheckChild0Type, MVT::f32,
59093 OPC_CheckPatternPredicate, 38,
59094 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59095 MVT::f32, 0,
59096 OPC_EmitInteger32, 28,
59097 OPC_EmitRegisterI32, 0 ,
59098 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTBSH),
59099 MVT::f32, 4, 1, 0, 2, 3,
59100 OPC_EmitStringInteger32, ARM::GPRRegClassID,
59101 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59102 MVT::i32, 2, 4, 5,
59103 31,
59104 OPC_CheckChild0Type, MVT::f64,
59105 OPC_CheckPatternPredicate, 22,
59106 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59107 MVT::f32, 0,
59108 OPC_EmitInteger32, 28,
59109 OPC_EmitRegisterI32, 0 ,
59110 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTBDH),
59111 MVT::f32, 4, 1, 0, 2, 3,
59112 OPC_EmitStringInteger32, ARM::GPRRegClassID,
59113 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59114 MVT::i32, 2, 4, 5,
59115 0,
59116 7, TARGET_VAL(ARMISD::WIN__CHKSTK),
59117 OPC_RecordNode,
59118 OPC_EmitMergeInputChains1_0,
59119 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::WIN__CHKSTK),
59120 MVT::i32, 0,
59121 10, TARGET_VAL(ARMISD::WIN__DBZCHK),
59122 OPC_RecordNode,
59123 OPC_RecordChild1,
59124 OPC_EmitMergeInputChains1_0,
59125 OPC_MorphNodeTo1, TARGET_VAL(ARM::WIN__DBZCHK), 0|OPFL_Chain|OPFL_GlueOutput,
59126 MVT::i32, 1, 1,
59127 63, TARGET_VAL(ARMISD::EH_SJLJ_SETJMP),
59128 OPC_RecordNode,
59129 OPC_RecordChild1,
59130 OPC_CheckChild1TypeI32,
59131 OPC_RecordChild2,
59132 OPC_CheckChild2TypeI32,
59133 OPC_CheckTypeI32,
59134 OPC_Scope, 10,
59135 OPC_CheckPatternPredicate, 148,
59136 OPC_EmitMergeInputChains1_0,
59137 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::Int_eh_sjlj_setjmp),
59138 MVT::i32, 2, 1, 2,
59139 10,
59140 OPC_CheckPatternPredicate, 149,
59141 OPC_EmitMergeInputChains1_0,
59142 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::Int_eh_sjlj_setjmp_nofp),
59143 MVT::i32, 2, 1, 2,
59144 10,
59145 OPC_CheckPatternPredicate, 10,
59146 OPC_EmitMergeInputChains1_0,
59147 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::tInt_eh_sjlj_setjmp),
59148 MVT::i32, 2, 1, 2,
59149 10,
59150 OPC_CheckPatternPredicate, 150,
59151 OPC_EmitMergeInputChains1_0,
59152 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2Int_eh_sjlj_setjmp),
59153 MVT::i32, 2, 1, 2,
59154 10,
59155 OPC_CheckPatternPredicate, 151,
59156 OPC_EmitMergeInputChains1_0,
59157 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::t2Int_eh_sjlj_setjmp_nofp),
59158 MVT::i32, 2, 1, 2,
59159 0,
59160 6, TARGET_VAL(ARMISD::EH_SJLJ_SETUP_DISPATCH),
59161 OPC_RecordNode,
59162 OPC_EmitMergeInputChains1_0,
59163 OPC_MorphNodeTo0Chain, TARGET_VAL(ARM::Int_eh_sjlj_setup_dispatch),
59164 0,
59165 15, TARGET_VAL(ARMISD::MEMCPYLOOP),
59166 OPC_RecordNode,
59167 OPC_RecordChild1,
59168 OPC_CheckChild1TypeI32,
59169 OPC_RecordChild2,
59170 OPC_CheckChild2TypeI32,
59171 OPC_RecordChild3,
59172 OPC_EmitMergeInputChains1_0,
59173 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::MVE_MEMCPYLOOPINST),
59174 MVT::i32, 3, 1, 2, 3,
59175 14, TARGET_VAL(ARMISD::MEMSETLOOP),
59176 OPC_RecordNode,
59177 OPC_RecordChild1,
59178 OPC_CheckChild1TypeI32,
59179 OPC_RecordChild2,
59180 OPC_RecordChild3,
59181 OPC_EmitMergeInputChains1_0,
59182 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::MVE_MEMSETLOOPINST),
59183 MVT::i32, 3, 1, 2, 3,
59184 46|128,4, TARGET_VAL(ISD::SINT_TO_FP),
59185 OPC_Scope, 37|128,1,
59186 OPC_MoveChild0,
59187 OPC_SwitchOpcode , 79, TARGET_VAL(ISD::LOAD),
59188 OPC_RecordMemRef,
59189 OPC_RecordNode,
59190 OPC_RecordChild1,
59191 OPC_CheckChild1TypeI32,
59192 OPC_CheckPredicate, 27,
59193 OPC_CheckPredicate, 17,
59194 OPC_CheckPredicate, 45,
59195 OPC_MoveParent,
59196 OPC_SwitchType , 31, MVT::f64,
59197 OPC_CheckPatternPredicate, 18,
59198 OPC_CheckComplexPat3, /*#*/1,
59199 OPC_EmitMergeInputChains1_0,
59200 OPC_EmitInteger32, 28,
59201 OPC_EmitRegisterI32, 0 ,
59202 OPC_EmitNode1, TARGET_VAL(ARM::VLDRS), 0|OPFL_Chain|OPFL_MemRefs,
59203 MVT::f32, 4, 2, 3, 4, 5,
59204 OPC_EmitInteger32, 28,
59205 OPC_EmitRegisterI32, 0 ,
59206 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::VSITOD),
59207 MVT::f64, 3, 6, 7, 8,
59208 31, MVT::f32,
59209 OPC_CheckPatternPredicate, 26,
59210 OPC_CheckComplexPat3, /*#*/1,
59211 OPC_EmitMergeInputChains1_0,
59212 OPC_EmitInteger32, 28,
59213 OPC_EmitRegisterI32, 0 ,
59214 OPC_EmitNode1, TARGET_VAL(ARM::VLDRS), 0|OPFL_Chain|OPFL_MemRefs,
59215 MVT::f32, 4, 2, 3, 4, 5,
59216 OPC_EmitInteger32, 28,
59217 OPC_EmitRegisterI32, 0 ,
59218 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::VSITOS),
59219 MVT::f32, 3, 6, 7, 8,
59220 0,
59221 77, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
59222 OPC_RecordChild0,
59223 OPC_Scope, 36,
59224 OPC_CheckChild0Type, MVT::v2i32,
59225 OPC_RecordChild1,
59226 OPC_MoveChild1,
59227 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
59228 OPC_MoveParent,
59229 OPC_MoveParent,
59230 OPC_CheckType, MVT::f64,
59231 OPC_CheckPatternPredicate, 24,
59232 OPC_EmitConvertToTarget1,
59233 OPC_EmitNodeXForm, 18, 2,
59234 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
59235 MVT::f32, 2, 0, 3,
59236 OPC_EmitInteger32, 28,
59237 OPC_EmitRegisterI32, 0 ,
59238 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSITOD),
59239 MVT::f64, 3, 4, 5, 6,
59240 36,
59241 OPC_CheckChild0Type, MVT::v4i32,
59242 OPC_RecordChild1,
59243 OPC_MoveChild1,
59244 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
59245 OPC_MoveParent,
59246 OPC_MoveParent,
59247 OPC_CheckType, MVT::f64,
59248 OPC_CheckPatternPredicate, 24,
59249 OPC_EmitConvertToTarget1,
59250 OPC_EmitNodeXForm, 18, 2,
59251 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
59252 MVT::f32, 2, 0, 3,
59253 OPC_EmitInteger32, 28,
59254 OPC_EmitRegisterI32, 0 ,
59255 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSITOD),
59256 MVT::f64, 3, 4, 5, 6,
59257 0,
59258 0,
59259 3|128,3,
59260 OPC_RecordChild0,
59261 OPC_SwitchType , 23, MVT::f64,
59262 OPC_CheckPatternPredicate, 18,
59263 OPC_EmitStringInteger32, ARM::SPRRegClassID,
59264 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59265 MVT::f32, 2, 0, 1,
59266 OPC_EmitInteger32, 28,
59267 OPC_EmitRegisterI32, 0 ,
59268 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSITOD),
59269 MVT::f64, 3, 2, 3, 4,
59270 74, MVT::f32,
59271 OPC_Scope, 23,
59272 OPC_CheckPatternPredicate, 26,
59273 OPC_EmitStringInteger32, ARM::SPRRegClassID,
59274 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59275 MVT::f32, 2, 0, 1,
59276 OPC_EmitInteger32, 28,
59277 OPC_EmitRegisterI32, 0 ,
59278 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSITOS),
59279 MVT::f32, 3, 2, 3, 4,
59280 47,
59281 OPC_CheckPatternPredicate, 42,
59282 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59283 MVT::v2f32, 0,
59284 OPC_EmitStringInteger32, ARM::SPRRegClassID,
59285 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59286 MVT::i32, 2, 0, 2,
59287 OPC_EmitStringInteger32, ARM::ssub_0,
59288 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
59289 MVT::v2f32, 3, 1, 3, 4,
59290 OPC_EmitInteger32, 28,
59291 OPC_EmitRegisterI32, 0 ,
59292 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTs2fd),
59293 MVT::v2f32, 3, 5, 6, 7,
59294 OPC_EmitStringInteger32, ARM::ssub_0,
59295 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
59296 MVT::f32, 2, 8, 9,
59297 0,
59298 23, MVT::f16,
59299 OPC_CheckPatternPredicate, 26,
59300 OPC_EmitStringInteger32, ARM::SPRRegClassID,
59301 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59302 MVT::f32, 2, 0, 1,
59303 OPC_EmitInteger32, 28,
59304 OPC_EmitRegisterI32, 0 ,
59305 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSITOH),
59306 MVT::f16, 3, 2, 3, 4,
59307 15, MVT::v2f32,
59308 OPC_CheckChild0Type, MVT::v2i32,
59309 OPC_CheckPatternPredicate1,
59310 OPC_EmitInteger32, 28,
59311 OPC_EmitRegisterI32, 0 ,
59312 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTs2fd),
59313 MVT::v2f32, 3, 0, 1, 2,
59314 109, MVT::v4f32,
59315 OPC_Scope, 41,
59316 OPC_CheckChild0Type, MVT::v4i32,
59317 OPC_Scope, 13,
59318 OPC_CheckPatternPredicate1,
59319 OPC_EmitInteger32, 28,
59320 OPC_EmitRegisterI32, 0 ,
59321 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTs2fq),
59322 MVT::v4f32, 3, 0, 1, 2,
59323 22,
59324 OPC_CheckPatternPredicate2,
59325 OPC_EmitInteger32, 0,
59326 OPC_EmitRegisterI32, 0 ,
59327 OPC_EmitRegisterI32, 0 ,
59328 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59329 MVT::v4i32, 0,
59330 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32s32n),
59331 MVT::v4f32, 5, 0, 1, 2, 3, 4,
59332 0,
59333 64,
59334 OPC_CheckChild0Type, MVT::v4i1,
59335 OPC_CheckPatternPredicate2,
59336 OPC_EmitInteger32, 96|128,3,
59337 OPC_EmitInteger32, 0,
59338 OPC_EmitRegisterI32, 0 ,
59339 OPC_EmitRegisterI32, 0 ,
59340 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59341 MVT::v4i32, 0,
59342 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmf32),
59343 MVT::v4f32, 5, 1, 2, 3, 4, 5,
59344 OPC_EmitInteger32, 0,
59345 OPC_EmitInteger32, 0,
59346 OPC_EmitRegisterI32, 0 ,
59347 OPC_EmitRegisterI32, 0 ,
59348 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59349 MVT::v4i32, 0,
59350 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
59351 MVT::v4f32, 5, 7, 8, 9, 10, 11,
59352 OPC_EmitInteger32, 0,
59353 OPC_EmitRegisterI32, 0 ,
59354 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
59355 MVT::v4f32, 5, 6, 12, 13, 0, 14,
59356 0,
59357 16, MVT::v4f16,
59358 OPC_CheckChild0Type, MVT::v4i16,
59359 OPC_CheckPatternPredicate, 11,
59360 OPC_EmitInteger32, 28,
59361 OPC_EmitRegisterI32, 0 ,
59362 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTs2hd),
59363 MVT::v4f16, 3, 0, 1, 2,
59364 110, MVT::v8f16,
59365 OPC_Scope, 42,
59366 OPC_CheckChild0Type, MVT::v8i16,
59367 OPC_Scope, 14,
59368 OPC_CheckPatternPredicate, 11,
59369 OPC_EmitInteger32, 28,
59370 OPC_EmitRegisterI32, 0 ,
59371 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTs2hq),
59372 MVT::v8f16, 3, 0, 1, 2,
59373 22,
59374 OPC_CheckPatternPredicate2,
59375 OPC_EmitInteger32, 0,
59376 OPC_EmitRegisterI32, 0 ,
59377 OPC_EmitRegisterI32, 0 ,
59378 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59379 MVT::v4i32, 0,
59380 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16s16n),
59381 MVT::v8f16, 5, 0, 1, 2, 3, 4,
59382 0,
59383 64,
59384 OPC_CheckChild0Type, MVT::v8i1,
59385 OPC_CheckPatternPredicate2,
59386 OPC_EmitInteger32, 120|128,42,
59387 OPC_EmitInteger32, 0,
59388 OPC_EmitRegisterI32, 0 ,
59389 OPC_EmitRegisterI32, 0 ,
59390 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59391 MVT::v4i32, 0,
59392 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
59393 MVT::v8f16, 5, 1, 2, 3, 4, 5,
59394 OPC_EmitInteger32, 0,
59395 OPC_EmitInteger32, 0,
59396 OPC_EmitRegisterI32, 0 ,
59397 OPC_EmitRegisterI32, 0 ,
59398 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59399 MVT::v4i32, 0,
59400 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
59401 MVT::v8f16, 5, 7, 8, 9, 10, 11,
59402 OPC_EmitInteger32, 0,
59403 OPC_EmitRegisterI32, 0 ,
59404 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
59405 MVT::v8f16, 5, 6, 12, 13, 0, 14,
59406 0,
59407 0,
59408 0,
59409 46|128,4, TARGET_VAL(ISD::UINT_TO_FP),
59410 OPC_Scope, 37|128,1,
59411 OPC_MoveChild0,
59412 OPC_SwitchOpcode , 79, TARGET_VAL(ISD::LOAD),
59413 OPC_RecordMemRef,
59414 OPC_RecordNode,
59415 OPC_RecordChild1,
59416 OPC_CheckChild1TypeI32,
59417 OPC_CheckPredicate, 27,
59418 OPC_CheckPredicate, 17,
59419 OPC_CheckPredicate, 45,
59420 OPC_MoveParent,
59421 OPC_SwitchType , 31, MVT::f64,
59422 OPC_CheckPatternPredicate, 18,
59423 OPC_CheckComplexPat3, /*#*/1,
59424 OPC_EmitMergeInputChains1_0,
59425 OPC_EmitInteger32, 28,
59426 OPC_EmitRegisterI32, 0 ,
59427 OPC_EmitNode1, TARGET_VAL(ARM::VLDRS), 0|OPFL_Chain|OPFL_MemRefs,
59428 MVT::f32, 4, 2, 3, 4, 5,
59429 OPC_EmitInteger32, 28,
59430 OPC_EmitRegisterI32, 0 ,
59431 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::VUITOD),
59432 MVT::f64, 3, 6, 7, 8,
59433 31, MVT::f32,
59434 OPC_CheckPatternPredicate, 26,
59435 OPC_CheckComplexPat3, /*#*/1,
59436 OPC_EmitMergeInputChains1_0,
59437 OPC_EmitInteger32, 28,
59438 OPC_EmitRegisterI32, 0 ,
59439 OPC_EmitNode1, TARGET_VAL(ARM::VLDRS), 0|OPFL_Chain|OPFL_MemRefs,
59440 MVT::f32, 4, 2, 3, 4, 5,
59441 OPC_EmitInteger32, 28,
59442 OPC_EmitRegisterI32, 0 ,
59443 OPC_MorphNodeTo1Chain, TARGET_VAL(ARM::VUITOS),
59444 MVT::f32, 3, 6, 7, 8,
59445 0,
59446 77, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
59447 OPC_RecordChild0,
59448 OPC_Scope, 36,
59449 OPC_CheckChild0Type, MVT::v2i32,
59450 OPC_RecordChild1,
59451 OPC_MoveChild1,
59452 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
59453 OPC_MoveParent,
59454 OPC_MoveParent,
59455 OPC_CheckType, MVT::f64,
59456 OPC_CheckPatternPredicate, 24,
59457 OPC_EmitConvertToTarget1,
59458 OPC_EmitNodeXForm, 18, 2,
59459 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
59460 MVT::f32, 2, 0, 3,
59461 OPC_EmitInteger32, 28,
59462 OPC_EmitRegisterI32, 0 ,
59463 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUITOD),
59464 MVT::f64, 3, 4, 5, 6,
59465 36,
59466 OPC_CheckChild0Type, MVT::v4i32,
59467 OPC_RecordChild1,
59468 OPC_MoveChild1,
59469 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
59470 OPC_MoveParent,
59471 OPC_MoveParent,
59472 OPC_CheckType, MVT::f64,
59473 OPC_CheckPatternPredicate, 24,
59474 OPC_EmitConvertToTarget1,
59475 OPC_EmitNodeXForm, 18, 2,
59476 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
59477 MVT::f32, 2, 0, 3,
59478 OPC_EmitInteger32, 28,
59479 OPC_EmitRegisterI32, 0 ,
59480 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUITOD),
59481 MVT::f64, 3, 4, 5, 6,
59482 0,
59483 0,
59484 3|128,3,
59485 OPC_RecordChild0,
59486 OPC_SwitchType , 23, MVT::f64,
59487 OPC_CheckPatternPredicate, 18,
59488 OPC_EmitStringInteger32, ARM::SPRRegClassID,
59489 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59490 MVT::f32, 2, 0, 1,
59491 OPC_EmitInteger32, 28,
59492 OPC_EmitRegisterI32, 0 ,
59493 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUITOD),
59494 MVT::f64, 3, 2, 3, 4,
59495 74, MVT::f32,
59496 OPC_Scope, 23,
59497 OPC_CheckPatternPredicate, 26,
59498 OPC_EmitStringInteger32, ARM::SPRRegClassID,
59499 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59500 MVT::f32, 2, 0, 1,
59501 OPC_EmitInteger32, 28,
59502 OPC_EmitRegisterI32, 0 ,
59503 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUITOS),
59504 MVT::f32, 3, 2, 3, 4,
59505 47,
59506 OPC_CheckPatternPredicate, 42,
59507 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59508 MVT::v2f32, 0,
59509 OPC_EmitStringInteger32, ARM::SPRRegClassID,
59510 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59511 MVT::i32, 2, 0, 2,
59512 OPC_EmitStringInteger32, ARM::ssub_0,
59513 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
59514 MVT::v2f32, 3, 1, 3, 4,
59515 OPC_EmitInteger32, 28,
59516 OPC_EmitRegisterI32, 0 ,
59517 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTu2fd),
59518 MVT::v2f32, 3, 5, 6, 7,
59519 OPC_EmitStringInteger32, ARM::ssub_0,
59520 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
59521 MVT::f32, 2, 8, 9,
59522 0,
59523 23, MVT::f16,
59524 OPC_CheckPatternPredicate, 26,
59525 OPC_EmitStringInteger32, ARM::SPRRegClassID,
59526 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59527 MVT::f32, 2, 0, 1,
59528 OPC_EmitInteger32, 28,
59529 OPC_EmitRegisterI32, 0 ,
59530 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VUITOH),
59531 MVT::f16, 3, 2, 3, 4,
59532 15, MVT::v2f32,
59533 OPC_CheckChild0Type, MVT::v2i32,
59534 OPC_CheckPatternPredicate1,
59535 OPC_EmitInteger32, 28,
59536 OPC_EmitRegisterI32, 0 ,
59537 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTu2fd),
59538 MVT::v2f32, 3, 0, 1, 2,
59539 109, MVT::v4f32,
59540 OPC_Scope, 41,
59541 OPC_CheckChild0Type, MVT::v4i32,
59542 OPC_Scope, 13,
59543 OPC_CheckPatternPredicate1,
59544 OPC_EmitInteger32, 28,
59545 OPC_EmitRegisterI32, 0 ,
59546 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTu2fq),
59547 MVT::v4f32, 3, 0, 1, 2,
59548 22,
59549 OPC_CheckPatternPredicate2,
59550 OPC_EmitInteger32, 0,
59551 OPC_EmitRegisterI32, 0 ,
59552 OPC_EmitRegisterI32, 0 ,
59553 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59554 MVT::v4i32, 0,
59555 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32u32n),
59556 MVT::v4f32, 5, 0, 1, 2, 3, 4,
59557 0,
59558 64,
59559 OPC_CheckChild0Type, MVT::v4i1,
59560 OPC_CheckPatternPredicate2,
59561 OPC_EmitInteger32, 96|128,1,
59562 OPC_EmitInteger32, 0,
59563 OPC_EmitRegisterI32, 0 ,
59564 OPC_EmitRegisterI32, 0 ,
59565 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59566 MVT::v4i32, 0,
59567 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmf32),
59568 MVT::v4f32, 5, 1, 2, 3, 4, 5,
59569 OPC_EmitInteger32, 0,
59570 OPC_EmitInteger32, 0,
59571 OPC_EmitRegisterI32, 0 ,
59572 OPC_EmitRegisterI32, 0 ,
59573 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59574 MVT::v4i32, 0,
59575 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
59576 MVT::v4f32, 5, 7, 8, 9, 10, 11,
59577 OPC_EmitInteger32, 0,
59578 OPC_EmitRegisterI32, 0 ,
59579 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
59580 MVT::v4f32, 5, 6, 12, 13, 0, 14,
59581 0,
59582 16, MVT::v4f16,
59583 OPC_CheckChild0Type, MVT::v4i16,
59584 OPC_CheckPatternPredicate, 11,
59585 OPC_EmitInteger32, 28,
59586 OPC_EmitRegisterI32, 0 ,
59587 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTu2hd),
59588 MVT::v4f16, 3, 0, 1, 2,
59589 110, MVT::v8f16,
59590 OPC_Scope, 42,
59591 OPC_CheckChild0Type, MVT::v8i16,
59592 OPC_Scope, 14,
59593 OPC_CheckPatternPredicate, 11,
59594 OPC_EmitInteger32, 28,
59595 OPC_EmitRegisterI32, 0 ,
59596 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTu2hq),
59597 MVT::v8f16, 3, 0, 1, 2,
59598 22,
59599 OPC_CheckPatternPredicate2,
59600 OPC_EmitInteger32, 0,
59601 OPC_EmitRegisterI32, 0 ,
59602 OPC_EmitRegisterI32, 0 ,
59603 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59604 MVT::v4i32, 0,
59605 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16u16n),
59606 MVT::v8f16, 5, 0, 1, 2, 3, 4,
59607 0,
59608 64,
59609 OPC_CheckChild0Type, MVT::v8i1,
59610 OPC_CheckPatternPredicate2,
59611 OPC_EmitInteger32, 120|128,40,
59612 OPC_EmitInteger32, 0,
59613 OPC_EmitRegisterI32, 0 ,
59614 OPC_EmitRegisterI32, 0 ,
59615 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59616 MVT::v4i32, 0,
59617 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
59618 MVT::v8f16, 5, 1, 2, 3, 4, 5,
59619 OPC_EmitInteger32, 0,
59620 OPC_EmitInteger32, 0,
59621 OPC_EmitRegisterI32, 0 ,
59622 OPC_EmitRegisterI32, 0 ,
59623 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59624 MVT::v4i32, 0,
59625 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
59626 MVT::v8f16, 5, 7, 8, 9, 10, 11,
59627 OPC_EmitInteger32, 0,
59628 OPC_EmitRegisterI32, 0 ,
59629 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
59630 MVT::v8f16, 5, 6, 12, 13, 0, 14,
59631 0,
59632 0,
59633 0,
59634 23|128,25, TARGET_VAL(ISD::FADD),
59635 OPC_Scope, 4|128,1,
59636 OPC_MoveChild0,
59637 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
59638 OPC_MoveChild0,
59639 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
59640 OPC_RecordChild0,
59641 OPC_RecordChild1,
59642 OPC_CheckPredicate2,
59643 OPC_MoveParent,
59644 OPC_MoveParent,
59645 OPC_RecordChild1,
59646 OPC_CheckPredicate, 11,
59647 OPC_SwitchType , 36, MVT::f64,
59648 OPC_Scope, 16,
59649 OPC_CheckPatternPredicate, 48,
59650 OPC_EmitInteger32, 28,
59651 OPC_EmitRegisterI32, 0 ,
59652 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSD),
59653 MVT::f64, 5, 2, 0, 1, 3, 4,
59654 16,
59655 OPC_CheckPatternPredicate, 50,
59656 OPC_EmitInteger32, 28,
59657 OPC_EmitRegisterI32, 0 ,
59658 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSD),
59659 MVT::f64, 5, 2, 0, 1, 3, 4,
59660 0,
59661 36, MVT::f32,
59662 OPC_Scope, 16,
59663 OPC_CheckPatternPredicate, 49,
59664 OPC_EmitInteger32, 28,
59665 OPC_EmitRegisterI32, 0 ,
59666 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSS),
59667 MVT::f32, 5, 2, 0, 1, 3, 4,
59668 16,
59669 OPC_CheckPatternPredicate, 51,
59670 OPC_EmitInteger32, 28,
59671 OPC_EmitRegisterI32, 0 ,
59672 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSS),
59673 MVT::f32, 5, 2, 0, 1, 3, 4,
59674 0,
59675 36, MVT::f16,
59676 OPC_Scope, 16,
59677 OPC_CheckPatternPredicate, 57,
59678 OPC_EmitInteger32, 28,
59679 OPC_EmitRegisterI32, 0 ,
59680 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSH),
59681 MVT::f16, 5, 2, 0, 1, 3, 4,
59682 16,
59683 OPC_CheckPatternPredicate, 58,
59684 OPC_EmitInteger32, 28,
59685 OPC_EmitRegisterI32, 0 ,
59686 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSH),
59687 MVT::f16, 5, 2, 0, 1, 3, 4,
59688 0,
59689 0,
59690 4|128,1,
59691 OPC_RecordChild0,
59692 OPC_MoveChild1,
59693 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
59694 OPC_MoveChild0,
59695 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
59696 OPC_RecordChild0,
59697 OPC_RecordChild1,
59698 OPC_CheckPredicate2,
59699 OPC_MoveParent,
59700 OPC_MoveParent,
59701 OPC_CheckPredicate, 11,
59702 OPC_SwitchType , 36, MVT::f64,
59703 OPC_Scope, 16,
59704 OPC_CheckPatternPredicate, 48,
59705 OPC_EmitInteger32, 28,
59706 OPC_EmitRegisterI32, 0 ,
59707 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSD),
59708 MVT::f64, 5, 0, 1, 2, 3, 4,
59709 16,
59710 OPC_CheckPatternPredicate, 50,
59711 OPC_EmitInteger32, 28,
59712 OPC_EmitRegisterI32, 0 ,
59713 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSD),
59714 MVT::f64, 5, 0, 1, 2, 3, 4,
59715 0,
59716 36, MVT::f32,
59717 OPC_Scope, 16,
59718 OPC_CheckPatternPredicate, 49,
59719 OPC_EmitInteger32, 28,
59720 OPC_EmitRegisterI32, 0 ,
59721 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSS),
59722 MVT::f32, 5, 0, 1, 2, 3, 4,
59723 16,
59724 OPC_CheckPatternPredicate, 51,
59725 OPC_EmitInteger32, 28,
59726 OPC_EmitRegisterI32, 0 ,
59727 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSS),
59728 MVT::f32, 5, 0, 1, 2, 3, 4,
59729 0,
59730 36, MVT::f16,
59731 OPC_Scope, 16,
59732 OPC_CheckPatternPredicate, 57,
59733 OPC_EmitInteger32, 28,
59734 OPC_EmitRegisterI32, 0 ,
59735 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSH),
59736 MVT::f16, 5, 0, 1, 2, 3, 4,
59737 16,
59738 OPC_CheckPatternPredicate, 58,
59739 OPC_EmitInteger32, 28,
59740 OPC_EmitRegisterI32, 0 ,
59741 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSH),
59742 MVT::f16, 5, 0, 1, 2, 3, 4,
59743 0,
59744 0,
59745 67,
59746 OPC_MoveChild0,
59747 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
59748 OPC_RecordChild0,
59749 OPC_RecordChild1,
59750 OPC_CheckPredicate2,
59751 OPC_MoveParent,
59752 OPC_RecordChild1,
59753 OPC_CheckPredicate, 11,
59754 OPC_SwitchType , 16, MVT::f64,
59755 OPC_CheckPatternPredicate, 48,
59756 OPC_EmitInteger32, 28,
59757 OPC_EmitRegisterI32, 0 ,
59758 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAD),
59759 MVT::f64, 5, 2, 0, 1, 3, 4,
59760 16, MVT::f32,
59761 OPC_CheckPatternPredicate, 49,
59762 OPC_EmitInteger32, 28,
59763 OPC_EmitRegisterI32, 0 ,
59764 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAS),
59765 MVT::f32, 5, 2, 0, 1, 3, 4,
59766 16, MVT::f16,
59767 OPC_CheckPatternPredicate, 57,
59768 OPC_EmitInteger32, 28,
59769 OPC_EmitRegisterI32, 0 ,
59770 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAH),
59771 MVT::f16, 5, 2, 0, 1, 3, 4,
59772 0,
59773 67,
59774 OPC_RecordChild0,
59775 OPC_MoveChild1,
59776 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
59777 OPC_RecordChild0,
59778 OPC_RecordChild1,
59779 OPC_CheckPredicate2,
59780 OPC_MoveParent,
59781 OPC_CheckPredicate, 11,
59782 OPC_SwitchType , 16, MVT::f64,
59783 OPC_CheckPatternPredicate, 48,
59784 OPC_EmitInteger32, 28,
59785 OPC_EmitRegisterI32, 0 ,
59786 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAD),
59787 MVT::f64, 5, 0, 1, 2, 3, 4,
59788 16, MVT::f32,
59789 OPC_CheckPatternPredicate, 49,
59790 OPC_EmitInteger32, 28,
59791 OPC_EmitRegisterI32, 0 ,
59792 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAS),
59793 MVT::f32, 5, 0, 1, 2, 3, 4,
59794 16, MVT::f16,
59795 OPC_CheckPatternPredicate, 59,
59796 OPC_EmitInteger32, 28,
59797 OPC_EmitRegisterI32, 0 ,
59798 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAH),
59799 MVT::f16, 5, 0, 1, 2, 3, 4,
59800 0,
59801 67,
59802 OPC_MoveChild0,
59803 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
59804 OPC_RecordChild0,
59805 OPC_RecordChild1,
59806 OPC_CheckPredicate2,
59807 OPC_MoveParent,
59808 OPC_RecordChild1,
59809 OPC_CheckPredicate, 11,
59810 OPC_SwitchType , 16, MVT::f64,
59811 OPC_CheckPatternPredicate, 50,
59812 OPC_EmitInteger32, 28,
59813 OPC_EmitRegisterI32, 0 ,
59814 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAD),
59815 MVT::f64, 5, 2, 0, 1, 3, 4,
59816 16, MVT::f32,
59817 OPC_CheckPatternPredicate, 51,
59818 OPC_EmitInteger32, 28,
59819 OPC_EmitRegisterI32, 0 ,
59820 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAS),
59821 MVT::f32, 5, 2, 0, 1, 3, 4,
59822 16, MVT::f16,
59823 OPC_CheckPatternPredicate, 58,
59824 OPC_EmitInteger32, 28,
59825 OPC_EmitRegisterI32, 0 ,
59826 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAH),
59827 MVT::f16, 5, 2, 0, 1, 3, 4,
59828 0,
59829 104,
59830 OPC_RecordChild0,
59831 OPC_MoveChild1,
59832 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
59833 OPC_RecordChild0,
59834 OPC_RecordChild1,
59835 OPC_CheckPredicate2,
59836 OPC_MoveParent,
59837 OPC_CheckPredicate, 11,
59838 OPC_SwitchType , 16, MVT::f64,
59839 OPC_CheckPatternPredicate, 50,
59840 OPC_EmitInteger32, 28,
59841 OPC_EmitRegisterI32, 0 ,
59842 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAD),
59843 MVT::f64, 5, 0, 1, 2, 3, 4,
59844 16, MVT::f32,
59845 OPC_CheckPatternPredicate, 51,
59846 OPC_EmitInteger32, 28,
59847 OPC_EmitRegisterI32, 0 ,
59848 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAS),
59849 MVT::f32, 5, 0, 1, 2, 3, 4,
59850 53, MVT::f16,
59851 OPC_Scope, 16,
59852 OPC_CheckPatternPredicate, 85,
59853 OPC_EmitInteger32, 28,
59854 OPC_EmitRegisterI32, 0 ,
59855 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAH),
59856 MVT::f16, 5, 0, 1, 2, 3, 4,
59857 16,
59858 OPC_CheckPatternPredicate, 57,
59859 OPC_EmitInteger32, 28,
59860 OPC_EmitRegisterI32, 0 ,
59861 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAH),
59862 MVT::f16, 5, 0, 1, 2, 3, 4,
59863 16,
59864 OPC_CheckPatternPredicate, 58,
59865 OPC_EmitInteger32, 28,
59866 OPC_EmitRegisterI32, 0 ,
59867 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAH),
59868 MVT::f16, 5, 0, 1, 2, 3, 4,
59869 0,
59870 0,
59871 49,
59872 OPC_MoveChild0,
59873 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
59874 OPC_RecordChild0,
59875 OPC_RecordChild1,
59876 OPC_CheckPredicate2,
59877 OPC_MoveParent,
59878 OPC_RecordChild1,
59879 OPC_CheckPredicate, 11,
59880 OPC_CheckType, MVT::f16,
59881 OPC_Scope, 16,
59882 OPC_CheckPatternPredicate, 59,
59883 OPC_EmitInteger32, 28,
59884 OPC_EmitRegisterI32, 0 ,
59885 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAH),
59886 MVT::f16, 5, 2, 0, 1, 3, 4,
59887 16,
59888 OPC_CheckPatternPredicate, 85,
59889 OPC_EmitInteger32, 28,
59890 OPC_EmitRegisterI32, 0 ,
59891 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAH),
59892 MVT::f16, 5, 2, 0, 1, 3, 4,
59893 0,
59894 98|128,1,
59895 OPC_RecordChild0,
59896 OPC_MoveChild1,
59897 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
59898 OPC_RecordChild0,
59899 OPC_RecordChild1,
59900 OPC_MoveParent,
59901 OPC_CheckType, MVT::f32,
59902 OPC_Scope, 106,
59903 OPC_CheckPatternPredicate, 86,
59904 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59905 MVT::v2f32, 0,
59906 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
59907 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59908 MVT::v2f32, 2, 3, 4,
59909 OPC_EmitStringInteger32, ARM::ssub_0,
59910 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
59911 MVT::v2f32, 3, 5, 0, 6,
59912 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59913 MVT::v2f32, 0,
59914 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
59915 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59916 MVT::v2f32, 2, 8, 9,
59917 OPC_EmitStringInteger32, ARM::ssub_0,
59918 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
59919 MVT::v2f32, 3, 10, 1, 11,
59920 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59921 MVT::v2f32, 0,
59922 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
59923 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59924 MVT::v2f32, 2, 13, 14,
59925 OPC_EmitStringInteger32, ARM::ssub_0,
59926 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
59927 MVT::v2f32, 3, 15, 2, 16,
59928 OPC_EmitInteger32, 28,
59929 OPC_EmitRegisterI32, 0 ,
59930 OPC_EmitNode1None, TARGET_VAL(ARM::VMLAfd),
59931 MVT::f64, 5, 7, 12, 17, 18, 19,
59932 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
59933 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59934 MVT::v2f32, 2, 20, 21,
59935 OPC_EmitStringInteger32, ARM::ssub_0,
59936 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
59937 MVT::f32, 2, 22, 23,
59938 106,
59939 OPC_CheckPatternPredicate, 87,
59940 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59941 MVT::v2f32, 0,
59942 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
59943 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59944 MVT::v2f32, 2, 3, 4,
59945 OPC_EmitStringInteger32, ARM::ssub_0,
59946 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
59947 MVT::v2f32, 3, 5, 0, 6,
59948 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59949 MVT::v2f32, 0,
59950 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
59951 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59952 MVT::v2f32, 2, 8, 9,
59953 OPC_EmitStringInteger32, ARM::ssub_0,
59954 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
59955 MVT::v2f32, 3, 10, 1, 11,
59956 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59957 MVT::v2f32, 0,
59958 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
59959 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59960 MVT::v2f32, 2, 13, 14,
59961 OPC_EmitStringInteger32, ARM::ssub_0,
59962 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
59963 MVT::v2f32, 3, 15, 2, 16,
59964 OPC_EmitInteger32, 28,
59965 OPC_EmitRegisterI32, 0 ,
59966 OPC_EmitNode1None, TARGET_VAL(ARM::VFMAfd),
59967 MVT::f64, 5, 7, 12, 17, 18, 19,
59968 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
59969 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59970 MVT::v2f32, 2, 20, 21,
59971 OPC_EmitStringInteger32, ARM::ssub_0,
59972 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
59973 MVT::f32, 2, 22, 23,
59974 0,
59975 98|128,1,
59976 OPC_MoveChild0,
59977 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
59978 OPC_RecordChild0,
59979 OPC_RecordChild1,
59980 OPC_MoveParent,
59981 OPC_RecordChild1,
59982 OPC_CheckType, MVT::f32,
59983 OPC_Scope, 106,
59984 OPC_CheckPatternPredicate, 86,
59985 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59986 MVT::v2f32, 0,
59987 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
59988 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59989 MVT::v2f32, 2, 3, 4,
59990 OPC_EmitStringInteger32, ARM::ssub_0,
59991 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
59992 MVT::v2f32, 3, 5, 2, 6,
59993 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
59994 MVT::v2f32, 0,
59995 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
59996 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
59997 MVT::v2f32, 2, 8, 9,
59998 OPC_EmitStringInteger32, ARM::ssub_0,
59999 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
60000 MVT::v2f32, 3, 10, 0, 11,
60001 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
60002 MVT::v2f32, 0,
60003 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
60004 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
60005 MVT::v2f32, 2, 13, 14,
60006 OPC_EmitStringInteger32, ARM::ssub_0,
60007 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
60008 MVT::v2f32, 3, 15, 1, 16,
60009 OPC_EmitInteger32, 28,
60010 OPC_EmitRegisterI32, 0 ,
60011 OPC_EmitNode1None, TARGET_VAL(ARM::VMLAfd),
60012 MVT::f64, 5, 7, 12, 17, 18, 19,
60013 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
60014 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
60015 MVT::v2f32, 2, 20, 21,
60016 OPC_EmitStringInteger32, ARM::ssub_0,
60017 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
60018 MVT::f32, 2, 22, 23,
60019 106,
60020 OPC_CheckPatternPredicate, 87,
60021 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
60022 MVT::v2f32, 0,
60023 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
60024 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
60025 MVT::v2f32, 2, 3, 4,
60026 OPC_EmitStringInteger32, ARM::ssub_0,
60027 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
60028 MVT::v2f32, 3, 5, 2, 6,
60029 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
60030 MVT::v2f32, 0,
60031 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
60032 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
60033 MVT::v2f32, 2, 8, 9,
60034 OPC_EmitStringInteger32, ARM::ssub_0,
60035 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
60036 MVT::v2f32, 3, 10, 0, 11,
60037 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
60038 MVT::v2f32, 0,
60039 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
60040 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
60041 MVT::v2f32, 2, 13, 14,
60042 OPC_EmitStringInteger32, ARM::ssub_0,
60043 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
60044 MVT::v2f32, 3, 15, 1, 16,
60045 OPC_EmitInteger32, 28,
60046 OPC_EmitRegisterI32, 0 ,
60047 OPC_EmitNode1None, TARGET_VAL(ARM::VFMAfd),
60048 MVT::f64, 5, 7, 12, 17, 18, 19,
60049 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
60050 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
60051 MVT::v2f32, 2, 20, 21,
60052 OPC_EmitStringInteger32, ARM::ssub_0,
60053 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
60054 MVT::f32, 2, 22, 23,
60055 0,
60056 110|128,1,
60057 OPC_RecordChild0,
60058 OPC_Scope, 11|128,1,
60059 OPC_RecordChild1,
60060 OPC_SwitchType , 15, MVT::f64,
60061 OPC_CheckPatternPredicate, 18,
60062 OPC_EmitInteger32, 28,
60063 OPC_EmitRegisterI32, 0 ,
60064 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDD),
60065 MVT::f64, 4, 0, 1, 2, 3,
60066 100, MVT::f32,
60067 OPC_Scope, 15,
60068 OPC_CheckPatternPredicate, 26,
60069 OPC_EmitInteger32, 28,
60070 OPC_EmitRegisterI32, 0 ,
60071 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDS),
60072 MVT::f32, 4, 0, 1, 2, 3,
60073 81,
60074 OPC_CheckPatternPredicate, 42,
60075 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
60076 MVT::v2f32, 0,
60077 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
60078 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
60079 MVT::v2f32, 2, 2, 3,
60080 OPC_EmitStringInteger32, ARM::ssub_0,
60081 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
60082 MVT::v2f32, 3, 4, 0, 5,
60083 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
60084 MVT::v2f32, 0,
60085 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
60086 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
60087 MVT::v2f32, 2, 7, 8,
60088 OPC_EmitStringInteger32, ARM::ssub_0,
60089 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
60090 MVT::v2f32, 3, 9, 1, 10,
60091 OPC_EmitInteger32, 28,
60092 OPC_EmitRegisterI32, 0 ,
60093 OPC_EmitNode1None, TARGET_VAL(ARM::VADDfd),
60094 MVT::f64, 4, 6, 11, 12, 13,
60095 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
60096 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
60097 MVT::v2f32, 2, 14, 15,
60098 OPC_EmitStringInteger32, ARM::ssub_0,
60099 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
60100 MVT::f32, 2, 16, 17,
60101 0,
60102 15, MVT::f16,
60103 OPC_CheckPatternPredicate, 13,
60104 OPC_EmitInteger32, 28,
60105 OPC_EmitRegisterI32, 0 ,
60106 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDH),
60107 MVT::f16, 4, 0, 1, 2, 3,
60108 0,
60109 93,
60110 OPC_MoveChild1,
60111 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
60112 OPC_RecordChild0,
60113 OPC_Scope, 42,
60114 OPC_CheckChild0Type, MVT::v4i1,
60115 OPC_MoveChild1,
60116 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
60117 OPC_RecordChild0,
60118 OPC_CheckChild0TypeI32,
60119 OPC_MoveSibling2,
60120 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
60121 OPC_MoveChild0,
60122 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
60123 OPC_CheckChild0Integer, 0|128,26,
60124 OPC_CheckType, MVT::v4i32,
60125 OPC_MoveParent,
60126 OPC_MoveParent,
60127 OPC_MoveParent,
60128 OPC_CheckType, MVT::v4f32,
60129 OPC_CheckPatternPredicate2,
60130 OPC_EmitInteger32, 2,
60131 OPC_EmitRegisterI32, 0 ,
60132 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f32),
60133 MVT::v4f32, 6, 0, 2, 3, 1, 4, 0,
60134 42,
60135 OPC_CheckChild0Type, MVT::v8i1,
60136 OPC_MoveChild1,
60137 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
60138 OPC_RecordChild0,
60139 OPC_CheckChild0TypeI32,
60140 OPC_MoveSibling2,
60141 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
60142 OPC_MoveChild0,
60143 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
60144 OPC_CheckChild0Integer, 0|128,42,
60145 OPC_CheckType, MVT::v8i16,
60146 OPC_MoveParent,
60147 OPC_MoveParent,
60148 OPC_MoveParent,
60149 OPC_CheckType, MVT::v8f16,
60150 OPC_CheckPatternPredicate2,
60151 OPC_EmitInteger32, 2,
60152 OPC_EmitRegisterI32, 0 ,
60153 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f16),
60154 MVT::v8f16, 6, 0, 2, 3, 1, 4, 0,
60155 0,
60156 0,
60157 95,
60158 OPC_MoveChild0,
60159 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
60160 OPC_RecordChild0,
60161 OPC_Scope, 43,
60162 OPC_CheckChild0Type, MVT::v4i1,
60163 OPC_MoveChild1,
60164 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
60165 OPC_RecordChild0,
60166 OPC_CheckChild0TypeI32,
60167 OPC_MoveSibling2,
60168 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
60169 OPC_MoveChild0,
60170 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
60171 OPC_CheckChild0Integer, 0|128,26,
60172 OPC_CheckType, MVT::v4i32,
60173 OPC_MoveParent,
60174 OPC_MoveParent,
60175 OPC_MoveParent,
60176 OPC_RecordChild1,
60177 OPC_CheckType, MVT::v4f32,
60178 OPC_CheckPatternPredicate2,
60179 OPC_EmitInteger32, 2,
60180 OPC_EmitRegisterI32, 0 ,
60181 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f32),
60182 MVT::v4f32, 6, 2, 1, 3, 0, 4, 2,
60183 43,
60184 OPC_CheckChild0Type, MVT::v8i1,
60185 OPC_MoveChild1,
60186 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
60187 OPC_RecordChild0,
60188 OPC_CheckChild0TypeI32,
60189 OPC_MoveSibling2,
60190 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
60191 OPC_MoveChild0,
60192 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
60193 OPC_CheckChild0Integer, 0|128,42,
60194 OPC_CheckType, MVT::v8i16,
60195 OPC_MoveParent,
60196 OPC_MoveParent,
60197 OPC_MoveParent,
60198 OPC_RecordChild1,
60199 OPC_CheckType, MVT::v8f16,
60200 OPC_CheckPatternPredicate2,
60201 OPC_EmitInteger32, 2,
60202 OPC_EmitRegisterI32, 0 ,
60203 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f16),
60204 MVT::v8f16, 6, 2, 1, 3, 0, 4, 2,
60205 0,
60206 84,
60207 OPC_RecordChild0,
60208 OPC_MoveChild1,
60209 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
60210 OPC_RecordChild0,
60211 OPC_Scope, 37,
60212 OPC_CheckChild0Type, MVT::v4i1,
60213 OPC_RecordChild1,
60214 OPC_MoveChild2,
60215 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
60216 OPC_MoveChild0,
60217 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
60218 OPC_CheckChild0Integer, 0|128,26,
60219 OPC_CheckType, MVT::v4i32,
60220 OPC_MoveParent,
60221 OPC_MoveParent,
60222 OPC_MoveParent,
60223 OPC_CheckType, MVT::v4f32,
60224 OPC_CheckPatternPredicate2,
60225 OPC_EmitInteger32, 2,
60226 OPC_EmitRegisterI32, 0 ,
60227 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDf32),
60228 MVT::v4f32, 6, 0, 2, 3, 1, 4, 0,
60229 37,
60230 OPC_CheckChild0Type, MVT::v8i1,
60231 OPC_RecordChild1,
60232 OPC_MoveChild2,
60233 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
60234 OPC_MoveChild0,
60235 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
60236 OPC_CheckChild0Integer, 0|128,42,
60237 OPC_CheckType, MVT::v8i16,
60238 OPC_MoveParent,
60239 OPC_MoveParent,
60240 OPC_MoveParent,
60241 OPC_CheckType, MVT::v8f16,
60242 OPC_CheckPatternPredicate2,
60243 OPC_EmitInteger32, 2,
60244 OPC_EmitRegisterI32, 0 ,
60245 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDf16),
60246 MVT::v8f16, 6, 0, 2, 3, 1, 4, 0,
60247 0,
60248 85,
60249 OPC_MoveChild0,
60250 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
60251 OPC_RecordChild0,
60252 OPC_Scope, 38,
60253 OPC_CheckChild0Type, MVT::v4i1,
60254 OPC_RecordChild1,
60255 OPC_MoveChild2,
60256 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
60257 OPC_MoveChild0,
60258 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
60259 OPC_CheckChild0Integer, 0|128,26,
60260 OPC_CheckType, MVT::v4i32,
60261 OPC_MoveParent,
60262 OPC_MoveParent,
60263 OPC_MoveParent,
60264 OPC_RecordChild1,
60265 OPC_CheckType, MVT::v4f32,
60266 OPC_CheckPatternPredicate2,
60267 OPC_EmitInteger32, 2,
60268 OPC_EmitRegisterI32, 0 ,
60269 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDf32),
60270 MVT::v4f32, 6, 2, 1, 3, 0, 4, 2,
60271 38,
60272 OPC_CheckChild0Type, MVT::v8i1,
60273 OPC_RecordChild1,
60274 OPC_MoveChild2,
60275 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
60276 OPC_MoveChild0,
60277 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
60278 OPC_CheckChild0Integer, 0|128,42,
60279 OPC_CheckType, MVT::v8i16,
60280 OPC_MoveParent,
60281 OPC_MoveParent,
60282 OPC_MoveParent,
60283 OPC_RecordChild1,
60284 OPC_CheckType, MVT::v8f16,
60285 OPC_CheckPatternPredicate2,
60286 OPC_EmitInteger32, 2,
60287 OPC_EmitRegisterI32, 0 ,
60288 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDf16),
60289 MVT::v8f16, 6, 2, 1, 3, 0, 4, 2,
60290 0,
60291 79,
60292 OPC_RecordChild0,
60293 OPC_MoveChild1,
60294 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
60295 OPC_CheckChild0Integer, 20|128,51,
60296 OPC_RecordChild1,
60297 OPC_MoveChild1,
60298 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60299 OPC_MoveParent,
60300 OPC_RecordChild2,
60301 OPC_Scope, 30,
60302 OPC_CheckChild2Type, MVT::v8f16,
60303 OPC_RecordChild3,
60304 OPC_CheckChild3Type, MVT::v8f16,
60305 OPC_MoveParent,
60306 OPC_CheckPredicate, 68,
60307 OPC_CheckType, MVT::v8f16,
60308 OPC_CheckPatternPredicate2,
60309 OPC_EmitConvertToTarget1,
60310 OPC_EmitInteger32, 0,
60311 OPC_EmitRegisterI32, 0 ,
60312 OPC_EmitRegisterI32, 0 ,
60313 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMLAf16),
60314 MVT::v8f16, 7, 0, 2, 3, 4, 5, 6, 7,
60315 30,
60316 OPC_CheckChild2Type, MVT::v4f32,
60317 OPC_RecordChild3,
60318 OPC_CheckChild3Type, MVT::v4f32,
60319 OPC_MoveParent,
60320 OPC_CheckPredicate, 68,
60321 OPC_CheckType, MVT::v4f32,
60322 OPC_CheckPatternPredicate2,
60323 OPC_EmitConvertToTarget1,
60324 OPC_EmitInteger32, 0,
60325 OPC_EmitRegisterI32, 0 ,
60326 OPC_EmitRegisterI32, 0 ,
60327 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMLAf32),
60328 MVT::v4f32, 7, 0, 2, 3, 4, 5, 6, 7,
60329 0,
60330 80,
60331 OPC_MoveChild0,
60332 OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
60333 OPC_CheckChild0Integer, 20|128,51,
60334 OPC_RecordChild1,
60335 OPC_MoveChild1,
60336 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60337 OPC_MoveParent,
60338 OPC_RecordChild2,
60339 OPC_Scope, 31,
60340 OPC_CheckChild2Type, MVT::v8f16,
60341 OPC_RecordChild3,
60342 OPC_CheckChild3Type, MVT::v8f16,
60343 OPC_MoveParent,
60344 OPC_RecordChild1,
60345 OPC_CheckPredicate, 68,
60346 OPC_CheckType, MVT::v8f16,
60347 OPC_CheckPatternPredicate2,
60348 OPC_EmitConvertToTarget0,
60349 OPC_EmitInteger32, 0,
60350 OPC_EmitRegisterI32, 0 ,
60351 OPC_EmitRegisterI32, 0 ,
60352 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMLAf16),
60353 MVT::v8f16, 7, 3, 1, 2, 4, 5, 6, 7,
60354 31,
60355 OPC_CheckChild2Type, MVT::v4f32,
60356 OPC_RecordChild3,
60357 OPC_CheckChild3Type, MVT::v4f32,
60358 OPC_MoveParent,
60359 OPC_RecordChild1,
60360 OPC_CheckPredicate, 68,
60361 OPC_CheckType, MVT::v4f32,
60362 OPC_CheckPatternPredicate2,
60363 OPC_EmitConvertToTarget0,
60364 OPC_EmitInteger32, 0,
60365 OPC_EmitRegisterI32, 0 ,
60366 OPC_EmitRegisterI32, 0 ,
60367 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMLAf32),
60368 MVT::v4f32, 7, 3, 1, 2, 4, 5, 6, 7,
60369 0,
60370 109,
60371 OPC_RecordChild0,
60372 OPC_MoveChild1,
60373 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60374 OPC_Scope, 61,
60375 OPC_RecordChild0,
60376 OPC_MoveChild1,
60377 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60378 OPC_RecordChild0,
60379 OPC_CheckChild0Type, MVT::v2f32,
60380 OPC_RecordChild1,
60381 OPC_MoveChild1,
60382 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60383 OPC_MoveParent,
60384 OPC_MoveParent,
60385 OPC_CheckPredicate2,
60386 OPC_MoveParent,
60387 OPC_CheckPredicate, 11,
60388 OPC_SwitchType , 18, MVT::v2f32,
60389 OPC_CheckPatternPredicate, 21,
60390 OPC_EmitConvertToTarget3,
60391 OPC_EmitInteger32, 28,
60392 OPC_EmitRegisterI32, 0 ,
60393 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfd),
60394 MVT::v2f32, 6, 0, 1, 2, 4, 5, 6,
60395 18, MVT::v4f32,
60396 OPC_CheckPatternPredicate, 21,
60397 OPC_EmitConvertToTarget3,
60398 OPC_EmitInteger32, 28,
60399 OPC_EmitRegisterI32, 0 ,
60400 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfq),
60401 MVT::v4f32, 6, 0, 1, 2, 4, 5, 6,
60402 0,
60403 39,
60404 OPC_MoveChild0,
60405 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60406 OPC_RecordChild0,
60407 OPC_CheckChild0Type, MVT::v2f32,
60408 OPC_RecordChild1,
60409 OPC_MoveChild1,
60410 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60411 OPC_MoveParent,
60412 OPC_MoveParent,
60413 OPC_RecordChild1,
60414 OPC_CheckPredicate2,
60415 OPC_MoveParent,
60416 OPC_CheckPredicate, 11,
60417 OPC_CheckType, MVT::v2f32,
60418 OPC_CheckPatternPredicate, 21,
60419 OPC_EmitConvertToTarget2,
60420 OPC_EmitInteger32, 28,
60421 OPC_EmitRegisterI32, 0 ,
60422 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfd),
60423 MVT::v2f32, 6, 0, 3, 1, 4, 5, 6,
60424 0,
60425 88,
60426 OPC_MoveChild0,
60427 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60428 OPC_Scope, 40,
60429 OPC_RecordChild0,
60430 OPC_MoveChild1,
60431 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60432 OPC_RecordChild0,
60433 OPC_CheckChild0Type, MVT::v2f32,
60434 OPC_RecordChild1,
60435 OPC_MoveChild1,
60436 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60437 OPC_MoveParent,
60438 OPC_MoveParent,
60439 OPC_CheckPredicate2,
60440 OPC_MoveParent,
60441 OPC_RecordChild1,
60442 OPC_CheckPredicate, 11,
60443 OPC_CheckType, MVT::v2f32,
60444 OPC_CheckPatternPredicate, 21,
60445 OPC_EmitConvertToTarget2,
60446 OPC_EmitInteger32, 28,
60447 OPC_EmitRegisterI32, 0 ,
60448 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfd),
60449 MVT::v2f32, 6, 3, 0, 1, 4, 5, 6,
60450 40,
60451 OPC_MoveChild0,
60452 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60453 OPC_RecordChild0,
60454 OPC_CheckChild0Type, MVT::v2f32,
60455 OPC_RecordChild1,
60456 OPC_MoveChild1,
60457 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60458 OPC_MoveParent,
60459 OPC_MoveParent,
60460 OPC_RecordChild1,
60461 OPC_CheckPredicate2,
60462 OPC_MoveParent,
60463 OPC_RecordChild1,
60464 OPC_CheckPredicate, 11,
60465 OPC_CheckType, MVT::v2f32,
60466 OPC_CheckPatternPredicate, 21,
60467 OPC_EmitConvertToTarget1,
60468 OPC_EmitInteger32, 28,
60469 OPC_EmitRegisterI32, 0 ,
60470 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfd),
60471 MVT::v2f32, 6, 3, 2, 0, 4, 5, 6,
60472 0,
60473 44,
60474 OPC_RecordChild0,
60475 OPC_MoveChild1,
60476 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60477 OPC_MoveChild0,
60478 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60479 OPC_RecordChild0,
60480 OPC_CheckChild0Type, MVT::v2f32,
60481 OPC_RecordChild1,
60482 OPC_MoveChild1,
60483 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60484 OPC_MoveParent,
60485 OPC_MoveParent,
60486 OPC_RecordChild1,
60487 OPC_CheckPredicate2,
60488 OPC_MoveParent,
60489 OPC_CheckPredicate, 11,
60490 OPC_CheckType, MVT::v4f32,
60491 OPC_CheckPatternPredicate, 21,
60492 OPC_EmitConvertToTarget2,
60493 OPC_EmitInteger32, 28,
60494 OPC_EmitRegisterI32, 0 ,
60495 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfq),
60496 MVT::v4f32, 6, 0, 3, 1, 4, 5, 6,
60497 88,
60498 OPC_MoveChild0,
60499 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60500 OPC_Scope, 40,
60501 OPC_RecordChild0,
60502 OPC_MoveChild1,
60503 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60504 OPC_RecordChild0,
60505 OPC_CheckChild0Type, MVT::v2f32,
60506 OPC_RecordChild1,
60507 OPC_MoveChild1,
60508 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60509 OPC_MoveParent,
60510 OPC_MoveParent,
60511 OPC_CheckPredicate2,
60512 OPC_MoveParent,
60513 OPC_RecordChild1,
60514 OPC_CheckPredicate, 11,
60515 OPC_CheckType, MVT::v4f32,
60516 OPC_CheckPatternPredicate, 21,
60517 OPC_EmitConvertToTarget2,
60518 OPC_EmitInteger32, 28,
60519 OPC_EmitRegisterI32, 0 ,
60520 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfq),
60521 MVT::v4f32, 6, 3, 0, 1, 4, 5, 6,
60522 40,
60523 OPC_MoveChild0,
60524 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60525 OPC_RecordChild0,
60526 OPC_CheckChild0Type, MVT::v2f32,
60527 OPC_RecordChild1,
60528 OPC_MoveChild1,
60529 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60530 OPC_MoveParent,
60531 OPC_MoveParent,
60532 OPC_RecordChild1,
60533 OPC_CheckPredicate2,
60534 OPC_MoveParent,
60535 OPC_RecordChild1,
60536 OPC_CheckPredicate, 11,
60537 OPC_CheckType, MVT::v4f32,
60538 OPC_CheckPatternPredicate, 21,
60539 OPC_EmitConvertToTarget1,
60540 OPC_EmitInteger32, 28,
60541 OPC_EmitRegisterI32, 0 ,
60542 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfq),
60543 MVT::v4f32, 6, 3, 2, 0, 4, 5, 6,
60544 0,
60545 115,
60546 OPC_RecordChild0,
60547 OPC_MoveChild1,
60548 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60549 OPC_Scope, 53,
60550 OPC_RecordChild0,
60551 OPC_MoveChild1,
60552 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60553 OPC_RecordChild0,
60554 OPC_CheckChild0Type, MVT::v4f32,
60555 OPC_RecordChild1,
60556 OPC_MoveChild1,
60557 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60558 OPC_MoveParent,
60559 OPC_MoveParent,
60560 OPC_CheckPredicate2,
60561 OPC_MoveParent,
60562 OPC_CheckPredicate, 11,
60563 OPC_CheckType, MVT::v4f32,
60564 OPC_CheckPatternPredicate, 21,
60565 OPC_EmitConvertToTarget3,
60566 OPC_EmitNodeXForm, 7, 4,
60567 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
60568 MVT::v2f32, 2, 2, 5,
60569 OPC_EmitConvertToTarget3,
60570 OPC_EmitNodeXForm, 8, 7,
60571 OPC_EmitInteger32, 28,
60572 OPC_EmitRegisterI32, 0 ,
60573 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfq),
60574 MVT::v4f32, 6, 0, 1, 6, 8, 9, 10,
60575 53,
60576 OPC_MoveChild0,
60577 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60578 OPC_RecordChild0,
60579 OPC_CheckChild0Type, MVT::v4f32,
60580 OPC_RecordChild1,
60581 OPC_MoveChild1,
60582 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60583 OPC_MoveParent,
60584 OPC_MoveParent,
60585 OPC_RecordChild1,
60586 OPC_CheckPredicate2,
60587 OPC_MoveParent,
60588 OPC_CheckPredicate, 11,
60589 OPC_CheckType, MVT::v4f32,
60590 OPC_CheckPatternPredicate, 21,
60591 OPC_EmitConvertToTarget2,
60592 OPC_EmitNodeXForm, 7, 4,
60593 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
60594 MVT::v2f32, 2, 1, 5,
60595 OPC_EmitConvertToTarget2,
60596 OPC_EmitNodeXForm, 8, 7,
60597 OPC_EmitInteger32, 28,
60598 OPC_EmitRegisterI32, 0 ,
60599 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfq),
60600 MVT::v4f32, 6, 0, 3, 6, 8, 9, 10,
60601 0,
60602 116,
60603 OPC_MoveChild0,
60604 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60605 OPC_Scope, 54,
60606 OPC_RecordChild0,
60607 OPC_MoveChild1,
60608 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60609 OPC_RecordChild0,
60610 OPC_CheckChild0Type, MVT::v4f32,
60611 OPC_RecordChild1,
60612 OPC_MoveChild1,
60613 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60614 OPC_MoveParent,
60615 OPC_MoveParent,
60616 OPC_CheckPredicate2,
60617 OPC_MoveParent,
60618 OPC_RecordChild1,
60619 OPC_CheckPredicate, 11,
60620 OPC_CheckType, MVT::v4f32,
60621 OPC_CheckPatternPredicate, 21,
60622 OPC_EmitConvertToTarget2,
60623 OPC_EmitNodeXForm, 7, 4,
60624 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
60625 MVT::v2f32, 2, 1, 5,
60626 OPC_EmitConvertToTarget2,
60627 OPC_EmitNodeXForm, 8, 7,
60628 OPC_EmitInteger32, 28,
60629 OPC_EmitRegisterI32, 0 ,
60630 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfq),
60631 MVT::v4f32, 6, 3, 0, 6, 8, 9, 10,
60632 54,
60633 OPC_MoveChild0,
60634 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60635 OPC_RecordChild0,
60636 OPC_CheckChild0Type, MVT::v4f32,
60637 OPC_RecordChild1,
60638 OPC_MoveChild1,
60639 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60640 OPC_MoveParent,
60641 OPC_MoveParent,
60642 OPC_RecordChild1,
60643 OPC_CheckPredicate2,
60644 OPC_MoveParent,
60645 OPC_RecordChild1,
60646 OPC_CheckPredicate, 11,
60647 OPC_CheckType, MVT::v4f32,
60648 OPC_CheckPatternPredicate, 21,
60649 OPC_EmitConvertToTarget1,
60650 OPC_EmitNodeXForm, 7, 4,
60651 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
60652 MVT::v2f32, 2, 0, 5,
60653 OPC_EmitConvertToTarget1,
60654 OPC_EmitNodeXForm, 8, 7,
60655 OPC_EmitInteger32, 28,
60656 OPC_EmitRegisterI32, 0 ,
60657 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslfq),
60658 MVT::v4f32, 6, 3, 2, 6, 8, 9, 10,
60659 0,
60660 103,
60661 OPC_RecordChild0,
60662 OPC_MoveChild1,
60663 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60664 OPC_Scope, 58,
60665 OPC_RecordChild0,
60666 OPC_MoveChild1,
60667 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60668 OPC_RecordChild0,
60669 OPC_CheckChild0Type, MVT::v4f16,
60670 OPC_RecordChild1,
60671 OPC_MoveChild1,
60672 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60673 OPC_MoveParent,
60674 OPC_MoveParent,
60675 OPC_MoveParent,
60676 OPC_SwitchType , 18, MVT::v4f16,
60677 OPC_CheckPatternPredicate, 28,
60678 OPC_EmitConvertToTarget3,
60679 OPC_EmitInteger32, 28,
60680 OPC_EmitRegisterI32, 0 ,
60681 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslhd),
60682 MVT::v4f16, 6, 0, 1, 2, 4, 5, 6,
60683 18, MVT::v8f16,
60684 OPC_CheckPatternPredicate, 28,
60685 OPC_EmitConvertToTarget3,
60686 OPC_EmitInteger32, 28,
60687 OPC_EmitRegisterI32, 0 ,
60688 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslhq),
60689 MVT::v8f16, 6, 0, 1, 2, 4, 5, 6,
60690 0,
60691 36,
60692 OPC_MoveChild0,
60693 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60694 OPC_RecordChild0,
60695 OPC_CheckChild0Type, MVT::v4f16,
60696 OPC_RecordChild1,
60697 OPC_MoveChild1,
60698 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60699 OPC_MoveParent,
60700 OPC_MoveParent,
60701 OPC_RecordChild1,
60702 OPC_MoveParent,
60703 OPC_CheckType, MVT::v4f16,
60704 OPC_CheckPatternPredicate, 28,
60705 OPC_EmitConvertToTarget2,
60706 OPC_EmitInteger32, 28,
60707 OPC_EmitRegisterI32, 0 ,
60708 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslhd),
60709 MVT::v4f16, 6, 0, 3, 1, 4, 5, 6,
60710 0,
60711 82,
60712 OPC_MoveChild0,
60713 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60714 OPC_Scope, 37,
60715 OPC_RecordChild0,
60716 OPC_MoveChild1,
60717 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60718 OPC_RecordChild0,
60719 OPC_CheckChild0Type, MVT::v4f16,
60720 OPC_RecordChild1,
60721 OPC_MoveChild1,
60722 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60723 OPC_MoveParent,
60724 OPC_MoveParent,
60725 OPC_MoveParent,
60726 OPC_RecordChild1,
60727 OPC_CheckType, MVT::v4f16,
60728 OPC_CheckPatternPredicate, 28,
60729 OPC_EmitConvertToTarget2,
60730 OPC_EmitInteger32, 28,
60731 OPC_EmitRegisterI32, 0 ,
60732 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslhd),
60733 MVT::v4f16, 6, 3, 0, 1, 4, 5, 6,
60734 37,
60735 OPC_MoveChild0,
60736 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60737 OPC_RecordChild0,
60738 OPC_CheckChild0Type, MVT::v4f16,
60739 OPC_RecordChild1,
60740 OPC_MoveChild1,
60741 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60742 OPC_MoveParent,
60743 OPC_MoveParent,
60744 OPC_RecordChild1,
60745 OPC_MoveParent,
60746 OPC_RecordChild1,
60747 OPC_CheckType, MVT::v4f16,
60748 OPC_CheckPatternPredicate, 28,
60749 OPC_EmitConvertToTarget1,
60750 OPC_EmitInteger32, 28,
60751 OPC_EmitRegisterI32, 0 ,
60752 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslhd),
60753 MVT::v4f16, 6, 3, 2, 0, 4, 5, 6,
60754 0,
60755 41,
60756 OPC_RecordChild0,
60757 OPC_MoveChild1,
60758 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60759 OPC_MoveChild0,
60760 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60761 OPC_RecordChild0,
60762 OPC_CheckChild0Type, MVT::v4f16,
60763 OPC_RecordChild1,
60764 OPC_MoveChild1,
60765 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60766 OPC_MoveParent,
60767 OPC_MoveParent,
60768 OPC_RecordChild1,
60769 OPC_MoveParent,
60770 OPC_CheckType, MVT::v8f16,
60771 OPC_CheckPatternPredicate, 28,
60772 OPC_EmitConvertToTarget2,
60773 OPC_EmitInteger32, 28,
60774 OPC_EmitRegisterI32, 0 ,
60775 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslhq),
60776 MVT::v8f16, 6, 0, 3, 1, 4, 5, 6,
60777 82,
60778 OPC_MoveChild0,
60779 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60780 OPC_Scope, 37,
60781 OPC_RecordChild0,
60782 OPC_MoveChild1,
60783 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60784 OPC_RecordChild0,
60785 OPC_CheckChild0Type, MVT::v4f16,
60786 OPC_RecordChild1,
60787 OPC_MoveChild1,
60788 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60789 OPC_MoveParent,
60790 OPC_MoveParent,
60791 OPC_MoveParent,
60792 OPC_RecordChild1,
60793 OPC_CheckType, MVT::v8f16,
60794 OPC_CheckPatternPredicate, 28,
60795 OPC_EmitConvertToTarget2,
60796 OPC_EmitInteger32, 28,
60797 OPC_EmitRegisterI32, 0 ,
60798 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslhq),
60799 MVT::v8f16, 6, 3, 0, 1, 4, 5, 6,
60800 37,
60801 OPC_MoveChild0,
60802 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
60803 OPC_RecordChild0,
60804 OPC_CheckChild0Type, MVT::v4f16,
60805 OPC_RecordChild1,
60806 OPC_MoveChild1,
60807 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
60808 OPC_MoveParent,
60809 OPC_MoveParent,
60810 OPC_RecordChild1,
60811 OPC_MoveParent,
60812 OPC_RecordChild1,
60813 OPC_CheckType, MVT::v8f16,
60814 OPC_CheckPatternPredicate, 28,
60815 OPC_EmitConvertToTarget1,
60816 OPC_EmitInteger32, 28,
60817 OPC_EmitRegisterI32, 0 ,
60818 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAslhq),
60819 MVT::v8f16, 6, 3, 2, 0, 4, 5, 6,
60820 0,
60821 125,
60822 OPC_RecordChild0,
60823 OPC_MoveChild1,
60824 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60825 OPC_RecordChild0,
60826 OPC_RecordChild1,
60827 OPC_CheckPredicate2,
60828 OPC_MoveParent,
60829 OPC_CheckPredicate, 11,
60830 OPC_SwitchType , 36, MVT::v2f32,
60831 OPC_Scope, 16,
60832 OPC_CheckPatternPredicate, 21,
60833 OPC_EmitInteger32, 28,
60834 OPC_EmitRegisterI32, 0 ,
60835 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAfd),
60836 MVT::v2f32, 5, 0, 1, 2, 3, 4,
60837 16,
60838 OPC_CheckPatternPredicate, 60,
60839 OPC_EmitInteger32, 28,
60840 OPC_EmitRegisterI32, 0 ,
60841 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAfd),
60842 MVT::v2f32, 5, 0, 1, 2, 3, 4,
60843 0,
60844 36, MVT::v4f32,
60845 OPC_Scope, 16,
60846 OPC_CheckPatternPredicate, 21,
60847 OPC_EmitInteger32, 28,
60848 OPC_EmitRegisterI32, 0 ,
60849 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAfq),
60850 MVT::v4f32, 5, 0, 1, 2, 3, 4,
60851 16,
60852 OPC_CheckPatternPredicate, 60,
60853 OPC_EmitInteger32, 28,
60854 OPC_EmitRegisterI32, 0 ,
60855 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAfq),
60856 MVT::v4f32, 5, 0, 1, 2, 3, 4,
60857 0,
60858 16, MVT::v4f16,
60859 OPC_CheckPatternPredicate, 28,
60860 OPC_EmitInteger32, 28,
60861 OPC_EmitRegisterI32, 0 ,
60862 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAhd),
60863 MVT::v4f16, 5, 0, 1, 2, 3, 4,
60864 16, MVT::v8f16,
60865 OPC_CheckPatternPredicate, 28,
60866 OPC_EmitInteger32, 28,
60867 OPC_EmitRegisterI32, 0 ,
60868 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAhq),
60869 MVT::v8f16, 5, 0, 1, 2, 3, 4,
60870 0,
60871 125,
60872 OPC_MoveChild0,
60873 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
60874 OPC_RecordChild0,
60875 OPC_RecordChild1,
60876 OPC_CheckPredicate2,
60877 OPC_MoveParent,
60878 OPC_RecordChild1,
60879 OPC_CheckPredicate, 11,
60880 OPC_SwitchType , 36, MVT::v2f32,
60881 OPC_Scope, 16,
60882 OPC_CheckPatternPredicate, 21,
60883 OPC_EmitInteger32, 28,
60884 OPC_EmitRegisterI32, 0 ,
60885 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAfd),
60886 MVT::v2f32, 5, 2, 0, 1, 3, 4,
60887 16,
60888 OPC_CheckPatternPredicate, 60,
60889 OPC_EmitInteger32, 28,
60890 OPC_EmitRegisterI32, 0 ,
60891 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAfd),
60892 MVT::v2f32, 5, 2, 0, 1, 3, 4,
60893 0,
60894 36, MVT::v4f32,
60895 OPC_Scope, 16,
60896 OPC_CheckPatternPredicate, 21,
60897 OPC_EmitInteger32, 28,
60898 OPC_EmitRegisterI32, 0 ,
60899 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAfq),
60900 MVT::v4f32, 5, 2, 0, 1, 3, 4,
60901 16,
60902 OPC_CheckPatternPredicate, 60,
60903 OPC_EmitInteger32, 28,
60904 OPC_EmitRegisterI32, 0 ,
60905 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAfq),
60906 MVT::v4f32, 5, 2, 0, 1, 3, 4,
60907 0,
60908 16, MVT::v4f16,
60909 OPC_CheckPatternPredicate, 28,
60910 OPC_EmitInteger32, 28,
60911 OPC_EmitRegisterI32, 0 ,
60912 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAhd),
60913 MVT::v4f16, 5, 2, 0, 1, 3, 4,
60914 16, MVT::v8f16,
60915 OPC_CheckPatternPredicate, 28,
60916 OPC_EmitInteger32, 28,
60917 OPC_EmitRegisterI32, 0 ,
60918 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLAhq),
60919 MVT::v8f16, 5, 2, 0, 1, 3, 4,
60920 0,
60921 106,
60922 OPC_RecordChild0,
60923 OPC_MoveChild1,
60924 OPC_SwitchOpcode , 41, TARGET_VAL(ISD::FMUL),
60925 OPC_RecordChild0,
60926 OPC_RecordChild1,
60927 OPC_MoveParent,
60928 OPC_SwitchType , 16, MVT::v4f16,
60929 OPC_CheckPatternPredicate, 61,
60930 OPC_EmitInteger32, 28,
60931 OPC_EmitRegisterI32, 0 ,
60932 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAhd),
60933 MVT::v4f16, 5, 0, 1, 2, 3, 4,
60934 16, MVT::v8f16,
60935 OPC_CheckPatternPredicate, 61,
60936 OPC_EmitInteger32, 28,
60937 OPC_EmitRegisterI32, 0 ,
60938 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAhq),
60939 MVT::v8f16, 5, 0, 1, 2, 3, 4,
60940 0,
60941 55, TARGET_VAL(ARMISD::VDUP),
60942 OPC_RecordChild0,
60943 OPC_CheckChild0TypeI32,
60944 OPC_MoveParent,
60945 OPC_SwitchType , 23, MVT::v4f32,
60946 OPC_CheckPatternPredicate2,
60947 OPC_EmitInteger32, 0,
60948 OPC_EmitRegisterI32, 0 ,
60949 OPC_EmitRegisterI32, 0 ,
60950 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
60951 MVT::v4i32, 0,
60952 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f32),
60953 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
60954 23, MVT::v8f16,
60955 OPC_CheckPatternPredicate2,
60956 OPC_EmitInteger32, 0,
60957 OPC_EmitRegisterI32, 0 ,
60958 OPC_EmitRegisterI32, 0 ,
60959 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
60960 MVT::v4i32, 0,
60961 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f16),
60962 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
60963 0,
60964 0,
60965 107,
60966 OPC_MoveChild0,
60967 OPC_SwitchOpcode , 42, TARGET_VAL(ISD::FMUL),
60968 OPC_RecordChild0,
60969 OPC_RecordChild1,
60970 OPC_MoveParent,
60971 OPC_RecordChild1,
60972 OPC_SwitchType , 16, MVT::v4f16,
60973 OPC_CheckPatternPredicate, 61,
60974 OPC_EmitInteger32, 28,
60975 OPC_EmitRegisterI32, 0 ,
60976 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAhd),
60977 MVT::v4f16, 5, 2, 0, 1, 3, 4,
60978 16, MVT::v8f16,
60979 OPC_CheckPatternPredicate, 61,
60980 OPC_EmitInteger32, 28,
60981 OPC_EmitRegisterI32, 0 ,
60982 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAhq),
60983 MVT::v8f16, 5, 2, 0, 1, 3, 4,
60984 0,
60985 56, TARGET_VAL(ARMISD::VDUP),
60986 OPC_RecordChild0,
60987 OPC_CheckChild0TypeI32,
60988 OPC_MoveParent,
60989 OPC_RecordChild1,
60990 OPC_SwitchType , 23, MVT::v4f32,
60991 OPC_CheckPatternPredicate2,
60992 OPC_EmitInteger32, 0,
60993 OPC_EmitRegisterI32, 0 ,
60994 OPC_EmitRegisterI32, 0 ,
60995 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
60996 MVT::v4i32, 0,
60997 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f32),
60998 MVT::v4f32, 6, 1, 0, 2, 3, 4, 5,
60999 23, MVT::v8f16,
61000 OPC_CheckPatternPredicate2,
61001 OPC_EmitInteger32, 0,
61002 OPC_EmitRegisterI32, 0 ,
61003 OPC_EmitRegisterI32, 0 ,
61004 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61005 MVT::v4i32, 0,
61006 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f16),
61007 MVT::v8f16, 6, 1, 0, 2, 3, 4, 5,
61008 0,
61009 0,
61010 124,
61011 OPC_RecordChild0,
61012 OPC_RecordChild1,
61013 OPC_SwitchType , 14, MVT::v2f32,
61014 OPC_CheckPatternPredicate1,
61015 OPC_EmitInteger32, 28,
61016 OPC_EmitRegisterI32, 0 ,
61017 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDfd),
61018 MVT::v2f32, 4, 0, 1, 2, 3,
61019 41, MVT::v4f32,
61020 OPC_Scope, 14,
61021 OPC_CheckPatternPredicate1,
61022 OPC_EmitInteger32, 28,
61023 OPC_EmitRegisterI32, 0 ,
61024 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDfq),
61025 MVT::v4f32, 4, 0, 1, 2, 3,
61026 23,
61027 OPC_CheckPatternPredicate2,
61028 OPC_EmitInteger32, 0,
61029 OPC_EmitRegisterI32, 0 ,
61030 OPC_EmitRegisterI32, 0 ,
61031 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61032 MVT::v4i32, 0,
61033 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDf32),
61034 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
61035 0,
61036 15, MVT::v4f16,
61037 OPC_CheckPatternPredicate, 11,
61038 OPC_EmitInteger32, 28,
61039 OPC_EmitRegisterI32, 0 ,
61040 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDhd),
61041 MVT::v4f16, 4, 0, 1, 2, 3,
61042 42, MVT::v8f16,
61043 OPC_Scope, 15,
61044 OPC_CheckPatternPredicate, 11,
61045 OPC_EmitInteger32, 28,
61046 OPC_EmitRegisterI32, 0 ,
61047 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDhq),
61048 MVT::v8f16, 4, 0, 1, 2, 3,
61049 23,
61050 OPC_CheckPatternPredicate2,
61051 OPC_EmitInteger32, 0,
61052 OPC_EmitRegisterI32, 0 ,
61053 OPC_EmitRegisterI32, 0 ,
61054 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61055 MVT::v4i32, 0,
61056 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDf16),
61057 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
61058 0,
61059 0,
61060 0,
61061 116|128,13, TARGET_VAL(ISD::FSUB),
61062 OPC_Scope, 104|128,1,
61063 OPC_MoveChild0,
61064 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
61065 OPC_Scope, 88,
61066 OPC_MoveChild0,
61067 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
61068 OPC_RecordChild0,
61069 OPC_RecordChild1,
61070 OPC_CheckPredicate2,
61071 OPC_MoveParent,
61072 OPC_MoveParent,
61073 OPC_RecordChild1,
61074 OPC_CheckPredicate, 11,
61075 OPC_SwitchType , 16, MVT::f64,
61076 OPC_CheckPatternPredicate, 48,
61077 OPC_EmitInteger32, 28,
61078 OPC_EmitRegisterI32, 0 ,
61079 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMLAD),
61080 MVT::f64, 5, 2, 0, 1, 3, 4,
61081 16, MVT::f32,
61082 OPC_CheckPatternPredicate, 49,
61083 OPC_EmitInteger32, 28,
61084 OPC_EmitRegisterI32, 0 ,
61085 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMLAS),
61086 MVT::f32, 5, 2, 0, 1, 3, 4,
61087 36, MVT::f16,
61088 OPC_Scope, 16,
61089 OPC_CheckPatternPredicate, 57,
61090 OPC_EmitInteger32, 28,
61091 OPC_EmitRegisterI32, 0 ,
61092 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMLAH),
61093 MVT::f16, 5, 2, 0, 1, 3, 4,
61094 16,
61095 OPC_CheckPatternPredicate, 59,
61096 OPC_EmitInteger32, 28,
61097 OPC_EmitRegisterI32, 0 ,
61098 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMLAH),
61099 MVT::f16, 5, 2, 0, 1, 3, 4,
61100 0,
61101 0,
61102 67,
61103 OPC_RecordChild0,
61104 OPC_MoveSibling1,
61105 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
61106 OPC_RecordChild0,
61107 OPC_RecordChild1,
61108 OPC_CheckPredicate2,
61109 OPC_MoveParent,
61110 OPC_CheckPredicate, 11,
61111 OPC_SwitchType , 16, MVT::f64,
61112 OPC_CheckPatternPredicate, 48,
61113 OPC_EmitInteger32, 28,
61114 OPC_EmitRegisterI32, 0 ,
61115 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMLAD),
61116 MVT::f64, 5, 0, 1, 2, 3, 4,
61117 16, MVT::f32,
61118 OPC_CheckPatternPredicate, 49,
61119 OPC_EmitInteger32, 28,
61120 OPC_EmitRegisterI32, 0 ,
61121 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMLAS),
61122 MVT::f32, 5, 0, 1, 2, 3, 4,
61123 16, MVT::f16,
61124 OPC_CheckPatternPredicate, 59,
61125 OPC_EmitInteger32, 28,
61126 OPC_EmitRegisterI32, 0 ,
61127 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMLAH),
61128 MVT::f16, 5, 0, 1, 2, 3, 4,
61129 0,
61130 68,
61131 OPC_MoveChild0,
61132 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
61133 OPC_RecordChild0,
61134 OPC_RecordChild1,
61135 OPC_CheckPredicate2,
61136 OPC_MoveParent,
61137 OPC_MoveParent,
61138 OPC_RecordChild1,
61139 OPC_CheckPredicate, 11,
61140 OPC_SwitchType , 16, MVT::f64,
61141 OPC_CheckPatternPredicate, 50,
61142 OPC_EmitInteger32, 28,
61143 OPC_EmitRegisterI32, 0 ,
61144 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAD),
61145 MVT::f64, 5, 2, 0, 1, 3, 4,
61146 16, MVT::f32,
61147 OPC_CheckPatternPredicate, 51,
61148 OPC_EmitInteger32, 28,
61149 OPC_EmitRegisterI32, 0 ,
61150 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAS),
61151 MVT::f32, 5, 2, 0, 1, 3, 4,
61152 16, MVT::f16,
61153 OPC_CheckPatternPredicate, 58,
61154 OPC_EmitInteger32, 28,
61155 OPC_EmitRegisterI32, 0 ,
61156 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAH),
61157 MVT::f16, 5, 2, 0, 1, 3, 4,
61158 0,
61159 0,
61160 67,
61161 OPC_RecordChild0,
61162 OPC_MoveChild1,
61163 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
61164 OPC_RecordChild0,
61165 OPC_RecordChild1,
61166 OPC_CheckPredicate2,
61167 OPC_MoveParent,
61168 OPC_CheckPredicate, 11,
61169 OPC_SwitchType , 16, MVT::f64,
61170 OPC_CheckPatternPredicate, 48,
61171 OPC_EmitInteger32, 28,
61172 OPC_EmitRegisterI32, 0 ,
61173 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSD),
61174 MVT::f64, 5, 0, 1, 2, 3, 4,
61175 16, MVT::f32,
61176 OPC_CheckPatternPredicate, 49,
61177 OPC_EmitInteger32, 28,
61178 OPC_EmitRegisterI32, 0 ,
61179 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSS),
61180 MVT::f32, 5, 0, 1, 2, 3, 4,
61181 16, MVT::f16,
61182 OPC_CheckPatternPredicate, 59,
61183 OPC_EmitInteger32, 28,
61184 OPC_EmitRegisterI32, 0 ,
61185 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSH),
61186 MVT::f16, 5, 0, 1, 2, 3, 4,
61187 0,
61188 87,
61189 OPC_MoveChild0,
61190 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
61191 OPC_RecordChild0,
61192 OPC_RecordChild1,
61193 OPC_CheckPredicate2,
61194 OPC_MoveParent,
61195 OPC_RecordChild1,
61196 OPC_CheckPredicate, 11,
61197 OPC_SwitchType , 16, MVT::f64,
61198 OPC_CheckPatternPredicate, 48,
61199 OPC_EmitInteger32, 28,
61200 OPC_EmitRegisterI32, 0 ,
61201 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMLSD),
61202 MVT::f64, 5, 2, 0, 1, 3, 4,
61203 16, MVT::f32,
61204 OPC_CheckPatternPredicate, 49,
61205 OPC_EmitInteger32, 28,
61206 OPC_EmitRegisterI32, 0 ,
61207 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMLSS),
61208 MVT::f32, 5, 2, 0, 1, 3, 4,
61209 36, MVT::f16,
61210 OPC_Scope, 16,
61211 OPC_CheckPatternPredicate, 57,
61212 OPC_EmitInteger32, 28,
61213 OPC_EmitRegisterI32, 0 ,
61214 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMLSH),
61215 MVT::f16, 5, 2, 0, 1, 3, 4,
61216 16,
61217 OPC_CheckPatternPredicate, 59,
61218 OPC_EmitInteger32, 28,
61219 OPC_EmitRegisterI32, 0 ,
61220 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMLSH),
61221 MVT::f16, 5, 2, 0, 1, 3, 4,
61222 0,
61223 0,
61224 67,
61225 OPC_RecordChild0,
61226 OPC_MoveChild1,
61227 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
61228 OPC_RecordChild0,
61229 OPC_RecordChild1,
61230 OPC_CheckPredicate2,
61231 OPC_MoveParent,
61232 OPC_CheckPredicate, 11,
61233 OPC_SwitchType , 16, MVT::f64,
61234 OPC_CheckPatternPredicate, 50,
61235 OPC_EmitInteger32, 28,
61236 OPC_EmitRegisterI32, 0 ,
61237 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSD),
61238 MVT::f64, 5, 0, 1, 2, 3, 4,
61239 16, MVT::f32,
61240 OPC_CheckPatternPredicate, 51,
61241 OPC_EmitInteger32, 28,
61242 OPC_EmitRegisterI32, 0 ,
61243 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSS),
61244 MVT::f32, 5, 0, 1, 2, 3, 4,
61245 16, MVT::f16,
61246 OPC_CheckPatternPredicate, 85,
61247 OPC_EmitInteger32, 28,
61248 OPC_EmitRegisterI32, 0 ,
61249 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSH),
61250 MVT::f16, 5, 0, 1, 2, 3, 4,
61251 0,
61252 67,
61253 OPC_MoveChild0,
61254 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
61255 OPC_RecordChild0,
61256 OPC_RecordChild1,
61257 OPC_CheckPredicate2,
61258 OPC_MoveParent,
61259 OPC_RecordChild1,
61260 OPC_CheckPredicate, 11,
61261 OPC_SwitchType , 16, MVT::f64,
61262 OPC_CheckPatternPredicate, 50,
61263 OPC_EmitInteger32, 28,
61264 OPC_EmitRegisterI32, 0 ,
61265 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSD),
61266 MVT::f64, 5, 2, 0, 1, 3, 4,
61267 16, MVT::f32,
61268 OPC_CheckPatternPredicate, 51,
61269 OPC_EmitInteger32, 28,
61270 OPC_EmitRegisterI32, 0 ,
61271 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSS),
61272 MVT::f32, 5, 2, 0, 1, 3, 4,
61273 16, MVT::f16,
61274 OPC_CheckPatternPredicate, 58,
61275 OPC_EmitInteger32, 28,
61276 OPC_EmitRegisterI32, 0 ,
61277 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSH),
61278 MVT::f16, 5, 2, 0, 1, 3, 4,
61279 0,
61280 98|128,9,
61281 OPC_RecordChild0,
61282 OPC_Scope, 97|128,1,
61283 OPC_MoveChild1,
61284 OPC_CheckOpcode, TARGET_VAL(ISD::FMUL),
61285 OPC_RecordChild0,
61286 OPC_RecordChild1,
61287 OPC_MoveParent,
61288 OPC_CheckType, MVT::f32,
61289 OPC_Scope, 106,
61290 OPC_CheckPatternPredicate, 86,
61291 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61292 MVT::v2f32, 0,
61293 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61294 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61295 MVT::v2f32, 2, 3, 4,
61296 OPC_EmitStringInteger32, ARM::ssub_0,
61297 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
61298 MVT::v2f32, 3, 5, 0, 6,
61299 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61300 MVT::v2f32, 0,
61301 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61302 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61303 MVT::v2f32, 2, 8, 9,
61304 OPC_EmitStringInteger32, ARM::ssub_0,
61305 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
61306 MVT::v2f32, 3, 10, 1, 11,
61307 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61308 MVT::v2f32, 0,
61309 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61310 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61311 MVT::v2f32, 2, 13, 14,
61312 OPC_EmitStringInteger32, ARM::ssub_0,
61313 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
61314 MVT::v2f32, 3, 15, 2, 16,
61315 OPC_EmitInteger32, 28,
61316 OPC_EmitRegisterI32, 0 ,
61317 OPC_EmitNode1None, TARGET_VAL(ARM::VMLSfd),
61318 MVT::f64, 5, 7, 12, 17, 18, 19,
61319 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61320 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61321 MVT::v2f32, 2, 20, 21,
61322 OPC_EmitStringInteger32, ARM::ssub_0,
61323 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
61324 MVT::f32, 2, 22, 23,
61325 106,
61326 OPC_CheckPatternPredicate, 87,
61327 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61328 MVT::v2f32, 0,
61329 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61330 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61331 MVT::v2f32, 2, 3, 4,
61332 OPC_EmitStringInteger32, ARM::ssub_0,
61333 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
61334 MVT::v2f32, 3, 5, 0, 6,
61335 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61336 MVT::v2f32, 0,
61337 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61338 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61339 MVT::v2f32, 2, 8, 9,
61340 OPC_EmitStringInteger32, ARM::ssub_0,
61341 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
61342 MVT::v2f32, 3, 10, 1, 11,
61343 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61344 MVT::v2f32, 0,
61345 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61346 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61347 MVT::v2f32, 2, 13, 14,
61348 OPC_EmitStringInteger32, ARM::ssub_0,
61349 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
61350 MVT::v2f32, 3, 15, 2, 16,
61351 OPC_EmitInteger32, 28,
61352 OPC_EmitRegisterI32, 0 ,
61353 OPC_EmitNode1None, TARGET_VAL(ARM::VFMSfd),
61354 MVT::f64, 5, 7, 12, 17, 18, 19,
61355 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61356 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61357 MVT::v2f32, 2, 20, 21,
61358 OPC_EmitStringInteger32, ARM::ssub_0,
61359 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
61360 MVT::f32, 2, 22, 23,
61361 0,
61362 11|128,1,
61363 OPC_RecordChild1,
61364 OPC_SwitchType , 15, MVT::f64,
61365 OPC_CheckPatternPredicate, 18,
61366 OPC_EmitInteger32, 28,
61367 OPC_EmitRegisterI32, 0 ,
61368 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBD),
61369 MVT::f64, 4, 0, 1, 2, 3,
61370 100, MVT::f32,
61371 OPC_Scope, 15,
61372 OPC_CheckPatternPredicate, 26,
61373 OPC_EmitInteger32, 28,
61374 OPC_EmitRegisterI32, 0 ,
61375 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBS),
61376 MVT::f32, 4, 0, 1, 2, 3,
61377 81,
61378 OPC_CheckPatternPredicate, 42,
61379 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61380 MVT::v2f32, 0,
61381 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61382 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61383 MVT::v2f32, 2, 2, 3,
61384 OPC_EmitStringInteger32, ARM::ssub_0,
61385 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
61386 MVT::v2f32, 3, 4, 0, 5,
61387 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61388 MVT::v2f32, 0,
61389 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61390 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61391 MVT::v2f32, 2, 7, 8,
61392 OPC_EmitStringInteger32, ARM::ssub_0,
61393 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
61394 MVT::v2f32, 3, 9, 1, 10,
61395 OPC_EmitInteger32, 28,
61396 OPC_EmitRegisterI32, 0 ,
61397 OPC_EmitNode1None, TARGET_VAL(ARM::VSUBfd),
61398 MVT::f64, 4, 6, 11, 12, 13,
61399 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61400 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61401 MVT::v2f32, 2, 14, 15,
61402 OPC_EmitStringInteger32, ARM::ssub_0,
61403 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
61404 MVT::f32, 2, 16, 17,
61405 0,
61406 15, MVT::f16,
61407 OPC_CheckPatternPredicate, 13,
61408 OPC_EmitInteger32, 28,
61409 OPC_EmitRegisterI32, 0 ,
61410 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBH),
61411 MVT::f16, 4, 0, 1, 2, 3,
61412 0,
61413 113|128,5,
61414 OPC_MoveChild1,
61415 OPC_SwitchOpcode , 35|128,1, TARGET_VAL(ISD::VSELECT),
61416 OPC_RecordChild0,
61417 OPC_Scope, 79,
61418 OPC_CheckChild0Type, MVT::v4i1,
61419 OPC_Scope, 39,
61420 OPC_MoveChild1,
61421 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
61422 OPC_RecordChild0,
61423 OPC_CheckChild0TypeI32,
61424 OPC_MoveSibling2,
61425 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
61426 OPC_MoveChild0,
61427 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
61428 OPC_CheckChild0Integer, 0,
61429 OPC_CheckType, MVT::v4i32,
61430 OPC_MoveParent,
61431 OPC_MoveParent,
61432 OPC_MoveParent,
61433 OPC_CheckType, MVT::v4f32,
61434 OPC_CheckPatternPredicate2,
61435 OPC_EmitInteger32, 2,
61436 OPC_EmitRegisterI32, 0 ,
61437 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_f32),
61438 MVT::v4f32, 6, 0, 2, 3, 1, 4, 0,
61439 34,
61440 OPC_RecordChild1,
61441 OPC_MoveChild2,
61442 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
61443 OPC_MoveChild0,
61444 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
61445 OPC_CheckChild0Integer, 0,
61446 OPC_CheckType, MVT::v4i32,
61447 OPC_MoveParent,
61448 OPC_MoveParent,
61449 OPC_MoveParent,
61450 OPC_CheckType, MVT::v4f32,
61451 OPC_CheckPatternPredicate2,
61452 OPC_EmitInteger32, 2,
61453 OPC_EmitRegisterI32, 0 ,
61454 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBf32),
61455 MVT::v4f32, 6, 0, 2, 3, 1, 4, 0,
61456 0,
61457 79,
61458 OPC_CheckChild0Type, MVT::v8i1,
61459 OPC_Scope, 39,
61460 OPC_MoveChild1,
61461 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
61462 OPC_RecordChild0,
61463 OPC_CheckChild0TypeI32,
61464 OPC_MoveSibling2,
61465 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
61466 OPC_MoveChild0,
61467 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
61468 OPC_CheckChild0Integer, 0,
61469 OPC_CheckType, MVT::v4i32,
61470 OPC_MoveParent,
61471 OPC_MoveParent,
61472 OPC_MoveParent,
61473 OPC_CheckType, MVT::v8f16,
61474 OPC_CheckPatternPredicate2,
61475 OPC_EmitInteger32, 2,
61476 OPC_EmitRegisterI32, 0 ,
61477 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_f16),
61478 MVT::v8f16, 6, 0, 2, 3, 1, 4, 0,
61479 34,
61480 OPC_RecordChild1,
61481 OPC_MoveChild2,
61482 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
61483 OPC_MoveChild0,
61484 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
61485 OPC_CheckChild0Integer, 0,
61486 OPC_CheckType, MVT::v4i32,
61487 OPC_MoveParent,
61488 OPC_MoveParent,
61489 OPC_MoveParent,
61490 OPC_CheckType, MVT::v8f16,
61491 OPC_CheckPatternPredicate2,
61492 OPC_EmitInteger32, 2,
61493 OPC_EmitRegisterI32, 0 ,
61494 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBf16),
61495 MVT::v8f16, 6, 0, 2, 3, 1, 4, 0,
61496 0,
61497 0,
61498 9|128,4, TARGET_VAL(ISD::FMUL),
61499 OPC_Scope, 61,
61500 OPC_RecordChild0,
61501 OPC_MoveChild1,
61502 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
61503 OPC_RecordChild0,
61504 OPC_CheckChild0Type, MVT::v2f32,
61505 OPC_RecordChild1,
61506 OPC_MoveChild1,
61507 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
61508 OPC_MoveParent,
61509 OPC_MoveParent,
61510 OPC_CheckPredicate2,
61511 OPC_MoveParent,
61512 OPC_CheckPredicate, 11,
61513 OPC_SwitchType , 18, MVT::v2f32,
61514 OPC_CheckPatternPredicate, 21,
61515 OPC_EmitConvertToTarget3,
61516 OPC_EmitInteger32, 28,
61517 OPC_EmitRegisterI32, 0 ,
61518 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslfd),
61519 MVT::v2f32, 6, 0, 1, 2, 4, 5, 6,
61520 18, MVT::v4f32,
61521 OPC_CheckPatternPredicate, 21,
61522 OPC_EmitConvertToTarget3,
61523 OPC_EmitInteger32, 28,
61524 OPC_EmitRegisterI32, 0 ,
61525 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslfq),
61526 MVT::v4f32, 6, 0, 1, 2, 4, 5, 6,
61527 0,
61528 61,
61529 OPC_MoveChild0,
61530 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
61531 OPC_RecordChild0,
61532 OPC_CheckChild0Type, MVT::v2f32,
61533 OPC_RecordChild1,
61534 OPC_MoveChild1,
61535 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
61536 OPC_MoveParent,
61537 OPC_MoveParent,
61538 OPC_RecordChild1,
61539 OPC_CheckPredicate2,
61540 OPC_MoveParent,
61541 OPC_CheckPredicate, 11,
61542 OPC_SwitchType , 18, MVT::v2f32,
61543 OPC_CheckPatternPredicate, 21,
61544 OPC_EmitConvertToTarget2,
61545 OPC_EmitInteger32, 28,
61546 OPC_EmitRegisterI32, 0 ,
61547 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslfd),
61548 MVT::v2f32, 6, 0, 3, 1, 4, 5, 6,
61549 18, MVT::v4f32,
61550 OPC_CheckPatternPredicate, 21,
61551 OPC_EmitConvertToTarget2,
61552 OPC_EmitInteger32, 28,
61553 OPC_EmitRegisterI32, 0 ,
61554 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslfq),
61555 MVT::v4f32, 6, 0, 3, 1, 4, 5, 6,
61556 0,
61557 53,
61558 OPC_RecordChild0,
61559 OPC_MoveChild1,
61560 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
61561 OPC_RecordChild0,
61562 OPC_CheckChild0Type, MVT::v4f32,
61563 OPC_RecordChild1,
61564 OPC_MoveChild1,
61565 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
61566 OPC_MoveParent,
61567 OPC_MoveParent,
61568 OPC_CheckPredicate2,
61569 OPC_MoveParent,
61570 OPC_CheckPredicate, 11,
61571 OPC_CheckType, MVT::v4f32,
61572 OPC_CheckPatternPredicate, 21,
61573 OPC_EmitConvertToTarget3,
61574 OPC_EmitNodeXForm, 7, 4,
61575 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
61576 MVT::v2f32, 2, 2, 5,
61577 OPC_EmitConvertToTarget3,
61578 OPC_EmitNodeXForm, 8, 7,
61579 OPC_EmitInteger32, 28,
61580 OPC_EmitRegisterI32, 0 ,
61581 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslfq),
61582 MVT::v4f32, 6, 0, 1, 6, 8, 9, 10,
61583 53,
61584 OPC_MoveChild0,
61585 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
61586 OPC_RecordChild0,
61587 OPC_CheckChild0Type, MVT::v4f32,
61588 OPC_RecordChild1,
61589 OPC_MoveChild1,
61590 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
61591 OPC_MoveParent,
61592 OPC_MoveParent,
61593 OPC_RecordChild1,
61594 OPC_CheckPredicate2,
61595 OPC_MoveParent,
61596 OPC_CheckPredicate, 11,
61597 OPC_CheckType, MVT::v4f32,
61598 OPC_CheckPatternPredicate, 21,
61599 OPC_EmitConvertToTarget2,
61600 OPC_EmitNodeXForm, 7, 4,
61601 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
61602 MVT::v2f32, 2, 1, 5,
61603 OPC_EmitConvertToTarget2,
61604 OPC_EmitNodeXForm, 8, 7,
61605 OPC_EmitInteger32, 28,
61606 OPC_EmitRegisterI32, 0 ,
61607 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslfq),
61608 MVT::v4f32, 6, 0, 3, 6, 8, 9, 10,
61609 58,
61610 OPC_RecordChild0,
61611 OPC_MoveChild1,
61612 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
61613 OPC_RecordChild0,
61614 OPC_CheckChild0Type, MVT::v4f16,
61615 OPC_RecordChild1,
61616 OPC_MoveChild1,
61617 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
61618 OPC_MoveParent,
61619 OPC_MoveParent,
61620 OPC_MoveParent,
61621 OPC_SwitchType , 18, MVT::v4f16,
61622 OPC_CheckPatternPredicate, 28,
61623 OPC_EmitConvertToTarget3,
61624 OPC_EmitInteger32, 28,
61625 OPC_EmitRegisterI32, 0 ,
61626 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslhd),
61627 MVT::v4f16, 6, 0, 1, 2, 4, 5, 6,
61628 18, MVT::v8f16,
61629 OPC_CheckPatternPredicate, 28,
61630 OPC_EmitConvertToTarget3,
61631 OPC_EmitInteger32, 28,
61632 OPC_EmitRegisterI32, 0 ,
61633 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslhq),
61634 MVT::v8f16, 6, 0, 1, 2, 4, 5, 6,
61635 0,
61636 58,
61637 OPC_MoveChild0,
61638 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
61639 OPC_RecordChild0,
61640 OPC_CheckChild0Type, MVT::v4f16,
61641 OPC_RecordChild1,
61642 OPC_MoveChild1,
61643 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
61644 OPC_MoveParent,
61645 OPC_MoveParent,
61646 OPC_RecordChild1,
61647 OPC_MoveParent,
61648 OPC_SwitchType , 18, MVT::v4f16,
61649 OPC_CheckPatternPredicate, 28,
61650 OPC_EmitConvertToTarget2,
61651 OPC_EmitInteger32, 28,
61652 OPC_EmitRegisterI32, 0 ,
61653 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslhd),
61654 MVT::v4f16, 6, 0, 3, 1, 4, 5, 6,
61655 18, MVT::v8f16,
61656 OPC_CheckPatternPredicate, 28,
61657 OPC_EmitConvertToTarget2,
61658 OPC_EmitInteger32, 28,
61659 OPC_EmitRegisterI32, 0 ,
61660 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSslhq),
61661 MVT::v8f16, 6, 0, 3, 1, 4, 5, 6,
61662 0,
61663 39|128,1,
61664 OPC_RecordChild0,
61665 OPC_RecordChild1,
61666 OPC_Scope, 82,
61667 OPC_CheckPredicate2,
61668 OPC_MoveParent,
61669 OPC_CheckPredicate, 11,
61670 OPC_SwitchType , 36, MVT::v2f32,
61671 OPC_Scope, 16,
61672 OPC_CheckPatternPredicate, 21,
61673 OPC_EmitInteger32, 28,
61674 OPC_EmitRegisterI32, 0 ,
61675 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSfd),
61676 MVT::v2f32, 5, 0, 1, 2, 3, 4,
61677 16,
61678 OPC_CheckPatternPredicate, 60,
61679 OPC_EmitInteger32, 28,
61680 OPC_EmitRegisterI32, 0 ,
61681 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSfd),
61682 MVT::v2f32, 5, 0, 1, 2, 3, 4,
61683 0,
61684 36, MVT::v4f32,
61685 OPC_Scope, 16,
61686 OPC_CheckPatternPredicate, 21,
61687 OPC_EmitInteger32, 28,
61688 OPC_EmitRegisterI32, 0 ,
61689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLSfq),
61690 MVT::v4f32, 5, 0, 1, 2, 3, 4,
61691 16,
61692 OPC_CheckPatternPredicate, 60,
61693 OPC_EmitInteger32, 28,
61694 OPC_EmitRegisterI32, 0 ,
61695 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSfq),
61696 MVT::v4f32, 5, 0, 1, 2, 3, 4,
61697 0,
61698 0,
61699 79,
61700 OPC_MoveParent,
61701 OPC_SwitchType , 36, MVT::v4f16,
61702 OPC_Scope, 16,
61703 OPC_CheckPatternPredicate, 28,
61704 OPC_EmitInteger32, 28,
61705 OPC_EmitRegisterI32, 0 ,
61706 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLShd),
61707 MVT::v4f16, 5, 0, 1, 2, 3, 4,
61708 16,
61709 OPC_CheckPatternPredicate, 61,
61710 OPC_EmitInteger32, 28,
61711 OPC_EmitRegisterI32, 0 ,
61712 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMShd),
61713 MVT::v4f16, 5, 0, 1, 2, 3, 4,
61714 0,
61715 36, MVT::v8f16,
61716 OPC_Scope, 16,
61717 OPC_CheckPatternPredicate, 28,
61718 OPC_EmitInteger32, 28,
61719 OPC_EmitRegisterI32, 0 ,
61720 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMLShq),
61721 MVT::v8f16, 5, 0, 1, 2, 3, 4,
61722 16,
61723 OPC_CheckPatternPredicate, 61,
61724 OPC_EmitInteger32, 28,
61725 OPC_EmitRegisterI32, 0 ,
61726 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMShq),
61727 MVT::v8f16, 5, 0, 1, 2, 3, 4,
61728 0,
61729 0,
61730 0,
61731 0,
61732 55, TARGET_VAL(ARMISD::VDUP),
61733 OPC_RecordChild0,
61734 OPC_CheckChild0TypeI32,
61735 OPC_MoveParent,
61736 OPC_SwitchType , 23, MVT::v4f32,
61737 OPC_CheckPatternPredicate2,
61738 OPC_EmitInteger32, 0,
61739 OPC_EmitRegisterI32, 0 ,
61740 OPC_EmitRegisterI32, 0 ,
61741 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61742 MVT::v4i32, 0,
61743 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_f32),
61744 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
61745 23, MVT::v8f16,
61746 OPC_CheckPatternPredicate2,
61747 OPC_EmitInteger32, 0,
61748 OPC_EmitRegisterI32, 0 ,
61749 OPC_EmitRegisterI32, 0 ,
61750 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61751 MVT::v4i32, 0,
61752 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_f16),
61753 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
61754 0,
61755 0,
61756 123,
61757 OPC_RecordChild1,
61758 OPC_SwitchType , 14, MVT::v2f32,
61759 OPC_CheckPatternPredicate1,
61760 OPC_EmitInteger32, 28,
61761 OPC_EmitRegisterI32, 0 ,
61762 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBfd),
61763 MVT::v2f32, 4, 0, 1, 2, 3,
61764 41, MVT::v4f32,
61765 OPC_Scope, 14,
61766 OPC_CheckPatternPredicate1,
61767 OPC_EmitInteger32, 28,
61768 OPC_EmitRegisterI32, 0 ,
61769 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBfq),
61770 MVT::v4f32, 4, 0, 1, 2, 3,
61771 23,
61772 OPC_CheckPatternPredicate2,
61773 OPC_EmitInteger32, 0,
61774 OPC_EmitRegisterI32, 0 ,
61775 OPC_EmitRegisterI32, 0 ,
61776 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61777 MVT::v4i32, 0,
61778 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBf32),
61779 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
61780 0,
61781 15, MVT::v4f16,
61782 OPC_CheckPatternPredicate, 11,
61783 OPC_EmitInteger32, 28,
61784 OPC_EmitRegisterI32, 0 ,
61785 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBhd),
61786 MVT::v4f16, 4, 0, 1, 2, 3,
61787 42, MVT::v8f16,
61788 OPC_Scope, 15,
61789 OPC_CheckPatternPredicate, 11,
61790 OPC_EmitInteger32, 28,
61791 OPC_EmitRegisterI32, 0 ,
61792 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBhq),
61793 MVT::v8f16, 4, 0, 1, 2, 3,
61794 23,
61795 OPC_CheckPatternPredicate2,
61796 OPC_EmitInteger32, 0,
61797 OPC_EmitRegisterI32, 0 ,
61798 OPC_EmitRegisterI32, 0 ,
61799 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
61800 MVT::v4i32, 0,
61801 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBf16),
61802 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
61803 0,
61804 0,
61805 0,
61806 0,
61807 68|128,1, TARGET_VAL(ISD::FP_EXTEND),
61808 OPC_Scope, 98,
61809 OPC_MoveChild0,
61810 OPC_CheckOpcode, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
61811 OPC_RecordChild0,
61812 OPC_Scope, 40,
61813 OPC_CheckChild0Type, MVT::v8f16,
61814 OPC_RecordChild1,
61815 OPC_MoveChild1,
61816 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
61817 OPC_CheckPredicate, 37,
61818 OPC_MoveParent,
61819 OPC_CheckType, MVT::f16,
61820 OPC_MoveParent,
61821 OPC_CheckType, MVT::f32,
61822 OPC_CheckPatternPredicate, 38,
61823 OPC_EmitConvertToTarget1,
61824 OPC_EmitNodeXForm, 19, 2,
61825 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
61826 MVT::f32, 2, 0, 3,
61827 OPC_EmitInteger32, 28,
61828 OPC_EmitRegisterI32, 0 ,
61829 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTTHS),
61830 MVT::f32, 3, 4, 5, 6,
61831 49,
61832 OPC_CheckChild0Type, MVT::v4f16,
61833 OPC_RecordChild1,
61834 OPC_MoveChild1,
61835 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
61836 OPC_CheckPredicate, 37,
61837 OPC_MoveParent,
61838 OPC_CheckType, MVT::f16,
61839 OPC_MoveParent,
61840 OPC_CheckType, MVT::f32,
61841 OPC_CheckPatternPredicate, 38,
61842 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
61843 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61844 MVT::v2f32, 2, 0, 2,
61845 OPC_EmitConvertToTarget1,
61846 OPC_EmitNodeXForm, 19, 4,
61847 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
61848 MVT::f32, 2, 3, 5,
61849 OPC_EmitInteger32, 28,
61850 OPC_EmitRegisterI32, 0 ,
61851 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTTHS),
61852 MVT::f32, 3, 6, 7, 8,
61853 0,
61854 94,
61855 OPC_RecordChild0,
61856 OPC_Scope, 18,
61857 OPC_CheckChild0Type, MVT::f32,
61858 OPC_CheckType, MVT::f64,
61859 OPC_CheckPatternPredicate, 18,
61860 OPC_EmitInteger32, 28,
61861 OPC_EmitRegisterI32, 0 ,
61862 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTDS),
61863 MVT::f64, 3, 0, 1, 2,
61864 54,
61865 OPC_CheckChild0Type, MVT::f16,
61866 OPC_SwitchType , 23, MVT::f32,
61867 OPC_CheckPatternPredicate, 38,
61868 OPC_EmitStringInteger32, ARM::SPRRegClassID,
61869 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61870 MVT::f32, 2, 0, 1,
61871 OPC_EmitInteger32, 28,
61872 OPC_EmitRegisterI32, 0 ,
61873 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTBHS),
61874 MVT::f32, 3, 2, 3, 4,
61875 23, MVT::f64,
61876 OPC_CheckPatternPredicate, 22,
61877 OPC_EmitStringInteger32, ARM::SPRRegClassID,
61878 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
61879 MVT::f32, 2, 0, 1,
61880 OPC_EmitInteger32, 28,
61881 OPC_EmitRegisterI32, 0 ,
61882 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTBHD),
61883 MVT::f64, 3, 2, 3, 4,
61884 0,
61885 16,
61886 OPC_CheckChild0Type, MVT::v4f16,
61887 OPC_CheckType, MVT::v4f32,
61888 OPC_EmitInteger32, 28,
61889 OPC_EmitRegisterI32, 0 ,
61890 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTh2f),
61891 MVT::v4f32, 3, 0, 1, 2,
61892 0,
61893 0,
61894 104|128,6, TARGET_VAL(ISD::FMA),
61895 OPC_Scope, 69,
61896 OPC_MoveChild0,
61897 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
61898 OPC_RecordChild0,
61899 OPC_MoveParent,
61900 OPC_RecordChild1,
61901 OPC_MoveChild2,
61902 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
61903 OPC_RecordChild0,
61904 OPC_MoveParent,
61905 OPC_SwitchType , 16, MVT::f64,
61906 OPC_CheckPatternPredicate, 43,
61907 OPC_EmitInteger32, 28,
61908 OPC_EmitRegisterI32, 0 ,
61909 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAD),
61910 MVT::f64, 5, 2, 0, 1, 3, 4,
61911 16, MVT::f32,
61912 OPC_CheckPatternPredicate, 44,
61913 OPC_EmitInteger32, 28,
61914 OPC_EmitRegisterI32, 0 ,
61915 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAS),
61916 MVT::f32, 5, 2, 0, 1, 3, 4,
61917 16, MVT::f16,
61918 OPC_CheckPatternPredicate, 13,
61919 OPC_EmitInteger32, 28,
61920 OPC_EmitRegisterI32, 0 ,
61921 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAH),
61922 MVT::f16, 5, 2, 0, 1, 3, 4,
61923 0,
61924 68,
61925 OPC_RecordChild0,
61926 OPC_MoveChild1,
61927 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
61928 OPC_RecordChild0,
61929 OPC_MoveSibling2,
61930 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
61931 OPC_RecordChild0,
61932 OPC_MoveParent,
61933 OPC_SwitchType , 16, MVT::f64,
61934 OPC_CheckPatternPredicate, 43,
61935 OPC_EmitInteger32, 28,
61936 OPC_EmitRegisterI32, 0 ,
61937 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAD),
61938 MVT::f64, 5, 2, 1, 0, 3, 4,
61939 16, MVT::f32,
61940 OPC_CheckPatternPredicate, 44,
61941 OPC_EmitInteger32, 28,
61942 OPC_EmitRegisterI32, 0 ,
61943 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAS),
61944 MVT::f32, 5, 2, 1, 0, 3, 4,
61945 16, MVT::f16,
61946 OPC_CheckPatternPredicate, 13,
61947 OPC_EmitInteger32, 28,
61948 OPC_EmitRegisterI32, 0 ,
61949 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAH),
61950 MVT::f16, 5, 2, 1, 0, 3, 4,
61951 0,
61952 64,
61953 OPC_MoveChild0,
61954 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
61955 OPC_RecordChild0,
61956 OPC_MoveParent,
61957 OPC_RecordChild1,
61958 OPC_RecordChild2,
61959 OPC_SwitchType , 16, MVT::f64,
61960 OPC_CheckPatternPredicate, 43,
61961 OPC_EmitInteger32, 28,
61962 OPC_EmitRegisterI32, 0 ,
61963 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSD),
61964 MVT::f64, 5, 2, 0, 1, 3, 4,
61965 16, MVT::f32,
61966 OPC_CheckPatternPredicate, 44,
61967 OPC_EmitInteger32, 28,
61968 OPC_EmitRegisterI32, 0 ,
61969 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSS),
61970 MVT::f32, 5, 2, 0, 1, 3, 4,
61971 16, MVT::f16,
61972 OPC_CheckPatternPredicate, 13,
61973 OPC_EmitInteger32, 28,
61974 OPC_EmitRegisterI32, 0 ,
61975 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSH),
61976 MVT::f16, 5, 2, 0, 1, 3, 4,
61977 0,
61978 62|128,1,
61979 OPC_RecordChild0,
61980 OPC_Scope, 63,
61981 OPC_RecordChild1,
61982 OPC_MoveChild2,
61983 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
61984 OPC_RecordChild0,
61985 OPC_MoveParent,
61986 OPC_SwitchType , 16, MVT::f64,
61987 OPC_CheckPatternPredicate, 43,
61988 OPC_EmitInteger32, 28,
61989 OPC_EmitRegisterI32, 0 ,
61990 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSD),
61991 MVT::f64, 5, 2, 0, 1, 3, 4,
61992 16, MVT::f32,
61993 OPC_CheckPatternPredicate, 44,
61994 OPC_EmitInteger32, 28,
61995 OPC_EmitRegisterI32, 0 ,
61996 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSS),
61997 MVT::f32, 5, 2, 0, 1, 3, 4,
61998 16, MVT::f16,
61999 OPC_CheckPatternPredicate, 13,
62000 OPC_EmitInteger32, 28,
62001 OPC_EmitRegisterI32, 0 ,
62002 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSH),
62003 MVT::f16, 5, 2, 0, 1, 3, 4,
62004 0,
62005 63,
62006 OPC_MoveChild1,
62007 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
62008 OPC_RecordChild0,
62009 OPC_MoveParent,
62010 OPC_RecordChild2,
62011 OPC_SwitchType , 16, MVT::f64,
62012 OPC_CheckPatternPredicate, 43,
62013 OPC_EmitInteger32, 28,
62014 OPC_EmitRegisterI32, 0 ,
62015 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSD),
62016 MVT::f64, 5, 2, 1, 0, 3, 4,
62017 16, MVT::f32,
62018 OPC_CheckPatternPredicate, 44,
62019 OPC_EmitInteger32, 28,
62020 OPC_EmitRegisterI32, 0 ,
62021 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSS),
62022 MVT::f32, 5, 2, 1, 0, 3, 4,
62023 16, MVT::f16,
62024 OPC_CheckPatternPredicate, 13,
62025 OPC_EmitInteger32, 28,
62026 OPC_EmitRegisterI32, 0 ,
62027 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSH),
62028 MVT::f16, 5, 2, 1, 0, 3, 4,
62029 0,
62030 58,
62031 OPC_RecordChild1,
62032 OPC_RecordChild2,
62033 OPC_SwitchType , 16, MVT::f64,
62034 OPC_CheckPatternPredicate, 43,
62035 OPC_EmitInteger32, 28,
62036 OPC_EmitRegisterI32, 0 ,
62037 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAD),
62038 MVT::f64, 5, 2, 0, 1, 3, 4,
62039 16, MVT::f32,
62040 OPC_CheckPatternPredicate, 44,
62041 OPC_EmitInteger32, 28,
62042 OPC_EmitRegisterI32, 0 ,
62043 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAS),
62044 MVT::f32, 5, 2, 0, 1, 3, 4,
62045 16, MVT::f16,
62046 OPC_CheckPatternPredicate, 13,
62047 OPC_EmitInteger32, 28,
62048 OPC_EmitRegisterI32, 0 ,
62049 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAH),
62050 MVT::f16, 5, 2, 0, 1, 3, 4,
62051 0,
62052 0,
62053 88,
62054 OPC_MoveChild0,
62055 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
62056 OPC_RecordChild0,
62057 OPC_MoveParent,
62058 OPC_RecordChild1,
62059 OPC_RecordChild2,
62060 OPC_SwitchType , 16, MVT::v2f32,
62061 OPC_CheckPatternPredicate, 62,
62062 OPC_EmitInteger32, 28,
62063 OPC_EmitRegisterI32, 0 ,
62064 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSfd),
62065 MVT::v2f32, 5, 2, 0, 1, 3, 4,
62066 38, MVT::v4f32,
62067 OPC_Scope, 16,
62068 OPC_CheckPatternPredicate, 62,
62069 OPC_EmitInteger32, 28,
62070 OPC_EmitRegisterI32, 0 ,
62071 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSfq),
62072 MVT::v4f32, 5, 2, 0, 1, 3, 4,
62073 18,
62074 OPC_CheckPatternPredicate2,
62075 OPC_EmitInteger32, 0,
62076 OPC_EmitRegisterI32, 0 ,
62077 OPC_EmitRegisterI32, 0 ,
62078 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf32),
62079 MVT::v4f32, 6, 2, 0, 1, 3, 4, 5,
62080 0,
62081 18, MVT::v8f16,
62082 OPC_CheckPatternPredicate2,
62083 OPC_EmitInteger32, 0,
62084 OPC_EmitRegisterI32, 0 ,
62085 OPC_EmitRegisterI32, 0 ,
62086 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf16),
62087 MVT::v8f16, 6, 2, 0, 1, 3, 4, 5,
62088 0,
62089 29,
62090 OPC_RecordChild0,
62091 OPC_MoveChild1,
62092 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62093 OPC_RecordChild0,
62094 OPC_CheckChild0TypeI32,
62095 OPC_MoveParent,
62096 OPC_RecordChild2,
62097 OPC_CheckType, MVT::v8f16,
62098 OPC_CheckPatternPredicate2,
62099 OPC_EmitInteger32, 0,
62100 OPC_EmitRegisterI32, 0 ,
62101 OPC_EmitRegisterI32, 0 ,
62102 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f16),
62103 MVT::v8f16, 6, 2, 0, 1, 3, 4, 5,
62104 29,
62105 OPC_MoveChild0,
62106 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62107 OPC_RecordChild0,
62108 OPC_CheckChild0TypeI32,
62109 OPC_MoveParent,
62110 OPC_RecordChild1,
62111 OPC_RecordChild2,
62112 OPC_CheckType, MVT::v8f16,
62113 OPC_CheckPatternPredicate2,
62114 OPC_EmitInteger32, 0,
62115 OPC_EmitRegisterI32, 0 ,
62116 OPC_EmitRegisterI32, 0 ,
62117 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f16),
62118 MVT::v8f16, 6, 2, 1, 0, 3, 4, 5,
62119 29,
62120 OPC_RecordChild0,
62121 OPC_MoveChild1,
62122 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62123 OPC_RecordChild0,
62124 OPC_CheckChild0TypeI32,
62125 OPC_MoveParent,
62126 OPC_RecordChild2,
62127 OPC_CheckType, MVT::v4f32,
62128 OPC_CheckPatternPredicate2,
62129 OPC_EmitInteger32, 0,
62130 OPC_EmitRegisterI32, 0 ,
62131 OPC_EmitRegisterI32, 0 ,
62132 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f32),
62133 MVT::v4f32, 6, 2, 0, 1, 3, 4, 5,
62134 29,
62135 OPC_MoveChild0,
62136 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62137 OPC_RecordChild0,
62138 OPC_CheckChild0TypeI32,
62139 OPC_MoveParent,
62140 OPC_RecordChild1,
62141 OPC_RecordChild2,
62142 OPC_CheckType, MVT::v4f32,
62143 OPC_CheckPatternPredicate2,
62144 OPC_EmitInteger32, 0,
62145 OPC_EmitRegisterI32, 0 ,
62146 OPC_EmitRegisterI32, 0 ,
62147 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f32),
62148 MVT::v4f32, 6, 2, 1, 0, 3, 4, 5,
62149 7|128,2,
62150 OPC_RecordChild0,
62151 OPC_Scope, 50,
62152 OPC_RecordChild1,
62153 OPC_MoveChild2,
62154 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62155 OPC_RecordChild0,
62156 OPC_CheckChild0TypeI32,
62157 OPC_MoveParent,
62158 OPC_SwitchType , 18, MVT::v8f16,
62159 OPC_CheckPatternPredicate2,
62160 OPC_EmitInteger32, 0,
62161 OPC_EmitRegisterI32, 0 ,
62162 OPC_EmitRegisterI32, 0 ,
62163 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_Sf16),
62164 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
62165 18, MVT::v4f32,
62166 OPC_CheckPatternPredicate2,
62167 OPC_EmitInteger32, 0,
62168 OPC_EmitRegisterI32, 0 ,
62169 OPC_EmitRegisterI32, 0 ,
62170 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_Sf32),
62171 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
62172 0,
62173 87,
62174 OPC_MoveChild1,
62175 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
62176 OPC_RecordChild0,
62177 OPC_MoveParent,
62178 OPC_RecordChild2,
62179 OPC_SwitchType , 16, MVT::v2f32,
62180 OPC_CheckPatternPredicate, 62,
62181 OPC_EmitInteger32, 28,
62182 OPC_EmitRegisterI32, 0 ,
62183 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSfd),
62184 MVT::v2f32, 5, 2, 1, 0, 3, 4,
62185 38, MVT::v4f32,
62186 OPC_Scope, 16,
62187 OPC_CheckPatternPredicate, 62,
62188 OPC_EmitInteger32, 28,
62189 OPC_EmitRegisterI32, 0 ,
62190 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMSfq),
62191 MVT::v4f32, 5, 2, 1, 0, 3, 4,
62192 18,
62193 OPC_CheckPatternPredicate2,
62194 OPC_EmitInteger32, 0,
62195 OPC_EmitRegisterI32, 0 ,
62196 OPC_EmitRegisterI32, 0 ,
62197 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf32),
62198 MVT::v4f32, 6, 2, 1, 0, 3, 4, 5,
62199 0,
62200 18, MVT::v8f16,
62201 OPC_CheckPatternPredicate2,
62202 OPC_EmitInteger32, 0,
62203 OPC_EmitRegisterI32, 0 ,
62204 OPC_EmitRegisterI32, 0 ,
62205 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf16),
62206 MVT::v8f16, 6, 2, 1, 0, 3, 4, 5,
62207 0,
62208 120,
62209 OPC_RecordChild1,
62210 OPC_RecordChild2,
62211 OPC_SwitchType , 16, MVT::v4f16,
62212 OPC_CheckPatternPredicate, 11,
62213 OPC_EmitInteger32, 28,
62214 OPC_EmitRegisterI32, 0 ,
62215 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAhd),
62216 MVT::v4f16, 5, 2, 0, 1, 3, 4,
62217 38, MVT::v8f16,
62218 OPC_Scope, 16,
62219 OPC_CheckPatternPredicate, 11,
62220 OPC_EmitInteger32, 28,
62221 OPC_EmitRegisterI32, 0 ,
62222 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAhq),
62223 MVT::v8f16, 5, 2, 0, 1, 3, 4,
62224 18,
62225 OPC_CheckPatternPredicate2,
62226 OPC_EmitInteger32, 0,
62227 OPC_EmitRegisterI32, 0 ,
62228 OPC_EmitRegisterI32, 0 ,
62229 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMAf16),
62230 MVT::v8f16, 6, 2, 0, 1, 3, 4, 5,
62231 0,
62232 16, MVT::v2f32,
62233 OPC_CheckPatternPredicate, 62,
62234 OPC_EmitInteger32, 28,
62235 OPC_EmitRegisterI32, 0 ,
62236 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAfd),
62237 MVT::v2f32, 5, 2, 0, 1, 3, 4,
62238 38, MVT::v4f32,
62239 OPC_Scope, 16,
62240 OPC_CheckPatternPredicate, 62,
62241 OPC_EmitInteger32, 28,
62242 OPC_EmitRegisterI32, 0 ,
62243 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFMAfq),
62244 MVT::v4f32, 5, 2, 0, 1, 3, 4,
62245 18,
62246 OPC_CheckPatternPredicate2,
62247 OPC_EmitInteger32, 0,
62248 OPC_EmitRegisterI32, 0 ,
62249 OPC_EmitRegisterI32, 0 ,
62250 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMAf32),
62251 MVT::v4f32, 6, 2, 0, 1, 3, 4, 5,
62252 0,
62253 0,
62254 0,
62255 0,
62256 65|128,4, TARGET_VAL(ISD::FNEG),
62257 OPC_Scope, 90|128,2,
62258 OPC_MoveChild0,
62259 OPC_SwitchOpcode , 70|128,1, TARGET_VAL(ISD::FMA),
62260 OPC_Scope, 65,
62261 OPC_MoveChild0,
62262 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
62263 OPC_RecordChild0,
62264 OPC_MoveParent,
62265 OPC_RecordChild1,
62266 OPC_RecordChild2,
62267 OPC_MoveParent,
62268 OPC_SwitchType , 16, MVT::f64,
62269 OPC_CheckPatternPredicate, 43,
62270 OPC_EmitInteger32, 28,
62271 OPC_EmitRegisterI32, 0 ,
62272 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSD),
62273 MVT::f64, 5, 2, 0, 1, 3, 4,
62274 16, MVT::f32,
62275 OPC_CheckPatternPredicate, 44,
62276 OPC_EmitInteger32, 28,
62277 OPC_EmitRegisterI32, 0 ,
62278 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSS),
62279 MVT::f32, 5, 2, 0, 1, 3, 4,
62280 16, MVT::f16,
62281 OPC_CheckPatternPredicate, 13,
62282 OPC_EmitInteger32, 28,
62283 OPC_EmitRegisterI32, 0 ,
62284 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSH),
62285 MVT::f16, 5, 2, 0, 1, 3, 4,
62286 0,
62287 0|128,1,
62288 OPC_RecordChild0,
62289 OPC_Scope, 64,
62290 OPC_MoveChild1,
62291 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
62292 OPC_RecordChild0,
62293 OPC_MoveParent,
62294 OPC_RecordChild2,
62295 OPC_MoveParent,
62296 OPC_SwitchType , 16, MVT::f64,
62297 OPC_CheckPatternPredicate, 43,
62298 OPC_EmitInteger32, 28,
62299 OPC_EmitRegisterI32, 0 ,
62300 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSD),
62301 MVT::f64, 5, 2, 1, 0, 3, 4,
62302 16, MVT::f32,
62303 OPC_CheckPatternPredicate, 44,
62304 OPC_EmitInteger32, 28,
62305 OPC_EmitRegisterI32, 0 ,
62306 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSS),
62307 MVT::f32, 5, 2, 1, 0, 3, 4,
62308 16, MVT::f16,
62309 OPC_CheckPatternPredicate, 13,
62310 OPC_EmitInteger32, 28,
62311 OPC_EmitRegisterI32, 0 ,
62312 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMSH),
62313 MVT::f16, 5, 2, 1, 0, 3, 4,
62314 0,
62315 59,
62316 OPC_RecordChild1,
62317 OPC_RecordChild2,
62318 OPC_MoveParent,
62319 OPC_SwitchType , 16, MVT::f64,
62320 OPC_CheckPatternPredicate, 43,
62321 OPC_EmitInteger32, 28,
62322 OPC_EmitRegisterI32, 0 ,
62323 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAD),
62324 MVT::f64, 5, 2, 0, 1, 3, 4,
62325 16, MVT::f32,
62326 OPC_CheckPatternPredicate, 44,
62327 OPC_EmitInteger32, 28,
62328 OPC_EmitRegisterI32, 0 ,
62329 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAS),
62330 MVT::f32, 5, 2, 0, 1, 3, 4,
62331 16, MVT::f16,
62332 OPC_CheckPatternPredicate, 13,
62333 OPC_EmitInteger32, 28,
62334 OPC_EmitRegisterI32, 0 ,
62335 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFNMAH),
62336 MVT::f16, 5, 2, 0, 1, 3, 4,
62337 0,
62338 0,
62339 0,
62340 56, TARGET_VAL(ISD::FMUL),
62341 OPC_RecordChild0,
62342 OPC_RecordChild1,
62343 OPC_MoveParent,
62344 OPC_SwitchType , 15, MVT::f64,
62345 OPC_CheckPatternPredicate, 18,
62346 OPC_EmitInteger32, 28,
62347 OPC_EmitRegisterI32, 0 ,
62348 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMULD),
62349 MVT::f64, 4, 0, 1, 2, 3,
62350 15, MVT::f32,
62351 OPC_CheckPatternPredicate, 24,
62352 OPC_EmitInteger32, 28,
62353 OPC_EmitRegisterI32, 0 ,
62354 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMULS),
62355 MVT::f32, 4, 0, 1, 2, 3,
62356 15, MVT::f16,
62357 OPC_CheckPatternPredicate, 13,
62358 OPC_EmitInteger32, 28,
62359 OPC_EmitRegisterI32, 0 ,
62360 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMULH),
62361 MVT::f16, 4, 0, 1, 2, 3,
62362 0,
62363 79, TARGET_VAL(ARMISD::VMOVDRR),
62364 OPC_RecordChild0,
62365 OPC_RecordChild1,
62366 OPC_MoveParent,
62367 OPC_Scope, 36,
62368 OPC_CheckPatternPredicate3,
62369 OPC_EmitInteger32, 0|128,0|128,0|128,0|128,16,
62370 OPC_EmitInteger32, 28,
62371 OPC_EmitRegisterI32, 0 ,
62372 OPC_EmitRegisterI32, 0 ,
62373 OPC_EmitNode1None, TARGET_VAL(ARM::EORri),
62374 MVT::i32, 5, 1, 2, 3, 4, 5,
62375 OPC_EmitInteger32, 28,
62376 OPC_EmitRegisterI32, 0 ,
62377 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVDRR),
62378 MVT::f64, 4, 0, 6, 7, 8,
62379 36,
62380 OPC_CheckPatternPredicate4,
62381 OPC_EmitInteger32, 0|128,0|128,0|128,0|128,16,
62382 OPC_EmitInteger32, 28,
62383 OPC_EmitRegisterI32, 0 ,
62384 OPC_EmitRegisterI32, 0 ,
62385 OPC_EmitNode1None, TARGET_VAL(ARM::t2EORri),
62386 MVT::i32, 5, 1, 2, 3, 4, 5,
62387 OPC_EmitInteger32, 28,
62388 OPC_EmitRegisterI32, 0 ,
62389 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVDRR),
62390 MVT::f64, 4, 0, 6, 7, 8,
62391 0,
62392 0,
62393 97|128,1,
62394 OPC_RecordChild0,
62395 OPC_SwitchType , 14, MVT::f64,
62396 OPC_CheckPatternPredicate, 18,
62397 OPC_EmitInteger32, 28,
62398 OPC_EmitRegisterI32, 0 ,
62399 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGD),
62400 MVT::f64, 3, 0, 1, 2,
62401 74, MVT::f32,
62402 OPC_Scope, 14,
62403 OPC_CheckPatternPredicate, 26,
62404 OPC_EmitInteger32, 28,
62405 OPC_EmitRegisterI32, 0 ,
62406 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGS),
62407 MVT::f32, 3, 0, 1, 2,
62408 56,
62409 OPC_CheckPatternPredicate, 42,
62410 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
62411 MVT::v2f32, 0,
62412 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
62413 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
62414 MVT::v2f32, 2, 1, 2,
62415 OPC_EmitStringInteger32, ARM::ssub_0,
62416 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
62417 MVT::v2f32, 3, 3, 0, 4,
62418 OPC_EmitInteger32, 28,
62419 OPC_EmitRegisterI32, 0 ,
62420 OPC_EmitNode1None, TARGET_VAL(ARM::VNEGfd),
62421 MVT::f64, 3, 5, 6, 7,
62422 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
62423 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
62424 MVT::v2f32, 2, 8, 9,
62425 OPC_EmitStringInteger32, ARM::ssub_0,
62426 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
62427 MVT::f32, 2, 10, 11,
62428 0,
62429 14, MVT::f16,
62430 OPC_CheckPatternPredicate, 13,
62431 OPC_EmitInteger32, 28,
62432 OPC_EmitRegisterI32, 0 ,
62433 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGH),
62434 MVT::f16, 3, 0, 1, 2,
62435 13, MVT::v2f32,
62436 OPC_CheckPatternPredicate1,
62437 OPC_EmitInteger32, 28,
62438 OPC_EmitRegisterI32, 0 ,
62439 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGfd),
62440 MVT::v2f32, 3, 0, 1, 2,
62441 39, MVT::v4f32,
62442 OPC_Scope, 13,
62443 OPC_CheckPatternPredicate1,
62444 OPC_EmitInteger32, 28,
62445 OPC_EmitRegisterI32, 0 ,
62446 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGf32q),
62447 MVT::v4f32, 3, 0, 1, 2,
62448 22,
62449 OPC_CheckPatternPredicate0,
62450 OPC_EmitInteger32, 0,
62451 OPC_EmitRegisterI32, 0 ,
62452 OPC_EmitRegisterI32, 0 ,
62453 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
62454 MVT::v4i32, 0,
62455 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VNEGf32),
62456 MVT::v4f32, 5, 0, 1, 2, 3, 4,
62457 0,
62458 14, MVT::v4f16,
62459 OPC_CheckPatternPredicate, 11,
62460 OPC_EmitInteger32, 28,
62461 OPC_EmitRegisterI32, 0 ,
62462 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGhd),
62463 MVT::v4f16, 3, 0, 1, 2,
62464 40, MVT::v8f16,
62465 OPC_Scope, 14,
62466 OPC_CheckPatternPredicate, 11,
62467 OPC_EmitInteger32, 28,
62468 OPC_EmitRegisterI32, 0 ,
62469 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNEGhq),
62470 MVT::v8f16, 3, 0, 1, 2,
62471 22,
62472 OPC_CheckPatternPredicate0,
62473 OPC_EmitInteger32, 0,
62474 OPC_EmitRegisterI32, 0 ,
62475 OPC_EmitRegisterI32, 0 ,
62476 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
62477 MVT::v4i32, 0,
62478 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VNEGf16),
62479 MVT::v8f16, 5, 0, 1, 2, 3, 4,
62480 0,
62481 0,
62482 0,
62483 3|128,12, TARGET_VAL(ISD::FMUL),
62484 OPC_Scope, 43,
62485 OPC_MoveChild0,
62486 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
62487 OPC_RecordChild0,
62488 OPC_MoveParent,
62489 OPC_RecordChild1,
62490 OPC_SwitchType , 15, MVT::f64,
62491 OPC_CheckPatternPredicate, 107,
62492 OPC_EmitInteger32, 28,
62493 OPC_EmitRegisterI32, 0 ,
62494 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMULD),
62495 MVT::f64, 4, 0, 1, 2, 3,
62496 15, MVT::f32,
62497 OPC_CheckPatternPredicate, 108,
62498 OPC_EmitInteger32, 28,
62499 OPC_EmitRegisterI32, 0 ,
62500 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMULS),
62501 MVT::f32, 4, 0, 1, 2, 3,
62502 0,
62503 107|128,1,
62504 OPC_RecordChild0,
62505 OPC_Scope, 42,
62506 OPC_MoveChild1,
62507 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
62508 OPC_RecordChild0,
62509 OPC_MoveParent,
62510 OPC_SwitchType , 15, MVT::f64,
62511 OPC_CheckPatternPredicate, 107,
62512 OPC_EmitInteger32, 28,
62513 OPC_EmitRegisterI32, 0 ,
62514 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMULD),
62515 MVT::f64, 4, 1, 0, 2, 3,
62516 15, MVT::f32,
62517 OPC_CheckPatternPredicate, 108,
62518 OPC_EmitInteger32, 28,
62519 OPC_EmitRegisterI32, 0 ,
62520 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VNMULS),
62521 MVT::f32, 4, 1, 0, 2, 3,
62522 0,
62523 11|128,1,
62524 OPC_RecordChild1,
62525 OPC_SwitchType , 15, MVT::f64,
62526 OPC_CheckPatternPredicate, 18,
62527 OPC_EmitInteger32, 28,
62528 OPC_EmitRegisterI32, 0 ,
62529 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULD),
62530 MVT::f64, 4, 0, 1, 2, 3,
62531 100, MVT::f32,
62532 OPC_Scope, 15,
62533 OPC_CheckPatternPredicate, 26,
62534 OPC_EmitInteger32, 28,
62535 OPC_EmitRegisterI32, 0 ,
62536 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULS),
62537 MVT::f32, 4, 0, 1, 2, 3,
62538 81,
62539 OPC_CheckPatternPredicate, 42,
62540 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
62541 MVT::v2f32, 0,
62542 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
62543 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
62544 MVT::v2f32, 2, 2, 3,
62545 OPC_EmitStringInteger32, ARM::ssub_0,
62546 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
62547 MVT::v2f32, 3, 4, 0, 5,
62548 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
62549 MVT::v2f32, 0,
62550 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
62551 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
62552 MVT::v2f32, 2, 7, 8,
62553 OPC_EmitStringInteger32, ARM::ssub_0,
62554 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
62555 MVT::v2f32, 3, 9, 1, 10,
62556 OPC_EmitInteger32, 28,
62557 OPC_EmitRegisterI32, 0 ,
62558 OPC_EmitNode1None, TARGET_VAL(ARM::VMULfd),
62559 MVT::f64, 4, 6, 11, 12, 13,
62560 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
62561 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
62562 MVT::v2f32, 2, 14, 15,
62563 OPC_EmitStringInteger32, ARM::ssub_0,
62564 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
62565 MVT::f32, 2, 16, 17,
62566 0,
62567 15, MVT::f16,
62568 OPC_CheckPatternPredicate, 13,
62569 OPC_EmitInteger32, 28,
62570 OPC_EmitRegisterI32, 0 ,
62571 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULH),
62572 MVT::f16, 4, 0, 1, 2, 3,
62573 0,
62574 47,
62575 OPC_MoveChild1,
62576 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
62577 OPC_RecordChild0,
62578 OPC_CheckChild0Type, MVT::v8i1,
62579 OPC_MoveChild1,
62580 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62581 OPC_RecordChild0,
62582 OPC_CheckChild0TypeI32,
62583 OPC_MoveSibling2,
62584 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
62585 OPC_MoveChild0,
62586 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
62587 OPC_CheckChild0Integer, 120|128,40,
62588 OPC_CheckType, MVT::v8i16,
62589 OPC_MoveParent,
62590 OPC_MoveParent,
62591 OPC_MoveParent,
62592 OPC_CheckType, MVT::v8f16,
62593 OPC_CheckPatternPredicate2,
62594 OPC_EmitInteger32, 2,
62595 OPC_EmitRegisterI32, 0 ,
62596 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f16),
62597 MVT::v8f16, 6, 0, 2, 3, 1, 4, 0,
62598 0,
62599 48,
62600 OPC_MoveChild0,
62601 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
62602 OPC_RecordChild0,
62603 OPC_CheckChild0Type, MVT::v8i1,
62604 OPC_MoveChild1,
62605 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62606 OPC_RecordChild0,
62607 OPC_CheckChild0TypeI32,
62608 OPC_MoveSibling2,
62609 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
62610 OPC_MoveChild0,
62611 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
62612 OPC_CheckChild0Integer, 120|128,40,
62613 OPC_CheckType, MVT::v8i16,
62614 OPC_MoveParent,
62615 OPC_MoveParent,
62616 OPC_MoveParent,
62617 OPC_RecordChild1,
62618 OPC_CheckType, MVT::v8f16,
62619 OPC_CheckPatternPredicate2,
62620 OPC_EmitInteger32, 2,
62621 OPC_EmitRegisterI32, 0 ,
62622 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f16),
62623 MVT::v8f16, 6, 2, 1, 3, 0, 4, 2,
62624 82,
62625 OPC_RecordChild0,
62626 OPC_MoveChild1,
62627 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
62628 OPC_RecordChild0,
62629 OPC_Scope, 37,
62630 OPC_CheckChild0Type, MVT::v8i1,
62631 OPC_RecordChild1,
62632 OPC_MoveChild2,
62633 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
62634 OPC_MoveChild0,
62635 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
62636 OPC_CheckChild0Integer, 120|128,40,
62637 OPC_CheckType, MVT::v8i16,
62638 OPC_MoveParent,
62639 OPC_MoveParent,
62640 OPC_MoveParent,
62641 OPC_CheckType, MVT::v8f16,
62642 OPC_CheckPatternPredicate2,
62643 OPC_EmitInteger32, 2,
62644 OPC_EmitRegisterI32, 0 ,
62645 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULf16),
62646 MVT::v8f16, 6, 0, 2, 3, 1, 4, 0,
62647 35,
62648 OPC_CheckChild0Type, MVT::v4i1,
62649 OPC_MoveChild1,
62650 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62651 OPC_RecordChild0,
62652 OPC_CheckChild0TypeI32,
62653 OPC_MoveSibling2,
62654 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVFPIMM),
62655 OPC_CheckChild0Integer, 96|128,1,
62656 OPC_MoveParent,
62657 OPC_MoveParent,
62658 OPC_CheckType, MVT::v4f32,
62659 OPC_CheckPatternPredicate2,
62660 OPC_EmitInteger32, 2,
62661 OPC_EmitRegisterI32, 0 ,
62662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f32),
62663 MVT::v4f32, 6, 0, 2, 3, 1, 4, 0,
62664 0,
62665 83,
62666 OPC_MoveChild0,
62667 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
62668 OPC_RecordChild0,
62669 OPC_Scope, 38,
62670 OPC_CheckChild0Type, MVT::v8i1,
62671 OPC_RecordChild1,
62672 OPC_MoveChild2,
62673 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
62674 OPC_MoveChild0,
62675 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
62676 OPC_CheckChild0Integer, 120|128,40,
62677 OPC_CheckType, MVT::v8i16,
62678 OPC_MoveParent,
62679 OPC_MoveParent,
62680 OPC_MoveParent,
62681 OPC_RecordChild1,
62682 OPC_CheckType, MVT::v8f16,
62683 OPC_CheckPatternPredicate2,
62684 OPC_EmitInteger32, 2,
62685 OPC_EmitRegisterI32, 0 ,
62686 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULf16),
62687 MVT::v8f16, 6, 2, 1, 3, 0, 4, 2,
62688 36,
62689 OPC_CheckChild0Type, MVT::v4i1,
62690 OPC_MoveChild1,
62691 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62692 OPC_RecordChild0,
62693 OPC_CheckChild0TypeI32,
62694 OPC_MoveSibling2,
62695 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVFPIMM),
62696 OPC_CheckChild0Integer, 96|128,1,
62697 OPC_MoveParent,
62698 OPC_MoveParent,
62699 OPC_RecordChild1,
62700 OPC_CheckType, MVT::v4f32,
62701 OPC_CheckPatternPredicate2,
62702 OPC_EmitInteger32, 2,
62703 OPC_EmitRegisterI32, 0 ,
62704 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f32),
62705 MVT::v4f32, 6, 2, 1, 3, 0, 4, 2,
62706 0,
62707 36,
62708 OPC_RecordChild0,
62709 OPC_MoveChild1,
62710 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
62711 OPC_RecordChild0,
62712 OPC_CheckChild0Type, MVT::v4i1,
62713 OPC_RecordChild1,
62714 OPC_MoveChild2,
62715 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVFPIMM),
62716 OPC_CheckChild0Integer, 96|128,1,
62717 OPC_MoveParent,
62718 OPC_MoveParent,
62719 OPC_CheckType, MVT::v4f32,
62720 OPC_CheckPatternPredicate2,
62721 OPC_EmitInteger32, 2,
62722 OPC_EmitRegisterI32, 0 ,
62723 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULf32),
62724 MVT::v4f32, 6, 0, 2, 3, 1, 4, 0,
62725 36,
62726 OPC_MoveChild0,
62727 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
62728 OPC_RecordChild0,
62729 OPC_CheckChild0Type, MVT::v4i1,
62730 OPC_RecordChild1,
62731 OPC_MoveChild2,
62732 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVFPIMM),
62733 OPC_CheckChild0Integer, 96|128,1,
62734 OPC_MoveParent,
62735 OPC_MoveParent,
62736 OPC_RecordChild1,
62737 OPC_CheckType, MVT::v4f32,
62738 OPC_CheckPatternPredicate2,
62739 OPC_EmitInteger32, 2,
62740 OPC_EmitRegisterI32, 0 ,
62741 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULf32),
62742 MVT::v4f32, 6, 2, 1, 3, 0, 4, 2,
62743 106,
62744 OPC_RecordChild0,
62745 OPC_MoveChild1,
62746 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
62747 OPC_RecordChild0,
62748 OPC_Scope, 47,
62749 OPC_CheckChild0Type, MVT::v2f32,
62750 OPC_RecordChild1,
62751 OPC_MoveChild1,
62752 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
62753 OPC_MoveParent,
62754 OPC_MoveParent,
62755 OPC_SwitchType , 16, MVT::v2f32,
62756 OPC_CheckPatternPredicate1,
62757 OPC_EmitConvertToTarget2,
62758 OPC_EmitInteger32, 28,
62759 OPC_EmitRegisterI32, 0 ,
62760 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslfd),
62761 MVT::v2f32, 5, 0, 1, 3, 4, 5,
62762 16, MVT::v4f32,
62763 OPC_CheckPatternPredicate1,
62764 OPC_EmitConvertToTarget2,
62765 OPC_EmitInteger32, 28,
62766 OPC_EmitRegisterI32, 0 ,
62767 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslfq),
62768 MVT::v4f32, 5, 0, 1, 3, 4, 5,
62769 0,
62770 49,
62771 OPC_CheckChild0Type, MVT::v4f16,
62772 OPC_RecordChild1,
62773 OPC_MoveChild1,
62774 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
62775 OPC_MoveParent,
62776 OPC_MoveParent,
62777 OPC_SwitchType , 17, MVT::v4f16,
62778 OPC_CheckPatternPredicate, 11,
62779 OPC_EmitConvertToTarget2,
62780 OPC_EmitInteger32, 28,
62781 OPC_EmitRegisterI32, 0 ,
62782 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslhd),
62783 MVT::v4f16, 5, 0, 1, 3, 4, 5,
62784 17, MVT::v8f16,
62785 OPC_CheckPatternPredicate, 11,
62786 OPC_EmitConvertToTarget2,
62787 OPC_EmitInteger32, 28,
62788 OPC_EmitRegisterI32, 0 ,
62789 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslhq),
62790 MVT::v8f16, 5, 0, 1, 3, 4, 5,
62791 0,
62792 0,
62793 107,
62794 OPC_MoveChild0,
62795 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
62796 OPC_RecordChild0,
62797 OPC_Scope, 48,
62798 OPC_CheckChild0Type, MVT::v2f32,
62799 OPC_RecordChild1,
62800 OPC_MoveChild1,
62801 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
62802 OPC_MoveParent,
62803 OPC_MoveParent,
62804 OPC_RecordChild1,
62805 OPC_SwitchType , 16, MVT::v2f32,
62806 OPC_CheckPatternPredicate1,
62807 OPC_EmitConvertToTarget1,
62808 OPC_EmitInteger32, 28,
62809 OPC_EmitRegisterI32, 0 ,
62810 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslfd),
62811 MVT::v2f32, 5, 2, 0, 3, 4, 5,
62812 16, MVT::v4f32,
62813 OPC_CheckPatternPredicate1,
62814 OPC_EmitConvertToTarget1,
62815 OPC_EmitInteger32, 28,
62816 OPC_EmitRegisterI32, 0 ,
62817 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslfq),
62818 MVT::v4f32, 5, 2, 0, 3, 4, 5,
62819 0,
62820 50,
62821 OPC_CheckChild0Type, MVT::v4f16,
62822 OPC_RecordChild1,
62823 OPC_MoveChild1,
62824 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
62825 OPC_MoveParent,
62826 OPC_MoveParent,
62827 OPC_RecordChild1,
62828 OPC_SwitchType , 17, MVT::v4f16,
62829 OPC_CheckPatternPredicate, 11,
62830 OPC_EmitConvertToTarget1,
62831 OPC_EmitInteger32, 28,
62832 OPC_EmitRegisterI32, 0 ,
62833 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslhd),
62834 MVT::v4f16, 5, 2, 0, 3, 4, 5,
62835 17, MVT::v8f16,
62836 OPC_CheckPatternPredicate, 11,
62837 OPC_EmitConvertToTarget1,
62838 OPC_EmitInteger32, 28,
62839 OPC_EmitRegisterI32, 0 ,
62840 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslhq),
62841 MVT::v8f16, 5, 2, 0, 3, 4, 5,
62842 0,
62843 0,
62844 92,
62845 OPC_RecordChild0,
62846 OPC_MoveChild1,
62847 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
62848 OPC_RecordChild0,
62849 OPC_Scope, 41,
62850 OPC_CheckChild0Type, MVT::v4f32,
62851 OPC_RecordChild1,
62852 OPC_MoveChild1,
62853 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
62854 OPC_MoveParent,
62855 OPC_MoveParent,
62856 OPC_CheckType, MVT::v4f32,
62857 OPC_CheckPatternPredicate1,
62858 OPC_EmitConvertToTarget2,
62859 OPC_EmitNodeXForm, 7, 3,
62860 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
62861 MVT::v2f32, 2, 1, 4,
62862 OPC_EmitConvertToTarget2,
62863 OPC_EmitNodeXForm, 8, 6,
62864 OPC_EmitInteger32, 28,
62865 OPC_EmitRegisterI32, 0 ,
62866 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslfq),
62867 MVT::v4f32, 5, 0, 5, 7, 8, 9,
62868 41,
62869 OPC_CheckChild0Type, MVT::v8f16,
62870 OPC_RecordChild1,
62871 OPC_MoveChild1,
62872 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
62873 OPC_MoveParent,
62874 OPC_MoveParent,
62875 OPC_CheckType, MVT::v8f16,
62876 OPC_CheckPatternPredicate1,
62877 OPC_EmitConvertToTarget2,
62878 OPC_EmitNodeXForm, 5, 3,
62879 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
62880 MVT::v4f16, 2, 1, 4,
62881 OPC_EmitConvertToTarget2,
62882 OPC_EmitNodeXForm, 6, 6,
62883 OPC_EmitInteger32, 28,
62884 OPC_EmitRegisterI32, 0 ,
62885 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslhq),
62886 MVT::v8f16, 5, 0, 5, 7, 8, 9,
62887 0,
62888 93,
62889 OPC_MoveChild0,
62890 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
62891 OPC_RecordChild0,
62892 OPC_Scope, 42,
62893 OPC_CheckChild0Type, MVT::v4f32,
62894 OPC_RecordChild1,
62895 OPC_MoveChild1,
62896 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
62897 OPC_MoveParent,
62898 OPC_MoveParent,
62899 OPC_RecordChild1,
62900 OPC_CheckType, MVT::v4f32,
62901 OPC_CheckPatternPredicate1,
62902 OPC_EmitConvertToTarget1,
62903 OPC_EmitNodeXForm, 7, 3,
62904 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
62905 MVT::v2f32, 2, 0, 4,
62906 OPC_EmitConvertToTarget1,
62907 OPC_EmitNodeXForm, 8, 6,
62908 OPC_EmitInteger32, 28,
62909 OPC_EmitRegisterI32, 0 ,
62910 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslfq),
62911 MVT::v4f32, 5, 2, 5, 7, 8, 9,
62912 42,
62913 OPC_CheckChild0Type, MVT::v8f16,
62914 OPC_RecordChild1,
62915 OPC_MoveChild1,
62916 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
62917 OPC_MoveParent,
62918 OPC_MoveParent,
62919 OPC_RecordChild1,
62920 OPC_CheckType, MVT::v8f16,
62921 OPC_CheckPatternPredicate1,
62922 OPC_EmitConvertToTarget1,
62923 OPC_EmitNodeXForm, 5, 3,
62924 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
62925 MVT::v4f16, 2, 0, 4,
62926 OPC_EmitConvertToTarget1,
62927 OPC_EmitNodeXForm, 6, 6,
62928 OPC_EmitInteger32, 28,
62929 OPC_EmitRegisterI32, 0 ,
62930 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslhq),
62931 MVT::v8f16, 5, 2, 5, 7, 8, 9,
62932 0,
62933 60,
62934 OPC_RecordChild0,
62935 OPC_MoveChild1,
62936 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62937 OPC_RecordChild0,
62938 OPC_CheckChild0TypeI32,
62939 OPC_MoveParent,
62940 OPC_SwitchType , 23, MVT::v8f16,
62941 OPC_CheckPatternPredicate2,
62942 OPC_EmitInteger32, 0,
62943 OPC_EmitRegisterI32, 0 ,
62944 OPC_EmitRegisterI32, 0 ,
62945 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
62946 MVT::v4i32, 0,
62947 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f16),
62948 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
62949 23, MVT::v4f32,
62950 OPC_CheckPatternPredicate2,
62951 OPC_EmitInteger32, 0,
62952 OPC_EmitRegisterI32, 0 ,
62953 OPC_EmitRegisterI32, 0 ,
62954 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
62955 MVT::v4i32, 0,
62956 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f32),
62957 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
62958 0,
62959 60,
62960 OPC_MoveChild0,
62961 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62962 OPC_RecordChild0,
62963 OPC_CheckChild0TypeI32,
62964 OPC_MoveParent,
62965 OPC_RecordChild1,
62966 OPC_SwitchType , 23, MVT::v8f16,
62967 OPC_CheckPatternPredicate2,
62968 OPC_EmitInteger32, 0,
62969 OPC_EmitRegisterI32, 0 ,
62970 OPC_EmitRegisterI32, 0 ,
62971 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
62972 MVT::v4i32, 0,
62973 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f16),
62974 MVT::v8f16, 6, 1, 0, 2, 3, 4, 5,
62975 23, MVT::v4f32,
62976 OPC_CheckPatternPredicate2,
62977 OPC_EmitInteger32, 0,
62978 OPC_EmitRegisterI32, 0 ,
62979 OPC_EmitRegisterI32, 0 ,
62980 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
62981 MVT::v4i32, 0,
62982 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f32),
62983 MVT::v4f32, 6, 1, 0, 2, 3, 4, 5,
62984 0,
62985 28|128,1,
62986 OPC_RecordChild0,
62987 OPC_MoveChild1,
62988 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
62989 OPC_RecordChild0,
62990 OPC_Scope, 73,
62991 OPC_CheckChild0Type, MVT::f32,
62992 OPC_MoveParent,
62993 OPC_SwitchType , 32, MVT::v2f32,
62994 OPC_CheckPatternPredicate1,
62995 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
62996 MVT::v2f32, 0,
62997 OPC_EmitStringInteger32, ARM::ssub_0,
62998 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
62999 MVT::v2f32, 3, 2, 1, 3,
63000 OPC_EmitInteger32, 0,
63001 OPC_EmitInteger32, 28,
63002 OPC_EmitRegisterI32, 0 ,
63003 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslfd),
63004 MVT::v2f32, 5, 0, 4, 5, 6, 7,
63005 32, MVT::v4f32,
63006 OPC_CheckPatternPredicate1,
63007 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63008 MVT::v2f32, 0,
63009 OPC_EmitStringInteger32, ARM::ssub_0,
63010 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
63011 MVT::v2f32, 3, 2, 1, 3,
63012 OPC_EmitInteger32, 0,
63013 OPC_EmitInteger32, 28,
63014 OPC_EmitRegisterI32, 0 ,
63015 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslfq),
63016 MVT::v4f32, 5, 0, 4, 5, 6, 7,
63017 0,
63018 73,
63019 OPC_CheckChild0Type, MVT::f16,
63020 OPC_MoveParent,
63021 OPC_SwitchType , 32, MVT::v4f16,
63022 OPC_CheckPatternPredicate1,
63023 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63024 MVT::v4f16, 0,
63025 OPC_EmitStringInteger32, ARM::ssub_0,
63026 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
63027 MVT::v4f16, 3, 2, 1, 3,
63028 OPC_EmitInteger32, 0,
63029 OPC_EmitInteger32, 28,
63030 OPC_EmitRegisterI32, 0 ,
63031 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslhd),
63032 MVT::v4f16, 5, 0, 4, 5, 6, 7,
63033 32, MVT::v8f16,
63034 OPC_CheckPatternPredicate1,
63035 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63036 MVT::v4f16, 0,
63037 OPC_EmitStringInteger32, ARM::ssub_0,
63038 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
63039 MVT::v4f16, 3, 2, 1, 3,
63040 OPC_EmitInteger32, 0,
63041 OPC_EmitInteger32, 28,
63042 OPC_EmitRegisterI32, 0 ,
63043 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslhq),
63044 MVT::v8f16, 5, 0, 4, 5, 6, 7,
63045 0,
63046 0,
63047 29|128,1,
63048 OPC_MoveChild0,
63049 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
63050 OPC_RecordChild0,
63051 OPC_Scope, 74,
63052 OPC_CheckChild0Type, MVT::f32,
63053 OPC_MoveParent,
63054 OPC_RecordChild1,
63055 OPC_SwitchType , 32, MVT::v2f32,
63056 OPC_CheckPatternPredicate1,
63057 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63058 MVT::v2f32, 0,
63059 OPC_EmitStringInteger32, ARM::ssub_0,
63060 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
63061 MVT::v2f32, 3, 2, 0, 3,
63062 OPC_EmitInteger32, 0,
63063 OPC_EmitInteger32, 28,
63064 OPC_EmitRegisterI32, 0 ,
63065 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslfd),
63066 MVT::v2f32, 5, 1, 4, 5, 6, 7,
63067 32, MVT::v4f32,
63068 OPC_CheckPatternPredicate1,
63069 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63070 MVT::v2f32, 0,
63071 OPC_EmitStringInteger32, ARM::ssub_0,
63072 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
63073 MVT::v2f32, 3, 2, 0, 3,
63074 OPC_EmitInteger32, 0,
63075 OPC_EmitInteger32, 28,
63076 OPC_EmitRegisterI32, 0 ,
63077 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslfq),
63078 MVT::v4f32, 5, 1, 4, 5, 6, 7,
63079 0,
63080 74,
63081 OPC_CheckChild0Type, MVT::f16,
63082 OPC_MoveParent,
63083 OPC_RecordChild1,
63084 OPC_SwitchType , 32, MVT::v4f16,
63085 OPC_CheckPatternPredicate1,
63086 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63087 MVT::v4f16, 0,
63088 OPC_EmitStringInteger32, ARM::ssub_0,
63089 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
63090 MVT::v4f16, 3, 2, 0, 3,
63091 OPC_EmitInteger32, 0,
63092 OPC_EmitInteger32, 28,
63093 OPC_EmitRegisterI32, 0 ,
63094 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslhd),
63095 MVT::v4f16, 5, 1, 4, 5, 6, 7,
63096 32, MVT::v8f16,
63097 OPC_CheckPatternPredicate1,
63098 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63099 MVT::v4f16, 0,
63100 OPC_EmitStringInteger32, ARM::ssub_0,
63101 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
63102 MVT::v4f16, 3, 2, 0, 3,
63103 OPC_EmitInteger32, 0,
63104 OPC_EmitInteger32, 28,
63105 OPC_EmitRegisterI32, 0 ,
63106 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULslhq),
63107 MVT::v8f16, 5, 1, 4, 5, 6, 7,
63108 0,
63109 0,
63110 124,
63111 OPC_RecordChild0,
63112 OPC_RecordChild1,
63113 OPC_SwitchType , 14, MVT::v2f32,
63114 OPC_CheckPatternPredicate1,
63115 OPC_EmitInteger32, 28,
63116 OPC_EmitRegisterI32, 0 ,
63117 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULfd),
63118 MVT::v2f32, 4, 0, 1, 2, 3,
63119 41, MVT::v4f32,
63120 OPC_Scope, 14,
63121 OPC_CheckPatternPredicate1,
63122 OPC_EmitInteger32, 28,
63123 OPC_EmitRegisterI32, 0 ,
63124 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULfq),
63125 MVT::v4f32, 4, 0, 1, 2, 3,
63126 23,
63127 OPC_CheckPatternPredicate2,
63128 OPC_EmitInteger32, 0,
63129 OPC_EmitRegisterI32, 0 ,
63130 OPC_EmitRegisterI32, 0 ,
63131 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63132 MVT::v4i32, 0,
63133 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULf32),
63134 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
63135 0,
63136 15, MVT::v4f16,
63137 OPC_CheckPatternPredicate, 11,
63138 OPC_EmitInteger32, 28,
63139 OPC_EmitRegisterI32, 0 ,
63140 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULhd),
63141 MVT::v4f16, 4, 0, 1, 2, 3,
63142 42, MVT::v8f16,
63143 OPC_Scope, 15,
63144 OPC_CheckPatternPredicate, 11,
63145 OPC_EmitInteger32, 28,
63146 OPC_EmitRegisterI32, 0 ,
63147 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULhq),
63148 MVT::v8f16, 4, 0, 1, 2, 3,
63149 23,
63150 OPC_CheckPatternPredicate2,
63151 OPC_EmitInteger32, 0,
63152 OPC_EmitRegisterI32, 0 ,
63153 OPC_EmitRegisterI32, 0 ,
63154 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63155 MVT::v4i32, 0,
63156 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULf16),
63157 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
63158 0,
63159 0,
63160 0,
63161 116|128,2, TARGET_VAL(ISD::FABS),
63162 OPC_Scope, 79,
63163 OPC_MoveChild0,
63164 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVDRR),
63165 OPC_RecordChild0,
63166 OPC_RecordChild1,
63167 OPC_MoveParent,
63168 OPC_Scope, 34,
63169 OPC_CheckPatternPredicate, 32,
63170 OPC_EmitInteger32, 126|128,127|128,127|128,127|128,15,
63171 OPC_EmitInteger32, 28,
63172 OPC_EmitRegisterI32, 0 ,
63173 OPC_EmitNode1None, TARGET_VAL(ARM::BFC),
63174 MVT::i32, 4, 1, 2, 3, 4,
63175 OPC_EmitInteger32, 28,
63176 OPC_EmitRegisterI32, 0 ,
63177 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVDRR),
63178 MVT::f64, 4, 0, 5, 6, 7,
63179 34,
63180 OPC_CheckPatternPredicate, 80,
63181 OPC_EmitInteger32, 126|128,127|128,127|128,127|128,15,
63182 OPC_EmitInteger32, 28,
63183 OPC_EmitRegisterI32, 0 ,
63184 OPC_EmitNode1None, TARGET_VAL(ARM::t2BFC),
63185 MVT::i32, 4, 1, 2, 3, 4,
63186 OPC_EmitInteger32, 28,
63187 OPC_EmitRegisterI32, 0 ,
63188 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVDRR),
63189 MVT::f64, 4, 0, 5, 6, 7,
63190 0,
63191 111,
63192 OPC_RecordChild0,
63193 OPC_SwitchType , 14, MVT::f64,
63194 OPC_CheckPatternPredicate, 18,
63195 OPC_EmitInteger32, 28,
63196 OPC_EmitRegisterI32, 0 ,
63197 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABSD),
63198 MVT::f64, 3, 0, 1, 2,
63199 74, MVT::f32,
63200 OPC_Scope, 14,
63201 OPC_CheckPatternPredicate, 26,
63202 OPC_EmitInteger32, 28,
63203 OPC_EmitRegisterI32, 0 ,
63204 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABSS),
63205 MVT::f32, 3, 0, 1, 2,
63206 56,
63207 OPC_CheckPatternPredicate, 42,
63208 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63209 MVT::v2f32, 0,
63210 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
63211 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
63212 MVT::v2f32, 2, 1, 2,
63213 OPC_EmitStringInteger32, ARM::ssub_0,
63214 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
63215 MVT::v2f32, 3, 3, 0, 4,
63216 OPC_EmitInteger32, 28,
63217 OPC_EmitRegisterI32, 0 ,
63218 OPC_EmitNode1None, TARGET_VAL(ARM::VABSfd),
63219 MVT::f64, 3, 5, 6, 7,
63220 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
63221 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
63222 MVT::v2f32, 2, 8, 9,
63223 OPC_EmitStringInteger32, ARM::ssub_0,
63224 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
63225 MVT::f32, 2, 10, 11,
63226 0,
63227 14, MVT::f16,
63228 OPC_CheckPatternPredicate, 13,
63229 OPC_EmitInteger32, 28,
63230 OPC_EmitRegisterI32, 0 ,
63231 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABSH),
63232 MVT::f16, 3, 0, 1, 2,
63233 0,
63234 59,
63235 OPC_MoveChild0,
63236 OPC_CheckOpcode, TARGET_VAL(ISD::FSUB),
63237 OPC_RecordChild0,
63238 OPC_RecordChild1,
63239 OPC_MoveParent,
63240 OPC_SwitchType , 23, MVT::v8f16,
63241 OPC_CheckPatternPredicate2,
63242 OPC_EmitInteger32, 0,
63243 OPC_EmitRegisterI32, 0 ,
63244 OPC_EmitRegisterI32, 0 ,
63245 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63246 MVT::v4i32, 0,
63247 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDf16),
63248 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
63249 23, MVT::v4f32,
63250 OPC_CheckPatternPredicate2,
63251 OPC_EmitInteger32, 0,
63252 OPC_EmitRegisterI32, 0 ,
63253 OPC_EmitRegisterI32, 0 ,
63254 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63255 MVT::v4i32, 0,
63256 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDf32),
63257 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
63258 0,
63259 117,
63260 OPC_RecordChild0,
63261 OPC_SwitchType , 13, MVT::v2f32,
63262 OPC_CheckPatternPredicate1,
63263 OPC_EmitInteger32, 28,
63264 OPC_EmitRegisterI32, 0 ,
63265 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABSfd),
63266 MVT::v2f32, 3, 0, 1, 2,
63267 39, MVT::v4f32,
63268 OPC_Scope, 13,
63269 OPC_CheckPatternPredicate1,
63270 OPC_EmitInteger32, 28,
63271 OPC_EmitRegisterI32, 0 ,
63272 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABSfq),
63273 MVT::v4f32, 3, 0, 1, 2,
63274 22,
63275 OPC_CheckPatternPredicate0,
63276 OPC_EmitInteger32, 0,
63277 OPC_EmitRegisterI32, 0 ,
63278 OPC_EmitRegisterI32, 0 ,
63279 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63280 MVT::v4i32, 0,
63281 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABSf32),
63282 MVT::v4f32, 5, 0, 1, 2, 3, 4,
63283 0,
63284 14, MVT::v4f16,
63285 OPC_CheckPatternPredicate, 11,
63286 OPC_EmitInteger32, 28,
63287 OPC_EmitRegisterI32, 0 ,
63288 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABShd),
63289 MVT::v4f16, 3, 0, 1, 2,
63290 40, MVT::v8f16,
63291 OPC_Scope, 14,
63292 OPC_CheckPatternPredicate, 11,
63293 OPC_EmitInteger32, 28,
63294 OPC_EmitRegisterI32, 0 ,
63295 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABShq),
63296 MVT::v8f16, 3, 0, 1, 2,
63297 22,
63298 OPC_CheckPatternPredicate0,
63299 OPC_EmitInteger32, 0,
63300 OPC_EmitRegisterI32, 0 ,
63301 OPC_EmitRegisterI32, 0 ,
63302 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
63303 MVT::v4i32, 0,
63304 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABSf16),
63305 MVT::v8f16, 5, 0, 1, 2, 3, 4,
63306 0,
63307 0,
63308 0,
63309 101, TARGET_VAL(ISD::ConstantFP),
63310 OPC_RecordNode,
63311 OPC_SwitchType , 20, MVT::f64,
63312 OPC_CheckPredicate, 111,
63313 OPC_CheckPatternPredicate, 152,
63314 OPC_EmitConvertToTarget0,
63315 OPC_EmitNodeXForm, 24, 1,
63316 OPC_EmitInteger32, 28,
63317 OPC_EmitRegisterI32, 0 ,
63318 OPC_MorphNodeTo1None, TARGET_VAL(ARM::FCONSTD),
63319 MVT::f64, 3, 2, 3, 4,
63320 52, MVT::f32,
63321 OPC_Scope, 20,
63322 OPC_CheckPredicate, 112,
63323 OPC_CheckPatternPredicate, 153,
63324 OPC_EmitConvertToTarget0,
63325 OPC_EmitNodeXForm, 25, 1,
63326 OPC_EmitInteger32, 28,
63327 OPC_EmitRegisterI32, 0 ,
63328 OPC_MorphNodeTo1None, TARGET_VAL(ARM::FCONSTS),
63329 MVT::f32, 3, 2, 3, 4,
63330 28,
63331 OPC_CheckPredicate, 113,
63332 OPC_CheckPatternPredicate, 13,
63333 OPC_EmitNodeXForm, 26, 0,
63334 OPC_EmitInteger32, 28,
63335 OPC_EmitRegisterI32, 0 ,
63336 OPC_EmitNode1None, TARGET_VAL(ARM::FCONSTH),
63337 MVT::f16, 3, 1, 2, 3,
63338 OPC_EmitStringInteger32, ARM::SPRRegClassID,
63339 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
63340 MVT::f32, 2, 4, 5,
63341 0,
63342 20, MVT::f16,
63343 OPC_CheckPredicate, 114,
63344 OPC_CheckPatternPredicate, 13,
63345 OPC_EmitConvertToTarget0,
63346 OPC_EmitNodeXForm, 27, 1,
63347 OPC_EmitInteger32, 28,
63348 OPC_EmitRegisterI32, 0 ,
63349 OPC_MorphNodeTo1None, TARGET_VAL(ARM::FCONSTH),
63350 MVT::f16, 3, 2, 3, 4,
63351 0,
63352 91|128,9, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
63353 OPC_RecordChild0,
63354 OPC_Scope, 52,
63355 OPC_CheckChild0Type, MVT::v8i8,
63356 OPC_SwitchType , 4, MVT::f64,
63357 OPC_CheckPatternPredicate1,
63358 OPC_CompleteMatch, 1, 0,
63359
63360 4, MVT::v8i8,
63361 OPC_CheckPatternPredicate1,
63362 OPC_CompleteMatch, 1, 0,
63363
63364 4, MVT::v4i16,
63365 OPC_CheckPatternPredicate1,
63366 OPC_CompleteMatch, 1, 0,
63367
63368 4, MVT::v2i32,
63369 OPC_CheckPatternPredicate1,
63370 OPC_CompleteMatch, 1, 0,
63371
63372 4, MVT::v1i64,
63373 OPC_CheckPatternPredicate1,
63374 OPC_CompleteMatch, 1, 0,
63375
63376 4, MVT::v4f16,
63377 OPC_CheckPatternPredicate1,
63378 OPC_CompleteMatch, 1, 0,
63379
63380 4, MVT::v4bf16,
63381 OPC_CheckPatternPredicate1,
63382 OPC_CompleteMatch, 1, 0,
63383
63384 4, MVT::v2f32,
63385 OPC_CheckPatternPredicate1,
63386 OPC_CompleteMatch, 1, 0,
63387
63388 0,
63389 52,
63390 OPC_CheckChild0Type, MVT::v4i16,
63391 OPC_SwitchType , 4, MVT::f64,
63392 OPC_CheckPatternPredicate1,
63393 OPC_CompleteMatch, 1, 0,
63394
63395 4, MVT::v8i8,
63396 OPC_CheckPatternPredicate1,
63397 OPC_CompleteMatch, 1, 0,
63398
63399 4, MVT::v4i16,
63400 OPC_CheckPatternPredicate1,
63401 OPC_CompleteMatch, 1, 0,
63402
63403 4, MVT::v2i32,
63404 OPC_CheckPatternPredicate1,
63405 OPC_CompleteMatch, 1, 0,
63406
63407 4, MVT::v1i64,
63408 OPC_CheckPatternPredicate1,
63409 OPC_CompleteMatch, 1, 0,
63410
63411 4, MVT::v4f16,
63412 OPC_CheckPatternPredicate1,
63413 OPC_CompleteMatch, 1, 0,
63414
63415 4, MVT::v4bf16,
63416 OPC_CheckPatternPredicate1,
63417 OPC_CompleteMatch, 1, 0,
63418
63419 4, MVT::v2f32,
63420 OPC_CheckPatternPredicate1,
63421 OPC_CompleteMatch, 1, 0,
63422
63423 0,
63424 52,
63425 OPC_CheckChild0Type, MVT::v4f16,
63426 OPC_SwitchType , 4, MVT::f64,
63427 OPC_CheckPatternPredicate1,
63428 OPC_CompleteMatch, 1, 0,
63429
63430 4, MVT::v8i8,
63431 OPC_CheckPatternPredicate1,
63432 OPC_CompleteMatch, 1, 0,
63433
63434 4, MVT::v4i16,
63435 OPC_CheckPatternPredicate1,
63436 OPC_CompleteMatch, 1, 0,
63437
63438 4, MVT::v2i32,
63439 OPC_CheckPatternPredicate1,
63440 OPC_CompleteMatch, 1, 0,
63441
63442 4, MVT::v1i64,
63443 OPC_CheckPatternPredicate1,
63444 OPC_CompleteMatch, 1, 0,
63445
63446 4, MVT::v4f16,
63447 OPC_CheckPatternPredicate1,
63448 OPC_CompleteMatch, 1, 0,
63449
63450 4, MVT::v4bf16,
63451 OPC_CheckPatternPredicate1,
63452 OPC_CompleteMatch, 1, 0,
63453
63454 4, MVT::v2f32,
63455 OPC_CheckPatternPredicate1,
63456 OPC_CompleteMatch, 1, 0,
63457
63458 0,
63459 52,
63460 OPC_CheckChild0Type, MVT::v4bf16,
63461 OPC_SwitchType , 4, MVT::f64,
63462 OPC_CheckPatternPredicate1,
63463 OPC_CompleteMatch, 1, 0,
63464
63465 4, MVT::v8i8,
63466 OPC_CheckPatternPredicate1,
63467 OPC_CompleteMatch, 1, 0,
63468
63469 4, MVT::v4i16,
63470 OPC_CheckPatternPredicate1,
63471 OPC_CompleteMatch, 1, 0,
63472
63473 4, MVT::v2i32,
63474 OPC_CheckPatternPredicate1,
63475 OPC_CompleteMatch, 1, 0,
63476
63477 4, MVT::v1i64,
63478 OPC_CheckPatternPredicate1,
63479 OPC_CompleteMatch, 1, 0,
63480
63481 4, MVT::v4f16,
63482 OPC_CheckPatternPredicate1,
63483 OPC_CompleteMatch, 1, 0,
63484
63485 4, MVT::v4bf16,
63486 OPC_CheckPatternPredicate1,
63487 OPC_CompleteMatch, 1, 0,
63488
63489 4, MVT::v2f32,
63490 OPC_CheckPatternPredicate1,
63491 OPC_CompleteMatch, 1, 0,
63492
63493 0,
63494 52,
63495 OPC_CheckChild0Type, MVT::v2i32,
63496 OPC_SwitchType , 4, MVT::f64,
63497 OPC_CheckPatternPredicate1,
63498 OPC_CompleteMatch, 1, 0,
63499
63500 4, MVT::v8i8,
63501 OPC_CheckPatternPredicate1,
63502 OPC_CompleteMatch, 1, 0,
63503
63504 4, MVT::v4i16,
63505 OPC_CheckPatternPredicate1,
63506 OPC_CompleteMatch, 1, 0,
63507
63508 4, MVT::v2i32,
63509 OPC_CheckPatternPredicate1,
63510 OPC_CompleteMatch, 1, 0,
63511
63512 4, MVT::v1i64,
63513 OPC_CheckPatternPredicate1,
63514 OPC_CompleteMatch, 1, 0,
63515
63516 4, MVT::v4f16,
63517 OPC_CheckPatternPredicate1,
63518 OPC_CompleteMatch, 1, 0,
63519
63520 4, MVT::v4bf16,
63521 OPC_CheckPatternPredicate1,
63522 OPC_CompleteMatch, 1, 0,
63523
63524 4, MVT::v2f32,
63525 OPC_CheckPatternPredicate1,
63526 OPC_CompleteMatch, 1, 0,
63527
63528 0,
63529 52,
63530 OPC_CheckChild0Type, MVT::v2f32,
63531 OPC_SwitchType , 4, MVT::f64,
63532 OPC_CheckPatternPredicate1,
63533 OPC_CompleteMatch, 1, 0,
63534
63535 4, MVT::v8i8,
63536 OPC_CheckPatternPredicate1,
63537 OPC_CompleteMatch, 1, 0,
63538
63539 4, MVT::v4i16,
63540 OPC_CheckPatternPredicate1,
63541 OPC_CompleteMatch, 1, 0,
63542
63543 4, MVT::v2i32,
63544 OPC_CheckPatternPredicate1,
63545 OPC_CompleteMatch, 1, 0,
63546
63547 4, MVT::v1i64,
63548 OPC_CheckPatternPredicate1,
63549 OPC_CompleteMatch, 1, 0,
63550
63551 4, MVT::v4f16,
63552 OPC_CheckPatternPredicate1,
63553 OPC_CompleteMatch, 1, 0,
63554
63555 4, MVT::v4bf16,
63556 OPC_CheckPatternPredicate1,
63557 OPC_CompleteMatch, 1, 0,
63558
63559 4, MVT::v2f32,
63560 OPC_CheckPatternPredicate1,
63561 OPC_CompleteMatch, 1, 0,
63562
63563 0,
63564 52,
63565 OPC_CheckChild0Type, MVT::v1i64,
63566 OPC_SwitchType , 4, MVT::f64,
63567 OPC_CheckPatternPredicate1,
63568 OPC_CompleteMatch, 1, 0,
63569
63570 4, MVT::v8i8,
63571 OPC_CheckPatternPredicate1,
63572 OPC_CompleteMatch, 1, 0,
63573
63574 4, MVT::v4i16,
63575 OPC_CheckPatternPredicate1,
63576 OPC_CompleteMatch, 1, 0,
63577
63578 4, MVT::v2i32,
63579 OPC_CheckPatternPredicate1,
63580 OPC_CompleteMatch, 1, 0,
63581
63582 4, MVT::v1i64,
63583 OPC_CheckPatternPredicate1,
63584 OPC_CompleteMatch, 1, 0,
63585
63586 4, MVT::v4f16,
63587 OPC_CheckPatternPredicate1,
63588 OPC_CompleteMatch, 1, 0,
63589
63590 4, MVT::v4bf16,
63591 OPC_CheckPatternPredicate1,
63592 OPC_CompleteMatch, 1, 0,
63593
63594 4, MVT::v2f32,
63595 OPC_CheckPatternPredicate1,
63596 OPC_CompleteMatch, 1, 0,
63597
63598 0,
63599 52,
63600 OPC_CheckChild0Type, MVT::f64,
63601 OPC_SwitchType , 4, MVT::f64,
63602 OPC_CheckPatternPredicate1,
63603 OPC_CompleteMatch, 1, 0,
63604
63605 4, MVT::v8i8,
63606 OPC_CheckPatternPredicate1,
63607 OPC_CompleteMatch, 1, 0,
63608
63609 4, MVT::v4i16,
63610 OPC_CheckPatternPredicate1,
63611 OPC_CompleteMatch, 1, 0,
63612
63613 4, MVT::v2i32,
63614 OPC_CheckPatternPredicate1,
63615 OPC_CompleteMatch, 1, 0,
63616
63617 4, MVT::v1i64,
63618 OPC_CheckPatternPredicate1,
63619 OPC_CompleteMatch, 1, 0,
63620
63621 4, MVT::v4f16,
63622 OPC_CheckPatternPredicate1,
63623 OPC_CompleteMatch, 1, 0,
63624
63625 4, MVT::v4bf16,
63626 OPC_CheckPatternPredicate1,
63627 OPC_CompleteMatch, 1, 0,
63628
63629 4, MVT::v2f32,
63630 OPC_CheckPatternPredicate1,
63631 OPC_CompleteMatch, 1, 0,
63632
63633 0,
63634 108,
63635 OPC_CheckChild0Type, MVT::v16i8,
63636 OPC_SwitchType , 12, MVT::v16i8,
63637 OPC_Scope, 4,
63638 OPC_CheckPatternPredicate1,
63639 OPC_CompleteMatch, 1, 0,
63640
63641 4,
63642 OPC_CheckPatternPredicate0,
63643 OPC_CompleteMatch, 1, 0,
63644
63645 0,
63646 12, MVT::v8i16,
63647 OPC_Scope, 4,
63648 OPC_CheckPatternPredicate1,
63649 OPC_CompleteMatch, 1, 0,
63650
63651 4,
63652 OPC_CheckPatternPredicate0,
63653 OPC_CompleteMatch, 1, 0,
63654
63655 0,
63656 12, MVT::v4i32,
63657 OPC_Scope, 4,
63658 OPC_CheckPatternPredicate1,
63659 OPC_CompleteMatch, 1, 0,
63660
63661 4,
63662 OPC_CheckPatternPredicate0,
63663 OPC_CompleteMatch, 1, 0,
63664
63665 0,
63666 12, MVT::v2i64,
63667 OPC_Scope, 4,
63668 OPC_CheckPatternPredicate1,
63669 OPC_CompleteMatch, 1, 0,
63670
63671 4,
63672 OPC_CheckPatternPredicate0,
63673 OPC_CompleteMatch, 1, 0,
63674
63675 0,
63676 12, MVT::v8f16,
63677 OPC_Scope, 4,
63678 OPC_CheckPatternPredicate1,
63679 OPC_CompleteMatch, 1, 0,
63680
63681 4,
63682 OPC_CheckPatternPredicate0,
63683 OPC_CompleteMatch, 1, 0,
63684
63685 0,
63686 4, MVT::v8bf16,
63687 OPC_CheckPatternPredicate1,
63688 OPC_CompleteMatch, 1, 0,
63689
63690 12, MVT::v4f32,
63691 OPC_Scope, 4,
63692 OPC_CheckPatternPredicate1,
63693 OPC_CompleteMatch, 1, 0,
63694
63695 4,
63696 OPC_CheckPatternPredicate0,
63697 OPC_CompleteMatch, 1, 0,
63698
63699 0,
63700 12, MVT::v2f64,
63701 OPC_Scope, 4,
63702 OPC_CheckPatternPredicate1,
63703 OPC_CompleteMatch, 1, 0,
63704
63705 4,
63706 OPC_CheckPatternPredicate0,
63707 OPC_CompleteMatch, 1, 0,
63708
63709 0,
63710 0,
63711 108,
63712 OPC_CheckChild0Type, MVT::v8i16,
63713 OPC_SwitchType , 12, MVT::v16i8,
63714 OPC_Scope, 4,
63715 OPC_CheckPatternPredicate1,
63716 OPC_CompleteMatch, 1, 0,
63717
63718 4,
63719 OPC_CheckPatternPredicate0,
63720 OPC_CompleteMatch, 1, 0,
63721
63722 0,
63723 12, MVT::v8i16,
63724 OPC_Scope, 4,
63725 OPC_CheckPatternPredicate1,
63726 OPC_CompleteMatch, 1, 0,
63727
63728 4,
63729 OPC_CheckPatternPredicate0,
63730 OPC_CompleteMatch, 1, 0,
63731
63732 0,
63733 12, MVT::v4i32,
63734 OPC_Scope, 4,
63735 OPC_CheckPatternPredicate1,
63736 OPC_CompleteMatch, 1, 0,
63737
63738 4,
63739 OPC_CheckPatternPredicate0,
63740 OPC_CompleteMatch, 1, 0,
63741
63742 0,
63743 12, MVT::v2i64,
63744 OPC_Scope, 4,
63745 OPC_CheckPatternPredicate1,
63746 OPC_CompleteMatch, 1, 0,
63747
63748 4,
63749 OPC_CheckPatternPredicate0,
63750 OPC_CompleteMatch, 1, 0,
63751
63752 0,
63753 12, MVT::v8f16,
63754 OPC_Scope, 4,
63755 OPC_CheckPatternPredicate1,
63756 OPC_CompleteMatch, 1, 0,
63757
63758 4,
63759 OPC_CheckPatternPredicate0,
63760 OPC_CompleteMatch, 1, 0,
63761
63762 0,
63763 4, MVT::v8bf16,
63764 OPC_CheckPatternPredicate1,
63765 OPC_CompleteMatch, 1, 0,
63766
63767 12, MVT::v4f32,
63768 OPC_Scope, 4,
63769 OPC_CheckPatternPredicate1,
63770 OPC_CompleteMatch, 1, 0,
63771
63772 4,
63773 OPC_CheckPatternPredicate0,
63774 OPC_CompleteMatch, 1, 0,
63775
63776 0,
63777 12, MVT::v2f64,
63778 OPC_Scope, 4,
63779 OPC_CheckPatternPredicate1,
63780 OPC_CompleteMatch, 1, 0,
63781
63782 4,
63783 OPC_CheckPatternPredicate0,
63784 OPC_CompleteMatch, 1, 0,
63785
63786 0,
63787 0,
63788 108,
63789 OPC_CheckChild0Type, MVT::v8f16,
63790 OPC_SwitchType , 12, MVT::v16i8,
63791 OPC_Scope, 4,
63792 OPC_CheckPatternPredicate1,
63793 OPC_CompleteMatch, 1, 0,
63794
63795 4,
63796 OPC_CheckPatternPredicate0,
63797 OPC_CompleteMatch, 1, 0,
63798
63799 0,
63800 12, MVT::v8i16,
63801 OPC_Scope, 4,
63802 OPC_CheckPatternPredicate1,
63803 OPC_CompleteMatch, 1, 0,
63804
63805 4,
63806 OPC_CheckPatternPredicate0,
63807 OPC_CompleteMatch, 1, 0,
63808
63809 0,
63810 12, MVT::v4i32,
63811 OPC_Scope, 4,
63812 OPC_CheckPatternPredicate1,
63813 OPC_CompleteMatch, 1, 0,
63814
63815 4,
63816 OPC_CheckPatternPredicate0,
63817 OPC_CompleteMatch, 1, 0,
63818
63819 0,
63820 12, MVT::v2i64,
63821 OPC_Scope, 4,
63822 OPC_CheckPatternPredicate1,
63823 OPC_CompleteMatch, 1, 0,
63824
63825 4,
63826 OPC_CheckPatternPredicate0,
63827 OPC_CompleteMatch, 1, 0,
63828
63829 0,
63830 12, MVT::v8f16,
63831 OPC_Scope, 4,
63832 OPC_CheckPatternPredicate1,
63833 OPC_CompleteMatch, 1, 0,
63834
63835 4,
63836 OPC_CheckPatternPredicate0,
63837 OPC_CompleteMatch, 1, 0,
63838
63839 0,
63840 4, MVT::v8bf16,
63841 OPC_CheckPatternPredicate1,
63842 OPC_CompleteMatch, 1, 0,
63843
63844 12, MVT::v4f32,
63845 OPC_Scope, 4,
63846 OPC_CheckPatternPredicate1,
63847 OPC_CompleteMatch, 1, 0,
63848
63849 4,
63850 OPC_CheckPatternPredicate0,
63851 OPC_CompleteMatch, 1, 0,
63852
63853 0,
63854 12, MVT::v2f64,
63855 OPC_Scope, 4,
63856 OPC_CheckPatternPredicate1,
63857 OPC_CompleteMatch, 1, 0,
63858
63859 4,
63860 OPC_CheckPatternPredicate0,
63861 OPC_CompleteMatch, 1, 0,
63862
63863 0,
63864 0,
63865 52,
63866 OPC_CheckChild0Type, MVT::v8bf16,
63867 OPC_SwitchType , 4, MVT::v16i8,
63868 OPC_CheckPatternPredicate1,
63869 OPC_CompleteMatch, 1, 0,
63870
63871 4, MVT::v8i16,
63872 OPC_CheckPatternPredicate1,
63873 OPC_CompleteMatch, 1, 0,
63874
63875 4, MVT::v4i32,
63876 OPC_CheckPatternPredicate1,
63877 OPC_CompleteMatch, 1, 0,
63878
63879 4, MVT::v2i64,
63880 OPC_CheckPatternPredicate1,
63881 OPC_CompleteMatch, 1, 0,
63882
63883 4, MVT::v8f16,
63884 OPC_CheckPatternPredicate1,
63885 OPC_CompleteMatch, 1, 0,
63886
63887 4, MVT::v8bf16,
63888 OPC_CheckPatternPredicate1,
63889 OPC_CompleteMatch, 1, 0,
63890
63891 4, MVT::v4f32,
63892 OPC_CheckPatternPredicate1,
63893 OPC_CompleteMatch, 1, 0,
63894
63895 4, MVT::v2f64,
63896 OPC_CheckPatternPredicate1,
63897 OPC_CompleteMatch, 1, 0,
63898
63899 0,
63900 108,
63901 OPC_CheckChild0Type, MVT::v4i32,
63902 OPC_SwitchType , 12, MVT::v16i8,
63903 OPC_Scope, 4,
63904 OPC_CheckPatternPredicate1,
63905 OPC_CompleteMatch, 1, 0,
63906
63907 4,
63908 OPC_CheckPatternPredicate0,
63909 OPC_CompleteMatch, 1, 0,
63910
63911 0,
63912 12, MVT::v8i16,
63913 OPC_Scope, 4,
63914 OPC_CheckPatternPredicate1,
63915 OPC_CompleteMatch, 1, 0,
63916
63917 4,
63918 OPC_CheckPatternPredicate0,
63919 OPC_CompleteMatch, 1, 0,
63920
63921 0,
63922 12, MVT::v4i32,
63923 OPC_Scope, 4,
63924 OPC_CheckPatternPredicate1,
63925 OPC_CompleteMatch, 1, 0,
63926
63927 4,
63928 OPC_CheckPatternPredicate0,
63929 OPC_CompleteMatch, 1, 0,
63930
63931 0,
63932 12, MVT::v2i64,
63933 OPC_Scope, 4,
63934 OPC_CheckPatternPredicate1,
63935 OPC_CompleteMatch, 1, 0,
63936
63937 4,
63938 OPC_CheckPatternPredicate0,
63939 OPC_CompleteMatch, 1, 0,
63940
63941 0,
63942 12, MVT::v8f16,
63943 OPC_Scope, 4,
63944 OPC_CheckPatternPredicate1,
63945 OPC_CompleteMatch, 1, 0,
63946
63947 4,
63948 OPC_CheckPatternPredicate0,
63949 OPC_CompleteMatch, 1, 0,
63950
63951 0,
63952 4, MVT::v8bf16,
63953 OPC_CheckPatternPredicate1,
63954 OPC_CompleteMatch, 1, 0,
63955
63956 12, MVT::v4f32,
63957 OPC_Scope, 4,
63958 OPC_CheckPatternPredicate1,
63959 OPC_CompleteMatch, 1, 0,
63960
63961 4,
63962 OPC_CheckPatternPredicate0,
63963 OPC_CompleteMatch, 1, 0,
63964
63965 0,
63966 12, MVT::v2f64,
63967 OPC_Scope, 4,
63968 OPC_CheckPatternPredicate1,
63969 OPC_CompleteMatch, 1, 0,
63970
63971 4,
63972 OPC_CheckPatternPredicate0,
63973 OPC_CompleteMatch, 1, 0,
63974
63975 0,
63976 0,
63977 108,
63978 OPC_CheckChild0Type, MVT::v4f32,
63979 OPC_SwitchType , 12, MVT::v16i8,
63980 OPC_Scope, 4,
63981 OPC_CheckPatternPredicate1,
63982 OPC_CompleteMatch, 1, 0,
63983
63984 4,
63985 OPC_CheckPatternPredicate0,
63986 OPC_CompleteMatch, 1, 0,
63987
63988 0,
63989 12, MVT::v8i16,
63990 OPC_Scope, 4,
63991 OPC_CheckPatternPredicate1,
63992 OPC_CompleteMatch, 1, 0,
63993
63994 4,
63995 OPC_CheckPatternPredicate0,
63996 OPC_CompleteMatch, 1, 0,
63997
63998 0,
63999 12, MVT::v4i32,
64000 OPC_Scope, 4,
64001 OPC_CheckPatternPredicate1,
64002 OPC_CompleteMatch, 1, 0,
64003
64004 4,
64005 OPC_CheckPatternPredicate0,
64006 OPC_CompleteMatch, 1, 0,
64007
64008 0,
64009 12, MVT::v2i64,
64010 OPC_Scope, 4,
64011 OPC_CheckPatternPredicate1,
64012 OPC_CompleteMatch, 1, 0,
64013
64014 4,
64015 OPC_CheckPatternPredicate0,
64016 OPC_CompleteMatch, 1, 0,
64017
64018 0,
64019 12, MVT::v8f16,
64020 OPC_Scope, 4,
64021 OPC_CheckPatternPredicate1,
64022 OPC_CompleteMatch, 1, 0,
64023
64024 4,
64025 OPC_CheckPatternPredicate0,
64026 OPC_CompleteMatch, 1, 0,
64027
64028 0,
64029 4, MVT::v8bf16,
64030 OPC_CheckPatternPredicate1,
64031 OPC_CompleteMatch, 1, 0,
64032
64033 12, MVT::v4f32,
64034 OPC_Scope, 4,
64035 OPC_CheckPatternPredicate1,
64036 OPC_CompleteMatch, 1, 0,
64037
64038 4,
64039 OPC_CheckPatternPredicate0,
64040 OPC_CompleteMatch, 1, 0,
64041
64042 0,
64043 12, MVT::v2f64,
64044 OPC_Scope, 4,
64045 OPC_CheckPatternPredicate1,
64046 OPC_CompleteMatch, 1, 0,
64047
64048 4,
64049 OPC_CheckPatternPredicate0,
64050 OPC_CompleteMatch, 1, 0,
64051
64052 0,
64053 0,
64054 108,
64055 OPC_CheckChild0Type, MVT::v2i64,
64056 OPC_SwitchType , 12, MVT::v16i8,
64057 OPC_Scope, 4,
64058 OPC_CheckPatternPredicate1,
64059 OPC_CompleteMatch, 1, 0,
64060
64061 4,
64062 OPC_CheckPatternPredicate0,
64063 OPC_CompleteMatch, 1, 0,
64064
64065 0,
64066 12, MVT::v8i16,
64067 OPC_Scope, 4,
64068 OPC_CheckPatternPredicate1,
64069 OPC_CompleteMatch, 1, 0,
64070
64071 4,
64072 OPC_CheckPatternPredicate0,
64073 OPC_CompleteMatch, 1, 0,
64074
64075 0,
64076 12, MVT::v4i32,
64077 OPC_Scope, 4,
64078 OPC_CheckPatternPredicate1,
64079 OPC_CompleteMatch, 1, 0,
64080
64081 4,
64082 OPC_CheckPatternPredicate0,
64083 OPC_CompleteMatch, 1, 0,
64084
64085 0,
64086 12, MVT::v2i64,
64087 OPC_Scope, 4,
64088 OPC_CheckPatternPredicate1,
64089 OPC_CompleteMatch, 1, 0,
64090
64091 4,
64092 OPC_CheckPatternPredicate0,
64093 OPC_CompleteMatch, 1, 0,
64094
64095 0,
64096 12, MVT::v8f16,
64097 OPC_Scope, 4,
64098 OPC_CheckPatternPredicate1,
64099 OPC_CompleteMatch, 1, 0,
64100
64101 4,
64102 OPC_CheckPatternPredicate0,
64103 OPC_CompleteMatch, 1, 0,
64104
64105 0,
64106 4, MVT::v8bf16,
64107 OPC_CheckPatternPredicate1,
64108 OPC_CompleteMatch, 1, 0,
64109
64110 12, MVT::v4f32,
64111 OPC_Scope, 4,
64112 OPC_CheckPatternPredicate1,
64113 OPC_CompleteMatch, 1, 0,
64114
64115 4,
64116 OPC_CheckPatternPredicate0,
64117 OPC_CompleteMatch, 1, 0,
64118
64119 0,
64120 12, MVT::v2f64,
64121 OPC_Scope, 4,
64122 OPC_CheckPatternPredicate1,
64123 OPC_CompleteMatch, 1, 0,
64124
64125 4,
64126 OPC_CheckPatternPredicate0,
64127 OPC_CompleteMatch, 1, 0,
64128
64129 0,
64130 0,
64131 108,
64132 OPC_CheckChild0Type, MVT::v2f64,
64133 OPC_SwitchType , 12, MVT::v16i8,
64134 OPC_Scope, 4,
64135 OPC_CheckPatternPredicate1,
64136 OPC_CompleteMatch, 1, 0,
64137
64138 4,
64139 OPC_CheckPatternPredicate0,
64140 OPC_CompleteMatch, 1, 0,
64141
64142 0,
64143 12, MVT::v8i16,
64144 OPC_Scope, 4,
64145 OPC_CheckPatternPredicate1,
64146 OPC_CompleteMatch, 1, 0,
64147
64148 4,
64149 OPC_CheckPatternPredicate0,
64150 OPC_CompleteMatch, 1, 0,
64151
64152 0,
64153 12, MVT::v4i32,
64154 OPC_Scope, 4,
64155 OPC_CheckPatternPredicate1,
64156 OPC_CompleteMatch, 1, 0,
64157
64158 4,
64159 OPC_CheckPatternPredicate0,
64160 OPC_CompleteMatch, 1, 0,
64161
64162 0,
64163 12, MVT::v2i64,
64164 OPC_Scope, 4,
64165 OPC_CheckPatternPredicate1,
64166 OPC_CompleteMatch, 1, 0,
64167
64168 4,
64169 OPC_CheckPatternPredicate0,
64170 OPC_CompleteMatch, 1, 0,
64171
64172 0,
64173 12, MVT::v8f16,
64174 OPC_Scope, 4,
64175 OPC_CheckPatternPredicate1,
64176 OPC_CompleteMatch, 1, 0,
64177
64178 4,
64179 OPC_CheckPatternPredicate0,
64180 OPC_CompleteMatch, 1, 0,
64181
64182 0,
64183 4, MVT::v8bf16,
64184 OPC_CheckPatternPredicate1,
64185 OPC_CompleteMatch, 1, 0,
64186
64187 12, MVT::v4f32,
64188 OPC_Scope, 4,
64189 OPC_CheckPatternPredicate1,
64190 OPC_CompleteMatch, 1, 0,
64191
64192 4,
64193 OPC_CheckPatternPredicate0,
64194 OPC_CompleteMatch, 1, 0,
64195
64196 0,
64197 12, MVT::v2f64,
64198 OPC_Scope, 4,
64199 OPC_CheckPatternPredicate1,
64200 OPC_CompleteMatch, 1, 0,
64201
64202 4,
64203 OPC_CheckPatternPredicate0,
64204 OPC_CompleteMatch, 1, 0,
64205
64206 0,
64207 0,
64208 0,
64209 55, TARGET_VAL(ISD::FDIV),
64210 OPC_RecordChild0,
64211 OPC_RecordChild1,
64212 OPC_SwitchType , 15, MVT::f64,
64213 OPC_CheckPatternPredicate, 18,
64214 OPC_EmitInteger32, 28,
64215 OPC_EmitRegisterI32, 0 ,
64216 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDIVD),
64217 MVT::f64, 4, 0, 1, 2, 3,
64218 15, MVT::f32,
64219 OPC_CheckPatternPredicate, 24,
64220 OPC_EmitInteger32, 28,
64221 OPC_EmitRegisterI32, 0 ,
64222 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDIVS),
64223 MVT::f32, 4, 0, 1, 2, 3,
64224 15, MVT::f16,
64225 OPC_CheckPatternPredicate, 13,
64226 OPC_EmitInteger32, 28,
64227 OPC_EmitRegisterI32, 0 ,
64228 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDIVH),
64229 MVT::f16, 4, 0, 1, 2, 3,
64230 0,
64231 67|128,1, TARGET_VAL(ISD::FMAXNUM),
64232 OPC_Scope, 37,
64233 OPC_RecordChild0,
64234 OPC_RecordChild1,
64235 OPC_SwitchType , 9, MVT::f16,
64236 OPC_CheckPatternPredicate, 13,
64237 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFP_VMAXNMH),
64238 MVT::f16, 2, 0, 1,
64239 9, MVT::f32,
64240 OPC_CheckPatternPredicate, 25,
64241 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFP_VMAXNMS),
64242 MVT::f32, 2, 0, 1,
64243 9, MVT::f64,
64244 OPC_CheckPatternPredicate, 22,
64245 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFP_VMAXNMD),
64246 MVT::f64, 2, 0, 1,
64247 0,
64248 51,
64249 OPC_MoveChild0,
64250 OPC_CheckOpcode, TARGET_VAL(ISD::FABS),
64251 OPC_RecordChild0,
64252 OPC_MoveSibling1,
64253 OPC_CheckOpcode, TARGET_VAL(ISD::FABS),
64254 OPC_RecordChild0,
64255 OPC_MoveParent,
64256 OPC_SwitchType , 17, MVT::v4f32,
64257 OPC_CheckPatternPredicate0,
64258 OPC_EmitInteger32, 0,
64259 OPC_EmitRegisterI32, 0 ,
64260 OPC_EmitRegisterI32, 0 ,
64261 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXNMAf32),
64262 MVT::v4f32, 5, 0, 1, 2, 3, 4,
64263 17, MVT::v8f16,
64264 OPC_CheckPatternPredicate0,
64265 OPC_EmitInteger32, 0,
64266 OPC_EmitRegisterI32, 0 ,
64267 OPC_EmitRegisterI32, 0 ,
64268 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXNMAf16),
64269 MVT::v8f16, 5, 0, 1, 2, 3, 4,
64270 0,
64271 102,
64272 OPC_RecordChild0,
64273 OPC_RecordChild1,
64274 OPC_SwitchType , 9, MVT::v2f32,
64275 OPC_CheckPatternPredicate, 71,
64276 OPC_MorphNodeTo1None, TARGET_VAL(ARM::NEON_VMAXNMNDf),
64277 MVT::v2f32, 2, 0, 1,
64278 36, MVT::v4f32,
64279 OPC_Scope, 9,
64280 OPC_CheckPatternPredicate, 71,
64281 OPC_MorphNodeTo1None, TARGET_VAL(ARM::NEON_VMAXNMNQf),
64282 MVT::v4f32, 2, 0, 1,
64283 23,
64284 OPC_CheckPatternPredicate2,
64285 OPC_EmitInteger32, 0,
64286 OPC_EmitRegisterI32, 0 ,
64287 OPC_EmitRegisterI32, 0 ,
64288 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64289 MVT::v4i32, 0,
64290 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXNMf32),
64291 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
64292 0,
64293 9, MVT::v4f16,
64294 OPC_CheckPatternPredicate, 72,
64295 OPC_MorphNodeTo1None, TARGET_VAL(ARM::NEON_VMAXNMNDh),
64296 MVT::v4f16, 2, 0, 1,
64297 36, MVT::v8f16,
64298 OPC_Scope, 9,
64299 OPC_CheckPatternPredicate, 72,
64300 OPC_MorphNodeTo1None, TARGET_VAL(ARM::NEON_VMAXNMNQh),
64301 MVT::v8f16, 2, 0, 1,
64302 23,
64303 OPC_CheckPatternPredicate2,
64304 OPC_EmitInteger32, 0,
64305 OPC_EmitRegisterI32, 0 ,
64306 OPC_EmitRegisterI32, 0 ,
64307 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64308 MVT::v4i32, 0,
64309 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXNMf16),
64310 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
64311 0,
64312 0,
64313 0,
64314 67|128,1, TARGET_VAL(ISD::FMINNUM),
64315 OPC_Scope, 37,
64316 OPC_RecordChild0,
64317 OPC_RecordChild1,
64318 OPC_SwitchType , 9, MVT::f16,
64319 OPC_CheckPatternPredicate, 13,
64320 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFP_VMINNMH),
64321 MVT::f16, 2, 0, 1,
64322 9, MVT::f32,
64323 OPC_CheckPatternPredicate, 25,
64324 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFP_VMINNMS),
64325 MVT::f32, 2, 0, 1,
64326 9, MVT::f64,
64327 OPC_CheckPatternPredicate, 22,
64328 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VFP_VMINNMD),
64329 MVT::f64, 2, 0, 1,
64330 0,
64331 51,
64332 OPC_MoveChild0,
64333 OPC_CheckOpcode, TARGET_VAL(ISD::FABS),
64334 OPC_RecordChild0,
64335 OPC_MoveSibling1,
64336 OPC_CheckOpcode, TARGET_VAL(ISD::FABS),
64337 OPC_RecordChild0,
64338 OPC_MoveParent,
64339 OPC_SwitchType , 17, MVT::v4f32,
64340 OPC_CheckPatternPredicate0,
64341 OPC_EmitInteger32, 0,
64342 OPC_EmitRegisterI32, 0 ,
64343 OPC_EmitRegisterI32, 0 ,
64344 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINNMAf32),
64345 MVT::v4f32, 5, 0, 1, 2, 3, 4,
64346 17, MVT::v8f16,
64347 OPC_CheckPatternPredicate0,
64348 OPC_EmitInteger32, 0,
64349 OPC_EmitRegisterI32, 0 ,
64350 OPC_EmitRegisterI32, 0 ,
64351 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINNMAf16),
64352 MVT::v8f16, 5, 0, 1, 2, 3, 4,
64353 0,
64354 102,
64355 OPC_RecordChild0,
64356 OPC_RecordChild1,
64357 OPC_SwitchType , 9, MVT::v2f32,
64358 OPC_CheckPatternPredicate, 71,
64359 OPC_MorphNodeTo1None, TARGET_VAL(ARM::NEON_VMINNMNDf),
64360 MVT::v2f32, 2, 0, 1,
64361 36, MVT::v4f32,
64362 OPC_Scope, 9,
64363 OPC_CheckPatternPredicate, 71,
64364 OPC_MorphNodeTo1None, TARGET_VAL(ARM::NEON_VMINNMNQf),
64365 MVT::v4f32, 2, 0, 1,
64366 23,
64367 OPC_CheckPatternPredicate2,
64368 OPC_EmitInteger32, 0,
64369 OPC_EmitRegisterI32, 0 ,
64370 OPC_EmitRegisterI32, 0 ,
64371 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64372 MVT::v4i32, 0,
64373 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINNMf32),
64374 MVT::v4f32, 6, 0, 1, 2, 3, 4, 5,
64375 0,
64376 9, MVT::v4f16,
64377 OPC_CheckPatternPredicate, 72,
64378 OPC_MorphNodeTo1None, TARGET_VAL(ARM::NEON_VMINNMNDh),
64379 MVT::v4f16, 2, 0, 1,
64380 36, MVT::v8f16,
64381 OPC_Scope, 9,
64382 OPC_CheckPatternPredicate, 72,
64383 OPC_MorphNodeTo1None, TARGET_VAL(ARM::NEON_VMINNMNQh),
64384 MVT::v8f16, 2, 0, 1,
64385 23,
64386 OPC_CheckPatternPredicate2,
64387 OPC_EmitInteger32, 0,
64388 OPC_EmitRegisterI32, 0 ,
64389 OPC_EmitRegisterI32, 0 ,
64390 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64391 MVT::v4i32, 0,
64392 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINNMf16),
64393 MVT::v8f16, 6, 0, 1, 2, 3, 4, 5,
64394 0,
64395 0,
64396 0,
64397 101, TARGET_VAL(ISD::FP_ROUND),
64398 OPC_RecordChild0,
64399 OPC_SwitchType , 14, MVT::f32,
64400 OPC_CheckPatternPredicate, 18,
64401 OPC_EmitInteger32, 28,
64402 OPC_EmitRegisterI32, 0 ,
64403 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTSD),
64404 MVT::f32, 3, 0, 1, 2,
64405 66, MVT::f16,
64406 OPC_Scope, 31,
64407 OPC_CheckChild0Type, MVT::f32,
64408 OPC_CheckPatternPredicate, 38,
64409 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64410 MVT::f32, 0,
64411 OPC_EmitInteger32, 28,
64412 OPC_EmitRegisterI32, 0 ,
64413 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTBSH),
64414 MVT::f32, 4, 1, 0, 2, 3,
64415 OPC_EmitStringInteger32, ARM::HPRRegClassID,
64416 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64417 MVT::f16, 2, 4, 5,
64418 31,
64419 OPC_CheckChild0Type, MVT::f64,
64420 OPC_CheckPatternPredicate, 22,
64421 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64422 MVT::f32, 0,
64423 OPC_EmitInteger32, 28,
64424 OPC_EmitRegisterI32, 0 ,
64425 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTBDH),
64426 MVT::f32, 4, 1, 0, 2, 3,
64427 OPC_EmitStringInteger32, ARM::HPRRegClassID,
64428 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64429 MVT::f16, 2, 4, 5,
64430 0,
64431 12, MVT::v4f16,
64432 OPC_EmitInteger32, 28,
64433 OPC_EmitRegisterI32, 0 ,
64434 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTf2h),
64435 MVT::v4f16, 3, 0, 1, 2,
64436 0,
64437 99, TARGET_VAL(ISD::FTRUNC),
64438 OPC_RecordChild0,
64439 OPC_SwitchType , 14, MVT::f16,
64440 OPC_CheckPatternPredicate, 13,
64441 OPC_EmitInteger32, 28,
64442 OPC_EmitRegisterI32, 0 ,
64443 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTZH),
64444 MVT::f16, 3, 0, 1, 2,
64445 14, MVT::f32,
64446 OPC_CheckPatternPredicate, 25,
64447 OPC_EmitInteger32, 28,
64448 OPC_EmitRegisterI32, 0 ,
64449 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTZS),
64450 MVT::f32, 3, 0, 1, 2,
64451 14, MVT::f64,
64452 OPC_CheckPatternPredicate, 22,
64453 OPC_EmitInteger32, 28,
64454 OPC_EmitRegisterI32, 0 ,
64455 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTZD),
64456 MVT::f64, 3, 0, 1, 2,
64457 22, MVT::v8f16,
64458 OPC_CheckPatternPredicate2,
64459 OPC_EmitInteger32, 0,
64460 OPC_EmitRegisterI32, 0 ,
64461 OPC_EmitRegisterI32, 0 ,
64462 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64463 MVT::v4i32, 0,
64464 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16Z),
64465 MVT::v8f16, 5, 0, 1, 2, 3, 4,
64466 22, MVT::v4f32,
64467 OPC_CheckPatternPredicate2,
64468 OPC_EmitInteger32, 0,
64469 OPC_EmitRegisterI32, 0 ,
64470 OPC_EmitRegisterI32, 0 ,
64471 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64472 MVT::v4i32, 0,
64473 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32Z),
64474 MVT::v4f32, 5, 0, 1, 2, 3, 4,
64475 0,
64476 51, TARGET_VAL(ISD::FNEARBYINT),
64477 OPC_RecordChild0,
64478 OPC_SwitchType , 14, MVT::f16,
64479 OPC_CheckPatternPredicate, 13,
64480 OPC_EmitInteger32, 28,
64481 OPC_EmitRegisterI32, 0 ,
64482 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTRH),
64483 MVT::f16, 3, 0, 1, 2,
64484 14, MVT::f32,
64485 OPC_CheckPatternPredicate, 25,
64486 OPC_EmitInteger32, 28,
64487 OPC_EmitRegisterI32, 0 ,
64488 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTRS),
64489 MVT::f32, 3, 0, 1, 2,
64490 14, MVT::f64,
64491 OPC_CheckPatternPredicate, 22,
64492 OPC_EmitInteger32, 28,
64493 OPC_EmitRegisterI32, 0 ,
64494 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTRD),
64495 MVT::f64, 3, 0, 1, 2,
64496 0,
64497 99, TARGET_VAL(ISD::FRINT),
64498 OPC_RecordChild0,
64499 OPC_SwitchType , 14, MVT::f16,
64500 OPC_CheckPatternPredicate, 13,
64501 OPC_EmitInteger32, 28,
64502 OPC_EmitRegisterI32, 0 ,
64503 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTXH),
64504 MVT::f16, 3, 0, 1, 2,
64505 14, MVT::f32,
64506 OPC_CheckPatternPredicate, 25,
64507 OPC_EmitInteger32, 28,
64508 OPC_EmitRegisterI32, 0 ,
64509 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTXS),
64510 MVT::f32, 3, 0, 1, 2,
64511 14, MVT::f64,
64512 OPC_CheckPatternPredicate, 22,
64513 OPC_EmitInteger32, 28,
64514 OPC_EmitRegisterI32, 0 ,
64515 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTXD),
64516 MVT::f64, 3, 0, 1, 2,
64517 22, MVT::v8f16,
64518 OPC_CheckPatternPredicate2,
64519 OPC_EmitInteger32, 0,
64520 OPC_EmitRegisterI32, 0 ,
64521 OPC_EmitRegisterI32, 0 ,
64522 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64523 MVT::v4i32, 0,
64524 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16X),
64525 MVT::v8f16, 5, 0, 1, 2, 3, 4,
64526 22, MVT::v4f32,
64527 OPC_CheckPatternPredicate2,
64528 OPC_EmitInteger32, 0,
64529 OPC_EmitRegisterI32, 0 ,
64530 OPC_EmitRegisterI32, 0 ,
64531 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64532 MVT::v4i32, 0,
64533 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32X),
64534 MVT::v4f32, 5, 0, 1, 2, 3, 4,
64535 0,
64536 81, TARGET_VAL(ISD::FROUND),
64537 OPC_RecordChild0,
64538 OPC_SwitchType , 8, MVT::f16,
64539 OPC_CheckPatternPredicate, 13,
64540 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTAH),
64541 MVT::f16, 1, 0,
64542 8, MVT::f32,
64543 OPC_CheckPatternPredicate, 25,
64544 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTAS),
64545 MVT::f32, 1, 0,
64546 8, MVT::f64,
64547 OPC_CheckPatternPredicate, 22,
64548 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTAD),
64549 MVT::f64, 1, 0,
64550 22, MVT::v8f16,
64551 OPC_CheckPatternPredicate2,
64552 OPC_EmitInteger32, 0,
64553 OPC_EmitRegisterI32, 0 ,
64554 OPC_EmitRegisterI32, 0 ,
64555 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64556 MVT::v4i32, 0,
64557 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16A),
64558 MVT::v8f16, 5, 0, 1, 2, 3, 4,
64559 22, MVT::v4f32,
64560 OPC_CheckPatternPredicate2,
64561 OPC_EmitInteger32, 0,
64562 OPC_EmitRegisterI32, 0 ,
64563 OPC_EmitRegisterI32, 0 ,
64564 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64565 MVT::v4i32, 0,
64566 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32A),
64567 MVT::v4f32, 5, 0, 1, 2, 3, 4,
64568 0,
64569 81, TARGET_VAL(ISD::FCEIL),
64570 OPC_RecordChild0,
64571 OPC_SwitchType , 8, MVT::f16,
64572 OPC_CheckPatternPredicate, 13,
64573 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTPH),
64574 MVT::f16, 1, 0,
64575 8, MVT::f32,
64576 OPC_CheckPatternPredicate, 25,
64577 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTPS),
64578 MVT::f32, 1, 0,
64579 8, MVT::f64,
64580 OPC_CheckPatternPredicate, 22,
64581 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTPD),
64582 MVT::f64, 1, 0,
64583 22, MVT::v8f16,
64584 OPC_CheckPatternPredicate2,
64585 OPC_EmitInteger32, 0,
64586 OPC_EmitRegisterI32, 0 ,
64587 OPC_EmitRegisterI32, 0 ,
64588 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64589 MVT::v4i32, 0,
64590 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16P),
64591 MVT::v8f16, 5, 0, 1, 2, 3, 4,
64592 22, MVT::v4f32,
64593 OPC_CheckPatternPredicate2,
64594 OPC_EmitInteger32, 0,
64595 OPC_EmitRegisterI32, 0 ,
64596 OPC_EmitRegisterI32, 0 ,
64597 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64598 MVT::v4i32, 0,
64599 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32P),
64600 MVT::v4f32, 5, 0, 1, 2, 3, 4,
64601 0,
64602 81, TARGET_VAL(ISD::FFLOOR),
64603 OPC_RecordChild0,
64604 OPC_SwitchType , 8, MVT::f16,
64605 OPC_CheckPatternPredicate, 13,
64606 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTMH),
64607 MVT::f16, 1, 0,
64608 8, MVT::f32,
64609 OPC_CheckPatternPredicate, 25,
64610 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTMS),
64611 MVT::f32, 1, 0,
64612 8, MVT::f64,
64613 OPC_CheckPatternPredicate, 22,
64614 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRINTMD),
64615 MVT::f64, 1, 0,
64616 22, MVT::v8f16,
64617 OPC_CheckPatternPredicate2,
64618 OPC_EmitInteger32, 0,
64619 OPC_EmitRegisterI32, 0 ,
64620 OPC_EmitRegisterI32, 0 ,
64621 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64622 MVT::v4i32, 0,
64623 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf16M),
64624 MVT::v8f16, 5, 0, 1, 2, 3, 4,
64625 22, MVT::v4f32,
64626 OPC_CheckPatternPredicate2,
64627 OPC_EmitInteger32, 0,
64628 OPC_EmitRegisterI32, 0 ,
64629 OPC_EmitRegisterI32, 0 ,
64630 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64631 MVT::v4i32, 0,
64632 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRINTf32M),
64633 MVT::v4f32, 5, 0, 1, 2, 3, 4,
64634 0,
64635 51, TARGET_VAL(ISD::FSQRT),
64636 OPC_RecordChild0,
64637 OPC_SwitchType , 14, MVT::f64,
64638 OPC_CheckPatternPredicate, 18,
64639 OPC_EmitInteger32, 28,
64640 OPC_EmitRegisterI32, 0 ,
64641 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSQRTD),
64642 MVT::f64, 3, 0, 1, 2,
64643 14, MVT::f32,
64644 OPC_CheckPatternPredicate, 24,
64645 OPC_EmitInteger32, 28,
64646 OPC_EmitRegisterI32, 0 ,
64647 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSQRTS),
64648 MVT::f32, 3, 0, 1, 2,
64649 14, MVT::f16,
64650 OPC_CheckPatternPredicate, 13,
64651 OPC_EmitInteger32, 28,
64652 OPC_EmitRegisterI32, 0 ,
64653 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSQRTH),
64654 MVT::f16, 3, 0, 1, 2,
64655 0,
64656 43, TARGET_VAL(ARMISD::VMOVSR),
64657 OPC_RecordChild0,
64658 OPC_Scope, 14,
64659 OPC_CheckPatternPredicate, 105,
64660 OPC_EmitInteger32, 28,
64661 OPC_EmitRegisterI32, 0 ,
64662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVSR),
64663 MVT::f32, 3, 0, 1, 2,
64664 24,
64665 OPC_CheckPatternPredicate, 106,
64666 OPC_EmitInteger32, 28,
64667 OPC_EmitRegisterI32, 0 ,
64668 OPC_EmitNode1None, TARGET_VAL(ARM::VMOVDRR),
64669 MVT::f64, 4, 0, 0, 1, 2,
64670 OPC_EmitStringInteger32, ARM::ssub_0,
64671 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
64672 MVT::f32, 2, 3, 4,
64673 0,
64674 17, TARGET_VAL(ARMISD::VMOVDRR),
64675 OPC_RecordChild0,
64676 OPC_RecordChild1,
64677 OPC_CheckPatternPredicate, 35,
64678 OPC_EmitInteger32, 28,
64679 OPC_EmitRegisterI32, 0 ,
64680 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVDRR),
64681 MVT::f64, 4, 0, 1, 2, 3,
64682 35, TARGET_VAL(ARMISD::VMOVhr),
64683 OPC_RecordChild0,
64684 OPC_SwitchType , 14, MVT::f16,
64685 OPC_CheckPatternPredicate, 45,
64686 OPC_EmitInteger32, 28,
64687 OPC_EmitRegisterI32, 0 ,
64688 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVHR),
64689 MVT::f16, 3, 0, 1, 2,
64690 14, MVT::bf16,
64691 OPC_CheckPatternPredicate, 45,
64692 OPC_EmitInteger32, 28,
64693 OPC_EmitRegisterI32, 0 ,
64694 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVHR),
64695 MVT::bf16, 3, 0, 1, 2,
64696 0,
64697 53, TARGET_VAL(ISD::FP16_TO_FP),
64698 OPC_RecordChild0,
64699 OPC_SwitchType , 23, MVT::f32,
64700 OPC_CheckPatternPredicate, 38,
64701 OPC_EmitStringInteger32, ARM::SPRRegClassID,
64702 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64703 MVT::f32, 2, 0, 1,
64704 OPC_EmitInteger32, 28,
64705 OPC_EmitRegisterI32, 0 ,
64706 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTBHS),
64707 MVT::f32, 3, 2, 3, 4,
64708 23, MVT::f64,
64709 OPC_CheckPatternPredicate, 22,
64710 OPC_EmitStringInteger32, ARM::SPRRegClassID,
64711 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64712 MVT::f32, 2, 0, 1,
64713 OPC_EmitInteger32, 28,
64714 OPC_EmitRegisterI32, 0 ,
64715 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCVTBHD),
64716 MVT::f64, 3, 2, 3, 4,
64717 0,
64718 107|128,1, TARGET_VAL(ISD::FMAXIMUM),
64719 OPC_RecordChild0,
64720 OPC_RecordChild1,
64721 OPC_SwitchType , 81, MVT::f16,
64722 OPC_CheckPatternPredicate, 13,
64723 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64724 MVT::v4f16, 0,
64725 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64726 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64727 MVT::v4f16, 2, 2, 3,
64728 OPC_EmitStringInteger32, ARM::ssub_0,
64729 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
64730 MVT::v4f16, 3, 4, 0, 5,
64731 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64732 MVT::v4f16, 0,
64733 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64734 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64735 MVT::v4f16, 2, 7, 8,
64736 OPC_EmitStringInteger32, ARM::ssub_0,
64737 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
64738 MVT::v4f16, 3, 9, 1, 10,
64739 OPC_EmitInteger32, 28,
64740 OPC_EmitRegisterI32, 0 ,
64741 OPC_EmitNode1None, TARGET_VAL(ARM::VMAXhd),
64742 MVT::f64, 4, 6, 11, 12, 13,
64743 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64744 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64745 MVT::v4f16, 2, 14, 15,
64746 OPC_EmitStringInteger32, ARM::ssub_0,
64747 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
64748 MVT::f16, 2, 16, 17,
64749 80, MVT::f32,
64750 OPC_CheckPatternPredicate1,
64751 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64752 MVT::v2f32, 0,
64753 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64754 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64755 MVT::v2f32, 2, 2, 3,
64756 OPC_EmitStringInteger32, ARM::ssub_0,
64757 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
64758 MVT::v2f32, 3, 4, 0, 5,
64759 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64760 MVT::v2f32, 0,
64761 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64762 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64763 MVT::v2f32, 2, 7, 8,
64764 OPC_EmitStringInteger32, ARM::ssub_0,
64765 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
64766 MVT::v2f32, 3, 9, 1, 10,
64767 OPC_EmitInteger32, 28,
64768 OPC_EmitRegisterI32, 0 ,
64769 OPC_EmitNode1None, TARGET_VAL(ARM::VMAXfd),
64770 MVT::f64, 4, 6, 11, 12, 13,
64771 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64772 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64773 MVT::v2f32, 2, 14, 15,
64774 OPC_EmitStringInteger32, ARM::ssub_0,
64775 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
64776 MVT::f32, 2, 16, 17,
64777 14, MVT::v2f32,
64778 OPC_CheckPatternPredicate1,
64779 OPC_EmitInteger32, 28,
64780 OPC_EmitRegisterI32, 0 ,
64781 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXfd),
64782 MVT::v2f32, 4, 0, 1, 2, 3,
64783 14, MVT::v4f32,
64784 OPC_CheckPatternPredicate1,
64785 OPC_EmitInteger32, 28,
64786 OPC_EmitRegisterI32, 0 ,
64787 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXfq),
64788 MVT::v4f32, 4, 0, 1, 2, 3,
64789 15, MVT::v4f16,
64790 OPC_CheckPatternPredicate, 11,
64791 OPC_EmitInteger32, 28,
64792 OPC_EmitRegisterI32, 0 ,
64793 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXhd),
64794 MVT::v4f16, 4, 0, 1, 2, 3,
64795 15, MVT::v8f16,
64796 OPC_CheckPatternPredicate, 11,
64797 OPC_EmitInteger32, 28,
64798 OPC_EmitRegisterI32, 0 ,
64799 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXhq),
64800 MVT::v8f16, 4, 0, 1, 2, 3,
64801 0,
64802 107|128,1, TARGET_VAL(ISD::FMINIMUM),
64803 OPC_RecordChild0,
64804 OPC_RecordChild1,
64805 OPC_SwitchType , 81, MVT::f16,
64806 OPC_CheckPatternPredicate, 13,
64807 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64808 MVT::v4f16, 0,
64809 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64810 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64811 MVT::v4f16, 2, 2, 3,
64812 OPC_EmitStringInteger32, ARM::ssub_0,
64813 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
64814 MVT::v4f16, 3, 4, 0, 5,
64815 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64816 MVT::v4f16, 0,
64817 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64818 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64819 MVT::v4f16, 2, 7, 8,
64820 OPC_EmitStringInteger32, ARM::ssub_0,
64821 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
64822 MVT::v4f16, 3, 9, 1, 10,
64823 OPC_EmitInteger32, 28,
64824 OPC_EmitRegisterI32, 0 ,
64825 OPC_EmitNode1None, TARGET_VAL(ARM::VMINhd),
64826 MVT::f64, 4, 6, 11, 12, 13,
64827 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64828 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64829 MVT::v4f16, 2, 14, 15,
64830 OPC_EmitStringInteger32, ARM::ssub_0,
64831 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
64832 MVT::f16, 2, 16, 17,
64833 80, MVT::f32,
64834 OPC_CheckPatternPredicate1,
64835 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64836 MVT::v2f32, 0,
64837 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64838 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64839 MVT::v2f32, 2, 2, 3,
64840 OPC_EmitStringInteger32, ARM::ssub_0,
64841 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
64842 MVT::v2f32, 3, 4, 0, 5,
64843 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64844 MVT::v2f32, 0,
64845 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64846 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64847 MVT::v2f32, 2, 7, 8,
64848 OPC_EmitStringInteger32, ARM::ssub_0,
64849 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
64850 MVT::v2f32, 3, 9, 1, 10,
64851 OPC_EmitInteger32, 28,
64852 OPC_EmitRegisterI32, 0 ,
64853 OPC_EmitNode1None, TARGET_VAL(ARM::VMINfd),
64854 MVT::f64, 4, 6, 11, 12, 13,
64855 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
64856 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
64857 MVT::v2f32, 2, 14, 15,
64858 OPC_EmitStringInteger32, ARM::ssub_0,
64859 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
64860 MVT::f32, 2, 16, 17,
64861 14, MVT::v2f32,
64862 OPC_CheckPatternPredicate1,
64863 OPC_EmitInteger32, 28,
64864 OPC_EmitRegisterI32, 0 ,
64865 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINfd),
64866 MVT::v2f32, 4, 0, 1, 2, 3,
64867 14, MVT::v4f32,
64868 OPC_CheckPatternPredicate1,
64869 OPC_EmitInteger32, 28,
64870 OPC_EmitRegisterI32, 0 ,
64871 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINfq),
64872 MVT::v4f32, 4, 0, 1, 2, 3,
64873 15, MVT::v4f16,
64874 OPC_CheckPatternPredicate, 11,
64875 OPC_EmitInteger32, 28,
64876 OPC_EmitRegisterI32, 0 ,
64877 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINhd),
64878 MVT::v4f16, 4, 0, 1, 2, 3,
64879 15, MVT::v8f16,
64880 OPC_CheckPatternPredicate, 11,
64881 OPC_EmitInteger32, 28,
64882 OPC_EmitRegisterI32, 0 ,
64883 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINhq),
64884 MVT::v8f16, 4, 0, 1, 2, 3,
64885 0,
64886 3|128,2, TARGET_VAL(ARMISD::VMOVIMM),
64887 OPC_Scope, 22,
64888 OPC_CheckChild0Integer, 0,
64889 OPC_SwitchType , 7, MVT::v2i32,
64890 OPC_CheckPatternPredicate, 109,
64891 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVD0),
64892 MVT::v2i32, 0,
64893 7, MVT::v4i32,
64894 OPC_CheckPatternPredicate, 109,
64895 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVQ0),
64896 MVT::v4i32, 0,
64897 0,
64898 104|128,1,
64899 OPC_RecordChild0,
64900 OPC_MoveChild0,
64901 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
64902 OPC_MoveParent,
64903 OPC_SwitchType , 13, MVT::v8i8,
64904 OPC_CheckPatternPredicate1,
64905 OPC_EmitInteger32, 28,
64906 OPC_EmitRegisterI32, 0 ,
64907 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVv8i8),
64908 MVT::v8i8, 3, 0, 1, 2,
64909 39, MVT::v16i8,
64910 OPC_Scope, 13,
64911 OPC_CheckPatternPredicate1,
64912 OPC_EmitInteger32, 28,
64913 OPC_EmitRegisterI32, 0 ,
64914 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVv16i8),
64915 MVT::v16i8, 3, 0, 1, 2,
64916 22,
64917 OPC_CheckPatternPredicate0,
64918 OPC_EmitInteger32, 0,
64919 OPC_EmitRegisterI32, 0 ,
64920 OPC_EmitRegisterI32, 0 ,
64921 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64922 MVT::v4i32, 0,
64923 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVimmi8),
64924 MVT::v16i8, 5, 0, 1, 2, 3, 4,
64925 0,
64926 13, MVT::v4i16,
64927 OPC_CheckPatternPredicate1,
64928 OPC_EmitInteger32, 28,
64929 OPC_EmitRegisterI32, 0 ,
64930 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVv4i16),
64931 MVT::v4i16, 3, 0, 1, 2,
64932 39, MVT::v8i16,
64933 OPC_Scope, 13,
64934 OPC_CheckPatternPredicate1,
64935 OPC_EmitInteger32, 28,
64936 OPC_EmitRegisterI32, 0 ,
64937 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVv8i16),
64938 MVT::v8i16, 3, 0, 1, 2,
64939 22,
64940 OPC_CheckPatternPredicate0,
64941 OPC_EmitInteger32, 0,
64942 OPC_EmitRegisterI32, 0 ,
64943 OPC_EmitRegisterI32, 0 ,
64944 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64945 MVT::v4i32, 0,
64946 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
64947 MVT::v8i16, 5, 0, 1, 2, 3, 4,
64948 0,
64949 13, MVT::v2i32,
64950 OPC_CheckPatternPredicate1,
64951 OPC_EmitInteger32, 28,
64952 OPC_EmitRegisterI32, 0 ,
64953 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVv2i32),
64954 MVT::v2i32, 3, 0, 1, 2,
64955 39, MVT::v4i32,
64956 OPC_Scope, 13,
64957 OPC_CheckPatternPredicate1,
64958 OPC_EmitInteger32, 28,
64959 OPC_EmitRegisterI32, 0 ,
64960 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVv4i32),
64961 MVT::v4i32, 3, 0, 1, 2,
64962 22,
64963 OPC_CheckPatternPredicate0,
64964 OPC_EmitInteger32, 0,
64965 OPC_EmitRegisterI32, 0 ,
64966 OPC_EmitRegisterI32, 0 ,
64967 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64968 MVT::v4i32, 0,
64969 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
64970 MVT::v4i32, 5, 0, 1, 2, 3, 4,
64971 0,
64972 13, MVT::v1i64,
64973 OPC_CheckPatternPredicate1,
64974 OPC_EmitInteger32, 28,
64975 OPC_EmitRegisterI32, 0 ,
64976 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVv1i64),
64977 MVT::v1i64, 3, 0, 1, 2,
64978 39, MVT::v2i64,
64979 OPC_Scope, 13,
64980 OPC_CheckPatternPredicate1,
64981 OPC_EmitInteger32, 28,
64982 OPC_EmitRegisterI32, 0 ,
64983 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVv2i64),
64984 MVT::v2i64, 3, 0, 1, 2,
64985 22,
64986 OPC_CheckPatternPredicate0,
64987 OPC_EmitInteger32, 0,
64988 OPC_EmitRegisterI32, 0 ,
64989 OPC_EmitRegisterI32, 0 ,
64990 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
64991 MVT::v4i32, 0,
64992 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVimmi64),
64993 MVT::v2i64, 5, 0, 1, 2, 3, 4,
64994 0,
64995 0,
64996 0,
64997 33|128,51, TARGET_VAL(ISD::VSELECT),
64998 OPC_Scope, 81|128,3,
64999 OPC_MoveChild0,
65000 OPC_SwitchOpcode , 126|128,1, TARGET_VAL(ARMISD::VCMPZ),
65001 OPC_RecordChild0,
65002 OPC_SwitchType , 84, MVT::v16i1,
65003 OPC_CheckChild0Type, MVT::v16i8,
65004 OPC_CheckChild1Integer, 24,
65005 OPC_CheckChild1TypeI32,
65006 OPC_MoveParent,
65007 OPC_CheckChild1Same, 0,
65008 OPC_MoveChild2,
65009 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
65010 OPC_MoveChild0,
65011 OPC_CheckOpcode, TARGET_VAL(ARMISD::VCMP),
65012 OPC_CheckChild0Same, 0,
65013 OPC_MoveChild1,
65014 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65015 OPC_CheckChild0Integer, 0|128,58,
65016 OPC_MoveParent,
65017 OPC_CheckChild2Integer, 0,
65018 OPC_CheckChild2TypeI32,
65019 OPC_CheckType, MVT::v16i1,
65020 OPC_MoveSibling1,
65021 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65022 OPC_CheckChild0Integer, 126|128,57,
65023 OPC_MoveSibling2,
65024 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
65025 OPC_MoveChild0,
65026 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65027 OPC_MoveChild0,
65028 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65029 OPC_CheckChild0Integer, 0,
65030 OPC_CheckType, MVT::v4i32,
65031 OPC_MoveParent,
65032 OPC_MoveParent,
65033 OPC_CheckChild1Same, 0,
65034 OPC_MoveParent,
65035 OPC_MoveParent,
65036 OPC_CheckType, MVT::v16i8,
65037 OPC_CheckPatternPredicate0,
65038 OPC_EmitInteger32, 0,
65039 OPC_EmitRegisterI32, 0 ,
65040 OPC_EmitRegisterI32, 0 ,
65041 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
65042 MVT::v4i32, 0,
65043 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQABSs8),
65044 MVT::v16i8, 5, 0, 1, 2, 3, 4,
65045 84, MVT::v8i1,
65046 OPC_CheckChild0Type, MVT::v8i16,
65047 OPC_CheckChild1Integer, 24,
65048 OPC_CheckChild1TypeI32,
65049 OPC_MoveParent,
65050 OPC_CheckChild1Same, 0,
65051 OPC_MoveChild2,
65052 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
65053 OPC_MoveChild0,
65054 OPC_CheckOpcode, TARGET_VAL(ARMISD::VCMP),
65055 OPC_CheckChild0Same, 0,
65056 OPC_MoveChild1,
65057 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65058 OPC_CheckChild0Integer, 0|128,42,
65059 OPC_MoveParent,
65060 OPC_CheckChild2Integer, 0,
65061 OPC_CheckChild2TypeI32,
65062 OPC_CheckType, MVT::v8i1,
65063 OPC_MoveSibling1,
65064 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMVNIMM),
65065 OPC_CheckChild0Integer, 0|128,42,
65066 OPC_MoveSibling2,
65067 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
65068 OPC_MoveChild0,
65069 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65070 OPC_MoveChild0,
65071 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65072 OPC_CheckChild0Integer, 0,
65073 OPC_CheckType, MVT::v4i32,
65074 OPC_MoveParent,
65075 OPC_MoveParent,
65076 OPC_CheckChild1Same, 0,
65077 OPC_MoveParent,
65078 OPC_MoveParent,
65079 OPC_CheckType, MVT::v8i16,
65080 OPC_CheckPatternPredicate0,
65081 OPC_EmitInteger32, 0,
65082 OPC_EmitRegisterI32, 0 ,
65083 OPC_EmitRegisterI32, 0 ,
65084 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
65085 MVT::v4i32, 0,
65086 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQABSs16),
65087 MVT::v8i16, 5, 0, 1, 2, 3, 4,
65088 77, MVT::v4i1,
65089 OPC_CheckChild0Type, MVT::v4i32,
65090 OPC_CheckChild1Integer, 24,
65091 OPC_CheckChild1TypeI32,
65092 OPC_MoveParent,
65093 OPC_CheckChild1Same, 0,
65094 OPC_MoveChild2,
65095 OPC_CheckOpcode, TARGET_VAL(ISD::VSELECT),
65096 OPC_MoveChild0,
65097 OPC_CheckOpcode, TARGET_VAL(ARMISD::VCMP),
65098 OPC_CheckChild0Same, 0,
65099 OPC_MoveChild1,
65100 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65101 OPC_CheckChild0Integer, 0|128,26,
65102 OPC_MoveParent,
65103 OPC_CheckChild2Integer, 0,
65104 OPC_CheckChild2TypeI32,
65105 OPC_CheckType, MVT::v4i1,
65106 OPC_MoveSibling1,
65107 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMVNIMM),
65108 OPC_CheckChild0Integer, 0|128,26,
65109 OPC_MoveSibling2,
65110 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
65111 OPC_MoveChild0,
65112 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65113 OPC_CheckChild0Integer, 0,
65114 OPC_MoveParent,
65115 OPC_CheckChild1Same, 0,
65116 OPC_MoveParent,
65117 OPC_MoveParent,
65118 OPC_CheckType, MVT::v4i32,
65119 OPC_CheckPatternPredicate0,
65120 OPC_EmitInteger32, 0,
65121 OPC_EmitRegisterI32, 0 ,
65122 OPC_EmitRegisterI32, 0 ,
65123 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
65124 MVT::v4i32, 0,
65125 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQABSs32),
65126 MVT::v4i32, 5, 0, 1, 2, 3, 4,
65127 0,
65128 72|128,1, TARGET_VAL(ARMISD::VCMP),
65129 OPC_RecordChild0,
65130 OPC_Scope, 67,
65131 OPC_CheckChild0Type, MVT::v16i8,
65132 OPC_MoveChild1,
65133 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65134 OPC_CheckChild0Integer, 0|128,58,
65135 OPC_MoveParent,
65136 OPC_CheckChild2Integer, 0,
65137 OPC_CheckChild2TypeI32,
65138 OPC_CheckType, MVT::v16i1,
65139 OPC_MoveSibling1,
65140 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65141 OPC_CheckChild0Integer, 126|128,57,
65142 OPC_MoveSibling2,
65143 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
65144 OPC_MoveChild0,
65145 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65146 OPC_MoveChild0,
65147 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65148 OPC_CheckChild0Integer, 0,
65149 OPC_CheckType, MVT::v4i32,
65150 OPC_MoveParent,
65151 OPC_MoveParent,
65152 OPC_CheckChild1Same, 0,
65153 OPC_MoveParent,
65154 OPC_CheckType, MVT::v16i8,
65155 OPC_CheckPatternPredicate0,
65156 OPC_EmitInteger32, 0,
65157 OPC_EmitRegisterI32, 0 ,
65158 OPC_EmitRegisterI32, 0 ,
65159 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
65160 MVT::v4i32, 0,
65161 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQNEGs8),
65162 MVT::v16i8, 5, 0, 1, 2, 3, 4,
65163 67,
65164 OPC_CheckChild0Type, MVT::v8i16,
65165 OPC_MoveChild1,
65166 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65167 OPC_CheckChild0Integer, 0|128,42,
65168 OPC_MoveParent,
65169 OPC_CheckChild2Integer, 0,
65170 OPC_CheckChild2TypeI32,
65171 OPC_CheckType, MVT::v8i1,
65172 OPC_MoveSibling1,
65173 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMVNIMM),
65174 OPC_CheckChild0Integer, 0|128,42,
65175 OPC_MoveSibling2,
65176 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
65177 OPC_MoveChild0,
65178 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65179 OPC_MoveChild0,
65180 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65181 OPC_CheckChild0Integer, 0,
65182 OPC_CheckType, MVT::v4i32,
65183 OPC_MoveParent,
65184 OPC_MoveParent,
65185 OPC_CheckChild1Same, 0,
65186 OPC_MoveParent,
65187 OPC_CheckType, MVT::v8i16,
65188 OPC_CheckPatternPredicate0,
65189 OPC_EmitInteger32, 0,
65190 OPC_EmitRegisterI32, 0 ,
65191 OPC_EmitRegisterI32, 0 ,
65192 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
65193 MVT::v4i32, 0,
65194 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQNEGs16),
65195 MVT::v8i16, 5, 0, 1, 2, 3, 4,
65196 60,
65197 OPC_CheckChild0Type, MVT::v4i32,
65198 OPC_MoveChild1,
65199 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65200 OPC_CheckChild0Integer, 0|128,26,
65201 OPC_MoveParent,
65202 OPC_CheckChild2Integer, 0,
65203 OPC_CheckChild2TypeI32,
65204 OPC_CheckType, MVT::v4i1,
65205 OPC_MoveSibling1,
65206 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMVNIMM),
65207 OPC_CheckChild0Integer, 0|128,26,
65208 OPC_MoveSibling2,
65209 OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
65210 OPC_MoveChild0,
65211 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65212 OPC_CheckChild0Integer, 0,
65213 OPC_MoveParent,
65214 OPC_CheckChild1Same, 0,
65215 OPC_MoveParent,
65216 OPC_CheckType, MVT::v4i32,
65217 OPC_CheckPatternPredicate0,
65218 OPC_EmitInteger32, 0,
65219 OPC_EmitRegisterI32, 0 ,
65220 OPC_EmitRegisterI32, 0 ,
65221 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
65222 MVT::v4i32, 0,
65223 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQNEGs32),
65224 MVT::v4i32, 5, 0, 1, 2, 3, 4,
65225 0,
65226 0,
65227 74|128,47,
65228 OPC_RecordChild0,
65229 OPC_Scope, 90|128,16,
65230 OPC_CheckChild0Type, MVT::v8i1,
65231 OPC_Scope, 32|128,12,
65232 OPC_MoveChild1,
65233 OPC_SwitchOpcode , 66|128,1, TARGET_VAL(ISD::AND),
65234 OPC_Scope, 83,
65235 OPC_RecordChild0,
65236 OPC_MoveChild1,
65237 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
65238 OPC_Scope, 37,
65239 OPC_RecordChild0,
65240 OPC_MoveChild1,
65241 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65242 OPC_MoveChild0,
65243 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65244 OPC_CheckChild0Integer, 126|128,59,
65245 OPC_CheckType, MVT::v16i8,
65246 OPC_MoveParent,
65247 OPC_MoveParent,
65248 OPC_MoveParent,
65249 OPC_MoveParent,
65250 OPC_RecordChild2,
65251 OPC_CheckType, MVT::v8i16,
65252 OPC_CheckPatternPredicate0,
65253 OPC_EmitInteger32, 2,
65254 OPC_EmitRegisterI32, 0 ,
65255 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
65256 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65257 37,
65258 OPC_MoveChild0,
65259 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65260 OPC_MoveChild0,
65261 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65262 OPC_CheckChild0Integer, 126|128,59,
65263 OPC_CheckType, MVT::v16i8,
65264 OPC_MoveParent,
65265 OPC_MoveParent,
65266 OPC_RecordChild1,
65267 OPC_MoveParent,
65268 OPC_MoveParent,
65269 OPC_RecordChild2,
65270 OPC_CheckType, MVT::v8i16,
65271 OPC_CheckPatternPredicate0,
65272 OPC_EmitInteger32, 2,
65273 OPC_EmitRegisterI32, 0 ,
65274 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
65275 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65276 0,
65277 84,
65278 OPC_MoveChild0,
65279 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
65280 OPC_Scope, 38,
65281 OPC_RecordChild0,
65282 OPC_MoveChild1,
65283 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65284 OPC_MoveChild0,
65285 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65286 OPC_CheckChild0Integer, 126|128,59,
65287 OPC_CheckType, MVT::v16i8,
65288 OPC_MoveParent,
65289 OPC_MoveParent,
65290 OPC_MoveParent,
65291 OPC_RecordChild1,
65292 OPC_MoveParent,
65293 OPC_RecordChild2,
65294 OPC_CheckType, MVT::v8i16,
65295 OPC_CheckPatternPredicate0,
65296 OPC_EmitInteger32, 2,
65297 OPC_EmitRegisterI32, 0 ,
65298 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
65299 MVT::v8i16, 6, 2, 1, 4, 0, 5, 3,
65300 38,
65301 OPC_MoveChild0,
65302 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65303 OPC_MoveChild0,
65304 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65305 OPC_CheckChild0Integer, 126|128,59,
65306 OPC_CheckType, MVT::v16i8,
65307 OPC_MoveParent,
65308 OPC_MoveParent,
65309 OPC_RecordChild1,
65310 OPC_MoveParent,
65311 OPC_RecordChild1,
65312 OPC_MoveParent,
65313 OPC_RecordChild2,
65314 OPC_CheckType, MVT::v8i16,
65315 OPC_CheckPatternPredicate0,
65316 OPC_EmitInteger32, 2,
65317 OPC_EmitRegisterI32, 0 ,
65318 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
65319 MVT::v8i16, 6, 2, 1, 4, 0, 5, 3,
65320 0,
65321 22,
65322 OPC_RecordChild0,
65323 OPC_RecordChild1,
65324 OPC_MoveParent,
65325 OPC_RecordChild2,
65326 OPC_CheckType, MVT::v8i16,
65327 OPC_CheckPatternPredicate0,
65328 OPC_EmitInteger32, 2,
65329 OPC_EmitRegisterI32, 0 ,
65330 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
65331 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65332 0,
65333 66|128,1, TARGET_VAL(ISD::OR),
65334 OPC_Scope, 83,
65335 OPC_RecordChild0,
65336 OPC_MoveChild1,
65337 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
65338 OPC_Scope, 37,
65339 OPC_RecordChild0,
65340 OPC_MoveChild1,
65341 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65342 OPC_MoveChild0,
65343 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65344 OPC_CheckChild0Integer, 126|128,59,
65345 OPC_CheckType, MVT::v16i8,
65346 OPC_MoveParent,
65347 OPC_MoveParent,
65348 OPC_MoveParent,
65349 OPC_MoveParent,
65350 OPC_RecordChild2,
65351 OPC_CheckType, MVT::v8i16,
65352 OPC_CheckPatternPredicate0,
65353 OPC_EmitInteger32, 2,
65354 OPC_EmitRegisterI32, 0 ,
65355 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
65356 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65357 37,
65358 OPC_MoveChild0,
65359 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65360 OPC_MoveChild0,
65361 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65362 OPC_CheckChild0Integer, 126|128,59,
65363 OPC_CheckType, MVT::v16i8,
65364 OPC_MoveParent,
65365 OPC_MoveParent,
65366 OPC_RecordChild1,
65367 OPC_MoveParent,
65368 OPC_MoveParent,
65369 OPC_RecordChild2,
65370 OPC_CheckType, MVT::v8i16,
65371 OPC_CheckPatternPredicate0,
65372 OPC_EmitInteger32, 2,
65373 OPC_EmitRegisterI32, 0 ,
65374 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
65375 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65376 0,
65377 84,
65378 OPC_MoveChild0,
65379 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
65380 OPC_Scope, 38,
65381 OPC_RecordChild0,
65382 OPC_MoveChild1,
65383 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65384 OPC_MoveChild0,
65385 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65386 OPC_CheckChild0Integer, 126|128,59,
65387 OPC_CheckType, MVT::v16i8,
65388 OPC_MoveParent,
65389 OPC_MoveParent,
65390 OPC_MoveParent,
65391 OPC_RecordChild1,
65392 OPC_MoveParent,
65393 OPC_RecordChild2,
65394 OPC_CheckType, MVT::v8i16,
65395 OPC_CheckPatternPredicate0,
65396 OPC_EmitInteger32, 2,
65397 OPC_EmitRegisterI32, 0 ,
65398 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
65399 MVT::v8i16, 6, 2, 1, 4, 0, 5, 3,
65400 38,
65401 OPC_MoveChild0,
65402 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
65403 OPC_MoveChild0,
65404 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
65405 OPC_CheckChild0Integer, 126|128,59,
65406 OPC_CheckType, MVT::v16i8,
65407 OPC_MoveParent,
65408 OPC_MoveParent,
65409 OPC_RecordChild1,
65410 OPC_MoveParent,
65411 OPC_RecordChild1,
65412 OPC_MoveParent,
65413 OPC_RecordChild2,
65414 OPC_CheckType, MVT::v8i16,
65415 OPC_CheckPatternPredicate0,
65416 OPC_EmitInteger32, 2,
65417 OPC_EmitRegisterI32, 0 ,
65418 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
65419 MVT::v8i16, 6, 2, 1, 4, 0, 5, 3,
65420 0,
65421 22,
65422 OPC_RecordChild0,
65423 OPC_RecordChild1,
65424 OPC_MoveParent,
65425 OPC_RecordChild2,
65426 OPC_CheckType, MVT::v8i16,
65427 OPC_CheckPatternPredicate0,
65428 OPC_EmitInteger32, 2,
65429 OPC_EmitRegisterI32, 0 ,
65430 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
65431 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65432 0,
65433 27, TARGET_VAL(ARMISD::VORRIMM),
65434 OPC_RecordChild0,
65435 OPC_RecordChild1,
65436 OPC_MoveChild1,
65437 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
65438 OPC_MoveParent,
65439 OPC_MoveParent,
65440 OPC_CheckChild2Same, 1,
65441 OPC_CheckType, MVT::v8i16,
65442 OPC_CheckPatternPredicate0,
65443 OPC_EmitInteger32, 2,
65444 OPC_EmitRegisterI32, 0 ,
65445 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORRimmi16),
65446 MVT::v8i16, 5, 1, 2, 3, 0, 4,
65447 27, TARGET_VAL(ARMISD::VBICIMM),
65448 OPC_RecordChild0,
65449 OPC_RecordChild1,
65450 OPC_MoveChild1,
65451 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
65452 OPC_MoveParent,
65453 OPC_MoveParent,
65454 OPC_CheckChild2Same, 1,
65455 OPC_CheckType, MVT::v8i16,
65456 OPC_CheckPatternPredicate0,
65457 OPC_EmitInteger32, 2,
65458 OPC_EmitRegisterI32, 0 ,
65459 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBICimmi16),
65460 MVT::v8i16, 5, 1, 2, 3, 0, 4,
65461 25, TARGET_VAL(ARMISD::VMVNIMM),
65462 OPC_RecordChild0,
65463 OPC_MoveChild0,
65464 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
65465 OPC_MoveParent,
65466 OPC_MoveParent,
65467 OPC_RecordChild2,
65468 OPC_CheckType, MVT::v8i16,
65469 OPC_CheckPatternPredicate0,
65470 OPC_EmitInteger32, 2,
65471 OPC_EmitRegisterI32, 0 ,
65472 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVNimmi16),
65473 MVT::v8i16, 5, 1, 3, 0, 4, 2,
65474 83, TARGET_VAL(ISD::ADD),
65475 OPC_Scope, 28,
65476 OPC_RecordChild0,
65477 OPC_MoveChild1,
65478 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65479 OPC_RecordChild0,
65480 OPC_CheckChild0TypeI32,
65481 OPC_MoveParent,
65482 OPC_MoveParent,
65483 OPC_RecordChild2,
65484 OPC_CheckType, MVT::v8i16,
65485 OPC_CheckPatternPredicate0,
65486 OPC_EmitInteger32, 2,
65487 OPC_EmitRegisterI32, 0 ,
65488 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i16),
65489 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65490 28,
65491 OPC_MoveChild0,
65492 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65493 OPC_RecordChild0,
65494 OPC_CheckChild0TypeI32,
65495 OPC_MoveParent,
65496 OPC_RecordChild1,
65497 OPC_MoveParent,
65498 OPC_RecordChild2,
65499 OPC_CheckType, MVT::v8i16,
65500 OPC_CheckPatternPredicate0,
65501 OPC_EmitInteger32, 2,
65502 OPC_EmitRegisterI32, 0 ,
65503 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i16),
65504 MVT::v8i16, 6, 2, 1, 4, 0, 5, 3,
65505 22,
65506 OPC_RecordChild0,
65507 OPC_RecordChild1,
65508 OPC_MoveParent,
65509 OPC_RecordChild2,
65510 OPC_CheckType, MVT::v8i16,
65511 OPC_CheckPatternPredicate0,
65512 OPC_EmitInteger32, 2,
65513 OPC_EmitRegisterI32, 0 ,
65514 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi16),
65515 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65516 0,
65517 53, TARGET_VAL(ISD::SUB),
65518 OPC_RecordChild0,
65519 OPC_Scope, 27,
65520 OPC_MoveChild1,
65521 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65522 OPC_RecordChild0,
65523 OPC_CheckChild0TypeI32,
65524 OPC_MoveParent,
65525 OPC_MoveParent,
65526 OPC_RecordChild2,
65527 OPC_CheckType, MVT::v8i16,
65528 OPC_CheckPatternPredicate0,
65529 OPC_EmitInteger32, 2,
65530 OPC_EmitRegisterI32, 0 ,
65531 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i16),
65532 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65533 21,
65534 OPC_RecordChild1,
65535 OPC_MoveParent,
65536 OPC_RecordChild2,
65537 OPC_CheckType, MVT::v8i16,
65538 OPC_CheckPatternPredicate0,
65539 OPC_EmitInteger32, 2,
65540 OPC_EmitRegisterI32, 0 ,
65541 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi16),
65542 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65543 0,
65544 83, TARGET_VAL(ISD::SADDSAT),
65545 OPC_Scope, 28,
65546 OPC_RecordChild0,
65547 OPC_MoveChild1,
65548 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65549 OPC_RecordChild0,
65550 OPC_CheckChild0TypeI32,
65551 OPC_MoveParent,
65552 OPC_MoveParent,
65553 OPC_RecordChild2,
65554 OPC_CheckType, MVT::v8i16,
65555 OPC_CheckPatternPredicate0,
65556 OPC_EmitInteger32, 2,
65557 OPC_EmitRegisterI32, 0 ,
65558 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s16),
65559 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65560 28,
65561 OPC_MoveChild0,
65562 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65563 OPC_RecordChild0,
65564 OPC_CheckChild0TypeI32,
65565 OPC_MoveParent,
65566 OPC_RecordChild1,
65567 OPC_MoveParent,
65568 OPC_RecordChild2,
65569 OPC_CheckType, MVT::v8i16,
65570 OPC_CheckPatternPredicate0,
65571 OPC_EmitInteger32, 2,
65572 OPC_EmitRegisterI32, 0 ,
65573 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s16),
65574 MVT::v8i16, 6, 2, 1, 4, 0, 5, 3,
65575 22,
65576 OPC_RecordChild0,
65577 OPC_RecordChild1,
65578 OPC_MoveParent,
65579 OPC_RecordChild2,
65580 OPC_CheckType, MVT::v8i16,
65581 OPC_CheckPatternPredicate0,
65582 OPC_EmitInteger32, 2,
65583 OPC_EmitRegisterI32, 0 ,
65584 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDs16),
65585 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65586 0,
65587 83, TARGET_VAL(ISD::UADDSAT),
65588 OPC_Scope, 28,
65589 OPC_RecordChild0,
65590 OPC_MoveChild1,
65591 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65592 OPC_RecordChild0,
65593 OPC_CheckChild0TypeI32,
65594 OPC_MoveParent,
65595 OPC_MoveParent,
65596 OPC_RecordChild2,
65597 OPC_CheckType, MVT::v8i16,
65598 OPC_CheckPatternPredicate0,
65599 OPC_EmitInteger32, 2,
65600 OPC_EmitRegisterI32, 0 ,
65601 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u16),
65602 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65603 28,
65604 OPC_MoveChild0,
65605 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65606 OPC_RecordChild0,
65607 OPC_CheckChild0TypeI32,
65608 OPC_MoveParent,
65609 OPC_RecordChild1,
65610 OPC_MoveParent,
65611 OPC_RecordChild2,
65612 OPC_CheckType, MVT::v8i16,
65613 OPC_CheckPatternPredicate0,
65614 OPC_EmitInteger32, 2,
65615 OPC_EmitRegisterI32, 0 ,
65616 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u16),
65617 MVT::v8i16, 6, 2, 1, 4, 0, 5, 3,
65618 22,
65619 OPC_RecordChild0,
65620 OPC_RecordChild1,
65621 OPC_MoveParent,
65622 OPC_RecordChild2,
65623 OPC_CheckType, MVT::v8i16,
65624 OPC_CheckPatternPredicate0,
65625 OPC_EmitInteger32, 2,
65626 OPC_EmitRegisterI32, 0 ,
65627 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDu16),
65628 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65629 0,
65630 53, TARGET_VAL(ISD::SSUBSAT),
65631 OPC_RecordChild0,
65632 OPC_Scope, 27,
65633 OPC_MoveChild1,
65634 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65635 OPC_RecordChild0,
65636 OPC_CheckChild0TypeI32,
65637 OPC_MoveParent,
65638 OPC_MoveParent,
65639 OPC_RecordChild2,
65640 OPC_CheckType, MVT::v8i16,
65641 OPC_CheckPatternPredicate0,
65642 OPC_EmitInteger32, 2,
65643 OPC_EmitRegisterI32, 0 ,
65644 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_s16),
65645 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65646 21,
65647 OPC_RecordChild1,
65648 OPC_MoveParent,
65649 OPC_RecordChild2,
65650 OPC_CheckType, MVT::v8i16,
65651 OPC_CheckPatternPredicate0,
65652 OPC_EmitInteger32, 2,
65653 OPC_EmitRegisterI32, 0 ,
65654 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBs16),
65655 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65656 0,
65657 53, TARGET_VAL(ISD::USUBSAT),
65658 OPC_RecordChild0,
65659 OPC_Scope, 27,
65660 OPC_MoveChild1,
65661 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65662 OPC_RecordChild0,
65663 OPC_CheckChild0TypeI32,
65664 OPC_MoveParent,
65665 OPC_MoveParent,
65666 OPC_RecordChild2,
65667 OPC_CheckType, MVT::v8i16,
65668 OPC_CheckPatternPredicate0,
65669 OPC_EmitInteger32, 2,
65670 OPC_EmitRegisterI32, 0 ,
65671 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_u16),
65672 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65673 21,
65674 OPC_RecordChild1,
65675 OPC_MoveParent,
65676 OPC_RecordChild2,
65677 OPC_CheckType, MVT::v8i16,
65678 OPC_CheckPatternPredicate0,
65679 OPC_EmitInteger32, 2,
65680 OPC_EmitRegisterI32, 0 ,
65681 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBu16),
65682 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65683 0,
65684 80, TARGET_VAL(ISD::AVGFLOORS),
65685 OPC_Scope, 27,
65686 OPC_RecordChild0,
65687 OPC_MoveChild1,
65688 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65689 OPC_RecordChild0,
65690 OPC_CheckChild0TypeI32,
65691 OPC_MoveParent,
65692 OPC_MoveParent,
65693 OPC_RecordChild2,
65694 OPC_CheckType, MVT::v8i16,
65695 OPC_EmitInteger32, 2,
65696 OPC_EmitRegisterI32, 0 ,
65697 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s16),
65698 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65699 27,
65700 OPC_MoveChild0,
65701 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65702 OPC_RecordChild0,
65703 OPC_CheckChild0TypeI32,
65704 OPC_MoveParent,
65705 OPC_RecordChild1,
65706 OPC_MoveParent,
65707 OPC_RecordChild2,
65708 OPC_CheckType, MVT::v8i16,
65709 OPC_EmitInteger32, 2,
65710 OPC_EmitRegisterI32, 0 ,
65711 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s16),
65712 MVT::v8i16, 6, 2, 1, 4, 0, 5, 3,
65713 21,
65714 OPC_RecordChild0,
65715 OPC_RecordChild1,
65716 OPC_MoveParent,
65717 OPC_RecordChild2,
65718 OPC_CheckType, MVT::v8i16,
65719 OPC_EmitInteger32, 2,
65720 OPC_EmitRegisterI32, 0 ,
65721 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs16),
65722 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65723 0,
65724 80, TARGET_VAL(ISD::AVGFLOORU),
65725 OPC_Scope, 27,
65726 OPC_RecordChild0,
65727 OPC_MoveChild1,
65728 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65729 OPC_RecordChild0,
65730 OPC_CheckChild0TypeI32,
65731 OPC_MoveParent,
65732 OPC_MoveParent,
65733 OPC_RecordChild2,
65734 OPC_CheckType, MVT::v8i16,
65735 OPC_EmitInteger32, 2,
65736 OPC_EmitRegisterI32, 0 ,
65737 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u16),
65738 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65739 27,
65740 OPC_MoveChild0,
65741 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65742 OPC_RecordChild0,
65743 OPC_CheckChild0TypeI32,
65744 OPC_MoveParent,
65745 OPC_RecordChild1,
65746 OPC_MoveParent,
65747 OPC_RecordChild2,
65748 OPC_CheckType, MVT::v8i16,
65749 OPC_EmitInteger32, 2,
65750 OPC_EmitRegisterI32, 0 ,
65751 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u16),
65752 MVT::v8i16, 6, 2, 1, 4, 0, 5, 3,
65753 21,
65754 OPC_RecordChild0,
65755 OPC_RecordChild1,
65756 OPC_MoveParent,
65757 OPC_RecordChild2,
65758 OPC_CheckType, MVT::v8i16,
65759 OPC_EmitInteger32, 2,
65760 OPC_EmitRegisterI32, 0 ,
65761 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu16),
65762 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65763 0,
65764 83, TARGET_VAL(ISD::MUL),
65765 OPC_Scope, 28,
65766 OPC_RecordChild0,
65767 OPC_MoveChild1,
65768 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65769 OPC_RecordChild0,
65770 OPC_CheckChild0TypeI32,
65771 OPC_MoveParent,
65772 OPC_MoveParent,
65773 OPC_RecordChild2,
65774 OPC_CheckType, MVT::v8i16,
65775 OPC_CheckPatternPredicate0,
65776 OPC_EmitInteger32, 2,
65777 OPC_EmitRegisterI32, 0 ,
65778 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i16),
65779 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65780 28,
65781 OPC_MoveChild0,
65782 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65783 OPC_RecordChild0,
65784 OPC_CheckChild0TypeI32,
65785 OPC_MoveParent,
65786 OPC_RecordChild1,
65787 OPC_MoveParent,
65788 OPC_RecordChild2,
65789 OPC_CheckType, MVT::v8i16,
65790 OPC_CheckPatternPredicate0,
65791 OPC_EmitInteger32, 2,
65792 OPC_EmitRegisterI32, 0 ,
65793 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i16),
65794 MVT::v8i16, 6, 2, 1, 4, 0, 5, 3,
65795 22,
65796 OPC_RecordChild0,
65797 OPC_RecordChild1,
65798 OPC_MoveParent,
65799 OPC_RecordChild2,
65800 OPC_CheckType, MVT::v8i16,
65801 OPC_CheckPatternPredicate0,
65802 OPC_EmitInteger32, 2,
65803 OPC_EmitRegisterI32, 0 ,
65804 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi16),
65805 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65806 0,
65807 53, TARGET_VAL(ARMISD::VQDMULH),
65808 OPC_RecordChild0,
65809 OPC_Scope, 27,
65810 OPC_MoveChild1,
65811 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
65812 OPC_RecordChild0,
65813 OPC_CheckChild0TypeI32,
65814 OPC_MoveParent,
65815 OPC_MoveParent,
65816 OPC_RecordChild2,
65817 OPC_CheckType, MVT::v8i16,
65818 OPC_CheckPatternPredicate0,
65819 OPC_EmitInteger32, 2,
65820 OPC_EmitRegisterI32, 0 ,
65821 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s16),
65822 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65823 21,
65824 OPC_RecordChild1,
65825 OPC_MoveParent,
65826 OPC_RecordChild2,
65827 OPC_CheckType, MVT::v8i16,
65828 OPC_CheckPatternPredicate0,
65829 OPC_EmitInteger32, 2,
65830 OPC_EmitRegisterI32, 0 ,
65831 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi16),
65832 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65833 0,
65834 22, TARGET_VAL(ISD::SMIN),
65835 OPC_RecordChild0,
65836 OPC_RecordChild1,
65837 OPC_MoveParent,
65838 OPC_RecordChild2,
65839 OPC_CheckType, MVT::v8i16,
65840 OPC_CheckPatternPredicate0,
65841 OPC_EmitInteger32, 2,
65842 OPC_EmitRegisterI32, 0 ,
65843 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINs16),
65844 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65845 22, TARGET_VAL(ISD::UMIN),
65846 OPC_RecordChild0,
65847 OPC_RecordChild1,
65848 OPC_MoveParent,
65849 OPC_RecordChild2,
65850 OPC_CheckType, MVT::v8i16,
65851 OPC_CheckPatternPredicate0,
65852 OPC_EmitInteger32, 2,
65853 OPC_EmitRegisterI32, 0 ,
65854 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINu16),
65855 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65856 22, TARGET_VAL(ISD::SMAX),
65857 OPC_RecordChild0,
65858 OPC_RecordChild1,
65859 OPC_MoveParent,
65860 OPC_RecordChild2,
65861 OPC_CheckType, MVT::v8i16,
65862 OPC_CheckPatternPredicate0,
65863 OPC_EmitInteger32, 2,
65864 OPC_EmitRegisterI32, 0 ,
65865 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXs16),
65866 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65867 22, TARGET_VAL(ISD::UMAX),
65868 OPC_RecordChild0,
65869 OPC_RecordChild1,
65870 OPC_MoveParent,
65871 OPC_RecordChild2,
65872 OPC_CheckType, MVT::v8i16,
65873 OPC_CheckPatternPredicate0,
65874 OPC_EmitInteger32, 2,
65875 OPC_EmitRegisterI32, 0 ,
65876 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXu16),
65877 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65878 22, TARGET_VAL(ISD::XOR),
65879 OPC_RecordChild0,
65880 OPC_RecordChild1,
65881 OPC_MoveParent,
65882 OPC_RecordChild2,
65883 OPC_CheckType, MVT::v8i16,
65884 OPC_CheckPatternPredicate0,
65885 OPC_EmitInteger32, 2,
65886 OPC_EmitRegisterI32, 0 ,
65887 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
65888 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65889 22, TARGET_VAL(ISD::ABDS),
65890 OPC_RecordChild0,
65891 OPC_RecordChild1,
65892 OPC_MoveParent,
65893 OPC_RecordChild2,
65894 OPC_CheckType, MVT::v8i16,
65895 OPC_CheckPatternPredicate0,
65896 OPC_EmitInteger32, 2,
65897 OPC_EmitRegisterI32, 0 ,
65898 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs16),
65899 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65900 22, TARGET_VAL(ISD::ABDU),
65901 OPC_RecordChild0,
65902 OPC_RecordChild1,
65903 OPC_MoveParent,
65904 OPC_RecordChild2,
65905 OPC_CheckType, MVT::v8i16,
65906 OPC_CheckPatternPredicate0,
65907 OPC_EmitInteger32, 2,
65908 OPC_EmitRegisterI32, 0 ,
65909 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu16),
65910 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65911 21, TARGET_VAL(ISD::AVGCEILS),
65912 OPC_RecordChild0,
65913 OPC_RecordChild1,
65914 OPC_MoveParent,
65915 OPC_RecordChild2,
65916 OPC_CheckType, MVT::v8i16,
65917 OPC_EmitInteger32, 2,
65918 OPC_EmitRegisterI32, 0 ,
65919 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs16),
65920 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65921 21, TARGET_VAL(ISD::AVGCEILU),
65922 OPC_RecordChild0,
65923 OPC_RecordChild1,
65924 OPC_MoveParent,
65925 OPC_RecordChild2,
65926 OPC_CheckType, MVT::v8i16,
65927 OPC_EmitInteger32, 2,
65928 OPC_EmitRegisterI32, 0 ,
65929 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu16),
65930 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65931 21, TARGET_VAL(ARMISD::VDUP),
65932 OPC_RecordChild0,
65933 OPC_CheckChild0TypeI32,
65934 OPC_MoveParent,
65935 OPC_RecordChild2,
65936 OPC_CheckType, MVT::v8i16,
65937 OPC_CheckPatternPredicate0,
65938 OPC_EmitInteger32, 2,
65939 OPC_EmitRegisterI32, 0 ,
65940 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VDUP16),
65941 MVT::v8i16, 5, 1, 3, 0, 4, 2,
65942 22, TARGET_VAL(ARMISD::VSHLu),
65943 OPC_RecordChild0,
65944 OPC_RecordChild1,
65945 OPC_MoveParent,
65946 OPC_RecordChild2,
65947 OPC_CheckType, MVT::v8i16,
65948 OPC_CheckPatternPredicate0,
65949 OPC_EmitInteger32, 2,
65950 OPC_EmitRegisterI32, 0 ,
65951 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu16),
65952 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65953 22, TARGET_VAL(ARMISD::VSHLs),
65954 OPC_RecordChild0,
65955 OPC_RecordChild1,
65956 OPC_MoveParent,
65957 OPC_RecordChild2,
65958 OPC_CheckType, MVT::v8i16,
65959 OPC_CheckPatternPredicate0,
65960 OPC_EmitInteger32, 2,
65961 OPC_EmitRegisterI32, 0 ,
65962 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs16),
65963 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65964 22, TARGET_VAL(ISD::MULHS),
65965 OPC_RecordChild0,
65966 OPC_RecordChild1,
65967 OPC_MoveParent,
65968 OPC_RecordChild2,
65969 OPC_CheckType, MVT::v8i16,
65970 OPC_CheckPatternPredicate0,
65971 OPC_EmitInteger32, 2,
65972 OPC_EmitRegisterI32, 0 ,
65973 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs16),
65974 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65975 22, TARGET_VAL(ISD::MULHU),
65976 OPC_RecordChild0,
65977 OPC_RecordChild1,
65978 OPC_MoveParent,
65979 OPC_RecordChild2,
65980 OPC_CheckType, MVT::v8i16,
65981 OPC_CheckPatternPredicate0,
65982 OPC_EmitInteger32, 2,
65983 OPC_EmitRegisterI32, 0 ,
65984 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu16),
65985 MVT::v8i16, 6, 1, 2, 4, 0, 5, 3,
65986 0,
65987 19,
65988 OPC_RecordChild1,
65989 OPC_RecordChild2,
65990 OPC_CheckType, MVT::v8i16,
65991 OPC_CheckPatternPredicate0,
65992 OPC_EmitInteger32, 0,
65993 OPC_EmitRegisterI32, 0 ,
65994 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
65995 MVT::v8i16, 5, 1, 2, 3, 0, 4,
65996 10|128,4,
65997 OPC_MoveChild1,
65998 OPC_SwitchOpcode , 85|128,1, TARGET_VAL(ISD::FMA),
65999 OPC_Scope, 60,
66000 OPC_MoveChild0,
66001 OPC_SwitchOpcode , 25, TARGET_VAL(ISD::FNEG),
66002 OPC_RecordChild0,
66003 OPC_MoveParent,
66004 OPC_RecordChild1,
66005 OPC_RecordChild2,
66006 OPC_MoveParent,
66007 OPC_CheckChild2Same, 3,
66008 OPC_CheckType, MVT::v8f16,
66009 OPC_CheckPatternPredicate2,
66010 OPC_EmitInteger32, 2,
66011 OPC_EmitRegisterI32, 0 ,
66012 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf16),
66013 MVT::v8f16, 6, 3, 1, 2, 4, 0, 5,
66014 26, TARGET_VAL(ARMISD::VDUP),
66015 OPC_RecordChild0,
66016 OPC_CheckChild0TypeI32,
66017 OPC_MoveParent,
66018 OPC_RecordChild1,
66019 OPC_RecordChild2,
66020 OPC_MoveParent,
66021 OPC_CheckChild2Same, 3,
66022 OPC_CheckType, MVT::v8f16,
66023 OPC_CheckPatternPredicate2,
66024 OPC_EmitInteger32, 2,
66025 OPC_EmitRegisterI32, 0 ,
66026 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f16),
66027 MVT::v8f16, 6, 3, 2, 1, 4, 0, 5,
66028 0,
66029 20|128,1,
66030 OPC_RecordChild0,
66031 OPC_Scope, 29,
66032 OPC_MoveChild1,
66033 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66034 OPC_RecordChild0,
66035 OPC_CheckChild0TypeI32,
66036 OPC_MoveParent,
66037 OPC_RecordChild2,
66038 OPC_MoveParent,
66039 OPC_CheckChild2Same, 3,
66040 OPC_CheckType, MVT::v8f16,
66041 OPC_CheckPatternPredicate2,
66042 OPC_EmitInteger32, 2,
66043 OPC_EmitRegisterI32, 0 ,
66044 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f16),
66045 MVT::v8f16, 6, 3, 1, 2, 4, 0, 5,
66046 29,
66047 OPC_RecordChild1,
66048 OPC_MoveChild2,
66049 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66050 OPC_RecordChild0,
66051 OPC_CheckChild0TypeI32,
66052 OPC_MoveParent,
66053 OPC_MoveParent,
66054 OPC_CheckChild2Same, 1,
66055 OPC_CheckType, MVT::v8f16,
66056 OPC_CheckPatternPredicate2,
66057 OPC_EmitInteger32, 2,
66058 OPC_EmitRegisterI32, 0 ,
66059 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_Sf16),
66060 MVT::v8f16, 6, 1, 2, 3, 4, 0, 5,
66061 28,
66062 OPC_MoveChild1,
66063 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
66064 OPC_RecordChild0,
66065 OPC_MoveParent,
66066 OPC_RecordChild2,
66067 OPC_MoveParent,
66068 OPC_CheckChild2Same, 3,
66069 OPC_CheckType, MVT::v8f16,
66070 OPC_CheckPatternPredicate2,
66071 OPC_EmitInteger32, 2,
66072 OPC_EmitRegisterI32, 0 ,
66073 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf16),
66074 MVT::v8f16, 6, 3, 2, 1, 4, 0, 5,
66075 55,
66076 OPC_RecordChild1,
66077 OPC_Scope, 28,
66078 OPC_MoveChild2,
66079 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66080 OPC_RecordChild0,
66081 OPC_CheckChild0TypeI32,
66082 OPC_MoveParent,
66083 OPC_MoveParent,
66084 OPC_CheckChild2Same, 2,
66085 OPC_CheckType, MVT::v8f16,
66086 OPC_CheckPatternPredicate2,
66087 OPC_EmitInteger32, 2,
66088 OPC_EmitRegisterI32, 0 ,
66089 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_Sf16),
66090 MVT::v8f16, 6, 2, 1, 3, 4, 0, 5,
66091 22,
66092 OPC_RecordChild2,
66093 OPC_MoveParent,
66094 OPC_CheckChild2Same, 3,
66095 OPC_CheckType, MVT::v8f16,
66096 OPC_CheckPatternPredicate2,
66097 OPC_EmitInteger32, 2,
66098 OPC_EmitRegisterI32, 0 ,
66099 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMAf16),
66100 MVT::v8f16, 6, 3, 1, 2, 4, 0, 5,
66101 0,
66102 0,
66103 0,
66104 83, TARGET_VAL(ISD::FADD),
66105 OPC_Scope, 28,
66106 OPC_RecordChild0,
66107 OPC_MoveChild1,
66108 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66109 OPC_RecordChild0,
66110 OPC_CheckChild0TypeI32,
66111 OPC_MoveParent,
66112 OPC_MoveParent,
66113 OPC_RecordChild2,
66114 OPC_CheckType, MVT::v8f16,
66115 OPC_CheckPatternPredicate2,
66116 OPC_EmitInteger32, 2,
66117 OPC_EmitRegisterI32, 0 ,
66118 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f16),
66119 MVT::v8f16, 6, 1, 2, 4, 0, 5, 3,
66120 28,
66121 OPC_MoveChild0,
66122 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66123 OPC_RecordChild0,
66124 OPC_CheckChild0TypeI32,
66125 OPC_MoveParent,
66126 OPC_RecordChild1,
66127 OPC_MoveParent,
66128 OPC_RecordChild2,
66129 OPC_CheckType, MVT::v8f16,
66130 OPC_CheckPatternPredicate2,
66131 OPC_EmitInteger32, 2,
66132 OPC_EmitRegisterI32, 0 ,
66133 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f16),
66134 MVT::v8f16, 6, 2, 1, 4, 0, 5, 3,
66135 22,
66136 OPC_RecordChild0,
66137 OPC_RecordChild1,
66138 OPC_MoveParent,
66139 OPC_RecordChild2,
66140 OPC_CheckType, MVT::v8f16,
66141 OPC_CheckPatternPredicate2,
66142 OPC_EmitInteger32, 2,
66143 OPC_EmitRegisterI32, 0 ,
66144 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDf16),
66145 MVT::v8f16, 6, 1, 2, 4, 0, 5, 3,
66146 0,
66147 53, TARGET_VAL(ISD::FSUB),
66148 OPC_RecordChild0,
66149 OPC_Scope, 27,
66150 OPC_MoveChild1,
66151 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66152 OPC_RecordChild0,
66153 OPC_CheckChild0TypeI32,
66154 OPC_MoveParent,
66155 OPC_MoveParent,
66156 OPC_RecordChild2,
66157 OPC_CheckType, MVT::v8f16,
66158 OPC_CheckPatternPredicate2,
66159 OPC_EmitInteger32, 2,
66160 OPC_EmitRegisterI32, 0 ,
66161 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_f16),
66162 MVT::v8f16, 6, 1, 2, 4, 0, 5, 3,
66163 21,
66164 OPC_RecordChild1,
66165 OPC_MoveParent,
66166 OPC_RecordChild2,
66167 OPC_CheckType, MVT::v8f16,
66168 OPC_CheckPatternPredicate2,
66169 OPC_EmitInteger32, 2,
66170 OPC_EmitRegisterI32, 0 ,
66171 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBf16),
66172 MVT::v8f16, 6, 1, 2, 4, 0, 5, 3,
66173 0,
66174 83, TARGET_VAL(ISD::FMUL),
66175 OPC_Scope, 28,
66176 OPC_RecordChild0,
66177 OPC_MoveChild1,
66178 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66179 OPC_RecordChild0,
66180 OPC_CheckChild0TypeI32,
66181 OPC_MoveParent,
66182 OPC_MoveParent,
66183 OPC_RecordChild2,
66184 OPC_CheckType, MVT::v8f16,
66185 OPC_CheckPatternPredicate2,
66186 OPC_EmitInteger32, 2,
66187 OPC_EmitRegisterI32, 0 ,
66188 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f16),
66189 MVT::v8f16, 6, 1, 2, 4, 0, 5, 3,
66190 28,
66191 OPC_MoveChild0,
66192 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66193 OPC_RecordChild0,
66194 OPC_CheckChild0TypeI32,
66195 OPC_MoveParent,
66196 OPC_RecordChild1,
66197 OPC_MoveParent,
66198 OPC_RecordChild2,
66199 OPC_CheckType, MVT::v8f16,
66200 OPC_CheckPatternPredicate2,
66201 OPC_EmitInteger32, 2,
66202 OPC_EmitRegisterI32, 0 ,
66203 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f16),
66204 MVT::v8f16, 6, 2, 1, 4, 0, 5, 3,
66205 22,
66206 OPC_RecordChild0,
66207 OPC_RecordChild1,
66208 OPC_MoveParent,
66209 OPC_RecordChild2,
66210 OPC_CheckType, MVT::v8f16,
66211 OPC_CheckPatternPredicate2,
66212 OPC_EmitInteger32, 2,
66213 OPC_EmitRegisterI32, 0 ,
66214 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULf16),
66215 MVT::v8f16, 6, 1, 2, 4, 0, 5, 3,
66216 0,
66217 22, TARGET_VAL(ISD::FMAXNUM),
66218 OPC_RecordChild0,
66219 OPC_RecordChild1,
66220 OPC_MoveParent,
66221 OPC_RecordChild2,
66222 OPC_CheckType, MVT::v8f16,
66223 OPC_CheckPatternPredicate2,
66224 OPC_EmitInteger32, 2,
66225 OPC_EmitRegisterI32, 0 ,
66226 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXNMf16),
66227 MVT::v8f16, 6, 1, 2, 4, 0, 5, 3,
66228 22, TARGET_VAL(ISD::FMINNUM),
66229 OPC_RecordChild0,
66230 OPC_RecordChild1,
66231 OPC_MoveParent,
66232 OPC_RecordChild2,
66233 OPC_CheckType, MVT::v8f16,
66234 OPC_CheckPatternPredicate2,
66235 OPC_EmitInteger32, 2,
66236 OPC_EmitRegisterI32, 0 ,
66237 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINNMf16),
66238 MVT::v8f16, 6, 1, 2, 4, 0, 5, 3,
66239 21, TARGET_VAL(ARMISD::VDUP),
66240 OPC_RecordChild0,
66241 OPC_CheckChild0TypeI32,
66242 OPC_MoveParent,
66243 OPC_RecordChild2,
66244 OPC_CheckType, MVT::v8f16,
66245 OPC_CheckPatternPredicate0,
66246 OPC_EmitInteger32, 2,
66247 OPC_EmitRegisterI32, 0 ,
66248 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VDUP16),
66249 MVT::v8f16, 5, 1, 3, 0, 4, 2,
66250 0,
66251 19,
66252 OPC_RecordChild1,
66253 OPC_RecordChild2,
66254 OPC_CheckType, MVT::v8f16,
66255 OPC_CheckPatternPredicate0,
66256 OPC_EmitInteger32, 0,
66257 OPC_EmitRegisterI32, 0 ,
66258 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
66259 MVT::v8f16, 5, 1, 2, 3, 0, 4,
66260 0,
66261 90|128,16,
66262 OPC_CheckChild0Type, MVT::v4i1,
66263 OPC_Scope, 32|128,12,
66264 OPC_MoveChild1,
66265 OPC_SwitchOpcode , 66|128,1, TARGET_VAL(ISD::AND),
66266 OPC_Scope, 83,
66267 OPC_RecordChild0,
66268 OPC_MoveChild1,
66269 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
66270 OPC_Scope, 37,
66271 OPC_RecordChild0,
66272 OPC_MoveChild1,
66273 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
66274 OPC_MoveChild0,
66275 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
66276 OPC_CheckChild0Integer, 126|128,59,
66277 OPC_CheckType, MVT::v16i8,
66278 OPC_MoveParent,
66279 OPC_MoveParent,
66280 OPC_MoveParent,
66281 OPC_MoveParent,
66282 OPC_RecordChild2,
66283 OPC_CheckType, MVT::v4i32,
66284 OPC_CheckPatternPredicate0,
66285 OPC_EmitInteger32, 2,
66286 OPC_EmitRegisterI32, 0 ,
66287 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
66288 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66289 37,
66290 OPC_MoveChild0,
66291 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
66292 OPC_MoveChild0,
66293 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
66294 OPC_CheckChild0Integer, 126|128,59,
66295 OPC_CheckType, MVT::v16i8,
66296 OPC_MoveParent,
66297 OPC_MoveParent,
66298 OPC_RecordChild1,
66299 OPC_MoveParent,
66300 OPC_MoveParent,
66301 OPC_RecordChild2,
66302 OPC_CheckType, MVT::v4i32,
66303 OPC_CheckPatternPredicate0,
66304 OPC_EmitInteger32, 2,
66305 OPC_EmitRegisterI32, 0 ,
66306 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
66307 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66308 0,
66309 84,
66310 OPC_MoveChild0,
66311 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
66312 OPC_Scope, 38,
66313 OPC_RecordChild0,
66314 OPC_MoveChild1,
66315 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
66316 OPC_MoveChild0,
66317 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
66318 OPC_CheckChild0Integer, 126|128,59,
66319 OPC_CheckType, MVT::v16i8,
66320 OPC_MoveParent,
66321 OPC_MoveParent,
66322 OPC_MoveParent,
66323 OPC_RecordChild1,
66324 OPC_MoveParent,
66325 OPC_RecordChild2,
66326 OPC_CheckType, MVT::v4i32,
66327 OPC_CheckPatternPredicate0,
66328 OPC_EmitInteger32, 2,
66329 OPC_EmitRegisterI32, 0 ,
66330 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
66331 MVT::v4i32, 6, 2, 1, 4, 0, 5, 3,
66332 38,
66333 OPC_MoveChild0,
66334 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
66335 OPC_MoveChild0,
66336 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
66337 OPC_CheckChild0Integer, 126|128,59,
66338 OPC_CheckType, MVT::v16i8,
66339 OPC_MoveParent,
66340 OPC_MoveParent,
66341 OPC_RecordChild1,
66342 OPC_MoveParent,
66343 OPC_RecordChild1,
66344 OPC_MoveParent,
66345 OPC_RecordChild2,
66346 OPC_CheckType, MVT::v4i32,
66347 OPC_CheckPatternPredicate0,
66348 OPC_EmitInteger32, 2,
66349 OPC_EmitRegisterI32, 0 ,
66350 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
66351 MVT::v4i32, 6, 2, 1, 4, 0, 5, 3,
66352 0,
66353 22,
66354 OPC_RecordChild0,
66355 OPC_RecordChild1,
66356 OPC_MoveParent,
66357 OPC_RecordChild2,
66358 OPC_CheckType, MVT::v4i32,
66359 OPC_CheckPatternPredicate0,
66360 OPC_EmitInteger32, 2,
66361 OPC_EmitRegisterI32, 0 ,
66362 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
66363 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66364 0,
66365 66|128,1, TARGET_VAL(ISD::OR),
66366 OPC_Scope, 83,
66367 OPC_RecordChild0,
66368 OPC_MoveChild1,
66369 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
66370 OPC_Scope, 37,
66371 OPC_RecordChild0,
66372 OPC_MoveChild1,
66373 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
66374 OPC_MoveChild0,
66375 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
66376 OPC_CheckChild0Integer, 126|128,59,
66377 OPC_CheckType, MVT::v16i8,
66378 OPC_MoveParent,
66379 OPC_MoveParent,
66380 OPC_MoveParent,
66381 OPC_MoveParent,
66382 OPC_RecordChild2,
66383 OPC_CheckType, MVT::v4i32,
66384 OPC_CheckPatternPredicate0,
66385 OPC_EmitInteger32, 2,
66386 OPC_EmitRegisterI32, 0 ,
66387 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
66388 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66389 37,
66390 OPC_MoveChild0,
66391 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
66392 OPC_MoveChild0,
66393 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
66394 OPC_CheckChild0Integer, 126|128,59,
66395 OPC_CheckType, MVT::v16i8,
66396 OPC_MoveParent,
66397 OPC_MoveParent,
66398 OPC_RecordChild1,
66399 OPC_MoveParent,
66400 OPC_MoveParent,
66401 OPC_RecordChild2,
66402 OPC_CheckType, MVT::v4i32,
66403 OPC_CheckPatternPredicate0,
66404 OPC_EmitInteger32, 2,
66405 OPC_EmitRegisterI32, 0 ,
66406 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
66407 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66408 0,
66409 84,
66410 OPC_MoveChild0,
66411 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
66412 OPC_Scope, 38,
66413 OPC_RecordChild0,
66414 OPC_MoveChild1,
66415 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
66416 OPC_MoveChild0,
66417 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
66418 OPC_CheckChild0Integer, 126|128,59,
66419 OPC_CheckType, MVT::v16i8,
66420 OPC_MoveParent,
66421 OPC_MoveParent,
66422 OPC_MoveParent,
66423 OPC_RecordChild1,
66424 OPC_MoveParent,
66425 OPC_RecordChild2,
66426 OPC_CheckType, MVT::v4i32,
66427 OPC_CheckPatternPredicate0,
66428 OPC_EmitInteger32, 2,
66429 OPC_EmitRegisterI32, 0 ,
66430 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
66431 MVT::v4i32, 6, 2, 1, 4, 0, 5, 3,
66432 38,
66433 OPC_MoveChild0,
66434 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
66435 OPC_MoveChild0,
66436 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
66437 OPC_CheckChild0Integer, 126|128,59,
66438 OPC_CheckType, MVT::v16i8,
66439 OPC_MoveParent,
66440 OPC_MoveParent,
66441 OPC_RecordChild1,
66442 OPC_MoveParent,
66443 OPC_RecordChild1,
66444 OPC_MoveParent,
66445 OPC_RecordChild2,
66446 OPC_CheckType, MVT::v4i32,
66447 OPC_CheckPatternPredicate0,
66448 OPC_EmitInteger32, 2,
66449 OPC_EmitRegisterI32, 0 ,
66450 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
66451 MVT::v4i32, 6, 2, 1, 4, 0, 5, 3,
66452 0,
66453 22,
66454 OPC_RecordChild0,
66455 OPC_RecordChild1,
66456 OPC_MoveParent,
66457 OPC_RecordChild2,
66458 OPC_CheckType, MVT::v4i32,
66459 OPC_CheckPatternPredicate0,
66460 OPC_EmitInteger32, 2,
66461 OPC_EmitRegisterI32, 0 ,
66462 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
66463 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66464 0,
66465 27, TARGET_VAL(ARMISD::VORRIMM),
66466 OPC_RecordChild0,
66467 OPC_RecordChild1,
66468 OPC_MoveChild1,
66469 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
66470 OPC_MoveParent,
66471 OPC_MoveParent,
66472 OPC_CheckChild2Same, 1,
66473 OPC_CheckType, MVT::v4i32,
66474 OPC_CheckPatternPredicate0,
66475 OPC_EmitInteger32, 2,
66476 OPC_EmitRegisterI32, 0 ,
66477 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORRimmi32),
66478 MVT::v4i32, 5, 1, 2, 3, 0, 4,
66479 27, TARGET_VAL(ARMISD::VBICIMM),
66480 OPC_RecordChild0,
66481 OPC_RecordChild1,
66482 OPC_MoveChild1,
66483 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
66484 OPC_MoveParent,
66485 OPC_MoveParent,
66486 OPC_CheckChild2Same, 1,
66487 OPC_CheckType, MVT::v4i32,
66488 OPC_CheckPatternPredicate0,
66489 OPC_EmitInteger32, 2,
66490 OPC_EmitRegisterI32, 0 ,
66491 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBICimmi32),
66492 MVT::v4i32, 5, 1, 2, 3, 0, 4,
66493 25, TARGET_VAL(ARMISD::VMVNIMM),
66494 OPC_RecordChild0,
66495 OPC_MoveChild0,
66496 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
66497 OPC_MoveParent,
66498 OPC_MoveParent,
66499 OPC_RecordChild2,
66500 OPC_CheckType, MVT::v4i32,
66501 OPC_CheckPatternPredicate0,
66502 OPC_EmitInteger32, 2,
66503 OPC_EmitRegisterI32, 0 ,
66504 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVNimmi32),
66505 MVT::v4i32, 5, 1, 3, 0, 4, 2,
66506 83, TARGET_VAL(ISD::ADD),
66507 OPC_Scope, 28,
66508 OPC_RecordChild0,
66509 OPC_MoveChild1,
66510 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66511 OPC_RecordChild0,
66512 OPC_CheckChild0TypeI32,
66513 OPC_MoveParent,
66514 OPC_MoveParent,
66515 OPC_RecordChild2,
66516 OPC_CheckType, MVT::v4i32,
66517 OPC_CheckPatternPredicate0,
66518 OPC_EmitInteger32, 2,
66519 OPC_EmitRegisterI32, 0 ,
66520 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i32),
66521 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66522 28,
66523 OPC_MoveChild0,
66524 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66525 OPC_RecordChild0,
66526 OPC_CheckChild0TypeI32,
66527 OPC_MoveParent,
66528 OPC_RecordChild1,
66529 OPC_MoveParent,
66530 OPC_RecordChild2,
66531 OPC_CheckType, MVT::v4i32,
66532 OPC_CheckPatternPredicate0,
66533 OPC_EmitInteger32, 2,
66534 OPC_EmitRegisterI32, 0 ,
66535 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i32),
66536 MVT::v4i32, 6, 2, 1, 4, 0, 5, 3,
66537 22,
66538 OPC_RecordChild0,
66539 OPC_RecordChild1,
66540 OPC_MoveParent,
66541 OPC_RecordChild2,
66542 OPC_CheckType, MVT::v4i32,
66543 OPC_CheckPatternPredicate0,
66544 OPC_EmitInteger32, 2,
66545 OPC_EmitRegisterI32, 0 ,
66546 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi32),
66547 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66548 0,
66549 53, TARGET_VAL(ISD::SUB),
66550 OPC_RecordChild0,
66551 OPC_Scope, 27,
66552 OPC_MoveChild1,
66553 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66554 OPC_RecordChild0,
66555 OPC_CheckChild0TypeI32,
66556 OPC_MoveParent,
66557 OPC_MoveParent,
66558 OPC_RecordChild2,
66559 OPC_CheckType, MVT::v4i32,
66560 OPC_CheckPatternPredicate0,
66561 OPC_EmitInteger32, 2,
66562 OPC_EmitRegisterI32, 0 ,
66563 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i32),
66564 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66565 21,
66566 OPC_RecordChild1,
66567 OPC_MoveParent,
66568 OPC_RecordChild2,
66569 OPC_CheckType, MVT::v4i32,
66570 OPC_CheckPatternPredicate0,
66571 OPC_EmitInteger32, 2,
66572 OPC_EmitRegisterI32, 0 ,
66573 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi32),
66574 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66575 0,
66576 83, TARGET_VAL(ISD::SADDSAT),
66577 OPC_Scope, 28,
66578 OPC_RecordChild0,
66579 OPC_MoveChild1,
66580 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66581 OPC_RecordChild0,
66582 OPC_CheckChild0TypeI32,
66583 OPC_MoveParent,
66584 OPC_MoveParent,
66585 OPC_RecordChild2,
66586 OPC_CheckType, MVT::v4i32,
66587 OPC_CheckPatternPredicate0,
66588 OPC_EmitInteger32, 2,
66589 OPC_EmitRegisterI32, 0 ,
66590 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s32),
66591 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66592 28,
66593 OPC_MoveChild0,
66594 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66595 OPC_RecordChild0,
66596 OPC_CheckChild0TypeI32,
66597 OPC_MoveParent,
66598 OPC_RecordChild1,
66599 OPC_MoveParent,
66600 OPC_RecordChild2,
66601 OPC_CheckType, MVT::v4i32,
66602 OPC_CheckPatternPredicate0,
66603 OPC_EmitInteger32, 2,
66604 OPC_EmitRegisterI32, 0 ,
66605 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s32),
66606 MVT::v4i32, 6, 2, 1, 4, 0, 5, 3,
66607 22,
66608 OPC_RecordChild0,
66609 OPC_RecordChild1,
66610 OPC_MoveParent,
66611 OPC_RecordChild2,
66612 OPC_CheckType, MVT::v4i32,
66613 OPC_CheckPatternPredicate0,
66614 OPC_EmitInteger32, 2,
66615 OPC_EmitRegisterI32, 0 ,
66616 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDs32),
66617 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66618 0,
66619 83, TARGET_VAL(ISD::UADDSAT),
66620 OPC_Scope, 28,
66621 OPC_RecordChild0,
66622 OPC_MoveChild1,
66623 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66624 OPC_RecordChild0,
66625 OPC_CheckChild0TypeI32,
66626 OPC_MoveParent,
66627 OPC_MoveParent,
66628 OPC_RecordChild2,
66629 OPC_CheckType, MVT::v4i32,
66630 OPC_CheckPatternPredicate0,
66631 OPC_EmitInteger32, 2,
66632 OPC_EmitRegisterI32, 0 ,
66633 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u32),
66634 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66635 28,
66636 OPC_MoveChild0,
66637 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66638 OPC_RecordChild0,
66639 OPC_CheckChild0TypeI32,
66640 OPC_MoveParent,
66641 OPC_RecordChild1,
66642 OPC_MoveParent,
66643 OPC_RecordChild2,
66644 OPC_CheckType, MVT::v4i32,
66645 OPC_CheckPatternPredicate0,
66646 OPC_EmitInteger32, 2,
66647 OPC_EmitRegisterI32, 0 ,
66648 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u32),
66649 MVT::v4i32, 6, 2, 1, 4, 0, 5, 3,
66650 22,
66651 OPC_RecordChild0,
66652 OPC_RecordChild1,
66653 OPC_MoveParent,
66654 OPC_RecordChild2,
66655 OPC_CheckType, MVT::v4i32,
66656 OPC_CheckPatternPredicate0,
66657 OPC_EmitInteger32, 2,
66658 OPC_EmitRegisterI32, 0 ,
66659 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDu32),
66660 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66661 0,
66662 53, TARGET_VAL(ISD::SSUBSAT),
66663 OPC_RecordChild0,
66664 OPC_Scope, 27,
66665 OPC_MoveChild1,
66666 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66667 OPC_RecordChild0,
66668 OPC_CheckChild0TypeI32,
66669 OPC_MoveParent,
66670 OPC_MoveParent,
66671 OPC_RecordChild2,
66672 OPC_CheckType, MVT::v4i32,
66673 OPC_CheckPatternPredicate0,
66674 OPC_EmitInteger32, 2,
66675 OPC_EmitRegisterI32, 0 ,
66676 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_s32),
66677 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66678 21,
66679 OPC_RecordChild1,
66680 OPC_MoveParent,
66681 OPC_RecordChild2,
66682 OPC_CheckType, MVT::v4i32,
66683 OPC_CheckPatternPredicate0,
66684 OPC_EmitInteger32, 2,
66685 OPC_EmitRegisterI32, 0 ,
66686 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBs32),
66687 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66688 0,
66689 53, TARGET_VAL(ISD::USUBSAT),
66690 OPC_RecordChild0,
66691 OPC_Scope, 27,
66692 OPC_MoveChild1,
66693 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66694 OPC_RecordChild0,
66695 OPC_CheckChild0TypeI32,
66696 OPC_MoveParent,
66697 OPC_MoveParent,
66698 OPC_RecordChild2,
66699 OPC_CheckType, MVT::v4i32,
66700 OPC_CheckPatternPredicate0,
66701 OPC_EmitInteger32, 2,
66702 OPC_EmitRegisterI32, 0 ,
66703 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_u32),
66704 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66705 21,
66706 OPC_RecordChild1,
66707 OPC_MoveParent,
66708 OPC_RecordChild2,
66709 OPC_CheckType, MVT::v4i32,
66710 OPC_CheckPatternPredicate0,
66711 OPC_EmitInteger32, 2,
66712 OPC_EmitRegisterI32, 0 ,
66713 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBu32),
66714 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66715 0,
66716 80, TARGET_VAL(ISD::AVGFLOORS),
66717 OPC_Scope, 27,
66718 OPC_RecordChild0,
66719 OPC_MoveChild1,
66720 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66721 OPC_RecordChild0,
66722 OPC_CheckChild0TypeI32,
66723 OPC_MoveParent,
66724 OPC_MoveParent,
66725 OPC_RecordChild2,
66726 OPC_CheckType, MVT::v4i32,
66727 OPC_EmitInteger32, 2,
66728 OPC_EmitRegisterI32, 0 ,
66729 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s32),
66730 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66731 27,
66732 OPC_MoveChild0,
66733 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66734 OPC_RecordChild0,
66735 OPC_CheckChild0TypeI32,
66736 OPC_MoveParent,
66737 OPC_RecordChild1,
66738 OPC_MoveParent,
66739 OPC_RecordChild2,
66740 OPC_CheckType, MVT::v4i32,
66741 OPC_EmitInteger32, 2,
66742 OPC_EmitRegisterI32, 0 ,
66743 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s32),
66744 MVT::v4i32, 6, 2, 1, 4, 0, 5, 3,
66745 21,
66746 OPC_RecordChild0,
66747 OPC_RecordChild1,
66748 OPC_MoveParent,
66749 OPC_RecordChild2,
66750 OPC_CheckType, MVT::v4i32,
66751 OPC_EmitInteger32, 2,
66752 OPC_EmitRegisterI32, 0 ,
66753 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs32),
66754 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66755 0,
66756 80, TARGET_VAL(ISD::AVGFLOORU),
66757 OPC_Scope, 27,
66758 OPC_RecordChild0,
66759 OPC_MoveChild1,
66760 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66761 OPC_RecordChild0,
66762 OPC_CheckChild0TypeI32,
66763 OPC_MoveParent,
66764 OPC_MoveParent,
66765 OPC_RecordChild2,
66766 OPC_CheckType, MVT::v4i32,
66767 OPC_EmitInteger32, 2,
66768 OPC_EmitRegisterI32, 0 ,
66769 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u32),
66770 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66771 27,
66772 OPC_MoveChild0,
66773 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66774 OPC_RecordChild0,
66775 OPC_CheckChild0TypeI32,
66776 OPC_MoveParent,
66777 OPC_RecordChild1,
66778 OPC_MoveParent,
66779 OPC_RecordChild2,
66780 OPC_CheckType, MVT::v4i32,
66781 OPC_EmitInteger32, 2,
66782 OPC_EmitRegisterI32, 0 ,
66783 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u32),
66784 MVT::v4i32, 6, 2, 1, 4, 0, 5, 3,
66785 21,
66786 OPC_RecordChild0,
66787 OPC_RecordChild1,
66788 OPC_MoveParent,
66789 OPC_RecordChild2,
66790 OPC_CheckType, MVT::v4i32,
66791 OPC_EmitInteger32, 2,
66792 OPC_EmitRegisterI32, 0 ,
66793 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu32),
66794 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66795 0,
66796 83, TARGET_VAL(ISD::MUL),
66797 OPC_Scope, 28,
66798 OPC_RecordChild0,
66799 OPC_MoveChild1,
66800 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66801 OPC_RecordChild0,
66802 OPC_CheckChild0TypeI32,
66803 OPC_MoveParent,
66804 OPC_MoveParent,
66805 OPC_RecordChild2,
66806 OPC_CheckType, MVT::v4i32,
66807 OPC_CheckPatternPredicate0,
66808 OPC_EmitInteger32, 2,
66809 OPC_EmitRegisterI32, 0 ,
66810 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i32),
66811 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66812 28,
66813 OPC_MoveChild0,
66814 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66815 OPC_RecordChild0,
66816 OPC_CheckChild0TypeI32,
66817 OPC_MoveParent,
66818 OPC_RecordChild1,
66819 OPC_MoveParent,
66820 OPC_RecordChild2,
66821 OPC_CheckType, MVT::v4i32,
66822 OPC_CheckPatternPredicate0,
66823 OPC_EmitInteger32, 2,
66824 OPC_EmitRegisterI32, 0 ,
66825 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i32),
66826 MVT::v4i32, 6, 2, 1, 4, 0, 5, 3,
66827 22,
66828 OPC_RecordChild0,
66829 OPC_RecordChild1,
66830 OPC_MoveParent,
66831 OPC_RecordChild2,
66832 OPC_CheckType, MVT::v4i32,
66833 OPC_CheckPatternPredicate0,
66834 OPC_EmitInteger32, 2,
66835 OPC_EmitRegisterI32, 0 ,
66836 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi32),
66837 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66838 0,
66839 53, TARGET_VAL(ARMISD::VQDMULH),
66840 OPC_RecordChild0,
66841 OPC_Scope, 27,
66842 OPC_MoveChild1,
66843 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
66844 OPC_RecordChild0,
66845 OPC_CheckChild0TypeI32,
66846 OPC_MoveParent,
66847 OPC_MoveParent,
66848 OPC_RecordChild2,
66849 OPC_CheckType, MVT::v4i32,
66850 OPC_CheckPatternPredicate0,
66851 OPC_EmitInteger32, 2,
66852 OPC_EmitRegisterI32, 0 ,
66853 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s32),
66854 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66855 21,
66856 OPC_RecordChild1,
66857 OPC_MoveParent,
66858 OPC_RecordChild2,
66859 OPC_CheckType, MVT::v4i32,
66860 OPC_CheckPatternPredicate0,
66861 OPC_EmitInteger32, 2,
66862 OPC_EmitRegisterI32, 0 ,
66863 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi32),
66864 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66865 0,
66866 22, TARGET_VAL(ISD::SMIN),
66867 OPC_RecordChild0,
66868 OPC_RecordChild1,
66869 OPC_MoveParent,
66870 OPC_RecordChild2,
66871 OPC_CheckType, MVT::v4i32,
66872 OPC_CheckPatternPredicate0,
66873 OPC_EmitInteger32, 2,
66874 OPC_EmitRegisterI32, 0 ,
66875 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINs32),
66876 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66877 22, TARGET_VAL(ISD::UMIN),
66878 OPC_RecordChild0,
66879 OPC_RecordChild1,
66880 OPC_MoveParent,
66881 OPC_RecordChild2,
66882 OPC_CheckType, MVT::v4i32,
66883 OPC_CheckPatternPredicate0,
66884 OPC_EmitInteger32, 2,
66885 OPC_EmitRegisterI32, 0 ,
66886 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINu32),
66887 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66888 22, TARGET_VAL(ISD::SMAX),
66889 OPC_RecordChild0,
66890 OPC_RecordChild1,
66891 OPC_MoveParent,
66892 OPC_RecordChild2,
66893 OPC_CheckType, MVT::v4i32,
66894 OPC_CheckPatternPredicate0,
66895 OPC_EmitInteger32, 2,
66896 OPC_EmitRegisterI32, 0 ,
66897 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXs32),
66898 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66899 22, TARGET_VAL(ISD::UMAX),
66900 OPC_RecordChild0,
66901 OPC_RecordChild1,
66902 OPC_MoveParent,
66903 OPC_RecordChild2,
66904 OPC_CheckType, MVT::v4i32,
66905 OPC_CheckPatternPredicate0,
66906 OPC_EmitInteger32, 2,
66907 OPC_EmitRegisterI32, 0 ,
66908 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXu32),
66909 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66910 22, TARGET_VAL(ISD::XOR),
66911 OPC_RecordChild0,
66912 OPC_RecordChild1,
66913 OPC_MoveParent,
66914 OPC_RecordChild2,
66915 OPC_CheckType, MVT::v4i32,
66916 OPC_CheckPatternPredicate0,
66917 OPC_EmitInteger32, 2,
66918 OPC_EmitRegisterI32, 0 ,
66919 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
66920 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66921 22, TARGET_VAL(ISD::ABDS),
66922 OPC_RecordChild0,
66923 OPC_RecordChild1,
66924 OPC_MoveParent,
66925 OPC_RecordChild2,
66926 OPC_CheckType, MVT::v4i32,
66927 OPC_CheckPatternPredicate0,
66928 OPC_EmitInteger32, 2,
66929 OPC_EmitRegisterI32, 0 ,
66930 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs32),
66931 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66932 22, TARGET_VAL(ISD::ABDU),
66933 OPC_RecordChild0,
66934 OPC_RecordChild1,
66935 OPC_MoveParent,
66936 OPC_RecordChild2,
66937 OPC_CheckType, MVT::v4i32,
66938 OPC_CheckPatternPredicate0,
66939 OPC_EmitInteger32, 2,
66940 OPC_EmitRegisterI32, 0 ,
66941 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu32),
66942 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66943 21, TARGET_VAL(ISD::AVGCEILS),
66944 OPC_RecordChild0,
66945 OPC_RecordChild1,
66946 OPC_MoveParent,
66947 OPC_RecordChild2,
66948 OPC_CheckType, MVT::v4i32,
66949 OPC_EmitInteger32, 2,
66950 OPC_EmitRegisterI32, 0 ,
66951 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs32),
66952 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66953 21, TARGET_VAL(ISD::AVGCEILU),
66954 OPC_RecordChild0,
66955 OPC_RecordChild1,
66956 OPC_MoveParent,
66957 OPC_RecordChild2,
66958 OPC_CheckType, MVT::v4i32,
66959 OPC_EmitInteger32, 2,
66960 OPC_EmitRegisterI32, 0 ,
66961 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu32),
66962 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66963 21, TARGET_VAL(ARMISD::VDUP),
66964 OPC_RecordChild0,
66965 OPC_CheckChild0TypeI32,
66966 OPC_MoveParent,
66967 OPC_RecordChild2,
66968 OPC_CheckType, MVT::v4i32,
66969 OPC_CheckPatternPredicate0,
66970 OPC_EmitInteger32, 2,
66971 OPC_EmitRegisterI32, 0 ,
66972 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VDUP32),
66973 MVT::v4i32, 5, 1, 3, 0, 4, 2,
66974 22, TARGET_VAL(ARMISD::VSHLu),
66975 OPC_RecordChild0,
66976 OPC_RecordChild1,
66977 OPC_MoveParent,
66978 OPC_RecordChild2,
66979 OPC_CheckType, MVT::v4i32,
66980 OPC_CheckPatternPredicate0,
66981 OPC_EmitInteger32, 2,
66982 OPC_EmitRegisterI32, 0 ,
66983 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu32),
66984 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66985 22, TARGET_VAL(ARMISD::VSHLs),
66986 OPC_RecordChild0,
66987 OPC_RecordChild1,
66988 OPC_MoveParent,
66989 OPC_RecordChild2,
66990 OPC_CheckType, MVT::v4i32,
66991 OPC_CheckPatternPredicate0,
66992 OPC_EmitInteger32, 2,
66993 OPC_EmitRegisterI32, 0 ,
66994 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs32),
66995 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
66996 22, TARGET_VAL(ISD::MULHS),
66997 OPC_RecordChild0,
66998 OPC_RecordChild1,
66999 OPC_MoveParent,
67000 OPC_RecordChild2,
67001 OPC_CheckType, MVT::v4i32,
67002 OPC_CheckPatternPredicate0,
67003 OPC_EmitInteger32, 2,
67004 OPC_EmitRegisterI32, 0 ,
67005 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs32),
67006 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
67007 22, TARGET_VAL(ISD::MULHU),
67008 OPC_RecordChild0,
67009 OPC_RecordChild1,
67010 OPC_MoveParent,
67011 OPC_RecordChild2,
67012 OPC_CheckType, MVT::v4i32,
67013 OPC_CheckPatternPredicate0,
67014 OPC_EmitInteger32, 2,
67015 OPC_EmitRegisterI32, 0 ,
67016 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu32),
67017 MVT::v4i32, 6, 1, 2, 4, 0, 5, 3,
67018 0,
67019 19,
67020 OPC_RecordChild1,
67021 OPC_RecordChild2,
67022 OPC_CheckType, MVT::v4i32,
67023 OPC_CheckPatternPredicate0,
67024 OPC_EmitInteger32, 0,
67025 OPC_EmitRegisterI32, 0 ,
67026 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
67027 MVT::v4i32, 5, 1, 2, 3, 0, 4,
67028 10|128,4,
67029 OPC_MoveChild1,
67030 OPC_SwitchOpcode , 85|128,1, TARGET_VAL(ISD::FMA),
67031 OPC_Scope, 60,
67032 OPC_MoveChild0,
67033 OPC_SwitchOpcode , 25, TARGET_VAL(ISD::FNEG),
67034 OPC_RecordChild0,
67035 OPC_MoveParent,
67036 OPC_RecordChild1,
67037 OPC_RecordChild2,
67038 OPC_MoveParent,
67039 OPC_CheckChild2Same, 3,
67040 OPC_CheckType, MVT::v4f32,
67041 OPC_CheckPatternPredicate2,
67042 OPC_EmitInteger32, 2,
67043 OPC_EmitRegisterI32, 0 ,
67044 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf32),
67045 MVT::v4f32, 6, 3, 1, 2, 4, 0, 5,
67046 26, TARGET_VAL(ARMISD::VDUP),
67047 OPC_RecordChild0,
67048 OPC_CheckChild0TypeI32,
67049 OPC_MoveParent,
67050 OPC_RecordChild1,
67051 OPC_RecordChild2,
67052 OPC_MoveParent,
67053 OPC_CheckChild2Same, 3,
67054 OPC_CheckType, MVT::v4f32,
67055 OPC_CheckPatternPredicate2,
67056 OPC_EmitInteger32, 2,
67057 OPC_EmitRegisterI32, 0 ,
67058 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f32),
67059 MVT::v4f32, 6, 3, 2, 1, 4, 0, 5,
67060 0,
67061 20|128,1,
67062 OPC_RecordChild0,
67063 OPC_Scope, 29,
67064 OPC_MoveChild1,
67065 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67066 OPC_RecordChild0,
67067 OPC_CheckChild0TypeI32,
67068 OPC_MoveParent,
67069 OPC_RecordChild2,
67070 OPC_MoveParent,
67071 OPC_CheckChild2Same, 3,
67072 OPC_CheckType, MVT::v4f32,
67073 OPC_CheckPatternPredicate2,
67074 OPC_EmitInteger32, 2,
67075 OPC_EmitRegisterI32, 0 ,
67076 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_f32),
67077 MVT::v4f32, 6, 3, 1, 2, 4, 0, 5,
67078 29,
67079 OPC_RecordChild1,
67080 OPC_MoveChild2,
67081 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67082 OPC_RecordChild0,
67083 OPC_CheckChild0TypeI32,
67084 OPC_MoveParent,
67085 OPC_MoveParent,
67086 OPC_CheckChild2Same, 1,
67087 OPC_CheckType, MVT::v4f32,
67088 OPC_CheckPatternPredicate2,
67089 OPC_EmitInteger32, 2,
67090 OPC_EmitRegisterI32, 0 ,
67091 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_Sf32),
67092 MVT::v4f32, 6, 1, 2, 3, 4, 0, 5,
67093 28,
67094 OPC_MoveChild1,
67095 OPC_CheckOpcode, TARGET_VAL(ISD::FNEG),
67096 OPC_RecordChild0,
67097 OPC_MoveParent,
67098 OPC_RecordChild2,
67099 OPC_MoveParent,
67100 OPC_CheckChild2Same, 3,
67101 OPC_CheckType, MVT::v4f32,
67102 OPC_CheckPatternPredicate2,
67103 OPC_EmitInteger32, 2,
67104 OPC_EmitRegisterI32, 0 ,
67105 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMSf32),
67106 MVT::v4f32, 6, 3, 2, 1, 4, 0, 5,
67107 55,
67108 OPC_RecordChild1,
67109 OPC_Scope, 28,
67110 OPC_MoveChild2,
67111 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67112 OPC_RecordChild0,
67113 OPC_CheckChild0TypeI32,
67114 OPC_MoveParent,
67115 OPC_MoveParent,
67116 OPC_CheckChild2Same, 2,
67117 OPC_CheckType, MVT::v4f32,
67118 OPC_CheckPatternPredicate2,
67119 OPC_EmitInteger32, 2,
67120 OPC_EmitRegisterI32, 0 ,
67121 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMA_qr_Sf32),
67122 MVT::v4f32, 6, 2, 1, 3, 4, 0, 5,
67123 22,
67124 OPC_RecordChild2,
67125 OPC_MoveParent,
67126 OPC_CheckChild2Same, 3,
67127 OPC_CheckType, MVT::v4f32,
67128 OPC_CheckPatternPredicate2,
67129 OPC_EmitInteger32, 2,
67130 OPC_EmitRegisterI32, 0 ,
67131 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VFMAf32),
67132 MVT::v4f32, 6, 3, 1, 2, 4, 0, 5,
67133 0,
67134 0,
67135 0,
67136 83, TARGET_VAL(ISD::FADD),
67137 OPC_Scope, 28,
67138 OPC_RecordChild0,
67139 OPC_MoveChild1,
67140 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67141 OPC_RecordChild0,
67142 OPC_CheckChild0TypeI32,
67143 OPC_MoveParent,
67144 OPC_MoveParent,
67145 OPC_RecordChild2,
67146 OPC_CheckType, MVT::v4f32,
67147 OPC_CheckPatternPredicate2,
67148 OPC_EmitInteger32, 2,
67149 OPC_EmitRegisterI32, 0 ,
67150 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f32),
67151 MVT::v4f32, 6, 1, 2, 4, 0, 5, 3,
67152 28,
67153 OPC_MoveChild0,
67154 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67155 OPC_RecordChild0,
67156 OPC_CheckChild0TypeI32,
67157 OPC_MoveParent,
67158 OPC_RecordChild1,
67159 OPC_MoveParent,
67160 OPC_RecordChild2,
67161 OPC_CheckType, MVT::v4f32,
67162 OPC_CheckPatternPredicate2,
67163 OPC_EmitInteger32, 2,
67164 OPC_EmitRegisterI32, 0 ,
67165 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_f32),
67166 MVT::v4f32, 6, 2, 1, 4, 0, 5, 3,
67167 22,
67168 OPC_RecordChild0,
67169 OPC_RecordChild1,
67170 OPC_MoveParent,
67171 OPC_RecordChild2,
67172 OPC_CheckType, MVT::v4f32,
67173 OPC_CheckPatternPredicate2,
67174 OPC_EmitInteger32, 2,
67175 OPC_EmitRegisterI32, 0 ,
67176 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDf32),
67177 MVT::v4f32, 6, 1, 2, 4, 0, 5, 3,
67178 0,
67179 53, TARGET_VAL(ISD::FSUB),
67180 OPC_RecordChild0,
67181 OPC_Scope, 27,
67182 OPC_MoveChild1,
67183 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67184 OPC_RecordChild0,
67185 OPC_CheckChild0TypeI32,
67186 OPC_MoveParent,
67187 OPC_MoveParent,
67188 OPC_RecordChild2,
67189 OPC_CheckType, MVT::v4f32,
67190 OPC_CheckPatternPredicate2,
67191 OPC_EmitInteger32, 2,
67192 OPC_EmitRegisterI32, 0 ,
67193 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_f32),
67194 MVT::v4f32, 6, 1, 2, 4, 0, 5, 3,
67195 21,
67196 OPC_RecordChild1,
67197 OPC_MoveParent,
67198 OPC_RecordChild2,
67199 OPC_CheckType, MVT::v4f32,
67200 OPC_CheckPatternPredicate2,
67201 OPC_EmitInteger32, 2,
67202 OPC_EmitRegisterI32, 0 ,
67203 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBf32),
67204 MVT::v4f32, 6, 1, 2, 4, 0, 5, 3,
67205 0,
67206 83, TARGET_VAL(ISD::FMUL),
67207 OPC_Scope, 28,
67208 OPC_RecordChild0,
67209 OPC_MoveChild1,
67210 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67211 OPC_RecordChild0,
67212 OPC_CheckChild0TypeI32,
67213 OPC_MoveParent,
67214 OPC_MoveParent,
67215 OPC_RecordChild2,
67216 OPC_CheckType, MVT::v4f32,
67217 OPC_CheckPatternPredicate2,
67218 OPC_EmitInteger32, 2,
67219 OPC_EmitRegisterI32, 0 ,
67220 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f32),
67221 MVT::v4f32, 6, 1, 2, 4, 0, 5, 3,
67222 28,
67223 OPC_MoveChild0,
67224 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67225 OPC_RecordChild0,
67226 OPC_CheckChild0TypeI32,
67227 OPC_MoveParent,
67228 OPC_RecordChild1,
67229 OPC_MoveParent,
67230 OPC_RecordChild2,
67231 OPC_CheckType, MVT::v4f32,
67232 OPC_CheckPatternPredicate2,
67233 OPC_EmitInteger32, 2,
67234 OPC_EmitRegisterI32, 0 ,
67235 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_f32),
67236 MVT::v4f32, 6, 2, 1, 4, 0, 5, 3,
67237 22,
67238 OPC_RecordChild0,
67239 OPC_RecordChild1,
67240 OPC_MoveParent,
67241 OPC_RecordChild2,
67242 OPC_CheckType, MVT::v4f32,
67243 OPC_CheckPatternPredicate2,
67244 OPC_EmitInteger32, 2,
67245 OPC_EmitRegisterI32, 0 ,
67246 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULf32),
67247 MVT::v4f32, 6, 1, 2, 4, 0, 5, 3,
67248 0,
67249 22, TARGET_VAL(ISD::FMAXNUM),
67250 OPC_RecordChild0,
67251 OPC_RecordChild1,
67252 OPC_MoveParent,
67253 OPC_RecordChild2,
67254 OPC_CheckType, MVT::v4f32,
67255 OPC_CheckPatternPredicate2,
67256 OPC_EmitInteger32, 2,
67257 OPC_EmitRegisterI32, 0 ,
67258 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXNMf32),
67259 MVT::v4f32, 6, 1, 2, 4, 0, 5, 3,
67260 22, TARGET_VAL(ISD::FMINNUM),
67261 OPC_RecordChild0,
67262 OPC_RecordChild1,
67263 OPC_MoveParent,
67264 OPC_RecordChild2,
67265 OPC_CheckType, MVT::v4f32,
67266 OPC_CheckPatternPredicate2,
67267 OPC_EmitInteger32, 2,
67268 OPC_EmitRegisterI32, 0 ,
67269 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINNMf32),
67270 MVT::v4f32, 6, 1, 2, 4, 0, 5, 3,
67271 21, TARGET_VAL(ARMISD::VDUP),
67272 OPC_RecordChild0,
67273 OPC_CheckChild0TypeI32,
67274 OPC_MoveParent,
67275 OPC_RecordChild2,
67276 OPC_CheckType, MVT::v4f32,
67277 OPC_CheckPatternPredicate0,
67278 OPC_EmitInteger32, 2,
67279 OPC_EmitRegisterI32, 0 ,
67280 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VDUP32),
67281 MVT::v4f32, 5, 1, 3, 0, 4, 2,
67282 0,
67283 19,
67284 OPC_RecordChild1,
67285 OPC_RecordChild2,
67286 OPC_CheckType, MVT::v4f32,
67287 OPC_CheckPatternPredicate0,
67288 OPC_EmitInteger32, 0,
67289 OPC_EmitRegisterI32, 0 ,
67290 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
67291 MVT::v4f32, 5, 1, 2, 3, 0, 4,
67292 0,
67293 42|128,11,
67294 OPC_CheckChild0Type, MVT::v16i1,
67295 OPC_Scope, 16|128,11,
67296 OPC_MoveChild1,
67297 OPC_SwitchOpcode , 38|128,1, TARGET_VAL(ISD::AND),
67298 OPC_Scope, 69,
67299 OPC_RecordChild0,
67300 OPC_MoveChild1,
67301 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
67302 OPC_Scope, 30,
67303 OPC_RecordChild0,
67304 OPC_MoveChild1,
67305 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
67306 OPC_CheckChild0Integer, 126|128,59,
67307 OPC_MoveParent,
67308 OPC_MoveParent,
67309 OPC_MoveParent,
67310 OPC_RecordChild2,
67311 OPC_CheckType, MVT::v16i8,
67312 OPC_CheckPatternPredicate0,
67313 OPC_EmitInteger32, 2,
67314 OPC_EmitRegisterI32, 0 ,
67315 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
67316 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67317 30,
67318 OPC_MoveChild0,
67319 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
67320 OPC_CheckChild0Integer, 126|128,59,
67321 OPC_MoveParent,
67322 OPC_RecordChild1,
67323 OPC_MoveParent,
67324 OPC_MoveParent,
67325 OPC_RecordChild2,
67326 OPC_CheckType, MVT::v16i8,
67327 OPC_CheckPatternPredicate0,
67328 OPC_EmitInteger32, 2,
67329 OPC_EmitRegisterI32, 0 ,
67330 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
67331 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67332 0,
67333 70,
67334 OPC_MoveChild0,
67335 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
67336 OPC_Scope, 31,
67337 OPC_RecordChild0,
67338 OPC_MoveChild1,
67339 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
67340 OPC_CheckChild0Integer, 126|128,59,
67341 OPC_MoveParent,
67342 OPC_MoveParent,
67343 OPC_RecordChild1,
67344 OPC_MoveParent,
67345 OPC_RecordChild2,
67346 OPC_CheckType, MVT::v16i8,
67347 OPC_CheckPatternPredicate0,
67348 OPC_EmitInteger32, 2,
67349 OPC_EmitRegisterI32, 0 ,
67350 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
67351 MVT::v16i8, 6, 2, 1, 4, 0, 5, 3,
67352 31,
67353 OPC_MoveChild0,
67354 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
67355 OPC_CheckChild0Integer, 126|128,59,
67356 OPC_MoveParent,
67357 OPC_RecordChild1,
67358 OPC_MoveParent,
67359 OPC_RecordChild1,
67360 OPC_MoveParent,
67361 OPC_RecordChild2,
67362 OPC_CheckType, MVT::v16i8,
67363 OPC_CheckPatternPredicate0,
67364 OPC_EmitInteger32, 2,
67365 OPC_EmitRegisterI32, 0 ,
67366 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBIC),
67367 MVT::v16i8, 6, 2, 1, 4, 0, 5, 3,
67368 0,
67369 22,
67370 OPC_RecordChild0,
67371 OPC_RecordChild1,
67372 OPC_MoveParent,
67373 OPC_RecordChild2,
67374 OPC_CheckType, MVT::v16i8,
67375 OPC_CheckPatternPredicate0,
67376 OPC_EmitInteger32, 2,
67377 OPC_EmitRegisterI32, 0 ,
67378 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VAND),
67379 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67380 0,
67381 38|128,1, TARGET_VAL(ISD::OR),
67382 OPC_Scope, 69,
67383 OPC_RecordChild0,
67384 OPC_MoveChild1,
67385 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
67386 OPC_Scope, 30,
67387 OPC_RecordChild0,
67388 OPC_MoveChild1,
67389 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
67390 OPC_CheckChild0Integer, 126|128,59,
67391 OPC_MoveParent,
67392 OPC_MoveParent,
67393 OPC_MoveParent,
67394 OPC_RecordChild2,
67395 OPC_CheckType, MVT::v16i8,
67396 OPC_CheckPatternPredicate0,
67397 OPC_EmitInteger32, 2,
67398 OPC_EmitRegisterI32, 0 ,
67399 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
67400 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67401 30,
67402 OPC_MoveChild0,
67403 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
67404 OPC_CheckChild0Integer, 126|128,59,
67405 OPC_MoveParent,
67406 OPC_RecordChild1,
67407 OPC_MoveParent,
67408 OPC_MoveParent,
67409 OPC_RecordChild2,
67410 OPC_CheckType, MVT::v16i8,
67411 OPC_CheckPatternPredicate0,
67412 OPC_EmitInteger32, 2,
67413 OPC_EmitRegisterI32, 0 ,
67414 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
67415 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67416 0,
67417 70,
67418 OPC_MoveChild0,
67419 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
67420 OPC_Scope, 31,
67421 OPC_RecordChild0,
67422 OPC_MoveChild1,
67423 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
67424 OPC_CheckChild0Integer, 126|128,59,
67425 OPC_MoveParent,
67426 OPC_MoveParent,
67427 OPC_RecordChild1,
67428 OPC_MoveParent,
67429 OPC_RecordChild2,
67430 OPC_CheckType, MVT::v16i8,
67431 OPC_CheckPatternPredicate0,
67432 OPC_EmitInteger32, 2,
67433 OPC_EmitRegisterI32, 0 ,
67434 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
67435 MVT::v16i8, 6, 2, 1, 4, 0, 5, 3,
67436 31,
67437 OPC_MoveChild0,
67438 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
67439 OPC_CheckChild0Integer, 126|128,59,
67440 OPC_MoveParent,
67441 OPC_RecordChild1,
67442 OPC_MoveParent,
67443 OPC_RecordChild1,
67444 OPC_MoveParent,
67445 OPC_RecordChild2,
67446 OPC_CheckType, MVT::v16i8,
67447 OPC_CheckPatternPredicate0,
67448 OPC_EmitInteger32, 2,
67449 OPC_EmitRegisterI32, 0 ,
67450 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORN),
67451 MVT::v16i8, 6, 2, 1, 4, 0, 5, 3,
67452 0,
67453 22,
67454 OPC_RecordChild0,
67455 OPC_RecordChild1,
67456 OPC_MoveParent,
67457 OPC_RecordChild2,
67458 OPC_CheckType, MVT::v16i8,
67459 OPC_CheckPatternPredicate0,
67460 OPC_EmitInteger32, 2,
67461 OPC_EmitRegisterI32, 0 ,
67462 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORR),
67463 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67464 0,
67465 83, TARGET_VAL(ISD::ADD),
67466 OPC_Scope, 28,
67467 OPC_RecordChild0,
67468 OPC_MoveChild1,
67469 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67470 OPC_RecordChild0,
67471 OPC_CheckChild0TypeI32,
67472 OPC_MoveParent,
67473 OPC_MoveParent,
67474 OPC_RecordChild2,
67475 OPC_CheckType, MVT::v16i8,
67476 OPC_CheckPatternPredicate0,
67477 OPC_EmitInteger32, 2,
67478 OPC_EmitRegisterI32, 0 ,
67479 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i8),
67480 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67481 28,
67482 OPC_MoveChild0,
67483 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67484 OPC_RecordChild0,
67485 OPC_CheckChild0TypeI32,
67486 OPC_MoveParent,
67487 OPC_RecordChild1,
67488 OPC_MoveParent,
67489 OPC_RecordChild2,
67490 OPC_CheckType, MVT::v16i8,
67491 OPC_CheckPatternPredicate0,
67492 OPC_EmitInteger32, 2,
67493 OPC_EmitRegisterI32, 0 ,
67494 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADD_qr_i8),
67495 MVT::v16i8, 6, 2, 1, 4, 0, 5, 3,
67496 22,
67497 OPC_RecordChild0,
67498 OPC_RecordChild1,
67499 OPC_MoveParent,
67500 OPC_RecordChild2,
67501 OPC_CheckType, MVT::v16i8,
67502 OPC_CheckPatternPredicate0,
67503 OPC_EmitInteger32, 2,
67504 OPC_EmitRegisterI32, 0 ,
67505 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VADDi8),
67506 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67507 0,
67508 53, TARGET_VAL(ISD::SUB),
67509 OPC_RecordChild0,
67510 OPC_Scope, 27,
67511 OPC_MoveChild1,
67512 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67513 OPC_RecordChild0,
67514 OPC_CheckChild0TypeI32,
67515 OPC_MoveParent,
67516 OPC_MoveParent,
67517 OPC_RecordChild2,
67518 OPC_CheckType, MVT::v16i8,
67519 OPC_CheckPatternPredicate0,
67520 OPC_EmitInteger32, 2,
67521 OPC_EmitRegisterI32, 0 ,
67522 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUB_qr_i8),
67523 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67524 21,
67525 OPC_RecordChild1,
67526 OPC_MoveParent,
67527 OPC_RecordChild2,
67528 OPC_CheckType, MVT::v16i8,
67529 OPC_CheckPatternPredicate0,
67530 OPC_EmitInteger32, 2,
67531 OPC_EmitRegisterI32, 0 ,
67532 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSUBi8),
67533 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67534 0,
67535 83, TARGET_VAL(ISD::SADDSAT),
67536 OPC_Scope, 28,
67537 OPC_RecordChild0,
67538 OPC_MoveChild1,
67539 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67540 OPC_RecordChild0,
67541 OPC_CheckChild0TypeI32,
67542 OPC_MoveParent,
67543 OPC_MoveParent,
67544 OPC_RecordChild2,
67545 OPC_CheckType, MVT::v16i8,
67546 OPC_CheckPatternPredicate0,
67547 OPC_EmitInteger32, 2,
67548 OPC_EmitRegisterI32, 0 ,
67549 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s8),
67550 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67551 28,
67552 OPC_MoveChild0,
67553 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67554 OPC_RecordChild0,
67555 OPC_CheckChild0TypeI32,
67556 OPC_MoveParent,
67557 OPC_RecordChild1,
67558 OPC_MoveParent,
67559 OPC_RecordChild2,
67560 OPC_CheckType, MVT::v16i8,
67561 OPC_CheckPatternPredicate0,
67562 OPC_EmitInteger32, 2,
67563 OPC_EmitRegisterI32, 0 ,
67564 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_s8),
67565 MVT::v16i8, 6, 2, 1, 4, 0, 5, 3,
67566 22,
67567 OPC_RecordChild0,
67568 OPC_RecordChild1,
67569 OPC_MoveParent,
67570 OPC_RecordChild2,
67571 OPC_CheckType, MVT::v16i8,
67572 OPC_CheckPatternPredicate0,
67573 OPC_EmitInteger32, 2,
67574 OPC_EmitRegisterI32, 0 ,
67575 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDs8),
67576 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67577 0,
67578 83, TARGET_VAL(ISD::UADDSAT),
67579 OPC_Scope, 28,
67580 OPC_RecordChild0,
67581 OPC_MoveChild1,
67582 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67583 OPC_RecordChild0,
67584 OPC_CheckChild0TypeI32,
67585 OPC_MoveParent,
67586 OPC_MoveParent,
67587 OPC_RecordChild2,
67588 OPC_CheckType, MVT::v16i8,
67589 OPC_CheckPatternPredicate0,
67590 OPC_EmitInteger32, 2,
67591 OPC_EmitRegisterI32, 0 ,
67592 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u8),
67593 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67594 28,
67595 OPC_MoveChild0,
67596 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67597 OPC_RecordChild0,
67598 OPC_CheckChild0TypeI32,
67599 OPC_MoveParent,
67600 OPC_RecordChild1,
67601 OPC_MoveParent,
67602 OPC_RecordChild2,
67603 OPC_CheckType, MVT::v16i8,
67604 OPC_CheckPatternPredicate0,
67605 OPC_EmitInteger32, 2,
67606 OPC_EmitRegisterI32, 0 ,
67607 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u8),
67608 MVT::v16i8, 6, 2, 1, 4, 0, 5, 3,
67609 22,
67610 OPC_RecordChild0,
67611 OPC_RecordChild1,
67612 OPC_MoveParent,
67613 OPC_RecordChild2,
67614 OPC_CheckType, MVT::v16i8,
67615 OPC_CheckPatternPredicate0,
67616 OPC_EmitInteger32, 2,
67617 OPC_EmitRegisterI32, 0 ,
67618 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDu8),
67619 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67620 0,
67621 53, TARGET_VAL(ISD::SSUBSAT),
67622 OPC_RecordChild0,
67623 OPC_Scope, 27,
67624 OPC_MoveChild1,
67625 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67626 OPC_RecordChild0,
67627 OPC_CheckChild0TypeI32,
67628 OPC_MoveParent,
67629 OPC_MoveParent,
67630 OPC_RecordChild2,
67631 OPC_CheckType, MVT::v16i8,
67632 OPC_CheckPatternPredicate0,
67633 OPC_EmitInteger32, 2,
67634 OPC_EmitRegisterI32, 0 ,
67635 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_s8),
67636 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67637 21,
67638 OPC_RecordChild1,
67639 OPC_MoveParent,
67640 OPC_RecordChild2,
67641 OPC_CheckType, MVT::v16i8,
67642 OPC_CheckPatternPredicate0,
67643 OPC_EmitInteger32, 2,
67644 OPC_EmitRegisterI32, 0 ,
67645 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBs8),
67646 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67647 0,
67648 53, TARGET_VAL(ISD::USUBSAT),
67649 OPC_RecordChild0,
67650 OPC_Scope, 27,
67651 OPC_MoveChild1,
67652 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67653 OPC_RecordChild0,
67654 OPC_CheckChild0TypeI32,
67655 OPC_MoveParent,
67656 OPC_MoveParent,
67657 OPC_RecordChild2,
67658 OPC_CheckType, MVT::v16i8,
67659 OPC_CheckPatternPredicate0,
67660 OPC_EmitInteger32, 2,
67661 OPC_EmitRegisterI32, 0 ,
67662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_u8),
67663 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67664 21,
67665 OPC_RecordChild1,
67666 OPC_MoveParent,
67667 OPC_RecordChild2,
67668 OPC_CheckType, MVT::v16i8,
67669 OPC_CheckPatternPredicate0,
67670 OPC_EmitInteger32, 2,
67671 OPC_EmitRegisterI32, 0 ,
67672 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBu8),
67673 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67674 0,
67675 80, TARGET_VAL(ISD::AVGFLOORS),
67676 OPC_Scope, 27,
67677 OPC_RecordChild0,
67678 OPC_MoveChild1,
67679 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67680 OPC_RecordChild0,
67681 OPC_CheckChild0TypeI32,
67682 OPC_MoveParent,
67683 OPC_MoveParent,
67684 OPC_RecordChild2,
67685 OPC_CheckType, MVT::v16i8,
67686 OPC_EmitInteger32, 2,
67687 OPC_EmitRegisterI32, 0 ,
67688 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s8),
67689 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67690 27,
67691 OPC_MoveChild0,
67692 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67693 OPC_RecordChild0,
67694 OPC_CheckChild0TypeI32,
67695 OPC_MoveParent,
67696 OPC_RecordChild1,
67697 OPC_MoveParent,
67698 OPC_RecordChild2,
67699 OPC_CheckType, MVT::v16i8,
67700 OPC_EmitInteger32, 2,
67701 OPC_EmitRegisterI32, 0 ,
67702 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s8),
67703 MVT::v16i8, 6, 2, 1, 4, 0, 5, 3,
67704 21,
67705 OPC_RecordChild0,
67706 OPC_RecordChild1,
67707 OPC_MoveParent,
67708 OPC_RecordChild2,
67709 OPC_CheckType, MVT::v16i8,
67710 OPC_EmitInteger32, 2,
67711 OPC_EmitRegisterI32, 0 ,
67712 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs8),
67713 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67714 0,
67715 80, TARGET_VAL(ISD::AVGFLOORU),
67716 OPC_Scope, 27,
67717 OPC_RecordChild0,
67718 OPC_MoveChild1,
67719 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67720 OPC_RecordChild0,
67721 OPC_CheckChild0TypeI32,
67722 OPC_MoveParent,
67723 OPC_MoveParent,
67724 OPC_RecordChild2,
67725 OPC_CheckType, MVT::v16i8,
67726 OPC_EmitInteger32, 2,
67727 OPC_EmitRegisterI32, 0 ,
67728 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u8),
67729 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67730 27,
67731 OPC_MoveChild0,
67732 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67733 OPC_RecordChild0,
67734 OPC_CheckChild0TypeI32,
67735 OPC_MoveParent,
67736 OPC_RecordChild1,
67737 OPC_MoveParent,
67738 OPC_RecordChild2,
67739 OPC_CheckType, MVT::v16i8,
67740 OPC_EmitInteger32, 2,
67741 OPC_EmitRegisterI32, 0 ,
67742 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u8),
67743 MVT::v16i8, 6, 2, 1, 4, 0, 5, 3,
67744 21,
67745 OPC_RecordChild0,
67746 OPC_RecordChild1,
67747 OPC_MoveParent,
67748 OPC_RecordChild2,
67749 OPC_CheckType, MVT::v16i8,
67750 OPC_EmitInteger32, 2,
67751 OPC_EmitRegisterI32, 0 ,
67752 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu8),
67753 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67754 0,
67755 83, TARGET_VAL(ISD::MUL),
67756 OPC_Scope, 28,
67757 OPC_RecordChild0,
67758 OPC_MoveChild1,
67759 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67760 OPC_RecordChild0,
67761 OPC_CheckChild0TypeI32,
67762 OPC_MoveParent,
67763 OPC_MoveParent,
67764 OPC_RecordChild2,
67765 OPC_CheckType, MVT::v16i8,
67766 OPC_CheckPatternPredicate0,
67767 OPC_EmitInteger32, 2,
67768 OPC_EmitRegisterI32, 0 ,
67769 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i8),
67770 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67771 28,
67772 OPC_MoveChild0,
67773 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67774 OPC_RecordChild0,
67775 OPC_CheckChild0TypeI32,
67776 OPC_MoveParent,
67777 OPC_RecordChild1,
67778 OPC_MoveParent,
67779 OPC_RecordChild2,
67780 OPC_CheckType, MVT::v16i8,
67781 OPC_CheckPatternPredicate0,
67782 OPC_EmitInteger32, 2,
67783 OPC_EmitRegisterI32, 0 ,
67784 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMUL_qr_i8),
67785 MVT::v16i8, 6, 2, 1, 4, 0, 5, 3,
67786 22,
67787 OPC_RecordChild0,
67788 OPC_RecordChild1,
67789 OPC_MoveParent,
67790 OPC_RecordChild2,
67791 OPC_CheckType, MVT::v16i8,
67792 OPC_CheckPatternPredicate0,
67793 OPC_EmitInteger32, 2,
67794 OPC_EmitRegisterI32, 0 ,
67795 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULi8),
67796 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67797 0,
67798 53, TARGET_VAL(ARMISD::VQDMULH),
67799 OPC_RecordChild0,
67800 OPC_Scope, 27,
67801 OPC_MoveChild1,
67802 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
67803 OPC_RecordChild0,
67804 OPC_CheckChild0TypeI32,
67805 OPC_MoveParent,
67806 OPC_MoveParent,
67807 OPC_RecordChild2,
67808 OPC_CheckType, MVT::v16i8,
67809 OPC_CheckPatternPredicate0,
67810 OPC_EmitInteger32, 2,
67811 OPC_EmitRegisterI32, 0 ,
67812 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s8),
67813 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67814 21,
67815 OPC_RecordChild1,
67816 OPC_MoveParent,
67817 OPC_RecordChild2,
67818 OPC_CheckType, MVT::v16i8,
67819 OPC_CheckPatternPredicate0,
67820 OPC_EmitInteger32, 2,
67821 OPC_EmitRegisterI32, 0 ,
67822 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi8),
67823 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67824 0,
67825 22, TARGET_VAL(ISD::SMIN),
67826 OPC_RecordChild0,
67827 OPC_RecordChild1,
67828 OPC_MoveParent,
67829 OPC_RecordChild2,
67830 OPC_CheckType, MVT::v16i8,
67831 OPC_CheckPatternPredicate0,
67832 OPC_EmitInteger32, 2,
67833 OPC_EmitRegisterI32, 0 ,
67834 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINs8),
67835 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67836 22, TARGET_VAL(ISD::UMIN),
67837 OPC_RecordChild0,
67838 OPC_RecordChild1,
67839 OPC_MoveParent,
67840 OPC_RecordChild2,
67841 OPC_CheckType, MVT::v16i8,
67842 OPC_CheckPatternPredicate0,
67843 OPC_EmitInteger32, 2,
67844 OPC_EmitRegisterI32, 0 ,
67845 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINu8),
67846 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67847 22, TARGET_VAL(ISD::SMAX),
67848 OPC_RecordChild0,
67849 OPC_RecordChild1,
67850 OPC_MoveParent,
67851 OPC_RecordChild2,
67852 OPC_CheckType, MVT::v16i8,
67853 OPC_CheckPatternPredicate0,
67854 OPC_EmitInteger32, 2,
67855 OPC_EmitRegisterI32, 0 ,
67856 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXs8),
67857 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67858 22, TARGET_VAL(ISD::UMAX),
67859 OPC_RecordChild0,
67860 OPC_RecordChild1,
67861 OPC_MoveParent,
67862 OPC_RecordChild2,
67863 OPC_CheckType, MVT::v16i8,
67864 OPC_CheckPatternPredicate0,
67865 OPC_EmitInteger32, 2,
67866 OPC_EmitRegisterI32, 0 ,
67867 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXu8),
67868 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67869 22, TARGET_VAL(ISD::XOR),
67870 OPC_RecordChild0,
67871 OPC_RecordChild1,
67872 OPC_MoveParent,
67873 OPC_RecordChild2,
67874 OPC_CheckType, MVT::v16i8,
67875 OPC_CheckPatternPredicate0,
67876 OPC_EmitInteger32, 2,
67877 OPC_EmitRegisterI32, 0 ,
67878 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VEOR),
67879 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67880 22, TARGET_VAL(ISD::ABDS),
67881 OPC_RecordChild0,
67882 OPC_RecordChild1,
67883 OPC_MoveParent,
67884 OPC_RecordChild2,
67885 OPC_CheckType, MVT::v16i8,
67886 OPC_CheckPatternPredicate0,
67887 OPC_EmitInteger32, 2,
67888 OPC_EmitRegisterI32, 0 ,
67889 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs8),
67890 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67891 22, TARGET_VAL(ISD::ABDU),
67892 OPC_RecordChild0,
67893 OPC_RecordChild1,
67894 OPC_MoveParent,
67895 OPC_RecordChild2,
67896 OPC_CheckType, MVT::v16i8,
67897 OPC_CheckPatternPredicate0,
67898 OPC_EmitInteger32, 2,
67899 OPC_EmitRegisterI32, 0 ,
67900 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu8),
67901 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67902 21, TARGET_VAL(ISD::AVGCEILS),
67903 OPC_RecordChild0,
67904 OPC_RecordChild1,
67905 OPC_MoveParent,
67906 OPC_RecordChild2,
67907 OPC_CheckType, MVT::v16i8,
67908 OPC_EmitInteger32, 2,
67909 OPC_EmitRegisterI32, 0 ,
67910 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs8),
67911 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67912 21, TARGET_VAL(ISD::AVGCEILU),
67913 OPC_RecordChild0,
67914 OPC_RecordChild1,
67915 OPC_MoveParent,
67916 OPC_RecordChild2,
67917 OPC_CheckType, MVT::v16i8,
67918 OPC_EmitInteger32, 2,
67919 OPC_EmitRegisterI32, 0 ,
67920 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu8),
67921 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67922 21, TARGET_VAL(ARMISD::VDUP),
67923 OPC_RecordChild0,
67924 OPC_CheckChild0TypeI32,
67925 OPC_MoveParent,
67926 OPC_RecordChild2,
67927 OPC_CheckType, MVT::v16i8,
67928 OPC_CheckPatternPredicate0,
67929 OPC_EmitInteger32, 2,
67930 OPC_EmitRegisterI32, 0 ,
67931 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VDUP8),
67932 MVT::v16i8, 5, 1, 3, 0, 4, 2,
67933 22, TARGET_VAL(ARMISD::VSHLu),
67934 OPC_RecordChild0,
67935 OPC_RecordChild1,
67936 OPC_MoveParent,
67937 OPC_RecordChild2,
67938 OPC_CheckType, MVT::v16i8,
67939 OPC_CheckPatternPredicate0,
67940 OPC_EmitInteger32, 2,
67941 OPC_EmitRegisterI32, 0 ,
67942 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu8),
67943 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67944 22, TARGET_VAL(ARMISD::VSHLs),
67945 OPC_RecordChild0,
67946 OPC_RecordChild1,
67947 OPC_MoveParent,
67948 OPC_RecordChild2,
67949 OPC_CheckType, MVT::v16i8,
67950 OPC_CheckPatternPredicate0,
67951 OPC_EmitInteger32, 2,
67952 OPC_EmitRegisterI32, 0 ,
67953 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs8),
67954 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67955 22, TARGET_VAL(ISD::MULHS),
67956 OPC_RecordChild0,
67957 OPC_RecordChild1,
67958 OPC_MoveParent,
67959 OPC_RecordChild2,
67960 OPC_CheckType, MVT::v16i8,
67961 OPC_CheckPatternPredicate0,
67962 OPC_EmitInteger32, 2,
67963 OPC_EmitRegisterI32, 0 ,
67964 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHs8),
67965 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67966 22, TARGET_VAL(ISD::MULHU),
67967 OPC_RecordChild0,
67968 OPC_RecordChild1,
67969 OPC_MoveParent,
67970 OPC_RecordChild2,
67971 OPC_CheckType, MVT::v16i8,
67972 OPC_CheckPatternPredicate0,
67973 OPC_EmitInteger32, 2,
67974 OPC_EmitRegisterI32, 0 ,
67975 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu8),
67976 MVT::v16i8, 6, 1, 2, 4, 0, 5, 3,
67977 0,
67978 19,
67979 OPC_RecordChild1,
67980 OPC_RecordChild2,
67981 OPC_CheckType, MVT::v16i8,
67982 OPC_CheckPatternPredicate0,
67983 OPC_EmitInteger32, 0,
67984 OPC_EmitRegisterI32, 0 ,
67985 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
67986 MVT::v16i8, 5, 1, 2, 3, 0, 4,
67987 0,
67988 40,
67989 OPC_CheckChild0Type, MVT::v2i1,
67990 OPC_RecordChild1,
67991 OPC_RecordChild2,
67992 OPC_SwitchType , 15, MVT::v2i64,
67993 OPC_CheckPatternPredicate0,
67994 OPC_EmitInteger32, 0,
67995 OPC_EmitRegisterI32, 0 ,
67996 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
67997 MVT::v2i64, 5, 1, 2, 3, 0, 4,
67998 15, MVT::v2f64,
67999 OPC_CheckPatternPredicate0,
68000 OPC_EmitInteger32, 0,
68001 OPC_EmitRegisterI32, 0 ,
68002 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
68003 MVT::v2f64, 5, 1, 2, 3, 0, 4,
68004 0,
68005 63,
68006 OPC_CheckChild0Type, MVT::v16i8,
68007 OPC_RecordChild1,
68008 OPC_RecordChild2,
68009 OPC_CheckType, MVT::v16i8,
68010 OPC_CheckPatternPredicate0,
68011 OPC_EmitInteger32, 0,
68012 OPC_EmitInteger32, 0,
68013 OPC_EmitInteger32, 0,
68014 OPC_EmitRegisterI32, 0 ,
68015 OPC_EmitRegisterI32, 0 ,
68016 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68017 MVT::v4i32, 0,
68018 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi8),
68019 MVT::v16i8, 5, 4, 5, 6, 7, 8,
68020 OPC_EmitInteger32, 2,
68021 OPC_EmitInteger32, 0,
68022 OPC_EmitRegisterI32, 0 ,
68023 OPC_EmitRegisterI32, 0 ,
68024 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VCMPi8),
68025 MVT::i32, 6, 0, 9, 10, 11, 12, 13,
68026 OPC_EmitRegisterI32, 0 ,
68027 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
68028 MVT::v16i8, 5, 1, 2, 3, 14, 15,
68029 124,
68030 OPC_CheckChild0Type, MVT::v8i16,
68031 OPC_RecordChild1,
68032 OPC_RecordChild2,
68033 OPC_SwitchType , 57, MVT::v8i16,
68034 OPC_CheckPatternPredicate0,
68035 OPC_EmitInteger32, 0,
68036 OPC_EmitInteger32, 0,
68037 OPC_EmitInteger32, 0,
68038 OPC_EmitRegisterI32, 0 ,
68039 OPC_EmitRegisterI32, 0 ,
68040 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68041 MVT::v4i32, 0,
68042 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
68043 MVT::v16i8, 5, 4, 5, 6, 7, 8,
68044 OPC_EmitInteger32, 2,
68045 OPC_EmitInteger32, 0,
68046 OPC_EmitRegisterI32, 0 ,
68047 OPC_EmitRegisterI32, 0 ,
68048 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VCMPi16),
68049 MVT::i32, 6, 0, 9, 10, 11, 12, 13,
68050 OPC_EmitRegisterI32, 0 ,
68051 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
68052 MVT::v8i16, 5, 1, 2, 3, 14, 15,
68053 57, MVT::v8f16,
68054 OPC_CheckPatternPredicate0,
68055 OPC_EmitInteger32, 0,
68056 OPC_EmitInteger32, 0,
68057 OPC_EmitInteger32, 0,
68058 OPC_EmitRegisterI32, 0 ,
68059 OPC_EmitRegisterI32, 0 ,
68060 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68061 MVT::v4i32, 0,
68062 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
68063 MVT::v16i8, 5, 4, 5, 6, 7, 8,
68064 OPC_EmitInteger32, 2,
68065 OPC_EmitInteger32, 0,
68066 OPC_EmitRegisterI32, 0 ,
68067 OPC_EmitRegisterI32, 0 ,
68068 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VCMPi16),
68069 MVT::i32, 6, 0, 9, 10, 11, 12, 13,
68070 OPC_EmitRegisterI32, 0 ,
68071 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
68072 MVT::v8f16, 5, 1, 2, 3, 14, 15,
68073 0,
68074 124,
68075 OPC_CheckChild0Type, MVT::v4i32,
68076 OPC_RecordChild1,
68077 OPC_RecordChild2,
68078 OPC_SwitchType , 57, MVT::v4i32,
68079 OPC_CheckPatternPredicate0,
68080 OPC_EmitInteger32, 0,
68081 OPC_EmitInteger32, 0,
68082 OPC_EmitInteger32, 0,
68083 OPC_EmitRegisterI32, 0 ,
68084 OPC_EmitRegisterI32, 0 ,
68085 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68086 MVT::v4i32, 0,
68087 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
68088 MVT::v16i8, 5, 4, 5, 6, 7, 8,
68089 OPC_EmitInteger32, 2,
68090 OPC_EmitInteger32, 0,
68091 OPC_EmitRegisterI32, 0 ,
68092 OPC_EmitRegisterI32, 0 ,
68093 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VCMPi32),
68094 MVT::i32, 6, 0, 9, 10, 11, 12, 13,
68095 OPC_EmitRegisterI32, 0 ,
68096 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
68097 MVT::v4i32, 5, 1, 2, 3, 14, 15,
68098 57, MVT::v4f32,
68099 OPC_CheckPatternPredicate0,
68100 OPC_EmitInteger32, 0,
68101 OPC_EmitInteger32, 0,
68102 OPC_EmitInteger32, 0,
68103 OPC_EmitRegisterI32, 0 ,
68104 OPC_EmitRegisterI32, 0 ,
68105 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68106 MVT::v4i32, 0,
68107 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
68108 MVT::v16i8, 5, 4, 5, 6, 7, 8,
68109 OPC_EmitInteger32, 2,
68110 OPC_EmitInteger32, 0,
68111 OPC_EmitRegisterI32, 0 ,
68112 OPC_EmitRegisterI32, 0 ,
68113 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VCMPi32),
68114 MVT::i32, 6, 0, 9, 10, 11, 12, 13,
68115 OPC_EmitRegisterI32, 0 ,
68116 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
68117 MVT::v4f32, 5, 1, 2, 3, 14, 15,
68118 0,
68119 0,
68120 0,
68121 19|128,13, TARGET_VAL(ISD::INSERT_VECTOR_ELT),
68122 OPC_Scope, 51|128,1,
68123 OPC_MoveChild0,
68124 OPC_CheckOpcode, TARGET_VAL(ISD::INSERT_VECTOR_ELT),
68125 OPC_MoveChild0,
68126 OPC_CheckOpcode, TARGET_VAL(ISD::INSERT_VECTOR_ELT),
68127 OPC_Scope, 63,
68128 OPC_MoveChild0,
68129 OPC_CheckOpcode, TARGET_VAL(ISD::INSERT_VECTOR_ELT),
68130 OPC_RecordChild0,
68131 OPC_RecordChild1,
68132 OPC_CheckChild2Integer, 0,
68133 OPC_MoveParent,
68134 OPC_RecordChild1,
68135 OPC_CheckChild2Integer, 2,
68136 OPC_MoveParent,
68137 OPC_RecordChild1,
68138 OPC_CheckChild2Integer, 4,
68139 OPC_MoveParent,
68140 OPC_RecordChild1,
68141 OPC_CheckChild2Integer, 6,
68142 OPC_CheckType, MVT::v4i32,
68143 OPC_CheckPatternPredicate0,
68144 OPC_EmitInteger32, 4,
68145 OPC_EmitInteger32, 0,
68146 OPC_EmitInteger32, 28,
68147 OPC_EmitRegisterI32, 0 ,
68148 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOV_q_rr),
68149 MVT::v16i8, 7, 0, 1, 3, 5, 6, 7, 8,
68150 OPC_EmitInteger32, 6,
68151 OPC_EmitInteger32, 2,
68152 OPC_EmitInteger32, 28,
68153 OPC_EmitRegisterI32, 0 ,
68154 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_q_rr),
68155 MVT::v4i32, 7, 9, 2, 4, 10, 11, 12, 13,
68156 104,
68157 OPC_RecordChild0,
68158 OPC_RecordChild1,
68159 OPC_Scope, 49,
68160 OPC_CheckChild2Integer, 2,
68161 OPC_MoveParent,
68162 OPC_RecordChild1,
68163 OPC_CheckChild2Integer, 4,
68164 OPC_MoveParent,
68165 OPC_RecordChild1,
68166 OPC_CheckChild2Integer, 6,
68167 OPC_CheckType, MVT::v4i32,
68168 OPC_CheckPatternPredicate0,
68169 OPC_EmitInteger32, 4,
68170 OPC_EmitInteger32, 28,
68171 OPC_EmitRegisterI32, 0 ,
68172 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOV_to_lane_32),
68173 MVT::v16i8, 5, 0, 2, 4, 5, 6,
68174 OPC_EmitInteger32, 6,
68175 OPC_EmitInteger32, 2,
68176 OPC_EmitInteger32, 28,
68177 OPC_EmitRegisterI32, 0 ,
68178 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_q_rr),
68179 MVT::v4i32, 7, 7, 1, 3, 8, 9, 10, 11,
68180 49,
68181 OPC_CheckChild2Integer, 0,
68182 OPC_MoveParent,
68183 OPC_RecordChild1,
68184 OPC_CheckChild2Integer, 2,
68185 OPC_MoveParent,
68186 OPC_RecordChild1,
68187 OPC_CheckChild2Integer, 4,
68188 OPC_CheckType, MVT::v4i32,
68189 OPC_CheckPatternPredicate0,
68190 OPC_EmitInteger32, 2,
68191 OPC_EmitInteger32, 28,
68192 OPC_EmitRegisterI32, 0 ,
68193 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOV_to_lane_32),
68194 MVT::v16i8, 5, 0, 2, 4, 5, 6,
68195 OPC_EmitInteger32, 4,
68196 OPC_EmitInteger32, 0,
68197 OPC_EmitInteger32, 28,
68198 OPC_EmitRegisterI32, 0 ,
68199 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_q_rr),
68200 MVT::v4i32, 7, 7, 1, 3, 8, 9, 10, 11,
68201 0,
68202 0,
68203 86|128,1,
68204 OPC_RecordChild0,
68205 OPC_MoveChild1,
68206 OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
68207 OPC_RecordMemRef,
68208 OPC_RecordNode,
68209 OPC_CheckFoldableChainNode,
68210 OPC_RecordChild1,
68211 OPC_CheckChild1TypeI32,
68212 OPC_CheckPredicate, 27,
68213 OPC_CheckTypeI32,
68214 OPC_Scope, 66,
68215 OPC_CheckPredicate, 15,
68216 OPC_Scope, 30,
68217 OPC_CheckPredicate3,
68218 OPC_MoveSibling2,
68219 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68220 OPC_RecordNode,
68221 OPC_MoveParent,
68222 OPC_CheckType, MVT::v8i8,
68223 OPC_CheckPatternPredicate1,
68224 OPC_CheckComplexPat0, /*#*/2,
68225 OPC_EmitMergeInputChains1_1,
68226 OPC_EmitConvertToTarget3,
68227 OPC_EmitInteger32, 28,
68228 OPC_EmitRegisterI32, 0 ,
68229 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNd8), 0|OPFL_Chain|OPFL_MemRefs,
68230 MVT::v8i8, 6, 4, 5, 0, 6, 7, 8,
68231 30,
68232 OPC_CheckPredicate4,
68233 OPC_MoveSibling2,
68234 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68235 OPC_RecordNode,
68236 OPC_MoveParent,
68237 OPC_CheckType, MVT::v4i16,
68238 OPC_CheckPatternPredicate1,
68239 OPC_CheckComplexPat0, /*#*/2,
68240 OPC_EmitMergeInputChains1_1,
68241 OPC_EmitConvertToTarget3,
68242 OPC_EmitInteger32, 28,
68243 OPC_EmitRegisterI32, 0 ,
68244 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
68245 MVT::v4i16, 6, 4, 5, 0, 6, 7, 8,
68246 0,
68247 32,
68248 OPC_CheckPredicate, 17,
68249 OPC_MoveSibling2,
68250 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68251 OPC_RecordNode,
68252 OPC_MoveParent,
68253 OPC_CheckType, MVT::v2i32,
68254 OPC_CheckPatternPredicate1,
68255 OPC_CheckComplexPat, /*CP*/8, /*#*/2,
68256 OPC_EmitMergeInputChains1_1,
68257 OPC_EmitConvertToTarget3,
68258 OPC_EmitInteger32, 28,
68259 OPC_EmitRegisterI32, 0 ,
68260 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
68261 MVT::v2i32, 6, 4, 5, 0, 6, 7, 8,
68262 66,
68263 OPC_CheckPredicate, 15,
68264 OPC_Scope, 30,
68265 OPC_CheckPredicate3,
68266 OPC_MoveSibling2,
68267 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68268 OPC_RecordNode,
68269 OPC_MoveParent,
68270 OPC_CheckType, MVT::v16i8,
68271 OPC_CheckPatternPredicate1,
68272 OPC_CheckComplexPat0, /*#*/2,
68273 OPC_EmitMergeInputChains1_1,
68274 OPC_EmitConvertToTarget3,
68275 OPC_EmitInteger32, 28,
68276 OPC_EmitRegisterI32, 0 ,
68277 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNq8Pseudo), 0|OPFL_Chain|OPFL_MemRefs,
68278 MVT::v16i8, 6, 4, 5, 0, 6, 7, 8,
68279 30,
68280 OPC_CheckPredicate4,
68281 OPC_MoveSibling2,
68282 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68283 OPC_RecordNode,
68284 OPC_MoveParent,
68285 OPC_CheckType, MVT::v8i16,
68286 OPC_CheckPatternPredicate1,
68287 OPC_CheckComplexPat0, /*#*/2,
68288 OPC_EmitMergeInputChains1_1,
68289 OPC_EmitConvertToTarget3,
68290 OPC_EmitInteger32, 28,
68291 OPC_EmitRegisterI32, 0 ,
68292 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNq16Pseudo), 0|OPFL_Chain|OPFL_MemRefs,
68293 MVT::v8i16, 6, 4, 5, 0, 6, 7, 8,
68294 0,
68295 31,
68296 OPC_CheckPredicate, 17,
68297 OPC_MoveSibling2,
68298 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68299 OPC_RecordNode,
68300 OPC_MoveParent,
68301 OPC_CheckType, MVT::v4i32,
68302 OPC_CheckPatternPredicate1,
68303 OPC_CheckComplexPat0, /*#*/2,
68304 OPC_EmitMergeInputChains1_1,
68305 OPC_EmitConvertToTarget3,
68306 OPC_EmitInteger32, 28,
68307 OPC_EmitRegisterI32, 0 ,
68308 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNq32Pseudo), 0|OPFL_Chain|OPFL_MemRefs,
68309 MVT::v4i32, 6, 4, 5, 0, 6, 7, 8,
68310 0,
68311 68,
68312 OPC_MoveChild0,
68313 OPC_CheckOpcode, TARGET_VAL(ISD::INSERT_VECTOR_ELT),
68314 OPC_RecordChild0,
68315 OPC_RecordChild1,
68316 OPC_Scope, 29,
68317 OPC_CheckChild2Integer, 2,
68318 OPC_MoveParent,
68319 OPC_RecordChild1,
68320 OPC_CheckChild2Integer, 6,
68321 OPC_CheckType, MVT::v4i32,
68322 OPC_CheckPatternPredicate0,
68323 OPC_EmitInteger32, 6,
68324 OPC_EmitInteger32, 2,
68325 OPC_EmitInteger32, 28,
68326 OPC_EmitRegisterI32, 0 ,
68327 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_q_rr),
68328 MVT::v4i32, 7, 0, 1, 2, 3, 4, 5, 6,
68329 29,
68330 OPC_CheckChild2Integer, 0,
68331 OPC_MoveParent,
68332 OPC_RecordChild1,
68333 OPC_CheckChild2Integer, 4,
68334 OPC_CheckType, MVT::v4i32,
68335 OPC_CheckPatternPredicate0,
68336 OPC_EmitInteger32, 4,
68337 OPC_EmitInteger32, 0,
68338 OPC_EmitInteger32, 28,
68339 OPC_EmitRegisterI32, 0 ,
68340 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_q_rr),
68341 MVT::v4i32, 7, 0, 1, 2, 3, 4, 5, 6,
68342 0,
68343 61|128,9,
68344 OPC_RecordChild0,
68345 OPC_Scope, 31|128,1,
68346 OPC_MoveChild1,
68347 OPC_SwitchOpcode , 82, TARGET_VAL(ARMISD::VGETLANEu),
68348 OPC_RecordChild0,
68349 OPC_CheckChild0Type, MVT::v8i16,
68350 OPC_RecordChild1,
68351 OPC_MoveChild1,
68352 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68353 OPC_CheckPredicate, 48,
68354 OPC_MoveParent,
68355 OPC_MoveSibling2,
68356 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68357 OPC_RecordNode,
68358 OPC_CheckPredicate, 37,
68359 OPC_MoveParent,
68360 OPC_CheckType, MVT::v8i16,
68361 OPC_CheckPatternPredicate, 13,
68362 OPC_EmitStringInteger32, ARM::MQPRRegClassID,
68363 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68364 MVT::v4f32, 2, 0, 4,
68365 OPC_EmitConvertToTarget3,
68366 OPC_EmitNodeXForm, 19, 6,
68367 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68368 MVT::f32, 2, 0, 7,
68369 OPC_EmitConvertToTarget2,
68370 OPC_EmitNodeXForm, 19, 9,
68371 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68372 MVT::f32, 2, 1, 10,
68373 OPC_EmitNode1None, TARGET_VAL(ARM::VINSH),
68374 MVT::f32, 2, 8, 11,
68375 OPC_EmitConvertToTarget3,
68376 OPC_EmitNodeXForm, 19, 13,
68377 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68378 MVT::v4f32, 3, 5, 12, 14,
68379 OPC_EmitStringInteger32, ARM::MQPRRegClassID,
68380 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68381 MVT::v8i16, 2, 15, 16,
68382 68, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
68383 OPC_RecordChild0,
68384 OPC_CheckChild0Type, MVT::v4i32,
68385 OPC_RecordChild1,
68386 OPC_MoveChild1,
68387 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68388 OPC_MoveParent,
68389 OPC_MoveSibling2,
68390 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68391 OPC_RecordNode,
68392 OPC_MoveParent,
68393 OPC_CheckType, MVT::v4i32,
68394 OPC_CheckPatternPredicate0,
68395 OPC_EmitStringInteger32, ARM::MQPRRegClassID,
68396 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68397 MVT::v4f32, 2, 0, 4,
68398 OPC_EmitStringInteger32, ARM::MQPRRegClassID,
68399 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68400 MVT::v4f32, 2, 1, 6,
68401 OPC_EmitConvertToTarget2,
68402 OPC_EmitNodeXForm, 18, 8,
68403 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68404 MVT::f32, 2, 7, 9,
68405 OPC_EmitConvertToTarget3,
68406 OPC_EmitNodeXForm, 18, 11,
68407 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68408 MVT::v4f32, 3, 5, 10, 12,
68409 OPC_EmitStringInteger32, ARM::MQPRRegClassID,
68410 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68411 MVT::v4i32, 2, 13, 14,
68412 0,
68413 29|128,2,
68414 OPC_RecordChild1,
68415 OPC_Scope, 45,
68416 OPC_CheckChild1TypeI32,
68417 OPC_RecordChild2,
68418 OPC_MoveChild2,
68419 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68420 OPC_MoveParent,
68421 OPC_SwitchType , 16, MVT::v8i8,
68422 OPC_CheckPatternPredicate1,
68423 OPC_EmitConvertToTarget2,
68424 OPC_EmitInteger32, 28,
68425 OPC_EmitRegisterI32, 0 ,
68426 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSETLNi8),
68427 MVT::v8i8, 5, 0, 1, 3, 4, 5,
68428 16, MVT::v4i16,
68429 OPC_CheckPatternPredicate1,
68430 OPC_EmitConvertToTarget2,
68431 OPC_EmitInteger32, 28,
68432 OPC_EmitRegisterI32, 0 ,
68433 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSETLNi16),
68434 MVT::v4i16, 5, 0, 1, 3, 4, 5,
68435 0,
68436 45,
68437 OPC_RecordChild2,
68438 OPC_MoveChild2,
68439 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68440 OPC_MoveParent,
68441 OPC_SwitchType , 17, MVT::v2i32,
68442 OPC_CheckPatternPredicate, 24,
68443 OPC_EmitConvertToTarget2,
68444 OPC_EmitInteger32, 28,
68445 OPC_EmitRegisterI32, 0 ,
68446 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSETLNi32),
68447 MVT::v2i32, 5, 0, 1, 3, 4, 5,
68448 16, MVT::v4i32,
68449 OPC_CheckPatternPredicate0,
68450 OPC_EmitConvertToTarget2,
68451 OPC_EmitInteger32, 28,
68452 OPC_EmitRegisterI32, 0 ,
68453 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_to_lane_32),
68454 MVT::v4i32, 5, 0, 1, 3, 4, 5,
68455 0,
68456 9|128,1,
68457 OPC_CheckChild1TypeI32,
68458 OPC_RecordChild2,
68459 OPC_MoveChild2,
68460 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68461 OPC_MoveParent,
68462 OPC_SwitchType , 62, MVT::v16i8,
68463 OPC_Scope, 16,
68464 OPC_CheckPatternPredicate0,
68465 OPC_EmitConvertToTarget2,
68466 OPC_EmitInteger32, 28,
68467 OPC_EmitRegisterI32, 0 ,
68468 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_to_lane_8),
68469 MVT::v16i8, 5, 0, 1, 3, 4, 5,
68470 42,
68471 OPC_CheckPatternPredicate1,
68472 OPC_EmitConvertToTarget2,
68473 OPC_EmitNodeXForm, 16, 3,
68474 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68475 MVT::v8i8, 2, 0, 4,
68476 OPC_EmitConvertToTarget2,
68477 OPC_EmitNodeXForm, 17, 6,
68478 OPC_EmitInteger32, 28,
68479 OPC_EmitRegisterI32, 0 ,
68480 OPC_EmitNode1None, TARGET_VAL(ARM::VSETLNi8),
68481 MVT::v8i8, 5, 5, 1, 7, 8, 9,
68482 OPC_EmitConvertToTarget2,
68483 OPC_EmitNodeXForm, 16, 11,
68484 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68485 MVT::v16i8, 3, 0, 10, 12,
68486 0,
68487 62, MVT::v8i16,
68488 OPC_Scope, 16,
68489 OPC_CheckPatternPredicate0,
68490 OPC_EmitConvertToTarget2,
68491 OPC_EmitInteger32, 28,
68492 OPC_EmitRegisterI32, 0 ,
68493 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_to_lane_16),
68494 MVT::v8i16, 5, 0, 1, 3, 4, 5,
68495 42,
68496 OPC_CheckPatternPredicate1,
68497 OPC_EmitConvertToTarget2,
68498 OPC_EmitNodeXForm, 5, 3,
68499 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68500 MVT::v4i16, 2, 0, 4,
68501 OPC_EmitConvertToTarget2,
68502 OPC_EmitNodeXForm, 6, 6,
68503 OPC_EmitInteger32, 28,
68504 OPC_EmitRegisterI32, 0 ,
68505 OPC_EmitNode1None, TARGET_VAL(ARM::VSETLNi16),
68506 MVT::v4i16, 5, 5, 1, 7, 8, 9,
68507 OPC_EmitConvertToTarget2,
68508 OPC_EmitNodeXForm, 5, 11,
68509 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68510 MVT::v8i16, 3, 0, 10, 12,
68511 0,
68512 0,
68513 50,
68514 OPC_RecordChild2,
68515 OPC_MoveChild2,
68516 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68517 OPC_MoveParent,
68518 OPC_CheckType, MVT::v4i32,
68519 OPC_CheckPatternPredicate1,
68520 OPC_EmitConvertToTarget2,
68521 OPC_EmitNodeXForm, 7, 3,
68522 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68523 MVT::v2i32, 2, 0, 4,
68524 OPC_EmitConvertToTarget2,
68525 OPC_EmitNodeXForm, 8, 6,
68526 OPC_EmitInteger32, 28,
68527 OPC_EmitRegisterI32, 0 ,
68528 OPC_EmitNode1None, TARGET_VAL(ARM::VSETLNi32),
68529 MVT::v2i32, 5, 5, 1, 7, 8, 9,
68530 OPC_EmitConvertToTarget2,
68531 OPC_EmitNodeXForm, 7, 11,
68532 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68533 MVT::v4i32, 3, 0, 10, 12,
68534 0,
68535 116|128,2,
68536 OPC_MoveChild1,
68537 OPC_SwitchOpcode , 51|128,1, TARGET_VAL(ISD::LOAD),
68538 OPC_RecordMemRef,
68539 OPC_RecordNode,
68540 OPC_CheckFoldableChainNode,
68541 OPC_RecordChild1,
68542 OPC_CheckChild1TypeI32,
68543 OPC_CheckPredicate, 27,
68544 OPC_CheckPredicate, 17,
68545 OPC_SwitchType , 54, MVT::f16,
68546 OPC_MoveSibling2,
68547 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68548 OPC_RecordNode,
68549 OPC_MoveParent,
68550 OPC_SwitchType , 21, MVT::v4f16,
68551 OPC_CheckPatternPredicate1,
68552 OPC_CheckComplexPat0, /*#*/2,
68553 OPC_EmitMergeInputChains1_1,
68554 OPC_EmitConvertToTarget3,
68555 OPC_EmitInteger32, 28,
68556 OPC_EmitRegisterI32, 0 ,
68557 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
68558 MVT::v4f16, 6, 4, 5, 0, 6, 7, 8,
68559 21, MVT::v8f16,
68560 OPC_CheckPatternPredicate1,
68561 OPC_CheckComplexPat0, /*#*/2,
68562 OPC_EmitMergeInputChains1_1,
68563 OPC_EmitConvertToTarget3,
68564 OPC_EmitInteger32, 28,
68565 OPC_EmitRegisterI32, 0 ,
68566 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNq16Pseudo), 0|OPFL_Chain|OPFL_MemRefs,
68567 MVT::v8f16, 6, 4, 5, 0, 6, 7, 8,
68568 0,
68569 54, MVT::bf16,
68570 OPC_MoveSibling2,
68571 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68572 OPC_RecordNode,
68573 OPC_MoveParent,
68574 OPC_SwitchType , 21, MVT::v4bf16,
68575 OPC_CheckPatternPredicate1,
68576 OPC_CheckComplexPat0, /*#*/2,
68577 OPC_EmitMergeInputChains1_1,
68578 OPC_EmitConvertToTarget3,
68579 OPC_EmitInteger32, 28,
68580 OPC_EmitRegisterI32, 0 ,
68581 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNd16), 0|OPFL_Chain|OPFL_MemRefs,
68582 MVT::v4bf16, 6, 4, 5, 0, 6, 7, 8,
68583 21, MVT::v8bf16,
68584 OPC_CheckPatternPredicate1,
68585 OPC_CheckComplexPat0, /*#*/2,
68586 OPC_EmitMergeInputChains1_1,
68587 OPC_EmitConvertToTarget3,
68588 OPC_EmitInteger32, 28,
68589 OPC_EmitRegisterI32, 0 ,
68590 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNq16Pseudo), 0|OPFL_Chain|OPFL_MemRefs,
68591 MVT::v8bf16, 6, 4, 5, 0, 6, 7, 8,
68592 0,
68593 54, MVT::f32,
68594 OPC_MoveSibling2,
68595 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68596 OPC_RecordNode,
68597 OPC_MoveParent,
68598 OPC_SwitchType , 21, MVT::v2f32,
68599 OPC_CheckPatternPredicate1,
68600 OPC_CheckComplexPat0, /*#*/2,
68601 OPC_EmitMergeInputChains1_1,
68602 OPC_EmitConvertToTarget3,
68603 OPC_EmitInteger32, 28,
68604 OPC_EmitRegisterI32, 0 ,
68605 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNd32), 0|OPFL_Chain|OPFL_MemRefs,
68606 MVT::v2f32, 6, 4, 5, 0, 6, 7, 8,
68607 21, MVT::v4f32,
68608 OPC_CheckPatternPredicate1,
68609 OPC_CheckComplexPat0, /*#*/2,
68610 OPC_EmitMergeInputChains1_1,
68611 OPC_EmitConvertToTarget3,
68612 OPC_EmitInteger32, 28,
68613 OPC_EmitRegisterI32, 0 ,
68614 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1LNq32Pseudo), 0|OPFL_Chain|OPFL_MemRefs,
68615 MVT::v4f32, 6, 4, 5, 0, 6, 7, 8,
68616 0,
68617 0,
68618 54|128,1, TARGET_VAL(ISD::FP_ROUND),
68619 OPC_RecordChild0,
68620 OPC_CheckChild0Type, MVT::f32,
68621 OPC_MoveSibling2,
68622 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68623 OPC_RecordNode,
68624 OPC_Scope, 85,
68625 OPC_CheckPredicate, 48,
68626 OPC_MoveParent,
68627 OPC_SwitchType , 38, MVT::v8f16,
68628 OPC_CheckPatternPredicate, 38,
68629 OPC_EmitConvertToTarget2,
68630 OPC_EmitNodeXForm, 19, 3,
68631 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68632 MVT::f32, 2, 0, 4,
68633 OPC_EmitInteger32, 28,
68634 OPC_EmitRegisterI32, 0 ,
68635 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTBSH),
68636 MVT::f32, 4, 5, 1, 6, 7,
68637 OPC_EmitConvertToTarget2,
68638 OPC_EmitNodeXForm, 19, 9,
68639 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68640 MVT::v8f16, 3, 0, 8, 10,
68641 38, MVT::v4f16,
68642 OPC_CheckPatternPredicate, 38,
68643 OPC_EmitConvertToTarget2,
68644 OPC_EmitNodeXForm, 19, 3,
68645 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68646 MVT::f32, 2, 0, 4,
68647 OPC_EmitInteger32, 28,
68648 OPC_EmitRegisterI32, 0 ,
68649 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTBSH),
68650 MVT::f32, 4, 5, 1, 6, 7,
68651 OPC_EmitConvertToTarget2,
68652 OPC_EmitNodeXForm, 19, 9,
68653 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68654 MVT::v4f16, 3, 0, 8, 10,
68655 0,
68656 85,
68657 OPC_CheckPredicate, 37,
68658 OPC_MoveParent,
68659 OPC_SwitchType , 38, MVT::v8f16,
68660 OPC_CheckPatternPredicate, 38,
68661 OPC_EmitConvertToTarget2,
68662 OPC_EmitNodeXForm, 19, 3,
68663 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68664 MVT::f32, 2, 0, 4,
68665 OPC_EmitInteger32, 28,
68666 OPC_EmitRegisterI32, 0 ,
68667 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTTSH),
68668 MVT::f32, 4, 5, 1, 6, 7,
68669 OPC_EmitConvertToTarget2,
68670 OPC_EmitNodeXForm, 19, 9,
68671 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68672 MVT::v8f16, 3, 0, 8, 10,
68673 38, MVT::v4f16,
68674 OPC_CheckPatternPredicate, 38,
68675 OPC_EmitConvertToTarget2,
68676 OPC_EmitNodeXForm, 19, 3,
68677 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68678 MVT::f32, 2, 0, 4,
68679 OPC_EmitInteger32, 28,
68680 OPC_EmitRegisterI32, 0 ,
68681 OPC_EmitNode1None, TARGET_VAL(ARM::VCVTTSH),
68682 MVT::f32, 4, 5, 1, 6, 7,
68683 OPC_EmitConvertToTarget2,
68684 OPC_EmitNodeXForm, 19, 9,
68685 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68686 MVT::v4f16, 3, 0, 8, 10,
68687 0,
68688 0,
68689 0,
68690 2|128,3,
68691 OPC_RecordChild1,
68692 OPC_RecordChild2,
68693 OPC_MoveChild2,
68694 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
68695 OPC_Scope, 30,
68696 OPC_CheckPredicate, 48,
68697 OPC_MoveParent,
68698 OPC_CheckType, MVT::v8f16,
68699 OPC_CheckPatternPredicate0,
68700 OPC_EmitStringInteger32, ARM::rGPRRegClassID,
68701 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68702 MVT::i32, 2, 1, 3,
68703 OPC_EmitConvertToTarget2,
68704 OPC_EmitInteger32, 28,
68705 OPC_EmitRegisterI32, 0 ,
68706 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_to_lane_16),
68707 MVT::v8f16, 5, 0, 4, 5, 6, 7,
68708 64,
68709 OPC_CheckPredicate, 37,
68710 OPC_MoveParent,
68711 OPC_CheckType, MVT::v8f16,
68712 OPC_CheckPatternPredicate, 13,
68713 OPC_EmitStringInteger32, ARM::MQPRRegClassID,
68714 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68715 MVT::v4f32, 2, 0, 3,
68716 OPC_EmitConvertToTarget2,
68717 OPC_EmitNodeXForm, 19, 5,
68718 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68719 MVT::f32, 2, 0, 6,
68720 OPC_EmitStringInteger32, ARM::SPRRegClassID,
68721 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68722 MVT::f32, 2, 1, 8,
68723 OPC_EmitNode1None, TARGET_VAL(ARM::VINSH),
68724 MVT::f32, 2, 7, 9,
68725 OPC_EmitConvertToTarget2,
68726 OPC_EmitNodeXForm, 19, 11,
68727 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68728 MVT::v4f32, 3, 4, 10, 12,
68729 OPC_EmitStringInteger32, ARM::MQPRRegClassID,
68730 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68731 MVT::v8f16, 2, 13, 14,
68732 24|128,2,
68733 OPC_MoveParent,
68734 OPC_SwitchType , 39, MVT::v2f64,
68735 OPC_Scope, 13,
68736 OPC_CheckPatternPredicate1,
68737 OPC_EmitConvertToTarget2,
68738 OPC_EmitNodeXForm, 20, 3,
68739 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68740 MVT::v2f64, 3, 0, 1, 4,
68741 22,
68742 OPC_CheckPatternPredicate0,
68743 OPC_EmitStringInteger32, ARM::MQPRRegClassID,
68744 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68745 MVT::v2f64, 2, 0, 3,
68746 OPC_EmitConvertToTarget2,
68747 OPC_EmitNodeXForm, 20, 5,
68748 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68749 MVT::v2f64, 3, 4, 1, 6,
68750 0,
68751 22, MVT::v2f32,
68752 OPC_CheckPatternPredicate1,
68753 OPC_EmitStringInteger32, ARM::DPR_VFP2RegClassID,
68754 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68755 MVT::v2f32, 2, 0, 3,
68756 OPC_EmitConvertToTarget2,
68757 OPC_EmitNodeXForm, 18, 5,
68758 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68759 MVT::v2f32, 3, 4, 1, 6,
68760 48, MVT::v4f32,
68761 OPC_Scope, 22,
68762 OPC_CheckPatternPredicate1,
68763 OPC_EmitStringInteger32, ARM::QPR_VFP2RegClassID,
68764 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68765 MVT::v4f32, 2, 0, 3,
68766 OPC_EmitConvertToTarget2,
68767 OPC_EmitNodeXForm, 18, 5,
68768 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68769 MVT::v4f32, 3, 4, 1, 6,
68770 22,
68771 OPC_CheckPatternPredicate0,
68772 OPC_EmitStringInteger32, ARM::MQPRRegClassID,
68773 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68774 MVT::v4f32, 2, 0, 3,
68775 OPC_EmitConvertToTarget2,
68776 OPC_EmitNodeXForm, 18, 5,
68777 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68778 MVT::v4f32, 3, 4, 1, 6,
68779 0,
68780 25, MVT::v4f16,
68781 OPC_CheckPatternPredicate1,
68782 OPC_EmitStringInteger32, ARM::GPRRegClassID,
68783 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68784 MVT::i32, 2, 1, 3,
68785 OPC_EmitConvertToTarget2,
68786 OPC_EmitInteger32, 28,
68787 OPC_EmitRegisterI32, 0 ,
68788 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSETLNi16),
68789 MVT::v4f16, 5, 0, 4, 5, 6, 7,
68790 26, MVT::v4bf16,
68791 OPC_CheckPatternPredicate, 27,
68792 OPC_EmitStringInteger32, ARM::GPRRegClassID,
68793 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68794 MVT::i32, 2, 1, 3,
68795 OPC_EmitConvertToTarget2,
68796 OPC_EmitInteger32, 28,
68797 OPC_EmitRegisterI32, 0 ,
68798 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSETLNi16),
68799 MVT::v4bf16, 5, 0, 4, 5, 6, 7,
68800 51, MVT::v8f16,
68801 OPC_CheckPatternPredicate1,
68802 OPC_EmitConvertToTarget2,
68803 OPC_EmitNodeXForm, 5, 3,
68804 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68805 MVT::v4i16, 2, 0, 4,
68806 OPC_EmitStringInteger32, ARM::GPRRegClassID,
68807 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68808 MVT::i32, 2, 1, 6,
68809 OPC_EmitConvertToTarget2,
68810 OPC_EmitNodeXForm, 6, 8,
68811 OPC_EmitInteger32, 28,
68812 OPC_EmitRegisterI32, 0 ,
68813 OPC_EmitNode1None, TARGET_VAL(ARM::VSETLNi16),
68814 MVT::v4i16, 5, 5, 7, 9, 10, 11,
68815 OPC_EmitConvertToTarget2,
68816 OPC_EmitNodeXForm, 5, 13,
68817 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68818 MVT::v8f16, 3, 0, 12, 14,
68819 52, MVT::v8bf16,
68820 OPC_CheckPatternPredicate, 27,
68821 OPC_EmitConvertToTarget2,
68822 OPC_EmitNodeXForm, 5, 3,
68823 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
68824 MVT::v4i16, 2, 0, 4,
68825 OPC_EmitStringInteger32, ARM::GPRRegClassID,
68826 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
68827 MVT::i32, 2, 1, 6,
68828 OPC_EmitConvertToTarget2,
68829 OPC_EmitNodeXForm, 6, 8,
68830 OPC_EmitInteger32, 28,
68831 OPC_EmitRegisterI32, 0 ,
68832 OPC_EmitNode1None, TARGET_VAL(ARM::VSETLNi16),
68833 MVT::v4i16, 5, 5, 7, 9, 10, 11,
68834 OPC_EmitConvertToTarget2,
68835 OPC_EmitNodeXForm, 5, 13,
68836 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
68837 MVT::v8bf16, 3, 0, 12, 14,
68838 0,
68839 0,
68840 0,
68841 0,
68842 122|128,8, TARGET_VAL(ARMISD::VSHRsIMM),
68843 OPC_Scope, 6|128,7,
68844 OPC_MoveChild0,
68845 OPC_SwitchOpcode , 74|128,5, TARGET_VAL(ISD::ADD),
68846 OPC_Scope, 59|128,3,
68847 OPC_MoveChild0,
68848 OPC_SwitchOpcode , 77|128,1, TARGET_VAL(ISD::ADD),
68849 OPC_RecordChild0,
68850 OPC_RecordChild1,
68851 OPC_CheckPredicate, 25,
68852 OPC_MoveSibling1,
68853 OPC_SwitchOpcode , 106, TARGET_VAL(ARMISD::VMOVIMM),
68854 OPC_Scope, 34,
68855 OPC_CheckChild0Integer, 2|128,56,
68856 OPC_MoveParent,
68857 OPC_CheckPredicate, 25,
68858 OPC_MoveParent,
68859 OPC_CheckChild1Integer, 2,
68860 OPC_CheckType, MVT::v16i8,
68861 OPC_CheckPatternPredicate0,
68862 OPC_EmitInteger32, 0,
68863 OPC_EmitRegisterI32, 0 ,
68864 OPC_EmitRegisterI32, 0 ,
68865 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68866 MVT::v4i32, 0,
68867 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs8),
68868 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
68869 34,
68870 OPC_CheckChild0Integer, 2|128,32,
68871 OPC_MoveParent,
68872 OPC_CheckPredicate, 25,
68873 OPC_MoveParent,
68874 OPC_CheckChild1Integer, 2,
68875 OPC_CheckType, MVT::v8i16,
68876 OPC_CheckPatternPredicate0,
68877 OPC_EmitInteger32, 0,
68878 OPC_EmitRegisterI32, 0 ,
68879 OPC_EmitRegisterI32, 0 ,
68880 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68881 MVT::v4i32, 0,
68882 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs16),
68883 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
68884 33,
68885 OPC_CheckChild0Integer, 2,
68886 OPC_MoveParent,
68887 OPC_CheckPredicate, 25,
68888 OPC_MoveParent,
68889 OPC_CheckChild1Integer, 2,
68890 OPC_CheckType, MVT::v4i32,
68891 OPC_CheckPatternPredicate0,
68892 OPC_EmitInteger32, 0,
68893 OPC_EmitRegisterI32, 0 ,
68894 OPC_EmitRegisterI32, 0 ,
68895 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68896 MVT::v4i32, 0,
68897 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs32),
68898 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
68899 0,
68900 86, TARGET_VAL(ARMISD::VDUP),
68901 OPC_CheckChild0Integer, 2,
68902 OPC_CheckChild0TypeI32,
68903 OPC_MoveParent,
68904 OPC_CheckPredicate, 25,
68905 OPC_MoveParent,
68906 OPC_CheckChild1Integer, 2,
68907 OPC_SwitchType , 23, MVT::v16i8,
68908 OPC_CheckPatternPredicate0,
68909 OPC_EmitInteger32, 0,
68910 OPC_EmitRegisterI32, 0 ,
68911 OPC_EmitRegisterI32, 0 ,
68912 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68913 MVT::v4i32, 0,
68914 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs8),
68915 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
68916 23, MVT::v8i16,
68917 OPC_CheckPatternPredicate0,
68918 OPC_EmitInteger32, 0,
68919 OPC_EmitRegisterI32, 0 ,
68920 OPC_EmitRegisterI32, 0 ,
68921 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68922 MVT::v4i32, 0,
68923 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs16),
68924 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
68925 23, MVT::v4i32,
68926 OPC_CheckPatternPredicate0,
68927 OPC_EmitInteger32, 0,
68928 OPC_EmitRegisterI32, 0 ,
68929 OPC_EmitRegisterI32, 0 ,
68930 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68931 MVT::v4i32, 0,
68932 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs32),
68933 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
68934 0,
68935 0,
68936 2|128,1, TARGET_VAL(ARMISD::VMOVIMM),
68937 OPC_Scope, 42,
68938 OPC_CheckChild0Integer, 2|128,56,
68939 OPC_MoveSibling1,
68940 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
68941 OPC_RecordChild0,
68942 OPC_RecordChild1,
68943 OPC_CheckPredicate, 25,
68944 OPC_MoveParent,
68945 OPC_CheckPredicate, 25,
68946 OPC_MoveParent,
68947 OPC_CheckChild1Integer, 2,
68948 OPC_CheckType, MVT::v16i8,
68949 OPC_CheckPatternPredicate0,
68950 OPC_EmitInteger32, 0,
68951 OPC_EmitRegisterI32, 0 ,
68952 OPC_EmitRegisterI32, 0 ,
68953 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68954 MVT::v4i32, 0,
68955 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs8),
68956 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
68957 42,
68958 OPC_CheckChild0Integer, 2|128,32,
68959 OPC_MoveSibling1,
68960 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
68961 OPC_RecordChild0,
68962 OPC_RecordChild1,
68963 OPC_CheckPredicate, 25,
68964 OPC_MoveParent,
68965 OPC_CheckPredicate, 25,
68966 OPC_MoveParent,
68967 OPC_CheckChild1Integer, 2,
68968 OPC_CheckType, MVT::v8i16,
68969 OPC_CheckPatternPredicate0,
68970 OPC_EmitInteger32, 0,
68971 OPC_EmitRegisterI32, 0 ,
68972 OPC_EmitRegisterI32, 0 ,
68973 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68974 MVT::v4i32, 0,
68975 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs16),
68976 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
68977 41,
68978 OPC_CheckChild0Integer, 2,
68979 OPC_MoveSibling1,
68980 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
68981 OPC_RecordChild0,
68982 OPC_RecordChild1,
68983 OPC_CheckPredicate, 25,
68984 OPC_MoveParent,
68985 OPC_CheckPredicate, 25,
68986 OPC_MoveParent,
68987 OPC_CheckChild1Integer, 2,
68988 OPC_CheckType, MVT::v4i32,
68989 OPC_CheckPatternPredicate0,
68990 OPC_EmitInteger32, 0,
68991 OPC_EmitRegisterI32, 0 ,
68992 OPC_EmitRegisterI32, 0 ,
68993 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
68994 MVT::v4i32, 0,
68995 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs32),
68996 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
68997 0,
68998 94, TARGET_VAL(ARMISD::VDUP),
68999 OPC_CheckChild0Integer, 2,
69000 OPC_CheckChild0TypeI32,
69001 OPC_MoveSibling1,
69002 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
69003 OPC_RecordChild0,
69004 OPC_RecordChild1,
69005 OPC_CheckPredicate, 25,
69006 OPC_MoveParent,
69007 OPC_CheckPredicate, 25,
69008 OPC_MoveParent,
69009 OPC_CheckChild1Integer, 2,
69010 OPC_SwitchType , 23, MVT::v16i8,
69011 OPC_CheckPatternPredicate0,
69012 OPC_EmitInteger32, 0,
69013 OPC_EmitRegisterI32, 0 ,
69014 OPC_EmitRegisterI32, 0 ,
69015 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69016 MVT::v4i32, 0,
69017 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs8),
69018 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69019 23, MVT::v8i16,
69020 OPC_CheckPatternPredicate0,
69021 OPC_EmitInteger32, 0,
69022 OPC_EmitRegisterI32, 0 ,
69023 OPC_EmitRegisterI32, 0 ,
69024 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69025 MVT::v4i32, 0,
69026 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs16),
69027 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69028 23, MVT::v4i32,
69029 OPC_CheckPatternPredicate0,
69030 OPC_EmitInteger32, 0,
69031 OPC_EmitRegisterI32, 0 ,
69032 OPC_EmitRegisterI32, 0 ,
69033 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69034 MVT::v4i32, 0,
69035 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs32),
69036 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69037 0,
69038 0,
69039 90,
69040 OPC_RecordChild0,
69041 OPC_MoveChild1,
69042 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
69043 OPC_RecordChild0,
69044 OPC_CheckChild0TypeI32,
69045 OPC_MoveParent,
69046 OPC_CheckPredicate, 25,
69047 OPC_MoveParent,
69048 OPC_CheckChild1Integer, 2,
69049 OPC_SwitchType , 23, MVT::v16i8,
69050 OPC_CheckPatternPredicate0,
69051 OPC_EmitInteger32, 0,
69052 OPC_EmitRegisterI32, 0 ,
69053 OPC_EmitRegisterI32, 0 ,
69054 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69055 MVT::v4i32, 0,
69056 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s8),
69057 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69058 23, MVT::v8i16,
69059 OPC_CheckPatternPredicate0,
69060 OPC_EmitInteger32, 0,
69061 OPC_EmitRegisterI32, 0 ,
69062 OPC_EmitRegisterI32, 0 ,
69063 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69064 MVT::v4i32, 0,
69065 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s16),
69066 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69067 23, MVT::v4i32,
69068 OPC_CheckPatternPredicate0,
69069 OPC_EmitInteger32, 0,
69070 OPC_EmitRegisterI32, 0 ,
69071 OPC_EmitRegisterI32, 0 ,
69072 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69073 MVT::v4i32, 0,
69074 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s32),
69075 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69076 0,
69077 90,
69078 OPC_MoveChild0,
69079 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
69080 OPC_RecordChild0,
69081 OPC_CheckChild0TypeI32,
69082 OPC_MoveParent,
69083 OPC_RecordChild1,
69084 OPC_CheckPredicate, 25,
69085 OPC_MoveParent,
69086 OPC_CheckChild1Integer, 2,
69087 OPC_SwitchType , 23, MVT::v16i8,
69088 OPC_CheckPatternPredicate0,
69089 OPC_EmitInteger32, 0,
69090 OPC_EmitRegisterI32, 0 ,
69091 OPC_EmitRegisterI32, 0 ,
69092 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69093 MVT::v4i32, 0,
69094 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s8),
69095 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
69096 23, MVT::v8i16,
69097 OPC_CheckPatternPredicate0,
69098 OPC_EmitInteger32, 0,
69099 OPC_EmitRegisterI32, 0 ,
69100 OPC_EmitRegisterI32, 0 ,
69101 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69102 MVT::v4i32, 0,
69103 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s16),
69104 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
69105 23, MVT::v4i32,
69106 OPC_CheckPatternPredicate0,
69107 OPC_EmitInteger32, 0,
69108 OPC_EmitRegisterI32, 0 ,
69109 OPC_EmitRegisterI32, 0 ,
69110 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69111 MVT::v4i32, 0,
69112 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s32),
69113 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
69114 0,
69115 84,
69116 OPC_RecordChild0,
69117 OPC_RecordChild1,
69118 OPC_CheckPredicate, 25,
69119 OPC_MoveParent,
69120 OPC_CheckChild1Integer, 2,
69121 OPC_SwitchType , 23, MVT::v16i8,
69122 OPC_CheckPatternPredicate0,
69123 OPC_EmitInteger32, 0,
69124 OPC_EmitRegisterI32, 0 ,
69125 OPC_EmitRegisterI32, 0 ,
69126 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69127 MVT::v4i32, 0,
69128 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs8),
69129 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69130 23, MVT::v8i16,
69131 OPC_CheckPatternPredicate0,
69132 OPC_EmitInteger32, 0,
69133 OPC_EmitRegisterI32, 0 ,
69134 OPC_EmitRegisterI32, 0 ,
69135 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69136 MVT::v4i32, 0,
69137 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs16),
69138 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69139 23, MVT::v4i32,
69140 OPC_CheckPatternPredicate0,
69141 OPC_EmitInteger32, 0,
69142 OPC_EmitRegisterI32, 0 ,
69143 OPC_EmitRegisterI32, 0 ,
69144 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69145 MVT::v4i32, 0,
69146 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs32),
69147 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69148 0,
69149 0,
69150 49|128,1, TARGET_VAL(ISD::SUB),
69151 OPC_RecordChild0,
69152 OPC_Scope, 89,
69153 OPC_MoveChild1,
69154 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
69155 OPC_RecordChild0,
69156 OPC_CheckChild0TypeI32,
69157 OPC_MoveParent,
69158 OPC_CheckPredicate, 25,
69159 OPC_MoveParent,
69160 OPC_CheckChild1Integer, 2,
69161 OPC_SwitchType , 23, MVT::v16i8,
69162 OPC_CheckPatternPredicate0,
69163 OPC_EmitInteger32, 0,
69164 OPC_EmitRegisterI32, 0 ,
69165 OPC_EmitRegisterI32, 0 ,
69166 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69167 MVT::v4i32, 0,
69168 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s8),
69169 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69170 23, MVT::v8i16,
69171 OPC_CheckPatternPredicate0,
69172 OPC_EmitInteger32, 0,
69173 OPC_EmitRegisterI32, 0 ,
69174 OPC_EmitRegisterI32, 0 ,
69175 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69176 MVT::v4i32, 0,
69177 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s16),
69178 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69179 23, MVT::v4i32,
69180 OPC_CheckPatternPredicate0,
69181 OPC_EmitInteger32, 0,
69182 OPC_EmitRegisterI32, 0 ,
69183 OPC_EmitRegisterI32, 0 ,
69184 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69185 MVT::v4i32, 0,
69186 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_s32),
69187 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69188 0,
69189 83,
69190 OPC_RecordChild1,
69191 OPC_CheckPredicate, 25,
69192 OPC_MoveParent,
69193 OPC_CheckChild1Integer, 2,
69194 OPC_SwitchType , 23, MVT::v16i8,
69195 OPC_CheckPatternPredicate0,
69196 OPC_EmitInteger32, 0,
69197 OPC_EmitRegisterI32, 0 ,
69198 OPC_EmitRegisterI32, 0 ,
69199 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69200 MVT::v4i32, 0,
69201 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBs8),
69202 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69203 23, MVT::v8i16,
69204 OPC_CheckPatternPredicate0,
69205 OPC_EmitInteger32, 0,
69206 OPC_EmitRegisterI32, 0 ,
69207 OPC_EmitRegisterI32, 0 ,
69208 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69209 MVT::v4i32, 0,
69210 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBs16),
69211 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69212 23, MVT::v4i32,
69213 OPC_CheckPatternPredicate0,
69214 OPC_EmitInteger32, 0,
69215 OPC_EmitRegisterI32, 0 ,
69216 OPC_EmitRegisterI32, 0 ,
69217 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69218 MVT::v4i32, 0,
69219 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBs32),
69220 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69221 0,
69222 0,
69223 0,
69224 110|128,1,
69225 OPC_RecordChild0,
69226 OPC_RecordChild1,
69227 OPC_MoveChild1,
69228 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
69229 OPC_Scope, 29,
69230 OPC_CheckPredicate, 28,
69231 OPC_MoveParent,
69232 OPC_CheckType, MVT::v16i8,
69233 OPC_CheckPatternPredicate0,
69234 OPC_EmitConvertToTarget1,
69235 OPC_EmitInteger32, 0,
69236 OPC_EmitRegisterI32, 0 ,
69237 OPC_EmitRegisterI32, 0 ,
69238 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69239 MVT::v4i32, 0,
69240 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_imms8),
69241 MVT::v16i8, 6, 0, 2, 3, 4, 5, 6,
69242 29,
69243 OPC_CheckPredicate, 23,
69244 OPC_MoveParent,
69245 OPC_CheckType, MVT::v8i16,
69246 OPC_CheckPatternPredicate0,
69247 OPC_EmitConvertToTarget1,
69248 OPC_EmitInteger32, 0,
69249 OPC_EmitRegisterI32, 0 ,
69250 OPC_EmitRegisterI32, 0 ,
69251 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69252 MVT::v4i32, 0,
69253 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_imms16),
69254 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
69255 28,
69256 OPC_CheckPredicate5,
69257 OPC_MoveParent,
69258 OPC_CheckType, MVT::v4i32,
69259 OPC_CheckPatternPredicate0,
69260 OPC_EmitConvertToTarget1,
69261 OPC_EmitInteger32, 0,
69262 OPC_EmitRegisterI32, 0 ,
69263 OPC_EmitRegisterI32, 0 ,
69264 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69265 MVT::v4i32, 0,
69266 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_imms32),
69267 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
69268 11|128,1,
69269 OPC_MoveParent,
69270 OPC_SwitchType , 15, MVT::v8i8,
69271 OPC_CheckPatternPredicate1,
69272 OPC_EmitConvertToTarget1,
69273 OPC_EmitInteger32, 28,
69274 OPC_EmitRegisterI32, 0 ,
69275 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRsv8i8),
69276 MVT::v8i8, 4, 0, 2, 3, 4,
69277 15, MVT::v4i16,
69278 OPC_CheckPatternPredicate1,
69279 OPC_EmitConvertToTarget1,
69280 OPC_EmitInteger32, 28,
69281 OPC_EmitRegisterI32, 0 ,
69282 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRsv4i16),
69283 MVT::v4i16, 4, 0, 2, 3, 4,
69284 15, MVT::v2i32,
69285 OPC_CheckPatternPredicate1,
69286 OPC_EmitConvertToTarget1,
69287 OPC_EmitInteger32, 28,
69288 OPC_EmitRegisterI32, 0 ,
69289 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRsv2i32),
69290 MVT::v2i32, 4, 0, 2, 3, 4,
69291 15, MVT::v1i64,
69292 OPC_CheckPatternPredicate1,
69293 OPC_EmitConvertToTarget1,
69294 OPC_EmitInteger32, 28,
69295 OPC_EmitRegisterI32, 0 ,
69296 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRsv1i64),
69297 MVT::v1i64, 4, 0, 2, 3, 4,
69298 15, MVT::v16i8,
69299 OPC_CheckPatternPredicate1,
69300 OPC_EmitConvertToTarget1,
69301 OPC_EmitInteger32, 28,
69302 OPC_EmitRegisterI32, 0 ,
69303 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRsv16i8),
69304 MVT::v16i8, 4, 0, 2, 3, 4,
69305 15, MVT::v8i16,
69306 OPC_CheckPatternPredicate1,
69307 OPC_EmitConvertToTarget1,
69308 OPC_EmitInteger32, 28,
69309 OPC_EmitRegisterI32, 0 ,
69310 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRsv8i16),
69311 MVT::v8i16, 4, 0, 2, 3, 4,
69312 15, MVT::v4i32,
69313 OPC_CheckPatternPredicate1,
69314 OPC_EmitConvertToTarget1,
69315 OPC_EmitInteger32, 28,
69316 OPC_EmitRegisterI32, 0 ,
69317 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRsv4i32),
69318 MVT::v4i32, 4, 0, 2, 3, 4,
69319 15, MVT::v2i64,
69320 OPC_CheckPatternPredicate1,
69321 OPC_EmitConvertToTarget1,
69322 OPC_EmitInteger32, 28,
69323 OPC_EmitRegisterI32, 0 ,
69324 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRsv2i64),
69325 MVT::v2i64, 4, 0, 2, 3, 4,
69326 0,
69327 0,
69328 0,
69329 122|128,8, TARGET_VAL(ARMISD::VSHRuIMM),
69330 OPC_Scope, 6|128,7,
69331 OPC_MoveChild0,
69332 OPC_SwitchOpcode , 74|128,5, TARGET_VAL(ISD::ADD),
69333 OPC_Scope, 59|128,3,
69334 OPC_MoveChild0,
69335 OPC_SwitchOpcode , 77|128,1, TARGET_VAL(ISD::ADD),
69336 OPC_RecordChild0,
69337 OPC_RecordChild1,
69338 OPC_CheckPredicate, 26,
69339 OPC_MoveSibling1,
69340 OPC_SwitchOpcode , 106, TARGET_VAL(ARMISD::VMOVIMM),
69341 OPC_Scope, 34,
69342 OPC_CheckChild0Integer, 2|128,56,
69343 OPC_MoveParent,
69344 OPC_CheckPredicate, 26,
69345 OPC_MoveParent,
69346 OPC_CheckChild1Integer, 2,
69347 OPC_CheckType, MVT::v16i8,
69348 OPC_CheckPatternPredicate0,
69349 OPC_EmitInteger32, 0,
69350 OPC_EmitRegisterI32, 0 ,
69351 OPC_EmitRegisterI32, 0 ,
69352 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69353 MVT::v4i32, 0,
69354 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu8),
69355 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69356 34,
69357 OPC_CheckChild0Integer, 2|128,32,
69358 OPC_MoveParent,
69359 OPC_CheckPredicate, 26,
69360 OPC_MoveParent,
69361 OPC_CheckChild1Integer, 2,
69362 OPC_CheckType, MVT::v8i16,
69363 OPC_CheckPatternPredicate0,
69364 OPC_EmitInteger32, 0,
69365 OPC_EmitRegisterI32, 0 ,
69366 OPC_EmitRegisterI32, 0 ,
69367 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69368 MVT::v4i32, 0,
69369 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu16),
69370 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69371 33,
69372 OPC_CheckChild0Integer, 2,
69373 OPC_MoveParent,
69374 OPC_CheckPredicate, 26,
69375 OPC_MoveParent,
69376 OPC_CheckChild1Integer, 2,
69377 OPC_CheckType, MVT::v4i32,
69378 OPC_CheckPatternPredicate0,
69379 OPC_EmitInteger32, 0,
69380 OPC_EmitRegisterI32, 0 ,
69381 OPC_EmitRegisterI32, 0 ,
69382 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69383 MVT::v4i32, 0,
69384 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu32),
69385 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69386 0,
69387 86, TARGET_VAL(ARMISD::VDUP),
69388 OPC_CheckChild0Integer, 2,
69389 OPC_CheckChild0TypeI32,
69390 OPC_MoveParent,
69391 OPC_CheckPredicate, 26,
69392 OPC_MoveParent,
69393 OPC_CheckChild1Integer, 2,
69394 OPC_SwitchType , 23, MVT::v16i8,
69395 OPC_CheckPatternPredicate0,
69396 OPC_EmitInteger32, 0,
69397 OPC_EmitRegisterI32, 0 ,
69398 OPC_EmitRegisterI32, 0 ,
69399 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69400 MVT::v4i32, 0,
69401 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu8),
69402 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69403 23, MVT::v8i16,
69404 OPC_CheckPatternPredicate0,
69405 OPC_EmitInteger32, 0,
69406 OPC_EmitRegisterI32, 0 ,
69407 OPC_EmitRegisterI32, 0 ,
69408 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69409 MVT::v4i32, 0,
69410 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu16),
69411 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69412 23, MVT::v4i32,
69413 OPC_CheckPatternPredicate0,
69414 OPC_EmitInteger32, 0,
69415 OPC_EmitRegisterI32, 0 ,
69416 OPC_EmitRegisterI32, 0 ,
69417 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69418 MVT::v4i32, 0,
69419 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu32),
69420 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69421 0,
69422 0,
69423 2|128,1, TARGET_VAL(ARMISD::VMOVIMM),
69424 OPC_Scope, 42,
69425 OPC_CheckChild0Integer, 2|128,56,
69426 OPC_MoveSibling1,
69427 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
69428 OPC_RecordChild0,
69429 OPC_RecordChild1,
69430 OPC_CheckPredicate, 26,
69431 OPC_MoveParent,
69432 OPC_CheckPredicate, 26,
69433 OPC_MoveParent,
69434 OPC_CheckChild1Integer, 2,
69435 OPC_CheckType, MVT::v16i8,
69436 OPC_CheckPatternPredicate0,
69437 OPC_EmitInteger32, 0,
69438 OPC_EmitRegisterI32, 0 ,
69439 OPC_EmitRegisterI32, 0 ,
69440 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69441 MVT::v4i32, 0,
69442 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu8),
69443 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69444 42,
69445 OPC_CheckChild0Integer, 2|128,32,
69446 OPC_MoveSibling1,
69447 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
69448 OPC_RecordChild0,
69449 OPC_RecordChild1,
69450 OPC_CheckPredicate, 26,
69451 OPC_MoveParent,
69452 OPC_CheckPredicate, 26,
69453 OPC_MoveParent,
69454 OPC_CheckChild1Integer, 2,
69455 OPC_CheckType, MVT::v8i16,
69456 OPC_CheckPatternPredicate0,
69457 OPC_EmitInteger32, 0,
69458 OPC_EmitRegisterI32, 0 ,
69459 OPC_EmitRegisterI32, 0 ,
69460 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69461 MVT::v4i32, 0,
69462 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu16),
69463 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69464 41,
69465 OPC_CheckChild0Integer, 2,
69466 OPC_MoveSibling1,
69467 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
69468 OPC_RecordChild0,
69469 OPC_RecordChild1,
69470 OPC_CheckPredicate, 26,
69471 OPC_MoveParent,
69472 OPC_CheckPredicate, 26,
69473 OPC_MoveParent,
69474 OPC_CheckChild1Integer, 2,
69475 OPC_CheckType, MVT::v4i32,
69476 OPC_CheckPatternPredicate0,
69477 OPC_EmitInteger32, 0,
69478 OPC_EmitRegisterI32, 0 ,
69479 OPC_EmitRegisterI32, 0 ,
69480 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69481 MVT::v4i32, 0,
69482 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu32),
69483 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69484 0,
69485 94, TARGET_VAL(ARMISD::VDUP),
69486 OPC_CheckChild0Integer, 2,
69487 OPC_CheckChild0TypeI32,
69488 OPC_MoveSibling1,
69489 OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
69490 OPC_RecordChild0,
69491 OPC_RecordChild1,
69492 OPC_CheckPredicate, 26,
69493 OPC_MoveParent,
69494 OPC_CheckPredicate, 26,
69495 OPC_MoveParent,
69496 OPC_CheckChild1Integer, 2,
69497 OPC_SwitchType , 23, MVT::v16i8,
69498 OPC_CheckPatternPredicate0,
69499 OPC_EmitInteger32, 0,
69500 OPC_EmitRegisterI32, 0 ,
69501 OPC_EmitRegisterI32, 0 ,
69502 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69503 MVT::v4i32, 0,
69504 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu8),
69505 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69506 23, MVT::v8i16,
69507 OPC_CheckPatternPredicate0,
69508 OPC_EmitInteger32, 0,
69509 OPC_EmitRegisterI32, 0 ,
69510 OPC_EmitRegisterI32, 0 ,
69511 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69512 MVT::v4i32, 0,
69513 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu16),
69514 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69515 23, MVT::v4i32,
69516 OPC_CheckPatternPredicate0,
69517 OPC_EmitInteger32, 0,
69518 OPC_EmitRegisterI32, 0 ,
69519 OPC_EmitRegisterI32, 0 ,
69520 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69521 MVT::v4i32, 0,
69522 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu32),
69523 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69524 0,
69525 0,
69526 90,
69527 OPC_RecordChild0,
69528 OPC_MoveChild1,
69529 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
69530 OPC_RecordChild0,
69531 OPC_CheckChild0TypeI32,
69532 OPC_MoveParent,
69533 OPC_CheckPredicate, 26,
69534 OPC_MoveParent,
69535 OPC_CheckChild1Integer, 2,
69536 OPC_SwitchType , 23, MVT::v16i8,
69537 OPC_CheckPatternPredicate0,
69538 OPC_EmitInteger32, 0,
69539 OPC_EmitRegisterI32, 0 ,
69540 OPC_EmitRegisterI32, 0 ,
69541 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69542 MVT::v4i32, 0,
69543 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u8),
69544 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69545 23, MVT::v8i16,
69546 OPC_CheckPatternPredicate0,
69547 OPC_EmitInteger32, 0,
69548 OPC_EmitRegisterI32, 0 ,
69549 OPC_EmitRegisterI32, 0 ,
69550 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69551 MVT::v4i32, 0,
69552 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u16),
69553 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69554 23, MVT::v4i32,
69555 OPC_CheckPatternPredicate0,
69556 OPC_EmitInteger32, 0,
69557 OPC_EmitRegisterI32, 0 ,
69558 OPC_EmitRegisterI32, 0 ,
69559 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69560 MVT::v4i32, 0,
69561 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u32),
69562 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69563 0,
69564 90,
69565 OPC_MoveChild0,
69566 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
69567 OPC_RecordChild0,
69568 OPC_CheckChild0TypeI32,
69569 OPC_MoveParent,
69570 OPC_RecordChild1,
69571 OPC_CheckPredicate, 26,
69572 OPC_MoveParent,
69573 OPC_CheckChild1Integer, 2,
69574 OPC_SwitchType , 23, MVT::v16i8,
69575 OPC_CheckPatternPredicate0,
69576 OPC_EmitInteger32, 0,
69577 OPC_EmitRegisterI32, 0 ,
69578 OPC_EmitRegisterI32, 0 ,
69579 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69580 MVT::v4i32, 0,
69581 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u8),
69582 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
69583 23, MVT::v8i16,
69584 OPC_CheckPatternPredicate0,
69585 OPC_EmitInteger32, 0,
69586 OPC_EmitRegisterI32, 0 ,
69587 OPC_EmitRegisterI32, 0 ,
69588 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69589 MVT::v4i32, 0,
69590 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u16),
69591 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
69592 23, MVT::v4i32,
69593 OPC_CheckPatternPredicate0,
69594 OPC_EmitInteger32, 0,
69595 OPC_EmitRegisterI32, 0 ,
69596 OPC_EmitRegisterI32, 0 ,
69597 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69598 MVT::v4i32, 0,
69599 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u32),
69600 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
69601 0,
69602 84,
69603 OPC_RecordChild0,
69604 OPC_RecordChild1,
69605 OPC_CheckPredicate, 26,
69606 OPC_MoveParent,
69607 OPC_CheckChild1Integer, 2,
69608 OPC_SwitchType , 23, MVT::v16i8,
69609 OPC_CheckPatternPredicate0,
69610 OPC_EmitInteger32, 0,
69611 OPC_EmitRegisterI32, 0 ,
69612 OPC_EmitRegisterI32, 0 ,
69613 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69614 MVT::v4i32, 0,
69615 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu8),
69616 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69617 23, MVT::v8i16,
69618 OPC_CheckPatternPredicate0,
69619 OPC_EmitInteger32, 0,
69620 OPC_EmitRegisterI32, 0 ,
69621 OPC_EmitRegisterI32, 0 ,
69622 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69623 MVT::v4i32, 0,
69624 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu16),
69625 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69626 23, MVT::v4i32,
69627 OPC_CheckPatternPredicate0,
69628 OPC_EmitInteger32, 0,
69629 OPC_EmitRegisterI32, 0 ,
69630 OPC_EmitRegisterI32, 0 ,
69631 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69632 MVT::v4i32, 0,
69633 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu32),
69634 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69635 0,
69636 0,
69637 49|128,1, TARGET_VAL(ISD::SUB),
69638 OPC_RecordChild0,
69639 OPC_Scope, 89,
69640 OPC_MoveChild1,
69641 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
69642 OPC_RecordChild0,
69643 OPC_CheckChild0TypeI32,
69644 OPC_MoveParent,
69645 OPC_CheckPredicate, 26,
69646 OPC_MoveParent,
69647 OPC_CheckChild1Integer, 2,
69648 OPC_SwitchType , 23, MVT::v16i8,
69649 OPC_CheckPatternPredicate0,
69650 OPC_EmitInteger32, 0,
69651 OPC_EmitRegisterI32, 0 ,
69652 OPC_EmitRegisterI32, 0 ,
69653 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69654 MVT::v4i32, 0,
69655 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u8),
69656 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69657 23, MVT::v8i16,
69658 OPC_CheckPatternPredicate0,
69659 OPC_EmitInteger32, 0,
69660 OPC_EmitRegisterI32, 0 ,
69661 OPC_EmitRegisterI32, 0 ,
69662 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69663 MVT::v4i32, 0,
69664 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u16),
69665 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69666 23, MVT::v4i32,
69667 OPC_CheckPatternPredicate0,
69668 OPC_EmitInteger32, 0,
69669 OPC_EmitRegisterI32, 0 ,
69670 OPC_EmitRegisterI32, 0 ,
69671 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69672 MVT::v4i32, 0,
69673 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUB_qr_u32),
69674 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69675 0,
69676 83,
69677 OPC_RecordChild1,
69678 OPC_CheckPredicate, 26,
69679 OPC_MoveParent,
69680 OPC_CheckChild1Integer, 2,
69681 OPC_SwitchType , 23, MVT::v16i8,
69682 OPC_CheckPatternPredicate0,
69683 OPC_EmitInteger32, 0,
69684 OPC_EmitRegisterI32, 0 ,
69685 OPC_EmitRegisterI32, 0 ,
69686 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69687 MVT::v4i32, 0,
69688 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBu8),
69689 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
69690 23, MVT::v8i16,
69691 OPC_CheckPatternPredicate0,
69692 OPC_EmitInteger32, 0,
69693 OPC_EmitRegisterI32, 0 ,
69694 OPC_EmitRegisterI32, 0 ,
69695 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69696 MVT::v4i32, 0,
69697 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBu16),
69698 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
69699 23, MVT::v4i32,
69700 OPC_CheckPatternPredicate0,
69701 OPC_EmitInteger32, 0,
69702 OPC_EmitRegisterI32, 0 ,
69703 OPC_EmitRegisterI32, 0 ,
69704 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69705 MVT::v4i32, 0,
69706 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHSUBu32),
69707 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
69708 0,
69709 0,
69710 0,
69711 110|128,1,
69712 OPC_RecordChild0,
69713 OPC_RecordChild1,
69714 OPC_MoveChild1,
69715 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
69716 OPC_Scope, 29,
69717 OPC_CheckPredicate, 28,
69718 OPC_MoveParent,
69719 OPC_CheckType, MVT::v16i8,
69720 OPC_CheckPatternPredicate0,
69721 OPC_EmitConvertToTarget1,
69722 OPC_EmitInteger32, 0,
69723 OPC_EmitRegisterI32, 0 ,
69724 OPC_EmitRegisterI32, 0 ,
69725 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69726 MVT::v4i32, 0,
69727 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_immu8),
69728 MVT::v16i8, 6, 0, 2, 3, 4, 5, 6,
69729 29,
69730 OPC_CheckPredicate, 23,
69731 OPC_MoveParent,
69732 OPC_CheckType, MVT::v8i16,
69733 OPC_CheckPatternPredicate0,
69734 OPC_EmitConvertToTarget1,
69735 OPC_EmitInteger32, 0,
69736 OPC_EmitRegisterI32, 0 ,
69737 OPC_EmitRegisterI32, 0 ,
69738 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69739 MVT::v4i32, 0,
69740 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_immu16),
69741 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
69742 28,
69743 OPC_CheckPredicate5,
69744 OPC_MoveParent,
69745 OPC_CheckType, MVT::v4i32,
69746 OPC_CheckPatternPredicate0,
69747 OPC_EmitConvertToTarget1,
69748 OPC_EmitInteger32, 0,
69749 OPC_EmitRegisterI32, 0 ,
69750 OPC_EmitRegisterI32, 0 ,
69751 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
69752 MVT::v4i32, 0,
69753 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHR_immu32),
69754 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
69755 11|128,1,
69756 OPC_MoveParent,
69757 OPC_SwitchType , 15, MVT::v8i8,
69758 OPC_CheckPatternPredicate1,
69759 OPC_EmitConvertToTarget1,
69760 OPC_EmitInteger32, 28,
69761 OPC_EmitRegisterI32, 0 ,
69762 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRuv8i8),
69763 MVT::v8i8, 4, 0, 2, 3, 4,
69764 15, MVT::v4i16,
69765 OPC_CheckPatternPredicate1,
69766 OPC_EmitConvertToTarget1,
69767 OPC_EmitInteger32, 28,
69768 OPC_EmitRegisterI32, 0 ,
69769 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRuv4i16),
69770 MVT::v4i16, 4, 0, 2, 3, 4,
69771 15, MVT::v2i32,
69772 OPC_CheckPatternPredicate1,
69773 OPC_EmitConvertToTarget1,
69774 OPC_EmitInteger32, 28,
69775 OPC_EmitRegisterI32, 0 ,
69776 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRuv2i32),
69777 MVT::v2i32, 4, 0, 2, 3, 4,
69778 15, MVT::v1i64,
69779 OPC_CheckPatternPredicate1,
69780 OPC_EmitConvertToTarget1,
69781 OPC_EmitInteger32, 28,
69782 OPC_EmitRegisterI32, 0 ,
69783 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRuv1i64),
69784 MVT::v1i64, 4, 0, 2, 3, 4,
69785 15, MVT::v16i8,
69786 OPC_CheckPatternPredicate1,
69787 OPC_EmitConvertToTarget1,
69788 OPC_EmitInteger32, 28,
69789 OPC_EmitRegisterI32, 0 ,
69790 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRuv16i8),
69791 MVT::v16i8, 4, 0, 2, 3, 4,
69792 15, MVT::v8i16,
69793 OPC_CheckPatternPredicate1,
69794 OPC_EmitConvertToTarget1,
69795 OPC_EmitInteger32, 28,
69796 OPC_EmitRegisterI32, 0 ,
69797 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRuv8i16),
69798 MVT::v8i16, 4, 0, 2, 3, 4,
69799 15, MVT::v4i32,
69800 OPC_CheckPatternPredicate1,
69801 OPC_EmitConvertToTarget1,
69802 OPC_EmitInteger32, 28,
69803 OPC_EmitRegisterI32, 0 ,
69804 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRuv4i32),
69805 MVT::v4i32, 4, 0, 2, 3, 4,
69806 15, MVT::v2i64,
69807 OPC_CheckPatternPredicate1,
69808 OPC_EmitConvertToTarget1,
69809 OPC_EmitInteger32, 28,
69810 OPC_EmitRegisterI32, 0 ,
69811 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRuv2i64),
69812 MVT::v2i64, 4, 0, 2, 3, 4,
69813 0,
69814 0,
69815 0,
69816 12|128,3, TARGET_VAL(ISD::MLOAD),
69817 OPC_RecordMemRef,
69818 OPC_RecordNode,
69819 OPC_RecordChild1,
69820 OPC_CheckChild1TypeI32,
69821 OPC_MoveChild2,
69822 OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF),
69823 OPC_MoveParent,
69824 OPC_RecordChild3,
69825 OPC_Scope, 32,
69826 OPC_CheckChild3Type, MVT::v16i1,
69827 OPC_MoveChild4,
69828 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
69829 OPC_CheckChild0Integer, 0,
69830 OPC_MoveParent,
69831 OPC_CheckPredicate, 79,
69832 OPC_CheckType, MVT::v16i8,
69833 OPC_CheckPatternPredicate0,
69834 OPC_CheckComplexPat6, /*#*/1,
69835 OPC_EmitMergeInputChains1_0,
69836 OPC_EmitInteger32, 2,
69837 OPC_EmitRegisterI32, 0 ,
69838 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU8), 0|OPFL_Chain|OPFL_MemRefs,
69839 MVT::v16i8, 5, 3, 4, 5, 2, 6,
69840 8|128,1,
69841 OPC_CheckChild3Type, MVT::v8i1,
69842 OPC_MoveChild4,
69843 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
69844 OPC_CheckChild0Integer, 0,
69845 OPC_MoveParent,
69846 OPC_SwitchType , 99, MVT::v8i16,
69847 OPC_Scope, 22,
69848 OPC_CheckPredicate, 80,
69849 OPC_CheckPatternPredicate0,
69850 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
69851 OPC_EmitMergeInputChains1_0,
69852 OPC_EmitInteger32, 2,
69853 OPC_EmitRegisterI32, 0 ,
69854 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16), 0|OPFL_Chain|OPFL_MemRefs,
69855 MVT::v8i16, 5, 3, 4, 5, 2, 6,
69856 73,
69857 OPC_CheckPredicate, 79,
69858 OPC_Scope, 22,
69859 OPC_CheckPredicate, 81,
69860 OPC_CheckPatternPredicate0,
69861 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
69862 OPC_EmitMergeInputChains1_0,
69863 OPC_EmitInteger32, 2,
69864 OPC_EmitRegisterI32, 0 ,
69865 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU16), 0|OPFL_Chain|OPFL_MemRefs,
69866 MVT::v8i16, 5, 3, 4, 5, 2, 6,
69867 22,
69868 OPC_CheckPredicate, 82,
69869 OPC_CheckPatternPredicate0,
69870 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
69871 OPC_EmitMergeInputChains1_0,
69872 OPC_EmitInteger32, 2,
69873 OPC_EmitRegisterI32, 0 ,
69874 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBS16), 0|OPFL_Chain|OPFL_MemRefs,
69875 MVT::v8i16, 5, 3, 4, 5, 2, 6,
69876 22,
69877 OPC_CheckPredicate, 83,
69878 OPC_CheckPatternPredicate0,
69879 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
69880 OPC_EmitMergeInputChains1_0,
69881 OPC_EmitInteger32, 2,
69882 OPC_EmitRegisterI32, 0 ,
69883 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU16), 0|OPFL_Chain|OPFL_MemRefs,
69884 MVT::v8i16, 5, 3, 4, 5, 2, 6,
69885 0,
69886 0,
69887 22, MVT::v8f16,
69888 OPC_CheckPredicate, 80,
69889 OPC_CheckPatternPredicate0,
69890 OPC_CheckComplexPat, /*CP*/12, /*#*/1,
69891 OPC_EmitMergeInputChains1_0,
69892 OPC_EmitInteger32, 2,
69893 OPC_EmitRegisterI32, 0 ,
69894 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU16), 0|OPFL_Chain|OPFL_MemRefs,
69895 MVT::v8f16, 5, 3, 4, 5, 2, 6,
69896 0,
69897 83|128,1,
69898 OPC_CheckChild3Type, MVT::v4i1,
69899 OPC_MoveChild4,
69900 OPC_CheckOpcode, TARGET_VAL(ARMISD::VMOVIMM),
69901 OPC_CheckChild0Integer, 0,
69902 OPC_MoveParent,
69903 OPC_SwitchType , 45|128,1, MVT::v4i32,
69904 OPC_Scope, 22,
69905 OPC_CheckPredicate, 94,
69906 OPC_CheckPatternPredicate0,
69907 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
69908 OPC_EmitMergeInputChains1_0,
69909 OPC_EmitInteger32, 2,
69910 OPC_EmitRegisterI32, 0 ,
69911 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32), 0|OPFL_Chain|OPFL_MemRefs,
69912 MVT::v4i32, 5, 3, 4, 5, 2, 6,
69913 73,
69914 OPC_CheckPredicate, 79,
69915 OPC_Scope, 22,
69916 OPC_CheckPredicate, 81,
69917 OPC_CheckPatternPredicate0,
69918 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
69919 OPC_EmitMergeInputChains1_0,
69920 OPC_EmitInteger32, 2,
69921 OPC_EmitRegisterI32, 0 ,
69922 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU32), 0|OPFL_Chain|OPFL_MemRefs,
69923 MVT::v4i32, 5, 3, 4, 5, 2, 6,
69924 22,
69925 OPC_CheckPredicate, 82,
69926 OPC_CheckPatternPredicate0,
69927 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
69928 OPC_EmitMergeInputChains1_0,
69929 OPC_EmitInteger32, 2,
69930 OPC_EmitRegisterI32, 0 ,
69931 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBS32), 0|OPFL_Chain|OPFL_MemRefs,
69932 MVT::v4i32, 5, 3, 4, 5, 2, 6,
69933 22,
69934 OPC_CheckPredicate, 83,
69935 OPC_CheckPatternPredicate0,
69936 OPC_CheckComplexPat, /*CP*/18, /*#*/1,
69937 OPC_EmitMergeInputChains1_0,
69938 OPC_EmitInteger32, 2,
69939 OPC_EmitRegisterI32, 0 ,
69940 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRBU32), 0|OPFL_Chain|OPFL_MemRefs,
69941 MVT::v4i32, 5, 3, 4, 5, 2, 6,
69942 0,
69943 73,
69944 OPC_CheckPredicate, 80,
69945 OPC_Scope, 22,
69946 OPC_CheckPredicate, 81,
69947 OPC_CheckPatternPredicate0,
69948 OPC_CheckComplexPat, /*CP*/28, /*#*/1,
69949 OPC_EmitMergeInputChains1_0,
69950 OPC_EmitInteger32, 2,
69951 OPC_EmitRegisterI32, 0 ,
69952 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU32), 0|OPFL_Chain|OPFL_MemRefs,
69953 MVT::v4i32, 5, 3, 4, 5, 2, 6,
69954 22,
69955 OPC_CheckPredicate, 82,
69956 OPC_CheckPatternPredicate0,
69957 OPC_CheckComplexPat, /*CP*/28, /*#*/1,
69958 OPC_EmitMergeInputChains1_0,
69959 OPC_EmitInteger32, 2,
69960 OPC_EmitRegisterI32, 0 ,
69961 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHS32), 0|OPFL_Chain|OPFL_MemRefs,
69962 MVT::v4i32, 5, 3, 4, 5, 2, 6,
69963 22,
69964 OPC_CheckPredicate, 83,
69965 OPC_CheckPatternPredicate0,
69966 OPC_CheckComplexPat, /*CP*/28, /*#*/1,
69967 OPC_EmitMergeInputChains1_0,
69968 OPC_EmitInteger32, 2,
69969 OPC_EmitRegisterI32, 0 ,
69970 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRHU32), 0|OPFL_Chain|OPFL_MemRefs,
69971 MVT::v4i32, 5, 3, 4, 5, 2, 6,
69972 0,
69973 0,
69974 22, MVT::v4f32,
69975 OPC_CheckPredicate, 94,
69976 OPC_CheckPatternPredicate0,
69977 OPC_CheckComplexPat, /*CP*/13, /*#*/1,
69978 OPC_EmitMergeInputChains1_0,
69979 OPC_EmitInteger32, 2,
69980 OPC_EmitRegisterI32, 0 ,
69981 OPC_MorphNodeTo1, TARGET_VAL(ARM::MVE_VLDRWU32), 0|OPFL_Chain|OPFL_MemRefs,
69982 MVT::v4f32, 5, 3, 4, 5, 2, 6,
69983 0,
69984 0,
69985 121|128,5, TARGET_VAL(ARMISD::VDUP),
69986 OPC_Scope, 41|128,1,
69987 OPC_MoveChild0,
69988 OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
69989 OPC_RecordMemRef,
69990 OPC_RecordNode,
69991 OPC_RecordChild1,
69992 OPC_CheckChild1TypeI32,
69993 OPC_CheckPredicate, 27,
69994 OPC_CheckTypeI32,
69995 OPC_Scope, 52,
69996 OPC_CheckPredicate, 15,
69997 OPC_Scope, 23,
69998 OPC_CheckPredicate3,
69999 OPC_MoveParent,
70000 OPC_CheckType, MVT::v8i8,
70001 OPC_CheckPatternPredicate1,
70002 OPC_CheckComplexPat, /*CP*/44, /*#*/1,
70003 OPC_EmitMergeInputChains1_0,
70004 OPC_EmitInteger32, 28,
70005 OPC_EmitRegisterI32, 0 ,
70006 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1DUPd8), 0|OPFL_Chain|OPFL_MemRefs,
70007 MVT::v8i8, 4, 2, 3, 4, 5,
70008 23,
70009 OPC_CheckPredicate4,
70010 OPC_MoveParent,
70011 OPC_CheckType, MVT::v4i16,
70012 OPC_CheckPatternPredicate1,
70013 OPC_CheckComplexPat, /*CP*/45, /*#*/1,
70014 OPC_EmitMergeInputChains1_0,
70015 OPC_EmitInteger32, 28,
70016 OPC_EmitRegisterI32, 0 ,
70017 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1DUPd16), 0|OPFL_Chain|OPFL_MemRefs,
70018 MVT::v4i16, 4, 2, 3, 4, 5,
70019 0,
70020 24,
70021 OPC_CheckPredicate, 17,
70022 OPC_MoveParent,
70023 OPC_CheckType, MVT::v2i32,
70024 OPC_CheckPatternPredicate1,
70025 OPC_CheckComplexPat, /*CP*/46, /*#*/1,
70026 OPC_EmitMergeInputChains1_0,
70027 OPC_EmitInteger32, 28,
70028 OPC_EmitRegisterI32, 0 ,
70029 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1DUPd32), 0|OPFL_Chain|OPFL_MemRefs,
70030 MVT::v2i32, 4, 2, 3, 4, 5,
70031 52,
70032 OPC_CheckPredicate, 15,
70033 OPC_Scope, 23,
70034 OPC_CheckPredicate3,
70035 OPC_MoveParent,
70036 OPC_CheckType, MVT::v16i8,
70037 OPC_CheckPatternPredicate1,
70038 OPC_CheckComplexPat, /*CP*/44, /*#*/1,
70039 OPC_EmitMergeInputChains1_0,
70040 OPC_EmitInteger32, 28,
70041 OPC_EmitRegisterI32, 0 ,
70042 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1DUPq8), 0|OPFL_Chain|OPFL_MemRefs,
70043 MVT::v16i8, 4, 2, 3, 4, 5,
70044 23,
70045 OPC_CheckPredicate4,
70046 OPC_MoveParent,
70047 OPC_CheckType, MVT::v8i16,
70048 OPC_CheckPatternPredicate1,
70049 OPC_CheckComplexPat, /*CP*/45, /*#*/1,
70050 OPC_EmitMergeInputChains1_0,
70051 OPC_EmitInteger32, 28,
70052 OPC_EmitRegisterI32, 0 ,
70053 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1DUPq16), 0|OPFL_Chain|OPFL_MemRefs,
70054 MVT::v8i16, 4, 2, 3, 4, 5,
70055 0,
70056 24,
70057 OPC_CheckPredicate, 17,
70058 OPC_MoveParent,
70059 OPC_CheckType, MVT::v4i32,
70060 OPC_CheckPatternPredicate1,
70061 OPC_CheckComplexPat, /*CP*/46, /*#*/1,
70062 OPC_EmitMergeInputChains1_0,
70063 OPC_EmitInteger32, 28,
70064 OPC_EmitRegisterI32, 0 ,
70065 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1DUPq32), 0|OPFL_Chain|OPFL_MemRefs,
70066 MVT::v4i32, 4, 2, 3, 4, 5,
70067 0,
70068 64|128,1,
70069 OPC_RecordChild0,
70070 OPC_CheckChild0TypeI32,
70071 OPC_SwitchType , 13, MVT::v8i8,
70072 OPC_CheckPatternPredicate1,
70073 OPC_EmitInteger32, 28,
70074 OPC_EmitRegisterI32, 0 ,
70075 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUP8d),
70076 MVT::v8i8, 3, 0, 1, 2,
70077 13, MVT::v4i16,
70078 OPC_CheckPatternPredicate1,
70079 OPC_EmitInteger32, 28,
70080 OPC_EmitRegisterI32, 0 ,
70081 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUP16d),
70082 MVT::v4i16, 3, 0, 1, 2,
70083 33, MVT::v2i32,
70084 OPC_Scope, 14,
70085 OPC_CheckPatternPredicate, 110,
70086 OPC_EmitInteger32, 28,
70087 OPC_EmitRegisterI32, 0 ,
70088 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUP32d),
70089 MVT::v2i32, 3, 0, 1, 2,
70090 15,
70091 OPC_CheckPatternPredicate, 111,
70092 OPC_EmitInteger32, 28,
70093 OPC_EmitRegisterI32, 0 ,
70094 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVDRR),
70095 MVT::v2i32, 4, 0, 0, 1, 2,
70096 0,
70097 39, MVT::v16i8,
70098 OPC_Scope, 13,
70099 OPC_CheckPatternPredicate1,
70100 OPC_EmitInteger32, 28,
70101 OPC_EmitRegisterI32, 0 ,
70102 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUP8q),
70103 MVT::v16i8, 3, 0, 1, 2,
70104 22,
70105 OPC_CheckPatternPredicate0,
70106 OPC_EmitInteger32, 0,
70107 OPC_EmitRegisterI32, 0 ,
70108 OPC_EmitRegisterI32, 0 ,
70109 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70110 MVT::v4i32, 0,
70111 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VDUP8),
70112 MVT::v16i8, 5, 0, 1, 2, 3, 4,
70113 0,
70114 39, MVT::v8i16,
70115 OPC_Scope, 13,
70116 OPC_CheckPatternPredicate1,
70117 OPC_EmitInteger32, 28,
70118 OPC_EmitRegisterI32, 0 ,
70119 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUP16q),
70120 MVT::v8i16, 3, 0, 1, 2,
70121 22,
70122 OPC_CheckPatternPredicate0,
70123 OPC_EmitInteger32, 0,
70124 OPC_EmitRegisterI32, 0 ,
70125 OPC_EmitRegisterI32, 0 ,
70126 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70127 MVT::v4i32, 0,
70128 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VDUP16),
70129 MVT::v8i16, 5, 0, 1, 2, 3, 4,
70130 0,
70131 39, MVT::v4i32,
70132 OPC_Scope, 13,
70133 OPC_CheckPatternPredicate1,
70134 OPC_EmitInteger32, 28,
70135 OPC_EmitRegisterI32, 0 ,
70136 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUP32q),
70137 MVT::v4i32, 3, 0, 1, 2,
70138 22,
70139 OPC_CheckPatternPredicate0,
70140 OPC_EmitInteger32, 0,
70141 OPC_EmitRegisterI32, 0 ,
70142 OPC_EmitRegisterI32, 0 ,
70143 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70144 MVT::v4i32, 0,
70145 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VDUP32),
70146 MVT::v4i32, 5, 0, 1, 2, 3, 4,
70147 0,
70148 0,
70149 121,
70150 OPC_MoveChild0,
70151 OPC_SwitchOpcode , 55, TARGET_VAL(ISD::LOAD),
70152 OPC_RecordMemRef,
70153 OPC_RecordNode,
70154 OPC_RecordChild1,
70155 OPC_CheckChild1TypeI32,
70156 OPC_CheckPredicate, 27,
70157 OPC_CheckPredicate, 17,
70158 OPC_CheckType, MVT::f32,
70159 OPC_MoveParent,
70160 OPC_SwitchType , 19, MVT::v2f32,
70161 OPC_CheckPatternPredicate1,
70162 OPC_CheckComplexPat, /*CP*/47, /*#*/1,
70163 OPC_EmitMergeInputChains1_0,
70164 OPC_EmitInteger32, 28,
70165 OPC_EmitRegisterI32, 0 ,
70166 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1DUPd32), 0|OPFL_Chain|OPFL_MemRefs,
70167 MVT::v2f32, 4, 2, 3, 4, 5,
70168 19, MVT::v4f32,
70169 OPC_CheckPatternPredicate1,
70170 OPC_CheckComplexPat, /*CP*/47, /*#*/1,
70171 OPC_EmitMergeInputChains1_0,
70172 OPC_EmitInteger32, 28,
70173 OPC_EmitRegisterI32, 0 ,
70174 OPC_MorphNodeTo1, TARGET_VAL(ARM::VLD1DUPq32), 0|OPFL_Chain|OPFL_MemRefs,
70175 MVT::v4f32, 4, 2, 3, 4, 5,
70176 0,
70177 57, TARGET_VAL(ISD::BITCAST),
70178 OPC_RecordChild0,
70179 OPC_CheckChild0TypeI32,
70180 OPC_CheckType, MVT::f32,
70181 OPC_MoveParent,
70182 OPC_SwitchType , 33, MVT::v2f32,
70183 OPC_Scope, 14,
70184 OPC_CheckPatternPredicate, 110,
70185 OPC_EmitInteger32, 28,
70186 OPC_EmitRegisterI32, 0 ,
70187 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUP32d),
70188 MVT::v2f32, 3, 0, 1, 2,
70189 15,
70190 OPC_CheckPatternPredicate, 111,
70191 OPC_EmitInteger32, 28,
70192 OPC_EmitRegisterI32, 0 ,
70193 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVDRR),
70194 MVT::v2f32, 4, 0, 0, 1, 2,
70195 0,
70196 13, MVT::v4f32,
70197 OPC_CheckPatternPredicate1,
70198 OPC_EmitInteger32, 28,
70199 OPC_EmitRegisterI32, 0 ,
70200 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUP32q),
70201 MVT::v4f32, 3, 0, 1, 2,
70202 0,
70203 0,
70204 14|128,2,
70205 OPC_RecordChild0,
70206 OPC_Scope, 51,
70207 OPC_CheckChild0TypeI32,
70208 OPC_SwitchType , 22, MVT::v8f16,
70209 OPC_CheckPatternPredicate0,
70210 OPC_EmitInteger32, 0,
70211 OPC_EmitRegisterI32, 0 ,
70212 OPC_EmitRegisterI32, 0 ,
70213 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70214 MVT::v4i32, 0,
70215 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VDUP16),
70216 MVT::v8f16, 5, 0, 1, 2, 3, 4,
70217 22, MVT::v4f32,
70218 OPC_CheckPatternPredicate0,
70219 OPC_EmitInteger32, 0,
70220 OPC_EmitRegisterI32, 0 ,
70221 OPC_EmitRegisterI32, 0 ,
70222 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70223 MVT::v4i32, 0,
70224 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VDUP32),
70225 MVT::v4f32, 5, 0, 1, 2, 3, 4,
70226 0,
70227 70,
70228 OPC_CheckChild0Type, MVT::f16,
70229 OPC_SwitchType , 31, MVT::v4f16,
70230 OPC_CheckPatternPredicate1,
70231 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70232 MVT::v4f16, 0,
70233 OPC_EmitStringInteger32, ARM::ssub_0,
70234 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
70235 MVT::v4f16, 3, 1, 0, 2,
70236 OPC_EmitInteger32, 0,
70237 OPC_EmitInteger32, 28,
70238 OPC_EmitRegisterI32, 0 ,
70239 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN16d),
70240 MVT::v4f16, 4, 3, 4, 5, 6,
70241 31, MVT::v8f16,
70242 OPC_CheckPatternPredicate1,
70243 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70244 MVT::v4f16, 0,
70245 OPC_EmitStringInteger32, ARM::ssub_0,
70246 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
70247 MVT::v4f16, 3, 1, 0, 2,
70248 OPC_EmitInteger32, 0,
70249 OPC_EmitInteger32, 28,
70250 OPC_EmitRegisterI32, 0 ,
70251 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN16q),
70252 MVT::v8f16, 4, 3, 4, 5, 6,
70253 0,
70254 70,
70255 OPC_CheckChild0Type, MVT::f32,
70256 OPC_SwitchType , 31, MVT::v2f32,
70257 OPC_CheckPatternPredicate1,
70258 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70259 MVT::v2f32, 0,
70260 OPC_EmitStringInteger32, ARM::ssub_0,
70261 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
70262 MVT::v2f32, 3, 1, 0, 2,
70263 OPC_EmitInteger32, 0,
70264 OPC_EmitInteger32, 28,
70265 OPC_EmitRegisterI32, 0 ,
70266 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN32d),
70267 MVT::v2f32, 4, 3, 4, 5, 6,
70268 31, MVT::v4f32,
70269 OPC_CheckPatternPredicate1,
70270 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70271 MVT::v2f32, 0,
70272 OPC_EmitStringInteger32, ARM::ssub_0,
70273 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
70274 MVT::v2f32, 3, 1, 0, 2,
70275 OPC_EmitInteger32, 0,
70276 OPC_EmitInteger32, 28,
70277 OPC_EmitRegisterI32, 0 ,
70278 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN32q),
70279 MVT::v4f32, 4, 3, 4, 5, 6,
70280 0,
70281 72,
70282 OPC_CheckChild0Type, MVT::bf16,
70283 OPC_SwitchType , 32, MVT::v4bf16,
70284 OPC_CheckPatternPredicate, 27,
70285 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70286 MVT::v4bf16, 0,
70287 OPC_EmitStringInteger32, ARM::ssub_0,
70288 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
70289 MVT::v4bf16, 3, 1, 0, 2,
70290 OPC_EmitInteger32, 0,
70291 OPC_EmitInteger32, 28,
70292 OPC_EmitRegisterI32, 0 ,
70293 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN16d),
70294 MVT::v4bf16, 4, 3, 4, 5, 6,
70295 32, MVT::v8bf16,
70296 OPC_CheckPatternPredicate, 27,
70297 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70298 MVT::v4bf16, 0,
70299 OPC_EmitStringInteger32, ARM::ssub_0,
70300 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
70301 MVT::v4bf16, 3, 1, 0, 2,
70302 OPC_EmitInteger32, 0,
70303 OPC_EmitInteger32, 28,
70304 OPC_EmitRegisterI32, 0 ,
70305 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN16q),
70306 MVT::v8bf16, 4, 3, 4, 5, 6,
70307 0,
70308 0,
70309 0,
70310 106|128,1, TARGET_VAL(ARMISD::VBICIMM),
70311 OPC_Scope, 83,
70312 OPC_MoveChild0,
70313 OPC_SwitchOpcode , 37, TARGET_VAL(ARMISD::VECTOR_REG_CAST),
70314 OPC_MoveChild0,
70315 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
70316 OPC_RecordChild0,
70317 OPC_CheckType, MVT::v16i8,
70318 OPC_MoveParent,
70319 OPC_CheckPredicate1,
70320 OPC_MoveParent,
70321 OPC_CheckChild1Integer, 126|128,43,
70322 OPC_CheckType, MVT::v8i16,
70323 OPC_CheckPatternPredicate0,
70324 OPC_EmitInteger32, 0,
70325 OPC_EmitRegisterI32, 0 ,
70326 OPC_EmitRegisterI32, 0 ,
70327 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70328 MVT::v4i32, 0,
70329 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu8th),
70330 MVT::v8i16, 5, 0, 1, 2, 3, 4,
70331 37, TARGET_VAL(ISD::BITCAST),
70332 OPC_MoveChild0,
70333 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV16),
70334 OPC_RecordChild0,
70335 OPC_CheckType, MVT::v16i8,
70336 OPC_MoveParent,
70337 OPC_CheckPredicate1,
70338 OPC_MoveParent,
70339 OPC_CheckChild1Integer, 126|128,43,
70340 OPC_CheckType, MVT::v8i16,
70341 OPC_CheckPatternPredicate0,
70342 OPC_EmitInteger32, 0,
70343 OPC_EmitRegisterI32, 0 ,
70344 OPC_EmitRegisterI32, 0 ,
70345 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70346 MVT::v4i32, 0,
70347 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu8th),
70348 MVT::v8i16, 5, 0, 1, 2, 3, 4,
70349 0,
70350 18|128,1,
70351 OPC_RecordChild0,
70352 OPC_Scope, 27,
70353 OPC_CheckChild1Integer, 126|128,43,
70354 OPC_CheckType, MVT::v8i16,
70355 OPC_CheckPatternPredicate0,
70356 OPC_EmitInteger32, 0,
70357 OPC_EmitRegisterI32, 0 ,
70358 OPC_EmitRegisterI32, 0 ,
70359 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
70360 MVT::v4i32, 0,
70361 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVLu8bh),
70362 MVT::v8i16, 5, 0, 1, 2, 3, 4,
70363 114,
70364 OPC_RecordChild1,
70365 OPC_MoveChild1,
70366 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
70367 OPC_MoveParent,
70368 OPC_SwitchType , 14, MVT::v4i16,
70369 OPC_CheckPatternPredicate1,
70370 OPC_EmitInteger32, 28,
70371 OPC_EmitRegisterI32, 0 ,
70372 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICiv4i16),
70373 MVT::v4i16, 4, 1, 0, 2, 3,
70374 14, MVT::v2i32,
70375 OPC_CheckPatternPredicate1,
70376 OPC_EmitInteger32, 28,
70377 OPC_EmitRegisterI32, 0 ,
70378 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICiv2i32),
70379 MVT::v2i32, 4, 1, 0, 2, 3,
70380 35, MVT::v8i16,
70381 OPC_Scope, 14,
70382 OPC_CheckPatternPredicate1,
70383 OPC_EmitInteger32, 28,
70384 OPC_EmitRegisterI32, 0 ,
70385 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICiv8i16),
70386 MVT::v8i16, 4, 1, 0, 2, 3,
70387 17,
70388 OPC_CheckPatternPredicate0,
70389 OPC_EmitInteger32, 0,
70390 OPC_EmitRegisterI32, 0 ,
70391 OPC_EmitRegisterI32, 0 ,
70392 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBICimmi16),
70393 MVT::v8i16, 5, 0, 1, 2, 3, 4,
70394 0,
70395 35, MVT::v4i32,
70396 OPC_Scope, 14,
70397 OPC_CheckPatternPredicate1,
70398 OPC_EmitInteger32, 28,
70399 OPC_EmitRegisterI32, 0 ,
70400 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBICiv4i32),
70401 MVT::v4i32, 4, 1, 0, 2, 3,
70402 17,
70403 OPC_CheckPatternPredicate0,
70404 OPC_EmitInteger32, 0,
70405 OPC_EmitRegisterI32, 0 ,
70406 OPC_EmitRegisterI32, 0 ,
70407 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VBICimmi32),
70408 MVT::v4i32, 5, 0, 1, 2, 3, 4,
70409 0,
70410 0,
70411 0,
70412 0,
70413 103|128,1, TARGET_VAL(ARMISD::VQMOVNs),
70414 OPC_RecordChild0,
70415 OPC_Scope, 2|128,1,
70416 OPC_MoveChild1,
70417 OPC_CheckOpcode, TARGET_VAL(ARMISD::VSHRsIMM),
70418 OPC_RecordChild0,
70419 OPC_RecordChild1,
70420 OPC_MoveChild1,
70421 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
70422 OPC_Scope, 28,
70423 OPC_CheckPredicate5,
70424 OPC_MoveParent,
70425 OPC_CheckType, MVT::v4i32,
70426 OPC_MoveParent,
70427 OPC_CheckChild2Integer, 0,
70428 OPC_CheckType, MVT::v8i16,
70429 OPC_CheckPatternPredicate0,
70430 OPC_EmitConvertToTarget2,
70431 OPC_EmitInteger32, 0,
70432 OPC_EmitRegisterI32, 0 ,
70433 OPC_EmitRegisterI32, 0 ,
70434 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhs32),
70435 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
70436 29,
70437 OPC_CheckPredicate, 23,
70438 OPC_MoveParent,
70439 OPC_CheckType, MVT::v8i16,
70440 OPC_MoveParent,
70441 OPC_CheckChild2Integer, 0,
70442 OPC_CheckType, MVT::v16i8,
70443 OPC_CheckPatternPredicate0,
70444 OPC_EmitConvertToTarget2,
70445 OPC_EmitInteger32, 0,
70446 OPC_EmitRegisterI32, 0 ,
70447 OPC_EmitRegisterI32, 0 ,
70448 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhs16),
70449 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
70450 28,
70451 OPC_CheckPredicate5,
70452 OPC_MoveParent,
70453 OPC_CheckType, MVT::v4i32,
70454 OPC_MoveParent,
70455 OPC_CheckChild2Integer, 2,
70456 OPC_CheckType, MVT::v8i16,
70457 OPC_CheckPatternPredicate0,
70458 OPC_EmitConvertToTarget2,
70459 OPC_EmitInteger32, 0,
70460 OPC_EmitRegisterI32, 0 ,
70461 OPC_EmitRegisterI32, 0 ,
70462 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNths32),
70463 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
70464 29,
70465 OPC_CheckPredicate, 23,
70466 OPC_MoveParent,
70467 OPC_CheckType, MVT::v8i16,
70468 OPC_MoveParent,
70469 OPC_CheckChild2Integer, 2,
70470 OPC_CheckType, MVT::v16i8,
70471 OPC_CheckPatternPredicate0,
70472 OPC_EmitConvertToTarget2,
70473 OPC_EmitInteger32, 0,
70474 OPC_EmitRegisterI32, 0 ,
70475 OPC_EmitRegisterI32, 0 ,
70476 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNths16),
70477 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
70478 0,
70479 95,
70480 OPC_RecordChild1,
70481 OPC_SwitchType , 44, MVT::v8i16,
70482 OPC_CheckChild1Type, MVT::v4i32,
70483 OPC_Scope, 19,
70484 OPC_CheckChild2Integer, 0,
70485 OPC_CheckPatternPredicate0,
70486 OPC_EmitInteger32, 0,
70487 OPC_EmitRegisterI32, 0 ,
70488 OPC_EmitRegisterI32, 0 ,
70489 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs32bh),
70490 MVT::v8i16, 5, 0, 1, 2, 3, 4,
70491 19,
70492 OPC_CheckChild2Integer, 2,
70493 OPC_CheckPatternPredicate0,
70494 OPC_EmitInteger32, 0,
70495 OPC_EmitRegisterI32, 0 ,
70496 OPC_EmitRegisterI32, 0 ,
70497 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs32th),
70498 MVT::v8i16, 5, 0, 1, 2, 3, 4,
70499 0,
70500 44, MVT::v16i8,
70501 OPC_CheckChild1Type, MVT::v8i16,
70502 OPC_Scope, 19,
70503 OPC_CheckChild2Integer, 0,
70504 OPC_CheckPatternPredicate0,
70505 OPC_EmitInteger32, 0,
70506 OPC_EmitRegisterI32, 0 ,
70507 OPC_EmitRegisterI32, 0 ,
70508 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs16bh),
70509 MVT::v16i8, 5, 0, 1, 2, 3, 4,
70510 19,
70511 OPC_CheckChild2Integer, 2,
70512 OPC_CheckPatternPredicate0,
70513 OPC_EmitInteger32, 0,
70514 OPC_EmitRegisterI32, 0 ,
70515 OPC_EmitRegisterI32, 0 ,
70516 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNs16th),
70517 MVT::v16i8, 5, 0, 1, 2, 3, 4,
70518 0,
70519 0,
70520 0,
70521 103|128,1, TARGET_VAL(ARMISD::VQMOVNu),
70522 OPC_RecordChild0,
70523 OPC_Scope, 2|128,1,
70524 OPC_MoveChild1,
70525 OPC_CheckOpcode, TARGET_VAL(ARMISD::VSHRuIMM),
70526 OPC_RecordChild0,
70527 OPC_RecordChild1,
70528 OPC_MoveChild1,
70529 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
70530 OPC_Scope, 28,
70531 OPC_CheckPredicate5,
70532 OPC_MoveParent,
70533 OPC_CheckType, MVT::v4i32,
70534 OPC_MoveParent,
70535 OPC_CheckChild2Integer, 0,
70536 OPC_CheckType, MVT::v8i16,
70537 OPC_CheckPatternPredicate0,
70538 OPC_EmitConvertToTarget2,
70539 OPC_EmitInteger32, 0,
70540 OPC_EmitRegisterI32, 0 ,
70541 OPC_EmitRegisterI32, 0 ,
70542 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhu32),
70543 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
70544 29,
70545 OPC_CheckPredicate, 23,
70546 OPC_MoveParent,
70547 OPC_CheckType, MVT::v8i16,
70548 OPC_MoveParent,
70549 OPC_CheckChild2Integer, 0,
70550 OPC_CheckType, MVT::v16i8,
70551 OPC_CheckPatternPredicate0,
70552 OPC_EmitConvertToTarget2,
70553 OPC_EmitInteger32, 0,
70554 OPC_EmitRegisterI32, 0 ,
70555 OPC_EmitRegisterI32, 0 ,
70556 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNbhu16),
70557 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
70558 28,
70559 OPC_CheckPredicate5,
70560 OPC_MoveParent,
70561 OPC_CheckType, MVT::v4i32,
70562 OPC_MoveParent,
70563 OPC_CheckChild2Integer, 2,
70564 OPC_CheckType, MVT::v8i16,
70565 OPC_CheckPatternPredicate0,
70566 OPC_EmitConvertToTarget2,
70567 OPC_EmitInteger32, 0,
70568 OPC_EmitRegisterI32, 0 ,
70569 OPC_EmitRegisterI32, 0 ,
70570 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNthu32),
70571 MVT::v8i16, 6, 0, 1, 3, 4, 5, 6,
70572 29,
70573 OPC_CheckPredicate, 23,
70574 OPC_MoveParent,
70575 OPC_CheckType, MVT::v8i16,
70576 OPC_MoveParent,
70577 OPC_CheckChild2Integer, 2,
70578 OPC_CheckType, MVT::v16i8,
70579 OPC_CheckPatternPredicate0,
70580 OPC_EmitConvertToTarget2,
70581 OPC_EmitInteger32, 0,
70582 OPC_EmitRegisterI32, 0 ,
70583 OPC_EmitRegisterI32, 0 ,
70584 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSHRNthu16),
70585 MVT::v16i8, 6, 0, 1, 3, 4, 5, 6,
70586 0,
70587 95,
70588 OPC_RecordChild1,
70589 OPC_SwitchType , 44, MVT::v8i16,
70590 OPC_CheckChild1Type, MVT::v4i32,
70591 OPC_Scope, 19,
70592 OPC_CheckChild2Integer, 0,
70593 OPC_CheckPatternPredicate0,
70594 OPC_EmitInteger32, 0,
70595 OPC_EmitRegisterI32, 0 ,
70596 OPC_EmitRegisterI32, 0 ,
70597 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu32bh),
70598 MVT::v8i16, 5, 0, 1, 2, 3, 4,
70599 19,
70600 OPC_CheckChild2Integer, 2,
70601 OPC_CheckPatternPredicate0,
70602 OPC_EmitInteger32, 0,
70603 OPC_EmitRegisterI32, 0 ,
70604 OPC_EmitRegisterI32, 0 ,
70605 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu32th),
70606 MVT::v8i16, 5, 0, 1, 2, 3, 4,
70607 0,
70608 44, MVT::v16i8,
70609 OPC_CheckChild1Type, MVT::v8i16,
70610 OPC_Scope, 19,
70611 OPC_CheckChild2Integer, 0,
70612 OPC_CheckPatternPredicate0,
70613 OPC_EmitInteger32, 0,
70614 OPC_EmitRegisterI32, 0 ,
70615 OPC_EmitRegisterI32, 0 ,
70616 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu16bh),
70617 MVT::v16i8, 5, 0, 1, 2, 3, 4,
70618 19,
70619 OPC_CheckChild2Integer, 2,
70620 OPC_CheckPatternPredicate0,
70621 OPC_EmitInteger32, 0,
70622 OPC_EmitRegisterI32, 0 ,
70623 OPC_EmitRegisterI32, 0 ,
70624 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQMOVNu16th),
70625 MVT::v16i8, 5, 0, 1, 2, 3, 4,
70626 0,
70627 0,
70628 0,
70629 119|128,2, TARGET_VAL(ISD::TRUNCATE),
70630 OPC_Scope, 62|128,2,
70631 OPC_MoveChild0,
70632 OPC_SwitchOpcode , 102|128,1, TARGET_VAL(ARMISD::VSHRuIMM),
70633 OPC_Scope, 19|128,1,
70634 OPC_MoveChild0,
70635 OPC_SwitchOpcode , 69, TARGET_VAL(ISD::ADD),
70636 OPC_RecordChild0,
70637 OPC_RecordChild1,
70638 OPC_MoveParent,
70639 OPC_Scope, 21,
70640 OPC_CheckChild1Integer, 16,
70641 OPC_CheckType, MVT::v8i16,
70642 OPC_MoveParent,
70643 OPC_CheckType, MVT::v8i8,
70644 OPC_CheckPatternPredicate1,
70645 OPC_EmitInteger32, 28,
70646 OPC_EmitRegisterI32, 0 ,
70647 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDHNv8i8),
70648 MVT::v8i8, 4, 0, 1, 2, 3,
70649 21,
70650 OPC_CheckChild1Integer, 32,
70651 OPC_CheckType, MVT::v4i32,
70652 OPC_MoveParent,
70653 OPC_CheckType, MVT::v4i16,
70654 OPC_CheckPatternPredicate1,
70655 OPC_EmitInteger32, 28,
70656 OPC_EmitRegisterI32, 0 ,
70657 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDHNv4i16),
70658 MVT::v4i16, 4, 0, 1, 2, 3,
70659 19,
70660 OPC_CheckChild1Integer, 64,
70661 OPC_MoveParent,
70662 OPC_CheckType, MVT::v2i32,
70663 OPC_CheckPatternPredicate1,
70664 OPC_EmitInteger32, 28,
70665 OPC_EmitRegisterI32, 0 ,
70666 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VADDHNv2i32),
70667 MVT::v2i32, 4, 0, 1, 2, 3,
70668 0,
70669 69, TARGET_VAL(ISD::SUB),
70670 OPC_RecordChild0,
70671 OPC_RecordChild1,
70672 OPC_MoveParent,
70673 OPC_Scope, 21,
70674 OPC_CheckChild1Integer, 16,
70675 OPC_CheckType, MVT::v8i16,
70676 OPC_MoveParent,
70677 OPC_CheckType, MVT::v8i8,
70678 OPC_CheckPatternPredicate1,
70679 OPC_EmitInteger32, 28,
70680 OPC_EmitRegisterI32, 0 ,
70681 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBHNv8i8),
70682 MVT::v8i8, 4, 0, 1, 2, 3,
70683 21,
70684 OPC_CheckChild1Integer, 32,
70685 OPC_CheckType, MVT::v4i32,
70686 OPC_MoveParent,
70687 OPC_CheckType, MVT::v4i16,
70688 OPC_CheckPatternPredicate1,
70689 OPC_EmitInteger32, 28,
70690 OPC_EmitRegisterI32, 0 ,
70691 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBHNv4i16),
70692 MVT::v4i16, 4, 0, 1, 2, 3,
70693 19,
70694 OPC_CheckChild1Integer, 64,
70695 OPC_MoveParent,
70696 OPC_CheckType, MVT::v2i32,
70697 OPC_CheckPatternPredicate1,
70698 OPC_EmitInteger32, 28,
70699 OPC_EmitRegisterI32, 0 ,
70700 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSUBHNv2i32),
70701 MVT::v2i32, 4, 0, 1, 2, 3,
70702 0,
70703 0,
70704 78,
70705 OPC_RecordChild0,
70706 OPC_RecordChild1,
70707 OPC_MoveChild1,
70708 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
70709 OPC_Scope, 23,
70710 OPC_CheckPredicate, 29,
70711 OPC_MoveParent,
70712 OPC_CheckType, MVT::v8i16,
70713 OPC_MoveParent,
70714 OPC_CheckType, MVT::v8i8,
70715 OPC_CheckPatternPredicate1,
70716 OPC_EmitConvertToTarget1,
70717 OPC_EmitInteger32, 28,
70718 OPC_EmitRegisterI32, 0 ,
70719 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRNv8i8),
70720 MVT::v8i8, 4, 0, 2, 3, 4,
70721 23,
70722 OPC_CheckPredicate, 30,
70723 OPC_MoveParent,
70724 OPC_CheckType, MVT::v4i32,
70725 OPC_MoveParent,
70726 OPC_CheckType, MVT::v4i16,
70727 OPC_CheckPatternPredicate1,
70728 OPC_EmitConvertToTarget1,
70729 OPC_EmitInteger32, 28,
70730 OPC_EmitRegisterI32, 0 ,
70731 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRNv4i16),
70732 MVT::v4i16, 4, 0, 2, 3, 4,
70733 21,
70734 OPC_CheckPredicate, 19,
70735 OPC_MoveParent,
70736 OPC_MoveParent,
70737 OPC_CheckType, MVT::v2i32,
70738 OPC_CheckPatternPredicate1,
70739 OPC_EmitConvertToTarget1,
70740 OPC_EmitInteger32, 28,
70741 OPC_EmitRegisterI32, 0 ,
70742 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRNv2i32),
70743 MVT::v2i32, 4, 0, 2, 3, 4,
70744 0,
70745 0,
70746 78, TARGET_VAL(ARMISD::VSHRsIMM),
70747 OPC_RecordChild0,
70748 OPC_RecordChild1,
70749 OPC_MoveChild1,
70750 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
70751 OPC_Scope, 23,
70752 OPC_CheckPredicate, 29,
70753 OPC_MoveParent,
70754 OPC_CheckType, MVT::v8i16,
70755 OPC_MoveParent,
70756 OPC_CheckType, MVT::v8i8,
70757 OPC_CheckPatternPredicate1,
70758 OPC_EmitConvertToTarget1,
70759 OPC_EmitInteger32, 28,
70760 OPC_EmitRegisterI32, 0 ,
70761 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRNv8i8),
70762 MVT::v8i8, 4, 0, 2, 3, 4,
70763 23,
70764 OPC_CheckPredicate, 30,
70765 OPC_MoveParent,
70766 OPC_CheckType, MVT::v4i32,
70767 OPC_MoveParent,
70768 OPC_CheckType, MVT::v4i16,
70769 OPC_CheckPatternPredicate1,
70770 OPC_EmitConvertToTarget1,
70771 OPC_EmitInteger32, 28,
70772 OPC_EmitRegisterI32, 0 ,
70773 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRNv4i16),
70774 MVT::v4i16, 4, 0, 2, 3, 4,
70775 21,
70776 OPC_CheckPredicate, 19,
70777 OPC_MoveParent,
70778 OPC_MoveParent,
70779 OPC_CheckType, MVT::v2i32,
70780 OPC_CheckPatternPredicate1,
70781 OPC_EmitConvertToTarget1,
70782 OPC_EmitInteger32, 28,
70783 OPC_EmitRegisterI32, 0 ,
70784 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHRNv2i32),
70785 MVT::v2i32, 4, 0, 2, 3, 4,
70786 0,
70787 0,
70788 52,
70789 OPC_RecordChild0,
70790 OPC_SwitchType , 15, MVT::v8i8,
70791 OPC_CheckChild0Type, MVT::v8i16,
70792 OPC_CheckPatternPredicate1,
70793 OPC_EmitInteger32, 28,
70794 OPC_EmitRegisterI32, 0 ,
70795 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVNv8i8),
70796 MVT::v8i8, 3, 0, 1, 2,
70797 15, MVT::v4i16,
70798 OPC_CheckChild0Type, MVT::v4i32,
70799 OPC_CheckPatternPredicate1,
70800 OPC_EmitInteger32, 28,
70801 OPC_EmitRegisterI32, 0 ,
70802 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVNv4i16),
70803 MVT::v4i16, 3, 0, 1, 2,
70804 13, MVT::v2i32,
70805 OPC_CheckPatternPredicate1,
70806 OPC_EmitInteger32, 28,
70807 OPC_EmitRegisterI32, 0 ,
70808 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVNv2i32),
70809 MVT::v2i32, 3, 0, 1, 2,
70810 0,
70811 0,
70812 17|128,5, TARGET_VAL(ARMISD::VSHLIMM),
70813 OPC_Scope, 29|128,3,
70814 OPC_MoveChild0,
70815 OPC_SwitchOpcode , 34|128,1, TARGET_VAL(ISD::ZERO_EXTEND),
70816 OPC_RecordChild0,
70817 OPC_Scope, 52,
70818 OPC_CheckChild0Type, MVT::v8i8,
70819 OPC_Scope, 21,
70820 OPC_MoveParent,
70821 OPC_CheckChild1Integer, 16,
70822 OPC_CheckType, MVT::v8i16,
70823 OPC_CheckPatternPredicate1,
70824 OPC_EmitInteger32, 16,
70825 OPC_EmitInteger32, 28,
70826 OPC_EmitRegisterI32, 0 ,
70827 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLi8),
70828 MVT::v8i16, 4, 0, 1, 2, 3,
70829 25,
70830 OPC_MoveSibling1,
70831 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
70832 OPC_RecordNode,
70833 OPC_CheckPredicate, 95,
70834 OPC_MoveParent,
70835 OPC_CheckType, MVT::v8i16,
70836 OPC_CheckPatternPredicate1,
70837 OPC_EmitConvertToTarget1,
70838 OPC_EmitInteger32, 28,
70839 OPC_EmitRegisterI32, 0 ,
70840 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLuv8i16),
70841 MVT::v8i16, 4, 0, 2, 3, 4,
70842 0,
70843 52,
70844 OPC_CheckChild0Type, MVT::v4i16,
70845 OPC_Scope, 21,
70846 OPC_MoveParent,
70847 OPC_CheckChild1Integer, 32,
70848 OPC_CheckType, MVT::v4i32,
70849 OPC_CheckPatternPredicate1,
70850 OPC_EmitInteger32, 32,
70851 OPC_EmitInteger32, 28,
70852 OPC_EmitRegisterI32, 0 ,
70853 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLi16),
70854 MVT::v4i32, 4, 0, 1, 2, 3,
70855 25,
70856 OPC_MoveSibling1,
70857 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
70858 OPC_RecordNode,
70859 OPC_CheckPredicate, 55,
70860 OPC_MoveParent,
70861 OPC_CheckType, MVT::v4i32,
70862 OPC_CheckPatternPredicate1,
70863 OPC_EmitConvertToTarget1,
70864 OPC_EmitInteger32, 28,
70865 OPC_EmitRegisterI32, 0 ,
70866 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLuv4i32),
70867 MVT::v4i32, 4, 0, 2, 3, 4,
70868 0,
70869 52,
70870 OPC_CheckChild0Type, MVT::v2i32,
70871 OPC_Scope, 21,
70872 OPC_MoveParent,
70873 OPC_CheckChild1Integer, 64,
70874 OPC_CheckType, MVT::v2i64,
70875 OPC_CheckPatternPredicate1,
70876 OPC_EmitInteger32, 64,
70877 OPC_EmitInteger32, 28,
70878 OPC_EmitRegisterI32, 0 ,
70879 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLi32),
70880 MVT::v2i64, 4, 0, 1, 2, 3,
70881 25,
70882 OPC_MoveSibling1,
70883 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
70884 OPC_RecordNode,
70885 OPC_CheckPredicate, 67,
70886 OPC_MoveParent,
70887 OPC_CheckType, MVT::v2i64,
70888 OPC_CheckPatternPredicate1,
70889 OPC_EmitConvertToTarget1,
70890 OPC_EmitInteger32, 28,
70891 OPC_EmitRegisterI32, 0 ,
70892 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLuv2i64),
70893 MVT::v2i64, 4, 0, 2, 3, 4,
70894 0,
70895 0,
70896 34|128,1, TARGET_VAL(ISD::SIGN_EXTEND),
70897 OPC_RecordChild0,
70898 OPC_Scope, 52,
70899 OPC_CheckChild0Type, MVT::v8i8,
70900 OPC_Scope, 21,
70901 OPC_MoveParent,
70902 OPC_CheckChild1Integer, 16,
70903 OPC_CheckType, MVT::v8i16,
70904 OPC_CheckPatternPredicate1,
70905 OPC_EmitInteger32, 16,
70906 OPC_EmitInteger32, 28,
70907 OPC_EmitRegisterI32, 0 ,
70908 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLi8),
70909 MVT::v8i16, 4, 0, 1, 2, 3,
70910 25,
70911 OPC_MoveSibling1,
70912 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
70913 OPC_RecordNode,
70914 OPC_CheckPredicate, 95,
70915 OPC_MoveParent,
70916 OPC_CheckType, MVT::v8i16,
70917 OPC_CheckPatternPredicate1,
70918 OPC_EmitConvertToTarget1,
70919 OPC_EmitInteger32, 28,
70920 OPC_EmitRegisterI32, 0 ,
70921 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLsv8i16),
70922 MVT::v8i16, 4, 0, 2, 3, 4,
70923 0,
70924 52,
70925 OPC_CheckChild0Type, MVT::v4i16,
70926 OPC_Scope, 21,
70927 OPC_MoveParent,
70928 OPC_CheckChild1Integer, 32,
70929 OPC_CheckType, MVT::v4i32,
70930 OPC_CheckPatternPredicate1,
70931 OPC_EmitInteger32, 32,
70932 OPC_EmitInteger32, 28,
70933 OPC_EmitRegisterI32, 0 ,
70934 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLi16),
70935 MVT::v4i32, 4, 0, 1, 2, 3,
70936 25,
70937 OPC_MoveSibling1,
70938 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
70939 OPC_RecordNode,
70940 OPC_CheckPredicate, 55,
70941 OPC_MoveParent,
70942 OPC_CheckType, MVT::v4i32,
70943 OPC_CheckPatternPredicate1,
70944 OPC_EmitConvertToTarget1,
70945 OPC_EmitInteger32, 28,
70946 OPC_EmitRegisterI32, 0 ,
70947 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLsv4i32),
70948 MVT::v4i32, 4, 0, 2, 3, 4,
70949 0,
70950 52,
70951 OPC_CheckChild0Type, MVT::v2i32,
70952 OPC_Scope, 21,
70953 OPC_MoveParent,
70954 OPC_CheckChild1Integer, 64,
70955 OPC_CheckType, MVT::v2i64,
70956 OPC_CheckPatternPredicate1,
70957 OPC_EmitInteger32, 64,
70958 OPC_EmitInteger32, 28,
70959 OPC_EmitRegisterI32, 0 ,
70960 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLi32),
70961 MVT::v2i64, 4, 0, 1, 2, 3,
70962 25,
70963 OPC_MoveSibling1,
70964 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
70965 OPC_RecordNode,
70966 OPC_CheckPredicate, 67,
70967 OPC_MoveParent,
70968 OPC_CheckType, MVT::v2i64,
70969 OPC_CheckPatternPredicate1,
70970 OPC_EmitConvertToTarget1,
70971 OPC_EmitInteger32, 28,
70972 OPC_EmitRegisterI32, 0 ,
70973 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLsv2i64),
70974 MVT::v2i64, 4, 0, 2, 3, 4,
70975 0,
70976 0,
70977 75, TARGET_VAL(ISD::ANY_EXTEND),
70978 OPC_RecordChild0,
70979 OPC_Scope, 23,
70980 OPC_CheckChild0Type, MVT::v8i8,
70981 OPC_MoveParent,
70982 OPC_CheckChild1Integer, 16,
70983 OPC_CheckType, MVT::v8i16,
70984 OPC_CheckPatternPredicate1,
70985 OPC_EmitInteger32, 16,
70986 OPC_EmitInteger32, 28,
70987 OPC_EmitRegisterI32, 0 ,
70988 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLi8),
70989 MVT::v8i16, 4, 0, 1, 2, 3,
70990 23,
70991 OPC_CheckChild0Type, MVT::v4i16,
70992 OPC_MoveParent,
70993 OPC_CheckChild1Integer, 32,
70994 OPC_CheckType, MVT::v4i32,
70995 OPC_CheckPatternPredicate1,
70996 OPC_EmitInteger32, 32,
70997 OPC_EmitInteger32, 28,
70998 OPC_EmitRegisterI32, 0 ,
70999 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLi16),
71000 MVT::v4i32, 4, 0, 1, 2, 3,
71001 23,
71002 OPC_CheckChild0Type, MVT::v2i32,
71003 OPC_MoveParent,
71004 OPC_CheckChild1Integer, 64,
71005 OPC_CheckType, MVT::v2i64,
71006 OPC_CheckPatternPredicate1,
71007 OPC_EmitInteger32, 64,
71008 OPC_EmitInteger32, 28,
71009 OPC_EmitRegisterI32, 0 ,
71010 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLLi32),
71011 MVT::v2i64, 4, 0, 1, 2, 3,
71012 0,
71013 0,
71014 110|128,1,
71015 OPC_RecordChild0,
71016 OPC_RecordChild1,
71017 OPC_MoveChild1,
71018 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
71019 OPC_Scope, 29,
71020 OPC_CheckPredicate, 28,
71021 OPC_MoveParent,
71022 OPC_CheckType, MVT::v16i8,
71023 OPC_CheckPatternPredicate0,
71024 OPC_EmitConvertToTarget1,
71025 OPC_EmitInteger32, 0,
71026 OPC_EmitRegisterI32, 0 ,
71027 OPC_EmitRegisterI32, 0 ,
71028 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
71029 MVT::v4i32, 0,
71030 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_immi8),
71031 MVT::v16i8, 6, 0, 2, 3, 4, 5, 6,
71032 29,
71033 OPC_CheckPredicate, 23,
71034 OPC_MoveParent,
71035 OPC_CheckType, MVT::v8i16,
71036 OPC_CheckPatternPredicate0,
71037 OPC_EmitConvertToTarget1,
71038 OPC_EmitInteger32, 0,
71039 OPC_EmitRegisterI32, 0 ,
71040 OPC_EmitRegisterI32, 0 ,
71041 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
71042 MVT::v4i32, 0,
71043 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_immi16),
71044 MVT::v8i16, 6, 0, 2, 3, 4, 5, 6,
71045 28,
71046 OPC_CheckPredicate5,
71047 OPC_MoveParent,
71048 OPC_CheckType, MVT::v4i32,
71049 OPC_CheckPatternPredicate0,
71050 OPC_EmitConvertToTarget1,
71051 OPC_EmitInteger32, 0,
71052 OPC_EmitRegisterI32, 0 ,
71053 OPC_EmitRegisterI32, 0 ,
71054 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
71055 MVT::v4i32, 0,
71056 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_immi32),
71057 MVT::v4i32, 6, 0, 2, 3, 4, 5, 6,
71058 11|128,1,
71059 OPC_MoveParent,
71060 OPC_SwitchType , 15, MVT::v8i8,
71061 OPC_CheckPatternPredicate1,
71062 OPC_EmitConvertToTarget1,
71063 OPC_EmitInteger32, 28,
71064 OPC_EmitRegisterI32, 0 ,
71065 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLiv8i8),
71066 MVT::v8i8, 4, 0, 2, 3, 4,
71067 15, MVT::v4i16,
71068 OPC_CheckPatternPredicate1,
71069 OPC_EmitConvertToTarget1,
71070 OPC_EmitInteger32, 28,
71071 OPC_EmitRegisterI32, 0 ,
71072 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLiv4i16),
71073 MVT::v4i16, 4, 0, 2, 3, 4,
71074 15, MVT::v2i32,
71075 OPC_CheckPatternPredicate1,
71076 OPC_EmitConvertToTarget1,
71077 OPC_EmitInteger32, 28,
71078 OPC_EmitRegisterI32, 0 ,
71079 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLiv2i32),
71080 MVT::v2i32, 4, 0, 2, 3, 4,
71081 15, MVT::v1i64,
71082 OPC_CheckPatternPredicate1,
71083 OPC_EmitConvertToTarget1,
71084 OPC_EmitInteger32, 28,
71085 OPC_EmitRegisterI32, 0 ,
71086 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLiv1i64),
71087 MVT::v1i64, 4, 0, 2, 3, 4,
71088 15, MVT::v16i8,
71089 OPC_CheckPatternPredicate1,
71090 OPC_EmitConvertToTarget1,
71091 OPC_EmitInteger32, 28,
71092 OPC_EmitRegisterI32, 0 ,
71093 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLiv16i8),
71094 MVT::v16i8, 4, 0, 2, 3, 4,
71095 15, MVT::v8i16,
71096 OPC_CheckPatternPredicate1,
71097 OPC_EmitConvertToTarget1,
71098 OPC_EmitInteger32, 28,
71099 OPC_EmitRegisterI32, 0 ,
71100 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLiv8i16),
71101 MVT::v8i16, 4, 0, 2, 3, 4,
71102 15, MVT::v4i32,
71103 OPC_CheckPatternPredicate1,
71104 OPC_EmitConvertToTarget1,
71105 OPC_EmitInteger32, 28,
71106 OPC_EmitRegisterI32, 0 ,
71107 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLiv4i32),
71108 MVT::v4i32, 4, 0, 2, 3, 4,
71109 15, MVT::v2i64,
71110 OPC_CheckPatternPredicate1,
71111 OPC_EmitConvertToTarget1,
71112 OPC_EmitInteger32, 28,
71113 OPC_EmitRegisterI32, 0 ,
71114 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLiv2i64),
71115 MVT::v2i64, 4, 0, 2, 3, 4,
71116 0,
71117 0,
71118 0,
71119 37|128,21, TARGET_VAL(ARMISD::VCMP),
71120 OPC_RecordChild0,
71121 OPC_Scope, 0|128,4,
71122 OPC_CheckChild0Type, MVT::v16i8,
71123 OPC_Scope, 75|128,1,
71124 OPC_MoveChild1,
71125 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
71126 OPC_RecordChild0,
71127 OPC_CheckChild0TypeI32,
71128 OPC_MoveParent,
71129 OPC_CheckType, MVT::v16i1,
71130 OPC_Scope, 23,
71131 OPC_CheckChild2Integer, 0,
71132 OPC_CheckChild2TypeI32,
71133 OPC_CheckPatternPredicate0,
71134 OPC_EmitInteger32, 0,
71135 OPC_EmitInteger32, 0,
71136 OPC_EmitRegisterI32, 0 ,
71137 OPC_EmitRegisterI32, 0 ,
71138 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
71139 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71140 23,
71141 OPC_CheckChild2Integer, 2,
71142 OPC_CheckChild2TypeI32,
71143 OPC_CheckPatternPredicate0,
71144 OPC_EmitInteger32, 2,
71145 OPC_EmitInteger32, 0,
71146 OPC_EmitRegisterI32, 0 ,
71147 OPC_EmitRegisterI32, 0 ,
71148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
71149 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71150 23,
71151 OPC_CheckChild2Integer, 20,
71152 OPC_CheckChild2TypeI32,
71153 OPC_CheckPatternPredicate0,
71154 OPC_EmitInteger32, 20,
71155 OPC_EmitInteger32, 0,
71156 OPC_EmitRegisterI32, 0 ,
71157 OPC_EmitRegisterI32, 0 ,
71158 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
71159 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71160 23,
71161 OPC_CheckChild2Integer, 22,
71162 OPC_CheckChild2TypeI32,
71163 OPC_CheckPatternPredicate0,
71164 OPC_EmitInteger32, 22,
71165 OPC_EmitInteger32, 0,
71166 OPC_EmitRegisterI32, 0 ,
71167 OPC_EmitRegisterI32, 0 ,
71168 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
71169 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71170 23,
71171 OPC_CheckChild2Integer, 24,
71172 OPC_CheckChild2TypeI32,
71173 OPC_CheckPatternPredicate0,
71174 OPC_EmitInteger32, 24,
71175 OPC_EmitInteger32, 0,
71176 OPC_EmitRegisterI32, 0 ,
71177 OPC_EmitRegisterI32, 0 ,
71178 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
71179 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71180 23,
71181 OPC_CheckChild2Integer, 26,
71182 OPC_CheckChild2TypeI32,
71183 OPC_CheckPatternPredicate0,
71184 OPC_EmitInteger32, 26,
71185 OPC_EmitInteger32, 0,
71186 OPC_EmitRegisterI32, 0 ,
71187 OPC_EmitRegisterI32, 0 ,
71188 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
71189 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71190 23,
71191 OPC_CheckChild2Integer, 16,
71192 OPC_CheckChild2TypeI32,
71193 OPC_CheckPatternPredicate0,
71194 OPC_EmitInteger32, 16,
71195 OPC_EmitInteger32, 0,
71196 OPC_EmitRegisterI32, 0 ,
71197 OPC_EmitRegisterI32, 0 ,
71198 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
71199 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71200 23,
71201 OPC_CheckChild2Integer, 4,
71202 OPC_CheckChild2TypeI32,
71203 OPC_CheckPatternPredicate0,
71204 OPC_EmitInteger32, 4,
71205 OPC_EmitInteger32, 0,
71206 OPC_EmitRegisterI32, 0 ,
71207 OPC_EmitRegisterI32, 0 ,
71208 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
71209 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71210 0,
71211 45|128,2,
71212 OPC_RecordChild1,
71213 OPC_Scope, 43,
71214 OPC_CheckChild2Integer, 0,
71215 OPC_CheckChild2TypeI32,
71216 OPC_SwitchType , 14, MVT::v16i8,
71217 OPC_CheckPatternPredicate1,
71218 OPC_EmitInteger32, 28,
71219 OPC_EmitRegisterI32, 0 ,
71220 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQv16i8),
71221 MVT::v16i8, 4, 0, 1, 2, 3,
71222 20, MVT::v16i1,
71223 OPC_CheckPatternPredicate0,
71224 OPC_EmitInteger32, 0,
71225 OPC_EmitInteger32, 0,
71226 OPC_EmitRegisterI32, 0 ,
71227 OPC_EmitRegisterI32, 0 ,
71228 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8),
71229 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71230 0,
71231 43,
71232 OPC_CheckChild2Integer, 20,
71233 OPC_CheckChild2TypeI32,
71234 OPC_SwitchType , 14, MVT::v16i8,
71235 OPC_CheckPatternPredicate1,
71236 OPC_EmitInteger32, 28,
71237 OPC_EmitRegisterI32, 0 ,
71238 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEsv16i8),
71239 MVT::v16i8, 4, 0, 1, 2, 3,
71240 20, MVT::v16i1,
71241 OPC_CheckPatternPredicate0,
71242 OPC_EmitInteger32, 20,
71243 OPC_EmitInteger32, 0,
71244 OPC_EmitRegisterI32, 0 ,
71245 OPC_EmitRegisterI32, 0 ,
71246 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
71247 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71248 0,
71249 43,
71250 OPC_CheckChild2Integer, 4,
71251 OPC_CheckChild2TypeI32,
71252 OPC_SwitchType , 14, MVT::v16i8,
71253 OPC_CheckPatternPredicate1,
71254 OPC_EmitInteger32, 28,
71255 OPC_EmitRegisterI32, 0 ,
71256 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEuv16i8),
71257 MVT::v16i8, 4, 0, 1, 2, 3,
71258 20, MVT::v16i1,
71259 OPC_CheckPatternPredicate0,
71260 OPC_EmitInteger32, 4,
71261 OPC_EmitInteger32, 0,
71262 OPC_EmitRegisterI32, 0 ,
71263 OPC_EmitRegisterI32, 0 ,
71264 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8),
71265 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71266 0,
71267 43,
71268 OPC_CheckChild2Integer, 24,
71269 OPC_CheckChild2TypeI32,
71270 OPC_SwitchType , 14, MVT::v16i8,
71271 OPC_CheckPatternPredicate1,
71272 OPC_EmitInteger32, 28,
71273 OPC_EmitRegisterI32, 0 ,
71274 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTsv16i8),
71275 MVT::v16i8, 4, 0, 1, 2, 3,
71276 20, MVT::v16i1,
71277 OPC_CheckPatternPredicate0,
71278 OPC_EmitInteger32, 24,
71279 OPC_EmitInteger32, 0,
71280 OPC_EmitRegisterI32, 0 ,
71281 OPC_EmitRegisterI32, 0 ,
71282 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
71283 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71284 0,
71285 43,
71286 OPC_CheckChild2Integer, 16,
71287 OPC_CheckChild2TypeI32,
71288 OPC_SwitchType , 14, MVT::v16i8,
71289 OPC_CheckPatternPredicate1,
71290 OPC_EmitInteger32, 28,
71291 OPC_EmitRegisterI32, 0 ,
71292 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTuv16i8),
71293 MVT::v16i8, 4, 0, 1, 2, 3,
71294 20, MVT::v16i1,
71295 OPC_CheckPatternPredicate0,
71296 OPC_EmitInteger32, 16,
71297 OPC_EmitInteger32, 0,
71298 OPC_EmitRegisterI32, 0 ,
71299 OPC_EmitRegisterI32, 0 ,
71300 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8),
71301 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71302 0,
71303 25,
71304 OPC_CheckChild2Integer, 2,
71305 OPC_CheckChild2TypeI32,
71306 OPC_CheckType, MVT::v16i1,
71307 OPC_CheckPatternPredicate0,
71308 OPC_EmitInteger32, 2,
71309 OPC_EmitInteger32, 0,
71310 OPC_EmitRegisterI32, 0 ,
71311 OPC_EmitRegisterI32, 0 ,
71312 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8),
71313 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71314 25,
71315 OPC_CheckChild2Integer, 22,
71316 OPC_CheckChild2TypeI32,
71317 OPC_CheckType, MVT::v16i1,
71318 OPC_CheckPatternPredicate0,
71319 OPC_EmitInteger32, 22,
71320 OPC_EmitInteger32, 0,
71321 OPC_EmitRegisterI32, 0 ,
71322 OPC_EmitRegisterI32, 0 ,
71323 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
71324 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71325 25,
71326 OPC_CheckChild2Integer, 26,
71327 OPC_CheckChild2TypeI32,
71328 OPC_CheckType, MVT::v16i1,
71329 OPC_CheckPatternPredicate0,
71330 OPC_EmitInteger32, 26,
71331 OPC_EmitInteger32, 0,
71332 OPC_EmitRegisterI32, 0 ,
71333 OPC_EmitRegisterI32, 0 ,
71334 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8),
71335 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
71336 0,
71337 0,
71338 0|128,4,
71339 OPC_CheckChild0Type, MVT::v8i16,
71340 OPC_Scope, 75|128,1,
71341 OPC_MoveChild1,
71342 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
71343 OPC_RecordChild0,
71344 OPC_CheckChild0TypeI32,
71345 OPC_MoveParent,
71346 OPC_CheckType, MVT::v8i1,
71347 OPC_Scope, 23,
71348 OPC_CheckChild2Integer, 0,
71349 OPC_CheckChild2TypeI32,
71350 OPC_CheckPatternPredicate0,
71351 OPC_EmitInteger32, 0,
71352 OPC_EmitInteger32, 0,
71353 OPC_EmitRegisterI32, 0 ,
71354 OPC_EmitRegisterI32, 0 ,
71355 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
71356 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71357 23,
71358 OPC_CheckChild2Integer, 2,
71359 OPC_CheckChild2TypeI32,
71360 OPC_CheckPatternPredicate0,
71361 OPC_EmitInteger32, 2,
71362 OPC_EmitInteger32, 0,
71363 OPC_EmitRegisterI32, 0 ,
71364 OPC_EmitRegisterI32, 0 ,
71365 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
71366 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71367 23,
71368 OPC_CheckChild2Integer, 20,
71369 OPC_CheckChild2TypeI32,
71370 OPC_CheckPatternPredicate0,
71371 OPC_EmitInteger32, 20,
71372 OPC_EmitInteger32, 0,
71373 OPC_EmitRegisterI32, 0 ,
71374 OPC_EmitRegisterI32, 0 ,
71375 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
71376 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71377 23,
71378 OPC_CheckChild2Integer, 22,
71379 OPC_CheckChild2TypeI32,
71380 OPC_CheckPatternPredicate0,
71381 OPC_EmitInteger32, 22,
71382 OPC_EmitInteger32, 0,
71383 OPC_EmitRegisterI32, 0 ,
71384 OPC_EmitRegisterI32, 0 ,
71385 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
71386 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71387 23,
71388 OPC_CheckChild2Integer, 24,
71389 OPC_CheckChild2TypeI32,
71390 OPC_CheckPatternPredicate0,
71391 OPC_EmitInteger32, 24,
71392 OPC_EmitInteger32, 0,
71393 OPC_EmitRegisterI32, 0 ,
71394 OPC_EmitRegisterI32, 0 ,
71395 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
71396 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71397 23,
71398 OPC_CheckChild2Integer, 26,
71399 OPC_CheckChild2TypeI32,
71400 OPC_CheckPatternPredicate0,
71401 OPC_EmitInteger32, 26,
71402 OPC_EmitInteger32, 0,
71403 OPC_EmitRegisterI32, 0 ,
71404 OPC_EmitRegisterI32, 0 ,
71405 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
71406 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71407 23,
71408 OPC_CheckChild2Integer, 16,
71409 OPC_CheckChild2TypeI32,
71410 OPC_CheckPatternPredicate0,
71411 OPC_EmitInteger32, 16,
71412 OPC_EmitInteger32, 0,
71413 OPC_EmitRegisterI32, 0 ,
71414 OPC_EmitRegisterI32, 0 ,
71415 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
71416 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71417 23,
71418 OPC_CheckChild2Integer, 4,
71419 OPC_CheckChild2TypeI32,
71420 OPC_CheckPatternPredicate0,
71421 OPC_EmitInteger32, 4,
71422 OPC_EmitInteger32, 0,
71423 OPC_EmitRegisterI32, 0 ,
71424 OPC_EmitRegisterI32, 0 ,
71425 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
71426 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71427 0,
71428 45|128,2,
71429 OPC_RecordChild1,
71430 OPC_Scope, 43,
71431 OPC_CheckChild2Integer, 0,
71432 OPC_CheckChild2TypeI32,
71433 OPC_SwitchType , 14, MVT::v8i16,
71434 OPC_CheckPatternPredicate1,
71435 OPC_EmitInteger32, 28,
71436 OPC_EmitRegisterI32, 0 ,
71437 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQv8i16),
71438 MVT::v8i16, 4, 0, 1, 2, 3,
71439 20, MVT::v8i1,
71440 OPC_CheckPatternPredicate0,
71441 OPC_EmitInteger32, 0,
71442 OPC_EmitInteger32, 0,
71443 OPC_EmitRegisterI32, 0 ,
71444 OPC_EmitRegisterI32, 0 ,
71445 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16),
71446 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71447 0,
71448 43,
71449 OPC_CheckChild2Integer, 20,
71450 OPC_CheckChild2TypeI32,
71451 OPC_SwitchType , 14, MVT::v8i16,
71452 OPC_CheckPatternPredicate1,
71453 OPC_EmitInteger32, 28,
71454 OPC_EmitRegisterI32, 0 ,
71455 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEsv8i16),
71456 MVT::v8i16, 4, 0, 1, 2, 3,
71457 20, MVT::v8i1,
71458 OPC_CheckPatternPredicate0,
71459 OPC_EmitInteger32, 20,
71460 OPC_EmitInteger32, 0,
71461 OPC_EmitRegisterI32, 0 ,
71462 OPC_EmitRegisterI32, 0 ,
71463 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
71464 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71465 0,
71466 43,
71467 OPC_CheckChild2Integer, 4,
71468 OPC_CheckChild2TypeI32,
71469 OPC_SwitchType , 14, MVT::v8i16,
71470 OPC_CheckPatternPredicate1,
71471 OPC_EmitInteger32, 28,
71472 OPC_EmitRegisterI32, 0 ,
71473 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEuv8i16),
71474 MVT::v8i16, 4, 0, 1, 2, 3,
71475 20, MVT::v8i1,
71476 OPC_CheckPatternPredicate0,
71477 OPC_EmitInteger32, 4,
71478 OPC_EmitInteger32, 0,
71479 OPC_EmitRegisterI32, 0 ,
71480 OPC_EmitRegisterI32, 0 ,
71481 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16),
71482 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71483 0,
71484 43,
71485 OPC_CheckChild2Integer, 24,
71486 OPC_CheckChild2TypeI32,
71487 OPC_SwitchType , 14, MVT::v8i16,
71488 OPC_CheckPatternPredicate1,
71489 OPC_EmitInteger32, 28,
71490 OPC_EmitRegisterI32, 0 ,
71491 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTsv8i16),
71492 MVT::v8i16, 4, 0, 1, 2, 3,
71493 20, MVT::v8i1,
71494 OPC_CheckPatternPredicate0,
71495 OPC_EmitInteger32, 24,
71496 OPC_EmitInteger32, 0,
71497 OPC_EmitRegisterI32, 0 ,
71498 OPC_EmitRegisterI32, 0 ,
71499 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
71500 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71501 0,
71502 43,
71503 OPC_CheckChild2Integer, 16,
71504 OPC_CheckChild2TypeI32,
71505 OPC_SwitchType , 14, MVT::v8i16,
71506 OPC_CheckPatternPredicate1,
71507 OPC_EmitInteger32, 28,
71508 OPC_EmitRegisterI32, 0 ,
71509 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTuv8i16),
71510 MVT::v8i16, 4, 0, 1, 2, 3,
71511 20, MVT::v8i1,
71512 OPC_CheckPatternPredicate0,
71513 OPC_EmitInteger32, 16,
71514 OPC_EmitInteger32, 0,
71515 OPC_EmitRegisterI32, 0 ,
71516 OPC_EmitRegisterI32, 0 ,
71517 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16),
71518 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71519 0,
71520 25,
71521 OPC_CheckChild2Integer, 2,
71522 OPC_CheckChild2TypeI32,
71523 OPC_CheckType, MVT::v8i1,
71524 OPC_CheckPatternPredicate0,
71525 OPC_EmitInteger32, 2,
71526 OPC_EmitInteger32, 0,
71527 OPC_EmitRegisterI32, 0 ,
71528 OPC_EmitRegisterI32, 0 ,
71529 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16),
71530 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71531 25,
71532 OPC_CheckChild2Integer, 22,
71533 OPC_CheckChild2TypeI32,
71534 OPC_CheckType, MVT::v8i1,
71535 OPC_CheckPatternPredicate0,
71536 OPC_EmitInteger32, 22,
71537 OPC_EmitInteger32, 0,
71538 OPC_EmitRegisterI32, 0 ,
71539 OPC_EmitRegisterI32, 0 ,
71540 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
71541 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71542 25,
71543 OPC_CheckChild2Integer, 26,
71544 OPC_CheckChild2TypeI32,
71545 OPC_CheckType, MVT::v8i1,
71546 OPC_CheckPatternPredicate0,
71547 OPC_EmitInteger32, 26,
71548 OPC_EmitInteger32, 0,
71549 OPC_EmitRegisterI32, 0 ,
71550 OPC_EmitRegisterI32, 0 ,
71551 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16),
71552 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71553 0,
71554 0,
71555 0|128,4,
71556 OPC_CheckChild0Type, MVT::v4i32,
71557 OPC_Scope, 75|128,1,
71558 OPC_MoveChild1,
71559 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
71560 OPC_RecordChild0,
71561 OPC_CheckChild0TypeI32,
71562 OPC_MoveParent,
71563 OPC_CheckType, MVT::v4i1,
71564 OPC_Scope, 23,
71565 OPC_CheckChild2Integer, 0,
71566 OPC_CheckChild2TypeI32,
71567 OPC_CheckPatternPredicate0,
71568 OPC_EmitInteger32, 0,
71569 OPC_EmitInteger32, 0,
71570 OPC_EmitRegisterI32, 0 ,
71571 OPC_EmitRegisterI32, 0 ,
71572 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
71573 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71574 23,
71575 OPC_CheckChild2Integer, 2,
71576 OPC_CheckChild2TypeI32,
71577 OPC_CheckPatternPredicate0,
71578 OPC_EmitInteger32, 2,
71579 OPC_EmitInteger32, 0,
71580 OPC_EmitRegisterI32, 0 ,
71581 OPC_EmitRegisterI32, 0 ,
71582 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
71583 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71584 23,
71585 OPC_CheckChild2Integer, 20,
71586 OPC_CheckChild2TypeI32,
71587 OPC_CheckPatternPredicate0,
71588 OPC_EmitInteger32, 20,
71589 OPC_EmitInteger32, 0,
71590 OPC_EmitRegisterI32, 0 ,
71591 OPC_EmitRegisterI32, 0 ,
71592 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
71593 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71594 23,
71595 OPC_CheckChild2Integer, 22,
71596 OPC_CheckChild2TypeI32,
71597 OPC_CheckPatternPredicate0,
71598 OPC_EmitInteger32, 22,
71599 OPC_EmitInteger32, 0,
71600 OPC_EmitRegisterI32, 0 ,
71601 OPC_EmitRegisterI32, 0 ,
71602 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
71603 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71604 23,
71605 OPC_CheckChild2Integer, 24,
71606 OPC_CheckChild2TypeI32,
71607 OPC_CheckPatternPredicate0,
71608 OPC_EmitInteger32, 24,
71609 OPC_EmitInteger32, 0,
71610 OPC_EmitRegisterI32, 0 ,
71611 OPC_EmitRegisterI32, 0 ,
71612 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
71613 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71614 23,
71615 OPC_CheckChild2Integer, 26,
71616 OPC_CheckChild2TypeI32,
71617 OPC_CheckPatternPredicate0,
71618 OPC_EmitInteger32, 26,
71619 OPC_EmitInteger32, 0,
71620 OPC_EmitRegisterI32, 0 ,
71621 OPC_EmitRegisterI32, 0 ,
71622 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
71623 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71624 23,
71625 OPC_CheckChild2Integer, 16,
71626 OPC_CheckChild2TypeI32,
71627 OPC_CheckPatternPredicate0,
71628 OPC_EmitInteger32, 16,
71629 OPC_EmitInteger32, 0,
71630 OPC_EmitRegisterI32, 0 ,
71631 OPC_EmitRegisterI32, 0 ,
71632 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
71633 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71634 23,
71635 OPC_CheckChild2Integer, 4,
71636 OPC_CheckChild2TypeI32,
71637 OPC_CheckPatternPredicate0,
71638 OPC_EmitInteger32, 4,
71639 OPC_EmitInteger32, 0,
71640 OPC_EmitRegisterI32, 0 ,
71641 OPC_EmitRegisterI32, 0 ,
71642 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
71643 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71644 0,
71645 45|128,2,
71646 OPC_RecordChild1,
71647 OPC_Scope, 43,
71648 OPC_CheckChild2Integer, 0,
71649 OPC_CheckChild2TypeI32,
71650 OPC_SwitchType , 14, MVT::v4i32,
71651 OPC_CheckPatternPredicate1,
71652 OPC_EmitInteger32, 28,
71653 OPC_EmitRegisterI32, 0 ,
71654 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQv4i32),
71655 MVT::v4i32, 4, 0, 1, 2, 3,
71656 20, MVT::v4i1,
71657 OPC_CheckPatternPredicate0,
71658 OPC_EmitInteger32, 0,
71659 OPC_EmitInteger32, 0,
71660 OPC_EmitRegisterI32, 0 ,
71661 OPC_EmitRegisterI32, 0 ,
71662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32),
71663 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71664 0,
71665 43,
71666 OPC_CheckChild2Integer, 20,
71667 OPC_CheckChild2TypeI32,
71668 OPC_SwitchType , 14, MVT::v4i32,
71669 OPC_CheckPatternPredicate1,
71670 OPC_EmitInteger32, 28,
71671 OPC_EmitRegisterI32, 0 ,
71672 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEsv4i32),
71673 MVT::v4i32, 4, 0, 1, 2, 3,
71674 20, MVT::v4i1,
71675 OPC_CheckPatternPredicate0,
71676 OPC_EmitInteger32, 20,
71677 OPC_EmitInteger32, 0,
71678 OPC_EmitRegisterI32, 0 ,
71679 OPC_EmitRegisterI32, 0 ,
71680 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
71681 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71682 0,
71683 43,
71684 OPC_CheckChild2Integer, 4,
71685 OPC_CheckChild2TypeI32,
71686 OPC_SwitchType , 14, MVT::v4i32,
71687 OPC_CheckPatternPredicate1,
71688 OPC_EmitInteger32, 28,
71689 OPC_EmitRegisterI32, 0 ,
71690 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEuv4i32),
71691 MVT::v4i32, 4, 0, 1, 2, 3,
71692 20, MVT::v4i1,
71693 OPC_CheckPatternPredicate0,
71694 OPC_EmitInteger32, 4,
71695 OPC_EmitInteger32, 0,
71696 OPC_EmitRegisterI32, 0 ,
71697 OPC_EmitRegisterI32, 0 ,
71698 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32),
71699 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71700 0,
71701 43,
71702 OPC_CheckChild2Integer, 24,
71703 OPC_CheckChild2TypeI32,
71704 OPC_SwitchType , 14, MVT::v4i32,
71705 OPC_CheckPatternPredicate1,
71706 OPC_EmitInteger32, 28,
71707 OPC_EmitRegisterI32, 0 ,
71708 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTsv4i32),
71709 MVT::v4i32, 4, 0, 1, 2, 3,
71710 20, MVT::v4i1,
71711 OPC_CheckPatternPredicate0,
71712 OPC_EmitInteger32, 24,
71713 OPC_EmitInteger32, 0,
71714 OPC_EmitRegisterI32, 0 ,
71715 OPC_EmitRegisterI32, 0 ,
71716 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
71717 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71718 0,
71719 43,
71720 OPC_CheckChild2Integer, 16,
71721 OPC_CheckChild2TypeI32,
71722 OPC_SwitchType , 14, MVT::v4i32,
71723 OPC_CheckPatternPredicate1,
71724 OPC_EmitInteger32, 28,
71725 OPC_EmitRegisterI32, 0 ,
71726 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTuv4i32),
71727 MVT::v4i32, 4, 0, 1, 2, 3,
71728 20, MVT::v4i1,
71729 OPC_CheckPatternPredicate0,
71730 OPC_EmitInteger32, 16,
71731 OPC_EmitInteger32, 0,
71732 OPC_EmitRegisterI32, 0 ,
71733 OPC_EmitRegisterI32, 0 ,
71734 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32),
71735 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71736 0,
71737 25,
71738 OPC_CheckChild2Integer, 2,
71739 OPC_CheckChild2TypeI32,
71740 OPC_CheckType, MVT::v4i1,
71741 OPC_CheckPatternPredicate0,
71742 OPC_EmitInteger32, 2,
71743 OPC_EmitInteger32, 0,
71744 OPC_EmitRegisterI32, 0 ,
71745 OPC_EmitRegisterI32, 0 ,
71746 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32),
71747 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71748 25,
71749 OPC_CheckChild2Integer, 22,
71750 OPC_CheckChild2TypeI32,
71751 OPC_CheckType, MVT::v4i1,
71752 OPC_CheckPatternPredicate0,
71753 OPC_EmitInteger32, 22,
71754 OPC_EmitInteger32, 0,
71755 OPC_EmitRegisterI32, 0 ,
71756 OPC_EmitRegisterI32, 0 ,
71757 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
71758 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71759 25,
71760 OPC_CheckChild2Integer, 26,
71761 OPC_CheckChild2TypeI32,
71762 OPC_CheckType, MVT::v4i1,
71763 OPC_CheckPatternPredicate0,
71764 OPC_EmitInteger32, 26,
71765 OPC_EmitInteger32, 0,
71766 OPC_EmitRegisterI32, 0 ,
71767 OPC_EmitRegisterI32, 0 ,
71768 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32),
71769 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71770 0,
71771 0,
71772 123|128,2,
71773 OPC_CheckChild0Type, MVT::v8f16,
71774 OPC_Scope, 27|128,1,
71775 OPC_MoveChild1,
71776 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
71777 OPC_RecordChild0,
71778 OPC_CheckChild0TypeI32,
71779 OPC_MoveParent,
71780 OPC_CheckType, MVT::v8i1,
71781 OPC_Scope, 23,
71782 OPC_CheckChild2Integer, 0,
71783 OPC_CheckChild2TypeI32,
71784 OPC_CheckPatternPredicate2,
71785 OPC_EmitInteger32, 0,
71786 OPC_EmitInteger32, 0,
71787 OPC_EmitRegisterI32, 0 ,
71788 OPC_EmitRegisterI32, 0 ,
71789 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
71790 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71791 23,
71792 OPC_CheckChild2Integer, 2,
71793 OPC_CheckChild2TypeI32,
71794 OPC_CheckPatternPredicate2,
71795 OPC_EmitInteger32, 2,
71796 OPC_EmitInteger32, 0,
71797 OPC_EmitRegisterI32, 0 ,
71798 OPC_EmitRegisterI32, 0 ,
71799 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
71800 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71801 23,
71802 OPC_CheckChild2Integer, 20,
71803 OPC_CheckChild2TypeI32,
71804 OPC_CheckPatternPredicate2,
71805 OPC_EmitInteger32, 20,
71806 OPC_EmitInteger32, 0,
71807 OPC_EmitRegisterI32, 0 ,
71808 OPC_EmitRegisterI32, 0 ,
71809 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
71810 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71811 23,
71812 OPC_CheckChild2Integer, 22,
71813 OPC_CheckChild2TypeI32,
71814 OPC_CheckPatternPredicate2,
71815 OPC_EmitInteger32, 22,
71816 OPC_EmitInteger32, 0,
71817 OPC_EmitRegisterI32, 0 ,
71818 OPC_EmitRegisterI32, 0 ,
71819 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
71820 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71821 23,
71822 OPC_CheckChild2Integer, 24,
71823 OPC_CheckChild2TypeI32,
71824 OPC_CheckPatternPredicate2,
71825 OPC_EmitInteger32, 24,
71826 OPC_EmitInteger32, 0,
71827 OPC_EmitRegisterI32, 0 ,
71828 OPC_EmitRegisterI32, 0 ,
71829 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
71830 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71831 23,
71832 OPC_CheckChild2Integer, 26,
71833 OPC_CheckChild2TypeI32,
71834 OPC_CheckPatternPredicate2,
71835 OPC_EmitInteger32, 26,
71836 OPC_EmitInteger32, 0,
71837 OPC_EmitRegisterI32, 0 ,
71838 OPC_EmitRegisterI32, 0 ,
71839 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
71840 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71841 0,
71842 88|128,1,
71843 OPC_RecordChild1,
71844 OPC_Scope, 44,
71845 OPC_CheckChild2Integer, 0,
71846 OPC_CheckChild2TypeI32,
71847 OPC_SwitchType , 15, MVT::v8i16,
71848 OPC_CheckPatternPredicate, 11,
71849 OPC_EmitInteger32, 28,
71850 OPC_EmitRegisterI32, 0 ,
71851 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQhq),
71852 MVT::v8i16, 4, 0, 1, 2, 3,
71853 20, MVT::v8i1,
71854 OPC_CheckPatternPredicate2,
71855 OPC_EmitInteger32, 0,
71856 OPC_EmitInteger32, 0,
71857 OPC_EmitRegisterI32, 0 ,
71858 OPC_EmitRegisterI32, 0 ,
71859 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
71860 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71861 0,
71862 44,
71863 OPC_CheckChild2Integer, 20,
71864 OPC_CheckChild2TypeI32,
71865 OPC_SwitchType , 15, MVT::v8i16,
71866 OPC_CheckPatternPredicate, 11,
71867 OPC_EmitInteger32, 28,
71868 OPC_EmitRegisterI32, 0 ,
71869 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEhq),
71870 MVT::v8i16, 4, 0, 1, 2, 3,
71871 20, MVT::v8i1,
71872 OPC_CheckPatternPredicate2,
71873 OPC_EmitInteger32, 20,
71874 OPC_EmitInteger32, 0,
71875 OPC_EmitRegisterI32, 0 ,
71876 OPC_EmitRegisterI32, 0 ,
71877 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
71878 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71879 0,
71880 44,
71881 OPC_CheckChild2Integer, 24,
71882 OPC_CheckChild2TypeI32,
71883 OPC_SwitchType , 15, MVT::v8i16,
71884 OPC_CheckPatternPredicate, 11,
71885 OPC_EmitInteger32, 28,
71886 OPC_EmitRegisterI32, 0 ,
71887 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGThq),
71888 MVT::v8i16, 4, 0, 1, 2, 3,
71889 20, MVT::v8i1,
71890 OPC_CheckPatternPredicate2,
71891 OPC_EmitInteger32, 24,
71892 OPC_EmitInteger32, 0,
71893 OPC_EmitRegisterI32, 0 ,
71894 OPC_EmitRegisterI32, 0 ,
71895 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
71896 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71897 0,
71898 25,
71899 OPC_CheckChild2Integer, 2,
71900 OPC_CheckChild2TypeI32,
71901 OPC_CheckType, MVT::v8i1,
71902 OPC_CheckPatternPredicate2,
71903 OPC_EmitInteger32, 2,
71904 OPC_EmitInteger32, 0,
71905 OPC_EmitRegisterI32, 0 ,
71906 OPC_EmitRegisterI32, 0 ,
71907 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
71908 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71909 25,
71910 OPC_CheckChild2Integer, 22,
71911 OPC_CheckChild2TypeI32,
71912 OPC_CheckType, MVT::v8i1,
71913 OPC_CheckPatternPredicate2,
71914 OPC_EmitInteger32, 22,
71915 OPC_EmitInteger32, 0,
71916 OPC_EmitRegisterI32, 0 ,
71917 OPC_EmitRegisterI32, 0 ,
71918 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
71919 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71920 25,
71921 OPC_CheckChild2Integer, 26,
71922 OPC_CheckChild2TypeI32,
71923 OPC_CheckType, MVT::v8i1,
71924 OPC_CheckPatternPredicate2,
71925 OPC_EmitInteger32, 26,
71926 OPC_EmitInteger32, 0,
71927 OPC_EmitRegisterI32, 0 ,
71928 OPC_EmitRegisterI32, 0 ,
71929 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16),
71930 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
71931 0,
71932 0,
71933 120|128,2,
71934 OPC_CheckChild0Type, MVT::v4f32,
71935 OPC_Scope, 27|128,1,
71936 OPC_MoveChild1,
71937 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
71938 OPC_RecordChild0,
71939 OPC_CheckChild0TypeI32,
71940 OPC_MoveParent,
71941 OPC_CheckType, MVT::v4i1,
71942 OPC_Scope, 23,
71943 OPC_CheckChild2Integer, 0,
71944 OPC_CheckChild2TypeI32,
71945 OPC_CheckPatternPredicate2,
71946 OPC_EmitInteger32, 0,
71947 OPC_EmitInteger32, 0,
71948 OPC_EmitRegisterI32, 0 ,
71949 OPC_EmitRegisterI32, 0 ,
71950 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
71951 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71952 23,
71953 OPC_CheckChild2Integer, 2,
71954 OPC_CheckChild2TypeI32,
71955 OPC_CheckPatternPredicate2,
71956 OPC_EmitInteger32, 2,
71957 OPC_EmitInteger32, 0,
71958 OPC_EmitRegisterI32, 0 ,
71959 OPC_EmitRegisterI32, 0 ,
71960 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
71961 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71962 23,
71963 OPC_CheckChild2Integer, 20,
71964 OPC_CheckChild2TypeI32,
71965 OPC_CheckPatternPredicate2,
71966 OPC_EmitInteger32, 20,
71967 OPC_EmitInteger32, 0,
71968 OPC_EmitRegisterI32, 0 ,
71969 OPC_EmitRegisterI32, 0 ,
71970 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
71971 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71972 23,
71973 OPC_CheckChild2Integer, 22,
71974 OPC_CheckChild2TypeI32,
71975 OPC_CheckPatternPredicate2,
71976 OPC_EmitInteger32, 22,
71977 OPC_EmitInteger32, 0,
71978 OPC_EmitRegisterI32, 0 ,
71979 OPC_EmitRegisterI32, 0 ,
71980 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
71981 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71982 23,
71983 OPC_CheckChild2Integer, 24,
71984 OPC_CheckChild2TypeI32,
71985 OPC_CheckPatternPredicate2,
71986 OPC_EmitInteger32, 24,
71987 OPC_EmitInteger32, 0,
71988 OPC_EmitRegisterI32, 0 ,
71989 OPC_EmitRegisterI32, 0 ,
71990 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
71991 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
71992 23,
71993 OPC_CheckChild2Integer, 26,
71994 OPC_CheckChild2TypeI32,
71995 OPC_CheckPatternPredicate2,
71996 OPC_EmitInteger32, 26,
71997 OPC_EmitInteger32, 0,
71998 OPC_EmitRegisterI32, 0 ,
71999 OPC_EmitRegisterI32, 0 ,
72000 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
72001 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
72002 0,
72003 85|128,1,
72004 OPC_RecordChild1,
72005 OPC_Scope, 43,
72006 OPC_CheckChild2Integer, 0,
72007 OPC_CheckChild2TypeI32,
72008 OPC_SwitchType , 14, MVT::v4i32,
72009 OPC_CheckPatternPredicate1,
72010 OPC_EmitInteger32, 28,
72011 OPC_EmitRegisterI32, 0 ,
72012 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQfq),
72013 MVT::v4i32, 4, 0, 1, 2, 3,
72014 20, MVT::v4i1,
72015 OPC_CheckPatternPredicate2,
72016 OPC_EmitInteger32, 0,
72017 OPC_EmitInteger32, 0,
72018 OPC_EmitRegisterI32, 0 ,
72019 OPC_EmitRegisterI32, 0 ,
72020 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
72021 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
72022 0,
72023 43,
72024 OPC_CheckChild2Integer, 20,
72025 OPC_CheckChild2TypeI32,
72026 OPC_SwitchType , 14, MVT::v4i32,
72027 OPC_CheckPatternPredicate1,
72028 OPC_EmitInteger32, 28,
72029 OPC_EmitRegisterI32, 0 ,
72030 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEfq),
72031 MVT::v4i32, 4, 0, 1, 2, 3,
72032 20, MVT::v4i1,
72033 OPC_CheckPatternPredicate2,
72034 OPC_EmitInteger32, 20,
72035 OPC_EmitInteger32, 0,
72036 OPC_EmitRegisterI32, 0 ,
72037 OPC_EmitRegisterI32, 0 ,
72038 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
72039 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
72040 0,
72041 43,
72042 OPC_CheckChild2Integer, 24,
72043 OPC_CheckChild2TypeI32,
72044 OPC_SwitchType , 14, MVT::v4i32,
72045 OPC_CheckPatternPredicate1,
72046 OPC_EmitInteger32, 28,
72047 OPC_EmitRegisterI32, 0 ,
72048 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTfq),
72049 MVT::v4i32, 4, 0, 1, 2, 3,
72050 20, MVT::v4i1,
72051 OPC_CheckPatternPredicate2,
72052 OPC_EmitInteger32, 24,
72053 OPC_EmitInteger32, 0,
72054 OPC_EmitRegisterI32, 0 ,
72055 OPC_EmitRegisterI32, 0 ,
72056 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
72057 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
72058 0,
72059 25,
72060 OPC_CheckChild2Integer, 2,
72061 OPC_CheckChild2TypeI32,
72062 OPC_CheckType, MVT::v4i1,
72063 OPC_CheckPatternPredicate2,
72064 OPC_EmitInteger32, 2,
72065 OPC_EmitInteger32, 0,
72066 OPC_EmitRegisterI32, 0 ,
72067 OPC_EmitRegisterI32, 0 ,
72068 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
72069 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
72070 25,
72071 OPC_CheckChild2Integer, 22,
72072 OPC_CheckChild2TypeI32,
72073 OPC_CheckType, MVT::v4i1,
72074 OPC_CheckPatternPredicate2,
72075 OPC_EmitInteger32, 22,
72076 OPC_EmitInteger32, 0,
72077 OPC_EmitRegisterI32, 0 ,
72078 OPC_EmitRegisterI32, 0 ,
72079 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
72080 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
72081 25,
72082 OPC_CheckChild2Integer, 26,
72083 OPC_CheckChild2TypeI32,
72084 OPC_CheckType, MVT::v4i1,
72085 OPC_CheckPatternPredicate2,
72086 OPC_EmitInteger32, 26,
72087 OPC_EmitInteger32, 0,
72088 OPC_EmitRegisterI32, 0 ,
72089 OPC_EmitRegisterI32, 0 ,
72090 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32),
72091 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
72092 0,
72093 0,
72094 97,
72095 OPC_CheckChild0Type, MVT::v8i8,
72096 OPC_RecordChild1,
72097 OPC_CheckType, MVT::v8i8,
72098 OPC_Scope, 17,
72099 OPC_CheckChild2Integer, 0,
72100 OPC_CheckChild2TypeI32,
72101 OPC_CheckPatternPredicate1,
72102 OPC_EmitInteger32, 28,
72103 OPC_EmitRegisterI32, 0 ,
72104 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQv8i8),
72105 MVT::v8i8, 4, 0, 1, 2, 3,
72106 17,
72107 OPC_CheckChild2Integer, 20,
72108 OPC_CheckChild2TypeI32,
72109 OPC_CheckPatternPredicate1,
72110 OPC_EmitInteger32, 28,
72111 OPC_EmitRegisterI32, 0 ,
72112 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEsv8i8),
72113 MVT::v8i8, 4, 0, 1, 2, 3,
72114 17,
72115 OPC_CheckChild2Integer, 4,
72116 OPC_CheckChild2TypeI32,
72117 OPC_CheckPatternPredicate1,
72118 OPC_EmitInteger32, 28,
72119 OPC_EmitRegisterI32, 0 ,
72120 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEuv8i8),
72121 MVT::v8i8, 4, 0, 1, 2, 3,
72122 17,
72123 OPC_CheckChild2Integer, 24,
72124 OPC_CheckChild2TypeI32,
72125 OPC_CheckPatternPredicate1,
72126 OPC_EmitInteger32, 28,
72127 OPC_EmitRegisterI32, 0 ,
72128 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTsv8i8),
72129 MVT::v8i8, 4, 0, 1, 2, 3,
72130 17,
72131 OPC_CheckChild2Integer, 16,
72132 OPC_CheckChild2TypeI32,
72133 OPC_CheckPatternPredicate1,
72134 OPC_EmitInteger32, 28,
72135 OPC_EmitRegisterI32, 0 ,
72136 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTuv8i8),
72137 MVT::v8i8, 4, 0, 1, 2, 3,
72138 0,
72139 97,
72140 OPC_CheckChild0Type, MVT::v4i16,
72141 OPC_RecordChild1,
72142 OPC_CheckType, MVT::v4i16,
72143 OPC_Scope, 17,
72144 OPC_CheckChild2Integer, 0,
72145 OPC_CheckChild2TypeI32,
72146 OPC_CheckPatternPredicate1,
72147 OPC_EmitInteger32, 28,
72148 OPC_EmitRegisterI32, 0 ,
72149 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQv4i16),
72150 MVT::v4i16, 4, 0, 1, 2, 3,
72151 17,
72152 OPC_CheckChild2Integer, 20,
72153 OPC_CheckChild2TypeI32,
72154 OPC_CheckPatternPredicate1,
72155 OPC_EmitInteger32, 28,
72156 OPC_EmitRegisterI32, 0 ,
72157 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEsv4i16),
72158 MVT::v4i16, 4, 0, 1, 2, 3,
72159 17,
72160 OPC_CheckChild2Integer, 4,
72161 OPC_CheckChild2TypeI32,
72162 OPC_CheckPatternPredicate1,
72163 OPC_EmitInteger32, 28,
72164 OPC_EmitRegisterI32, 0 ,
72165 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEuv4i16),
72166 MVT::v4i16, 4, 0, 1, 2, 3,
72167 17,
72168 OPC_CheckChild2Integer, 24,
72169 OPC_CheckChild2TypeI32,
72170 OPC_CheckPatternPredicate1,
72171 OPC_EmitInteger32, 28,
72172 OPC_EmitRegisterI32, 0 ,
72173 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTsv4i16),
72174 MVT::v4i16, 4, 0, 1, 2, 3,
72175 17,
72176 OPC_CheckChild2Integer, 16,
72177 OPC_CheckChild2TypeI32,
72178 OPC_CheckPatternPredicate1,
72179 OPC_EmitInteger32, 28,
72180 OPC_EmitRegisterI32, 0 ,
72181 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTuv4i16),
72182 MVT::v4i16, 4, 0, 1, 2, 3,
72183 0,
72184 97,
72185 OPC_CheckChild0Type, MVT::v2i32,
72186 OPC_RecordChild1,
72187 OPC_CheckType, MVT::v2i32,
72188 OPC_Scope, 17,
72189 OPC_CheckChild2Integer, 0,
72190 OPC_CheckChild2TypeI32,
72191 OPC_CheckPatternPredicate1,
72192 OPC_EmitInteger32, 28,
72193 OPC_EmitRegisterI32, 0 ,
72194 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQv2i32),
72195 MVT::v2i32, 4, 0, 1, 2, 3,
72196 17,
72197 OPC_CheckChild2Integer, 20,
72198 OPC_CheckChild2TypeI32,
72199 OPC_CheckPatternPredicate1,
72200 OPC_EmitInteger32, 28,
72201 OPC_EmitRegisterI32, 0 ,
72202 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEsv2i32),
72203 MVT::v2i32, 4, 0, 1, 2, 3,
72204 17,
72205 OPC_CheckChild2Integer, 4,
72206 OPC_CheckChild2TypeI32,
72207 OPC_CheckPatternPredicate1,
72208 OPC_EmitInteger32, 28,
72209 OPC_EmitRegisterI32, 0 ,
72210 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEuv2i32),
72211 MVT::v2i32, 4, 0, 1, 2, 3,
72212 17,
72213 OPC_CheckChild2Integer, 24,
72214 OPC_CheckChild2TypeI32,
72215 OPC_CheckPatternPredicate1,
72216 OPC_EmitInteger32, 28,
72217 OPC_EmitRegisterI32, 0 ,
72218 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTsv2i32),
72219 MVT::v2i32, 4, 0, 1, 2, 3,
72220 17,
72221 OPC_CheckChild2Integer, 16,
72222 OPC_CheckChild2TypeI32,
72223 OPC_CheckPatternPredicate1,
72224 OPC_EmitInteger32, 28,
72225 OPC_EmitRegisterI32, 0 ,
72226 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTuv2i32),
72227 MVT::v2i32, 4, 0, 1, 2, 3,
72228 0,
72229 61,
72230 OPC_CheckChild0Type, MVT::v2f32,
72231 OPC_RecordChild1,
72232 OPC_CheckType, MVT::v2i32,
72233 OPC_Scope, 17,
72234 OPC_CheckChild2Integer, 0,
72235 OPC_CheckChild2TypeI32,
72236 OPC_CheckPatternPredicate1,
72237 OPC_EmitInteger32, 28,
72238 OPC_EmitRegisterI32, 0 ,
72239 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQfd),
72240 MVT::v2i32, 4, 0, 1, 2, 3,
72241 17,
72242 OPC_CheckChild2Integer, 20,
72243 OPC_CheckChild2TypeI32,
72244 OPC_CheckPatternPredicate1,
72245 OPC_EmitInteger32, 28,
72246 OPC_EmitRegisterI32, 0 ,
72247 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEfd),
72248 MVT::v2i32, 4, 0, 1, 2, 3,
72249 17,
72250 OPC_CheckChild2Integer, 24,
72251 OPC_CheckChild2TypeI32,
72252 OPC_CheckPatternPredicate1,
72253 OPC_EmitInteger32, 28,
72254 OPC_EmitRegisterI32, 0 ,
72255 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTfd),
72256 MVT::v2i32, 4, 0, 1, 2, 3,
72257 0,
72258 64,
72259 OPC_CheckChild0Type, MVT::v4f16,
72260 OPC_RecordChild1,
72261 OPC_CheckType, MVT::v4i16,
72262 OPC_Scope, 18,
72263 OPC_CheckChild2Integer, 0,
72264 OPC_CheckChild2TypeI32,
72265 OPC_CheckPatternPredicate, 11,
72266 OPC_EmitInteger32, 28,
72267 OPC_EmitRegisterI32, 0 ,
72268 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQhd),
72269 MVT::v4i16, 4, 0, 1, 2, 3,
72270 18,
72271 OPC_CheckChild2Integer, 20,
72272 OPC_CheckChild2TypeI32,
72273 OPC_CheckPatternPredicate, 11,
72274 OPC_EmitInteger32, 28,
72275 OPC_EmitRegisterI32, 0 ,
72276 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEhd),
72277 MVT::v4i16, 4, 0, 1, 2, 3,
72278 18,
72279 OPC_CheckChild2Integer, 24,
72280 OPC_CheckChild2TypeI32,
72281 OPC_CheckPatternPredicate, 11,
72282 OPC_EmitInteger32, 28,
72283 OPC_EmitRegisterI32, 0 ,
72284 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGThd),
72285 MVT::v4i16, 4, 0, 1, 2, 3,
72286 0,
72287 0,
72288 15|128,1, TARGET_VAL(ARMISD::VMOVN),
72289 OPC_RecordChild0,
72290 OPC_Scope, 53,
72291 OPC_MoveChild1,
72292 OPC_SwitchOpcode , 22, TARGET_VAL(ARMISD::VREV32),
72293 OPC_RecordChild0,
72294 OPC_MoveParent,
72295 OPC_CheckChild2Integer, 2,
72296 OPC_CheckType, MVT::v8i16,
72297 OPC_EmitInteger32, 0,
72298 OPC_EmitRegisterI32, 0 ,
72299 OPC_EmitRegisterI32, 0 ,
72300 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVNi32bh),
72301 MVT::v8i16, 5, 1, 0, 2, 3, 4,
72302 22, TARGET_VAL(ARMISD::VREV16),
72303 OPC_RecordChild0,
72304 OPC_MoveParent,
72305 OPC_CheckChild2Integer, 2,
72306 OPC_CheckType, MVT::v16i8,
72307 OPC_EmitInteger32, 0,
72308 OPC_EmitRegisterI32, 0 ,
72309 OPC_EmitRegisterI32, 0 ,
72310 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVNi16bh),
72311 MVT::v16i8, 5, 1, 0, 2, 3, 4,
72312 0,
72313 85,
72314 OPC_RecordChild1,
72315 OPC_Scope, 40,
72316 OPC_CheckChild2Integer, 0,
72317 OPC_SwitchType , 16, MVT::v8i16,
72318 OPC_EmitInteger32, 0,
72319 OPC_EmitRegisterI32, 0 ,
72320 OPC_EmitRegisterI32, 0 ,
72321 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVNi32bh),
72322 MVT::v8i16, 5, 0, 1, 2, 3, 4,
72323 16, MVT::v16i8,
72324 OPC_EmitInteger32, 0,
72325 OPC_EmitRegisterI32, 0 ,
72326 OPC_EmitRegisterI32, 0 ,
72327 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVNi16bh),
72328 MVT::v16i8, 5, 0, 1, 2, 3, 4,
72329 0,
72330 40,
72331 OPC_CheckChild2Integer, 2,
72332 OPC_SwitchType , 16, MVT::v8i16,
72333 OPC_EmitInteger32, 0,
72334 OPC_EmitRegisterI32, 0 ,
72335 OPC_EmitRegisterI32, 0 ,
72336 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVNi32th),
72337 MVT::v8i16, 5, 0, 1, 2, 3, 4,
72338 16, MVT::v16i8,
72339 OPC_EmitInteger32, 0,
72340 OPC_EmitRegisterI32, 0 ,
72341 OPC_EmitRegisterI32, 0 ,
72342 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVNi16th),
72343 MVT::v16i8, 5, 0, 1, 2, 3, 4,
72344 0,
72345 0,
72346 0,
72347 119, TARGET_VAL(ISD::INSERT_SUBVECTOR),
72348 OPC_MoveChild0,
72349 OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF),
72350 OPC_MoveParent,
72351 OPC_RecordChild1,
72352 OPC_CheckChild2Integer, 0,
72353 OPC_CheckChild2TypeI32,
72354 OPC_SwitchType , 16, MVT::v2i64,
72355 OPC_CheckPatternPredicate1,
72356 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
72357 MVT::v2i64, 0,
72358 OPC_EmitStringInteger32, ARM::dsub_0,
72359 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
72360 MVT::v2i64, 3, 1, 0, 2,
72361 16, MVT::v4i32,
72362 OPC_CheckPatternPredicate1,
72363 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
72364 MVT::v4i32, 0,
72365 OPC_EmitStringInteger32, ARM::dsub_0,
72366 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
72367 MVT::v4i32, 3, 1, 0, 2,
72368 16, MVT::v8i16,
72369 OPC_CheckPatternPredicate1,
72370 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
72371 MVT::v8i16, 0,
72372 OPC_EmitStringInteger32, ARM::dsub_0,
72373 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
72374 MVT::v8i16, 3, 1, 0, 2,
72375 16, MVT::v16i8,
72376 OPC_CheckPatternPredicate1,
72377 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
72378 MVT::v16i8, 0,
72379 OPC_EmitStringInteger32, ARM::dsub_0,
72380 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
72381 MVT::v16i8, 3, 1, 0, 2,
72382 16, MVT::v4f32,
72383 OPC_CheckPatternPredicate1,
72384 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
72385 MVT::v4f32, 0,
72386 OPC_EmitStringInteger32, ARM::dsub_0,
72387 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
72388 MVT::v4f32, 3, 1, 0, 2,
72389 16, MVT::v8f16,
72390 OPC_CheckPatternPredicate1,
72391 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
72392 MVT::v8f16, 0,
72393 OPC_EmitStringInteger32, ARM::dsub_0,
72394 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
72395 MVT::v8f16, 3, 1, 0, 2,
72396 0,
72397 78|128,1, TARGET_VAL(ARMISD::VMULLs),
72398 OPC_Scope, 73,
72399 OPC_RecordChild0,
72400 OPC_Scope, 34,
72401 OPC_CheckChild0Type, MVT::v4i16,
72402 OPC_MoveChild1,
72403 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
72404 OPC_RecordChild0,
72405 OPC_CheckChild0Type, MVT::v4i16,
72406 OPC_RecordChild1,
72407 OPC_MoveChild1,
72408 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
72409 OPC_MoveParent,
72410 OPC_MoveParent,
72411 OPC_CheckType, MVT::v4i32,
72412 OPC_CheckPatternPredicate1,
72413 OPC_EmitConvertToTarget2,
72414 OPC_EmitInteger32, 28,
72415 OPC_EmitRegisterI32, 0 ,
72416 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLslsv4i16),
72417 MVT::v4i32, 5, 0, 1, 3, 4, 5,
72418 34,
72419 OPC_CheckChild0Type, MVT::v2i32,
72420 OPC_MoveChild1,
72421 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
72422 OPC_RecordChild0,
72423 OPC_CheckChild0Type, MVT::v2i32,
72424 OPC_RecordChild1,
72425 OPC_MoveChild1,
72426 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
72427 OPC_MoveParent,
72428 OPC_MoveParent,
72429 OPC_CheckType, MVT::v2i64,
72430 OPC_CheckPatternPredicate1,
72431 OPC_EmitConvertToTarget2,
72432 OPC_EmitInteger32, 28,
72433 OPC_EmitRegisterI32, 0 ,
72434 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLslsv2i32),
72435 MVT::v2i64, 5, 0, 1, 3, 4, 5,
72436 0,
72437 38,
72438 OPC_MoveChild0,
72439 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV64),
72440 OPC_RecordChild0,
72441 OPC_CheckType, MVT::v4i32,
72442 OPC_MoveSibling1,
72443 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV64),
72444 OPC_RecordChild0,
72445 OPC_MoveParent,
72446 OPC_CheckType, MVT::v2i64,
72447 OPC_CheckPatternPredicate0,
72448 OPC_EmitInteger32, 0,
72449 OPC_EmitRegisterI32, 0 ,
72450 OPC_EmitRegisterI32, 0 ,
72451 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
72452 MVT::v4i32, 0,
72453 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTs32),
72454 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
72455 90,
72456 OPC_RecordChild0,
72457 OPC_SwitchType , 17, MVT::v8i16,
72458 OPC_CheckChild0Type, MVT::v8i8,
72459 OPC_RecordChild1,
72460 OPC_CheckPatternPredicate1,
72461 OPC_EmitInteger32, 28,
72462 OPC_EmitRegisterI32, 0 ,
72463 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLsv8i16),
72464 MVT::v8i16, 4, 0, 1, 2, 3,
72465 17, MVT::v4i32,
72466 OPC_CheckChild0Type, MVT::v4i16,
72467 OPC_RecordChild1,
72468 OPC_CheckPatternPredicate1,
72469 OPC_EmitInteger32, 28,
72470 OPC_EmitRegisterI32, 0 ,
72471 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLsv4i32),
72472 MVT::v4i32, 4, 0, 1, 2, 3,
72473 47, MVT::v2i64,
72474 OPC_Scope, 17,
72475 OPC_CheckChild0Type, MVT::v2i32,
72476 OPC_RecordChild1,
72477 OPC_CheckPatternPredicate1,
72478 OPC_EmitInteger32, 28,
72479 OPC_EmitRegisterI32, 0 ,
72480 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLsv2i64),
72481 MVT::v2i64, 4, 0, 1, 2, 3,
72482 26,
72483 OPC_CheckChild0Type, MVT::v4i32,
72484 OPC_RecordChild1,
72485 OPC_CheckPatternPredicate0,
72486 OPC_EmitInteger32, 0,
72487 OPC_EmitRegisterI32, 0 ,
72488 OPC_EmitRegisterI32, 0 ,
72489 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
72490 MVT::v4i32, 0,
72491 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBs32),
72492 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
72493 0,
72494 0,
72495 0,
72496 78|128,1, TARGET_VAL(ARMISD::VMULLu),
72497 OPC_Scope, 73,
72498 OPC_RecordChild0,
72499 OPC_Scope, 34,
72500 OPC_CheckChild0Type, MVT::v4i16,
72501 OPC_MoveChild1,
72502 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
72503 OPC_RecordChild0,
72504 OPC_CheckChild0Type, MVT::v4i16,
72505 OPC_RecordChild1,
72506 OPC_MoveChild1,
72507 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
72508 OPC_MoveParent,
72509 OPC_MoveParent,
72510 OPC_CheckType, MVT::v4i32,
72511 OPC_CheckPatternPredicate1,
72512 OPC_EmitConvertToTarget2,
72513 OPC_EmitInteger32, 28,
72514 OPC_EmitRegisterI32, 0 ,
72515 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLsluv4i16),
72516 MVT::v4i32, 5, 0, 1, 3, 4, 5,
72517 34,
72518 OPC_CheckChild0Type, MVT::v2i32,
72519 OPC_MoveChild1,
72520 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUPLANE),
72521 OPC_RecordChild0,
72522 OPC_CheckChild0Type, MVT::v2i32,
72523 OPC_RecordChild1,
72524 OPC_MoveChild1,
72525 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
72526 OPC_MoveParent,
72527 OPC_MoveParent,
72528 OPC_CheckType, MVT::v2i64,
72529 OPC_CheckPatternPredicate1,
72530 OPC_EmitConvertToTarget2,
72531 OPC_EmitInteger32, 28,
72532 OPC_EmitRegisterI32, 0 ,
72533 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLsluv2i32),
72534 MVT::v2i64, 5, 0, 1, 3, 4, 5,
72535 0,
72536 38,
72537 OPC_MoveChild0,
72538 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV64),
72539 OPC_RecordChild0,
72540 OPC_CheckType, MVT::v4i32,
72541 OPC_MoveSibling1,
72542 OPC_CheckOpcode, TARGET_VAL(ARMISD::VREV64),
72543 OPC_RecordChild0,
72544 OPC_MoveParent,
72545 OPC_CheckType, MVT::v2i64,
72546 OPC_CheckPatternPredicate0,
72547 OPC_EmitInteger32, 0,
72548 OPC_EmitRegisterI32, 0 ,
72549 OPC_EmitRegisterI32, 0 ,
72550 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
72551 MVT::v4i32, 0,
72552 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLTu32),
72553 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
72554 90,
72555 OPC_RecordChild0,
72556 OPC_SwitchType , 17, MVT::v8i16,
72557 OPC_CheckChild0Type, MVT::v8i8,
72558 OPC_RecordChild1,
72559 OPC_CheckPatternPredicate1,
72560 OPC_EmitInteger32, 28,
72561 OPC_EmitRegisterI32, 0 ,
72562 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLuv8i16),
72563 MVT::v8i16, 4, 0, 1, 2, 3,
72564 17, MVT::v4i32,
72565 OPC_CheckChild0Type, MVT::v4i16,
72566 OPC_RecordChild1,
72567 OPC_CheckPatternPredicate1,
72568 OPC_EmitInteger32, 28,
72569 OPC_EmitRegisterI32, 0 ,
72570 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLuv4i32),
72571 MVT::v4i32, 4, 0, 1, 2, 3,
72572 47, MVT::v2i64,
72573 OPC_Scope, 17,
72574 OPC_CheckChild0Type, MVT::v2i32,
72575 OPC_RecordChild1,
72576 OPC_CheckPatternPredicate1,
72577 OPC_EmitInteger32, 28,
72578 OPC_EmitRegisterI32, 0 ,
72579 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMULLuv2i64),
72580 MVT::v2i64, 4, 0, 1, 2, 3,
72581 26,
72582 OPC_CheckChild0Type, MVT::v4i32,
72583 OPC_RecordChild1,
72584 OPC_CheckPatternPredicate0,
72585 OPC_EmitInteger32, 0,
72586 OPC_EmitRegisterI32, 0 ,
72587 OPC_EmitRegisterI32, 0 ,
72588 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
72589 MVT::v4i32, 0,
72590 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULLBu32),
72591 MVT::v2i64, 6, 0, 1, 2, 3, 4, 5,
72592 0,
72593 0,
72594 0,
72595 16|128,15, TARGET_VAL(ARMISD::VCMPZ),
72596 OPC_RecordChild0,
72597 OPC_Scope, 91,
72598 OPC_CheckChild0Type, MVT::v8i8,
72599 OPC_CheckType, MVT::v8i8,
72600 OPC_Scope, 16,
72601 OPC_CheckChild1Integer, 0,
72602 OPC_CheckChild1TypeI32,
72603 OPC_CheckPatternPredicate1,
72604 OPC_EmitInteger32, 28,
72605 OPC_EmitRegisterI32, 0 ,
72606 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQzv8i8),
72607 MVT::v8i8, 3, 0, 1, 2,
72608 16,
72609 OPC_CheckChild1Integer, 20,
72610 OPC_CheckChild1TypeI32,
72611 OPC_CheckPatternPredicate1,
72612 OPC_EmitInteger32, 28,
72613 OPC_EmitRegisterI32, 0 ,
72614 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEzv8i8),
72615 MVT::v8i8, 3, 0, 1, 2,
72616 16,
72617 OPC_CheckChild1Integer, 26,
72618 OPC_CheckChild1TypeI32,
72619 OPC_CheckPatternPredicate1,
72620 OPC_EmitInteger32, 28,
72621 OPC_EmitRegisterI32, 0 ,
72622 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLEzv8i8),
72623 MVT::v8i8, 3, 0, 1, 2,
72624 16,
72625 OPC_CheckChild1Integer, 24,
72626 OPC_CheckChild1TypeI32,
72627 OPC_CheckPatternPredicate1,
72628 OPC_EmitInteger32, 28,
72629 OPC_EmitRegisterI32, 0 ,
72630 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTzv8i8),
72631 MVT::v8i8, 3, 0, 1, 2,
72632 16,
72633 OPC_CheckChild1Integer, 22,
72634 OPC_CheckChild1TypeI32,
72635 OPC_CheckPatternPredicate1,
72636 OPC_EmitInteger32, 28,
72637 OPC_EmitRegisterI32, 0 ,
72638 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLTzv8i8),
72639 MVT::v8i8, 3, 0, 1, 2,
72640 0,
72641 91,
72642 OPC_CheckChild0Type, MVT::v4i16,
72643 OPC_CheckType, MVT::v4i16,
72644 OPC_Scope, 16,
72645 OPC_CheckChild1Integer, 0,
72646 OPC_CheckChild1TypeI32,
72647 OPC_CheckPatternPredicate1,
72648 OPC_EmitInteger32, 28,
72649 OPC_EmitRegisterI32, 0 ,
72650 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQzv4i16),
72651 MVT::v4i16, 3, 0, 1, 2,
72652 16,
72653 OPC_CheckChild1Integer, 20,
72654 OPC_CheckChild1TypeI32,
72655 OPC_CheckPatternPredicate1,
72656 OPC_EmitInteger32, 28,
72657 OPC_EmitRegisterI32, 0 ,
72658 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEzv4i16),
72659 MVT::v4i16, 3, 0, 1, 2,
72660 16,
72661 OPC_CheckChild1Integer, 26,
72662 OPC_CheckChild1TypeI32,
72663 OPC_CheckPatternPredicate1,
72664 OPC_EmitInteger32, 28,
72665 OPC_EmitRegisterI32, 0 ,
72666 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLEzv4i16),
72667 MVT::v4i16, 3, 0, 1, 2,
72668 16,
72669 OPC_CheckChild1Integer, 24,
72670 OPC_CheckChild1TypeI32,
72671 OPC_CheckPatternPredicate1,
72672 OPC_EmitInteger32, 28,
72673 OPC_EmitRegisterI32, 0 ,
72674 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTzv4i16),
72675 MVT::v4i16, 3, 0, 1, 2,
72676 16,
72677 OPC_CheckChild1Integer, 22,
72678 OPC_CheckChild1TypeI32,
72679 OPC_CheckPatternPredicate1,
72680 OPC_EmitInteger32, 28,
72681 OPC_EmitRegisterI32, 0 ,
72682 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLTzv4i16),
72683 MVT::v4i16, 3, 0, 1, 2,
72684 0,
72685 91,
72686 OPC_CheckChild0Type, MVT::v2i32,
72687 OPC_CheckType, MVT::v2i32,
72688 OPC_Scope, 16,
72689 OPC_CheckChild1Integer, 0,
72690 OPC_CheckChild1TypeI32,
72691 OPC_CheckPatternPredicate1,
72692 OPC_EmitInteger32, 28,
72693 OPC_EmitRegisterI32, 0 ,
72694 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQzv2i32),
72695 MVT::v2i32, 3, 0, 1, 2,
72696 16,
72697 OPC_CheckChild1Integer, 20,
72698 OPC_CheckChild1TypeI32,
72699 OPC_CheckPatternPredicate1,
72700 OPC_EmitInteger32, 28,
72701 OPC_EmitRegisterI32, 0 ,
72702 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEzv2i32),
72703 MVT::v2i32, 3, 0, 1, 2,
72704 16,
72705 OPC_CheckChild1Integer, 26,
72706 OPC_CheckChild1TypeI32,
72707 OPC_CheckPatternPredicate1,
72708 OPC_EmitInteger32, 28,
72709 OPC_EmitRegisterI32, 0 ,
72710 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLEzv2i32),
72711 MVT::v2i32, 3, 0, 1, 2,
72712 16,
72713 OPC_CheckChild1Integer, 24,
72714 OPC_CheckChild1TypeI32,
72715 OPC_CheckPatternPredicate1,
72716 OPC_EmitInteger32, 28,
72717 OPC_EmitRegisterI32, 0 ,
72718 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTzv2i32),
72719 MVT::v2i32, 3, 0, 1, 2,
72720 16,
72721 OPC_CheckChild1Integer, 22,
72722 OPC_CheckChild1TypeI32,
72723 OPC_CheckPatternPredicate1,
72724 OPC_EmitInteger32, 28,
72725 OPC_EmitRegisterI32, 0 ,
72726 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLTzv2i32),
72727 MVT::v2i32, 3, 0, 1, 2,
72728 0,
72729 91,
72730 OPC_CheckChild0Type, MVT::v2f32,
72731 OPC_CheckType, MVT::v2i32,
72732 OPC_Scope, 16,
72733 OPC_CheckChild1Integer, 0,
72734 OPC_CheckChild1TypeI32,
72735 OPC_CheckPatternPredicate1,
72736 OPC_EmitInteger32, 28,
72737 OPC_EmitRegisterI32, 0 ,
72738 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQzv2f32),
72739 MVT::v2i32, 3, 0, 1, 2,
72740 16,
72741 OPC_CheckChild1Integer, 20,
72742 OPC_CheckChild1TypeI32,
72743 OPC_CheckPatternPredicate1,
72744 OPC_EmitInteger32, 28,
72745 OPC_EmitRegisterI32, 0 ,
72746 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEzv2f32),
72747 MVT::v2i32, 3, 0, 1, 2,
72748 16,
72749 OPC_CheckChild1Integer, 26,
72750 OPC_CheckChild1TypeI32,
72751 OPC_CheckPatternPredicate1,
72752 OPC_EmitInteger32, 28,
72753 OPC_EmitRegisterI32, 0 ,
72754 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLEzv2f32),
72755 MVT::v2i32, 3, 0, 1, 2,
72756 16,
72757 OPC_CheckChild1Integer, 24,
72758 OPC_CheckChild1TypeI32,
72759 OPC_CheckPatternPredicate1,
72760 OPC_EmitInteger32, 28,
72761 OPC_EmitRegisterI32, 0 ,
72762 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTzv2f32),
72763 MVT::v2i32, 3, 0, 1, 2,
72764 16,
72765 OPC_CheckChild1Integer, 22,
72766 OPC_CheckChild1TypeI32,
72767 OPC_CheckPatternPredicate1,
72768 OPC_EmitInteger32, 28,
72769 OPC_EmitRegisterI32, 0 ,
72770 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLTzv2f32),
72771 MVT::v2i32, 3, 0, 1, 2,
72772 0,
72773 96,
72774 OPC_CheckChild0Type, MVT::v4f16,
72775 OPC_CheckType, MVT::v4i16,
72776 OPC_Scope, 17,
72777 OPC_CheckChild1Integer, 0,
72778 OPC_CheckChild1TypeI32,
72779 OPC_CheckPatternPredicate, 11,
72780 OPC_EmitInteger32, 28,
72781 OPC_EmitRegisterI32, 0 ,
72782 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQzv4f16),
72783 MVT::v4i16, 3, 0, 1, 2,
72784 17,
72785 OPC_CheckChild1Integer, 20,
72786 OPC_CheckChild1TypeI32,
72787 OPC_CheckPatternPredicate, 11,
72788 OPC_EmitInteger32, 28,
72789 OPC_EmitRegisterI32, 0 ,
72790 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEzv4f16),
72791 MVT::v4i16, 3, 0, 1, 2,
72792 17,
72793 OPC_CheckChild1Integer, 26,
72794 OPC_CheckChild1TypeI32,
72795 OPC_CheckPatternPredicate, 11,
72796 OPC_EmitInteger32, 28,
72797 OPC_EmitRegisterI32, 0 ,
72798 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLEzv4f16),
72799 MVT::v4i16, 3, 0, 1, 2,
72800 17,
72801 OPC_CheckChild1Integer, 24,
72802 OPC_CheckChild1TypeI32,
72803 OPC_CheckPatternPredicate, 11,
72804 OPC_EmitInteger32, 28,
72805 OPC_EmitRegisterI32, 0 ,
72806 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTzv4f16),
72807 MVT::v4i16, 3, 0, 1, 2,
72808 17,
72809 OPC_CheckChild1Integer, 22,
72810 OPC_CheckChild1TypeI32,
72811 OPC_CheckPatternPredicate, 11,
72812 OPC_EmitInteger32, 28,
72813 OPC_EmitRegisterI32, 0 ,
72814 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLTzv4f16),
72815 MVT::v4i16, 3, 0, 1, 2,
72816 0,
72817 57|128,2,
72818 OPC_CheckChild0Type, MVT::v16i8,
72819 OPC_Scope, 44,
72820 OPC_CheckChild1Integer, 0,
72821 OPC_CheckChild1TypeI32,
72822 OPC_SwitchType , 13, MVT::v16i8,
72823 OPC_CheckPatternPredicate1,
72824 OPC_EmitInteger32, 28,
72825 OPC_EmitRegisterI32, 0 ,
72826 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQzv16i8),
72827 MVT::v16i8, 3, 0, 1, 2,
72828 22, MVT::v16i1,
72829 OPC_CheckPatternPredicate0,
72830 OPC_EmitRegisterI32, ARM::ZR,
72831 OPC_EmitInteger32, 0,
72832 OPC_EmitInteger32, 0,
72833 OPC_EmitRegisterI32, 0 ,
72834 OPC_EmitRegisterI32, 0 ,
72835 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
72836 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
72837 0,
72838 44,
72839 OPC_CheckChild1Integer, 20,
72840 OPC_CheckChild1TypeI32,
72841 OPC_SwitchType , 13, MVT::v16i8,
72842 OPC_CheckPatternPredicate1,
72843 OPC_EmitInteger32, 28,
72844 OPC_EmitRegisterI32, 0 ,
72845 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEzv16i8),
72846 MVT::v16i8, 3, 0, 1, 2,
72847 22, MVT::v16i1,
72848 OPC_CheckPatternPredicate0,
72849 OPC_EmitRegisterI32, ARM::ZR,
72850 OPC_EmitInteger32, 20,
72851 OPC_EmitInteger32, 0,
72852 OPC_EmitRegisterI32, 0 ,
72853 OPC_EmitRegisterI32, 0 ,
72854 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
72855 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
72856 0,
72857 44,
72858 OPC_CheckChild1Integer, 26,
72859 OPC_CheckChild1TypeI32,
72860 OPC_SwitchType , 13, MVT::v16i8,
72861 OPC_CheckPatternPredicate1,
72862 OPC_EmitInteger32, 28,
72863 OPC_EmitRegisterI32, 0 ,
72864 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLEzv16i8),
72865 MVT::v16i8, 3, 0, 1, 2,
72866 22, MVT::v16i1,
72867 OPC_CheckPatternPredicate0,
72868 OPC_EmitRegisterI32, ARM::ZR,
72869 OPC_EmitInteger32, 26,
72870 OPC_EmitInteger32, 0,
72871 OPC_EmitRegisterI32, 0 ,
72872 OPC_EmitRegisterI32, 0 ,
72873 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
72874 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
72875 0,
72876 44,
72877 OPC_CheckChild1Integer, 24,
72878 OPC_CheckChild1TypeI32,
72879 OPC_SwitchType , 13, MVT::v16i8,
72880 OPC_CheckPatternPredicate1,
72881 OPC_EmitInteger32, 28,
72882 OPC_EmitRegisterI32, 0 ,
72883 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTzv16i8),
72884 MVT::v16i8, 3, 0, 1, 2,
72885 22, MVT::v16i1,
72886 OPC_CheckPatternPredicate0,
72887 OPC_EmitRegisterI32, ARM::ZR,
72888 OPC_EmitInteger32, 24,
72889 OPC_EmitInteger32, 0,
72890 OPC_EmitRegisterI32, 0 ,
72891 OPC_EmitRegisterI32, 0 ,
72892 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
72893 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
72894 0,
72895 44,
72896 OPC_CheckChild1Integer, 22,
72897 OPC_CheckChild1TypeI32,
72898 OPC_SwitchType , 13, MVT::v16i8,
72899 OPC_CheckPatternPredicate1,
72900 OPC_EmitInteger32, 28,
72901 OPC_EmitRegisterI32, 0 ,
72902 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLTzv16i8),
72903 MVT::v16i8, 3, 0, 1, 2,
72904 22, MVT::v16i1,
72905 OPC_CheckPatternPredicate0,
72906 OPC_EmitRegisterI32, ARM::ZR,
72907 OPC_EmitInteger32, 22,
72908 OPC_EmitInteger32, 0,
72909 OPC_EmitRegisterI32, 0 ,
72910 OPC_EmitRegisterI32, 0 ,
72911 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs8r),
72912 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
72913 0,
72914 27,
72915 OPC_CheckChild1Integer, 2,
72916 OPC_CheckChild1TypeI32,
72917 OPC_CheckType, MVT::v16i1,
72918 OPC_CheckPatternPredicate0,
72919 OPC_EmitRegisterI32, ARM::ZR,
72920 OPC_EmitInteger32, 2,
72921 OPC_EmitInteger32, 0,
72922 OPC_EmitRegisterI32, 0 ,
72923 OPC_EmitRegisterI32, 0 ,
72924 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi8r),
72925 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
72926 27,
72927 OPC_CheckChild1Integer, 16,
72928 OPC_CheckChild1TypeI32,
72929 OPC_CheckType, MVT::v16i1,
72930 OPC_CheckPatternPredicate0,
72931 OPC_EmitRegisterI32, ARM::ZR,
72932 OPC_EmitInteger32, 16,
72933 OPC_EmitInteger32, 0,
72934 OPC_EmitRegisterI32, 0 ,
72935 OPC_EmitRegisterI32, 0 ,
72936 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
72937 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
72938 27,
72939 OPC_CheckChild1Integer, 4,
72940 OPC_CheckChild1TypeI32,
72941 OPC_CheckType, MVT::v16i1,
72942 OPC_CheckPatternPredicate0,
72943 OPC_EmitRegisterI32, ARM::ZR,
72944 OPC_EmitInteger32, 4,
72945 OPC_EmitInteger32, 0,
72946 OPC_EmitRegisterI32, 0 ,
72947 OPC_EmitRegisterI32, 0 ,
72948 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu8r),
72949 MVT::v16i1, 6, 0, 1, 2, 3, 4, 5,
72950 0,
72951 57|128,2,
72952 OPC_CheckChild0Type, MVT::v8i16,
72953 OPC_Scope, 44,
72954 OPC_CheckChild1Integer, 0,
72955 OPC_CheckChild1TypeI32,
72956 OPC_SwitchType , 13, MVT::v8i16,
72957 OPC_CheckPatternPredicate1,
72958 OPC_EmitInteger32, 28,
72959 OPC_EmitRegisterI32, 0 ,
72960 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQzv8i16),
72961 MVT::v8i16, 3, 0, 1, 2,
72962 22, MVT::v8i1,
72963 OPC_CheckPatternPredicate0,
72964 OPC_EmitRegisterI32, ARM::ZR,
72965 OPC_EmitInteger32, 0,
72966 OPC_EmitInteger32, 0,
72967 OPC_EmitRegisterI32, 0 ,
72968 OPC_EmitRegisterI32, 0 ,
72969 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
72970 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
72971 0,
72972 44,
72973 OPC_CheckChild1Integer, 20,
72974 OPC_CheckChild1TypeI32,
72975 OPC_SwitchType , 13, MVT::v8i16,
72976 OPC_CheckPatternPredicate1,
72977 OPC_EmitInteger32, 28,
72978 OPC_EmitRegisterI32, 0 ,
72979 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEzv8i16),
72980 MVT::v8i16, 3, 0, 1, 2,
72981 22, MVT::v8i1,
72982 OPC_CheckPatternPredicate0,
72983 OPC_EmitRegisterI32, ARM::ZR,
72984 OPC_EmitInteger32, 20,
72985 OPC_EmitInteger32, 0,
72986 OPC_EmitRegisterI32, 0 ,
72987 OPC_EmitRegisterI32, 0 ,
72988 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
72989 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
72990 0,
72991 44,
72992 OPC_CheckChild1Integer, 26,
72993 OPC_CheckChild1TypeI32,
72994 OPC_SwitchType , 13, MVT::v8i16,
72995 OPC_CheckPatternPredicate1,
72996 OPC_EmitInteger32, 28,
72997 OPC_EmitRegisterI32, 0 ,
72998 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLEzv8i16),
72999 MVT::v8i16, 3, 0, 1, 2,
73000 22, MVT::v8i1,
73001 OPC_CheckPatternPredicate0,
73002 OPC_EmitRegisterI32, ARM::ZR,
73003 OPC_EmitInteger32, 26,
73004 OPC_EmitInteger32, 0,
73005 OPC_EmitRegisterI32, 0 ,
73006 OPC_EmitRegisterI32, 0 ,
73007 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
73008 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73009 0,
73010 44,
73011 OPC_CheckChild1Integer, 24,
73012 OPC_CheckChild1TypeI32,
73013 OPC_SwitchType , 13, MVT::v8i16,
73014 OPC_CheckPatternPredicate1,
73015 OPC_EmitInteger32, 28,
73016 OPC_EmitRegisterI32, 0 ,
73017 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTzv8i16),
73018 MVT::v8i16, 3, 0, 1, 2,
73019 22, MVT::v8i1,
73020 OPC_CheckPatternPredicate0,
73021 OPC_EmitRegisterI32, ARM::ZR,
73022 OPC_EmitInteger32, 24,
73023 OPC_EmitInteger32, 0,
73024 OPC_EmitRegisterI32, 0 ,
73025 OPC_EmitRegisterI32, 0 ,
73026 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
73027 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73028 0,
73029 44,
73030 OPC_CheckChild1Integer, 22,
73031 OPC_CheckChild1TypeI32,
73032 OPC_SwitchType , 13, MVT::v8i16,
73033 OPC_CheckPatternPredicate1,
73034 OPC_EmitInteger32, 28,
73035 OPC_EmitRegisterI32, 0 ,
73036 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLTzv8i16),
73037 MVT::v8i16, 3, 0, 1, 2,
73038 22, MVT::v8i1,
73039 OPC_CheckPatternPredicate0,
73040 OPC_EmitRegisterI32, ARM::ZR,
73041 OPC_EmitInteger32, 22,
73042 OPC_EmitInteger32, 0,
73043 OPC_EmitRegisterI32, 0 ,
73044 OPC_EmitRegisterI32, 0 ,
73045 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs16r),
73046 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73047 0,
73048 27,
73049 OPC_CheckChild1Integer, 2,
73050 OPC_CheckChild1TypeI32,
73051 OPC_CheckType, MVT::v8i1,
73052 OPC_CheckPatternPredicate0,
73053 OPC_EmitRegisterI32, ARM::ZR,
73054 OPC_EmitInteger32, 2,
73055 OPC_EmitInteger32, 0,
73056 OPC_EmitRegisterI32, 0 ,
73057 OPC_EmitRegisterI32, 0 ,
73058 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi16r),
73059 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73060 27,
73061 OPC_CheckChild1Integer, 16,
73062 OPC_CheckChild1TypeI32,
73063 OPC_CheckType, MVT::v8i1,
73064 OPC_CheckPatternPredicate0,
73065 OPC_EmitRegisterI32, ARM::ZR,
73066 OPC_EmitInteger32, 16,
73067 OPC_EmitInteger32, 0,
73068 OPC_EmitRegisterI32, 0 ,
73069 OPC_EmitRegisterI32, 0 ,
73070 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
73071 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73072 27,
73073 OPC_CheckChild1Integer, 4,
73074 OPC_CheckChild1TypeI32,
73075 OPC_CheckType, MVT::v8i1,
73076 OPC_CheckPatternPredicate0,
73077 OPC_EmitRegisterI32, ARM::ZR,
73078 OPC_EmitInteger32, 4,
73079 OPC_EmitInteger32, 0,
73080 OPC_EmitRegisterI32, 0 ,
73081 OPC_EmitRegisterI32, 0 ,
73082 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu16r),
73083 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73084 0,
73085 57|128,2,
73086 OPC_CheckChild0Type, MVT::v4i32,
73087 OPC_Scope, 44,
73088 OPC_CheckChild1Integer, 0,
73089 OPC_CheckChild1TypeI32,
73090 OPC_SwitchType , 13, MVT::v4i32,
73091 OPC_CheckPatternPredicate1,
73092 OPC_EmitInteger32, 28,
73093 OPC_EmitRegisterI32, 0 ,
73094 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQzv4i32),
73095 MVT::v4i32, 3, 0, 1, 2,
73096 22, MVT::v4i1,
73097 OPC_CheckPatternPredicate0,
73098 OPC_EmitRegisterI32, ARM::ZR,
73099 OPC_EmitInteger32, 0,
73100 OPC_EmitInteger32, 0,
73101 OPC_EmitRegisterI32, 0 ,
73102 OPC_EmitRegisterI32, 0 ,
73103 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
73104 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73105 0,
73106 44,
73107 OPC_CheckChild1Integer, 20,
73108 OPC_CheckChild1TypeI32,
73109 OPC_SwitchType , 13, MVT::v4i32,
73110 OPC_CheckPatternPredicate1,
73111 OPC_EmitInteger32, 28,
73112 OPC_EmitRegisterI32, 0 ,
73113 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEzv4i32),
73114 MVT::v4i32, 3, 0, 1, 2,
73115 22, MVT::v4i1,
73116 OPC_CheckPatternPredicate0,
73117 OPC_EmitRegisterI32, ARM::ZR,
73118 OPC_EmitInteger32, 20,
73119 OPC_EmitInteger32, 0,
73120 OPC_EmitRegisterI32, 0 ,
73121 OPC_EmitRegisterI32, 0 ,
73122 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
73123 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73124 0,
73125 44,
73126 OPC_CheckChild1Integer, 26,
73127 OPC_CheckChild1TypeI32,
73128 OPC_SwitchType , 13, MVT::v4i32,
73129 OPC_CheckPatternPredicate1,
73130 OPC_EmitInteger32, 28,
73131 OPC_EmitRegisterI32, 0 ,
73132 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLEzv4i32),
73133 MVT::v4i32, 3, 0, 1, 2,
73134 22, MVT::v4i1,
73135 OPC_CheckPatternPredicate0,
73136 OPC_EmitRegisterI32, ARM::ZR,
73137 OPC_EmitInteger32, 26,
73138 OPC_EmitInteger32, 0,
73139 OPC_EmitRegisterI32, 0 ,
73140 OPC_EmitRegisterI32, 0 ,
73141 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
73142 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73143 0,
73144 44,
73145 OPC_CheckChild1Integer, 24,
73146 OPC_CheckChild1TypeI32,
73147 OPC_SwitchType , 13, MVT::v4i32,
73148 OPC_CheckPatternPredicate1,
73149 OPC_EmitInteger32, 28,
73150 OPC_EmitRegisterI32, 0 ,
73151 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTzv4i32),
73152 MVT::v4i32, 3, 0, 1, 2,
73153 22, MVT::v4i1,
73154 OPC_CheckPatternPredicate0,
73155 OPC_EmitRegisterI32, ARM::ZR,
73156 OPC_EmitInteger32, 24,
73157 OPC_EmitInteger32, 0,
73158 OPC_EmitRegisterI32, 0 ,
73159 OPC_EmitRegisterI32, 0 ,
73160 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
73161 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73162 0,
73163 44,
73164 OPC_CheckChild1Integer, 22,
73165 OPC_CheckChild1TypeI32,
73166 OPC_SwitchType , 13, MVT::v4i32,
73167 OPC_CheckPatternPredicate1,
73168 OPC_EmitInteger32, 28,
73169 OPC_EmitRegisterI32, 0 ,
73170 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLTzv4i32),
73171 MVT::v4i32, 3, 0, 1, 2,
73172 22, MVT::v4i1,
73173 OPC_CheckPatternPredicate0,
73174 OPC_EmitRegisterI32, ARM::ZR,
73175 OPC_EmitInteger32, 22,
73176 OPC_EmitInteger32, 0,
73177 OPC_EmitRegisterI32, 0 ,
73178 OPC_EmitRegisterI32, 0 ,
73179 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPs32r),
73180 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73181 0,
73182 27,
73183 OPC_CheckChild1Integer, 2,
73184 OPC_CheckChild1TypeI32,
73185 OPC_CheckType, MVT::v4i1,
73186 OPC_CheckPatternPredicate0,
73187 OPC_EmitRegisterI32, ARM::ZR,
73188 OPC_EmitInteger32, 2,
73189 OPC_EmitInteger32, 0,
73190 OPC_EmitRegisterI32, 0 ,
73191 OPC_EmitRegisterI32, 0 ,
73192 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPi32r),
73193 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73194 27,
73195 OPC_CheckChild1Integer, 16,
73196 OPC_CheckChild1TypeI32,
73197 OPC_CheckType, MVT::v4i1,
73198 OPC_CheckPatternPredicate0,
73199 OPC_EmitRegisterI32, ARM::ZR,
73200 OPC_EmitInteger32, 16,
73201 OPC_EmitInteger32, 0,
73202 OPC_EmitRegisterI32, 0 ,
73203 OPC_EmitRegisterI32, 0 ,
73204 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
73205 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73206 27,
73207 OPC_CheckChild1Integer, 4,
73208 OPC_CheckChild1TypeI32,
73209 OPC_CheckType, MVT::v4i1,
73210 OPC_CheckPatternPredicate0,
73211 OPC_EmitRegisterI32, ARM::ZR,
73212 OPC_EmitInteger32, 4,
73213 OPC_EmitInteger32, 0,
73214 OPC_EmitRegisterI32, 0 ,
73215 OPC_EmitRegisterI32, 0 ,
73216 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPu32r),
73217 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73218 0,
73219 1|128,2,
73220 OPC_CheckChild0Type, MVT::v4f32,
73221 OPC_Scope, 44,
73222 OPC_CheckChild1Integer, 0,
73223 OPC_CheckChild1TypeI32,
73224 OPC_SwitchType , 13, MVT::v4i32,
73225 OPC_CheckPatternPredicate1,
73226 OPC_EmitInteger32, 28,
73227 OPC_EmitRegisterI32, 0 ,
73228 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQzv4f32),
73229 MVT::v4i32, 3, 0, 1, 2,
73230 22, MVT::v4i1,
73231 OPC_CheckPatternPredicate2,
73232 OPC_EmitRegisterI32, ARM::ZR,
73233 OPC_EmitInteger32, 0,
73234 OPC_EmitInteger32, 0,
73235 OPC_EmitRegisterI32, 0 ,
73236 OPC_EmitRegisterI32, 0 ,
73237 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
73238 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73239 0,
73240 44,
73241 OPC_CheckChild1Integer, 20,
73242 OPC_CheckChild1TypeI32,
73243 OPC_SwitchType , 13, MVT::v4i32,
73244 OPC_CheckPatternPredicate1,
73245 OPC_EmitInteger32, 28,
73246 OPC_EmitRegisterI32, 0 ,
73247 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEzv4f32),
73248 MVT::v4i32, 3, 0, 1, 2,
73249 22, MVT::v4i1,
73250 OPC_CheckPatternPredicate2,
73251 OPC_EmitRegisterI32, ARM::ZR,
73252 OPC_EmitInteger32, 20,
73253 OPC_EmitInteger32, 0,
73254 OPC_EmitRegisterI32, 0 ,
73255 OPC_EmitRegisterI32, 0 ,
73256 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
73257 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73258 0,
73259 44,
73260 OPC_CheckChild1Integer, 26,
73261 OPC_CheckChild1TypeI32,
73262 OPC_SwitchType , 13, MVT::v4i32,
73263 OPC_CheckPatternPredicate1,
73264 OPC_EmitInteger32, 28,
73265 OPC_EmitRegisterI32, 0 ,
73266 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLEzv4f32),
73267 MVT::v4i32, 3, 0, 1, 2,
73268 22, MVT::v4i1,
73269 OPC_CheckPatternPredicate2,
73270 OPC_EmitRegisterI32, ARM::ZR,
73271 OPC_EmitInteger32, 26,
73272 OPC_EmitInteger32, 0,
73273 OPC_EmitRegisterI32, 0 ,
73274 OPC_EmitRegisterI32, 0 ,
73275 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
73276 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73277 0,
73278 44,
73279 OPC_CheckChild1Integer, 24,
73280 OPC_CheckChild1TypeI32,
73281 OPC_SwitchType , 13, MVT::v4i32,
73282 OPC_CheckPatternPredicate1,
73283 OPC_EmitInteger32, 28,
73284 OPC_EmitRegisterI32, 0 ,
73285 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTzv4f32),
73286 MVT::v4i32, 3, 0, 1, 2,
73287 22, MVT::v4i1,
73288 OPC_CheckPatternPredicate2,
73289 OPC_EmitRegisterI32, ARM::ZR,
73290 OPC_EmitInteger32, 24,
73291 OPC_EmitInteger32, 0,
73292 OPC_EmitRegisterI32, 0 ,
73293 OPC_EmitRegisterI32, 0 ,
73294 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
73295 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73296 0,
73297 44,
73298 OPC_CheckChild1Integer, 22,
73299 OPC_CheckChild1TypeI32,
73300 OPC_SwitchType , 13, MVT::v4i32,
73301 OPC_CheckPatternPredicate1,
73302 OPC_EmitInteger32, 28,
73303 OPC_EmitRegisterI32, 0 ,
73304 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLTzv4f32),
73305 MVT::v4i32, 3, 0, 1, 2,
73306 22, MVT::v4i1,
73307 OPC_CheckPatternPredicate2,
73308 OPC_EmitRegisterI32, ARM::ZR,
73309 OPC_EmitInteger32, 22,
73310 OPC_EmitInteger32, 0,
73311 OPC_EmitRegisterI32, 0 ,
73312 OPC_EmitRegisterI32, 0 ,
73313 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
73314 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73315 0,
73316 27,
73317 OPC_CheckChild1Integer, 2,
73318 OPC_CheckChild1TypeI32,
73319 OPC_CheckType, MVT::v4i1,
73320 OPC_CheckPatternPredicate2,
73321 OPC_EmitRegisterI32, ARM::ZR,
73322 OPC_EmitInteger32, 2,
73323 OPC_EmitInteger32, 0,
73324 OPC_EmitRegisterI32, 0 ,
73325 OPC_EmitRegisterI32, 0 ,
73326 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf32r),
73327 MVT::v4i1, 6, 0, 1, 2, 3, 4, 5,
73328 0,
73329 6|128,2,
73330 OPC_CheckChild0Type, MVT::v8f16,
73331 OPC_Scope, 45,
73332 OPC_CheckChild1Integer, 0,
73333 OPC_CheckChild1TypeI32,
73334 OPC_SwitchType , 14, MVT::v8i16,
73335 OPC_CheckPatternPredicate, 11,
73336 OPC_EmitInteger32, 28,
73337 OPC_EmitRegisterI32, 0 ,
73338 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCEQzv8f16),
73339 MVT::v8i16, 3, 0, 1, 2,
73340 22, MVT::v8i1,
73341 OPC_CheckPatternPredicate2,
73342 OPC_EmitRegisterI32, ARM::ZR,
73343 OPC_EmitInteger32, 0,
73344 OPC_EmitInteger32, 0,
73345 OPC_EmitRegisterI32, 0 ,
73346 OPC_EmitRegisterI32, 0 ,
73347 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
73348 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73349 0,
73350 45,
73351 OPC_CheckChild1Integer, 20,
73352 OPC_CheckChild1TypeI32,
73353 OPC_SwitchType , 14, MVT::v8i16,
73354 OPC_CheckPatternPredicate, 11,
73355 OPC_EmitInteger32, 28,
73356 OPC_EmitRegisterI32, 0 ,
73357 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGEzv8f16),
73358 MVT::v8i16, 3, 0, 1, 2,
73359 22, MVT::v8i1,
73360 OPC_CheckPatternPredicate2,
73361 OPC_EmitRegisterI32, ARM::ZR,
73362 OPC_EmitInteger32, 20,
73363 OPC_EmitInteger32, 0,
73364 OPC_EmitRegisterI32, 0 ,
73365 OPC_EmitRegisterI32, 0 ,
73366 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
73367 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73368 0,
73369 45,
73370 OPC_CheckChild1Integer, 26,
73371 OPC_CheckChild1TypeI32,
73372 OPC_SwitchType , 14, MVT::v8i16,
73373 OPC_CheckPatternPredicate, 11,
73374 OPC_EmitInteger32, 28,
73375 OPC_EmitRegisterI32, 0 ,
73376 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLEzv8f16),
73377 MVT::v8i16, 3, 0, 1, 2,
73378 22, MVT::v8i1,
73379 OPC_CheckPatternPredicate2,
73380 OPC_EmitRegisterI32, ARM::ZR,
73381 OPC_EmitInteger32, 26,
73382 OPC_EmitInteger32, 0,
73383 OPC_EmitRegisterI32, 0 ,
73384 OPC_EmitRegisterI32, 0 ,
73385 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
73386 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73387 0,
73388 45,
73389 OPC_CheckChild1Integer, 24,
73390 OPC_CheckChild1TypeI32,
73391 OPC_SwitchType , 14, MVT::v8i16,
73392 OPC_CheckPatternPredicate, 11,
73393 OPC_EmitInteger32, 28,
73394 OPC_EmitRegisterI32, 0 ,
73395 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCGTzv8f16),
73396 MVT::v8i16, 3, 0, 1, 2,
73397 22, MVT::v8i1,
73398 OPC_CheckPatternPredicate2,
73399 OPC_EmitRegisterI32, ARM::ZR,
73400 OPC_EmitInteger32, 24,
73401 OPC_EmitInteger32, 0,
73402 OPC_EmitRegisterI32, 0 ,
73403 OPC_EmitRegisterI32, 0 ,
73404 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
73405 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73406 0,
73407 45,
73408 OPC_CheckChild1Integer, 22,
73409 OPC_CheckChild1TypeI32,
73410 OPC_SwitchType , 14, MVT::v8i16,
73411 OPC_CheckPatternPredicate, 11,
73412 OPC_EmitInteger32, 28,
73413 OPC_EmitRegisterI32, 0 ,
73414 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCLTzv8f16),
73415 MVT::v8i16, 3, 0, 1, 2,
73416 22, MVT::v8i1,
73417 OPC_CheckPatternPredicate2,
73418 OPC_EmitRegisterI32, ARM::ZR,
73419 OPC_EmitInteger32, 22,
73420 OPC_EmitInteger32, 0,
73421 OPC_EmitRegisterI32, 0 ,
73422 OPC_EmitRegisterI32, 0 ,
73423 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
73424 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73425 0,
73426 27,
73427 OPC_CheckChild1Integer, 2,
73428 OPC_CheckChild1TypeI32,
73429 OPC_CheckType, MVT::v8i1,
73430 OPC_CheckPatternPredicate2,
73431 OPC_EmitRegisterI32, ARM::ZR,
73432 OPC_EmitInteger32, 2,
73433 OPC_EmitInteger32, 0,
73434 OPC_EmitRegisterI32, 0 ,
73435 OPC_EmitRegisterI32, 0 ,
73436 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCMPf16r),
73437 MVT::v8i1, 6, 0, 1, 2, 3, 4, 5,
73438 0,
73439 0,
73440 87, TARGET_VAL(ARMISD::VRSHRNIMM),
73441 OPC_RecordChild0,
73442 OPC_Scope, 27,
73443 OPC_CheckChild0Type, MVT::v8i16,
73444 OPC_RecordChild1,
73445 OPC_MoveChild1,
73446 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73447 OPC_CheckPredicate, 29,
73448 OPC_MoveParent,
73449 OPC_CheckType, MVT::v8i8,
73450 OPC_CheckPatternPredicate1,
73451 OPC_EmitConvertToTarget1,
73452 OPC_EmitInteger32, 28,
73453 OPC_EmitRegisterI32, 0 ,
73454 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRNv8i8),
73455 MVT::v8i8, 4, 0, 2, 3, 4,
73456 27,
73457 OPC_CheckChild0Type, MVT::v4i32,
73458 OPC_RecordChild1,
73459 OPC_MoveChild1,
73460 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73461 OPC_CheckPredicate, 30,
73462 OPC_MoveParent,
73463 OPC_CheckType, MVT::v4i16,
73464 OPC_CheckPatternPredicate1,
73465 OPC_EmitConvertToTarget1,
73466 OPC_EmitInteger32, 28,
73467 OPC_EmitRegisterI32, 0 ,
73468 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRNv4i16),
73469 MVT::v4i16, 4, 0, 2, 3, 4,
73470 27,
73471 OPC_CheckChild0Type, MVT::v2i64,
73472 OPC_RecordChild1,
73473 OPC_MoveChild1,
73474 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73475 OPC_CheckPredicate, 19,
73476 OPC_MoveParent,
73477 OPC_CheckType, MVT::v2i32,
73478 OPC_CheckPatternPredicate1,
73479 OPC_EmitConvertToTarget1,
73480 OPC_EmitInteger32, 28,
73481 OPC_EmitRegisterI32, 0 ,
73482 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRNv2i32),
73483 MVT::v2i32, 4, 0, 2, 3, 4,
73484 0,
73485 87, TARGET_VAL(ARMISD::VQSHRNsIMM),
73486 OPC_RecordChild0,
73487 OPC_Scope, 27,
73488 OPC_CheckChild0Type, MVT::v8i16,
73489 OPC_RecordChild1,
73490 OPC_MoveChild1,
73491 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73492 OPC_CheckPredicate, 29,
73493 OPC_MoveParent,
73494 OPC_CheckType, MVT::v8i8,
73495 OPC_CheckPatternPredicate1,
73496 OPC_EmitConvertToTarget1,
73497 OPC_EmitInteger32, 28,
73498 OPC_EmitRegisterI32, 0 ,
73499 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHRNsv8i8),
73500 MVT::v8i8, 4, 0, 2, 3, 4,
73501 27,
73502 OPC_CheckChild0Type, MVT::v4i32,
73503 OPC_RecordChild1,
73504 OPC_MoveChild1,
73505 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73506 OPC_CheckPredicate, 30,
73507 OPC_MoveParent,
73508 OPC_CheckType, MVT::v4i16,
73509 OPC_CheckPatternPredicate1,
73510 OPC_EmitConvertToTarget1,
73511 OPC_EmitInteger32, 28,
73512 OPC_EmitRegisterI32, 0 ,
73513 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHRNsv4i16),
73514 MVT::v4i16, 4, 0, 2, 3, 4,
73515 27,
73516 OPC_CheckChild0Type, MVT::v2i64,
73517 OPC_RecordChild1,
73518 OPC_MoveChild1,
73519 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73520 OPC_CheckPredicate, 19,
73521 OPC_MoveParent,
73522 OPC_CheckType, MVT::v2i32,
73523 OPC_CheckPatternPredicate1,
73524 OPC_EmitConvertToTarget1,
73525 OPC_EmitInteger32, 28,
73526 OPC_EmitRegisterI32, 0 ,
73527 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHRNsv2i32),
73528 MVT::v2i32, 4, 0, 2, 3, 4,
73529 0,
73530 87, TARGET_VAL(ARMISD::VQSHRNuIMM),
73531 OPC_RecordChild0,
73532 OPC_Scope, 27,
73533 OPC_CheckChild0Type, MVT::v8i16,
73534 OPC_RecordChild1,
73535 OPC_MoveChild1,
73536 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73537 OPC_CheckPredicate, 29,
73538 OPC_MoveParent,
73539 OPC_CheckType, MVT::v8i8,
73540 OPC_CheckPatternPredicate1,
73541 OPC_EmitConvertToTarget1,
73542 OPC_EmitInteger32, 28,
73543 OPC_EmitRegisterI32, 0 ,
73544 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHRNuv8i8),
73545 MVT::v8i8, 4, 0, 2, 3, 4,
73546 27,
73547 OPC_CheckChild0Type, MVT::v4i32,
73548 OPC_RecordChild1,
73549 OPC_MoveChild1,
73550 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73551 OPC_CheckPredicate, 30,
73552 OPC_MoveParent,
73553 OPC_CheckType, MVT::v4i16,
73554 OPC_CheckPatternPredicate1,
73555 OPC_EmitConvertToTarget1,
73556 OPC_EmitInteger32, 28,
73557 OPC_EmitRegisterI32, 0 ,
73558 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHRNuv4i16),
73559 MVT::v4i16, 4, 0, 2, 3, 4,
73560 27,
73561 OPC_CheckChild0Type, MVT::v2i64,
73562 OPC_RecordChild1,
73563 OPC_MoveChild1,
73564 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73565 OPC_CheckPredicate, 19,
73566 OPC_MoveParent,
73567 OPC_CheckType, MVT::v2i32,
73568 OPC_CheckPatternPredicate1,
73569 OPC_EmitConvertToTarget1,
73570 OPC_EmitInteger32, 28,
73571 OPC_EmitRegisterI32, 0 ,
73572 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHRNuv2i32),
73573 MVT::v2i32, 4, 0, 2, 3, 4,
73574 0,
73575 87, TARGET_VAL(ARMISD::VQSHRNsuIMM),
73576 OPC_RecordChild0,
73577 OPC_Scope, 27,
73578 OPC_CheckChild0Type, MVT::v8i16,
73579 OPC_RecordChild1,
73580 OPC_MoveChild1,
73581 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73582 OPC_CheckPredicate, 29,
73583 OPC_MoveParent,
73584 OPC_CheckType, MVT::v8i8,
73585 OPC_CheckPatternPredicate1,
73586 OPC_EmitConvertToTarget1,
73587 OPC_EmitInteger32, 28,
73588 OPC_EmitRegisterI32, 0 ,
73589 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHRUNv8i8),
73590 MVT::v8i8, 4, 0, 2, 3, 4,
73591 27,
73592 OPC_CheckChild0Type, MVT::v4i32,
73593 OPC_RecordChild1,
73594 OPC_MoveChild1,
73595 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73596 OPC_CheckPredicate, 30,
73597 OPC_MoveParent,
73598 OPC_CheckType, MVT::v4i16,
73599 OPC_CheckPatternPredicate1,
73600 OPC_EmitConvertToTarget1,
73601 OPC_EmitInteger32, 28,
73602 OPC_EmitRegisterI32, 0 ,
73603 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHRUNv4i16),
73604 MVT::v4i16, 4, 0, 2, 3, 4,
73605 27,
73606 OPC_CheckChild0Type, MVT::v2i64,
73607 OPC_RecordChild1,
73608 OPC_MoveChild1,
73609 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73610 OPC_CheckPredicate, 19,
73611 OPC_MoveParent,
73612 OPC_CheckType, MVT::v2i32,
73613 OPC_CheckPatternPredicate1,
73614 OPC_EmitConvertToTarget1,
73615 OPC_EmitInteger32, 28,
73616 OPC_EmitRegisterI32, 0 ,
73617 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHRUNv2i32),
73618 MVT::v2i32, 4, 0, 2, 3, 4,
73619 0,
73620 87, TARGET_VAL(ARMISD::VQRSHRNsIMM),
73621 OPC_RecordChild0,
73622 OPC_Scope, 27,
73623 OPC_CheckChild0Type, MVT::v8i16,
73624 OPC_RecordChild1,
73625 OPC_MoveChild1,
73626 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73627 OPC_CheckPredicate, 29,
73628 OPC_MoveParent,
73629 OPC_CheckType, MVT::v8i8,
73630 OPC_CheckPatternPredicate1,
73631 OPC_EmitConvertToTarget1,
73632 OPC_EmitInteger32, 28,
73633 OPC_EmitRegisterI32, 0 ,
73634 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHRNsv8i8),
73635 MVT::v8i8, 4, 0, 2, 3, 4,
73636 27,
73637 OPC_CheckChild0Type, MVT::v4i32,
73638 OPC_RecordChild1,
73639 OPC_MoveChild1,
73640 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73641 OPC_CheckPredicate, 30,
73642 OPC_MoveParent,
73643 OPC_CheckType, MVT::v4i16,
73644 OPC_CheckPatternPredicate1,
73645 OPC_EmitConvertToTarget1,
73646 OPC_EmitInteger32, 28,
73647 OPC_EmitRegisterI32, 0 ,
73648 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHRNsv4i16),
73649 MVT::v4i16, 4, 0, 2, 3, 4,
73650 27,
73651 OPC_CheckChild0Type, MVT::v2i64,
73652 OPC_RecordChild1,
73653 OPC_MoveChild1,
73654 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73655 OPC_CheckPredicate, 19,
73656 OPC_MoveParent,
73657 OPC_CheckType, MVT::v2i32,
73658 OPC_CheckPatternPredicate1,
73659 OPC_EmitConvertToTarget1,
73660 OPC_EmitInteger32, 28,
73661 OPC_EmitRegisterI32, 0 ,
73662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHRNsv2i32),
73663 MVT::v2i32, 4, 0, 2, 3, 4,
73664 0,
73665 87, TARGET_VAL(ARMISD::VQRSHRNuIMM),
73666 OPC_RecordChild0,
73667 OPC_Scope, 27,
73668 OPC_CheckChild0Type, MVT::v8i16,
73669 OPC_RecordChild1,
73670 OPC_MoveChild1,
73671 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73672 OPC_CheckPredicate, 29,
73673 OPC_MoveParent,
73674 OPC_CheckType, MVT::v8i8,
73675 OPC_CheckPatternPredicate1,
73676 OPC_EmitConvertToTarget1,
73677 OPC_EmitInteger32, 28,
73678 OPC_EmitRegisterI32, 0 ,
73679 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHRNuv8i8),
73680 MVT::v8i8, 4, 0, 2, 3, 4,
73681 27,
73682 OPC_CheckChild0Type, MVT::v4i32,
73683 OPC_RecordChild1,
73684 OPC_MoveChild1,
73685 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73686 OPC_CheckPredicate, 30,
73687 OPC_MoveParent,
73688 OPC_CheckType, MVT::v4i16,
73689 OPC_CheckPatternPredicate1,
73690 OPC_EmitConvertToTarget1,
73691 OPC_EmitInteger32, 28,
73692 OPC_EmitRegisterI32, 0 ,
73693 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHRNuv4i16),
73694 MVT::v4i16, 4, 0, 2, 3, 4,
73695 27,
73696 OPC_CheckChild0Type, MVT::v2i64,
73697 OPC_RecordChild1,
73698 OPC_MoveChild1,
73699 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73700 OPC_CheckPredicate, 19,
73701 OPC_MoveParent,
73702 OPC_CheckType, MVT::v2i32,
73703 OPC_CheckPatternPredicate1,
73704 OPC_EmitConvertToTarget1,
73705 OPC_EmitInteger32, 28,
73706 OPC_EmitRegisterI32, 0 ,
73707 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHRNuv2i32),
73708 MVT::v2i32, 4, 0, 2, 3, 4,
73709 0,
73710 87, TARGET_VAL(ARMISD::VQRSHRNsuIMM),
73711 OPC_RecordChild0,
73712 OPC_Scope, 27,
73713 OPC_CheckChild0Type, MVT::v8i16,
73714 OPC_RecordChild1,
73715 OPC_MoveChild1,
73716 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73717 OPC_CheckPredicate, 29,
73718 OPC_MoveParent,
73719 OPC_CheckType, MVT::v8i8,
73720 OPC_CheckPatternPredicate1,
73721 OPC_EmitConvertToTarget1,
73722 OPC_EmitInteger32, 28,
73723 OPC_EmitRegisterI32, 0 ,
73724 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHRUNv8i8),
73725 MVT::v8i8, 4, 0, 2, 3, 4,
73726 27,
73727 OPC_CheckChild0Type, MVT::v4i32,
73728 OPC_RecordChild1,
73729 OPC_MoveChild1,
73730 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73731 OPC_CheckPredicate, 30,
73732 OPC_MoveParent,
73733 OPC_CheckType, MVT::v4i16,
73734 OPC_CheckPatternPredicate1,
73735 OPC_EmitConvertToTarget1,
73736 OPC_EmitInteger32, 28,
73737 OPC_EmitRegisterI32, 0 ,
73738 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHRUNv4i16),
73739 MVT::v4i16, 4, 0, 2, 3, 4,
73740 27,
73741 OPC_CheckChild0Type, MVT::v2i64,
73742 OPC_RecordChild1,
73743 OPC_MoveChild1,
73744 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73745 OPC_CheckPredicate, 19,
73746 OPC_MoveParent,
73747 OPC_CheckType, MVT::v2i32,
73748 OPC_CheckPatternPredicate1,
73749 OPC_EmitConvertToTarget1,
73750 OPC_EmitInteger32, 28,
73751 OPC_EmitRegisterI32, 0 ,
73752 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQRSHRUNv2i32),
73753 MVT::v2i32, 4, 0, 2, 3, 4,
73754 0,
73755 108|128,3, TARGET_VAL(ARMISD::VDUPLANE),
73756 OPC_RecordChild0,
73757 OPC_Scope, 49,
73758 OPC_CheckChild0Type, MVT::v8i8,
73759 OPC_RecordChild1,
73760 OPC_MoveChild1,
73761 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73762 OPC_Scope, 20,
73763 OPC_CheckPredicate, 34,
73764 OPC_MoveParent,
73765 OPC_CheckType, MVT::v16i8,
73766 OPC_CheckPatternPredicate1,
73767 OPC_EmitConvertToTarget1,
73768 OPC_EmitInteger32, 28,
73769 OPC_EmitRegisterI32, 0 ,
73770 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN8q),
73771 MVT::v16i8, 4, 0, 2, 3, 4,
73772 18,
73773 OPC_MoveParent,
73774 OPC_CheckType, MVT::v8i8,
73775 OPC_CheckPatternPredicate1,
73776 OPC_EmitConvertToTarget1,
73777 OPC_EmitInteger32, 28,
73778 OPC_EmitRegisterI32, 0 ,
73779 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN8d),
73780 MVT::v8i8, 4, 0, 2, 3, 4,
73781 0,
73782 49,
73783 OPC_CheckChild0Type, MVT::v4i16,
73784 OPC_RecordChild1,
73785 OPC_MoveChild1,
73786 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73787 OPC_Scope, 20,
73788 OPC_CheckPredicate, 34,
73789 OPC_MoveParent,
73790 OPC_CheckType, MVT::v8i16,
73791 OPC_CheckPatternPredicate1,
73792 OPC_EmitConvertToTarget1,
73793 OPC_EmitInteger32, 28,
73794 OPC_EmitRegisterI32, 0 ,
73795 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN16q),
73796 MVT::v8i16, 4, 0, 2, 3, 4,
73797 18,
73798 OPC_MoveParent,
73799 OPC_CheckType, MVT::v4i16,
73800 OPC_CheckPatternPredicate1,
73801 OPC_EmitConvertToTarget1,
73802 OPC_EmitInteger32, 28,
73803 OPC_EmitRegisterI32, 0 ,
73804 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN16d),
73805 MVT::v4i16, 4, 0, 2, 3, 4,
73806 0,
73807 49,
73808 OPC_CheckChild0Type, MVT::v2i32,
73809 OPC_RecordChild1,
73810 OPC_MoveChild1,
73811 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73812 OPC_Scope, 20,
73813 OPC_CheckPredicate, 34,
73814 OPC_MoveParent,
73815 OPC_CheckType, MVT::v4i32,
73816 OPC_CheckPatternPredicate1,
73817 OPC_EmitConvertToTarget1,
73818 OPC_EmitInteger32, 28,
73819 OPC_EmitRegisterI32, 0 ,
73820 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN32q),
73821 MVT::v4i32, 4, 0, 2, 3, 4,
73822 18,
73823 OPC_MoveParent,
73824 OPC_CheckType, MVT::v2i32,
73825 OPC_CheckPatternPredicate1,
73826 OPC_EmitConvertToTarget1,
73827 OPC_EmitInteger32, 28,
73828 OPC_EmitRegisterI32, 0 ,
73829 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN32d),
73830 MVT::v2i32, 4, 0, 2, 3, 4,
73831 0,
73832 39,
73833 OPC_CheckChild0Type, MVT::v16i8,
73834 OPC_RecordChild1,
73835 OPC_MoveChild1,
73836 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73837 OPC_MoveParent,
73838 OPC_CheckType, MVT::v16i8,
73839 OPC_CheckPatternPredicate1,
73840 OPC_EmitConvertToTarget1,
73841 OPC_EmitNodeXForm, 16, 2,
73842 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
73843 MVT::v8i8, 2, 0, 3,
73844 OPC_EmitConvertToTarget1,
73845 OPC_EmitNodeXForm, 17, 5,
73846 OPC_EmitInteger32, 28,
73847 OPC_EmitRegisterI32, 0 ,
73848 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN8q),
73849 MVT::v16i8, 4, 4, 6, 7, 8,
73850 39,
73851 OPC_CheckChild0Type, MVT::v8i16,
73852 OPC_RecordChild1,
73853 OPC_MoveChild1,
73854 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73855 OPC_MoveParent,
73856 OPC_CheckType, MVT::v8i16,
73857 OPC_CheckPatternPredicate1,
73858 OPC_EmitConvertToTarget1,
73859 OPC_EmitNodeXForm, 5, 2,
73860 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
73861 MVT::v4i16, 2, 0, 3,
73862 OPC_EmitConvertToTarget1,
73863 OPC_EmitNodeXForm, 6, 5,
73864 OPC_EmitInteger32, 28,
73865 OPC_EmitRegisterI32, 0 ,
73866 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN16q),
73867 MVT::v8i16, 4, 4, 6, 7, 8,
73868 39,
73869 OPC_CheckChild0Type, MVT::v4i32,
73870 OPC_RecordChild1,
73871 OPC_MoveChild1,
73872 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73873 OPC_MoveParent,
73874 OPC_CheckType, MVT::v4i32,
73875 OPC_CheckPatternPredicate1,
73876 OPC_EmitConvertToTarget1,
73877 OPC_EmitNodeXForm, 7, 2,
73878 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
73879 MVT::v2i32, 2, 0, 3,
73880 OPC_EmitConvertToTarget1,
73881 OPC_EmitNodeXForm, 8, 5,
73882 OPC_EmitInteger32, 28,
73883 OPC_EmitRegisterI32, 0 ,
73884 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN32q),
73885 MVT::v4i32, 4, 4, 6, 7, 8,
73886 25,
73887 OPC_CheckChild0Type, MVT::v4f16,
73888 OPC_RecordChild1,
73889 OPC_MoveChild1,
73890 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73891 OPC_MoveParent,
73892 OPC_CheckType, MVT::v4f16,
73893 OPC_CheckPatternPredicate1,
73894 OPC_EmitConvertToTarget1,
73895 OPC_EmitInteger32, 28,
73896 OPC_EmitRegisterI32, 0 ,
73897 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN16d),
73898 MVT::v4f16, 4, 0, 2, 3, 4,
73899 44,
73900 OPC_CheckChild0Type, MVT::v2f32,
73901 OPC_RecordChild1,
73902 OPC_MoveChild1,
73903 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73904 OPC_MoveParent,
73905 OPC_SwitchType , 15, MVT::v2f32,
73906 OPC_CheckPatternPredicate1,
73907 OPC_EmitConvertToTarget1,
73908 OPC_EmitInteger32, 28,
73909 OPC_EmitRegisterI32, 0 ,
73910 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN32d),
73911 MVT::v2f32, 4, 0, 2, 3, 4,
73912 15, MVT::v4f32,
73913 OPC_CheckPatternPredicate1,
73914 OPC_EmitConvertToTarget1,
73915 OPC_EmitInteger32, 28,
73916 OPC_EmitRegisterI32, 0 ,
73917 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN32q),
73918 MVT::v4f32, 4, 0, 2, 3, 4,
73919 0,
73920 26,
73921 OPC_CheckChild0Type, MVT::v4bf16,
73922 OPC_RecordChild1,
73923 OPC_MoveChild1,
73924 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73925 OPC_MoveParent,
73926 OPC_CheckType, MVT::v4bf16,
73927 OPC_CheckPatternPredicate, 27,
73928 OPC_EmitConvertToTarget1,
73929 OPC_EmitInteger32, 28,
73930 OPC_EmitRegisterI32, 0 ,
73931 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN16d),
73932 MVT::v4bf16, 4, 0, 2, 3, 4,
73933 39,
73934 OPC_CheckChild0Type, MVT::v8f16,
73935 OPC_RecordChild1,
73936 OPC_MoveChild1,
73937 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73938 OPC_MoveParent,
73939 OPC_CheckType, MVT::v8f16,
73940 OPC_CheckPatternPredicate1,
73941 OPC_EmitConvertToTarget1,
73942 OPC_EmitNodeXForm, 5, 2,
73943 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
73944 MVT::v4f16, 2, 0, 3,
73945 OPC_EmitConvertToTarget1,
73946 OPC_EmitNodeXForm, 6, 5,
73947 OPC_EmitInteger32, 28,
73948 OPC_EmitRegisterI32, 0 ,
73949 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN16q),
73950 MVT::v8f16, 4, 4, 6, 7, 8,
73951 39,
73952 OPC_CheckChild0Type, MVT::v4f32,
73953 OPC_RecordChild1,
73954 OPC_MoveChild1,
73955 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73956 OPC_MoveParent,
73957 OPC_CheckType, MVT::v4f32,
73958 OPC_CheckPatternPredicate1,
73959 OPC_EmitConvertToTarget1,
73960 OPC_EmitNodeXForm, 7, 2,
73961 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
73962 MVT::v2f32, 2, 0, 3,
73963 OPC_EmitConvertToTarget1,
73964 OPC_EmitNodeXForm, 8, 5,
73965 OPC_EmitInteger32, 28,
73966 OPC_EmitRegisterI32, 0 ,
73967 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN32q),
73968 MVT::v4f32, 4, 4, 6, 7, 8,
73969 40,
73970 OPC_CheckChild0Type, MVT::v8bf16,
73971 OPC_RecordChild1,
73972 OPC_MoveChild1,
73973 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
73974 OPC_MoveParent,
73975 OPC_CheckType, MVT::v8bf16,
73976 OPC_CheckPatternPredicate, 27,
73977 OPC_EmitConvertToTarget1,
73978 OPC_EmitNodeXForm, 5, 2,
73979 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
73980 MVT::v4bf16, 2, 0, 3,
73981 OPC_EmitConvertToTarget1,
73982 OPC_EmitNodeXForm, 6, 5,
73983 OPC_EmitInteger32, 28,
73984 OPC_EmitRegisterI32, 0 ,
73985 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VDUPLN16q),
73986 MVT::v8bf16, 4, 4, 6, 7, 8,
73987 0,
73988 115, TARGET_VAL(ARMISD::VORRIMM),
73989 OPC_RecordChild0,
73990 OPC_RecordChild1,
73991 OPC_MoveChild1,
73992 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
73993 OPC_MoveParent,
73994 OPC_SwitchType , 14, MVT::v4i16,
73995 OPC_CheckPatternPredicate1,
73996 OPC_EmitInteger32, 28,
73997 OPC_EmitRegisterI32, 0 ,
73998 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRiv4i16),
73999 MVT::v4i16, 4, 1, 0, 2, 3,
74000 14, MVT::v2i32,
74001 OPC_CheckPatternPredicate1,
74002 OPC_EmitInteger32, 28,
74003 OPC_EmitRegisterI32, 0 ,
74004 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRiv2i32),
74005 MVT::v2i32, 4, 1, 0, 2, 3,
74006 35, MVT::v8i16,
74007 OPC_Scope, 14,
74008 OPC_CheckPatternPredicate1,
74009 OPC_EmitInteger32, 28,
74010 OPC_EmitRegisterI32, 0 ,
74011 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRiv8i16),
74012 MVT::v8i16, 4, 1, 0, 2, 3,
74013 17,
74014 OPC_CheckPatternPredicate0,
74015 OPC_EmitInteger32, 0,
74016 OPC_EmitRegisterI32, 0 ,
74017 OPC_EmitRegisterI32, 0 ,
74018 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORRimmi16),
74019 MVT::v8i16, 5, 0, 1, 2, 3, 4,
74020 0,
74021 35, MVT::v4i32,
74022 OPC_Scope, 14,
74023 OPC_CheckPatternPredicate1,
74024 OPC_EmitInteger32, 28,
74025 OPC_EmitRegisterI32, 0 ,
74026 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VORRiv4i32),
74027 MVT::v4i32, 4, 1, 0, 2, 3,
74028 17,
74029 OPC_CheckPatternPredicate0,
74030 OPC_EmitInteger32, 0,
74031 OPC_EmitRegisterI32, 0 ,
74032 OPC_EmitRegisterI32, 0 ,
74033 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VORRimmi32),
74034 MVT::v4i32, 5, 0, 1, 2, 3, 4,
74035 0,
74036 0,
74037 120, TARGET_VAL(ARMISD::VMVNIMM),
74038 OPC_RecordChild0,
74039 OPC_MoveChild0,
74040 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
74041 OPC_MoveParent,
74042 OPC_SwitchType , 13, MVT::v4i16,
74043 OPC_CheckPatternPredicate1,
74044 OPC_EmitInteger32, 28,
74045 OPC_EmitRegisterI32, 0 ,
74046 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNv4i16),
74047 MVT::v4i16, 3, 0, 1, 2,
74048 39, MVT::v8i16,
74049 OPC_Scope, 13,
74050 OPC_CheckPatternPredicate1,
74051 OPC_EmitInteger32, 28,
74052 OPC_EmitRegisterI32, 0 ,
74053 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNv8i16),
74054 MVT::v8i16, 3, 0, 1, 2,
74055 22,
74056 OPC_CheckPatternPredicate0,
74057 OPC_EmitInteger32, 0,
74058 OPC_EmitRegisterI32, 0 ,
74059 OPC_EmitRegisterI32, 0 ,
74060 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
74061 MVT::v4i32, 0,
74062 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVNimmi16),
74063 MVT::v8i16, 5, 0, 1, 2, 3, 4,
74064 0,
74065 13, MVT::v2i32,
74066 OPC_CheckPatternPredicate1,
74067 OPC_EmitInteger32, 28,
74068 OPC_EmitRegisterI32, 0 ,
74069 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNv2i32),
74070 MVT::v2i32, 3, 0, 1, 2,
74071 39, MVT::v4i32,
74072 OPC_Scope, 13,
74073 OPC_CheckPatternPredicate1,
74074 OPC_EmitInteger32, 28,
74075 OPC_EmitRegisterI32, 0 ,
74076 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMVNv4i32),
74077 MVT::v4i32, 3, 0, 1, 2,
74078 22,
74079 OPC_CheckPatternPredicate0,
74080 OPC_EmitInteger32, 0,
74081 OPC_EmitRegisterI32, 0 ,
74082 OPC_EmitRegisterI32, 0 ,
74083 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
74084 MVT::v4i32, 0,
74085 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMVNimmi32),
74086 MVT::v4i32, 5, 0, 1, 2, 3, 4,
74087 0,
74088 0,
74089 71|128,3, TARGET_VAL(ISD::ZERO_EXTEND),
74090 OPC_Scope, 3|128,1,
74091 OPC_MoveChild0,
74092 OPC_SwitchOpcode , 61, TARGET_VAL(ISD::ABDS),
74093 OPC_RecordChild0,
74094 OPC_RecordChild1,
74095 OPC_SwitchType , 17, MVT::v8i8,
74096 OPC_MoveParent,
74097 OPC_CheckType, MVT::v8i16,
74098 OPC_CheckPatternPredicate1,
74099 OPC_EmitInteger32, 28,
74100 OPC_EmitRegisterI32, 0 ,
74101 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDLsv8i16),
74102 MVT::v8i16, 4, 0, 1, 2, 3,
74103 17, MVT::v4i16,
74104 OPC_MoveParent,
74105 OPC_CheckType, MVT::v4i32,
74106 OPC_CheckPatternPredicate1,
74107 OPC_EmitInteger32, 28,
74108 OPC_EmitRegisterI32, 0 ,
74109 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDLsv4i32),
74110 MVT::v4i32, 4, 0, 1, 2, 3,
74111 17, MVT::v2i32,
74112 OPC_MoveParent,
74113 OPC_CheckType, MVT::v2i64,
74114 OPC_CheckPatternPredicate1,
74115 OPC_EmitInteger32, 28,
74116 OPC_EmitRegisterI32, 0 ,
74117 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDLsv2i64),
74118 MVT::v2i64, 4, 0, 1, 2, 3,
74119 0,
74120 61, TARGET_VAL(ISD::ABDU),
74121 OPC_RecordChild0,
74122 OPC_RecordChild1,
74123 OPC_SwitchType , 17, MVT::v8i8,
74124 OPC_MoveParent,
74125 OPC_CheckType, MVT::v8i16,
74126 OPC_CheckPatternPredicate1,
74127 OPC_EmitInteger32, 28,
74128 OPC_EmitRegisterI32, 0 ,
74129 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDLuv8i16),
74130 MVT::v8i16, 4, 0, 1, 2, 3,
74131 17, MVT::v4i16,
74132 OPC_MoveParent,
74133 OPC_CheckType, MVT::v4i32,
74134 OPC_CheckPatternPredicate1,
74135 OPC_EmitInteger32, 28,
74136 OPC_EmitRegisterI32, 0 ,
74137 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDLuv4i32),
74138 MVT::v4i32, 4, 0, 1, 2, 3,
74139 17, MVT::v2i32,
74140 OPC_MoveParent,
74141 OPC_CheckType, MVT::v2i64,
74142 OPC_CheckPatternPredicate1,
74143 OPC_EmitInteger32, 28,
74144 OPC_EmitRegisterI32, 0 ,
74145 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDLuv2i64),
74146 MVT::v2i64, 4, 0, 1, 2, 3,
74147 0,
74148 0,
74149 62|128,2,
74150 OPC_RecordChild0,
74151 OPC_SwitchType , 82, MVT::v8i16,
74152 OPC_Scope, 15,
74153 OPC_CheckChild0Type, MVT::v8i8,
74154 OPC_CheckPatternPredicate1,
74155 OPC_EmitInteger32, 28,
74156 OPC_EmitRegisterI32, 0 ,
74157 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVLuv8i16),
74158 MVT::v8i16, 3, 0, 1, 2,
74159 63,
74160 OPC_CheckChild0Type, MVT::v8i1,
74161 OPC_CheckPatternPredicate0,
74162 OPC_EmitInteger32, 2,
74163 OPC_EmitInteger32, 0,
74164 OPC_EmitRegisterI32, 0 ,
74165 OPC_EmitRegisterI32, 0 ,
74166 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
74167 MVT::v4i32, 0,
74168 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
74169 MVT::v16i8, 5, 1, 2, 3, 4, 5,
74170 OPC_EmitInteger32, 0,
74171 OPC_EmitInteger32, 0,
74172 OPC_EmitRegisterI32, 0 ,
74173 OPC_EmitRegisterI32, 0 ,
74174 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
74175 MVT::v4i32, 0,
74176 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
74177 MVT::v16i8, 5, 7, 8, 9, 10, 11,
74178 OPC_EmitInteger32, 0,
74179 OPC_EmitRegisterI32, 0 ,
74180 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
74181 MVT::v8i16, 5, 6, 12, 13, 0, 14,
74182 0,
74183 82, MVT::v4i32,
74184 OPC_Scope, 15,
74185 OPC_CheckChild0Type, MVT::v4i16,
74186 OPC_CheckPatternPredicate1,
74187 OPC_EmitInteger32, 28,
74188 OPC_EmitRegisterI32, 0 ,
74189 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVLuv4i32),
74190 MVT::v4i32, 3, 0, 1, 2,
74191 63,
74192 OPC_CheckChild0Type, MVT::v4i1,
74193 OPC_CheckPatternPredicate0,
74194 OPC_EmitInteger32, 2,
74195 OPC_EmitInteger32, 0,
74196 OPC_EmitRegisterI32, 0 ,
74197 OPC_EmitRegisterI32, 0 ,
74198 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
74199 MVT::v4i32, 0,
74200 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
74201 MVT::v16i8, 5, 1, 2, 3, 4, 5,
74202 OPC_EmitInteger32, 0,
74203 OPC_EmitInteger32, 0,
74204 OPC_EmitRegisterI32, 0 ,
74205 OPC_EmitRegisterI32, 0 ,
74206 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
74207 MVT::v4i32, 0,
74208 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
74209 MVT::v16i8, 5, 7, 8, 9, 10, 11,
74210 OPC_EmitInteger32, 0,
74211 OPC_EmitRegisterI32, 0 ,
74212 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
74213 MVT::v4i32, 5, 6, 12, 13, 0, 14,
74214 0,
74215 82, MVT::v2i64,
74216 OPC_Scope, 15,
74217 OPC_CheckChild0Type, MVT::v2i32,
74218 OPC_CheckPatternPredicate1,
74219 OPC_EmitInteger32, 28,
74220 OPC_EmitRegisterI32, 0 ,
74221 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVLuv2i64),
74222 MVT::v2i64, 3, 0, 1, 2,
74223 63,
74224 OPC_CheckChild0Type, MVT::v2i1,
74225 OPC_CheckPatternPredicate0,
74226 OPC_EmitInteger32, 2,
74227 OPC_EmitInteger32, 0,
74228 OPC_EmitRegisterI32, 0 ,
74229 OPC_EmitRegisterI32, 0 ,
74230 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
74231 MVT::v4i32, 0,
74232 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi64),
74233 MVT::v16i8, 5, 1, 2, 3, 4, 5,
74234 OPC_EmitInteger32, 0,
74235 OPC_EmitInteger32, 0,
74236 OPC_EmitRegisterI32, 0 ,
74237 OPC_EmitRegisterI32, 0 ,
74238 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
74239 MVT::v4i32, 0,
74240 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
74241 MVT::v16i8, 5, 7, 8, 9, 10, 11,
74242 OPC_EmitInteger32, 0,
74243 OPC_EmitRegisterI32, 0 ,
74244 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
74245 MVT::v2i64, 5, 6, 12, 13, 0, 14,
74246 0,
74247 61, MVT::v16i8,
74248 OPC_CheckPatternPredicate0,
74249 OPC_EmitInteger32, 2,
74250 OPC_EmitInteger32, 0,
74251 OPC_EmitRegisterI32, 0 ,
74252 OPC_EmitRegisterI32, 0 ,
74253 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
74254 MVT::v4i32, 0,
74255 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi8),
74256 MVT::v16i8, 5, 1, 2, 3, 4, 5,
74257 OPC_EmitInteger32, 0,
74258 OPC_EmitInteger32, 0,
74259 OPC_EmitRegisterI32, 0 ,
74260 OPC_EmitRegisterI32, 0 ,
74261 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
74262 MVT::v4i32, 0,
74263 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi8),
74264 MVT::v16i8, 5, 7, 8, 9, 10, 11,
74265 OPC_EmitInteger32, 0,
74266 OPC_EmitRegisterI32, 0 ,
74267 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
74268 MVT::v16i8, 5, 6, 12, 13, 0, 14,
74269 0,
74270 0,
74271 17|128,1, TARGET_VAL(ARMISD::VRSHRsIMM),
74272 OPC_RecordChild0,
74273 OPC_RecordChild1,
74274 OPC_MoveChild1,
74275 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74276 OPC_MoveParent,
74277 OPC_SwitchType , 15, MVT::v8i8,
74278 OPC_CheckPatternPredicate1,
74279 OPC_EmitConvertToTarget1,
74280 OPC_EmitInteger32, 28,
74281 OPC_EmitRegisterI32, 0 ,
74282 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRsv8i8),
74283 MVT::v8i8, 4, 0, 2, 3, 4,
74284 15, MVT::v4i16,
74285 OPC_CheckPatternPredicate1,
74286 OPC_EmitConvertToTarget1,
74287 OPC_EmitInteger32, 28,
74288 OPC_EmitRegisterI32, 0 ,
74289 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRsv4i16),
74290 MVT::v4i16, 4, 0, 2, 3, 4,
74291 15, MVT::v2i32,
74292 OPC_CheckPatternPredicate1,
74293 OPC_EmitConvertToTarget1,
74294 OPC_EmitInteger32, 28,
74295 OPC_EmitRegisterI32, 0 ,
74296 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRsv2i32),
74297 MVT::v2i32, 4, 0, 2, 3, 4,
74298 15, MVT::v1i64,
74299 OPC_CheckPatternPredicate1,
74300 OPC_EmitConvertToTarget1,
74301 OPC_EmitInteger32, 28,
74302 OPC_EmitRegisterI32, 0 ,
74303 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRsv1i64),
74304 MVT::v1i64, 4, 0, 2, 3, 4,
74305 15, MVT::v16i8,
74306 OPC_CheckPatternPredicate1,
74307 OPC_EmitConvertToTarget1,
74308 OPC_EmitInteger32, 28,
74309 OPC_EmitRegisterI32, 0 ,
74310 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRsv16i8),
74311 MVT::v16i8, 4, 0, 2, 3, 4,
74312 15, MVT::v8i16,
74313 OPC_CheckPatternPredicate1,
74314 OPC_EmitConvertToTarget1,
74315 OPC_EmitInteger32, 28,
74316 OPC_EmitRegisterI32, 0 ,
74317 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRsv8i16),
74318 MVT::v8i16, 4, 0, 2, 3, 4,
74319 15, MVT::v4i32,
74320 OPC_CheckPatternPredicate1,
74321 OPC_EmitConvertToTarget1,
74322 OPC_EmitInteger32, 28,
74323 OPC_EmitRegisterI32, 0 ,
74324 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRsv4i32),
74325 MVT::v4i32, 4, 0, 2, 3, 4,
74326 15, MVT::v2i64,
74327 OPC_CheckPatternPredicate1,
74328 OPC_EmitConvertToTarget1,
74329 OPC_EmitInteger32, 28,
74330 OPC_EmitRegisterI32, 0 ,
74331 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRsv2i64),
74332 MVT::v2i64, 4, 0, 2, 3, 4,
74333 0,
74334 17|128,1, TARGET_VAL(ARMISD::VRSHRuIMM),
74335 OPC_RecordChild0,
74336 OPC_RecordChild1,
74337 OPC_MoveChild1,
74338 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74339 OPC_MoveParent,
74340 OPC_SwitchType , 15, MVT::v8i8,
74341 OPC_CheckPatternPredicate1,
74342 OPC_EmitConvertToTarget1,
74343 OPC_EmitInteger32, 28,
74344 OPC_EmitRegisterI32, 0 ,
74345 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRuv8i8),
74346 MVT::v8i8, 4, 0, 2, 3, 4,
74347 15, MVT::v4i16,
74348 OPC_CheckPatternPredicate1,
74349 OPC_EmitConvertToTarget1,
74350 OPC_EmitInteger32, 28,
74351 OPC_EmitRegisterI32, 0 ,
74352 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRuv4i16),
74353 MVT::v4i16, 4, 0, 2, 3, 4,
74354 15, MVT::v2i32,
74355 OPC_CheckPatternPredicate1,
74356 OPC_EmitConvertToTarget1,
74357 OPC_EmitInteger32, 28,
74358 OPC_EmitRegisterI32, 0 ,
74359 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRuv2i32),
74360 MVT::v2i32, 4, 0, 2, 3, 4,
74361 15, MVT::v1i64,
74362 OPC_CheckPatternPredicate1,
74363 OPC_EmitConvertToTarget1,
74364 OPC_EmitInteger32, 28,
74365 OPC_EmitRegisterI32, 0 ,
74366 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRuv1i64),
74367 MVT::v1i64, 4, 0, 2, 3, 4,
74368 15, MVT::v16i8,
74369 OPC_CheckPatternPredicate1,
74370 OPC_EmitConvertToTarget1,
74371 OPC_EmitInteger32, 28,
74372 OPC_EmitRegisterI32, 0 ,
74373 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRuv16i8),
74374 MVT::v16i8, 4, 0, 2, 3, 4,
74375 15, MVT::v8i16,
74376 OPC_CheckPatternPredicate1,
74377 OPC_EmitConvertToTarget1,
74378 OPC_EmitInteger32, 28,
74379 OPC_EmitRegisterI32, 0 ,
74380 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRuv8i16),
74381 MVT::v8i16, 4, 0, 2, 3, 4,
74382 15, MVT::v4i32,
74383 OPC_CheckPatternPredicate1,
74384 OPC_EmitConvertToTarget1,
74385 OPC_EmitInteger32, 28,
74386 OPC_EmitRegisterI32, 0 ,
74387 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRuv4i32),
74388 MVT::v4i32, 4, 0, 2, 3, 4,
74389 15, MVT::v2i64,
74390 OPC_CheckPatternPredicate1,
74391 OPC_EmitConvertToTarget1,
74392 OPC_EmitInteger32, 28,
74393 OPC_EmitRegisterI32, 0 ,
74394 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VRSHRuv2i64),
74395 MVT::v2i64, 4, 0, 2, 3, 4,
74396 0,
74397 17|128,1, TARGET_VAL(ARMISD::VQSHLsIMM),
74398 OPC_RecordChild0,
74399 OPC_RecordChild1,
74400 OPC_MoveChild1,
74401 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74402 OPC_MoveParent,
74403 OPC_SwitchType , 15, MVT::v8i8,
74404 OPC_CheckPatternPredicate1,
74405 OPC_EmitConvertToTarget1,
74406 OPC_EmitInteger32, 28,
74407 OPC_EmitRegisterI32, 0 ,
74408 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsiv8i8),
74409 MVT::v8i8, 4, 0, 2, 3, 4,
74410 15, MVT::v4i16,
74411 OPC_CheckPatternPredicate1,
74412 OPC_EmitConvertToTarget1,
74413 OPC_EmitInteger32, 28,
74414 OPC_EmitRegisterI32, 0 ,
74415 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsiv4i16),
74416 MVT::v4i16, 4, 0, 2, 3, 4,
74417 15, MVT::v2i32,
74418 OPC_CheckPatternPredicate1,
74419 OPC_EmitConvertToTarget1,
74420 OPC_EmitInteger32, 28,
74421 OPC_EmitRegisterI32, 0 ,
74422 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsiv2i32),
74423 MVT::v2i32, 4, 0, 2, 3, 4,
74424 15, MVT::v1i64,
74425 OPC_CheckPatternPredicate1,
74426 OPC_EmitConvertToTarget1,
74427 OPC_EmitInteger32, 28,
74428 OPC_EmitRegisterI32, 0 ,
74429 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsiv1i64),
74430 MVT::v1i64, 4, 0, 2, 3, 4,
74431 15, MVT::v16i8,
74432 OPC_CheckPatternPredicate1,
74433 OPC_EmitConvertToTarget1,
74434 OPC_EmitInteger32, 28,
74435 OPC_EmitRegisterI32, 0 ,
74436 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsiv16i8),
74437 MVT::v16i8, 4, 0, 2, 3, 4,
74438 15, MVT::v8i16,
74439 OPC_CheckPatternPredicate1,
74440 OPC_EmitConvertToTarget1,
74441 OPC_EmitInteger32, 28,
74442 OPC_EmitRegisterI32, 0 ,
74443 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsiv8i16),
74444 MVT::v8i16, 4, 0, 2, 3, 4,
74445 15, MVT::v4i32,
74446 OPC_CheckPatternPredicate1,
74447 OPC_EmitConvertToTarget1,
74448 OPC_EmitInteger32, 28,
74449 OPC_EmitRegisterI32, 0 ,
74450 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsiv4i32),
74451 MVT::v4i32, 4, 0, 2, 3, 4,
74452 15, MVT::v2i64,
74453 OPC_CheckPatternPredicate1,
74454 OPC_EmitConvertToTarget1,
74455 OPC_EmitInteger32, 28,
74456 OPC_EmitRegisterI32, 0 ,
74457 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsiv2i64),
74458 MVT::v2i64, 4, 0, 2, 3, 4,
74459 0,
74460 17|128,1, TARGET_VAL(ARMISD::VQSHLuIMM),
74461 OPC_RecordChild0,
74462 OPC_RecordChild1,
74463 OPC_MoveChild1,
74464 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74465 OPC_MoveParent,
74466 OPC_SwitchType , 15, MVT::v8i8,
74467 OPC_CheckPatternPredicate1,
74468 OPC_EmitConvertToTarget1,
74469 OPC_EmitInteger32, 28,
74470 OPC_EmitRegisterI32, 0 ,
74471 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuiv8i8),
74472 MVT::v8i8, 4, 0, 2, 3, 4,
74473 15, MVT::v4i16,
74474 OPC_CheckPatternPredicate1,
74475 OPC_EmitConvertToTarget1,
74476 OPC_EmitInteger32, 28,
74477 OPC_EmitRegisterI32, 0 ,
74478 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuiv4i16),
74479 MVT::v4i16, 4, 0, 2, 3, 4,
74480 15, MVT::v2i32,
74481 OPC_CheckPatternPredicate1,
74482 OPC_EmitConvertToTarget1,
74483 OPC_EmitInteger32, 28,
74484 OPC_EmitRegisterI32, 0 ,
74485 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuiv2i32),
74486 MVT::v2i32, 4, 0, 2, 3, 4,
74487 15, MVT::v1i64,
74488 OPC_CheckPatternPredicate1,
74489 OPC_EmitConvertToTarget1,
74490 OPC_EmitInteger32, 28,
74491 OPC_EmitRegisterI32, 0 ,
74492 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuiv1i64),
74493 MVT::v1i64, 4, 0, 2, 3, 4,
74494 15, MVT::v16i8,
74495 OPC_CheckPatternPredicate1,
74496 OPC_EmitConvertToTarget1,
74497 OPC_EmitInteger32, 28,
74498 OPC_EmitRegisterI32, 0 ,
74499 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuiv16i8),
74500 MVT::v16i8, 4, 0, 2, 3, 4,
74501 15, MVT::v8i16,
74502 OPC_CheckPatternPredicate1,
74503 OPC_EmitConvertToTarget1,
74504 OPC_EmitInteger32, 28,
74505 OPC_EmitRegisterI32, 0 ,
74506 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuiv8i16),
74507 MVT::v8i16, 4, 0, 2, 3, 4,
74508 15, MVT::v4i32,
74509 OPC_CheckPatternPredicate1,
74510 OPC_EmitConvertToTarget1,
74511 OPC_EmitInteger32, 28,
74512 OPC_EmitRegisterI32, 0 ,
74513 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuiv4i32),
74514 MVT::v4i32, 4, 0, 2, 3, 4,
74515 15, MVT::v2i64,
74516 OPC_CheckPatternPredicate1,
74517 OPC_EmitConvertToTarget1,
74518 OPC_EmitInteger32, 28,
74519 OPC_EmitRegisterI32, 0 ,
74520 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLuiv2i64),
74521 MVT::v2i64, 4, 0, 2, 3, 4,
74522 0,
74523 17|128,1, TARGET_VAL(ARMISD::VQSHLsuIMM),
74524 OPC_RecordChild0,
74525 OPC_RecordChild1,
74526 OPC_MoveChild1,
74527 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74528 OPC_MoveParent,
74529 OPC_SwitchType , 15, MVT::v8i8,
74530 OPC_CheckPatternPredicate1,
74531 OPC_EmitConvertToTarget1,
74532 OPC_EmitInteger32, 28,
74533 OPC_EmitRegisterI32, 0 ,
74534 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsuv8i8),
74535 MVT::v8i8, 4, 0, 2, 3, 4,
74536 15, MVT::v4i16,
74537 OPC_CheckPatternPredicate1,
74538 OPC_EmitConvertToTarget1,
74539 OPC_EmitInteger32, 28,
74540 OPC_EmitRegisterI32, 0 ,
74541 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsuv4i16),
74542 MVT::v4i16, 4, 0, 2, 3, 4,
74543 15, MVT::v2i32,
74544 OPC_CheckPatternPredicate1,
74545 OPC_EmitConvertToTarget1,
74546 OPC_EmitInteger32, 28,
74547 OPC_EmitRegisterI32, 0 ,
74548 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsuv2i32),
74549 MVT::v2i32, 4, 0, 2, 3, 4,
74550 15, MVT::v1i64,
74551 OPC_CheckPatternPredicate1,
74552 OPC_EmitConvertToTarget1,
74553 OPC_EmitInteger32, 28,
74554 OPC_EmitRegisterI32, 0 ,
74555 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsuv1i64),
74556 MVT::v1i64, 4, 0, 2, 3, 4,
74557 15, MVT::v16i8,
74558 OPC_CheckPatternPredicate1,
74559 OPC_EmitConvertToTarget1,
74560 OPC_EmitInteger32, 28,
74561 OPC_EmitRegisterI32, 0 ,
74562 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsuv16i8),
74563 MVT::v16i8, 4, 0, 2, 3, 4,
74564 15, MVT::v8i16,
74565 OPC_CheckPatternPredicate1,
74566 OPC_EmitConvertToTarget1,
74567 OPC_EmitInteger32, 28,
74568 OPC_EmitRegisterI32, 0 ,
74569 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsuv8i16),
74570 MVT::v8i16, 4, 0, 2, 3, 4,
74571 15, MVT::v4i32,
74572 OPC_CheckPatternPredicate1,
74573 OPC_EmitConvertToTarget1,
74574 OPC_EmitInteger32, 28,
74575 OPC_EmitRegisterI32, 0 ,
74576 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsuv4i32),
74577 MVT::v4i32, 4, 0, 2, 3, 4,
74578 15, MVT::v2i64,
74579 OPC_CheckPatternPredicate1,
74580 OPC_EmitConvertToTarget1,
74581 OPC_EmitInteger32, 28,
74582 OPC_EmitRegisterI32, 0 ,
74583 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSHLsuv2i64),
74584 MVT::v2i64, 4, 0, 2, 3, 4,
74585 0,
74586 26|128,1, TARGET_VAL(ARMISD::VSLIIMM),
74587 OPC_RecordChild0,
74588 OPC_RecordChild1,
74589 OPC_RecordChild2,
74590 OPC_MoveChild2,
74591 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74592 OPC_MoveParent,
74593 OPC_SwitchType , 16, MVT::v8i8,
74594 OPC_CheckPatternPredicate1,
74595 OPC_EmitConvertToTarget2,
74596 OPC_EmitInteger32, 28,
74597 OPC_EmitRegisterI32, 0 ,
74598 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSLIv8i8),
74599 MVT::v8i8, 5, 0, 1, 3, 4, 5,
74600 16, MVT::v4i16,
74601 OPC_CheckPatternPredicate1,
74602 OPC_EmitConvertToTarget2,
74603 OPC_EmitInteger32, 28,
74604 OPC_EmitRegisterI32, 0 ,
74605 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSLIv4i16),
74606 MVT::v4i16, 5, 0, 1, 3, 4, 5,
74607 16, MVT::v2i32,
74608 OPC_CheckPatternPredicate1,
74609 OPC_EmitConvertToTarget2,
74610 OPC_EmitInteger32, 28,
74611 OPC_EmitRegisterI32, 0 ,
74612 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSLIv2i32),
74613 MVT::v2i32, 5, 0, 1, 3, 4, 5,
74614 16, MVT::v1i64,
74615 OPC_CheckPatternPredicate1,
74616 OPC_EmitConvertToTarget2,
74617 OPC_EmitInteger32, 28,
74618 OPC_EmitRegisterI32, 0 ,
74619 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSLIv1i64),
74620 MVT::v1i64, 5, 0, 1, 3, 4, 5,
74621 16, MVT::v16i8,
74622 OPC_CheckPatternPredicate1,
74623 OPC_EmitConvertToTarget2,
74624 OPC_EmitInteger32, 28,
74625 OPC_EmitRegisterI32, 0 ,
74626 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSLIv16i8),
74627 MVT::v16i8, 5, 0, 1, 3, 4, 5,
74628 16, MVT::v8i16,
74629 OPC_CheckPatternPredicate1,
74630 OPC_EmitConvertToTarget2,
74631 OPC_EmitInteger32, 28,
74632 OPC_EmitRegisterI32, 0 ,
74633 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSLIv8i16),
74634 MVT::v8i16, 5, 0, 1, 3, 4, 5,
74635 16, MVT::v4i32,
74636 OPC_CheckPatternPredicate1,
74637 OPC_EmitConvertToTarget2,
74638 OPC_EmitInteger32, 28,
74639 OPC_EmitRegisterI32, 0 ,
74640 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSLIv4i32),
74641 MVT::v4i32, 5, 0, 1, 3, 4, 5,
74642 16, MVT::v2i64,
74643 OPC_CheckPatternPredicate1,
74644 OPC_EmitConvertToTarget2,
74645 OPC_EmitInteger32, 28,
74646 OPC_EmitRegisterI32, 0 ,
74647 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSLIv2i64),
74648 MVT::v2i64, 5, 0, 1, 3, 4, 5,
74649 0,
74650 26|128,1, TARGET_VAL(ARMISD::VSRIIMM),
74651 OPC_RecordChild0,
74652 OPC_RecordChild1,
74653 OPC_RecordChild2,
74654 OPC_MoveChild2,
74655 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74656 OPC_MoveParent,
74657 OPC_SwitchType , 16, MVT::v8i8,
74658 OPC_CheckPatternPredicate1,
74659 OPC_EmitConvertToTarget2,
74660 OPC_EmitInteger32, 28,
74661 OPC_EmitRegisterI32, 0 ,
74662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRIv8i8),
74663 MVT::v8i8, 5, 0, 1, 3, 4, 5,
74664 16, MVT::v4i16,
74665 OPC_CheckPatternPredicate1,
74666 OPC_EmitConvertToTarget2,
74667 OPC_EmitInteger32, 28,
74668 OPC_EmitRegisterI32, 0 ,
74669 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRIv4i16),
74670 MVT::v4i16, 5, 0, 1, 3, 4, 5,
74671 16, MVT::v2i32,
74672 OPC_CheckPatternPredicate1,
74673 OPC_EmitConvertToTarget2,
74674 OPC_EmitInteger32, 28,
74675 OPC_EmitRegisterI32, 0 ,
74676 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRIv2i32),
74677 MVT::v2i32, 5, 0, 1, 3, 4, 5,
74678 16, MVT::v1i64,
74679 OPC_CheckPatternPredicate1,
74680 OPC_EmitConvertToTarget2,
74681 OPC_EmitInteger32, 28,
74682 OPC_EmitRegisterI32, 0 ,
74683 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRIv1i64),
74684 MVT::v1i64, 5, 0, 1, 3, 4, 5,
74685 16, MVT::v16i8,
74686 OPC_CheckPatternPredicate1,
74687 OPC_EmitConvertToTarget2,
74688 OPC_EmitInteger32, 28,
74689 OPC_EmitRegisterI32, 0 ,
74690 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRIv16i8),
74691 MVT::v16i8, 5, 0, 1, 3, 4, 5,
74692 16, MVT::v8i16,
74693 OPC_CheckPatternPredicate1,
74694 OPC_EmitConvertToTarget2,
74695 OPC_EmitInteger32, 28,
74696 OPC_EmitRegisterI32, 0 ,
74697 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRIv8i16),
74698 MVT::v8i16, 5, 0, 1, 3, 4, 5,
74699 16, MVT::v4i32,
74700 OPC_CheckPatternPredicate1,
74701 OPC_EmitConvertToTarget2,
74702 OPC_EmitInteger32, 28,
74703 OPC_EmitRegisterI32, 0 ,
74704 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRIv4i32),
74705 MVT::v4i32, 5, 0, 1, 3, 4, 5,
74706 16, MVT::v2i64,
74707 OPC_CheckPatternPredicate1,
74708 OPC_EmitConvertToTarget2,
74709 OPC_EmitInteger32, 28,
74710 OPC_EmitRegisterI32, 0 ,
74711 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSRIv2i64),
74712 MVT::v2i64, 5, 0, 1, 3, 4, 5,
74713 0,
74714 43|128,1, TARGET_VAL(ISD::EXTRACT_SUBVECTOR),
74715 OPC_RecordChild0,
74716 OPC_Scope, 23,
74717 OPC_CheckChild0Type, MVT::v16i8,
74718 OPC_RecordChild1,
74719 OPC_MoveChild1,
74720 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74721 OPC_CheckTypeI32,
74722 OPC_MoveParent,
74723 OPC_CheckType, MVT::v8i8,
74724 OPC_CheckPatternPredicate1,
74725 OPC_EmitConvertToTarget1,
74726 OPC_EmitNodeXForm, 16, 2,
74727 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
74728 MVT::v8i8, 2, 0, 3,
74729 23,
74730 OPC_CheckChild0Type, MVT::v8i16,
74731 OPC_RecordChild1,
74732 OPC_MoveChild1,
74733 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74734 OPC_CheckTypeI32,
74735 OPC_MoveParent,
74736 OPC_CheckType, MVT::v4i16,
74737 OPC_CheckPatternPredicate1,
74738 OPC_EmitConvertToTarget1,
74739 OPC_EmitNodeXForm, 5, 2,
74740 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
74741 MVT::v4i16, 2, 0, 3,
74742 23,
74743 OPC_CheckChild0Type, MVT::v4i32,
74744 OPC_RecordChild1,
74745 OPC_MoveChild1,
74746 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74747 OPC_CheckTypeI32,
74748 OPC_MoveParent,
74749 OPC_CheckType, MVT::v2i32,
74750 OPC_CheckPatternPredicate1,
74751 OPC_EmitConvertToTarget1,
74752 OPC_EmitNodeXForm, 7, 2,
74753 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
74754 MVT::v2i32, 2, 0, 3,
74755 23,
74756 OPC_CheckChild0Type, MVT::v2i64,
74757 OPC_RecordChild1,
74758 OPC_MoveChild1,
74759 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74760 OPC_CheckTypeI32,
74761 OPC_MoveParent,
74762 OPC_CheckType, MVT::v1i64,
74763 OPC_CheckPatternPredicate1,
74764 OPC_EmitConvertToTarget1,
74765 OPC_EmitNodeXForm, 20, 2,
74766 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
74767 MVT::v1i64, 2, 0, 3,
74768 23,
74769 OPC_CheckChild0Type, MVT::v4f32,
74770 OPC_RecordChild1,
74771 OPC_MoveChild1,
74772 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74773 OPC_CheckTypeI32,
74774 OPC_MoveParent,
74775 OPC_CheckType, MVT::v2f32,
74776 OPC_CheckPatternPredicate1,
74777 OPC_EmitConvertToTarget1,
74778 OPC_EmitNodeXForm, 7, 2,
74779 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
74780 MVT::v2f32, 2, 0, 3,
74781 23,
74782 OPC_CheckChild0Type, MVT::v8f16,
74783 OPC_RecordChild1,
74784 OPC_MoveChild1,
74785 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74786 OPC_CheckTypeI32,
74787 OPC_MoveParent,
74788 OPC_CheckType, MVT::v4f16,
74789 OPC_CheckPatternPredicate1,
74790 OPC_EmitConvertToTarget1,
74791 OPC_EmitNodeXForm, 5, 2,
74792 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
74793 MVT::v4f16, 2, 0, 3,
74794 23,
74795 OPC_CheckChild0Type, MVT::v8bf16,
74796 OPC_RecordChild1,
74797 OPC_MoveChild1,
74798 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74799 OPC_CheckTypeI32,
74800 OPC_MoveParent,
74801 OPC_CheckType, MVT::v4bf16,
74802 OPC_CheckPatternPredicate1,
74803 OPC_EmitConvertToTarget1,
74804 OPC_EmitNodeXForm, 5, 2,
74805 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
74806 MVT::v4bf16, 2, 0, 3,
74807 0,
74808 116|128,1, TARGET_VAL(ARMISD::VEXT),
74809 OPC_RecordChild0,
74810 OPC_RecordChild1,
74811 OPC_RecordChild2,
74812 OPC_MoveChild2,
74813 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
74814 OPC_MoveParent,
74815 OPC_SwitchType , 16, MVT::v8i8,
74816 OPC_CheckPatternPredicate1,
74817 OPC_EmitConvertToTarget2,
74818 OPC_EmitInteger32, 28,
74819 OPC_EmitRegisterI32, 0 ,
74820 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTd8),
74821 MVT::v8i8, 5, 0, 1, 3, 4, 5,
74822 16, MVT::v4i16,
74823 OPC_CheckPatternPredicate1,
74824 OPC_EmitConvertToTarget2,
74825 OPC_EmitInteger32, 28,
74826 OPC_EmitRegisterI32, 0 ,
74827 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTd16),
74828 MVT::v4i16, 5, 0, 1, 3, 4, 5,
74829 16, MVT::v2i32,
74830 OPC_CheckPatternPredicate1,
74831 OPC_EmitConvertToTarget2,
74832 OPC_EmitInteger32, 28,
74833 OPC_EmitRegisterI32, 0 ,
74834 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTd32),
74835 MVT::v2i32, 5, 0, 1, 3, 4, 5,
74836 16, MVT::v16i8,
74837 OPC_CheckPatternPredicate1,
74838 OPC_EmitConvertToTarget2,
74839 OPC_EmitInteger32, 28,
74840 OPC_EmitRegisterI32, 0 ,
74841 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTq8),
74842 MVT::v16i8, 5, 0, 1, 3, 4, 5,
74843 16, MVT::v8i16,
74844 OPC_CheckPatternPredicate1,
74845 OPC_EmitConvertToTarget2,
74846 OPC_EmitInteger32, 28,
74847 OPC_EmitRegisterI32, 0 ,
74848 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTq16),
74849 MVT::v8i16, 5, 0, 1, 3, 4, 5,
74850 16, MVT::v4i32,
74851 OPC_CheckPatternPredicate1,
74852 OPC_EmitConvertToTarget2,
74853 OPC_EmitInteger32, 28,
74854 OPC_EmitRegisterI32, 0 ,
74855 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTq32),
74856 MVT::v4i32, 5, 0, 1, 3, 4, 5,
74857 16, MVT::v2i64,
74858 OPC_CheckPatternPredicate1,
74859 OPC_EmitConvertToTarget2,
74860 OPC_EmitInteger32, 28,
74861 OPC_EmitRegisterI32, 0 ,
74862 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTq64),
74863 MVT::v2i64, 5, 0, 1, 3, 4, 5,
74864 16, MVT::v4f16,
74865 OPC_CheckPatternPredicate1,
74866 OPC_EmitConvertToTarget2,
74867 OPC_EmitInteger32, 28,
74868 OPC_EmitRegisterI32, 0 ,
74869 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTd16),
74870 MVT::v4f16, 5, 0, 1, 3, 4, 5,
74871 16, MVT::v4bf16,
74872 OPC_CheckPatternPredicate1,
74873 OPC_EmitConvertToTarget2,
74874 OPC_EmitInteger32, 28,
74875 OPC_EmitRegisterI32, 0 ,
74876 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTd16),
74877 MVT::v4bf16, 5, 0, 1, 3, 4, 5,
74878 16, MVT::v2f32,
74879 OPC_CheckPatternPredicate1,
74880 OPC_EmitConvertToTarget2,
74881 OPC_EmitInteger32, 28,
74882 OPC_EmitRegisterI32, 0 ,
74883 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTd32),
74884 MVT::v2f32, 5, 0, 1, 3, 4, 5,
74885 16, MVT::v8f16,
74886 OPC_CheckPatternPredicate1,
74887 OPC_EmitConvertToTarget2,
74888 OPC_EmitInteger32, 28,
74889 OPC_EmitRegisterI32, 0 ,
74890 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTq16),
74891 MVT::v8f16, 5, 0, 1, 3, 4, 5,
74892 16, MVT::v8bf16,
74893 OPC_CheckPatternPredicate1,
74894 OPC_EmitConvertToTarget2,
74895 OPC_EmitInteger32, 28,
74896 OPC_EmitRegisterI32, 0 ,
74897 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTq16),
74898 MVT::v8bf16, 5, 0, 1, 3, 4, 5,
74899 16, MVT::v4f32,
74900 OPC_CheckPatternPredicate1,
74901 OPC_EmitConvertToTarget2,
74902 OPC_EmitInteger32, 28,
74903 OPC_EmitRegisterI32, 0 ,
74904 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VEXTq32),
74905 MVT::v4f32, 5, 0, 1, 3, 4, 5,
74906 0,
74907 63|128,2, TARGET_VAL(ISD::UMIN),
74908 OPC_Scope, 66,
74909 OPC_RecordChild0,
74910 OPC_MoveChild1,
74911 OPC_CheckOpcode, TARGET_VAL(ISD::ABS),
74912 OPC_RecordChild0,
74913 OPC_MoveParent,
74914 OPC_SwitchType , 17, MVT::v16i8,
74915 OPC_CheckPatternPredicate0,
74916 OPC_EmitInteger32, 0,
74917 OPC_EmitRegisterI32, 0 ,
74918 OPC_EmitRegisterI32, 0 ,
74919 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAs8),
74920 MVT::v16i8, 5, 0, 1, 2, 3, 4,
74921 17, MVT::v8i16,
74922 OPC_CheckPatternPredicate0,
74923 OPC_EmitInteger32, 0,
74924 OPC_EmitRegisterI32, 0 ,
74925 OPC_EmitRegisterI32, 0 ,
74926 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAs16),
74927 MVT::v8i16, 5, 0, 1, 2, 3, 4,
74928 17, MVT::v4i32,
74929 OPC_CheckPatternPredicate0,
74930 OPC_EmitInteger32, 0,
74931 OPC_EmitRegisterI32, 0 ,
74932 OPC_EmitRegisterI32, 0 ,
74933 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAs32),
74934 MVT::v4i32, 5, 0, 1, 2, 3, 4,
74935 0,
74936 66,
74937 OPC_MoveChild0,
74938 OPC_CheckOpcode, TARGET_VAL(ISD::ABS),
74939 OPC_RecordChild0,
74940 OPC_MoveParent,
74941 OPC_RecordChild1,
74942 OPC_SwitchType , 17, MVT::v16i8,
74943 OPC_CheckPatternPredicate0,
74944 OPC_EmitInteger32, 0,
74945 OPC_EmitRegisterI32, 0 ,
74946 OPC_EmitRegisterI32, 0 ,
74947 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAs8),
74948 MVT::v16i8, 5, 1, 0, 2, 3, 4,
74949 17, MVT::v8i16,
74950 OPC_CheckPatternPredicate0,
74951 OPC_EmitInteger32, 0,
74952 OPC_EmitRegisterI32, 0 ,
74953 OPC_EmitRegisterI32, 0 ,
74954 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAs16),
74955 MVT::v8i16, 5, 1, 0, 2, 3, 4,
74956 17, MVT::v4i32,
74957 OPC_CheckPatternPredicate0,
74958 OPC_EmitInteger32, 0,
74959 OPC_EmitRegisterI32, 0 ,
74960 OPC_EmitRegisterI32, 0 ,
74961 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINAs32),
74962 MVT::v4i32, 5, 1, 0, 2, 3, 4,
74963 0,
74964 53|128,1,
74965 OPC_RecordChild0,
74966 OPC_RecordChild1,
74967 OPC_SwitchType , 14, MVT::v4i16,
74968 OPC_CheckPatternPredicate1,
74969 OPC_EmitInteger32, 28,
74970 OPC_EmitRegisterI32, 0 ,
74971 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINuv4i16),
74972 MVT::v4i16, 4, 0, 1, 2, 3,
74973 14, MVT::v2i32,
74974 OPC_CheckPatternPredicate1,
74975 OPC_EmitInteger32, 28,
74976 OPC_EmitRegisterI32, 0 ,
74977 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINuv2i32),
74978 MVT::v2i32, 4, 0, 1, 2, 3,
74979 41, MVT::v8i16,
74980 OPC_Scope, 14,
74981 OPC_CheckPatternPredicate1,
74982 OPC_EmitInteger32, 28,
74983 OPC_EmitRegisterI32, 0 ,
74984 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINuv8i16),
74985 MVT::v8i16, 4, 0, 1, 2, 3,
74986 23,
74987 OPC_CheckPatternPredicate0,
74988 OPC_EmitInteger32, 0,
74989 OPC_EmitRegisterI32, 0 ,
74990 OPC_EmitRegisterI32, 0 ,
74991 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
74992 MVT::v4i32, 0,
74993 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINu16),
74994 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
74995 0,
74996 41, MVT::v4i32,
74997 OPC_Scope, 14,
74998 OPC_CheckPatternPredicate1,
74999 OPC_EmitInteger32, 28,
75000 OPC_EmitRegisterI32, 0 ,
75001 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINuv4i32),
75002 MVT::v4i32, 4, 0, 1, 2, 3,
75003 23,
75004 OPC_CheckPatternPredicate0,
75005 OPC_EmitInteger32, 0,
75006 OPC_EmitRegisterI32, 0 ,
75007 OPC_EmitRegisterI32, 0 ,
75008 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75009 MVT::v4i32, 0,
75010 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINu32),
75011 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75012 0,
75013 14, MVT::v8i8,
75014 OPC_CheckPatternPredicate1,
75015 OPC_EmitInteger32, 28,
75016 OPC_EmitRegisterI32, 0 ,
75017 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINuv8i8),
75018 MVT::v8i8, 4, 0, 1, 2, 3,
75019 41, MVT::v16i8,
75020 OPC_Scope, 14,
75021 OPC_CheckPatternPredicate1,
75022 OPC_EmitInteger32, 28,
75023 OPC_EmitRegisterI32, 0 ,
75024 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINuv16i8),
75025 MVT::v16i8, 4, 0, 1, 2, 3,
75026 23,
75027 OPC_CheckPatternPredicate0,
75028 OPC_EmitInteger32, 0,
75029 OPC_EmitRegisterI32, 0 ,
75030 OPC_EmitRegisterI32, 0 ,
75031 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75032 MVT::v4i32, 0,
75033 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINu8),
75034 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75035 0,
75036 0,
75037 0,
75038 63|128,2, TARGET_VAL(ISD::UMAX),
75039 OPC_Scope, 66,
75040 OPC_RecordChild0,
75041 OPC_MoveChild1,
75042 OPC_CheckOpcode, TARGET_VAL(ISD::ABS),
75043 OPC_RecordChild0,
75044 OPC_MoveParent,
75045 OPC_SwitchType , 17, MVT::v16i8,
75046 OPC_CheckPatternPredicate0,
75047 OPC_EmitInteger32, 0,
75048 OPC_EmitRegisterI32, 0 ,
75049 OPC_EmitRegisterI32, 0 ,
75050 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAs8),
75051 MVT::v16i8, 5, 0, 1, 2, 3, 4,
75052 17, MVT::v8i16,
75053 OPC_CheckPatternPredicate0,
75054 OPC_EmitInteger32, 0,
75055 OPC_EmitRegisterI32, 0 ,
75056 OPC_EmitRegisterI32, 0 ,
75057 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAs16),
75058 MVT::v8i16, 5, 0, 1, 2, 3, 4,
75059 17, MVT::v4i32,
75060 OPC_CheckPatternPredicate0,
75061 OPC_EmitInteger32, 0,
75062 OPC_EmitRegisterI32, 0 ,
75063 OPC_EmitRegisterI32, 0 ,
75064 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAs32),
75065 MVT::v4i32, 5, 0, 1, 2, 3, 4,
75066 0,
75067 66,
75068 OPC_MoveChild0,
75069 OPC_CheckOpcode, TARGET_VAL(ISD::ABS),
75070 OPC_RecordChild0,
75071 OPC_MoveParent,
75072 OPC_RecordChild1,
75073 OPC_SwitchType , 17, MVT::v16i8,
75074 OPC_CheckPatternPredicate0,
75075 OPC_EmitInteger32, 0,
75076 OPC_EmitRegisterI32, 0 ,
75077 OPC_EmitRegisterI32, 0 ,
75078 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAs8),
75079 MVT::v16i8, 5, 1, 0, 2, 3, 4,
75080 17, MVT::v8i16,
75081 OPC_CheckPatternPredicate0,
75082 OPC_EmitInteger32, 0,
75083 OPC_EmitRegisterI32, 0 ,
75084 OPC_EmitRegisterI32, 0 ,
75085 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAs16),
75086 MVT::v8i16, 5, 1, 0, 2, 3, 4,
75087 17, MVT::v4i32,
75088 OPC_CheckPatternPredicate0,
75089 OPC_EmitInteger32, 0,
75090 OPC_EmitRegisterI32, 0 ,
75091 OPC_EmitRegisterI32, 0 ,
75092 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXAs32),
75093 MVT::v4i32, 5, 1, 0, 2, 3, 4,
75094 0,
75095 53|128,1,
75096 OPC_RecordChild0,
75097 OPC_RecordChild1,
75098 OPC_SwitchType , 14, MVT::v4i16,
75099 OPC_CheckPatternPredicate1,
75100 OPC_EmitInteger32, 28,
75101 OPC_EmitRegisterI32, 0 ,
75102 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXuv4i16),
75103 MVT::v4i16, 4, 0, 1, 2, 3,
75104 14, MVT::v2i32,
75105 OPC_CheckPatternPredicate1,
75106 OPC_EmitInteger32, 28,
75107 OPC_EmitRegisterI32, 0 ,
75108 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXuv2i32),
75109 MVT::v2i32, 4, 0, 1, 2, 3,
75110 41, MVT::v8i16,
75111 OPC_Scope, 14,
75112 OPC_CheckPatternPredicate1,
75113 OPC_EmitInteger32, 28,
75114 OPC_EmitRegisterI32, 0 ,
75115 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXuv8i16),
75116 MVT::v8i16, 4, 0, 1, 2, 3,
75117 23,
75118 OPC_CheckPatternPredicate0,
75119 OPC_EmitInteger32, 0,
75120 OPC_EmitRegisterI32, 0 ,
75121 OPC_EmitRegisterI32, 0 ,
75122 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75123 MVT::v4i32, 0,
75124 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXu16),
75125 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75126 0,
75127 41, MVT::v4i32,
75128 OPC_Scope, 14,
75129 OPC_CheckPatternPredicate1,
75130 OPC_EmitInteger32, 28,
75131 OPC_EmitRegisterI32, 0 ,
75132 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXuv4i32),
75133 MVT::v4i32, 4, 0, 1, 2, 3,
75134 23,
75135 OPC_CheckPatternPredicate0,
75136 OPC_EmitInteger32, 0,
75137 OPC_EmitRegisterI32, 0 ,
75138 OPC_EmitRegisterI32, 0 ,
75139 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75140 MVT::v4i32, 0,
75141 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXu32),
75142 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75143 0,
75144 14, MVT::v8i8,
75145 OPC_CheckPatternPredicate1,
75146 OPC_EmitInteger32, 28,
75147 OPC_EmitRegisterI32, 0 ,
75148 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXuv8i8),
75149 MVT::v8i8, 4, 0, 1, 2, 3,
75150 41, MVT::v16i8,
75151 OPC_Scope, 14,
75152 OPC_CheckPatternPredicate1,
75153 OPC_EmitInteger32, 28,
75154 OPC_EmitRegisterI32, 0 ,
75155 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXuv16i8),
75156 MVT::v16i8, 4, 0, 1, 2, 3,
75157 23,
75158 OPC_CheckPatternPredicate0,
75159 OPC_EmitInteger32, 0,
75160 OPC_EmitRegisterI32, 0 ,
75161 OPC_EmitRegisterI32, 0 ,
75162 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75163 MVT::v4i32, 0,
75164 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXu8),
75165 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75166 0,
75167 0,
75168 0,
75169 5|128,3, TARGET_VAL(ISD::UADDSAT),
75170 OPC_Scope, 85,
75171 OPC_RecordChild0,
75172 OPC_MoveChild1,
75173 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
75174 OPC_RecordChild0,
75175 OPC_CheckChild0TypeI32,
75176 OPC_MoveParent,
75177 OPC_SwitchType , 23, MVT::v16i8,
75178 OPC_CheckPatternPredicate0,
75179 OPC_EmitInteger32, 0,
75180 OPC_EmitRegisterI32, 0 ,
75181 OPC_EmitRegisterI32, 0 ,
75182 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75183 MVT::v4i32, 0,
75184 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u8),
75185 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75186 23, MVT::v8i16,
75187 OPC_CheckPatternPredicate0,
75188 OPC_EmitInteger32, 0,
75189 OPC_EmitRegisterI32, 0 ,
75190 OPC_EmitRegisterI32, 0 ,
75191 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75192 MVT::v4i32, 0,
75193 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u16),
75194 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75195 23, MVT::v4i32,
75196 OPC_CheckPatternPredicate0,
75197 OPC_EmitInteger32, 0,
75198 OPC_EmitRegisterI32, 0 ,
75199 OPC_EmitRegisterI32, 0 ,
75200 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75201 MVT::v4i32, 0,
75202 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u32),
75203 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75204 0,
75205 85,
75206 OPC_MoveChild0,
75207 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
75208 OPC_RecordChild0,
75209 OPC_CheckChild0TypeI32,
75210 OPC_MoveParent,
75211 OPC_RecordChild1,
75212 OPC_SwitchType , 23, MVT::v16i8,
75213 OPC_CheckPatternPredicate0,
75214 OPC_EmitInteger32, 0,
75215 OPC_EmitRegisterI32, 0 ,
75216 OPC_EmitRegisterI32, 0 ,
75217 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75218 MVT::v4i32, 0,
75219 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u8),
75220 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
75221 23, MVT::v8i16,
75222 OPC_CheckPatternPredicate0,
75223 OPC_EmitInteger32, 0,
75224 OPC_EmitRegisterI32, 0 ,
75225 OPC_EmitRegisterI32, 0 ,
75226 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75227 MVT::v4i32, 0,
75228 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u16),
75229 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
75230 23, MVT::v4i32,
75231 OPC_CheckPatternPredicate0,
75232 OPC_EmitInteger32, 0,
75233 OPC_EmitRegisterI32, 0 ,
75234 OPC_EmitRegisterI32, 0 ,
75235 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75236 MVT::v4i32, 0,
75237 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADD_qr_u32),
75238 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
75239 0,
75240 85|128,1,
75241 OPC_RecordChild0,
75242 OPC_RecordChild1,
75243 OPC_SwitchType , 14, MVT::v4i16,
75244 OPC_CheckPatternPredicate1,
75245 OPC_EmitInteger32, 28,
75246 OPC_EmitRegisterI32, 0 ,
75247 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDuv4i16),
75248 MVT::v4i16, 4, 0, 1, 2, 3,
75249 14, MVT::v2i32,
75250 OPC_CheckPatternPredicate1,
75251 OPC_EmitInteger32, 28,
75252 OPC_EmitRegisterI32, 0 ,
75253 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDuv2i32),
75254 MVT::v2i32, 4, 0, 1, 2, 3,
75255 41, MVT::v8i16,
75256 OPC_Scope, 14,
75257 OPC_CheckPatternPredicate1,
75258 OPC_EmitInteger32, 28,
75259 OPC_EmitRegisterI32, 0 ,
75260 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDuv8i16),
75261 MVT::v8i16, 4, 0, 1, 2, 3,
75262 23,
75263 OPC_CheckPatternPredicate0,
75264 OPC_EmitInteger32, 0,
75265 OPC_EmitRegisterI32, 0 ,
75266 OPC_EmitRegisterI32, 0 ,
75267 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75268 MVT::v4i32, 0,
75269 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDu16),
75270 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75271 0,
75272 41, MVT::v4i32,
75273 OPC_Scope, 14,
75274 OPC_CheckPatternPredicate1,
75275 OPC_EmitInteger32, 28,
75276 OPC_EmitRegisterI32, 0 ,
75277 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDuv4i32),
75278 MVT::v4i32, 4, 0, 1, 2, 3,
75279 23,
75280 OPC_CheckPatternPredicate0,
75281 OPC_EmitInteger32, 0,
75282 OPC_EmitRegisterI32, 0 ,
75283 OPC_EmitRegisterI32, 0 ,
75284 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75285 MVT::v4i32, 0,
75286 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDu32),
75287 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75288 0,
75289 14, MVT::v8i8,
75290 OPC_CheckPatternPredicate1,
75291 OPC_EmitInteger32, 28,
75292 OPC_EmitRegisterI32, 0 ,
75293 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDuv8i8),
75294 MVT::v8i8, 4, 0, 1, 2, 3,
75295 41, MVT::v16i8,
75296 OPC_Scope, 14,
75297 OPC_CheckPatternPredicate1,
75298 OPC_EmitInteger32, 28,
75299 OPC_EmitRegisterI32, 0 ,
75300 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDuv16i8),
75301 MVT::v16i8, 4, 0, 1, 2, 3,
75302 23,
75303 OPC_CheckPatternPredicate0,
75304 OPC_EmitInteger32, 0,
75305 OPC_EmitRegisterI32, 0 ,
75306 OPC_EmitRegisterI32, 0 ,
75307 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75308 MVT::v4i32, 0,
75309 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQADDu8),
75310 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75311 0,
75312 14, MVT::v1i64,
75313 OPC_CheckPatternPredicate1,
75314 OPC_EmitInteger32, 28,
75315 OPC_EmitRegisterI32, 0 ,
75316 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDuv1i64),
75317 MVT::v1i64, 4, 0, 1, 2, 3,
75318 14, MVT::v2i64,
75319 OPC_CheckPatternPredicate1,
75320 OPC_EmitInteger32, 28,
75321 OPC_EmitRegisterI32, 0 ,
75322 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQADDuv2i64),
75323 MVT::v2i64, 4, 0, 1, 2, 3,
75324 0,
75325 0,
75326 46|128,2, TARGET_VAL(ISD::USUBSAT),
75327 OPC_RecordChild0,
75328 OPC_Scope, 84,
75329 OPC_MoveChild1,
75330 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
75331 OPC_RecordChild0,
75332 OPC_CheckChild0TypeI32,
75333 OPC_MoveParent,
75334 OPC_SwitchType , 23, MVT::v16i8,
75335 OPC_CheckPatternPredicate0,
75336 OPC_EmitInteger32, 0,
75337 OPC_EmitRegisterI32, 0 ,
75338 OPC_EmitRegisterI32, 0 ,
75339 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75340 MVT::v4i32, 0,
75341 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_u8),
75342 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75343 23, MVT::v8i16,
75344 OPC_CheckPatternPredicate0,
75345 OPC_EmitInteger32, 0,
75346 OPC_EmitRegisterI32, 0 ,
75347 OPC_EmitRegisterI32, 0 ,
75348 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75349 MVT::v4i32, 0,
75350 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_u16),
75351 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75352 23, MVT::v4i32,
75353 OPC_CheckPatternPredicate0,
75354 OPC_EmitInteger32, 0,
75355 OPC_EmitRegisterI32, 0 ,
75356 OPC_EmitRegisterI32, 0 ,
75357 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75358 MVT::v4i32, 0,
75359 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUB_qr_u32),
75360 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75361 0,
75362 84|128,1,
75363 OPC_RecordChild1,
75364 OPC_SwitchType , 14, MVT::v4i16,
75365 OPC_CheckPatternPredicate1,
75366 OPC_EmitInteger32, 28,
75367 OPC_EmitRegisterI32, 0 ,
75368 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBuv4i16),
75369 MVT::v4i16, 4, 0, 1, 2, 3,
75370 14, MVT::v2i32,
75371 OPC_CheckPatternPredicate1,
75372 OPC_EmitInteger32, 28,
75373 OPC_EmitRegisterI32, 0 ,
75374 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBuv2i32),
75375 MVT::v2i32, 4, 0, 1, 2, 3,
75376 41, MVT::v8i16,
75377 OPC_Scope, 14,
75378 OPC_CheckPatternPredicate1,
75379 OPC_EmitInteger32, 28,
75380 OPC_EmitRegisterI32, 0 ,
75381 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBuv8i16),
75382 MVT::v8i16, 4, 0, 1, 2, 3,
75383 23,
75384 OPC_CheckPatternPredicate0,
75385 OPC_EmitInteger32, 0,
75386 OPC_EmitRegisterI32, 0 ,
75387 OPC_EmitRegisterI32, 0 ,
75388 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75389 MVT::v4i32, 0,
75390 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBu16),
75391 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75392 0,
75393 41, MVT::v4i32,
75394 OPC_Scope, 14,
75395 OPC_CheckPatternPredicate1,
75396 OPC_EmitInteger32, 28,
75397 OPC_EmitRegisterI32, 0 ,
75398 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBuv4i32),
75399 MVT::v4i32, 4, 0, 1, 2, 3,
75400 23,
75401 OPC_CheckPatternPredicate0,
75402 OPC_EmitInteger32, 0,
75403 OPC_EmitRegisterI32, 0 ,
75404 OPC_EmitRegisterI32, 0 ,
75405 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75406 MVT::v4i32, 0,
75407 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBu32),
75408 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75409 0,
75410 14, MVT::v8i8,
75411 OPC_CheckPatternPredicate1,
75412 OPC_EmitInteger32, 28,
75413 OPC_EmitRegisterI32, 0 ,
75414 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBuv8i8),
75415 MVT::v8i8, 4, 0, 1, 2, 3,
75416 41, MVT::v16i8,
75417 OPC_Scope, 14,
75418 OPC_CheckPatternPredicate1,
75419 OPC_EmitInteger32, 28,
75420 OPC_EmitRegisterI32, 0 ,
75421 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBuv16i8),
75422 MVT::v16i8, 4, 0, 1, 2, 3,
75423 23,
75424 OPC_CheckPatternPredicate0,
75425 OPC_EmitInteger32, 0,
75426 OPC_EmitRegisterI32, 0 ,
75427 OPC_EmitRegisterI32, 0 ,
75428 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75429 MVT::v4i32, 0,
75430 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQSUBu8),
75431 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75432 0,
75433 14, MVT::v1i64,
75434 OPC_CheckPatternPredicate1,
75435 OPC_EmitInteger32, 28,
75436 OPC_EmitRegisterI32, 0 ,
75437 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBuv1i64),
75438 MVT::v1i64, 4, 0, 1, 2, 3,
75439 14, MVT::v2i64,
75440 OPC_CheckPatternPredicate1,
75441 OPC_EmitInteger32, 28,
75442 OPC_EmitRegisterI32, 0 ,
75443 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VQSUBuv2i64),
75444 MVT::v2i64, 4, 0, 1, 2, 3,
75445 0,
75446 0,
75447 117|128,1, TARGET_VAL(ISD::AVGFLOORS),
75448 OPC_Scope, 82,
75449 OPC_RecordChild0,
75450 OPC_MoveChild1,
75451 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
75452 OPC_RecordChild0,
75453 OPC_CheckChild0TypeI32,
75454 OPC_MoveParent,
75455 OPC_SwitchType , 22, MVT::v16i8,
75456 OPC_EmitInteger32, 0,
75457 OPC_EmitRegisterI32, 0 ,
75458 OPC_EmitRegisterI32, 0 ,
75459 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75460 MVT::v4i32, 0,
75461 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s8),
75462 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75463 22, MVT::v8i16,
75464 OPC_EmitInteger32, 0,
75465 OPC_EmitRegisterI32, 0 ,
75466 OPC_EmitRegisterI32, 0 ,
75467 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75468 MVT::v4i32, 0,
75469 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s16),
75470 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75471 22, MVT::v4i32,
75472 OPC_EmitInteger32, 0,
75473 OPC_EmitRegisterI32, 0 ,
75474 OPC_EmitRegisterI32, 0 ,
75475 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75476 MVT::v4i32, 0,
75477 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s32),
75478 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75479 0,
75480 82,
75481 OPC_MoveChild0,
75482 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
75483 OPC_RecordChild0,
75484 OPC_CheckChild0TypeI32,
75485 OPC_MoveParent,
75486 OPC_RecordChild1,
75487 OPC_SwitchType , 22, MVT::v16i8,
75488 OPC_EmitInteger32, 0,
75489 OPC_EmitRegisterI32, 0 ,
75490 OPC_EmitRegisterI32, 0 ,
75491 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75492 MVT::v4i32, 0,
75493 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s8),
75494 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
75495 22, MVT::v8i16,
75496 OPC_EmitInteger32, 0,
75497 OPC_EmitRegisterI32, 0 ,
75498 OPC_EmitRegisterI32, 0 ,
75499 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75500 MVT::v4i32, 0,
75501 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s16),
75502 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
75503 22, MVT::v4i32,
75504 OPC_EmitInteger32, 0,
75505 OPC_EmitRegisterI32, 0 ,
75506 OPC_EmitRegisterI32, 0 ,
75507 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75508 MVT::v4i32, 0,
75509 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_s32),
75510 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
75511 0,
75512 76,
75513 OPC_RecordChild0,
75514 OPC_RecordChild1,
75515 OPC_SwitchType , 22, MVT::v16i8,
75516 OPC_EmitInteger32, 0,
75517 OPC_EmitRegisterI32, 0 ,
75518 OPC_EmitRegisterI32, 0 ,
75519 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75520 MVT::v4i32, 0,
75521 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs8),
75522 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75523 22, MVT::v8i16,
75524 OPC_EmitInteger32, 0,
75525 OPC_EmitRegisterI32, 0 ,
75526 OPC_EmitRegisterI32, 0 ,
75527 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75528 MVT::v4i32, 0,
75529 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs16),
75530 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75531 22, MVT::v4i32,
75532 OPC_EmitInteger32, 0,
75533 OPC_EmitRegisterI32, 0 ,
75534 OPC_EmitRegisterI32, 0 ,
75535 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75536 MVT::v4i32, 0,
75537 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDs32),
75538 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75539 0,
75540 0,
75541 117|128,1, TARGET_VAL(ISD::AVGFLOORU),
75542 OPC_Scope, 82,
75543 OPC_RecordChild0,
75544 OPC_MoveChild1,
75545 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
75546 OPC_RecordChild0,
75547 OPC_CheckChild0TypeI32,
75548 OPC_MoveParent,
75549 OPC_SwitchType , 22, MVT::v16i8,
75550 OPC_EmitInteger32, 0,
75551 OPC_EmitRegisterI32, 0 ,
75552 OPC_EmitRegisterI32, 0 ,
75553 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75554 MVT::v4i32, 0,
75555 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u8),
75556 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75557 22, MVT::v8i16,
75558 OPC_EmitInteger32, 0,
75559 OPC_EmitRegisterI32, 0 ,
75560 OPC_EmitRegisterI32, 0 ,
75561 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75562 MVT::v4i32, 0,
75563 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u16),
75564 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75565 22, MVT::v4i32,
75566 OPC_EmitInteger32, 0,
75567 OPC_EmitRegisterI32, 0 ,
75568 OPC_EmitRegisterI32, 0 ,
75569 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75570 MVT::v4i32, 0,
75571 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u32),
75572 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75573 0,
75574 82,
75575 OPC_MoveChild0,
75576 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
75577 OPC_RecordChild0,
75578 OPC_CheckChild0TypeI32,
75579 OPC_MoveParent,
75580 OPC_RecordChild1,
75581 OPC_SwitchType , 22, MVT::v16i8,
75582 OPC_EmitInteger32, 0,
75583 OPC_EmitRegisterI32, 0 ,
75584 OPC_EmitRegisterI32, 0 ,
75585 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75586 MVT::v4i32, 0,
75587 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u8),
75588 MVT::v16i8, 6, 1, 0, 2, 3, 4, 5,
75589 22, MVT::v8i16,
75590 OPC_EmitInteger32, 0,
75591 OPC_EmitRegisterI32, 0 ,
75592 OPC_EmitRegisterI32, 0 ,
75593 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75594 MVT::v4i32, 0,
75595 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u16),
75596 MVT::v8i16, 6, 1, 0, 2, 3, 4, 5,
75597 22, MVT::v4i32,
75598 OPC_EmitInteger32, 0,
75599 OPC_EmitRegisterI32, 0 ,
75600 OPC_EmitRegisterI32, 0 ,
75601 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75602 MVT::v4i32, 0,
75603 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADD_qr_u32),
75604 MVT::v4i32, 6, 1, 0, 2, 3, 4, 5,
75605 0,
75606 76,
75607 OPC_RecordChild0,
75608 OPC_RecordChild1,
75609 OPC_SwitchType , 22, MVT::v16i8,
75610 OPC_EmitInteger32, 0,
75611 OPC_EmitRegisterI32, 0 ,
75612 OPC_EmitRegisterI32, 0 ,
75613 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75614 MVT::v4i32, 0,
75615 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu8),
75616 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75617 22, MVT::v8i16,
75618 OPC_EmitInteger32, 0,
75619 OPC_EmitRegisterI32, 0 ,
75620 OPC_EmitRegisterI32, 0 ,
75621 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75622 MVT::v4i32, 0,
75623 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu16),
75624 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75625 22, MVT::v4i32,
75626 OPC_EmitInteger32, 0,
75627 OPC_EmitRegisterI32, 0 ,
75628 OPC_EmitRegisterI32, 0 ,
75629 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75630 MVT::v4i32, 0,
75631 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VHADDu32),
75632 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75633 0,
75634 0,
75635 28|128,2, TARGET_VAL(ARMISD::VSHLu),
75636 OPC_RecordChild0,
75637 OPC_Scope, 66,
75638 OPC_MoveChild1,
75639 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
75640 OPC_RecordChild0,
75641 OPC_CheckChild0TypeI32,
75642 OPC_MoveParent,
75643 OPC_SwitchType , 17, MVT::v4i32,
75644 OPC_CheckPatternPredicate0,
75645 OPC_EmitInteger32, 0,
75646 OPC_EmitRegisterI32, 0 ,
75647 OPC_EmitRegisterI32, 0 ,
75648 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qru32),
75649 MVT::v4i32, 5, 0, 1, 2, 3, 4,
75650 17, MVT::v8i16,
75651 OPC_CheckPatternPredicate0,
75652 OPC_EmitInteger32, 0,
75653 OPC_EmitRegisterI32, 0 ,
75654 OPC_EmitRegisterI32, 0 ,
75655 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qru16),
75656 MVT::v8i16, 5, 0, 1, 2, 3, 4,
75657 17, MVT::v16i8,
75658 OPC_CheckPatternPredicate0,
75659 OPC_EmitInteger32, 0,
75660 OPC_EmitRegisterI32, 0 ,
75661 OPC_EmitRegisterI32, 0 ,
75662 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qru8),
75663 MVT::v16i8, 5, 0, 1, 2, 3, 4,
75664 0,
75665 84|128,1,
75666 OPC_RecordChild1,
75667 OPC_SwitchType , 14, MVT::v8i8,
75668 OPC_CheckPatternPredicate1,
75669 OPC_EmitInteger32, 28,
75670 OPC_EmitRegisterI32, 0 ,
75671 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv8i8),
75672 MVT::v8i8, 4, 0, 1, 2, 3,
75673 14, MVT::v4i16,
75674 OPC_CheckPatternPredicate1,
75675 OPC_EmitInteger32, 28,
75676 OPC_EmitRegisterI32, 0 ,
75677 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv4i16),
75678 MVT::v4i16, 4, 0, 1, 2, 3,
75679 14, MVT::v2i32,
75680 OPC_CheckPatternPredicate1,
75681 OPC_EmitInteger32, 28,
75682 OPC_EmitRegisterI32, 0 ,
75683 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv2i32),
75684 MVT::v2i32, 4, 0, 1, 2, 3,
75685 14, MVT::v1i64,
75686 OPC_CheckPatternPredicate1,
75687 OPC_EmitInteger32, 28,
75688 OPC_EmitRegisterI32, 0 ,
75689 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv1i64),
75690 MVT::v1i64, 4, 0, 1, 2, 3,
75691 41, MVT::v16i8,
75692 OPC_Scope, 14,
75693 OPC_CheckPatternPredicate1,
75694 OPC_EmitInteger32, 28,
75695 OPC_EmitRegisterI32, 0 ,
75696 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv16i8),
75697 MVT::v16i8, 4, 0, 1, 2, 3,
75698 23,
75699 OPC_CheckPatternPredicate0,
75700 OPC_EmitInteger32, 0,
75701 OPC_EmitRegisterI32, 0 ,
75702 OPC_EmitRegisterI32, 0 ,
75703 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75704 MVT::v4i32, 0,
75705 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu8),
75706 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75707 0,
75708 41, MVT::v8i16,
75709 OPC_Scope, 14,
75710 OPC_CheckPatternPredicate1,
75711 OPC_EmitInteger32, 28,
75712 OPC_EmitRegisterI32, 0 ,
75713 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv8i16),
75714 MVT::v8i16, 4, 0, 1, 2, 3,
75715 23,
75716 OPC_CheckPatternPredicate0,
75717 OPC_EmitInteger32, 0,
75718 OPC_EmitRegisterI32, 0 ,
75719 OPC_EmitRegisterI32, 0 ,
75720 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75721 MVT::v4i32, 0,
75722 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu16),
75723 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75724 0,
75725 41, MVT::v4i32,
75726 OPC_Scope, 14,
75727 OPC_CheckPatternPredicate1,
75728 OPC_EmitInteger32, 28,
75729 OPC_EmitRegisterI32, 0 ,
75730 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv4i32),
75731 MVT::v4i32, 4, 0, 1, 2, 3,
75732 23,
75733 OPC_CheckPatternPredicate0,
75734 OPC_EmitInteger32, 0,
75735 OPC_EmitRegisterI32, 0 ,
75736 OPC_EmitRegisterI32, 0 ,
75737 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75738 MVT::v4i32, 0,
75739 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecu32),
75740 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75741 0,
75742 14, MVT::v2i64,
75743 OPC_CheckPatternPredicate1,
75744 OPC_EmitInteger32, 28,
75745 OPC_EmitRegisterI32, 0 ,
75746 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLuv2i64),
75747 MVT::v2i64, 4, 0, 1, 2, 3,
75748 0,
75749 0,
75750 28|128,2, TARGET_VAL(ARMISD::VSHLs),
75751 OPC_RecordChild0,
75752 OPC_Scope, 66,
75753 OPC_MoveChild1,
75754 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
75755 OPC_RecordChild0,
75756 OPC_CheckChild0TypeI32,
75757 OPC_MoveParent,
75758 OPC_SwitchType , 17, MVT::v4i32,
75759 OPC_CheckPatternPredicate0,
75760 OPC_EmitInteger32, 0,
75761 OPC_EmitRegisterI32, 0 ,
75762 OPC_EmitRegisterI32, 0 ,
75763 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qrs32),
75764 MVT::v4i32, 5, 0, 1, 2, 3, 4,
75765 17, MVT::v8i16,
75766 OPC_CheckPatternPredicate0,
75767 OPC_EmitInteger32, 0,
75768 OPC_EmitRegisterI32, 0 ,
75769 OPC_EmitRegisterI32, 0 ,
75770 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qrs16),
75771 MVT::v8i16, 5, 0, 1, 2, 3, 4,
75772 17, MVT::v16i8,
75773 OPC_CheckPatternPredicate0,
75774 OPC_EmitInteger32, 0,
75775 OPC_EmitRegisterI32, 0 ,
75776 OPC_EmitRegisterI32, 0 ,
75777 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_qrs8),
75778 MVT::v16i8, 5, 0, 1, 2, 3, 4,
75779 0,
75780 84|128,1,
75781 OPC_RecordChild1,
75782 OPC_SwitchType , 14, MVT::v8i8,
75783 OPC_CheckPatternPredicate1,
75784 OPC_EmitInteger32, 28,
75785 OPC_EmitRegisterI32, 0 ,
75786 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv8i8),
75787 MVT::v8i8, 4, 0, 1, 2, 3,
75788 14, MVT::v4i16,
75789 OPC_CheckPatternPredicate1,
75790 OPC_EmitInteger32, 28,
75791 OPC_EmitRegisterI32, 0 ,
75792 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv4i16),
75793 MVT::v4i16, 4, 0, 1, 2, 3,
75794 14, MVT::v2i32,
75795 OPC_CheckPatternPredicate1,
75796 OPC_EmitInteger32, 28,
75797 OPC_EmitRegisterI32, 0 ,
75798 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv2i32),
75799 MVT::v2i32, 4, 0, 1, 2, 3,
75800 14, MVT::v1i64,
75801 OPC_CheckPatternPredicate1,
75802 OPC_EmitInteger32, 28,
75803 OPC_EmitRegisterI32, 0 ,
75804 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv1i64),
75805 MVT::v1i64, 4, 0, 1, 2, 3,
75806 41, MVT::v16i8,
75807 OPC_Scope, 14,
75808 OPC_CheckPatternPredicate1,
75809 OPC_EmitInteger32, 28,
75810 OPC_EmitRegisterI32, 0 ,
75811 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv16i8),
75812 MVT::v16i8, 4, 0, 1, 2, 3,
75813 23,
75814 OPC_CheckPatternPredicate0,
75815 OPC_EmitInteger32, 0,
75816 OPC_EmitRegisterI32, 0 ,
75817 OPC_EmitRegisterI32, 0 ,
75818 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75819 MVT::v4i32, 0,
75820 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs8),
75821 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75822 0,
75823 41, MVT::v8i16,
75824 OPC_Scope, 14,
75825 OPC_CheckPatternPredicate1,
75826 OPC_EmitInteger32, 28,
75827 OPC_EmitRegisterI32, 0 ,
75828 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv8i16),
75829 MVT::v8i16, 4, 0, 1, 2, 3,
75830 23,
75831 OPC_CheckPatternPredicate0,
75832 OPC_EmitInteger32, 0,
75833 OPC_EmitRegisterI32, 0 ,
75834 OPC_EmitRegisterI32, 0 ,
75835 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75836 MVT::v4i32, 0,
75837 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs16),
75838 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75839 0,
75840 41, MVT::v4i32,
75841 OPC_Scope, 14,
75842 OPC_CheckPatternPredicate1,
75843 OPC_EmitInteger32, 28,
75844 OPC_EmitRegisterI32, 0 ,
75845 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv4i32),
75846 MVT::v4i32, 4, 0, 1, 2, 3,
75847 23,
75848 OPC_CheckPatternPredicate0,
75849 OPC_EmitInteger32, 0,
75850 OPC_EmitRegisterI32, 0 ,
75851 OPC_EmitRegisterI32, 0 ,
75852 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75853 MVT::v4i32, 0,
75854 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VSHL_by_vecs32),
75855 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75856 0,
75857 14, MVT::v2i64,
75858 OPC_CheckPatternPredicate1,
75859 OPC_EmitInteger32, 28,
75860 OPC_EmitRegisterI32, 0 ,
75861 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSHLsv2i64),
75862 MVT::v2i64, 4, 0, 1, 2, 3,
75863 0,
75864 0,
75865 39|128,1, TARGET_VAL(ARMISD::VQDMULH),
75866 OPC_RecordChild0,
75867 OPC_Scope, 84,
75868 OPC_MoveChild1,
75869 OPC_CheckOpcode, TARGET_VAL(ARMISD::VDUP),
75870 OPC_RecordChild0,
75871 OPC_CheckChild0TypeI32,
75872 OPC_MoveParent,
75873 OPC_SwitchType , 23, MVT::v16i8,
75874 OPC_CheckPatternPredicate0,
75875 OPC_EmitInteger32, 0,
75876 OPC_EmitRegisterI32, 0 ,
75877 OPC_EmitRegisterI32, 0 ,
75878 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75879 MVT::v4i32, 0,
75880 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s8),
75881 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75882 23, MVT::v8i16,
75883 OPC_CheckPatternPredicate0,
75884 OPC_EmitInteger32, 0,
75885 OPC_EmitRegisterI32, 0 ,
75886 OPC_EmitRegisterI32, 0 ,
75887 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75888 MVT::v4i32, 0,
75889 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s16),
75890 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75891 23, MVT::v4i32,
75892 OPC_CheckPatternPredicate0,
75893 OPC_EmitInteger32, 0,
75894 OPC_EmitRegisterI32, 0 ,
75895 OPC_EmitRegisterI32, 0 ,
75896 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75897 MVT::v4i32, 0,
75898 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULH_qr_s32),
75899 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75900 0,
75901 78,
75902 OPC_RecordChild1,
75903 OPC_SwitchType , 23, MVT::v16i8,
75904 OPC_CheckPatternPredicate0,
75905 OPC_EmitInteger32, 0,
75906 OPC_EmitRegisterI32, 0 ,
75907 OPC_EmitRegisterI32, 0 ,
75908 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75909 MVT::v4i32, 0,
75910 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi8),
75911 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
75912 23, MVT::v8i16,
75913 OPC_CheckPatternPredicate0,
75914 OPC_EmitInteger32, 0,
75915 OPC_EmitRegisterI32, 0 ,
75916 OPC_EmitRegisterI32, 0 ,
75917 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75918 MVT::v4i32, 0,
75919 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi16),
75920 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
75921 23, MVT::v4i32,
75922 OPC_CheckPatternPredicate0,
75923 OPC_EmitInteger32, 0,
75924 OPC_EmitRegisterI32, 0 ,
75925 OPC_EmitRegisterI32, 0 ,
75926 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75927 MVT::v4i32, 0,
75928 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VQDMULHi32),
75929 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
75930 0,
75931 0,
75932 90, TARGET_VAL(ARMISD::VIDUP),
75933 OPC_RecordChild0,
75934 OPC_RecordChild1,
75935 OPC_MoveChild1,
75936 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
75937 OPC_MoveParent,
75938 OPC_SwitchType , 25, MVT::v16i8,
75939 OPC_CheckPatternPredicate0,
75940 OPC_EmitConvertToTarget1,
75941 OPC_EmitInteger32, 0,
75942 OPC_EmitRegisterI32, 0 ,
75943 OPC_EmitRegisterI32, 0 ,
75944 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75945 MVT::v4i32, 0,
75946 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VIDUPu8),
75947 MVT::v16i8, MVT::i32, 6, 0, 2, 3, 4, 5, 6,
75948 25, MVT::v8i16,
75949 OPC_CheckPatternPredicate0,
75950 OPC_EmitConvertToTarget1,
75951 OPC_EmitInteger32, 0,
75952 OPC_EmitRegisterI32, 0 ,
75953 OPC_EmitRegisterI32, 0 ,
75954 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75955 MVT::v4i32, 0,
75956 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VIDUPu16),
75957 MVT::v8i16, MVT::i32, 6, 0, 2, 3, 4, 5, 6,
75958 25, MVT::v4i32,
75959 OPC_CheckPatternPredicate0,
75960 OPC_EmitConvertToTarget1,
75961 OPC_EmitInteger32, 0,
75962 OPC_EmitRegisterI32, 0 ,
75963 OPC_EmitRegisterI32, 0 ,
75964 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
75965 MVT::v4i32, 0,
75966 OPC_MorphNodeTo2None, TARGET_VAL(ARM::MVE_VIDUPu32),
75967 MVT::v4i32, MVT::i32, 6, 0, 2, 3, 4, 5, 6,
75968 0,
75969 117, TARGET_VAL(ARMISD::VTST),
75970 OPC_RecordChild0,
75971 OPC_SwitchType , 17, MVT::v8i8,
75972 OPC_CheckChild0Type, MVT::v8i8,
75973 OPC_RecordChild1,
75974 OPC_CheckPatternPredicate1,
75975 OPC_EmitInteger32, 28,
75976 OPC_EmitRegisterI32, 0 ,
75977 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTSTv8i8),
75978 MVT::v8i8, 4, 0, 1, 2, 3,
75979 17, MVT::v4i16,
75980 OPC_CheckChild0Type, MVT::v4i16,
75981 OPC_RecordChild1,
75982 OPC_CheckPatternPredicate1,
75983 OPC_EmitInteger32, 28,
75984 OPC_EmitRegisterI32, 0 ,
75985 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTSTv4i16),
75986 MVT::v4i16, 4, 0, 1, 2, 3,
75987 17, MVT::v2i32,
75988 OPC_CheckChild0Type, MVT::v2i32,
75989 OPC_RecordChild1,
75990 OPC_CheckPatternPredicate1,
75991 OPC_EmitInteger32, 28,
75992 OPC_EmitRegisterI32, 0 ,
75993 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTSTv2i32),
75994 MVT::v2i32, 4, 0, 1, 2, 3,
75995 17, MVT::v16i8,
75996 OPC_CheckChild0Type, MVT::v16i8,
75997 OPC_RecordChild1,
75998 OPC_CheckPatternPredicate1,
75999 OPC_EmitInteger32, 28,
76000 OPC_EmitRegisterI32, 0 ,
76001 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTSTv16i8),
76002 MVT::v16i8, 4, 0, 1, 2, 3,
76003 17, MVT::v8i16,
76004 OPC_CheckChild0Type, MVT::v8i16,
76005 OPC_RecordChild1,
76006 OPC_CheckPatternPredicate1,
76007 OPC_EmitInteger32, 28,
76008 OPC_EmitRegisterI32, 0 ,
76009 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTSTv8i16),
76010 MVT::v8i16, 4, 0, 1, 2, 3,
76011 17, MVT::v4i32,
76012 OPC_CheckChild0Type, MVT::v4i32,
76013 OPC_RecordChild1,
76014 OPC_CheckPatternPredicate1,
76015 OPC_EmitInteger32, 28,
76016 OPC_EmitRegisterI32, 0 ,
76017 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTSTv4i32),
76018 MVT::v4i32, 4, 0, 1, 2, 3,
76019 0,
76020 39, TARGET_VAL(ARMISD::VBSP),
76021 OPC_RecordChild0,
76022 OPC_RecordChild1,
76023 OPC_RecordChild2,
76024 OPC_SwitchType , 15, MVT::v2i32,
76025 OPC_CheckPatternPredicate1,
76026 OPC_EmitInteger32, 28,
76027 OPC_EmitRegisterI32, 0 ,
76028 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPd),
76029 MVT::v2i32, 5, 0, 1, 2, 3, 4,
76030 15, MVT::v4i32,
76031 OPC_CheckPatternPredicate1,
76032 OPC_EmitInteger32, 28,
76033 OPC_EmitRegisterI32, 0 ,
76034 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VBSPq),
76035 MVT::v4i32, 5, 0, 1, 2, 3, 4,
76036 0,
76037 53|128,1, TARGET_VAL(ISD::ABDS),
76038 OPC_RecordChild0,
76039 OPC_RecordChild1,
76040 OPC_SwitchType , 14, MVT::v4i16,
76041 OPC_CheckPatternPredicate1,
76042 OPC_EmitInteger32, 28,
76043 OPC_EmitRegisterI32, 0 ,
76044 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDsv4i16),
76045 MVT::v4i16, 4, 0, 1, 2, 3,
76046 14, MVT::v2i32,
76047 OPC_CheckPatternPredicate1,
76048 OPC_EmitInteger32, 28,
76049 OPC_EmitRegisterI32, 0 ,
76050 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDsv2i32),
76051 MVT::v2i32, 4, 0, 1, 2, 3,
76052 41, MVT::v8i16,
76053 OPC_Scope, 14,
76054 OPC_CheckPatternPredicate1,
76055 OPC_EmitInteger32, 28,
76056 OPC_EmitRegisterI32, 0 ,
76057 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDsv8i16),
76058 MVT::v8i16, 4, 0, 1, 2, 3,
76059 23,
76060 OPC_CheckPatternPredicate0,
76061 OPC_EmitInteger32, 0,
76062 OPC_EmitRegisterI32, 0 ,
76063 OPC_EmitRegisterI32, 0 ,
76064 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76065 MVT::v4i32, 0,
76066 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs16),
76067 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
76068 0,
76069 41, MVT::v4i32,
76070 OPC_Scope, 14,
76071 OPC_CheckPatternPredicate1,
76072 OPC_EmitInteger32, 28,
76073 OPC_EmitRegisterI32, 0 ,
76074 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDsv4i32),
76075 MVT::v4i32, 4, 0, 1, 2, 3,
76076 23,
76077 OPC_CheckPatternPredicate0,
76078 OPC_EmitInteger32, 0,
76079 OPC_EmitRegisterI32, 0 ,
76080 OPC_EmitRegisterI32, 0 ,
76081 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76082 MVT::v4i32, 0,
76083 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs32),
76084 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
76085 0,
76086 14, MVT::v8i8,
76087 OPC_CheckPatternPredicate1,
76088 OPC_EmitInteger32, 28,
76089 OPC_EmitRegisterI32, 0 ,
76090 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDsv8i8),
76091 MVT::v8i8, 4, 0, 1, 2, 3,
76092 41, MVT::v16i8,
76093 OPC_Scope, 14,
76094 OPC_CheckPatternPredicate1,
76095 OPC_EmitInteger32, 28,
76096 OPC_EmitRegisterI32, 0 ,
76097 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDsv16i8),
76098 MVT::v16i8, 4, 0, 1, 2, 3,
76099 23,
76100 OPC_CheckPatternPredicate0,
76101 OPC_EmitInteger32, 0,
76102 OPC_EmitRegisterI32, 0 ,
76103 OPC_EmitRegisterI32, 0 ,
76104 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76105 MVT::v4i32, 0,
76106 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDs8),
76107 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
76108 0,
76109 0,
76110 53|128,1, TARGET_VAL(ISD::ABDU),
76111 OPC_RecordChild0,
76112 OPC_RecordChild1,
76113 OPC_SwitchType , 14, MVT::v4i16,
76114 OPC_CheckPatternPredicate1,
76115 OPC_EmitInteger32, 28,
76116 OPC_EmitRegisterI32, 0 ,
76117 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDuv4i16),
76118 MVT::v4i16, 4, 0, 1, 2, 3,
76119 14, MVT::v2i32,
76120 OPC_CheckPatternPredicate1,
76121 OPC_EmitInteger32, 28,
76122 OPC_EmitRegisterI32, 0 ,
76123 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDuv2i32),
76124 MVT::v2i32, 4, 0, 1, 2, 3,
76125 41, MVT::v8i16,
76126 OPC_Scope, 14,
76127 OPC_CheckPatternPredicate1,
76128 OPC_EmitInteger32, 28,
76129 OPC_EmitRegisterI32, 0 ,
76130 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDuv8i16),
76131 MVT::v8i16, 4, 0, 1, 2, 3,
76132 23,
76133 OPC_CheckPatternPredicate0,
76134 OPC_EmitInteger32, 0,
76135 OPC_EmitRegisterI32, 0 ,
76136 OPC_EmitRegisterI32, 0 ,
76137 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76138 MVT::v4i32, 0,
76139 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu16),
76140 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
76141 0,
76142 41, MVT::v4i32,
76143 OPC_Scope, 14,
76144 OPC_CheckPatternPredicate1,
76145 OPC_EmitInteger32, 28,
76146 OPC_EmitRegisterI32, 0 ,
76147 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDuv4i32),
76148 MVT::v4i32, 4, 0, 1, 2, 3,
76149 23,
76150 OPC_CheckPatternPredicate0,
76151 OPC_EmitInteger32, 0,
76152 OPC_EmitRegisterI32, 0 ,
76153 OPC_EmitRegisterI32, 0 ,
76154 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76155 MVT::v4i32, 0,
76156 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu32),
76157 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
76158 0,
76159 14, MVT::v8i8,
76160 OPC_CheckPatternPredicate1,
76161 OPC_EmitInteger32, 28,
76162 OPC_EmitRegisterI32, 0 ,
76163 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDuv8i8),
76164 MVT::v8i8, 4, 0, 1, 2, 3,
76165 41, MVT::v16i8,
76166 OPC_Scope, 14,
76167 OPC_CheckPatternPredicate1,
76168 OPC_EmitInteger32, 28,
76169 OPC_EmitRegisterI32, 0 ,
76170 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABDuv16i8),
76171 MVT::v16i8, 4, 0, 1, 2, 3,
76172 23,
76173 OPC_CheckPatternPredicate0,
76174 OPC_EmitInteger32, 0,
76175 OPC_EmitRegisterI32, 0 ,
76176 OPC_EmitRegisterI32, 0 ,
76177 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76178 MVT::v4i32, 0,
76179 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABDu8),
76180 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
76181 0,
76182 0,
76183 53|128,1, TARGET_VAL(ISD::SMAX),
76184 OPC_RecordChild0,
76185 OPC_RecordChild1,
76186 OPC_SwitchType , 14, MVT::v4i16,
76187 OPC_CheckPatternPredicate1,
76188 OPC_EmitInteger32, 28,
76189 OPC_EmitRegisterI32, 0 ,
76190 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXsv4i16),
76191 MVT::v4i16, 4, 0, 1, 2, 3,
76192 14, MVT::v2i32,
76193 OPC_CheckPatternPredicate1,
76194 OPC_EmitInteger32, 28,
76195 OPC_EmitRegisterI32, 0 ,
76196 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXsv2i32),
76197 MVT::v2i32, 4, 0, 1, 2, 3,
76198 41, MVT::v8i16,
76199 OPC_Scope, 14,
76200 OPC_CheckPatternPredicate1,
76201 OPC_EmitInteger32, 28,
76202 OPC_EmitRegisterI32, 0 ,
76203 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXsv8i16),
76204 MVT::v8i16, 4, 0, 1, 2, 3,
76205 23,
76206 OPC_CheckPatternPredicate0,
76207 OPC_EmitInteger32, 0,
76208 OPC_EmitRegisterI32, 0 ,
76209 OPC_EmitRegisterI32, 0 ,
76210 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76211 MVT::v4i32, 0,
76212 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXs16),
76213 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
76214 0,
76215 41, MVT::v4i32,
76216 OPC_Scope, 14,
76217 OPC_CheckPatternPredicate1,
76218 OPC_EmitInteger32, 28,
76219 OPC_EmitRegisterI32, 0 ,
76220 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXsv4i32),
76221 MVT::v4i32, 4, 0, 1, 2, 3,
76222 23,
76223 OPC_CheckPatternPredicate0,
76224 OPC_EmitInteger32, 0,
76225 OPC_EmitRegisterI32, 0 ,
76226 OPC_EmitRegisterI32, 0 ,
76227 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76228 MVT::v4i32, 0,
76229 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXs32),
76230 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
76231 0,
76232 14, MVT::v8i8,
76233 OPC_CheckPatternPredicate1,
76234 OPC_EmitInteger32, 28,
76235 OPC_EmitRegisterI32, 0 ,
76236 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXsv8i8),
76237 MVT::v8i8, 4, 0, 1, 2, 3,
76238 41, MVT::v16i8,
76239 OPC_Scope, 14,
76240 OPC_CheckPatternPredicate1,
76241 OPC_EmitInteger32, 28,
76242 OPC_EmitRegisterI32, 0 ,
76243 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMAXsv16i8),
76244 MVT::v16i8, 4, 0, 1, 2, 3,
76245 23,
76246 OPC_CheckPatternPredicate0,
76247 OPC_EmitInteger32, 0,
76248 OPC_EmitRegisterI32, 0 ,
76249 OPC_EmitRegisterI32, 0 ,
76250 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76251 MVT::v4i32, 0,
76252 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMAXs8),
76253 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
76254 0,
76255 0,
76256 53|128,1, TARGET_VAL(ISD::SMIN),
76257 OPC_RecordChild0,
76258 OPC_RecordChild1,
76259 OPC_SwitchType , 14, MVT::v4i16,
76260 OPC_CheckPatternPredicate1,
76261 OPC_EmitInteger32, 28,
76262 OPC_EmitRegisterI32, 0 ,
76263 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINsv4i16),
76264 MVT::v4i16, 4, 0, 1, 2, 3,
76265 14, MVT::v2i32,
76266 OPC_CheckPatternPredicate1,
76267 OPC_EmitInteger32, 28,
76268 OPC_EmitRegisterI32, 0 ,
76269 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINsv2i32),
76270 MVT::v2i32, 4, 0, 1, 2, 3,
76271 41, MVT::v8i16,
76272 OPC_Scope, 14,
76273 OPC_CheckPatternPredicate1,
76274 OPC_EmitInteger32, 28,
76275 OPC_EmitRegisterI32, 0 ,
76276 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINsv8i16),
76277 MVT::v8i16, 4, 0, 1, 2, 3,
76278 23,
76279 OPC_CheckPatternPredicate0,
76280 OPC_EmitInteger32, 0,
76281 OPC_EmitRegisterI32, 0 ,
76282 OPC_EmitRegisterI32, 0 ,
76283 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76284 MVT::v4i32, 0,
76285 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINs16),
76286 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
76287 0,
76288 41, MVT::v4i32,
76289 OPC_Scope, 14,
76290 OPC_CheckPatternPredicate1,
76291 OPC_EmitInteger32, 28,
76292 OPC_EmitRegisterI32, 0 ,
76293 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINsv4i32),
76294 MVT::v4i32, 4, 0, 1, 2, 3,
76295 23,
76296 OPC_CheckPatternPredicate0,
76297 OPC_EmitInteger32, 0,
76298 OPC_EmitRegisterI32, 0 ,
76299 OPC_EmitRegisterI32, 0 ,
76300 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76301 MVT::v4i32, 0,
76302 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINs32),
76303 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
76304 0,
76305 14, MVT::v8i8,
76306 OPC_CheckPatternPredicate1,
76307 OPC_EmitInteger32, 28,
76308 OPC_EmitRegisterI32, 0 ,
76309 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINsv8i8),
76310 MVT::v8i8, 4, 0, 1, 2, 3,
76311 41, MVT::v16i8,
76312 OPC_Scope, 14,
76313 OPC_CheckPatternPredicate1,
76314 OPC_EmitInteger32, 28,
76315 OPC_EmitRegisterI32, 0 ,
76316 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMINsv16i8),
76317 MVT::v16i8, 4, 0, 1, 2, 3,
76318 23,
76319 OPC_CheckPatternPredicate0,
76320 OPC_EmitInteger32, 0,
76321 OPC_EmitRegisterI32, 0 ,
76322 OPC_EmitRegisterI32, 0 ,
76323 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76324 MVT::v4i32, 0,
76325 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMINs8),
76326 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
76327 0,
76328 0,
76329 43|128,1, TARGET_VAL(ISD::ABS),
76330 OPC_RecordChild0,
76331 OPC_SwitchType , 13, MVT::v8i8,
76332 OPC_CheckPatternPredicate1,
76333 OPC_EmitInteger32, 28,
76334 OPC_EmitRegisterI32, 0 ,
76335 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABSv8i8),
76336 MVT::v8i8, 3, 0, 1, 2,
76337 13, MVT::v4i16,
76338 OPC_CheckPatternPredicate1,
76339 OPC_EmitInteger32, 28,
76340 OPC_EmitRegisterI32, 0 ,
76341 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABSv4i16),
76342 MVT::v4i16, 3, 0, 1, 2,
76343 13, MVT::v2i32,
76344 OPC_CheckPatternPredicate1,
76345 OPC_EmitInteger32, 28,
76346 OPC_EmitRegisterI32, 0 ,
76347 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABSv2i32),
76348 MVT::v2i32, 3, 0, 1, 2,
76349 39, MVT::v16i8,
76350 OPC_Scope, 13,
76351 OPC_CheckPatternPredicate1,
76352 OPC_EmitInteger32, 28,
76353 OPC_EmitRegisterI32, 0 ,
76354 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABSv16i8),
76355 MVT::v16i8, 3, 0, 1, 2,
76356 22,
76357 OPC_CheckPatternPredicate0,
76358 OPC_EmitInteger32, 0,
76359 OPC_EmitRegisterI32, 0 ,
76360 OPC_EmitRegisterI32, 0 ,
76361 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76362 MVT::v4i32, 0,
76363 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABSs8),
76364 MVT::v16i8, 5, 0, 1, 2, 3, 4,
76365 0,
76366 39, MVT::v8i16,
76367 OPC_Scope, 13,
76368 OPC_CheckPatternPredicate1,
76369 OPC_EmitInteger32, 28,
76370 OPC_EmitRegisterI32, 0 ,
76371 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABSv8i16),
76372 MVT::v8i16, 3, 0, 1, 2,
76373 22,
76374 OPC_CheckPatternPredicate0,
76375 OPC_EmitInteger32, 0,
76376 OPC_EmitRegisterI32, 0 ,
76377 OPC_EmitRegisterI32, 0 ,
76378 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76379 MVT::v4i32, 0,
76380 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABSs16),
76381 MVT::v8i16, 5, 0, 1, 2, 3, 4,
76382 0,
76383 39, MVT::v4i32,
76384 OPC_Scope, 13,
76385 OPC_CheckPatternPredicate1,
76386 OPC_EmitInteger32, 28,
76387 OPC_EmitRegisterI32, 0 ,
76388 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VABSv4i32),
76389 MVT::v4i32, 3, 0, 1, 2,
76390 22,
76391 OPC_CheckPatternPredicate0,
76392 OPC_EmitInteger32, 0,
76393 OPC_EmitRegisterI32, 0 ,
76394 OPC_EmitRegisterI32, 0 ,
76395 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76396 MVT::v4i32, 0,
76397 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VABSs32),
76398 MVT::v4i32, 5, 0, 1, 2, 3, 4,
76399 0,
76400 0,
76401 37, TARGET_VAL(ISD::CTPOP),
76402 OPC_RecordChild0,
76403 OPC_SwitchType , 15, MVT::v8i8,
76404 OPC_CheckChild0Type, MVT::v8i8,
76405 OPC_CheckPatternPredicate1,
76406 OPC_EmitInteger32, 28,
76407 OPC_EmitRegisterI32, 0 ,
76408 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCNTd),
76409 MVT::v8i8, 3, 0, 1, 2,
76410 15, MVT::v16i8,
76411 OPC_CheckChild0Type, MVT::v16i8,
76412 OPC_CheckPatternPredicate1,
76413 OPC_EmitInteger32, 28,
76414 OPC_EmitRegisterI32, 0 ,
76415 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VCNTq),
76416 MVT::v16i8, 3, 0, 1, 2,
76417 0,
76418 66|128,2, TARGET_VAL(ISD::SIGN_EXTEND),
76419 OPC_RecordChild0,
76420 OPC_SwitchType , 83, MVT::v8i16,
76421 OPC_Scope, 15,
76422 OPC_CheckChild0Type, MVT::v8i8,
76423 OPC_CheckPatternPredicate1,
76424 OPC_EmitInteger32, 28,
76425 OPC_EmitRegisterI32, 0 ,
76426 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVLsv8i16),
76427 MVT::v8i16, 3, 0, 1, 2,
76428 64,
76429 OPC_CheckChild0Type, MVT::v8i1,
76430 OPC_CheckPatternPredicate0,
76431 OPC_EmitInteger32, 126|128,3,
76432 OPC_EmitInteger32, 0,
76433 OPC_EmitRegisterI32, 0 ,
76434 OPC_EmitRegisterI32, 0 ,
76435 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76436 MVT::v4i32, 0,
76437 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi8),
76438 MVT::v16i8, 5, 1, 2, 3, 4, 5,
76439 OPC_EmitInteger32, 0,
76440 OPC_EmitInteger32, 0,
76441 OPC_EmitRegisterI32, 0 ,
76442 OPC_EmitRegisterI32, 0 ,
76443 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76444 MVT::v4i32, 0,
76445 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
76446 MVT::v16i8, 5, 7, 8, 9, 10, 11,
76447 OPC_EmitInteger32, 0,
76448 OPC_EmitRegisterI32, 0 ,
76449 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
76450 MVT::v8i16, 5, 6, 12, 13, 0, 14,
76451 0,
76452 83, MVT::v4i32,
76453 OPC_Scope, 15,
76454 OPC_CheckChild0Type, MVT::v4i16,
76455 OPC_CheckPatternPredicate1,
76456 OPC_EmitInteger32, 28,
76457 OPC_EmitRegisterI32, 0 ,
76458 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVLsv4i32),
76459 MVT::v4i32, 3, 0, 1, 2,
76460 64,
76461 OPC_CheckChild0Type, MVT::v4i1,
76462 OPC_CheckPatternPredicate0,
76463 OPC_EmitInteger32, 126|128,3,
76464 OPC_EmitInteger32, 0,
76465 OPC_EmitRegisterI32, 0 ,
76466 OPC_EmitRegisterI32, 0 ,
76467 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76468 MVT::v4i32, 0,
76469 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi8),
76470 MVT::v16i8, 5, 1, 2, 3, 4, 5,
76471 OPC_EmitInteger32, 0,
76472 OPC_EmitInteger32, 0,
76473 OPC_EmitRegisterI32, 0 ,
76474 OPC_EmitRegisterI32, 0 ,
76475 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76476 MVT::v4i32, 0,
76477 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
76478 MVT::v16i8, 5, 7, 8, 9, 10, 11,
76479 OPC_EmitInteger32, 0,
76480 OPC_EmitRegisterI32, 0 ,
76481 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
76482 MVT::v4i32, 5, 6, 12, 13, 0, 14,
76483 0,
76484 83, MVT::v2i64,
76485 OPC_Scope, 15,
76486 OPC_CheckChild0Type, MVT::v2i32,
76487 OPC_CheckPatternPredicate1,
76488 OPC_EmitInteger32, 28,
76489 OPC_EmitRegisterI32, 0 ,
76490 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVLsv2i64),
76491 MVT::v2i64, 3, 0, 1, 2,
76492 64,
76493 OPC_CheckChild0Type, MVT::v2i1,
76494 OPC_CheckPatternPredicate0,
76495 OPC_EmitInteger32, 126|128,3,
76496 OPC_EmitInteger32, 0,
76497 OPC_EmitRegisterI32, 0 ,
76498 OPC_EmitRegisterI32, 0 ,
76499 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76500 MVT::v4i32, 0,
76501 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi8),
76502 MVT::v16i8, 5, 1, 2, 3, 4, 5,
76503 OPC_EmitInteger32, 0,
76504 OPC_EmitInteger32, 0,
76505 OPC_EmitRegisterI32, 0 ,
76506 OPC_EmitRegisterI32, 0 ,
76507 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76508 MVT::v4i32, 0,
76509 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
76510 MVT::v16i8, 5, 7, 8, 9, 10, 11,
76511 OPC_EmitInteger32, 0,
76512 OPC_EmitRegisterI32, 0 ,
76513 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
76514 MVT::v2i64, 5, 6, 12, 13, 0, 14,
76515 0,
76516 62, MVT::v16i8,
76517 OPC_CheckPatternPredicate0,
76518 OPC_EmitInteger32, 126|128,3,
76519 OPC_EmitInteger32, 0,
76520 OPC_EmitRegisterI32, 0 ,
76521 OPC_EmitRegisterI32, 0 ,
76522 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76523 MVT::v4i32, 0,
76524 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi8),
76525 MVT::v16i8, 5, 1, 2, 3, 4, 5,
76526 OPC_EmitInteger32, 0,
76527 OPC_EmitInteger32, 0,
76528 OPC_EmitRegisterI32, 0 ,
76529 OPC_EmitRegisterI32, 0 ,
76530 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76531 MVT::v4i32, 0,
76532 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi8),
76533 MVT::v16i8, 5, 7, 8, 9, 10, 11,
76534 OPC_EmitInteger32, 0,
76535 OPC_EmitRegisterI32, 0 ,
76536 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
76537 MVT::v16i8, 5, 6, 12, 13, 0, 14,
76538 0,
76539 62|128,2, TARGET_VAL(ISD::ANY_EXTEND),
76540 OPC_RecordChild0,
76541 OPC_SwitchType , 82, MVT::v8i16,
76542 OPC_Scope, 15,
76543 OPC_CheckChild0Type, MVT::v8i8,
76544 OPC_CheckPatternPredicate1,
76545 OPC_EmitInteger32, 28,
76546 OPC_EmitRegisterI32, 0 ,
76547 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVLuv8i16),
76548 MVT::v8i16, 3, 0, 1, 2,
76549 63,
76550 OPC_CheckChild0Type, MVT::v8i1,
76551 OPC_CheckPatternPredicate0,
76552 OPC_EmitInteger32, 2,
76553 OPC_EmitInteger32, 0,
76554 OPC_EmitRegisterI32, 0 ,
76555 OPC_EmitRegisterI32, 0 ,
76556 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76557 MVT::v4i32, 0,
76558 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
76559 MVT::v16i8, 5, 1, 2, 3, 4, 5,
76560 OPC_EmitInteger32, 0,
76561 OPC_EmitInteger32, 0,
76562 OPC_EmitRegisterI32, 0 ,
76563 OPC_EmitRegisterI32, 0 ,
76564 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76565 MVT::v4i32, 0,
76566 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi16),
76567 MVT::v16i8, 5, 7, 8, 9, 10, 11,
76568 OPC_EmitInteger32, 0,
76569 OPC_EmitRegisterI32, 0 ,
76570 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
76571 MVT::v8i16, 5, 6, 12, 13, 0, 14,
76572 0,
76573 82, MVT::v4i32,
76574 OPC_Scope, 15,
76575 OPC_CheckChild0Type, MVT::v4i16,
76576 OPC_CheckPatternPredicate1,
76577 OPC_EmitInteger32, 28,
76578 OPC_EmitRegisterI32, 0 ,
76579 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVLuv4i32),
76580 MVT::v4i32, 3, 0, 1, 2,
76581 63,
76582 OPC_CheckChild0Type, MVT::v4i1,
76583 OPC_CheckPatternPredicate0,
76584 OPC_EmitInteger32, 2,
76585 OPC_EmitInteger32, 0,
76586 OPC_EmitRegisterI32, 0 ,
76587 OPC_EmitRegisterI32, 0 ,
76588 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76589 MVT::v4i32, 0,
76590 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
76591 MVT::v16i8, 5, 1, 2, 3, 4, 5,
76592 OPC_EmitInteger32, 0,
76593 OPC_EmitInteger32, 0,
76594 OPC_EmitRegisterI32, 0 ,
76595 OPC_EmitRegisterI32, 0 ,
76596 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76597 MVT::v4i32, 0,
76598 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
76599 MVT::v16i8, 5, 7, 8, 9, 10, 11,
76600 OPC_EmitInteger32, 0,
76601 OPC_EmitRegisterI32, 0 ,
76602 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
76603 MVT::v4i32, 5, 6, 12, 13, 0, 14,
76604 0,
76605 82, MVT::v2i64,
76606 OPC_Scope, 15,
76607 OPC_CheckChild0Type, MVT::v2i32,
76608 OPC_CheckPatternPredicate1,
76609 OPC_EmitInteger32, 28,
76610 OPC_EmitRegisterI32, 0 ,
76611 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVLuv2i64),
76612 MVT::v2i64, 3, 0, 1, 2,
76613 63,
76614 OPC_CheckChild0Type, MVT::v2i1,
76615 OPC_CheckPatternPredicate0,
76616 OPC_EmitInteger32, 2,
76617 OPC_EmitInteger32, 0,
76618 OPC_EmitRegisterI32, 0 ,
76619 OPC_EmitRegisterI32, 0 ,
76620 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76621 MVT::v4i32, 0,
76622 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi64),
76623 MVT::v16i8, 5, 1, 2, 3, 4, 5,
76624 OPC_EmitInteger32, 0,
76625 OPC_EmitInteger32, 0,
76626 OPC_EmitRegisterI32, 0 ,
76627 OPC_EmitRegisterI32, 0 ,
76628 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76629 MVT::v4i32, 0,
76630 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi32),
76631 MVT::v16i8, 5, 7, 8, 9, 10, 11,
76632 OPC_EmitInteger32, 0,
76633 OPC_EmitRegisterI32, 0 ,
76634 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
76635 MVT::v2i64, 5, 6, 12, 13, 0, 14,
76636 0,
76637 61, MVT::v16i8,
76638 OPC_CheckPatternPredicate0,
76639 OPC_EmitInteger32, 2,
76640 OPC_EmitInteger32, 0,
76641 OPC_EmitRegisterI32, 0 ,
76642 OPC_EmitRegisterI32, 0 ,
76643 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76644 MVT::v4i32, 0,
76645 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi8),
76646 MVT::v16i8, 5, 1, 2, 3, 4, 5,
76647 OPC_EmitInteger32, 0,
76648 OPC_EmitInteger32, 0,
76649 OPC_EmitRegisterI32, 0 ,
76650 OPC_EmitRegisterI32, 0 ,
76651 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76652 MVT::v4i32, 0,
76653 OPC_EmitNode1None, TARGET_VAL(ARM::MVE_VMOVimmi8),
76654 MVT::v16i8, 5, 7, 8, 9, 10, 11,
76655 OPC_EmitInteger32, 0,
76656 OPC_EmitRegisterI32, 0 ,
76657 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VPSEL),
76658 MVT::v16i8, 5, 6, 12, 13, 0, 14,
76659 0,
76660 57|128,2, TARGET_VAL(ARMISD::VREV64),
76661 OPC_RecordChild0,
76662 OPC_SwitchType , 13, MVT::v8i8,
76663 OPC_CheckPatternPredicate1,
76664 OPC_EmitInteger32, 28,
76665 OPC_EmitRegisterI32, 0 ,
76666 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d8),
76667 MVT::v8i8, 3, 0, 1, 2,
76668 13, MVT::v4i16,
76669 OPC_CheckPatternPredicate1,
76670 OPC_EmitInteger32, 28,
76671 OPC_EmitRegisterI32, 0 ,
76672 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
76673 MVT::v4i16, 3, 0, 1, 2,
76674 13, MVT::v2i32,
76675 OPC_CheckPatternPredicate1,
76676 OPC_EmitInteger32, 28,
76677 OPC_EmitRegisterI32, 0 ,
76678 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d32),
76679 MVT::v2i32, 3, 0, 1, 2,
76680 39, MVT::v16i8,
76681 OPC_Scope, 13,
76682 OPC_CheckPatternPredicate1,
76683 OPC_EmitInteger32, 28,
76684 OPC_EmitRegisterI32, 0 ,
76685 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q8),
76686 MVT::v16i8, 3, 0, 1, 2,
76687 22,
76688 OPC_CheckPatternPredicate0,
76689 OPC_EmitInteger32, 0,
76690 OPC_EmitRegisterI32, 0 ,
76691 OPC_EmitRegisterI32, 0 ,
76692 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76693 MVT::v4i32, 0,
76694 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_8),
76695 MVT::v16i8, 5, 0, 1, 2, 3, 4,
76696 0,
76697 39, MVT::v8i16,
76698 OPC_Scope, 13,
76699 OPC_CheckPatternPredicate1,
76700 OPC_EmitInteger32, 28,
76701 OPC_EmitRegisterI32, 0 ,
76702 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
76703 MVT::v8i16, 3, 0, 1, 2,
76704 22,
76705 OPC_CheckPatternPredicate0,
76706 OPC_EmitInteger32, 0,
76707 OPC_EmitRegisterI32, 0 ,
76708 OPC_EmitRegisterI32, 0 ,
76709 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76710 MVT::v4i32, 0,
76711 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
76712 MVT::v8i16, 5, 0, 1, 2, 3, 4,
76713 0,
76714 39, MVT::v4i32,
76715 OPC_Scope, 13,
76716 OPC_CheckPatternPredicate1,
76717 OPC_EmitInteger32, 28,
76718 OPC_EmitRegisterI32, 0 ,
76719 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q32),
76720 MVT::v4i32, 3, 0, 1, 2,
76721 22,
76722 OPC_CheckPatternPredicate0,
76723 OPC_EmitInteger32, 0,
76724 OPC_EmitRegisterI32, 0 ,
76725 OPC_EmitRegisterI32, 0 ,
76726 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76727 MVT::v4i32, 0,
76728 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
76729 MVT::v4i32, 5, 0, 1, 2, 3, 4,
76730 0,
76731 13, MVT::v2f32,
76732 OPC_CheckPatternPredicate1,
76733 OPC_EmitInteger32, 28,
76734 OPC_EmitRegisterI32, 0 ,
76735 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d32),
76736 MVT::v2f32, 3, 0, 1, 2,
76737 39, MVT::v4f32,
76738 OPC_Scope, 13,
76739 OPC_CheckPatternPredicate1,
76740 OPC_EmitInteger32, 28,
76741 OPC_EmitRegisterI32, 0 ,
76742 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q32),
76743 MVT::v4f32, 3, 0, 1, 2,
76744 22,
76745 OPC_CheckPatternPredicate0,
76746 OPC_EmitInteger32, 0,
76747 OPC_EmitRegisterI32, 0 ,
76748 OPC_EmitRegisterI32, 0 ,
76749 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76750 MVT::v4i32, 0,
76751 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_32),
76752 MVT::v4f32, 5, 0, 1, 2, 3, 4,
76753 0,
76754 39, MVT::v8f16,
76755 OPC_Scope, 13,
76756 OPC_CheckPatternPredicate1,
76757 OPC_EmitInteger32, 28,
76758 OPC_EmitRegisterI32, 0 ,
76759 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
76760 MVT::v8f16, 3, 0, 1, 2,
76761 22,
76762 OPC_CheckPatternPredicate0,
76763 OPC_EmitInteger32, 0,
76764 OPC_EmitRegisterI32, 0 ,
76765 OPC_EmitRegisterI32, 0 ,
76766 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76767 MVT::v4i32, 0,
76768 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV64_16),
76769 MVT::v8f16, 5, 0, 1, 2, 3, 4,
76770 0,
76771 13, MVT::v4f16,
76772 OPC_CheckPatternPredicate1,
76773 OPC_EmitInteger32, 28,
76774 OPC_EmitRegisterI32, 0 ,
76775 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
76776 MVT::v4f16, 3, 0, 1, 2,
76777 13, MVT::v8bf16,
76778 OPC_CheckPatternPredicate1,
76779 OPC_EmitInteger32, 28,
76780 OPC_EmitRegisterI32, 0 ,
76781 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64q16),
76782 MVT::v8bf16, 3, 0, 1, 2,
76783 13, MVT::v4bf16,
76784 OPC_CheckPatternPredicate1,
76785 OPC_EmitInteger32, 28,
76786 OPC_EmitRegisterI32, 0 ,
76787 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV64d16),
76788 MVT::v4bf16, 3, 0, 1, 2,
76789 0,
76790 73|128,1, TARGET_VAL(ARMISD::VREV32),
76791 OPC_RecordChild0,
76792 OPC_SwitchType , 13, MVT::v8i8,
76793 OPC_CheckPatternPredicate1,
76794 OPC_EmitInteger32, 28,
76795 OPC_EmitRegisterI32, 0 ,
76796 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d8),
76797 MVT::v8i8, 3, 0, 1, 2,
76798 13, MVT::v4i16,
76799 OPC_CheckPatternPredicate1,
76800 OPC_EmitInteger32, 28,
76801 OPC_EmitRegisterI32, 0 ,
76802 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
76803 MVT::v4i16, 3, 0, 1, 2,
76804 39, MVT::v16i8,
76805 OPC_Scope, 13,
76806 OPC_CheckPatternPredicate1,
76807 OPC_EmitInteger32, 28,
76808 OPC_EmitRegisterI32, 0 ,
76809 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q8),
76810 MVT::v16i8, 3, 0, 1, 2,
76811 22,
76812 OPC_CheckPatternPredicate0,
76813 OPC_EmitInteger32, 0,
76814 OPC_EmitRegisterI32, 0 ,
76815 OPC_EmitRegisterI32, 0 ,
76816 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76817 MVT::v4i32, 0,
76818 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_8),
76819 MVT::v16i8, 5, 0, 1, 2, 3, 4,
76820 0,
76821 39, MVT::v8i16,
76822 OPC_Scope, 13,
76823 OPC_CheckPatternPredicate1,
76824 OPC_EmitInteger32, 28,
76825 OPC_EmitRegisterI32, 0 ,
76826 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
76827 MVT::v8i16, 3, 0, 1, 2,
76828 22,
76829 OPC_CheckPatternPredicate0,
76830 OPC_EmitInteger32, 0,
76831 OPC_EmitRegisterI32, 0 ,
76832 OPC_EmitRegisterI32, 0 ,
76833 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76834 MVT::v4i32, 0,
76835 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
76836 MVT::v8i16, 5, 0, 1, 2, 3, 4,
76837 0,
76838 39, MVT::v8f16,
76839 OPC_Scope, 13,
76840 OPC_CheckPatternPredicate1,
76841 OPC_EmitInteger32, 28,
76842 OPC_EmitRegisterI32, 0 ,
76843 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
76844 MVT::v8f16, 3, 0, 1, 2,
76845 22,
76846 OPC_CheckPatternPredicate0,
76847 OPC_EmitInteger32, 0,
76848 OPC_EmitRegisterI32, 0 ,
76849 OPC_EmitRegisterI32, 0 ,
76850 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76851 MVT::v4i32, 0,
76852 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV32_16),
76853 MVT::v8f16, 5, 0, 1, 2, 3, 4,
76854 0,
76855 13, MVT::v4f16,
76856 OPC_CheckPatternPredicate1,
76857 OPC_EmitInteger32, 28,
76858 OPC_EmitRegisterI32, 0 ,
76859 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
76860 MVT::v4f16, 3, 0, 1, 2,
76861 13, MVT::v8bf16,
76862 OPC_CheckPatternPredicate1,
76863 OPC_EmitInteger32, 28,
76864 OPC_EmitRegisterI32, 0 ,
76865 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32q16),
76866 MVT::v8bf16, 3, 0, 1, 2,
76867 13, MVT::v4bf16,
76868 OPC_CheckPatternPredicate1,
76869 OPC_EmitInteger32, 28,
76870 OPC_EmitRegisterI32, 0 ,
76871 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV32d16),
76872 MVT::v4bf16, 3, 0, 1, 2,
76873 0,
76874 59, TARGET_VAL(ARMISD::VREV16),
76875 OPC_RecordChild0,
76876 OPC_SwitchType , 13, MVT::v8i8,
76877 OPC_CheckPatternPredicate1,
76878 OPC_EmitInteger32, 28,
76879 OPC_EmitRegisterI32, 0 ,
76880 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16d8),
76881 MVT::v8i8, 3, 0, 1, 2,
76882 39, MVT::v16i8,
76883 OPC_Scope, 13,
76884 OPC_CheckPatternPredicate1,
76885 OPC_EmitInteger32, 28,
76886 OPC_EmitRegisterI32, 0 ,
76887 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VREV16q8),
76888 MVT::v16i8, 3, 0, 1, 2,
76889 22,
76890 OPC_CheckPatternPredicate0,
76891 OPC_EmitInteger32, 0,
76892 OPC_EmitRegisterI32, 0 ,
76893 OPC_EmitRegisterI32, 0 ,
76894 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76895 MVT::v4i32, 0,
76896 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VREV16_8),
76897 MVT::v16i8, 5, 0, 1, 2, 3, 4,
76898 0,
76899 0,
76900 16, TARGET_VAL(ARMISD::VTBL1),
76901 OPC_RecordChild0,
76902 OPC_RecordChild1,
76903 OPC_CheckPatternPredicate1,
76904 OPC_EmitInteger32, 28,
76905 OPC_EmitRegisterI32, 0 ,
76906 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTBL1),
76907 MVT::v8i8, 4, 0, 1, 2, 3,
76908 9|128,1, TARGET_VAL(ISD::CONCAT_VECTORS),
76909 OPC_RecordChild0,
76910 OPC_RecordChild1,
76911 OPC_SwitchType , 17, MVT::v2i64,
76912 OPC_CheckPatternPredicate1,
76913 OPC_EmitStringInteger32, ARM::QPRRegClassID,
76914 OPC_EmitStringInteger32, ARM::dsub_0,
76915 OPC_EmitStringInteger32, ARM::dsub_1,
76916 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
76917 MVT::v2i64, 5, 2, 0, 3, 1, 4,
76918 17, MVT::v4i32,
76919 OPC_CheckPatternPredicate1,
76920 OPC_EmitStringInteger32, ARM::QPRRegClassID,
76921 OPC_EmitStringInteger32, ARM::dsub_0,
76922 OPC_EmitStringInteger32, ARM::dsub_1,
76923 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
76924 MVT::v4i32, 5, 2, 0, 3, 1, 4,
76925 17, MVT::v8i16,
76926 OPC_CheckPatternPredicate1,
76927 OPC_EmitStringInteger32, ARM::QPRRegClassID,
76928 OPC_EmitStringInteger32, ARM::dsub_0,
76929 OPC_EmitStringInteger32, ARM::dsub_1,
76930 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
76931 MVT::v8i16, 5, 2, 0, 3, 1, 4,
76932 17, MVT::v16i8,
76933 OPC_CheckPatternPredicate1,
76934 OPC_EmitStringInteger32, ARM::QPRRegClassID,
76935 OPC_EmitStringInteger32, ARM::dsub_0,
76936 OPC_EmitStringInteger32, ARM::dsub_1,
76937 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
76938 MVT::v16i8, 5, 2, 0, 3, 1, 4,
76939 17, MVT::v4f32,
76940 OPC_CheckPatternPredicate1,
76941 OPC_EmitStringInteger32, ARM::QPRRegClassID,
76942 OPC_EmitStringInteger32, ARM::dsub_0,
76943 OPC_EmitStringInteger32, ARM::dsub_1,
76944 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
76945 MVT::v4f32, 5, 2, 0, 3, 1, 4,
76946 17, MVT::v8f16,
76947 OPC_CheckPatternPredicate1,
76948 OPC_EmitStringInteger32, ARM::QPRRegClassID,
76949 OPC_EmitStringInteger32, ARM::dsub_0,
76950 OPC_EmitStringInteger32, ARM::dsub_1,
76951 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
76952 MVT::v8f16, 5, 2, 0, 3, 1, 4,
76953 17, MVT::v8bf16,
76954 OPC_CheckPatternPredicate1,
76955 OPC_EmitStringInteger32, ARM::QPRRegClassID,
76956 OPC_EmitStringInteger32, ARM::dsub_0,
76957 OPC_EmitStringInteger32, ARM::dsub_1,
76958 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
76959 MVT::v8bf16, 5, 2, 0, 3, 1, 4,
76960 0,
76961 76, TARGET_VAL(ISD::AVGCEILS),
76962 OPC_RecordChild0,
76963 OPC_RecordChild1,
76964 OPC_SwitchType , 22, MVT::v16i8,
76965 OPC_EmitInteger32, 0,
76966 OPC_EmitRegisterI32, 0 ,
76967 OPC_EmitRegisterI32, 0 ,
76968 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76969 MVT::v4i32, 0,
76970 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs8),
76971 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
76972 22, MVT::v8i16,
76973 OPC_EmitInteger32, 0,
76974 OPC_EmitRegisterI32, 0 ,
76975 OPC_EmitRegisterI32, 0 ,
76976 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76977 MVT::v4i32, 0,
76978 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs16),
76979 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
76980 22, MVT::v4i32,
76981 OPC_EmitInteger32, 0,
76982 OPC_EmitRegisterI32, 0 ,
76983 OPC_EmitRegisterI32, 0 ,
76984 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76985 MVT::v4i32, 0,
76986 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDs32),
76987 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
76988 0,
76989 76, TARGET_VAL(ISD::AVGCEILU),
76990 OPC_RecordChild0,
76991 OPC_RecordChild1,
76992 OPC_SwitchType , 22, MVT::v16i8,
76993 OPC_EmitInteger32, 0,
76994 OPC_EmitRegisterI32, 0 ,
76995 OPC_EmitRegisterI32, 0 ,
76996 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
76997 MVT::v4i32, 0,
76998 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu8),
76999 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
77000 22, MVT::v8i16,
77001 OPC_EmitInteger32, 0,
77002 OPC_EmitRegisterI32, 0 ,
77003 OPC_EmitRegisterI32, 0 ,
77004 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77005 MVT::v4i32, 0,
77006 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu16),
77007 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
77008 22, MVT::v4i32,
77009 OPC_EmitInteger32, 0,
77010 OPC_EmitRegisterI32, 0 ,
77011 OPC_EmitRegisterI32, 0 ,
77012 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77013 MVT::v4i32, 0,
77014 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VRHADDu32),
77015 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
77016 0,
77017 79, TARGET_VAL(ISD::MULHU),
77018 OPC_RecordChild0,
77019 OPC_RecordChild1,
77020 OPC_SwitchType , 23, MVT::v16i8,
77021 OPC_CheckPatternPredicate0,
77022 OPC_EmitInteger32, 0,
77023 OPC_EmitRegisterI32, 0 ,
77024 OPC_EmitRegisterI32, 0 ,
77025 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77026 MVT::v4i32, 0,
77027 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu8),
77028 MVT::v16i8, 6, 0, 1, 2, 3, 4, 5,
77029 23, MVT::v8i16,
77030 OPC_CheckPatternPredicate0,
77031 OPC_EmitInteger32, 0,
77032 OPC_EmitRegisterI32, 0 ,
77033 OPC_EmitRegisterI32, 0 ,
77034 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77035 MVT::v4i32, 0,
77036 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu16),
77037 MVT::v8i16, 6, 0, 1, 2, 3, 4, 5,
77038 23, MVT::v4i32,
77039 OPC_CheckPatternPredicate0,
77040 OPC_EmitInteger32, 0,
77041 OPC_EmitRegisterI32, 0 ,
77042 OPC_EmitRegisterI32, 0 ,
77043 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77044 MVT::v4i32, 0,
77045 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMULHu32),
77046 MVT::v4i32, 6, 0, 1, 2, 3, 4, 5,
77047 0,
77048 102|128,3, TARGET_VAL(ISD::SCALAR_TO_VECTOR),
77049 OPC_RecordChild0,
77050 OPC_Scope, 62|128,2,
77051 OPC_CheckChild0TypeI32,
77052 OPC_SwitchType , 22, MVT::v8i8,
77053 OPC_CheckPatternPredicate1,
77054 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77055 MVT::v8i8, 0,
77056 OPC_EmitInteger32, 0,
77057 OPC_EmitInteger32, 28,
77058 OPC_EmitRegisterI32, 0 ,
77059 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSETLNi8),
77060 MVT::v8i8, 5, 1, 0, 2, 3, 4,
77061 22, MVT::v4i16,
77062 OPC_CheckPatternPredicate1,
77063 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77064 MVT::v4i16, 0,
77065 OPC_EmitInteger32, 0,
77066 OPC_EmitInteger32, 28,
77067 OPC_EmitRegisterI32, 0 ,
77068 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSETLNi16),
77069 MVT::v4i16, 5, 1, 0, 2, 3, 4,
77070 22, MVT::v2i32,
77071 OPC_CheckPatternPredicate1,
77072 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77073 MVT::v2i32, 0,
77074 OPC_EmitInteger32, 0,
77075 OPC_EmitInteger32, 28,
77076 OPC_EmitRegisterI32, 0 ,
77077 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VSETLNi32),
77078 MVT::v2i32, 5, 1, 0, 2, 3, 4,
77079 63, MVT::v16i8,
77080 OPC_Scope, 22,
77081 OPC_CheckPatternPredicate0,
77082 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77083 MVT::v16i8, 0,
77084 OPC_EmitInteger32, 0,
77085 OPC_EmitInteger32, 28,
77086 OPC_EmitRegisterI32, 0 ,
77087 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_to_lane_8),
77088 MVT::v16i8, 5, 1, 0, 2, 3, 4,
77089 37,
77090 OPC_CheckPatternPredicate1,
77091 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77092 MVT::v16i8, 0,
77093 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77094 MVT::v8i8, 0,
77095 OPC_EmitInteger32, 0,
77096 OPC_EmitInteger32, 28,
77097 OPC_EmitRegisterI32, 0 ,
77098 OPC_EmitNode1None, TARGET_VAL(ARM::VSETLNi8),
77099 MVT::f64, 5, 2, 0, 3, 4, 5,
77100 OPC_EmitStringInteger32, ARM::dsub_0,
77101 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
77102 MVT::v16i8, 3, 1, 6, 7,
77103 0,
77104 63, MVT::v8i16,
77105 OPC_Scope, 22,
77106 OPC_CheckPatternPredicate0,
77107 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77108 MVT::v8i16, 0,
77109 OPC_EmitInteger32, 0,
77110 OPC_EmitInteger32, 28,
77111 OPC_EmitRegisterI32, 0 ,
77112 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_to_lane_16),
77113 MVT::v8i16, 5, 1, 0, 2, 3, 4,
77114 37,
77115 OPC_CheckPatternPredicate1,
77116 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77117 MVT::v8i16, 0,
77118 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77119 MVT::v4i16, 0,
77120 OPC_EmitInteger32, 0,
77121 OPC_EmitInteger32, 28,
77122 OPC_EmitRegisterI32, 0 ,
77123 OPC_EmitNode1None, TARGET_VAL(ARM::VSETLNi16),
77124 MVT::f64, 5, 2, 0, 3, 4, 5,
77125 OPC_EmitStringInteger32, ARM::dsub_0,
77126 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
77127 MVT::v8i16, 3, 1, 6, 7,
77128 0,
77129 63, MVT::v4i32,
77130 OPC_Scope, 22,
77131 OPC_CheckPatternPredicate0,
77132 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77133 MVT::v4i32, 0,
77134 OPC_EmitInteger32, 0,
77135 OPC_EmitInteger32, 28,
77136 OPC_EmitRegisterI32, 0 ,
77137 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_to_lane_32),
77138 MVT::v4i32, 5, 1, 0, 2, 3, 4,
77139 37,
77140 OPC_CheckPatternPredicate1,
77141 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77142 MVT::v4i32, 0,
77143 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77144 MVT::v2i32, 0,
77145 OPC_EmitInteger32, 0,
77146 OPC_EmitInteger32, 28,
77147 OPC_EmitRegisterI32, 0 ,
77148 OPC_EmitNode1None, TARGET_VAL(ARM::VSETLNi32),
77149 MVT::f64, 5, 2, 0, 3, 4, 5,
77150 OPC_EmitStringInteger32, ARM::dsub_0,
77151 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
77152 MVT::v4i32, 3, 1, 6, 7,
77153 0,
77154 22, MVT::v4f32,
77155 OPC_CheckPatternPredicate0,
77156 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77157 MVT::v4f32, 0,
77158 OPC_EmitInteger32, 0,
77159 OPC_EmitInteger32, 28,
77160 OPC_EmitRegisterI32, 0 ,
77161 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_to_lane_32),
77162 MVT::v4f32, 5, 1, 0, 2, 3, 4,
77163 22, MVT::v8f16,
77164 OPC_CheckPatternPredicate0,
77165 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77166 MVT::v8f16, 0,
77167 OPC_EmitInteger32, 0,
77168 OPC_EmitInteger32, 28,
77169 OPC_EmitRegisterI32, 0 ,
77170 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOV_to_lane_16),
77171 MVT::v8f16, 5, 1, 0, 2, 3, 4,
77172 0,
77173 60,
77174 OPC_CheckChild0Type, MVT::f32,
77175 OPC_SwitchType , 16, MVT::v2f32,
77176 OPC_CheckPatternPredicate1,
77177 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77178 MVT::v2f32, 0,
77179 OPC_EmitStringInteger32, ARM::ssub_0,
77180 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
77181 MVT::v2f32, 3, 1, 0, 2,
77182 36, MVT::v4f32,
77183 OPC_Scope, 16,
77184 OPC_CheckPatternPredicate1,
77185 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77186 MVT::v4f32, 0,
77187 OPC_EmitStringInteger32, ARM::ssub_0,
77188 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
77189 MVT::v4f32, 3, 1, 0, 2,
77190 16,
77191 OPC_CheckPatternPredicate0,
77192 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77193 MVT::v4f32, 0,
77194 OPC_EmitStringInteger32, ARM::ssub_0,
77195 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
77196 MVT::v4f32, 3, 1, 0, 2,
77197 0,
77198 0,
77199 40,
77200 OPC_CheckChild0Type, MVT::f64,
77201 OPC_CheckType, MVT::v2f64,
77202 OPC_Scope, 16,
77203 OPC_CheckPatternPredicate1,
77204 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77205 MVT::v2f64, 0,
77206 OPC_EmitStringInteger32, ARM::dsub_0,
77207 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
77208 MVT::v2f64, 3, 1, 0, 2,
77209 16,
77210 OPC_CheckPatternPredicate0,
77211 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77212 MVT::v2f64, 0,
77213 OPC_EmitStringInteger32, ARM::dsub_0,
77214 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
77215 MVT::v2f64, 3, 1, 0, 2,
77216 0,
77217 60,
77218 OPC_CheckChild0Type, MVT::f16,
77219 OPC_SwitchType , 16, MVT::v4f16,
77220 OPC_CheckPatternPredicate1,
77221 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77222 MVT::v4f16, 0,
77223 OPC_EmitStringInteger32, ARM::ssub_0,
77224 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
77225 MVT::v4f16, 3, 1, 0, 2,
77226 36, MVT::v8f16,
77227 OPC_Scope, 16,
77228 OPC_CheckPatternPredicate1,
77229 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77230 MVT::v8f16, 0,
77231 OPC_EmitStringInteger32, ARM::ssub_0,
77232 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
77233 MVT::v8f16, 3, 1, 0, 2,
77234 16,
77235 OPC_CheckPatternPredicate0,
77236 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77237 MVT::v8f16, 0,
77238 OPC_EmitStringInteger32, ARM::ssub_0,
77239 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
77240 MVT::v8f16, 3, 1, 0, 2,
77241 0,
77242 0,
77243 0,
77244 33, TARGET_VAL(ARMISD::VTBL2),
77245 OPC_RecordChild0,
77246 OPC_RecordChild1,
77247 OPC_RecordChild2,
77248 OPC_CheckPatternPredicate1,
77249 OPC_EmitStringInteger32, ARM::DPairRegClassID,
77250 OPC_EmitStringInteger32, ARM::dsub_0,
77251 OPC_EmitStringInteger32, ARM::dsub_1,
77252 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::REG_SEQUENCE),
77253 MVT::v16i8, 5, 3, 0, 4, 1, 5,
77254 OPC_EmitInteger32, 28,
77255 OPC_EmitRegisterI32, 0 ,
77256 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VTBL2),
77257 MVT::v8i8, 4, 6, 2, 7, 8,
77258 48, TARGET_VAL(ARMISD::VCVTN),
77259 OPC_RecordChild0,
77260 OPC_RecordChild1,
77261 OPC_CheckChild1Type, MVT::v4f32,
77262 OPC_CheckType, MVT::v8f16,
77263 OPC_Scope, 19,
77264 OPC_CheckChild2Integer, 0,
77265 OPC_CheckPatternPredicate2,
77266 OPC_EmitInteger32, 0,
77267 OPC_EmitRegisterI32, 0 ,
77268 OPC_EmitRegisterI32, 0 ,
77269 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16f32bh),
77270 MVT::v8f16, 5, 0, 1, 2, 3, 4,
77271 19,
77272 OPC_CheckChild2Integer, 2,
77273 OPC_CheckPatternPredicate2,
77274 OPC_EmitInteger32, 0,
77275 OPC_EmitRegisterI32, 0 ,
77276 OPC_EmitRegisterI32, 0 ,
77277 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf16f32th),
77278 MVT::v8f16, 5, 0, 1, 2, 3, 4,
77279 0,
77280 57, TARGET_VAL(ARMISD::VCVTL),
77281 OPC_RecordChild0,
77282 OPC_CheckChild0Type, MVT::v8f16,
77283 OPC_CheckType, MVT::v4f32,
77284 OPC_Scope, 24,
77285 OPC_CheckChild1Integer, 0,
77286 OPC_CheckPatternPredicate2,
77287 OPC_EmitInteger32, 0,
77288 OPC_EmitRegisterI32, 0 ,
77289 OPC_EmitRegisterI32, 0 ,
77290 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77291 MVT::v4i32, 0,
77292 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32f16bh),
77293 MVT::v4f32, 5, 0, 1, 2, 3, 4,
77294 24,
77295 OPC_CheckChild1Integer, 2,
77296 OPC_CheckPatternPredicate2,
77297 OPC_EmitInteger32, 0,
77298 OPC_EmitRegisterI32, 0 ,
77299 OPC_EmitRegisterI32, 0 ,
77300 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77301 MVT::v4i32, 0,
77302 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VCVTf32f16th),
77303 MVT::v4f32, 5, 0, 1, 2, 3, 4,
77304 0,
77305 64, TARGET_VAL(ARMISD::VMOVFPIMM),
77306 OPC_RecordChild0,
77307 OPC_MoveChild0,
77308 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
77309 OPC_MoveParent,
77310 OPC_SwitchType , 13, MVT::v2f32,
77311 OPC_CheckPatternPredicate1,
77312 OPC_EmitInteger32, 28,
77313 OPC_EmitRegisterI32, 0 ,
77314 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVv2f32),
77315 MVT::v2f32, 3, 0, 1, 2,
77316 39, MVT::v4f32,
77317 OPC_Scope, 13,
77318 OPC_CheckPatternPredicate1,
77319 OPC_EmitInteger32, 28,
77320 OPC_EmitRegisterI32, 0 ,
77321 OPC_MorphNodeTo1None, TARGET_VAL(ARM::VMOVv4f32),
77322 MVT::v4f32, 3, 0, 1, 2,
77323 22,
77324 OPC_CheckPatternPredicate0,
77325 OPC_EmitInteger32, 0,
77326 OPC_EmitRegisterI32, 0 ,
77327 OPC_EmitRegisterI32, 0 ,
77328 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
77329 MVT::v4i32, 0,
77330 OPC_MorphNodeTo1None, TARGET_VAL(ARM::MVE_VMOVimmf32),
77331 MVT::v4f32, 5, 0, 1, 2, 3, 4,
77332 0,
77333 0,
77334 0,
77335 0
77336 }; // Total Array size is 170968 bytes
77337
77338 #undef TARGET_VAL
77339 SelectCodeCommon(NodeToMatch: N, MatcherTable, TableSize: sizeof(MatcherTable));
77340}
77341#endif // GET_DAGISEL_BODY
77342
77343#ifdef GET_DAGISEL_DECL
77344bool CheckPatternPredicate(unsigned PredNo) const override;
77345#endif
77346#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
77347bool DAGISEL_CLASS_COLONCOLON CheckPatternPredicate(unsigned PredNo) const
77348#if DAGISEL_INLINE
77349 override
77350#endif
77351{
77352 switch (PredNo) {
77353 default: llvm_unreachable("Invalid predicate in table?");
77354 case 0: return (Subtarget->hasMVEIntegerOps());
77355 case 1: return (Subtarget->hasNEON());
77356 case 2: return (Subtarget->hasMVEFloatOps());
77357 case 3: return (!Subtarget->isThumb());
77358 case 4: return (Subtarget->isThumb2());
77359 case 5: return (Subtarget->hasDSP()) && (Subtarget->isThumb2());
77360 case 6: return (Subtarget->hasNEON()) && (MF->getDataLayout().isLittleEndian());
77361 case 7: return (Subtarget->hasMVEIntegerOps()) && (MF->getDataLayout().isLittleEndian());
77362 case 8: return (Subtarget->hasNEON()) && (MF->getDataLayout().isBigEndian());
77363 case 9: return (Subtarget->hasV6Ops()) && (!Subtarget->isThumb());
77364 case 10: return (Subtarget->isThumb()) && (Subtarget->isThumb1Only());
77365 case 11: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON());
77366 case 12: return (Subtarget->hasMVEIntegerOps()) && (MF->getDataLayout().isBigEndian());
77367 case 13: return (Subtarget->hasFullFP16());
77368 case 14: return (Subtarget->hasV5TEOps()) && (!Subtarget->isThumb());
77369 case 15: return (Subtarget->hasCDEOps()) && (Subtarget->hasMVEIntegerOps());
77370 case 16: return (Subtarget->hasNEON()) && (Subtarget->hasV8Ops());
77371 case 17: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && (Subtarget->hasV8Ops());
77372 case 18: return (Subtarget->hasFP64()) && (Subtarget->hasVFP2Base());
77373 case 19: return (Subtarget->hasDSP()) && (Subtarget->isThumb2()) && (Subtarget->useMulOps());
77374 case 20: return (Subtarget->hasV8_1MMainlineOps());
77375 case 21: return (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize()));
77376 case 22: return (Subtarget->hasFP64()) && (Subtarget->hasFPARMv8Base());
77377 case 23: return (Subtarget->hasV5TEOps()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps());
77378 case 24: return (Subtarget->hasVFP2Base());
77379 case 25: return (Subtarget->hasFPARMv8Base());
77380 case 26: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP2Base());
77381 case 27: return (Subtarget->hasBF16()) && (Subtarget->hasNEON());
77382 case 28: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize()));
77383 case 29: return (Subtarget->hasAcquireRelease()) && (Subtarget->hasV7Clrex()) && (Subtarget->isThumb());
77384 case 30: return (Subtarget->hasNEON()) && (Subtarget->hasV8_1aOps());
77385 case 31: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb());
77386 case 32: return (Subtarget->hasV6T2Ops()) && (!Subtarget->isThumb());
77387 case 33: return (Subtarget->hasCDEOps()) && (Subtarget->hasFPRegs());
77388 case 34: return (Subtarget->hasCDEOps()) && (Subtarget->hasMVEFloatOps());
77389 case 35: return (Subtarget->hasFPRegs());
77390 case 36: return (Subtarget->hasMVEIntegerOps()) && (Subtarget->hasV8_1MMainlineOps());
77391 case 37: return (Subtarget->isThumb1Only());
77392 case 38: return (Subtarget->hasFP16());
77393 case 39: return (Subtarget->hasV6Ops()) && (Subtarget->isThumb()) && (Subtarget->isThumb1Only());
77394 case 40: return (Subtarget->hasMatMulInt8());
77395 case 41: return (Subtarget->isThumb());
77396 case 42: return (Subtarget->hasNEON()) && (Subtarget->useNEONForSinglePrecisionFP());
77397 case 43: return (Subtarget->hasFP64()) && (Subtarget->hasVFP4Base());
77398 case 44: return (Subtarget->hasVFP4Base());
77399 case 45: return (Subtarget->hasFPRegs16());
77400 case 46: return (!Subtarget->isThumb()) && (!Subtarget->hasV8Ops());
77401 case 47: return (Subtarget->isThumb2()) && (!Subtarget->hasV8Ops());
77402 case 48: return (Subtarget->hasFP64()) && (Subtarget->hasVFP2Base()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize()));
77403 case 49: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP2Base()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize()));
77404 case 50: return (Subtarget->hasFP64()) && (Subtarget->hasVFP4Base()) && (TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->useFPVFMx());
77405 case 51: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasVFP4Base()) && (TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->useFPVFMx());
77406 case 52: return (Subtarget->hasCDEOps());
77407 case 53: return (Subtarget->hasCRC()) && (!Subtarget->isThumb());
77408 case 54: return (Subtarget->hasCRC()) && (Subtarget->isThumb2());
77409 case 55: return (Subtarget->hasSHA2()) && (Subtarget->hasV8Ops());
77410 case 56: return (Subtarget->hasAcquireRelease()) && (Subtarget->hasV7Clrex()) && (!Subtarget->isThumb());
77411 case 57: return (Subtarget->hasFullFP16()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize()));
77412 case 58: return (Subtarget->hasFullFP16()) && (TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->useFPVFMx());
77413 case 59: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasFullFP16()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize()));
77414 case 60: return (Subtarget->hasNEON()) && (Subtarget->hasVFP4Base()) && (TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->useFPVFMx());
77415 case 61: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && (TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->useFPVFMx());
77416 case 62: return (Subtarget->hasNEON()) && (Subtarget->hasVFP4Base());
77417 case 63: return (Subtarget->has8MSecExt()) && (Subtarget->isThumb());
77418 case 64: return (Subtarget->hasAES()) && (Subtarget->hasV8Ops());
77419 case 65: return (Subtarget->hasV6Ops()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps());
77420 case 66: return (!Subtarget->isThumb()) && (!Subtarget->hasV6Ops());
77421 case 67: return (Subtarget->hasDotProd());
77422 case 68: return (Subtarget->hasFullFP16()) && (Subtarget->hasNEON()) && (Subtarget->hasV8_3aOps());
77423 case 69: return (Subtarget->hasNEON()) && (Subtarget->hasV8_3aOps());
77424 case 70: return (!Subtarget->isThumb()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt());
77425 case 71: return (Subtarget->hasFPARMv8Base()) && (Subtarget->hasNEON());
77426 case 72: return (Subtarget->hasFPARMv8Base()) && (Subtarget->hasFullFP16()) && (Subtarget->hasNEON());
77427 case 73: return (Subtarget->isThumb2()) && (Subtarget->useMulOps());
77428 case 74: return (Subtarget->hasV7Ops()) && (!Subtarget->isThumb());
77429 case 75: return (Subtarget->hasDataBarrier()) && (!Subtarget->isThumb());
77430 case 76: return (Subtarget->hasDataBarrier()) && (Subtarget->isThumb());
77431 case 77: return (Subtarget->hasV7Ops()) && (Subtarget->isThumb2());
77432 case 78: return (!Subtarget->useMovt() || !Subtarget->allowPositionIndependentMovt()) && (!Subtarget->isThumb());
77433 case 79: return (MF->getDataLayout().isLittleEndian()) && (Subtarget->isThumb()) && (Subtarget->isThumb1Only());
77434 case 80: return (Subtarget->hasV6T2Ops()) && (Subtarget->isThumb2());
77435 case 81: return (Subtarget->hasV5TOps()) && (!Subtarget->isThumb());
77436 case 82: return (Subtarget->hasV4TOps()) && (!Subtarget->isThumb());
77437 case 83: return (!Subtarget->isThumb()) && (!Subtarget->hasV4TOps());
77438 case 84: return (!Subtarget->isThumb()) && (Subtarget->useMovt());
77439 case 85: return (!Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasFullFP16()) && (TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->useFPVFMx());
77440 case 86: return (Subtarget->hasNEON()) && (((Subtarget->useFPVMLx() && TM.Options.AllowFPOpFusion != FPOpFusion::Fast) ||Subtarget->hasMinSize())) && (Subtarget->useNEONForSinglePrecisionFP());
77441 case 87: return (Subtarget->hasVFP4Base()) && (TM.Options.AllowFPOpFusion == FPOpFusion::Fast && Subtarget->useFPVFMx()) && (Subtarget->useNEONForSinglePrecisionFP());
77442 case 88: return (Subtarget->hasFP16()) && (Subtarget->hasNEON());
77443 case 89: return (!Subtarget->hasFPRegs16()) && (!Subtarget->isThumb());
77444 case 90: return (!Subtarget->hasFPRegs16()) && (Subtarget->isThumb());
77445 case 91: return (Subtarget->isThumb()) && (Subtarget->isTargetWindows());
77446 case 92: return (Subtarget->hasMPExtension()) && (Subtarget->hasV7Ops()) && (Subtarget->isThumb2());
77447 case 93: return (Subtarget->hasMPExtension()) && (Subtarget->hasV7Ops()) && (!Subtarget->isThumb());
77448 case 94: return (Subtarget->hasV5TOps()) && (!Subtarget->isThumb()) && ( !MF->getSubtarget<ARMSubtarget>().hardenSlsBlr() );
77449 case 95: return (Subtarget->hasV5TOps()) && (!Subtarget->isThumb()) && ( MF->getSubtarget<ARMSubtarget>().hardenSlsBlr() );
77450 case 96: return (!Subtarget->useMovt()) && (!Subtarget->isThumb());
77451 case 97: return (Subtarget->genExecuteOnly() && Subtarget->isThumb1Only() && !Subtarget->hasV8MBaselineOps());
77452 case 98: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()) && (Subtarget->useMovt());
77453 case 99: return (!Subtarget->useMovt() || !Subtarget->allowPositionIndependentMovt()) && (Subtarget->isThumb());
77454 case 100: return (!Subtarget->useMovt() || !Subtarget->allowPositionIndependentMovt()) && (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb());
77455 case 101: return (Subtarget->hasNEON()) && (Subtarget->hasSlowVGETLNi32());
77456 case 102: return (Subtarget->hasBF16()) && (Subtarget->hasFullFP16()) && (Subtarget->hasNEON());
77457 case 103: return (Subtarget->hasDivideInARMMode()) && (!Subtarget->isThumb());
77458 case 104: return (Subtarget->hasDivideInThumbMode()) && (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb());
77459 case 105: return (Subtarget->hasFPRegs()) && (Subtarget->preferVMOVSR() ||!Subtarget->useNEONForSinglePrecisionFP());
77460 case 106: return (!Subtarget->preferVMOVSR() &&Subtarget->useNEONForSinglePrecisionFP()) && (Subtarget->hasNEON());
77461 case 107: return (Subtarget->hasFP64()) && (!TM.Options.HonorSignDependentRoundingFPMath());
77462 case 108: return (!TM.Options.HonorSignDependentRoundingFPMath());
77463 case 109: return (Subtarget->hasZeroCycleZeroing());
77464 case 110: return (!Subtarget->hasSlowVDUP32()) && (Subtarget->hasNEON());
77465 case 111: return (Subtarget->hasNEON()) && (Subtarget->hasSlowVDUP32());
77466 case 112: return (Subtarget->hasV8MBaselineOps());
77467 case 113: return (Subtarget->hasV6MOps()) && (Subtarget->isThumb());
77468 case 114: return (Subtarget->hasV6KOps()) && (!Subtarget->isThumb());
77469 case 115: return (Subtarget->hasV7Clrex()) && (Subtarget->isThumb());
77470 case 116: return (Subtarget->hasFPRegs64());
77471 case 117: return (Subtarget->hasLOB()) && (Subtarget->hasV8_1MMainlineOps()) && (Subtarget->isThumb2());
77472 case 118: return (!Subtarget->isThumb()) && (!Subtarget->hasV6Ops()) && (Subtarget->useMulOps());
77473 case 119: return (Subtarget->hasV6T2Ops()) && (!Subtarget->isThumb()) && (Subtarget->useMulOps());
77474 case 120: return ( !MF->getInfo<ARMFunctionInfo>()->shouldSignReturnAddress(SpillsLR: true) );
77475 case 121: return ( MF->getInfo<ARMFunctionInfo>()->shouldSignReturnAddress(SpillsLR: true) );
77476 case 122: return (!Subtarget->isMClass()) && (Subtarget->isThumb2());
77477 case 123: return (Subtarget->hasV5TOps()) && (Subtarget->isThumb()) && ( !MF->getSubtarget<ARMSubtarget>().hardenSlsBlr() );
77478 case 124: return (Subtarget->hasV5TOps()) && (Subtarget->isThumb()) && ( MF->getSubtarget<ARMSubtarget>().hardenSlsBlr() );
77479 case 125: return (!Subtarget->genExecuteOnly()) && (!Subtarget->useMovt()) && (Subtarget->isThumb());
77480 case 126: return (!Subtarget->useMovt()) && (Subtarget->isThumb());
77481 case 127: return (Subtarget->isThumb2()) && (Subtarget->useMovt());
77482 case 128: return (Subtarget->hasV8MBaselineOps()) && (Subtarget->isThumb()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt());
77483 case 129: return (Subtarget->isThumb2()) && (Subtarget->useMovt() && Subtarget->allowPositionIndependentMovt());
77484 case 130: return (Subtarget->hasFPRegs()) && (!Subtarget->hasSlowVGETLNi32());
77485 case 131: return (!Subtarget->hasSlowVGETLNi32()) && (Subtarget->hasNEON());
77486 case 132: return (!Subtarget->useMovt()) && (Subtarget->genExecuteOnly()) && (Subtarget->isThumb1Only());
77487 case 133: return (Subtarget->isThumb()) && (Subtarget->useMovt());
77488 case 134: return (!Subtarget->isThumb()) && (Subtarget->useNaClTrap());
77489 case 135: return (!Subtarget->useNaClTrap()) && (!Subtarget->isThumb());
77490 case 136: return (!Subtarget->isThumb()) && (!Subtarget->hasV5TOps());
77491 case 137: return (Subtarget->hasV5TOps()) && (Subtarget->isThumb());
77492 case 138: return (Subtarget->isThumb()) && (!Subtarget->hasV5TOps());
77493 case 139: return (!Subtarget->isThumb()) && (Subtarget->isReadTPSoft());
77494 case 140: return (!Subtarget->isThumb()) && (Subtarget->isReadTPTPIDRURW());
77495 case 141: return (!Subtarget->isThumb()) && (Subtarget->isReadTPTPIDRURO());
77496 case 142: return (!Subtarget->isThumb()) && (Subtarget->isReadTPTPIDRPRW());
77497 case 143: return (Subtarget->isReadTPSoft()) && (Subtarget->isThumb());
77498 case 144: return (Subtarget->isReadTPTPIDRURW()) && (Subtarget->isThumb2());
77499 case 145: return (Subtarget->isReadTPTPIDRURO()) && (Subtarget->isThumb2());
77500 case 146: return (Subtarget->isReadTPTPIDRPRW()) && (Subtarget->isThumb2());
77501 case 147: return (!Subtarget->isTargetWindows()) && (Subtarget->isThumb());
77502 case 148: return (Subtarget->hasVFP2Base()) && (!Subtarget->isThumb());
77503 case 149: return (!Subtarget->isThumb()) && (!Subtarget->hasVFP2Base());
77504 case 150: return (Subtarget->hasVFP2Base()) && (Subtarget->isThumb2());
77505 case 151: return (Subtarget->isThumb2()) && (!Subtarget->hasVFP2Base());
77506 case 152: return (Subtarget->hasFP64()) && (Subtarget->hasVFP3Base());
77507 case 153: return (Subtarget->hasVFP3Base());
77508 }
77509}
77510#endif // GET_DAGISEL_BODY
77511
77512#ifdef GET_DAGISEL_DECL
77513bool CheckNodePredicate(SDNode *Node, unsigned PredNo) const override;
77514#endif
77515#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
77516bool DAGISEL_CLASS_COLONCOLON CheckNodePredicate(SDNode *Node, unsigned PredNo) const
77517#if DAGISEL_INLINE
77518 override
77519#endif
77520{
77521 switch (PredNo) {
77522 default: llvm_unreachable("Invalid predicate in table?");
77523 case 0: {
77524 // Predicate_istore
77525 // Predicate_store
77526 SDNode *N = Node;
77527 (void)N;
77528 if (cast<StoreSDNode>(Val: N)->isTruncatingStore()) return false;
77529return true;
77530
77531 }
77532 case 1: {
77533 // Predicate_ARMVectorRegCast
77534 SDNode *N = Node;
77535 (void)N;
77536
77537 // Reject a match against bitconvert (aka ISD::BITCAST) if big-endian
77538 return !(CurDAG->getDataLayout().isBigEndian() &&
77539 N->getOpcode() == ISD::BITCAST);
77540
77541 }
77542 case 2: {
77543 // Predicate_ARMcsinc_su
77544 // Predicate_and_su
77545 // Predicate_fmul_su
77546 // Predicate_xor_su
77547 SDNode *N = Node;
77548 (void)N;
77549
77550 return N->hasOneUse();
77551
77552 }
77553 case 3: {
77554 // Predicate_atomic_load_8
77555 // Predicate_atomic_store_8
77556 // Predicate_extloadi8
77557 // Predicate_post_truncsti8
77558 // Predicate_pre_truncsti8
77559 // Predicate_sextloadi8
77560 // Predicate_zextloadi8
77561 SDNode *N = Node;
77562 (void)N;
77563if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i8) return false;
77564return true;
77565
77566 }
77567 case 4: {
77568 // Predicate_atomic_load_16
77569 // Predicate_atomic_store_16
77570 // Predicate_extloadi16
77571 // Predicate_post_truncsti16
77572 // Predicate_pre_truncsti16
77573 // Predicate_sextloadi16
77574 // Predicate_zextloadi16
77575 SDNode *N = Node;
77576 (void)N;
77577if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i16) return false;
77578return true;
77579
77580 }
77581 case 5: {
77582 // Predicate_imm0_31
77583 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77584
77585 return Imm >= 0 && Imm < 32;
77586
77587 }
77588 case 6: {
77589 // Predicate_post_store
77590 // Predicate_post_truncst
77591 SDNode *N = Node;
77592 (void)N;
77593
77594 ISD::MemIndexedMode AM = cast<StoreSDNode>(Val: N)->getAddressingMode();
77595 return AM == ISD::POST_INC || AM == ISD::POST_DEC;
77596
77597 }
77598 case 7: {
77599 // Predicate_unindexedstore
77600 SDNode *N = Node;
77601 (void)N;
77602if (cast<StoreSDNode>(Val: N)->getAddressingMode() != ISD::UNINDEXED) return false;
77603return true;
77604
77605 }
77606 case 8: {
77607 // Predicate_aligned32_post_store
77608 // Predicate_aligned32_pre_store
77609 // Predicate_alignedstore32
77610 SDNode *N = Node;
77611 (void)N;
77612
77613 return cast<StoreSDNode>(Val: N)->getAlign() >= 4;
77614
77615 }
77616 case 9: {
77617 // Predicate_pre_store
77618 // Predicate_pre_truncst
77619 SDNode *N = Node;
77620 (void)N;
77621
77622 ISD::MemIndexedMode AM = cast<StoreSDNode>(Val: N)->getAddressingMode();
77623 return AM == ISD::PRE_INC || AM == ISD::PRE_DEC;
77624
77625 }
77626 case 10: {
77627 // Predicate_extloadvi8
77628 // Predicate_sextloadvi8
77629 // Predicate_zextloadvi8
77630 SDNode *N = Node;
77631 (void)N;
77632if (cast<LoadSDNode>(Val: N)->getMemoryVT().getScalarType() != MVT::i8) return false;
77633return true;
77634
77635 }
77636 case 11: {
77637 // Predicate_fadd_mlx
77638 // Predicate_fsub_mlx
77639 SDNode *N = Node;
77640 (void)N;
77641
77642 return hasNoVMLxHazardUse(N);
77643
77644 }
77645 case 12: {
77646 // Predicate_rot_imm
77647 auto *N = cast<ConstantSDNode>(Val: Node);
77648 (void)N;
77649
77650 int32_t v = N->getZExtValue();
77651 return v == 8 || v == 16 || v == 24;
77652 }
77653 case 13: {
77654 // Predicate_t2_so_imm
77655 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77656
77657 return ARM_AM::getT2SOImmVal(Arg: Imm) != -1;
77658
77659 }
77660 case 14: {
77661 // Predicate_sext_16_node
77662 SDNode *N = Node;
77663 (void)N;
77664
77665 return CurDAG->ComputeNumSignBits(Op: SDValue(N,0)) >= 17;
77666
77667 }
77668 case 15: {
77669 // Predicate_extload
77670 SDNode *N = Node;
77671 (void)N;
77672if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::EXTLOAD) return false;
77673return true;
77674
77675 }
77676 case 16: {
77677 // Predicate_zextload
77678 SDNode *N = Node;
77679 (void)N;
77680if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::ZEXTLOAD) return false;
77681return true;
77682
77683 }
77684 case 17: {
77685 // Predicate_load
77686 SDNode *N = Node;
77687 (void)N;
77688if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::NON_EXTLOAD) return false;
77689return true;
77690
77691 }
77692 case 18: {
77693 // Predicate_sextload
77694 SDNode *N = Node;
77695 (void)N;
77696if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::SEXTLOAD) return false;
77697return true;
77698
77699 }
77700 case 19: {
77701 // Predicate_asr_imm
77702 // Predicate_long_shift
77703 // Predicate_pkh_asr_amt
77704 // Predicate_shr_imm32
77705 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77706 return Imm > 0 && Imm <= 32;
77707 }
77708 case 20: {
77709 // Predicate_mod_imm
77710 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77711
77712 return ARM_AM::getSOImmVal(Arg: Imm) != -1;
77713
77714 }
77715 case 21: {
77716 // Predicate_itruncstore
77717 // Predicate_truncstore
77718 SDNode *N = Node;
77719 (void)N;
77720 if (!cast<StoreSDNode>(Val: N)->isTruncatingStore()) return false;
77721return true;
77722
77723 }
77724 case 22: {
77725 // Predicate_aligned16_post_store
77726 // Predicate_aligned16_pre_store
77727 // Predicate_alignedstore16
77728 SDNode *N = Node;
77729 (void)N;
77730
77731 return cast<StoreSDNode>(Val: N)->getAlign() >= 2;
77732
77733 }
77734 case 23: {
77735 // Predicate_imm0_15
77736 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77737
77738 return Imm >= 0 && Imm < 16;
77739
77740 }
77741 case 24: {
77742 // Predicate_extloadvi16
77743 // Predicate_sextloadvi16
77744 // Predicate_zextloadvi16
77745 SDNode *N = Node;
77746 (void)N;
77747if (cast<LoadSDNode>(Val: N)->getMemoryVT().getScalarType() != MVT::i16) return false;
77748return true;
77749
77750 }
77751 case 25: {
77752 // Predicate_addnsw
77753 // Predicate_subnsw
77754 SDNode *N = Node;
77755 (void)N;
77756
77757 return N->getFlags().hasNoSignedWrap();
77758
77759 }
77760 case 26: {
77761 // Predicate_addnuw
77762 // Predicate_subnuw
77763 SDNode *N = Node;
77764 (void)N;
77765
77766 return N->getFlags().hasNoUnsignedWrap();
77767
77768 }
77769 case 27: {
77770 // Predicate_unindexedload
77771 SDNode *N = Node;
77772 (void)N;
77773if (cast<LoadSDNode>(Val: N)->getAddressingMode() != ISD::UNINDEXED) return false;
77774return true;
77775
77776 }
77777 case 28: {
77778 // Predicate_imm0_7
77779 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77780
77781 return Imm >= 0 && Imm < 8;
77782
77783 }
77784 case 29: {
77785 // Predicate_shr_imm8
77786 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77787 return Imm > 0 && Imm <= 8;
77788 }
77789 case 30: {
77790 // Predicate_shr_imm16
77791 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77792 return Imm > 0 && Imm <= 16;
77793 }
77794 case 31: {
77795 // Predicate_ldaex_1
77796 // Predicate_ldrex_1
77797 // Predicate_stlex_1
77798 // Predicate_strex_1
77799 SDNode *N = Node;
77800 (void)N;
77801
77802 return cast<MemIntrinsicSDNode>(Val: N)->getMemoryVT() == MVT::i8;
77803
77804 }
77805 case 32: {
77806 // Predicate_ldaex_2
77807 // Predicate_ldrex_2
77808 // Predicate_stlex_2
77809 // Predicate_strex_2
77810 SDNode *N = Node;
77811 (void)N;
77812
77813 return cast<MemIntrinsicSDNode>(Val: N)->getMemoryVT() == MVT::i16;
77814
77815 }
77816 case 33: {
77817 // Predicate_atomic_load_32
77818 // Predicate_atomic_store_32
77819 SDNode *N = Node;
77820 (void)N;
77821if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i32) return false;
77822return true;
77823
77824 }
77825 case 34: {
77826 // Predicate_VectorIndex32
77827 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77828
77829 return ((uint64_t)Imm) < 2;
77830
77831 }
77832 case 35: {
77833 // Predicate_extloadi1
77834 // Predicate_zextloadi1
77835 SDNode *N = Node;
77836 (void)N;
77837if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i1) return false;
77838return true;
77839
77840 }
77841 case 36: {
77842 // Predicate_ARMimmOneV
77843 SDNode *N = Node;
77844 (void)N;
77845
77846 ConstantSDNode *ConstVal = cast<ConstantSDNode>(Val: N->getOperand(Num: 0));
77847 unsigned EltBits = 0;
77848 uint64_t EltVal = ARM_AM::decodeVMOVModImm(ModImm: ConstVal->getZExtValue(), EltBits);
77849 return (EltBits == N->getValueType(ResNo: 0).getScalarSizeInBits() && EltVal == 0x01);
77850
77851 }
77852 case 37: {
77853 // Predicate_imm_odd
77854 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77855 return (Imm & 1) == 1;
77856 }
77857 case 38: {
77858 // Predicate_hword_alignedstore
77859 SDNode *N = Node;
77860 (void)N;
77861
77862 return cast<StoreSDNode>(Val: N)->getAlign() == 2;
77863
77864 }
77865 case 39: {
77866 // Predicate_byte_alignedstore
77867 SDNode *N = Node;
77868 (void)N;
77869
77870 return cast<StoreSDNode>(Val: N)->getAlign() == 1;
77871
77872 }
77873 case 40: {
77874 // Predicate_aligned_maskedstvi8
77875 // Predicate_aligned_post_maskedstorevi8
77876 // Predicate_aligned_post_truncmaskedstvi8
77877 // Predicate_aligned_pre_maskedstorevi8
77878 // Predicate_aligned_pre_truncmaskedstvi8
77879 // Predicate_aligned_truncmaskedstvi8
77880 SDNode *N = Node;
77881 (void)N;
77882
77883 return cast<MaskedStoreSDNode>(Val: N)->getMemoryVT().getScalarType() == MVT::i8;
77884
77885 }
77886 case 41: {
77887 // Predicate_aligned_maskedstvi16
77888 // Predicate_aligned_post_maskedstorevi16
77889 // Predicate_aligned_post_truncmaskedstvi16
77890 // Predicate_aligned_pre_maskedstorevi16
77891 // Predicate_aligned_pre_truncmaskedstvi16
77892 // Predicate_aligned_truncmaskedstvi16
77893 SDNode *N = Node;
77894 (void)N;
77895
77896 auto *St = cast<MaskedStoreSDNode>(Val: N);
77897 EVT ScalarVT = St->getMemoryVT().getScalarType();
77898 return (ScalarVT == MVT::i16 || ScalarVT == MVT::f16) && St->getAlign() >= 2;
77899
77900 }
77901 case 42: {
77902 // Predicate_imm8_or_16
77903 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77904 return Imm == 8 || Imm == 16;
77905 }
77906 case 43: {
77907 // Predicate_truncstorei16
77908 SDNode *N = Node;
77909 (void)N;
77910if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i16) return false;
77911 if (!cast<StoreSDNode>(Val: N)->isTruncatingStore()) return false;
77912return true;
77913
77914 }
77915 case 44: {
77916 // Predicate_truncstorei8
77917 SDNode *N = Node;
77918 (void)N;
77919if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i8) return false;
77920 if (!cast<StoreSDNode>(Val: N)->isTruncatingStore()) return false;
77921return true;
77922
77923 }
77924 case 45: {
77925 // Predicate_alignedload32
77926 // Predicate_load_align4
77927 SDNode *N = Node;
77928 (void)N;
77929
77930 return cast<LoadSDNode>(Val: N)->getAlign() >= 4;
77931
77932 }
77933 case 46: {
77934 // Predicate_ldaex_4
77935 // Predicate_ldrex_4
77936 // Predicate_stlex_4
77937 // Predicate_strex_4
77938 SDNode *N = Node;
77939 (void)N;
77940
77941 return cast<MemIntrinsicSDNode>(Val: N)->getMemoryVT() == MVT::i32;
77942
77943 }
77944 case 47: {
77945 // Predicate_imm0_255
77946 // Predicate_imm0_255_expr
77947 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77948 return Imm >= 0 && Imm < 256;
77949 }
77950 case 48: {
77951 // Predicate_imm_even
77952 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77953 return (Imm & 1) == 0;
77954 }
77955 case 49: {
77956 // Predicate_imm16_31
77957 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77958
77959 return (int32_t)Imm >= 16 && (int32_t)Imm < 32;
77960
77961 }
77962 case 50: {
77963 // Predicate_post_truncstvi8
77964 // Predicate_pre_truncstvi8
77965 // Predicate_truncstorevi8
77966 SDNode *N = Node;
77967 (void)N;
77968if (cast<StoreSDNode>(Val: N)->getMemoryVT().getScalarType() != MVT::i8) return false;
77969return true;
77970
77971 }
77972 case 51: {
77973 // Predicate_imm0_65535
77974 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
77975
77976 return Imm >= 0 && Imm < 65536;
77977
77978 }
77979 case 52: {
77980 // Predicate_atomic_load_acquire_16
77981 // Predicate_atomic_load_acquire_32
77982 // Predicate_atomic_load_acquire_8
77983 SDNode *N = Node;
77984 (void)N;
77985
77986 AtomicOrdering Ordering = cast<AtomicSDNode>(Val: N)->getSuccessOrdering();
77987 return isAcquireOrStronger(AO: Ordering);
77988
77989 }
77990 case 53: {
77991 // Predicate_atomic_store_release_16
77992 // Predicate_atomic_store_release_32
77993 // Predicate_atomic_store_release_8
77994 SDNode *N = Node;
77995 (void)N;
77996
77997 AtomicOrdering Ordering = cast<AtomicSDNode>(Val: N)->getSuccessOrdering();
77998 return isReleaseOrStronger(AO: Ordering);
77999
78000 }
78001 case 54: {
78002 // Predicate_aligned_maskedstvi32
78003 // Predicate_aligned_post_maskedstorevi32
78004 // Predicate_aligned_pre_maskedstorevi32
78005 SDNode *N = Node;
78006 (void)N;
78007
78008 auto *St = cast<MaskedStoreSDNode>(Val: N);
78009 EVT ScalarVT = St->getMemoryVT().getScalarType();
78010 return (ScalarVT == MVT::i32 || ScalarVT == MVT::f32) && St->getAlign() >= 4;
78011
78012 }
78013 case 55: {
78014 // Predicate_imm1_15
78015 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78016 return Imm > 0 && Imm < 16;
78017 }
78018 case 56: {
78019 // Predicate_t2_so_imm_not
78020 auto *N = cast<ConstantSDNode>(Val: Node);
78021 (void)N;
78022
78023 return ARM_AM::getT2SOImmVal(Arg: ~((uint32_t)N->getZExtValue())) != -1;
78024
78025 }
78026 case 57: {
78027 // Predicate_alignedload16
78028 SDNode *N = Node;
78029 (void)N;
78030
78031 return cast<LoadSDNode>(Val: N)->getAlign() >= 2;
78032
78033 }
78034 case 58: {
78035 // Predicate_hword_alignedload
78036 SDNode *N = Node;
78037 (void)N;
78038
78039 return cast<LoadSDNode>(Val: N)->getAlign() == 2;
78040
78041 }
78042 case 59: {
78043 // Predicate_pre_maskedstore
78044 SDNode *N = Node;
78045 (void)N;
78046
78047 ISD::MemIndexedMode AM = cast<MaskedStoreSDNode>(Val: N)->getAddressingMode();
78048 return AM == ISD::PRE_INC || AM == ISD::PRE_DEC;
78049
78050 }
78051 case 60: {
78052 // Predicate_post_maskedstore
78053 SDNode *N = Node;
78054 (void)N;
78055
78056 ISD::MemIndexedMode AM = cast<MaskedStoreSDNode>(Val: N)->getAddressingMode();
78057 return AM == ISD::POST_INC || AM == ISD::POST_DEC;
78058
78059 }
78060 case 61: {
78061 // Predicate_pkh_lsl_amt
78062 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78063 return Imm >= 0 && Imm < 32;
78064 }
78065 case 62: {
78066 // Predicate_mod_imm_neg
78067 auto *N = cast<ConstantSDNode>(Val: Node);
78068 (void)N;
78069
78070 unsigned Value = -(unsigned)N->getZExtValue();
78071 return Value && ARM_AM::getSOImmVal(Arg: Value) != -1;
78072
78073 }
78074 case 63: {
78075 // Predicate_t2_so_imm_neg
78076 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78077
78078 return Imm && ARM_AM::getT2SOImmVal(Arg: -(uint32_t)Imm) != -1;
78079
78080 }
78081 case 64: {
78082 // Predicate_mod_imm_not
78083 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78084
78085 return ARM_AM::getSOImmVal(Arg: ~(uint32_t)Imm) != -1;
78086
78087 }
78088 case 65: {
78089 // Predicate_imm_sr
78090 auto *N = cast<ConstantSDNode>(Val: Node);
78091 (void)N;
78092
78093 uint64_t Imm = N->getZExtValue();
78094 return Imm > 0 && Imm <= 32;
78095
78096 }
78097 case 66: {
78098 // Predicate_byte_alignedload
78099 SDNode *N = Node;
78100 (void)N;
78101
78102 return cast<LoadSDNode>(Val: N)->getAlign() == 1;
78103
78104 }
78105 case 67: {
78106 // Predicate_imm1_31
78107 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78108 return Imm > 0 && Imm < 32;
78109 }
78110 case 68: {
78111 // Predicate_fadd_contract
78112 SDNode *N = Node;
78113 (void)N;
78114
78115 return N->getFlags().hasAllowContract();
78116
78117 }
78118 case 69: {
78119 // Predicate_imm16
78120 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78121 return Imm == 16;
78122 }
78123 case 70: {
78124 // Predicate_imm0_4095
78125 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78126
78127 return Imm >= 0 && Imm < 4096;
78128
78129 }
78130 case 71: {
78131 // Predicate_imm0_65535_neg
78132 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78133
78134 return -Imm >= 0 && -Imm < 65536;
78135
78136 }
78137 case 72: {
78138 // Predicate_topbitsallzero32
78139 SDNode *N = Node;
78140 (void)N;
78141
78142 return SDValue(N,0)->getValueType(ResNo: 0) == MVT::i32 &&
78143 CurDAG->MaskedValueIsZero(Op: SDValue(N,0), Mask: APInt::getHighBitsSet(numBits: 32, hiBitsSet: 31));
78144
78145 }
78146 case 73: {
78147 // Predicate_bf_inv_mask_imm
78148 auto *N = cast<ConstantSDNode>(Val: Node);
78149 (void)N;
78150
78151 return ARM::isBitFieldInvertedMask(v: N->getZExtValue());
78152
78153 }
78154 case 74: {
78155 // Predicate_imm1_32
78156 auto *N = cast<ConstantSDNode>(Val: Node);
78157 (void)N;
78158
78159 uint64_t Imm = N->getZExtValue();
78160 return Imm > 0 && Imm <= 32;
78161
78162 }
78163 case 75: {
78164 // Predicate_post_truncstvi16
78165 // Predicate_pre_truncstvi16
78166 // Predicate_truncstorevi16
78167 SDNode *N = Node;
78168 (void)N;
78169if (cast<StoreSDNode>(Val: N)->getMemoryVT().getScalarType() != MVT::i16) return false;
78170return true;
78171
78172 }
78173 case 76: {
78174 // Predicate_extloadvi32
78175 // Predicate_sextloadvi32
78176 // Predicate_zextloadvi32
78177 SDNode *N = Node;
78178 (void)N;
78179if (cast<LoadSDNode>(Val: N)->getMemoryVT().getScalarType() != MVT::i32) return false;
78180return true;
78181
78182 }
78183 case 77: {
78184 // Predicate_post_truncmaskedst
78185 SDNode *N = Node;
78186 (void)N;
78187
78188 ISD::MemIndexedMode AM = cast<MaskedStoreSDNode>(Val: N)->getAddressingMode();
78189 return cast<MaskedStoreSDNode>(Val: N)->isTruncatingStore() && (AM == ISD::POST_INC || AM == ISD::POST_DEC);
78190
78191 }
78192 case 78: {
78193 // Predicate_pre_truncmaskedst
78194 SDNode *N = Node;
78195 (void)N;
78196
78197 ISD::MemIndexedMode AM = cast<MaskedStoreSDNode>(Val: N)->getAddressingMode();
78198 return cast<MaskedStoreSDNode>(Val: N)->isTruncatingStore() && (AM == ISD::PRE_INC || AM == ISD::PRE_DEC);
78199
78200 }
78201 case 79: {
78202 // Predicate_aligned_maskedloadvi8
78203 SDNode *N = Node;
78204 (void)N;
78205
78206 auto *Ld = cast<MaskedLoadSDNode>(Val: N);
78207 return Ld->getMemoryVT().getScalarType() == MVT::i8;
78208
78209 }
78210 case 80: {
78211 // Predicate_aligned_maskedloadvi16
78212 SDNode *N = Node;
78213 (void)N;
78214
78215 auto *Ld = cast<MaskedLoadSDNode>(Val: N);
78216 EVT ScalarVT = Ld->getMemoryVT().getScalarType();
78217 return (ScalarVT == MVT::i16 || ScalarVT == MVT::f16) && Ld->getAlign() >= 2;
78218
78219 }
78220 case 81: {
78221 // Predicate_aligned_extmaskedloadvi16
78222 // Predicate_aligned_extmaskedloadvi8
78223 SDNode *N = Node;
78224 (void)N;
78225
78226 auto *Ld = cast<MaskedLoadSDNode>(Val: N);
78227 EVT ScalarVT = Ld->getMemoryVT().getScalarType();
78228 return ScalarVT.isInteger() && Ld->getExtensionType() == ISD::EXTLOAD;
78229
78230 }
78231 case 82: {
78232 // Predicate_aligned_sextmaskedloadvi16
78233 // Predicate_aligned_sextmaskedloadvi8
78234 SDNode *N = Node;
78235 (void)N;
78236
78237 return cast<MaskedLoadSDNode>(Val: N)->getExtensionType() == ISD::SEXTLOAD;
78238
78239 }
78240 case 83: {
78241 // Predicate_aligned_zextmaskedloadvi16
78242 // Predicate_aligned_zextmaskedloadvi8
78243 SDNode *N = Node;
78244 (void)N;
78245
78246 return cast<MaskedLoadSDNode>(Val: N)->getExtensionType() == ISD::ZEXTLOAD;
78247
78248 }
78249 case 84: {
78250 // Predicate_lo16AllZero
78251 auto *N = cast<ConstantSDNode>(Val: Node);
78252 (void)N;
78253
78254 // Returns true if all low 16-bits are 0.
78255 return (((uint32_t)N->getZExtValue()) & 0xFFFFUL) == 0;
78256
78257 }
78258 case 85: {
78259 // Predicate_imm8_255
78260 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78261
78262 return Imm >= 8 && Imm < 256;
78263
78264 }
78265 case 86: {
78266 // Predicate_non_imm32
78267 SDNode *N = Node;
78268 (void)N;
78269 return !isa<ConstantSDNode>(Val: N);
78270 }
78271 case 87: {
78272 // Predicate_imm1_255_neg
78273 auto *N = cast<ConstantSDNode>(Val: Node);
78274 (void)N;
78275
78276 uint32_t Val = -N->getZExtValue();
78277 return (Val > 0 && Val < 255);
78278
78279 }
78280 case 88: {
78281 // Predicate_top16Zero
78282 SDNode *N = Node;
78283 (void)N;
78284
78285 return !SDValue(N,0)->getValueType(ResNo: 0).isVector() &&
78286 CurDAG->MaskedValueIsZero(Op: SDValue(N,0), Mask: APInt::getHighBitsSet(numBits: 32, hiBitsSet: 16));
78287
78288 }
78289 case 89: {
78290 // Predicate_VectorIndex16
78291 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78292
78293 return ((uint64_t)Imm) < 4;
78294
78295 }
78296 case 90: {
78297 // Predicate_word_alignedstore
78298 SDNode *N = Node;
78299 (void)N;
78300
78301 return cast<StoreSDNode>(Val: N)->getAlign() == 4;
78302
78303 }
78304 case 91: {
78305 // Predicate_imm0_239
78306 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78307 return Imm >= 0 && Imm < 240;
78308 }
78309 case 92: {
78310 // Predicate_word_alignedload
78311 SDNode *N = Node;
78312 (void)N;
78313
78314 return cast<LoadSDNode>(Val: N)->getAlign() == 4;
78315
78316 }
78317 case 93: {
78318 // Predicate_truncmaskedst
78319 SDNode *N = Node;
78320 (void)N;
78321
78322 return cast<MaskedStoreSDNode>(Val: N)->isTruncatingStore();
78323
78324 }
78325 case 94: {
78326 // Predicate_aligned_maskedloadvi32
78327 SDNode *N = Node;
78328 (void)N;
78329
78330 auto *Ld = cast<MaskedLoadSDNode>(Val: N);
78331 EVT ScalarVT = Ld->getMemoryVT().getScalarType();
78332 return (ScalarVT == MVT::i32 || ScalarVT == MVT::f32) && Ld->getAlign() >= 4;
78333
78334 }
78335 case 95: {
78336 // Predicate_imm1_7
78337 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78338 return Imm > 0 && Imm < 8;
78339 }
78340 case 96: {
78341 // Predicate_imm0_7_neg
78342 auto *N = cast<ConstantSDNode>(Val: Node);
78343 (void)N;
78344
78345 return (uint32_t)-N->getZExtValue() < 8;
78346
78347 }
78348 case 97: {
78349 // Predicate_imm8_255_neg
78350 auto *N = cast<ConstantSDNode>(Val: Node);
78351 (void)N;
78352
78353 unsigned Val = -N->getZExtValue();
78354 return Val >= 8 && Val < 256;
78355
78356 }
78357 case 98: {
78358 // Predicate_imm0_4095_neg
78359 auto *N = cast<ConstantSDNode>(Val: Node);
78360 (void)N;
78361
78362 return (uint32_t)(-N->getZExtValue()) < 4096;
78363
78364 }
78365 case 99: {
78366 // Predicate_t2_so_imm_notSext
78367 auto *N = cast<ConstantSDNode>(Val: Node);
78368 (void)N;
78369
78370 APInt apIntN = N->getAPIntValue();
78371 if (!apIntN.isIntN(N: 16)) return false;
78372 unsigned N16bitSignExt = apIntN.trunc(width: 16).sext(width: 32).getZExtValue();
78373 return ARM_AM::getT2SOImmVal(Arg: ~N16bitSignExt) != -1;
78374
78375 }
78376 case 100: {
78377 // Predicate_imm1_16
78378 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78379
78380 return Imm > 0 && Imm <= 16;
78381
78382 }
78383 case 101: {
78384 // Predicate_non_word_alignedstore
78385 SDNode *N = Node;
78386 (void)N;
78387
78388 return cast<StoreSDNode>(Val: N)->getAlign() < 4;
78389
78390 }
78391 case 102: {
78392 // Predicate_dword_alignedstore
78393 SDNode *N = Node;
78394 (void)N;
78395
78396 return cast<StoreSDNode>(Val: N)->getAlign() >= 8;
78397
78398 }
78399 case 103: {
78400 // Predicate_non_word_alignedload
78401 SDNode *N = Node;
78402 (void)N;
78403
78404 return cast<LoadSDNode>(Val: N)->getAlign() < 4;
78405
78406 }
78407 case 104: {
78408 // Predicate_dword_alignedload
78409 SDNode *N = Node;
78410 (void)N;
78411
78412 return cast<LoadSDNode>(Val: N)->getAlign() >= 8;
78413
78414 }
78415 case 105: {
78416 // Predicate_lo5AllOne
78417 auto *N = cast<ConstantSDNode>(Val: Node);
78418 (void)N;
78419
78420 // Returns true if all low 5-bits are 1.
78421 return (((uint32_t)N->getZExtValue()) & 0x1FUL) == 0x1FUL;
78422
78423 }
78424 case 106: {
78425 // Predicate_imm0_255_not
78426 auto *N = cast<ConstantSDNode>(Val: Node);
78427 (void)N;
78428
78429 return (uint32_t)(~N->getZExtValue()) < 255;
78430
78431 }
78432 case 107: {
78433 // Predicate_arm_i32imm
78434 const APInt & Imm = Node->getAsAPIntVal();
78435
78436 if (Subtarget->useMovt())
78437 return true;
78438 if (ARM_AM::isSOImmTwoPartVal(V: Imm.getZExtValue()))
78439 return true;
78440 return ARM_AM::isSOImmTwoPartValNeg(V: Imm.getZExtValue());
78441
78442 }
78443 case 108: {
78444 // Predicate_thumb_immshifted
78445 auto *N = cast<ConstantSDNode>(Val: Node);
78446 (void)N;
78447
78448 return ARM_AM::isThumbImmShiftedVal(V: (unsigned)N->getZExtValue());
78449
78450 }
78451 case 109: {
78452 // Predicate_imm0_255_comp
78453 auto *N = cast<ConstantSDNode>(Val: Node);
78454 (void)N;
78455
78456 return ~((uint32_t)N->getZExtValue()) < 256;
78457
78458 }
78459 case 110: {
78460 // Predicate_imm256_510
78461 int64_t Imm = cast<ConstantSDNode>(Val: Node)->getSExtValue();
78462
78463 return Imm >= 256 && Imm < 511;
78464
78465 }
78466 case 111: {
78467 // Predicate_vfp_f64imm
78468 auto *N = cast<ConstantFPSDNode>(Val: Node);
78469 (void)N;
78470
78471 return ARM_AM::getFP64Imm(FPImm: N->getValueAPF()) != -1;
78472
78473 }
78474 case 112: {
78475 // Predicate_vfp_f32imm
78476 auto *N = cast<ConstantFPSDNode>(Val: Node);
78477 (void)N;
78478
78479 return ARM_AM::getFP32Imm(FPImm: N->getValueAPF()) != -1;
78480
78481 }
78482 case 113: {
78483 // Predicate_vfp_f32f16imm
78484 auto *N = cast<ConstantFPSDNode>(Val: Node);
78485 (void)N;
78486
78487 return ARM_AM::getFP32FP16Imm(FPImm: N->getValueAPF()) != -1;
78488
78489 }
78490 case 114: {
78491 // Predicate_vfp_f16imm
78492 auto *N = cast<ConstantFPSDNode>(Val: Node);
78493 (void)N;
78494
78495 return ARM_AM::getFP16Imm(FPImm: N->getValueAPF()) != -1;
78496
78497 }
78498 }
78499}
78500#endif // GET_DAGISEL_BODY
78501
78502#ifdef GET_DAGISEL_DECL
78503bool CheckComplexPattern(SDNode *Root, SDNode *Parent,
78504 SDValue N, unsigned PatternNo,
78505 SmallVectorImpl<std::pair<SDValue, SDNode *>> &Result) override;
78506#endif
78507#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
78508bool DAGISEL_CLASS_COLONCOLON CheckComplexPattern(SDNode *Root, SDNode *Parent,
78509 SDValue N, unsigned PatternNo,
78510 SmallVectorImpl<std::pair<SDValue, SDNode *>> &Result)
78511#if DAGISEL_INLINE
78512 override
78513#endif
78514{
78515 unsigned NextRes = Result.size();
78516 switch (PatternNo) {
78517 default: llvm_unreachable("Invalid pattern # in table?");
78518 case 0:
78519 Result.resize(N: NextRes+2);
78520 return SelectAddrMode6(Parent, N, Addr&: Result[NextRes+0].first, Align&: Result[NextRes+1].first);
78521 case 1:
78522 Result.resize(N: NextRes+1);
78523 return SelectAddrOffsetNone(N, Base&: Result[NextRes+0].first);
78524 case 2:
78525 Result.resize(N: NextRes+2);
78526 return SelectCMOVPred(N, Pred&: Result[NextRes+0].first, Reg&: Result[NextRes+1].first);
78527 case 3:
78528 Result.resize(N: NextRes+2);
78529 return SelectAddrMode5(N, Base&: Result[NextRes+0].first, Offset&: Result[NextRes+1].first);
78530 case 4:
78531 Result.resize(N: NextRes+3);
78532 return SelectRegShifterOperand(N, A&: Result[NextRes+0].first, B&: Result[NextRes+1].first, C&: Result[NextRes+2].first);
78533 case 5:
78534 Result.resize(N: NextRes+2);
78535 return SelectImmShifterOperand(N, A&: Result[NextRes+0].first, B&: Result[NextRes+1].first);
78536 case 6:
78537 Result.resize(N: NextRes+2);
78538 return SelectT2AddrModeImm7<0>(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78539 case 7:
78540 Result.resize(N: NextRes+2);
78541 return SelectShiftImmShifterOperand(N, A&: Result[NextRes+0].first, B&: Result[NextRes+1].first);
78542 case 8:
78543 Result.resize(N: NextRes+2);
78544 return SelectAddrMode6(Parent, N, Addr&: Result[NextRes+0].first, Align&: Result[NextRes+1].first);
78545 case 9:
78546 Result.resize(N: NextRes+1);
78547 return SelectT2AddrModeImm7Offset<0>(Op: Root, N, OffImm&: Result[NextRes+0].first);
78548 case 10:
78549 Result.resize(N: NextRes+1);
78550 return SelectT2AddrModeImm7Offset<1>(Op: Root, N, OffImm&: Result[NextRes+0].first);
78551 case 11:
78552 Result.resize(N: NextRes+2);
78553 return SelectT2AddrModeImm12(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78554 case 12:
78555 Result.resize(N: NextRes+2);
78556 return SelectT2AddrModeImm7<1>(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78557 case 13:
78558 Result.resize(N: NextRes+2);
78559 return SelectT2AddrModeImm7<2>(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78560 case 14:
78561 Result.resize(N: NextRes+1);
78562 return SelectT2AddrModeImm7Offset<2>(Op: Root, N, OffImm&: Result[NextRes+0].first);
78563 case 15:
78564 Result.resize(N: NextRes+3);
78565 return SelectT2AddrModeSoReg(N, Base&: Result[NextRes+0].first, OffReg&: Result[NextRes+1].first, ShImm&: Result[NextRes+2].first);
78566 case 16:
78567 Result.resize(N: NextRes+2);
78568 return SelectT2AddrModeImm8(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78569 case 17:
78570 Result.resize(N: NextRes+2);
78571 return SelectThumbAddrModeRR(N, Base&: Result[NextRes+0].first, Offset&: Result[NextRes+1].first);
78572 case 18:
78573 Result.resize(N: NextRes+2);
78574 return SelectTAddrModeImm7<0>(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78575 case 19:
78576 Result.resize(N: NextRes+3);
78577 return SelectLdStSOReg(N, Base&: Result[NextRes+0].first, Offset&: Result[NextRes+1].first, Opc&: Result[NextRes+2].first);
78578 case 20:
78579 Result.resize(N: NextRes+2);
78580 return SelectAddrModeImm12(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78581 case 21:
78582 Result.resize(N: NextRes+3);
78583 return SelectAddrMode3(N, Base&: Result[NextRes+0].first, Offset&: Result[NextRes+1].first, Opc&: Result[NextRes+2].first);
78584 case 22:
78585 Result.resize(N: NextRes+2);
78586 return SelectAddrModePC(N, Offset&: Result[NextRes+0].first, Label&: Result[NextRes+1].first);
78587 case 23:
78588 Result.resize(N: NextRes+1);
78589 return SelectAddLikeOr(Parent, N, Out&: Result[NextRes+0].first);
78590 case 24:
78591 Result.resize(N: NextRes+1);
78592 return SelectImmediateInRange<1,8>(N, OffImm&: Result[NextRes+0].first);
78593 case 25:
78594 Result.resize(N: NextRes+1);
78595 return SelectImmediateInRange<1,16>(N, OffImm&: Result[NextRes+0].first);
78596 case 26:
78597 Result.resize(N: NextRes+2);
78598 return SelectThumbAddrModeImm5S2(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78599 case 27:
78600 Result.resize(N: NextRes+2);
78601 return SelectThumbAddrModeImm5S1(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78602 case 28:
78603 Result.resize(N: NextRes+2);
78604 return SelectTAddrModeImm7<1>(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78605 case 29:
78606 Result.resize(N: NextRes+1);
78607 return SelectAddrMode6Offset(Op: Root, N, Offset&: Result[NextRes+0].first);
78608 case 30:
78609 Result.resize(N: NextRes+1);
78610 return SelectT2AddrModeImm8Offset(Op: Root, N, OffImm&: Result[NextRes+0].first);
78611 case 31:
78612 Result.resize(N: NextRes+2);
78613 return SelectThumbAddrModeSP(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78614 case 32:
78615 Result.resize(N: NextRes+3);
78616 return SelectShiftRegShifterOperand(N, A&: Result[NextRes+0].first, B&: Result[NextRes+1].first, C&: Result[NextRes+2].first);
78617 case 33:
78618 Result.resize(N: NextRes+2);
78619 return SelectShiftImmShifterOperand(N, A&: Result[NextRes+0].first, B&: Result[NextRes+1].first);
78620 case 34:
78621 Result.resize(N: NextRes+2);
78622 return SelectAddrMode2OffsetReg(Op: Root, N, Offset&: Result[NextRes+0].first, Opc&: Result[NextRes+1].first);
78623 case 35:
78624 Result.resize(N: NextRes+2);
78625 return SelectAddrMode2OffsetImm(Op: Root, N, Offset&: Result[NextRes+0].first, Opc&: Result[NextRes+1].first);
78626 case 36:
78627 Result.resize(N: NextRes+2);
78628 return SelectThumbAddrModeImm5S4(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78629 case 37:
78630 Result.resize(N: NextRes+2);
78631 return SelectAddrMode5FP16(N, Base&: Result[NextRes+0].first, Offset&: Result[NextRes+1].first);
78632 case 38:
78633 Result.resize(N: NextRes+2);
78634 return SelectTAddrModeImm7<2>(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78635 case 39:
78636 Result.resize(N: NextRes+2);
78637 return SelectAddrMode3Offset(Op: Root, N, Offset&: Result[NextRes+0].first, Opc&: Result[NextRes+1].first);
78638 case 40:
78639 Result.resize(N: NextRes+2);
78640 return SelectShiftImmShifterOperandOneUse(N, A&: Result[NextRes+0].first, B&: Result[NextRes+1].first);
78641 case 41:
78642 Result.resize(N: NextRes+2);
78643 return SelectThumbAddrModeRRSext(N, Base&: Result[NextRes+0].first, Offset&: Result[NextRes+1].first);
78644 case 42:
78645 Result.resize(N: NextRes+2);
78646 return SelectT2AddrModeExclusive(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78647 case 43:
78648 Result.resize(N: NextRes+2);
78649 return SelectT2AddrModeImm8<2>(N, Base&: Result[NextRes+0].first, OffImm&: Result[NextRes+1].first);
78650 case 44:
78651 Result.resize(N: NextRes+2);
78652 return SelectAddrMode6(Parent, N, Addr&: Result[NextRes+0].first, Align&: Result[NextRes+1].first);
78653 case 45:
78654 Result.resize(N: NextRes+2);
78655 return SelectAddrMode6(Parent, N, Addr&: Result[NextRes+0].first, Align&: Result[NextRes+1].first);
78656 case 46:
78657 Result.resize(N: NextRes+2);
78658 return SelectAddrMode6(Parent, N, Addr&: Result[NextRes+0].first, Align&: Result[NextRes+1].first);
78659 case 47:
78660 Result.resize(N: NextRes+2);
78661 return SelectAddrMode6(Parent, N, Addr&: Result[NextRes+0].first, Align&: Result[NextRes+1].first);
78662 }
78663}
78664#endif // GET_DAGISEL_BODY
78665
78666#ifdef GET_DAGISEL_DECL
78667SDValue RunSDNodeXForm(SDValue V, unsigned XFormNo) override;
78668#endif
78669#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
78670SDValue DAGISEL_CLASS_COLONCOLON RunSDNodeXForm(SDValue V, unsigned XFormNo)
78671#if DAGISEL_INLINE
78672 override
78673#endif
78674{
78675 switch (XFormNo) {
78676 default: llvm_unreachable("Invalid xform # in table?");
78677 case 0: {
78678 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78679
78680 return CurDAG->getTargetConstant(Val: (uint32_t)N->getZExtValue() >> 16, DL: SDLoc(N),
78681 VT: MVT::i32);
78682
78683 }
78684 case 1: {
78685 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78686
78687 return CurDAG->getTargetConstant(Val: ~((uint32_t)N->getZExtValue()), DL: SDLoc(N),
78688 VT: MVT::i32);
78689
78690 }
78691 case 2: {
78692 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78693
78694 switch (N->getZExtValue()){
78695 default: llvm_unreachable(nullptr);
78696 case 0: return CurDAG->getTargetConstant(Val: 0, DL: SDLoc(N), VT: MVT::i32);
78697 case 8: return CurDAG->getTargetConstant(Val: 1, DL: SDLoc(N), VT: MVT::i32);
78698 case 16: return CurDAG->getTargetConstant(Val: 2, DL: SDLoc(N), VT: MVT::i32);
78699 case 24: return CurDAG->getTargetConstant(Val: 3, DL: SDLoc(N), VT: MVT::i32);
78700 }
78701
78702 }
78703 case 3: {
78704 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78705
78706 return CurDAG->getTargetConstant(Val: -(int)N->getZExtValue(), DL: SDLoc(N), VT: MVT::i32);
78707
78708 }
78709 case 4: {
78710 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78711
78712 return CurDAG->getTargetConstant(Val: -((int)N->getZExtValue()), DL: SDLoc(N),
78713 VT: MVT::i32);
78714
78715 }
78716 case 5: {
78717 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78718
78719 assert(ARM::dsub_7 == ARM::dsub_0+7 && "Unexpected subreg numbering");
78720 return CurDAG->getTargetConstant(Val: ARM::dsub_0 + N->getZExtValue()/4, DL: SDLoc(N),
78721 VT: MVT::i32);
78722
78723 }
78724 case 6: {
78725 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78726
78727 return CurDAG->getTargetConstant(Val: N->getZExtValue() & 3, DL: SDLoc(N), VT: MVT::i32);
78728
78729 }
78730 case 7: {
78731 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78732
78733 assert(ARM::dsub_7 == ARM::dsub_0+7 && "Unexpected subreg numbering");
78734 return CurDAG->getTargetConstant(Val: ARM::dsub_0 + N->getZExtValue()/2, DL: SDLoc(N),
78735 VT: MVT::i32);
78736
78737 }
78738 case 8: {
78739 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78740
78741 return CurDAG->getTargetConstant(Val: N->getZExtValue() & 1, DL: SDLoc(N), VT: MVT::i32);
78742
78743 }
78744 case 9: {
78745 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78746
78747 return CurDAG->getTargetConstant(Val: ~(int)N->getZExtValue(), DL: SDLoc(N), VT: MVT::i32);
78748
78749 }
78750 case 10: {
78751 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78752
78753 APInt apIntN = N->getAPIntValue();
78754 unsigned N16bitSignExt = apIntN.trunc(width: 16).sext(width: 32).getZExtValue();
78755 return CurDAG->getTargetConstant(Val: ~N16bitSignExt, DL: SDLoc(N), VT: MVT::i32);
78756
78757 }
78758 case 11: {
78759 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78760
78761 return CurDAG->getTargetConstant(Val: (int)N->getZExtValue() - 1, DL: SDLoc(N),
78762 VT: MVT::i32);
78763
78764 }
78765 case 12: {
78766 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78767
78768 return CurDAG->getTargetConstant(Val: 0x20 | N->getZExtValue(), DL: SDLoc(N), VT: MVT:: i32);
78769
78770 }
78771 case 13: {
78772 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78773
78774 return CurDAG->getTargetConstant(Val: (int)N->getZExtValue() - 1, DL: SDLoc(N),
78775 VT: MVT::i32);
78776
78777 }
78778 case 14: {
78779 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78780
78781 unsigned Imm = N->getZExtValue();
78782 return CurDAG->getTargetConstant(Val: (Imm == 32 ? 0 : Imm), DL: SDLoc(N), VT: MVT::i32);
78783
78784 }
78785 case 15: {
78786 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78787
78788 ARMCC::CondCodes CC = static_cast<ARMCC::CondCodes>(N->getZExtValue());
78789 return CurDAG->getTargetConstant(Val: ARMCC::getOppositeCondition(CC), DL: SDLoc(N),
78790 VT: MVT::i32);
78791
78792 }
78793 case 16: {
78794 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78795
78796 assert(ARM::dsub_7 == ARM::dsub_0+7 && "Unexpected subreg numbering");
78797 return CurDAG->getTargetConstant(Val: ARM::dsub_0 + N->getZExtValue()/8, DL: SDLoc(N),
78798 VT: MVT::i32);
78799
78800 }
78801 case 17: {
78802 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78803
78804 return CurDAG->getTargetConstant(Val: N->getZExtValue() & 7, DL: SDLoc(N), VT: MVT::i32);
78805
78806 }
78807 case 18: {
78808 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78809
78810 assert(ARM::ssub_3 == ARM::ssub_0+3 && "Unexpected subreg numbering");
78811 return CurDAG->getTargetConstant(Val: ARM::ssub_0 + N->getZExtValue(), DL: SDLoc(N),
78812 VT: MVT::i32);
78813
78814 }
78815 case 19: {
78816 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78817
78818 assert(ARM::ssub_3 == ARM::ssub_0+3 && "Unexpected subreg numbering");
78819 return CurDAG->getTargetConstant(Val: ARM::ssub_0 + N->getZExtValue()/2, DL: SDLoc(N),
78820 VT: MVT::i32);
78821
78822 }
78823 case 20: {
78824 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78825
78826 assert(ARM::dsub_7 == ARM::dsub_0+7 && "Unexpected subreg numbering");
78827 return CurDAG->getTargetConstant(Val: ARM::dsub_0 + N->getZExtValue(), DL: SDLoc(N),
78828 VT: MVT::i32);
78829
78830 }
78831 case 21: {
78832 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78833
78834 unsigned V = ARM_AM::getThumbImmNonShiftedVal(V: (unsigned)N->getZExtValue());
78835 return CurDAG->getTargetConstant(Val: V, DL: SDLoc(N), VT: MVT::i32);
78836
78837 }
78838 case 22: {
78839 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78840
78841 unsigned V = ARM_AM::getThumbImmValShift(Imm: (unsigned)N->getZExtValue());
78842 return CurDAG->getTargetConstant(Val: V, DL: SDLoc(N), VT: MVT::i32);
78843
78844 }
78845 case 23: {
78846 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
78847
78848 return CurDAG->getTargetConstant(Val: N->getZExtValue() - 255, DL: SDLoc(N), VT: MVT::i32);
78849
78850 }
78851 case 24: {
78852 ConstantFPSDNode *N = cast<ConstantFPSDNode>(Val: V.getNode());
78853
78854 APFloat InVal = N->getValueAPF();
78855 uint32_t enc = ARM_AM::getFP64Imm(FPImm: InVal);
78856 return CurDAG->getTargetConstant(Val: enc, DL: SDLoc(N), VT: MVT::i32);
78857
78858 }
78859 case 25: {
78860 ConstantFPSDNode *N = cast<ConstantFPSDNode>(Val: V.getNode());
78861
78862 APFloat InVal = N->getValueAPF();
78863 uint32_t enc = ARM_AM::getFP32Imm(FPImm: InVal);
78864 return CurDAG->getTargetConstant(Val: enc, DL: SDLoc(N), VT: MVT::i32);
78865
78866 }
78867 case 26: {
78868 ConstantFPSDNode *N = cast<ConstantFPSDNode>(Val: V.getNode());
78869
78870 APFloat InVal = N->getValueAPF();
78871 uint32_t enc = ARM_AM::getFP32FP16Imm(FPImm: InVal);
78872 return CurDAG->getTargetConstant(Val: enc, DL: SDLoc(N), VT: MVT::i32);
78873
78874 }
78875 case 27: {
78876 ConstantFPSDNode *N = cast<ConstantFPSDNode>(Val: V.getNode());
78877
78878 APFloat InVal = N->getValueAPF();
78879 uint32_t enc = ARM_AM::getFP16Imm(FPImm: InVal);
78880 return CurDAG->getTargetConstant(Val: enc, DL: SDLoc(N), VT: MVT::i32);
78881
78882 }
78883 }
78884}
78885#endif // GET_DAGISEL_BODY
78886
78887
78888#ifdef DAGISEL_INLINE
78889#undef DAGISEL_INLINE
78890#endif
78891#ifdef DAGISEL_CLASS_COLONCOLON
78892#undef DAGISEL_CLASS_COLONCOLON
78893#endif
78894#ifdef GET_DAGISEL_DECL
78895#undef GET_DAGISEL_DECL
78896#endif
78897#ifdef GET_DAGISEL_BODY
78898#undef GET_DAGISEL_BODY
78899#endif
78900