1/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2|* *|
3|* DAG Instruction Selector for the Sparc target *|
4|* *|
5|* Automatically generated file, do not edit! *|
6|* *|
7\*===----------------------------------------------------------------------===*/
8
9// *** NOTE: This file is #included into the middle of the target
10// *** instruction selector class. These functions are really methods.
11
12// If GET_DAGISEL_DECL is #defined with any value, only function
13// declarations will be included when this file is included.
14// If GET_DAGISEL_BODY is #defined, its value should be the name of
15// the instruction selector class. Function bodies will be emitted
16// and each function's name will be qualified with the name of the
17// class.
18//
19// When neither of the GET_DAGISEL* macros is defined, the functions
20// are emitted inline.
21
22#if defined(GET_DAGISEL_DECL) && defined(GET_DAGISEL_BODY)
23#error GET_DAGISEL_DECL and GET_DAGISEL_BODY cannot be both defined, undef both for inline definitions
24#endif
25
26#ifdef GET_DAGISEL_BODY
27#define LOCAL_DAGISEL_STRINGIZE(X) LOCAL_DAGISEL_STRINGIZE_(X)
28#define LOCAL_DAGISEL_STRINGIZE_(X) #X
29static_assert(sizeof(LOCAL_DAGISEL_STRINGIZE(GET_DAGISEL_BODY)) > 1,
30 "GET_DAGISEL_BODY is empty: it should be defined with the class name");
31#undef LOCAL_DAGISEL_STRINGIZE_
32#undef LOCAL_DAGISEL_STRINGIZE
33#endif
34
35#if !defined(GET_DAGISEL_DECL) && !defined(GET_DAGISEL_BODY)
36#define DAGISEL_INLINE 1
37#else
38#define DAGISEL_INLINE 0
39#endif
40
41#if !DAGISEL_INLINE
42#define DAGISEL_CLASS_COLONCOLON GET_DAGISEL_BODY ::
43#else
44#define DAGISEL_CLASS_COLONCOLON
45#endif
46
47#ifdef GET_DAGISEL_DECL
48void SelectCode(SDNode *N);
49#endif
50#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
51void DAGISEL_CLASS_COLONCOLON SelectCode(SDNode *N)
52{
53 // Some target values are emitted as 2 bytes, TARGET_VAL handles
54 // this. Coverage indexes are emitted as 4 bytes,
55 // COVERAGE_IDX_VAL handles this.
56 #define TARGET_VAL(X) X & 255, unsigned(X) >> 8
57 #define COVERAGE_IDX_VAL(X) X & 255, (unsigned(X) >> 8) & 255, (unsigned(X) >> 16) & 255, (unsigned(X) >> 24) & 255
58 static const unsigned char MatcherTable[] = {
59 OPC_SwitchOpcode , 108|128,3, TARGET_VAL(ISD::STORE),
60 OPC_RecordMemRef,
61 OPC_RecordNode,
62 OPC_Scope, 75,
63 OPC_CheckChild1Integer, 0,
64 OPC_Scope, 34,
65 OPC_CheckChild1TypeI32,
66 OPC_RecordChild2,
67 OPC_CheckPredicate3,
68 OPC_CheckPredicate4,
69 OPC_Scope, 13,
70 OPC_CheckComplexPat0, /*#*/1,
71 OPC_EmitMergeInputChains1_0,
72 OPC_EmitRegisterI32, SP::G0,
73 OPC_MorphNodeTo0, TARGET_VAL(SP::STrr), 0|OPFL_Chain|OPFL_MemRefs,
74 3, 2, 3, 4,
75 13,
76 OPC_CheckComplexPat1, /*#*/1,
77 OPC_EmitMergeInputChains1_0,
78 OPC_EmitRegisterI32, SP::G0,
79 OPC_MorphNodeTo0, TARGET_VAL(SP::STri), 0|OPFL_Chain|OPFL_MemRefs,
80 3, 2, 3, 4,
81 0,
82 35,
83 OPC_CheckChild1TypeI64,
84 OPC_RecordChild2,
85 OPC_CheckPredicate3,
86 OPC_CheckPredicate4,
87 OPC_CheckPatternPredicate0,
88 OPC_Scope, 13,
89 OPC_CheckComplexPat0, /*#*/1,
90 OPC_EmitMergeInputChains1_0,
91 OPC_EmitRegisterI64, SP::G0,
92 OPC_MorphNodeTo0, TARGET_VAL(SP::STXrr), 0|OPFL_Chain|OPFL_MemRefs,
93 3, 2, 3, 4,
94 13,
95 OPC_CheckComplexPat1, /*#*/1,
96 OPC_EmitMergeInputChains1_0,
97 OPC_EmitRegisterI64, SP::G0,
98 OPC_MorphNodeTo0, TARGET_VAL(SP::STXri), 0|OPFL_Chain|OPFL_MemRefs,
99 3, 2, 3, 4,
100 0,
101 0,
102 26|128,3,
103 OPC_RecordChild1,
104 OPC_Scope, 122,
105 OPC_CheckChild1TypeI32,
106 OPC_RecordChild2,
107 OPC_CheckPredicate3,
108 OPC_Scope, 60,
109 OPC_CheckPredicate, 17,
110 OPC_Scope, 27,
111 OPC_CheckPredicate1,
112 OPC_Scope, 11,
113 OPC_CheckComplexPat0, /*#*/2,
114 OPC_EmitMergeInputChains1_0,
115 OPC_MorphNodeTo0, TARGET_VAL(SP::STBrr), 0|OPFL_Chain|OPFL_MemRefs,
116 3, 3, 4, 1,
117 11,
118 OPC_CheckComplexPat1, /*#*/2,
119 OPC_EmitMergeInputChains1_0,
120 OPC_MorphNodeTo0, TARGET_VAL(SP::STBri), 0|OPFL_Chain|OPFL_MemRefs,
121 3, 3, 4, 1,
122 0,
123 27,
124 OPC_CheckPredicate2,
125 OPC_Scope, 11,
126 OPC_CheckComplexPat0, /*#*/2,
127 OPC_EmitMergeInputChains1_0,
128 OPC_MorphNodeTo0, TARGET_VAL(SP::STHrr), 0|OPFL_Chain|OPFL_MemRefs,
129 3, 3, 4, 1,
130 11,
131 OPC_CheckComplexPat1, /*#*/2,
132 OPC_EmitMergeInputChains1_0,
133 OPC_MorphNodeTo0, TARGET_VAL(SP::STHri), 0|OPFL_Chain|OPFL_MemRefs,
134 3, 3, 4, 1,
135 0,
136 0,
137 55,
138 OPC_CheckPredicate4,
139 OPC_Scope, 11,
140 OPC_CheckComplexPat0, /*#*/2,
141 OPC_EmitMergeInputChains1_0,
142 OPC_MorphNodeTo0, TARGET_VAL(SP::STrr), 0|OPFL_Chain|OPFL_MemRefs,
143 3, 3, 4, 1,
144 11,
145 OPC_CheckComplexPat1, /*#*/2,
146 OPC_EmitMergeInputChains1_0,
147 OPC_MorphNodeTo0, TARGET_VAL(SP::STri), 0|OPFL_Chain|OPFL_MemRefs,
148 3, 3, 4, 1,
149 27,
150 OPC_CheckPatternPredicate5,
151 OPC_Scope, 11,
152 OPC_CheckComplexPat0, /*#*/2,
153 OPC_EmitMergeInputChains1_0,
154 OPC_MorphNodeTo0, TARGET_VAL(SP::STCrr), 0|OPFL_Chain|OPFL_MemRefs,
155 3, 3, 4, 1,
156 11,
157 OPC_CheckComplexPat1, /*#*/2,
158 OPC_EmitMergeInputChains1_0,
159 OPC_MorphNodeTo0, TARGET_VAL(SP::STCri), 0|OPFL_Chain|OPFL_MemRefs,
160 3, 3, 4, 1,
161 0,
162 0,
163 0,
164 59,
165 OPC_CheckChild1Type, 60,
166 OPC_RecordChild2,
167 OPC_CheckPredicate3,
168 OPC_CheckPredicate4,
169 OPC_Scope, 11,
170 OPC_CheckComplexPat0, /*#*/2,
171 OPC_EmitMergeInputChains1_0,
172 OPC_MorphNodeTo0, TARGET_VAL(SP::STDrr), 0|OPFL_Chain|OPFL_MemRefs,
173 3, 3, 4, 1,
174 11,
175 OPC_CheckComplexPat1, /*#*/2,
176 OPC_EmitMergeInputChains1_0,
177 OPC_MorphNodeTo0, TARGET_VAL(SP::STDri), 0|OPFL_Chain|OPFL_MemRefs,
178 3, 3, 4, 1,
179 27,
180 OPC_CheckPatternPredicate5,
181 OPC_Scope, 11,
182 OPC_CheckComplexPat0, /*#*/2,
183 OPC_EmitMergeInputChains1_0,
184 OPC_MorphNodeTo0, TARGET_VAL(SP::STDCrr), 0|OPFL_Chain|OPFL_MemRefs,
185 3, 3, 4, 1,
186 11,
187 OPC_CheckComplexPat1, /*#*/2,
188 OPC_EmitMergeInputChains1_0,
189 OPC_MorphNodeTo0, TARGET_VAL(SP::STDCri), 0|OPFL_Chain|OPFL_MemRefs,
190 3, 3, 4, 1,
191 0,
192 0,
193 31,
194 OPC_CheckChild1Type, 12,
195 OPC_RecordChild2,
196 OPC_CheckPredicate3,
197 OPC_CheckPredicate4,
198 OPC_Scope, 11,
199 OPC_CheckComplexPat0, /*#*/2,
200 OPC_EmitMergeInputChains1_0,
201 OPC_MorphNodeTo0, TARGET_VAL(SP::STFrr), 0|OPFL_Chain|OPFL_MemRefs,
202 3, 3, 4, 1,
203 11,
204 OPC_CheckComplexPat1, /*#*/2,
205 OPC_EmitMergeInputChains1_0,
206 OPC_MorphNodeTo0, TARGET_VAL(SP::STFri), 0|OPFL_Chain|OPFL_MemRefs,
207 3, 3, 4, 1,
208 0,
209 31,
210 OPC_CheckChild1Type, 13,
211 OPC_RecordChild2,
212 OPC_CheckPredicate3,
213 OPC_CheckPredicate4,
214 OPC_Scope, 11,
215 OPC_CheckComplexPat0, /*#*/2,
216 OPC_EmitMergeInputChains1_0,
217 OPC_MorphNodeTo0, TARGET_VAL(SP::STDFrr), 0|OPFL_Chain|OPFL_MemRefs,
218 3, 3, 4, 1,
219 11,
220 OPC_CheckComplexPat1, /*#*/2,
221 OPC_EmitMergeInputChains1_0,
222 OPC_MorphNodeTo0, TARGET_VAL(SP::STDFri), 0|OPFL_Chain|OPFL_MemRefs,
223 3, 3, 4, 1,
224 0,
225 32,
226 OPC_CheckChild1Type, 15,
227 OPC_RecordChild2,
228 OPC_CheckPredicate3,
229 OPC_CheckPredicate4,
230 OPC_CheckPatternPredicate2,
231 OPC_Scope, 11,
232 OPC_CheckComplexPat0, /*#*/2,
233 OPC_EmitMergeInputChains1_0,
234 OPC_MorphNodeTo0, TARGET_VAL(SP::STQFrr), 0|OPFL_Chain|OPFL_MemRefs,
235 3, 3, 4, 1,
236 11,
237 OPC_CheckComplexPat1, /*#*/2,
238 OPC_EmitMergeInputChains1_0,
239 OPC_MorphNodeTo0, TARGET_VAL(SP::STQFri), 0|OPFL_Chain|OPFL_MemRefs,
240 3, 3, 4, 1,
241 0,
242 126,
243 OPC_CheckChild1TypeI64,
244 OPC_RecordChild2,
245 OPC_CheckPredicate3,
246 OPC_Scope, 28,
247 OPC_CheckPredicate4,
248 OPC_CheckPatternPredicate0,
249 OPC_Scope, 11,
250 OPC_CheckComplexPat0, /*#*/2,
251 OPC_EmitMergeInputChains1_0,
252 OPC_MorphNodeTo0, TARGET_VAL(SP::STXrr), 0|OPFL_Chain|OPFL_MemRefs,
253 3, 3, 4, 1,
254 11,
255 OPC_CheckComplexPat1, /*#*/2,
256 OPC_EmitMergeInputChains1_0,
257 OPC_MorphNodeTo0, TARGET_VAL(SP::STXri), 0|OPFL_Chain|OPFL_MemRefs,
258 3, 3, 4, 1,
259 0,
260 91,
261 OPC_CheckPredicate, 17,
262 OPC_Scope, 28,
263 OPC_CheckPredicate1,
264 OPC_CheckPatternPredicate0,
265 OPC_Scope, 11,
266 OPC_CheckComplexPat0, /*#*/2,
267 OPC_EmitMergeInputChains1_0,
268 OPC_MorphNodeTo0, TARGET_VAL(SP::STBrr), 0|OPFL_Chain|OPFL_MemRefs,
269 3, 3, 4, 1,
270 11,
271 OPC_CheckComplexPat1, /*#*/2,
272 OPC_EmitMergeInputChains1_0,
273 OPC_MorphNodeTo0, TARGET_VAL(SP::STBri), 0|OPFL_Chain|OPFL_MemRefs,
274 3, 3, 4, 1,
275 0,
276 28,
277 OPC_CheckPredicate2,
278 OPC_CheckPatternPredicate0,
279 OPC_Scope, 11,
280 OPC_CheckComplexPat0, /*#*/2,
281 OPC_EmitMergeInputChains1_0,
282 OPC_MorphNodeTo0, TARGET_VAL(SP::STHrr), 0|OPFL_Chain|OPFL_MemRefs,
283 3, 3, 4, 1,
284 11,
285 OPC_CheckComplexPat1, /*#*/2,
286 OPC_EmitMergeInputChains1_0,
287 OPC_MorphNodeTo0, TARGET_VAL(SP::STHri), 0|OPFL_Chain|OPFL_MemRefs,
288 3, 3, 4, 1,
289 0,
290 28,
291 OPC_CheckPredicate5,
292 OPC_CheckPatternPredicate0,
293 OPC_Scope, 11,
294 OPC_CheckComplexPat0, /*#*/2,
295 OPC_EmitMergeInputChains1_0,
296 OPC_MorphNodeTo0, TARGET_VAL(SP::STrr), 0|OPFL_Chain|OPFL_MemRefs,
297 3, 3, 4, 1,
298 11,
299 OPC_CheckComplexPat1, /*#*/2,
300 OPC_EmitMergeInputChains1_0,
301 OPC_MorphNodeTo0, TARGET_VAL(SP::STri), 0|OPFL_Chain|OPFL_MemRefs,
302 3, 3, 4, 1,
303 0,
304 0,
305 0,
306 0,
307 0,
308 34, TARGET_VAL(SPISD::LOAD_GDOP),
309 OPC_RecordChild0,
310 OPC_RecordChild1,
311 OPC_MoveChild1,
312 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
313 OPC_MoveParent,
314 OPC_SwitchType , 10, 7,
315 OPC_CheckComplexPat0, /*#*/0,
316 OPC_MorphNodeTo1None, TARGET_VAL(SP::GDOP_LDrr),
317 7, 3, 2, 3, 1,
318 11, 8,
319 OPC_CheckPatternPredicate0,
320 OPC_CheckComplexPat0, /*#*/0,
321 OPC_MorphNodeTo1None, TARGET_VAL(SP::GDOP_LDXrr),
322 8, 3, 2, 3, 1,
323 0,
324 34, TARGET_VAL(SPISD::TLS_LD),
325 OPC_RecordChild0,
326 OPC_RecordChild1,
327 OPC_MoveChild1,
328 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
329 OPC_MoveParent,
330 OPC_SwitchType , 10, 7,
331 OPC_CheckComplexPat0, /*#*/0,
332 OPC_MorphNodeTo1None, TARGET_VAL(SP::TLS_LDrr),
333 7, 3, 2, 3, 1,
334 11, 8,
335 OPC_CheckPatternPredicate0,
336 OPC_CheckComplexPat0, /*#*/0,
337 OPC_MorphNodeTo1None, TARGET_VAL(SP::TLS_LDXrr),
338 8, 3, 2, 3, 1,
339 0,
340 96|128,2, TARGET_VAL(ISD::ADD),
341 OPC_Scope, 111,
342 OPC_MoveChild0,
343 OPC_SwitchOpcode , 51, TARGET_VAL(SPISD::Hi),
344 OPC_RecordChild0,
345 OPC_MoveChild0,
346 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
347 OPC_MoveParent,
348 OPC_MoveSibling1,
349 OPC_CheckOpcode, TARGET_VAL(SPISD::Lo),
350 OPC_RecordChild0,
351 OPC_MoveChild0,
352 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
353 OPC_MoveParent,
354 OPC_MoveParent,
355 OPC_Scope, 15,
356 OPC_CheckPatternPredicate3,
357 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
358 7, 1, 0,
359 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
360 126|128,3, 2, 2, 1,
361 15,
362 OPC_CheckPatternPredicate0,
363 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
364 7, 1, 0,
365 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
366 126|128,3, 2, 2, 1,
367 0,
368 51, TARGET_VAL(SPISD::Lo),
369 OPC_RecordChild0,
370 OPC_MoveChild0,
371 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
372 OPC_MoveParent,
373 OPC_MoveSibling1,
374 OPC_CheckOpcode, TARGET_VAL(SPISD::Hi),
375 OPC_RecordChild0,
376 OPC_MoveChild0,
377 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
378 OPC_MoveParent,
379 OPC_MoveParent,
380 OPC_Scope, 15,
381 OPC_CheckPatternPredicate3,
382 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
383 7, 1, 1,
384 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
385 126|128,3, 2, 2, 0,
386 15,
387 OPC_CheckPatternPredicate0,
388 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
389 7, 1, 1,
390 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
391 126|128,3, 2, 2, 0,
392 0,
393 0,
394 90,
395 OPC_RecordChild0,
396 OPC_MoveChild1,
397 OPC_CheckOpcode, TARGET_VAL(SPISD::Lo),
398 OPC_RecordChild0,
399 OPC_MoveChild0,
400 OPC_SwitchOpcode , 24, TARGET_VAL(ISD::TargetGlobalAddress),
401 OPC_MoveParent,
402 OPC_MoveParent,
403 OPC_Scope, 9,
404 OPC_CheckPatternPredicate3,
405 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
406 126|128,3, 2, 0, 1,
407 9,
408 OPC_CheckPatternPredicate0,
409 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
410 126|128,3, 2, 0, 1,
411 0,
412 24, TARGET_VAL(ISD::TargetConstantPool),
413 OPC_MoveParent,
414 OPC_MoveParent,
415 OPC_Scope, 9,
416 OPC_CheckPatternPredicate3,
417 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
418 126|128,3, 2, 0, 1,
419 9,
420 OPC_CheckPatternPredicate0,
421 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
422 126|128,3, 2, 0, 1,
423 0,
424 24, TARGET_VAL(ISD::TargetBlockAddress),
425 OPC_MoveParent,
426 OPC_MoveParent,
427 OPC_Scope, 9,
428 OPC_CheckPatternPredicate3,
429 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
430 126|128,3, 2, 0, 1,
431 9,
432 OPC_CheckPatternPredicate0,
433 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
434 126|128,3, 2, 0, 1,
435 0,
436 0,
437 92,
438 OPC_MoveChild0,
439 OPC_CheckOpcode, TARGET_VAL(SPISD::Lo),
440 OPC_RecordChild0,
441 OPC_MoveChild0,
442 OPC_SwitchOpcode , 25, TARGET_VAL(ISD::TargetGlobalAddress),
443 OPC_MoveParent,
444 OPC_MoveParent,
445 OPC_RecordChild1,
446 OPC_Scope, 9,
447 OPC_CheckPatternPredicate3,
448 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
449 126|128,3, 2, 1, 0,
450 9,
451 OPC_CheckPatternPredicate0,
452 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
453 126|128,3, 2, 1, 0,
454 0,
455 25, TARGET_VAL(ISD::TargetConstantPool),
456 OPC_MoveParent,
457 OPC_MoveParent,
458 OPC_RecordChild1,
459 OPC_Scope, 9,
460 OPC_CheckPatternPredicate3,
461 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
462 126|128,3, 2, 1, 0,
463 9,
464 OPC_CheckPatternPredicate0,
465 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
466 126|128,3, 2, 1, 0,
467 0,
468 25, TARGET_VAL(ISD::TargetBlockAddress),
469 OPC_MoveParent,
470 OPC_MoveParent,
471 OPC_RecordChild1,
472 OPC_Scope, 9,
473 OPC_CheckPatternPredicate3,
474 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
475 126|128,3, 2, 1, 0,
476 9,
477 OPC_CheckPatternPredicate0,
478 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
479 126|128,3, 2, 1, 0,
480 0,
481 0,
482 53,
483 OPC_RecordChild0,
484 OPC_RecordChild1,
485 OPC_Scope, 29,
486 OPC_MoveChild1,
487 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
488 OPC_CheckPredicate0,
489 OPC_MoveParent,
490 OPC_SwitchType , 8, 7,
491 OPC_EmitConvertToTarget1,
492 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
493 7, 2, 0, 2,
494 9, 8,
495 OPC_CheckPatternPredicate0,
496 OPC_EmitConvertToTarget1,
497 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
498 8, 2, 0, 2,
499 0,
500 8,
501 OPC_CheckTypeI32,
502 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDrr),
503 7, 2, 0, 1,
504 9,
505 OPC_CheckTypeI64,
506 OPC_CheckPatternPredicate0,
507 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDrr),
508 8, 2, 0, 1,
509 0,
510 0,
511 16|128,2, TARGET_VAL(ISD::XOR),
512 OPC_Scope, 28|128,1,
513 OPC_MoveChild0,
514 OPC_SwitchOpcode , 51, TARGET_VAL(SPISD::Hi),
515 OPC_RecordChild0,
516 OPC_MoveChild0,
517 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
518 OPC_MoveParent,
519 OPC_MoveSibling1,
520 OPC_CheckOpcode, TARGET_VAL(SPISD::Lo),
521 OPC_RecordChild0,
522 OPC_MoveChild0,
523 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
524 OPC_MoveParent,
525 OPC_MoveParent,
526 OPC_Scope, 15,
527 OPC_CheckPatternPredicate3,
528 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
529 7, 1, 0,
530 OPC_MorphNodeTo1None, TARGET_VAL(SP::XORri),
531 126|128,3, 2, 2, 1,
532 15,
533 OPC_CheckPatternPredicate0,
534 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
535 7, 1, 0,
536 OPC_MorphNodeTo1None, TARGET_VAL(SP::XORri),
537 126|128,3, 2, 2, 1,
538 0,
539 51, TARGET_VAL(SPISD::Lo),
540 OPC_RecordChild0,
541 OPC_MoveChild0,
542 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
543 OPC_MoveParent,
544 OPC_MoveSibling1,
545 OPC_CheckOpcode, TARGET_VAL(SPISD::Hi),
546 OPC_RecordChild0,
547 OPC_MoveChild0,
548 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
549 OPC_MoveParent,
550 OPC_MoveParent,
551 OPC_Scope, 15,
552 OPC_CheckPatternPredicate3,
553 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
554 7, 1, 1,
555 OPC_MorphNodeTo1None, TARGET_VAL(SP::XORri),
556 126|128,3, 2, 2, 0,
557 15,
558 OPC_CheckPatternPredicate0,
559 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
560 7, 1, 1,
561 OPC_MorphNodeTo1None, TARGET_VAL(SP::XORri),
562 126|128,3, 2, 2, 0,
563 0,
564 42, TARGET_VAL(ISD::XOR),
565 OPC_RecordChild0,
566 OPC_Scope, 25,
567 OPC_RecordChild1,
568 OPC_MoveParent,
569 OPC_CheckChild1Integer, 3,
570 OPC_SwitchType , 7, 7,
571 OPC_MorphNodeTo1None, TARGET_VAL(SP::XNORrr),
572 7, 2, 0, 1,
573 8, 8,
574 OPC_CheckPatternPredicate0,
575 OPC_MorphNodeTo1None, TARGET_VAL(SP::XNORrr),
576 8, 2, 0, 1,
577 0,
578 12,
579 OPC_CheckChild1Integer, 3,
580 OPC_MoveParent,
581 OPC_RecordChild1,
582 OPC_CheckTypeI32,
583 OPC_MorphNodeTo1None, TARGET_VAL(SP::XNORrr),
584 7, 2, 0, 1,
585 0,
586 0,
587 17,
588 OPC_RecordChild0,
589 OPC_MoveChild1,
590 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
591 OPC_RecordChild0,
592 OPC_CheckChild1Integer, 3,
593 OPC_MoveParent,
594 OPC_CheckTypeI32,
595 OPC_MorphNodeTo1None, TARGET_VAL(SP::XNORrr),
596 7, 2, 1, 0,
597 18,
598 OPC_MoveChild0,
599 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
600 OPC_RecordChild0,
601 OPC_CheckChild1Integer, 3,
602 OPC_MoveParent,
603 OPC_RecordChild1,
604 OPC_CheckTypeI64,
605 OPC_CheckPatternPredicate0,
606 OPC_MorphNodeTo1None, TARGET_VAL(SP::XNORrr),
607 8, 2, 0, 1,
608 74,
609 OPC_RecordChild0,
610 OPC_Scope, 17,
611 OPC_MoveChild1,
612 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
613 OPC_RecordChild0,
614 OPC_CheckChild1Integer, 3,
615 OPC_MoveParent,
616 OPC_CheckTypeI64,
617 OPC_CheckPatternPredicate0,
618 OPC_MorphNodeTo1None, TARGET_VAL(SP::XNORrr),
619 8, 2, 1, 0,
620 52,
621 OPC_RecordChild1,
622 OPC_Scope, 29,
623 OPC_MoveChild1,
624 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
625 OPC_CheckPredicate0,
626 OPC_MoveParent,
627 OPC_SwitchType , 8, 7,
628 OPC_EmitConvertToTarget1,
629 OPC_MorphNodeTo1None, TARGET_VAL(SP::XORri),
630 7, 2, 0, 2,
631 9, 8,
632 OPC_CheckPatternPredicate0,
633 OPC_EmitConvertToTarget1,
634 OPC_MorphNodeTo1None, TARGET_VAL(SP::XORri),
635 8, 2, 0, 2,
636 0,
637 8,
638 OPC_CheckTypeI32,
639 OPC_MorphNodeTo1None, TARGET_VAL(SP::XORrr),
640 7, 2, 0, 1,
641 9,
642 OPC_CheckTypeI64,
643 OPC_CheckPatternPredicate0,
644 OPC_MorphNodeTo1None, TARGET_VAL(SP::XORrr),
645 8, 2, 0, 1,
646 0,
647 0,
648 0,
649 65|128,6, TARGET_VAL(ISD::LOAD),
650 OPC_RecordMemRef,
651 OPC_RecordNode,
652 OPC_RecordChild1,
653 OPC_CheckPredicate, 20,
654 OPC_Scope, 61,
655 OPC_CheckPredicate, 9,
656 OPC_CheckTypeI32,
657 OPC_Scope, 27,
658 OPC_CheckPredicate1,
659 OPC_Scope, 11,
660 OPC_CheckComplexPat0, /*#*/1,
661 OPC_EmitMergeInputChains1_0,
662 OPC_MorphNodeTo1, TARGET_VAL(SP::LDSBrr), 0|OPFL_Chain|OPFL_MemRefs,
663 7, 2, 2, 3,
664 11,
665 OPC_CheckComplexPat1, /*#*/1,
666 OPC_EmitMergeInputChains1_0,
667 OPC_MorphNodeTo1, TARGET_VAL(SP::LDSBri), 0|OPFL_Chain|OPFL_MemRefs,
668 7, 2, 2, 3,
669 0,
670 27,
671 OPC_CheckPredicate2,
672 OPC_Scope, 11,
673 OPC_CheckComplexPat0, /*#*/1,
674 OPC_EmitMergeInputChains1_0,
675 OPC_MorphNodeTo1, TARGET_VAL(SP::LDSHrr), 0|OPFL_Chain|OPFL_MemRefs,
676 7, 2, 2, 3,
677 11,
678 OPC_CheckComplexPat1, /*#*/1,
679 OPC_EmitMergeInputChains1_0,
680 OPC_MorphNodeTo1, TARGET_VAL(SP::LDSHri), 0|OPFL_Chain|OPFL_MemRefs,
681 7, 2, 2, 3,
682 0,
683 0,
684 60,
685 OPC_CheckPredicate6,
686 OPC_CheckTypeI32,
687 OPC_Scope, 27,
688 OPC_CheckPredicate1,
689 OPC_Scope, 11,
690 OPC_CheckComplexPat0, /*#*/1,
691 OPC_EmitMergeInputChains1_0,
692 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBrr), 0|OPFL_Chain|OPFL_MemRefs,
693 7, 2, 2, 3,
694 11,
695 OPC_CheckComplexPat1, /*#*/1,
696 OPC_EmitMergeInputChains1_0,
697 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBri), 0|OPFL_Chain|OPFL_MemRefs,
698 7, 2, 2, 3,
699 0,
700 27,
701 OPC_CheckPredicate2,
702 OPC_Scope, 11,
703 OPC_CheckComplexPat0, /*#*/1,
704 OPC_EmitMergeInputChains1_0,
705 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHrr), 0|OPFL_Chain|OPFL_MemRefs,
706 7, 2, 2, 3,
707 11,
708 OPC_CheckComplexPat1, /*#*/1,
709 OPC_EmitMergeInputChains1_0,
710 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHri), 0|OPFL_Chain|OPFL_MemRefs,
711 7, 2, 2, 3,
712 0,
713 0,
714 57,
715 OPC_CheckPredicate, 14,
716 OPC_CheckTypeI32,
717 OPC_Scope, 11,
718 OPC_CheckComplexPat0, /*#*/1,
719 OPC_EmitMergeInputChains1_0,
720 OPC_MorphNodeTo1, TARGET_VAL(SP::LDrr), 0|OPFL_Chain|OPFL_MemRefs,
721 7, 2, 2, 3,
722 11,
723 OPC_CheckComplexPat1, /*#*/1,
724 OPC_EmitMergeInputChains1_0,
725 OPC_MorphNodeTo1, TARGET_VAL(SP::LDri), 0|OPFL_Chain|OPFL_MemRefs,
726 7, 2, 2, 3,
727 27,
728 OPC_CheckPatternPredicate5,
729 OPC_Scope, 11,
730 OPC_CheckComplexPat0, /*#*/1,
731 OPC_EmitMergeInputChains1_0,
732 OPC_MorphNodeTo1, TARGET_VAL(SP::LDCrr), 0|OPFL_Chain|OPFL_MemRefs,
733 7, 2, 2, 3,
734 11,
735 OPC_CheckComplexPat1, /*#*/1,
736 OPC_EmitMergeInputChains1_0,
737 OPC_MorphNodeTo1, TARGET_VAL(SP::LDCri), 0|OPFL_Chain|OPFL_MemRefs,
738 7, 2, 2, 3,
739 0,
740 0,
741 89,
742 OPC_CheckPredicate7,
743 OPC_CheckTypeI32,
744 OPC_Scope, 28,
745 OPC_CheckPredicate, 10,
746 OPC_Scope, 11,
747 OPC_CheckComplexPat0, /*#*/1,
748 OPC_EmitMergeInputChains1_0,
749 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBrr), 0|OPFL_Chain|OPFL_MemRefs,
750 7, 2, 2, 3,
751 11,
752 OPC_CheckComplexPat1, /*#*/1,
753 OPC_EmitMergeInputChains1_0,
754 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBri), 0|OPFL_Chain|OPFL_MemRefs,
755 7, 2, 2, 3,
756 0,
757 27,
758 OPC_CheckPredicate1,
759 OPC_Scope, 11,
760 OPC_CheckComplexPat0, /*#*/1,
761 OPC_EmitMergeInputChains1_0,
762 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBrr), 0|OPFL_Chain|OPFL_MemRefs,
763 7, 2, 2, 3,
764 11,
765 OPC_CheckComplexPat1, /*#*/1,
766 OPC_EmitMergeInputChains1_0,
767 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBri), 0|OPFL_Chain|OPFL_MemRefs,
768 7, 2, 2, 3,
769 0,
770 27,
771 OPC_CheckPredicate2,
772 OPC_Scope, 11,
773 OPC_CheckComplexPat0, /*#*/1,
774 OPC_EmitMergeInputChains1_0,
775 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHrr), 0|OPFL_Chain|OPFL_MemRefs,
776 7, 2, 2, 3,
777 11,
778 OPC_CheckComplexPat1, /*#*/1,
779 OPC_EmitMergeInputChains1_0,
780 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHri), 0|OPFL_Chain|OPFL_MemRefs,
781 7, 2, 2, 3,
782 0,
783 0,
784 30,
785 OPC_CheckPredicate6,
786 OPC_CheckPredicate, 10,
787 OPC_CheckTypeI32,
788 OPC_Scope, 11,
789 OPC_CheckComplexPat0, /*#*/1,
790 OPC_EmitMergeInputChains1_0,
791 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBrr), 0|OPFL_Chain|OPFL_MemRefs,
792 7, 2, 2, 3,
793 11,
794 OPC_CheckComplexPat1, /*#*/1,
795 OPC_EmitMergeInputChains1_0,
796 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBri), 0|OPFL_Chain|OPFL_MemRefs,
797 7, 2, 2, 3,
798 0,
799 30,
800 OPC_CheckPredicate, 14,
801 OPC_CheckTypeI64,
802 OPC_CheckPatternPredicate0,
803 OPC_Scope, 11,
804 OPC_CheckComplexPat0, /*#*/1,
805 OPC_EmitMergeInputChains1_0,
806 OPC_MorphNodeTo1, TARGET_VAL(SP::LDXrr), 0|OPFL_Chain|OPFL_MemRefs,
807 8, 2, 2, 3,
808 11,
809 OPC_CheckComplexPat1, /*#*/1,
810 OPC_EmitMergeInputChains1_0,
811 OPC_MorphNodeTo1, TARGET_VAL(SP::LDXri), 0|OPFL_Chain|OPFL_MemRefs,
812 8, 2, 2, 3,
813 0,
814 31,
815 OPC_CheckPredicate6,
816 OPC_CheckPredicate, 10,
817 OPC_CheckTypeI64,
818 OPC_CheckPatternPredicate0,
819 OPC_Scope, 11,
820 OPC_CheckComplexPat0, /*#*/1,
821 OPC_EmitMergeInputChains1_0,
822 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBrr), 0|OPFL_Chain|OPFL_MemRefs,
823 8, 2, 2, 3,
824 11,
825 OPC_CheckComplexPat1, /*#*/1,
826 OPC_EmitMergeInputChains1_0,
827 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBri), 0|OPFL_Chain|OPFL_MemRefs,
828 8, 2, 2, 3,
829 0,
830 31,
831 OPC_CheckPredicate7,
832 OPC_CheckPredicate, 10,
833 OPC_CheckTypeI64,
834 OPC_CheckPatternPredicate0,
835 OPC_Scope, 11,
836 OPC_CheckComplexPat0, /*#*/1,
837 OPC_EmitMergeInputChains1_0,
838 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBrr), 0|OPFL_Chain|OPFL_MemRefs,
839 8, 2, 2, 3,
840 11,
841 OPC_CheckComplexPat1, /*#*/1,
842 OPC_EmitMergeInputChains1_0,
843 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBri), 0|OPFL_Chain|OPFL_MemRefs,
844 8, 2, 2, 3,
845 0,
846 30,
847 OPC_CheckPredicate6,
848 OPC_CheckPredicate1,
849 OPC_CheckTypeI64,
850 OPC_CheckPatternPredicate0,
851 OPC_Scope, 11,
852 OPC_CheckComplexPat0, /*#*/1,
853 OPC_EmitMergeInputChains1_0,
854 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBrr), 0|OPFL_Chain|OPFL_MemRefs,
855 8, 2, 2, 3,
856 11,
857 OPC_CheckComplexPat1, /*#*/1,
858 OPC_EmitMergeInputChains1_0,
859 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBri), 0|OPFL_Chain|OPFL_MemRefs,
860 8, 2, 2, 3,
861 0,
862 30,
863 OPC_CheckPredicate7,
864 OPC_CheckPredicate1,
865 OPC_CheckTypeI64,
866 OPC_CheckPatternPredicate0,
867 OPC_Scope, 11,
868 OPC_CheckComplexPat0, /*#*/1,
869 OPC_EmitMergeInputChains1_0,
870 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBrr), 0|OPFL_Chain|OPFL_MemRefs,
871 8, 2, 2, 3,
872 11,
873 OPC_CheckComplexPat1, /*#*/1,
874 OPC_EmitMergeInputChains1_0,
875 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBri), 0|OPFL_Chain|OPFL_MemRefs,
876 8, 2, 2, 3,
877 0,
878 31,
879 OPC_CheckPredicate, 9,
880 OPC_CheckPredicate1,
881 OPC_CheckTypeI64,
882 OPC_CheckPatternPredicate0,
883 OPC_Scope, 11,
884 OPC_CheckComplexPat0, /*#*/1,
885 OPC_EmitMergeInputChains1_0,
886 OPC_MorphNodeTo1, TARGET_VAL(SP::LDSBrr), 0|OPFL_Chain|OPFL_MemRefs,
887 8, 2, 2, 3,
888 11,
889 OPC_CheckComplexPat1, /*#*/1,
890 OPC_EmitMergeInputChains1_0,
891 OPC_MorphNodeTo1, TARGET_VAL(SP::LDSBri), 0|OPFL_Chain|OPFL_MemRefs,
892 8, 2, 2, 3,
893 0,
894 30,
895 OPC_CheckPredicate6,
896 OPC_CheckPredicate2,
897 OPC_CheckTypeI64,
898 OPC_CheckPatternPredicate0,
899 OPC_Scope, 11,
900 OPC_CheckComplexPat0, /*#*/1,
901 OPC_EmitMergeInputChains1_0,
902 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHrr), 0|OPFL_Chain|OPFL_MemRefs,
903 8, 2, 2, 3,
904 11,
905 OPC_CheckComplexPat1, /*#*/1,
906 OPC_EmitMergeInputChains1_0,
907 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHri), 0|OPFL_Chain|OPFL_MemRefs,
908 8, 2, 2, 3,
909 0,
910 30,
911 OPC_CheckPredicate7,
912 OPC_CheckPredicate2,
913 OPC_CheckTypeI64,
914 OPC_CheckPatternPredicate0,
915 OPC_Scope, 11,
916 OPC_CheckComplexPat0, /*#*/1,
917 OPC_EmitMergeInputChains1_0,
918 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHrr), 0|OPFL_Chain|OPFL_MemRefs,
919 8, 2, 2, 3,
920 11,
921 OPC_CheckComplexPat1, /*#*/1,
922 OPC_EmitMergeInputChains1_0,
923 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHri), 0|OPFL_Chain|OPFL_MemRefs,
924 8, 2, 2, 3,
925 0,
926 31,
927 OPC_CheckPredicate, 9,
928 OPC_CheckPredicate2,
929 OPC_CheckTypeI64,
930 OPC_CheckPatternPredicate0,
931 OPC_Scope, 11,
932 OPC_CheckComplexPat0, /*#*/1,
933 OPC_EmitMergeInputChains1_0,
934 OPC_MorphNodeTo1, TARGET_VAL(SP::LDSHrr), 0|OPFL_Chain|OPFL_MemRefs,
935 8, 2, 2, 3,
936 11,
937 OPC_CheckComplexPat1, /*#*/1,
938 OPC_EmitMergeInputChains1_0,
939 OPC_MorphNodeTo1, TARGET_VAL(SP::LDSHri), 0|OPFL_Chain|OPFL_MemRefs,
940 8, 2, 2, 3,
941 0,
942 30,
943 OPC_CheckPredicate6,
944 OPC_CheckPredicate5,
945 OPC_CheckTypeI64,
946 OPC_CheckPatternPredicate0,
947 OPC_Scope, 11,
948 OPC_CheckComplexPat0, /*#*/1,
949 OPC_EmitMergeInputChains1_0,
950 OPC_MorphNodeTo1, TARGET_VAL(SP::LDrr), 0|OPFL_Chain|OPFL_MemRefs,
951 8, 2, 2, 3,
952 11,
953 OPC_CheckComplexPat1, /*#*/1,
954 OPC_EmitMergeInputChains1_0,
955 OPC_MorphNodeTo1, TARGET_VAL(SP::LDri), 0|OPFL_Chain|OPFL_MemRefs,
956 8, 2, 2, 3,
957 0,
958 30,
959 OPC_CheckPredicate7,
960 OPC_CheckPredicate5,
961 OPC_CheckTypeI64,
962 OPC_CheckPatternPredicate0,
963 OPC_Scope, 11,
964 OPC_CheckComplexPat0, /*#*/1,
965 OPC_EmitMergeInputChains1_0,
966 OPC_MorphNodeTo1, TARGET_VAL(SP::LDrr), 0|OPFL_Chain|OPFL_MemRefs,
967 8, 2, 2, 3,
968 11,
969 OPC_CheckComplexPat1, /*#*/1,
970 OPC_EmitMergeInputChains1_0,
971 OPC_MorphNodeTo1, TARGET_VAL(SP::LDri), 0|OPFL_Chain|OPFL_MemRefs,
972 8, 2, 2, 3,
973 0,
974 31,
975 OPC_CheckPredicate, 9,
976 OPC_CheckPredicate5,
977 OPC_CheckTypeI64,
978 OPC_CheckPatternPredicate0,
979 OPC_Scope, 11,
980 OPC_CheckComplexPat0, /*#*/1,
981 OPC_EmitMergeInputChains1_0,
982 OPC_MorphNodeTo1, TARGET_VAL(SP::LDSWrr), 0|OPFL_Chain|OPFL_MemRefs,
983 8, 2, 2, 3,
984 11,
985 OPC_CheckComplexPat1, /*#*/1,
986 OPC_EmitMergeInputChains1_0,
987 OPC_MorphNodeTo1, TARGET_VAL(SP::LDSWri), 0|OPFL_Chain|OPFL_MemRefs,
988 8, 2, 2, 3,
989 0,
990 17|128,1,
991 OPC_CheckPredicate, 14,
992 OPC_SwitchType , 26, 12,
993 OPC_Scope, 11,
994 OPC_CheckComplexPat0, /*#*/1,
995 OPC_EmitMergeInputChains1_0,
996 OPC_MorphNodeTo1, TARGET_VAL(SP::LDFrr), 0|OPFL_Chain|OPFL_MemRefs,
997 12, 2, 2, 3,
998 11,
999 OPC_CheckComplexPat1, /*#*/1,
1000 OPC_EmitMergeInputChains1_0,
1001 OPC_MorphNodeTo1, TARGET_VAL(SP::LDFri), 0|OPFL_Chain|OPFL_MemRefs,
1002 12, 2, 2, 3,
1003 0,
1004 26, 13,
1005 OPC_Scope, 11,
1006 OPC_CheckComplexPat0, /*#*/1,
1007 OPC_EmitMergeInputChains1_0,
1008 OPC_MorphNodeTo1, TARGET_VAL(SP::LDDFrr), 0|OPFL_Chain|OPFL_MemRefs,
1009 13, 2, 2, 3,
1010 11,
1011 OPC_CheckComplexPat1, /*#*/1,
1012 OPC_EmitMergeInputChains1_0,
1013 OPC_MorphNodeTo1, TARGET_VAL(SP::LDDFri), 0|OPFL_Chain|OPFL_MemRefs,
1014 13, 2, 2, 3,
1015 0,
1016 27, 15,
1017 OPC_CheckPatternPredicate2,
1018 OPC_Scope, 11,
1019 OPC_CheckComplexPat0, /*#*/1,
1020 OPC_EmitMergeInputChains1_0,
1021 OPC_MorphNodeTo1, TARGET_VAL(SP::LDQFrr), 0|OPFL_Chain|OPFL_MemRefs,
1022 15, 2, 2, 3,
1023 11,
1024 OPC_CheckComplexPat1, /*#*/1,
1025 OPC_EmitMergeInputChains1_0,
1026 OPC_MorphNodeTo1, TARGET_VAL(SP::LDQFri), 0|OPFL_Chain|OPFL_MemRefs,
1027 15, 2, 2, 3,
1028 0,
1029 54, 60,
1030 OPC_Scope, 11,
1031 OPC_CheckComplexPat0, /*#*/1,
1032 OPC_EmitMergeInputChains1_0,
1033 OPC_MorphNodeTo1, TARGET_VAL(SP::LDDrr), 0|OPFL_Chain|OPFL_MemRefs,
1034 60, 2, 2, 3,
1035 11,
1036 OPC_CheckComplexPat1, /*#*/1,
1037 OPC_EmitMergeInputChains1_0,
1038 OPC_MorphNodeTo1, TARGET_VAL(SP::LDDri), 0|OPFL_Chain|OPFL_MemRefs,
1039 60, 2, 2, 3,
1040 27,
1041 OPC_CheckPatternPredicate5,
1042 OPC_Scope, 11,
1043 OPC_CheckComplexPat0, /*#*/1,
1044 OPC_EmitMergeInputChains1_0,
1045 OPC_MorphNodeTo1, TARGET_VAL(SP::LDDCrr), 0|OPFL_Chain|OPFL_MemRefs,
1046 60, 2, 2, 3,
1047 11,
1048 OPC_CheckComplexPat1, /*#*/1,
1049 OPC_EmitMergeInputChains1_0,
1050 OPC_MorphNodeTo1, TARGET_VAL(SP::LDDCri), 0|OPFL_Chain|OPFL_MemRefs,
1051 60, 2, 2, 3,
1052 0,
1053 0,
1054 0,
1055 0,
1056 34, TARGET_VAL(ISD::ATOMIC_SWAP),
1057 OPC_RecordMemRef,
1058 OPC_RecordNode,
1059 OPC_RecordChild1,
1060 OPC_RecordChild2,
1061 OPC_CheckPredicate5,
1062 OPC_CheckTypeI32,
1063 OPC_Scope, 12,
1064 OPC_CheckComplexPat0, /*#*/1,
1065 OPC_EmitMergeInputChains1_0,
1066 OPC_MorphNodeTo1, TARGET_VAL(SP::SWAPrr), 0|OPFL_Chain|OPFL_MemRefs,
1067 7, 3, 3, 4, 2,
1068 12,
1069 OPC_CheckComplexPat1, /*#*/1,
1070 OPC_EmitMergeInputChains1_0,
1071 OPC_MorphNodeTo1, TARGET_VAL(SP::SWAPri), 0|OPFL_Chain|OPFL_MemRefs,
1072 7, 3, 3, 4, 2,
1073 0,
1074 70|128,1, TARGET_VAL(ISD::ATOMIC_LOAD),
1075 OPC_RecordMemRef,
1076 OPC_RecordNode,
1077 OPC_RecordChild1,
1078 OPC_Scope, 15,
1079 OPC_CheckPredicate, 11,
1080 OPC_CheckPredicate1,
1081 OPC_CheckTypeI32,
1082 OPC_CheckComplexPat0, /*#*/1,
1083 OPC_EmitMergeInputChains1_0,
1084 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBrr), 0|OPFL_Chain|OPFL_MemRefs,
1085 7, 2, 2, 3,
1086 15,
1087 OPC_CheckPredicate, 12,
1088 OPC_CheckPredicate1,
1089 OPC_CheckTypeI32,
1090 OPC_CheckComplexPat0, /*#*/1,
1091 OPC_EmitMergeInputChains1_0,
1092 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBrr), 0|OPFL_Chain|OPFL_MemRefs,
1093 7, 2, 2, 3,
1094 15,
1095 OPC_CheckPredicate, 11,
1096 OPC_CheckPredicate1,
1097 OPC_CheckTypeI32,
1098 OPC_CheckComplexPat1, /*#*/1,
1099 OPC_EmitMergeInputChains1_0,
1100 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBri), 0|OPFL_Chain|OPFL_MemRefs,
1101 7, 2, 2, 3,
1102 15,
1103 OPC_CheckPredicate, 12,
1104 OPC_CheckPredicate1,
1105 OPC_CheckTypeI32,
1106 OPC_CheckComplexPat1, /*#*/1,
1107 OPC_EmitMergeInputChains1_0,
1108 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUBri), 0|OPFL_Chain|OPFL_MemRefs,
1109 7, 2, 2, 3,
1110 15,
1111 OPC_CheckPredicate, 11,
1112 OPC_CheckPredicate2,
1113 OPC_CheckTypeI32,
1114 OPC_CheckComplexPat0, /*#*/1,
1115 OPC_EmitMergeInputChains1_0,
1116 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHrr), 0|OPFL_Chain|OPFL_MemRefs,
1117 7, 2, 2, 3,
1118 15,
1119 OPC_CheckPredicate, 12,
1120 OPC_CheckPredicate2,
1121 OPC_CheckTypeI32,
1122 OPC_CheckComplexPat0, /*#*/1,
1123 OPC_EmitMergeInputChains1_0,
1124 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHrr), 0|OPFL_Chain|OPFL_MemRefs,
1125 7, 2, 2, 3,
1126 15,
1127 OPC_CheckPredicate, 11,
1128 OPC_CheckPredicate2,
1129 OPC_CheckTypeI32,
1130 OPC_CheckComplexPat1, /*#*/1,
1131 OPC_EmitMergeInputChains1_0,
1132 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHri), 0|OPFL_Chain|OPFL_MemRefs,
1133 7, 2, 2, 3,
1134 15,
1135 OPC_CheckPredicate, 12,
1136 OPC_CheckPredicate2,
1137 OPC_CheckTypeI32,
1138 OPC_CheckComplexPat1, /*#*/1,
1139 OPC_EmitMergeInputChains1_0,
1140 OPC_MorphNodeTo1, TARGET_VAL(SP::LDUHri), 0|OPFL_Chain|OPFL_MemRefs,
1141 7, 2, 2, 3,
1142 64,
1143 OPC_CheckPredicate, 21,
1144 OPC_SwitchType , 27, 7,
1145 OPC_CheckPredicate5,
1146 OPC_Scope, 11,
1147 OPC_CheckComplexPat0, /*#*/1,
1148 OPC_EmitMergeInputChains1_0,
1149 OPC_MorphNodeTo1, TARGET_VAL(SP::LDrr), 0|OPFL_Chain|OPFL_MemRefs,
1150 7, 2, 2, 3,
1151 11,
1152 OPC_CheckComplexPat1, /*#*/1,
1153 OPC_EmitMergeInputChains1_0,
1154 OPC_MorphNodeTo1, TARGET_VAL(SP::LDri), 0|OPFL_Chain|OPFL_MemRefs,
1155 7, 2, 2, 3,
1156 0,
1157 29, 8,
1158 OPC_CheckPredicate, 15,
1159 OPC_CheckPatternPredicate0,
1160 OPC_Scope, 11,
1161 OPC_CheckComplexPat0, /*#*/1,
1162 OPC_EmitMergeInputChains1_0,
1163 OPC_MorphNodeTo1, TARGET_VAL(SP::LDXrr), 0|OPFL_Chain|OPFL_MemRefs,
1164 8, 2, 2, 3,
1165 11,
1166 OPC_CheckComplexPat1, /*#*/1,
1167 OPC_EmitMergeInputChains1_0,
1168 OPC_MorphNodeTo1, TARGET_VAL(SP::LDXri), 0|OPFL_Chain|OPFL_MemRefs,
1169 8, 2, 2, 3,
1170 0,
1171 0,
1172 0,
1173 126, TARGET_VAL(ISD::ATOMIC_STORE),
1174 OPC_RecordMemRef,
1175 OPC_RecordNode,
1176 OPC_RecordChild1,
1177 OPC_Scope, 88,
1178 OPC_CheckChild1TypeI32,
1179 OPC_RecordChild2,
1180 OPC_Scope, 27,
1181 OPC_CheckPredicate1,
1182 OPC_Scope, 11,
1183 OPC_CheckComplexPat0, /*#*/2,
1184 OPC_EmitMergeInputChains1_0,
1185 OPC_MorphNodeTo0, TARGET_VAL(SP::STBrr), 0|OPFL_Chain|OPFL_MemRefs,
1186 3, 3, 4, 1,
1187 11,
1188 OPC_CheckComplexPat1, /*#*/2,
1189 OPC_EmitMergeInputChains1_0,
1190 OPC_MorphNodeTo0, TARGET_VAL(SP::STBri), 0|OPFL_Chain|OPFL_MemRefs,
1191 3, 3, 4, 1,
1192 0,
1193 27,
1194 OPC_CheckPredicate2,
1195 OPC_Scope, 11,
1196 OPC_CheckComplexPat0, /*#*/2,
1197 OPC_EmitMergeInputChains1_0,
1198 OPC_MorphNodeTo0, TARGET_VAL(SP::STHrr), 0|OPFL_Chain|OPFL_MemRefs,
1199 3, 3, 4, 1,
1200 11,
1201 OPC_CheckComplexPat1, /*#*/2,
1202 OPC_EmitMergeInputChains1_0,
1203 OPC_MorphNodeTo0, TARGET_VAL(SP::STHri), 0|OPFL_Chain|OPFL_MemRefs,
1204 3, 3, 4, 1,
1205 0,
1206 27,
1207 OPC_CheckPredicate5,
1208 OPC_Scope, 11,
1209 OPC_CheckComplexPat0, /*#*/2,
1210 OPC_EmitMergeInputChains1_0,
1211 OPC_MorphNodeTo0, TARGET_VAL(SP::STrr), 0|OPFL_Chain|OPFL_MemRefs,
1212 3, 3, 4, 1,
1213 11,
1214 OPC_CheckComplexPat1, /*#*/2,
1215 OPC_EmitMergeInputChains1_0,
1216 OPC_MorphNodeTo0, TARGET_VAL(SP::STri), 0|OPFL_Chain|OPFL_MemRefs,
1217 3, 3, 4, 1,
1218 0,
1219 0,
1220 31,
1221 OPC_CheckChild1TypeI64,
1222 OPC_RecordChild2,
1223 OPC_CheckPredicate, 15,
1224 OPC_CheckPatternPredicate0,
1225 OPC_Scope, 11,
1226 OPC_CheckComplexPat0, /*#*/2,
1227 OPC_EmitMergeInputChains1_0,
1228 OPC_MorphNodeTo0, TARGET_VAL(SP::STXrr), 0|OPFL_Chain|OPFL_MemRefs,
1229 3, 3, 4, 1,
1230 11,
1231 OPC_CheckComplexPat1, /*#*/2,
1232 OPC_EmitMergeInputChains1_0,
1233 OPC_MorphNodeTo0, TARGET_VAL(SP::STXri), 0|OPFL_Chain|OPFL_MemRefs,
1234 3, 3, 4, 1,
1235 0,
1236 0,
1237 24, TARGET_VAL(ISD::BRIND),
1238 OPC_RecordNode,
1239 OPC_RecordChild1,
1240 OPC_Scope, 9,
1241 OPC_CheckComplexPat0, /*#*/1,
1242 OPC_EmitMergeInputChains1_0,
1243 OPC_MorphNodeTo0Chain, TARGET_VAL(SP::BINDrr),
1244 2, 2, 3,
1245 9,
1246 OPC_CheckComplexPat1, /*#*/1,
1247 OPC_EmitMergeInputChains1_0,
1248 OPC_MorphNodeTo0Chain, TARGET_VAL(SP::BINDri),
1249 2, 2, 3,
1250 0,
1251 53, TARGET_VAL(SPISD::CALL),
1252 OPC_RecordNode,
1253 OPC_CaptureGlueInput,
1254 OPC_RecordChild1,
1255 OPC_Scope, 10,
1256 OPC_CheckComplexPat0, /*#*/1,
1257 OPC_EmitMergeInputChains1_0,
1258 OPC_MorphNodeTo0, TARGET_VAL(SP::CALLrr), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
1259 2, 2, 3,
1260 10,
1261 OPC_CheckComplexPat1, /*#*/1,
1262 OPC_EmitMergeInputChains1_0,
1263 OPC_MorphNodeTo0, TARGET_VAL(SP::CALLri), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
1264 2, 2, 3,
1265 25,
1266 OPC_MoveChild1,
1267 OPC_SwitchOpcode , 8, TARGET_VAL(ISD::TargetGlobalAddress),
1268 OPC_MoveParent,
1269 OPC_EmitMergeInputChains1_0,
1270 OPC_MorphNodeTo0, TARGET_VAL(SP::CALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
1271 1, 1,
1272 8, TARGET_VAL(ISD::TargetExternalSymbol),
1273 OPC_MoveParent,
1274 OPC_EmitMergeInputChains1_0,
1275 OPC_MorphNodeTo0, TARGET_VAL(SP::CALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
1276 1, 1,
1277 0,
1278 0,
1279 42, TARGET_VAL(SPISD::TAIL_CALL),
1280 OPC_RecordNode,
1281 OPC_CaptureGlueInput,
1282 OPC_RecordChild1,
1283 OPC_Scope, 10,
1284 OPC_CheckComplexPat1, /*#*/1,
1285 OPC_EmitMergeInputChains1_0,
1286 OPC_MorphNodeTo0, TARGET_VAL(SP::TAIL_CALLri), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1,
1287 2, 2, 3,
1288 25,
1289 OPC_MoveChild1,
1290 OPC_SwitchOpcode , 8, TARGET_VAL(ISD::TargetGlobalAddress),
1291 OPC_MoveParent,
1292 OPC_EmitMergeInputChains1_0,
1293 OPC_MorphNodeTo0, TARGET_VAL(SP::TAIL_CALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1,
1294 1, 1,
1295 8, TARGET_VAL(ISD::TargetExternalSymbol),
1296 OPC_MoveParent,
1297 OPC_EmitMergeInputChains1_0,
1298 OPC_MorphNodeTo0, TARGET_VAL(SP::TAIL_CALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1,
1299 1, 1,
1300 0,
1301 0,
1302 34|128,1, TARGET_VAL(ISD::AND),
1303 OPC_Scope, 30,
1304 OPC_RecordChild0,
1305 OPC_MoveChild1,
1306 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1307 OPC_RecordChild0,
1308 OPC_CheckChild1Integer, 3,
1309 OPC_MoveParent,
1310 OPC_SwitchType , 7, 7,
1311 OPC_MorphNodeTo1None, TARGET_VAL(SP::ANDNrr),
1312 7, 2, 0, 1,
1313 8, 8,
1314 OPC_CheckPatternPredicate0,
1315 OPC_MorphNodeTo1None, TARGET_VAL(SP::ANDNrr),
1316 8, 2, 0, 1,
1317 0,
1318 30,
1319 OPC_MoveChild0,
1320 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1321 OPC_RecordChild0,
1322 OPC_CheckChild1Integer, 3,
1323 OPC_MoveParent,
1324 OPC_RecordChild1,
1325 OPC_SwitchType , 7, 7,
1326 OPC_MorphNodeTo1None, TARGET_VAL(SP::ANDNrr),
1327 7, 2, 1, 0,
1328 8, 8,
1329 OPC_CheckPatternPredicate0,
1330 OPC_MorphNodeTo1None, TARGET_VAL(SP::ANDNrr),
1331 8, 2, 1, 0,
1332 0,
1333 18,
1334 OPC_CheckAndImm, 127|128,127|128,127|128,127|128,15,
1335 OPC_RecordChild0,
1336 OPC_CheckTypeI64,
1337 OPC_CheckPatternPredicate0,
1338 OPC_EmitInteger32, 0,
1339 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRLri),
1340 8, 2, 0, 1,
1341 78,
1342 OPC_RecordChild0,
1343 OPC_RecordChild1,
1344 OPC_Scope, 54,
1345 OPC_MoveChild1,
1346 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1347 OPC_Scope, 25,
1348 OPC_CheckPredicate0,
1349 OPC_MoveParent,
1350 OPC_SwitchType , 8, 7,
1351 OPC_EmitConvertToTarget1,
1352 OPC_MorphNodeTo1None, TARGET_VAL(SP::ANDri),
1353 7, 2, 0, 2,
1354 9, 8,
1355 OPC_CheckPatternPredicate0,
1356 OPC_EmitConvertToTarget1,
1357 OPC_MorphNodeTo1None, TARGET_VAL(SP::ANDri),
1358 8, 2, 0, 2,
1359 0,
1360 21,
1361 OPC_CheckPredicate, 18,
1362 OPC_MoveParent,
1363 OPC_CheckTypeI32,
1364 OPC_EmitConvertToTarget1,
1365 OPC_EmitNodeXForm, 0, 2,
1366 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
1367 7, 1, 3,
1368 OPC_MorphNodeTo1None, TARGET_VAL(SP::ANDNrr),
1369 7, 2, 0, 4,
1370 0,
1371 8,
1372 OPC_CheckTypeI32,
1373 OPC_MorphNodeTo1None, TARGET_VAL(SP::ANDrr),
1374 7, 2, 0, 1,
1375 9,
1376 OPC_CheckTypeI64,
1377 OPC_CheckPatternPredicate0,
1378 OPC_MorphNodeTo1None, TARGET_VAL(SP::ANDrr),
1379 8, 2, 0, 1,
1380 0,
1381 0,
1382 15|128,1, TARGET_VAL(ISD::OR),
1383 OPC_Scope, 30,
1384 OPC_RecordChild0,
1385 OPC_MoveChild1,
1386 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1387 OPC_RecordChild0,
1388 OPC_CheckChild1Integer, 3,
1389 OPC_MoveParent,
1390 OPC_SwitchType , 7, 7,
1391 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORNrr),
1392 7, 2, 0, 1,
1393 8, 8,
1394 OPC_CheckPatternPredicate0,
1395 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORNrr),
1396 8, 2, 0, 1,
1397 0,
1398 30,
1399 OPC_MoveChild0,
1400 OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1401 OPC_RecordChild0,
1402 OPC_CheckChild1Integer, 3,
1403 OPC_MoveParent,
1404 OPC_RecordChild1,
1405 OPC_SwitchType , 7, 7,
1406 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORNrr),
1407 7, 2, 1, 0,
1408 8, 8,
1409 OPC_CheckPatternPredicate0,
1410 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORNrr),
1411 8, 2, 1, 0,
1412 0,
1413 78,
1414 OPC_RecordChild0,
1415 OPC_RecordChild1,
1416 OPC_Scope, 54,
1417 OPC_MoveChild1,
1418 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1419 OPC_Scope, 25,
1420 OPC_CheckPredicate0,
1421 OPC_MoveParent,
1422 OPC_SwitchType , 8, 7,
1423 OPC_EmitConvertToTarget1,
1424 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
1425 7, 2, 0, 2,
1426 9, 8,
1427 OPC_CheckPatternPredicate0,
1428 OPC_EmitConvertToTarget1,
1429 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
1430 8, 2, 0, 2,
1431 0,
1432 21,
1433 OPC_CheckPredicate, 18,
1434 OPC_MoveParent,
1435 OPC_CheckTypeI32,
1436 OPC_EmitConvertToTarget1,
1437 OPC_EmitNodeXForm, 0, 2,
1438 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
1439 7, 1, 3,
1440 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORNrr),
1441 7, 2, 0, 4,
1442 0,
1443 8,
1444 OPC_CheckTypeI32,
1445 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORrr),
1446 7, 2, 0, 1,
1447 9,
1448 OPC_CheckTypeI64,
1449 OPC_CheckPatternPredicate0,
1450 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORrr),
1451 8, 2, 0, 1,
1452 0,
1453 0,
1454 43|128,1, TARGET_VAL(SPISD::SELECT_ICC),
1455 OPC_CaptureGlueInput,
1456 OPC_RecordChild0,
1457 OPC_Scope, 44,
1458 OPC_MoveChild0,
1459 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1460 OPC_CheckPredicate, 16,
1461 OPC_MoveParent,
1462 OPC_RecordChild1,
1463 OPC_RecordChild2,
1464 OPC_MoveChild2,
1465 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1466 OPC_MoveParent,
1467 OPC_SwitchType , 11, 7,
1468 OPC_CheckPatternPredicate2,
1469 OPC_EmitConvertToTarget0,
1470 OPC_EmitConvertToTarget2,
1471 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVICCri),
1472 7, 3, 3, 1, 4,
1473 13, 8,
1474 OPC_CheckPatternPredicate0,
1475 OPC_EmitNodeXForm, 1, 0,
1476 OPC_EmitConvertToTarget2,
1477 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVICCri),
1478 8, 3, 3, 1, 4,
1479 0,
1480 121,
1481 OPC_RecordChild1,
1482 OPC_RecordChild2,
1483 OPC_MoveChild2,
1484 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1485 OPC_MoveParent,
1486 OPC_SwitchType , 23, 7,
1487 OPC_Scope, 10,
1488 OPC_CheckPatternPredicate2,
1489 OPC_EmitConvertToTarget2,
1490 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVICCrr),
1491 7, 3, 0, 1, 3,
1492 9,
1493 OPC_EmitConvertToTarget2,
1494 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_Int_ICC),
1495 7, 3, 0, 1, 3,
1496 0,
1497 10, 8,
1498 OPC_CheckPatternPredicate0,
1499 OPC_EmitConvertToTarget2,
1500 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVICCrr),
1501 8, 3, 0, 1, 3,
1502 23, 12,
1503 OPC_Scope, 10,
1504 OPC_CheckPatternPredicate2,
1505 OPC_EmitConvertToTarget2,
1506 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::FMOVS_ICC),
1507 12, 3, 0, 1, 3,
1508 9,
1509 OPC_EmitConvertToTarget2,
1510 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_FP_ICC),
1511 12, 3, 0, 1, 3,
1512 0,
1513 23, 13,
1514 OPC_Scope, 10,
1515 OPC_CheckPatternPredicate2,
1516 OPC_EmitConvertToTarget2,
1517 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::FMOVD_ICC),
1518 13, 3, 0, 1, 3,
1519 9,
1520 OPC_EmitConvertToTarget2,
1521 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_DFP_ICC),
1522 13, 3, 0, 1, 3,
1523 0,
1524 23, 15,
1525 OPC_Scope, 10,
1526 OPC_CheckPatternPredicate6,
1527 OPC_EmitConvertToTarget2,
1528 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::FMOVQ_ICC),
1529 15, 3, 0, 1, 3,
1530 9,
1531 OPC_EmitConvertToTarget2,
1532 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_QFP_ICC),
1533 15, 3, 0, 1, 3,
1534 0,
1535 0,
1536 0,
1537 43|128,1, TARGET_VAL(SPISD::SELECT_FCC),
1538 OPC_CaptureGlueInput,
1539 OPC_RecordChild0,
1540 OPC_Scope, 44,
1541 OPC_MoveChild0,
1542 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1543 OPC_CheckPredicate, 16,
1544 OPC_MoveParent,
1545 OPC_RecordChild1,
1546 OPC_RecordChild2,
1547 OPC_MoveChild2,
1548 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1549 OPC_MoveParent,
1550 OPC_SwitchType , 11, 7,
1551 OPC_CheckPatternPredicate2,
1552 OPC_EmitConvertToTarget0,
1553 OPC_EmitConvertToTarget2,
1554 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVFCCri),
1555 7, 3, 3, 1, 4,
1556 13, 8,
1557 OPC_CheckPatternPredicate0,
1558 OPC_EmitNodeXForm, 1, 0,
1559 OPC_EmitConvertToTarget2,
1560 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVFCCri),
1561 8, 3, 3, 1, 4,
1562 0,
1563 121,
1564 OPC_RecordChild1,
1565 OPC_RecordChild2,
1566 OPC_MoveChild2,
1567 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1568 OPC_MoveParent,
1569 OPC_SwitchType , 23, 7,
1570 OPC_Scope, 10,
1571 OPC_CheckPatternPredicate2,
1572 OPC_EmitConvertToTarget2,
1573 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVFCCrr),
1574 7, 3, 0, 1, 3,
1575 9,
1576 OPC_EmitConvertToTarget2,
1577 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_Int_FCC),
1578 7, 3, 0, 1, 3,
1579 0,
1580 10, 8,
1581 OPC_CheckPatternPredicate0,
1582 OPC_EmitConvertToTarget2,
1583 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVFCCrr),
1584 8, 3, 0, 1, 3,
1585 23, 12,
1586 OPC_Scope, 10,
1587 OPC_CheckPatternPredicate2,
1588 OPC_EmitConvertToTarget2,
1589 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::FMOVS_FCC),
1590 12, 3, 0, 1, 3,
1591 9,
1592 OPC_EmitConvertToTarget2,
1593 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_FP_FCC),
1594 12, 3, 0, 1, 3,
1595 0,
1596 23, 13,
1597 OPC_Scope, 10,
1598 OPC_CheckPatternPredicate2,
1599 OPC_EmitConvertToTarget2,
1600 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::FMOVD_FCC),
1601 13, 3, 0, 1, 3,
1602 9,
1603 OPC_EmitConvertToTarget2,
1604 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_DFP_FCC),
1605 13, 3, 0, 1, 3,
1606 0,
1607 23, 15,
1608 OPC_Scope, 10,
1609 OPC_CheckPatternPredicate6,
1610 OPC_EmitConvertToTarget2,
1611 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::FMOVQ_FCC),
1612 15, 3, 0, 1, 3,
1613 9,
1614 OPC_EmitConvertToTarget2,
1615 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_QFP_FCC),
1616 15, 3, 0, 1, 3,
1617 0,
1618 0,
1619 0,
1620 44|128,1, TARGET_VAL(SPISD::SELECT_XCC),
1621 OPC_CaptureGlueInput,
1622 OPC_RecordChild0,
1623 OPC_Scope, 44,
1624 OPC_MoveChild0,
1625 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1626 OPC_CheckPredicate, 16,
1627 OPC_MoveParent,
1628 OPC_RecordChild1,
1629 OPC_RecordChild2,
1630 OPC_MoveChild2,
1631 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1632 OPC_MoveParent,
1633 OPC_SwitchType , 11, 7,
1634 OPC_CheckPatternPredicate0,
1635 OPC_EmitConvertToTarget0,
1636 OPC_EmitConvertToTarget2,
1637 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVXCCri),
1638 7, 3, 3, 1, 4,
1639 13, 8,
1640 OPC_CheckPatternPredicate0,
1641 OPC_EmitNodeXForm, 1, 0,
1642 OPC_EmitConvertToTarget2,
1643 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVXCCri),
1644 8, 3, 3, 1, 4,
1645 0,
1646 122,
1647 OPC_RecordChild1,
1648 OPC_RecordChild2,
1649 OPC_MoveChild2,
1650 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1651 OPC_MoveParent,
1652 OPC_SwitchType , 23, 7,
1653 OPC_Scope, 10,
1654 OPC_CheckPatternPredicate0,
1655 OPC_EmitConvertToTarget2,
1656 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVXCCrr),
1657 7, 3, 0, 1, 3,
1658 9,
1659 OPC_EmitConvertToTarget2,
1660 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_Int_XCC),
1661 7, 3, 0, 1, 3,
1662 0,
1663 10, 8,
1664 OPC_CheckPatternPredicate0,
1665 OPC_EmitConvertToTarget2,
1666 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::MOVXCCrr),
1667 8, 3, 0, 1, 3,
1668 23, 12,
1669 OPC_Scope, 10,
1670 OPC_CheckPatternPredicate0,
1671 OPC_EmitConvertToTarget2,
1672 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::FMOVS_XCC),
1673 12, 3, 0, 1, 3,
1674 9,
1675 OPC_EmitConvertToTarget2,
1676 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_FP_XCC),
1677 12, 3, 0, 1, 3,
1678 0,
1679 23, 13,
1680 OPC_Scope, 10,
1681 OPC_CheckPatternPredicate0,
1682 OPC_EmitConvertToTarget2,
1683 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::FMOVD_XCC),
1684 13, 3, 0, 1, 3,
1685 9,
1686 OPC_EmitConvertToTarget2,
1687 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_DFP_XCC),
1688 13, 3, 0, 1, 3,
1689 0,
1690 24, 15,
1691 OPC_Scope, 11,
1692 OPC_CheckPatternPredicate, 8,
1693 OPC_EmitConvertToTarget2,
1694 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::FMOVQ_XCC),
1695 15, 3, 0, 1, 3,
1696 9,
1697 OPC_EmitConvertToTarget2,
1698 OPC_MorphNodeTo1GlueInput, TARGET_VAL(SP::SELECT_CC_QFP_XCC),
1699 15, 3, 0, 1, 3,
1700 0,
1701 0,
1702 0,
1703 127, TARGET_VAL(SPISD::SELECT_REG),
1704 OPC_RecordChild0,
1705 OPC_Scope, 47,
1706 OPC_MoveChild0,
1707 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1708 OPC_CheckPredicate, 22,
1709 OPC_MoveParent,
1710 OPC_RecordChild1,
1711 OPC_RecordChild2,
1712 OPC_MoveChild2,
1713 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1714 OPC_MoveParent,
1715 OPC_RecordChild3,
1716 OPC_SwitchType , 12, 7,
1717 OPC_CheckPatternPredicate0,
1718 OPC_EmitConvertToTarget0,
1719 OPC_EmitConvertToTarget2,
1720 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVRri),
1721 7, 4, 3, 4, 1, 5,
1722 14, 8,
1723 OPC_CheckPatternPredicate0,
1724 OPC_EmitNodeXForm, 1, 0,
1725 OPC_EmitConvertToTarget2,
1726 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVRri),
1727 8, 4, 3, 4, 1, 5,
1728 0,
1729 75,
1730 OPC_RecordChild1,
1731 OPC_RecordChild2,
1732 OPC_MoveChild2,
1733 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1734 OPC_MoveParent,
1735 OPC_RecordChild3,
1736 OPC_SwitchType , 11, 7,
1737 OPC_CheckPatternPredicate0,
1738 OPC_EmitConvertToTarget2,
1739 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVRrr),
1740 7, 4, 3, 0, 1, 4,
1741 11, 8,
1742 OPC_CheckPatternPredicate0,
1743 OPC_EmitConvertToTarget2,
1744 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVRrr),
1745 8, 4, 3, 0, 1, 4,
1746 11, 12,
1747 OPC_CheckPatternPredicate0,
1748 OPC_EmitConvertToTarget2,
1749 OPC_MorphNodeTo1None, TARGET_VAL(SP::FMOVRS),
1750 12, 4, 3, 0, 1, 4,
1751 11, 13,
1752 OPC_CheckPatternPredicate0,
1753 OPC_EmitConvertToTarget2,
1754 OPC_MorphNodeTo1None, TARGET_VAL(SP::FMOVRD),
1755 13, 4, 3, 0, 1, 4,
1756 11, 15,
1757 OPC_CheckPatternPredicate4,
1758 OPC_EmitConvertToTarget2,
1759 OPC_MorphNodeTo1None, TARGET_VAL(SP::FMOVRQ),
1760 15, 4, 3, 0, 1, 4,
1761 0,
1762 0,
1763 20, TARGET_VAL(ISD::CALLSEQ_START),
1764 OPC_RecordNode,
1765 OPC_RecordChild1,
1766 OPC_MoveChild1,
1767 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
1768 OPC_MoveSibling2,
1769 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
1770 OPC_RecordNode,
1771 OPC_MoveParent,
1772 OPC_EmitMergeInputChains1_0,
1773 OPC_MorphNodeTo0, TARGET_VAL(SP::ADJCALLSTACKDOWN), 0|OPFL_Chain|OPFL_GlueOutput,
1774 2, 1, 2,
1775 21, TARGET_VAL(ISD::CALLSEQ_END),
1776 OPC_RecordNode,
1777 OPC_CaptureGlueInput,
1778 OPC_RecordChild1,
1779 OPC_MoveChild1,
1780 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
1781 OPC_MoveSibling2,
1782 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
1783 OPC_RecordNode,
1784 OPC_MoveParent,
1785 OPC_EmitMergeInputChains1_0,
1786 OPC_MorphNodeTo0, TARGET_VAL(SP::ADJCALLSTACKUP), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput,
1787 2, 1, 2,
1788 21, TARGET_VAL(SPISD::TLS_CALL),
1789 OPC_RecordNode,
1790 OPC_CaptureGlueInput,
1791 OPC_RecordChild1,
1792 OPC_MoveChild1,
1793 OPC_CheckOpcode, TARGET_VAL(ISD::TargetExternalSymbol),
1794 OPC_MoveSibling2,
1795 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
1796 OPC_RecordNode,
1797 OPC_MoveParent,
1798 OPC_EmitMergeInputChains1_0,
1799 OPC_MorphNodeTo0, TARGET_VAL(SP::TLS_CALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic2,
1800 2, 1, 2,
1801 29, TARGET_VAL(ISD::ATOMIC_FENCE),
1802 OPC_RecordNode,
1803 OPC_MoveChild1,
1804 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
1805 OPC_MoveSibling2,
1806 OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
1807 OPC_MoveParent,
1808 OPC_Scope, 6,
1809 OPC_CheckPatternPredicate5,
1810 OPC_EmitMergeInputChains1_0,
1811 OPC_MorphNodeTo0Chain, TARGET_VAL(SP::STBAR),
1812 0,
1813 9,
1814 OPC_CheckPatternPredicate2,
1815 OPC_EmitMergeInputChains1_0,
1816 OPC_EmitInteger32, 30,
1817 OPC_MorphNodeTo0Chain, TARGET_VAL(SP::MEMBARi),
1818 1, 1,
1819 0,
1820 27, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
1821 OPC_RecordChild0,
1822 OPC_Scope, 11,
1823 OPC_CheckChild1Integer, 0,
1824 OPC_EmitStringInteger32, SP::sub_even,
1825 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
1826 7, 2, 0, 1,
1827 11,
1828 OPC_CheckChild1Integer, 2,
1829 OPC_EmitStringInteger32, SP::sub_odd,
1830 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG),
1831 7, 2, 0, 1,
1832 0,
1833 53, TARGET_VAL(ISD::ADDC),
1834 OPC_RecordChild0,
1835 OPC_RecordChild1,
1836 OPC_Scope, 29,
1837 OPC_MoveChild1,
1838 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1839 OPC_CheckPredicate0,
1840 OPC_MoveParent,
1841 OPC_SwitchType , 8, 7,
1842 OPC_EmitConvertToTarget1,
1843 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::ADDCCri),
1844 7, 2, 0, 2,
1845 9, 8,
1846 OPC_CheckPatternPredicate0,
1847 OPC_EmitConvertToTarget1,
1848 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::ADDCCri),
1849 8, 2, 0, 2,
1850 0,
1851 8,
1852 OPC_CheckTypeI32,
1853 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::ADDCCrr),
1854 7, 2, 0, 1,
1855 9,
1856 OPC_CheckTypeI64,
1857 OPC_CheckPatternPredicate0,
1858 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::ADDCCrr),
1859 8, 2, 0, 1,
1860 0,
1861 43, TARGET_VAL(ISD::ADDE),
1862 OPC_CaptureGlueInput,
1863 OPC_RecordChild0,
1864 OPC_RecordChild1,
1865 OPC_Scope, 16,
1866 OPC_MoveChild1,
1867 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1868 OPC_CheckPredicate0,
1869 OPC_MoveParent,
1870 OPC_CheckTypeI32,
1871 OPC_EmitConvertToTarget1,
1872 OPC_MorphNodeTo1, TARGET_VAL(SP::ADDEri), 0|OPFL_GlueInput|OPFL_GlueOutput,
1873 7, 2, 0, 2,
1874 9,
1875 OPC_CheckTypeI32,
1876 OPC_MorphNodeTo1, TARGET_VAL(SP::ADDErr), 0|OPFL_GlueInput|OPFL_GlueOutput,
1877 7, 2, 0, 1,
1878 10,
1879 OPC_CheckTypeI64,
1880 OPC_CheckPatternPredicate1,
1881 OPC_MorphNodeTo1, TARGET_VAL(SP::ADDXCCC), 0|OPFL_GlueInput|OPFL_GlueOutput,
1882 8, 2, 0, 1,
1883 0,
1884 53, TARGET_VAL(ISD::SUB),
1885 OPC_RecordChild0,
1886 OPC_RecordChild1,
1887 OPC_Scope, 29,
1888 OPC_MoveChild1,
1889 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1890 OPC_CheckPredicate0,
1891 OPC_MoveParent,
1892 OPC_SwitchType , 8, 7,
1893 OPC_EmitConvertToTarget1,
1894 OPC_MorphNodeTo1None, TARGET_VAL(SP::SUBri),
1895 7, 2, 0, 2,
1896 9, 8,
1897 OPC_CheckPatternPredicate0,
1898 OPC_EmitConvertToTarget1,
1899 OPC_MorphNodeTo1None, TARGET_VAL(SP::SUBri),
1900 8, 2, 0, 2,
1901 0,
1902 8,
1903 OPC_CheckTypeI32,
1904 OPC_MorphNodeTo1None, TARGET_VAL(SP::SUBrr),
1905 7, 2, 0, 1,
1906 9,
1907 OPC_CheckTypeI64,
1908 OPC_CheckPatternPredicate0,
1909 OPC_MorphNodeTo1None, TARGET_VAL(SP::SUBrr),
1910 8, 2, 0, 1,
1911 0,
1912 32, TARGET_VAL(ISD::SUBE),
1913 OPC_CaptureGlueInput,
1914 OPC_RecordChild0,
1915 OPC_RecordChild1,
1916 OPC_Scope, 16,
1917 OPC_MoveChild1,
1918 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1919 OPC_CheckPredicate0,
1920 OPC_MoveParent,
1921 OPC_CheckTypeI32,
1922 OPC_EmitConvertToTarget1,
1923 OPC_MorphNodeTo1, TARGET_VAL(SP::SUBEri), 0|OPFL_GlueInput|OPFL_GlueOutput,
1924 7, 2, 0, 2,
1925 9,
1926 OPC_CheckTypeI32,
1927 OPC_MorphNodeTo1, TARGET_VAL(SP::SUBErr), 0|OPFL_GlueInput|OPFL_GlueOutput,
1928 7, 2, 0, 1,
1929 0,
1930 29, TARGET_VAL(ISD::SUBC),
1931 OPC_RecordChild0,
1932 OPC_RecordChild1,
1933 OPC_Scope, 15,
1934 OPC_MoveChild1,
1935 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1936 OPC_CheckPredicate0,
1937 OPC_MoveParent,
1938 OPC_CheckTypeI32,
1939 OPC_EmitConvertToTarget1,
1940 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::SUBCCri),
1941 7, 2, 0, 2,
1942 8,
1943 OPC_CheckTypeI32,
1944 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::SUBCCrr),
1945 7, 2, 0, 1,
1946 0,
1947 61, TARGET_VAL(SPISD::CMPICC),
1948 OPC_RecordChild0,
1949 OPC_Scope, 27,
1950 OPC_CheckChild0TypeI32,
1951 OPC_RecordChild1,
1952 OPC_Scope, 14,
1953 OPC_MoveChild1,
1954 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1955 OPC_CheckPredicate0,
1956 OPC_MoveParent,
1957 OPC_EmitConvertToTarget1,
1958 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::SUBCCri),
1959 7, 2, 0, 2,
1960 7,
1961 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::SUBCCrr),
1962 7, 2, 0, 1,
1963 0,
1964 29,
1965 OPC_CheckChild0TypeI64,
1966 OPC_RecordChild1,
1967 OPC_Scope, 15,
1968 OPC_MoveChild1,
1969 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1970 OPC_CheckPredicate0,
1971 OPC_MoveParent,
1972 OPC_CheckPatternPredicate0,
1973 OPC_EmitConvertToTarget1,
1974 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::SUBCCri),
1975 7, 2, 0, 2,
1976 8,
1977 OPC_CheckPatternPredicate0,
1978 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::SUBCCrr),
1979 7, 2, 0, 1,
1980 0,
1981 0,
1982 31, TARGET_VAL(ISD::UMUL_LOHI),
1983 OPC_RecordChild0,
1984 OPC_RecordChild1,
1985 OPC_Scope, 16,
1986 OPC_MoveChild1,
1987 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1988 OPC_CheckPredicate0,
1989 OPC_MoveParent,
1990 OPC_CheckTypeI32,
1991 OPC_EmitConvertToTarget1,
1992 OPC_MorphNodeTo2None, TARGET_VAL(SP::UMULri),
1993 7, 7, 2, 0, 2,
1994 9,
1995 OPC_CheckTypeI32,
1996 OPC_MorphNodeTo2None, TARGET_VAL(SP::UMULrr),
1997 7, 7, 2, 0, 1,
1998 0,
1999 31, TARGET_VAL(ISD::SMUL_LOHI),
2000 OPC_RecordChild0,
2001 OPC_RecordChild1,
2002 OPC_Scope, 16,
2003 OPC_MoveChild1,
2004 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2005 OPC_CheckPredicate0,
2006 OPC_MoveParent,
2007 OPC_CheckTypeI32,
2008 OPC_EmitConvertToTarget1,
2009 OPC_MorphNodeTo2None, TARGET_VAL(SP::SMULri),
2010 7, 7, 2, 0, 2,
2011 9,
2012 OPC_CheckTypeI32,
2013 OPC_MorphNodeTo2None, TARGET_VAL(SP::SMULrr),
2014 7, 7, 2, 0, 1,
2015 0,
2016 17, TARGET_VAL(SPISD::RET_GLUE),
2017 OPC_RecordNode,
2018 OPC_CaptureGlueInput,
2019 OPC_RecordChild1,
2020 OPC_MoveChild1,
2021 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2022 OPC_CheckPredicate0,
2023 OPC_MoveParent,
2024 OPC_EmitMergeInputChains1_0,
2025 OPC_EmitConvertToTarget1,
2026 OPC_MorphNodeTo0, TARGET_VAL(SP::RETL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1,
2027 1, 2,
2028 31, TARGET_VAL(ISD::MUL),
2029 OPC_RecordChild0,
2030 OPC_RecordChild1,
2031 OPC_Scope, 16,
2032 OPC_MoveChild1,
2033 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2034 OPC_CheckPredicate0,
2035 OPC_MoveParent,
2036 OPC_CheckTypeI64,
2037 OPC_CheckPatternPredicate0,
2038 OPC_EmitConvertToTarget1,
2039 OPC_MorphNodeTo1None, TARGET_VAL(SP::MULXri),
2040 8, 2, 0, 2,
2041 9,
2042 OPC_CheckTypeI64,
2043 OPC_CheckPatternPredicate0,
2044 OPC_MorphNodeTo1None, TARGET_VAL(SP::MULXrr),
2045 8, 2, 0, 1,
2046 0,
2047 31, TARGET_VAL(ISD::SDIV),
2048 OPC_RecordChild0,
2049 OPC_RecordChild1,
2050 OPC_Scope, 16,
2051 OPC_MoveChild1,
2052 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2053 OPC_CheckPredicate0,
2054 OPC_MoveParent,
2055 OPC_CheckTypeI64,
2056 OPC_CheckPatternPredicate0,
2057 OPC_EmitConvertToTarget1,
2058 OPC_MorphNodeTo1None, TARGET_VAL(SP::SDIVXri),
2059 8, 2, 0, 2,
2060 9,
2061 OPC_CheckTypeI64,
2062 OPC_CheckPatternPredicate0,
2063 OPC_MorphNodeTo1None, TARGET_VAL(SP::SDIVXrr),
2064 8, 2, 0, 1,
2065 0,
2066 31, TARGET_VAL(ISD::UDIV),
2067 OPC_RecordChild0,
2068 OPC_RecordChild1,
2069 OPC_Scope, 16,
2070 OPC_MoveChild1,
2071 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2072 OPC_CheckPredicate0,
2073 OPC_MoveParent,
2074 OPC_CheckTypeI64,
2075 OPC_CheckPatternPredicate0,
2076 OPC_EmitConvertToTarget1,
2077 OPC_MorphNodeTo1None, TARGET_VAL(SP::UDIVXri),
2078 8, 2, 0, 2,
2079 9,
2080 OPC_CheckTypeI64,
2081 OPC_CheckPatternPredicate0,
2082 OPC_MorphNodeTo1None, TARGET_VAL(SP::UDIVXrr),
2083 8, 2, 0, 1,
2084 0,
2085 57, TARGET_VAL(ISD::SHL),
2086 OPC_RecordChild0,
2087 OPC_RecordChild1,
2088 OPC_Scope, 29,
2089 OPC_MoveChild1,
2090 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2091 OPC_CheckTypeI32,
2092 OPC_MoveParent,
2093 OPC_SwitchType , 8, 7,
2094 OPC_EmitConvertToTarget1,
2095 OPC_MorphNodeTo1None, TARGET_VAL(SP::SLLri),
2096 7, 2, 0, 2,
2097 9, 8,
2098 OPC_CheckPatternPredicate0,
2099 OPC_EmitConvertToTarget1,
2100 OPC_MorphNodeTo1None, TARGET_VAL(SP::SLLXri),
2101 8, 2, 0, 2,
2102 0,
2103 22,
2104 OPC_CheckChild1TypeI32,
2105 OPC_SwitchType , 7, 7,
2106 OPC_MorphNodeTo1None, TARGET_VAL(SP::SLLrr),
2107 7, 2, 0, 1,
2108 8, 8,
2109 OPC_CheckPatternPredicate0,
2110 OPC_MorphNodeTo1None, TARGET_VAL(SP::SLLXrr),
2111 8, 2, 0, 1,
2112 0,
2113 0,
2114 57, TARGET_VAL(ISD::SRL),
2115 OPC_RecordChild0,
2116 OPC_RecordChild1,
2117 OPC_Scope, 29,
2118 OPC_MoveChild1,
2119 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2120 OPC_CheckTypeI32,
2121 OPC_MoveParent,
2122 OPC_SwitchType , 8, 7,
2123 OPC_EmitConvertToTarget1,
2124 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRLri),
2125 7, 2, 0, 2,
2126 9, 8,
2127 OPC_CheckPatternPredicate0,
2128 OPC_EmitConvertToTarget1,
2129 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRLXri),
2130 8, 2, 0, 2,
2131 0,
2132 22,
2133 OPC_CheckChild1TypeI32,
2134 OPC_SwitchType , 7, 7,
2135 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRLrr),
2136 7, 2, 0, 1,
2137 8, 8,
2138 OPC_CheckPatternPredicate0,
2139 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRLXrr),
2140 8, 2, 0, 1,
2141 0,
2142 0,
2143 57, TARGET_VAL(ISD::SRA),
2144 OPC_RecordChild0,
2145 OPC_RecordChild1,
2146 OPC_Scope, 29,
2147 OPC_MoveChild1,
2148 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2149 OPC_CheckTypeI32,
2150 OPC_MoveParent,
2151 OPC_SwitchType , 8, 7,
2152 OPC_EmitConvertToTarget1,
2153 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRAri),
2154 7, 2, 0, 2,
2155 9, 8,
2156 OPC_CheckPatternPredicate0,
2157 OPC_EmitConvertToTarget1,
2158 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRAXri),
2159 8, 2, 0, 2,
2160 0,
2161 22,
2162 OPC_CheckChild1TypeI32,
2163 OPC_SwitchType , 7, 7,
2164 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRArr),
2165 7, 2, 0, 1,
2166 8, 8,
2167 OPC_CheckPatternPredicate0,
2168 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRAXrr),
2169 8, 2, 0, 1,
2170 0,
2171 0,
2172 22, TARGET_VAL(SPISD::BRICC),
2173 OPC_RecordNode,
2174 OPC_CaptureGlueInput,
2175 OPC_RecordChild1,
2176 OPC_MoveChild1,
2177 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
2178 OPC_MoveSibling2,
2179 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2180 OPC_RecordNode,
2181 OPC_MoveParent,
2182 OPC_EmitMergeInputChains1_0,
2183 OPC_EmitConvertToTarget2,
2184 OPC_MorphNodeTo0, TARGET_VAL(SP::BCOND), 0|OPFL_Chain|OPFL_GlueInput,
2185 2, 1, 3,
2186 23, TARGET_VAL(SPISD::BPICC),
2187 OPC_RecordNode,
2188 OPC_CaptureGlueInput,
2189 OPC_RecordChild1,
2190 OPC_MoveChild1,
2191 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
2192 OPC_MoveSibling2,
2193 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2194 OPC_RecordNode,
2195 OPC_MoveParent,
2196 OPC_CheckPatternPredicate2,
2197 OPC_EmitMergeInputChains1_0,
2198 OPC_EmitConvertToTarget2,
2199 OPC_MorphNodeTo0, TARGET_VAL(SP::BPICC), 0|OPFL_Chain|OPFL_GlueInput,
2200 2, 1, 3,
2201 33, TARGET_VAL(SPISD::BRFCC),
2202 OPC_RecordNode,
2203 OPC_CaptureGlueInput,
2204 OPC_RecordChild1,
2205 OPC_MoveChild1,
2206 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
2207 OPC_MoveSibling2,
2208 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2209 OPC_RecordNode,
2210 OPC_MoveParent,
2211 OPC_EmitMergeInputChains1_0,
2212 OPC_EmitConvertToTarget2,
2213 OPC_Scope, 7,
2214 OPC_MorphNodeTo0, TARGET_VAL(SP::FBCOND), 0|OPFL_Chain|OPFL_GlueInput,
2215 2, 1, 3,
2216 7,
2217 OPC_MorphNodeTo0, TARGET_VAL(SP::CPBCOND), 0|OPFL_Chain|OPFL_GlueInput,
2218 2, 1, 3,
2219 0,
2220 34, TARGET_VAL(SPISD::BRFCC_V9),
2221 OPC_RecordNode,
2222 OPC_CaptureGlueInput,
2223 OPC_RecordChild1,
2224 OPC_MoveChild1,
2225 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
2226 OPC_MoveSibling2,
2227 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2228 OPC_RecordNode,
2229 OPC_MoveParent,
2230 OPC_CheckPatternPredicate2,
2231 OPC_EmitMergeInputChains1_0,
2232 OPC_EmitConvertToTarget2,
2233 OPC_Scope, 7,
2234 OPC_MorphNodeTo0, TARGET_VAL(SP::FBCOND_V9), 0|OPFL_Chain|OPFL_GlueInput,
2235 2, 1, 3,
2236 7,
2237 OPC_MorphNodeTo0, TARGET_VAL(SP::FBCONDA_V9), 0|OPFL_Chain|OPFL_GlueInput,
2238 2, 1, 3,
2239 0,
2240 39, TARGET_VAL(SPISD::TLS_ADD),
2241 OPC_RecordChild0,
2242 OPC_RecordChild1,
2243 OPC_Scope, 16,
2244 OPC_CheckChild1TypeI32,
2245 OPC_RecordChild2,
2246 OPC_MoveChild2,
2247 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
2248 OPC_MoveParent,
2249 OPC_CheckTypeI32,
2250 OPC_MorphNodeTo1None, TARGET_VAL(SP::TLS_ADDrr),
2251 7, 3, 0, 1, 2,
2252 17,
2253 OPC_CheckChild1TypeI64,
2254 OPC_RecordChild2,
2255 OPC_MoveChild2,
2256 OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress),
2257 OPC_MoveParent,
2258 OPC_CheckTypeI64,
2259 OPC_CheckPatternPredicate0,
2260 OPC_MorphNodeTo1None, TARGET_VAL(SP::TLS_ADDrr),
2261 8, 3, 0, 1, 2,
2262 0,
2263 100, TARGET_VAL(SPISD::Hi),
2264 OPC_RecordChild0,
2265 OPC_MoveChild0,
2266 OPC_SwitchOpcode , 21, TARGET_VAL(ISD::TargetGlobalAddress),
2267 OPC_MoveParent,
2268 OPC_Scope, 8,
2269 OPC_CheckPatternPredicate3,
2270 OPC_MorphNodeTo1None, TARGET_VAL(SP::SETHIi),
2271 126|128,3, 1, 0,
2272 8,
2273 OPC_CheckPatternPredicate0,
2274 OPC_MorphNodeTo1None, TARGET_VAL(SP::SETHIi),
2275 126|128,3, 1, 0,
2276 0,
2277 21, TARGET_VAL(ISD::TargetConstantPool),
2278 OPC_MoveParent,
2279 OPC_Scope, 8,
2280 OPC_CheckPatternPredicate3,
2281 OPC_MorphNodeTo1None, TARGET_VAL(SP::SETHIi),
2282 126|128,3, 1, 0,
2283 8,
2284 OPC_CheckPatternPredicate0,
2285 OPC_MorphNodeTo1None, TARGET_VAL(SP::SETHIi),
2286 126|128,3, 1, 0,
2287 0,
2288 21, TARGET_VAL(ISD::TargetGlobalTLSAddress),
2289 OPC_MoveParent,
2290 OPC_Scope, 8,
2291 OPC_CheckPatternPredicate3,
2292 OPC_MorphNodeTo1None, TARGET_VAL(SP::SETHIi),
2293 126|128,3, 1, 0,
2294 8,
2295 OPC_CheckPatternPredicate0,
2296 OPC_MorphNodeTo1None, TARGET_VAL(SP::SETHIi),
2297 126|128,3, 1, 0,
2298 0,
2299 21, TARGET_VAL(ISD::TargetBlockAddress),
2300 OPC_MoveParent,
2301 OPC_Scope, 8,
2302 OPC_CheckPatternPredicate3,
2303 OPC_MorphNodeTo1None, TARGET_VAL(SP::SETHIi),
2304 126|128,3, 1, 0,
2305 8,
2306 OPC_CheckPatternPredicate0,
2307 OPC_MorphNodeTo1None, TARGET_VAL(SP::SETHIi),
2308 126|128,3, 1, 0,
2309 0,
2310 0,
2311 124, TARGET_VAL(SPISD::Lo),
2312 OPC_RecordChild0,
2313 OPC_MoveChild0,
2314 OPC_SwitchOpcode , 27, TARGET_VAL(ISD::TargetGlobalAddress),
2315 OPC_MoveParent,
2316 OPC_Scope, 11,
2317 OPC_CheckPatternPredicate3,
2318 OPC_EmitRegisterI32, SP::G0,
2319 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2320 126|128,3, 2, 1, 0,
2321 11,
2322 OPC_CheckPatternPredicate0,
2323 OPC_EmitRegisterI64, SP::G0,
2324 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2325 126|128,3, 2, 1, 0,
2326 0,
2327 27, TARGET_VAL(ISD::TargetConstantPool),
2328 OPC_MoveParent,
2329 OPC_Scope, 11,
2330 OPC_CheckPatternPredicate3,
2331 OPC_EmitRegisterI32, SP::G0,
2332 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2333 126|128,3, 2, 1, 0,
2334 11,
2335 OPC_CheckPatternPredicate0,
2336 OPC_EmitRegisterI64, SP::G0,
2337 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2338 126|128,3, 2, 1, 0,
2339 0,
2340 27, TARGET_VAL(ISD::TargetGlobalTLSAddress),
2341 OPC_MoveParent,
2342 OPC_Scope, 11,
2343 OPC_CheckPatternPredicate3,
2344 OPC_EmitRegisterI32, SP::G0,
2345 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2346 126|128,3, 2, 1, 0,
2347 11,
2348 OPC_CheckPatternPredicate0,
2349 OPC_EmitRegisterI64, SP::G0,
2350 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2351 126|128,3, 2, 1, 0,
2352 0,
2353 27, TARGET_VAL(ISD::TargetBlockAddress),
2354 OPC_MoveParent,
2355 OPC_Scope, 11,
2356 OPC_CheckPatternPredicate3,
2357 OPC_EmitRegisterI32, SP::G0,
2358 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2359 126|128,3, 2, 1, 0,
2360 11,
2361 OPC_CheckPatternPredicate0,
2362 OPC_EmitRegisterI64, SP::G0,
2363 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2364 126|128,3, 2, 1, 0,
2365 0,
2366 0,
2367 23, TARGET_VAL(SPISD::BPXCC),
2368 OPC_RecordNode,
2369 OPC_CaptureGlueInput,
2370 OPC_RecordChild1,
2371 OPC_MoveChild1,
2372 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
2373 OPC_MoveSibling2,
2374 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2375 OPC_RecordNode,
2376 OPC_MoveParent,
2377 OPC_CheckPatternPredicate0,
2378 OPC_EmitMergeInputChains1_0,
2379 OPC_EmitConvertToTarget2,
2380 OPC_MorphNodeTo0, TARGET_VAL(SP::BPXCC), 0|OPFL_Chain|OPFL_GlueInput,
2381 2, 1, 3,
2382 23, TARGET_VAL(SPISD::BR_REG),
2383 OPC_RecordNode,
2384 OPC_RecordChild1,
2385 OPC_MoveChild1,
2386 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
2387 OPC_MoveSibling2,
2388 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2389 OPC_RecordNode,
2390 OPC_MoveParent,
2391 OPC_RecordChild3,
2392 OPC_CheckPatternPredicate0,
2393 OPC_EmitMergeInputChains1_0,
2394 OPC_EmitConvertToTarget2,
2395 OPC_MorphNodeTo0Chain, TARGET_VAL(SP::BPR),
2396 3, 1, 4, 3,
2397 34, TARGET_VAL(ISD::ZERO_EXTEND),
2398 OPC_Scope, 17,
2399 OPC_MoveChild0,
2400 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2401 OPC_RecordChild0,
2402 OPC_CheckChild0Type, 12,
2403 OPC_CheckTypeI32,
2404 OPC_MoveParent,
2405 OPC_CheckTypeI64,
2406 OPC_CheckPatternPredicate1,
2407 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVSTOUW),
2408 8, 1, 0,
2409 13,
2410 OPC_RecordChild0,
2411 OPC_CheckChild0TypeI32,
2412 OPC_CheckTypeI64,
2413 OPC_CheckPatternPredicate0,
2414 OPC_EmitInteger32, 0,
2415 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRLri),
2416 8, 2, 0, 1,
2417 0,
2418 34, TARGET_VAL(ISD::ANY_EXTEND),
2419 OPC_Scope, 17,
2420 OPC_MoveChild0,
2421 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2422 OPC_RecordChild0,
2423 OPC_CheckChild0Type, 12,
2424 OPC_CheckTypeI32,
2425 OPC_MoveParent,
2426 OPC_CheckTypeI64,
2427 OPC_CheckPatternPredicate1,
2428 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVSTOUW),
2429 8, 1, 0,
2430 13,
2431 OPC_RecordChild0,
2432 OPC_CheckChild0TypeI32,
2433 OPC_CheckTypeI64,
2434 OPC_CheckPatternPredicate0,
2435 OPC_EmitStringInteger32, SP::I64RegsRegClassID,
2436 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
2437 8, 2, 0, 1,
2438 0,
2439 34, TARGET_VAL(ISD::SIGN_EXTEND),
2440 OPC_Scope, 17,
2441 OPC_MoveChild0,
2442 OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
2443 OPC_RecordChild0,
2444 OPC_CheckChild0Type, 12,
2445 OPC_CheckTypeI32,
2446 OPC_MoveParent,
2447 OPC_CheckTypeI64,
2448 OPC_CheckPatternPredicate1,
2449 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVSTOSW),
2450 8, 1, 0,
2451 13,
2452 OPC_RecordChild0,
2453 OPC_CheckChild0TypeI32,
2454 OPC_CheckTypeI64,
2455 OPC_CheckPatternPredicate0,
2456 OPC_EmitInteger32, 0,
2457 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRAri),
2458 8, 2, 0, 1,
2459 0,
2460 90|128,1, TARGET_VAL(ISD::Constant),
2461 OPC_Scope, 25,
2462 OPC_CheckInteger, 0,
2463 OPC_SwitchType , 8, 7,
2464 OPC_EmitRegisterI32, SP::G0,
2465 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY),
2466 7, 1, 0,
2467 9, 8,
2468 OPC_CheckPatternPredicate0,
2469 OPC_EmitRegisterI64, SP::G0,
2470 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY),
2471 8, 1, 0,
2472 0,
2473 60|128,1,
2474 OPC_RecordNode,
2475 OPC_Scope, 13,
2476 OPC_CheckPredicate, 19,
2477 OPC_CheckTypeI32,
2478 OPC_EmitConvertToTarget0,
2479 OPC_EmitNodeXForm, 2, 1,
2480 OPC_MorphNodeTo1None, TARGET_VAL(SP::SETHIi),
2481 7, 1, 2,
2482 29,
2483 OPC_CheckPredicate0,
2484 OPC_SwitchType , 10, 7,
2485 OPC_EmitRegisterI32, SP::G0,
2486 OPC_EmitConvertToTarget0,
2487 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2488 7, 2, 1, 2,
2489 12, 8,
2490 OPC_EmitRegisterI64, SP::G0,
2491 OPC_EmitNodeXForm, 1, 0,
2492 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2493 8, 2, 1, 2,
2494 0,
2495 12,
2496 OPC_CheckPredicate, 19,
2497 OPC_CheckTypeI64,
2498 OPC_EmitNodeXForm, 2, 0,
2499 OPC_MorphNodeTo1None, TARGET_VAL(SP::SETHIi),
2500 8, 1, 1,
2501 23,
2502 OPC_CheckPredicate, 23,
2503 OPC_CheckTypeI64,
2504 OPC_CheckPatternPredicate0,
2505 OPC_EmitNodeXForm, 2, 0,
2506 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
2507 7, 1, 1,
2508 OPC_EmitNodeXForm, 3, 0,
2509 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2510 8, 2, 2, 3,
2511 23,
2512 OPC_CheckPredicate, 24,
2513 OPC_CheckTypeI64,
2514 OPC_CheckPatternPredicate0,
2515 OPC_EmitNodeXForm, 4, 0,
2516 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
2517 7, 1, 1,
2518 OPC_EmitNodeXForm, 5, 0,
2519 OPC_MorphNodeTo1None, TARGET_VAL(SP::XORri),
2520 8, 2, 2, 3,
2521 22,
2522 OPC_CheckTypeI32,
2523 OPC_EmitConvertToTarget0,
2524 OPC_EmitNodeXForm, 2, 1,
2525 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
2526 7, 1, 2,
2527 OPC_EmitConvertToTarget0,
2528 OPC_EmitNodeXForm, 3, 4,
2529 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORri),
2530 7, 2, 3, 5,
2531 56,
2532 OPC_CheckTypeI64,
2533 OPC_CheckPatternPredicate0,
2534 OPC_EmitNodeXForm, 6, 0,
2535 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
2536 7, 1, 1,
2537 OPC_EmitNodeXForm, 7, 0,
2538 OPC_EmitNode1None, TARGET_VAL(SP::ORri),
2539 8, 2, 2, 3,
2540 OPC_EmitInteger32, 64,
2541 OPC_EmitNode1None, TARGET_VAL(SP::SLLXri),
2542 8, 2, 4, 5,
2543 OPC_EmitNodeXForm, 2, 0,
2544 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
2545 7, 1, 7,
2546 OPC_EmitNodeXForm, 3, 0,
2547 OPC_EmitNode1None, TARGET_VAL(SP::ORri),
2548 7, 2, 8, 9,
2549 OPC_MorphNodeTo1None, TARGET_VAL(SP::ORrr),
2550 8, 2, 6, 10,
2551 0,
2552 0,
2553 66, TARGET_VAL(ISD::ATOMIC_CMP_SWAP),
2554 OPC_RecordMemRef,
2555 OPC_RecordNode,
2556 OPC_RecordChild1,
2557 OPC_SwitchType , 37, 7,
2558 OPC_RecordChild2,
2559 OPC_RecordChild3,
2560 OPC_CheckPredicate5,
2561 OPC_Scope, 15,
2562 OPC_CheckPatternPredicate2,
2563 OPC_EmitMergeInputChains1_0,
2564 OPC_EmitInteger32, 0|128,2,
2565 OPC_MorphNodeTo1, TARGET_VAL(SP::CASArr), 0|OPFL_Chain|OPFL_MemRefs,
2566 7, 4, 1, 2, 3, 4,
2567 15,
2568 OPC_CheckPatternPredicate, 9,
2569 OPC_EmitMergeInputChains1_0,
2570 OPC_EmitInteger32, 20,
2571 OPC_MorphNodeTo1, TARGET_VAL(SP::CASArr), 0|OPFL_Chain|OPFL_MemRefs,
2572 7, 4, 1, 2, 3, 4,
2573 0,
2574 20, 8,
2575 OPC_CheckChild1TypeI64,
2576 OPC_RecordChild2,
2577 OPC_RecordChild3,
2578 OPC_CheckPredicate, 15,
2579 OPC_CheckPatternPredicate0,
2580 OPC_EmitMergeInputChains1_0,
2581 OPC_EmitInteger32, 0|128,2,
2582 OPC_MorphNodeTo1, TARGET_VAL(SP::CASXArr), 0|OPFL_Chain|OPFL_MemRefs,
2583 8, 4, 1, 2, 3, 4,
2584 0,
2585 16, TARGET_VAL(SPISD::FLUSHW),
2586 OPC_RecordNode,
2587 OPC_Scope, 6,
2588 OPC_CheckPatternPredicate2,
2589 OPC_EmitMergeInputChains1_0,
2590 OPC_MorphNodeTo0Chain, TARGET_VAL(SP::FLUSHW),
2591 0,
2592 5,
2593 OPC_EmitMergeInputChains1_0,
2594 OPC_MorphNodeTo0Chain, TARGET_VAL(SP::TA3),
2595 0,
2596 0,
2597 13, TARGET_VAL(ISD::BR),
2598 OPC_RecordNode,
2599 OPC_RecordChild1,
2600 OPC_MoveChild1,
2601 OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
2602 OPC_MoveParent,
2603 OPC_EmitMergeInputChains1_0,
2604 OPC_MorphNodeTo0Chain, TARGET_VAL(SP::BA),
2605 1, 1,
2606 6, TARGET_VAL(ISD::TRAP),
2607 OPC_RecordNode,
2608 OPC_EmitMergeInputChains1_0,
2609 OPC_MorphNodeTo0Chain, TARGET_VAL(SP::TA5),
2610 0,
2611 6, TARGET_VAL(ISD::DEBUGTRAP),
2612 OPC_RecordNode,
2613 OPC_EmitMergeInputChains1_0,
2614 OPC_MorphNodeTo0Chain, TARGET_VAL(SP::TA1),
2615 0,
2616 37, TARGET_VAL(SPISD::CMPFCC),
2617 OPC_RecordChild0,
2618 OPC_Scope, 10,
2619 OPC_CheckChild0Type, 12,
2620 OPC_RecordChild1,
2621 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::FCMPS),
2622 2, 2, 0, 1,
2623 10,
2624 OPC_CheckChild0Type, 13,
2625 OPC_RecordChild1,
2626 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::FCMPD),
2627 2, 2, 0, 1,
2628 11,
2629 OPC_CheckChild0Type, 15,
2630 OPC_RecordChild1,
2631 OPC_CheckPatternPredicate4,
2632 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::FCMPQ),
2633 2, 2, 0, 1,
2634 0,
2635 39, TARGET_VAL(SPISD::CMPFCC_V9),
2636 OPC_RecordChild0,
2637 OPC_Scope, 11,
2638 OPC_CheckChild0Type, 12,
2639 OPC_RecordChild1,
2640 OPC_CheckPatternPredicate2,
2641 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::FCMPS_V9),
2642 2, 2, 0, 1,
2643 11,
2644 OPC_CheckChild0Type, 13,
2645 OPC_RecordChild1,
2646 OPC_CheckPatternPredicate2,
2647 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::FCMPD_V9),
2648 2, 2, 0, 1,
2649 11,
2650 OPC_CheckChild0Type, 15,
2651 OPC_RecordChild1,
2652 OPC_CheckPatternPredicate2,
2653 OPC_MorphNodeTo1GlueOutput, TARGET_VAL(SP::FCMPQ_V9),
2654 2, 2, 0, 1,
2655 0,
2656 31, TARGET_VAL(ISD::FrameIndex),
2657 OPC_RecordNode,
2658 OPC_SwitchType , 12, 7,
2659 OPC_EmitNodeXForm, 8, 0,
2660 OPC_EmitInteger32, 0,
2661 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
2662 7, 2, 1, 2,
2663 12, 8,
2664 OPC_EmitNodeXForm, 8, 0,
2665 OPC_EmitInteger64, 0,
2666 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
2667 8, 2, 1, 2,
2668 0,
2669 12, TARGET_VAL(ISD::TRUNCATE),
2670 OPC_RecordChild0,
2671 OPC_CheckTypeI32,
2672 OPC_CheckPatternPredicate0,
2673 OPC_EmitStringInteger32, SP::IntRegsRegClassID,
2674 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS),
2675 7, 2, 0, 1,
2676 15, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
2677 OPC_RecordChild0,
2678 OPC_MoveChild1,
2679 OPC_CheckValueType, 7,
2680 OPC_MoveParent,
2681 OPC_CheckPatternPredicate0,
2682 OPC_EmitInteger32, 0,
2683 OPC_MorphNodeTo1None, TARGET_VAL(SP::SRAri),
2684 8, 2, 0, 1,
2685 31, TARGET_VAL(ISD::CTPOP),
2686 OPC_RecordChild0,
2687 OPC_SwitchType , 8, 8,
2688 OPC_CheckChild0TypeI64,
2689 OPC_CheckPatternPredicate0,
2690 OPC_MorphNodeTo1None, TARGET_VAL(SP::POPCrr),
2691 8, 1, 0,
2692 16, 7,
2693 OPC_CheckChild0TypeI32,
2694 OPC_EmitInteger32, 0,
2695 OPC_EmitNode1None, TARGET_VAL(SP::SRLri),
2696 7, 2, 0, 1,
2697 OPC_MorphNodeTo1None, TARGET_VAL(SP::POPCrr),
2698 7, 1, 2,
2699 0,
2700 11, TARGET_VAL(ISD::MULHU),
2701 OPC_RecordChild0,
2702 OPC_RecordChild1,
2703 OPC_CheckTypeI64,
2704 OPC_CheckPatternPredicate1,
2705 OPC_MorphNodeTo1None, TARGET_VAL(SP::UMULXHI),
2706 8, 2, 0, 1,
2707 41, TARGET_VAL(ISD::CTLZ),
2708 OPC_RecordChild0,
2709 OPC_SwitchType , 8, 8,
2710 OPC_CheckChild0TypeI64,
2711 OPC_CheckPatternPredicate1,
2712 OPC_MorphNodeTo1None, TARGET_VAL(SP::LZCNT),
2713 8, 1, 0,
2714 26, 7,
2715 OPC_CheckChild0TypeI32,
2716 OPC_CheckPatternPredicate1,
2717 OPC_EmitInteger32, 0,
2718 OPC_EmitNode1None, TARGET_VAL(SP::SRLri),
2719 8, 2, 0, 1,
2720 OPC_EmitNode1None, TARGET_VAL(SP::LZCNT),
2721 8, 1, 2,
2722 OPC_EmitInteger32, 65,
2723 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
2724 7, 2, 3, 4,
2725 0,
2726 41, TARGET_VAL(ISD::CTLZ_ZERO_UNDEF),
2727 OPC_RecordChild0,
2728 OPC_SwitchType , 8, 8,
2729 OPC_CheckChild0TypeI64,
2730 OPC_CheckPatternPredicate1,
2731 OPC_MorphNodeTo1None, TARGET_VAL(SP::LZCNT),
2732 8, 1, 0,
2733 26, 7,
2734 OPC_CheckChild0TypeI32,
2735 OPC_CheckPatternPredicate1,
2736 OPC_EmitInteger32, 0,
2737 OPC_EmitNode1None, TARGET_VAL(SP::SRLri),
2738 8, 2, 0, 1,
2739 OPC_EmitNode1None, TARGET_VAL(SP::LZCNT),
2740 8, 1, 2,
2741 OPC_EmitInteger32, 65,
2742 OPC_MorphNodeTo1None, TARGET_VAL(SP::ADDri),
2743 7, 2, 3, 4,
2744 0,
2745 45, TARGET_VAL(ISD::BITCAST),
2746 OPC_RecordChild0,
2747 OPC_SwitchType , 9, 7,
2748 OPC_CheckChild0Type, 12,
2749 OPC_CheckPatternPredicate1,
2750 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVSTOUW),
2751 7, 1, 0,
2752 9, 8,
2753 OPC_CheckChild0Type, 13,
2754 OPC_CheckPatternPredicate1,
2755 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVDTOX),
2756 8, 1, 0,
2757 8, 12,
2758 OPC_CheckChild0TypeI32,
2759 OPC_CheckPatternPredicate1,
2760 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVWTOS),
2761 12, 1, 0,
2762 8, 13,
2763 OPC_CheckChild0TypeI64,
2764 OPC_CheckPatternPredicate1,
2765 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVXTOD),
2766 13, 1, 0,
2767 0,
2768 57, TARGET_VAL(ISD::MULHS),
2769 OPC_RecordChild0,
2770 OPC_RecordChild1,
2771 OPC_CheckTypeI64,
2772 OPC_CheckPatternPredicate1,
2773 OPC_EmitNode1None, TARGET_VAL(SP::UMULXHI),
2774 8, 2, 0, 1,
2775 OPC_EmitInteger32, 126,
2776 OPC_EmitNode1None, TARGET_VAL(SP::SRAXri),
2777 8, 2, 0, 3,
2778 OPC_EmitNode1None, TARGET_VAL(SP::ANDrr),
2779 7, 2, 4, 1,
2780 OPC_EmitInteger32, 126,
2781 OPC_EmitNode1None, TARGET_VAL(SP::SRAXri),
2782 8, 2, 1, 6,
2783 OPC_EmitNode1None, TARGET_VAL(SP::ANDrr),
2784 7, 2, 7, 0,
2785 OPC_EmitNode1None, TARGET_VAL(SP::ADDrr),
2786 7, 2, 5, 8,
2787 OPC_MorphNodeTo1None, TARGET_VAL(SP::SUBrr),
2788 8, 2, 2, 9,
2789 118, TARGET_VAL(ISD::FNEG),
2790 OPC_Scope, 85,
2791 OPC_MoveChild0,
2792 OPC_SwitchOpcode , 51, TARGET_VAL(ISD::FMUL),
2793 OPC_Scope, 22,
2794 OPC_MoveChild0,
2795 OPC_CheckOpcode, TARGET_VAL(ISD::FP_EXTEND),
2796 OPC_RecordChild0,
2797 OPC_MoveSibling1,
2798 OPC_CheckOpcode, TARGET_VAL(ISD::FP_EXTEND),
2799 OPC_RecordChild0,
2800 OPC_MoveParent,
2801 OPC_MoveParent,
2802 OPC_CheckType, 13,
2803 OPC_CheckPatternPredicate1,
2804 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNSMULD),
2805 13, 2, 0, 1,
2806 25,
2807 OPC_RecordChild0,
2808 OPC_RecordChild1,
2809 OPC_MoveParent,
2810 OPC_SwitchType , 8, 12,
2811 OPC_CheckPatternPredicate1,
2812 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNMULS),
2813 12, 2, 0, 1,
2814 8, 13,
2815 OPC_CheckPatternPredicate1,
2816 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNMULD),
2817 13, 2, 0, 1,
2818 0,
2819 0,
2820 25, TARGET_VAL(ISD::FADD),
2821 OPC_RecordChild0,
2822 OPC_RecordChild1,
2823 OPC_MoveParent,
2824 OPC_SwitchType , 8, 12,
2825 OPC_CheckPatternPredicate1,
2826 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNADDS),
2827 12, 2, 0, 1,
2828 8, 13,
2829 OPC_CheckPatternPredicate1,
2830 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNADDD),
2831 13, 2, 0, 1,
2832 0,
2833 0,
2834 29,
2835 OPC_RecordChild0,
2836 OPC_SwitchType , 6, 12,
2837 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNEGS),
2838 12, 1, 0,
2839 7, 13,
2840 OPC_CheckPatternPredicate2,
2841 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNEGD),
2842 13, 1, 0,
2843 7, 15,
2844 OPC_CheckPatternPredicate6,
2845 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNEGQ),
2846 15, 1, 0,
2847 0,
2848 0,
2849 27|128,2, TARGET_VAL(ISD::FMUL),
2850 OPC_Scope, 116|128,1,
2851 OPC_MoveChild0,
2852 OPC_SwitchOpcode , 60, TARGET_VAL(ISD::FADD),
2853 OPC_RecordChild0,
2854 OPC_RecordChild1,
2855 OPC_MoveSibling1,
2856 OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP),
2857 OPC_Scope, 25,
2858 OPC_CheckPredicate, 8,
2859 OPC_MoveParent,
2860 OPC_SwitchType , 8, 12,
2861 OPC_CheckPatternPredicate1,
2862 OPC_MorphNodeTo1None, TARGET_VAL(SP::FHADDS),
2863 12, 2, 0, 1,
2864 8, 13,
2865 OPC_CheckPatternPredicate1,
2866 OPC_MorphNodeTo1None, TARGET_VAL(SP::FHADDD),
2867 13, 2, 0, 1,
2868 0,
2869 25,
2870 OPC_CheckPredicate, 13,
2871 OPC_MoveParent,
2872 OPC_SwitchType , 8, 12,
2873 OPC_CheckPatternPredicate1,
2874 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNHADDS),
2875 12, 2, 0, 1,
2876 8, 13,
2877 OPC_CheckPatternPredicate1,
2878 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNHADDD),
2879 13, 2, 0, 1,
2880 0,
2881 0,
2882 31, TARGET_VAL(ISD::FSUB),
2883 OPC_RecordChild0,
2884 OPC_RecordChild1,
2885 OPC_MoveSibling1,
2886 OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP),
2887 OPC_CheckPredicate, 8,
2888 OPC_MoveParent,
2889 OPC_SwitchType , 8, 12,
2890 OPC_CheckPatternPredicate1,
2891 OPC_MorphNodeTo1None, TARGET_VAL(SP::FHSUBS),
2892 12, 2, 0, 1,
2893 8, 13,
2894 OPC_CheckPatternPredicate1,
2895 OPC_MorphNodeTo1None, TARGET_VAL(SP::FHSUBD),
2896 13, 2, 0, 1,
2897 0,
2898 96, TARGET_VAL(ISD::ConstantFP),
2899 OPC_Scope, 61,
2900 OPC_CheckPredicate, 8,
2901 OPC_MoveSibling1,
2902 OPC_SwitchOpcode , 25, TARGET_VAL(ISD::FADD),
2903 OPC_RecordChild0,
2904 OPC_RecordChild1,
2905 OPC_MoveParent,
2906 OPC_SwitchType , 8, 12,
2907 OPC_CheckPatternPredicate1,
2908 OPC_MorphNodeTo1None, TARGET_VAL(SP::FHADDS),
2909 12, 2, 0, 1,
2910 8, 13,
2911 OPC_CheckPatternPredicate1,
2912 OPC_MorphNodeTo1None, TARGET_VAL(SP::FHADDD),
2913 13, 2, 0, 1,
2914 0,
2915 25, TARGET_VAL(ISD::FSUB),
2916 OPC_RecordChild0,
2917 OPC_RecordChild1,
2918 OPC_MoveParent,
2919 OPC_SwitchType , 8, 12,
2920 OPC_CheckPatternPredicate1,
2921 OPC_MorphNodeTo1None, TARGET_VAL(SP::FHSUBS),
2922 12, 2, 0, 1,
2923 8, 13,
2924 OPC_CheckPatternPredicate1,
2925 OPC_MorphNodeTo1None, TARGET_VAL(SP::FHSUBD),
2926 13, 2, 0, 1,
2927 0,
2928 0,
2929 31,
2930 OPC_CheckPredicate, 13,
2931 OPC_MoveSibling1,
2932 OPC_CheckOpcode, TARGET_VAL(ISD::FADD),
2933 OPC_RecordChild0,
2934 OPC_RecordChild1,
2935 OPC_MoveParent,
2936 OPC_SwitchType , 8, 12,
2937 OPC_CheckPatternPredicate1,
2938 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNHADDS),
2939 12, 2, 0, 1,
2940 8, 13,
2941 OPC_CheckPatternPredicate1,
2942 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNHADDD),
2943 13, 2, 0, 1,
2944 0,
2945 0,
2946 42, TARGET_VAL(ISD::FP_EXTEND),
2947 OPC_RecordChild0,
2948 OPC_Scope, 17,
2949 OPC_MoveSibling1,
2950 OPC_CheckOpcode, TARGET_VAL(ISD::FP_EXTEND),
2951 OPC_RecordChild0,
2952 OPC_MoveParent,
2953 OPC_CheckType, 13,
2954 OPC_CheckPatternPredicate, 10,
2955 OPC_MorphNodeTo1None, TARGET_VAL(SP::FSMULD),
2956 13, 2, 0, 1,
2957 20,
2958 OPC_CheckChild0Type, 13,
2959 OPC_MoveSibling1,
2960 OPC_CheckOpcode, TARGET_VAL(ISD::FP_EXTEND),
2961 OPC_RecordChild0,
2962 OPC_CheckChild0Type, 13,
2963 OPC_MoveParent,
2964 OPC_CheckType, 15,
2965 OPC_CheckPatternPredicate4,
2966 OPC_MorphNodeTo1None, TARGET_VAL(SP::FDMULQ),
2967 15, 2, 0, 1,
2968 0,
2969 0,
2970 34,
2971 OPC_RecordChild0,
2972 OPC_RecordChild1,
2973 OPC_SwitchType , 9, 12,
2974 OPC_CheckPatternPredicate, 11,
2975 OPC_MorphNodeTo1None, TARGET_VAL(SP::FMULS),
2976 12, 2, 0, 1,
2977 7, 13,
2978 OPC_MorphNodeTo1None, TARGET_VAL(SP::FMULD),
2979 13, 2, 0, 1,
2980 8, 15,
2981 OPC_CheckPatternPredicate4,
2982 OPC_MorphNodeTo1None, TARGET_VAL(SP::FMULQ),
2983 15, 2, 0, 1,
2984 0,
2985 0,
2986 36|128,1, TARGET_VAL(ISD::ConstantFP),
2987 OPC_Scope, 20,
2988 OPC_CheckPredicate, 25,
2989 OPC_SwitchType , 6, 13,
2990 OPC_CheckPatternPredicate7,
2991 OPC_MorphNodeTo1None, TARGET_VAL(SP::FZERO),
2992 13, 0,
2993 6, 12,
2994 OPC_CheckPatternPredicate7,
2995 OPC_MorphNodeTo1None, TARGET_VAL(SP::FZEROS),
2996 12, 0,
2997 0,
2998 32,
2999 OPC_CheckPredicate, 26,
3000 OPC_SwitchType , 12, 13,
3001 OPC_CheckPatternPredicate7,
3002 OPC_EmitNode1None, TARGET_VAL(SP::FZERO),
3003 13, 0,
3004 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNEGD),
3005 13, 1, 0,
3006 12, 12,
3007 OPC_CheckPatternPredicate7,
3008 OPC_EmitNode1None, TARGET_VAL(SP::FZEROS),
3009 12, 0,
3010 OPC_MorphNodeTo1None, TARGET_VAL(SP::FNEGS),
3011 12, 1, 0,
3012 0,
3013 21,
3014 OPC_CheckPredicate, 8,
3015 OPC_CheckType, 12,
3016 OPC_CheckPatternPredicate1,
3017 OPC_EmitInteger32, 0|128,0|128,126,
3018 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
3019 7, 1, 0,
3020 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVWTOS),
3021 12, 1, 1,
3022 22,
3023 OPC_CheckPredicate, 13,
3024 OPC_CheckType, 12,
3025 OPC_CheckPatternPredicate1,
3026 OPC_EmitInteger32, 0|128,0|128,126|128,2,
3027 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
3028 7, 1, 0,
3029 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVWTOS),
3030 12, 1, 1,
3031 30,
3032 OPC_CheckPredicate, 8,
3033 OPC_CheckType, 13,
3034 OPC_CheckPatternPredicate1,
3035 OPC_EmitInteger32, 0|128,96|128,127,
3036 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
3037 8, 1, 0,
3038 OPC_EmitInteger32, 64,
3039 OPC_EmitNode1None, TARGET_VAL(SP::SLLXri),
3040 8, 2, 1, 2,
3041 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVXTOD),
3042 13, 1, 3,
3043 31,
3044 OPC_CheckPredicate, 13,
3045 OPC_CheckType, 13,
3046 OPC_CheckPatternPredicate1,
3047 OPC_EmitInteger32, 0|128,96|128,127|128,2,
3048 OPC_EmitNode1None, TARGET_VAL(SP::SETHIi),
3049 8, 1, 0,
3050 OPC_EmitInteger32, 64,
3051 OPC_EmitNode1None, TARGET_VAL(SP::SLLXri),
3052 8, 2, 1, 2,
3053 OPC_MorphNodeTo1None, TARGET_VAL(SP::MOVXTOD),
3054 13, 1, 3,
3055 0,
3056 28, TARGET_VAL(SPISD::ITOF),
3057 OPC_RecordChild0,
3058 OPC_SwitchType , 6, 12,
3059 OPC_MorphNodeTo1None, TARGET_VAL(SP::FITOS),
3060 12, 1, 0,
3061 6, 13,
3062 OPC_MorphNodeTo1None, TARGET_VAL(SP::FITOD),
3063 13, 1, 0,
3064 7, 15,
3065 OPC_CheckPatternPredicate4,
3066 OPC_MorphNodeTo1None, TARGET_VAL(SP::FITOQ),
3067 15, 1, 0,
3068 0,
3069 31, TARGET_VAL(SPISD::FTOI),
3070 OPC_RecordChild0,
3071 OPC_Scope, 8,
3072 OPC_CheckChild0Type, 12,
3073 OPC_MorphNodeTo1None, TARGET_VAL(SP::FSTOI),
3074 12, 1, 0,
3075 8,
3076 OPC_CheckChild0Type, 13,
3077 OPC_MorphNodeTo1None, TARGET_VAL(SP::FDTOI),
3078 12, 1, 0,
3079 9,
3080 OPC_CheckChild0Type, 15,
3081 OPC_CheckPatternPredicate4,
3082 OPC_MorphNodeTo1None, TARGET_VAL(SP::FQTOI),
3083 12, 1, 0,
3084 0,
3085 35, TARGET_VAL(ISD::FP_EXTEND),
3086 OPC_RecordChild0,
3087 OPC_SwitchType , 6, 13,
3088 OPC_MorphNodeTo1None, TARGET_VAL(SP::FSTOD),
3089 13, 1, 0,
3090 22, 15,
3091 OPC_Scope, 9,
3092 OPC_CheckChild0Type, 12,
3093 OPC_CheckPatternPredicate4,
3094 OPC_MorphNodeTo1None, TARGET_VAL(SP::FSTOQ),
3095 15, 1, 0,
3096 9,
3097 OPC_CheckChild0Type, 13,
3098 OPC_CheckPatternPredicate4,
3099 OPC_MorphNodeTo1None, TARGET_VAL(SP::FDTOQ),
3100 15, 1, 0,
3101 0,
3102 0,
3103 35, TARGET_VAL(ISD::FP_ROUND),
3104 OPC_RecordChild0,
3105 OPC_SwitchType , 21, 12,
3106 OPC_Scope, 8,
3107 OPC_CheckChild0Type, 13,
3108 OPC_MorphNodeTo1None, TARGET_VAL(SP::FDTOS),
3109 12, 1, 0,
3110 9,
3111 OPC_CheckChild0Type, 15,
3112 OPC_CheckPatternPredicate4,
3113 OPC_MorphNodeTo1None, TARGET_VAL(SP::FQTOS),
3114 12, 1, 0,
3115 0,
3116 7, 13,
3117 OPC_CheckPatternPredicate4,
3118 OPC_MorphNodeTo1None, TARGET_VAL(SP::FQTOD),
3119 13, 1, 0,
3120 0,
3121 29, TARGET_VAL(ISD::FABS),
3122 OPC_RecordChild0,
3123 OPC_SwitchType , 6, 12,
3124 OPC_MorphNodeTo1None, TARGET_VAL(SP::FABSS),
3125 12, 1, 0,
3126 7, 13,
3127 OPC_CheckPatternPredicate2,
3128 OPC_MorphNodeTo1None, TARGET_VAL(SP::FABSD),
3129 13, 1, 0,
3130 7, 15,
3131 OPC_CheckPatternPredicate6,
3132 OPC_MorphNodeTo1None, TARGET_VAL(SP::FABSQ),
3133 15, 1, 0,
3134 0,
3135 30, TARGET_VAL(ISD::FSQRT),
3136 OPC_RecordChild0,
3137 OPC_SwitchType , 8, 12,
3138 OPC_CheckPatternPredicate, 12,
3139 OPC_MorphNodeTo1None, TARGET_VAL(SP::FSQRTS),
3140 12, 1, 0,
3141 6, 13,
3142 OPC_MorphNodeTo1None, TARGET_VAL(SP::FSQRTD),
3143 13, 1, 0,
3144 7, 15,
3145 OPC_CheckPatternPredicate4,
3146 OPC_MorphNodeTo1None, TARGET_VAL(SP::FSQRTQ),
3147 15, 1, 0,
3148 0,
3149 32, TARGET_VAL(ISD::FADD),
3150 OPC_RecordChild0,
3151 OPC_RecordChild1,
3152 OPC_SwitchType , 7, 12,
3153 OPC_MorphNodeTo1None, TARGET_VAL(SP::FADDS),
3154 12, 2, 0, 1,
3155 7, 13,
3156 OPC_MorphNodeTo1None, TARGET_VAL(SP::FADDD),
3157 13, 2, 0, 1,
3158 8, 15,
3159 OPC_CheckPatternPredicate4,
3160 OPC_MorphNodeTo1None, TARGET_VAL(SP::FADDQ),
3161 15, 2, 0, 1,
3162 0,
3163 32, TARGET_VAL(ISD::FSUB),
3164 OPC_RecordChild0,
3165 OPC_RecordChild1,
3166 OPC_SwitchType , 7, 12,
3167 OPC_MorphNodeTo1None, TARGET_VAL(SP::FSUBS),
3168 12, 2, 0, 1,
3169 7, 13,
3170 OPC_MorphNodeTo1None, TARGET_VAL(SP::FSUBD),
3171 13, 2, 0, 1,
3172 8, 15,
3173 OPC_CheckPatternPredicate4,
3174 OPC_MorphNodeTo1None, TARGET_VAL(SP::FSUBQ),
3175 15, 2, 0, 1,
3176 0,
3177 32, TARGET_VAL(ISD::FDIV),
3178 OPC_RecordChild0,
3179 OPC_RecordChild1,
3180 OPC_SwitchType , 7, 12,
3181 OPC_MorphNodeTo1None, TARGET_VAL(SP::FDIVS),
3182 12, 2, 0, 1,
3183 7, 13,
3184 OPC_MorphNodeTo1None, TARGET_VAL(SP::FDIVD),
3185 13, 2, 0, 1,
3186 8, 15,
3187 OPC_CheckPatternPredicate4,
3188 OPC_MorphNodeTo1None, TARGET_VAL(SP::FDIVQ),
3189 15, 2, 0, 1,
3190 0,
3191 31, TARGET_VAL(SPISD::XTOF),
3192 OPC_RecordChild0,
3193 OPC_SwitchType , 7, 12,
3194 OPC_CheckPatternPredicate0,
3195 OPC_MorphNodeTo1None, TARGET_VAL(SP::FXTOS),
3196 12, 1, 0,
3197 7, 13,
3198 OPC_CheckPatternPredicate0,
3199 OPC_MorphNodeTo1None, TARGET_VAL(SP::FXTOD),
3200 13, 1, 0,
3201 8, 15,
3202 OPC_CheckPatternPredicate, 8,
3203 OPC_MorphNodeTo1None, TARGET_VAL(SP::FXTOQ),
3204 15, 1, 0,
3205 0,
3206 34, TARGET_VAL(SPISD::FTOX),
3207 OPC_RecordChild0,
3208 OPC_Scope, 9,
3209 OPC_CheckChild0Type, 12,
3210 OPC_CheckPatternPredicate0,
3211 OPC_MorphNodeTo1None, TARGET_VAL(SP::FSTOX),
3212 13, 1, 0,
3213 9,
3214 OPC_CheckChild0Type, 13,
3215 OPC_CheckPatternPredicate0,
3216 OPC_MorphNodeTo1None, TARGET_VAL(SP::FDTOX),
3217 13, 1, 0,
3218 10,
3219 OPC_CheckChild0Type, 15,
3220 OPC_CheckPatternPredicate, 8,
3221 OPC_MorphNodeTo1None, TARGET_VAL(SP::FQTOX),
3222 13, 1, 0,
3223 0,
3224 76, TARGET_VAL(ISD::BUILD_VECTOR),
3225 OPC_CheckType, 60,
3226 OPC_Scope, 41,
3227 OPC_CheckChild0Integer, 0,
3228 OPC_CheckChild0TypeI32,
3229 OPC_RecordChild1,
3230 OPC_CheckChild1TypeI32,
3231 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
3232 60, 0,
3233 OPC_EmitRegisterI32, SP::G0,
3234 OPC_EmitRegisterI32, SP::G0,
3235 OPC_EmitNode1None, TARGET_VAL(SP::ORrr),
3236 7, 2, 2, 3,
3237 OPC_EmitStringInteger32, SP::sub_even,
3238 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
3239 60, 3, 1, 4, 5,
3240 OPC_EmitStringInteger32, SP::sub_odd,
3241 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
3242 60, 3, 6, 0, 7,
3243 29,
3244 OPC_RecordChild0,
3245 OPC_CheckChild0TypeI32,
3246 OPC_RecordChild1,
3247 OPC_CheckChild1TypeI32,
3248 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::IMPLICIT_DEF),
3249 60, 0,
3250 OPC_EmitStringInteger32, SP::sub_even,
3251 OPC_EmitNode1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
3252 60, 3, 2, 0, 3,
3253 OPC_EmitStringInteger32, SP::sub_odd,
3254 OPC_MorphNodeTo1None, TARGET_VAL(TargetOpcode::INSERT_SUBREG),
3255 60, 3, 4, 1, 5,
3256 0,
3257 0,
3258 0
3259 }; // Total Array size is 6632 bytes
3260
3261 #undef COVERAGE_IDX_VAL
3262 #undef TARGET_VAL
3263 SelectCodeCommon(NodeToMatch: N, MatcherTable, TableSize: sizeof(MatcherTable));
3264}
3265#endif // GET_DAGISEL_BODY
3266
3267#ifdef GET_DAGISEL_DECL
3268bool CheckPatternPredicate(unsigned PredNo) const override;
3269#endif
3270#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
3271bool DAGISEL_CLASS_COLONCOLON CheckPatternPredicate(unsigned PredNo) const
3272#if DAGISEL_INLINE
3273 override
3274#endif
3275{
3276 switch (PredNo) {
3277 default: llvm_unreachable("Invalid predicate in table?");
3278 case 0: return (Subtarget->is64Bit());
3279 case 1: return (Subtarget->isVIS3());
3280 case 2: return (Subtarget->isV9());
3281 case 3: return (!Subtarget->is64Bit());
3282 case 4: return (Subtarget->hasHardQuad());
3283 case 5: return (!Subtarget->isV9());
3284 case 6: return (Subtarget->hasHardQuad()) && (Subtarget->isV9());
3285 case 7: return (Subtarget->isVIS());
3286 case 8: return (Subtarget->hasHardQuad()) && (Subtarget->is64Bit());
3287 case 9: return (Subtarget->hasLeonCasa());
3288 case 10: return (!Subtarget->hasNoFSMULD());
3289 case 11: return (!Subtarget->hasNoFMULS());
3290 case 12: return (!Subtarget->fixAllFDIVSQRT());
3291 }
3292}
3293#endif // GET_DAGISEL_BODY
3294
3295#ifdef GET_DAGISEL_DECL
3296bool CheckNodePredicate(SDValue Op, unsigned PredNo) const override;
3297#endif
3298#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
3299bool DAGISEL_CLASS_COLONCOLON CheckNodePredicate(SDValue Op, unsigned PredNo) const
3300#if DAGISEL_INLINE
3301 override
3302#endif
3303{
3304 switch (PredNo) {
3305 default: llvm_unreachable("Invalid predicate in table?");
3306 case 0: {
3307 // Predicate_simm13
3308 auto *N = cast<ConstantSDNode>(Val: Op.getNode());
3309 (void)N;
3310 return isInt<13>(x: N->getSExtValue());
3311 }
3312 case 1: {
3313 // Predicate_atomic_load_aext_8
3314 // Predicate_atomic_load_zext_8
3315 // Predicate_atomic_store_8
3316 // Predicate_extloadi8
3317 // Predicate_sextloadi8
3318 // Predicate_truncstorei8
3319 // Predicate_zextloadi8
3320 SDNode *N = Op.getNode();
3321 (void)N;
3322if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i8) return false;
3323return true;
3324
3325 }
3326 case 2: {
3327 // Predicate_atomic_load_aext_16
3328 // Predicate_atomic_load_zext_16
3329 // Predicate_atomic_store_16
3330 // Predicate_extloadi16
3331 // Predicate_sextloadi16
3332 // Predicate_truncstorei16
3333 // Predicate_zextloadi16
3334 SDNode *N = Op.getNode();
3335 (void)N;
3336if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i16) return false;
3337return true;
3338
3339 }
3340 case 3: {
3341 // Predicate_unindexedstore
3342 SDNode *N = Op.getNode();
3343 (void)N;
3344if (cast<StoreSDNode>(Val: N)->getAddressingMode() != ISD::UNINDEXED) return false;
3345return true;
3346
3347 }
3348 case 4: {
3349 // Predicate_store
3350 SDNode *N = Op.getNode();
3351 (void)N;
3352 if (cast<StoreSDNode>(Val: N)->isTruncatingStore()) return false;
3353return true;
3354
3355 }
3356 case 5: {
3357 // Predicate_atomic_cmp_swap_i32
3358 // Predicate_atomic_load_nonext_32
3359 // Predicate_atomic_store_32
3360 // Predicate_atomic_swap_i32
3361 // Predicate_extloadi32
3362 // Predicate_sextloadi32
3363 // Predicate_truncstorei32
3364 // Predicate_zextloadi32
3365 SDNode *N = Op.getNode();
3366 (void)N;
3367if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i32) return false;
3368return true;
3369
3370 }
3371 case 6: {
3372 // Predicate_zextload
3373 SDNode *N = Op.getNode();
3374 (void)N;
3375if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::ZEXTLOAD) return false;
3376return true;
3377
3378 }
3379 case 7: {
3380 // Predicate_extload
3381 SDNode *N = Op.getNode();
3382 (void)N;
3383if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::EXTLOAD) return false;
3384return true;
3385
3386 }
3387 case 8: {
3388 // Predicate_fpimmhalf
3389 const APFloat & Imm = cast<ConstantFPSDNode>(Val: Op.getNode())->getValueAPF();
3390return Imm.isExactlyValue(V: +0.5);
3391 }
3392 case 9: {
3393 // Predicate_sextload
3394 SDNode *N = Op.getNode();
3395 (void)N;
3396if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::SEXTLOAD) return false;
3397return true;
3398
3399 }
3400 case 10: {
3401 // Predicate_extloadi1
3402 // Predicate_zextloadi1
3403 SDNode *N = Op.getNode();
3404 (void)N;
3405if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i1) return false;
3406return true;
3407
3408 }
3409 case 11: {
3410 // Predicate_atomic_load_aext
3411 SDNode *N = Op.getNode();
3412 (void)N;
3413if (cast<AtomicSDNode>(Val: N)->getExtensionType() != ISD::EXTLOAD) return false;
3414return true;
3415
3416 }
3417 case 12: {
3418 // Predicate_atomic_load_zext
3419 SDNode *N = Op.getNode();
3420 (void)N;
3421if (cast<AtomicSDNode>(Val: N)->getExtensionType() != ISD::ZEXTLOAD) return false;
3422return true;
3423
3424 }
3425 case 13: {
3426 // Predicate_fpnegimmhalf
3427 const APFloat & Imm = cast<ConstantFPSDNode>(Val: Op.getNode())->getValueAPF();
3428return Imm.isExactlyValue(V: -0.5);
3429 }
3430 case 14: {
3431 // Predicate_load
3432 SDNode *N = Op.getNode();
3433 (void)N;
3434if (cast<LoadSDNode>(Val: N)->getExtensionType() != ISD::NON_EXTLOAD) return false;
3435return true;
3436
3437 }
3438 case 15: {
3439 // Predicate_atomic_cmp_swap_i64
3440 // Predicate_atomic_load_nonext_64
3441 // Predicate_atomic_store_64
3442 SDNode *N = Op.getNode();
3443 (void)N;
3444if (cast<MemSDNode>(Val: N)->getMemoryVT() != MVT::i64) return false;
3445return true;
3446
3447 }
3448 case 16: {
3449 // Predicate_simm11
3450 auto *N = cast<ConstantSDNode>(Val: Op.getNode());
3451 (void)N;
3452 return isInt<11>(x: N->getSExtValue());
3453 }
3454 case 17: {
3455 // Predicate_truncstore
3456 SDNode *N = Op.getNode();
3457 (void)N;
3458 if (!cast<StoreSDNode>(Val: N)->isTruncatingStore()) return false;
3459return true;
3460
3461 }
3462 case 18: {
3463 // Predicate_SETHIimm_not
3464 auto *N = cast<ConstantSDNode>(Val: Op.getNode());
3465 (void)N;
3466
3467 return N->hasOneUse() && isShiftedUInt<22, 10>(x: ~(unsigned)N->getZExtValue());
3468
3469 }
3470 case 19: {
3471 // Predicate_SETHIimm
3472 auto *N = cast<ConstantSDNode>(Val: Op.getNode());
3473 (void)N;
3474
3475 return isShiftedUInt<22, 10>(x: N->getZExtValue());
3476
3477 }
3478 case 20: {
3479 // Predicate_unindexedload
3480 SDNode *N = Op.getNode();
3481 (void)N;
3482if (cast<LoadSDNode>(Val: N)->getAddressingMode() != ISD::UNINDEXED) return false;
3483return true;
3484
3485 }
3486 case 21: {
3487 // Predicate_atomic_load_nonext
3488 SDNode *N = Op.getNode();
3489 (void)N;
3490if (cast<AtomicSDNode>(Val: N)->getExtensionType() != ISD::NON_EXTLOAD) return false;
3491return true;
3492
3493 }
3494 case 22: {
3495 // Predicate_simm10
3496 auto *N = cast<ConstantSDNode>(Val: Op.getNode());
3497 (void)N;
3498 return isInt<10>(x: N->getSExtValue());
3499 }
3500 case 23: {
3501 // Predicate_uimm32
3502 auto *N = cast<ConstantSDNode>(Val: Op.getNode());
3503 (void)N;
3504 return isUInt<32>(x: N->getZExtValue());
3505 }
3506 case 24: {
3507 // Predicate_nimm33
3508 auto *N = cast<ConstantSDNode>(Val: Op.getNode());
3509 (void)N;
3510
3511 int64_t Imm = N->getSExtValue();
3512 return Imm < 0 && isInt<33>(x: Imm);
3513
3514 }
3515 case 25: {
3516 // Predicate_fpimm0
3517 const APFloat & Imm = cast<ConstantFPSDNode>(Val: Op.getNode())->getValueAPF();
3518return Imm.isExactlyValue(V: +0.0);
3519 }
3520 case 26: {
3521 // Predicate_fpnegimm0
3522 const APFloat & Imm = cast<ConstantFPSDNode>(Val: Op.getNode())->getValueAPF();
3523return Imm.isExactlyValue(V: -0.0);
3524 }
3525 }
3526}
3527#endif // GET_DAGISEL_BODY
3528
3529#ifdef GET_DAGISEL_DECL
3530bool CheckComplexPattern(SDNode *Root, SDNode *Parent,
3531 SDValue N, unsigned PatternNo,
3532 SmallVectorImpl<std::pair<SDValue, SDNode *>> &Result) override;
3533#endif
3534#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
3535bool DAGISEL_CLASS_COLONCOLON CheckComplexPattern(SDNode *Root, SDNode *Parent,
3536 SDValue N, unsigned PatternNo,
3537 SmallVectorImpl<std::pair<SDValue, SDNode *>> &Result)
3538#if DAGISEL_INLINE
3539 override
3540#endif
3541{
3542 unsigned NextRes = Result.size();
3543 switch (PatternNo) {
3544 default: llvm_unreachable("Invalid pattern # in table?");
3545 case 0:
3546 Result.resize(N: NextRes+2);
3547 return SelectADDRrr(N, R1&: Result[NextRes+0].first, R2&: Result[NextRes+1].first);
3548 case 1:
3549 Result.resize(N: NextRes+2);
3550 return SelectADDRri(N, Base&: Result[NextRes+0].first, Offset&: Result[NextRes+1].first);
3551 }
3552}
3553#endif // GET_DAGISEL_BODY
3554
3555#ifdef GET_DAGISEL_DECL
3556SDValue RunSDNodeXForm(SDValue V, unsigned XFormNo) override;
3557#endif
3558#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
3559SDValue DAGISEL_CLASS_COLONCOLON RunSDNodeXForm(SDValue V, unsigned XFormNo)
3560#if DAGISEL_INLINE
3561 override
3562#endif
3563{
3564 switch (XFormNo) {
3565 default: llvm_unreachable("Invalid xform # in table?");
3566 case 0: {
3567 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
3568
3569 return CurDAG->getTargetConstant(Val: ~(unsigned)N->getZExtValue() >> 10, DL: SDLoc(N),
3570 VT: MVT::i32);
3571
3572 }
3573 case 1: {
3574 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
3575
3576 return CurDAG->getSignedTargetConstant(Val: N->getSExtValue(), DL: SDLoc(N), VT: MVT::i32);
3577
3578 }
3579 case 2: {
3580 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
3581
3582 // Transformation function: shift the immediate value down into the low bits.
3583 return CurDAG->getTargetConstant(Val: (unsigned)N->getZExtValue() >> 10, DL: SDLoc(N),
3584 VT: MVT::i32);
3585
3586 }
3587 case 3: {
3588 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
3589
3590 return CurDAG->getTargetConstant(Val: (unsigned)N->getZExtValue() & 1023, DL: SDLoc(N),
3591 VT: MVT::i32);
3592
3593 }
3594 case 4: {
3595 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
3596
3597 uint64_t Val = (~N->getZExtValue() >> 10) & ((1u << 22) - 1);
3598 return CurDAG->getTargetConstant(Val, DL: SDLoc(N), VT: MVT::i32);
3599
3600 }
3601 case 5: {
3602 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
3603
3604 return CurDAG->getSignedTargetConstant(Val: ~(~N->getZExtValue() & 0x3ff),
3605 DL: SDLoc(N), VT: MVT::i32);
3606
3607 }
3608 case 6: {
3609 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
3610
3611 uint64_t Val = (N->getZExtValue() >> 42) & ((1u << 22) - 1);
3612 return CurDAG->getTargetConstant(Val, DL: SDLoc(N), VT: MVT::i32);
3613
3614 }
3615 case 7: {
3616 ConstantSDNode *N = cast<ConstantSDNode>(Val: V.getNode());
3617
3618 uint64_t Val = (N->getZExtValue() >> 32) & ((1u << 10) - 1);
3619 return CurDAG->getTargetConstant(Val, DL: SDLoc(N), VT: MVT::i32);
3620
3621 }
3622 case 8: {
3623 FrameIndexSDNode *N = cast<FrameIndexSDNode>(Val: V.getNode());
3624
3625 return CurDAG->getTargetFrameIndex(FI: N->getIndex(), VT: N->getValueType(ResNo: 0));
3626
3627 }
3628 }
3629}
3630#endif // GET_DAGISEL_BODY
3631
3632
3633#ifdef DAGISEL_INLINE
3634#undef DAGISEL_INLINE
3635#endif
3636#ifdef DAGISEL_CLASS_COLONCOLON
3637#undef DAGISEL_CLASS_COLONCOLON
3638#endif
3639#ifdef GET_DAGISEL_DECL
3640#undef GET_DAGISEL_DECL
3641#endif
3642#ifdef GET_DAGISEL_BODY
3643#undef GET_DAGISEL_BODY
3644#endif
3645