Line data Source code
1 : /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2 : |* *|
3 : |* DAG Instruction Selector for the R600 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
29 : static_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
48 : void SelectCode(SDNode *N);
49 : #endif
50 : #if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
51 : void DAGISEL_CLASS_COLONCOLON SelectCode(SDNode *N)
52 : {
53 : // Some target values are emitted as 2 bytes, TARGET_VAL handles
54 : // this.
55 : #define TARGET_VAL(X) X & 255, unsigned(X) >> 8
56 : static const unsigned char MatcherTable[] = {
57 : /* 0*/ OPC_SwitchOpcode /*99 cases */, 99|128,2/*355*/, TARGET_VAL(ISD::SRL),// ->360
58 : /* 5*/ OPC_Scope, 11|128,1/*139*/, /*->147*/ // 2 children in Scope
59 : /* 8*/ OPC_MoveChild0,
60 : /* 9*/ OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
61 : /* 12*/ OPC_RecordChild0, // #0 = $src
62 : /* 13*/ OPC_MoveChild1,
63 : /* 14*/ OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
64 : /* 17*/ OPC_CheckChild0Integer, 32,
65 : /* 19*/ OPC_RecordChild1, // #1 = $width
66 : /* 20*/ OPC_CheckType, MVT::i32,
67 : /* 22*/ OPC_MoveParent,
68 : /* 23*/ OPC_CheckPredicate, 0, // Predicate_shl_oneuse
69 : /* 25*/ OPC_MoveParent,
70 : /* 26*/ OPC_MoveChild1,
71 : /* 27*/ OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
72 : /* 30*/ OPC_CheckChild0Integer, 32,
73 : /* 32*/ OPC_CheckChild1Same, 1,
74 : /* 34*/ OPC_CheckType, MVT::i32,
75 : /* 36*/ OPC_MoveParent,
76 : /* 37*/ OPC_CheckType, MVT::i32,
77 : /* 39*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
78 : /* 41*/ OPC_EmitInteger, MVT::i32, 0,
79 : /* 44*/ OPC_EmitInteger, MVT::i32, 0,
80 : /* 47*/ OPC_EmitInteger, MVT::i32, 0,
81 : /* 50*/ OPC_EmitInteger, MVT::i32, 0,
82 : /* 53*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
83 : /* 65*/ OPC_EmitInteger, MVT::i32, 0,
84 : /* 68*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
85 : MVT::i32, 1/*#Ops*/, 7, // Results = #8
86 : /* 75*/ OPC_EmitInteger, MVT::i32, 0,
87 : /* 78*/ OPC_EmitInteger, MVT::i32, 0,
88 : /* 81*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
89 : /* 93*/ OPC_EmitInteger, MVT::i32, 0,
90 : /* 96*/ OPC_EmitInteger, MVT::i32, 0,
91 : /* 99*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
92 : /* 111*/ OPC_EmitInteger, MVT::i32, 1,
93 : /* 114*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
94 : /* 117*/ OPC_EmitInteger, MVT::i32, 0,
95 : /* 120*/ OPC_EmitInteger, MVT::i32, 0,
96 : /* 123*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_UINT_eg), 0,
97 : MVT::i32, 18/*#Ops*/, 2, 3, 0, 4, 5, 6, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18,
98 : // Src: (srl:{ *:[i32] } (shl:{ *:[i32] } i32:{ *:[i32] }:$src, (sub:{ *:[i32] } 32:{ *:[i32] }, i32:{ *:[i32] }:$width))<<P:Predicate_shl_oneuse>>, (sub:{ *:[i32] } 32:{ *:[i32] }, i32:{ *:[i32] }:$width)) - Complexity = 23
99 : // Dst: (BFE_UINT_eg:{ *:[i32] } ?:{ *:[i32] }:$src, (MOV_IMM_I32:{ *:[i32] } 0:{ *:[i32] }), ?:{ *:[i32] }:$width)
100 : /* 147*/ /*Scope*/ 82|128,1/*210*/, /*->359*/
101 : /* 149*/ OPC_RecordChild0, // #0 = $src0
102 : /* 150*/ OPC_RecordChild1, // #1 = $src1
103 : /* 151*/ OPC_CheckChild1Type, MVT::i32,
104 : /* 153*/ OPC_CheckType, MVT::i32,
105 : /* 155*/ OPC_Scope, 100, /*->257*/ // 2 children in Scope
106 : /* 157*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
107 : /* 159*/ OPC_EmitInteger, MVT::i32, 0,
108 : /* 162*/ OPC_EmitInteger, MVT::i32, 0,
109 : /* 165*/ OPC_EmitInteger, MVT::i32, 1,
110 : /* 168*/ OPC_EmitInteger, MVT::i32, 0,
111 : /* 171*/ OPC_EmitInteger, MVT::i32, 0,
112 : /* 174*/ OPC_EmitInteger, MVT::i32, 0,
113 : /* 177*/ OPC_EmitInteger, MVT::i32, 0,
114 : /* 180*/ OPC_EmitInteger, MVT::i32, 0,
115 : /* 183*/ OPC_EmitInteger, MVT::i32, 0,
116 : /* 186*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
117 : /* 198*/ OPC_EmitInteger, MVT::i32, 0,
118 : /* 201*/ OPC_EmitInteger, MVT::i32, 0,
119 : /* 204*/ OPC_EmitInteger, MVT::i32, 0,
120 : /* 207*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
121 : /* 219*/ OPC_EmitInteger, MVT::i32, 1,
122 : /* 222*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
123 : /* 225*/ OPC_EmitInteger, MVT::i32, 0,
124 : /* 228*/ OPC_EmitInteger, MVT::i32, 0,
125 : /* 231*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LSHR_r600), 0,
126 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
127 : // Src: (srl:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
128 : // Dst: (LSHR_r600:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
129 : /* 257*/ /*Scope*/ 100, /*->358*/
130 : /* 258*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
131 : /* 260*/ OPC_EmitInteger, MVT::i32, 0,
132 : /* 263*/ OPC_EmitInteger, MVT::i32, 0,
133 : /* 266*/ OPC_EmitInteger, MVT::i32, 1,
134 : /* 269*/ OPC_EmitInteger, MVT::i32, 0,
135 : /* 272*/ OPC_EmitInteger, MVT::i32, 0,
136 : /* 275*/ OPC_EmitInteger, MVT::i32, 0,
137 : /* 278*/ OPC_EmitInteger, MVT::i32, 0,
138 : /* 281*/ OPC_EmitInteger, MVT::i32, 0,
139 : /* 284*/ OPC_EmitInteger, MVT::i32, 0,
140 : /* 287*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
141 : /* 299*/ OPC_EmitInteger, MVT::i32, 0,
142 : /* 302*/ OPC_EmitInteger, MVT::i32, 0,
143 : /* 305*/ OPC_EmitInteger, MVT::i32, 0,
144 : /* 308*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
145 : /* 320*/ OPC_EmitInteger, MVT::i32, 1,
146 : /* 323*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
147 : /* 326*/ OPC_EmitInteger, MVT::i32, 0,
148 : /* 329*/ OPC_EmitInteger, MVT::i32, 0,
149 : /* 332*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LSHR_eg), 0,
150 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
151 : // Src: (srl:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
152 : // Dst: (LSHR_eg:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
153 : /* 358*/ 0, /*End of Scope*/
154 : /* 359*/ 0, /*End of Scope*/
155 : /* 360*/ /*SwitchOpcode*/ 99|128,2/*355*/, TARGET_VAL(ISD::SRA),// ->719
156 : /* 364*/ OPC_Scope, 11|128,1/*139*/, /*->506*/ // 2 children in Scope
157 : /* 367*/ OPC_MoveChild0,
158 : /* 368*/ OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
159 : /* 371*/ OPC_RecordChild0, // #0 = $src
160 : /* 372*/ OPC_MoveChild1,
161 : /* 373*/ OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
162 : /* 376*/ OPC_CheckChild0Integer, 32,
163 : /* 378*/ OPC_RecordChild1, // #1 = $width
164 : /* 379*/ OPC_CheckType, MVT::i32,
165 : /* 381*/ OPC_MoveParent,
166 : /* 382*/ OPC_CheckPredicate, 0, // Predicate_shl_oneuse
167 : /* 384*/ OPC_MoveParent,
168 : /* 385*/ OPC_MoveChild1,
169 : /* 386*/ OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
170 : /* 389*/ OPC_CheckChild0Integer, 32,
171 : /* 391*/ OPC_CheckChild1Same, 1,
172 : /* 393*/ OPC_CheckType, MVT::i32,
173 : /* 395*/ OPC_MoveParent,
174 : /* 396*/ OPC_CheckType, MVT::i32,
175 : /* 398*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
176 : /* 400*/ OPC_EmitInteger, MVT::i32, 0,
177 : /* 403*/ OPC_EmitInteger, MVT::i32, 0,
178 : /* 406*/ OPC_EmitInteger, MVT::i32, 0,
179 : /* 409*/ OPC_EmitInteger, MVT::i32, 0,
180 : /* 412*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
181 : /* 424*/ OPC_EmitInteger, MVT::i32, 0,
182 : /* 427*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
183 : MVT::i32, 1/*#Ops*/, 7, // Results = #8
184 : /* 434*/ OPC_EmitInteger, MVT::i32, 0,
185 : /* 437*/ OPC_EmitInteger, MVT::i32, 0,
186 : /* 440*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
187 : /* 452*/ OPC_EmitInteger, MVT::i32, 0,
188 : /* 455*/ OPC_EmitInteger, MVT::i32, 0,
189 : /* 458*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
190 : /* 470*/ OPC_EmitInteger, MVT::i32, 1,
191 : /* 473*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
192 : /* 476*/ OPC_EmitInteger, MVT::i32, 0,
193 : /* 479*/ OPC_EmitInteger, MVT::i32, 0,
194 : /* 482*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_INT_eg), 0,
195 : MVT::i32, 18/*#Ops*/, 2, 3, 0, 4, 5, 6, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18,
196 : // Src: (sra:{ *:[i32] } (shl:{ *:[i32] } i32:{ *:[i32] }:$src, (sub:{ *:[i32] } 32:{ *:[i32] }, i32:{ *:[i32] }:$width))<<P:Predicate_shl_oneuse>>, (sub:{ *:[i32] } 32:{ *:[i32] }, i32:{ *:[i32] }:$width)) - Complexity = 23
197 : // Dst: (BFE_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$src, (MOV_IMM_I32:{ *:[i32] } 0:{ *:[i32] }), ?:{ *:[i32] }:$width)
198 : /* 506*/ /*Scope*/ 82|128,1/*210*/, /*->718*/
199 : /* 508*/ OPC_RecordChild0, // #0 = $src0
200 : /* 509*/ OPC_RecordChild1, // #1 = $src1
201 : /* 510*/ OPC_CheckChild1Type, MVT::i32,
202 : /* 512*/ OPC_CheckType, MVT::i32,
203 : /* 514*/ OPC_Scope, 100, /*->616*/ // 2 children in Scope
204 : /* 516*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
205 : /* 518*/ OPC_EmitInteger, MVT::i32, 0,
206 : /* 521*/ OPC_EmitInteger, MVT::i32, 0,
207 : /* 524*/ OPC_EmitInteger, MVT::i32, 1,
208 : /* 527*/ OPC_EmitInteger, MVT::i32, 0,
209 : /* 530*/ OPC_EmitInteger, MVT::i32, 0,
210 : /* 533*/ OPC_EmitInteger, MVT::i32, 0,
211 : /* 536*/ OPC_EmitInteger, MVT::i32, 0,
212 : /* 539*/ OPC_EmitInteger, MVT::i32, 0,
213 : /* 542*/ OPC_EmitInteger, MVT::i32, 0,
214 : /* 545*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
215 : /* 557*/ OPC_EmitInteger, MVT::i32, 0,
216 : /* 560*/ OPC_EmitInteger, MVT::i32, 0,
217 : /* 563*/ OPC_EmitInteger, MVT::i32, 0,
218 : /* 566*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
219 : /* 578*/ OPC_EmitInteger, MVT::i32, 1,
220 : /* 581*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
221 : /* 584*/ OPC_EmitInteger, MVT::i32, 0,
222 : /* 587*/ OPC_EmitInteger, MVT::i32, 0,
223 : /* 590*/ OPC_MorphNodeTo1, TARGET_VAL(R600::ASHR_r600), 0,
224 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
225 : // Src: (sra:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
226 : // Dst: (ASHR_r600:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
227 : /* 616*/ /*Scope*/ 100, /*->717*/
228 : /* 617*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
229 : /* 619*/ OPC_EmitInteger, MVT::i32, 0,
230 : /* 622*/ OPC_EmitInteger, MVT::i32, 0,
231 : /* 625*/ OPC_EmitInteger, MVT::i32, 1,
232 : /* 628*/ OPC_EmitInteger, MVT::i32, 0,
233 : /* 631*/ OPC_EmitInteger, MVT::i32, 0,
234 : /* 634*/ OPC_EmitInteger, MVT::i32, 0,
235 : /* 637*/ OPC_EmitInteger, MVT::i32, 0,
236 : /* 640*/ OPC_EmitInteger, MVT::i32, 0,
237 : /* 643*/ OPC_EmitInteger, MVT::i32, 0,
238 : /* 646*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
239 : /* 658*/ OPC_EmitInteger, MVT::i32, 0,
240 : /* 661*/ OPC_EmitInteger, MVT::i32, 0,
241 : /* 664*/ OPC_EmitInteger, MVT::i32, 0,
242 : /* 667*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
243 : /* 679*/ OPC_EmitInteger, MVT::i32, 1,
244 : /* 682*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
245 : /* 685*/ OPC_EmitInteger, MVT::i32, 0,
246 : /* 688*/ OPC_EmitInteger, MVT::i32, 0,
247 : /* 691*/ OPC_MorphNodeTo1, TARGET_VAL(R600::ASHR_eg), 0,
248 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
249 : // Src: (sra:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
250 : // Dst: (ASHR_eg:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
251 : /* 717*/ 0, /*End of Scope*/
252 : /* 718*/ 0, /*End of Scope*/
253 : /* 719*/ /*SwitchOpcode*/ 126, TARGET_VAL(AMDGPUISD::R600_EXPORT),// ->848
254 : /* 722*/ OPC_RecordNode, // #0 = 'R600_EXPORT' chained node
255 : /* 723*/ OPC_RecordChild1, // #1 = $src
256 : /* 724*/ OPC_CheckChild1Type, MVT::v4f32,
257 : /* 726*/ OPC_RecordChild2, // #2 = $base
258 : /* 727*/ OPC_MoveChild2,
259 : /* 728*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
260 : /* 731*/ OPC_CheckType, MVT::i32,
261 : /* 733*/ OPC_MoveParent,
262 : /* 734*/ OPC_RecordChild3, // #3 = $type
263 : /* 735*/ OPC_MoveChild3,
264 : /* 736*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
265 : /* 739*/ OPC_CheckType, MVT::i32,
266 : /* 741*/ OPC_MoveParent,
267 : /* 742*/ OPC_RecordChild4, // #4 = $swz_x
268 : /* 743*/ OPC_MoveChild4,
269 : /* 744*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
270 : /* 747*/ OPC_CheckType, MVT::i32,
271 : /* 749*/ OPC_MoveParent,
272 : /* 750*/ OPC_RecordChild5, // #5 = $swz_y
273 : /* 751*/ OPC_MoveChild5,
274 : /* 752*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
275 : /* 755*/ OPC_CheckType, MVT::i32,
276 : /* 757*/ OPC_MoveParent,
277 : /* 758*/ OPC_RecordChild6, // #6 = $swz_z
278 : /* 759*/ OPC_MoveChild6,
279 : /* 760*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
280 : /* 763*/ OPC_CheckType, MVT::i32,
281 : /* 765*/ OPC_MoveParent,
282 : /* 766*/ OPC_RecordChild7, // #7 = $swz_w
283 : /* 767*/ OPC_MoveChild7,
284 : /* 768*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
285 : /* 771*/ OPC_CheckType, MVT::i32,
286 : /* 773*/ OPC_MoveParent,
287 : /* 774*/ OPC_Scope, 35, /*->811*/ // 2 children in Scope
288 : /* 776*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
289 : /* 778*/ OPC_EmitMergeInputChains1_0,
290 : /* 779*/ OPC_EmitConvertToTarget, 3,
291 : /* 781*/ OPC_EmitConvertToTarget, 2,
292 : /* 783*/ OPC_EmitConvertToTarget, 4,
293 : /* 785*/ OPC_EmitConvertToTarget, 5,
294 : /* 787*/ OPC_EmitConvertToTarget, 6,
295 : /* 789*/ OPC_EmitConvertToTarget, 7,
296 : /* 791*/ OPC_EmitInteger, MVT::i32, 39,
297 : /* 794*/ OPC_EmitInteger, MVT::i32, 0,
298 : /* 797*/ OPC_MorphNodeTo0, TARGET_VAL(R600::R600_ExportSwz), 0|OPFL_Chain,
299 : 9/*#Ops*/, 1, 8, 9, 10, 11, 12, 13, 14, 15,
300 : // Src: (R600_EXPORT R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$base, (imm:{ *:[i32] }):$type, (imm:{ *:[i32] }):$swz_x, (imm:{ *:[i32] }):$swz_y, (imm:{ *:[i32] }):$swz_z, (imm:{ *:[i32] }):$swz_w) - Complexity = 21
301 : // Dst: (R600_ExportSwz R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$type, (imm:{ *:[i32] }):$base, (imm:{ *:[i32] }):$swz_x, (imm:{ *:[i32] }):$swz_y, (imm:{ *:[i32] }):$swz_z, (imm:{ *:[i32] }):$swz_w, 39:{ *:[i32] }, 0:{ *:[i32] })
302 : /* 811*/ /*Scope*/ 35, /*->847*/
303 : /* 812*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
304 : /* 814*/ OPC_EmitMergeInputChains1_0,
305 : /* 815*/ OPC_EmitConvertToTarget, 3,
306 : /* 817*/ OPC_EmitConvertToTarget, 2,
307 : /* 819*/ OPC_EmitConvertToTarget, 4,
308 : /* 821*/ OPC_EmitConvertToTarget, 5,
309 : /* 823*/ OPC_EmitConvertToTarget, 6,
310 : /* 825*/ OPC_EmitConvertToTarget, 7,
311 : /* 827*/ OPC_EmitInteger, MVT::i32, 83,
312 : /* 830*/ OPC_EmitInteger, MVT::i32, 0,
313 : /* 833*/ OPC_MorphNodeTo0, TARGET_VAL(R600::EG_ExportSwz), 0|OPFL_Chain,
314 : 9/*#Ops*/, 1, 8, 9, 10, 11, 12, 13, 14, 15,
315 : // Src: (R600_EXPORT R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$base, (imm:{ *:[i32] }):$type, (imm:{ *:[i32] }):$swz_x, (imm:{ *:[i32] }):$swz_y, (imm:{ *:[i32] }):$swz_z, (imm:{ *:[i32] }):$swz_w) - Complexity = 21
316 : // Dst: (EG_ExportSwz R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$type, (imm:{ *:[i32] }):$base, (imm:{ *:[i32] }):$swz_x, (imm:{ *:[i32] }):$swz_y, (imm:{ *:[i32] }):$swz_z, (imm:{ *:[i32] }):$swz_w, 83:{ *:[i32] }, 0:{ *:[i32] })
317 : /* 847*/ 0, /*End of Scope*/
318 : /* 848*/ /*SwitchOpcode*/ 84|128,8/*1108*/, TARGET_VAL(ISD::AND),// ->1960
319 : /* 852*/ OPC_Scope, 37|128,2/*293*/, /*->1148*/ // 5 children in Scope
320 : /* 855*/ OPC_RecordChild0, // #0 = $src
321 : /* 856*/ OPC_MoveChild1,
322 : /* 857*/ OPC_SwitchOpcode /*2 cases */, 8|128,1/*136*/, TARGET_VAL(ISD::ADD),// ->998
323 : /* 862*/ OPC_MoveChild0,
324 : /* 863*/ OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
325 : /* 866*/ OPC_CheckChild0Integer, 1,
326 : /* 868*/ OPC_RecordChild1, // #1 = $width
327 : /* 869*/ OPC_CheckChild1Type, MVT::i32,
328 : /* 871*/ OPC_CheckPredicate, 0, // Predicate_shl_oneuse
329 : /* 873*/ OPC_MoveParent,
330 : /* 874*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
331 : /* 885*/ OPC_CheckPredicate, 0, // Predicate_add_oneuse
332 : /* 887*/ OPC_MoveParent,
333 : /* 888*/ OPC_CheckType, MVT::i32,
334 : /* 890*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
335 : /* 892*/ OPC_EmitInteger, MVT::i32, 0,
336 : /* 895*/ OPC_EmitInteger, MVT::i32, 0,
337 : /* 898*/ OPC_EmitInteger, MVT::i32, 0,
338 : /* 901*/ OPC_EmitInteger, MVT::i32, 0,
339 : /* 904*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
340 : /* 916*/ OPC_EmitInteger, MVT::i32, 0,
341 : /* 919*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
342 : MVT::i32, 1/*#Ops*/, 7, // Results = #8
343 : /* 926*/ OPC_EmitInteger, MVT::i32, 0,
344 : /* 929*/ OPC_EmitInteger, MVT::i32, 0,
345 : /* 932*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
346 : /* 944*/ OPC_EmitInteger, MVT::i32, 0,
347 : /* 947*/ OPC_EmitInteger, MVT::i32, 0,
348 : /* 950*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
349 : /* 962*/ OPC_EmitInteger, MVT::i32, 1,
350 : /* 965*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
351 : /* 968*/ OPC_EmitInteger, MVT::i32, 0,
352 : /* 971*/ OPC_EmitInteger, MVT::i32, 0,
353 : /* 974*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_UINT_eg), 0,
354 : MVT::i32, 18/*#Ops*/, 2, 3, 0, 4, 5, 6, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18,
355 : // Src: (and:{ *:[i32] } i32:{ *:[i32] }:$src, (add:{ *:[i32] } (shl:{ *:[i32] } 1:{ *:[i32] }, i32:{ *:[i32] }:$width)<<P:Predicate_shl_oneuse>>, -1:{ *:[i32] })<<P:Predicate_add_oneuse>>) - Complexity = 21
356 : // Dst: (BFE_UINT_eg:{ *:[i32] } ?:{ *:[i32] }:$src, (MOV_IMM_I32:{ *:[i32] } 0:{ *:[i32] }), ?:{ *:[i32] }:$width)
357 : /* 998*/ /*SwitchOpcode*/ 17|128,1/*145*/, TARGET_VAL(ISD::XOR),// ->1147
358 : /* 1002*/ OPC_MoveChild0,
359 : /* 1003*/ OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
360 : /* 1006*/ OPC_CheckChild0Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
361 : /* 1017*/ OPC_RecordChild1, // #1 = $width
362 : /* 1018*/ OPC_CheckChild1Type, MVT::i32,
363 : /* 1020*/ OPC_CheckPredicate, 0, // Predicate_shl_oneuse
364 : /* 1022*/ OPC_MoveParent,
365 : /* 1023*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
366 : /* 1034*/ OPC_CheckPredicate, 0, // Predicate_xor_oneuse
367 : /* 1036*/ OPC_MoveParent,
368 : /* 1037*/ OPC_CheckType, MVT::i32,
369 : /* 1039*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
370 : /* 1041*/ OPC_EmitInteger, MVT::i32, 0,
371 : /* 1044*/ OPC_EmitInteger, MVT::i32, 0,
372 : /* 1047*/ OPC_EmitInteger, MVT::i32, 0,
373 : /* 1050*/ OPC_EmitInteger, MVT::i32, 0,
374 : /* 1053*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
375 : /* 1065*/ OPC_EmitInteger, MVT::i32, 0,
376 : /* 1068*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
377 : MVT::i32, 1/*#Ops*/, 7, // Results = #8
378 : /* 1075*/ OPC_EmitInteger, MVT::i32, 0,
379 : /* 1078*/ OPC_EmitInteger, MVT::i32, 0,
380 : /* 1081*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
381 : /* 1093*/ OPC_EmitInteger, MVT::i32, 0,
382 : /* 1096*/ OPC_EmitInteger, MVT::i32, 0,
383 : /* 1099*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
384 : /* 1111*/ OPC_EmitInteger, MVT::i32, 1,
385 : /* 1114*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
386 : /* 1117*/ OPC_EmitInteger, MVT::i32, 0,
387 : /* 1120*/ OPC_EmitInteger, MVT::i32, 0,
388 : /* 1123*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_UINT_eg), 0,
389 : MVT::i32, 18/*#Ops*/, 2, 3, 0, 4, 5, 6, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18,
390 : // Src: (and:{ *:[i32] } i32:{ *:[i32] }:$src, (xor:{ *:[i32] } (shl:{ *:[i32] } -1:{ *:[i32] }, i32:{ *:[i32] }:$width)<<P:Predicate_shl_oneuse>>, -1:{ *:[i32] })<<P:Predicate_xor_oneuse>>) - Complexity = 21
391 : // Dst: (BFE_UINT_eg:{ *:[i32] } ?:{ *:[i32] }:$src, (MOV_IMM_I32:{ *:[i32] } 0:{ *:[i32] }), ?:{ *:[i32] }:$width)
392 : /* 1147*/ 0, // EndSwitchOpcode
393 : /* 1148*/ /*Scope*/ 38|128,2/*294*/, /*->1444*/
394 : /* 1150*/ OPC_MoveChild0,
395 : /* 1151*/ OPC_SwitchOpcode /*2 cases */, 9|128,1/*137*/, TARGET_VAL(ISD::ADD),// ->1293
396 : /* 1156*/ OPC_MoveChild0,
397 : /* 1157*/ OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
398 : /* 1160*/ OPC_CheckChild0Integer, 1,
399 : /* 1162*/ OPC_RecordChild1, // #0 = $width
400 : /* 1163*/ OPC_CheckChild1Type, MVT::i32,
401 : /* 1165*/ OPC_CheckPredicate, 0, // Predicate_shl_oneuse
402 : /* 1167*/ OPC_MoveParent,
403 : /* 1168*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
404 : /* 1179*/ OPC_CheckPredicate, 0, // Predicate_add_oneuse
405 : /* 1181*/ OPC_MoveParent,
406 : /* 1182*/ OPC_RecordChild1, // #1 = $src
407 : /* 1183*/ OPC_CheckType, MVT::i32,
408 : /* 1185*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
409 : /* 1187*/ OPC_EmitInteger, MVT::i32, 0,
410 : /* 1190*/ OPC_EmitInteger, MVT::i32, 0,
411 : /* 1193*/ OPC_EmitInteger, MVT::i32, 0,
412 : /* 1196*/ OPC_EmitInteger, MVT::i32, 0,
413 : /* 1199*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
414 : /* 1211*/ OPC_EmitInteger, MVT::i32, 0,
415 : /* 1214*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
416 : MVT::i32, 1/*#Ops*/, 7, // Results = #8
417 : /* 1221*/ OPC_EmitInteger, MVT::i32, 0,
418 : /* 1224*/ OPC_EmitInteger, MVT::i32, 0,
419 : /* 1227*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
420 : /* 1239*/ OPC_EmitInteger, MVT::i32, 0,
421 : /* 1242*/ OPC_EmitInteger, MVT::i32, 0,
422 : /* 1245*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
423 : /* 1257*/ OPC_EmitInteger, MVT::i32, 1,
424 : /* 1260*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
425 : /* 1263*/ OPC_EmitInteger, MVT::i32, 0,
426 : /* 1266*/ OPC_EmitInteger, MVT::i32, 0,
427 : /* 1269*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_UINT_eg), 0,
428 : MVT::i32, 18/*#Ops*/, 2, 3, 1, 4, 5, 6, 8, 9, 10, 11, 0, 12, 13, 14, 15, 16, 17, 18,
429 : // Src: (and:{ *:[i32] } (add:{ *:[i32] } (shl:{ *:[i32] } 1:{ *:[i32] }, i32:{ *:[i32] }:$width)<<P:Predicate_shl_oneuse>>, -1:{ *:[i32] })<<P:Predicate_add_oneuse>>, i32:{ *:[i32] }:$src) - Complexity = 21
430 : // Dst: (BFE_UINT_eg:{ *:[i32] } ?:{ *:[i32] }:$src, (MOV_IMM_I32:{ *:[i32] } 0:{ *:[i32] }), ?:{ *:[i32] }:$width)
431 : /* 1293*/ /*SwitchOpcode*/ 18|128,1/*146*/, TARGET_VAL(ISD::XOR),// ->1443
432 : /* 1297*/ OPC_MoveChild0,
433 : /* 1298*/ OPC_CheckOpcode, TARGET_VAL(ISD::SHL),
434 : /* 1301*/ OPC_CheckChild0Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
435 : /* 1312*/ OPC_RecordChild1, // #0 = $width
436 : /* 1313*/ OPC_CheckChild1Type, MVT::i32,
437 : /* 1315*/ OPC_CheckPredicate, 0, // Predicate_shl_oneuse
438 : /* 1317*/ OPC_MoveParent,
439 : /* 1318*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
440 : /* 1329*/ OPC_CheckPredicate, 0, // Predicate_xor_oneuse
441 : /* 1331*/ OPC_MoveParent,
442 : /* 1332*/ OPC_RecordChild1, // #1 = $src
443 : /* 1333*/ OPC_CheckType, MVT::i32,
444 : /* 1335*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
445 : /* 1337*/ OPC_EmitInteger, MVT::i32, 0,
446 : /* 1340*/ OPC_EmitInteger, MVT::i32, 0,
447 : /* 1343*/ OPC_EmitInteger, MVT::i32, 0,
448 : /* 1346*/ OPC_EmitInteger, MVT::i32, 0,
449 : /* 1349*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
450 : /* 1361*/ OPC_EmitInteger, MVT::i32, 0,
451 : /* 1364*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
452 : MVT::i32, 1/*#Ops*/, 7, // Results = #8
453 : /* 1371*/ OPC_EmitInteger, MVT::i32, 0,
454 : /* 1374*/ OPC_EmitInteger, MVT::i32, 0,
455 : /* 1377*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
456 : /* 1389*/ OPC_EmitInteger, MVT::i32, 0,
457 : /* 1392*/ OPC_EmitInteger, MVT::i32, 0,
458 : /* 1395*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
459 : /* 1407*/ OPC_EmitInteger, MVT::i32, 1,
460 : /* 1410*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
461 : /* 1413*/ OPC_EmitInteger, MVT::i32, 0,
462 : /* 1416*/ OPC_EmitInteger, MVT::i32, 0,
463 : /* 1419*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_UINT_eg), 0,
464 : MVT::i32, 18/*#Ops*/, 2, 3, 1, 4, 5, 6, 8, 9, 10, 11, 0, 12, 13, 14, 15, 16, 17, 18,
465 : // Src: (and:{ *:[i32] } (xor:{ *:[i32] } (shl:{ *:[i32] } -1:{ *:[i32] }, i32:{ *:[i32] }:$width)<<P:Predicate_shl_oneuse>>, -1:{ *:[i32] })<<P:Predicate_xor_oneuse>>, i32:{ *:[i32] }:$src) - Complexity = 21
466 : // Dst: (BFE_UINT_eg:{ *:[i32] } ?:{ *:[i32] }:$src, (MOV_IMM_I32:{ *:[i32] } 0:{ *:[i32] }), ?:{ *:[i32] }:$width)
467 : /* 1443*/ 0, // EndSwitchOpcode
468 : /* 1444*/ /*Scope*/ 11|128,1/*139*/, /*->1585*/
469 : /* 1446*/ OPC_RecordChild0, // #0 = $src
470 : /* 1447*/ OPC_MoveChild1,
471 : /* 1448*/ OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
472 : /* 1451*/ OPC_CheckChild0Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
473 : /* 1462*/ OPC_MoveChild1,
474 : /* 1463*/ OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
475 : /* 1466*/ OPC_CheckChild0Integer, 32,
476 : /* 1468*/ OPC_RecordChild1, // #1 = $width
477 : /* 1469*/ OPC_CheckType, MVT::i32,
478 : /* 1471*/ OPC_MoveParent,
479 : /* 1472*/ OPC_CheckPredicate, 0, // Predicate_srl_oneuse
480 : /* 1474*/ OPC_MoveParent,
481 : /* 1475*/ OPC_CheckType, MVT::i32,
482 : /* 1477*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
483 : /* 1479*/ OPC_EmitInteger, MVT::i32, 0,
484 : /* 1482*/ OPC_EmitInteger, MVT::i32, 0,
485 : /* 1485*/ OPC_EmitInteger, MVT::i32, 0,
486 : /* 1488*/ OPC_EmitInteger, MVT::i32, 0,
487 : /* 1491*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
488 : /* 1503*/ OPC_EmitInteger, MVT::i32, 0,
489 : /* 1506*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
490 : MVT::i32, 1/*#Ops*/, 7, // Results = #8
491 : /* 1513*/ OPC_EmitInteger, MVT::i32, 0,
492 : /* 1516*/ OPC_EmitInteger, MVT::i32, 0,
493 : /* 1519*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
494 : /* 1531*/ OPC_EmitInteger, MVT::i32, 0,
495 : /* 1534*/ OPC_EmitInteger, MVT::i32, 0,
496 : /* 1537*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
497 : /* 1549*/ OPC_EmitInteger, MVT::i32, 1,
498 : /* 1552*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
499 : /* 1555*/ OPC_EmitInteger, MVT::i32, 0,
500 : /* 1558*/ OPC_EmitInteger, MVT::i32, 0,
501 : /* 1561*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_UINT_eg), 0,
502 : MVT::i32, 18/*#Ops*/, 2, 3, 0, 4, 5, 6, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18,
503 : // Src: (and:{ *:[i32] } i32:{ *:[i32] }:$src, (srl:{ *:[i32] } -1:{ *:[i32] }, (sub:{ *:[i32] } 32:{ *:[i32] }, i32:{ *:[i32] }:$width))<<P:Predicate_srl_oneuse>>) - Complexity = 20
504 : // Dst: (BFE_UINT_eg:{ *:[i32] } ?:{ *:[i32] }:$src, (MOV_IMM_I32:{ *:[i32] } 0:{ *:[i32] }), ?:{ *:[i32] }:$width)
505 : /* 1585*/ /*Scope*/ 11|128,2/*267*/, /*->1854*/
506 : /* 1587*/ OPC_MoveChild0,
507 : /* 1588*/ OPC_CheckOpcode, TARGET_VAL(ISD::SRL),
508 : /* 1591*/ OPC_Scope, 7|128,1/*135*/, /*->1729*/ // 2 children in Scope
509 : /* 1594*/ OPC_CheckChild0Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
510 : /* 1605*/ OPC_MoveChild1,
511 : /* 1606*/ OPC_CheckOpcode, TARGET_VAL(ISD::SUB),
512 : /* 1609*/ OPC_CheckChild0Integer, 32,
513 : /* 1611*/ OPC_RecordChild1, // #0 = $width
514 : /* 1612*/ OPC_CheckType, MVT::i32,
515 : /* 1614*/ OPC_MoveParent,
516 : /* 1615*/ OPC_CheckPredicate, 0, // Predicate_srl_oneuse
517 : /* 1617*/ OPC_MoveParent,
518 : /* 1618*/ OPC_RecordChild1, // #1 = $src
519 : /* 1619*/ OPC_CheckType, MVT::i32,
520 : /* 1621*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
521 : /* 1623*/ OPC_EmitInteger, MVT::i32, 0,
522 : /* 1626*/ OPC_EmitInteger, MVT::i32, 0,
523 : /* 1629*/ OPC_EmitInteger, MVT::i32, 0,
524 : /* 1632*/ OPC_EmitInteger, MVT::i32, 0,
525 : /* 1635*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
526 : /* 1647*/ OPC_EmitInteger, MVT::i32, 0,
527 : /* 1650*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
528 : MVT::i32, 1/*#Ops*/, 7, // Results = #8
529 : /* 1657*/ OPC_EmitInteger, MVT::i32, 0,
530 : /* 1660*/ OPC_EmitInteger, MVT::i32, 0,
531 : /* 1663*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
532 : /* 1675*/ OPC_EmitInteger, MVT::i32, 0,
533 : /* 1678*/ OPC_EmitInteger, MVT::i32, 0,
534 : /* 1681*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
535 : /* 1693*/ OPC_EmitInteger, MVT::i32, 1,
536 : /* 1696*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
537 : /* 1699*/ OPC_EmitInteger, MVT::i32, 0,
538 : /* 1702*/ OPC_EmitInteger, MVT::i32, 0,
539 : /* 1705*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_UINT_eg), 0,
540 : MVT::i32, 18/*#Ops*/, 2, 3, 1, 4, 5, 6, 8, 9, 10, 11, 0, 12, 13, 14, 15, 16, 17, 18,
541 : // Src: (and:{ *:[i32] } (srl:{ *:[i32] } -1:{ *:[i32] }, (sub:{ *:[i32] } 32:{ *:[i32] }, i32:{ *:[i32] }:$width))<<P:Predicate_srl_oneuse>>, i32:{ *:[i32] }:$src) - Complexity = 20
542 : // Dst: (BFE_UINT_eg:{ *:[i32] } ?:{ *:[i32] }:$src, (MOV_IMM_I32:{ *:[i32] } 0:{ *:[i32] }), ?:{ *:[i32] }:$width)
543 : /* 1729*/ /*Scope*/ 123, /*->1853*/
544 : /* 1730*/ OPC_RecordChild0, // #0 = $src
545 : /* 1731*/ OPC_RecordChild1, // #1 = $rshift
546 : /* 1732*/ OPC_CheckChild1Type, MVT::i32,
547 : /* 1734*/ OPC_MoveParent,
548 : /* 1735*/ OPC_RecordChild1, // #2 = $mask
549 : /* 1736*/ OPC_MoveChild1,
550 : /* 1737*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
551 : /* 1740*/ OPC_CheckPredicate, 1, // Predicate_IMMZeroBasedBitfieldMask
552 : /* 1742*/ OPC_MoveParent,
553 : /* 1743*/ OPC_CheckType, MVT::i32,
554 : /* 1745*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
555 : /* 1747*/ OPC_EmitInteger, MVT::i32, 0,
556 : /* 1750*/ OPC_EmitInteger, MVT::i32, 0,
557 : /* 1753*/ OPC_EmitInteger, MVT::i32, 0,
558 : /* 1756*/ OPC_EmitInteger, MVT::i32, 0,
559 : /* 1759*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
560 : /* 1771*/ OPC_EmitInteger, MVT::i32, 0,
561 : /* 1774*/ OPC_EmitInteger, MVT::i32, 0,
562 : /* 1777*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
563 : /* 1789*/ OPC_EmitNodeXForm, 0, 2, // IMMPopCount
564 : /* 1792*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
565 : MVT::i32, 1/*#Ops*/, 11, // Results = #12
566 : /* 1799*/ OPC_EmitInteger, MVT::i32, 0,
567 : /* 1802*/ OPC_EmitInteger, MVT::i32, 0,
568 : /* 1805*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
569 : /* 1817*/ OPC_EmitInteger, MVT::i32, 1,
570 : /* 1820*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
571 : /* 1823*/ OPC_EmitInteger, MVT::i32, 0,
572 : /* 1826*/ OPC_EmitInteger, MVT::i32, 0,
573 : /* 1829*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_UINT_eg), 0,
574 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19,
575 : // Src: (and:{ *:[i32] } (srl:{ *:[i32] } i32:{ *:[i32] }:$src, i32:{ *:[i32] }:$rshift), (imm:{ *:[i32] })<<P:Predicate_IMMZeroBasedBitfieldMask>>:$mask) - Complexity = 10
576 : // Dst: (BFE_UINT_eg:{ *:[i32] } ?:{ *:[i32] }:$src, ?:{ *:[i32] }:$rshift, (MOV_IMM_I32:{ *:[i32] } (IMMPopCount:{ *:[i32] } ?:{ *:[i32] }:$mask)))
577 : /* 1853*/ 0, /*End of Scope*/
578 : /* 1854*/ /*Scope*/ 104, /*->1959*/
579 : /* 1855*/ OPC_RecordChild0, // #0 = $src0
580 : /* 1856*/ OPC_RecordChild1, // #1 = $src1
581 : /* 1857*/ OPC_CheckType, MVT::i32,
582 : /* 1859*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
583 : /* 1861*/ OPC_EmitInteger, MVT::i32, 0,
584 : /* 1864*/ OPC_EmitInteger, MVT::i32, 0,
585 : /* 1867*/ OPC_EmitInteger, MVT::i32, 1,
586 : /* 1870*/ OPC_EmitInteger, MVT::i32, 0,
587 : /* 1873*/ OPC_EmitInteger, MVT::i32, 0,
588 : /* 1876*/ OPC_EmitInteger, MVT::i32, 0,
589 : /* 1879*/ OPC_EmitInteger, MVT::i32, 0,
590 : /* 1882*/ OPC_EmitInteger, MVT::i32, 0,
591 : /* 1885*/ OPC_EmitInteger, MVT::i32, 0,
592 : /* 1888*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
593 : /* 1900*/ OPC_EmitInteger, MVT::i32, 0,
594 : /* 1903*/ OPC_EmitInteger, MVT::i32, 0,
595 : /* 1906*/ OPC_EmitInteger, MVT::i32, 0,
596 : /* 1909*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
597 : /* 1921*/ OPC_EmitInteger, MVT::i32, 1,
598 : /* 1924*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
599 : /* 1927*/ OPC_EmitInteger, MVT::i32, 0,
600 : /* 1930*/ OPC_EmitInteger, MVT::i32, 0,
601 : /* 1933*/ OPC_MorphNodeTo1, TARGET_VAL(R600::AND_INT), 0,
602 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
603 : // Src: (and:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
604 : // Dst: (AND_INT:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
605 : /* 1959*/ 0, /*End of Scope*/
606 : /* 1960*/ /*SwitchOpcode*/ 118|128,3/*502*/, TARGET_VAL(ISD::INTRINSIC_VOID),// ->2466
607 : /* 1964*/ OPC_RecordNode, // #0 = 'intrinsic_void' chained node
608 : /* 1965*/ OPC_Scope, 64|128,2/*320*/, /*->2288*/ // 4 children in Scope
609 : /* 1968*/ OPC_CheckChild1Integer, 64|128,40/*5184*/,
610 : /* 1971*/ OPC_RecordChild2, // #1 = $src
611 : /* 1972*/ OPC_RecordChild3, // #2 = $arraybase
612 : /* 1973*/ OPC_MoveChild3,
613 : /* 1974*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
614 : /* 1977*/ OPC_MoveParent,
615 : /* 1978*/ OPC_Scope, 76, /*->2056*/ // 4 children in Scope
616 : /* 1980*/ OPC_CheckChild4Integer, 0,
617 : /* 1982*/ OPC_RecordChild5, // #3 = $mask
618 : /* 1983*/ OPC_MoveChild5,
619 : /* 1984*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
620 : /* 1987*/ OPC_MoveParent,
621 : /* 1988*/ OPC_Scope, 32, /*->2022*/ // 2 children in Scope
622 : /* 1990*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
623 : /* 1992*/ OPC_EmitMergeInputChains1_0,
624 : /* 1993*/ OPC_EmitInteger, MVT::i32, 0,
625 : /* 1996*/ OPC_EmitConvertToTarget, 2,
626 : /* 1998*/ OPC_EmitInteger, MVT::i32, 127|128,31/*4095*/,
627 : /* 2002*/ OPC_EmitConvertToTarget, 3,
628 : /* 2004*/ OPC_EmitInteger, MVT::i32, 32,
629 : /* 2007*/ OPC_EmitInteger, MVT::i32, 0,
630 : /* 2010*/ OPC_MorphNodeTo0, TARGET_VAL(R600::R600_ExportBuf), 0|OPFL_Chain,
631 : 7/*#Ops*/, 1, 4, 5, 6, 7, 8, 9,
632 : // Src: (intrinsic_void 5184:{ *:[iPTR] }, R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$arraybase, 0:{ *:[i32] }, (imm:{ *:[i32] }):$mask) - Complexity = 19
633 : // Dst: (R600_ExportBuf R600_Reg128:{ *:[v4f32] }:$src, 0:{ *:[i32] }, (imm:{ *:[i32] }):$arraybase, 4095:{ *:[i32] }, (imm:{ *:[i32] }):$mask, 32:{ *:[i32] }, 0:{ *:[i32] })
634 : /* 2022*/ /*Scope*/ 32, /*->2055*/
635 : /* 2023*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
636 : /* 2025*/ OPC_EmitMergeInputChains1_0,
637 : /* 2026*/ OPC_EmitInteger, MVT::i32, 0,
638 : /* 2029*/ OPC_EmitConvertToTarget, 2,
639 : /* 2031*/ OPC_EmitInteger, MVT::i32, 127|128,31/*4095*/,
640 : /* 2035*/ OPC_EmitConvertToTarget, 3,
641 : /* 2037*/ OPC_EmitInteger, MVT::i32, 64,
642 : /* 2040*/ OPC_EmitInteger, MVT::i32, 0,
643 : /* 2043*/ OPC_MorphNodeTo0, TARGET_VAL(R600::EG_ExportBuf), 0|OPFL_Chain,
644 : 7/*#Ops*/, 1, 4, 5, 6, 7, 8, 9,
645 : // Src: (intrinsic_void 5184:{ *:[iPTR] }, R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$arraybase, 0:{ *:[i32] }, (imm:{ *:[i32] }):$mask) - Complexity = 19
646 : // Dst: (EG_ExportBuf R600_Reg128:{ *:[v4f32] }:$src, 0:{ *:[i32] }, (imm:{ *:[i32] }):$arraybase, 4095:{ *:[i32] }, (imm:{ *:[i32] }):$mask, 64:{ *:[i32] }, 0:{ *:[i32] })
647 : /* 2055*/ 0, /*End of Scope*/
648 : /* 2056*/ /*Scope*/ 76, /*->2133*/
649 : /* 2057*/ OPC_CheckChild4Integer, 1,
650 : /* 2059*/ OPC_RecordChild5, // #3 = $mask
651 : /* 2060*/ OPC_MoveChild5,
652 : /* 2061*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
653 : /* 2064*/ OPC_MoveParent,
654 : /* 2065*/ OPC_Scope, 32, /*->2099*/ // 2 children in Scope
655 : /* 2067*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
656 : /* 2069*/ OPC_EmitMergeInputChains1_0,
657 : /* 2070*/ OPC_EmitInteger, MVT::i32, 0,
658 : /* 2073*/ OPC_EmitConvertToTarget, 2,
659 : /* 2075*/ OPC_EmitInteger, MVT::i32, 127|128,31/*4095*/,
660 : /* 2079*/ OPC_EmitConvertToTarget, 3,
661 : /* 2081*/ OPC_EmitInteger, MVT::i32, 33,
662 : /* 2084*/ OPC_EmitInteger, MVT::i32, 0,
663 : /* 2087*/ OPC_MorphNodeTo0, TARGET_VAL(R600::R600_ExportBuf), 0|OPFL_Chain,
664 : 7/*#Ops*/, 1, 4, 5, 6, 7, 8, 9,
665 : // Src: (intrinsic_void 5184:{ *:[iPTR] }, R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$arraybase, 1:{ *:[i32] }, (imm:{ *:[i32] }):$mask) - Complexity = 19
666 : // Dst: (R600_ExportBuf ?:{ *:[v4f32] }:$src, 0:{ *:[i32] }, (imm:{ *:[i32] }):$arraybase, 4095:{ *:[i32] }, (imm:{ *:[i32] }):$mask, 33:{ *:[i32] }, 0:{ *:[i32] })
667 : /* 2099*/ /*Scope*/ 32, /*->2132*/
668 : /* 2100*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
669 : /* 2102*/ OPC_EmitMergeInputChains1_0,
670 : /* 2103*/ OPC_EmitInteger, MVT::i32, 0,
671 : /* 2106*/ OPC_EmitConvertToTarget, 2,
672 : /* 2108*/ OPC_EmitInteger, MVT::i32, 127|128,31/*4095*/,
673 : /* 2112*/ OPC_EmitConvertToTarget, 3,
674 : /* 2114*/ OPC_EmitInteger, MVT::i32, 65,
675 : /* 2117*/ OPC_EmitInteger, MVT::i32, 0,
676 : /* 2120*/ OPC_MorphNodeTo0, TARGET_VAL(R600::EG_ExportBuf), 0|OPFL_Chain,
677 : 7/*#Ops*/, 1, 4, 5, 6, 7, 8, 9,
678 : // Src: (intrinsic_void 5184:{ *:[iPTR] }, R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$arraybase, 1:{ *:[i32] }, (imm:{ *:[i32] }):$mask) - Complexity = 19
679 : // Dst: (EG_ExportBuf ?:{ *:[v4f32] }:$src, 0:{ *:[i32] }, (imm:{ *:[i32] }):$arraybase, 4095:{ *:[i32] }, (imm:{ *:[i32] }):$mask, 65:{ *:[i32] }, 0:{ *:[i32] })
680 : /* 2132*/ 0, /*End of Scope*/
681 : /* 2133*/ /*Scope*/ 76, /*->2210*/
682 : /* 2134*/ OPC_CheckChild4Integer, 2,
683 : /* 2136*/ OPC_RecordChild5, // #3 = $mask
684 : /* 2137*/ OPC_MoveChild5,
685 : /* 2138*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
686 : /* 2141*/ OPC_MoveParent,
687 : /* 2142*/ OPC_Scope, 32, /*->2176*/ // 2 children in Scope
688 : /* 2144*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
689 : /* 2146*/ OPC_EmitMergeInputChains1_0,
690 : /* 2147*/ OPC_EmitInteger, MVT::i32, 0,
691 : /* 2150*/ OPC_EmitConvertToTarget, 2,
692 : /* 2152*/ OPC_EmitInteger, MVT::i32, 127|128,31/*4095*/,
693 : /* 2156*/ OPC_EmitConvertToTarget, 3,
694 : /* 2158*/ OPC_EmitInteger, MVT::i32, 34,
695 : /* 2161*/ OPC_EmitInteger, MVT::i32, 0,
696 : /* 2164*/ OPC_MorphNodeTo0, TARGET_VAL(R600::R600_ExportBuf), 0|OPFL_Chain,
697 : 7/*#Ops*/, 1, 4, 5, 6, 7, 8, 9,
698 : // Src: (intrinsic_void 5184:{ *:[iPTR] }, R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$arraybase, 2:{ *:[i32] }, (imm:{ *:[i32] }):$mask) - Complexity = 19
699 : // Dst: (R600_ExportBuf ?:{ *:[v4f32] }:$src, 0:{ *:[i32] }, (imm:{ *:[i32] }):$arraybase, 4095:{ *:[i32] }, (imm:{ *:[i32] }):$mask, 34:{ *:[i32] }, 0:{ *:[i32] })
700 : /* 2176*/ /*Scope*/ 32, /*->2209*/
701 : /* 2177*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
702 : /* 2179*/ OPC_EmitMergeInputChains1_0,
703 : /* 2180*/ OPC_EmitInteger, MVT::i32, 0,
704 : /* 2183*/ OPC_EmitConvertToTarget, 2,
705 : /* 2185*/ OPC_EmitInteger, MVT::i32, 127|128,31/*4095*/,
706 : /* 2189*/ OPC_EmitConvertToTarget, 3,
707 : /* 2191*/ OPC_EmitInteger, MVT::i32, 66,
708 : /* 2194*/ OPC_EmitInteger, MVT::i32, 0,
709 : /* 2197*/ OPC_MorphNodeTo0, TARGET_VAL(R600::EG_ExportBuf), 0|OPFL_Chain,
710 : 7/*#Ops*/, 1, 4, 5, 6, 7, 8, 9,
711 : // Src: (intrinsic_void 5184:{ *:[iPTR] }, R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$arraybase, 2:{ *:[i32] }, (imm:{ *:[i32] }):$mask) - Complexity = 19
712 : // Dst: (EG_ExportBuf ?:{ *:[v4f32] }:$src, 0:{ *:[i32] }, (imm:{ *:[i32] }):$arraybase, 4095:{ *:[i32] }, (imm:{ *:[i32] }):$mask, 66:{ *:[i32] }, 0:{ *:[i32] })
713 : /* 2209*/ 0, /*End of Scope*/
714 : /* 2210*/ /*Scope*/ 76, /*->2287*/
715 : /* 2211*/ OPC_CheckChild4Integer, 3,
716 : /* 2213*/ OPC_RecordChild5, // #3 = $mask
717 : /* 2214*/ OPC_MoveChild5,
718 : /* 2215*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
719 : /* 2218*/ OPC_MoveParent,
720 : /* 2219*/ OPC_Scope, 32, /*->2253*/ // 2 children in Scope
721 : /* 2221*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
722 : /* 2223*/ OPC_EmitMergeInputChains1_0,
723 : /* 2224*/ OPC_EmitInteger, MVT::i32, 0,
724 : /* 2227*/ OPC_EmitConvertToTarget, 2,
725 : /* 2229*/ OPC_EmitInteger, MVT::i32, 127|128,31/*4095*/,
726 : /* 2233*/ OPC_EmitConvertToTarget, 3,
727 : /* 2235*/ OPC_EmitInteger, MVT::i32, 35,
728 : /* 2238*/ OPC_EmitInteger, MVT::i32, 0,
729 : /* 2241*/ OPC_MorphNodeTo0, TARGET_VAL(R600::R600_ExportBuf), 0|OPFL_Chain,
730 : 7/*#Ops*/, 1, 4, 5, 6, 7, 8, 9,
731 : // Src: (intrinsic_void 5184:{ *:[iPTR] }, R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$arraybase, 3:{ *:[i32] }, (imm:{ *:[i32] }):$mask) - Complexity = 19
732 : // Dst: (R600_ExportBuf ?:{ *:[v4f32] }:$src, 0:{ *:[i32] }, (imm:{ *:[i32] }):$arraybase, 4095:{ *:[i32] }, (imm:{ *:[i32] }):$mask, 35:{ *:[i32] }, 0:{ *:[i32] })
733 : /* 2253*/ /*Scope*/ 32, /*->2286*/
734 : /* 2254*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
735 : /* 2256*/ OPC_EmitMergeInputChains1_0,
736 : /* 2257*/ OPC_EmitInteger, MVT::i32, 0,
737 : /* 2260*/ OPC_EmitConvertToTarget, 2,
738 : /* 2262*/ OPC_EmitInteger, MVT::i32, 127|128,31/*4095*/,
739 : /* 2266*/ OPC_EmitConvertToTarget, 3,
740 : /* 2268*/ OPC_EmitInteger, MVT::i32, 67,
741 : /* 2271*/ OPC_EmitInteger, MVT::i32, 0,
742 : /* 2274*/ OPC_MorphNodeTo0, TARGET_VAL(R600::EG_ExportBuf), 0|OPFL_Chain,
743 : 7/*#Ops*/, 1, 4, 5, 6, 7, 8, 9,
744 : // Src: (intrinsic_void 5184:{ *:[iPTR] }, R600_Reg128:{ *:[v4f32] }:$src, (imm:{ *:[i32] }):$arraybase, 3:{ *:[i32] }, (imm:{ *:[i32] }):$mask) - Complexity = 19
745 : // Dst: (EG_ExportBuf ?:{ *:[v4f32] }:$src, 0:{ *:[i32] }, (imm:{ *:[i32] }):$arraybase, 4095:{ *:[i32] }, (imm:{ *:[i32] }):$mask, 67:{ *:[i32] }, 0:{ *:[i32] })
746 : /* 2286*/ 0, /*End of Scope*/
747 : /* 2287*/ 0, /*End of Scope*/
748 : /* 2288*/ /*Scope*/ 49, /*->2338*/
749 : /* 2289*/ OPC_CheckChild1Integer, 46|128,40/*5166*/,
750 : /* 2292*/ OPC_RecordChild2, // #1 = $rw_gpr
751 : /* 2293*/ OPC_RecordChild3, // #2 = $index_gpr
752 : /* 2294*/ OPC_RecordChild4, // #3 = $rat_id
753 : /* 2295*/ OPC_MoveChild4,
754 : /* 2296*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
755 : /* 2299*/ OPC_MoveParent,
756 : /* 2300*/ OPC_Scope, 17, /*->2319*/ // 2 children in Scope
757 : /* 2302*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
758 : /* 2304*/ OPC_EmitMergeInputChains1_0,
759 : /* 2305*/ OPC_EmitConvertToTarget, 3,
760 : /* 2307*/ OPC_EmitInteger, MVT::i32, 0,
761 : /* 2310*/ OPC_MorphNodeTo0, TARGET_VAL(R600::RAT_STORE_TYPED_cm), 0|OPFL_Chain,
762 : 4/*#Ops*/, 1, 2, 4, 5,
763 : // Src: (intrinsic_void 5166:{ *:[iPTR] }, R600_Reg128:{ *:[v4i32] }:$rw_gpr, R600_Reg128:{ *:[v4i32] }:$index_gpr, (imm:{ *:[i32] }):$rat_id) - Complexity = 11
764 : // Dst: (RAT_STORE_TYPED_cm R600_Reg128:{ *:[v4i32] }:$rw_gpr, R600_Reg128:{ *:[v4i32] }:$index_gpr, (imm:{ *:[i32] }):$rat_id)
765 : /* 2319*/ /*Scope*/ 17, /*->2337*/
766 : /* 2320*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
767 : /* 2322*/ OPC_EmitMergeInputChains1_0,
768 : /* 2323*/ OPC_EmitConvertToTarget, 3,
769 : /* 2325*/ OPC_EmitInteger, MVT::i32, 0,
770 : /* 2328*/ OPC_MorphNodeTo0, TARGET_VAL(R600::RAT_STORE_TYPED_eg), 0|OPFL_Chain,
771 : 4/*#Ops*/, 1, 2, 4, 5,
772 : // Src: (intrinsic_void 5166:{ *:[iPTR] }, R600_Reg128:{ *:[v4i32] }:$rw_gpr, R600_Reg128:{ *:[v4i32] }:$index_gpr, (imm:{ *:[i32] }):$rat_id) - Complexity = 11
773 : // Dst: (RAT_STORE_TYPED_eg R600_Reg128:{ *:[v4i32] }:$rw_gpr, R600_Reg128:{ *:[v4i32] }:$index_gpr, (imm:{ *:[i32] }):$rat_id)
774 : /* 2337*/ 0, /*End of Scope*/
775 : /* 2338*/ /*Scope*/ 11, /*->2350*/
776 : /* 2339*/ OPC_CheckChild1Integer, 43|128,40/*5163*/,
777 : /* 2342*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
778 : /* 2344*/ OPC_EmitMergeInputChains1_0,
779 : /* 2345*/ OPC_MorphNodeTo0, TARGET_VAL(R600::GROUP_BARRIER), 0|OPFL_Chain,
780 : 0/*#Ops*/,
781 : // Src: (intrinsic_void 5163:{ *:[iPTR] }) - Complexity = 8
782 : // Dst: (GROUP_BARRIER)
783 : /* 2350*/ /*Scope*/ 114, /*->2465*/
784 : /* 2351*/ OPC_CheckChild1Integer, 45|128,40/*5165*/,
785 : /* 2354*/ OPC_RecordChild2, // #1 = $src0
786 : /* 2355*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
787 : /* 2357*/ OPC_EmitMergeInputChains1_0,
788 : /* 2358*/ OPC_EmitInteger, MVT::i32, 0,
789 : /* 2361*/ OPC_EmitInteger, MVT::i32, 0,
790 : /* 2364*/ OPC_EmitInteger, MVT::i32, 1,
791 : /* 2367*/ OPC_EmitInteger, MVT::i32, 0,
792 : /* 2370*/ OPC_EmitInteger, MVT::i32, 0,
793 : /* 2373*/ OPC_EmitInteger, MVT::i32, 0,
794 : /* 2376*/ OPC_EmitRegister, MVT::f32, R600::ZERO,
795 : /* 2379*/ OPC_EmitInteger, MVT::i32, 0,
796 : /* 2382*/ OPC_EmitInteger, MVT::i32, 0,
797 : /* 2385*/ OPC_EmitInteger, MVT::i32, 0,
798 : /* 2388*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
799 : /* 2400*/ OPC_EmitInteger, MVT::i32, 0,
800 : /* 2403*/ OPC_EmitInteger, MVT::i32, 0,
801 : /* 2406*/ OPC_EmitInteger, MVT::i32, 0,
802 : /* 2409*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
803 : /* 2421*/ OPC_EmitInteger, MVT::i32, 1,
804 : /* 2424*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
805 : /* 2427*/ OPC_EmitInteger, MVT::i32, 0,
806 : /* 2430*/ OPC_EmitInteger, MVT::i32, 0,
807 : /* 2433*/ OPC_EmitNode1, TARGET_VAL(R600::KILLGT), 0|OPFL_Chain,
808 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 1, 13, 14, 15, 16, 17, 18, 19, 20, // Results = #21
809 : /* 2459*/ OPC_MorphNodeTo0, TARGET_VAL(R600::MASK_WRITE), 0|OPFL_Chain,
810 : 1/*#Ops*/, 21,
811 : // Src: (intrinsic_void 5165:{ *:[iPTR] }, f32:{ *:[f32] }:$src0) - Complexity = 8
812 : // Dst: (MASK_WRITE (KILLGT:{ *:[i32] } ZERO:{ *:[f32] }, ?:{ *:[f32] }:$src0))
813 : /* 2465*/ 0, /*End of Scope*/
814 : /* 2466*/ /*SwitchOpcode*/ 15|128,116/*14863*/, TARGET_VAL(ISD::OR),// ->17333
815 : /* 2470*/ OPC_Scope, 34|128,115/*14754*/, /*->17227*/ // 2 children in Scope
816 : /* 2473*/ OPC_MoveChild0,
817 : /* 2474*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
818 : /* 2477*/ OPC_Scope, 93|128,5/*733*/, /*->3213*/ // 8 children in Scope
819 : /* 2480*/ OPC_RecordChild0, // #0 = $y
820 : /* 2481*/ OPC_Scope, 108|128,3/*492*/, /*->2976*/ // 2 children in Scope
821 : /* 2484*/ OPC_RecordChild1, // #1 = $x
822 : /* 2485*/ OPC_MoveParent,
823 : /* 2486*/ OPC_MoveChild1,
824 : /* 2487*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
825 : /* 2490*/ OPC_Scope, 120, /*->2612*/ // 4 children in Scope
826 : /* 2492*/ OPC_RecordChild0, // #2 = $z
827 : /* 2493*/ OPC_MoveChild1,
828 : /* 2494*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
829 : /* 2497*/ OPC_CheckChild0Same, 1,
830 : /* 2499*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
831 : /* 2510*/ OPC_MoveParent,
832 : /* 2511*/ OPC_MoveParent,
833 : /* 2512*/ OPC_CheckType, MVT::i32,
834 : /* 2514*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
835 : /* 2516*/ OPC_EmitInteger, MVT::i32, 0,
836 : /* 2519*/ OPC_EmitInteger, MVT::i32, 0,
837 : /* 2522*/ OPC_EmitInteger, MVT::i32, 0,
838 : /* 2525*/ OPC_EmitInteger, MVT::i32, 0,
839 : /* 2528*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
840 : /* 2540*/ OPC_EmitInteger, MVT::i32, 0,
841 : /* 2543*/ OPC_EmitInteger, MVT::i32, 0,
842 : /* 2546*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
843 : /* 2558*/ OPC_EmitInteger, MVT::i32, 0,
844 : /* 2561*/ OPC_EmitInteger, MVT::i32, 0,
845 : /* 2564*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
846 : /* 2576*/ OPC_EmitInteger, MVT::i32, 1,
847 : /* 2579*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
848 : /* 2582*/ OPC_EmitInteger, MVT::i32, 0,
849 : /* 2585*/ OPC_EmitInteger, MVT::i32, 0,
850 : /* 2588*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
851 : MVT::i32, 18/*#Ops*/, 3, 4, 1, 5, 6, 7, 0, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
852 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$y, i32:{ *:[i32] }:$x), (and:{ *:[i32] } i32:{ *:[i32] }:$z, (xor:{ *:[i32] } i32:{ *:[i32] }:$x, -1:{ *:[i32] }))) - Complexity = 17
853 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
854 : /* 2612*/ /*Scope*/ 120, /*->2733*/
855 : /* 2613*/ OPC_MoveChild0,
856 : /* 2614*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
857 : /* 2617*/ OPC_CheckChild0Same, 1,
858 : /* 2619*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
859 : /* 2630*/ OPC_MoveParent,
860 : /* 2631*/ OPC_RecordChild1, // #2 = $z
861 : /* 2632*/ OPC_MoveParent,
862 : /* 2633*/ OPC_CheckType, MVT::i32,
863 : /* 2635*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
864 : /* 2637*/ OPC_EmitInteger, MVT::i32, 0,
865 : /* 2640*/ OPC_EmitInteger, MVT::i32, 0,
866 : /* 2643*/ OPC_EmitInteger, MVT::i32, 0,
867 : /* 2646*/ OPC_EmitInteger, MVT::i32, 0,
868 : /* 2649*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
869 : /* 2661*/ OPC_EmitInteger, MVT::i32, 0,
870 : /* 2664*/ OPC_EmitInteger, MVT::i32, 0,
871 : /* 2667*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
872 : /* 2679*/ OPC_EmitInteger, MVT::i32, 0,
873 : /* 2682*/ OPC_EmitInteger, MVT::i32, 0,
874 : /* 2685*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
875 : /* 2697*/ OPC_EmitInteger, MVT::i32, 1,
876 : /* 2700*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
877 : /* 2703*/ OPC_EmitInteger, MVT::i32, 0,
878 : /* 2706*/ OPC_EmitInteger, MVT::i32, 0,
879 : /* 2709*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
880 : MVT::i32, 18/*#Ops*/, 3, 4, 1, 5, 6, 7, 0, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
881 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$y, i32:{ *:[i32] }:$x), (and:{ *:[i32] } (xor:{ *:[i32] } i32:{ *:[i32] }:$x, -1:{ *:[i32] }), i32:{ *:[i32] }:$z)) - Complexity = 17
882 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
883 : /* 2733*/ /*Scope*/ 120, /*->2854*/
884 : /* 2734*/ OPC_RecordChild0, // #2 = $z
885 : /* 2735*/ OPC_MoveChild1,
886 : /* 2736*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
887 : /* 2739*/ OPC_CheckChild0Same, 0,
888 : /* 2741*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
889 : /* 2752*/ OPC_MoveParent,
890 : /* 2753*/ OPC_MoveParent,
891 : /* 2754*/ OPC_CheckType, MVT::i32,
892 : /* 2756*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
893 : /* 2758*/ OPC_EmitInteger, MVT::i32, 0,
894 : /* 2761*/ OPC_EmitInteger, MVT::i32, 0,
895 : /* 2764*/ OPC_EmitInteger, MVT::i32, 0,
896 : /* 2767*/ OPC_EmitInteger, MVT::i32, 0,
897 : /* 2770*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
898 : /* 2782*/ OPC_EmitInteger, MVT::i32, 0,
899 : /* 2785*/ OPC_EmitInteger, MVT::i32, 0,
900 : /* 2788*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
901 : /* 2800*/ OPC_EmitInteger, MVT::i32, 0,
902 : /* 2803*/ OPC_EmitInteger, MVT::i32, 0,
903 : /* 2806*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
904 : /* 2818*/ OPC_EmitInteger, MVT::i32, 1,
905 : /* 2821*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
906 : /* 2824*/ OPC_EmitInteger, MVT::i32, 0,
907 : /* 2827*/ OPC_EmitInteger, MVT::i32, 0,
908 : /* 2830*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
909 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
910 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), (and:{ *:[i32] } i32:{ *:[i32] }:$z, (xor:{ *:[i32] } i32:{ *:[i32] }:$x, -1:{ *:[i32] }))) - Complexity = 17
911 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
912 : /* 2854*/ /*Scope*/ 120, /*->2975*/
913 : /* 2855*/ OPC_MoveChild0,
914 : /* 2856*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
915 : /* 2859*/ OPC_CheckChild0Same, 0,
916 : /* 2861*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
917 : /* 2872*/ OPC_MoveParent,
918 : /* 2873*/ OPC_RecordChild1, // #2 = $z
919 : /* 2874*/ OPC_MoveParent,
920 : /* 2875*/ OPC_CheckType, MVT::i32,
921 : /* 2877*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
922 : /* 2879*/ OPC_EmitInteger, MVT::i32, 0,
923 : /* 2882*/ OPC_EmitInteger, MVT::i32, 0,
924 : /* 2885*/ OPC_EmitInteger, MVT::i32, 0,
925 : /* 2888*/ OPC_EmitInteger, MVT::i32, 0,
926 : /* 2891*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
927 : /* 2903*/ OPC_EmitInteger, MVT::i32, 0,
928 : /* 2906*/ OPC_EmitInteger, MVT::i32, 0,
929 : /* 2909*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
930 : /* 2921*/ OPC_EmitInteger, MVT::i32, 0,
931 : /* 2924*/ OPC_EmitInteger, MVT::i32, 0,
932 : /* 2927*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
933 : /* 2939*/ OPC_EmitInteger, MVT::i32, 1,
934 : /* 2942*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
935 : /* 2945*/ OPC_EmitInteger, MVT::i32, 0,
936 : /* 2948*/ OPC_EmitInteger, MVT::i32, 0,
937 : /* 2951*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
938 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
939 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), (and:{ *:[i32] } (xor:{ *:[i32] } i32:{ *:[i32] }:$x, -1:{ *:[i32] }), i32:{ *:[i32] }:$z)) - Complexity = 17
940 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
941 : /* 2975*/ 0, /*End of Scope*/
942 : /* 2976*/ /*Scope*/ 106|128,1/*234*/, /*->3212*/
943 : /* 2978*/ OPC_MoveChild1,
944 : /* 2979*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
945 : /* 2982*/ OPC_RecordChild0, // #1 = $x
946 : /* 2983*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
947 : /* 2994*/ OPC_MoveParent,
948 : /* 2995*/ OPC_MoveParent,
949 : /* 2996*/ OPC_MoveChild1,
950 : /* 2997*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
951 : /* 3000*/ OPC_Scope, 104, /*->3106*/ // 2 children in Scope
952 : /* 3002*/ OPC_RecordChild0, // #2 = $y
953 : /* 3003*/ OPC_CheckChild1Same, 1,
954 : /* 3005*/ OPC_MoveParent,
955 : /* 3006*/ OPC_CheckType, MVT::i32,
956 : /* 3008*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
957 : /* 3010*/ OPC_EmitInteger, MVT::i32, 0,
958 : /* 3013*/ OPC_EmitInteger, MVT::i32, 0,
959 : /* 3016*/ OPC_EmitInteger, MVT::i32, 0,
960 : /* 3019*/ OPC_EmitInteger, MVT::i32, 0,
961 : /* 3022*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
962 : /* 3034*/ OPC_EmitInteger, MVT::i32, 0,
963 : /* 3037*/ OPC_EmitInteger, MVT::i32, 0,
964 : /* 3040*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
965 : /* 3052*/ OPC_EmitInteger, MVT::i32, 0,
966 : /* 3055*/ OPC_EmitInteger, MVT::i32, 0,
967 : /* 3058*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
968 : /* 3070*/ OPC_EmitInteger, MVT::i32, 1,
969 : /* 3073*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
970 : /* 3076*/ OPC_EmitInteger, MVT::i32, 0,
971 : /* 3079*/ OPC_EmitInteger, MVT::i32, 0,
972 : /* 3082*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
973 : MVT::i32, 18/*#Ops*/, 3, 4, 1, 5, 6, 7, 2, 8, 9, 10, 0, 11, 12, 13, 14, 15, 16, 17,
974 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$z, (xor:{ *:[i32] } i32:{ *:[i32] }:$x, -1:{ *:[i32] })), (and:{ *:[i32] } i32:{ *:[i32] }:$y, i32:{ *:[i32] }:$x)) - Complexity = 17
975 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
976 : /* 3106*/ /*Scope*/ 104, /*->3211*/
977 : /* 3107*/ OPC_CheckChild0Same, 1,
978 : /* 3109*/ OPC_RecordChild1, // #2 = $y
979 : /* 3110*/ OPC_MoveParent,
980 : /* 3111*/ OPC_CheckType, MVT::i32,
981 : /* 3113*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
982 : /* 3115*/ OPC_EmitInteger, MVT::i32, 0,
983 : /* 3118*/ OPC_EmitInteger, MVT::i32, 0,
984 : /* 3121*/ OPC_EmitInteger, MVT::i32, 0,
985 : /* 3124*/ OPC_EmitInteger, MVT::i32, 0,
986 : /* 3127*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
987 : /* 3139*/ OPC_EmitInteger, MVT::i32, 0,
988 : /* 3142*/ OPC_EmitInteger, MVT::i32, 0,
989 : /* 3145*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
990 : /* 3157*/ OPC_EmitInteger, MVT::i32, 0,
991 : /* 3160*/ OPC_EmitInteger, MVT::i32, 0,
992 : /* 3163*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
993 : /* 3175*/ OPC_EmitInteger, MVT::i32, 1,
994 : /* 3178*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
995 : /* 3181*/ OPC_EmitInteger, MVT::i32, 0,
996 : /* 3184*/ OPC_EmitInteger, MVT::i32, 0,
997 : /* 3187*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
998 : MVT::i32, 18/*#Ops*/, 3, 4, 1, 5, 6, 7, 2, 8, 9, 10, 0, 11, 12, 13, 14, 15, 16, 17,
999 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$z, (xor:{ *:[i32] } i32:{ *:[i32] }:$x, -1:{ *:[i32] })), (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y)) - Complexity = 17
1000 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
1001 : /* 3211*/ 0, /*End of Scope*/
1002 : /* 3212*/ 0, /*End of Scope*/
1003 : /* 3213*/ /*Scope*/ 107|128,1/*235*/, /*->3450*/
1004 : /* 3215*/ OPC_MoveChild0,
1005 : /* 3216*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1006 : /* 3219*/ OPC_RecordChild0, // #0 = $x
1007 : /* 3220*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1008 : /* 3231*/ OPC_MoveParent,
1009 : /* 3232*/ OPC_RecordChild1, // #1 = $z
1010 : /* 3233*/ OPC_MoveParent,
1011 : /* 3234*/ OPC_MoveChild1,
1012 : /* 3235*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1013 : /* 3238*/ OPC_Scope, 104, /*->3344*/ // 2 children in Scope
1014 : /* 3240*/ OPC_RecordChild0, // #2 = $y
1015 : /* 3241*/ OPC_CheckChild1Same, 0,
1016 : /* 3243*/ OPC_MoveParent,
1017 : /* 3244*/ OPC_CheckType, MVT::i32,
1018 : /* 3246*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1019 : /* 3248*/ OPC_EmitInteger, MVT::i32, 0,
1020 : /* 3251*/ OPC_EmitInteger, MVT::i32, 0,
1021 : /* 3254*/ OPC_EmitInteger, MVT::i32, 0,
1022 : /* 3257*/ OPC_EmitInteger, MVT::i32, 0,
1023 : /* 3260*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1024 : /* 3272*/ OPC_EmitInteger, MVT::i32, 0,
1025 : /* 3275*/ OPC_EmitInteger, MVT::i32, 0,
1026 : /* 3278*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1027 : /* 3290*/ OPC_EmitInteger, MVT::i32, 0,
1028 : /* 3293*/ OPC_EmitInteger, MVT::i32, 0,
1029 : /* 3296*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1030 : /* 3308*/ OPC_EmitInteger, MVT::i32, 1,
1031 : /* 3311*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1032 : /* 3314*/ OPC_EmitInteger, MVT::i32, 0,
1033 : /* 3317*/ OPC_EmitInteger, MVT::i32, 0,
1034 : /* 3320*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
1035 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 2, 8, 9, 10, 1, 11, 12, 13, 14, 15, 16, 17,
1036 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } (xor:{ *:[i32] } i32:{ *:[i32] }:$x, -1:{ *:[i32] }), i32:{ *:[i32] }:$z), (and:{ *:[i32] } i32:{ *:[i32] }:$y, i32:{ *:[i32] }:$x)) - Complexity = 17
1037 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
1038 : /* 3344*/ /*Scope*/ 104, /*->3449*/
1039 : /* 3345*/ OPC_CheckChild0Same, 0,
1040 : /* 3347*/ OPC_RecordChild1, // #2 = $y
1041 : /* 3348*/ OPC_MoveParent,
1042 : /* 3349*/ OPC_CheckType, MVT::i32,
1043 : /* 3351*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1044 : /* 3353*/ OPC_EmitInteger, MVT::i32, 0,
1045 : /* 3356*/ OPC_EmitInteger, MVT::i32, 0,
1046 : /* 3359*/ OPC_EmitInteger, MVT::i32, 0,
1047 : /* 3362*/ OPC_EmitInteger, MVT::i32, 0,
1048 : /* 3365*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1049 : /* 3377*/ OPC_EmitInteger, MVT::i32, 0,
1050 : /* 3380*/ OPC_EmitInteger, MVT::i32, 0,
1051 : /* 3383*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1052 : /* 3395*/ OPC_EmitInteger, MVT::i32, 0,
1053 : /* 3398*/ OPC_EmitInteger, MVT::i32, 0,
1054 : /* 3401*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1055 : /* 3413*/ OPC_EmitInteger, MVT::i32, 1,
1056 : /* 3416*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1057 : /* 3419*/ OPC_EmitInteger, MVT::i32, 0,
1058 : /* 3422*/ OPC_EmitInteger, MVT::i32, 0,
1059 : /* 3425*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
1060 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 2, 8, 9, 10, 1, 11, 12, 13, 14, 15, 16, 17,
1061 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } (xor:{ *:[i32] } i32:{ *:[i32] }:$x, -1:{ *:[i32] }), i32:{ *:[i32] }:$z), (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y)) - Complexity = 17
1062 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
1063 : /* 3449*/ 0, /*End of Scope*/
1064 : /* 3450*/ /*Scope*/ 39|128,14/*1831*/, /*->5283*/
1065 : /* 3452*/ OPC_RecordChild0, // #0 = $y
1066 : /* 3453*/ OPC_Scope, 72|128,9/*1224*/, /*->4680*/ // 2 children in Scope
1067 : /* 3456*/ OPC_RecordChild1, // #1 = $x
1068 : /* 3457*/ OPC_MoveParent,
1069 : /* 3458*/ OPC_MoveChild1,
1070 : /* 3459*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1071 : /* 3462*/ OPC_Scope, 46|128,2/*302*/, /*->3767*/ // 4 children in Scope
1072 : /* 3465*/ OPC_RecordChild0, // #2 = $z
1073 : /* 3466*/ OPC_MoveChild1,
1074 : /* 3467*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1075 : /* 3470*/ OPC_CheckChild0Same, 1,
1076 : /* 3472*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1077 : /* 3483*/ OPC_MoveParent,
1078 : /* 3484*/ OPC_MoveParent,
1079 : /* 3485*/ OPC_CheckType, MVT::i64,
1080 : /* 3487*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1081 : /* 3489*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
1082 : /* 3492*/ OPC_EmitInteger, MVT::i32, 0,
1083 : /* 3495*/ OPC_EmitInteger, MVT::i32, 0,
1084 : /* 3498*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1085 : /* 3501*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1086 : MVT::i32, 2/*#Ops*/, 1, 6, // Results = #7
1087 : /* 3509*/ OPC_EmitInteger, MVT::i32, 0,
1088 : /* 3512*/ OPC_EmitInteger, MVT::i32, 0,
1089 : /* 3515*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1090 : /* 3527*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1091 : /* 3530*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1092 : MVT::i32, 2/*#Ops*/, 0, 11, // Results = #12
1093 : /* 3538*/ OPC_EmitInteger, MVT::i32, 0,
1094 : /* 3541*/ OPC_EmitInteger, MVT::i32, 0,
1095 : /* 3544*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1096 : /* 3556*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1097 : /* 3559*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1098 : MVT::i32, 2/*#Ops*/, 2, 16, // Results = #17
1099 : /* 3567*/ OPC_EmitInteger, MVT::i32, 0,
1100 : /* 3570*/ OPC_EmitInteger, MVT::i32, 0,
1101 : /* 3573*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1102 : /* 3585*/ OPC_EmitInteger, MVT::i32, 1,
1103 : /* 3588*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1104 : /* 3591*/ OPC_EmitInteger, MVT::i32, 0,
1105 : /* 3594*/ OPC_EmitInteger, MVT::i32, 0,
1106 : /* 3597*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1107 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
1108 : /* 3621*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1109 : /* 3624*/ OPC_EmitInteger, MVT::i32, 0,
1110 : /* 3627*/ OPC_EmitInteger, MVT::i32, 0,
1111 : /* 3630*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1112 : /* 3633*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1113 : MVT::i32, 2/*#Ops*/, 1, 29, // Results = #30
1114 : /* 3641*/ OPC_EmitInteger, MVT::i32, 0,
1115 : /* 3644*/ OPC_EmitInteger, MVT::i32, 0,
1116 : /* 3647*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1117 : /* 3659*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1118 : /* 3662*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1119 : MVT::i32, 2/*#Ops*/, 0, 34, // Results = #35
1120 : /* 3670*/ OPC_EmitInteger, MVT::i32, 0,
1121 : /* 3673*/ OPC_EmitInteger, MVT::i32, 0,
1122 : /* 3676*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1123 : /* 3688*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1124 : /* 3691*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1125 : MVT::i32, 2/*#Ops*/, 2, 39, // Results = #40
1126 : /* 3699*/ OPC_EmitInteger, MVT::i32, 0,
1127 : /* 3702*/ OPC_EmitInteger, MVT::i32, 0,
1128 : /* 3705*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1129 : /* 3717*/ OPC_EmitInteger, MVT::i32, 1,
1130 : /* 3720*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1131 : /* 3723*/ OPC_EmitInteger, MVT::i32, 0,
1132 : /* 3726*/ OPC_EmitInteger, MVT::i32, 0,
1133 : /* 3729*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1134 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
1135 : /* 3753*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1136 : /* 3756*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
1137 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
1138 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$y, i64:{ *:[i64] }:$x), (and:{ *:[i64] } i64:{ *:[i64] }:$z, (xor:{ *:[i64] } i64:{ *:[i64] }:$x, -1:{ *:[i64] }))) - Complexity = 17
1139 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
1140 : /* 3767*/ /*Scope*/ 46|128,2/*302*/, /*->4071*/
1141 : /* 3769*/ OPC_MoveChild0,
1142 : /* 3770*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1143 : /* 3773*/ OPC_CheckChild0Same, 1,
1144 : /* 3775*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1145 : /* 3786*/ OPC_MoveParent,
1146 : /* 3787*/ OPC_RecordChild1, // #2 = $z
1147 : /* 3788*/ OPC_MoveParent,
1148 : /* 3789*/ OPC_CheckType, MVT::i64,
1149 : /* 3791*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1150 : /* 3793*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
1151 : /* 3796*/ OPC_EmitInteger, MVT::i32, 0,
1152 : /* 3799*/ OPC_EmitInteger, MVT::i32, 0,
1153 : /* 3802*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1154 : /* 3805*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1155 : MVT::i32, 2/*#Ops*/, 1, 6, // Results = #7
1156 : /* 3813*/ OPC_EmitInteger, MVT::i32, 0,
1157 : /* 3816*/ OPC_EmitInteger, MVT::i32, 0,
1158 : /* 3819*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1159 : /* 3831*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1160 : /* 3834*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1161 : MVT::i32, 2/*#Ops*/, 0, 11, // Results = #12
1162 : /* 3842*/ OPC_EmitInteger, MVT::i32, 0,
1163 : /* 3845*/ OPC_EmitInteger, MVT::i32, 0,
1164 : /* 3848*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1165 : /* 3860*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1166 : /* 3863*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1167 : MVT::i32, 2/*#Ops*/, 2, 16, // Results = #17
1168 : /* 3871*/ OPC_EmitInteger, MVT::i32, 0,
1169 : /* 3874*/ OPC_EmitInteger, MVT::i32, 0,
1170 : /* 3877*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1171 : /* 3889*/ OPC_EmitInteger, MVT::i32, 1,
1172 : /* 3892*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1173 : /* 3895*/ OPC_EmitInteger, MVT::i32, 0,
1174 : /* 3898*/ OPC_EmitInteger, MVT::i32, 0,
1175 : /* 3901*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1176 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
1177 : /* 3925*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1178 : /* 3928*/ OPC_EmitInteger, MVT::i32, 0,
1179 : /* 3931*/ OPC_EmitInteger, MVT::i32, 0,
1180 : /* 3934*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1181 : /* 3937*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1182 : MVT::i32, 2/*#Ops*/, 1, 29, // Results = #30
1183 : /* 3945*/ OPC_EmitInteger, MVT::i32, 0,
1184 : /* 3948*/ OPC_EmitInteger, MVT::i32, 0,
1185 : /* 3951*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1186 : /* 3963*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1187 : /* 3966*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1188 : MVT::i32, 2/*#Ops*/, 0, 34, // Results = #35
1189 : /* 3974*/ OPC_EmitInteger, MVT::i32, 0,
1190 : /* 3977*/ OPC_EmitInteger, MVT::i32, 0,
1191 : /* 3980*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1192 : /* 3992*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1193 : /* 3995*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1194 : MVT::i32, 2/*#Ops*/, 2, 39, // Results = #40
1195 : /* 4003*/ OPC_EmitInteger, MVT::i32, 0,
1196 : /* 4006*/ OPC_EmitInteger, MVT::i32, 0,
1197 : /* 4009*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1198 : /* 4021*/ OPC_EmitInteger, MVT::i32, 1,
1199 : /* 4024*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1200 : /* 4027*/ OPC_EmitInteger, MVT::i32, 0,
1201 : /* 4030*/ OPC_EmitInteger, MVT::i32, 0,
1202 : /* 4033*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1203 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
1204 : /* 4057*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1205 : /* 4060*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
1206 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
1207 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$y, i64:{ *:[i64] }:$x), (and:{ *:[i64] } (xor:{ *:[i64] } i64:{ *:[i64] }:$x, -1:{ *:[i64] }), i64:{ *:[i64] }:$z)) - Complexity = 17
1208 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
1209 : /* 4071*/ /*Scope*/ 46|128,2/*302*/, /*->4375*/
1210 : /* 4073*/ OPC_RecordChild0, // #2 = $z
1211 : /* 4074*/ OPC_MoveChild1,
1212 : /* 4075*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1213 : /* 4078*/ OPC_CheckChild0Same, 0,
1214 : /* 4080*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1215 : /* 4091*/ OPC_MoveParent,
1216 : /* 4092*/ OPC_MoveParent,
1217 : /* 4093*/ OPC_CheckType, MVT::i64,
1218 : /* 4095*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1219 : /* 4097*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
1220 : /* 4100*/ OPC_EmitInteger, MVT::i32, 0,
1221 : /* 4103*/ OPC_EmitInteger, MVT::i32, 0,
1222 : /* 4106*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1223 : /* 4109*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1224 : MVT::i32, 2/*#Ops*/, 0, 6, // Results = #7
1225 : /* 4117*/ OPC_EmitInteger, MVT::i32, 0,
1226 : /* 4120*/ OPC_EmitInteger, MVT::i32, 0,
1227 : /* 4123*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1228 : /* 4135*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1229 : /* 4138*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1230 : MVT::i32, 2/*#Ops*/, 1, 11, // Results = #12
1231 : /* 4146*/ OPC_EmitInteger, MVT::i32, 0,
1232 : /* 4149*/ OPC_EmitInteger, MVT::i32, 0,
1233 : /* 4152*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1234 : /* 4164*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1235 : /* 4167*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1236 : MVT::i32, 2/*#Ops*/, 2, 16, // Results = #17
1237 : /* 4175*/ OPC_EmitInteger, MVT::i32, 0,
1238 : /* 4178*/ OPC_EmitInteger, MVT::i32, 0,
1239 : /* 4181*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1240 : /* 4193*/ OPC_EmitInteger, MVT::i32, 1,
1241 : /* 4196*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1242 : /* 4199*/ OPC_EmitInteger, MVT::i32, 0,
1243 : /* 4202*/ OPC_EmitInteger, MVT::i32, 0,
1244 : /* 4205*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1245 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
1246 : /* 4229*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1247 : /* 4232*/ OPC_EmitInteger, MVT::i32, 0,
1248 : /* 4235*/ OPC_EmitInteger, MVT::i32, 0,
1249 : /* 4238*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1250 : /* 4241*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1251 : MVT::i32, 2/*#Ops*/, 0, 29, // Results = #30
1252 : /* 4249*/ OPC_EmitInteger, MVT::i32, 0,
1253 : /* 4252*/ OPC_EmitInteger, MVT::i32, 0,
1254 : /* 4255*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1255 : /* 4267*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1256 : /* 4270*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1257 : MVT::i32, 2/*#Ops*/, 1, 34, // Results = #35
1258 : /* 4278*/ OPC_EmitInteger, MVT::i32, 0,
1259 : /* 4281*/ OPC_EmitInteger, MVT::i32, 0,
1260 : /* 4284*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1261 : /* 4296*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1262 : /* 4299*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1263 : MVT::i32, 2/*#Ops*/, 2, 39, // Results = #40
1264 : /* 4307*/ OPC_EmitInteger, MVT::i32, 0,
1265 : /* 4310*/ OPC_EmitInteger, MVT::i32, 0,
1266 : /* 4313*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1267 : /* 4325*/ OPC_EmitInteger, MVT::i32, 1,
1268 : /* 4328*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1269 : /* 4331*/ OPC_EmitInteger, MVT::i32, 0,
1270 : /* 4334*/ OPC_EmitInteger, MVT::i32, 0,
1271 : /* 4337*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1272 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
1273 : /* 4361*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1274 : /* 4364*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
1275 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
1276 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$y), (and:{ *:[i64] } i64:{ *:[i64] }:$z, (xor:{ *:[i64] } i64:{ *:[i64] }:$x, -1:{ *:[i64] }))) - Complexity = 17
1277 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
1278 : /* 4375*/ /*Scope*/ 46|128,2/*302*/, /*->4679*/
1279 : /* 4377*/ OPC_MoveChild0,
1280 : /* 4378*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1281 : /* 4381*/ OPC_CheckChild0Same, 0,
1282 : /* 4383*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1283 : /* 4394*/ OPC_MoveParent,
1284 : /* 4395*/ OPC_RecordChild1, // #2 = $z
1285 : /* 4396*/ OPC_MoveParent,
1286 : /* 4397*/ OPC_CheckType, MVT::i64,
1287 : /* 4399*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1288 : /* 4401*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
1289 : /* 4404*/ OPC_EmitInteger, MVT::i32, 0,
1290 : /* 4407*/ OPC_EmitInteger, MVT::i32, 0,
1291 : /* 4410*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1292 : /* 4413*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1293 : MVT::i32, 2/*#Ops*/, 0, 6, // Results = #7
1294 : /* 4421*/ OPC_EmitInteger, MVT::i32, 0,
1295 : /* 4424*/ OPC_EmitInteger, MVT::i32, 0,
1296 : /* 4427*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1297 : /* 4439*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1298 : /* 4442*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1299 : MVT::i32, 2/*#Ops*/, 1, 11, // Results = #12
1300 : /* 4450*/ OPC_EmitInteger, MVT::i32, 0,
1301 : /* 4453*/ OPC_EmitInteger, MVT::i32, 0,
1302 : /* 4456*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1303 : /* 4468*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1304 : /* 4471*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1305 : MVT::i32, 2/*#Ops*/, 2, 16, // Results = #17
1306 : /* 4479*/ OPC_EmitInteger, MVT::i32, 0,
1307 : /* 4482*/ OPC_EmitInteger, MVT::i32, 0,
1308 : /* 4485*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1309 : /* 4497*/ OPC_EmitInteger, MVT::i32, 1,
1310 : /* 4500*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1311 : /* 4503*/ OPC_EmitInteger, MVT::i32, 0,
1312 : /* 4506*/ OPC_EmitInteger, MVT::i32, 0,
1313 : /* 4509*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1314 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
1315 : /* 4533*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1316 : /* 4536*/ OPC_EmitInteger, MVT::i32, 0,
1317 : /* 4539*/ OPC_EmitInteger, MVT::i32, 0,
1318 : /* 4542*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1319 : /* 4545*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1320 : MVT::i32, 2/*#Ops*/, 0, 29, // Results = #30
1321 : /* 4553*/ OPC_EmitInteger, MVT::i32, 0,
1322 : /* 4556*/ OPC_EmitInteger, MVT::i32, 0,
1323 : /* 4559*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1324 : /* 4571*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1325 : /* 4574*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1326 : MVT::i32, 2/*#Ops*/, 1, 34, // Results = #35
1327 : /* 4582*/ OPC_EmitInteger, MVT::i32, 0,
1328 : /* 4585*/ OPC_EmitInteger, MVT::i32, 0,
1329 : /* 4588*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1330 : /* 4600*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1331 : /* 4603*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1332 : MVT::i32, 2/*#Ops*/, 2, 39, // Results = #40
1333 : /* 4611*/ OPC_EmitInteger, MVT::i32, 0,
1334 : /* 4614*/ OPC_EmitInteger, MVT::i32, 0,
1335 : /* 4617*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1336 : /* 4629*/ OPC_EmitInteger, MVT::i32, 1,
1337 : /* 4632*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1338 : /* 4635*/ OPC_EmitInteger, MVT::i32, 0,
1339 : /* 4638*/ OPC_EmitInteger, MVT::i32, 0,
1340 : /* 4641*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1341 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
1342 : /* 4665*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1343 : /* 4668*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
1344 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
1345 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$y), (and:{ *:[i64] } (xor:{ *:[i64] } i64:{ *:[i64] }:$x, -1:{ *:[i64] }), i64:{ *:[i64] }:$z)) - Complexity = 17
1346 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
1347 : /* 4679*/ 0, /*End of Scope*/
1348 : /* 4680*/ /*Scope*/ 88|128,4/*600*/, /*->5282*/
1349 : /* 4682*/ OPC_MoveChild1,
1350 : /* 4683*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1351 : /* 4686*/ OPC_RecordChild0, // #1 = $x
1352 : /* 4687*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1353 : /* 4698*/ OPC_MoveParent,
1354 : /* 4699*/ OPC_MoveParent,
1355 : /* 4700*/ OPC_MoveChild1,
1356 : /* 4701*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1357 : /* 4704*/ OPC_Scope, 30|128,2/*286*/, /*->4993*/ // 2 children in Scope
1358 : /* 4707*/ OPC_RecordChild0, // #2 = $y
1359 : /* 4708*/ OPC_CheckChild1Same, 1,
1360 : /* 4710*/ OPC_MoveParent,
1361 : /* 4711*/ OPC_CheckType, MVT::i64,
1362 : /* 4713*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1363 : /* 4715*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
1364 : /* 4718*/ OPC_EmitInteger, MVT::i32, 0,
1365 : /* 4721*/ OPC_EmitInteger, MVT::i32, 0,
1366 : /* 4724*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1367 : /* 4727*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1368 : MVT::i32, 2/*#Ops*/, 1, 6, // Results = #7
1369 : /* 4735*/ OPC_EmitInteger, MVT::i32, 0,
1370 : /* 4738*/ OPC_EmitInteger, MVT::i32, 0,
1371 : /* 4741*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1372 : /* 4753*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1373 : /* 4756*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1374 : MVT::i32, 2/*#Ops*/, 2, 11, // Results = #12
1375 : /* 4764*/ OPC_EmitInteger, MVT::i32, 0,
1376 : /* 4767*/ OPC_EmitInteger, MVT::i32, 0,
1377 : /* 4770*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1378 : /* 4782*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1379 : /* 4785*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1380 : MVT::i32, 2/*#Ops*/, 0, 16, // Results = #17
1381 : /* 4793*/ OPC_EmitInteger, MVT::i32, 0,
1382 : /* 4796*/ OPC_EmitInteger, MVT::i32, 0,
1383 : /* 4799*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1384 : /* 4811*/ OPC_EmitInteger, MVT::i32, 1,
1385 : /* 4814*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1386 : /* 4817*/ OPC_EmitInteger, MVT::i32, 0,
1387 : /* 4820*/ OPC_EmitInteger, MVT::i32, 0,
1388 : /* 4823*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1389 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
1390 : /* 4847*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1391 : /* 4850*/ OPC_EmitInteger, MVT::i32, 0,
1392 : /* 4853*/ OPC_EmitInteger, MVT::i32, 0,
1393 : /* 4856*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1394 : /* 4859*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1395 : MVT::i32, 2/*#Ops*/, 1, 29, // Results = #30
1396 : /* 4867*/ OPC_EmitInteger, MVT::i32, 0,
1397 : /* 4870*/ OPC_EmitInteger, MVT::i32, 0,
1398 : /* 4873*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1399 : /* 4885*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1400 : /* 4888*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1401 : MVT::i32, 2/*#Ops*/, 2, 34, // Results = #35
1402 : /* 4896*/ OPC_EmitInteger, MVT::i32, 0,
1403 : /* 4899*/ OPC_EmitInteger, MVT::i32, 0,
1404 : /* 4902*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1405 : /* 4914*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1406 : /* 4917*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1407 : MVT::i32, 2/*#Ops*/, 0, 39, // Results = #40
1408 : /* 4925*/ OPC_EmitInteger, MVT::i32, 0,
1409 : /* 4928*/ OPC_EmitInteger, MVT::i32, 0,
1410 : /* 4931*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1411 : /* 4943*/ OPC_EmitInteger, MVT::i32, 1,
1412 : /* 4946*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1413 : /* 4949*/ OPC_EmitInteger, MVT::i32, 0,
1414 : /* 4952*/ OPC_EmitInteger, MVT::i32, 0,
1415 : /* 4955*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1416 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
1417 : /* 4979*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1418 : /* 4982*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
1419 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
1420 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$z, (xor:{ *:[i64] } i64:{ *:[i64] }:$x, -1:{ *:[i64] })), (and:{ *:[i64] } i64:{ *:[i64] }:$y, i64:{ *:[i64] }:$x)) - Complexity = 17
1421 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
1422 : /* 4993*/ /*Scope*/ 30|128,2/*286*/, /*->5281*/
1423 : /* 4995*/ OPC_CheckChild0Same, 1,
1424 : /* 4997*/ OPC_RecordChild1, // #2 = $y
1425 : /* 4998*/ OPC_MoveParent,
1426 : /* 4999*/ OPC_CheckType, MVT::i64,
1427 : /* 5001*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1428 : /* 5003*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
1429 : /* 5006*/ OPC_EmitInteger, MVT::i32, 0,
1430 : /* 5009*/ OPC_EmitInteger, MVT::i32, 0,
1431 : /* 5012*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1432 : /* 5015*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1433 : MVT::i32, 2/*#Ops*/, 1, 6, // Results = #7
1434 : /* 5023*/ OPC_EmitInteger, MVT::i32, 0,
1435 : /* 5026*/ OPC_EmitInteger, MVT::i32, 0,
1436 : /* 5029*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1437 : /* 5041*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1438 : /* 5044*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1439 : MVT::i32, 2/*#Ops*/, 2, 11, // Results = #12
1440 : /* 5052*/ OPC_EmitInteger, MVT::i32, 0,
1441 : /* 5055*/ OPC_EmitInteger, MVT::i32, 0,
1442 : /* 5058*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1443 : /* 5070*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1444 : /* 5073*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1445 : MVT::i32, 2/*#Ops*/, 0, 16, // Results = #17
1446 : /* 5081*/ OPC_EmitInteger, MVT::i32, 0,
1447 : /* 5084*/ OPC_EmitInteger, MVT::i32, 0,
1448 : /* 5087*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1449 : /* 5099*/ OPC_EmitInteger, MVT::i32, 1,
1450 : /* 5102*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1451 : /* 5105*/ OPC_EmitInteger, MVT::i32, 0,
1452 : /* 5108*/ OPC_EmitInteger, MVT::i32, 0,
1453 : /* 5111*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1454 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
1455 : /* 5135*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1456 : /* 5138*/ OPC_EmitInteger, MVT::i32, 0,
1457 : /* 5141*/ OPC_EmitInteger, MVT::i32, 0,
1458 : /* 5144*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1459 : /* 5147*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1460 : MVT::i32, 2/*#Ops*/, 1, 29, // Results = #30
1461 : /* 5155*/ OPC_EmitInteger, MVT::i32, 0,
1462 : /* 5158*/ OPC_EmitInteger, MVT::i32, 0,
1463 : /* 5161*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1464 : /* 5173*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1465 : /* 5176*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1466 : MVT::i32, 2/*#Ops*/, 2, 34, // Results = #35
1467 : /* 5184*/ OPC_EmitInteger, MVT::i32, 0,
1468 : /* 5187*/ OPC_EmitInteger, MVT::i32, 0,
1469 : /* 5190*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1470 : /* 5202*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1471 : /* 5205*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1472 : MVT::i32, 2/*#Ops*/, 0, 39, // Results = #40
1473 : /* 5213*/ OPC_EmitInteger, MVT::i32, 0,
1474 : /* 5216*/ OPC_EmitInteger, MVT::i32, 0,
1475 : /* 5219*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1476 : /* 5231*/ OPC_EmitInteger, MVT::i32, 1,
1477 : /* 5234*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1478 : /* 5237*/ OPC_EmitInteger, MVT::i32, 0,
1479 : /* 5240*/ OPC_EmitInteger, MVT::i32, 0,
1480 : /* 5243*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1481 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
1482 : /* 5267*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1483 : /* 5270*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
1484 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
1485 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$z, (xor:{ *:[i64] } i64:{ *:[i64] }:$x, -1:{ *:[i64] })), (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$y)) - Complexity = 17
1486 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
1487 : /* 5281*/ 0, /*End of Scope*/
1488 : /* 5282*/ 0, /*End of Scope*/
1489 : /* 5283*/ /*Scope*/ 89|128,4/*601*/, /*->5886*/
1490 : /* 5285*/ OPC_MoveChild0,
1491 : /* 5286*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
1492 : /* 5289*/ OPC_RecordChild0, // #0 = $x
1493 : /* 5290*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1494 : /* 5301*/ OPC_MoveParent,
1495 : /* 5302*/ OPC_RecordChild1, // #1 = $z
1496 : /* 5303*/ OPC_MoveParent,
1497 : /* 5304*/ OPC_MoveChild1,
1498 : /* 5305*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1499 : /* 5308*/ OPC_Scope, 30|128,2/*286*/, /*->5597*/ // 2 children in Scope
1500 : /* 5311*/ OPC_RecordChild0, // #2 = $y
1501 : /* 5312*/ OPC_CheckChild1Same, 0,
1502 : /* 5314*/ OPC_MoveParent,
1503 : /* 5315*/ OPC_CheckType, MVT::i64,
1504 : /* 5317*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1505 : /* 5319*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
1506 : /* 5322*/ OPC_EmitInteger, MVT::i32, 0,
1507 : /* 5325*/ OPC_EmitInteger, MVT::i32, 0,
1508 : /* 5328*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1509 : /* 5331*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1510 : MVT::i32, 2/*#Ops*/, 0, 6, // Results = #7
1511 : /* 5339*/ OPC_EmitInteger, MVT::i32, 0,
1512 : /* 5342*/ OPC_EmitInteger, MVT::i32, 0,
1513 : /* 5345*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1514 : /* 5357*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1515 : /* 5360*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1516 : MVT::i32, 2/*#Ops*/, 2, 11, // Results = #12
1517 : /* 5368*/ OPC_EmitInteger, MVT::i32, 0,
1518 : /* 5371*/ OPC_EmitInteger, MVT::i32, 0,
1519 : /* 5374*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1520 : /* 5386*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1521 : /* 5389*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1522 : MVT::i32, 2/*#Ops*/, 1, 16, // Results = #17
1523 : /* 5397*/ OPC_EmitInteger, MVT::i32, 0,
1524 : /* 5400*/ OPC_EmitInteger, MVT::i32, 0,
1525 : /* 5403*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1526 : /* 5415*/ OPC_EmitInteger, MVT::i32, 1,
1527 : /* 5418*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1528 : /* 5421*/ OPC_EmitInteger, MVT::i32, 0,
1529 : /* 5424*/ OPC_EmitInteger, MVT::i32, 0,
1530 : /* 5427*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1531 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
1532 : /* 5451*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1533 : /* 5454*/ OPC_EmitInteger, MVT::i32, 0,
1534 : /* 5457*/ OPC_EmitInteger, MVT::i32, 0,
1535 : /* 5460*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1536 : /* 5463*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1537 : MVT::i32, 2/*#Ops*/, 0, 29, // Results = #30
1538 : /* 5471*/ OPC_EmitInteger, MVT::i32, 0,
1539 : /* 5474*/ OPC_EmitInteger, MVT::i32, 0,
1540 : /* 5477*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1541 : /* 5489*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1542 : /* 5492*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1543 : MVT::i32, 2/*#Ops*/, 2, 34, // Results = #35
1544 : /* 5500*/ OPC_EmitInteger, MVT::i32, 0,
1545 : /* 5503*/ OPC_EmitInteger, MVT::i32, 0,
1546 : /* 5506*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1547 : /* 5518*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1548 : /* 5521*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1549 : MVT::i32, 2/*#Ops*/, 1, 39, // Results = #40
1550 : /* 5529*/ OPC_EmitInteger, MVT::i32, 0,
1551 : /* 5532*/ OPC_EmitInteger, MVT::i32, 0,
1552 : /* 5535*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1553 : /* 5547*/ OPC_EmitInteger, MVT::i32, 1,
1554 : /* 5550*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1555 : /* 5553*/ OPC_EmitInteger, MVT::i32, 0,
1556 : /* 5556*/ OPC_EmitInteger, MVT::i32, 0,
1557 : /* 5559*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1558 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
1559 : /* 5583*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1560 : /* 5586*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
1561 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
1562 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } (xor:{ *:[i64] } i64:{ *:[i64] }:$x, -1:{ *:[i64] }), i64:{ *:[i64] }:$z), (and:{ *:[i64] } i64:{ *:[i64] }:$y, i64:{ *:[i64] }:$x)) - Complexity = 17
1563 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
1564 : /* 5597*/ /*Scope*/ 30|128,2/*286*/, /*->5885*/
1565 : /* 5599*/ OPC_CheckChild0Same, 0,
1566 : /* 5601*/ OPC_RecordChild1, // #2 = $y
1567 : /* 5602*/ OPC_MoveParent,
1568 : /* 5603*/ OPC_CheckType, MVT::i64,
1569 : /* 5605*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1570 : /* 5607*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
1571 : /* 5610*/ OPC_EmitInteger, MVT::i32, 0,
1572 : /* 5613*/ OPC_EmitInteger, MVT::i32, 0,
1573 : /* 5616*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1574 : /* 5619*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1575 : MVT::i32, 2/*#Ops*/, 0, 6, // Results = #7
1576 : /* 5627*/ OPC_EmitInteger, MVT::i32, 0,
1577 : /* 5630*/ OPC_EmitInteger, MVT::i32, 0,
1578 : /* 5633*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1579 : /* 5645*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1580 : /* 5648*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1581 : MVT::i32, 2/*#Ops*/, 2, 11, // Results = #12
1582 : /* 5656*/ OPC_EmitInteger, MVT::i32, 0,
1583 : /* 5659*/ OPC_EmitInteger, MVT::i32, 0,
1584 : /* 5662*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1585 : /* 5674*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1586 : /* 5677*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1587 : MVT::i32, 2/*#Ops*/, 1, 16, // Results = #17
1588 : /* 5685*/ OPC_EmitInteger, MVT::i32, 0,
1589 : /* 5688*/ OPC_EmitInteger, MVT::i32, 0,
1590 : /* 5691*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1591 : /* 5703*/ OPC_EmitInteger, MVT::i32, 1,
1592 : /* 5706*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1593 : /* 5709*/ OPC_EmitInteger, MVT::i32, 0,
1594 : /* 5712*/ OPC_EmitInteger, MVT::i32, 0,
1595 : /* 5715*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1596 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
1597 : /* 5739*/ OPC_EmitInteger, MVT::i32, R600::sub0,
1598 : /* 5742*/ OPC_EmitInteger, MVT::i32, 0,
1599 : /* 5745*/ OPC_EmitInteger, MVT::i32, 0,
1600 : /* 5748*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1601 : /* 5751*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1602 : MVT::i32, 2/*#Ops*/, 0, 29, // Results = #30
1603 : /* 5759*/ OPC_EmitInteger, MVT::i32, 0,
1604 : /* 5762*/ OPC_EmitInteger, MVT::i32, 0,
1605 : /* 5765*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1606 : /* 5777*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1607 : /* 5780*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1608 : MVT::i32, 2/*#Ops*/, 2, 34, // Results = #35
1609 : /* 5788*/ OPC_EmitInteger, MVT::i32, 0,
1610 : /* 5791*/ OPC_EmitInteger, MVT::i32, 0,
1611 : /* 5794*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1612 : /* 5806*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1613 : /* 5809*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
1614 : MVT::i32, 2/*#Ops*/, 1, 39, // Results = #40
1615 : /* 5817*/ OPC_EmitInteger, MVT::i32, 0,
1616 : /* 5820*/ OPC_EmitInteger, MVT::i32, 0,
1617 : /* 5823*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1618 : /* 5835*/ OPC_EmitInteger, MVT::i32, 1,
1619 : /* 5838*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1620 : /* 5841*/ OPC_EmitInteger, MVT::i32, 0,
1621 : /* 5844*/ OPC_EmitInteger, MVT::i32, 0,
1622 : /* 5847*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
1623 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
1624 : /* 5871*/ OPC_EmitInteger, MVT::i32, R600::sub1,
1625 : /* 5874*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
1626 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
1627 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } (xor:{ *:[i64] } i64:{ *:[i64] }:$x, -1:{ *:[i64] }), i64:{ *:[i64] }:$z), (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$y)) - Complexity = 17
1628 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
1629 : /* 5885*/ 0, /*End of Scope*/
1630 : /* 5886*/ /*Scope*/ 18|128,19/*2450*/, /*->8338*/
1631 : /* 5888*/ OPC_RecordChild0, // #0 = $x
1632 : /* 5889*/ OPC_Scope, 30|128,13/*1694*/, /*->7586*/ // 2 children in Scope
1633 : /* 5892*/ OPC_RecordChild1, // #1 = $z
1634 : /* 5893*/ OPC_MoveParent,
1635 : /* 5894*/ OPC_MoveChild1,
1636 : /* 5895*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
1637 : /* 5898*/ OPC_Scope, 35|128,3/*419*/, /*->6320*/ // 4 children in Scope
1638 : /* 5901*/ OPC_RecordChild0, // #2 = $y
1639 : /* 5902*/ OPC_MoveChild1,
1640 : /* 5903*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
1641 : /* 5906*/ OPC_Scope, 76|128,1/*204*/, /*->6113*/ // 2 children in Scope
1642 : /* 5909*/ OPC_CheckChild0Same, 0,
1643 : /* 5911*/ OPC_CheckChild1Same, 1,
1644 : /* 5913*/ OPC_MoveParent,
1645 : /* 5914*/ OPC_MoveParent,
1646 : /* 5915*/ OPC_CheckType, MVT::i32,
1647 : /* 5917*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1648 : /* 5919*/ OPC_EmitInteger, MVT::i32, 0,
1649 : /* 5922*/ OPC_EmitInteger, MVT::i32, 0,
1650 : /* 5925*/ OPC_EmitInteger, MVT::i32, 0,
1651 : /* 5928*/ OPC_EmitInteger, MVT::i32, 0,
1652 : /* 5931*/ OPC_EmitInteger, MVT::i32, 1,
1653 : /* 5934*/ OPC_EmitInteger, MVT::i32, 0,
1654 : /* 5937*/ OPC_EmitInteger, MVT::i32, 0,
1655 : /* 5940*/ OPC_EmitInteger, MVT::i32, 0,
1656 : /* 5943*/ OPC_EmitInteger, MVT::i32, 0,
1657 : /* 5946*/ OPC_EmitInteger, MVT::i32, 0,
1658 : /* 5949*/ OPC_EmitInteger, MVT::i32, 0,
1659 : /* 5952*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1660 : /* 5964*/ OPC_EmitInteger, MVT::i32, 0,
1661 : /* 5967*/ OPC_EmitInteger, MVT::i32, 0,
1662 : /* 5970*/ OPC_EmitInteger, MVT::i32, 0,
1663 : /* 5973*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1664 : /* 5985*/ OPC_EmitInteger, MVT::i32, 1,
1665 : /* 5988*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1666 : /* 5991*/ OPC_EmitInteger, MVT::i32, 0,
1667 : /* 5994*/ OPC_EmitInteger, MVT::i32, 0,
1668 : /* 5997*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
1669 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 0, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
1670 : /* 6023*/ OPC_EmitInteger, MVT::i32, 0,
1671 : /* 6026*/ OPC_EmitInteger, MVT::i32, 0,
1672 : /* 6029*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1673 : /* 6041*/ OPC_EmitInteger, MVT::i32, 0,
1674 : /* 6044*/ OPC_EmitInteger, MVT::i32, 0,
1675 : /* 6047*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1676 : /* 6059*/ OPC_EmitInteger, MVT::i32, 0,
1677 : /* 6062*/ OPC_EmitInteger, MVT::i32, 0,
1678 : /* 6065*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1679 : /* 6077*/ OPC_EmitInteger, MVT::i32, 1,
1680 : /* 6080*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1681 : /* 6083*/ OPC_EmitInteger, MVT::i32, 0,
1682 : /* 6086*/ OPC_EmitInteger, MVT::i32, 0,
1683 : /* 6089*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
1684 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 1, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
1685 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z), (and:{ *:[i32] } i32:{ *:[i32] }:$y, (or:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z))) - Complexity = 12
1686 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
1687 : /* 6113*/ /*Scope*/ 76|128,1/*204*/, /*->6319*/
1688 : /* 6115*/ OPC_CheckChild0Same, 1,
1689 : /* 6117*/ OPC_CheckChild1Same, 0,
1690 : /* 6119*/ OPC_MoveParent,
1691 : /* 6120*/ OPC_MoveParent,
1692 : /* 6121*/ OPC_CheckType, MVT::i32,
1693 : /* 6123*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1694 : /* 6125*/ OPC_EmitInteger, MVT::i32, 0,
1695 : /* 6128*/ OPC_EmitInteger, MVT::i32, 0,
1696 : /* 6131*/ OPC_EmitInteger, MVT::i32, 0,
1697 : /* 6134*/ OPC_EmitInteger, MVT::i32, 0,
1698 : /* 6137*/ OPC_EmitInteger, MVT::i32, 1,
1699 : /* 6140*/ OPC_EmitInteger, MVT::i32, 0,
1700 : /* 6143*/ OPC_EmitInteger, MVT::i32, 0,
1701 : /* 6146*/ OPC_EmitInteger, MVT::i32, 0,
1702 : /* 6149*/ OPC_EmitInteger, MVT::i32, 0,
1703 : /* 6152*/ OPC_EmitInteger, MVT::i32, 0,
1704 : /* 6155*/ OPC_EmitInteger, MVT::i32, 0,
1705 : /* 6158*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1706 : /* 6170*/ OPC_EmitInteger, MVT::i32, 0,
1707 : /* 6173*/ OPC_EmitInteger, MVT::i32, 0,
1708 : /* 6176*/ OPC_EmitInteger, MVT::i32, 0,
1709 : /* 6179*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1710 : /* 6191*/ OPC_EmitInteger, MVT::i32, 1,
1711 : /* 6194*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1712 : /* 6197*/ OPC_EmitInteger, MVT::i32, 0,
1713 : /* 6200*/ OPC_EmitInteger, MVT::i32, 0,
1714 : /* 6203*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
1715 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 0, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
1716 : /* 6229*/ OPC_EmitInteger, MVT::i32, 0,
1717 : /* 6232*/ OPC_EmitInteger, MVT::i32, 0,
1718 : /* 6235*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1719 : /* 6247*/ OPC_EmitInteger, MVT::i32, 0,
1720 : /* 6250*/ OPC_EmitInteger, MVT::i32, 0,
1721 : /* 6253*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1722 : /* 6265*/ OPC_EmitInteger, MVT::i32, 0,
1723 : /* 6268*/ OPC_EmitInteger, MVT::i32, 0,
1724 : /* 6271*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1725 : /* 6283*/ OPC_EmitInteger, MVT::i32, 1,
1726 : /* 6286*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1727 : /* 6289*/ OPC_EmitInteger, MVT::i32, 0,
1728 : /* 6292*/ OPC_EmitInteger, MVT::i32, 0,
1729 : /* 6295*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
1730 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 1, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
1731 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z), (and:{ *:[i32] } i32:{ *:[i32] }:$y, (or:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x))) - Complexity = 12
1732 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
1733 : /* 6319*/ 0, /*End of Scope*/
1734 : /* 6320*/ /*Scope*/ 36|128,3/*420*/, /*->6742*/
1735 : /* 6322*/ OPC_MoveChild0,
1736 : /* 6323*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
1737 : /* 6326*/ OPC_Scope, 77|128,1/*205*/, /*->6534*/ // 2 children in Scope
1738 : /* 6329*/ OPC_CheckChild0Same, 0,
1739 : /* 6331*/ OPC_CheckChild1Same, 1,
1740 : /* 6333*/ OPC_MoveParent,
1741 : /* 6334*/ OPC_RecordChild1, // #2 = $y
1742 : /* 6335*/ OPC_MoveParent,
1743 : /* 6336*/ OPC_CheckType, MVT::i32,
1744 : /* 6338*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1745 : /* 6340*/ OPC_EmitInteger, MVT::i32, 0,
1746 : /* 6343*/ OPC_EmitInteger, MVT::i32, 0,
1747 : /* 6346*/ OPC_EmitInteger, MVT::i32, 0,
1748 : /* 6349*/ OPC_EmitInteger, MVT::i32, 0,
1749 : /* 6352*/ OPC_EmitInteger, MVT::i32, 1,
1750 : /* 6355*/ OPC_EmitInteger, MVT::i32, 0,
1751 : /* 6358*/ OPC_EmitInteger, MVT::i32, 0,
1752 : /* 6361*/ OPC_EmitInteger, MVT::i32, 0,
1753 : /* 6364*/ OPC_EmitInteger, MVT::i32, 0,
1754 : /* 6367*/ OPC_EmitInteger, MVT::i32, 0,
1755 : /* 6370*/ OPC_EmitInteger, MVT::i32, 0,
1756 : /* 6373*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1757 : /* 6385*/ OPC_EmitInteger, MVT::i32, 0,
1758 : /* 6388*/ OPC_EmitInteger, MVT::i32, 0,
1759 : /* 6391*/ OPC_EmitInteger, MVT::i32, 0,
1760 : /* 6394*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1761 : /* 6406*/ OPC_EmitInteger, MVT::i32, 1,
1762 : /* 6409*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1763 : /* 6412*/ OPC_EmitInteger, MVT::i32, 0,
1764 : /* 6415*/ OPC_EmitInteger, MVT::i32, 0,
1765 : /* 6418*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
1766 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 0, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
1767 : /* 6444*/ OPC_EmitInteger, MVT::i32, 0,
1768 : /* 6447*/ OPC_EmitInteger, MVT::i32, 0,
1769 : /* 6450*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1770 : /* 6462*/ OPC_EmitInteger, MVT::i32, 0,
1771 : /* 6465*/ OPC_EmitInteger, MVT::i32, 0,
1772 : /* 6468*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1773 : /* 6480*/ OPC_EmitInteger, MVT::i32, 0,
1774 : /* 6483*/ OPC_EmitInteger, MVT::i32, 0,
1775 : /* 6486*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1776 : /* 6498*/ OPC_EmitInteger, MVT::i32, 1,
1777 : /* 6501*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1778 : /* 6504*/ OPC_EmitInteger, MVT::i32, 0,
1779 : /* 6507*/ OPC_EmitInteger, MVT::i32, 0,
1780 : /* 6510*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
1781 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 1, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
1782 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z), (and:{ *:[i32] } (or:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z), i32:{ *:[i32] }:$y)) - Complexity = 12
1783 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
1784 : /* 6534*/ /*Scope*/ 77|128,1/*205*/, /*->6741*/
1785 : /* 6536*/ OPC_CheckChild0Same, 1,
1786 : /* 6538*/ OPC_CheckChild1Same, 0,
1787 : /* 6540*/ OPC_MoveParent,
1788 : /* 6541*/ OPC_RecordChild1, // #2 = $y
1789 : /* 6542*/ OPC_MoveParent,
1790 : /* 6543*/ OPC_CheckType, MVT::i32,
1791 : /* 6545*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1792 : /* 6547*/ OPC_EmitInteger, MVT::i32, 0,
1793 : /* 6550*/ OPC_EmitInteger, MVT::i32, 0,
1794 : /* 6553*/ OPC_EmitInteger, MVT::i32, 0,
1795 : /* 6556*/ OPC_EmitInteger, MVT::i32, 0,
1796 : /* 6559*/ OPC_EmitInteger, MVT::i32, 1,
1797 : /* 6562*/ OPC_EmitInteger, MVT::i32, 0,
1798 : /* 6565*/ OPC_EmitInteger, MVT::i32, 0,
1799 : /* 6568*/ OPC_EmitInteger, MVT::i32, 0,
1800 : /* 6571*/ OPC_EmitInteger, MVT::i32, 0,
1801 : /* 6574*/ OPC_EmitInteger, MVT::i32, 0,
1802 : /* 6577*/ OPC_EmitInteger, MVT::i32, 0,
1803 : /* 6580*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1804 : /* 6592*/ OPC_EmitInteger, MVT::i32, 0,
1805 : /* 6595*/ OPC_EmitInteger, MVT::i32, 0,
1806 : /* 6598*/ OPC_EmitInteger, MVT::i32, 0,
1807 : /* 6601*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1808 : /* 6613*/ OPC_EmitInteger, MVT::i32, 1,
1809 : /* 6616*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1810 : /* 6619*/ OPC_EmitInteger, MVT::i32, 0,
1811 : /* 6622*/ OPC_EmitInteger, MVT::i32, 0,
1812 : /* 6625*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
1813 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 0, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
1814 : /* 6651*/ OPC_EmitInteger, MVT::i32, 0,
1815 : /* 6654*/ OPC_EmitInteger, MVT::i32, 0,
1816 : /* 6657*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1817 : /* 6669*/ OPC_EmitInteger, MVT::i32, 0,
1818 : /* 6672*/ OPC_EmitInteger, MVT::i32, 0,
1819 : /* 6675*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1820 : /* 6687*/ OPC_EmitInteger, MVT::i32, 0,
1821 : /* 6690*/ OPC_EmitInteger, MVT::i32, 0,
1822 : /* 6693*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1823 : /* 6705*/ OPC_EmitInteger, MVT::i32, 1,
1824 : /* 6708*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1825 : /* 6711*/ OPC_EmitInteger, MVT::i32, 0,
1826 : /* 6714*/ OPC_EmitInteger, MVT::i32, 0,
1827 : /* 6717*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
1828 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 1, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
1829 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z), (and:{ *:[i32] } (or:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x), i32:{ *:[i32] }:$y)) - Complexity = 12
1830 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
1831 : /* 6741*/ 0, /*End of Scope*/
1832 : /* 6742*/ /*Scope*/ 35|128,3/*419*/, /*->7163*/
1833 : /* 6744*/ OPC_RecordChild0, // #2 = $y
1834 : /* 6745*/ OPC_MoveChild1,
1835 : /* 6746*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
1836 : /* 6749*/ OPC_Scope, 76|128,1/*204*/, /*->6956*/ // 2 children in Scope
1837 : /* 6752*/ OPC_CheckChild0Same, 1,
1838 : /* 6754*/ OPC_CheckChild1Same, 0,
1839 : /* 6756*/ OPC_MoveParent,
1840 : /* 6757*/ OPC_MoveParent,
1841 : /* 6758*/ OPC_CheckType, MVT::i32,
1842 : /* 6760*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1843 : /* 6762*/ OPC_EmitInteger, MVT::i32, 0,
1844 : /* 6765*/ OPC_EmitInteger, MVT::i32, 0,
1845 : /* 6768*/ OPC_EmitInteger, MVT::i32, 0,
1846 : /* 6771*/ OPC_EmitInteger, MVT::i32, 0,
1847 : /* 6774*/ OPC_EmitInteger, MVT::i32, 1,
1848 : /* 6777*/ OPC_EmitInteger, MVT::i32, 0,
1849 : /* 6780*/ OPC_EmitInteger, MVT::i32, 0,
1850 : /* 6783*/ OPC_EmitInteger, MVT::i32, 0,
1851 : /* 6786*/ OPC_EmitInteger, MVT::i32, 0,
1852 : /* 6789*/ OPC_EmitInteger, MVT::i32, 0,
1853 : /* 6792*/ OPC_EmitInteger, MVT::i32, 0,
1854 : /* 6795*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1855 : /* 6807*/ OPC_EmitInteger, MVT::i32, 0,
1856 : /* 6810*/ OPC_EmitInteger, MVT::i32, 0,
1857 : /* 6813*/ OPC_EmitInteger, MVT::i32, 0,
1858 : /* 6816*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1859 : /* 6828*/ OPC_EmitInteger, MVT::i32, 1,
1860 : /* 6831*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1861 : /* 6834*/ OPC_EmitInteger, MVT::i32, 0,
1862 : /* 6837*/ OPC_EmitInteger, MVT::i32, 0,
1863 : /* 6840*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
1864 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 1, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
1865 : /* 6866*/ OPC_EmitInteger, MVT::i32, 0,
1866 : /* 6869*/ OPC_EmitInteger, MVT::i32, 0,
1867 : /* 6872*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1868 : /* 6884*/ OPC_EmitInteger, MVT::i32, 0,
1869 : /* 6887*/ OPC_EmitInteger, MVT::i32, 0,
1870 : /* 6890*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1871 : /* 6902*/ OPC_EmitInteger, MVT::i32, 0,
1872 : /* 6905*/ OPC_EmitInteger, MVT::i32, 0,
1873 : /* 6908*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1874 : /* 6920*/ OPC_EmitInteger, MVT::i32, 1,
1875 : /* 6923*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1876 : /* 6926*/ OPC_EmitInteger, MVT::i32, 0,
1877 : /* 6929*/ OPC_EmitInteger, MVT::i32, 0,
1878 : /* 6932*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
1879 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 0, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
1880 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x), (and:{ *:[i32] } i32:{ *:[i32] }:$y, (or:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z))) - Complexity = 12
1881 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
1882 : /* 6956*/ /*Scope*/ 76|128,1/*204*/, /*->7162*/
1883 : /* 6958*/ OPC_CheckChild0Same, 0,
1884 : /* 6960*/ OPC_CheckChild1Same, 1,
1885 : /* 6962*/ OPC_MoveParent,
1886 : /* 6963*/ OPC_MoveParent,
1887 : /* 6964*/ OPC_CheckType, MVT::i32,
1888 : /* 6966*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1889 : /* 6968*/ OPC_EmitInteger, MVT::i32, 0,
1890 : /* 6971*/ OPC_EmitInteger, MVT::i32, 0,
1891 : /* 6974*/ OPC_EmitInteger, MVT::i32, 0,
1892 : /* 6977*/ OPC_EmitInteger, MVT::i32, 0,
1893 : /* 6980*/ OPC_EmitInteger, MVT::i32, 1,
1894 : /* 6983*/ OPC_EmitInteger, MVT::i32, 0,
1895 : /* 6986*/ OPC_EmitInteger, MVT::i32, 0,
1896 : /* 6989*/ OPC_EmitInteger, MVT::i32, 0,
1897 : /* 6992*/ OPC_EmitInteger, MVT::i32, 0,
1898 : /* 6995*/ OPC_EmitInteger, MVT::i32, 0,
1899 : /* 6998*/ OPC_EmitInteger, MVT::i32, 0,
1900 : /* 7001*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1901 : /* 7013*/ OPC_EmitInteger, MVT::i32, 0,
1902 : /* 7016*/ OPC_EmitInteger, MVT::i32, 0,
1903 : /* 7019*/ OPC_EmitInteger, MVT::i32, 0,
1904 : /* 7022*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1905 : /* 7034*/ OPC_EmitInteger, MVT::i32, 1,
1906 : /* 7037*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1907 : /* 7040*/ OPC_EmitInteger, MVT::i32, 0,
1908 : /* 7043*/ OPC_EmitInteger, MVT::i32, 0,
1909 : /* 7046*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
1910 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 1, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
1911 : /* 7072*/ OPC_EmitInteger, MVT::i32, 0,
1912 : /* 7075*/ OPC_EmitInteger, MVT::i32, 0,
1913 : /* 7078*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1914 : /* 7090*/ OPC_EmitInteger, MVT::i32, 0,
1915 : /* 7093*/ OPC_EmitInteger, MVT::i32, 0,
1916 : /* 7096*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1917 : /* 7108*/ OPC_EmitInteger, MVT::i32, 0,
1918 : /* 7111*/ OPC_EmitInteger, MVT::i32, 0,
1919 : /* 7114*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1920 : /* 7126*/ OPC_EmitInteger, MVT::i32, 1,
1921 : /* 7129*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1922 : /* 7132*/ OPC_EmitInteger, MVT::i32, 0,
1923 : /* 7135*/ OPC_EmitInteger, MVT::i32, 0,
1924 : /* 7138*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
1925 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 0, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
1926 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x), (and:{ *:[i32] } i32:{ *:[i32] }:$y, (or:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x))) - Complexity = 12
1927 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
1928 : /* 7162*/ 0, /*End of Scope*/
1929 : /* 7163*/ /*Scope*/ 36|128,3/*420*/, /*->7585*/
1930 : /* 7165*/ OPC_MoveChild0,
1931 : /* 7166*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
1932 : /* 7169*/ OPC_Scope, 77|128,1/*205*/, /*->7377*/ // 2 children in Scope
1933 : /* 7172*/ OPC_CheckChild0Same, 1,
1934 : /* 7174*/ OPC_CheckChild1Same, 0,
1935 : /* 7176*/ OPC_MoveParent,
1936 : /* 7177*/ OPC_RecordChild1, // #2 = $y
1937 : /* 7178*/ OPC_MoveParent,
1938 : /* 7179*/ OPC_CheckType, MVT::i32,
1939 : /* 7181*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1940 : /* 7183*/ OPC_EmitInteger, MVT::i32, 0,
1941 : /* 7186*/ OPC_EmitInteger, MVT::i32, 0,
1942 : /* 7189*/ OPC_EmitInteger, MVT::i32, 0,
1943 : /* 7192*/ OPC_EmitInteger, MVT::i32, 0,
1944 : /* 7195*/ OPC_EmitInteger, MVT::i32, 1,
1945 : /* 7198*/ OPC_EmitInteger, MVT::i32, 0,
1946 : /* 7201*/ OPC_EmitInteger, MVT::i32, 0,
1947 : /* 7204*/ OPC_EmitInteger, MVT::i32, 0,
1948 : /* 7207*/ OPC_EmitInteger, MVT::i32, 0,
1949 : /* 7210*/ OPC_EmitInteger, MVT::i32, 0,
1950 : /* 7213*/ OPC_EmitInteger, MVT::i32, 0,
1951 : /* 7216*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1952 : /* 7228*/ OPC_EmitInteger, MVT::i32, 0,
1953 : /* 7231*/ OPC_EmitInteger, MVT::i32, 0,
1954 : /* 7234*/ OPC_EmitInteger, MVT::i32, 0,
1955 : /* 7237*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1956 : /* 7249*/ OPC_EmitInteger, MVT::i32, 1,
1957 : /* 7252*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1958 : /* 7255*/ OPC_EmitInteger, MVT::i32, 0,
1959 : /* 7258*/ OPC_EmitInteger, MVT::i32, 0,
1960 : /* 7261*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
1961 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 1, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
1962 : /* 7287*/ OPC_EmitInteger, MVT::i32, 0,
1963 : /* 7290*/ OPC_EmitInteger, MVT::i32, 0,
1964 : /* 7293*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1965 : /* 7305*/ OPC_EmitInteger, MVT::i32, 0,
1966 : /* 7308*/ OPC_EmitInteger, MVT::i32, 0,
1967 : /* 7311*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1968 : /* 7323*/ OPC_EmitInteger, MVT::i32, 0,
1969 : /* 7326*/ OPC_EmitInteger, MVT::i32, 0,
1970 : /* 7329*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1971 : /* 7341*/ OPC_EmitInteger, MVT::i32, 1,
1972 : /* 7344*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
1973 : /* 7347*/ OPC_EmitInteger, MVT::i32, 0,
1974 : /* 7350*/ OPC_EmitInteger, MVT::i32, 0,
1975 : /* 7353*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
1976 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 0, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
1977 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x), (and:{ *:[i32] } (or:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z), i32:{ *:[i32] }:$y)) - Complexity = 12
1978 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
1979 : /* 7377*/ /*Scope*/ 77|128,1/*205*/, /*->7584*/
1980 : /* 7379*/ OPC_CheckChild0Same, 0,
1981 : /* 7381*/ OPC_CheckChild1Same, 1,
1982 : /* 7383*/ OPC_MoveParent,
1983 : /* 7384*/ OPC_RecordChild1, // #2 = $y
1984 : /* 7385*/ OPC_MoveParent,
1985 : /* 7386*/ OPC_CheckType, MVT::i32,
1986 : /* 7388*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
1987 : /* 7390*/ OPC_EmitInteger, MVT::i32, 0,
1988 : /* 7393*/ OPC_EmitInteger, MVT::i32, 0,
1989 : /* 7396*/ OPC_EmitInteger, MVT::i32, 0,
1990 : /* 7399*/ OPC_EmitInteger, MVT::i32, 0,
1991 : /* 7402*/ OPC_EmitInteger, MVT::i32, 1,
1992 : /* 7405*/ OPC_EmitInteger, MVT::i32, 0,
1993 : /* 7408*/ OPC_EmitInteger, MVT::i32, 0,
1994 : /* 7411*/ OPC_EmitInteger, MVT::i32, 0,
1995 : /* 7414*/ OPC_EmitInteger, MVT::i32, 0,
1996 : /* 7417*/ OPC_EmitInteger, MVT::i32, 0,
1997 : /* 7420*/ OPC_EmitInteger, MVT::i32, 0,
1998 : /* 7423*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
1999 : /* 7435*/ OPC_EmitInteger, MVT::i32, 0,
2000 : /* 7438*/ OPC_EmitInteger, MVT::i32, 0,
2001 : /* 7441*/ OPC_EmitInteger, MVT::i32, 0,
2002 : /* 7444*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2003 : /* 7456*/ OPC_EmitInteger, MVT::i32, 1,
2004 : /* 7459*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2005 : /* 7462*/ OPC_EmitInteger, MVT::i32, 0,
2006 : /* 7465*/ OPC_EmitInteger, MVT::i32, 0,
2007 : /* 7468*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2008 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 1, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
2009 : /* 7494*/ OPC_EmitInteger, MVT::i32, 0,
2010 : /* 7497*/ OPC_EmitInteger, MVT::i32, 0,
2011 : /* 7500*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2012 : /* 7512*/ OPC_EmitInteger, MVT::i32, 0,
2013 : /* 7515*/ OPC_EmitInteger, MVT::i32, 0,
2014 : /* 7518*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2015 : /* 7530*/ OPC_EmitInteger, MVT::i32, 0,
2016 : /* 7533*/ OPC_EmitInteger, MVT::i32, 0,
2017 : /* 7536*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2018 : /* 7548*/ OPC_EmitInteger, MVT::i32, 1,
2019 : /* 7551*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2020 : /* 7554*/ OPC_EmitInteger, MVT::i32, 0,
2021 : /* 7557*/ OPC_EmitInteger, MVT::i32, 0,
2022 : /* 7560*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
2023 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 0, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
2024 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x), (and:{ *:[i32] } (or:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x), i32:{ *:[i32] }:$y)) - Complexity = 12
2025 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
2026 : /* 7584*/ 0, /*End of Scope*/
2027 : /* 7585*/ 0, /*End of Scope*/
2028 : /* 7586*/ /*Scope*/ 109|128,5/*749*/, /*->8337*/
2029 : /* 7588*/ OPC_MoveChild1,
2030 : /* 7589*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
2031 : /* 7592*/ OPC_RecordChild0, // #1 = $x
2032 : /* 7593*/ OPC_RecordChild1, // #2 = $z
2033 : /* 7594*/ OPC_MoveParent,
2034 : /* 7595*/ OPC_MoveParent,
2035 : /* 7596*/ OPC_MoveChild1,
2036 : /* 7597*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2037 : /* 7600*/ OPC_Scope, 75|128,1/*203*/, /*->7806*/ // 3 children in Scope
2038 : /* 7603*/ OPC_CheckChild0Same, 1,
2039 : /* 7605*/ OPC_CheckChild1Same, 2,
2040 : /* 7607*/ OPC_MoveParent,
2041 : /* 7608*/ OPC_CheckType, MVT::i32,
2042 : /* 7610*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2043 : /* 7612*/ OPC_EmitInteger, MVT::i32, 0,
2044 : /* 7615*/ OPC_EmitInteger, MVT::i32, 0,
2045 : /* 7618*/ OPC_EmitInteger, MVT::i32, 0,
2046 : /* 7621*/ OPC_EmitInteger, MVT::i32, 0,
2047 : /* 7624*/ OPC_EmitInteger, MVT::i32, 1,
2048 : /* 7627*/ OPC_EmitInteger, MVT::i32, 0,
2049 : /* 7630*/ OPC_EmitInteger, MVT::i32, 0,
2050 : /* 7633*/ OPC_EmitInteger, MVT::i32, 0,
2051 : /* 7636*/ OPC_EmitInteger, MVT::i32, 0,
2052 : /* 7639*/ OPC_EmitInteger, MVT::i32, 0,
2053 : /* 7642*/ OPC_EmitInteger, MVT::i32, 0,
2054 : /* 7645*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2055 : /* 7657*/ OPC_EmitInteger, MVT::i32, 0,
2056 : /* 7660*/ OPC_EmitInteger, MVT::i32, 0,
2057 : /* 7663*/ OPC_EmitInteger, MVT::i32, 0,
2058 : /* 7666*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2059 : /* 7678*/ OPC_EmitInteger, MVT::i32, 1,
2060 : /* 7681*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2061 : /* 7684*/ OPC_EmitInteger, MVT::i32, 0,
2062 : /* 7687*/ OPC_EmitInteger, MVT::i32, 0,
2063 : /* 7690*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2064 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 1, 11, 12, 13, 14, 0, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
2065 : /* 7716*/ OPC_EmitInteger, MVT::i32, 0,
2066 : /* 7719*/ OPC_EmitInteger, MVT::i32, 0,
2067 : /* 7722*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2068 : /* 7734*/ OPC_EmitInteger, MVT::i32, 0,
2069 : /* 7737*/ OPC_EmitInteger, MVT::i32, 0,
2070 : /* 7740*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2071 : /* 7752*/ OPC_EmitInteger, MVT::i32, 0,
2072 : /* 7755*/ OPC_EmitInteger, MVT::i32, 0,
2073 : /* 7758*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2074 : /* 7770*/ OPC_EmitInteger, MVT::i32, 1,
2075 : /* 7773*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2076 : /* 7776*/ OPC_EmitInteger, MVT::i32, 0,
2077 : /* 7779*/ OPC_EmitInteger, MVT::i32, 0,
2078 : /* 7782*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
2079 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 2, 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, 36,
2080 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$y, (or:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z)), (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z)) - Complexity = 12
2081 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
2082 : /* 7806*/ /*Scope*/ 67|128,2/*323*/, /*->8131*/
2083 : /* 7808*/ OPC_CheckChild0Same, 2,
2084 : /* 7810*/ OPC_CheckChild1Same, 1,
2085 : /* 7812*/ OPC_MoveParent,
2086 : /* 7813*/ OPC_CheckType, MVT::i32,
2087 : /* 7815*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2088 : /* 7817*/ OPC_EmitInteger, MVT::i32, 0,
2089 : /* 7820*/ OPC_EmitInteger, MVT::i32, 0,
2090 : /* 7823*/ OPC_EmitInteger, MVT::i32, 0,
2091 : /* 7826*/ OPC_EmitInteger, MVT::i32, 0,
2092 : /* 7829*/ OPC_EmitInteger, MVT::i32, 1,
2093 : /* 7832*/ OPC_EmitInteger, MVT::i32, 0,
2094 : /* 7835*/ OPC_EmitInteger, MVT::i32, 0,
2095 : /* 7838*/ OPC_EmitInteger, MVT::i32, 0,
2096 : /* 7841*/ OPC_EmitInteger, MVT::i32, 0,
2097 : /* 7844*/ OPC_EmitInteger, MVT::i32, 0,
2098 : /* 7847*/ OPC_EmitInteger, MVT::i32, 0,
2099 : /* 7850*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2100 : /* 7862*/ OPC_EmitInteger, MVT::i32, 0,
2101 : /* 7865*/ OPC_EmitInteger, MVT::i32, 0,
2102 : /* 7868*/ OPC_EmitInteger, MVT::i32, 0,
2103 : /* 7871*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2104 : /* 7883*/ OPC_EmitInteger, MVT::i32, 1,
2105 : /* 7886*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2106 : /* 7889*/ OPC_EmitInteger, MVT::i32, 0,
2107 : /* 7892*/ OPC_EmitInteger, MVT::i32, 0,
2108 : /* 7895*/ OPC_Scope, 116, /*->8013*/ // 2 children in Scope
2109 : /* 7897*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2110 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 1, 11, 12, 13, 14, 0, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
2111 : /* 7923*/ OPC_EmitInteger, MVT::i32, 0,
2112 : /* 7926*/ OPC_EmitInteger, MVT::i32, 0,
2113 : /* 7929*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2114 : /* 7941*/ OPC_EmitInteger, MVT::i32, 0,
2115 : /* 7944*/ OPC_EmitInteger, MVT::i32, 0,
2116 : /* 7947*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2117 : /* 7959*/ OPC_EmitInteger, MVT::i32, 0,
2118 : /* 7962*/ OPC_EmitInteger, MVT::i32, 0,
2119 : /* 7965*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2120 : /* 7977*/ OPC_EmitInteger, MVT::i32, 1,
2121 : /* 7980*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2122 : /* 7983*/ OPC_EmitInteger, MVT::i32, 0,
2123 : /* 7986*/ OPC_EmitInteger, MVT::i32, 0,
2124 : /* 7989*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
2125 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 2, 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, 36,
2126 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$y, (or:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z)), (and:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x)) - Complexity = 12
2127 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
2128 : /* 8013*/ /*Scope*/ 116, /*->8130*/
2129 : /* 8014*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2130 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 2, 11, 12, 13, 14, 0, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
2131 : /* 8040*/ OPC_EmitInteger, MVT::i32, 0,
2132 : /* 8043*/ OPC_EmitInteger, MVT::i32, 0,
2133 : /* 8046*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2134 : /* 8058*/ OPC_EmitInteger, MVT::i32, 0,
2135 : /* 8061*/ OPC_EmitInteger, MVT::i32, 0,
2136 : /* 8064*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2137 : /* 8076*/ OPC_EmitInteger, MVT::i32, 0,
2138 : /* 8079*/ OPC_EmitInteger, MVT::i32, 0,
2139 : /* 8082*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2140 : /* 8094*/ OPC_EmitInteger, MVT::i32, 1,
2141 : /* 8097*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2142 : /* 8100*/ OPC_EmitInteger, MVT::i32, 0,
2143 : /* 8103*/ OPC_EmitInteger, MVT::i32, 0,
2144 : /* 8106*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
2145 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 1, 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, 36,
2146 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$y, (or:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x)), (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z)) - Complexity = 12
2147 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
2148 : /* 8130*/ 0, /*End of Scope*/
2149 : /* 8131*/ /*Scope*/ 75|128,1/*203*/, /*->8336*/
2150 : /* 8133*/ OPC_CheckChild0Same, 1,
2151 : /* 8135*/ OPC_CheckChild1Same, 2,
2152 : /* 8137*/ OPC_MoveParent,
2153 : /* 8138*/ OPC_CheckType, MVT::i32,
2154 : /* 8140*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2155 : /* 8142*/ OPC_EmitInteger, MVT::i32, 0,
2156 : /* 8145*/ OPC_EmitInteger, MVT::i32, 0,
2157 : /* 8148*/ OPC_EmitInteger, MVT::i32, 0,
2158 : /* 8151*/ OPC_EmitInteger, MVT::i32, 0,
2159 : /* 8154*/ OPC_EmitInteger, MVT::i32, 1,
2160 : /* 8157*/ OPC_EmitInteger, MVT::i32, 0,
2161 : /* 8160*/ OPC_EmitInteger, MVT::i32, 0,
2162 : /* 8163*/ OPC_EmitInteger, MVT::i32, 0,
2163 : /* 8166*/ OPC_EmitInteger, MVT::i32, 0,
2164 : /* 8169*/ OPC_EmitInteger, MVT::i32, 0,
2165 : /* 8172*/ OPC_EmitInteger, MVT::i32, 0,
2166 : /* 8175*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2167 : /* 8187*/ OPC_EmitInteger, MVT::i32, 0,
2168 : /* 8190*/ OPC_EmitInteger, MVT::i32, 0,
2169 : /* 8193*/ OPC_EmitInteger, MVT::i32, 0,
2170 : /* 8196*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2171 : /* 8208*/ OPC_EmitInteger, MVT::i32, 1,
2172 : /* 8211*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2173 : /* 8214*/ OPC_EmitInteger, MVT::i32, 0,
2174 : /* 8217*/ OPC_EmitInteger, MVT::i32, 0,
2175 : /* 8220*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2176 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 2, 11, 12, 13, 14, 0, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
2177 : /* 8246*/ OPC_EmitInteger, MVT::i32, 0,
2178 : /* 8249*/ OPC_EmitInteger, MVT::i32, 0,
2179 : /* 8252*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2180 : /* 8264*/ OPC_EmitInteger, MVT::i32, 0,
2181 : /* 8267*/ OPC_EmitInteger, MVT::i32, 0,
2182 : /* 8270*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2183 : /* 8282*/ OPC_EmitInteger, MVT::i32, 0,
2184 : /* 8285*/ OPC_EmitInteger, MVT::i32, 0,
2185 : /* 8288*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2186 : /* 8300*/ OPC_EmitInteger, MVT::i32, 1,
2187 : /* 8303*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2188 : /* 8306*/ OPC_EmitInteger, MVT::i32, 0,
2189 : /* 8309*/ OPC_EmitInteger, MVT::i32, 0,
2190 : /* 8312*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
2191 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 1, 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, 36,
2192 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$y, (or:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x)), (and:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x)) - Complexity = 12
2193 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
2194 : /* 8336*/ 0, /*End of Scope*/
2195 : /* 8337*/ 0, /*End of Scope*/
2196 : /* 8338*/ /*Scope*/ 110|128,5/*750*/, /*->9090*/
2197 : /* 8340*/ OPC_MoveChild0,
2198 : /* 8341*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
2199 : /* 8344*/ OPC_RecordChild0, // #0 = $x
2200 : /* 8345*/ OPC_RecordChild1, // #1 = $z
2201 : /* 8346*/ OPC_MoveParent,
2202 : /* 8347*/ OPC_RecordChild1, // #2 = $y
2203 : /* 8348*/ OPC_MoveParent,
2204 : /* 8349*/ OPC_MoveChild1,
2205 : /* 8350*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2206 : /* 8353*/ OPC_Scope, 75|128,1/*203*/, /*->8559*/ // 3 children in Scope
2207 : /* 8356*/ OPC_CheckChild0Same, 0,
2208 : /* 8358*/ OPC_CheckChild1Same, 1,
2209 : /* 8360*/ OPC_MoveParent,
2210 : /* 8361*/ OPC_CheckType, MVT::i32,
2211 : /* 8363*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2212 : /* 8365*/ OPC_EmitInteger, MVT::i32, 0,
2213 : /* 8368*/ OPC_EmitInteger, MVT::i32, 0,
2214 : /* 8371*/ OPC_EmitInteger, MVT::i32, 0,
2215 : /* 8374*/ OPC_EmitInteger, MVT::i32, 0,
2216 : /* 8377*/ OPC_EmitInteger, MVT::i32, 1,
2217 : /* 8380*/ OPC_EmitInteger, MVT::i32, 0,
2218 : /* 8383*/ OPC_EmitInteger, MVT::i32, 0,
2219 : /* 8386*/ OPC_EmitInteger, MVT::i32, 0,
2220 : /* 8389*/ OPC_EmitInteger, MVT::i32, 0,
2221 : /* 8392*/ OPC_EmitInteger, MVT::i32, 0,
2222 : /* 8395*/ OPC_EmitInteger, MVT::i32, 0,
2223 : /* 8398*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2224 : /* 8410*/ OPC_EmitInteger, MVT::i32, 0,
2225 : /* 8413*/ OPC_EmitInteger, MVT::i32, 0,
2226 : /* 8416*/ OPC_EmitInteger, MVT::i32, 0,
2227 : /* 8419*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2228 : /* 8431*/ OPC_EmitInteger, MVT::i32, 1,
2229 : /* 8434*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2230 : /* 8437*/ OPC_EmitInteger, MVT::i32, 0,
2231 : /* 8440*/ OPC_EmitInteger, MVT::i32, 0,
2232 : /* 8443*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2233 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 0, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
2234 : /* 8469*/ OPC_EmitInteger, MVT::i32, 0,
2235 : /* 8472*/ OPC_EmitInteger, MVT::i32, 0,
2236 : /* 8475*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2237 : /* 8487*/ OPC_EmitInteger, MVT::i32, 0,
2238 : /* 8490*/ OPC_EmitInteger, MVT::i32, 0,
2239 : /* 8493*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2240 : /* 8505*/ OPC_EmitInteger, MVT::i32, 0,
2241 : /* 8508*/ OPC_EmitInteger, MVT::i32, 0,
2242 : /* 8511*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2243 : /* 8523*/ OPC_EmitInteger, MVT::i32, 1,
2244 : /* 8526*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2245 : /* 8529*/ OPC_EmitInteger, MVT::i32, 0,
2246 : /* 8532*/ OPC_EmitInteger, MVT::i32, 0,
2247 : /* 8535*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
2248 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 1, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
2249 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } (or:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z), i32:{ *:[i32] }:$y), (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z)) - Complexity = 12
2250 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
2251 : /* 8559*/ /*Scope*/ 67|128,2/*323*/, /*->8884*/
2252 : /* 8561*/ OPC_CheckChild0Same, 1,
2253 : /* 8563*/ OPC_CheckChild1Same, 0,
2254 : /* 8565*/ OPC_MoveParent,
2255 : /* 8566*/ OPC_CheckType, MVT::i32,
2256 : /* 8568*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2257 : /* 8570*/ OPC_EmitInteger, MVT::i32, 0,
2258 : /* 8573*/ OPC_EmitInteger, MVT::i32, 0,
2259 : /* 8576*/ OPC_EmitInteger, MVT::i32, 0,
2260 : /* 8579*/ OPC_EmitInteger, MVT::i32, 0,
2261 : /* 8582*/ OPC_EmitInteger, MVT::i32, 1,
2262 : /* 8585*/ OPC_EmitInteger, MVT::i32, 0,
2263 : /* 8588*/ OPC_EmitInteger, MVT::i32, 0,
2264 : /* 8591*/ OPC_EmitInteger, MVT::i32, 0,
2265 : /* 8594*/ OPC_EmitInteger, MVT::i32, 0,
2266 : /* 8597*/ OPC_EmitInteger, MVT::i32, 0,
2267 : /* 8600*/ OPC_EmitInteger, MVT::i32, 0,
2268 : /* 8603*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2269 : /* 8615*/ OPC_EmitInteger, MVT::i32, 0,
2270 : /* 8618*/ OPC_EmitInteger, MVT::i32, 0,
2271 : /* 8621*/ OPC_EmitInteger, MVT::i32, 0,
2272 : /* 8624*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2273 : /* 8636*/ OPC_EmitInteger, MVT::i32, 1,
2274 : /* 8639*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2275 : /* 8642*/ OPC_EmitInteger, MVT::i32, 0,
2276 : /* 8645*/ OPC_EmitInteger, MVT::i32, 0,
2277 : /* 8648*/ OPC_Scope, 116, /*->8766*/ // 2 children in Scope
2278 : /* 8650*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2279 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 0, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
2280 : /* 8676*/ OPC_EmitInteger, MVT::i32, 0,
2281 : /* 8679*/ OPC_EmitInteger, MVT::i32, 0,
2282 : /* 8682*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2283 : /* 8694*/ OPC_EmitInteger, MVT::i32, 0,
2284 : /* 8697*/ OPC_EmitInteger, MVT::i32, 0,
2285 : /* 8700*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2286 : /* 8712*/ OPC_EmitInteger, MVT::i32, 0,
2287 : /* 8715*/ OPC_EmitInteger, MVT::i32, 0,
2288 : /* 8718*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2289 : /* 8730*/ OPC_EmitInteger, MVT::i32, 1,
2290 : /* 8733*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2291 : /* 8736*/ OPC_EmitInteger, MVT::i32, 0,
2292 : /* 8739*/ OPC_EmitInteger, MVT::i32, 0,
2293 : /* 8742*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
2294 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 1, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
2295 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } (or:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z), i32:{ *:[i32] }:$y), (and:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x)) - Complexity = 12
2296 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
2297 : /* 8766*/ /*Scope*/ 116, /*->8883*/
2298 : /* 8767*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2299 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 1, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
2300 : /* 8793*/ OPC_EmitInteger, MVT::i32, 0,
2301 : /* 8796*/ OPC_EmitInteger, MVT::i32, 0,
2302 : /* 8799*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2303 : /* 8811*/ OPC_EmitInteger, MVT::i32, 0,
2304 : /* 8814*/ OPC_EmitInteger, MVT::i32, 0,
2305 : /* 8817*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2306 : /* 8829*/ OPC_EmitInteger, MVT::i32, 0,
2307 : /* 8832*/ OPC_EmitInteger, MVT::i32, 0,
2308 : /* 8835*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2309 : /* 8847*/ OPC_EmitInteger, MVT::i32, 1,
2310 : /* 8850*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2311 : /* 8853*/ OPC_EmitInteger, MVT::i32, 0,
2312 : /* 8856*/ OPC_EmitInteger, MVT::i32, 0,
2313 : /* 8859*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
2314 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 0, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
2315 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } (or:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x), i32:{ *:[i32] }:$y), (and:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$z)) - Complexity = 12
2316 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
2317 : /* 8883*/ 0, /*End of Scope*/
2318 : /* 8884*/ /*Scope*/ 75|128,1/*203*/, /*->9089*/
2319 : /* 8886*/ OPC_CheckChild0Same, 0,
2320 : /* 8888*/ OPC_CheckChild1Same, 1,
2321 : /* 8890*/ OPC_MoveParent,
2322 : /* 8891*/ OPC_CheckType, MVT::i32,
2323 : /* 8893*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2324 : /* 8895*/ OPC_EmitInteger, MVT::i32, 0,
2325 : /* 8898*/ OPC_EmitInteger, MVT::i32, 0,
2326 : /* 8901*/ OPC_EmitInteger, MVT::i32, 0,
2327 : /* 8904*/ OPC_EmitInteger, MVT::i32, 0,
2328 : /* 8907*/ OPC_EmitInteger, MVT::i32, 1,
2329 : /* 8910*/ OPC_EmitInteger, MVT::i32, 0,
2330 : /* 8913*/ OPC_EmitInteger, MVT::i32, 0,
2331 : /* 8916*/ OPC_EmitInteger, MVT::i32, 0,
2332 : /* 8919*/ OPC_EmitInteger, MVT::i32, 0,
2333 : /* 8922*/ OPC_EmitInteger, MVT::i32, 0,
2334 : /* 8925*/ OPC_EmitInteger, MVT::i32, 0,
2335 : /* 8928*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2336 : /* 8940*/ OPC_EmitInteger, MVT::i32, 0,
2337 : /* 8943*/ OPC_EmitInteger, MVT::i32, 0,
2338 : /* 8946*/ OPC_EmitInteger, MVT::i32, 0,
2339 : /* 8949*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2340 : /* 8961*/ OPC_EmitInteger, MVT::i32, 1,
2341 : /* 8964*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2342 : /* 8967*/ OPC_EmitInteger, MVT::i32, 0,
2343 : /* 8970*/ OPC_EmitInteger, MVT::i32, 0,
2344 : /* 8973*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2345 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 1, 11, 12, 13, 14, 2, 15, 16, 17, 18, 19, 20, 21, 22, // Results = #23
2346 : /* 8999*/ OPC_EmitInteger, MVT::i32, 0,
2347 : /* 9002*/ OPC_EmitInteger, MVT::i32, 0,
2348 : /* 9005*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2349 : /* 9017*/ OPC_EmitInteger, MVT::i32, 0,
2350 : /* 9020*/ OPC_EmitInteger, MVT::i32, 0,
2351 : /* 9023*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2352 : /* 9035*/ OPC_EmitInteger, MVT::i32, 0,
2353 : /* 9038*/ OPC_EmitInteger, MVT::i32, 0,
2354 : /* 9041*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2355 : /* 9053*/ OPC_EmitInteger, MVT::i32, 1,
2356 : /* 9056*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2357 : /* 9059*/ OPC_EmitInteger, MVT::i32, 0,
2358 : /* 9062*/ OPC_EmitInteger, MVT::i32, 0,
2359 : /* 9065*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
2360 : MVT::i32, 18/*#Ops*/, 3, 4, 23, 24, 25, 26, 0, 27, 28, 29, 2, 30, 31, 32, 33, 34, 35, 36,
2361 : // Src: (or:{ *:[i32] } (and:{ *:[i32] } (or:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x), i32:{ *:[i32] }:$y), (and:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$x)) - Complexity = 12
2362 : // Dst: (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } i32:{ *:[i32] }:$x, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)
2363 : /* 9089*/ 0, /*End of Scope*/
2364 : /* 9090*/ /*Scope*/ 108|128,47/*6124*/, /*->15216*/
2365 : /* 9092*/ OPC_RecordChild0, // #0 = $x
2366 : /* 9093*/ OPC_Scope, 14|128,32/*4110*/, /*->13206*/ // 2 children in Scope
2367 : /* 9096*/ OPC_RecordChild1, // #1 = $z
2368 : /* 9097*/ OPC_MoveParent,
2369 : /* 9098*/ OPC_MoveChild1,
2370 : /* 9099*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
2371 : /* 9102*/ OPC_Scope, 127|128,7/*1023*/, /*->10128*/ // 4 children in Scope
2372 : /* 9105*/ OPC_RecordChild0, // #2 = $y
2373 : /* 9106*/ OPC_MoveChild1,
2374 : /* 9107*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
2375 : /* 9110*/ OPC_Scope, 122|128,3/*506*/, /*->9619*/ // 2 children in Scope
2376 : /* 9113*/ OPC_CheckChild0Same, 0,
2377 : /* 9115*/ OPC_CheckChild1Same, 1,
2378 : /* 9117*/ OPC_MoveParent,
2379 : /* 9118*/ OPC_MoveParent,
2380 : /* 9119*/ OPC_CheckType, MVT::i64,
2381 : /* 9121*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2382 : /* 9123*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
2383 : /* 9126*/ OPC_EmitInteger, MVT::i32, 0,
2384 : /* 9129*/ OPC_EmitInteger, MVT::i32, 0,
2385 : /* 9132*/ OPC_EmitInteger, MVT::i32, 0,
2386 : /* 9135*/ OPC_EmitInteger, MVT::i32, 0,
2387 : /* 9138*/ OPC_EmitInteger, MVT::i32, 1,
2388 : /* 9141*/ OPC_EmitInteger, MVT::i32, 0,
2389 : /* 9144*/ OPC_EmitInteger, MVT::i32, 0,
2390 : /* 9147*/ OPC_EmitInteger, MVT::i32, 0,
2391 : /* 9150*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2392 : /* 9153*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2393 : MVT::i32, 2/*#Ops*/, 0, 12, // Results = #13
2394 : /* 9161*/ OPC_EmitInteger, MVT::i32, 0,
2395 : /* 9164*/ OPC_EmitInteger, MVT::i32, 0,
2396 : /* 9167*/ OPC_EmitInteger, MVT::i32, 0,
2397 : /* 9170*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2398 : /* 9182*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2399 : /* 9185*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2400 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
2401 : /* 9193*/ OPC_EmitInteger, MVT::i32, 0,
2402 : /* 9196*/ OPC_EmitInteger, MVT::i32, 0,
2403 : /* 9199*/ OPC_EmitInteger, MVT::i32, 0,
2404 : /* 9202*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2405 : /* 9214*/ OPC_EmitInteger, MVT::i32, 1,
2406 : /* 9217*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2407 : /* 9220*/ OPC_EmitInteger, MVT::i32, 0,
2408 : /* 9223*/ OPC_EmitInteger, MVT::i32, 0,
2409 : /* 9226*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2410 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
2411 : /* 9252*/ OPC_EmitInteger, MVT::i32, 0,
2412 : /* 9255*/ OPC_EmitInteger, MVT::i32, 0,
2413 : /* 9258*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2414 : /* 9270*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2415 : /* 9273*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2416 : MVT::i32, 2/*#Ops*/, 1, 32, // Results = #33
2417 : /* 9281*/ OPC_EmitInteger, MVT::i32, 0,
2418 : /* 9284*/ OPC_EmitInteger, MVT::i32, 0,
2419 : /* 9287*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2420 : /* 9299*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2421 : /* 9302*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2422 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
2423 : /* 9310*/ OPC_EmitInteger, MVT::i32, 0,
2424 : /* 9313*/ OPC_EmitInteger, MVT::i32, 0,
2425 : /* 9316*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2426 : /* 9328*/ OPC_EmitInteger, MVT::i32, 1,
2427 : /* 9331*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2428 : /* 9334*/ OPC_EmitInteger, MVT::i32, 0,
2429 : /* 9337*/ OPC_EmitInteger, MVT::i32, 0,
2430 : /* 9340*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
2431 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
2432 : /* 9364*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2433 : /* 9367*/ OPC_EmitInteger, MVT::i32, 0,
2434 : /* 9370*/ OPC_EmitInteger, MVT::i32, 0,
2435 : /* 9373*/ OPC_EmitInteger, MVT::i32, 0,
2436 : /* 9376*/ OPC_EmitInteger, MVT::i32, 0,
2437 : /* 9379*/ OPC_EmitInteger, MVT::i32, 1,
2438 : /* 9382*/ OPC_EmitInteger, MVT::i32, 0,
2439 : /* 9385*/ OPC_EmitInteger, MVT::i32, 0,
2440 : /* 9388*/ OPC_EmitInteger, MVT::i32, 0,
2441 : /* 9391*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2442 : /* 9394*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2443 : MVT::i32, 2/*#Ops*/, 0, 56, // Results = #57
2444 : /* 9402*/ OPC_EmitInteger, MVT::i32, 0,
2445 : /* 9405*/ OPC_EmitInteger, MVT::i32, 0,
2446 : /* 9408*/ OPC_EmitInteger, MVT::i32, 0,
2447 : /* 9411*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2448 : /* 9423*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2449 : /* 9426*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2450 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
2451 : /* 9434*/ OPC_EmitInteger, MVT::i32, 0,
2452 : /* 9437*/ OPC_EmitInteger, MVT::i32, 0,
2453 : /* 9440*/ OPC_EmitInteger, MVT::i32, 0,
2454 : /* 9443*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2455 : /* 9455*/ OPC_EmitInteger, MVT::i32, 1,
2456 : /* 9458*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2457 : /* 9461*/ OPC_EmitInteger, MVT::i32, 0,
2458 : /* 9464*/ OPC_EmitInteger, MVT::i32, 0,
2459 : /* 9467*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2460 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
2461 : /* 9493*/ OPC_EmitInteger, MVT::i32, 0,
2462 : /* 9496*/ OPC_EmitInteger, MVT::i32, 0,
2463 : /* 9499*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2464 : /* 9511*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2465 : /* 9514*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2466 : MVT::i32, 2/*#Ops*/, 1, 76, // Results = #77
2467 : /* 9522*/ OPC_EmitInteger, MVT::i32, 0,
2468 : /* 9525*/ OPC_EmitInteger, MVT::i32, 0,
2469 : /* 9528*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2470 : /* 9540*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2471 : /* 9543*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2472 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
2473 : /* 9551*/ OPC_EmitInteger, MVT::i32, 0,
2474 : /* 9554*/ OPC_EmitInteger, MVT::i32, 0,
2475 : /* 9557*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2476 : /* 9569*/ OPC_EmitInteger, MVT::i32, 1,
2477 : /* 9572*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2478 : /* 9575*/ OPC_EmitInteger, MVT::i32, 0,
2479 : /* 9578*/ OPC_EmitInteger, MVT::i32, 0,
2480 : /* 9581*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
2481 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
2482 : /* 9605*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2483 : /* 9608*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
2484 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
2485 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z), (and:{ *:[i64] } i64:{ *:[i64] }:$y, (or:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z))) - Complexity = 12
2486 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
2487 : /* 9619*/ /*Scope*/ 122|128,3/*506*/, /*->10127*/
2488 : /* 9621*/ OPC_CheckChild0Same, 1,
2489 : /* 9623*/ OPC_CheckChild1Same, 0,
2490 : /* 9625*/ OPC_MoveParent,
2491 : /* 9626*/ OPC_MoveParent,
2492 : /* 9627*/ OPC_CheckType, MVT::i64,
2493 : /* 9629*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2494 : /* 9631*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
2495 : /* 9634*/ OPC_EmitInteger, MVT::i32, 0,
2496 : /* 9637*/ OPC_EmitInteger, MVT::i32, 0,
2497 : /* 9640*/ OPC_EmitInteger, MVT::i32, 0,
2498 : /* 9643*/ OPC_EmitInteger, MVT::i32, 0,
2499 : /* 9646*/ OPC_EmitInteger, MVT::i32, 1,
2500 : /* 9649*/ OPC_EmitInteger, MVT::i32, 0,
2501 : /* 9652*/ OPC_EmitInteger, MVT::i32, 0,
2502 : /* 9655*/ OPC_EmitInteger, MVT::i32, 0,
2503 : /* 9658*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2504 : /* 9661*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2505 : MVT::i32, 2/*#Ops*/, 0, 12, // Results = #13
2506 : /* 9669*/ OPC_EmitInteger, MVT::i32, 0,
2507 : /* 9672*/ OPC_EmitInteger, MVT::i32, 0,
2508 : /* 9675*/ OPC_EmitInteger, MVT::i32, 0,
2509 : /* 9678*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2510 : /* 9690*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2511 : /* 9693*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2512 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
2513 : /* 9701*/ OPC_EmitInteger, MVT::i32, 0,
2514 : /* 9704*/ OPC_EmitInteger, MVT::i32, 0,
2515 : /* 9707*/ OPC_EmitInteger, MVT::i32, 0,
2516 : /* 9710*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2517 : /* 9722*/ OPC_EmitInteger, MVT::i32, 1,
2518 : /* 9725*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2519 : /* 9728*/ OPC_EmitInteger, MVT::i32, 0,
2520 : /* 9731*/ OPC_EmitInteger, MVT::i32, 0,
2521 : /* 9734*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2522 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
2523 : /* 9760*/ OPC_EmitInteger, MVT::i32, 0,
2524 : /* 9763*/ OPC_EmitInteger, MVT::i32, 0,
2525 : /* 9766*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2526 : /* 9778*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2527 : /* 9781*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2528 : MVT::i32, 2/*#Ops*/, 1, 32, // Results = #33
2529 : /* 9789*/ OPC_EmitInteger, MVT::i32, 0,
2530 : /* 9792*/ OPC_EmitInteger, MVT::i32, 0,
2531 : /* 9795*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2532 : /* 9807*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2533 : /* 9810*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2534 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
2535 : /* 9818*/ OPC_EmitInteger, MVT::i32, 0,
2536 : /* 9821*/ OPC_EmitInteger, MVT::i32, 0,
2537 : /* 9824*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2538 : /* 9836*/ OPC_EmitInteger, MVT::i32, 1,
2539 : /* 9839*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2540 : /* 9842*/ OPC_EmitInteger, MVT::i32, 0,
2541 : /* 9845*/ OPC_EmitInteger, MVT::i32, 0,
2542 : /* 9848*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
2543 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
2544 : /* 9872*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2545 : /* 9875*/ OPC_EmitInteger, MVT::i32, 0,
2546 : /* 9878*/ OPC_EmitInteger, MVT::i32, 0,
2547 : /* 9881*/ OPC_EmitInteger, MVT::i32, 0,
2548 : /* 9884*/ OPC_EmitInteger, MVT::i32, 0,
2549 : /* 9887*/ OPC_EmitInteger, MVT::i32, 1,
2550 : /* 9890*/ OPC_EmitInteger, MVT::i32, 0,
2551 : /* 9893*/ OPC_EmitInteger, MVT::i32, 0,
2552 : /* 9896*/ OPC_EmitInteger, MVT::i32, 0,
2553 : /* 9899*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2554 : /* 9902*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2555 : MVT::i32, 2/*#Ops*/, 0, 56, // Results = #57
2556 : /* 9910*/ OPC_EmitInteger, MVT::i32, 0,
2557 : /* 9913*/ OPC_EmitInteger, MVT::i32, 0,
2558 : /* 9916*/ OPC_EmitInteger, MVT::i32, 0,
2559 : /* 9919*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2560 : /* 9931*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2561 : /* 9934*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2562 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
2563 : /* 9942*/ OPC_EmitInteger, MVT::i32, 0,
2564 : /* 9945*/ OPC_EmitInteger, MVT::i32, 0,
2565 : /* 9948*/ OPC_EmitInteger, MVT::i32, 0,
2566 : /* 9951*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2567 : /* 9963*/ OPC_EmitInteger, MVT::i32, 1,
2568 : /* 9966*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2569 : /* 9969*/ OPC_EmitInteger, MVT::i32, 0,
2570 : /* 9972*/ OPC_EmitInteger, MVT::i32, 0,
2571 : /* 9975*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2572 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
2573 : /* 10001*/ OPC_EmitInteger, MVT::i32, 0,
2574 : /* 10004*/ OPC_EmitInteger, MVT::i32, 0,
2575 : /* 10007*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2576 : /* 10019*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2577 : /* 10022*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2578 : MVT::i32, 2/*#Ops*/, 1, 76, // Results = #77
2579 : /* 10030*/ OPC_EmitInteger, MVT::i32, 0,
2580 : /* 10033*/ OPC_EmitInteger, MVT::i32, 0,
2581 : /* 10036*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2582 : /* 10048*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2583 : /* 10051*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2584 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
2585 : /* 10059*/ OPC_EmitInteger, MVT::i32, 0,
2586 : /* 10062*/ OPC_EmitInteger, MVT::i32, 0,
2587 : /* 10065*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2588 : /* 10077*/ OPC_EmitInteger, MVT::i32, 1,
2589 : /* 10080*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2590 : /* 10083*/ OPC_EmitInteger, MVT::i32, 0,
2591 : /* 10086*/ OPC_EmitInteger, MVT::i32, 0,
2592 : /* 10089*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
2593 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
2594 : /* 10113*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2595 : /* 10116*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
2596 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
2597 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z), (and:{ *:[i64] } i64:{ *:[i64] }:$y, (or:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x))) - Complexity = 12
2598 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
2599 : /* 10127*/ 0, /*End of Scope*/
2600 : /* 10128*/ /*Scope*/ 0|128,8/*1024*/, /*->11154*/
2601 : /* 10130*/ OPC_MoveChild0,
2602 : /* 10131*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
2603 : /* 10134*/ OPC_Scope, 123|128,3/*507*/, /*->10644*/ // 2 children in Scope
2604 : /* 10137*/ OPC_CheckChild0Same, 0,
2605 : /* 10139*/ OPC_CheckChild1Same, 1,
2606 : /* 10141*/ OPC_MoveParent,
2607 : /* 10142*/ OPC_RecordChild1, // #2 = $y
2608 : /* 10143*/ OPC_MoveParent,
2609 : /* 10144*/ OPC_CheckType, MVT::i64,
2610 : /* 10146*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2611 : /* 10148*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
2612 : /* 10151*/ OPC_EmitInteger, MVT::i32, 0,
2613 : /* 10154*/ OPC_EmitInteger, MVT::i32, 0,
2614 : /* 10157*/ OPC_EmitInteger, MVT::i32, 0,
2615 : /* 10160*/ OPC_EmitInteger, MVT::i32, 0,
2616 : /* 10163*/ OPC_EmitInteger, MVT::i32, 1,
2617 : /* 10166*/ OPC_EmitInteger, MVT::i32, 0,
2618 : /* 10169*/ OPC_EmitInteger, MVT::i32, 0,
2619 : /* 10172*/ OPC_EmitInteger, MVT::i32, 0,
2620 : /* 10175*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2621 : /* 10178*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2622 : MVT::i32, 2/*#Ops*/, 0, 12, // Results = #13
2623 : /* 10186*/ OPC_EmitInteger, MVT::i32, 0,
2624 : /* 10189*/ OPC_EmitInteger, MVT::i32, 0,
2625 : /* 10192*/ OPC_EmitInteger, MVT::i32, 0,
2626 : /* 10195*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2627 : /* 10207*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2628 : /* 10210*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2629 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
2630 : /* 10218*/ OPC_EmitInteger, MVT::i32, 0,
2631 : /* 10221*/ OPC_EmitInteger, MVT::i32, 0,
2632 : /* 10224*/ OPC_EmitInteger, MVT::i32, 0,
2633 : /* 10227*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2634 : /* 10239*/ OPC_EmitInteger, MVT::i32, 1,
2635 : /* 10242*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2636 : /* 10245*/ OPC_EmitInteger, MVT::i32, 0,
2637 : /* 10248*/ OPC_EmitInteger, MVT::i32, 0,
2638 : /* 10251*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2639 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
2640 : /* 10277*/ OPC_EmitInteger, MVT::i32, 0,
2641 : /* 10280*/ OPC_EmitInteger, MVT::i32, 0,
2642 : /* 10283*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2643 : /* 10295*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2644 : /* 10298*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2645 : MVT::i32, 2/*#Ops*/, 1, 32, // Results = #33
2646 : /* 10306*/ OPC_EmitInteger, MVT::i32, 0,
2647 : /* 10309*/ OPC_EmitInteger, MVT::i32, 0,
2648 : /* 10312*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2649 : /* 10324*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2650 : /* 10327*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2651 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
2652 : /* 10335*/ OPC_EmitInteger, MVT::i32, 0,
2653 : /* 10338*/ OPC_EmitInteger, MVT::i32, 0,
2654 : /* 10341*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2655 : /* 10353*/ OPC_EmitInteger, MVT::i32, 1,
2656 : /* 10356*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2657 : /* 10359*/ OPC_EmitInteger, MVT::i32, 0,
2658 : /* 10362*/ OPC_EmitInteger, MVT::i32, 0,
2659 : /* 10365*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
2660 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
2661 : /* 10389*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2662 : /* 10392*/ OPC_EmitInteger, MVT::i32, 0,
2663 : /* 10395*/ OPC_EmitInteger, MVT::i32, 0,
2664 : /* 10398*/ OPC_EmitInteger, MVT::i32, 0,
2665 : /* 10401*/ OPC_EmitInteger, MVT::i32, 0,
2666 : /* 10404*/ OPC_EmitInteger, MVT::i32, 1,
2667 : /* 10407*/ OPC_EmitInteger, MVT::i32, 0,
2668 : /* 10410*/ OPC_EmitInteger, MVT::i32, 0,
2669 : /* 10413*/ OPC_EmitInteger, MVT::i32, 0,
2670 : /* 10416*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2671 : /* 10419*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2672 : MVT::i32, 2/*#Ops*/, 0, 56, // Results = #57
2673 : /* 10427*/ OPC_EmitInteger, MVT::i32, 0,
2674 : /* 10430*/ OPC_EmitInteger, MVT::i32, 0,
2675 : /* 10433*/ OPC_EmitInteger, MVT::i32, 0,
2676 : /* 10436*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2677 : /* 10448*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2678 : /* 10451*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2679 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
2680 : /* 10459*/ OPC_EmitInteger, MVT::i32, 0,
2681 : /* 10462*/ OPC_EmitInteger, MVT::i32, 0,
2682 : /* 10465*/ OPC_EmitInteger, MVT::i32, 0,
2683 : /* 10468*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2684 : /* 10480*/ OPC_EmitInteger, MVT::i32, 1,
2685 : /* 10483*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2686 : /* 10486*/ OPC_EmitInteger, MVT::i32, 0,
2687 : /* 10489*/ OPC_EmitInteger, MVT::i32, 0,
2688 : /* 10492*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2689 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
2690 : /* 10518*/ OPC_EmitInteger, MVT::i32, 0,
2691 : /* 10521*/ OPC_EmitInteger, MVT::i32, 0,
2692 : /* 10524*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2693 : /* 10536*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2694 : /* 10539*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2695 : MVT::i32, 2/*#Ops*/, 1, 76, // Results = #77
2696 : /* 10547*/ OPC_EmitInteger, MVT::i32, 0,
2697 : /* 10550*/ OPC_EmitInteger, MVT::i32, 0,
2698 : /* 10553*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2699 : /* 10565*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2700 : /* 10568*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2701 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
2702 : /* 10576*/ OPC_EmitInteger, MVT::i32, 0,
2703 : /* 10579*/ OPC_EmitInteger, MVT::i32, 0,
2704 : /* 10582*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2705 : /* 10594*/ OPC_EmitInteger, MVT::i32, 1,
2706 : /* 10597*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2707 : /* 10600*/ OPC_EmitInteger, MVT::i32, 0,
2708 : /* 10603*/ OPC_EmitInteger, MVT::i32, 0,
2709 : /* 10606*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
2710 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
2711 : /* 10630*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2712 : /* 10633*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
2713 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
2714 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z), (and:{ *:[i64] } (or:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z), i64:{ *:[i64] }:$y)) - Complexity = 12
2715 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
2716 : /* 10644*/ /*Scope*/ 123|128,3/*507*/, /*->11153*/
2717 : /* 10646*/ OPC_CheckChild0Same, 1,
2718 : /* 10648*/ OPC_CheckChild1Same, 0,
2719 : /* 10650*/ OPC_MoveParent,
2720 : /* 10651*/ OPC_RecordChild1, // #2 = $y
2721 : /* 10652*/ OPC_MoveParent,
2722 : /* 10653*/ OPC_CheckType, MVT::i64,
2723 : /* 10655*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2724 : /* 10657*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
2725 : /* 10660*/ OPC_EmitInteger, MVT::i32, 0,
2726 : /* 10663*/ OPC_EmitInteger, MVT::i32, 0,
2727 : /* 10666*/ OPC_EmitInteger, MVT::i32, 0,
2728 : /* 10669*/ OPC_EmitInteger, MVT::i32, 0,
2729 : /* 10672*/ OPC_EmitInteger, MVT::i32, 1,
2730 : /* 10675*/ OPC_EmitInteger, MVT::i32, 0,
2731 : /* 10678*/ OPC_EmitInteger, MVT::i32, 0,
2732 : /* 10681*/ OPC_EmitInteger, MVT::i32, 0,
2733 : /* 10684*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2734 : /* 10687*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2735 : MVT::i32, 2/*#Ops*/, 0, 12, // Results = #13
2736 : /* 10695*/ OPC_EmitInteger, MVT::i32, 0,
2737 : /* 10698*/ OPC_EmitInteger, MVT::i32, 0,
2738 : /* 10701*/ OPC_EmitInteger, MVT::i32, 0,
2739 : /* 10704*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2740 : /* 10716*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2741 : /* 10719*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2742 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
2743 : /* 10727*/ OPC_EmitInteger, MVT::i32, 0,
2744 : /* 10730*/ OPC_EmitInteger, MVT::i32, 0,
2745 : /* 10733*/ OPC_EmitInteger, MVT::i32, 0,
2746 : /* 10736*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2747 : /* 10748*/ OPC_EmitInteger, MVT::i32, 1,
2748 : /* 10751*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2749 : /* 10754*/ OPC_EmitInteger, MVT::i32, 0,
2750 : /* 10757*/ OPC_EmitInteger, MVT::i32, 0,
2751 : /* 10760*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2752 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
2753 : /* 10786*/ OPC_EmitInteger, MVT::i32, 0,
2754 : /* 10789*/ OPC_EmitInteger, MVT::i32, 0,
2755 : /* 10792*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2756 : /* 10804*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2757 : /* 10807*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2758 : MVT::i32, 2/*#Ops*/, 1, 32, // Results = #33
2759 : /* 10815*/ OPC_EmitInteger, MVT::i32, 0,
2760 : /* 10818*/ OPC_EmitInteger, MVT::i32, 0,
2761 : /* 10821*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2762 : /* 10833*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2763 : /* 10836*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2764 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
2765 : /* 10844*/ OPC_EmitInteger, MVT::i32, 0,
2766 : /* 10847*/ OPC_EmitInteger, MVT::i32, 0,
2767 : /* 10850*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2768 : /* 10862*/ OPC_EmitInteger, MVT::i32, 1,
2769 : /* 10865*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2770 : /* 10868*/ OPC_EmitInteger, MVT::i32, 0,
2771 : /* 10871*/ OPC_EmitInteger, MVT::i32, 0,
2772 : /* 10874*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
2773 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
2774 : /* 10898*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2775 : /* 10901*/ OPC_EmitInteger, MVT::i32, 0,
2776 : /* 10904*/ OPC_EmitInteger, MVT::i32, 0,
2777 : /* 10907*/ OPC_EmitInteger, MVT::i32, 0,
2778 : /* 10910*/ OPC_EmitInteger, MVT::i32, 0,
2779 : /* 10913*/ OPC_EmitInteger, MVT::i32, 1,
2780 : /* 10916*/ OPC_EmitInteger, MVT::i32, 0,
2781 : /* 10919*/ OPC_EmitInteger, MVT::i32, 0,
2782 : /* 10922*/ OPC_EmitInteger, MVT::i32, 0,
2783 : /* 10925*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2784 : /* 10928*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2785 : MVT::i32, 2/*#Ops*/, 0, 56, // Results = #57
2786 : /* 10936*/ OPC_EmitInteger, MVT::i32, 0,
2787 : /* 10939*/ OPC_EmitInteger, MVT::i32, 0,
2788 : /* 10942*/ OPC_EmitInteger, MVT::i32, 0,
2789 : /* 10945*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2790 : /* 10957*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2791 : /* 10960*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2792 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
2793 : /* 10968*/ OPC_EmitInteger, MVT::i32, 0,
2794 : /* 10971*/ OPC_EmitInteger, MVT::i32, 0,
2795 : /* 10974*/ OPC_EmitInteger, MVT::i32, 0,
2796 : /* 10977*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2797 : /* 10989*/ OPC_EmitInteger, MVT::i32, 1,
2798 : /* 10992*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2799 : /* 10995*/ OPC_EmitInteger, MVT::i32, 0,
2800 : /* 10998*/ OPC_EmitInteger, MVT::i32, 0,
2801 : /* 11001*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2802 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
2803 : /* 11027*/ OPC_EmitInteger, MVT::i32, 0,
2804 : /* 11030*/ OPC_EmitInteger, MVT::i32, 0,
2805 : /* 11033*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2806 : /* 11045*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2807 : /* 11048*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2808 : MVT::i32, 2/*#Ops*/, 1, 76, // Results = #77
2809 : /* 11056*/ OPC_EmitInteger, MVT::i32, 0,
2810 : /* 11059*/ OPC_EmitInteger, MVT::i32, 0,
2811 : /* 11062*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2812 : /* 11074*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2813 : /* 11077*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2814 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
2815 : /* 11085*/ OPC_EmitInteger, MVT::i32, 0,
2816 : /* 11088*/ OPC_EmitInteger, MVT::i32, 0,
2817 : /* 11091*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2818 : /* 11103*/ OPC_EmitInteger, MVT::i32, 1,
2819 : /* 11106*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2820 : /* 11109*/ OPC_EmitInteger, MVT::i32, 0,
2821 : /* 11112*/ OPC_EmitInteger, MVT::i32, 0,
2822 : /* 11115*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
2823 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
2824 : /* 11139*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2825 : /* 11142*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
2826 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
2827 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z), (and:{ *:[i64] } (or:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x), i64:{ *:[i64] }:$y)) - Complexity = 12
2828 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
2829 : /* 11153*/ 0, /*End of Scope*/
2830 : /* 11154*/ /*Scope*/ 127|128,7/*1023*/, /*->12179*/
2831 : /* 11156*/ OPC_RecordChild0, // #2 = $y
2832 : /* 11157*/ OPC_MoveChild1,
2833 : /* 11158*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
2834 : /* 11161*/ OPC_Scope, 122|128,3/*506*/, /*->11670*/ // 2 children in Scope
2835 : /* 11164*/ OPC_CheckChild0Same, 1,
2836 : /* 11166*/ OPC_CheckChild1Same, 0,
2837 : /* 11168*/ OPC_MoveParent,
2838 : /* 11169*/ OPC_MoveParent,
2839 : /* 11170*/ OPC_CheckType, MVT::i64,
2840 : /* 11172*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2841 : /* 11174*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
2842 : /* 11177*/ OPC_EmitInteger, MVT::i32, 0,
2843 : /* 11180*/ OPC_EmitInteger, MVT::i32, 0,
2844 : /* 11183*/ OPC_EmitInteger, MVT::i32, 0,
2845 : /* 11186*/ OPC_EmitInteger, MVT::i32, 0,
2846 : /* 11189*/ OPC_EmitInteger, MVT::i32, 1,
2847 : /* 11192*/ OPC_EmitInteger, MVT::i32, 0,
2848 : /* 11195*/ OPC_EmitInteger, MVT::i32, 0,
2849 : /* 11198*/ OPC_EmitInteger, MVT::i32, 0,
2850 : /* 11201*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2851 : /* 11204*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2852 : MVT::i32, 2/*#Ops*/, 1, 12, // Results = #13
2853 : /* 11212*/ OPC_EmitInteger, MVT::i32, 0,
2854 : /* 11215*/ OPC_EmitInteger, MVT::i32, 0,
2855 : /* 11218*/ OPC_EmitInteger, MVT::i32, 0,
2856 : /* 11221*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2857 : /* 11233*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2858 : /* 11236*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2859 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
2860 : /* 11244*/ OPC_EmitInteger, MVT::i32, 0,
2861 : /* 11247*/ OPC_EmitInteger, MVT::i32, 0,
2862 : /* 11250*/ OPC_EmitInteger, MVT::i32, 0,
2863 : /* 11253*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2864 : /* 11265*/ OPC_EmitInteger, MVT::i32, 1,
2865 : /* 11268*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2866 : /* 11271*/ OPC_EmitInteger, MVT::i32, 0,
2867 : /* 11274*/ OPC_EmitInteger, MVT::i32, 0,
2868 : /* 11277*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2869 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
2870 : /* 11303*/ OPC_EmitInteger, MVT::i32, 0,
2871 : /* 11306*/ OPC_EmitInteger, MVT::i32, 0,
2872 : /* 11309*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2873 : /* 11321*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2874 : /* 11324*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2875 : MVT::i32, 2/*#Ops*/, 0, 32, // Results = #33
2876 : /* 11332*/ OPC_EmitInteger, MVT::i32, 0,
2877 : /* 11335*/ OPC_EmitInteger, MVT::i32, 0,
2878 : /* 11338*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2879 : /* 11350*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2880 : /* 11353*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2881 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
2882 : /* 11361*/ OPC_EmitInteger, MVT::i32, 0,
2883 : /* 11364*/ OPC_EmitInteger, MVT::i32, 0,
2884 : /* 11367*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2885 : /* 11379*/ OPC_EmitInteger, MVT::i32, 1,
2886 : /* 11382*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2887 : /* 11385*/ OPC_EmitInteger, MVT::i32, 0,
2888 : /* 11388*/ OPC_EmitInteger, MVT::i32, 0,
2889 : /* 11391*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
2890 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
2891 : /* 11415*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2892 : /* 11418*/ OPC_EmitInteger, MVT::i32, 0,
2893 : /* 11421*/ OPC_EmitInteger, MVT::i32, 0,
2894 : /* 11424*/ OPC_EmitInteger, MVT::i32, 0,
2895 : /* 11427*/ OPC_EmitInteger, MVT::i32, 0,
2896 : /* 11430*/ OPC_EmitInteger, MVT::i32, 1,
2897 : /* 11433*/ OPC_EmitInteger, MVT::i32, 0,
2898 : /* 11436*/ OPC_EmitInteger, MVT::i32, 0,
2899 : /* 11439*/ OPC_EmitInteger, MVT::i32, 0,
2900 : /* 11442*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2901 : /* 11445*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2902 : MVT::i32, 2/*#Ops*/, 1, 56, // Results = #57
2903 : /* 11453*/ OPC_EmitInteger, MVT::i32, 0,
2904 : /* 11456*/ OPC_EmitInteger, MVT::i32, 0,
2905 : /* 11459*/ OPC_EmitInteger, MVT::i32, 0,
2906 : /* 11462*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2907 : /* 11474*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2908 : /* 11477*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2909 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
2910 : /* 11485*/ OPC_EmitInteger, MVT::i32, 0,
2911 : /* 11488*/ OPC_EmitInteger, MVT::i32, 0,
2912 : /* 11491*/ OPC_EmitInteger, MVT::i32, 0,
2913 : /* 11494*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2914 : /* 11506*/ OPC_EmitInteger, MVT::i32, 1,
2915 : /* 11509*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2916 : /* 11512*/ OPC_EmitInteger, MVT::i32, 0,
2917 : /* 11515*/ OPC_EmitInteger, MVT::i32, 0,
2918 : /* 11518*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2919 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
2920 : /* 11544*/ OPC_EmitInteger, MVT::i32, 0,
2921 : /* 11547*/ OPC_EmitInteger, MVT::i32, 0,
2922 : /* 11550*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2923 : /* 11562*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2924 : /* 11565*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2925 : MVT::i32, 2/*#Ops*/, 0, 76, // Results = #77
2926 : /* 11573*/ OPC_EmitInteger, MVT::i32, 0,
2927 : /* 11576*/ OPC_EmitInteger, MVT::i32, 0,
2928 : /* 11579*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2929 : /* 11591*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2930 : /* 11594*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2931 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
2932 : /* 11602*/ OPC_EmitInteger, MVT::i32, 0,
2933 : /* 11605*/ OPC_EmitInteger, MVT::i32, 0,
2934 : /* 11608*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2935 : /* 11620*/ OPC_EmitInteger, MVT::i32, 1,
2936 : /* 11623*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2937 : /* 11626*/ OPC_EmitInteger, MVT::i32, 0,
2938 : /* 11629*/ OPC_EmitInteger, MVT::i32, 0,
2939 : /* 11632*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
2940 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
2941 : /* 11656*/ OPC_EmitInteger, MVT::i32, R600::sub1,
2942 : /* 11659*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
2943 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
2944 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x), (and:{ *:[i64] } i64:{ *:[i64] }:$y, (or:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z))) - Complexity = 12
2945 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
2946 : /* 11670*/ /*Scope*/ 122|128,3/*506*/, /*->12178*/
2947 : /* 11672*/ OPC_CheckChild0Same, 0,
2948 : /* 11674*/ OPC_CheckChild1Same, 1,
2949 : /* 11676*/ OPC_MoveParent,
2950 : /* 11677*/ OPC_MoveParent,
2951 : /* 11678*/ OPC_CheckType, MVT::i64,
2952 : /* 11680*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
2953 : /* 11682*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
2954 : /* 11685*/ OPC_EmitInteger, MVT::i32, 0,
2955 : /* 11688*/ OPC_EmitInteger, MVT::i32, 0,
2956 : /* 11691*/ OPC_EmitInteger, MVT::i32, 0,
2957 : /* 11694*/ OPC_EmitInteger, MVT::i32, 0,
2958 : /* 11697*/ OPC_EmitInteger, MVT::i32, 1,
2959 : /* 11700*/ OPC_EmitInteger, MVT::i32, 0,
2960 : /* 11703*/ OPC_EmitInteger, MVT::i32, 0,
2961 : /* 11706*/ OPC_EmitInteger, MVT::i32, 0,
2962 : /* 11709*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2963 : /* 11712*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2964 : MVT::i32, 2/*#Ops*/, 1, 12, // Results = #13
2965 : /* 11720*/ OPC_EmitInteger, MVT::i32, 0,
2966 : /* 11723*/ OPC_EmitInteger, MVT::i32, 0,
2967 : /* 11726*/ OPC_EmitInteger, MVT::i32, 0,
2968 : /* 11729*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2969 : /* 11741*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2970 : /* 11744*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2971 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
2972 : /* 11752*/ OPC_EmitInteger, MVT::i32, 0,
2973 : /* 11755*/ OPC_EmitInteger, MVT::i32, 0,
2974 : /* 11758*/ OPC_EmitInteger, MVT::i32, 0,
2975 : /* 11761*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2976 : /* 11773*/ OPC_EmitInteger, MVT::i32, 1,
2977 : /* 11776*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2978 : /* 11779*/ OPC_EmitInteger, MVT::i32, 0,
2979 : /* 11782*/ OPC_EmitInteger, MVT::i32, 0,
2980 : /* 11785*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
2981 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
2982 : /* 11811*/ OPC_EmitInteger, MVT::i32, 0,
2983 : /* 11814*/ OPC_EmitInteger, MVT::i32, 0,
2984 : /* 11817*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2985 : /* 11829*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2986 : /* 11832*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2987 : MVT::i32, 2/*#Ops*/, 0, 32, // Results = #33
2988 : /* 11840*/ OPC_EmitInteger, MVT::i32, 0,
2989 : /* 11843*/ OPC_EmitInteger, MVT::i32, 0,
2990 : /* 11846*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2991 : /* 11858*/ OPC_EmitInteger, MVT::i32, R600::sub0,
2992 : /* 11861*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
2993 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
2994 : /* 11869*/ OPC_EmitInteger, MVT::i32, 0,
2995 : /* 11872*/ OPC_EmitInteger, MVT::i32, 0,
2996 : /* 11875*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
2997 : /* 11887*/ OPC_EmitInteger, MVT::i32, 1,
2998 : /* 11890*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
2999 : /* 11893*/ OPC_EmitInteger, MVT::i32, 0,
3000 : /* 11896*/ OPC_EmitInteger, MVT::i32, 0,
3001 : /* 11899*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3002 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
3003 : /* 11923*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3004 : /* 11926*/ OPC_EmitInteger, MVT::i32, 0,
3005 : /* 11929*/ OPC_EmitInteger, MVT::i32, 0,
3006 : /* 11932*/ OPC_EmitInteger, MVT::i32, 0,
3007 : /* 11935*/ OPC_EmitInteger, MVT::i32, 0,
3008 : /* 11938*/ OPC_EmitInteger, MVT::i32, 1,
3009 : /* 11941*/ OPC_EmitInteger, MVT::i32, 0,
3010 : /* 11944*/ OPC_EmitInteger, MVT::i32, 0,
3011 : /* 11947*/ OPC_EmitInteger, MVT::i32, 0,
3012 : /* 11950*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3013 : /* 11953*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3014 : MVT::i32, 2/*#Ops*/, 1, 56, // Results = #57
3015 : /* 11961*/ OPC_EmitInteger, MVT::i32, 0,
3016 : /* 11964*/ OPC_EmitInteger, MVT::i32, 0,
3017 : /* 11967*/ OPC_EmitInteger, MVT::i32, 0,
3018 : /* 11970*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3019 : /* 11982*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3020 : /* 11985*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3021 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
3022 : /* 11993*/ OPC_EmitInteger, MVT::i32, 0,
3023 : /* 11996*/ OPC_EmitInteger, MVT::i32, 0,
3024 : /* 11999*/ OPC_EmitInteger, MVT::i32, 0,
3025 : /* 12002*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3026 : /* 12014*/ OPC_EmitInteger, MVT::i32, 1,
3027 : /* 12017*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3028 : /* 12020*/ OPC_EmitInteger, MVT::i32, 0,
3029 : /* 12023*/ OPC_EmitInteger, MVT::i32, 0,
3030 : /* 12026*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3031 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
3032 : /* 12052*/ OPC_EmitInteger, MVT::i32, 0,
3033 : /* 12055*/ OPC_EmitInteger, MVT::i32, 0,
3034 : /* 12058*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3035 : /* 12070*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3036 : /* 12073*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3037 : MVT::i32, 2/*#Ops*/, 0, 76, // Results = #77
3038 : /* 12081*/ OPC_EmitInteger, MVT::i32, 0,
3039 : /* 12084*/ OPC_EmitInteger, MVT::i32, 0,
3040 : /* 12087*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3041 : /* 12099*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3042 : /* 12102*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3043 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
3044 : /* 12110*/ OPC_EmitInteger, MVT::i32, 0,
3045 : /* 12113*/ OPC_EmitInteger, MVT::i32, 0,
3046 : /* 12116*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3047 : /* 12128*/ OPC_EmitInteger, MVT::i32, 1,
3048 : /* 12131*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3049 : /* 12134*/ OPC_EmitInteger, MVT::i32, 0,
3050 : /* 12137*/ OPC_EmitInteger, MVT::i32, 0,
3051 : /* 12140*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3052 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
3053 : /* 12164*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3054 : /* 12167*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
3055 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
3056 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x), (and:{ *:[i64] } i64:{ *:[i64] }:$y, (or:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x))) - Complexity = 12
3057 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
3058 : /* 12178*/ 0, /*End of Scope*/
3059 : /* 12179*/ /*Scope*/ 0|128,8/*1024*/, /*->13205*/
3060 : /* 12181*/ OPC_MoveChild0,
3061 : /* 12182*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
3062 : /* 12185*/ OPC_Scope, 123|128,3/*507*/, /*->12695*/ // 2 children in Scope
3063 : /* 12188*/ OPC_CheckChild0Same, 1,
3064 : /* 12190*/ OPC_CheckChild1Same, 0,
3065 : /* 12192*/ OPC_MoveParent,
3066 : /* 12193*/ OPC_RecordChild1, // #2 = $y
3067 : /* 12194*/ OPC_MoveParent,
3068 : /* 12195*/ OPC_CheckType, MVT::i64,
3069 : /* 12197*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
3070 : /* 12199*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
3071 : /* 12202*/ OPC_EmitInteger, MVT::i32, 0,
3072 : /* 12205*/ OPC_EmitInteger, MVT::i32, 0,
3073 : /* 12208*/ OPC_EmitInteger, MVT::i32, 0,
3074 : /* 12211*/ OPC_EmitInteger, MVT::i32, 0,
3075 : /* 12214*/ OPC_EmitInteger, MVT::i32, 1,
3076 : /* 12217*/ OPC_EmitInteger, MVT::i32, 0,
3077 : /* 12220*/ OPC_EmitInteger, MVT::i32, 0,
3078 : /* 12223*/ OPC_EmitInteger, MVT::i32, 0,
3079 : /* 12226*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3080 : /* 12229*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3081 : MVT::i32, 2/*#Ops*/, 1, 12, // Results = #13
3082 : /* 12237*/ OPC_EmitInteger, MVT::i32, 0,
3083 : /* 12240*/ OPC_EmitInteger, MVT::i32, 0,
3084 : /* 12243*/ OPC_EmitInteger, MVT::i32, 0,
3085 : /* 12246*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3086 : /* 12258*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3087 : /* 12261*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3088 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
3089 : /* 12269*/ OPC_EmitInteger, MVT::i32, 0,
3090 : /* 12272*/ OPC_EmitInteger, MVT::i32, 0,
3091 : /* 12275*/ OPC_EmitInteger, MVT::i32, 0,
3092 : /* 12278*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3093 : /* 12290*/ OPC_EmitInteger, MVT::i32, 1,
3094 : /* 12293*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3095 : /* 12296*/ OPC_EmitInteger, MVT::i32, 0,
3096 : /* 12299*/ OPC_EmitInteger, MVT::i32, 0,
3097 : /* 12302*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3098 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
3099 : /* 12328*/ OPC_EmitInteger, MVT::i32, 0,
3100 : /* 12331*/ OPC_EmitInteger, MVT::i32, 0,
3101 : /* 12334*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3102 : /* 12346*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3103 : /* 12349*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3104 : MVT::i32, 2/*#Ops*/, 0, 32, // Results = #33
3105 : /* 12357*/ OPC_EmitInteger, MVT::i32, 0,
3106 : /* 12360*/ OPC_EmitInteger, MVT::i32, 0,
3107 : /* 12363*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3108 : /* 12375*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3109 : /* 12378*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3110 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
3111 : /* 12386*/ OPC_EmitInteger, MVT::i32, 0,
3112 : /* 12389*/ OPC_EmitInteger, MVT::i32, 0,
3113 : /* 12392*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3114 : /* 12404*/ OPC_EmitInteger, MVT::i32, 1,
3115 : /* 12407*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3116 : /* 12410*/ OPC_EmitInteger, MVT::i32, 0,
3117 : /* 12413*/ OPC_EmitInteger, MVT::i32, 0,
3118 : /* 12416*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3119 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
3120 : /* 12440*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3121 : /* 12443*/ OPC_EmitInteger, MVT::i32, 0,
3122 : /* 12446*/ OPC_EmitInteger, MVT::i32, 0,
3123 : /* 12449*/ OPC_EmitInteger, MVT::i32, 0,
3124 : /* 12452*/ OPC_EmitInteger, MVT::i32, 0,
3125 : /* 12455*/ OPC_EmitInteger, MVT::i32, 1,
3126 : /* 12458*/ OPC_EmitInteger, MVT::i32, 0,
3127 : /* 12461*/ OPC_EmitInteger, MVT::i32, 0,
3128 : /* 12464*/ OPC_EmitInteger, MVT::i32, 0,
3129 : /* 12467*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3130 : /* 12470*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3131 : MVT::i32, 2/*#Ops*/, 1, 56, // Results = #57
3132 : /* 12478*/ OPC_EmitInteger, MVT::i32, 0,
3133 : /* 12481*/ OPC_EmitInteger, MVT::i32, 0,
3134 : /* 12484*/ OPC_EmitInteger, MVT::i32, 0,
3135 : /* 12487*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3136 : /* 12499*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3137 : /* 12502*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3138 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
3139 : /* 12510*/ OPC_EmitInteger, MVT::i32, 0,
3140 : /* 12513*/ OPC_EmitInteger, MVT::i32, 0,
3141 : /* 12516*/ OPC_EmitInteger, MVT::i32, 0,
3142 : /* 12519*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3143 : /* 12531*/ OPC_EmitInteger, MVT::i32, 1,
3144 : /* 12534*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3145 : /* 12537*/ OPC_EmitInteger, MVT::i32, 0,
3146 : /* 12540*/ OPC_EmitInteger, MVT::i32, 0,
3147 : /* 12543*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3148 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
3149 : /* 12569*/ OPC_EmitInteger, MVT::i32, 0,
3150 : /* 12572*/ OPC_EmitInteger, MVT::i32, 0,
3151 : /* 12575*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3152 : /* 12587*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3153 : /* 12590*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3154 : MVT::i32, 2/*#Ops*/, 0, 76, // Results = #77
3155 : /* 12598*/ OPC_EmitInteger, MVT::i32, 0,
3156 : /* 12601*/ OPC_EmitInteger, MVT::i32, 0,
3157 : /* 12604*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3158 : /* 12616*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3159 : /* 12619*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3160 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
3161 : /* 12627*/ OPC_EmitInteger, MVT::i32, 0,
3162 : /* 12630*/ OPC_EmitInteger, MVT::i32, 0,
3163 : /* 12633*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3164 : /* 12645*/ OPC_EmitInteger, MVT::i32, 1,
3165 : /* 12648*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3166 : /* 12651*/ OPC_EmitInteger, MVT::i32, 0,
3167 : /* 12654*/ OPC_EmitInteger, MVT::i32, 0,
3168 : /* 12657*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3169 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
3170 : /* 12681*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3171 : /* 12684*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
3172 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
3173 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x), (and:{ *:[i64] } (or:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z), i64:{ *:[i64] }:$y)) - Complexity = 12
3174 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
3175 : /* 12695*/ /*Scope*/ 123|128,3/*507*/, /*->13204*/
3176 : /* 12697*/ OPC_CheckChild0Same, 0,
3177 : /* 12699*/ OPC_CheckChild1Same, 1,
3178 : /* 12701*/ OPC_MoveParent,
3179 : /* 12702*/ OPC_RecordChild1, // #2 = $y
3180 : /* 12703*/ OPC_MoveParent,
3181 : /* 12704*/ OPC_CheckType, MVT::i64,
3182 : /* 12706*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
3183 : /* 12708*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
3184 : /* 12711*/ OPC_EmitInteger, MVT::i32, 0,
3185 : /* 12714*/ OPC_EmitInteger, MVT::i32, 0,
3186 : /* 12717*/ OPC_EmitInteger, MVT::i32, 0,
3187 : /* 12720*/ OPC_EmitInteger, MVT::i32, 0,
3188 : /* 12723*/ OPC_EmitInteger, MVT::i32, 1,
3189 : /* 12726*/ OPC_EmitInteger, MVT::i32, 0,
3190 : /* 12729*/ OPC_EmitInteger, MVT::i32, 0,
3191 : /* 12732*/ OPC_EmitInteger, MVT::i32, 0,
3192 : /* 12735*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3193 : /* 12738*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3194 : MVT::i32, 2/*#Ops*/, 1, 12, // Results = #13
3195 : /* 12746*/ OPC_EmitInteger, MVT::i32, 0,
3196 : /* 12749*/ OPC_EmitInteger, MVT::i32, 0,
3197 : /* 12752*/ OPC_EmitInteger, MVT::i32, 0,
3198 : /* 12755*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3199 : /* 12767*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3200 : /* 12770*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3201 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
3202 : /* 12778*/ OPC_EmitInteger, MVT::i32, 0,
3203 : /* 12781*/ OPC_EmitInteger, MVT::i32, 0,
3204 : /* 12784*/ OPC_EmitInteger, MVT::i32, 0,
3205 : /* 12787*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3206 : /* 12799*/ OPC_EmitInteger, MVT::i32, 1,
3207 : /* 12802*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3208 : /* 12805*/ OPC_EmitInteger, MVT::i32, 0,
3209 : /* 12808*/ OPC_EmitInteger, MVT::i32, 0,
3210 : /* 12811*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3211 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
3212 : /* 12837*/ OPC_EmitInteger, MVT::i32, 0,
3213 : /* 12840*/ OPC_EmitInteger, MVT::i32, 0,
3214 : /* 12843*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3215 : /* 12855*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3216 : /* 12858*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3217 : MVT::i32, 2/*#Ops*/, 0, 32, // Results = #33
3218 : /* 12866*/ OPC_EmitInteger, MVT::i32, 0,
3219 : /* 12869*/ OPC_EmitInteger, MVT::i32, 0,
3220 : /* 12872*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3221 : /* 12884*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3222 : /* 12887*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3223 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
3224 : /* 12895*/ OPC_EmitInteger, MVT::i32, 0,
3225 : /* 12898*/ OPC_EmitInteger, MVT::i32, 0,
3226 : /* 12901*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3227 : /* 12913*/ OPC_EmitInteger, MVT::i32, 1,
3228 : /* 12916*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3229 : /* 12919*/ OPC_EmitInteger, MVT::i32, 0,
3230 : /* 12922*/ OPC_EmitInteger, MVT::i32, 0,
3231 : /* 12925*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3232 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
3233 : /* 12949*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3234 : /* 12952*/ OPC_EmitInteger, MVT::i32, 0,
3235 : /* 12955*/ OPC_EmitInteger, MVT::i32, 0,
3236 : /* 12958*/ OPC_EmitInteger, MVT::i32, 0,
3237 : /* 12961*/ OPC_EmitInteger, MVT::i32, 0,
3238 : /* 12964*/ OPC_EmitInteger, MVT::i32, 1,
3239 : /* 12967*/ OPC_EmitInteger, MVT::i32, 0,
3240 : /* 12970*/ OPC_EmitInteger, MVT::i32, 0,
3241 : /* 12973*/ OPC_EmitInteger, MVT::i32, 0,
3242 : /* 12976*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3243 : /* 12979*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3244 : MVT::i32, 2/*#Ops*/, 1, 56, // Results = #57
3245 : /* 12987*/ OPC_EmitInteger, MVT::i32, 0,
3246 : /* 12990*/ OPC_EmitInteger, MVT::i32, 0,
3247 : /* 12993*/ OPC_EmitInteger, MVT::i32, 0,
3248 : /* 12996*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3249 : /* 13008*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3250 : /* 13011*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3251 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
3252 : /* 13019*/ OPC_EmitInteger, MVT::i32, 0,
3253 : /* 13022*/ OPC_EmitInteger, MVT::i32, 0,
3254 : /* 13025*/ OPC_EmitInteger, MVT::i32, 0,
3255 : /* 13028*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3256 : /* 13040*/ OPC_EmitInteger, MVT::i32, 1,
3257 : /* 13043*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3258 : /* 13046*/ OPC_EmitInteger, MVT::i32, 0,
3259 : /* 13049*/ OPC_EmitInteger, MVT::i32, 0,
3260 : /* 13052*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3261 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
3262 : /* 13078*/ OPC_EmitInteger, MVT::i32, 0,
3263 : /* 13081*/ OPC_EmitInteger, MVT::i32, 0,
3264 : /* 13084*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3265 : /* 13096*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3266 : /* 13099*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3267 : MVT::i32, 2/*#Ops*/, 0, 76, // Results = #77
3268 : /* 13107*/ OPC_EmitInteger, MVT::i32, 0,
3269 : /* 13110*/ OPC_EmitInteger, MVT::i32, 0,
3270 : /* 13113*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3271 : /* 13125*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3272 : /* 13128*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3273 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
3274 : /* 13136*/ OPC_EmitInteger, MVT::i32, 0,
3275 : /* 13139*/ OPC_EmitInteger, MVT::i32, 0,
3276 : /* 13142*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3277 : /* 13154*/ OPC_EmitInteger, MVT::i32, 1,
3278 : /* 13157*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3279 : /* 13160*/ OPC_EmitInteger, MVT::i32, 0,
3280 : /* 13163*/ OPC_EmitInteger, MVT::i32, 0,
3281 : /* 13166*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3282 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
3283 : /* 13190*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3284 : /* 13193*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
3285 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
3286 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x), (and:{ *:[i64] } (or:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x), i64:{ *:[i64] }:$y)) - Complexity = 12
3287 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
3288 : /* 13204*/ 0, /*End of Scope*/
3289 : /* 13205*/ 0, /*End of Scope*/
3290 : /* 13206*/ /*Scope*/ 87|128,15/*2007*/, /*->15215*/
3291 : /* 13208*/ OPC_MoveChild1,
3292 : /* 13209*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
3293 : /* 13212*/ OPC_RecordChild0, // #1 = $x
3294 : /* 13213*/ OPC_RecordChild1, // #2 = $z
3295 : /* 13214*/ OPC_MoveParent,
3296 : /* 13215*/ OPC_MoveParent,
3297 : /* 13216*/ OPC_MoveChild1,
3298 : /* 13217*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
3299 : /* 13220*/ OPC_Scope, 121|128,3/*505*/, /*->13728*/ // 3 children in Scope
3300 : /* 13223*/ OPC_CheckChild0Same, 1,
3301 : /* 13225*/ OPC_CheckChild1Same, 2,
3302 : /* 13227*/ OPC_MoveParent,
3303 : /* 13228*/ OPC_CheckType, MVT::i64,
3304 : /* 13230*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
3305 : /* 13232*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
3306 : /* 13235*/ OPC_EmitInteger, MVT::i32, 0,
3307 : /* 13238*/ OPC_EmitInteger, MVT::i32, 0,
3308 : /* 13241*/ OPC_EmitInteger, MVT::i32, 0,
3309 : /* 13244*/ OPC_EmitInteger, MVT::i32, 0,
3310 : /* 13247*/ OPC_EmitInteger, MVT::i32, 1,
3311 : /* 13250*/ OPC_EmitInteger, MVT::i32, 0,
3312 : /* 13253*/ OPC_EmitInteger, MVT::i32, 0,
3313 : /* 13256*/ OPC_EmitInteger, MVT::i32, 0,
3314 : /* 13259*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3315 : /* 13262*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3316 : MVT::i32, 2/*#Ops*/, 1, 12, // Results = #13
3317 : /* 13270*/ OPC_EmitInteger, MVT::i32, 0,
3318 : /* 13273*/ OPC_EmitInteger, MVT::i32, 0,
3319 : /* 13276*/ OPC_EmitInteger, MVT::i32, 0,
3320 : /* 13279*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3321 : /* 13291*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3322 : /* 13294*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3323 : MVT::i32, 2/*#Ops*/, 0, 18, // Results = #19
3324 : /* 13302*/ OPC_EmitInteger, MVT::i32, 0,
3325 : /* 13305*/ OPC_EmitInteger, MVT::i32, 0,
3326 : /* 13308*/ OPC_EmitInteger, MVT::i32, 0,
3327 : /* 13311*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3328 : /* 13323*/ OPC_EmitInteger, MVT::i32, 1,
3329 : /* 13326*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3330 : /* 13329*/ OPC_EmitInteger, MVT::i32, 0,
3331 : /* 13332*/ OPC_EmitInteger, MVT::i32, 0,
3332 : /* 13335*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3333 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
3334 : /* 13361*/ OPC_EmitInteger, MVT::i32, 0,
3335 : /* 13364*/ OPC_EmitInteger, MVT::i32, 0,
3336 : /* 13367*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3337 : /* 13379*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3338 : /* 13382*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3339 : MVT::i32, 2/*#Ops*/, 2, 32, // Results = #33
3340 : /* 13390*/ OPC_EmitInteger, MVT::i32, 0,
3341 : /* 13393*/ OPC_EmitInteger, MVT::i32, 0,
3342 : /* 13396*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3343 : /* 13408*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3344 : /* 13411*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3345 : MVT::i32, 2/*#Ops*/, 0, 37, // Results = #38
3346 : /* 13419*/ OPC_EmitInteger, MVT::i32, 0,
3347 : /* 13422*/ OPC_EmitInteger, MVT::i32, 0,
3348 : /* 13425*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3349 : /* 13437*/ OPC_EmitInteger, MVT::i32, 1,
3350 : /* 13440*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3351 : /* 13443*/ OPC_EmitInteger, MVT::i32, 0,
3352 : /* 13446*/ OPC_EmitInteger, MVT::i32, 0,
3353 : /* 13449*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3354 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
3355 : /* 13473*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3356 : /* 13476*/ OPC_EmitInteger, MVT::i32, 0,
3357 : /* 13479*/ OPC_EmitInteger, MVT::i32, 0,
3358 : /* 13482*/ OPC_EmitInteger, MVT::i32, 0,
3359 : /* 13485*/ OPC_EmitInteger, MVT::i32, 0,
3360 : /* 13488*/ OPC_EmitInteger, MVT::i32, 1,
3361 : /* 13491*/ OPC_EmitInteger, MVT::i32, 0,
3362 : /* 13494*/ OPC_EmitInteger, MVT::i32, 0,
3363 : /* 13497*/ OPC_EmitInteger, MVT::i32, 0,
3364 : /* 13500*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3365 : /* 13503*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3366 : MVT::i32, 2/*#Ops*/, 1, 56, // Results = #57
3367 : /* 13511*/ OPC_EmitInteger, MVT::i32, 0,
3368 : /* 13514*/ OPC_EmitInteger, MVT::i32, 0,
3369 : /* 13517*/ OPC_EmitInteger, MVT::i32, 0,
3370 : /* 13520*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3371 : /* 13532*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3372 : /* 13535*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3373 : MVT::i32, 2/*#Ops*/, 0, 62, // Results = #63
3374 : /* 13543*/ OPC_EmitInteger, MVT::i32, 0,
3375 : /* 13546*/ OPC_EmitInteger, MVT::i32, 0,
3376 : /* 13549*/ OPC_EmitInteger, MVT::i32, 0,
3377 : /* 13552*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3378 : /* 13564*/ OPC_EmitInteger, MVT::i32, 1,
3379 : /* 13567*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3380 : /* 13570*/ OPC_EmitInteger, MVT::i32, 0,
3381 : /* 13573*/ OPC_EmitInteger, MVT::i32, 0,
3382 : /* 13576*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3383 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
3384 : /* 13602*/ OPC_EmitInteger, MVT::i32, 0,
3385 : /* 13605*/ OPC_EmitInteger, MVT::i32, 0,
3386 : /* 13608*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3387 : /* 13620*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3388 : /* 13623*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3389 : MVT::i32, 2/*#Ops*/, 2, 76, // Results = #77
3390 : /* 13631*/ OPC_EmitInteger, MVT::i32, 0,
3391 : /* 13634*/ OPC_EmitInteger, MVT::i32, 0,
3392 : /* 13637*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3393 : /* 13649*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3394 : /* 13652*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3395 : MVT::i32, 2/*#Ops*/, 0, 81, // Results = #82
3396 : /* 13660*/ OPC_EmitInteger, MVT::i32, 0,
3397 : /* 13663*/ OPC_EmitInteger, MVT::i32, 0,
3398 : /* 13666*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3399 : /* 13678*/ OPC_EmitInteger, MVT::i32, 1,
3400 : /* 13681*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3401 : /* 13684*/ OPC_EmitInteger, MVT::i32, 0,
3402 : /* 13687*/ OPC_EmitInteger, MVT::i32, 0,
3403 : /* 13690*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3404 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
3405 : /* 13714*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3406 : /* 13717*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
3407 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
3408 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$y, (or:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z)), (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z)) - Complexity = 12
3409 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
3410 : /* 13728*/ /*Scope*/ 81|128,7/*977*/, /*->14707*/
3411 : /* 13730*/ OPC_CheckChild0Same, 2,
3412 : /* 13732*/ OPC_CheckChild1Same, 1,
3413 : /* 13734*/ OPC_MoveParent,
3414 : /* 13735*/ OPC_CheckType, MVT::i64,
3415 : /* 13737*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
3416 : /* 13739*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
3417 : /* 13742*/ OPC_EmitInteger, MVT::i32, 0,
3418 : /* 13745*/ OPC_EmitInteger, MVT::i32, 0,
3419 : /* 13748*/ OPC_EmitInteger, MVT::i32, 0,
3420 : /* 13751*/ OPC_EmitInteger, MVT::i32, 0,
3421 : /* 13754*/ OPC_EmitInteger, MVT::i32, 1,
3422 : /* 13757*/ OPC_EmitInteger, MVT::i32, 0,
3423 : /* 13760*/ OPC_EmitInteger, MVT::i32, 0,
3424 : /* 13763*/ OPC_EmitInteger, MVT::i32, 0,
3425 : /* 13766*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3426 : /* 13769*/ OPC_Scope, 82|128,3/*466*/, /*->14238*/ // 2 children in Scope
3427 : /* 13772*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3428 : MVT::i32, 2/*#Ops*/, 1, 12, // Results = #13
3429 : /* 13780*/ OPC_EmitInteger, MVT::i32, 0,
3430 : /* 13783*/ OPC_EmitInteger, MVT::i32, 0,
3431 : /* 13786*/ OPC_EmitInteger, MVT::i32, 0,
3432 : /* 13789*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3433 : /* 13801*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3434 : /* 13804*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3435 : MVT::i32, 2/*#Ops*/, 0, 18, // Results = #19
3436 : /* 13812*/ OPC_EmitInteger, MVT::i32, 0,
3437 : /* 13815*/ OPC_EmitInteger, MVT::i32, 0,
3438 : /* 13818*/ OPC_EmitInteger, MVT::i32, 0,
3439 : /* 13821*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3440 : /* 13833*/ OPC_EmitInteger, MVT::i32, 1,
3441 : /* 13836*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3442 : /* 13839*/ OPC_EmitInteger, MVT::i32, 0,
3443 : /* 13842*/ OPC_EmitInteger, MVT::i32, 0,
3444 : /* 13845*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3445 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
3446 : /* 13871*/ OPC_EmitInteger, MVT::i32, 0,
3447 : /* 13874*/ OPC_EmitInteger, MVT::i32, 0,
3448 : /* 13877*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3449 : /* 13889*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3450 : /* 13892*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3451 : MVT::i32, 2/*#Ops*/, 2, 32, // Results = #33
3452 : /* 13900*/ OPC_EmitInteger, MVT::i32, 0,
3453 : /* 13903*/ OPC_EmitInteger, MVT::i32, 0,
3454 : /* 13906*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3455 : /* 13918*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3456 : /* 13921*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3457 : MVT::i32, 2/*#Ops*/, 0, 37, // Results = #38
3458 : /* 13929*/ OPC_EmitInteger, MVT::i32, 0,
3459 : /* 13932*/ OPC_EmitInteger, MVT::i32, 0,
3460 : /* 13935*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3461 : /* 13947*/ OPC_EmitInteger, MVT::i32, 1,
3462 : /* 13950*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3463 : /* 13953*/ OPC_EmitInteger, MVT::i32, 0,
3464 : /* 13956*/ OPC_EmitInteger, MVT::i32, 0,
3465 : /* 13959*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3466 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
3467 : /* 13983*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3468 : /* 13986*/ OPC_EmitInteger, MVT::i32, 0,
3469 : /* 13989*/ OPC_EmitInteger, MVT::i32, 0,
3470 : /* 13992*/ OPC_EmitInteger, MVT::i32, 0,
3471 : /* 13995*/ OPC_EmitInteger, MVT::i32, 0,
3472 : /* 13998*/ OPC_EmitInteger, MVT::i32, 1,
3473 : /* 14001*/ OPC_EmitInteger, MVT::i32, 0,
3474 : /* 14004*/ OPC_EmitInteger, MVT::i32, 0,
3475 : /* 14007*/ OPC_EmitInteger, MVT::i32, 0,
3476 : /* 14010*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3477 : /* 14013*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3478 : MVT::i32, 2/*#Ops*/, 1, 56, // Results = #57
3479 : /* 14021*/ OPC_EmitInteger, MVT::i32, 0,
3480 : /* 14024*/ OPC_EmitInteger, MVT::i32, 0,
3481 : /* 14027*/ OPC_EmitInteger, MVT::i32, 0,
3482 : /* 14030*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3483 : /* 14042*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3484 : /* 14045*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3485 : MVT::i32, 2/*#Ops*/, 0, 62, // Results = #63
3486 : /* 14053*/ OPC_EmitInteger, MVT::i32, 0,
3487 : /* 14056*/ OPC_EmitInteger, MVT::i32, 0,
3488 : /* 14059*/ OPC_EmitInteger, MVT::i32, 0,
3489 : /* 14062*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3490 : /* 14074*/ OPC_EmitInteger, MVT::i32, 1,
3491 : /* 14077*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3492 : /* 14080*/ OPC_EmitInteger, MVT::i32, 0,
3493 : /* 14083*/ OPC_EmitInteger, MVT::i32, 0,
3494 : /* 14086*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3495 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
3496 : /* 14112*/ OPC_EmitInteger, MVT::i32, 0,
3497 : /* 14115*/ OPC_EmitInteger, MVT::i32, 0,
3498 : /* 14118*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3499 : /* 14130*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3500 : /* 14133*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3501 : MVT::i32, 2/*#Ops*/, 2, 76, // Results = #77
3502 : /* 14141*/ OPC_EmitInteger, MVT::i32, 0,
3503 : /* 14144*/ OPC_EmitInteger, MVT::i32, 0,
3504 : /* 14147*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3505 : /* 14159*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3506 : /* 14162*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3507 : MVT::i32, 2/*#Ops*/, 0, 81, // Results = #82
3508 : /* 14170*/ OPC_EmitInteger, MVT::i32, 0,
3509 : /* 14173*/ OPC_EmitInteger, MVT::i32, 0,
3510 : /* 14176*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3511 : /* 14188*/ OPC_EmitInteger, MVT::i32, 1,
3512 : /* 14191*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3513 : /* 14194*/ OPC_EmitInteger, MVT::i32, 0,
3514 : /* 14197*/ OPC_EmitInteger, MVT::i32, 0,
3515 : /* 14200*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3516 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
3517 : /* 14224*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3518 : /* 14227*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
3519 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
3520 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$y, (or:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z)), (and:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x)) - Complexity = 12
3521 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
3522 : /* 14238*/ /*Scope*/ 82|128,3/*466*/, /*->14706*/
3523 : /* 14240*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3524 : MVT::i32, 2/*#Ops*/, 2, 12, // Results = #13
3525 : /* 14248*/ OPC_EmitInteger, MVT::i32, 0,
3526 : /* 14251*/ OPC_EmitInteger, MVT::i32, 0,
3527 : /* 14254*/ OPC_EmitInteger, MVT::i32, 0,
3528 : /* 14257*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3529 : /* 14269*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3530 : /* 14272*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3531 : MVT::i32, 2/*#Ops*/, 0, 18, // Results = #19
3532 : /* 14280*/ OPC_EmitInteger, MVT::i32, 0,
3533 : /* 14283*/ OPC_EmitInteger, MVT::i32, 0,
3534 : /* 14286*/ OPC_EmitInteger, MVT::i32, 0,
3535 : /* 14289*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3536 : /* 14301*/ OPC_EmitInteger, MVT::i32, 1,
3537 : /* 14304*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3538 : /* 14307*/ OPC_EmitInteger, MVT::i32, 0,
3539 : /* 14310*/ OPC_EmitInteger, MVT::i32, 0,
3540 : /* 14313*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3541 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
3542 : /* 14339*/ OPC_EmitInteger, MVT::i32, 0,
3543 : /* 14342*/ OPC_EmitInteger, MVT::i32, 0,
3544 : /* 14345*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3545 : /* 14357*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3546 : /* 14360*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3547 : MVT::i32, 2/*#Ops*/, 1, 32, // Results = #33
3548 : /* 14368*/ OPC_EmitInteger, MVT::i32, 0,
3549 : /* 14371*/ OPC_EmitInteger, MVT::i32, 0,
3550 : /* 14374*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3551 : /* 14386*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3552 : /* 14389*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3553 : MVT::i32, 2/*#Ops*/, 0, 37, // Results = #38
3554 : /* 14397*/ OPC_EmitInteger, MVT::i32, 0,
3555 : /* 14400*/ OPC_EmitInteger, MVT::i32, 0,
3556 : /* 14403*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3557 : /* 14415*/ OPC_EmitInteger, MVT::i32, 1,
3558 : /* 14418*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3559 : /* 14421*/ OPC_EmitInteger, MVT::i32, 0,
3560 : /* 14424*/ OPC_EmitInteger, MVT::i32, 0,
3561 : /* 14427*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3562 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
3563 : /* 14451*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3564 : /* 14454*/ OPC_EmitInteger, MVT::i32, 0,
3565 : /* 14457*/ OPC_EmitInteger, MVT::i32, 0,
3566 : /* 14460*/ OPC_EmitInteger, MVT::i32, 0,
3567 : /* 14463*/ OPC_EmitInteger, MVT::i32, 0,
3568 : /* 14466*/ OPC_EmitInteger, MVT::i32, 1,
3569 : /* 14469*/ OPC_EmitInteger, MVT::i32, 0,
3570 : /* 14472*/ OPC_EmitInteger, MVT::i32, 0,
3571 : /* 14475*/ OPC_EmitInteger, MVT::i32, 0,
3572 : /* 14478*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3573 : /* 14481*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3574 : MVT::i32, 2/*#Ops*/, 2, 56, // Results = #57
3575 : /* 14489*/ OPC_EmitInteger, MVT::i32, 0,
3576 : /* 14492*/ OPC_EmitInteger, MVT::i32, 0,
3577 : /* 14495*/ OPC_EmitInteger, MVT::i32, 0,
3578 : /* 14498*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3579 : /* 14510*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3580 : /* 14513*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3581 : MVT::i32, 2/*#Ops*/, 0, 62, // Results = #63
3582 : /* 14521*/ OPC_EmitInteger, MVT::i32, 0,
3583 : /* 14524*/ OPC_EmitInteger, MVT::i32, 0,
3584 : /* 14527*/ OPC_EmitInteger, MVT::i32, 0,
3585 : /* 14530*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3586 : /* 14542*/ OPC_EmitInteger, MVT::i32, 1,
3587 : /* 14545*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3588 : /* 14548*/ OPC_EmitInteger, MVT::i32, 0,
3589 : /* 14551*/ OPC_EmitInteger, MVT::i32, 0,
3590 : /* 14554*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3591 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
3592 : /* 14580*/ OPC_EmitInteger, MVT::i32, 0,
3593 : /* 14583*/ OPC_EmitInteger, MVT::i32, 0,
3594 : /* 14586*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3595 : /* 14598*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3596 : /* 14601*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3597 : MVT::i32, 2/*#Ops*/, 1, 76, // Results = #77
3598 : /* 14609*/ OPC_EmitInteger, MVT::i32, 0,
3599 : /* 14612*/ OPC_EmitInteger, MVT::i32, 0,
3600 : /* 14615*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3601 : /* 14627*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3602 : /* 14630*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3603 : MVT::i32, 2/*#Ops*/, 0, 81, // Results = #82
3604 : /* 14638*/ OPC_EmitInteger, MVT::i32, 0,
3605 : /* 14641*/ OPC_EmitInteger, MVT::i32, 0,
3606 : /* 14644*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3607 : /* 14656*/ OPC_EmitInteger, MVT::i32, 1,
3608 : /* 14659*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3609 : /* 14662*/ OPC_EmitInteger, MVT::i32, 0,
3610 : /* 14665*/ OPC_EmitInteger, MVT::i32, 0,
3611 : /* 14668*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3612 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
3613 : /* 14692*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3614 : /* 14695*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
3615 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
3616 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$y, (or:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x)), (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z)) - Complexity = 12
3617 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
3618 : /* 14706*/ 0, /*End of Scope*/
3619 : /* 14707*/ /*Scope*/ 121|128,3/*505*/, /*->15214*/
3620 : /* 14709*/ OPC_CheckChild0Same, 1,
3621 : /* 14711*/ OPC_CheckChild1Same, 2,
3622 : /* 14713*/ OPC_MoveParent,
3623 : /* 14714*/ OPC_CheckType, MVT::i64,
3624 : /* 14716*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
3625 : /* 14718*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
3626 : /* 14721*/ OPC_EmitInteger, MVT::i32, 0,
3627 : /* 14724*/ OPC_EmitInteger, MVT::i32, 0,
3628 : /* 14727*/ OPC_EmitInteger, MVT::i32, 0,
3629 : /* 14730*/ OPC_EmitInteger, MVT::i32, 0,
3630 : /* 14733*/ OPC_EmitInteger, MVT::i32, 1,
3631 : /* 14736*/ OPC_EmitInteger, MVT::i32, 0,
3632 : /* 14739*/ OPC_EmitInteger, MVT::i32, 0,
3633 : /* 14742*/ OPC_EmitInteger, MVT::i32, 0,
3634 : /* 14745*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3635 : /* 14748*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3636 : MVT::i32, 2/*#Ops*/, 2, 12, // Results = #13
3637 : /* 14756*/ OPC_EmitInteger, MVT::i32, 0,
3638 : /* 14759*/ OPC_EmitInteger, MVT::i32, 0,
3639 : /* 14762*/ OPC_EmitInteger, MVT::i32, 0,
3640 : /* 14765*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3641 : /* 14777*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3642 : /* 14780*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3643 : MVT::i32, 2/*#Ops*/, 0, 18, // Results = #19
3644 : /* 14788*/ OPC_EmitInteger, MVT::i32, 0,
3645 : /* 14791*/ OPC_EmitInteger, MVT::i32, 0,
3646 : /* 14794*/ OPC_EmitInteger, MVT::i32, 0,
3647 : /* 14797*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3648 : /* 14809*/ OPC_EmitInteger, MVT::i32, 1,
3649 : /* 14812*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3650 : /* 14815*/ OPC_EmitInteger, MVT::i32, 0,
3651 : /* 14818*/ OPC_EmitInteger, MVT::i32, 0,
3652 : /* 14821*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3653 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
3654 : /* 14847*/ OPC_EmitInteger, MVT::i32, 0,
3655 : /* 14850*/ OPC_EmitInteger, MVT::i32, 0,
3656 : /* 14853*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3657 : /* 14865*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3658 : /* 14868*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3659 : MVT::i32, 2/*#Ops*/, 1, 32, // Results = #33
3660 : /* 14876*/ OPC_EmitInteger, MVT::i32, 0,
3661 : /* 14879*/ OPC_EmitInteger, MVT::i32, 0,
3662 : /* 14882*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3663 : /* 14894*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3664 : /* 14897*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3665 : MVT::i32, 2/*#Ops*/, 0, 37, // Results = #38
3666 : /* 14905*/ OPC_EmitInteger, MVT::i32, 0,
3667 : /* 14908*/ OPC_EmitInteger, MVT::i32, 0,
3668 : /* 14911*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3669 : /* 14923*/ OPC_EmitInteger, MVT::i32, 1,
3670 : /* 14926*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3671 : /* 14929*/ OPC_EmitInteger, MVT::i32, 0,
3672 : /* 14932*/ OPC_EmitInteger, MVT::i32, 0,
3673 : /* 14935*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3674 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
3675 : /* 14959*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3676 : /* 14962*/ OPC_EmitInteger, MVT::i32, 0,
3677 : /* 14965*/ OPC_EmitInteger, MVT::i32, 0,
3678 : /* 14968*/ OPC_EmitInteger, MVT::i32, 0,
3679 : /* 14971*/ OPC_EmitInteger, MVT::i32, 0,
3680 : /* 14974*/ OPC_EmitInteger, MVT::i32, 1,
3681 : /* 14977*/ OPC_EmitInteger, MVT::i32, 0,
3682 : /* 14980*/ OPC_EmitInteger, MVT::i32, 0,
3683 : /* 14983*/ OPC_EmitInteger, MVT::i32, 0,
3684 : /* 14986*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3685 : /* 14989*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3686 : MVT::i32, 2/*#Ops*/, 2, 56, // Results = #57
3687 : /* 14997*/ OPC_EmitInteger, MVT::i32, 0,
3688 : /* 15000*/ OPC_EmitInteger, MVT::i32, 0,
3689 : /* 15003*/ OPC_EmitInteger, MVT::i32, 0,
3690 : /* 15006*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3691 : /* 15018*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3692 : /* 15021*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3693 : MVT::i32, 2/*#Ops*/, 0, 62, // Results = #63
3694 : /* 15029*/ OPC_EmitInteger, MVT::i32, 0,
3695 : /* 15032*/ OPC_EmitInteger, MVT::i32, 0,
3696 : /* 15035*/ OPC_EmitInteger, MVT::i32, 0,
3697 : /* 15038*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3698 : /* 15050*/ OPC_EmitInteger, MVT::i32, 1,
3699 : /* 15053*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3700 : /* 15056*/ OPC_EmitInteger, MVT::i32, 0,
3701 : /* 15059*/ OPC_EmitInteger, MVT::i32, 0,
3702 : /* 15062*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3703 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
3704 : /* 15088*/ OPC_EmitInteger, MVT::i32, 0,
3705 : /* 15091*/ OPC_EmitInteger, MVT::i32, 0,
3706 : /* 15094*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3707 : /* 15106*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3708 : /* 15109*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3709 : MVT::i32, 2/*#Ops*/, 1, 76, // Results = #77
3710 : /* 15117*/ OPC_EmitInteger, MVT::i32, 0,
3711 : /* 15120*/ OPC_EmitInteger, MVT::i32, 0,
3712 : /* 15123*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3713 : /* 15135*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3714 : /* 15138*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3715 : MVT::i32, 2/*#Ops*/, 0, 81, // Results = #82
3716 : /* 15146*/ OPC_EmitInteger, MVT::i32, 0,
3717 : /* 15149*/ OPC_EmitInteger, MVT::i32, 0,
3718 : /* 15152*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3719 : /* 15164*/ OPC_EmitInteger, MVT::i32, 1,
3720 : /* 15167*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3721 : /* 15170*/ OPC_EmitInteger, MVT::i32, 0,
3722 : /* 15173*/ OPC_EmitInteger, MVT::i32, 0,
3723 : /* 15176*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3724 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
3725 : /* 15200*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3726 : /* 15203*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
3727 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
3728 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$y, (or:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x)), (and:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x)) - Complexity = 12
3729 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
3730 : /* 15214*/ 0, /*End of Scope*/
3731 : /* 15215*/ 0, /*End of Scope*/
3732 : /* 15216*/ /*Scope*/ 88|128,15/*2008*/, /*->17226*/
3733 : /* 15218*/ OPC_MoveChild0,
3734 : /* 15219*/ OPC_CheckOpcode, TARGET_VAL(ISD::OR),
3735 : /* 15222*/ OPC_RecordChild0, // #0 = $x
3736 : /* 15223*/ OPC_RecordChild1, // #1 = $z
3737 : /* 15224*/ OPC_MoveParent,
3738 : /* 15225*/ OPC_RecordChild1, // #2 = $y
3739 : /* 15226*/ OPC_MoveParent,
3740 : /* 15227*/ OPC_MoveChild1,
3741 : /* 15228*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
3742 : /* 15231*/ OPC_Scope, 121|128,3/*505*/, /*->15739*/ // 3 children in Scope
3743 : /* 15234*/ OPC_CheckChild0Same, 0,
3744 : /* 15236*/ OPC_CheckChild1Same, 1,
3745 : /* 15238*/ OPC_MoveParent,
3746 : /* 15239*/ OPC_CheckType, MVT::i64,
3747 : /* 15241*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
3748 : /* 15243*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
3749 : /* 15246*/ OPC_EmitInteger, MVT::i32, 0,
3750 : /* 15249*/ OPC_EmitInteger, MVT::i32, 0,
3751 : /* 15252*/ OPC_EmitInteger, MVT::i32, 0,
3752 : /* 15255*/ OPC_EmitInteger, MVT::i32, 0,
3753 : /* 15258*/ OPC_EmitInteger, MVT::i32, 1,
3754 : /* 15261*/ OPC_EmitInteger, MVT::i32, 0,
3755 : /* 15264*/ OPC_EmitInteger, MVT::i32, 0,
3756 : /* 15267*/ OPC_EmitInteger, MVT::i32, 0,
3757 : /* 15270*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3758 : /* 15273*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3759 : MVT::i32, 2/*#Ops*/, 0, 12, // Results = #13
3760 : /* 15281*/ OPC_EmitInteger, MVT::i32, 0,
3761 : /* 15284*/ OPC_EmitInteger, MVT::i32, 0,
3762 : /* 15287*/ OPC_EmitInteger, MVT::i32, 0,
3763 : /* 15290*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3764 : /* 15302*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3765 : /* 15305*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3766 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
3767 : /* 15313*/ OPC_EmitInteger, MVT::i32, 0,
3768 : /* 15316*/ OPC_EmitInteger, MVT::i32, 0,
3769 : /* 15319*/ OPC_EmitInteger, MVT::i32, 0,
3770 : /* 15322*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3771 : /* 15334*/ OPC_EmitInteger, MVT::i32, 1,
3772 : /* 15337*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3773 : /* 15340*/ OPC_EmitInteger, MVT::i32, 0,
3774 : /* 15343*/ OPC_EmitInteger, MVT::i32, 0,
3775 : /* 15346*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3776 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
3777 : /* 15372*/ OPC_EmitInteger, MVT::i32, 0,
3778 : /* 15375*/ OPC_EmitInteger, MVT::i32, 0,
3779 : /* 15378*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3780 : /* 15390*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3781 : /* 15393*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3782 : MVT::i32, 2/*#Ops*/, 1, 32, // Results = #33
3783 : /* 15401*/ OPC_EmitInteger, MVT::i32, 0,
3784 : /* 15404*/ OPC_EmitInteger, MVT::i32, 0,
3785 : /* 15407*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3786 : /* 15419*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3787 : /* 15422*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3788 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
3789 : /* 15430*/ OPC_EmitInteger, MVT::i32, 0,
3790 : /* 15433*/ OPC_EmitInteger, MVT::i32, 0,
3791 : /* 15436*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3792 : /* 15448*/ OPC_EmitInteger, MVT::i32, 1,
3793 : /* 15451*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3794 : /* 15454*/ OPC_EmitInteger, MVT::i32, 0,
3795 : /* 15457*/ OPC_EmitInteger, MVT::i32, 0,
3796 : /* 15460*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3797 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
3798 : /* 15484*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3799 : /* 15487*/ OPC_EmitInteger, MVT::i32, 0,
3800 : /* 15490*/ OPC_EmitInteger, MVT::i32, 0,
3801 : /* 15493*/ OPC_EmitInteger, MVT::i32, 0,
3802 : /* 15496*/ OPC_EmitInteger, MVT::i32, 0,
3803 : /* 15499*/ OPC_EmitInteger, MVT::i32, 1,
3804 : /* 15502*/ OPC_EmitInteger, MVT::i32, 0,
3805 : /* 15505*/ OPC_EmitInteger, MVT::i32, 0,
3806 : /* 15508*/ OPC_EmitInteger, MVT::i32, 0,
3807 : /* 15511*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3808 : /* 15514*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3809 : MVT::i32, 2/*#Ops*/, 0, 56, // Results = #57
3810 : /* 15522*/ OPC_EmitInteger, MVT::i32, 0,
3811 : /* 15525*/ OPC_EmitInteger, MVT::i32, 0,
3812 : /* 15528*/ OPC_EmitInteger, MVT::i32, 0,
3813 : /* 15531*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3814 : /* 15543*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3815 : /* 15546*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3816 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
3817 : /* 15554*/ OPC_EmitInteger, MVT::i32, 0,
3818 : /* 15557*/ OPC_EmitInteger, MVT::i32, 0,
3819 : /* 15560*/ OPC_EmitInteger, MVT::i32, 0,
3820 : /* 15563*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3821 : /* 15575*/ OPC_EmitInteger, MVT::i32, 1,
3822 : /* 15578*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3823 : /* 15581*/ OPC_EmitInteger, MVT::i32, 0,
3824 : /* 15584*/ OPC_EmitInteger, MVT::i32, 0,
3825 : /* 15587*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3826 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
3827 : /* 15613*/ OPC_EmitInteger, MVT::i32, 0,
3828 : /* 15616*/ OPC_EmitInteger, MVT::i32, 0,
3829 : /* 15619*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3830 : /* 15631*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3831 : /* 15634*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3832 : MVT::i32, 2/*#Ops*/, 1, 76, // Results = #77
3833 : /* 15642*/ OPC_EmitInteger, MVT::i32, 0,
3834 : /* 15645*/ OPC_EmitInteger, MVT::i32, 0,
3835 : /* 15648*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3836 : /* 15660*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3837 : /* 15663*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3838 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
3839 : /* 15671*/ OPC_EmitInteger, MVT::i32, 0,
3840 : /* 15674*/ OPC_EmitInteger, MVT::i32, 0,
3841 : /* 15677*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3842 : /* 15689*/ OPC_EmitInteger, MVT::i32, 1,
3843 : /* 15692*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3844 : /* 15695*/ OPC_EmitInteger, MVT::i32, 0,
3845 : /* 15698*/ OPC_EmitInteger, MVT::i32, 0,
3846 : /* 15701*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3847 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
3848 : /* 15725*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3849 : /* 15728*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
3850 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
3851 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } (or:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z), i64:{ *:[i64] }:$y), (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z)) - Complexity = 12
3852 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
3853 : /* 15739*/ /*Scope*/ 81|128,7/*977*/, /*->16718*/
3854 : /* 15741*/ OPC_CheckChild0Same, 1,
3855 : /* 15743*/ OPC_CheckChild1Same, 0,
3856 : /* 15745*/ OPC_MoveParent,
3857 : /* 15746*/ OPC_CheckType, MVT::i64,
3858 : /* 15748*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
3859 : /* 15750*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
3860 : /* 15753*/ OPC_EmitInteger, MVT::i32, 0,
3861 : /* 15756*/ OPC_EmitInteger, MVT::i32, 0,
3862 : /* 15759*/ OPC_EmitInteger, MVT::i32, 0,
3863 : /* 15762*/ OPC_EmitInteger, MVT::i32, 0,
3864 : /* 15765*/ OPC_EmitInteger, MVT::i32, 1,
3865 : /* 15768*/ OPC_EmitInteger, MVT::i32, 0,
3866 : /* 15771*/ OPC_EmitInteger, MVT::i32, 0,
3867 : /* 15774*/ OPC_EmitInteger, MVT::i32, 0,
3868 : /* 15777*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3869 : /* 15780*/ OPC_Scope, 82|128,3/*466*/, /*->16249*/ // 2 children in Scope
3870 : /* 15783*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3871 : MVT::i32, 2/*#Ops*/, 0, 12, // Results = #13
3872 : /* 15791*/ OPC_EmitInteger, MVT::i32, 0,
3873 : /* 15794*/ OPC_EmitInteger, MVT::i32, 0,
3874 : /* 15797*/ OPC_EmitInteger, MVT::i32, 0,
3875 : /* 15800*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3876 : /* 15812*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3877 : /* 15815*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3878 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
3879 : /* 15823*/ OPC_EmitInteger, MVT::i32, 0,
3880 : /* 15826*/ OPC_EmitInteger, MVT::i32, 0,
3881 : /* 15829*/ OPC_EmitInteger, MVT::i32, 0,
3882 : /* 15832*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3883 : /* 15844*/ OPC_EmitInteger, MVT::i32, 1,
3884 : /* 15847*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3885 : /* 15850*/ OPC_EmitInteger, MVT::i32, 0,
3886 : /* 15853*/ OPC_EmitInteger, MVT::i32, 0,
3887 : /* 15856*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3888 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
3889 : /* 15882*/ OPC_EmitInteger, MVT::i32, 0,
3890 : /* 15885*/ OPC_EmitInteger, MVT::i32, 0,
3891 : /* 15888*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3892 : /* 15900*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3893 : /* 15903*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3894 : MVT::i32, 2/*#Ops*/, 1, 32, // Results = #33
3895 : /* 15911*/ OPC_EmitInteger, MVT::i32, 0,
3896 : /* 15914*/ OPC_EmitInteger, MVT::i32, 0,
3897 : /* 15917*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3898 : /* 15929*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3899 : /* 15932*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3900 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
3901 : /* 15940*/ OPC_EmitInteger, MVT::i32, 0,
3902 : /* 15943*/ OPC_EmitInteger, MVT::i32, 0,
3903 : /* 15946*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3904 : /* 15958*/ OPC_EmitInteger, MVT::i32, 1,
3905 : /* 15961*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3906 : /* 15964*/ OPC_EmitInteger, MVT::i32, 0,
3907 : /* 15967*/ OPC_EmitInteger, MVT::i32, 0,
3908 : /* 15970*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3909 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
3910 : /* 15994*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3911 : /* 15997*/ OPC_EmitInteger, MVT::i32, 0,
3912 : /* 16000*/ OPC_EmitInteger, MVT::i32, 0,
3913 : /* 16003*/ OPC_EmitInteger, MVT::i32, 0,
3914 : /* 16006*/ OPC_EmitInteger, MVT::i32, 0,
3915 : /* 16009*/ OPC_EmitInteger, MVT::i32, 1,
3916 : /* 16012*/ OPC_EmitInteger, MVT::i32, 0,
3917 : /* 16015*/ OPC_EmitInteger, MVT::i32, 0,
3918 : /* 16018*/ OPC_EmitInteger, MVT::i32, 0,
3919 : /* 16021*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3920 : /* 16024*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3921 : MVT::i32, 2/*#Ops*/, 0, 56, // Results = #57
3922 : /* 16032*/ OPC_EmitInteger, MVT::i32, 0,
3923 : /* 16035*/ OPC_EmitInteger, MVT::i32, 0,
3924 : /* 16038*/ OPC_EmitInteger, MVT::i32, 0,
3925 : /* 16041*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3926 : /* 16053*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3927 : /* 16056*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3928 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
3929 : /* 16064*/ OPC_EmitInteger, MVT::i32, 0,
3930 : /* 16067*/ OPC_EmitInteger, MVT::i32, 0,
3931 : /* 16070*/ OPC_EmitInteger, MVT::i32, 0,
3932 : /* 16073*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3933 : /* 16085*/ OPC_EmitInteger, MVT::i32, 1,
3934 : /* 16088*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3935 : /* 16091*/ OPC_EmitInteger, MVT::i32, 0,
3936 : /* 16094*/ OPC_EmitInteger, MVT::i32, 0,
3937 : /* 16097*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3938 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
3939 : /* 16123*/ OPC_EmitInteger, MVT::i32, 0,
3940 : /* 16126*/ OPC_EmitInteger, MVT::i32, 0,
3941 : /* 16129*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3942 : /* 16141*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3943 : /* 16144*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3944 : MVT::i32, 2/*#Ops*/, 1, 76, // Results = #77
3945 : /* 16152*/ OPC_EmitInteger, MVT::i32, 0,
3946 : /* 16155*/ OPC_EmitInteger, MVT::i32, 0,
3947 : /* 16158*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3948 : /* 16170*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3949 : /* 16173*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3950 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
3951 : /* 16181*/ OPC_EmitInteger, MVT::i32, 0,
3952 : /* 16184*/ OPC_EmitInteger, MVT::i32, 0,
3953 : /* 16187*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3954 : /* 16199*/ OPC_EmitInteger, MVT::i32, 1,
3955 : /* 16202*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3956 : /* 16205*/ OPC_EmitInteger, MVT::i32, 0,
3957 : /* 16208*/ OPC_EmitInteger, MVT::i32, 0,
3958 : /* 16211*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
3959 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
3960 : /* 16235*/ OPC_EmitInteger, MVT::i32, R600::sub1,
3961 : /* 16238*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
3962 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
3963 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } (or:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z), i64:{ *:[i64] }:$y), (and:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x)) - Complexity = 12
3964 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
3965 : /* 16249*/ /*Scope*/ 82|128,3/*466*/, /*->16717*/
3966 : /* 16251*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3967 : MVT::i32, 2/*#Ops*/, 1, 12, // Results = #13
3968 : /* 16259*/ OPC_EmitInteger, MVT::i32, 0,
3969 : /* 16262*/ OPC_EmitInteger, MVT::i32, 0,
3970 : /* 16265*/ OPC_EmitInteger, MVT::i32, 0,
3971 : /* 16268*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3972 : /* 16280*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3973 : /* 16283*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3974 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
3975 : /* 16291*/ OPC_EmitInteger, MVT::i32, 0,
3976 : /* 16294*/ OPC_EmitInteger, MVT::i32, 0,
3977 : /* 16297*/ OPC_EmitInteger, MVT::i32, 0,
3978 : /* 16300*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3979 : /* 16312*/ OPC_EmitInteger, MVT::i32, 1,
3980 : /* 16315*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
3981 : /* 16318*/ OPC_EmitInteger, MVT::i32, 0,
3982 : /* 16321*/ OPC_EmitInteger, MVT::i32, 0,
3983 : /* 16324*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
3984 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
3985 : /* 16350*/ OPC_EmitInteger, MVT::i32, 0,
3986 : /* 16353*/ OPC_EmitInteger, MVT::i32, 0,
3987 : /* 16356*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3988 : /* 16368*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3989 : /* 16371*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3990 : MVT::i32, 2/*#Ops*/, 0, 32, // Results = #33
3991 : /* 16379*/ OPC_EmitInteger, MVT::i32, 0,
3992 : /* 16382*/ OPC_EmitInteger, MVT::i32, 0,
3993 : /* 16385*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
3994 : /* 16397*/ OPC_EmitInteger, MVT::i32, R600::sub0,
3995 : /* 16400*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
3996 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
3997 : /* 16408*/ OPC_EmitInteger, MVT::i32, 0,
3998 : /* 16411*/ OPC_EmitInteger, MVT::i32, 0,
3999 : /* 16414*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4000 : /* 16426*/ OPC_EmitInteger, MVT::i32, 1,
4001 : /* 16429*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4002 : /* 16432*/ OPC_EmitInteger, MVT::i32, 0,
4003 : /* 16435*/ OPC_EmitInteger, MVT::i32, 0,
4004 : /* 16438*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
4005 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
4006 : /* 16462*/ OPC_EmitInteger, MVT::i32, R600::sub0,
4007 : /* 16465*/ OPC_EmitInteger, MVT::i32, 0,
4008 : /* 16468*/ OPC_EmitInteger, MVT::i32, 0,
4009 : /* 16471*/ OPC_EmitInteger, MVT::i32, 0,
4010 : /* 16474*/ OPC_EmitInteger, MVT::i32, 0,
4011 : /* 16477*/ OPC_EmitInteger, MVT::i32, 1,
4012 : /* 16480*/ OPC_EmitInteger, MVT::i32, 0,
4013 : /* 16483*/ OPC_EmitInteger, MVT::i32, 0,
4014 : /* 16486*/ OPC_EmitInteger, MVT::i32, 0,
4015 : /* 16489*/ OPC_EmitInteger, MVT::i32, R600::sub1,
4016 : /* 16492*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4017 : MVT::i32, 2/*#Ops*/, 1, 56, // Results = #57
4018 : /* 16500*/ OPC_EmitInteger, MVT::i32, 0,
4019 : /* 16503*/ OPC_EmitInteger, MVT::i32, 0,
4020 : /* 16506*/ OPC_EmitInteger, MVT::i32, 0,
4021 : /* 16509*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4022 : /* 16521*/ OPC_EmitInteger, MVT::i32, R600::sub1,
4023 : /* 16524*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4024 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
4025 : /* 16532*/ OPC_EmitInteger, MVT::i32, 0,
4026 : /* 16535*/ OPC_EmitInteger, MVT::i32, 0,
4027 : /* 16538*/ OPC_EmitInteger, MVT::i32, 0,
4028 : /* 16541*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4029 : /* 16553*/ OPC_EmitInteger, MVT::i32, 1,
4030 : /* 16556*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4031 : /* 16559*/ OPC_EmitInteger, MVT::i32, 0,
4032 : /* 16562*/ OPC_EmitInteger, MVT::i32, 0,
4033 : /* 16565*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
4034 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
4035 : /* 16591*/ OPC_EmitInteger, MVT::i32, 0,
4036 : /* 16594*/ OPC_EmitInteger, MVT::i32, 0,
4037 : /* 16597*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4038 : /* 16609*/ OPC_EmitInteger, MVT::i32, R600::sub1,
4039 : /* 16612*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4040 : MVT::i32, 2/*#Ops*/, 0, 76, // Results = #77
4041 : /* 16620*/ OPC_EmitInteger, MVT::i32, 0,
4042 : /* 16623*/ OPC_EmitInteger, MVT::i32, 0,
4043 : /* 16626*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4044 : /* 16638*/ OPC_EmitInteger, MVT::i32, R600::sub1,
4045 : /* 16641*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4046 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
4047 : /* 16649*/ OPC_EmitInteger, MVT::i32, 0,
4048 : /* 16652*/ OPC_EmitInteger, MVT::i32, 0,
4049 : /* 16655*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4050 : /* 16667*/ OPC_EmitInteger, MVT::i32, 1,
4051 : /* 16670*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4052 : /* 16673*/ OPC_EmitInteger, MVT::i32, 0,
4053 : /* 16676*/ OPC_EmitInteger, MVT::i32, 0,
4054 : /* 16679*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
4055 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
4056 : /* 16703*/ OPC_EmitInteger, MVT::i32, R600::sub1,
4057 : /* 16706*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
4058 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
4059 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } (or:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x), i64:{ *:[i64] }:$y), (and:{ *:[i64] } i64:{ *:[i64] }:$x, i64:{ *:[i64] }:$z)) - Complexity = 12
4060 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
4061 : /* 16717*/ 0, /*End of Scope*/
4062 : /* 16718*/ /*Scope*/ 121|128,3/*505*/, /*->17225*/
4063 : /* 16720*/ OPC_CheckChild0Same, 0,
4064 : /* 16722*/ OPC_CheckChild1Same, 1,
4065 : /* 16724*/ OPC_MoveParent,
4066 : /* 16725*/ OPC_CheckType, MVT::i64,
4067 : /* 16727*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
4068 : /* 16729*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
4069 : /* 16732*/ OPC_EmitInteger, MVT::i32, 0,
4070 : /* 16735*/ OPC_EmitInteger, MVT::i32, 0,
4071 : /* 16738*/ OPC_EmitInteger, MVT::i32, 0,
4072 : /* 16741*/ OPC_EmitInteger, MVT::i32, 0,
4073 : /* 16744*/ OPC_EmitInteger, MVT::i32, 1,
4074 : /* 16747*/ OPC_EmitInteger, MVT::i32, 0,
4075 : /* 16750*/ OPC_EmitInteger, MVT::i32, 0,
4076 : /* 16753*/ OPC_EmitInteger, MVT::i32, 0,
4077 : /* 16756*/ OPC_EmitInteger, MVT::i32, R600::sub0,
4078 : /* 16759*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4079 : MVT::i32, 2/*#Ops*/, 1, 12, // Results = #13
4080 : /* 16767*/ OPC_EmitInteger, MVT::i32, 0,
4081 : /* 16770*/ OPC_EmitInteger, MVT::i32, 0,
4082 : /* 16773*/ OPC_EmitInteger, MVT::i32, 0,
4083 : /* 16776*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4084 : /* 16788*/ OPC_EmitInteger, MVT::i32, R600::sub0,
4085 : /* 16791*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4086 : MVT::i32, 2/*#Ops*/, 2, 18, // Results = #19
4087 : /* 16799*/ OPC_EmitInteger, MVT::i32, 0,
4088 : /* 16802*/ OPC_EmitInteger, MVT::i32, 0,
4089 : /* 16805*/ OPC_EmitInteger, MVT::i32, 0,
4090 : /* 16808*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4091 : /* 16820*/ OPC_EmitInteger, MVT::i32, 1,
4092 : /* 16823*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4093 : /* 16826*/ OPC_EmitInteger, MVT::i32, 0,
4094 : /* 16829*/ OPC_EmitInteger, MVT::i32, 0,
4095 : /* 16832*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
4096 : MVT::i32, 20/*#Ops*/, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, // Results = #28
4097 : /* 16858*/ OPC_EmitInteger, MVT::i32, 0,
4098 : /* 16861*/ OPC_EmitInteger, MVT::i32, 0,
4099 : /* 16864*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4100 : /* 16876*/ OPC_EmitInteger, MVT::i32, R600::sub0,
4101 : /* 16879*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4102 : MVT::i32, 2/*#Ops*/, 0, 32, // Results = #33
4103 : /* 16887*/ OPC_EmitInteger, MVT::i32, 0,
4104 : /* 16890*/ OPC_EmitInteger, MVT::i32, 0,
4105 : /* 16893*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4106 : /* 16905*/ OPC_EmitInteger, MVT::i32, R600::sub0,
4107 : /* 16908*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4108 : MVT::i32, 2/*#Ops*/, 2, 37, // Results = #38
4109 : /* 16916*/ OPC_EmitInteger, MVT::i32, 0,
4110 : /* 16919*/ OPC_EmitInteger, MVT::i32, 0,
4111 : /* 16922*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4112 : /* 16934*/ OPC_EmitInteger, MVT::i32, 1,
4113 : /* 16937*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4114 : /* 16940*/ OPC_EmitInteger, MVT::i32, 0,
4115 : /* 16943*/ OPC_EmitInteger, MVT::i32, 0,
4116 : /* 16946*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
4117 : MVT::i32, 18/*#Ops*/, 4, 5, 28, 29, 30, 31, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, // Results = #46
4118 : /* 16970*/ OPC_EmitInteger, MVT::i32, R600::sub0,
4119 : /* 16973*/ OPC_EmitInteger, MVT::i32, 0,
4120 : /* 16976*/ OPC_EmitInteger, MVT::i32, 0,
4121 : /* 16979*/ OPC_EmitInteger, MVT::i32, 0,
4122 : /* 16982*/ OPC_EmitInteger, MVT::i32, 0,
4123 : /* 16985*/ OPC_EmitInteger, MVT::i32, 1,
4124 : /* 16988*/ OPC_EmitInteger, MVT::i32, 0,
4125 : /* 16991*/ OPC_EmitInteger, MVT::i32, 0,
4126 : /* 16994*/ OPC_EmitInteger, MVT::i32, 0,
4127 : /* 16997*/ OPC_EmitInteger, MVT::i32, R600::sub1,
4128 : /* 17000*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4129 : MVT::i32, 2/*#Ops*/, 1, 56, // Results = #57
4130 : /* 17008*/ OPC_EmitInteger, MVT::i32, 0,
4131 : /* 17011*/ OPC_EmitInteger, MVT::i32, 0,
4132 : /* 17014*/ OPC_EmitInteger, MVT::i32, 0,
4133 : /* 17017*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4134 : /* 17029*/ OPC_EmitInteger, MVT::i32, R600::sub1,
4135 : /* 17032*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4136 : MVT::i32, 2/*#Ops*/, 2, 62, // Results = #63
4137 : /* 17040*/ OPC_EmitInteger, MVT::i32, 0,
4138 : /* 17043*/ OPC_EmitInteger, MVT::i32, 0,
4139 : /* 17046*/ OPC_EmitInteger, MVT::i32, 0,
4140 : /* 17049*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4141 : /* 17061*/ OPC_EmitInteger, MVT::i32, 1,
4142 : /* 17064*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4143 : /* 17067*/ OPC_EmitInteger, MVT::i32, 0,
4144 : /* 17070*/ OPC_EmitInteger, MVT::i32, 0,
4145 : /* 17073*/ OPC_EmitNode1, TARGET_VAL(R600::XOR_INT), 0,
4146 : MVT::i32, 20/*#Ops*/, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 63, 64, 65, 66, 67, 68, 69, 70, 71, // Results = #72
4147 : /* 17099*/ OPC_EmitInteger, MVT::i32, 0,
4148 : /* 17102*/ OPC_EmitInteger, MVT::i32, 0,
4149 : /* 17105*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4150 : /* 17117*/ OPC_EmitInteger, MVT::i32, R600::sub1,
4151 : /* 17120*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4152 : MVT::i32, 2/*#Ops*/, 0, 76, // Results = #77
4153 : /* 17128*/ OPC_EmitInteger, MVT::i32, 0,
4154 : /* 17131*/ OPC_EmitInteger, MVT::i32, 0,
4155 : /* 17134*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4156 : /* 17146*/ OPC_EmitInteger, MVT::i32, R600::sub1,
4157 : /* 17149*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
4158 : MVT::i32, 2/*#Ops*/, 2, 81, // Results = #82
4159 : /* 17157*/ OPC_EmitInteger, MVT::i32, 0,
4160 : /* 17160*/ OPC_EmitInteger, MVT::i32, 0,
4161 : /* 17163*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4162 : /* 17175*/ OPC_EmitInteger, MVT::i32, 1,
4163 : /* 17178*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4164 : /* 17181*/ OPC_EmitInteger, MVT::i32, 0,
4165 : /* 17184*/ OPC_EmitInteger, MVT::i32, 0,
4166 : /* 17187*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
4167 : MVT::i32, 18/*#Ops*/, 48, 49, 72, 73, 74, 75, 77, 78, 79, 80, 82, 83, 84, 85, 86, 87, 88, 89, // Results = #90
4168 : /* 17211*/ OPC_EmitInteger, MVT::i32, R600::sub1,
4169 : /* 17214*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
4170 : MVT::i64, 5/*#Ops*/, 3, 46, 47, 90, 91,
4171 : // Src: (or:{ *:[i64] } (and:{ *:[i64] } (or:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x), i64:{ *:[i64] }:$y), (and:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$x)) - Complexity = 12
4172 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (XOR_INT:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] })), sub1:{ *:[i32] })
4173 : /* 17225*/ 0, /*End of Scope*/
4174 : /* 17226*/ 0, /*End of Scope*/
4175 : /* 17227*/ /*Scope*/ 104, /*->17332*/
4176 : /* 17228*/ OPC_RecordChild0, // #0 = $src0
4177 : /* 17229*/ OPC_RecordChild1, // #1 = $src1
4178 : /* 17230*/ OPC_CheckType, MVT::i32,
4179 : /* 17232*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4180 : /* 17234*/ OPC_EmitInteger, MVT::i32, 0,
4181 : /* 17237*/ OPC_EmitInteger, MVT::i32, 0,
4182 : /* 17240*/ OPC_EmitInteger, MVT::i32, 1,
4183 : /* 17243*/ OPC_EmitInteger, MVT::i32, 0,
4184 : /* 17246*/ OPC_EmitInteger, MVT::i32, 0,
4185 : /* 17249*/ OPC_EmitInteger, MVT::i32, 0,
4186 : /* 17252*/ OPC_EmitInteger, MVT::i32, 0,
4187 : /* 17255*/ OPC_EmitInteger, MVT::i32, 0,
4188 : /* 17258*/ OPC_EmitInteger, MVT::i32, 0,
4189 : /* 17261*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4190 : /* 17273*/ OPC_EmitInteger, MVT::i32, 0,
4191 : /* 17276*/ OPC_EmitInteger, MVT::i32, 0,
4192 : /* 17279*/ OPC_EmitInteger, MVT::i32, 0,
4193 : /* 17282*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4194 : /* 17294*/ OPC_EmitInteger, MVT::i32, 1,
4195 : /* 17297*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4196 : /* 17300*/ OPC_EmitInteger, MVT::i32, 0,
4197 : /* 17303*/ OPC_EmitInteger, MVT::i32, 0,
4198 : /* 17306*/ OPC_MorphNodeTo1, TARGET_VAL(R600::OR_INT), 0,
4199 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4200 : // Src: (or:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
4201 : // Dst: (OR_INT:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
4202 : /* 17332*/ 0, /*End of Scope*/
4203 : /* 17333*/ /*SwitchOpcode*/ 25, TARGET_VAL(AMDGPUISD::REGISTER_LOAD),// ->17361
4204 : /* 17336*/ OPC_RecordNode, // #0 = 'AMDGPUregister_load' chained node
4205 : /* 17337*/ OPC_RecordChild1, // #1 = $addr
4206 : /* 17338*/ OPC_RecordChild2, // #2 = $chan
4207 : /* 17339*/ OPC_MoveChild2,
4208 : /* 17340*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
4209 : /* 17343*/ OPC_CheckType, MVT::i32,
4210 : /* 17345*/ OPC_MoveParent,
4211 : /* 17346*/ OPC_CheckType, MVT::i32,
4212 : /* 17348*/ OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectADDRIndirect:$addr #3 #4
4213 : /* 17351*/ OPC_EmitMergeInputChains1_0,
4214 : /* 17352*/ OPC_MorphNodeTo1, TARGET_VAL(R600::R600_RegisterLoad), 0|OPFL_Chain,
4215 : MVT::i32, 3/*#Ops*/, 3, 4, 2,
4216 : // Src: (AMDGPUregister_load:{ *:[i32] } ADDRIndirect:{ *:[iPTR] }:$addr, (timm:{ *:[i32] }):$chan) - Complexity = 15
4217 : // Dst: (R600_RegisterLoad:{ *:[i32] } ADDRIndirect:{ *:[iPTR] }:$addr, (timm:{ *:[i32] }):$chan)
4218 : /* 17361*/ /*SwitchOpcode*/ 26, TARGET_VAL(AMDGPUISD::REGISTER_STORE),// ->17390
4219 : /* 17364*/ OPC_RecordNode, // #0 = 'AMDGPUregister_store' chained node
4220 : /* 17365*/ OPC_RecordChild1, // #1 = $val
4221 : /* 17366*/ OPC_CheckChild1Type, MVT::i32,
4222 : /* 17368*/ OPC_RecordChild2, // #2 = $addr
4223 : /* 17369*/ OPC_RecordChild3, // #3 = $chan
4224 : /* 17370*/ OPC_MoveChild3,
4225 : /* 17371*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
4226 : /* 17374*/ OPC_CheckType, MVT::i32,
4227 : /* 17376*/ OPC_MoveParent,
4228 : /* 17377*/ OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectADDRIndirect:$addr #4 #5
4229 : /* 17380*/ OPC_EmitMergeInputChains1_0,
4230 : /* 17381*/ OPC_MorphNodeTo0, TARGET_VAL(R600::R600_RegisterStore), 0|OPFL_Chain,
4231 : 4/*#Ops*/, 1, 4, 5, 3,
4232 : // Src: (AMDGPUregister_store i32:{ *:[i32] }:$val, ADDRIndirect:{ *:[iPTR] }:$addr, (timm:{ *:[i32] }):$chan) - Complexity = 15
4233 : // Dst: (R600_RegisterStore i32:{ *:[i32] }:$val, ADDRIndirect:{ *:[iPTR] }:$addr, (timm:{ *:[i32] }):$chan)
4234 : /* 17390*/ /*SwitchOpcode*/ 24|128,23/*2968*/, TARGET_VAL(ISD::SELECT_CC),// ->20362
4235 : /* 17394*/ OPC_RecordChild0, // #0 = $src0
4236 : /* 17395*/ OPC_Scope, 5|128,12/*1541*/, /*->18939*/ // 2 children in Scope
4237 : /* 17398*/ OPC_CheckChild0Type, MVT::f32,
4238 : /* 17400*/ OPC_Scope, 126|128,6/*894*/, /*->18297*/ // 2 children in Scope
4239 : /* 17403*/ OPC_RecordChild1, // #1 = $src1
4240 : /* 17404*/ OPC_Scope, 59|128,3/*443*/, /*->17850*/ // 2 children in Scope
4241 : /* 17407*/ OPC_CheckChild2Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4242 : /* 17418*/ OPC_CheckChild3Integer, 0,
4243 : /* 17420*/ OPC_MoveChild4,
4244 : /* 17421*/ OPC_CheckOpcode, TARGET_VAL(ISD::CONDCODE),
4245 : /* 17424*/ OPC_Scope, 105, /*->17531*/ // 4 children in Scope
4246 : /* 17426*/ OPC_CheckPredicate, 2, // Predicate_COND_OEQ
4247 : /* 17428*/ OPC_MoveParent,
4248 : /* 17429*/ OPC_CheckType, MVT::i32,
4249 : /* 17431*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4250 : /* 17433*/ OPC_EmitInteger, MVT::i32, 0,
4251 : /* 17436*/ OPC_EmitInteger, MVT::i32, 0,
4252 : /* 17439*/ OPC_EmitInteger, MVT::i32, 1,
4253 : /* 17442*/ OPC_EmitInteger, MVT::i32, 0,
4254 : /* 17445*/ OPC_EmitInteger, MVT::i32, 0,
4255 : /* 17448*/ OPC_EmitInteger, MVT::i32, 0,
4256 : /* 17451*/ OPC_EmitInteger, MVT::i32, 0,
4257 : /* 17454*/ OPC_EmitInteger, MVT::i32, 0,
4258 : /* 17457*/ OPC_EmitInteger, MVT::i32, 0,
4259 : /* 17460*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4260 : /* 17472*/ OPC_EmitInteger, MVT::i32, 0,
4261 : /* 17475*/ OPC_EmitInteger, MVT::i32, 0,
4262 : /* 17478*/ OPC_EmitInteger, MVT::i32, 0,
4263 : /* 17481*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4264 : /* 17493*/ OPC_EmitInteger, MVT::i32, 1,
4265 : /* 17496*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4266 : /* 17499*/ OPC_EmitInteger, MVT::i32, 0,
4267 : /* 17502*/ OPC_EmitInteger, MVT::i32, 0,
4268 : /* 17505*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SETE_DX10), 0,
4269 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4270 : // Src: (selectcc:{ *:[i32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, -1:{ *:[i32] }, 0:{ *:[i32] }, (cond:{ *:[Other] })<<P:Predicate_COND_OEQ>>) - Complexity = 13
4271 : // Dst: (SETE_DX10:{ *:[i32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1)
4272 : /* 17531*/ /*Scope*/ 105, /*->17637*/
4273 : /* 17532*/ OPC_CheckPredicate, 3, // Predicate_COND_OGT
4274 : /* 17534*/ OPC_MoveParent,
4275 : /* 17535*/ OPC_CheckType, MVT::i32,
4276 : /* 17537*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4277 : /* 17539*/ OPC_EmitInteger, MVT::i32, 0,
4278 : /* 17542*/ OPC_EmitInteger, MVT::i32, 0,
4279 : /* 17545*/ OPC_EmitInteger, MVT::i32, 1,
4280 : /* 17548*/ OPC_EmitInteger, MVT::i32, 0,
4281 : /* 17551*/ OPC_EmitInteger, MVT::i32, 0,
4282 : /* 17554*/ OPC_EmitInteger, MVT::i32, 0,
4283 : /* 17557*/ OPC_EmitInteger, MVT::i32, 0,
4284 : /* 17560*/ OPC_EmitInteger, MVT::i32, 0,
4285 : /* 17563*/ OPC_EmitInteger, MVT::i32, 0,
4286 : /* 17566*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4287 : /* 17578*/ OPC_EmitInteger, MVT::i32, 0,
4288 : /* 17581*/ OPC_EmitInteger, MVT::i32, 0,
4289 : /* 17584*/ OPC_EmitInteger, MVT::i32, 0,
4290 : /* 17587*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4291 : /* 17599*/ OPC_EmitInteger, MVT::i32, 1,
4292 : /* 17602*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4293 : /* 17605*/ OPC_EmitInteger, MVT::i32, 0,
4294 : /* 17608*/ OPC_EmitInteger, MVT::i32, 0,
4295 : /* 17611*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SETGT_DX10), 0,
4296 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4297 : // Src: (selectcc:{ *:[i32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, -1:{ *:[i32] }, 0:{ *:[i32] }, (cond:{ *:[Other] })<<P:Predicate_COND_OGT>>) - Complexity = 13
4298 : // Dst: (SETGT_DX10:{ *:[i32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1)
4299 : /* 17637*/ /*Scope*/ 105, /*->17743*/
4300 : /* 17638*/ OPC_CheckPredicate, 4, // Predicate_COND_OGE
4301 : /* 17640*/ OPC_MoveParent,
4302 : /* 17641*/ OPC_CheckType, MVT::i32,
4303 : /* 17643*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4304 : /* 17645*/ OPC_EmitInteger, MVT::i32, 0,
4305 : /* 17648*/ OPC_EmitInteger, MVT::i32, 0,
4306 : /* 17651*/ OPC_EmitInteger, MVT::i32, 1,
4307 : /* 17654*/ OPC_EmitInteger, MVT::i32, 0,
4308 : /* 17657*/ OPC_EmitInteger, MVT::i32, 0,
4309 : /* 17660*/ OPC_EmitInteger, MVT::i32, 0,
4310 : /* 17663*/ OPC_EmitInteger, MVT::i32, 0,
4311 : /* 17666*/ OPC_EmitInteger, MVT::i32, 0,
4312 : /* 17669*/ OPC_EmitInteger, MVT::i32, 0,
4313 : /* 17672*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4314 : /* 17684*/ OPC_EmitInteger, MVT::i32, 0,
4315 : /* 17687*/ OPC_EmitInteger, MVT::i32, 0,
4316 : /* 17690*/ OPC_EmitInteger, MVT::i32, 0,
4317 : /* 17693*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4318 : /* 17705*/ OPC_EmitInteger, MVT::i32, 1,
4319 : /* 17708*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4320 : /* 17711*/ OPC_EmitInteger, MVT::i32, 0,
4321 : /* 17714*/ OPC_EmitInteger, MVT::i32, 0,
4322 : /* 17717*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SETGE_DX10), 0,
4323 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4324 : // Src: (selectcc:{ *:[i32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, -1:{ *:[i32] }, 0:{ *:[i32] }, (cond:{ *:[Other] })<<P:Predicate_COND_OGE>>) - Complexity = 13
4325 : // Dst: (SETGE_DX10:{ *:[i32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1)
4326 : /* 17743*/ /*Scope*/ 105, /*->17849*/
4327 : /* 17744*/ OPC_CheckPredicate, 5, // Predicate_COND_UNE_NE
4328 : /* 17746*/ OPC_MoveParent,
4329 : /* 17747*/ OPC_CheckType, MVT::i32,
4330 : /* 17749*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4331 : /* 17751*/ OPC_EmitInteger, MVT::i32, 0,
4332 : /* 17754*/ OPC_EmitInteger, MVT::i32, 0,
4333 : /* 17757*/ OPC_EmitInteger, MVT::i32, 1,
4334 : /* 17760*/ OPC_EmitInteger, MVT::i32, 0,
4335 : /* 17763*/ OPC_EmitInteger, MVT::i32, 0,
4336 : /* 17766*/ OPC_EmitInteger, MVT::i32, 0,
4337 : /* 17769*/ OPC_EmitInteger, MVT::i32, 0,
4338 : /* 17772*/ OPC_EmitInteger, MVT::i32, 0,
4339 : /* 17775*/ OPC_EmitInteger, MVT::i32, 0,
4340 : /* 17778*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4341 : /* 17790*/ OPC_EmitInteger, MVT::i32, 0,
4342 : /* 17793*/ OPC_EmitInteger, MVT::i32, 0,
4343 : /* 17796*/ OPC_EmitInteger, MVT::i32, 0,
4344 : /* 17799*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4345 : /* 17811*/ OPC_EmitInteger, MVT::i32, 1,
4346 : /* 17814*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4347 : /* 17817*/ OPC_EmitInteger, MVT::i32, 0,
4348 : /* 17820*/ OPC_EmitInteger, MVT::i32, 0,
4349 : /* 17823*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SETNE_DX10), 0,
4350 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4351 : // Src: (selectcc:{ *:[i32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, -1:{ *:[i32] }, 0:{ *:[i32] }, (cond:{ *:[Other] })<<P:Predicate_COND_UNE_NE>>) - Complexity = 13
4352 : // Dst: (SETNE_DX10:{ *:[i32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1)
4353 : /* 17849*/ 0, /*End of Scope*/
4354 : /* 17850*/ /*Scope*/ 60|128,3/*444*/, /*->18296*/
4355 : /* 17852*/ OPC_MoveChild2,
4356 : /* 17853*/ OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP),
4357 : /* 17856*/ OPC_CheckPredicate, 6, // Predicate_FP_ONE
4358 : /* 17858*/ OPC_MoveParent,
4359 : /* 17859*/ OPC_MoveChild3,
4360 : /* 17860*/ OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP),
4361 : /* 17863*/ OPC_CheckPredicate, 7, // Predicate_FP_ZERO
4362 : /* 17865*/ OPC_MoveParent,
4363 : /* 17866*/ OPC_MoveChild4,
4364 : /* 17867*/ OPC_CheckOpcode, TARGET_VAL(ISD::CONDCODE),
4365 : /* 17870*/ OPC_Scope, 105, /*->17977*/ // 4 children in Scope
4366 : /* 17872*/ OPC_CheckPredicate, 2, // Predicate_COND_OEQ
4367 : /* 17874*/ OPC_MoveParent,
4368 : /* 17875*/ OPC_CheckType, MVT::f32,
4369 : /* 17877*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4370 : /* 17879*/ OPC_EmitInteger, MVT::i32, 0,
4371 : /* 17882*/ OPC_EmitInteger, MVT::i32, 0,
4372 : /* 17885*/ OPC_EmitInteger, MVT::i32, 1,
4373 : /* 17888*/ OPC_EmitInteger, MVT::i32, 0,
4374 : /* 17891*/ OPC_EmitInteger, MVT::i32, 0,
4375 : /* 17894*/ OPC_EmitInteger, MVT::i32, 0,
4376 : /* 17897*/ OPC_EmitInteger, MVT::i32, 0,
4377 : /* 17900*/ OPC_EmitInteger, MVT::i32, 0,
4378 : /* 17903*/ OPC_EmitInteger, MVT::i32, 0,
4379 : /* 17906*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4380 : /* 17918*/ OPC_EmitInteger, MVT::i32, 0,
4381 : /* 17921*/ OPC_EmitInteger, MVT::i32, 0,
4382 : /* 17924*/ OPC_EmitInteger, MVT::i32, 0,
4383 : /* 17927*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4384 : /* 17939*/ OPC_EmitInteger, MVT::i32, 1,
4385 : /* 17942*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4386 : /* 17945*/ OPC_EmitInteger, MVT::i32, 0,
4387 : /* 17948*/ OPC_EmitInteger, MVT::i32, 0,
4388 : /* 17951*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SETE), 0,
4389 : MVT::f32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4390 : // Src: (selectcc:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, (fpimm:{ *:[f32] })<<P:Predicate_FP_ONE>>, (fpimm:{ *:[f32] })<<P:Predicate_FP_ZERO>>, (cond:{ *:[Other] })<<P:Predicate_COND_OEQ>>) - Complexity = 11
4391 : // Dst: (SETE:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1)
4392 : /* 17977*/ /*Scope*/ 105, /*->18083*/
4393 : /* 17978*/ OPC_CheckPredicate, 3, // Predicate_COND_OGT
4394 : /* 17980*/ OPC_MoveParent,
4395 : /* 17981*/ OPC_CheckType, MVT::f32,
4396 : /* 17983*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4397 : /* 17985*/ OPC_EmitInteger, MVT::i32, 0,
4398 : /* 17988*/ OPC_EmitInteger, MVT::i32, 0,
4399 : /* 17991*/ OPC_EmitInteger, MVT::i32, 1,
4400 : /* 17994*/ OPC_EmitInteger, MVT::i32, 0,
4401 : /* 17997*/ OPC_EmitInteger, MVT::i32, 0,
4402 : /* 18000*/ OPC_EmitInteger, MVT::i32, 0,
4403 : /* 18003*/ OPC_EmitInteger, MVT::i32, 0,
4404 : /* 18006*/ OPC_EmitInteger, MVT::i32, 0,
4405 : /* 18009*/ OPC_EmitInteger, MVT::i32, 0,
4406 : /* 18012*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4407 : /* 18024*/ OPC_EmitInteger, MVT::i32, 0,
4408 : /* 18027*/ OPC_EmitInteger, MVT::i32, 0,
4409 : /* 18030*/ OPC_EmitInteger, MVT::i32, 0,
4410 : /* 18033*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4411 : /* 18045*/ OPC_EmitInteger, MVT::i32, 1,
4412 : /* 18048*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4413 : /* 18051*/ OPC_EmitInteger, MVT::i32, 0,
4414 : /* 18054*/ OPC_EmitInteger, MVT::i32, 0,
4415 : /* 18057*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SGT), 0,
4416 : MVT::f32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4417 : // Src: (selectcc:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, (fpimm:{ *:[f32] })<<P:Predicate_FP_ONE>>, (fpimm:{ *:[f32] })<<P:Predicate_FP_ZERO>>, (cond:{ *:[Other] })<<P:Predicate_COND_OGT>>) - Complexity = 11
4418 : // Dst: (SGT:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1)
4419 : /* 18083*/ /*Scope*/ 105, /*->18189*/
4420 : /* 18084*/ OPC_CheckPredicate, 4, // Predicate_COND_OGE
4421 : /* 18086*/ OPC_MoveParent,
4422 : /* 18087*/ OPC_CheckType, MVT::f32,
4423 : /* 18089*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4424 : /* 18091*/ OPC_EmitInteger, MVT::i32, 0,
4425 : /* 18094*/ OPC_EmitInteger, MVT::i32, 0,
4426 : /* 18097*/ OPC_EmitInteger, MVT::i32, 1,
4427 : /* 18100*/ OPC_EmitInteger, MVT::i32, 0,
4428 : /* 18103*/ OPC_EmitInteger, MVT::i32, 0,
4429 : /* 18106*/ OPC_EmitInteger, MVT::i32, 0,
4430 : /* 18109*/ OPC_EmitInteger, MVT::i32, 0,
4431 : /* 18112*/ OPC_EmitInteger, MVT::i32, 0,
4432 : /* 18115*/ OPC_EmitInteger, MVT::i32, 0,
4433 : /* 18118*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4434 : /* 18130*/ OPC_EmitInteger, MVT::i32, 0,
4435 : /* 18133*/ OPC_EmitInteger, MVT::i32, 0,
4436 : /* 18136*/ OPC_EmitInteger, MVT::i32, 0,
4437 : /* 18139*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4438 : /* 18151*/ OPC_EmitInteger, MVT::i32, 1,
4439 : /* 18154*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4440 : /* 18157*/ OPC_EmitInteger, MVT::i32, 0,
4441 : /* 18160*/ OPC_EmitInteger, MVT::i32, 0,
4442 : /* 18163*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SGE), 0,
4443 : MVT::f32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4444 : // Src: (selectcc:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, (fpimm:{ *:[f32] })<<P:Predicate_FP_ONE>>, (fpimm:{ *:[f32] })<<P:Predicate_FP_ZERO>>, (cond:{ *:[Other] })<<P:Predicate_COND_OGE>>) - Complexity = 11
4445 : // Dst: (SGE:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1)
4446 : /* 18189*/ /*Scope*/ 105, /*->18295*/
4447 : /* 18190*/ OPC_CheckPredicate, 5, // Predicate_COND_UNE_NE
4448 : /* 18192*/ OPC_MoveParent,
4449 : /* 18193*/ OPC_CheckType, MVT::f32,
4450 : /* 18195*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4451 : /* 18197*/ OPC_EmitInteger, MVT::i32, 0,
4452 : /* 18200*/ OPC_EmitInteger, MVT::i32, 0,
4453 : /* 18203*/ OPC_EmitInteger, MVT::i32, 1,
4454 : /* 18206*/ OPC_EmitInteger, MVT::i32, 0,
4455 : /* 18209*/ OPC_EmitInteger, MVT::i32, 0,
4456 : /* 18212*/ OPC_EmitInteger, MVT::i32, 0,
4457 : /* 18215*/ OPC_EmitInteger, MVT::i32, 0,
4458 : /* 18218*/ OPC_EmitInteger, MVT::i32, 0,
4459 : /* 18221*/ OPC_EmitInteger, MVT::i32, 0,
4460 : /* 18224*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4461 : /* 18236*/ OPC_EmitInteger, MVT::i32, 0,
4462 : /* 18239*/ OPC_EmitInteger, MVT::i32, 0,
4463 : /* 18242*/ OPC_EmitInteger, MVT::i32, 0,
4464 : /* 18245*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4465 : /* 18257*/ OPC_EmitInteger, MVT::i32, 1,
4466 : /* 18260*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4467 : /* 18263*/ OPC_EmitInteger, MVT::i32, 0,
4468 : /* 18266*/ OPC_EmitInteger, MVT::i32, 0,
4469 : /* 18269*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SNE), 0,
4470 : MVT::f32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4471 : // Src: (selectcc:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, (fpimm:{ *:[f32] })<<P:Predicate_FP_ONE>>, (fpimm:{ *:[f32] })<<P:Predicate_FP_ZERO>>, (cond:{ *:[Other] })<<P:Predicate_COND_UNE_NE>>) - Complexity = 11
4472 : // Dst: (SNE:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1)
4473 : /* 18295*/ 0, /*End of Scope*/
4474 : /* 18296*/ 0, /*End of Scope*/
4475 : /* 18297*/ /*Scope*/ 127|128,4/*639*/, /*->18938*/
4476 : /* 18299*/ OPC_MoveChild1,
4477 : /* 18300*/ OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP),
4478 : /* 18303*/ OPC_CheckPredicate, 7, // Predicate_FP_ZERO
4479 : /* 18305*/ OPC_MoveParent,
4480 : /* 18306*/ OPC_RecordChild2, // #1 = $src1
4481 : /* 18307*/ OPC_RecordChild3, // #2 = $src2
4482 : /* 18308*/ OPC_MoveChild4,
4483 : /* 18309*/ OPC_CheckOpcode, TARGET_VAL(ISD::CONDCODE),
4484 : /* 18312*/ OPC_Scope, 103, /*->18417*/ // 6 children in Scope
4485 : /* 18314*/ OPC_CheckPredicate, 2, // Predicate_COND_OEQ
4486 : /* 18316*/ OPC_MoveParent,
4487 : /* 18317*/ OPC_CheckType, MVT::f32,
4488 : /* 18319*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
4489 : /* 18321*/ OPC_EmitInteger, MVT::i32, 0,
4490 : /* 18324*/ OPC_EmitInteger, MVT::i32, 0,
4491 : /* 18327*/ OPC_EmitInteger, MVT::i32, 0,
4492 : /* 18330*/ OPC_EmitInteger, MVT::i32, 0,
4493 : /* 18333*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4494 : /* 18345*/ OPC_EmitInteger, MVT::i32, 0,
4495 : /* 18348*/ OPC_EmitInteger, MVT::i32, 0,
4496 : /* 18351*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4497 : /* 18363*/ OPC_EmitInteger, MVT::i32, 0,
4498 : /* 18366*/ OPC_EmitInteger, MVT::i32, 0,
4499 : /* 18369*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4500 : /* 18381*/ OPC_EmitInteger, MVT::i32, 1,
4501 : /* 18384*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4502 : /* 18387*/ OPC_EmitInteger, MVT::i32, 0,
4503 : /* 18390*/ OPC_EmitInteger, MVT::i32, 0,
4504 : /* 18393*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDE_r600), 0,
4505 : MVT::f32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4506 : // Src: (selectcc:{ *:[f32] } f32:{ *:[f32] }:$src0, (fpimm:{ *:[f32] })<<P:Predicate_FP_ZERO>>, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2, (cond:{ *:[Other] })<<P:Predicate_COND_OEQ>>) - Complexity = 7
4507 : // Dst: (CNDE_r600:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2)
4508 : /* 18417*/ /*Scope*/ 103, /*->18521*/
4509 : /* 18418*/ OPC_CheckPredicate, 3, // Predicate_COND_OGT
4510 : /* 18420*/ OPC_MoveParent,
4511 : /* 18421*/ OPC_CheckType, MVT::f32,
4512 : /* 18423*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
4513 : /* 18425*/ OPC_EmitInteger, MVT::i32, 0,
4514 : /* 18428*/ OPC_EmitInteger, MVT::i32, 0,
4515 : /* 18431*/ OPC_EmitInteger, MVT::i32, 0,
4516 : /* 18434*/ OPC_EmitInteger, MVT::i32, 0,
4517 : /* 18437*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4518 : /* 18449*/ OPC_EmitInteger, MVT::i32, 0,
4519 : /* 18452*/ OPC_EmitInteger, MVT::i32, 0,
4520 : /* 18455*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4521 : /* 18467*/ OPC_EmitInteger, MVT::i32, 0,
4522 : /* 18470*/ OPC_EmitInteger, MVT::i32, 0,
4523 : /* 18473*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4524 : /* 18485*/ OPC_EmitInteger, MVT::i32, 1,
4525 : /* 18488*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4526 : /* 18491*/ OPC_EmitInteger, MVT::i32, 0,
4527 : /* 18494*/ OPC_EmitInteger, MVT::i32, 0,
4528 : /* 18497*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDGT_r600), 0,
4529 : MVT::f32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4530 : // Src: (selectcc:{ *:[f32] } f32:{ *:[f32] }:$src0, (fpimm:{ *:[f32] })<<P:Predicate_FP_ZERO>>, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2, (cond:{ *:[Other] })<<P:Predicate_COND_OGT>>) - Complexity = 7
4531 : // Dst: (CNDGT_r600:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2)
4532 : /* 18521*/ /*Scope*/ 103, /*->18625*/
4533 : /* 18522*/ OPC_CheckPredicate, 4, // Predicate_COND_OGE
4534 : /* 18524*/ OPC_MoveParent,
4535 : /* 18525*/ OPC_CheckType, MVT::f32,
4536 : /* 18527*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
4537 : /* 18529*/ OPC_EmitInteger, MVT::i32, 0,
4538 : /* 18532*/ OPC_EmitInteger, MVT::i32, 0,
4539 : /* 18535*/ OPC_EmitInteger, MVT::i32, 0,
4540 : /* 18538*/ OPC_EmitInteger, MVT::i32, 0,
4541 : /* 18541*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4542 : /* 18553*/ OPC_EmitInteger, MVT::i32, 0,
4543 : /* 18556*/ OPC_EmitInteger, MVT::i32, 0,
4544 : /* 18559*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4545 : /* 18571*/ OPC_EmitInteger, MVT::i32, 0,
4546 : /* 18574*/ OPC_EmitInteger, MVT::i32, 0,
4547 : /* 18577*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4548 : /* 18589*/ OPC_EmitInteger, MVT::i32, 1,
4549 : /* 18592*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4550 : /* 18595*/ OPC_EmitInteger, MVT::i32, 0,
4551 : /* 18598*/ OPC_EmitInteger, MVT::i32, 0,
4552 : /* 18601*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDGE_r600), 0,
4553 : MVT::f32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4554 : // Src: (selectcc:{ *:[f32] } f32:{ *:[f32] }:$src0, (fpimm:{ *:[f32] })<<P:Predicate_FP_ZERO>>, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2, (cond:{ *:[Other] })<<P:Predicate_COND_OGE>>) - Complexity = 7
4555 : // Dst: (CNDGE_r600:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2)
4556 : /* 18625*/ /*Scope*/ 103, /*->18729*/
4557 : /* 18626*/ OPC_CheckPredicate, 2, // Predicate_COND_OEQ
4558 : /* 18628*/ OPC_MoveParent,
4559 : /* 18629*/ OPC_CheckType, MVT::f32,
4560 : /* 18631*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
4561 : /* 18633*/ OPC_EmitInteger, MVT::i32, 0,
4562 : /* 18636*/ OPC_EmitInteger, MVT::i32, 0,
4563 : /* 18639*/ OPC_EmitInteger, MVT::i32, 0,
4564 : /* 18642*/ OPC_EmitInteger, MVT::i32, 0,
4565 : /* 18645*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4566 : /* 18657*/ OPC_EmitInteger, MVT::i32, 0,
4567 : /* 18660*/ OPC_EmitInteger, MVT::i32, 0,
4568 : /* 18663*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4569 : /* 18675*/ OPC_EmitInteger, MVT::i32, 0,
4570 : /* 18678*/ OPC_EmitInteger, MVT::i32, 0,
4571 : /* 18681*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4572 : /* 18693*/ OPC_EmitInteger, MVT::i32, 1,
4573 : /* 18696*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4574 : /* 18699*/ OPC_EmitInteger, MVT::i32, 0,
4575 : /* 18702*/ OPC_EmitInteger, MVT::i32, 0,
4576 : /* 18705*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDE_eg), 0,
4577 : MVT::f32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4578 : // Src: (selectcc:{ *:[f32] } f32:{ *:[f32] }:$src0, (fpimm:{ *:[f32] })<<P:Predicate_FP_ZERO>>, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2, (cond:{ *:[Other] })<<P:Predicate_COND_OEQ>>) - Complexity = 7
4579 : // Dst: (CNDE_eg:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2)
4580 : /* 18729*/ /*Scope*/ 103, /*->18833*/
4581 : /* 18730*/ OPC_CheckPredicate, 3, // Predicate_COND_OGT
4582 : /* 18732*/ OPC_MoveParent,
4583 : /* 18733*/ OPC_CheckType, MVT::f32,
4584 : /* 18735*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
4585 : /* 18737*/ OPC_EmitInteger, MVT::i32, 0,
4586 : /* 18740*/ OPC_EmitInteger, MVT::i32, 0,
4587 : /* 18743*/ OPC_EmitInteger, MVT::i32, 0,
4588 : /* 18746*/ OPC_EmitInteger, MVT::i32, 0,
4589 : /* 18749*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4590 : /* 18761*/ OPC_EmitInteger, MVT::i32, 0,
4591 : /* 18764*/ OPC_EmitInteger, MVT::i32, 0,
4592 : /* 18767*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4593 : /* 18779*/ OPC_EmitInteger, MVT::i32, 0,
4594 : /* 18782*/ OPC_EmitInteger, MVT::i32, 0,
4595 : /* 18785*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4596 : /* 18797*/ OPC_EmitInteger, MVT::i32, 1,
4597 : /* 18800*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4598 : /* 18803*/ OPC_EmitInteger, MVT::i32, 0,
4599 : /* 18806*/ OPC_EmitInteger, MVT::i32, 0,
4600 : /* 18809*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDGT_eg), 0,
4601 : MVT::f32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4602 : // Src: (selectcc:{ *:[f32] } f32:{ *:[f32] }:$src0, (fpimm:{ *:[f32] })<<P:Predicate_FP_ZERO>>, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2, (cond:{ *:[Other] })<<P:Predicate_COND_OGT>>) - Complexity = 7
4603 : // Dst: (CNDGT_eg:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2)
4604 : /* 18833*/ /*Scope*/ 103, /*->18937*/
4605 : /* 18834*/ OPC_CheckPredicate, 4, // Predicate_COND_OGE
4606 : /* 18836*/ OPC_MoveParent,
4607 : /* 18837*/ OPC_CheckType, MVT::f32,
4608 : /* 18839*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
4609 : /* 18841*/ OPC_EmitInteger, MVT::i32, 0,
4610 : /* 18844*/ OPC_EmitInteger, MVT::i32, 0,
4611 : /* 18847*/ OPC_EmitInteger, MVT::i32, 0,
4612 : /* 18850*/ OPC_EmitInteger, MVT::i32, 0,
4613 : /* 18853*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4614 : /* 18865*/ OPC_EmitInteger, MVT::i32, 0,
4615 : /* 18868*/ OPC_EmitInteger, MVT::i32, 0,
4616 : /* 18871*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4617 : /* 18883*/ OPC_EmitInteger, MVT::i32, 0,
4618 : /* 18886*/ OPC_EmitInteger, MVT::i32, 0,
4619 : /* 18889*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4620 : /* 18901*/ OPC_EmitInteger, MVT::i32, 1,
4621 : /* 18904*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4622 : /* 18907*/ OPC_EmitInteger, MVT::i32, 0,
4623 : /* 18910*/ OPC_EmitInteger, MVT::i32, 0,
4624 : /* 18913*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDGE_eg), 0,
4625 : MVT::f32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4626 : // Src: (selectcc:{ *:[f32] } f32:{ *:[f32] }:$src0, (fpimm:{ *:[f32] })<<P:Predicate_FP_ZERO>>, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2, (cond:{ *:[Other] })<<P:Predicate_COND_OGE>>) - Complexity = 7
4627 : // Dst: (CNDGE_eg:{ *:[f32] } f32:{ *:[f32] }:$src0, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2)
4628 : /* 18937*/ 0, /*End of Scope*/
4629 : /* 18938*/ 0, /*End of Scope*/
4630 : /* 18939*/ /*Scope*/ 12|128,11/*1420*/, /*->20361*/
4631 : /* 18941*/ OPC_CheckChild0Type, MVT::i32,
4632 : /* 18943*/ OPC_Scope, 13|128,5/*653*/, /*->19599*/ // 3 children in Scope
4633 : /* 18946*/ OPC_RecordChild1, // #1 = $src1
4634 : /* 18947*/ OPC_CheckChild2Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4635 : /* 18958*/ OPC_CheckChild3Integer, 0,
4636 : /* 18960*/ OPC_MoveChild4,
4637 : /* 18961*/ OPC_Scope, 105, /*->19068*/ // 6 children in Scope
4638 : /* 18963*/ OPC_CheckCondCode, ISD::SETEQ,
4639 : /* 18965*/ OPC_MoveParent,
4640 : /* 18966*/ OPC_CheckType, MVT::i32,
4641 : /* 18968*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4642 : /* 18970*/ OPC_EmitInteger, MVT::i32, 0,
4643 : /* 18973*/ OPC_EmitInteger, MVT::i32, 0,
4644 : /* 18976*/ OPC_EmitInteger, MVT::i32, 1,
4645 : /* 18979*/ OPC_EmitInteger, MVT::i32, 0,
4646 : /* 18982*/ OPC_EmitInteger, MVT::i32, 0,
4647 : /* 18985*/ OPC_EmitInteger, MVT::i32, 0,
4648 : /* 18988*/ OPC_EmitInteger, MVT::i32, 0,
4649 : /* 18991*/ OPC_EmitInteger, MVT::i32, 0,
4650 : /* 18994*/ OPC_EmitInteger, MVT::i32, 0,
4651 : /* 18997*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4652 : /* 19009*/ OPC_EmitInteger, MVT::i32, 0,
4653 : /* 19012*/ OPC_EmitInteger, MVT::i32, 0,
4654 : /* 19015*/ OPC_EmitInteger, MVT::i32, 0,
4655 : /* 19018*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4656 : /* 19030*/ OPC_EmitInteger, MVT::i32, 1,
4657 : /* 19033*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4658 : /* 19036*/ OPC_EmitInteger, MVT::i32, 0,
4659 : /* 19039*/ OPC_EmitInteger, MVT::i32, 0,
4660 : /* 19042*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SETE_INT), 0,
4661 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4662 : // Src: (selectcc:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, -1:{ *:[i32] }, 0:{ *:[i32] }, SETEQ:{ *:[Other] }) - Complexity = 13
4663 : // Dst: (SETE_INT:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
4664 : /* 19068*/ /*Scope*/ 105, /*->19174*/
4665 : /* 19069*/ OPC_CheckCondCode, ISD::SETGT,
4666 : /* 19071*/ OPC_MoveParent,
4667 : /* 19072*/ OPC_CheckType, MVT::i32,
4668 : /* 19074*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4669 : /* 19076*/ OPC_EmitInteger, MVT::i32, 0,
4670 : /* 19079*/ OPC_EmitInteger, MVT::i32, 0,
4671 : /* 19082*/ OPC_EmitInteger, MVT::i32, 1,
4672 : /* 19085*/ OPC_EmitInteger, MVT::i32, 0,
4673 : /* 19088*/ OPC_EmitInteger, MVT::i32, 0,
4674 : /* 19091*/ OPC_EmitInteger, MVT::i32, 0,
4675 : /* 19094*/ OPC_EmitInteger, MVT::i32, 0,
4676 : /* 19097*/ OPC_EmitInteger, MVT::i32, 0,
4677 : /* 19100*/ OPC_EmitInteger, MVT::i32, 0,
4678 : /* 19103*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4679 : /* 19115*/ OPC_EmitInteger, MVT::i32, 0,
4680 : /* 19118*/ OPC_EmitInteger, MVT::i32, 0,
4681 : /* 19121*/ OPC_EmitInteger, MVT::i32, 0,
4682 : /* 19124*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4683 : /* 19136*/ OPC_EmitInteger, MVT::i32, 1,
4684 : /* 19139*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4685 : /* 19142*/ OPC_EmitInteger, MVT::i32, 0,
4686 : /* 19145*/ OPC_EmitInteger, MVT::i32, 0,
4687 : /* 19148*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SETGT_INT), 0,
4688 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4689 : // Src: (selectcc:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, -1:{ *:[i32] }, 0:{ *:[i32] }, SETGT:{ *:[Other] }) - Complexity = 13
4690 : // Dst: (SETGT_INT:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
4691 : /* 19174*/ /*Scope*/ 105, /*->19280*/
4692 : /* 19175*/ OPC_CheckCondCode, ISD::SETGE,
4693 : /* 19177*/ OPC_MoveParent,
4694 : /* 19178*/ OPC_CheckType, MVT::i32,
4695 : /* 19180*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4696 : /* 19182*/ OPC_EmitInteger, MVT::i32, 0,
4697 : /* 19185*/ OPC_EmitInteger, MVT::i32, 0,
4698 : /* 19188*/ OPC_EmitInteger, MVT::i32, 1,
4699 : /* 19191*/ OPC_EmitInteger, MVT::i32, 0,
4700 : /* 19194*/ OPC_EmitInteger, MVT::i32, 0,
4701 : /* 19197*/ OPC_EmitInteger, MVT::i32, 0,
4702 : /* 19200*/ OPC_EmitInteger, MVT::i32, 0,
4703 : /* 19203*/ OPC_EmitInteger, MVT::i32, 0,
4704 : /* 19206*/ OPC_EmitInteger, MVT::i32, 0,
4705 : /* 19209*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4706 : /* 19221*/ OPC_EmitInteger, MVT::i32, 0,
4707 : /* 19224*/ OPC_EmitInteger, MVT::i32, 0,
4708 : /* 19227*/ OPC_EmitInteger, MVT::i32, 0,
4709 : /* 19230*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4710 : /* 19242*/ OPC_EmitInteger, MVT::i32, 1,
4711 : /* 19245*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4712 : /* 19248*/ OPC_EmitInteger, MVT::i32, 0,
4713 : /* 19251*/ OPC_EmitInteger, MVT::i32, 0,
4714 : /* 19254*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SETGE_INT), 0,
4715 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4716 : // Src: (selectcc:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, -1:{ *:[i32] }, 0:{ *:[i32] }, SETGE:{ *:[Other] }) - Complexity = 13
4717 : // Dst: (SETGE_INT:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
4718 : /* 19280*/ /*Scope*/ 105, /*->19386*/
4719 : /* 19281*/ OPC_CheckCondCode, ISD::SETNE,
4720 : /* 19283*/ OPC_MoveParent,
4721 : /* 19284*/ OPC_CheckType, MVT::i32,
4722 : /* 19286*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4723 : /* 19288*/ OPC_EmitInteger, MVT::i32, 0,
4724 : /* 19291*/ OPC_EmitInteger, MVT::i32, 0,
4725 : /* 19294*/ OPC_EmitInteger, MVT::i32, 1,
4726 : /* 19297*/ OPC_EmitInteger, MVT::i32, 0,
4727 : /* 19300*/ OPC_EmitInteger, MVT::i32, 0,
4728 : /* 19303*/ OPC_EmitInteger, MVT::i32, 0,
4729 : /* 19306*/ OPC_EmitInteger, MVT::i32, 0,
4730 : /* 19309*/ OPC_EmitInteger, MVT::i32, 0,
4731 : /* 19312*/ OPC_EmitInteger, MVT::i32, 0,
4732 : /* 19315*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4733 : /* 19327*/ OPC_EmitInteger, MVT::i32, 0,
4734 : /* 19330*/ OPC_EmitInteger, MVT::i32, 0,
4735 : /* 19333*/ OPC_EmitInteger, MVT::i32, 0,
4736 : /* 19336*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4737 : /* 19348*/ OPC_EmitInteger, MVT::i32, 1,
4738 : /* 19351*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4739 : /* 19354*/ OPC_EmitInteger, MVT::i32, 0,
4740 : /* 19357*/ OPC_EmitInteger, MVT::i32, 0,
4741 : /* 19360*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SETNE_INT), 0,
4742 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4743 : // Src: (selectcc:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, -1:{ *:[i32] }, 0:{ *:[i32] }, SETNE:{ *:[Other] }) - Complexity = 13
4744 : // Dst: (SETNE_INT:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
4745 : /* 19386*/ /*Scope*/ 105, /*->19492*/
4746 : /* 19387*/ OPC_CheckCondCode, ISD::SETUGT,
4747 : /* 19389*/ OPC_MoveParent,
4748 : /* 19390*/ OPC_CheckType, MVT::i32,
4749 : /* 19392*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4750 : /* 19394*/ OPC_EmitInteger, MVT::i32, 0,
4751 : /* 19397*/ OPC_EmitInteger, MVT::i32, 0,
4752 : /* 19400*/ OPC_EmitInteger, MVT::i32, 1,
4753 : /* 19403*/ OPC_EmitInteger, MVT::i32, 0,
4754 : /* 19406*/ OPC_EmitInteger, MVT::i32, 0,
4755 : /* 19409*/ OPC_EmitInteger, MVT::i32, 0,
4756 : /* 19412*/ OPC_EmitInteger, MVT::i32, 0,
4757 : /* 19415*/ OPC_EmitInteger, MVT::i32, 0,
4758 : /* 19418*/ OPC_EmitInteger, MVT::i32, 0,
4759 : /* 19421*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4760 : /* 19433*/ OPC_EmitInteger, MVT::i32, 0,
4761 : /* 19436*/ OPC_EmitInteger, MVT::i32, 0,
4762 : /* 19439*/ OPC_EmitInteger, MVT::i32, 0,
4763 : /* 19442*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4764 : /* 19454*/ OPC_EmitInteger, MVT::i32, 1,
4765 : /* 19457*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4766 : /* 19460*/ OPC_EmitInteger, MVT::i32, 0,
4767 : /* 19463*/ OPC_EmitInteger, MVT::i32, 0,
4768 : /* 19466*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SETGT_UINT), 0,
4769 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4770 : // Src: (selectcc:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, -1:{ *:[i32] }, 0:{ *:[i32] }, SETUGT:{ *:[Other] }) - Complexity = 13
4771 : // Dst: (SETGT_UINT:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
4772 : /* 19492*/ /*Scope*/ 105, /*->19598*/
4773 : /* 19493*/ OPC_CheckCondCode, ISD::SETUGE,
4774 : /* 19495*/ OPC_MoveParent,
4775 : /* 19496*/ OPC_CheckType, MVT::i32,
4776 : /* 19498*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4777 : /* 19500*/ OPC_EmitInteger, MVT::i32, 0,
4778 : /* 19503*/ OPC_EmitInteger, MVT::i32, 0,
4779 : /* 19506*/ OPC_EmitInteger, MVT::i32, 1,
4780 : /* 19509*/ OPC_EmitInteger, MVT::i32, 0,
4781 : /* 19512*/ OPC_EmitInteger, MVT::i32, 0,
4782 : /* 19515*/ OPC_EmitInteger, MVT::i32, 0,
4783 : /* 19518*/ OPC_EmitInteger, MVT::i32, 0,
4784 : /* 19521*/ OPC_EmitInteger, MVT::i32, 0,
4785 : /* 19524*/ OPC_EmitInteger, MVT::i32, 0,
4786 : /* 19527*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4787 : /* 19539*/ OPC_EmitInteger, MVT::i32, 0,
4788 : /* 19542*/ OPC_EmitInteger, MVT::i32, 0,
4789 : /* 19545*/ OPC_EmitInteger, MVT::i32, 0,
4790 : /* 19548*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4791 : /* 19560*/ OPC_EmitInteger, MVT::i32, 1,
4792 : /* 19563*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4793 : /* 19566*/ OPC_EmitInteger, MVT::i32, 0,
4794 : /* 19569*/ OPC_EmitInteger, MVT::i32, 0,
4795 : /* 19572*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SETGE_UINT), 0,
4796 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
4797 : // Src: (selectcc:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, -1:{ *:[i32] }, 0:{ *:[i32] }, SETUGE:{ *:[Other] }) - Complexity = 13
4798 : // Dst: (SETGE_UINT:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
4799 : /* 19598*/ 0, /*End of Scope*/
4800 : /* 19599*/ /*Scope*/ 126|128,4/*638*/, /*->20239*/
4801 : /* 19601*/ OPC_CheckChild1Integer, 0,
4802 : /* 19603*/ OPC_RecordChild2, // #1 = $src1
4803 : /* 19604*/ OPC_RecordChild3, // #2 = $src2
4804 : /* 19605*/ OPC_MoveChild4,
4805 : /* 19606*/ OPC_Scope, 61|128,2/*317*/, /*->19926*/ // 4 children in Scope
4806 : /* 19609*/ OPC_CheckOpcode, TARGET_VAL(ISD::CONDCODE),
4807 : /* 19612*/ OPC_Scope, 103, /*->19717*/ // 3 children in Scope
4808 : /* 19614*/ OPC_CheckPredicate, 8, // Predicate_COND_EQ
4809 : /* 19616*/ OPC_MoveParent,
4810 : /* 19617*/ OPC_CheckType, MVT::i32,
4811 : /* 19619*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4812 : /* 19621*/ OPC_EmitInteger, MVT::i32, 0,
4813 : /* 19624*/ OPC_EmitInteger, MVT::i32, 0,
4814 : /* 19627*/ OPC_EmitInteger, MVT::i32, 0,
4815 : /* 19630*/ OPC_EmitInteger, MVT::i32, 0,
4816 : /* 19633*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4817 : /* 19645*/ OPC_EmitInteger, MVT::i32, 0,
4818 : /* 19648*/ OPC_EmitInteger, MVT::i32, 0,
4819 : /* 19651*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4820 : /* 19663*/ OPC_EmitInteger, MVT::i32, 0,
4821 : /* 19666*/ OPC_EmitInteger, MVT::i32, 0,
4822 : /* 19669*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4823 : /* 19681*/ OPC_EmitInteger, MVT::i32, 1,
4824 : /* 19684*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4825 : /* 19687*/ OPC_EmitInteger, MVT::i32, 0,
4826 : /* 19690*/ OPC_EmitInteger, MVT::i32, 0,
4827 : /* 19693*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDE_INT), 0,
4828 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4829 : // Src: (selectcc:{ *:[i32] } i32:{ *:[i32] }:$src0, 0:{ *:[i32] }, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2, (cond:{ *:[Other] })<<P:Predicate_COND_EQ>>) - Complexity = 8
4830 : // Dst: (CNDE_INT:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2)
4831 : /* 19717*/ /*Scope*/ 103, /*->19821*/
4832 : /* 19718*/ OPC_CheckPredicate, 9, // Predicate_COND_SGE
4833 : /* 19720*/ OPC_MoveParent,
4834 : /* 19721*/ OPC_CheckType, MVT::i32,
4835 : /* 19723*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4836 : /* 19725*/ OPC_EmitInteger, MVT::i32, 0,
4837 : /* 19728*/ OPC_EmitInteger, MVT::i32, 0,
4838 : /* 19731*/ OPC_EmitInteger, MVT::i32, 0,
4839 : /* 19734*/ OPC_EmitInteger, MVT::i32, 0,
4840 : /* 19737*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4841 : /* 19749*/ OPC_EmitInteger, MVT::i32, 0,
4842 : /* 19752*/ OPC_EmitInteger, MVT::i32, 0,
4843 : /* 19755*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4844 : /* 19767*/ OPC_EmitInteger, MVT::i32, 0,
4845 : /* 19770*/ OPC_EmitInteger, MVT::i32, 0,
4846 : /* 19773*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4847 : /* 19785*/ OPC_EmitInteger, MVT::i32, 1,
4848 : /* 19788*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4849 : /* 19791*/ OPC_EmitInteger, MVT::i32, 0,
4850 : /* 19794*/ OPC_EmitInteger, MVT::i32, 0,
4851 : /* 19797*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDGE_INT), 0,
4852 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4853 : // Src: (selectcc:{ *:[i32] } i32:{ *:[i32] }:$src0, 0:{ *:[i32] }, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2, (cond:{ *:[Other] })<<P:Predicate_COND_SGE>>) - Complexity = 8
4854 : // Dst: (CNDGE_INT:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2)
4855 : /* 19821*/ /*Scope*/ 103, /*->19925*/
4856 : /* 19822*/ OPC_CheckPredicate, 10, // Predicate_COND_SGT
4857 : /* 19824*/ OPC_MoveParent,
4858 : /* 19825*/ OPC_CheckType, MVT::i32,
4859 : /* 19827*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4860 : /* 19829*/ OPC_EmitInteger, MVT::i32, 0,
4861 : /* 19832*/ OPC_EmitInteger, MVT::i32, 0,
4862 : /* 19835*/ OPC_EmitInteger, MVT::i32, 0,
4863 : /* 19838*/ OPC_EmitInteger, MVT::i32, 0,
4864 : /* 19841*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4865 : /* 19853*/ OPC_EmitInteger, MVT::i32, 0,
4866 : /* 19856*/ OPC_EmitInteger, MVT::i32, 0,
4867 : /* 19859*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4868 : /* 19871*/ OPC_EmitInteger, MVT::i32, 0,
4869 : /* 19874*/ OPC_EmitInteger, MVT::i32, 0,
4870 : /* 19877*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4871 : /* 19889*/ OPC_EmitInteger, MVT::i32, 1,
4872 : /* 19892*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4873 : /* 19895*/ OPC_EmitInteger, MVT::i32, 0,
4874 : /* 19898*/ OPC_EmitInteger, MVT::i32, 0,
4875 : /* 19901*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDGT_INT), 0,
4876 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4877 : // Src: (selectcc:{ *:[i32] } i32:{ *:[i32] }:$src0, 0:{ *:[i32] }, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2, (cond:{ *:[Other] })<<P:Predicate_COND_SGT>>) - Complexity = 8
4878 : // Dst: (CNDGT_INT:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2)
4879 : /* 19925*/ 0, /*End of Scope*/
4880 : /* 19926*/ /*Scope*/ 103, /*->20030*/
4881 : /* 19927*/ OPC_CheckCondCode, ISD::SETEQ,
4882 : /* 19929*/ OPC_MoveParent,
4883 : /* 19930*/ OPC_CheckType, MVT::f32,
4884 : /* 19932*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4885 : /* 19934*/ OPC_EmitInteger, MVT::i32, 0,
4886 : /* 19937*/ OPC_EmitInteger, MVT::i32, 0,
4887 : /* 19940*/ OPC_EmitInteger, MVT::i32, 0,
4888 : /* 19943*/ OPC_EmitInteger, MVT::i32, 0,
4889 : /* 19946*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4890 : /* 19958*/ OPC_EmitInteger, MVT::i32, 0,
4891 : /* 19961*/ OPC_EmitInteger, MVT::i32, 0,
4892 : /* 19964*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4893 : /* 19976*/ OPC_EmitInteger, MVT::i32, 0,
4894 : /* 19979*/ OPC_EmitInteger, MVT::i32, 0,
4895 : /* 19982*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4896 : /* 19994*/ OPC_EmitInteger, MVT::i32, 1,
4897 : /* 19997*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4898 : /* 20000*/ OPC_EmitInteger, MVT::i32, 0,
4899 : /* 20003*/ OPC_EmitInteger, MVT::i32, 0,
4900 : /* 20006*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDE_INT), 0,
4901 : MVT::f32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4902 : // Src: (selectcc:{ *:[f32] } i32:{ *:[i32] }:$src0, 0:{ *:[i32] }, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2, SETEQ:{ *:[Other] }) - Complexity = 8
4903 : // Dst: (CNDE_INT:{ *:[f32] } ?:{ *:[i32] }:$src0, ?:{ *:[f32] }:$src1, ?:{ *:[f32] }:$src2)
4904 : /* 20030*/ /*Scope*/ 103, /*->20134*/
4905 : /* 20031*/ OPC_CheckCondCode, ISD::SETGT,
4906 : /* 20033*/ OPC_MoveParent,
4907 : /* 20034*/ OPC_CheckType, MVT::f32,
4908 : /* 20036*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4909 : /* 20038*/ OPC_EmitInteger, MVT::i32, 0,
4910 : /* 20041*/ OPC_EmitInteger, MVT::i32, 0,
4911 : /* 20044*/ OPC_EmitInteger, MVT::i32, 0,
4912 : /* 20047*/ OPC_EmitInteger, MVT::i32, 0,
4913 : /* 20050*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4914 : /* 20062*/ OPC_EmitInteger, MVT::i32, 0,
4915 : /* 20065*/ OPC_EmitInteger, MVT::i32, 0,
4916 : /* 20068*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4917 : /* 20080*/ OPC_EmitInteger, MVT::i32, 0,
4918 : /* 20083*/ OPC_EmitInteger, MVT::i32, 0,
4919 : /* 20086*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4920 : /* 20098*/ OPC_EmitInteger, MVT::i32, 1,
4921 : /* 20101*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4922 : /* 20104*/ OPC_EmitInteger, MVT::i32, 0,
4923 : /* 20107*/ OPC_EmitInteger, MVT::i32, 0,
4924 : /* 20110*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDGT_INT), 0,
4925 : MVT::f32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4926 : // Src: (selectcc:{ *:[f32] } i32:{ *:[i32] }:$src0, 0:{ *:[i32] }, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2, SETGT:{ *:[Other] }) - Complexity = 8
4927 : // Dst: (CNDGT_INT:{ *:[f32] } ?:{ *:[i32] }:$src0, ?:{ *:[f32] }:$src1, ?:{ *:[f32] }:$src2)
4928 : /* 20134*/ /*Scope*/ 103, /*->20238*/
4929 : /* 20135*/ OPC_CheckCondCode, ISD::SETGE,
4930 : /* 20137*/ OPC_MoveParent,
4931 : /* 20138*/ OPC_CheckType, MVT::f32,
4932 : /* 20140*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4933 : /* 20142*/ OPC_EmitInteger, MVT::i32, 0,
4934 : /* 20145*/ OPC_EmitInteger, MVT::i32, 0,
4935 : /* 20148*/ OPC_EmitInteger, MVT::i32, 0,
4936 : /* 20151*/ OPC_EmitInteger, MVT::i32, 0,
4937 : /* 20154*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4938 : /* 20166*/ OPC_EmitInteger, MVT::i32, 0,
4939 : /* 20169*/ OPC_EmitInteger, MVT::i32, 0,
4940 : /* 20172*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4941 : /* 20184*/ OPC_EmitInteger, MVT::i32, 0,
4942 : /* 20187*/ OPC_EmitInteger, MVT::i32, 0,
4943 : /* 20190*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4944 : /* 20202*/ OPC_EmitInteger, MVT::i32, 1,
4945 : /* 20205*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4946 : /* 20208*/ OPC_EmitInteger, MVT::i32, 0,
4947 : /* 20211*/ OPC_EmitInteger, MVT::i32, 0,
4948 : /* 20214*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDGE_INT), 0,
4949 : MVT::f32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4950 : // Src: (selectcc:{ *:[f32] } i32:{ *:[i32] }:$src0, 0:{ *:[i32] }, f32:{ *:[f32] }:$src1, f32:{ *:[f32] }:$src2, SETGE:{ *:[Other] }) - Complexity = 8
4951 : // Dst: (CNDGE_INT:{ *:[f32] } ?:{ *:[i32] }:$src0, ?:{ *:[f32] }:$src1, ?:{ *:[f32] }:$src2)
4952 : /* 20238*/ 0, /*End of Scope*/
4953 : /* 20239*/ /*Scope*/ 120, /*->20360*/
4954 : /* 20240*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4955 : /* 20251*/ OPC_RecordChild2, // #1 = $src1
4956 : /* 20252*/ OPC_RecordChild3, // #2 = $src2
4957 : /* 20253*/ OPC_MoveChild4,
4958 : /* 20254*/ OPC_CheckOpcode, TARGET_VAL(ISD::CONDCODE),
4959 : /* 20257*/ OPC_CheckPredicate, 10, // Predicate_COND_SGT
4960 : /* 20259*/ OPC_MoveParent,
4961 : /* 20260*/ OPC_CheckType, MVT::i32,
4962 : /* 20262*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4963 : /* 20264*/ OPC_EmitInteger, MVT::i32, 0,
4964 : /* 20267*/ OPC_EmitInteger, MVT::i32, 0,
4965 : /* 20270*/ OPC_EmitInteger, MVT::i32, 0,
4966 : /* 20273*/ OPC_EmitInteger, MVT::i32, 0,
4967 : /* 20276*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4968 : /* 20288*/ OPC_EmitInteger, MVT::i32, 0,
4969 : /* 20291*/ OPC_EmitInteger, MVT::i32, 0,
4970 : /* 20294*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4971 : /* 20306*/ OPC_EmitInteger, MVT::i32, 0,
4972 : /* 20309*/ OPC_EmitInteger, MVT::i32, 0,
4973 : /* 20312*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
4974 : /* 20324*/ OPC_EmitInteger, MVT::i32, 1,
4975 : /* 20327*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
4976 : /* 20330*/ OPC_EmitInteger, MVT::i32, 0,
4977 : /* 20333*/ OPC_EmitInteger, MVT::i32, 0,
4978 : /* 20336*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CNDGE_INT), 0,
4979 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
4980 : // Src: (selectcc:{ *:[i32] } i32:{ *:[i32] }:$src0, -1:{ *:[i32] }, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2, (cond:{ *:[Other] })<<P:Predicate_COND_SGT>>) - Complexity = 8
4981 : // Dst: (CNDGE_INT:{ *:[i32] } ?:{ *:[i32] }:$src0, ?:{ *:[i32] }:$src1, ?:{ *:[i32] }:$src2)
4982 : /* 20360*/ 0, /*End of Scope*/
4983 : /* 20361*/ 0, /*End of Scope*/
4984 : /* 20362*/ /*SwitchOpcode*/ 108|128,7/*1004*/, TARGET_VAL(ISD::LOAD),// ->21370
4985 : /* 20366*/ OPC_RecordMemRef,
4986 : /* 20367*/ OPC_RecordNode, // #0 = 'ld' chained node
4987 : /* 20368*/ OPC_RecordChild1, // #1 = $addr
4988 : /* 20369*/ OPC_CheckPredicate, 11, // Predicate_unindexedload
4989 : /* 20371*/ OPC_Scope, 24, /*->20397*/ // 4 children in Scope
4990 : /* 20373*/ OPC_CheckPredicate, 12, // Predicate_load
4991 : /* 20375*/ OPC_CheckPredicate, 13, // Predicate_load_private
4992 : /* 20377*/ OPC_CheckType, MVT::i32,
4993 : /* 20379*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
4994 : /* 20381*/ OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectADDRIndirect:$addr #2 #3
4995 : /* 20384*/ OPC_EmitMergeInputChains1_0,
4996 : /* 20385*/ OPC_EmitInteger, MVT::i32, 0,
4997 : /* 20388*/ OPC_MorphNodeTo1, TARGET_VAL(R600::R600_RegisterLoad), 0|OPFL_Chain|OPFL_MemRefs,
4998 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
4999 : // Src: (ld:{ *:[i32] } ADDRIndirect:{ *:[iPTR] }:$addr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_load_private>> - Complexity = 13
5000 : // Dst: (R600_RegisterLoad:{ *:[i32] } FRAMEri:{ *:[iPTR] }:$addr, 0:{ *:[i32] })
5001 : /* 20397*/ /*Scope*/ 66|128,3/*450*/, /*->20849*/
5002 : /* 20399*/ OPC_CheckChild1Type, MVT::i32,
5003 : /* 20401*/ OPC_CheckType, MVT::i32,
5004 : /* 20403*/ OPC_Scope, 50, /*->20455*/ // 12 children in Scope
5005 : /* 20405*/ OPC_CheckPredicate, 14, // Predicate_az_extload
5006 : /* 20407*/ OPC_Scope, 22, /*->20431*/ // 2 children in Scope
5007 : /* 20409*/ OPC_CheckPredicate, 15, // Predicate_az_extloadi8
5008 : /* 20411*/ OPC_CheckPredicate, 16, // Predicate_vtx_id3_az_extloadi8
5009 : /* 20413*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5010 : /* 20415*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5011 : /* 20418*/ OPC_EmitMergeInputChains1_0,
5012 : /* 20419*/ OPC_EmitInteger, MVT::i8, 3,
5013 : /* 20422*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_8_eg), 0|OPFL_Chain|OPFL_MemRefs,
5014 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5015 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi8>><<P:Predicate_vtx_id3_az_extloadi8>> - Complexity = 13
5016 : // Dst: (VTX_READ_8_eg:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 3:{ *:[i8] })
5017 : /* 20431*/ /*Scope*/ 22, /*->20454*/
5018 : /* 20432*/ OPC_CheckPredicate, 17, // Predicate_az_extloadi16
5019 : /* 20434*/ OPC_CheckPredicate, 16, // Predicate_vtx_id3_az_extloadi16
5020 : /* 20436*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5021 : /* 20438*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5022 : /* 20441*/ OPC_EmitMergeInputChains1_0,
5023 : /* 20442*/ OPC_EmitInteger, MVT::i8, 3,
5024 : /* 20445*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_16_eg), 0|OPFL_Chain|OPFL_MemRefs,
5025 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5026 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi16>><<P:Predicate_vtx_id3_az_extloadi16>> - Complexity = 13
5027 : // Dst: (VTX_READ_16_eg:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 3:{ *:[i8] })
5028 : /* 20454*/ 0, /*End of Scope*/
5029 : /* 20455*/ /*Scope*/ 22, /*->20478*/
5030 : /* 20456*/ OPC_CheckPredicate, 12, // Predicate_load
5031 : /* 20458*/ OPC_CheckPredicate, 16, // Predicate_vtx_id3_load
5032 : /* 20460*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5033 : /* 20462*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5034 : /* 20465*/ OPC_EmitMergeInputChains1_0,
5035 : /* 20466*/ OPC_EmitInteger, MVT::i8, 3,
5036 : /* 20469*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_32_eg), 0|OPFL_Chain|OPFL_MemRefs,
5037 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5038 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id3_load>> - Complexity = 13
5039 : // Dst: (VTX_READ_32_eg:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 3:{ *:[i8] })
5040 : /* 20478*/ /*Scope*/ 50, /*->20529*/
5041 : /* 20479*/ OPC_CheckPredicate, 14, // Predicate_az_extload
5042 : /* 20481*/ OPC_Scope, 22, /*->20505*/ // 2 children in Scope
5043 : /* 20483*/ OPC_CheckPredicate, 15, // Predicate_az_extloadi8
5044 : /* 20485*/ OPC_CheckPredicate, 18, // Predicate_vtx_id2_az_extloadi8
5045 : /* 20487*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5046 : /* 20489*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5047 : /* 20492*/ OPC_EmitMergeInputChains1_0,
5048 : /* 20493*/ OPC_EmitInteger, MVT::i8, 2,
5049 : /* 20496*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_8_eg), 0|OPFL_Chain|OPFL_MemRefs,
5050 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5051 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi8>><<P:Predicate_vtx_id2_az_extloadi8>> - Complexity = 13
5052 : // Dst: (VTX_READ_8_eg:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 2:{ *:[i8] })
5053 : /* 20505*/ /*Scope*/ 22, /*->20528*/
5054 : /* 20506*/ OPC_CheckPredicate, 17, // Predicate_az_extloadi16
5055 : /* 20508*/ OPC_CheckPredicate, 18, // Predicate_vtx_id2_az_extloadi16
5056 : /* 20510*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5057 : /* 20512*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5058 : /* 20515*/ OPC_EmitMergeInputChains1_0,
5059 : /* 20516*/ OPC_EmitInteger, MVT::i8, 2,
5060 : /* 20519*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_16_eg), 0|OPFL_Chain|OPFL_MemRefs,
5061 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5062 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi16>><<P:Predicate_vtx_id2_az_extloadi16>> - Complexity = 13
5063 : // Dst: (VTX_READ_16_eg:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 2:{ *:[i8] })
5064 : /* 20528*/ 0, /*End of Scope*/
5065 : /* 20529*/ /*Scope*/ 22, /*->20552*/
5066 : /* 20530*/ OPC_CheckPredicate, 12, // Predicate_load
5067 : /* 20532*/ OPC_CheckPredicate, 18, // Predicate_vtx_id2_load
5068 : /* 20534*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5069 : /* 20536*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5070 : /* 20539*/ OPC_EmitMergeInputChains1_0,
5071 : /* 20540*/ OPC_EmitInteger, MVT::i8, 2,
5072 : /* 20543*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_32_eg), 0|OPFL_Chain|OPFL_MemRefs,
5073 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5074 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id2_load>> - Complexity = 13
5075 : // Dst: (VTX_READ_32_eg:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 2:{ *:[i8] })
5076 : /* 20552*/ /*Scope*/ 50, /*->20603*/
5077 : /* 20553*/ OPC_CheckPredicate, 14, // Predicate_az_extload
5078 : /* 20555*/ OPC_Scope, 22, /*->20579*/ // 2 children in Scope
5079 : /* 20557*/ OPC_CheckPredicate, 15, // Predicate_az_extloadi8
5080 : /* 20559*/ OPC_CheckPredicate, 19, // Predicate_vtx_id1_az_extloadi8
5081 : /* 20561*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5082 : /* 20563*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5083 : /* 20566*/ OPC_EmitMergeInputChains1_0,
5084 : /* 20567*/ OPC_EmitInteger, MVT::i8, 1,
5085 : /* 20570*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_8_eg), 0|OPFL_Chain|OPFL_MemRefs,
5086 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5087 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi8>><<P:Predicate_vtx_id1_az_extloadi8>> - Complexity = 13
5088 : // Dst: (VTX_READ_8_eg:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 1:{ *:[i8] })
5089 : /* 20579*/ /*Scope*/ 22, /*->20602*/
5090 : /* 20580*/ OPC_CheckPredicate, 17, // Predicate_az_extloadi16
5091 : /* 20582*/ OPC_CheckPredicate, 19, // Predicate_vtx_id1_az_extloadi16
5092 : /* 20584*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5093 : /* 20586*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5094 : /* 20589*/ OPC_EmitMergeInputChains1_0,
5095 : /* 20590*/ OPC_EmitInteger, MVT::i8, 1,
5096 : /* 20593*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_16_eg), 0|OPFL_Chain|OPFL_MemRefs,
5097 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5098 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi16>><<P:Predicate_vtx_id1_az_extloadi16>> - Complexity = 13
5099 : // Dst: (VTX_READ_16_eg:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 1:{ *:[i8] })
5100 : /* 20602*/ 0, /*End of Scope*/
5101 : /* 20603*/ /*Scope*/ 22, /*->20626*/
5102 : /* 20604*/ OPC_CheckPredicate, 12, // Predicate_load
5103 : /* 20606*/ OPC_CheckPredicate, 19, // Predicate_vtx_id1_load
5104 : /* 20608*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5105 : /* 20610*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5106 : /* 20613*/ OPC_EmitMergeInputChains1_0,
5107 : /* 20614*/ OPC_EmitInteger, MVT::i8, 1,
5108 : /* 20617*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_32_eg), 0|OPFL_Chain|OPFL_MemRefs,
5109 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5110 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id1_load>> - Complexity = 13
5111 : // Dst: (VTX_READ_32_eg:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 1:{ *:[i8] })
5112 : /* 20626*/ /*Scope*/ 50, /*->20677*/
5113 : /* 20627*/ OPC_CheckPredicate, 14, // Predicate_az_extload
5114 : /* 20629*/ OPC_Scope, 22, /*->20653*/ // 2 children in Scope
5115 : /* 20631*/ OPC_CheckPredicate, 15, // Predicate_az_extloadi8
5116 : /* 20633*/ OPC_CheckPredicate, 16, // Predicate_vtx_id3_az_extloadi8
5117 : /* 20635*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5118 : /* 20637*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5119 : /* 20640*/ OPC_EmitMergeInputChains1_0,
5120 : /* 20641*/ OPC_EmitInteger, MVT::i8, 3,
5121 : /* 20644*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_8_cm), 0|OPFL_Chain|OPFL_MemRefs,
5122 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5123 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi8>><<P:Predicate_vtx_id3_az_extloadi8>> - Complexity = 13
5124 : // Dst: (VTX_READ_8_cm:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 3:{ *:[i8] })
5125 : /* 20653*/ /*Scope*/ 22, /*->20676*/
5126 : /* 20654*/ OPC_CheckPredicate, 17, // Predicate_az_extloadi16
5127 : /* 20656*/ OPC_CheckPredicate, 16, // Predicate_vtx_id3_az_extloadi16
5128 : /* 20658*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5129 : /* 20660*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5130 : /* 20663*/ OPC_EmitMergeInputChains1_0,
5131 : /* 20664*/ OPC_EmitInteger, MVT::i8, 3,
5132 : /* 20667*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_16_cm), 0|OPFL_Chain|OPFL_MemRefs,
5133 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5134 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi16>><<P:Predicate_vtx_id3_az_extloadi16>> - Complexity = 13
5135 : // Dst: (VTX_READ_16_cm:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 3:{ *:[i8] })
5136 : /* 20676*/ 0, /*End of Scope*/
5137 : /* 20677*/ /*Scope*/ 22, /*->20700*/
5138 : /* 20678*/ OPC_CheckPredicate, 12, // Predicate_load
5139 : /* 20680*/ OPC_CheckPredicate, 16, // Predicate_vtx_id3_load
5140 : /* 20682*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5141 : /* 20684*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5142 : /* 20687*/ OPC_EmitMergeInputChains1_0,
5143 : /* 20688*/ OPC_EmitInteger, MVT::i8, 3,
5144 : /* 20691*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_32_cm), 0|OPFL_Chain|OPFL_MemRefs,
5145 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5146 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id3_load>> - Complexity = 13
5147 : // Dst: (VTX_READ_32_cm:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 3:{ *:[i8] })
5148 : /* 20700*/ /*Scope*/ 50, /*->20751*/
5149 : /* 20701*/ OPC_CheckPredicate, 14, // Predicate_az_extload
5150 : /* 20703*/ OPC_Scope, 22, /*->20727*/ // 2 children in Scope
5151 : /* 20705*/ OPC_CheckPredicate, 15, // Predicate_az_extloadi8
5152 : /* 20707*/ OPC_CheckPredicate, 18, // Predicate_vtx_id2_az_extloadi8
5153 : /* 20709*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5154 : /* 20711*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5155 : /* 20714*/ OPC_EmitMergeInputChains1_0,
5156 : /* 20715*/ OPC_EmitInteger, MVT::i8, 2,
5157 : /* 20718*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_8_cm), 0|OPFL_Chain|OPFL_MemRefs,
5158 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5159 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi8>><<P:Predicate_vtx_id2_az_extloadi8>> - Complexity = 13
5160 : // Dst: (VTX_READ_8_cm:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 2:{ *:[i8] })
5161 : /* 20727*/ /*Scope*/ 22, /*->20750*/
5162 : /* 20728*/ OPC_CheckPredicate, 17, // Predicate_az_extloadi16
5163 : /* 20730*/ OPC_CheckPredicate, 18, // Predicate_vtx_id2_az_extloadi16
5164 : /* 20732*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5165 : /* 20734*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5166 : /* 20737*/ OPC_EmitMergeInputChains1_0,
5167 : /* 20738*/ OPC_EmitInteger, MVT::i8, 2,
5168 : /* 20741*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_16_cm), 0|OPFL_Chain|OPFL_MemRefs,
5169 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5170 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi16>><<P:Predicate_vtx_id2_az_extloadi16>> - Complexity = 13
5171 : // Dst: (VTX_READ_16_cm:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 2:{ *:[i8] })
5172 : /* 20750*/ 0, /*End of Scope*/
5173 : /* 20751*/ /*Scope*/ 22, /*->20774*/
5174 : /* 20752*/ OPC_CheckPredicate, 12, // Predicate_load
5175 : /* 20754*/ OPC_CheckPredicate, 18, // Predicate_vtx_id2_load
5176 : /* 20756*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5177 : /* 20758*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5178 : /* 20761*/ OPC_EmitMergeInputChains1_0,
5179 : /* 20762*/ OPC_EmitInteger, MVT::i8, 2,
5180 : /* 20765*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_32_cm), 0|OPFL_Chain|OPFL_MemRefs,
5181 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5182 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id2_load>> - Complexity = 13
5183 : // Dst: (VTX_READ_32_cm:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 2:{ *:[i8] })
5184 : /* 20774*/ /*Scope*/ 50, /*->20825*/
5185 : /* 20775*/ OPC_CheckPredicate, 14, // Predicate_az_extload
5186 : /* 20777*/ OPC_Scope, 22, /*->20801*/ // 2 children in Scope
5187 : /* 20779*/ OPC_CheckPredicate, 15, // Predicate_az_extloadi8
5188 : /* 20781*/ OPC_CheckPredicate, 19, // Predicate_vtx_id1_az_extloadi8
5189 : /* 20783*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5190 : /* 20785*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5191 : /* 20788*/ OPC_EmitMergeInputChains1_0,
5192 : /* 20789*/ OPC_EmitInteger, MVT::i8, 1,
5193 : /* 20792*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_8_cm), 0|OPFL_Chain|OPFL_MemRefs,
5194 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5195 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi8>><<P:Predicate_vtx_id1_az_extloadi8>> - Complexity = 13
5196 : // Dst: (VTX_READ_8_cm:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 1:{ *:[i8] })
5197 : /* 20801*/ /*Scope*/ 22, /*->20824*/
5198 : /* 20802*/ OPC_CheckPredicate, 17, // Predicate_az_extloadi16
5199 : /* 20804*/ OPC_CheckPredicate, 19, // Predicate_vtx_id1_az_extloadi16
5200 : /* 20806*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5201 : /* 20808*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5202 : /* 20811*/ OPC_EmitMergeInputChains1_0,
5203 : /* 20812*/ OPC_EmitInteger, MVT::i8, 1,
5204 : /* 20815*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_16_cm), 0|OPFL_Chain|OPFL_MemRefs,
5205 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5206 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi16>><<P:Predicate_vtx_id1_az_extloadi16>> - Complexity = 13
5207 : // Dst: (VTX_READ_16_cm:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 1:{ *:[i8] })
5208 : /* 20824*/ 0, /*End of Scope*/
5209 : /* 20825*/ /*Scope*/ 22, /*->20848*/
5210 : /* 20826*/ OPC_CheckPredicate, 12, // Predicate_load
5211 : /* 20828*/ OPC_CheckPredicate, 19, // Predicate_vtx_id1_load
5212 : /* 20830*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5213 : /* 20832*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5214 : /* 20835*/ OPC_EmitMergeInputChains1_0,
5215 : /* 20836*/ OPC_EmitInteger, MVT::i8, 1,
5216 : /* 20839*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_32_cm), 0|OPFL_Chain|OPFL_MemRefs,
5217 : MVT::i32, 3/*#Ops*/, 2, 3, 4,
5218 : // Src: (ld:{ *:[i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id1_load>> - Complexity = 13
5219 : // Dst: (VTX_READ_32_cm:{ *:[i32] } MEMxi:{ *:[i32] }:$src_gpr, 1:{ *:[i8] })
5220 : /* 20848*/ 0, /*End of Scope*/
5221 : /* 20849*/ /*Scope*/ 45, /*->20895*/
5222 : /* 20850*/ OPC_CheckPredicate, 12, // Predicate_load
5223 : /* 20852*/ OPC_CheckPredicate, 20, // Predicate_load_local
5224 : /* 20854*/ OPC_CheckType, MVT::i32,
5225 : /* 20856*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5226 : /* 20858*/ OPC_EmitMergeInputChains1_0,
5227 : /* 20859*/ OPC_EmitInteger, MVT::i32, 0,
5228 : /* 20862*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5229 : /* 20874*/ OPC_EmitInteger, MVT::i32, 1,
5230 : /* 20877*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5231 : /* 20880*/ OPC_EmitInteger, MVT::i32, 0,
5232 : /* 20883*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_READ_RET), 0|OPFL_Chain|OPFL_MemRefs,
5233 : MVT::i32, 6/*#Ops*/, 1, 2, 3, 4, 5, 6,
5234 : // Src: (ld:{ *:[i32] } R600_Reg32:{ *:[iPTR] }:$src0)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_load_local>> - Complexity = 4
5235 : // Dst: (LDS_READ_RET:{ *:[i32] } R600_Reg32:{ *:[iPTR] }:$src0)
5236 : /* 20895*/ /*Scope*/ 88|128,3/*472*/, /*->21369*/
5237 : /* 20897*/ OPC_CheckChild1Type, MVT::i32,
5238 : /* 20899*/ OPC_Scope, 47, /*->20948*/ // 5 children in Scope
5239 : /* 20901*/ OPC_CheckPredicate, 21, // Predicate_sextload
5240 : /* 20903*/ OPC_CheckPredicate, 22, // Predicate_sextloadi8
5241 : /* 20905*/ OPC_CheckPredicate, 20, // Predicate_sextloadi8_local
5242 : /* 20907*/ OPC_CheckType, MVT::i32,
5243 : /* 20909*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5244 : /* 20911*/ OPC_EmitMergeInputChains1_0,
5245 : /* 20912*/ OPC_EmitInteger, MVT::i32, 0,
5246 : /* 20915*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5247 : /* 20927*/ OPC_EmitInteger, MVT::i32, 1,
5248 : /* 20930*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5249 : /* 20933*/ OPC_EmitInteger, MVT::i32, 0,
5250 : /* 20936*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_BYTE_READ_RET), 0|OPFL_Chain|OPFL_MemRefs,
5251 : MVT::i32, 6/*#Ops*/, 1, 2, 3, 4, 5, 6,
5252 : // Src: (ld:{ *:[i32] } i32:{ *:[i32] }:$src0)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi8>><<P:Predicate_sextloadi8_local>> - Complexity = 4
5253 : // Dst: (LDS_BYTE_READ_RET:{ *:[i32] } i32:{ *:[i32] }:$src0)
5254 : /* 20948*/ /*Scope*/ 47, /*->20996*/
5255 : /* 20949*/ OPC_CheckPredicate, 14, // Predicate_az_extload
5256 : /* 20951*/ OPC_CheckPredicate, 15, // Predicate_az_extloadi8
5257 : /* 20953*/ OPC_CheckPredicate, 20, // Predicate_az_extloadi8_local
5258 : /* 20955*/ OPC_CheckType, MVT::i32,
5259 : /* 20957*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5260 : /* 20959*/ OPC_EmitMergeInputChains1_0,
5261 : /* 20960*/ OPC_EmitInteger, MVT::i32, 0,
5262 : /* 20963*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5263 : /* 20975*/ OPC_EmitInteger, MVT::i32, 1,
5264 : /* 20978*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5265 : /* 20981*/ OPC_EmitInteger, MVT::i32, 0,
5266 : /* 20984*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_UBYTE_READ_RET), 0|OPFL_Chain|OPFL_MemRefs,
5267 : MVT::i32, 6/*#Ops*/, 1, 2, 3, 4, 5, 6,
5268 : // Src: (ld:{ *:[i32] } i32:{ *:[i32] }:$src0)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi8>><<P:Predicate_az_extloadi8_local>> - Complexity = 4
5269 : // Dst: (LDS_UBYTE_READ_RET:{ *:[i32] } i32:{ *:[i32] }:$src0)
5270 : /* 20996*/ /*Scope*/ 47, /*->21044*/
5271 : /* 20997*/ OPC_CheckPredicate, 21, // Predicate_sextload
5272 : /* 20999*/ OPC_CheckPredicate, 23, // Predicate_sextloadi16
5273 : /* 21001*/ OPC_CheckPredicate, 20, // Predicate_sextloadi16_local
5274 : /* 21003*/ OPC_CheckType, MVT::i32,
5275 : /* 21005*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5276 : /* 21007*/ OPC_EmitMergeInputChains1_0,
5277 : /* 21008*/ OPC_EmitInteger, MVT::i32, 0,
5278 : /* 21011*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5279 : /* 21023*/ OPC_EmitInteger, MVT::i32, 1,
5280 : /* 21026*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5281 : /* 21029*/ OPC_EmitInteger, MVT::i32, 0,
5282 : /* 21032*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_SHORT_READ_RET), 0|OPFL_Chain|OPFL_MemRefs,
5283 : MVT::i32, 6/*#Ops*/, 1, 2, 3, 4, 5, 6,
5284 : // Src: (ld:{ *:[i32] } i32:{ *:[i32] }:$src0)<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>><<P:Predicate_sextloadi16_local>> - Complexity = 4
5285 : // Dst: (LDS_SHORT_READ_RET:{ *:[i32] } i32:{ *:[i32] }:$src0)
5286 : /* 21044*/ /*Scope*/ 47, /*->21092*/
5287 : /* 21045*/ OPC_CheckPredicate, 14, // Predicate_az_extload
5288 : /* 21047*/ OPC_CheckPredicate, 17, // Predicate_az_extloadi16
5289 : /* 21049*/ OPC_CheckPredicate, 20, // Predicate_az_extloadi16_local
5290 : /* 21051*/ OPC_CheckType, MVT::i32,
5291 : /* 21053*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5292 : /* 21055*/ OPC_EmitMergeInputChains1_0,
5293 : /* 21056*/ OPC_EmitInteger, MVT::i32, 0,
5294 : /* 21059*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5295 : /* 21071*/ OPC_EmitInteger, MVT::i32, 1,
5296 : /* 21074*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5297 : /* 21077*/ OPC_EmitInteger, MVT::i32, 0,
5298 : /* 21080*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_USHORT_READ_RET), 0|OPFL_Chain|OPFL_MemRefs,
5299 : MVT::i32, 6/*#Ops*/, 1, 2, 3, 4, 5, 6,
5300 : // Src: (ld:{ *:[i32] } i32:{ *:[i32] }:$src0)<<P:Predicate_unindexedload>><<P:Predicate_az_extload>><<P:Predicate_az_extloadi16>><<P:Predicate_az_extloadi16_local>> - Complexity = 4
5301 : // Dst: (LDS_USHORT_READ_RET:{ *:[i32] } i32:{ *:[i32] }:$src0)
5302 : /* 21092*/ /*Scope*/ 18|128,2/*274*/, /*->21368*/
5303 : /* 21094*/ OPC_CheckPredicate, 12, // Predicate_load
5304 : /* 21096*/ OPC_Scope, 44, /*->21142*/ // 6 children in Scope
5305 : /* 21098*/ OPC_CheckPredicate, 16, // Predicate_vtx_id3_load
5306 : /* 21100*/ OPC_SwitchType /*2 cases */, 18, MVT::v2i32,// ->21121
5307 : /* 21103*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5308 : /* 21105*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5309 : /* 21108*/ OPC_EmitMergeInputChains1_0,
5310 : /* 21109*/ OPC_EmitInteger, MVT::i8, 3,
5311 : /* 21112*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_64_eg), 0|OPFL_Chain|OPFL_MemRefs,
5312 : MVT::v2i32, 3/*#Ops*/, 2, 3, 4,
5313 : // Src: (ld:{ *:[v2i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id3_load>> - Complexity = 13
5314 : // Dst: (VTX_READ_64_eg:{ *:[v2i32] } MEMxi:{ *:[i32] }:$src_gpr, 3:{ *:[i8] })
5315 : /* 21121*/ /*SwitchType*/ 18, MVT::v4i32,// ->21141
5316 : /* 21123*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5317 : /* 21125*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5318 : /* 21128*/ OPC_EmitMergeInputChains1_0,
5319 : /* 21129*/ OPC_EmitInteger, MVT::i8, 3,
5320 : /* 21132*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_128_eg), 0|OPFL_Chain|OPFL_MemRefs,
5321 : MVT::v4i32, 3/*#Ops*/, 2, 3, 4,
5322 : // Src: (ld:{ *:[v4i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id3_load>> - Complexity = 13
5323 : // Dst: (VTX_READ_128_eg:{ *:[v4i32] } MEMxi:{ *:[i32] }:$src_gpr, 3:{ *:[i8] })
5324 : /* 21141*/ 0, // EndSwitchType
5325 : /* 21142*/ /*Scope*/ 44, /*->21187*/
5326 : /* 21143*/ OPC_CheckPredicate, 18, // Predicate_vtx_id2_load
5327 : /* 21145*/ OPC_SwitchType /*2 cases */, 18, MVT::v2i32,// ->21166
5328 : /* 21148*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5329 : /* 21150*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5330 : /* 21153*/ OPC_EmitMergeInputChains1_0,
5331 : /* 21154*/ OPC_EmitInteger, MVT::i8, 2,
5332 : /* 21157*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_64_eg), 0|OPFL_Chain|OPFL_MemRefs,
5333 : MVT::v2i32, 3/*#Ops*/, 2, 3, 4,
5334 : // Src: (ld:{ *:[v2i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id2_load>> - Complexity = 13
5335 : // Dst: (VTX_READ_64_eg:{ *:[v2i32] } MEMxi:{ *:[i32] }:$src_gpr, 2:{ *:[i8] })
5336 : /* 21166*/ /*SwitchType*/ 18, MVT::v4i32,// ->21186
5337 : /* 21168*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5338 : /* 21170*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5339 : /* 21173*/ OPC_EmitMergeInputChains1_0,
5340 : /* 21174*/ OPC_EmitInteger, MVT::i8, 2,
5341 : /* 21177*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_128_eg), 0|OPFL_Chain|OPFL_MemRefs,
5342 : MVT::v4i32, 3/*#Ops*/, 2, 3, 4,
5343 : // Src: (ld:{ *:[v4i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id2_load>> - Complexity = 13
5344 : // Dst: (VTX_READ_128_eg:{ *:[v4i32] } MEMxi:{ *:[i32] }:$src_gpr, 2:{ *:[i8] })
5345 : /* 21186*/ 0, // EndSwitchType
5346 : /* 21187*/ /*Scope*/ 44, /*->21232*/
5347 : /* 21188*/ OPC_CheckPredicate, 19, // Predicate_vtx_id1_load
5348 : /* 21190*/ OPC_SwitchType /*2 cases */, 18, MVT::v2i32,// ->21211
5349 : /* 21193*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5350 : /* 21195*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5351 : /* 21198*/ OPC_EmitMergeInputChains1_0,
5352 : /* 21199*/ OPC_EmitInteger, MVT::i8, 1,
5353 : /* 21202*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_64_eg), 0|OPFL_Chain|OPFL_MemRefs,
5354 : MVT::v2i32, 3/*#Ops*/, 2, 3, 4,
5355 : // Src: (ld:{ *:[v2i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id1_load>> - Complexity = 13
5356 : // Dst: (VTX_READ_64_eg:{ *:[v2i32] } MEMxi:{ *:[i32] }:$src_gpr, 1:{ *:[i8] })
5357 : /* 21211*/ /*SwitchType*/ 18, MVT::v4i32,// ->21231
5358 : /* 21213*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
5359 : /* 21215*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5360 : /* 21218*/ OPC_EmitMergeInputChains1_0,
5361 : /* 21219*/ OPC_EmitInteger, MVT::i8, 1,
5362 : /* 21222*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_128_eg), 0|OPFL_Chain|OPFL_MemRefs,
5363 : MVT::v4i32, 3/*#Ops*/, 2, 3, 4,
5364 : // Src: (ld:{ *:[v4i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id1_load>> - Complexity = 13
5365 : // Dst: (VTX_READ_128_eg:{ *:[v4i32] } MEMxi:{ *:[i32] }:$src_gpr, 1:{ *:[i8] })
5366 : /* 21231*/ 0, // EndSwitchType
5367 : /* 21232*/ /*Scope*/ 44, /*->21277*/
5368 : /* 21233*/ OPC_CheckPredicate, 16, // Predicate_vtx_id3_load
5369 : /* 21235*/ OPC_SwitchType /*2 cases */, 18, MVT::v2i32,// ->21256
5370 : /* 21238*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5371 : /* 21240*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5372 : /* 21243*/ OPC_EmitMergeInputChains1_0,
5373 : /* 21244*/ OPC_EmitInteger, MVT::i8, 3,
5374 : /* 21247*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_64_cm), 0|OPFL_Chain|OPFL_MemRefs,
5375 : MVT::v2i32, 3/*#Ops*/, 2, 3, 4,
5376 : // Src: (ld:{ *:[v2i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id3_load>> - Complexity = 13
5377 : // Dst: (VTX_READ_64_cm:{ *:[v2i32] } MEMxi:{ *:[i32] }:$src_gpr, 3:{ *:[i8] })
5378 : /* 21256*/ /*SwitchType*/ 18, MVT::v4i32,// ->21276
5379 : /* 21258*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5380 : /* 21260*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5381 : /* 21263*/ OPC_EmitMergeInputChains1_0,
5382 : /* 21264*/ OPC_EmitInteger, MVT::i8, 3,
5383 : /* 21267*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_128_cm), 0|OPFL_Chain|OPFL_MemRefs,
5384 : MVT::v4i32, 3/*#Ops*/, 2, 3, 4,
5385 : // Src: (ld:{ *:[v4i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id3_load>> - Complexity = 13
5386 : // Dst: (VTX_READ_128_cm:{ *:[v4i32] } MEMxi:{ *:[i32] }:$src_gpr, 3:{ *:[i8] })
5387 : /* 21276*/ 0, // EndSwitchType
5388 : /* 21277*/ /*Scope*/ 44, /*->21322*/
5389 : /* 21278*/ OPC_CheckPredicate, 18, // Predicate_vtx_id2_load
5390 : /* 21280*/ OPC_SwitchType /*2 cases */, 18, MVT::v2i32,// ->21301
5391 : /* 21283*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5392 : /* 21285*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5393 : /* 21288*/ OPC_EmitMergeInputChains1_0,
5394 : /* 21289*/ OPC_EmitInteger, MVT::i8, 2,
5395 : /* 21292*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_64_cm), 0|OPFL_Chain|OPFL_MemRefs,
5396 : MVT::v2i32, 3/*#Ops*/, 2, 3, 4,
5397 : // Src: (ld:{ *:[v2i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id2_load>> - Complexity = 13
5398 : // Dst: (VTX_READ_64_cm:{ *:[v2i32] } MEMxi:{ *:[i32] }:$src_gpr, 2:{ *:[i8] })
5399 : /* 21301*/ /*SwitchType*/ 18, MVT::v4i32,// ->21321
5400 : /* 21303*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5401 : /* 21305*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5402 : /* 21308*/ OPC_EmitMergeInputChains1_0,
5403 : /* 21309*/ OPC_EmitInteger, MVT::i8, 2,
5404 : /* 21312*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_128_cm), 0|OPFL_Chain|OPFL_MemRefs,
5405 : MVT::v4i32, 3/*#Ops*/, 2, 3, 4,
5406 : // Src: (ld:{ *:[v4i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id2_load>> - Complexity = 13
5407 : // Dst: (VTX_READ_128_cm:{ *:[v4i32] } MEMxi:{ *:[i32] }:$src_gpr, 2:{ *:[i8] })
5408 : /* 21321*/ 0, // EndSwitchType
5409 : /* 21322*/ /*Scope*/ 44, /*->21367*/
5410 : /* 21323*/ OPC_CheckPredicate, 19, // Predicate_vtx_id1_load
5411 : /* 21325*/ OPC_SwitchType /*2 cases */, 18, MVT::v2i32,// ->21346
5412 : /* 21328*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5413 : /* 21330*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5414 : /* 21333*/ OPC_EmitMergeInputChains1_0,
5415 : /* 21334*/ OPC_EmitInteger, MVT::i8, 1,
5416 : /* 21337*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_64_cm), 0|OPFL_Chain|OPFL_MemRefs,
5417 : MVT::v2i32, 3/*#Ops*/, 2, 3, 4,
5418 : // Src: (ld:{ *:[v2i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id1_load>> - Complexity = 13
5419 : // Dst: (VTX_READ_64_cm:{ *:[v2i32] } MEMxi:{ *:[i32] }:$src_gpr, 1:{ *:[i8] })
5420 : /* 21346*/ /*SwitchType*/ 18, MVT::v4i32,// ->21366
5421 : /* 21348*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5422 : /* 21350*/ OPC_CheckComplexPat, /*CP*/1, /*#*/1, // SelectADDRVTX_READ:$src_gpr #2 #3
5423 : /* 21353*/ OPC_EmitMergeInputChains1_0,
5424 : /* 21354*/ OPC_EmitInteger, MVT::i8, 1,
5425 : /* 21357*/ OPC_MorphNodeTo1, TARGET_VAL(R600::VTX_READ_128_cm), 0|OPFL_Chain|OPFL_MemRefs,
5426 : MVT::v4i32, 3/*#Ops*/, 2, 3, 4,
5427 : // Src: (ld:{ *:[v4i32] } ADDRVTX_READ:{ *:[i32] }:$src_gpr)<<P:Predicate_unindexedload>><<P:Predicate_load>><<P:Predicate_vtx_id1_load>> - Complexity = 13
5428 : // Dst: (VTX_READ_128_cm:{ *:[v4i32] } MEMxi:{ *:[i32] }:$src_gpr, 1:{ *:[i8] })
5429 : /* 21366*/ 0, // EndSwitchType
5430 : /* 21367*/ 0, /*End of Scope*/
5431 : /* 21368*/ 0, /*End of Scope*/
5432 : /* 21369*/ 0, /*End of Scope*/
5433 : /* 21370*/ /*SwitchOpcode*/ 89|128,2/*345*/, TARGET_VAL(ISD::STORE),// ->21719
5434 : /* 21374*/ OPC_RecordMemRef,
5435 : /* 21375*/ OPC_RecordNode, // #0 = 'st' chained node
5436 : /* 21376*/ OPC_RecordChild1, // #1 = $val
5437 : /* 21377*/ OPC_Scope, 2|128,2/*258*/, /*->21638*/ // 3 children in Scope
5438 : /* 21380*/ OPC_CheckChild1Type, MVT::i32,
5439 : /* 21382*/ OPC_RecordChild2, // #2 = $addr
5440 : /* 21383*/ OPC_CheckPredicate, 24, // Predicate_unindexedstore
5441 : /* 21385*/ OPC_Scope, 84, /*->21471*/ // 2 children in Scope
5442 : /* 21387*/ OPC_CheckPredicate, 25, // Predicate_store
5443 : /* 21389*/ OPC_Scope, 20, /*->21411*/ // 2 children in Scope
5444 : /* 21391*/ OPC_CheckPredicate, 13, // Predicate_store_private
5445 : /* 21393*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
5446 : /* 21395*/ OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectADDRIndirect:$addr #3 #4
5447 : /* 21398*/ OPC_EmitMergeInputChains1_0,
5448 : /* 21399*/ OPC_EmitInteger, MVT::i32, 0,
5449 : /* 21402*/ OPC_MorphNodeTo0, TARGET_VAL(R600::R600_RegisterStore), 0|OPFL_Chain|OPFL_MemRefs,
5450 : 4/*#Ops*/, 1, 3, 4, 5,
5451 : // Src: (st i32:{ *:[i32] }:$val, ADDRIndirect:{ *:[iPTR] }:$addr)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_store_private>> - Complexity = 13
5452 : // Dst: (R600_RegisterStore i32:{ *:[i32] }:$val, FRAMEri:{ *:[iPTR] }:$addr, 0:{ *:[i32] })
5453 : /* 21411*/ /*Scope*/ 58, /*->21470*/
5454 : /* 21412*/ OPC_CheckPredicate, 20, // Predicate_store_local
5455 : /* 21414*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5456 : /* 21416*/ OPC_EmitMergeInputChains1_0,
5457 : /* 21417*/ OPC_EmitInteger, MVT::i32, 0,
5458 : /* 21420*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5459 : /* 21432*/ OPC_EmitInteger, MVT::i32, 0,
5460 : /* 21435*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5461 : /* 21447*/ OPC_EmitInteger, MVT::i32, 1,
5462 : /* 21450*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5463 : /* 21453*/ OPC_EmitInteger, MVT::i32, 0,
5464 : /* 21456*/ OPC_MorphNodeTo0, TARGET_VAL(R600::LDS_WRITE), 0|OPFL_Chain|OPFL_MemRefs,
5465 : 9/*#Ops*/, 2, 3, 4, 1, 5, 6, 7, 8, 9,
5466 : // Src: (st R600_Reg32:{ *:[i32] }:$src1, R600_Reg32:{ *:[iPTR] }:$src0)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_store_local>> - Complexity = 4
5467 : // Dst: (LDS_WRITE R600_Reg32:{ *:[iPTR] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
5468 : /* 21470*/ 0, /*End of Scope*/
5469 : /* 21471*/ /*Scope*/ 36|128,1/*164*/, /*->21637*/
5470 : /* 21473*/ OPC_CheckChild2Type, MVT::i32,
5471 : /* 21475*/ OPC_Scope, 126, /*->21603*/ // 2 children in Scope
5472 : /* 21477*/ OPC_CheckPredicate, 26, // Predicate_truncstore
5473 : /* 21479*/ OPC_Scope, 60, /*->21541*/ // 2 children in Scope
5474 : /* 21481*/ OPC_CheckPredicate, 27, // Predicate_truncstorei8
5475 : /* 21483*/ OPC_CheckPredicate, 20, // Predicate_truncstorei8_local
5476 : /* 21485*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5477 : /* 21487*/ OPC_EmitMergeInputChains1_0,
5478 : /* 21488*/ OPC_EmitInteger, MVT::i32, 0,
5479 : /* 21491*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5480 : /* 21503*/ OPC_EmitInteger, MVT::i32, 0,
5481 : /* 21506*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5482 : /* 21518*/ OPC_EmitInteger, MVT::i32, 1,
5483 : /* 21521*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5484 : /* 21524*/ OPC_EmitInteger, MVT::i32, 0,
5485 : /* 21527*/ OPC_MorphNodeTo0, TARGET_VAL(R600::LDS_BYTE_WRITE), 0|OPFL_Chain|OPFL_MemRefs,
5486 : 9/*#Ops*/, 2, 3, 4, 1, 5, 6, 7, 8, 9,
5487 : // Src: (st i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src0)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei8>><<P:Predicate_truncstorei8_local>> - Complexity = 4
5488 : // Dst: (LDS_BYTE_WRITE i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
5489 : /* 21541*/ /*Scope*/ 60, /*->21602*/
5490 : /* 21542*/ OPC_CheckPredicate, 28, // Predicate_truncstorei16
5491 : /* 21544*/ OPC_CheckPredicate, 20, // Predicate_truncstorei16_local
5492 : /* 21546*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5493 : /* 21548*/ OPC_EmitMergeInputChains1_0,
5494 : /* 21549*/ OPC_EmitInteger, MVT::i32, 0,
5495 : /* 21552*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5496 : /* 21564*/ OPC_EmitInteger, MVT::i32, 0,
5497 : /* 21567*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5498 : /* 21579*/ OPC_EmitInteger, MVT::i32, 1,
5499 : /* 21582*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5500 : /* 21585*/ OPC_EmitInteger, MVT::i32, 0,
5501 : /* 21588*/ OPC_MorphNodeTo0, TARGET_VAL(R600::LDS_SHORT_WRITE), 0|OPFL_Chain|OPFL_MemRefs,
5502 : 9/*#Ops*/, 2, 3, 4, 1, 5, 6, 7, 8, 9,
5503 : // Src: (st i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src0)<<P:Predicate_unindexedstore>><<P:Predicate_truncstore>><<P:Predicate_truncstorei16>><<P:Predicate_truncstorei16_local>> - Complexity = 4
5504 : // Dst: (LDS_SHORT_WRITE i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
5505 : /* 21602*/ 0, /*End of Scope*/
5506 : /* 21603*/ /*Scope*/ 32, /*->21636*/
5507 : /* 21604*/ OPC_CheckPredicate, 25, // Predicate_store
5508 : /* 21606*/ OPC_CheckPredicate, 29, // Predicate_store_global
5509 : /* 21608*/ OPC_Scope, 10, /*->21620*/ // 2 children in Scope
5510 : /* 21610*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5511 : /* 21612*/ OPC_EmitMergeInputChains1_0,
5512 : /* 21613*/ OPC_MorphNodeTo0, TARGET_VAL(R600::RAT_STORE_DWORD32), 0|OPFL_Chain|OPFL_MemRefs,
5513 : 2/*#Ops*/, 1, 2,
5514 : // Src: (st i32:{ *:[i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_store_global>> - Complexity = 4
5515 : // Dst: (RAT_STORE_DWORD32 i32:{ *:[i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)
5516 : /* 21620*/ /*Scope*/ 14, /*->21635*/
5517 : /* 21621*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5518 : /* 21623*/ OPC_EmitMergeInputChains1_0,
5519 : /* 21624*/ OPC_EmitInteger, MVT::i32, 0,
5520 : /* 21627*/ OPC_MorphNodeTo0, TARGET_VAL(R600::RAT_WRITE_CACHELESS_32_eg), 0|OPFL_Chain|OPFL_MemRefs,
5521 : 3/*#Ops*/, 1, 2, 3,
5522 : // Src: (st i32:{ *:[i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_store_global>> - Complexity = 4
5523 : // Dst: (RAT_WRITE_CACHELESS_32_eg i32:{ *:[i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)
5524 : /* 21635*/ 0, /*End of Scope*/
5525 : /* 21636*/ 0, /*End of Scope*/
5526 : /* 21637*/ 0, /*End of Scope*/
5527 : /* 21638*/ /*Scope*/ 39, /*->21678*/
5528 : /* 21639*/ OPC_CheckChild1Type, MVT::v2i32,
5529 : /* 21641*/ OPC_RecordChild2, // #2 = $index_gpr
5530 : /* 21642*/ OPC_CheckChild2Type, MVT::i32,
5531 : /* 21644*/ OPC_CheckPredicate, 24, // Predicate_unindexedstore
5532 : /* 21646*/ OPC_CheckPredicate, 25, // Predicate_store
5533 : /* 21648*/ OPC_CheckPredicate, 29, // Predicate_store_global
5534 : /* 21650*/ OPC_Scope, 10, /*->21662*/ // 2 children in Scope
5535 : /* 21652*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5536 : /* 21654*/ OPC_EmitMergeInputChains1_0,
5537 : /* 21655*/ OPC_MorphNodeTo0, TARGET_VAL(R600::RAT_STORE_DWORD64), 0|OPFL_Chain|OPFL_MemRefs,
5538 : 2/*#Ops*/, 1, 2,
5539 : // Src: (st v2i32:{ *:[v2i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_store_global>> - Complexity = 4
5540 : // Dst: (RAT_STORE_DWORD64 v2i32:{ *:[v2i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)
5541 : /* 21662*/ /*Scope*/ 14, /*->21677*/
5542 : /* 21663*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5543 : /* 21665*/ OPC_EmitMergeInputChains1_0,
5544 : /* 21666*/ OPC_EmitInteger, MVT::i32, 0,
5545 : /* 21669*/ OPC_MorphNodeTo0, TARGET_VAL(R600::RAT_WRITE_CACHELESS_64_eg), 0|OPFL_Chain|OPFL_MemRefs,
5546 : 3/*#Ops*/, 1, 2, 3,
5547 : // Src: (st v2i32:{ *:[v2i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_store_global>> - Complexity = 4
5548 : // Dst: (RAT_WRITE_CACHELESS_64_eg v2i32:{ *:[v2i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)
5549 : /* 21677*/ 0, /*End of Scope*/
5550 : /* 21678*/ /*Scope*/ 39, /*->21718*/
5551 : /* 21679*/ OPC_CheckChild1Type, MVT::v4i32,
5552 : /* 21681*/ OPC_RecordChild2, // #2 = $index_gpr
5553 : /* 21682*/ OPC_CheckChild2Type, MVT::i32,
5554 : /* 21684*/ OPC_CheckPredicate, 24, // Predicate_unindexedstore
5555 : /* 21686*/ OPC_CheckPredicate, 25, // Predicate_store
5556 : /* 21688*/ OPC_CheckPredicate, 29, // Predicate_store_global
5557 : /* 21690*/ OPC_Scope, 10, /*->21702*/ // 2 children in Scope
5558 : /* 21692*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
5559 : /* 21694*/ OPC_EmitMergeInputChains1_0,
5560 : /* 21695*/ OPC_MorphNodeTo0, TARGET_VAL(R600::RAT_STORE_DWORD128), 0|OPFL_Chain|OPFL_MemRefs,
5561 : 2/*#Ops*/, 1, 2,
5562 : // Src: (st v4i32:{ *:[v4i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_store_global>> - Complexity = 4
5563 : // Dst: (RAT_STORE_DWORD128 v4i32:{ *:[v4i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)
5564 : /* 21702*/ /*Scope*/ 14, /*->21717*/
5565 : /* 21703*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5566 : /* 21705*/ OPC_EmitMergeInputChains1_0,
5567 : /* 21706*/ OPC_EmitInteger, MVT::i32, 0,
5568 : /* 21709*/ OPC_MorphNodeTo0, TARGET_VAL(R600::RAT_WRITE_CACHELESS_128_eg), 0|OPFL_Chain|OPFL_MemRefs,
5569 : 3/*#Ops*/, 1, 2, 3,
5570 : // Src: (st v4i32:{ *:[v4i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)<<P:Predicate_unindexedstore>><<P:Predicate_store>><<P:Predicate_store_global>> - Complexity = 4
5571 : // Dst: (RAT_WRITE_CACHELESS_128_eg v4i32:{ *:[v4i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)
5572 : /* 21717*/ 0, /*End of Scope*/
5573 : /* 21718*/ 0, /*End of Scope*/
5574 : /* 21719*/ /*SwitchOpcode*/ 113|128,26/*3441*/, TARGET_VAL(ISD::XOR),// ->25164
5575 : /* 21723*/ OPC_Scope, 66|128,3/*450*/, /*->22176*/ // 5 children in Scope
5576 : /* 21726*/ OPC_RecordChild0, // #0 = $z
5577 : /* 21727*/ OPC_MoveChild1,
5578 : /* 21728*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
5579 : /* 21731*/ OPC_Scope, 91|128,1/*219*/, /*->21953*/ // 2 children in Scope
5580 : /* 21734*/ OPC_RecordChild0, // #1 = $x
5581 : /* 21735*/ OPC_MoveChild1,
5582 : /* 21736*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
5583 : /* 21739*/ OPC_Scope, 105, /*->21846*/ // 2 children in Scope
5584 : /* 21741*/ OPC_RecordChild0, // #2 = $y
5585 : /* 21742*/ OPC_CheckChild1Same, 0,
5586 : /* 21744*/ OPC_MoveParent,
5587 : /* 21745*/ OPC_MoveParent,
5588 : /* 21746*/ OPC_CheckType, MVT::i32,
5589 : /* 21748*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5590 : /* 21750*/ OPC_EmitInteger, MVT::i32, 0,
5591 : /* 21753*/ OPC_EmitInteger, MVT::i32, 0,
5592 : /* 21756*/ OPC_EmitInteger, MVT::i32, 0,
5593 : /* 21759*/ OPC_EmitInteger, MVT::i32, 0,
5594 : /* 21762*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5595 : /* 21774*/ OPC_EmitInteger, MVT::i32, 0,
5596 : /* 21777*/ OPC_EmitInteger, MVT::i32, 0,
5597 : /* 21780*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5598 : /* 21792*/ OPC_EmitInteger, MVT::i32, 0,
5599 : /* 21795*/ OPC_EmitInteger, MVT::i32, 0,
5600 : /* 21798*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5601 : /* 21810*/ OPC_EmitInteger, MVT::i32, 1,
5602 : /* 21813*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5603 : /* 21816*/ OPC_EmitInteger, MVT::i32, 0,
5604 : /* 21819*/ OPC_EmitInteger, MVT::i32, 0,
5605 : /* 21822*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
5606 : MVT::i32, 18/*#Ops*/, 3, 4, 1, 5, 6, 7, 2, 8, 9, 10, 0, 11, 12, 13, 14, 15, 16, 17,
5607 : // Src: (xor:{ *:[i32] } i32:{ *:[i32] }:$z, (and:{ *:[i32] } i32:{ *:[i32] }:$x, (xor:{ *:[i32] } i32:{ *:[i32] }:$y, i32:{ *:[i32] }:$z))) - Complexity = 9
5608 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
5609 : /* 21846*/ /*Scope*/ 105, /*->21952*/
5610 : /* 21847*/ OPC_CheckChild0Same, 0,
5611 : /* 21849*/ OPC_RecordChild1, // #2 = $y
5612 : /* 21850*/ OPC_MoveParent,
5613 : /* 21851*/ OPC_MoveParent,
5614 : /* 21852*/ OPC_CheckType, MVT::i32,
5615 : /* 21854*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5616 : /* 21856*/ OPC_EmitInteger, MVT::i32, 0,
5617 : /* 21859*/ OPC_EmitInteger, MVT::i32, 0,
5618 : /* 21862*/ OPC_EmitInteger, MVT::i32, 0,
5619 : /* 21865*/ OPC_EmitInteger, MVT::i32, 0,
5620 : /* 21868*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5621 : /* 21880*/ OPC_EmitInteger, MVT::i32, 0,
5622 : /* 21883*/ OPC_EmitInteger, MVT::i32, 0,
5623 : /* 21886*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5624 : /* 21898*/ OPC_EmitInteger, MVT::i32, 0,
5625 : /* 21901*/ OPC_EmitInteger, MVT::i32, 0,
5626 : /* 21904*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5627 : /* 21916*/ OPC_EmitInteger, MVT::i32, 1,
5628 : /* 21919*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5629 : /* 21922*/ OPC_EmitInteger, MVT::i32, 0,
5630 : /* 21925*/ OPC_EmitInteger, MVT::i32, 0,
5631 : /* 21928*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
5632 : MVT::i32, 18/*#Ops*/, 3, 4, 1, 5, 6, 7, 2, 8, 9, 10, 0, 11, 12, 13, 14, 15, 16, 17,
5633 : // Src: (xor:{ *:[i32] } i32:{ *:[i32] }:$z, (and:{ *:[i32] } i32:{ *:[i32] }:$x, (xor:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y))) - Complexity = 9
5634 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
5635 : /* 21952*/ 0, /*End of Scope*/
5636 : /* 21953*/ /*Scope*/ 92|128,1/*220*/, /*->22175*/
5637 : /* 21955*/ OPC_MoveChild0,
5638 : /* 21956*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
5639 : /* 21959*/ OPC_Scope, 106, /*->22067*/ // 2 children in Scope
5640 : /* 21961*/ OPC_RecordChild0, // #1 = $y
5641 : /* 21962*/ OPC_CheckChild1Same, 0,
5642 : /* 21964*/ OPC_MoveParent,
5643 : /* 21965*/ OPC_RecordChild1, // #2 = $x
5644 : /* 21966*/ OPC_MoveParent,
5645 : /* 21967*/ OPC_CheckType, MVT::i32,
5646 : /* 21969*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5647 : /* 21971*/ OPC_EmitInteger, MVT::i32, 0,
5648 : /* 21974*/ OPC_EmitInteger, MVT::i32, 0,
5649 : /* 21977*/ OPC_EmitInteger, MVT::i32, 0,
5650 : /* 21980*/ OPC_EmitInteger, MVT::i32, 0,
5651 : /* 21983*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5652 : /* 21995*/ OPC_EmitInteger, MVT::i32, 0,
5653 : /* 21998*/ OPC_EmitInteger, MVT::i32, 0,
5654 : /* 22001*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5655 : /* 22013*/ OPC_EmitInteger, MVT::i32, 0,
5656 : /* 22016*/ OPC_EmitInteger, MVT::i32, 0,
5657 : /* 22019*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5658 : /* 22031*/ OPC_EmitInteger, MVT::i32, 1,
5659 : /* 22034*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5660 : /* 22037*/ OPC_EmitInteger, MVT::i32, 0,
5661 : /* 22040*/ OPC_EmitInteger, MVT::i32, 0,
5662 : /* 22043*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
5663 : MVT::i32, 18/*#Ops*/, 3, 4, 2, 5, 6, 7, 1, 8, 9, 10, 0, 11, 12, 13, 14, 15, 16, 17,
5664 : // Src: (xor:{ *:[i32] } i32:{ *:[i32] }:$z, (and:{ *:[i32] } (xor:{ *:[i32] } i32:{ *:[i32] }:$y, i32:{ *:[i32] }:$z), i32:{ *:[i32] }:$x)) - Complexity = 9
5665 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
5666 : /* 22067*/ /*Scope*/ 106, /*->22174*/
5667 : /* 22068*/ OPC_CheckChild0Same, 0,
5668 : /* 22070*/ OPC_RecordChild1, // #1 = $y
5669 : /* 22071*/ OPC_MoveParent,
5670 : /* 22072*/ OPC_RecordChild1, // #2 = $x
5671 : /* 22073*/ OPC_MoveParent,
5672 : /* 22074*/ OPC_CheckType, MVT::i32,
5673 : /* 22076*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5674 : /* 22078*/ OPC_EmitInteger, MVT::i32, 0,
5675 : /* 22081*/ OPC_EmitInteger, MVT::i32, 0,
5676 : /* 22084*/ OPC_EmitInteger, MVT::i32, 0,
5677 : /* 22087*/ OPC_EmitInteger, MVT::i32, 0,
5678 : /* 22090*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5679 : /* 22102*/ OPC_EmitInteger, MVT::i32, 0,
5680 : /* 22105*/ OPC_EmitInteger, MVT::i32, 0,
5681 : /* 22108*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5682 : /* 22120*/ OPC_EmitInteger, MVT::i32, 0,
5683 : /* 22123*/ OPC_EmitInteger, MVT::i32, 0,
5684 : /* 22126*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5685 : /* 22138*/ OPC_EmitInteger, MVT::i32, 1,
5686 : /* 22141*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5687 : /* 22144*/ OPC_EmitInteger, MVT::i32, 0,
5688 : /* 22147*/ OPC_EmitInteger, MVT::i32, 0,
5689 : /* 22150*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
5690 : MVT::i32, 18/*#Ops*/, 3, 4, 2, 5, 6, 7, 1, 8, 9, 10, 0, 11, 12, 13, 14, 15, 16, 17,
5691 : // Src: (xor:{ *:[i32] } i32:{ *:[i32] }:$z, (and:{ *:[i32] } (xor:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$x)) - Complexity = 9
5692 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
5693 : /* 22174*/ 0, /*End of Scope*/
5694 : /* 22175*/ 0, /*End of Scope*/
5695 : /* 22176*/ /*Scope*/ 56|128,3/*440*/, /*->22618*/
5696 : /* 22178*/ OPC_MoveChild0,
5697 : /* 22179*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
5698 : /* 22182*/ OPC_Scope, 87|128,1/*215*/, /*->22400*/ // 2 children in Scope
5699 : /* 22185*/ OPC_RecordChild0, // #0 = $x
5700 : /* 22186*/ OPC_MoveChild1,
5701 : /* 22187*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
5702 : /* 22190*/ OPC_RecordChild0, // #1 = $y
5703 : /* 22191*/ OPC_RecordChild1, // #2 = $z
5704 : /* 22192*/ OPC_MoveParent,
5705 : /* 22193*/ OPC_MoveParent,
5706 : /* 22194*/ OPC_CheckType, MVT::i32,
5707 : /* 22196*/ OPC_Scope, 100, /*->22298*/ // 2 children in Scope
5708 : /* 22198*/ OPC_CheckChild1Same, 2,
5709 : /* 22200*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5710 : /* 22202*/ OPC_EmitInteger, MVT::i32, 0,
5711 : /* 22205*/ OPC_EmitInteger, MVT::i32, 0,
5712 : /* 22208*/ OPC_EmitInteger, MVT::i32, 0,
5713 : /* 22211*/ OPC_EmitInteger, MVT::i32, 0,
5714 : /* 22214*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5715 : /* 22226*/ OPC_EmitInteger, MVT::i32, 0,
5716 : /* 22229*/ OPC_EmitInteger, MVT::i32, 0,
5717 : /* 22232*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5718 : /* 22244*/ OPC_EmitInteger, MVT::i32, 0,
5719 : /* 22247*/ OPC_EmitInteger, MVT::i32, 0,
5720 : /* 22250*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5721 : /* 22262*/ OPC_EmitInteger, MVT::i32, 1,
5722 : /* 22265*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5723 : /* 22268*/ OPC_EmitInteger, MVT::i32, 0,
5724 : /* 22271*/ OPC_EmitInteger, MVT::i32, 0,
5725 : /* 22274*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
5726 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
5727 : // Src: (xor:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$x, (xor:{ *:[i32] } i32:{ *:[i32] }:$y, i32:{ *:[i32] }:$z)), i32:{ *:[i32] }:$z) - Complexity = 9
5728 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
5729 : /* 22298*/ /*Scope*/ 100, /*->22399*/
5730 : /* 22299*/ OPC_CheckChild1Same, 1,
5731 : /* 22301*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5732 : /* 22303*/ OPC_EmitInteger, MVT::i32, 0,
5733 : /* 22306*/ OPC_EmitInteger, MVT::i32, 0,
5734 : /* 22309*/ OPC_EmitInteger, MVT::i32, 0,
5735 : /* 22312*/ OPC_EmitInteger, MVT::i32, 0,
5736 : /* 22315*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5737 : /* 22327*/ OPC_EmitInteger, MVT::i32, 0,
5738 : /* 22330*/ OPC_EmitInteger, MVT::i32, 0,
5739 : /* 22333*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5740 : /* 22345*/ OPC_EmitInteger, MVT::i32, 0,
5741 : /* 22348*/ OPC_EmitInteger, MVT::i32, 0,
5742 : /* 22351*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5743 : /* 22363*/ OPC_EmitInteger, MVT::i32, 1,
5744 : /* 22366*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5745 : /* 22369*/ OPC_EmitInteger, MVT::i32, 0,
5746 : /* 22372*/ OPC_EmitInteger, MVT::i32, 0,
5747 : /* 22375*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
5748 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 2, 8, 9, 10, 1, 11, 12, 13, 14, 15, 16, 17,
5749 : // Src: (xor:{ *:[i32] } (and:{ *:[i32] } i32:{ *:[i32] }:$x, (xor:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y)), i32:{ *:[i32] }:$z) - Complexity = 9
5750 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
5751 : /* 22399*/ 0, /*End of Scope*/
5752 : /* 22400*/ /*Scope*/ 87|128,1/*215*/, /*->22617*/
5753 : /* 22402*/ OPC_MoveChild0,
5754 : /* 22403*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
5755 : /* 22406*/ OPC_RecordChild0, // #0 = $y
5756 : /* 22407*/ OPC_RecordChild1, // #1 = $z
5757 : /* 22408*/ OPC_MoveParent,
5758 : /* 22409*/ OPC_RecordChild1, // #2 = $x
5759 : /* 22410*/ OPC_MoveParent,
5760 : /* 22411*/ OPC_CheckType, MVT::i32,
5761 : /* 22413*/ OPC_Scope, 100, /*->22515*/ // 2 children in Scope
5762 : /* 22415*/ OPC_CheckChild1Same, 1,
5763 : /* 22417*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5764 : /* 22419*/ OPC_EmitInteger, MVT::i32, 0,
5765 : /* 22422*/ OPC_EmitInteger, MVT::i32, 0,
5766 : /* 22425*/ OPC_EmitInteger, MVT::i32, 0,
5767 : /* 22428*/ OPC_EmitInteger, MVT::i32, 0,
5768 : /* 22431*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5769 : /* 22443*/ OPC_EmitInteger, MVT::i32, 0,
5770 : /* 22446*/ OPC_EmitInteger, MVT::i32, 0,
5771 : /* 22449*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5772 : /* 22461*/ OPC_EmitInteger, MVT::i32, 0,
5773 : /* 22464*/ OPC_EmitInteger, MVT::i32, 0,
5774 : /* 22467*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5775 : /* 22479*/ OPC_EmitInteger, MVT::i32, 1,
5776 : /* 22482*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5777 : /* 22485*/ OPC_EmitInteger, MVT::i32, 0,
5778 : /* 22488*/ OPC_EmitInteger, MVT::i32, 0,
5779 : /* 22491*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
5780 : MVT::i32, 18/*#Ops*/, 3, 4, 2, 5, 6, 7, 0, 8, 9, 10, 1, 11, 12, 13, 14, 15, 16, 17,
5781 : // Src: (xor:{ *:[i32] } (and:{ *:[i32] } (xor:{ *:[i32] } i32:{ *:[i32] }:$y, i32:{ *:[i32] }:$z), i32:{ *:[i32] }:$x), i32:{ *:[i32] }:$z) - Complexity = 9
5782 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
5783 : /* 22515*/ /*Scope*/ 100, /*->22616*/
5784 : /* 22516*/ OPC_CheckChild1Same, 0,
5785 : /* 22518*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5786 : /* 22520*/ OPC_EmitInteger, MVT::i32, 0,
5787 : /* 22523*/ OPC_EmitInteger, MVT::i32, 0,
5788 : /* 22526*/ OPC_EmitInteger, MVT::i32, 0,
5789 : /* 22529*/ OPC_EmitInteger, MVT::i32, 0,
5790 : /* 22532*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5791 : /* 22544*/ OPC_EmitInteger, MVT::i32, 0,
5792 : /* 22547*/ OPC_EmitInteger, MVT::i32, 0,
5793 : /* 22550*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5794 : /* 22562*/ OPC_EmitInteger, MVT::i32, 0,
5795 : /* 22565*/ OPC_EmitInteger, MVT::i32, 0,
5796 : /* 22568*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5797 : /* 22580*/ OPC_EmitInteger, MVT::i32, 1,
5798 : /* 22583*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5799 : /* 22586*/ OPC_EmitInteger, MVT::i32, 0,
5800 : /* 22589*/ OPC_EmitInteger, MVT::i32, 0,
5801 : /* 22592*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
5802 : MVT::i32, 18/*#Ops*/, 3, 4, 2, 5, 6, 7, 1, 8, 9, 10, 0, 11, 12, 13, 14, 15, 16, 17,
5803 : // Src: (xor:{ *:[i32] } (and:{ *:[i32] } (xor:{ *:[i32] } i32:{ *:[i32] }:$z, i32:{ *:[i32] }:$y), i32:{ *:[i32] }:$x), i32:{ *:[i32] }:$z) - Complexity = 9
5804 : // Dst: (BFI_INT_eg:{ *:[i32] } ?:{ *:[i32] }:$x, ?:{ *:[i32] }:$y, ?:{ *:[i32] }:$z)
5805 : /* 22616*/ 0, /*End of Scope*/
5806 : /* 22617*/ 0, /*End of Scope*/
5807 : /* 22618*/ /*Scope*/ 30|128,9/*1182*/, /*->23802*/
5808 : /* 22620*/ OPC_RecordChild0, // #0 = $z
5809 : /* 22621*/ OPC_MoveChild1,
5810 : /* 22622*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
5811 : /* 22625*/ OPC_Scope, 73|128,4/*585*/, /*->23213*/ // 2 children in Scope
5812 : /* 22628*/ OPC_RecordChild0, // #1 = $x
5813 : /* 22629*/ OPC_MoveChild1,
5814 : /* 22630*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
5815 : /* 22633*/ OPC_Scope, 31|128,2/*287*/, /*->22923*/ // 2 children in Scope
5816 : /* 22636*/ OPC_RecordChild0, // #2 = $y
5817 : /* 22637*/ OPC_CheckChild1Same, 0,
5818 : /* 22639*/ OPC_MoveParent,
5819 : /* 22640*/ OPC_MoveParent,
5820 : /* 22641*/ OPC_CheckType, MVT::i64,
5821 : /* 22643*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5822 : /* 22645*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
5823 : /* 22648*/ OPC_EmitInteger, MVT::i32, 0,
5824 : /* 22651*/ OPC_EmitInteger, MVT::i32, 0,
5825 : /* 22654*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5826 : /* 22657*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5827 : MVT::i32, 2/*#Ops*/, 1, 6, // Results = #7
5828 : /* 22665*/ OPC_EmitInteger, MVT::i32, 0,
5829 : /* 22668*/ OPC_EmitInteger, MVT::i32, 0,
5830 : /* 22671*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5831 : /* 22683*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5832 : /* 22686*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5833 : MVT::i32, 2/*#Ops*/, 2, 11, // Results = #12
5834 : /* 22694*/ OPC_EmitInteger, MVT::i32, 0,
5835 : /* 22697*/ OPC_EmitInteger, MVT::i32, 0,
5836 : /* 22700*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5837 : /* 22712*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5838 : /* 22715*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5839 : MVT::i32, 2/*#Ops*/, 0, 16, // Results = #17
5840 : /* 22723*/ OPC_EmitInteger, MVT::i32, 0,
5841 : /* 22726*/ OPC_EmitInteger, MVT::i32, 0,
5842 : /* 22729*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5843 : /* 22741*/ OPC_EmitInteger, MVT::i32, 1,
5844 : /* 22744*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5845 : /* 22747*/ OPC_EmitInteger, MVT::i32, 0,
5846 : /* 22750*/ OPC_EmitInteger, MVT::i32, 0,
5847 : /* 22753*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
5848 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
5849 : /* 22777*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5850 : /* 22780*/ OPC_EmitInteger, MVT::i32, 0,
5851 : /* 22783*/ OPC_EmitInteger, MVT::i32, 0,
5852 : /* 22786*/ OPC_EmitInteger, MVT::i32, R600::sub1,
5853 : /* 22789*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5854 : MVT::i32, 2/*#Ops*/, 1, 29, // Results = #30
5855 : /* 22797*/ OPC_EmitInteger, MVT::i32, 0,
5856 : /* 22800*/ OPC_EmitInteger, MVT::i32, 0,
5857 : /* 22803*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5858 : /* 22815*/ OPC_EmitInteger, MVT::i32, R600::sub1,
5859 : /* 22818*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5860 : MVT::i32, 2/*#Ops*/, 2, 34, // Results = #35
5861 : /* 22826*/ OPC_EmitInteger, MVT::i32, 0,
5862 : /* 22829*/ OPC_EmitInteger, MVT::i32, 0,
5863 : /* 22832*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5864 : /* 22844*/ OPC_EmitInteger, MVT::i32, R600::sub1,
5865 : /* 22847*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5866 : MVT::i32, 2/*#Ops*/, 0, 39, // Results = #40
5867 : /* 22855*/ OPC_EmitInteger, MVT::i32, 0,
5868 : /* 22858*/ OPC_EmitInteger, MVT::i32, 0,
5869 : /* 22861*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5870 : /* 22873*/ OPC_EmitInteger, MVT::i32, 1,
5871 : /* 22876*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5872 : /* 22879*/ OPC_EmitInteger, MVT::i32, 0,
5873 : /* 22882*/ OPC_EmitInteger, MVT::i32, 0,
5874 : /* 22885*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
5875 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
5876 : /* 22909*/ OPC_EmitInteger, MVT::i32, R600::sub1,
5877 : /* 22912*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
5878 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
5879 : // Src: (xor:{ *:[i64] } i64:{ *:[i64] }:$z, (and:{ *:[i64] } i64:{ *:[i64] }:$x, (xor:{ *:[i64] } i64:{ *:[i64] }:$y, i64:{ *:[i64] }:$z))) - Complexity = 9
5880 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
5881 : /* 22923*/ /*Scope*/ 31|128,2/*287*/, /*->23212*/
5882 : /* 22925*/ OPC_CheckChild0Same, 0,
5883 : /* 22927*/ OPC_RecordChild1, // #2 = $y
5884 : /* 22928*/ OPC_MoveParent,
5885 : /* 22929*/ OPC_MoveParent,
5886 : /* 22930*/ OPC_CheckType, MVT::i64,
5887 : /* 22932*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5888 : /* 22934*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
5889 : /* 22937*/ OPC_EmitInteger, MVT::i32, 0,
5890 : /* 22940*/ OPC_EmitInteger, MVT::i32, 0,
5891 : /* 22943*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5892 : /* 22946*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5893 : MVT::i32, 2/*#Ops*/, 1, 6, // Results = #7
5894 : /* 22954*/ OPC_EmitInteger, MVT::i32, 0,
5895 : /* 22957*/ OPC_EmitInteger, MVT::i32, 0,
5896 : /* 22960*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5897 : /* 22972*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5898 : /* 22975*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5899 : MVT::i32, 2/*#Ops*/, 2, 11, // Results = #12
5900 : /* 22983*/ OPC_EmitInteger, MVT::i32, 0,
5901 : /* 22986*/ OPC_EmitInteger, MVT::i32, 0,
5902 : /* 22989*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5903 : /* 23001*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5904 : /* 23004*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5905 : MVT::i32, 2/*#Ops*/, 0, 16, // Results = #17
5906 : /* 23012*/ OPC_EmitInteger, MVT::i32, 0,
5907 : /* 23015*/ OPC_EmitInteger, MVT::i32, 0,
5908 : /* 23018*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5909 : /* 23030*/ OPC_EmitInteger, MVT::i32, 1,
5910 : /* 23033*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5911 : /* 23036*/ OPC_EmitInteger, MVT::i32, 0,
5912 : /* 23039*/ OPC_EmitInteger, MVT::i32, 0,
5913 : /* 23042*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
5914 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
5915 : /* 23066*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5916 : /* 23069*/ OPC_EmitInteger, MVT::i32, 0,
5917 : /* 23072*/ OPC_EmitInteger, MVT::i32, 0,
5918 : /* 23075*/ OPC_EmitInteger, MVT::i32, R600::sub1,
5919 : /* 23078*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5920 : MVT::i32, 2/*#Ops*/, 1, 29, // Results = #30
5921 : /* 23086*/ OPC_EmitInteger, MVT::i32, 0,
5922 : /* 23089*/ OPC_EmitInteger, MVT::i32, 0,
5923 : /* 23092*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5924 : /* 23104*/ OPC_EmitInteger, MVT::i32, R600::sub1,
5925 : /* 23107*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5926 : MVT::i32, 2/*#Ops*/, 2, 34, // Results = #35
5927 : /* 23115*/ OPC_EmitInteger, MVT::i32, 0,
5928 : /* 23118*/ OPC_EmitInteger, MVT::i32, 0,
5929 : /* 23121*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5930 : /* 23133*/ OPC_EmitInteger, MVT::i32, R600::sub1,
5931 : /* 23136*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5932 : MVT::i32, 2/*#Ops*/, 0, 39, // Results = #40
5933 : /* 23144*/ OPC_EmitInteger, MVT::i32, 0,
5934 : /* 23147*/ OPC_EmitInteger, MVT::i32, 0,
5935 : /* 23150*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5936 : /* 23162*/ OPC_EmitInteger, MVT::i32, 1,
5937 : /* 23165*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5938 : /* 23168*/ OPC_EmitInteger, MVT::i32, 0,
5939 : /* 23171*/ OPC_EmitInteger, MVT::i32, 0,
5940 : /* 23174*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
5941 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
5942 : /* 23198*/ OPC_EmitInteger, MVT::i32, R600::sub1,
5943 : /* 23201*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
5944 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
5945 : // Src: (xor:{ *:[i64] } i64:{ *:[i64] }:$z, (and:{ *:[i64] } i64:{ *:[i64] }:$x, (xor:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$y))) - Complexity = 9
5946 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
5947 : /* 23212*/ 0, /*End of Scope*/
5948 : /* 23213*/ /*Scope*/ 74|128,4/*586*/, /*->23801*/
5949 : /* 23215*/ OPC_MoveChild0,
5950 : /* 23216*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
5951 : /* 23219*/ OPC_Scope, 32|128,2/*288*/, /*->23510*/ // 2 children in Scope
5952 : /* 23222*/ OPC_RecordChild0, // #1 = $y
5953 : /* 23223*/ OPC_CheckChild1Same, 0,
5954 : /* 23225*/ OPC_MoveParent,
5955 : /* 23226*/ OPC_RecordChild1, // #2 = $x
5956 : /* 23227*/ OPC_MoveParent,
5957 : /* 23228*/ OPC_CheckType, MVT::i64,
5958 : /* 23230*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
5959 : /* 23232*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
5960 : /* 23235*/ OPC_EmitInteger, MVT::i32, 0,
5961 : /* 23238*/ OPC_EmitInteger, MVT::i32, 0,
5962 : /* 23241*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5963 : /* 23244*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5964 : MVT::i32, 2/*#Ops*/, 2, 6, // Results = #7
5965 : /* 23252*/ OPC_EmitInteger, MVT::i32, 0,
5966 : /* 23255*/ OPC_EmitInteger, MVT::i32, 0,
5967 : /* 23258*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5968 : /* 23270*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5969 : /* 23273*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5970 : MVT::i32, 2/*#Ops*/, 1, 11, // Results = #12
5971 : /* 23281*/ OPC_EmitInteger, MVT::i32, 0,
5972 : /* 23284*/ OPC_EmitInteger, MVT::i32, 0,
5973 : /* 23287*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5974 : /* 23299*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5975 : /* 23302*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5976 : MVT::i32, 2/*#Ops*/, 0, 16, // Results = #17
5977 : /* 23310*/ OPC_EmitInteger, MVT::i32, 0,
5978 : /* 23313*/ OPC_EmitInteger, MVT::i32, 0,
5979 : /* 23316*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5980 : /* 23328*/ OPC_EmitInteger, MVT::i32, 1,
5981 : /* 23331*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
5982 : /* 23334*/ OPC_EmitInteger, MVT::i32, 0,
5983 : /* 23337*/ OPC_EmitInteger, MVT::i32, 0,
5984 : /* 23340*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
5985 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
5986 : /* 23364*/ OPC_EmitInteger, MVT::i32, R600::sub0,
5987 : /* 23367*/ OPC_EmitInteger, MVT::i32, 0,
5988 : /* 23370*/ OPC_EmitInteger, MVT::i32, 0,
5989 : /* 23373*/ OPC_EmitInteger, MVT::i32, R600::sub1,
5990 : /* 23376*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5991 : MVT::i32, 2/*#Ops*/, 2, 29, // Results = #30
5992 : /* 23384*/ OPC_EmitInteger, MVT::i32, 0,
5993 : /* 23387*/ OPC_EmitInteger, MVT::i32, 0,
5994 : /* 23390*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
5995 : /* 23402*/ OPC_EmitInteger, MVT::i32, R600::sub1,
5996 : /* 23405*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
5997 : MVT::i32, 2/*#Ops*/, 1, 34, // Results = #35
5998 : /* 23413*/ OPC_EmitInteger, MVT::i32, 0,
5999 : /* 23416*/ OPC_EmitInteger, MVT::i32, 0,
6000 : /* 23419*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6001 : /* 23431*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6002 : /* 23434*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6003 : MVT::i32, 2/*#Ops*/, 0, 39, // Results = #40
6004 : /* 23442*/ OPC_EmitInteger, MVT::i32, 0,
6005 : /* 23445*/ OPC_EmitInteger, MVT::i32, 0,
6006 : /* 23448*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6007 : /* 23460*/ OPC_EmitInteger, MVT::i32, 1,
6008 : /* 23463*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6009 : /* 23466*/ OPC_EmitInteger, MVT::i32, 0,
6010 : /* 23469*/ OPC_EmitInteger, MVT::i32, 0,
6011 : /* 23472*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
6012 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
6013 : /* 23496*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6014 : /* 23499*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
6015 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
6016 : // Src: (xor:{ *:[i64] } i64:{ *:[i64] }:$z, (and:{ *:[i64] } (xor:{ *:[i64] } i64:{ *:[i64] }:$y, i64:{ *:[i64] }:$z), i64:{ *:[i64] }:$x)) - Complexity = 9
6017 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
6018 : /* 23510*/ /*Scope*/ 32|128,2/*288*/, /*->23800*/
6019 : /* 23512*/ OPC_CheckChild0Same, 0,
6020 : /* 23514*/ OPC_RecordChild1, // #1 = $y
6021 : /* 23515*/ OPC_MoveParent,
6022 : /* 23516*/ OPC_RecordChild1, // #2 = $x
6023 : /* 23517*/ OPC_MoveParent,
6024 : /* 23518*/ OPC_CheckType, MVT::i64,
6025 : /* 23520*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6026 : /* 23522*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
6027 : /* 23525*/ OPC_EmitInteger, MVT::i32, 0,
6028 : /* 23528*/ OPC_EmitInteger, MVT::i32, 0,
6029 : /* 23531*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6030 : /* 23534*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6031 : MVT::i32, 2/*#Ops*/, 2, 6, // Results = #7
6032 : /* 23542*/ OPC_EmitInteger, MVT::i32, 0,
6033 : /* 23545*/ OPC_EmitInteger, MVT::i32, 0,
6034 : /* 23548*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6035 : /* 23560*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6036 : /* 23563*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6037 : MVT::i32, 2/*#Ops*/, 1, 11, // Results = #12
6038 : /* 23571*/ OPC_EmitInteger, MVT::i32, 0,
6039 : /* 23574*/ OPC_EmitInteger, MVT::i32, 0,
6040 : /* 23577*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6041 : /* 23589*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6042 : /* 23592*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6043 : MVT::i32, 2/*#Ops*/, 0, 16, // Results = #17
6044 : /* 23600*/ OPC_EmitInteger, MVT::i32, 0,
6045 : /* 23603*/ OPC_EmitInteger, MVT::i32, 0,
6046 : /* 23606*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6047 : /* 23618*/ OPC_EmitInteger, MVT::i32, 1,
6048 : /* 23621*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6049 : /* 23624*/ OPC_EmitInteger, MVT::i32, 0,
6050 : /* 23627*/ OPC_EmitInteger, MVT::i32, 0,
6051 : /* 23630*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
6052 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
6053 : /* 23654*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6054 : /* 23657*/ OPC_EmitInteger, MVT::i32, 0,
6055 : /* 23660*/ OPC_EmitInteger, MVT::i32, 0,
6056 : /* 23663*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6057 : /* 23666*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6058 : MVT::i32, 2/*#Ops*/, 2, 29, // Results = #30
6059 : /* 23674*/ OPC_EmitInteger, MVT::i32, 0,
6060 : /* 23677*/ OPC_EmitInteger, MVT::i32, 0,
6061 : /* 23680*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6062 : /* 23692*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6063 : /* 23695*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6064 : MVT::i32, 2/*#Ops*/, 1, 34, // Results = #35
6065 : /* 23703*/ OPC_EmitInteger, MVT::i32, 0,
6066 : /* 23706*/ OPC_EmitInteger, MVT::i32, 0,
6067 : /* 23709*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6068 : /* 23721*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6069 : /* 23724*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6070 : MVT::i32, 2/*#Ops*/, 0, 39, // Results = #40
6071 : /* 23732*/ OPC_EmitInteger, MVT::i32, 0,
6072 : /* 23735*/ OPC_EmitInteger, MVT::i32, 0,
6073 : /* 23738*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6074 : /* 23750*/ OPC_EmitInteger, MVT::i32, 1,
6075 : /* 23753*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6076 : /* 23756*/ OPC_EmitInteger, MVT::i32, 0,
6077 : /* 23759*/ OPC_EmitInteger, MVT::i32, 0,
6078 : /* 23762*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
6079 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
6080 : /* 23786*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6081 : /* 23789*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
6082 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
6083 : // Src: (xor:{ *:[i64] } i64:{ *:[i64] }:$z, (and:{ *:[i64] } (xor:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$y), i64:{ *:[i64] }:$x)) - Complexity = 9
6084 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
6085 : /* 23800*/ 0, /*End of Scope*/
6086 : /* 23801*/ 0, /*End of Scope*/
6087 : /* 23802*/ /*Scope*/ 20|128,9/*1172*/, /*->24976*/
6088 : /* 23804*/ OPC_MoveChild0,
6089 : /* 23805*/ OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6090 : /* 23808*/ OPC_Scope, 69|128,4/*581*/, /*->24392*/ // 2 children in Scope
6091 : /* 23811*/ OPC_RecordChild0, // #0 = $x
6092 : /* 23812*/ OPC_MoveChild1,
6093 : /* 23813*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6094 : /* 23816*/ OPC_RecordChild0, // #1 = $y
6095 : /* 23817*/ OPC_RecordChild1, // #2 = $z
6096 : /* 23818*/ OPC_MoveParent,
6097 : /* 23819*/ OPC_MoveParent,
6098 : /* 23820*/ OPC_CheckType, MVT::i64,
6099 : /* 23822*/ OPC_Scope, 26|128,2/*282*/, /*->24107*/ // 2 children in Scope
6100 : /* 23825*/ OPC_CheckChild1Same, 2,
6101 : /* 23827*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6102 : /* 23829*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
6103 : /* 23832*/ OPC_EmitInteger, MVT::i32, 0,
6104 : /* 23835*/ OPC_EmitInteger, MVT::i32, 0,
6105 : /* 23838*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6106 : /* 23841*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6107 : MVT::i32, 2/*#Ops*/, 0, 6, // Results = #7
6108 : /* 23849*/ OPC_EmitInteger, MVT::i32, 0,
6109 : /* 23852*/ OPC_EmitInteger, MVT::i32, 0,
6110 : /* 23855*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6111 : /* 23867*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6112 : /* 23870*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6113 : MVT::i32, 2/*#Ops*/, 1, 11, // Results = #12
6114 : /* 23878*/ OPC_EmitInteger, MVT::i32, 0,
6115 : /* 23881*/ OPC_EmitInteger, MVT::i32, 0,
6116 : /* 23884*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6117 : /* 23896*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6118 : /* 23899*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6119 : MVT::i32, 2/*#Ops*/, 2, 16, // Results = #17
6120 : /* 23907*/ OPC_EmitInteger, MVT::i32, 0,
6121 : /* 23910*/ OPC_EmitInteger, MVT::i32, 0,
6122 : /* 23913*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6123 : /* 23925*/ OPC_EmitInteger, MVT::i32, 1,
6124 : /* 23928*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6125 : /* 23931*/ OPC_EmitInteger, MVT::i32, 0,
6126 : /* 23934*/ OPC_EmitInteger, MVT::i32, 0,
6127 : /* 23937*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
6128 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
6129 : /* 23961*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6130 : /* 23964*/ OPC_EmitInteger, MVT::i32, 0,
6131 : /* 23967*/ OPC_EmitInteger, MVT::i32, 0,
6132 : /* 23970*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6133 : /* 23973*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6134 : MVT::i32, 2/*#Ops*/, 0, 29, // Results = #30
6135 : /* 23981*/ OPC_EmitInteger, MVT::i32, 0,
6136 : /* 23984*/ OPC_EmitInteger, MVT::i32, 0,
6137 : /* 23987*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6138 : /* 23999*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6139 : /* 24002*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6140 : MVT::i32, 2/*#Ops*/, 1, 34, // Results = #35
6141 : /* 24010*/ OPC_EmitInteger, MVT::i32, 0,
6142 : /* 24013*/ OPC_EmitInteger, MVT::i32, 0,
6143 : /* 24016*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6144 : /* 24028*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6145 : /* 24031*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6146 : MVT::i32, 2/*#Ops*/, 2, 39, // Results = #40
6147 : /* 24039*/ OPC_EmitInteger, MVT::i32, 0,
6148 : /* 24042*/ OPC_EmitInteger, MVT::i32, 0,
6149 : /* 24045*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6150 : /* 24057*/ OPC_EmitInteger, MVT::i32, 1,
6151 : /* 24060*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6152 : /* 24063*/ OPC_EmitInteger, MVT::i32, 0,
6153 : /* 24066*/ OPC_EmitInteger, MVT::i32, 0,
6154 : /* 24069*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
6155 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
6156 : /* 24093*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6157 : /* 24096*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
6158 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
6159 : // Src: (xor:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$x, (xor:{ *:[i64] } i64:{ *:[i64] }:$y, i64:{ *:[i64] }:$z)), i64:{ *:[i64] }:$z) - Complexity = 9
6160 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
6161 : /* 24107*/ /*Scope*/ 26|128,2/*282*/, /*->24391*/
6162 : /* 24109*/ OPC_CheckChild1Same, 1,
6163 : /* 24111*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6164 : /* 24113*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
6165 : /* 24116*/ OPC_EmitInteger, MVT::i32, 0,
6166 : /* 24119*/ OPC_EmitInteger, MVT::i32, 0,
6167 : /* 24122*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6168 : /* 24125*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6169 : MVT::i32, 2/*#Ops*/, 0, 6, // Results = #7
6170 : /* 24133*/ OPC_EmitInteger, MVT::i32, 0,
6171 : /* 24136*/ OPC_EmitInteger, MVT::i32, 0,
6172 : /* 24139*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6173 : /* 24151*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6174 : /* 24154*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6175 : MVT::i32, 2/*#Ops*/, 2, 11, // Results = #12
6176 : /* 24162*/ OPC_EmitInteger, MVT::i32, 0,
6177 : /* 24165*/ OPC_EmitInteger, MVT::i32, 0,
6178 : /* 24168*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6179 : /* 24180*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6180 : /* 24183*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6181 : MVT::i32, 2/*#Ops*/, 1, 16, // Results = #17
6182 : /* 24191*/ OPC_EmitInteger, MVT::i32, 0,
6183 : /* 24194*/ OPC_EmitInteger, MVT::i32, 0,
6184 : /* 24197*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6185 : /* 24209*/ OPC_EmitInteger, MVT::i32, 1,
6186 : /* 24212*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6187 : /* 24215*/ OPC_EmitInteger, MVT::i32, 0,
6188 : /* 24218*/ OPC_EmitInteger, MVT::i32, 0,
6189 : /* 24221*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
6190 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
6191 : /* 24245*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6192 : /* 24248*/ OPC_EmitInteger, MVT::i32, 0,
6193 : /* 24251*/ OPC_EmitInteger, MVT::i32, 0,
6194 : /* 24254*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6195 : /* 24257*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6196 : MVT::i32, 2/*#Ops*/, 0, 29, // Results = #30
6197 : /* 24265*/ OPC_EmitInteger, MVT::i32, 0,
6198 : /* 24268*/ OPC_EmitInteger, MVT::i32, 0,
6199 : /* 24271*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6200 : /* 24283*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6201 : /* 24286*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6202 : MVT::i32, 2/*#Ops*/, 2, 34, // Results = #35
6203 : /* 24294*/ OPC_EmitInteger, MVT::i32, 0,
6204 : /* 24297*/ OPC_EmitInteger, MVT::i32, 0,
6205 : /* 24300*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6206 : /* 24312*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6207 : /* 24315*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6208 : MVT::i32, 2/*#Ops*/, 1, 39, // Results = #40
6209 : /* 24323*/ OPC_EmitInteger, MVT::i32, 0,
6210 : /* 24326*/ OPC_EmitInteger, MVT::i32, 0,
6211 : /* 24329*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6212 : /* 24341*/ OPC_EmitInteger, MVT::i32, 1,
6213 : /* 24344*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6214 : /* 24347*/ OPC_EmitInteger, MVT::i32, 0,
6215 : /* 24350*/ OPC_EmitInteger, MVT::i32, 0,
6216 : /* 24353*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
6217 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
6218 : /* 24377*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6219 : /* 24380*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
6220 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
6221 : // Src: (xor:{ *:[i64] } (and:{ *:[i64] } i64:{ *:[i64] }:$x, (xor:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$y)), i64:{ *:[i64] }:$z) - Complexity = 9
6222 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
6223 : /* 24391*/ 0, /*End of Scope*/
6224 : /* 24392*/ /*Scope*/ 69|128,4/*581*/, /*->24975*/
6225 : /* 24394*/ OPC_MoveChild0,
6226 : /* 24395*/ OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6227 : /* 24398*/ OPC_RecordChild0, // #0 = $y
6228 : /* 24399*/ OPC_RecordChild1, // #1 = $z
6229 : /* 24400*/ OPC_MoveParent,
6230 : /* 24401*/ OPC_RecordChild1, // #2 = $x
6231 : /* 24402*/ OPC_MoveParent,
6232 : /* 24403*/ OPC_CheckType, MVT::i64,
6233 : /* 24405*/ OPC_Scope, 26|128,2/*282*/, /*->24690*/ // 2 children in Scope
6234 : /* 24408*/ OPC_CheckChild1Same, 1,
6235 : /* 24410*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6236 : /* 24412*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
6237 : /* 24415*/ OPC_EmitInteger, MVT::i32, 0,
6238 : /* 24418*/ OPC_EmitInteger, MVT::i32, 0,
6239 : /* 24421*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6240 : /* 24424*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6241 : MVT::i32, 2/*#Ops*/, 2, 6, // Results = #7
6242 : /* 24432*/ OPC_EmitInteger, MVT::i32, 0,
6243 : /* 24435*/ OPC_EmitInteger, MVT::i32, 0,
6244 : /* 24438*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6245 : /* 24450*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6246 : /* 24453*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6247 : MVT::i32, 2/*#Ops*/, 0, 11, // Results = #12
6248 : /* 24461*/ OPC_EmitInteger, MVT::i32, 0,
6249 : /* 24464*/ OPC_EmitInteger, MVT::i32, 0,
6250 : /* 24467*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6251 : /* 24479*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6252 : /* 24482*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6253 : MVT::i32, 2/*#Ops*/, 1, 16, // Results = #17
6254 : /* 24490*/ OPC_EmitInteger, MVT::i32, 0,
6255 : /* 24493*/ OPC_EmitInteger, MVT::i32, 0,
6256 : /* 24496*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6257 : /* 24508*/ OPC_EmitInteger, MVT::i32, 1,
6258 : /* 24511*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6259 : /* 24514*/ OPC_EmitInteger, MVT::i32, 0,
6260 : /* 24517*/ OPC_EmitInteger, MVT::i32, 0,
6261 : /* 24520*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
6262 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
6263 : /* 24544*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6264 : /* 24547*/ OPC_EmitInteger, MVT::i32, 0,
6265 : /* 24550*/ OPC_EmitInteger, MVT::i32, 0,
6266 : /* 24553*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6267 : /* 24556*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6268 : MVT::i32, 2/*#Ops*/, 2, 29, // Results = #30
6269 : /* 24564*/ OPC_EmitInteger, MVT::i32, 0,
6270 : /* 24567*/ OPC_EmitInteger, MVT::i32, 0,
6271 : /* 24570*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6272 : /* 24582*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6273 : /* 24585*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6274 : MVT::i32, 2/*#Ops*/, 0, 34, // Results = #35
6275 : /* 24593*/ OPC_EmitInteger, MVT::i32, 0,
6276 : /* 24596*/ OPC_EmitInteger, MVT::i32, 0,
6277 : /* 24599*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6278 : /* 24611*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6279 : /* 24614*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6280 : MVT::i32, 2/*#Ops*/, 1, 39, // Results = #40
6281 : /* 24622*/ OPC_EmitInteger, MVT::i32, 0,
6282 : /* 24625*/ OPC_EmitInteger, MVT::i32, 0,
6283 : /* 24628*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6284 : /* 24640*/ OPC_EmitInteger, MVT::i32, 1,
6285 : /* 24643*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6286 : /* 24646*/ OPC_EmitInteger, MVT::i32, 0,
6287 : /* 24649*/ OPC_EmitInteger, MVT::i32, 0,
6288 : /* 24652*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
6289 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
6290 : /* 24676*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6291 : /* 24679*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
6292 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
6293 : // Src: (xor:{ *:[i64] } (and:{ *:[i64] } (xor:{ *:[i64] } i64:{ *:[i64] }:$y, i64:{ *:[i64] }:$z), i64:{ *:[i64] }:$x), i64:{ *:[i64] }:$z) - Complexity = 9
6294 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
6295 : /* 24690*/ /*Scope*/ 26|128,2/*282*/, /*->24974*/
6296 : /* 24692*/ OPC_CheckChild1Same, 0,
6297 : /* 24694*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6298 : /* 24696*/ OPC_EmitInteger, MVT::i32, R600::R600_Reg64RegClassID,
6299 : /* 24699*/ OPC_EmitInteger, MVT::i32, 0,
6300 : /* 24702*/ OPC_EmitInteger, MVT::i32, 0,
6301 : /* 24705*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6302 : /* 24708*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6303 : MVT::i32, 2/*#Ops*/, 2, 6, // Results = #7
6304 : /* 24716*/ OPC_EmitInteger, MVT::i32, 0,
6305 : /* 24719*/ OPC_EmitInteger, MVT::i32, 0,
6306 : /* 24722*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6307 : /* 24734*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6308 : /* 24737*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6309 : MVT::i32, 2/*#Ops*/, 1, 11, // Results = #12
6310 : /* 24745*/ OPC_EmitInteger, MVT::i32, 0,
6311 : /* 24748*/ OPC_EmitInteger, MVT::i32, 0,
6312 : /* 24751*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6313 : /* 24763*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6314 : /* 24766*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6315 : MVT::i32, 2/*#Ops*/, 0, 16, // Results = #17
6316 : /* 24774*/ OPC_EmitInteger, MVT::i32, 0,
6317 : /* 24777*/ OPC_EmitInteger, MVT::i32, 0,
6318 : /* 24780*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6319 : /* 24792*/ OPC_EmitInteger, MVT::i32, 1,
6320 : /* 24795*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6321 : /* 24798*/ OPC_EmitInteger, MVT::i32, 0,
6322 : /* 24801*/ OPC_EmitInteger, MVT::i32, 0,
6323 : /* 24804*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
6324 : MVT::i32, 18/*#Ops*/, 4, 5, 7, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, // Results = #25
6325 : /* 24828*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6326 : /* 24831*/ OPC_EmitInteger, MVT::i32, 0,
6327 : /* 24834*/ OPC_EmitInteger, MVT::i32, 0,
6328 : /* 24837*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6329 : /* 24840*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6330 : MVT::i32, 2/*#Ops*/, 2, 29, // Results = #30
6331 : /* 24848*/ OPC_EmitInteger, MVT::i32, 0,
6332 : /* 24851*/ OPC_EmitInteger, MVT::i32, 0,
6333 : /* 24854*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6334 : /* 24866*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6335 : /* 24869*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6336 : MVT::i32, 2/*#Ops*/, 1, 34, // Results = #35
6337 : /* 24877*/ OPC_EmitInteger, MVT::i32, 0,
6338 : /* 24880*/ OPC_EmitInteger, MVT::i32, 0,
6339 : /* 24883*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6340 : /* 24895*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6341 : /* 24898*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6342 : MVT::i32, 2/*#Ops*/, 0, 39, // Results = #40
6343 : /* 24906*/ OPC_EmitInteger, MVT::i32, 0,
6344 : /* 24909*/ OPC_EmitInteger, MVT::i32, 0,
6345 : /* 24912*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6346 : /* 24924*/ OPC_EmitInteger, MVT::i32, 1,
6347 : /* 24927*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6348 : /* 24930*/ OPC_EmitInteger, MVT::i32, 0,
6349 : /* 24933*/ OPC_EmitInteger, MVT::i32, 0,
6350 : /* 24936*/ OPC_EmitNode1, TARGET_VAL(R600::BFI_INT_eg), 0,
6351 : MVT::i32, 18/*#Ops*/, 27, 28, 30, 31, 32, 33, 35, 36, 37, 38, 40, 41, 42, 43, 44, 45, 46, 47, // Results = #48
6352 : /* 24960*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6353 : /* 24963*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::REG_SEQUENCE), 0,
6354 : MVT::i64, 5/*#Ops*/, 3, 25, 26, 48, 49,
6355 : // Src: (xor:{ *:[i64] } (and:{ *:[i64] } (xor:{ *:[i64] } i64:{ *:[i64] }:$z, i64:{ *:[i64] }:$y), i64:{ *:[i64] }:$x), i64:{ *:[i64] }:$z) - Complexity = 9
6356 : // Dst: (REG_SEQUENCE:{ *:[i64] } R600_Reg64:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub0:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub0:{ *:[i32] })), sub0:{ *:[i32] }, (BFI_INT_eg:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$x, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$y, sub1:{ *:[i32] }), (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[i64] }:$z, sub1:{ *:[i32] })), sub1:{ *:[i32] })
6357 : /* 24974*/ 0, /*End of Scope*/
6358 : /* 24975*/ 0, /*End of Scope*/
6359 : /* 24976*/ /*Scope*/ 57|128,1/*185*/, /*->25163*/
6360 : /* 24978*/ OPC_RecordChild0, // #0 = $src0
6361 : /* 24979*/ OPC_CheckType, MVT::i32,
6362 : /* 24981*/ OPC_Scope, 77, /*->25060*/ // 2 children in Scope
6363 : /* 24983*/ OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6364 : /* 24994*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6365 : /* 24996*/ OPC_EmitInteger, MVT::i32, 1,
6366 : /* 24999*/ OPC_EmitInteger, MVT::i32, 0,
6367 : /* 25002*/ OPC_EmitInteger, MVT::i32, 0,
6368 : /* 25005*/ OPC_EmitInteger, MVT::i32, 0,
6369 : /* 25008*/ OPC_EmitInteger, MVT::i32, 0,
6370 : /* 25011*/ OPC_EmitInteger, MVT::i32, 0,
6371 : /* 25014*/ OPC_EmitInteger, MVT::i32, 0,
6372 : /* 25017*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6373 : /* 25029*/ OPC_EmitInteger, MVT::i32, 1,
6374 : /* 25032*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6375 : /* 25035*/ OPC_EmitInteger, MVT::i32, 0,
6376 : /* 25038*/ OPC_EmitInteger, MVT::i32, 0,
6377 : /* 25041*/ OPC_MorphNodeTo1, TARGET_VAL(R600::NOT_INT), 0,
6378 : MVT::i32, 13/*#Ops*/, 1, 2, 3, 4, 0, 5, 6, 7, 8, 9, 10, 11, 12,
6379 : // Src: (xor:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, -1:{ *:[i32] }) - Complexity = 8
6380 : // Dst: (NOT_INT:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0)
6381 : /* 25060*/ /*Scope*/ 101, /*->25162*/
6382 : /* 25061*/ OPC_RecordChild1, // #1 = $src1
6383 : /* 25062*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6384 : /* 25064*/ OPC_EmitInteger, MVT::i32, 0,
6385 : /* 25067*/ OPC_EmitInteger, MVT::i32, 0,
6386 : /* 25070*/ OPC_EmitInteger, MVT::i32, 1,
6387 : /* 25073*/ OPC_EmitInteger, MVT::i32, 0,
6388 : /* 25076*/ OPC_EmitInteger, MVT::i32, 0,
6389 : /* 25079*/ OPC_EmitInteger, MVT::i32, 0,
6390 : /* 25082*/ OPC_EmitInteger, MVT::i32, 0,
6391 : /* 25085*/ OPC_EmitInteger, MVT::i32, 0,
6392 : /* 25088*/ OPC_EmitInteger, MVT::i32, 0,
6393 : /* 25091*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6394 : /* 25103*/ OPC_EmitInteger, MVT::i32, 0,
6395 : /* 25106*/ OPC_EmitInteger, MVT::i32, 0,
6396 : /* 25109*/ OPC_EmitInteger, MVT::i32, 0,
6397 : /* 25112*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6398 : /* 25124*/ OPC_EmitInteger, MVT::i32, 1,
6399 : /* 25127*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6400 : /* 25130*/ OPC_EmitInteger, MVT::i32, 0,
6401 : /* 25133*/ OPC_EmitInteger, MVT::i32, 0,
6402 : /* 25136*/ OPC_MorphNodeTo1, TARGET_VAL(R600::XOR_INT), 0,
6403 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
6404 : // Src: (xor:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
6405 : // Dst: (XOR_INT:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
6406 : /* 25162*/ 0, /*End of Scope*/
6407 : /* 25163*/ 0, /*End of Scope*/
6408 : /* 25164*/ /*SwitchOpcode*/ 45, TARGET_VAL(AMDGPUISD::CONST_ADDRESS),// ->25212
6409 : /* 25167*/ OPC_RecordChild0, // #0 = $src
6410 : /* 25168*/ OPC_CheckChild0Type, MVT::i32,
6411 : /* 25170*/ OPC_Scope, 12, /*->25184*/ // 2 children in Scope
6412 : /* 25172*/ OPC_CheckType, MVT::i32,
6413 : /* 25174*/ OPC_CheckComplexPat, /*CP*/2, /*#*/0, // SelectGlobalValueConstantOffset:$src #1
6414 : /* 25177*/ OPC_MorphNodeTo1, TARGET_VAL(R600::CONST_COPY), 0|OPFL_Variadic1,
6415 : MVT::i32, 1/*#Ops*/, 1,
6416 : // Src: (CONST_ADDRESS:{ *:[i32] } ADDRGA_CONST_OFFSET:{ *:[i32] }:$src) - Complexity = 9
6417 : // Dst: (CONST_COPY:{ *:[i32] } ADDRGA_CONST_OFFSET:{ *:[i32] }:$src)
6418 : /* 25184*/ /*Scope*/ 26, /*->25211*/
6419 : /* 25185*/ OPC_RecordChild1, // #1 = $buffer_id
6420 : /* 25186*/ OPC_MoveChild1,
6421 : /* 25187*/ OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6422 : /* 25190*/ OPC_CheckType, MVT::i32,
6423 : /* 25192*/ OPC_MoveParent,
6424 : /* 25193*/ OPC_CheckType, MVT::v4i32,
6425 : /* 25195*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6426 : /* 25197*/ OPC_CheckComplexPat, /*CP*/3, /*#*/0, // SelectGlobalValueVariableOffset:$ptr #2 #3
6427 : /* 25200*/ OPC_EmitConvertToTarget, 1,
6428 : /* 25202*/ OPC_MorphNodeTo1, TARGET_VAL(R600::TEX_VTX_CONSTBUF), 0|OPFL_Variadic2,
6429 : MVT::v4i32, 3/*#Ops*/, 2, 3, 4,
6430 : // Src: (CONST_ADDRESS:{ *:[v4i32] } ADDRGA_VAR_OFFSET:{ *:[i32] }:$ptr, (imm:{ *:[i32] }):$buffer_id) - Complexity = 15
6431 : // Dst: (TEX_VTX_CONSTBUF:{ *:[v4i32] } ADDRGA_VAR_OFFSET:{ *:[i32] }:$ptr, (imm:{ *:[i32] }):$buffer_id)
6432 : /* 25211*/ 0, /*End of Scope*/
6433 : /* 25212*/ /*SwitchOpcode*/ 125|128,1/*253*/, TARGET_VAL(ISD::ATOMIC_LOAD_ADD),// ->25469
6434 : /* 25216*/ OPC_RecordMemRef,
6435 : /* 25217*/ OPC_RecordNode, // #0 = 'atomic_load_add' chained node
6436 : /* 25218*/ OPC_RecordChild1, // #1 = $ptr
6437 : /* 25219*/ OPC_CheckChild1Type, MVT::i32,
6438 : /* 25221*/ OPC_CheckType, MVT::i32,
6439 : /* 25223*/ OPC_Scope, 63, /*->25288*/ // 3 children in Scope
6440 : /* 25225*/ OPC_CheckChild2Integer, 1,
6441 : /* 25227*/ OPC_CheckPredicate, 30, // Predicate_atomic_add_global_noret
6442 : /* 25229*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6443 : /* 25231*/ OPC_EmitMergeInputChains1_0,
6444 : /* 25232*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
6445 : MVT::v4i32, 0/*#Ops*/, // Results = #2
6446 : /* 25238*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6447 : /* 25250*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
6448 : MVT::i32, 1/*#Ops*/, 3, // Results = #4
6449 : /* 25257*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6450 : /* 25260*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
6451 : MVT::v4i32, 3/*#Ops*/, 2, 4, 5, // Results = #6
6452 : /* 25269*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_INC_UINT_NORET), 0|OPFL_Chain|OPFL_MemRefs,
6453 : MVT::v4i32, 2/*#Ops*/, 6, 1, // Results = #7
6454 : /* 25277*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6455 : /* 25280*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
6456 : MVT::i32, 2/*#Ops*/, 7, 8,
6457 : // Src: (atomic_load_add:{ *:[i32] } i32:{ *:[i32] }:$ptr, 1:{ *:[i32] })<<P:Predicate_atomic_add_global_noret>> - Complexity = 9
6458 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_INC_UINT_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), (MOV_IMM_I32:{ *:[i32] } -1:{ *:[i32] }), sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
6459 : /* 25288*/ /*Scope*/ 72, /*->25361*/
6460 : /* 25289*/ OPC_CheckChild2Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6461 : /* 25300*/ OPC_CheckPredicate, 30, // Predicate_atomic_add_global_noret
6462 : /* 25302*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6463 : /* 25304*/ OPC_EmitMergeInputChains1_0,
6464 : /* 25305*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
6465 : MVT::v4i32, 0/*#Ops*/, // Results = #2
6466 : /* 25311*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6467 : /* 25323*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
6468 : MVT::i32, 1/*#Ops*/, 3, // Results = #4
6469 : /* 25330*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6470 : /* 25333*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
6471 : MVT::v4i32, 3/*#Ops*/, 2, 4, 5, // Results = #6
6472 : /* 25342*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_DEC_UINT_NORET), 0|OPFL_Chain|OPFL_MemRefs,
6473 : MVT::v4i32, 2/*#Ops*/, 6, 1, // Results = #7
6474 : /* 25350*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6475 : /* 25353*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
6476 : MVT::i32, 2/*#Ops*/, 7, 8,
6477 : // Src: (atomic_load_add:{ *:[i32] } i32:{ *:[i32] }:$ptr, -1:{ *:[i32] })<<P:Predicate_atomic_add_global_noret>> - Complexity = 9
6478 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_DEC_UINT_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), (MOV_IMM_I32:{ *:[i32] } -1:{ *:[i32] }), sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
6479 : /* 25361*/ /*Scope*/ 106, /*->25468*/
6480 : /* 25362*/ OPC_RecordChild2, // #2 = $data
6481 : /* 25363*/ OPC_Scope, 42, /*->25407*/ // 2 children in Scope
6482 : /* 25365*/ OPC_CheckPredicate, 30, // Predicate_atomic_add_global_noret
6483 : /* 25367*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6484 : /* 25369*/ OPC_EmitMergeInputChains1_0,
6485 : /* 25370*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
6486 : MVT::v4i32, 0/*#Ops*/, // Results = #3
6487 : /* 25376*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6488 : /* 25379*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
6489 : MVT::v4i32, 3/*#Ops*/, 3, 2, 4, // Results = #5
6490 : /* 25388*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_ADD_NORET), 0|OPFL_Chain|OPFL_MemRefs,
6491 : MVT::v4i32, 2/*#Ops*/, 5, 1, // Results = #6
6492 : /* 25396*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6493 : /* 25399*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
6494 : MVT::i32, 2/*#Ops*/, 6, 7,
6495 : // Src: (atomic_load_add:{ *:[i32] } i32:{ *:[i32] }:$ptr, i32:{ *:[i32] }:$data)<<P:Predicate_atomic_add_global_noret>> - Complexity = 4
6496 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_ADD_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), ?:{ *:[i32] }:$data, sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
6497 : /* 25407*/ /*Scope*/ 59, /*->25467*/
6498 : /* 25408*/ OPC_CheckPredicate, 20, // Predicate_atomic_load_add_local
6499 : /* 25410*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6500 : /* 25412*/ OPC_EmitMergeInputChains1_0,
6501 : /* 25413*/ OPC_EmitInteger, MVT::i32, 0,
6502 : /* 25416*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6503 : /* 25428*/ OPC_EmitInteger, MVT::i32, 0,
6504 : /* 25431*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6505 : /* 25443*/ OPC_EmitInteger, MVT::i32, 1,
6506 : /* 25446*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6507 : /* 25449*/ OPC_EmitInteger, MVT::i32, 0,
6508 : /* 25452*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_ADD_RET), 0|OPFL_Chain|OPFL_MemRefs,
6509 : MVT::i32, 9/*#Ops*/, 1, 3, 4, 2, 5, 6, 7, 8, 9,
6510 : // Src: (atomic_load_add:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)<<P:Predicate_atomic_load_add_local>> - Complexity = 4
6511 : // Dst: (LDS_ADD_RET:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
6512 : /* 25467*/ 0, /*End of Scope*/
6513 : /* 25468*/ 0, /*End of Scope*/
6514 : /* 25469*/ /*SwitchOpcode*/ 125|128,1/*253*/, TARGET_VAL(ISD::ATOMIC_LOAD_SUB),// ->25726
6515 : /* 25473*/ OPC_RecordMemRef,
6516 : /* 25474*/ OPC_RecordNode, // #0 = 'atomic_load_sub' chained node
6517 : /* 25475*/ OPC_RecordChild1, // #1 = $ptr
6518 : /* 25476*/ OPC_CheckChild1Type, MVT::i32,
6519 : /* 25478*/ OPC_CheckType, MVT::i32,
6520 : /* 25480*/ OPC_Scope, 72, /*->25554*/ // 3 children in Scope
6521 : /* 25482*/ OPC_CheckChild2Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6522 : /* 25493*/ OPC_CheckPredicate, 30, // Predicate_atomic_sub_global_noret
6523 : /* 25495*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6524 : /* 25497*/ OPC_EmitMergeInputChains1_0,
6525 : /* 25498*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
6526 : MVT::v4i32, 0/*#Ops*/, // Results = #2
6527 : /* 25504*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6528 : /* 25516*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
6529 : MVT::i32, 1/*#Ops*/, 3, // Results = #4
6530 : /* 25523*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6531 : /* 25526*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
6532 : MVT::v4i32, 3/*#Ops*/, 2, 4, 5, // Results = #6
6533 : /* 25535*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_INC_UINT_NORET), 0|OPFL_Chain|OPFL_MemRefs,
6534 : MVT::v4i32, 2/*#Ops*/, 6, 1, // Results = #7
6535 : /* 25543*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6536 : /* 25546*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
6537 : MVT::i32, 2/*#Ops*/, 7, 8,
6538 : // Src: (atomic_load_sub:{ *:[i32] } i32:{ *:[i32] }:$ptr, -1:{ *:[i32] })<<P:Predicate_atomic_sub_global_noret>> - Complexity = 9
6539 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_INC_UINT_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), (MOV_IMM_I32:{ *:[i32] } -1:{ *:[i32] }), sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
6540 : /* 25554*/ /*Scope*/ 63, /*->25618*/
6541 : /* 25555*/ OPC_CheckChild2Integer, 1,
6542 : /* 25557*/ OPC_CheckPredicate, 30, // Predicate_atomic_sub_global_noret
6543 : /* 25559*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6544 : /* 25561*/ OPC_EmitMergeInputChains1_0,
6545 : /* 25562*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
6546 : MVT::v4i32, 0/*#Ops*/, // Results = #2
6547 : /* 25568*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6548 : /* 25580*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
6549 : MVT::i32, 1/*#Ops*/, 3, // Results = #4
6550 : /* 25587*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6551 : /* 25590*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
6552 : MVT::v4i32, 3/*#Ops*/, 2, 4, 5, // Results = #6
6553 : /* 25599*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_DEC_UINT_NORET), 0|OPFL_Chain|OPFL_MemRefs,
6554 : MVT::v4i32, 2/*#Ops*/, 6, 1, // Results = #7
6555 : /* 25607*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6556 : /* 25610*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
6557 : MVT::i32, 2/*#Ops*/, 7, 8,
6558 : // Src: (atomic_load_sub:{ *:[i32] } i32:{ *:[i32] }:$ptr, 1:{ *:[i32] })<<P:Predicate_atomic_sub_global_noret>> - Complexity = 9
6559 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_DEC_UINT_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), (MOV_IMM_I32:{ *:[i32] } -1:{ *:[i32] }), sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
6560 : /* 25618*/ /*Scope*/ 106, /*->25725*/
6561 : /* 25619*/ OPC_RecordChild2, // #2 = $data
6562 : /* 25620*/ OPC_Scope, 42, /*->25664*/ // 2 children in Scope
6563 : /* 25622*/ OPC_CheckPredicate, 30, // Predicate_atomic_sub_global_noret
6564 : /* 25624*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6565 : /* 25626*/ OPC_EmitMergeInputChains1_0,
6566 : /* 25627*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
6567 : MVT::v4i32, 0/*#Ops*/, // Results = #3
6568 : /* 25633*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6569 : /* 25636*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
6570 : MVT::v4i32, 3/*#Ops*/, 3, 2, 4, // Results = #5
6571 : /* 25645*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_SUB_NORET), 0|OPFL_Chain|OPFL_MemRefs,
6572 : MVT::v4i32, 2/*#Ops*/, 5, 1, // Results = #6
6573 : /* 25653*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6574 : /* 25656*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
6575 : MVT::i32, 2/*#Ops*/, 6, 7,
6576 : // Src: (atomic_load_sub:{ *:[i32] } i32:{ *:[i32] }:$ptr, i32:{ *:[i32] }:$data)<<P:Predicate_atomic_sub_global_noret>> - Complexity = 4
6577 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_SUB_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), ?:{ *:[i32] }:$data, sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
6578 : /* 25664*/ /*Scope*/ 59, /*->25724*/
6579 : /* 25665*/ OPC_CheckPredicate, 20, // Predicate_atomic_load_sub_local
6580 : /* 25667*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6581 : /* 25669*/ OPC_EmitMergeInputChains1_0,
6582 : /* 25670*/ OPC_EmitInteger, MVT::i32, 0,
6583 : /* 25673*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6584 : /* 25685*/ OPC_EmitInteger, MVT::i32, 0,
6585 : /* 25688*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6586 : /* 25700*/ OPC_EmitInteger, MVT::i32, 1,
6587 : /* 25703*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6588 : /* 25706*/ OPC_EmitInteger, MVT::i32, 0,
6589 : /* 25709*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_SUB_RET), 0|OPFL_Chain|OPFL_MemRefs,
6590 : MVT::i32, 9/*#Ops*/, 1, 3, 4, 2, 5, 6, 7, 8, 9,
6591 : // Src: (atomic_load_sub:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)<<P:Predicate_atomic_load_sub_local>> - Complexity = 4
6592 : // Dst: (LDS_SUB_RET:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
6593 : /* 25724*/ 0, /*End of Scope*/
6594 : /* 25725*/ 0, /*End of Scope*/
6595 : /* 25726*/ /*SwitchOpcode*/ 25|128,2/*281*/, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),// ->26011
6596 : /* 25730*/ OPC_RecordChild0, // #0 = $src
6597 : /* 25731*/ OPC_SwitchType /*2 cases */, 8|128,1/*136*/, MVT::i32,// ->25871
6598 : /* 25735*/ OPC_Scope, 82, /*->25819*/ // 2 children in Scope
6599 : /* 25737*/ OPC_CheckChild0Type, MVT::v4i32,
6600 : /* 25739*/ OPC_Scope, 15, /*->25756*/ // 5 children in Scope
6601 : /* 25741*/ OPC_CheckChild1Integer, 0,
6602 : /* 25743*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6603 : /* 25745*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6604 : /* 25748*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6605 : MVT::i32, 2/*#Ops*/, 0, 1,
6606 : // Src: (extractelt:{ *:[i32] } v4i32:{ *:[v4i32] }:$src, 0:{ *:[iPTR] }) - Complexity = 8
6607 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[v4i32] }:$src, sub0:{ *:[i32] })
6608 : /* 25756*/ /*Scope*/ 15, /*->25772*/
6609 : /* 25757*/ OPC_CheckChild1Integer, 1,
6610 : /* 25759*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6611 : /* 25761*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6612 : /* 25764*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6613 : MVT::i32, 2/*#Ops*/, 0, 1,
6614 : // Src: (extractelt:{ *:[i32] } v4i32:{ *:[v4i32] }:$src, 1:{ *:[iPTR] }) - Complexity = 8
6615 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[v4i32] }:$src, sub1:{ *:[i32] })
6616 : /* 25772*/ /*Scope*/ 15, /*->25788*/
6617 : /* 25773*/ OPC_CheckChild1Integer, 2,
6618 : /* 25775*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6619 : /* 25777*/ OPC_EmitInteger, MVT::i32, R600::sub2,
6620 : /* 25780*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6621 : MVT::i32, 2/*#Ops*/, 0, 1,
6622 : // Src: (extractelt:{ *:[i32] } v4i32:{ *:[v4i32] }:$src, 2:{ *:[iPTR] }) - Complexity = 8
6623 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[v4i32] }:$src, sub2:{ *:[i32] })
6624 : /* 25788*/ /*Scope*/ 15, /*->25804*/
6625 : /* 25789*/ OPC_CheckChild1Integer, 3,
6626 : /* 25791*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6627 : /* 25793*/ OPC_EmitInteger, MVT::i32, R600::sub3,
6628 : /* 25796*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6629 : MVT::i32, 2/*#Ops*/, 0, 1,
6630 : // Src: (extractelt:{ *:[i32] } v4i32:{ *:[v4i32] }:$src, 3:{ *:[iPTR] }) - Complexity = 8
6631 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[v4i32] }:$src, sub3:{ *:[i32] })
6632 : /* 25804*/ /*Scope*/ 13, /*->25818*/
6633 : /* 25805*/ OPC_RecordChild1, // #1 = $index
6634 : /* 25806*/ OPC_CheckChild1Type, MVT::i32,
6635 : /* 25808*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6636 : /* 25810*/ OPC_MorphNodeTo1, TARGET_VAL(R600::R600_EXTRACT_ELT_V4), 0,
6637 : MVT::i32, 2/*#Ops*/, 0, 1,
6638 : // Src: (extractelt:{ *:[i32] } v4i32:{ *:[v4i32] }:$vec, i32:{ *:[i32] }:$index) - Complexity = 3
6639 : // Dst: (R600_EXTRACT_ELT_V4:{ *:[i32] } ?:{ *:[v4i32] }:$vec, ?:{ *:[i32] }:$index)
6640 : /* 25818*/ 0, /*End of Scope*/
6641 : /* 25819*/ /*Scope*/ 50, /*->25870*/
6642 : /* 25820*/ OPC_CheckChild0Type, MVT::v2i32,
6643 : /* 25822*/ OPC_Scope, 15, /*->25839*/ // 3 children in Scope
6644 : /* 25824*/ OPC_CheckChild1Integer, 0,
6645 : /* 25826*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6646 : /* 25828*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6647 : /* 25831*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6648 : MVT::i32, 2/*#Ops*/, 0, 1,
6649 : // Src: (extractelt:{ *:[i32] } v2i32:{ *:[v2i32] }:$src, 0:{ *:[iPTR] }) - Complexity = 8
6650 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[v2i32] }:$src, sub0:{ *:[i32] })
6651 : /* 25839*/ /*Scope*/ 15, /*->25855*/
6652 : /* 25840*/ OPC_CheckChild1Integer, 1,
6653 : /* 25842*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6654 : /* 25844*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6655 : /* 25847*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6656 : MVT::i32, 2/*#Ops*/, 0, 1,
6657 : // Src: (extractelt:{ *:[i32] } v2i32:{ *:[v2i32] }:$src, 1:{ *:[iPTR] }) - Complexity = 8
6658 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } ?:{ *:[v2i32] }:$src, sub1:{ *:[i32] })
6659 : /* 25855*/ /*Scope*/ 13, /*->25869*/
6660 : /* 25856*/ OPC_RecordChild1, // #1 = $index
6661 : /* 25857*/ OPC_CheckChild1Type, MVT::i32,
6662 : /* 25859*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6663 : /* 25861*/ OPC_MorphNodeTo1, TARGET_VAL(R600::R600_EXTRACT_ELT_V2), 0,
6664 : MVT::i32, 2/*#Ops*/, 0, 1,
6665 : // Src: (extractelt:{ *:[i32] } v2i32:{ *:[v2i32] }:$vec, i32:{ *:[i32] }:$index) - Complexity = 3
6666 : // Dst: (R600_EXTRACT_ELT_V2:{ *:[i32] } ?:{ *:[v2i32] }:$vec, ?:{ *:[i32] }:$index)
6667 : /* 25869*/ 0, /*End of Scope*/
6668 : /* 25870*/ 0, /*End of Scope*/
6669 : /* 25871*/ /*SwitchType*/ 8|128,1/*136*/, MVT::f32,// ->26010
6670 : /* 25874*/ OPC_Scope, 82, /*->25958*/ // 2 children in Scope
6671 : /* 25876*/ OPC_CheckChild0Type, MVT::v4f32,
6672 : /* 25878*/ OPC_Scope, 15, /*->25895*/ // 5 children in Scope
6673 : /* 25880*/ OPC_CheckChild1Integer, 0,
6674 : /* 25882*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6675 : /* 25884*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6676 : /* 25887*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6677 : MVT::f32, 2/*#Ops*/, 0, 1,
6678 : // Src: (extractelt:{ *:[f32] } v4f32:{ *:[v4f32] }:$src, 0:{ *:[iPTR] }) - Complexity = 8
6679 : // Dst: (EXTRACT_SUBREG:{ *:[f32] } ?:{ *:[v4f32] }:$src, sub0:{ *:[i32] })
6680 : /* 25895*/ /*Scope*/ 15, /*->25911*/
6681 : /* 25896*/ OPC_CheckChild1Integer, 1,
6682 : /* 25898*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6683 : /* 25900*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6684 : /* 25903*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6685 : MVT::f32, 2/*#Ops*/, 0, 1,
6686 : // Src: (extractelt:{ *:[f32] } v4f32:{ *:[v4f32] }:$src, 1:{ *:[iPTR] }) - Complexity = 8
6687 : // Dst: (EXTRACT_SUBREG:{ *:[f32] } ?:{ *:[v4f32] }:$src, sub1:{ *:[i32] })
6688 : /* 25911*/ /*Scope*/ 15, /*->25927*/
6689 : /* 25912*/ OPC_CheckChild1Integer, 2,
6690 : /* 25914*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6691 : /* 25916*/ OPC_EmitInteger, MVT::i32, R600::sub2,
6692 : /* 25919*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6693 : MVT::f32, 2/*#Ops*/, 0, 1,
6694 : // Src: (extractelt:{ *:[f32] } v4f32:{ *:[v4f32] }:$src, 2:{ *:[iPTR] }) - Complexity = 8
6695 : // Dst: (EXTRACT_SUBREG:{ *:[f32] } ?:{ *:[v4f32] }:$src, sub2:{ *:[i32] })
6696 : /* 25927*/ /*Scope*/ 15, /*->25943*/
6697 : /* 25928*/ OPC_CheckChild1Integer, 3,
6698 : /* 25930*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6699 : /* 25932*/ OPC_EmitInteger, MVT::i32, R600::sub3,
6700 : /* 25935*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6701 : MVT::f32, 2/*#Ops*/, 0, 1,
6702 : // Src: (extractelt:{ *:[f32] } v4f32:{ *:[v4f32] }:$src, 3:{ *:[iPTR] }) - Complexity = 8
6703 : // Dst: (EXTRACT_SUBREG:{ *:[f32] } ?:{ *:[v4f32] }:$src, sub3:{ *:[i32] })
6704 : /* 25943*/ /*Scope*/ 13, /*->25957*/
6705 : /* 25944*/ OPC_RecordChild1, // #1 = $index
6706 : /* 25945*/ OPC_CheckChild1Type, MVT::i32,
6707 : /* 25947*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6708 : /* 25949*/ OPC_MorphNodeTo1, TARGET_VAL(R600::R600_EXTRACT_ELT_V4), 0,
6709 : MVT::f32, 2/*#Ops*/, 0, 1,
6710 : // Src: (extractelt:{ *:[f32] } v4f32:{ *:[v4f32] }:$vec, i32:{ *:[i32] }:$index) - Complexity = 3
6711 : // Dst: (R600_EXTRACT_ELT_V4:{ *:[f32] } ?:{ *:[v4f32] }:$vec, ?:{ *:[i32] }:$index)
6712 : /* 25957*/ 0, /*End of Scope*/
6713 : /* 25958*/ /*Scope*/ 50, /*->26009*/
6714 : /* 25959*/ OPC_CheckChild0Type, MVT::v2f32,
6715 : /* 25961*/ OPC_Scope, 15, /*->25978*/ // 3 children in Scope
6716 : /* 25963*/ OPC_CheckChild1Integer, 0,
6717 : /* 25965*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6718 : /* 25967*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6719 : /* 25970*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6720 : MVT::f32, 2/*#Ops*/, 0, 1,
6721 : // Src: (extractelt:{ *:[f32] } v2f32:{ *:[v2f32] }:$src, 0:{ *:[iPTR] }) - Complexity = 8
6722 : // Dst: (EXTRACT_SUBREG:{ *:[f32] } ?:{ *:[v2f32] }:$src, sub0:{ *:[i32] })
6723 : /* 25978*/ /*Scope*/ 15, /*->25994*/
6724 : /* 25979*/ OPC_CheckChild1Integer, 1,
6725 : /* 25981*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6726 : /* 25983*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6727 : /* 25986*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
6728 : MVT::f32, 2/*#Ops*/, 0, 1,
6729 : // Src: (extractelt:{ *:[f32] } v2f32:{ *:[v2f32] }:$src, 1:{ *:[iPTR] }) - Complexity = 8
6730 : // Dst: (EXTRACT_SUBREG:{ *:[f32] } ?:{ *:[v2f32] }:$src, sub1:{ *:[i32] })
6731 : /* 25994*/ /*Scope*/ 13, /*->26008*/
6732 : /* 25995*/ OPC_RecordChild1, // #1 = $index
6733 : /* 25996*/ OPC_CheckChild1Type, MVT::i32,
6734 : /* 25998*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6735 : /* 26000*/ OPC_MorphNodeTo1, TARGET_VAL(R600::R600_EXTRACT_ELT_V2), 0,
6736 : MVT::f32, 2/*#Ops*/, 0, 1,
6737 : // Src: (extractelt:{ *:[f32] } v2f32:{ *:[v2f32] }:$vec, i32:{ *:[i32] }:$index) - Complexity = 3
6738 : // Dst: (R600_EXTRACT_ELT_V2:{ *:[f32] } ?:{ *:[v2f32] }:$vec, ?:{ *:[i32] }:$index)
6739 : /* 26008*/ 0, /*End of Scope*/
6740 : /* 26009*/ 0, /*End of Scope*/
6741 : /* 26010*/ 0, // EndSwitchType
6742 : /* 26011*/ /*SwitchOpcode*/ 35|128,4/*547*/, TARGET_VAL(ISD::ADD),// ->26562
6743 : /* 26015*/ OPC_Scope, 89|128,1/*217*/, /*->26235*/ // 2 children in Scope
6744 : /* 26018*/ OPC_MoveChild0,
6745 : /* 26019*/ OPC_SwitchOpcode /*2 cases */, 104, TARGET_VAL(AMDGPUISD::MUL_U24),// ->26127
6746 : /* 26023*/ OPC_RecordChild0, // #0 = $src0
6747 : /* 26024*/ OPC_RecordChild1, // #1 = $src1
6748 : /* 26025*/ OPC_MoveParent,
6749 : /* 26026*/ OPC_RecordChild1, // #2 = $src2
6750 : /* 26027*/ OPC_CheckType, MVT::i32,
6751 : /* 26029*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6752 : /* 26031*/ OPC_EmitInteger, MVT::i32, 0,
6753 : /* 26034*/ OPC_EmitInteger, MVT::i32, 0,
6754 : /* 26037*/ OPC_EmitInteger, MVT::i32, 0,
6755 : /* 26040*/ OPC_EmitInteger, MVT::i32, 0,
6756 : /* 26043*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6757 : /* 26055*/ OPC_EmitInteger, MVT::i32, 0,
6758 : /* 26058*/ OPC_EmitInteger, MVT::i32, 0,
6759 : /* 26061*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6760 : /* 26073*/ OPC_EmitInteger, MVT::i32, 0,
6761 : /* 26076*/ OPC_EmitInteger, MVT::i32, 0,
6762 : /* 26079*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6763 : /* 26091*/ OPC_EmitInteger, MVT::i32, 1,
6764 : /* 26094*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6765 : /* 26097*/ OPC_EmitInteger, MVT::i32, 0,
6766 : /* 26100*/ OPC_EmitInteger, MVT::i32, 0,
6767 : /* 26103*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULADD_UINT24_eg), 0,
6768 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
6769 : // Src: (add:{ *:[i32] } (AMDGPUmul_u24:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1), i32:{ *:[i32] }:$src2) - Complexity = 6
6770 : // Dst: (MULADD_UINT24_eg:{ *:[i32] } ?:{ *:[i32] }:$src0, ?:{ *:[i32] }:$src1, ?:{ *:[i32] }:$src2)
6771 : /* 26127*/ /*SwitchOpcode*/ 104, TARGET_VAL(AMDGPUISD::MUL_I24),// ->26234
6772 : /* 26130*/ OPC_RecordChild0, // #0 = $src0
6773 : /* 26131*/ OPC_RecordChild1, // #1 = $src1
6774 : /* 26132*/ OPC_MoveParent,
6775 : /* 26133*/ OPC_RecordChild1, // #2 = $src2
6776 : /* 26134*/ OPC_CheckType, MVT::i32,
6777 : /* 26136*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
6778 : /* 26138*/ OPC_EmitInteger, MVT::i32, 0,
6779 : /* 26141*/ OPC_EmitInteger, MVT::i32, 0,
6780 : /* 26144*/ OPC_EmitInteger, MVT::i32, 0,
6781 : /* 26147*/ OPC_EmitInteger, MVT::i32, 0,
6782 : /* 26150*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6783 : /* 26162*/ OPC_EmitInteger, MVT::i32, 0,
6784 : /* 26165*/ OPC_EmitInteger, MVT::i32, 0,
6785 : /* 26168*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6786 : /* 26180*/ OPC_EmitInteger, MVT::i32, 0,
6787 : /* 26183*/ OPC_EmitInteger, MVT::i32, 0,
6788 : /* 26186*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6789 : /* 26198*/ OPC_EmitInteger, MVT::i32, 1,
6790 : /* 26201*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6791 : /* 26204*/ OPC_EmitInteger, MVT::i32, 0,
6792 : /* 26207*/ OPC_EmitInteger, MVT::i32, 0,
6793 : /* 26210*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULADD_INT24_cm), 0,
6794 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
6795 : // Src: (add:{ *:[i32] } (AMDGPUmul_i24:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1), i32:{ *:[i32] }:$src2) - Complexity = 6
6796 : // Dst: (MULADD_INT24_cm:{ *:[i32] } ?:{ *:[i32] }:$src0, ?:{ *:[i32] }:$src1, ?:{ *:[i32] }:$src2)
6797 : /* 26234*/ 0, // EndSwitchOpcode
6798 : /* 26235*/ /*Scope*/ 68|128,2/*324*/, /*->26561*/
6799 : /* 26237*/ OPC_RecordChild0, // #0 = $src2
6800 : /* 26238*/ OPC_Scope, 87|128,1/*215*/, /*->26456*/ // 2 children in Scope
6801 : /* 26241*/ OPC_MoveChild1,
6802 : /* 26242*/ OPC_SwitchOpcode /*2 cases */, 103, TARGET_VAL(AMDGPUISD::MUL_U24),// ->26349
6803 : /* 26246*/ OPC_RecordChild0, // #1 = $src0
6804 : /* 26247*/ OPC_RecordChild1, // #2 = $src1
6805 : /* 26248*/ OPC_MoveParent,
6806 : /* 26249*/ OPC_CheckType, MVT::i32,
6807 : /* 26251*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6808 : /* 26253*/ OPC_EmitInteger, MVT::i32, 0,
6809 : /* 26256*/ OPC_EmitInteger, MVT::i32, 0,
6810 : /* 26259*/ OPC_EmitInteger, MVT::i32, 0,
6811 : /* 26262*/ OPC_EmitInteger, MVT::i32, 0,
6812 : /* 26265*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6813 : /* 26277*/ OPC_EmitInteger, MVT::i32, 0,
6814 : /* 26280*/ OPC_EmitInteger, MVT::i32, 0,
6815 : /* 26283*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6816 : /* 26295*/ OPC_EmitInteger, MVT::i32, 0,
6817 : /* 26298*/ OPC_EmitInteger, MVT::i32, 0,
6818 : /* 26301*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6819 : /* 26313*/ OPC_EmitInteger, MVT::i32, 1,
6820 : /* 26316*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6821 : /* 26319*/ OPC_EmitInteger, MVT::i32, 0,
6822 : /* 26322*/ OPC_EmitInteger, MVT::i32, 0,
6823 : /* 26325*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULADD_UINT24_eg), 0,
6824 : MVT::i32, 18/*#Ops*/, 3, 4, 1, 5, 6, 7, 2, 8, 9, 10, 0, 11, 12, 13, 14, 15, 16, 17,
6825 : // Src: (add:{ *:[i32] } i32:{ *:[i32] }:$src2, (AMDGPUmul_u24:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)) - Complexity = 6
6826 : // Dst: (MULADD_UINT24_eg:{ *:[i32] } ?:{ *:[i32] }:$src0, ?:{ *:[i32] }:$src1, ?:{ *:[i32] }:$src2)
6827 : /* 26349*/ /*SwitchOpcode*/ 103, TARGET_VAL(AMDGPUISD::MUL_I24),// ->26455
6828 : /* 26352*/ OPC_RecordChild0, // #1 = $src0
6829 : /* 26353*/ OPC_RecordChild1, // #2 = $src1
6830 : /* 26354*/ OPC_MoveParent,
6831 : /* 26355*/ OPC_CheckType, MVT::i32,
6832 : /* 26357*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
6833 : /* 26359*/ OPC_EmitInteger, MVT::i32, 0,
6834 : /* 26362*/ OPC_EmitInteger, MVT::i32, 0,
6835 : /* 26365*/ OPC_EmitInteger, MVT::i32, 0,
6836 : /* 26368*/ OPC_EmitInteger, MVT::i32, 0,
6837 : /* 26371*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6838 : /* 26383*/ OPC_EmitInteger, MVT::i32, 0,
6839 : /* 26386*/ OPC_EmitInteger, MVT::i32, 0,
6840 : /* 26389*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6841 : /* 26401*/ OPC_EmitInteger, MVT::i32, 0,
6842 : /* 26404*/ OPC_EmitInteger, MVT::i32, 0,
6843 : /* 26407*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6844 : /* 26419*/ OPC_EmitInteger, MVT::i32, 1,
6845 : /* 26422*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6846 : /* 26425*/ OPC_EmitInteger, MVT::i32, 0,
6847 : /* 26428*/ OPC_EmitInteger, MVT::i32, 0,
6848 : /* 26431*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULADD_INT24_cm), 0,
6849 : MVT::i32, 18/*#Ops*/, 3, 4, 1, 5, 6, 7, 2, 8, 9, 10, 0, 11, 12, 13, 14, 15, 16, 17,
6850 : // Src: (add:{ *:[i32] } i32:{ *:[i32] }:$src2, (AMDGPUmul_i24:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)) - Complexity = 6
6851 : // Dst: (MULADD_INT24_cm:{ *:[i32] } ?:{ *:[i32] }:$src0, ?:{ *:[i32] }:$src1, ?:{ *:[i32] }:$src2)
6852 : /* 26455*/ 0, // EndSwitchOpcode
6853 : /* 26456*/ /*Scope*/ 103, /*->26560*/
6854 : /* 26457*/ OPC_RecordChild1, // #1 = $src1
6855 : /* 26458*/ OPC_CheckType, MVT::i32,
6856 : /* 26460*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6857 : /* 26462*/ OPC_EmitInteger, MVT::i32, 0,
6858 : /* 26465*/ OPC_EmitInteger, MVT::i32, 0,
6859 : /* 26468*/ OPC_EmitInteger, MVT::i32, 1,
6860 : /* 26471*/ OPC_EmitInteger, MVT::i32, 0,
6861 : /* 26474*/ OPC_EmitInteger, MVT::i32, 0,
6862 : /* 26477*/ OPC_EmitInteger, MVT::i32, 0,
6863 : /* 26480*/ OPC_EmitInteger, MVT::i32, 0,
6864 : /* 26483*/ OPC_EmitInteger, MVT::i32, 0,
6865 : /* 26486*/ OPC_EmitInteger, MVT::i32, 0,
6866 : /* 26489*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6867 : /* 26501*/ OPC_EmitInteger, MVT::i32, 0,
6868 : /* 26504*/ OPC_EmitInteger, MVT::i32, 0,
6869 : /* 26507*/ OPC_EmitInteger, MVT::i32, 0,
6870 : /* 26510*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6871 : /* 26522*/ OPC_EmitInteger, MVT::i32, 1,
6872 : /* 26525*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6873 : /* 26528*/ OPC_EmitInteger, MVT::i32, 0,
6874 : /* 26531*/ OPC_EmitInteger, MVT::i32, 0,
6875 : /* 26534*/ OPC_MorphNodeTo1, TARGET_VAL(R600::ADD_INT), 0,
6876 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
6877 : // Src: (add:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
6878 : // Dst: (ADD_INT:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
6879 : /* 26560*/ 0, /*End of Scope*/
6880 : /* 26561*/ 0, /*End of Scope*/
6881 : /* 26562*/ /*SwitchOpcode*/ 15, TARGET_VAL(AMDGPUISD::CONST_DATA_PTR),// ->26580
6882 : /* 26565*/ OPC_RecordChild0, // #0 = $addr
6883 : /* 26566*/ OPC_MoveChild0,
6884 : /* 26567*/ OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
6885 : /* 26570*/ OPC_MoveParent,
6886 : /* 26571*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
6887 : /* 26573*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MOV_IMM_GLOBAL_ADDR), 0,
6888 : MVT::iPTR, 1/*#Ops*/, 0,
6889 : // Src: (AMDGPUconstdata_ptr:{ *:[iPTR] } (tglobaladdr:{ *:[iPTR] }):$addr) - Complexity = 6
6890 : // Dst: (MOV_IMM_GLOBAL_ADDR:{ *:[iPTR] } (tglobaladdr:{ *:[i32] }):$addr)
6891 : /* 26580*/ /*SwitchOpcode*/ 20, TARGET_VAL(AMDGPUISD::STORE_MSKOR),// ->26603
6892 : /* 26583*/ OPC_RecordMemRef,
6893 : /* 26584*/ OPC_RecordNode, // #0 = 'AMDGPUstore_mskor' chained node
6894 : /* 26585*/ OPC_RecordChild1, // #1 = $rw_gpr
6895 : /* 26586*/ OPC_CheckChild1Type, MVT::v4i32,
6896 : /* 26588*/ OPC_RecordChild2, // #2 = $index_gpr
6897 : /* 26589*/ OPC_CheckChild2Type, MVT::i32,
6898 : /* 26591*/ OPC_CheckPredicate, 29, // Predicate_mskor_global
6899 : /* 26593*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6900 : /* 26595*/ OPC_EmitMergeInputChains1_0,
6901 : /* 26596*/ OPC_MorphNodeTo0, TARGET_VAL(R600::RAT_MSKOR), 0|OPFL_Chain|OPFL_MemRefs,
6902 : 2/*#Ops*/, 1, 2,
6903 : // Src: (AMDGPUstore_mskor v4i32:{ *:[v4i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)<<P:Predicate_mskor_global>> - Complexity = 4
6904 : // Dst: (RAT_MSKOR v4i32:{ *:[v4i32] }:$rw_gpr, i32:{ *:[i32] }:$index_gpr)
6905 : /* 26603*/ /*SwitchOpcode*/ 113, TARGET_VAL(ISD::ATOMIC_SWAP),// ->26719
6906 : /* 26606*/ OPC_RecordMemRef,
6907 : /* 26607*/ OPC_RecordNode, // #0 = 'atomic_swap' chained node
6908 : /* 26608*/ OPC_RecordChild1, // #1 = $ptr
6909 : /* 26609*/ OPC_CheckChild1Type, MVT::i32,
6910 : /* 26611*/ OPC_RecordChild2, // #2 = $data
6911 : /* 26612*/ OPC_CheckType, MVT::i32,
6912 : /* 26614*/ OPC_Scope, 42, /*->26658*/ // 2 children in Scope
6913 : /* 26616*/ OPC_CheckPredicate, 30, // Predicate_atomic_swap_global_noret
6914 : /* 26618*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6915 : /* 26620*/ OPC_EmitMergeInputChains1_0,
6916 : /* 26621*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
6917 : MVT::v4i32, 0/*#Ops*/, // Results = #3
6918 : /* 26627*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6919 : /* 26630*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
6920 : MVT::v4i32, 3/*#Ops*/, 3, 2, 4, // Results = #5
6921 : /* 26639*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_XCHG_INT_NORET), 0|OPFL_Chain|OPFL_MemRefs,
6922 : MVT::v4i32, 2/*#Ops*/, 5, 1, // Results = #6
6923 : /* 26647*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6924 : /* 26650*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
6925 : MVT::i32, 2/*#Ops*/, 6, 7,
6926 : // Src: (atomic_swap:{ *:[i32] } i32:{ *:[i32] }:$ptr, i32:{ *:[i32] }:$data)<<P:Predicate_atomic_swap_global_noret>> - Complexity = 4
6927 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_XCHG_INT_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), ?:{ *:[i32] }:$data, sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
6928 : /* 26658*/ /*Scope*/ 59, /*->26718*/
6929 : /* 26659*/ OPC_CheckPredicate, 20, // Predicate_atomic_swap_local
6930 : /* 26661*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6931 : /* 26663*/ OPC_EmitMergeInputChains1_0,
6932 : /* 26664*/ OPC_EmitInteger, MVT::i32, 0,
6933 : /* 26667*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6934 : /* 26679*/ OPC_EmitInteger, MVT::i32, 0,
6935 : /* 26682*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6936 : /* 26694*/ OPC_EmitInteger, MVT::i32, 1,
6937 : /* 26697*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6938 : /* 26700*/ OPC_EmitInteger, MVT::i32, 0,
6939 : /* 26703*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_WRXCHG_RET), 0|OPFL_Chain|OPFL_MemRefs,
6940 : MVT::i32, 9/*#Ops*/, 1, 3, 4, 2, 5, 6, 7, 8, 9,
6941 : // Src: (atomic_swap:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)<<P:Predicate_atomic_swap_local>> - Complexity = 4
6942 : // Dst: (LDS_WRXCHG_RET:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
6943 : /* 26718*/ 0, /*End of Scope*/
6944 : /* 26719*/ /*SwitchOpcode*/ 113, TARGET_VAL(ISD::ATOMIC_LOAD_MIN),// ->26835
6945 : /* 26722*/ OPC_RecordMemRef,
6946 : /* 26723*/ OPC_RecordNode, // #0 = 'atomic_load_min' chained node
6947 : /* 26724*/ OPC_RecordChild1, // #1 = $ptr
6948 : /* 26725*/ OPC_CheckChild1Type, MVT::i32,
6949 : /* 26727*/ OPC_RecordChild2, // #2 = $data
6950 : /* 26728*/ OPC_CheckType, MVT::i32,
6951 : /* 26730*/ OPC_Scope, 42, /*->26774*/ // 2 children in Scope
6952 : /* 26732*/ OPC_CheckPredicate, 30, // Predicate_atomic_min_global_noret
6953 : /* 26734*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6954 : /* 26736*/ OPC_EmitMergeInputChains1_0,
6955 : /* 26737*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
6956 : MVT::v4i32, 0/*#Ops*/, // Results = #3
6957 : /* 26743*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6958 : /* 26746*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
6959 : MVT::v4i32, 3/*#Ops*/, 3, 2, 4, // Results = #5
6960 : /* 26755*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_MIN_INT_NORET), 0|OPFL_Chain|OPFL_MemRefs,
6961 : MVT::v4i32, 2/*#Ops*/, 5, 1, // Results = #6
6962 : /* 26763*/ OPC_EmitInteger, MVT::i32, R600::sub1,
6963 : /* 26766*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
6964 : MVT::i32, 2/*#Ops*/, 6, 7,
6965 : // Src: (atomic_load_min:{ *:[i32] } i32:{ *:[i32] }:$ptr, i32:{ *:[i32] }:$data)<<P:Predicate_atomic_min_global_noret>> - Complexity = 4
6966 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_MIN_INT_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), ?:{ *:[i32] }:$data, sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
6967 : /* 26774*/ /*Scope*/ 59, /*->26834*/
6968 : /* 26775*/ OPC_CheckPredicate, 20, // Predicate_atomic_load_min_local
6969 : /* 26777*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6970 : /* 26779*/ OPC_EmitMergeInputChains1_0,
6971 : /* 26780*/ OPC_EmitInteger, MVT::i32, 0,
6972 : /* 26783*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6973 : /* 26795*/ OPC_EmitInteger, MVT::i32, 0,
6974 : /* 26798*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
6975 : /* 26810*/ OPC_EmitInteger, MVT::i32, 1,
6976 : /* 26813*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
6977 : /* 26816*/ OPC_EmitInteger, MVT::i32, 0,
6978 : /* 26819*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_MIN_INT_RET), 0|OPFL_Chain|OPFL_MemRefs,
6979 : MVT::i32, 9/*#Ops*/, 1, 3, 4, 2, 5, 6, 7, 8, 9,
6980 : // Src: (atomic_load_min:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)<<P:Predicate_atomic_load_min_local>> - Complexity = 4
6981 : // Dst: (LDS_MIN_INT_RET:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
6982 : /* 26834*/ 0, /*End of Scope*/
6983 : /* 26835*/ /*SwitchOpcode*/ 113, TARGET_VAL(ISD::ATOMIC_LOAD_UMIN),// ->26951
6984 : /* 26838*/ OPC_RecordMemRef,
6985 : /* 26839*/ OPC_RecordNode, // #0 = 'atomic_load_umin' chained node
6986 : /* 26840*/ OPC_RecordChild1, // #1 = $ptr
6987 : /* 26841*/ OPC_CheckChild1Type, MVT::i32,
6988 : /* 26843*/ OPC_RecordChild2, // #2 = $data
6989 : /* 26844*/ OPC_CheckType, MVT::i32,
6990 : /* 26846*/ OPC_Scope, 42, /*->26890*/ // 2 children in Scope
6991 : /* 26848*/ OPC_CheckPredicate, 30, // Predicate_atomic_umin_global_noret
6992 : /* 26850*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
6993 : /* 26852*/ OPC_EmitMergeInputChains1_0,
6994 : /* 26853*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
6995 : MVT::v4i32, 0/*#Ops*/, // Results = #3
6996 : /* 26859*/ OPC_EmitInteger, MVT::i32, R600::sub0,
6997 : /* 26862*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
6998 : MVT::v4i32, 3/*#Ops*/, 3, 2, 4, // Results = #5
6999 : /* 26871*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_MIN_UINT_NORET), 0|OPFL_Chain|OPFL_MemRefs,
7000 : MVT::v4i32, 2/*#Ops*/, 5, 1, // Results = #6
7001 : /* 26879*/ OPC_EmitInteger, MVT::i32, R600::sub1,
7002 : /* 26882*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
7003 : MVT::i32, 2/*#Ops*/, 6, 7,
7004 : // Src: (atomic_load_umin:{ *:[i32] } i32:{ *:[i32] }:$ptr, i32:{ *:[i32] }:$data)<<P:Predicate_atomic_umin_global_noret>> - Complexity = 4
7005 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_MIN_UINT_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), ?:{ *:[i32] }:$data, sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
7006 : /* 26890*/ /*Scope*/ 59, /*->26950*/
7007 : /* 26891*/ OPC_CheckPredicate, 20, // Predicate_atomic_load_umin_local
7008 : /* 26893*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7009 : /* 26895*/ OPC_EmitMergeInputChains1_0,
7010 : /* 26896*/ OPC_EmitInteger, MVT::i32, 0,
7011 : /* 26899*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7012 : /* 26911*/ OPC_EmitInteger, MVT::i32, 0,
7013 : /* 26914*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7014 : /* 26926*/ OPC_EmitInteger, MVT::i32, 1,
7015 : /* 26929*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7016 : /* 26932*/ OPC_EmitInteger, MVT::i32, 0,
7017 : /* 26935*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_MIN_UINT_RET), 0|OPFL_Chain|OPFL_MemRefs,
7018 : MVT::i32, 9/*#Ops*/, 1, 3, 4, 2, 5, 6, 7, 8, 9,
7019 : // Src: (atomic_load_umin:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)<<P:Predicate_atomic_load_umin_local>> - Complexity = 4
7020 : // Dst: (LDS_MIN_UINT_RET:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
7021 : /* 26950*/ 0, /*End of Scope*/
7022 : /* 26951*/ /*SwitchOpcode*/ 113, TARGET_VAL(ISD::ATOMIC_LOAD_MAX),// ->27067
7023 : /* 26954*/ OPC_RecordMemRef,
7024 : /* 26955*/ OPC_RecordNode, // #0 = 'atomic_load_max' chained node
7025 : /* 26956*/ OPC_RecordChild1, // #1 = $ptr
7026 : /* 26957*/ OPC_CheckChild1Type, MVT::i32,
7027 : /* 26959*/ OPC_RecordChild2, // #2 = $data
7028 : /* 26960*/ OPC_CheckType, MVT::i32,
7029 : /* 26962*/ OPC_Scope, 42, /*->27006*/ // 2 children in Scope
7030 : /* 26964*/ OPC_CheckPredicate, 30, // Predicate_atomic_max_global_noret
7031 : /* 26966*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7032 : /* 26968*/ OPC_EmitMergeInputChains1_0,
7033 : /* 26969*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
7034 : MVT::v4i32, 0/*#Ops*/, // Results = #3
7035 : /* 26975*/ OPC_EmitInteger, MVT::i32, R600::sub0,
7036 : /* 26978*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
7037 : MVT::v4i32, 3/*#Ops*/, 3, 2, 4, // Results = #5
7038 : /* 26987*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_MAX_INT_NORET), 0|OPFL_Chain|OPFL_MemRefs,
7039 : MVT::v4i32, 2/*#Ops*/, 5, 1, // Results = #6
7040 : /* 26995*/ OPC_EmitInteger, MVT::i32, R600::sub1,
7041 : /* 26998*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
7042 : MVT::i32, 2/*#Ops*/, 6, 7,
7043 : // Src: (atomic_load_max:{ *:[i32] } i32:{ *:[i32] }:$ptr, i32:{ *:[i32] }:$data)<<P:Predicate_atomic_max_global_noret>> - Complexity = 4
7044 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_MAX_INT_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), ?:{ *:[i32] }:$data, sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
7045 : /* 27006*/ /*Scope*/ 59, /*->27066*/
7046 : /* 27007*/ OPC_CheckPredicate, 20, // Predicate_atomic_load_max_local
7047 : /* 27009*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7048 : /* 27011*/ OPC_EmitMergeInputChains1_0,
7049 : /* 27012*/ OPC_EmitInteger, MVT::i32, 0,
7050 : /* 27015*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7051 : /* 27027*/ OPC_EmitInteger, MVT::i32, 0,
7052 : /* 27030*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7053 : /* 27042*/ OPC_EmitInteger, MVT::i32, 1,
7054 : /* 27045*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7055 : /* 27048*/ OPC_EmitInteger, MVT::i32, 0,
7056 : /* 27051*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_MAX_INT_RET), 0|OPFL_Chain|OPFL_MemRefs,
7057 : MVT::i32, 9/*#Ops*/, 1, 3, 4, 2, 5, 6, 7, 8, 9,
7058 : // Src: (atomic_load_max:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)<<P:Predicate_atomic_load_max_local>> - Complexity = 4
7059 : // Dst: (LDS_MAX_INT_RET:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
7060 : /* 27066*/ 0, /*End of Scope*/
7061 : /* 27067*/ /*SwitchOpcode*/ 113, TARGET_VAL(ISD::ATOMIC_LOAD_UMAX),// ->27183
7062 : /* 27070*/ OPC_RecordMemRef,
7063 : /* 27071*/ OPC_RecordNode, // #0 = 'atomic_load_umax' chained node
7064 : /* 27072*/ OPC_RecordChild1, // #1 = $ptr
7065 : /* 27073*/ OPC_CheckChild1Type, MVT::i32,
7066 : /* 27075*/ OPC_RecordChild2, // #2 = $data
7067 : /* 27076*/ OPC_CheckType, MVT::i32,
7068 : /* 27078*/ OPC_Scope, 42, /*->27122*/ // 2 children in Scope
7069 : /* 27080*/ OPC_CheckPredicate, 30, // Predicate_atomic_umax_global_noret
7070 : /* 27082*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7071 : /* 27084*/ OPC_EmitMergeInputChains1_0,
7072 : /* 27085*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
7073 : MVT::v4i32, 0/*#Ops*/, // Results = #3
7074 : /* 27091*/ OPC_EmitInteger, MVT::i32, R600::sub0,
7075 : /* 27094*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
7076 : MVT::v4i32, 3/*#Ops*/, 3, 2, 4, // Results = #5
7077 : /* 27103*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_MAX_UINT_NORET), 0|OPFL_Chain|OPFL_MemRefs,
7078 : MVT::v4i32, 2/*#Ops*/, 5, 1, // Results = #6
7079 : /* 27111*/ OPC_EmitInteger, MVT::i32, R600::sub1,
7080 : /* 27114*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
7081 : MVT::i32, 2/*#Ops*/, 6, 7,
7082 : // Src: (atomic_load_umax:{ *:[i32] } i32:{ *:[i32] }:$ptr, i32:{ *:[i32] }:$data)<<P:Predicate_atomic_umax_global_noret>> - Complexity = 4
7083 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_MAX_UINT_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), ?:{ *:[i32] }:$data, sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
7084 : /* 27122*/ /*Scope*/ 59, /*->27182*/
7085 : /* 27123*/ OPC_CheckPredicate, 20, // Predicate_atomic_load_umax_local
7086 : /* 27125*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7087 : /* 27127*/ OPC_EmitMergeInputChains1_0,
7088 : /* 27128*/ OPC_EmitInteger, MVT::i32, 0,
7089 : /* 27131*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7090 : /* 27143*/ OPC_EmitInteger, MVT::i32, 0,
7091 : /* 27146*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7092 : /* 27158*/ OPC_EmitInteger, MVT::i32, 1,
7093 : /* 27161*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7094 : /* 27164*/ OPC_EmitInteger, MVT::i32, 0,
7095 : /* 27167*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_MAX_UINT_RET), 0|OPFL_Chain|OPFL_MemRefs,
7096 : MVT::i32, 9/*#Ops*/, 1, 3, 4, 2, 5, 6, 7, 8, 9,
7097 : // Src: (atomic_load_umax:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)<<P:Predicate_atomic_load_umax_local>> - Complexity = 4
7098 : // Dst: (LDS_MAX_UINT_RET:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
7099 : /* 27182*/ 0, /*End of Scope*/
7100 : /* 27183*/ /*SwitchOpcode*/ 113, TARGET_VAL(ISD::ATOMIC_LOAD_AND),// ->27299
7101 : /* 27186*/ OPC_RecordMemRef,
7102 : /* 27187*/ OPC_RecordNode, // #0 = 'atomic_load_and' chained node
7103 : /* 27188*/ OPC_RecordChild1, // #1 = $ptr
7104 : /* 27189*/ OPC_CheckChild1Type, MVT::i32,
7105 : /* 27191*/ OPC_RecordChild2, // #2 = $data
7106 : /* 27192*/ OPC_CheckType, MVT::i32,
7107 : /* 27194*/ OPC_Scope, 42, /*->27238*/ // 2 children in Scope
7108 : /* 27196*/ OPC_CheckPredicate, 30, // Predicate_atomic_and_global_noret
7109 : /* 27198*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7110 : /* 27200*/ OPC_EmitMergeInputChains1_0,
7111 : /* 27201*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
7112 : MVT::v4i32, 0/*#Ops*/, // Results = #3
7113 : /* 27207*/ OPC_EmitInteger, MVT::i32, R600::sub0,
7114 : /* 27210*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
7115 : MVT::v4i32, 3/*#Ops*/, 3, 2, 4, // Results = #5
7116 : /* 27219*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_AND_NORET), 0|OPFL_Chain|OPFL_MemRefs,
7117 : MVT::v4i32, 2/*#Ops*/, 5, 1, // Results = #6
7118 : /* 27227*/ OPC_EmitInteger, MVT::i32, R600::sub1,
7119 : /* 27230*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
7120 : MVT::i32, 2/*#Ops*/, 6, 7,
7121 : // Src: (atomic_load_and:{ *:[i32] } i32:{ *:[i32] }:$ptr, i32:{ *:[i32] }:$data)<<P:Predicate_atomic_and_global_noret>> - Complexity = 4
7122 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_AND_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), ?:{ *:[i32] }:$data, sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
7123 : /* 27238*/ /*Scope*/ 59, /*->27298*/
7124 : /* 27239*/ OPC_CheckPredicate, 20, // Predicate_atomic_load_and_local
7125 : /* 27241*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7126 : /* 27243*/ OPC_EmitMergeInputChains1_0,
7127 : /* 27244*/ OPC_EmitInteger, MVT::i32, 0,
7128 : /* 27247*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7129 : /* 27259*/ OPC_EmitInteger, MVT::i32, 0,
7130 : /* 27262*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7131 : /* 27274*/ OPC_EmitInteger, MVT::i32, 1,
7132 : /* 27277*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7133 : /* 27280*/ OPC_EmitInteger, MVT::i32, 0,
7134 : /* 27283*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_AND_RET), 0|OPFL_Chain|OPFL_MemRefs,
7135 : MVT::i32, 9/*#Ops*/, 1, 3, 4, 2, 5, 6, 7, 8, 9,
7136 : // Src: (atomic_load_and:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)<<P:Predicate_atomic_load_and_local>> - Complexity = 4
7137 : // Dst: (LDS_AND_RET:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
7138 : /* 27298*/ 0, /*End of Scope*/
7139 : /* 27299*/ /*SwitchOpcode*/ 113, TARGET_VAL(ISD::ATOMIC_LOAD_OR),// ->27415
7140 : /* 27302*/ OPC_RecordMemRef,
7141 : /* 27303*/ OPC_RecordNode, // #0 = 'atomic_load_or' chained node
7142 : /* 27304*/ OPC_RecordChild1, // #1 = $ptr
7143 : /* 27305*/ OPC_CheckChild1Type, MVT::i32,
7144 : /* 27307*/ OPC_RecordChild2, // #2 = $data
7145 : /* 27308*/ OPC_CheckType, MVT::i32,
7146 : /* 27310*/ OPC_Scope, 42, /*->27354*/ // 2 children in Scope
7147 : /* 27312*/ OPC_CheckPredicate, 30, // Predicate_atomic_or_global_noret
7148 : /* 27314*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7149 : /* 27316*/ OPC_EmitMergeInputChains1_0,
7150 : /* 27317*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
7151 : MVT::v4i32, 0/*#Ops*/, // Results = #3
7152 : /* 27323*/ OPC_EmitInteger, MVT::i32, R600::sub0,
7153 : /* 27326*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
7154 : MVT::v4i32, 3/*#Ops*/, 3, 2, 4, // Results = #5
7155 : /* 27335*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_OR_NORET), 0|OPFL_Chain|OPFL_MemRefs,
7156 : MVT::v4i32, 2/*#Ops*/, 5, 1, // Results = #6
7157 : /* 27343*/ OPC_EmitInteger, MVT::i32, R600::sub1,
7158 : /* 27346*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
7159 : MVT::i32, 2/*#Ops*/, 6, 7,
7160 : // Src: (atomic_load_or:{ *:[i32] } i32:{ *:[i32] }:$ptr, i32:{ *:[i32] }:$data)<<P:Predicate_atomic_or_global_noret>> - Complexity = 4
7161 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_OR_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), ?:{ *:[i32] }:$data, sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
7162 : /* 27354*/ /*Scope*/ 59, /*->27414*/
7163 : /* 27355*/ OPC_CheckPredicate, 20, // Predicate_atomic_load_or_local
7164 : /* 27357*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7165 : /* 27359*/ OPC_EmitMergeInputChains1_0,
7166 : /* 27360*/ OPC_EmitInteger, MVT::i32, 0,
7167 : /* 27363*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7168 : /* 27375*/ OPC_EmitInteger, MVT::i32, 0,
7169 : /* 27378*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7170 : /* 27390*/ OPC_EmitInteger, MVT::i32, 1,
7171 : /* 27393*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7172 : /* 27396*/ OPC_EmitInteger, MVT::i32, 0,
7173 : /* 27399*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_OR_RET), 0|OPFL_Chain|OPFL_MemRefs,
7174 : MVT::i32, 9/*#Ops*/, 1, 3, 4, 2, 5, 6, 7, 8, 9,
7175 : // Src: (atomic_load_or:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)<<P:Predicate_atomic_load_or_local>> - Complexity = 4
7176 : // Dst: (LDS_OR_RET:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
7177 : /* 27414*/ 0, /*End of Scope*/
7178 : /* 27415*/ /*SwitchOpcode*/ 113, TARGET_VAL(ISD::ATOMIC_LOAD_XOR),// ->27531
7179 : /* 27418*/ OPC_RecordMemRef,
7180 : /* 27419*/ OPC_RecordNode, // #0 = 'atomic_load_xor' chained node
7181 : /* 27420*/ OPC_RecordChild1, // #1 = $ptr
7182 : /* 27421*/ OPC_CheckChild1Type, MVT::i32,
7183 : /* 27423*/ OPC_RecordChild2, // #2 = $data
7184 : /* 27424*/ OPC_CheckType, MVT::i32,
7185 : /* 27426*/ OPC_Scope, 42, /*->27470*/ // 2 children in Scope
7186 : /* 27428*/ OPC_CheckPredicate, 30, // Predicate_atomic_xor_global_noret
7187 : /* 27430*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7188 : /* 27432*/ OPC_EmitMergeInputChains1_0,
7189 : /* 27433*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
7190 : MVT::v4i32, 0/*#Ops*/, // Results = #3
7191 : /* 27439*/ OPC_EmitInteger, MVT::i32, R600::sub0,
7192 : /* 27442*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
7193 : MVT::v4i32, 3/*#Ops*/, 3, 2, 4, // Results = #5
7194 : /* 27451*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_XOR_NORET), 0|OPFL_Chain|OPFL_MemRefs,
7195 : MVT::v4i32, 2/*#Ops*/, 5, 1, // Results = #6
7196 : /* 27459*/ OPC_EmitInteger, MVT::i32, R600::sub1,
7197 : /* 27462*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
7198 : MVT::i32, 2/*#Ops*/, 6, 7,
7199 : // Src: (atomic_load_xor:{ *:[i32] } i32:{ *:[i32] }:$ptr, i32:{ *:[i32] }:$data)<<P:Predicate_atomic_xor_global_noret>> - Complexity = 4
7200 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_XOR_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), ?:{ *:[i32] }:$data, sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
7201 : /* 27470*/ /*Scope*/ 59, /*->27530*/
7202 : /* 27471*/ OPC_CheckPredicate, 20, // Predicate_atomic_load_xor_local
7203 : /* 27473*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7204 : /* 27475*/ OPC_EmitMergeInputChains1_0,
7205 : /* 27476*/ OPC_EmitInteger, MVT::i32, 0,
7206 : /* 27479*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7207 : /* 27491*/ OPC_EmitInteger, MVT::i32, 0,
7208 : /* 27494*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7209 : /* 27506*/ OPC_EmitInteger, MVT::i32, 1,
7210 : /* 27509*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7211 : /* 27512*/ OPC_EmitInteger, MVT::i32, 0,
7212 : /* 27515*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_XOR_RET), 0|OPFL_Chain|OPFL_MemRefs,
7213 : MVT::i32, 9/*#Ops*/, 1, 3, 4, 2, 5, 6, 7, 8, 9,
7214 : // Src: (atomic_load_xor:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)<<P:Predicate_atomic_load_xor_local>> - Complexity = 4
7215 : // Dst: (LDS_XOR_RET:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1)
7216 : /* 27530*/ 0, /*End of Scope*/
7217 : /* 27531*/ /*SwitchOpcode*/ 16|128,1/*144*/, TARGET_VAL(ISD::ATOMIC_CMP_SWAP),// ->27679
7218 : /* 27535*/ OPC_RecordMemRef,
7219 : /* 27536*/ OPC_RecordNode, // #0 = 'atomic_cmp_swap' chained node
7220 : /* 27537*/ OPC_RecordChild1, // #1 = $ptr
7221 : /* 27538*/ OPC_CheckChild1Type, MVT::i32,
7222 : /* 27540*/ OPC_RecordChild2, // #2 = $cmp
7223 : /* 27541*/ OPC_RecordChild3, // #3 = $data
7224 : /* 27542*/ OPC_CheckType, MVT::i32,
7225 : /* 27544*/ OPC_Scope, 54, /*->27600*/ // 2 children in Scope
7226 : /* 27546*/ OPC_CheckPredicate, 30, // Predicate_atomic_cmp_swap_global_noret
7227 : /* 27548*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7228 : /* 27550*/ OPC_EmitMergeInputChains1_0,
7229 : /* 27551*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0,
7230 : MVT::v4i32, 0/*#Ops*/, // Results = #4
7231 : /* 27557*/ OPC_EmitInteger, MVT::i32, R600::sub3,
7232 : /* 27560*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
7233 : MVT::v4i32, 3/*#Ops*/, 4, 2, 5, // Results = #6
7234 : /* 27569*/ OPC_EmitInteger, MVT::i32, R600::sub0,
7235 : /* 27572*/ OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0,
7236 : MVT::v4i32, 3/*#Ops*/, 6, 3, 7, // Results = #8
7237 : /* 27581*/ OPC_EmitNode1, TARGET_VAL(R600::RAT_ATOMIC_CMPXCHG_INT_NORET), 0|OPFL_Chain|OPFL_MemRefs,
7238 : MVT::v4i32, 2/*#Ops*/, 8, 1, // Results = #9
7239 : /* 27589*/ OPC_EmitInteger, MVT::i32, R600::sub1,
7240 : /* 27592*/ OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0|OPFL_Chain,
7241 : MVT::i32, 2/*#Ops*/, 9, 10,
7242 : // Src: (atomic_cmp_swap:{ *:[i32] } i32:{ *:[i32] }:$ptr, i32:{ *:[i32] }:$cmp, i32:{ *:[i32] }:$data)<<P:Predicate_atomic_cmp_swap_global_noret>> - Complexity = 4
7243 : // Dst: (EXTRACT_SUBREG:{ *:[i32] } (RAT_ATOMIC_CMPXCHG_INT_NORET:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (INSERT_SUBREG:{ *:[v4i32] } (IMPLICIT_DEF:{ *:[v4i32] }), ?:{ *:[i32] }:$cmp, sub3:{ *:[i32] }), ?:{ *:[i32] }:$data, sub0:{ *:[i32] }), ?:{ *:[i32] }:$ptr), sub1:{ *:[i32] })
7244 : /* 27600*/ /*Scope*/ 77, /*->27678*/
7245 : /* 27601*/ OPC_CheckPredicate, 31, // Predicate_atomic_cmp_swap_local
7246 : /* 27603*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7247 : /* 27605*/ OPC_EmitMergeInputChains1_0,
7248 : /* 27606*/ OPC_EmitInteger, MVT::i32, 0,
7249 : /* 27609*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7250 : /* 27621*/ OPC_EmitInteger, MVT::i32, 0,
7251 : /* 27624*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7252 : /* 27636*/ OPC_EmitInteger, MVT::i32, 0,
7253 : /* 27639*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7254 : /* 27651*/ OPC_EmitInteger, MVT::i32, 1,
7255 : /* 27654*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7256 : /* 27657*/ OPC_EmitInteger, MVT::i32, 0,
7257 : /* 27660*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LDS_CMPST_RET), 0|OPFL_Chain|OPFL_MemRefs,
7258 : MVT::i32, 12/*#Ops*/, 1, 4, 5, 2, 6, 7, 3, 8, 9, 10, 11, 12,
7259 : // Src: (atomic_cmp_swap:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2)<<P:Predicate_atomic_cmp_swap_local>> - Complexity = 4
7260 : // Dst: (LDS_CMPST_RET:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2)
7261 : /* 27678*/ 0, /*End of Scope*/
7262 : /* 27679*/ /*SwitchOpcode*/ 57, TARGET_VAL(ISD::BITCAST),// ->27739
7263 : /* 27682*/ OPC_RecordChild0, // #0 = $src0
7264 : /* 27683*/ OPC_SwitchType /*6 cases */, 7, MVT::i32,// ->27693
7265 : /* 27686*/ OPC_CheckChild0Type, MVT::f32,
7266 : /* 27688*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7267 : /* 27690*/ OPC_CompleteMatch, 1, 0,
7268 : // Src: (bitconvert:{ *:[i32] } R600_Reg32:{ *:[f32] }:$src0) - Complexity = 3
7269 : // Dst: R600_Reg32:{ *:[i32] }:$src0
7270 : /* 27693*/ /*SwitchType*/ 7, MVT::f32,// ->27702
7271 : /* 27695*/ OPC_CheckChild0Type, MVT::i32,
7272 : /* 27697*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7273 : /* 27699*/ OPC_CompleteMatch, 1, 0,
7274 : // Src: (bitconvert:{ *:[f32] } R600_Reg32:{ *:[i32] }:$src0) - Complexity = 3
7275 : // Dst: R600_Reg32:{ *:[f32] }:$src0
7276 : /* 27702*/ /*SwitchType*/ 7, MVT::v2i32,// ->27711
7277 : /* 27704*/ OPC_CheckChild0Type, MVT::v2f32,
7278 : /* 27706*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7279 : /* 27708*/ OPC_CompleteMatch, 1, 0,
7280 : // Src: (bitconvert:{ *:[v2i32] } R600_Reg64:{ *:[v2f32] }:$src0) - Complexity = 3
7281 : // Dst: R600_Reg64:{ *:[v2i32] }:$src0
7282 : /* 27711*/ /*SwitchType*/ 7, MVT::v4i32,// ->27720
7283 : /* 27713*/ OPC_CheckChild0Type, MVT::v4f32,
7284 : /* 27715*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7285 : /* 27717*/ OPC_CompleteMatch, 1, 0,
7286 : // Src: (bitconvert:{ *:[v4i32] } R600_Reg128:{ *:[v4f32] }:$src0) - Complexity = 3
7287 : // Dst: R600_Reg128:{ *:[v4i32] }:$src0
7288 : /* 27720*/ /*SwitchType*/ 7, MVT::v2f32,// ->27729
7289 : /* 27722*/ OPC_CheckChild0Type, MVT::v2i32,
7290 : /* 27724*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7291 : /* 27726*/ OPC_CompleteMatch, 1, 0,
7292 : // Src: (bitconvert:{ *:[v2f32] } R600_Reg64:{ *:[v2i32] }:$src0) - Complexity = 3
7293 : // Dst: R600_Reg64:{ *:[v2f32] }:$src0
7294 : /* 27729*/ /*SwitchType*/ 7, MVT::v4f32,// ->27738
7295 : /* 27731*/ OPC_CheckChild0Type, MVT::v4i32,
7296 : /* 27733*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7297 : /* 27735*/ OPC_CompleteMatch, 1, 0,
7298 : // Src: (bitconvert:{ *:[v4f32] } R600_Reg128:{ *:[v4i32] }:$src0) - Complexity = 3
7299 : // Dst: R600_Reg128:{ *:[v4f32] }:$src0
7300 : /* 27738*/ 0, // EndSwitchType
7301 : /* 27739*/ /*SwitchOpcode*/ 8, TARGET_VAL(AMDGPUISD::DWORDADDR),// ->27750
7302 : /* 27742*/ OPC_RecordChild0, // #0 = $addr
7303 : /* 27743*/ OPC_CheckType, MVT::i32,
7304 : /* 27745*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7305 : /* 27747*/ OPC_CompleteMatch, 1, 0,
7306 : // Src: (AMDGPUdwordaddr:{ *:[i32] } R600_Reg32:{ *:[i32] }:$addr) - Complexity = 3
7307 : // Dst: R600_Reg32:{ *:[i32] }:$addr
7308 : /* 27750*/ /*SwitchOpcode*/ 9, TARGET_VAL(AMDGPUISD::DUMMY_CHAIN),// ->27762
7309 : /* 27753*/ OPC_RecordNode, // #0 = 'R600dummy_chain' chained node
7310 : /* 27754*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7311 : /* 27756*/ OPC_EmitMergeInputChains1_0,
7312 : /* 27757*/ OPC_MorphNodeTo0, TARGET_VAL(R600::DUMMY_CHAIN), 0|OPFL_Chain,
7313 : 0/*#Ops*/,
7314 : // Src: (R600dummy_chain) - Complexity = 3
7315 : // Dst: (DUMMY_CHAIN)
7316 : /* 27762*/ /*SwitchOpcode*/ 104, TARGET_VAL(ISD::SUB),// ->27869
7317 : /* 27765*/ OPC_RecordChild0, // #0 = $src0
7318 : /* 27766*/ OPC_RecordChild1, // #1 = $src1
7319 : /* 27767*/ OPC_CheckType, MVT::i32,
7320 : /* 27769*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7321 : /* 27771*/ OPC_EmitInteger, MVT::i32, 0,
7322 : /* 27774*/ OPC_EmitInteger, MVT::i32, 0,
7323 : /* 27777*/ OPC_EmitInteger, MVT::i32, 1,
7324 : /* 27780*/ OPC_EmitInteger, MVT::i32, 0,
7325 : /* 27783*/ OPC_EmitInteger, MVT::i32, 0,
7326 : /* 27786*/ OPC_EmitInteger, MVT::i32, 0,
7327 : /* 27789*/ OPC_EmitInteger, MVT::i32, 0,
7328 : /* 27792*/ OPC_EmitInteger, MVT::i32, 0,
7329 : /* 27795*/ OPC_EmitInteger, MVT::i32, 0,
7330 : /* 27798*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7331 : /* 27810*/ OPC_EmitInteger, MVT::i32, 0,
7332 : /* 27813*/ OPC_EmitInteger, MVT::i32, 0,
7333 : /* 27816*/ OPC_EmitInteger, MVT::i32, 0,
7334 : /* 27819*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7335 : /* 27831*/ OPC_EmitInteger, MVT::i32, 1,
7336 : /* 27834*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7337 : /* 27837*/ OPC_EmitInteger, MVT::i32, 0,
7338 : /* 27840*/ OPC_EmitInteger, MVT::i32, 0,
7339 : /* 27843*/ OPC_MorphNodeTo1, TARGET_VAL(R600::SUB_INT), 0,
7340 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7341 : // Src: (sub:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7342 : // Dst: (SUB_INT:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7343 : /* 27869*/ /*SwitchOpcode*/ 104, TARGET_VAL(ISD::SMAX),// ->27976
7344 : /* 27872*/ OPC_RecordChild0, // #0 = $src0
7345 : /* 27873*/ OPC_RecordChild1, // #1 = $src1
7346 : /* 27874*/ OPC_CheckType, MVT::i32,
7347 : /* 27876*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7348 : /* 27878*/ OPC_EmitInteger, MVT::i32, 0,
7349 : /* 27881*/ OPC_EmitInteger, MVT::i32, 0,
7350 : /* 27884*/ OPC_EmitInteger, MVT::i32, 1,
7351 : /* 27887*/ OPC_EmitInteger, MVT::i32, 0,
7352 : /* 27890*/ OPC_EmitInteger, MVT::i32, 0,
7353 : /* 27893*/ OPC_EmitInteger, MVT::i32, 0,
7354 : /* 27896*/ OPC_EmitInteger, MVT::i32, 0,
7355 : /* 27899*/ OPC_EmitInteger, MVT::i32, 0,
7356 : /* 27902*/ OPC_EmitInteger, MVT::i32, 0,
7357 : /* 27905*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7358 : /* 27917*/ OPC_EmitInteger, MVT::i32, 0,
7359 : /* 27920*/ OPC_EmitInteger, MVT::i32, 0,
7360 : /* 27923*/ OPC_EmitInteger, MVT::i32, 0,
7361 : /* 27926*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7362 : /* 27938*/ OPC_EmitInteger, MVT::i32, 1,
7363 : /* 27941*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7364 : /* 27944*/ OPC_EmitInteger, MVT::i32, 0,
7365 : /* 27947*/ OPC_EmitInteger, MVT::i32, 0,
7366 : /* 27950*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MAX_INT), 0,
7367 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7368 : // Src: (smax:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7369 : // Dst: (MAX_INT:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7370 : /* 27976*/ /*SwitchOpcode*/ 104, TARGET_VAL(ISD::SMIN),// ->28083
7371 : /* 27979*/ OPC_RecordChild0, // #0 = $src0
7372 : /* 27980*/ OPC_RecordChild1, // #1 = $src1
7373 : /* 27981*/ OPC_CheckType, MVT::i32,
7374 : /* 27983*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7375 : /* 27985*/ OPC_EmitInteger, MVT::i32, 0,
7376 : /* 27988*/ OPC_EmitInteger, MVT::i32, 0,
7377 : /* 27991*/ OPC_EmitInteger, MVT::i32, 1,
7378 : /* 27994*/ OPC_EmitInteger, MVT::i32, 0,
7379 : /* 27997*/ OPC_EmitInteger, MVT::i32, 0,
7380 : /* 28000*/ OPC_EmitInteger, MVT::i32, 0,
7381 : /* 28003*/ OPC_EmitInteger, MVT::i32, 0,
7382 : /* 28006*/ OPC_EmitInteger, MVT::i32, 0,
7383 : /* 28009*/ OPC_EmitInteger, MVT::i32, 0,
7384 : /* 28012*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7385 : /* 28024*/ OPC_EmitInteger, MVT::i32, 0,
7386 : /* 28027*/ OPC_EmitInteger, MVT::i32, 0,
7387 : /* 28030*/ OPC_EmitInteger, MVT::i32, 0,
7388 : /* 28033*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7389 : /* 28045*/ OPC_EmitInteger, MVT::i32, 1,
7390 : /* 28048*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7391 : /* 28051*/ OPC_EmitInteger, MVT::i32, 0,
7392 : /* 28054*/ OPC_EmitInteger, MVT::i32, 0,
7393 : /* 28057*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MIN_INT), 0,
7394 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7395 : // Src: (smin:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7396 : // Dst: (MIN_INT:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7397 : /* 28083*/ /*SwitchOpcode*/ 104, TARGET_VAL(ISD::UMAX),// ->28190
7398 : /* 28086*/ OPC_RecordChild0, // #0 = $src0
7399 : /* 28087*/ OPC_RecordChild1, // #1 = $src1
7400 : /* 28088*/ OPC_CheckType, MVT::i32,
7401 : /* 28090*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7402 : /* 28092*/ OPC_EmitInteger, MVT::i32, 0,
7403 : /* 28095*/ OPC_EmitInteger, MVT::i32, 0,
7404 : /* 28098*/ OPC_EmitInteger, MVT::i32, 1,
7405 : /* 28101*/ OPC_EmitInteger, MVT::i32, 0,
7406 : /* 28104*/ OPC_EmitInteger, MVT::i32, 0,
7407 : /* 28107*/ OPC_EmitInteger, MVT::i32, 0,
7408 : /* 28110*/ OPC_EmitInteger, MVT::i32, 0,
7409 : /* 28113*/ OPC_EmitInteger, MVT::i32, 0,
7410 : /* 28116*/ OPC_EmitInteger, MVT::i32, 0,
7411 : /* 28119*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7412 : /* 28131*/ OPC_EmitInteger, MVT::i32, 0,
7413 : /* 28134*/ OPC_EmitInteger, MVT::i32, 0,
7414 : /* 28137*/ OPC_EmitInteger, MVT::i32, 0,
7415 : /* 28140*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7416 : /* 28152*/ OPC_EmitInteger, MVT::i32, 1,
7417 : /* 28155*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7418 : /* 28158*/ OPC_EmitInteger, MVT::i32, 0,
7419 : /* 28161*/ OPC_EmitInteger, MVT::i32, 0,
7420 : /* 28164*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MAX_UINT), 0,
7421 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7422 : // Src: (umax:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7423 : // Dst: (MAX_UINT:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7424 : /* 28190*/ /*SwitchOpcode*/ 104, TARGET_VAL(ISD::UMIN),// ->28297
7425 : /* 28193*/ OPC_RecordChild0, // #0 = $src0
7426 : /* 28194*/ OPC_RecordChild1, // #1 = $src1
7427 : /* 28195*/ OPC_CheckType, MVT::i32,
7428 : /* 28197*/ OPC_CheckPatternPredicate, 2, // (true) && (Subtarget->getGeneration() <= AMDGPUSubtarget::NORTHERN_ISLANDS)
7429 : /* 28199*/ OPC_EmitInteger, MVT::i32, 0,
7430 : /* 28202*/ OPC_EmitInteger, MVT::i32, 0,
7431 : /* 28205*/ OPC_EmitInteger, MVT::i32, 1,
7432 : /* 28208*/ OPC_EmitInteger, MVT::i32, 0,
7433 : /* 28211*/ OPC_EmitInteger, MVT::i32, 0,
7434 : /* 28214*/ OPC_EmitInteger, MVT::i32, 0,
7435 : /* 28217*/ OPC_EmitInteger, MVT::i32, 0,
7436 : /* 28220*/ OPC_EmitInteger, MVT::i32, 0,
7437 : /* 28223*/ OPC_EmitInteger, MVT::i32, 0,
7438 : /* 28226*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7439 : /* 28238*/ OPC_EmitInteger, MVT::i32, 0,
7440 : /* 28241*/ OPC_EmitInteger, MVT::i32, 0,
7441 : /* 28244*/ OPC_EmitInteger, MVT::i32, 0,
7442 : /* 28247*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7443 : /* 28259*/ OPC_EmitInteger, MVT::i32, 1,
7444 : /* 28262*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7445 : /* 28265*/ OPC_EmitInteger, MVT::i32, 0,
7446 : /* 28268*/ OPC_EmitInteger, MVT::i32, 0,
7447 : /* 28271*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MIN_UINT), 0,
7448 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7449 : // Src: (umin:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7450 : // Dst: (MIN_UINT:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7451 : /* 28297*/ /*SwitchOpcode*/ 78|128,1/*206*/, TARGET_VAL(ISD::FP_TO_SINT),// ->28507
7452 : /* 28301*/ OPC_RecordChild0, // #0 = $src0
7453 : /* 28302*/ OPC_CheckChild0Type, MVT::f32,
7454 : /* 28304*/ OPC_CheckType, MVT::i32,
7455 : /* 28306*/ OPC_Scope, 66, /*->28374*/ // 2 children in Scope
7456 : /* 28308*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
7457 : /* 28310*/ OPC_EmitInteger, MVT::i32, 1,
7458 : /* 28313*/ OPC_EmitInteger, MVT::i32, 0,
7459 : /* 28316*/ OPC_EmitInteger, MVT::i32, 0,
7460 : /* 28319*/ OPC_EmitInteger, MVT::i32, 0,
7461 : /* 28322*/ OPC_EmitInteger, MVT::i32, 0,
7462 : /* 28325*/ OPC_EmitInteger, MVT::i32, 0,
7463 : /* 28328*/ OPC_EmitInteger, MVT::i32, 0,
7464 : /* 28331*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7465 : /* 28343*/ OPC_EmitInteger, MVT::i32, 1,
7466 : /* 28346*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7467 : /* 28349*/ OPC_EmitInteger, MVT::i32, 0,
7468 : /* 28352*/ OPC_EmitInteger, MVT::i32, 0,
7469 : /* 28355*/ OPC_MorphNodeTo1, TARGET_VAL(R600::FLT_TO_INT_r600), 0,
7470 : MVT::i32, 13/*#Ops*/, 1, 2, 3, 4, 0, 5, 6, 7, 8, 9, 10, 11, 12,
7471 : // Src: (fp_to_sint:{ *:[i32] } R600_Reg32:{ *:[f32] }:$src0) - Complexity = 3
7472 : // Dst: (FLT_TO_INT_r600:{ *:[i32] } R600_Reg32:{ *:[f32] }:$src0)
7473 : /* 28374*/ /*Scope*/ 2|128,1/*130*/, /*->28506*/
7474 : /* 28376*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7475 : /* 28378*/ OPC_EmitInteger, MVT::i32, 1,
7476 : /* 28381*/ OPC_EmitInteger, MVT::i32, 0,
7477 : /* 28384*/ OPC_EmitInteger, MVT::i32, 0,
7478 : /* 28387*/ OPC_EmitInteger, MVT::i32, 0,
7479 : /* 28390*/ OPC_EmitInteger, MVT::i32, 1,
7480 : /* 28393*/ OPC_EmitInteger, MVT::i32, 0,
7481 : /* 28396*/ OPC_EmitInteger, MVT::i32, 0,
7482 : /* 28399*/ OPC_EmitInteger, MVT::i32, 0,
7483 : /* 28402*/ OPC_EmitInteger, MVT::i32, 0,
7484 : /* 28405*/ OPC_EmitInteger, MVT::i32, 0,
7485 : /* 28408*/ OPC_EmitInteger, MVT::i32, 0,
7486 : /* 28411*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7487 : /* 28423*/ OPC_EmitInteger, MVT::i32, 1,
7488 : /* 28426*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7489 : /* 28429*/ OPC_EmitInteger, MVT::i32, 0,
7490 : /* 28432*/ OPC_EmitInteger, MVT::i32, 0,
7491 : /* 28435*/ OPC_EmitNode1, TARGET_VAL(R600::TRUNC), 0,
7492 : MVT::i32, 13/*#Ops*/, 5, 6, 7, 8, 0, 9, 10, 11, 12, 13, 14, 15, 16, // Results = #17
7493 : /* 28454*/ OPC_EmitInteger, MVT::i32, 0,
7494 : /* 28457*/ OPC_EmitInteger, MVT::i32, 0,
7495 : /* 28460*/ OPC_EmitInteger, MVT::i32, 0,
7496 : /* 28463*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7497 : /* 28475*/ OPC_EmitInteger, MVT::i32, 1,
7498 : /* 28478*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7499 : /* 28481*/ OPC_EmitInteger, MVT::i32, 0,
7500 : /* 28484*/ OPC_EmitInteger, MVT::i32, 0,
7501 : /* 28487*/ OPC_MorphNodeTo1, TARGET_VAL(R600::FLT_TO_INT_eg), 0,
7502 : MVT::i32, 13/*#Ops*/, 1, 2, 3, 4, 17, 18, 19, 20, 21, 22, 23, 24, 25,
7503 : // Src: (fp_to_sint:{ *:[i32] } f32:{ *:[f32] }:$src0) - Complexity = 3
7504 : // Dst: (FLT_TO_INT_eg:{ *:[i32] } (TRUNC:{ *:[i32] } ?:{ *:[f32] }:$src0))
7505 : /* 28506*/ 0, /*End of Scope*/
7506 : /* 28507*/ /*SwitchOpcode*/ 78|128,1/*206*/, TARGET_VAL(ISD::FP_TO_UINT),// ->28717
7507 : /* 28511*/ OPC_RecordChild0, // #0 = $src0
7508 : /* 28512*/ OPC_CheckChild0Type, MVT::f32,
7509 : /* 28514*/ OPC_CheckType, MVT::i32,
7510 : /* 28516*/ OPC_Scope, 66, /*->28584*/ // 2 children in Scope
7511 : /* 28518*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
7512 : /* 28520*/ OPC_EmitInteger, MVT::i32, 1,
7513 : /* 28523*/ OPC_EmitInteger, MVT::i32, 0,
7514 : /* 28526*/ OPC_EmitInteger, MVT::i32, 0,
7515 : /* 28529*/ OPC_EmitInteger, MVT::i32, 0,
7516 : /* 28532*/ OPC_EmitInteger, MVT::i32, 0,
7517 : /* 28535*/ OPC_EmitInteger, MVT::i32, 0,
7518 : /* 28538*/ OPC_EmitInteger, MVT::i32, 0,
7519 : /* 28541*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7520 : /* 28553*/ OPC_EmitInteger, MVT::i32, 1,
7521 : /* 28556*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7522 : /* 28559*/ OPC_EmitInteger, MVT::i32, 0,
7523 : /* 28562*/ OPC_EmitInteger, MVT::i32, 0,
7524 : /* 28565*/ OPC_MorphNodeTo1, TARGET_VAL(R600::FLT_TO_UINT_r600), 0,
7525 : MVT::i32, 13/*#Ops*/, 1, 2, 3, 4, 0, 5, 6, 7, 8, 9, 10, 11, 12,
7526 : // Src: (fp_to_uint:{ *:[i32] } R600_Reg32:{ *:[f32] }:$src0) - Complexity = 3
7527 : // Dst: (FLT_TO_UINT_r600:{ *:[i32] } R600_Reg32:{ *:[f32] }:$src0)
7528 : /* 28584*/ /*Scope*/ 2|128,1/*130*/, /*->28716*/
7529 : /* 28586*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7530 : /* 28588*/ OPC_EmitInteger, MVT::i32, 1,
7531 : /* 28591*/ OPC_EmitInteger, MVT::i32, 0,
7532 : /* 28594*/ OPC_EmitInteger, MVT::i32, 0,
7533 : /* 28597*/ OPC_EmitInteger, MVT::i32, 0,
7534 : /* 28600*/ OPC_EmitInteger, MVT::i32, 1,
7535 : /* 28603*/ OPC_EmitInteger, MVT::i32, 0,
7536 : /* 28606*/ OPC_EmitInteger, MVT::i32, 0,
7537 : /* 28609*/ OPC_EmitInteger, MVT::i32, 0,
7538 : /* 28612*/ OPC_EmitInteger, MVT::i32, 0,
7539 : /* 28615*/ OPC_EmitInteger, MVT::i32, 0,
7540 : /* 28618*/ OPC_EmitInteger, MVT::i32, 0,
7541 : /* 28621*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7542 : /* 28633*/ OPC_EmitInteger, MVT::i32, 1,
7543 : /* 28636*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7544 : /* 28639*/ OPC_EmitInteger, MVT::i32, 0,
7545 : /* 28642*/ OPC_EmitInteger, MVT::i32, 0,
7546 : /* 28645*/ OPC_EmitNode1, TARGET_VAL(R600::TRUNC), 0,
7547 : MVT::i32, 13/*#Ops*/, 5, 6, 7, 8, 0, 9, 10, 11, 12, 13, 14, 15, 16, // Results = #17
7548 : /* 28664*/ OPC_EmitInteger, MVT::i32, 0,
7549 : /* 28667*/ OPC_EmitInteger, MVT::i32, 0,
7550 : /* 28670*/ OPC_EmitInteger, MVT::i32, 0,
7551 : /* 28673*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7552 : /* 28685*/ OPC_EmitInteger, MVT::i32, 1,
7553 : /* 28688*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7554 : /* 28691*/ OPC_EmitInteger, MVT::i32, 0,
7555 : /* 28694*/ OPC_EmitInteger, MVT::i32, 0,
7556 : /* 28697*/ OPC_MorphNodeTo1, TARGET_VAL(R600::FLT_TO_UINT_eg), 0,
7557 : MVT::i32, 13/*#Ops*/, 1, 2, 3, 4, 17, 18, 19, 20, 21, 22, 23, 24, 25,
7558 : // Src: (fp_to_uint:{ *:[i32] } f32:{ *:[f32] }:$src0) - Complexity = 3
7559 : // Dst: (FLT_TO_UINT_eg:{ *:[i32] } (TRUNC:{ *:[i32] } ?:{ *:[f32] }:$src0))
7560 : /* 28716*/ 0, /*End of Scope*/
7561 : /* 28717*/ /*SwitchOpcode*/ 82|128,1/*210*/, TARGET_VAL(ISD::SHL),// ->28931
7562 : /* 28721*/ OPC_RecordChild0, // #0 = $src0
7563 : /* 28722*/ OPC_RecordChild1, // #1 = $src1
7564 : /* 28723*/ OPC_CheckChild1Type, MVT::i32,
7565 : /* 28725*/ OPC_CheckType, MVT::i32,
7566 : /* 28727*/ OPC_Scope, 100, /*->28829*/ // 2 children in Scope
7567 : /* 28729*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
7568 : /* 28731*/ OPC_EmitInteger, MVT::i32, 0,
7569 : /* 28734*/ OPC_EmitInteger, MVT::i32, 0,
7570 : /* 28737*/ OPC_EmitInteger, MVT::i32, 1,
7571 : /* 28740*/ OPC_EmitInteger, MVT::i32, 0,
7572 : /* 28743*/ OPC_EmitInteger, MVT::i32, 0,
7573 : /* 28746*/ OPC_EmitInteger, MVT::i32, 0,
7574 : /* 28749*/ OPC_EmitInteger, MVT::i32, 0,
7575 : /* 28752*/ OPC_EmitInteger, MVT::i32, 0,
7576 : /* 28755*/ OPC_EmitInteger, MVT::i32, 0,
7577 : /* 28758*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7578 : /* 28770*/ OPC_EmitInteger, MVT::i32, 0,
7579 : /* 28773*/ OPC_EmitInteger, MVT::i32, 0,
7580 : /* 28776*/ OPC_EmitInteger, MVT::i32, 0,
7581 : /* 28779*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7582 : /* 28791*/ OPC_EmitInteger, MVT::i32, 1,
7583 : /* 28794*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7584 : /* 28797*/ OPC_EmitInteger, MVT::i32, 0,
7585 : /* 28800*/ OPC_EmitInteger, MVT::i32, 0,
7586 : /* 28803*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LSHL_r600), 0,
7587 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7588 : // Src: (shl:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7589 : // Dst: (LSHL_r600:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7590 : /* 28829*/ /*Scope*/ 100, /*->28930*/
7591 : /* 28830*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
7592 : /* 28832*/ OPC_EmitInteger, MVT::i32, 0,
7593 : /* 28835*/ OPC_EmitInteger, MVT::i32, 0,
7594 : /* 28838*/ OPC_EmitInteger, MVT::i32, 1,
7595 : /* 28841*/ OPC_EmitInteger, MVT::i32, 0,
7596 : /* 28844*/ OPC_EmitInteger, MVT::i32, 0,
7597 : /* 28847*/ OPC_EmitInteger, MVT::i32, 0,
7598 : /* 28850*/ OPC_EmitInteger, MVT::i32, 0,
7599 : /* 28853*/ OPC_EmitInteger, MVT::i32, 0,
7600 : /* 28856*/ OPC_EmitInteger, MVT::i32, 0,
7601 : /* 28859*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7602 : /* 28871*/ OPC_EmitInteger, MVT::i32, 0,
7603 : /* 28874*/ OPC_EmitInteger, MVT::i32, 0,
7604 : /* 28877*/ OPC_EmitInteger, MVT::i32, 0,
7605 : /* 28880*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7606 : /* 28892*/ OPC_EmitInteger, MVT::i32, 1,
7607 : /* 28895*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7608 : /* 28898*/ OPC_EmitInteger, MVT::i32, 0,
7609 : /* 28901*/ OPC_EmitInteger, MVT::i32, 0,
7610 : /* 28904*/ OPC_MorphNodeTo1, TARGET_VAL(R600::LSHL_eg), 0,
7611 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7612 : // Src: (shl:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7613 : // Dst: (LSHL_eg:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7614 : /* 28930*/ 0, /*End of Scope*/
7615 : /* 28931*/ /*SwitchOpcode*/ 53|128,2/*309*/, TARGET_VAL(ISD::MUL),// ->29244
7616 : /* 28935*/ OPC_RecordChild0, // #0 = $src0
7617 : /* 28936*/ OPC_RecordChild1, // #1 = $src1
7618 : /* 28937*/ OPC_CheckType, MVT::i32,
7619 : /* 28939*/ OPC_Scope, 100, /*->29041*/ // 3 children in Scope
7620 : /* 28941*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
7621 : /* 28943*/ OPC_EmitInteger, MVT::i32, 0,
7622 : /* 28946*/ OPC_EmitInteger, MVT::i32, 0,
7623 : /* 28949*/ OPC_EmitInteger, MVT::i32, 1,
7624 : /* 28952*/ OPC_EmitInteger, MVT::i32, 0,
7625 : /* 28955*/ OPC_EmitInteger, MVT::i32, 0,
7626 : /* 28958*/ OPC_EmitInteger, MVT::i32, 0,
7627 : /* 28961*/ OPC_EmitInteger, MVT::i32, 0,
7628 : /* 28964*/ OPC_EmitInteger, MVT::i32, 0,
7629 : /* 28967*/ OPC_EmitInteger, MVT::i32, 0,
7630 : /* 28970*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7631 : /* 28982*/ OPC_EmitInteger, MVT::i32, 0,
7632 : /* 28985*/ OPC_EmitInteger, MVT::i32, 0,
7633 : /* 28988*/ OPC_EmitInteger, MVT::i32, 0,
7634 : /* 28991*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7635 : /* 29003*/ OPC_EmitInteger, MVT::i32, 1,
7636 : /* 29006*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7637 : /* 29009*/ OPC_EmitInteger, MVT::i32, 0,
7638 : /* 29012*/ OPC_EmitInteger, MVT::i32, 0,
7639 : /* 29015*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULLO_INT_r600), 0,
7640 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7641 : // Src: (mul:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7642 : // Dst: (MULLO_INT_r600:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7643 : /* 29041*/ /*Scope*/ 100, /*->29142*/
7644 : /* 29042*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
7645 : /* 29044*/ OPC_EmitInteger, MVT::i32, 0,
7646 : /* 29047*/ OPC_EmitInteger, MVT::i32, 0,
7647 : /* 29050*/ OPC_EmitInteger, MVT::i32, 1,
7648 : /* 29053*/ OPC_EmitInteger, MVT::i32, 0,
7649 : /* 29056*/ OPC_EmitInteger, MVT::i32, 0,
7650 : /* 29059*/ OPC_EmitInteger, MVT::i32, 0,
7651 : /* 29062*/ OPC_EmitInteger, MVT::i32, 0,
7652 : /* 29065*/ OPC_EmitInteger, MVT::i32, 0,
7653 : /* 29068*/ OPC_EmitInteger, MVT::i32, 0,
7654 : /* 29071*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7655 : /* 29083*/ OPC_EmitInteger, MVT::i32, 0,
7656 : /* 29086*/ OPC_EmitInteger, MVT::i32, 0,
7657 : /* 29089*/ OPC_EmitInteger, MVT::i32, 0,
7658 : /* 29092*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7659 : /* 29104*/ OPC_EmitInteger, MVT::i32, 1,
7660 : /* 29107*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7661 : /* 29110*/ OPC_EmitInteger, MVT::i32, 0,
7662 : /* 29113*/ OPC_EmitInteger, MVT::i32, 0,
7663 : /* 29116*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULLO_INT_eg), 0,
7664 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7665 : // Src: (mul:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7666 : // Dst: (MULLO_INT_eg:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7667 : /* 29142*/ /*Scope*/ 100, /*->29243*/
7668 : /* 29143*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
7669 : /* 29145*/ OPC_EmitInteger, MVT::i32, 0,
7670 : /* 29148*/ OPC_EmitInteger, MVT::i32, 0,
7671 : /* 29151*/ OPC_EmitInteger, MVT::i32, 1,
7672 : /* 29154*/ OPC_EmitInteger, MVT::i32, 0,
7673 : /* 29157*/ OPC_EmitInteger, MVT::i32, 0,
7674 : /* 29160*/ OPC_EmitInteger, MVT::i32, 0,
7675 : /* 29163*/ OPC_EmitInteger, MVT::i32, 0,
7676 : /* 29166*/ OPC_EmitInteger, MVT::i32, 0,
7677 : /* 29169*/ OPC_EmitInteger, MVT::i32, 0,
7678 : /* 29172*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7679 : /* 29184*/ OPC_EmitInteger, MVT::i32, 0,
7680 : /* 29187*/ OPC_EmitInteger, MVT::i32, 0,
7681 : /* 29190*/ OPC_EmitInteger, MVT::i32, 0,
7682 : /* 29193*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7683 : /* 29205*/ OPC_EmitInteger, MVT::i32, 1,
7684 : /* 29208*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7685 : /* 29211*/ OPC_EmitInteger, MVT::i32, 0,
7686 : /* 29214*/ OPC_EmitInteger, MVT::i32, 0,
7687 : /* 29217*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULLO_INT_cm), 0,
7688 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7689 : // Src: (mul:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7690 : // Dst: (MULLO_INT_cm:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7691 : /* 29243*/ 0, /*End of Scope*/
7692 : /* 29244*/ /*SwitchOpcode*/ 53|128,2/*309*/, TARGET_VAL(ISD::MULHS),// ->29557
7693 : /* 29248*/ OPC_RecordChild0, // #0 = $src0
7694 : /* 29249*/ OPC_RecordChild1, // #1 = $src1
7695 : /* 29250*/ OPC_CheckType, MVT::i32,
7696 : /* 29252*/ OPC_Scope, 100, /*->29354*/ // 3 children in Scope
7697 : /* 29254*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
7698 : /* 29256*/ OPC_EmitInteger, MVT::i32, 0,
7699 : /* 29259*/ OPC_EmitInteger, MVT::i32, 0,
7700 : /* 29262*/ OPC_EmitInteger, MVT::i32, 1,
7701 : /* 29265*/ OPC_EmitInteger, MVT::i32, 0,
7702 : /* 29268*/ OPC_EmitInteger, MVT::i32, 0,
7703 : /* 29271*/ OPC_EmitInteger, MVT::i32, 0,
7704 : /* 29274*/ OPC_EmitInteger, MVT::i32, 0,
7705 : /* 29277*/ OPC_EmitInteger, MVT::i32, 0,
7706 : /* 29280*/ OPC_EmitInteger, MVT::i32, 0,
7707 : /* 29283*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7708 : /* 29295*/ OPC_EmitInteger, MVT::i32, 0,
7709 : /* 29298*/ OPC_EmitInteger, MVT::i32, 0,
7710 : /* 29301*/ OPC_EmitInteger, MVT::i32, 0,
7711 : /* 29304*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7712 : /* 29316*/ OPC_EmitInteger, MVT::i32, 1,
7713 : /* 29319*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7714 : /* 29322*/ OPC_EmitInteger, MVT::i32, 0,
7715 : /* 29325*/ OPC_EmitInteger, MVT::i32, 0,
7716 : /* 29328*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULHI_INT_r600), 0,
7717 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7718 : // Src: (mulhs:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7719 : // Dst: (MULHI_INT_r600:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7720 : /* 29354*/ /*Scope*/ 100, /*->29455*/
7721 : /* 29355*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
7722 : /* 29357*/ OPC_EmitInteger, MVT::i32, 0,
7723 : /* 29360*/ OPC_EmitInteger, MVT::i32, 0,
7724 : /* 29363*/ OPC_EmitInteger, MVT::i32, 1,
7725 : /* 29366*/ OPC_EmitInteger, MVT::i32, 0,
7726 : /* 29369*/ OPC_EmitInteger, MVT::i32, 0,
7727 : /* 29372*/ OPC_EmitInteger, MVT::i32, 0,
7728 : /* 29375*/ OPC_EmitInteger, MVT::i32, 0,
7729 : /* 29378*/ OPC_EmitInteger, MVT::i32, 0,
7730 : /* 29381*/ OPC_EmitInteger, MVT::i32, 0,
7731 : /* 29384*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7732 : /* 29396*/ OPC_EmitInteger, MVT::i32, 0,
7733 : /* 29399*/ OPC_EmitInteger, MVT::i32, 0,
7734 : /* 29402*/ OPC_EmitInteger, MVT::i32, 0,
7735 : /* 29405*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7736 : /* 29417*/ OPC_EmitInteger, MVT::i32, 1,
7737 : /* 29420*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7738 : /* 29423*/ OPC_EmitInteger, MVT::i32, 0,
7739 : /* 29426*/ OPC_EmitInteger, MVT::i32, 0,
7740 : /* 29429*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULHI_INT_eg), 0,
7741 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7742 : // Src: (mulhs:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7743 : // Dst: (MULHI_INT_eg:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7744 : /* 29455*/ /*Scope*/ 100, /*->29556*/
7745 : /* 29456*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
7746 : /* 29458*/ OPC_EmitInteger, MVT::i32, 0,
7747 : /* 29461*/ OPC_EmitInteger, MVT::i32, 0,
7748 : /* 29464*/ OPC_EmitInteger, MVT::i32, 1,
7749 : /* 29467*/ OPC_EmitInteger, MVT::i32, 0,
7750 : /* 29470*/ OPC_EmitInteger, MVT::i32, 0,
7751 : /* 29473*/ OPC_EmitInteger, MVT::i32, 0,
7752 : /* 29476*/ OPC_EmitInteger, MVT::i32, 0,
7753 : /* 29479*/ OPC_EmitInteger, MVT::i32, 0,
7754 : /* 29482*/ OPC_EmitInteger, MVT::i32, 0,
7755 : /* 29485*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7756 : /* 29497*/ OPC_EmitInteger, MVT::i32, 0,
7757 : /* 29500*/ OPC_EmitInteger, MVT::i32, 0,
7758 : /* 29503*/ OPC_EmitInteger, MVT::i32, 0,
7759 : /* 29506*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7760 : /* 29518*/ OPC_EmitInteger, MVT::i32, 1,
7761 : /* 29521*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7762 : /* 29524*/ OPC_EmitInteger, MVT::i32, 0,
7763 : /* 29527*/ OPC_EmitInteger, MVT::i32, 0,
7764 : /* 29530*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULHI_INT_cm), 0,
7765 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7766 : // Src: (mulhs:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7767 : // Dst: (MULHI_INT_cm:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7768 : /* 29556*/ 0, /*End of Scope*/
7769 : /* 29557*/ /*SwitchOpcode*/ 53|128,2/*309*/, TARGET_VAL(ISD::MULHU),// ->29870
7770 : /* 29561*/ OPC_RecordChild0, // #0 = $src0
7771 : /* 29562*/ OPC_RecordChild1, // #1 = $src1
7772 : /* 29563*/ OPC_CheckType, MVT::i32,
7773 : /* 29565*/ OPC_Scope, 100, /*->29667*/ // 3 children in Scope
7774 : /* 29567*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
7775 : /* 29569*/ OPC_EmitInteger, MVT::i32, 0,
7776 : /* 29572*/ OPC_EmitInteger, MVT::i32, 0,
7777 : /* 29575*/ OPC_EmitInteger, MVT::i32, 1,
7778 : /* 29578*/ OPC_EmitInteger, MVT::i32, 0,
7779 : /* 29581*/ OPC_EmitInteger, MVT::i32, 0,
7780 : /* 29584*/ OPC_EmitInteger, MVT::i32, 0,
7781 : /* 29587*/ OPC_EmitInteger, MVT::i32, 0,
7782 : /* 29590*/ OPC_EmitInteger, MVT::i32, 0,
7783 : /* 29593*/ OPC_EmitInteger, MVT::i32, 0,
7784 : /* 29596*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7785 : /* 29608*/ OPC_EmitInteger, MVT::i32, 0,
7786 : /* 29611*/ OPC_EmitInteger, MVT::i32, 0,
7787 : /* 29614*/ OPC_EmitInteger, MVT::i32, 0,
7788 : /* 29617*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7789 : /* 29629*/ OPC_EmitInteger, MVT::i32, 1,
7790 : /* 29632*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7791 : /* 29635*/ OPC_EmitInteger, MVT::i32, 0,
7792 : /* 29638*/ OPC_EmitInteger, MVT::i32, 0,
7793 : /* 29641*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULHI_UINT_r600), 0,
7794 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7795 : // Src: (mulhu:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7796 : // Dst: (MULHI_UINT_r600:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7797 : /* 29667*/ /*Scope*/ 100, /*->29768*/
7798 : /* 29668*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
7799 : /* 29670*/ OPC_EmitInteger, MVT::i32, 0,
7800 : /* 29673*/ OPC_EmitInteger, MVT::i32, 0,
7801 : /* 29676*/ OPC_EmitInteger, MVT::i32, 1,
7802 : /* 29679*/ OPC_EmitInteger, MVT::i32, 0,
7803 : /* 29682*/ OPC_EmitInteger, MVT::i32, 0,
7804 : /* 29685*/ OPC_EmitInteger, MVT::i32, 0,
7805 : /* 29688*/ OPC_EmitInteger, MVT::i32, 0,
7806 : /* 29691*/ OPC_EmitInteger, MVT::i32, 0,
7807 : /* 29694*/ OPC_EmitInteger, MVT::i32, 0,
7808 : /* 29697*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7809 : /* 29709*/ OPC_EmitInteger, MVT::i32, 0,
7810 : /* 29712*/ OPC_EmitInteger, MVT::i32, 0,
7811 : /* 29715*/ OPC_EmitInteger, MVT::i32, 0,
7812 : /* 29718*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7813 : /* 29730*/ OPC_EmitInteger, MVT::i32, 1,
7814 : /* 29733*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7815 : /* 29736*/ OPC_EmitInteger, MVT::i32, 0,
7816 : /* 29739*/ OPC_EmitInteger, MVT::i32, 0,
7817 : /* 29742*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULHI_UINT_eg), 0,
7818 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7819 : // Src: (mulhu:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7820 : // Dst: (MULHI_UINT_eg:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7821 : /* 29768*/ /*Scope*/ 100, /*->29869*/
7822 : /* 29769*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
7823 : /* 29771*/ OPC_EmitInteger, MVT::i32, 0,
7824 : /* 29774*/ OPC_EmitInteger, MVT::i32, 0,
7825 : /* 29777*/ OPC_EmitInteger, MVT::i32, 1,
7826 : /* 29780*/ OPC_EmitInteger, MVT::i32, 0,
7827 : /* 29783*/ OPC_EmitInteger, MVT::i32, 0,
7828 : /* 29786*/ OPC_EmitInteger, MVT::i32, 0,
7829 : /* 29789*/ OPC_EmitInteger, MVT::i32, 0,
7830 : /* 29792*/ OPC_EmitInteger, MVT::i32, 0,
7831 : /* 29795*/ OPC_EmitInteger, MVT::i32, 0,
7832 : /* 29798*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7833 : /* 29810*/ OPC_EmitInteger, MVT::i32, 0,
7834 : /* 29813*/ OPC_EmitInteger, MVT::i32, 0,
7835 : /* 29816*/ OPC_EmitInteger, MVT::i32, 0,
7836 : /* 29819*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7837 : /* 29831*/ OPC_EmitInteger, MVT::i32, 1,
7838 : /* 29834*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7839 : /* 29837*/ OPC_EmitInteger, MVT::i32, 0,
7840 : /* 29840*/ OPC_EmitInteger, MVT::i32, 0,
7841 : /* 29843*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULHI_UINT_cm), 0,
7842 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7843 : // Src: (mulhu:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7844 : // Dst: (MULHI_UINT_cm:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7845 : /* 29869*/ 0, /*End of Scope*/
7846 : /* 29870*/ /*SwitchOpcode*/ 63|128,3/*447*/, TARGET_VAL(AMDGPUISD::URECIP),// ->30321
7847 : /* 29874*/ OPC_RecordChild0, // #0 = $src0
7848 : /* 29875*/ OPC_CheckType, MVT::i32,
7849 : /* 29877*/ OPC_Scope, 66, /*->29945*/ // 3 children in Scope
7850 : /* 29879*/ OPC_CheckPatternPredicate, 1, // (Subtarget->getGeneration() <= AMDGPUSubtarget::R700)
7851 : /* 29881*/ OPC_EmitInteger, MVT::i32, 1,
7852 : /* 29884*/ OPC_EmitInteger, MVT::i32, 0,
7853 : /* 29887*/ OPC_EmitInteger, MVT::i32, 0,
7854 : /* 29890*/ OPC_EmitInteger, MVT::i32, 0,
7855 : /* 29893*/ OPC_EmitInteger, MVT::i32, 0,
7856 : /* 29896*/ OPC_EmitInteger, MVT::i32, 0,
7857 : /* 29899*/ OPC_EmitInteger, MVT::i32, 0,
7858 : /* 29902*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7859 : /* 29914*/ OPC_EmitInteger, MVT::i32, 1,
7860 : /* 29917*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7861 : /* 29920*/ OPC_EmitInteger, MVT::i32, 0,
7862 : /* 29923*/ OPC_EmitInteger, MVT::i32, 0,
7863 : /* 29926*/ OPC_MorphNodeTo1, TARGET_VAL(R600::RECIP_UINT_r600), 0,
7864 : MVT::i32, 13/*#Ops*/, 1, 2, 3, 4, 0, 5, 6, 7, 8, 9, 10, 11, 12,
7865 : // Src: (AMDGPUurecip:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0) - Complexity = 3
7866 : // Dst: (RECIP_UINT_r600:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0)
7867 : /* 29945*/ /*Scope*/ 66, /*->30012*/
7868 : /* 29946*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
7869 : /* 29948*/ OPC_EmitInteger, MVT::i32, 1,
7870 : /* 29951*/ OPC_EmitInteger, MVT::i32, 0,
7871 : /* 29954*/ OPC_EmitInteger, MVT::i32, 0,
7872 : /* 29957*/ OPC_EmitInteger, MVT::i32, 0,
7873 : /* 29960*/ OPC_EmitInteger, MVT::i32, 0,
7874 : /* 29963*/ OPC_EmitInteger, MVT::i32, 0,
7875 : /* 29966*/ OPC_EmitInteger, MVT::i32, 0,
7876 : /* 29969*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7877 : /* 29981*/ OPC_EmitInteger, MVT::i32, 1,
7878 : /* 29984*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7879 : /* 29987*/ OPC_EmitInteger, MVT::i32, 0,
7880 : /* 29990*/ OPC_EmitInteger, MVT::i32, 0,
7881 : /* 29993*/ OPC_MorphNodeTo1, TARGET_VAL(R600::RECIP_UINT_eg), 0,
7882 : MVT::i32, 13/*#Ops*/, 1, 2, 3, 4, 0, 5, 6, 7, 8, 9, 10, 11, 12,
7883 : // Src: (AMDGPUurecip:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0) - Complexity = 3
7884 : // Dst: (RECIP_UINT_eg:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0)
7885 : /* 30012*/ /*Scope*/ 50|128,2/*306*/, /*->30320*/
7886 : /* 30014*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
7887 : /* 30016*/ OPC_EmitInteger, MVT::i32, 1,
7888 : /* 30019*/ OPC_EmitInteger, MVT::i32, 0,
7889 : /* 30022*/ OPC_EmitInteger, MVT::i32, 0,
7890 : /* 30025*/ OPC_EmitInteger, MVT::i32, 0,
7891 : /* 30028*/ OPC_EmitInteger, MVT::i32, 0,
7892 : /* 30031*/ OPC_EmitInteger, MVT::i32, 0,
7893 : /* 30034*/ OPC_EmitInteger, MVT::i32, 1,
7894 : /* 30037*/ OPC_EmitInteger, MVT::i32, 0,
7895 : /* 30040*/ OPC_EmitInteger, MVT::i32, 0,
7896 : /* 30043*/ OPC_EmitInteger, MVT::i32, 0,
7897 : /* 30046*/ OPC_EmitInteger, MVT::i32, 1,
7898 : /* 30049*/ OPC_EmitInteger, MVT::i32, 0,
7899 : /* 30052*/ OPC_EmitInteger, MVT::i32, 0,
7900 : /* 30055*/ OPC_EmitInteger, MVT::i32, 0,
7901 : /* 30058*/ OPC_EmitInteger, MVT::i32, 1,
7902 : /* 30061*/ OPC_EmitInteger, MVT::i32, 0,
7903 : /* 30064*/ OPC_EmitInteger, MVT::i32, 0,
7904 : /* 30067*/ OPC_EmitInteger, MVT::i32, 0,
7905 : /* 30070*/ OPC_EmitInteger, MVT::i32, 0,
7906 : /* 30073*/ OPC_EmitInteger, MVT::i32, 0,
7907 : /* 30076*/ OPC_EmitInteger, MVT::i32, 0,
7908 : /* 30079*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7909 : /* 30091*/ OPC_EmitInteger, MVT::i32, 1,
7910 : /* 30094*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7911 : /* 30097*/ OPC_EmitInteger, MVT::i32, 0,
7912 : /* 30100*/ OPC_EmitInteger, MVT::i32, 0,
7913 : /* 30103*/ OPC_EmitNode1, TARGET_VAL(R600::UINT_TO_FLT_eg), 0,
7914 : MVT::i32, 13/*#Ops*/, 15, 16, 17, 18, 0, 19, 20, 21, 22, 23, 24, 25, 26, // Results = #27
7915 : /* 30122*/ OPC_EmitInteger, MVT::i32, 0,
7916 : /* 30125*/ OPC_EmitInteger, MVT::i32, 0,
7917 : /* 30128*/ OPC_EmitInteger, MVT::i32, 0,
7918 : /* 30131*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7919 : /* 30143*/ OPC_EmitInteger, MVT::i32, 1,
7920 : /* 30146*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7921 : /* 30149*/ OPC_EmitInteger, MVT::i32, 0,
7922 : /* 30152*/ OPC_EmitInteger, MVT::i32, 0,
7923 : /* 30155*/ OPC_EmitNode1, TARGET_VAL(R600::RECIP_IEEE_cm), 0,
7924 : MVT::i32, 13/*#Ops*/, 11, 12, 13, 14, 27, 28, 29, 30, 31, 32, 33, 34, 35, // Results = #36
7925 : /* 30174*/ OPC_EmitInteger, MVT::i32, 0,
7926 : /* 30177*/ OPC_EmitInteger, MVT::i32, 0,
7927 : /* 30180*/ OPC_EmitInteger, MVT::i32, 0,
7928 : /* 30183*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7929 : /* 30195*/ OPC_EmitInteger, MVT::i32, 0|128,0|128,0|128,124|128,4/*1333788672*/,
7930 : /* 30202*/ OPC_EmitNode1, TARGET_VAL(R600::MOV_IMM_I32), 0,
7931 : MVT::i32, 1/*#Ops*/, 41, // Results = #42
7932 : /* 30209*/ OPC_EmitInteger, MVT::i32, 0,
7933 : /* 30212*/ OPC_EmitInteger, MVT::i32, 0,
7934 : /* 30215*/ OPC_EmitInteger, MVT::i32, 0,
7935 : /* 30218*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7936 : /* 30230*/ OPC_EmitInteger, MVT::i32, 1,
7937 : /* 30233*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7938 : /* 30236*/ OPC_EmitInteger, MVT::i32, 0,
7939 : /* 30239*/ OPC_EmitInteger, MVT::i32, 0,
7940 : /* 30242*/ OPC_EmitNode1, TARGET_VAL(R600::MUL_IEEE), 0,
7941 : MVT::i32, 20/*#Ops*/, 5, 6, 7, 8, 9, 10, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 47, 48, 49, 50, // Results = #51
7942 : /* 30268*/ OPC_EmitInteger, MVT::i32, 0,
7943 : /* 30271*/ OPC_EmitInteger, MVT::i32, 0,
7944 : /* 30274*/ OPC_EmitInteger, MVT::i32, 0,
7945 : /* 30277*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7946 : /* 30289*/ OPC_EmitInteger, MVT::i32, 1,
7947 : /* 30292*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7948 : /* 30295*/ OPC_EmitInteger, MVT::i32, 0,
7949 : /* 30298*/ OPC_EmitInteger, MVT::i32, 0,
7950 : /* 30301*/ OPC_MorphNodeTo1, TARGET_VAL(R600::FLT_TO_UINT_eg), 0,
7951 : MVT::i32, 13/*#Ops*/, 1, 2, 3, 4, 51, 52, 53, 54, 55, 56, 57, 58, 59,
7952 : // Src: (AMDGPUurecip:{ *:[i32] } i32:{ *:[i32] }:$src0) - Complexity = 3
7953 : // Dst: (FLT_TO_UINT_eg:{ *:[i32] } (MUL_IEEE:{ *:[i32] } (RECIP_IEEE_cm:{ *:[i32] } (UINT_TO_FLT_eg:{ *:[i32] } ?:{ *:[i32] }:$src0)), (MOV_IMM_I32:{ *:[i32] } 1333788672:{ *:[i32] })))
7954 : /* 30320*/ 0, /*End of Scope*/
7955 : /* 30321*/ /*SwitchOpcode*/ 80|128,1/*208*/, TARGET_VAL(AMDGPUISD::MULHI_U24),// ->30533
7956 : /* 30325*/ OPC_RecordChild0, // #0 = $src0
7957 : /* 30326*/ OPC_RecordChild1, // #1 = $src1
7958 : /* 30327*/ OPC_CheckType, MVT::i32,
7959 : /* 30329*/ OPC_Scope, 100, /*->30431*/ // 2 children in Scope
7960 : /* 30331*/ OPC_CheckPatternPredicate, 4, // (true) && (Subtarget->getGeneration() >= AMDGPUSubtarget::EVERGREEN && !Subtarget->hasCaymanISA())
7961 : /* 30333*/ OPC_EmitInteger, MVT::i32, 0,
7962 : /* 30336*/ OPC_EmitInteger, MVT::i32, 0,
7963 : /* 30339*/ OPC_EmitInteger, MVT::i32, 1,
7964 : /* 30342*/ OPC_EmitInteger, MVT::i32, 0,
7965 : /* 30345*/ OPC_EmitInteger, MVT::i32, 0,
7966 : /* 30348*/ OPC_EmitInteger, MVT::i32, 0,
7967 : /* 30351*/ OPC_EmitInteger, MVT::i32, 0,
7968 : /* 30354*/ OPC_EmitInteger, MVT::i32, 0,
7969 : /* 30357*/ OPC_EmitInteger, MVT::i32, 0,
7970 : /* 30360*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7971 : /* 30372*/ OPC_EmitInteger, MVT::i32, 0,
7972 : /* 30375*/ OPC_EmitInteger, MVT::i32, 0,
7973 : /* 30378*/ OPC_EmitInteger, MVT::i32, 0,
7974 : /* 30381*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7975 : /* 30393*/ OPC_EmitInteger, MVT::i32, 1,
7976 : /* 30396*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
7977 : /* 30399*/ OPC_EmitInteger, MVT::i32, 0,
7978 : /* 30402*/ OPC_EmitInteger, MVT::i32, 0,
7979 : /* 30405*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULHI_UINT24_eg), 0,
7980 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
7981 : // Src: (AMDGPUmulhi_u24:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
7982 : // Dst: (MULHI_UINT24_eg:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
7983 : /* 30431*/ /*Scope*/ 100, /*->30532*/
7984 : /* 30432*/ OPC_CheckPatternPredicate, 3, // (true) && (Subtarget->hasCaymanISA())
7985 : /* 30434*/ OPC_EmitInteger, MVT::i32, 0,
7986 : /* 30437*/ OPC_EmitInteger, MVT::i32, 0,
7987 : /* 30440*/ OPC_EmitInteger, MVT::i32, 1,
7988 : /* 30443*/ OPC_EmitInteger, MVT::i32, 0,
7989 : /* 30446*/ OPC_EmitInteger, MVT::i32, 0,
7990 : /* 30449*/ OPC_EmitInteger, MVT::i32, 0,
7991 : /* 30452*/ OPC_EmitInteger, MVT::i32, 0,
7992 : /* 30455*/ OPC_EmitInteger, MVT::i32, 0,
7993 : /* 30458*/ OPC_EmitInteger, MVT::i32, 0,
7994 : /* 30461*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7995 : /* 30473*/ OPC_EmitInteger, MVT::i32, 0,
7996 : /* 30476*/ OPC_EmitInteger, MVT::i32, 0,
7997 : /* 30479*/ OPC_EmitInteger, MVT::i32, 0,
7998 : /* 30482*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
7999 : /* 30494*/ OPC_EmitInteger, MVT::i32, 1,
8000 : /* 30497*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
8001 : /* 30500*/ OPC_EmitInteger, MVT::i32, 0,
8002 : /* 30503*/ OPC_EmitInteger, MVT::i32, 0,
8003 : /* 30506*/ OPC_MorphNodeTo1, TARGET_VAL(R600::MULHI_UINT_cm24), 0,
8004 : MVT::i32, 20/*#Ops*/, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 1, 12, 13, 14, 15, 16, 17, 18, 19,
8005 : // Src: (AMDGPUmulhi_u24:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1) - Complexity = 3
8006 : // Dst: (MULHI_UINT_cm24:{ *:[i32] } R600_Reg32:{ *:[i32] }:$src0, R600_Reg32:{ *:[i32] }:$src1)
8007 : /* 30532*/ 0, /*End of Scope*/
8008 : /* 30533*/ /*SwitchOpcode*/ 105, TARGET_VAL(AMDGPUISD::BFE_U32),// ->30641
8009 : /* 30536*/ OPC_RecordChild0, // #0 = $src0
8010 : /* 30537*/ OPC_RecordChild1, // #1 = $src1
8011 : /* 30538*/ OPC_RecordChild2, // #2 = $src2
8012 : /* 30539*/ OPC_CheckChild2Type, MVT::i32,
8013 : /* 30541*/ OPC_CheckType, MVT::i32,
8014 : /* 30543*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
8015 : /* 30545*/ OPC_EmitInteger, MVT::i32, 0,
8016 : /* 30548*/ OPC_EmitInteger, MVT::i32, 0,
8017 : /* 30551*/ OPC_EmitInteger, MVT::i32, 0,
8018 : /* 30554*/ OPC_EmitInteger, MVT::i32, 0,
8019 : /* 30557*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8020 : /* 30569*/ OPC_EmitInteger, MVT::i32, 0,
8021 : /* 30572*/ OPC_EmitInteger, MVT::i32, 0,
8022 : /* 30575*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8023 : /* 30587*/ OPC_EmitInteger, MVT::i32, 0,
8024 : /* 30590*/ OPC_EmitInteger, MVT::i32, 0,
8025 : /* 30593*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8026 : /* 30605*/ OPC_EmitInteger, MVT::i32, 1,
8027 : /* 30608*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
8028 : /* 30611*/ OPC_EmitInteger, MVT::i32, 0,
8029 : /* 30614*/ OPC_EmitInteger, MVT::i32, 0,
8030 : /* 30617*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_UINT_eg), 0,
8031 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
8032 : // Src: (AMDGPUbfe_u32:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2) - Complexity = 3
8033 : // Dst: (BFE_UINT_eg:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2)
8034 : /* 30641*/ /*SwitchOpcode*/ 105, TARGET_VAL(AMDGPUISD::BFE_I32),// ->30749
8035 : /* 30644*/ OPC_RecordChild0, // #0 = $src0
8036 : /* 30645*/ OPC_RecordChild1, // #1 = $src1
8037 : /* 30646*/ OPC_RecordChild2, // #2 = $src2
8038 : /* 30647*/ OPC_CheckChild2Type, MVT::i32,
8039 : /* 30649*/ OPC_CheckType, MVT::i32,
8040 : /* 30651*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
8041 : /* 30653*/ OPC_EmitInteger, MVT::i32, 0,
8042 : /* 30656*/ OPC_EmitInteger, MVT::i32, 0,
8043 : /* 30659*/ OPC_EmitInteger, MVT::i32, 0,
8044 : /* 30662*/ OPC_EmitInteger, MVT::i32, 0,
8045 : /* 30665*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8046 : /* 30677*/ OPC_EmitInteger, MVT::i32, 0,
8047 : /* 30680*/ OPC_EmitInteger, MVT::i32, 0,
8048 : /* 30683*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8049 : /* 30695*/ OPC_EmitInteger, MVT::i32, 0,
8050 : /* 30698*/ OPC_EmitInteger, MVT::i32, 0,
8051 : /* 30701*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8052 : /* 30713*/ OPC_EmitInteger, MVT::i32, 1,
8053 : /* 30716*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
8054 : /* 30719*/ OPC_EmitInteger, MVT::i32, 0,
8055 : /* 30722*/ OPC_EmitInteger, MVT::i32, 0,
8056 : /* 30725*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_INT_eg), 0,
8057 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
8058 : // Src: (AMDGPUbfe_i32:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2) - Complexity = 3
8059 : // Dst: (BFE_INT_eg:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2)
8060 : /* 30749*/ /*SwitchOpcode*/ 105, TARGET_VAL(AMDGPUISD::BFI),// ->30857
8061 : /* 30752*/ OPC_RecordChild0, // #0 = $src0
8062 : /* 30753*/ OPC_RecordChild1, // #1 = $src1
8063 : /* 30754*/ OPC_RecordChild2, // #2 = $src2
8064 : /* 30755*/ OPC_CheckChild2Type, MVT::i32,
8065 : /* 30757*/ OPC_CheckType, MVT::i32,
8066 : /* 30759*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
8067 : /* 30761*/ OPC_EmitInteger, MVT::i32, 0,
8068 : /* 30764*/ OPC_EmitInteger, MVT::i32, 0,
8069 : /* 30767*/ OPC_EmitInteger, MVT::i32, 0,
8070 : /* 30770*/ OPC_EmitInteger, MVT::i32, 0,
8071 : /* 30773*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8072 : /* 30785*/ OPC_EmitInteger, MVT::i32, 0,
8073 : /* 30788*/ OPC_EmitInteger, MVT::i32, 0,
8074 : /* 30791*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8075 : /* 30803*/ OPC_EmitInteger, MVT::i32, 0,
8076 : /* 30806*/ OPC_EmitInteger, MVT::i32, 0,
8077 : /* 30809*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8078 : /* 30821*/ OPC_EmitInteger, MVT::i32, 1,
8079 : /* 30824*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
8080 : /* 30827*/ OPC_EmitInteger, MVT::i32, 0,
8081 : /* 30830*/ OPC_EmitInteger, MVT::i32, 0,
8082 : /* 30833*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFI_INT_eg), 0,
8083 : MVT::i32, 18/*#Ops*/, 3, 4, 0, 5, 6, 7, 1, 8, 9, 10, 2, 11, 12, 13, 14, 15, 16, 17,
8084 : // Src: (AMDGPUbfi:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2) - Complexity = 3
8085 : // Dst: (BFI_INT_eg:{ *:[i32] } i32:{ *:[i32] }:$src0, i32:{ *:[i32] }:$src1, i32:{ *:[i32] }:$src2)
8086 : /* 30857*/ /*SwitchOpcode*/ 92|128,2/*348*/, TARGET_VAL(ISD::SIGN_EXTEND_INREG),// ->31209
8087 : /* 30861*/ OPC_RecordChild0, // #0 = $src
8088 : /* 30862*/ OPC_MoveChild1,
8089 : /* 30863*/ OPC_Scope, 109, /*->30974*/ // 3 children in Scope
8090 : /* 30865*/ OPC_CheckValueType, MVT::i1,
8091 : /* 30867*/ OPC_MoveParent,
8092 : /* 30868*/ OPC_CheckType, MVT::i32,
8093 : /* 30870*/ OPC_CheckPatternPredicate, 0, // (true) && (Subtarget->getGeneration() == AMDGPUSubtarget::EVERGREEN ||Subtarget->getGeneration() == AMDGPUSubtarget::NORTHERN_ISLANDS)
8094 : /* 30872*/ OPC_EmitInteger, MVT::i32, 0,
8095 : /* 30875*/ OPC_EmitInteger, MVT::i32, 0,
8096 : /* 30878*/ OPC_EmitInteger, MVT::i32, 0,
8097 : /* 30881*/ OPC_EmitInteger, MVT::i32, 0,
8098 : /* 30884*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8099 : /* 30896*/ OPC_EmitRegister, MVT::i32, R600::ZERO,
8100 : /* 30899*/ OPC_EmitInteger, MVT::i32, 0,
8101 : /* 30902*/ OPC_EmitInteger, MVT::i32, 0,
8102 : /* 30905*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8103 : /* 30917*/ OPC_EmitRegister, MVT::i32, R600::ONE_INT,
8104 : /* 30920*/ OPC_EmitInteger, MVT::i32, 0,
8105 : /* 30923*/ OPC_EmitInteger, MVT::i32, 0,
8106 : /* 30926*/ OPC_EmitInteger, MVT::i32, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/,
8107 : /* 30938*/ OPC_EmitInteger, MVT::i32, 1,
8108 : /* 30941*/ OPC_EmitRegister, MVT::i32, R600::PRED_SEL_OFF,
8109 : /* 30944*/ OPC_EmitInteger, MVT::i32, 0,
8110 : /* 30947*/ OPC_EmitInteger, MVT::i32, 0,
8111 : /* 30950*/ OPC_MorphNodeTo1, TARGET_VAL(R600::BFE_INT_eg), 0,
8112 : MVT::i32, 18/*#Ops*/, 1, 2, 0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
8113 : // Src: (sext_inreg:{ *:[i32] } i32:{ *:[i32] }:$src, i1:{ *:[Other] }) - Complexity = 3
8114 : // Dst: (BFE_INT_eg:{ *:[i32] } i32:{ *:[i32] }:$src, ZERO:{ *:[i32] }, ONE_INT:{ *:[i32] })
|