Coverage Report

Created: 2024-01-17 10:31

/src/build/lib/Target/WebAssembly/WebAssemblyGenDAGISel.inc
Line
Count
Source (jump to first uncovered line)
1
/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2
|*                                                                            *|
3
|* DAG Instruction Selector for the WebAssembly 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
127k
{
53
  // Some target values are emitted as 2 bytes, TARGET_VAL handles
54
  // this.
55
229M
  #define TARGET_VAL(X) X & 255, unsigned(X) >> 8
56
127k
  static const unsigned char MatcherTable[] = {
57
127k
 OPC_SwitchOpcode , 44|128,9, TARGET_VAL(ISD::ZERO_EXTEND),
58
127k
  OPC_Scope, 32|128,9, 
59
127k
   OPC_MoveChild0,
60
127k
   OPC_SwitchOpcode , 124, TARGET_VAL(ISD::AssertZext),
61
127k
    OPC_MoveChild0,
62
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP),
63
127k
    OPC_RecordMemRef,
64
127k
    OPC_RecordNode,
65
127k
    OPC_CheckFoldableChainNode,
66
127k
    OPC_RecordChild1,
67
127k
    OPC_Scope, 56, 
68
127k
     OPC_CheckChild1TypeI32,
69
127k
     OPC_MoveChild2,
70
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
71
127k
     OPC_RecordChild0,
72
127k
     OPC_MoveSibling3,
73
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
74
127k
     OPC_RecordChild0,
75
127k
     OPC_MoveParent,
76
127k
     OPC_Scope, 20, 
77
127k
      OPC_CheckPredicate2, 
78
127k
      OPC_MoveParent,
79
127k
      OPC_MoveParent,
80
127k
      OPC_CheckPatternPredicate1,
81
127k
      OPC_CheckComplexPat0, /*#*/1,
82
127k
      OPC_EmitMergeInputChains1_0,
83
127k
      OPC_EmitInteger32, 0, 
84
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
85
127k
                    MVT::i64, 5, 6, 4, 5, 2, 3, 
86
127k
     20, 
87
127k
      OPC_CheckPredicate1, 
88
127k
      OPC_MoveParent,
89
127k
      OPC_MoveParent,
90
127k
      OPC_CheckPatternPredicate1,
91
127k
      OPC_CheckComplexPat0, /*#*/1,
92
127k
      OPC_EmitMergeInputChains1_0,
93
127k
      OPC_EmitInteger32, 0, 
94
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
95
127k
                    MVT::i64, 5, 6, 4, 5, 2, 3, 
96
127k
     0, 
97
127k
    56, 
98
127k
     OPC_CheckChild1TypeI64,
99
127k
     OPC_MoveChild2,
100
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
101
127k
     OPC_RecordChild0,
102
127k
     OPC_MoveSibling3,
103
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
104
127k
     OPC_RecordChild0,
105
127k
     OPC_MoveParent,
106
127k
     OPC_Scope, 20, 
107
127k
      OPC_CheckPredicate2, 
108
127k
      OPC_MoveParent,
109
127k
      OPC_MoveParent,
110
127k
      OPC_CheckPatternPredicate2,
111
127k
      OPC_CheckComplexPat1, /*#*/1,
112
127k
      OPC_EmitMergeInputChains1_0,
113
127k
      OPC_EmitInteger32, 0, 
114
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
115
127k
                    MVT::i64, 5, 6, 4, 5, 2, 3, 
116
127k
     20, 
117
127k
      OPC_CheckPredicate1, 
118
127k
      OPC_MoveParent,
119
127k
      OPC_MoveParent,
120
127k
      OPC_CheckPatternPredicate2,
121
127k
      OPC_CheckComplexPat1, /*#*/1,
122
127k
      OPC_EmitMergeInputChains1_0,
123
127k
      OPC_EmitInteger32, 0, 
124
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
125
127k
                    MVT::i64, 5, 6, 4, 5, 2, 3, 
126
127k
     0, 
127
127k
    0, 
128
127k
   69, TARGET_VAL(ISD::ATOMIC_CMP_SWAP),
129
127k
    OPC_RecordMemRef,
130
127k
    OPC_RecordNode,
131
127k
    OPC_RecordChild1,
132
127k
    OPC_Scope, 31, 
133
127k
     OPC_CheckChild1TypeI32,
134
127k
     OPC_MoveChild2,
135
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
136
127k
     OPC_RecordChild0,
137
127k
     OPC_MoveSibling3,
138
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
139
127k
     OPC_RecordChild0,
140
127k
     OPC_MoveParent,
141
127k
     OPC_CheckPredicate3, 
142
127k
     OPC_MoveParent,
143
127k
     OPC_CheckPatternPredicate1,
144
127k
     OPC_CheckComplexPat0, /*#*/1,
145
127k
     OPC_EmitMergeInputChains1_0,
146
127k
     OPC_EmitInteger32, 0, 
147
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
148
127k
                   MVT::i64, 5, 6, 4, 5, 2, 3, 
149
127k
    31, 
150
127k
     OPC_CheckChild1TypeI64,
151
127k
     OPC_MoveChild2,
152
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
153
127k
     OPC_RecordChild0,
154
127k
     OPC_MoveSibling3,
155
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
156
127k
     OPC_RecordChild0,
157
127k
     OPC_MoveParent,
158
127k
     OPC_CheckPredicate3, 
159
127k
     OPC_MoveParent,
160
127k
     OPC_CheckPatternPredicate2,
161
127k
     OPC_CheckComplexPat1, /*#*/1,
162
127k
     OPC_EmitMergeInputChains1_0,
163
127k
     OPC_EmitInteger32, 0, 
164
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
165
127k
                   MVT::i64, 5, 6, 4, 5, 2, 3, 
166
127k
    0, 
167
127k
   11|128,1, TARGET_VAL(ISD::ATOMIC_LOAD_ADD),
168
127k
    OPC_RecordMemRef,
169
127k
    OPC_RecordNode,
170
127k
    OPC_RecordChild1,
171
127k
    OPC_Scope, 66, 
172
127k
     OPC_CheckChild1TypeI32,
173
127k
     OPC_MoveChild2,
174
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
175
127k
     OPC_RecordChild0,
176
127k
     OPC_MoveParent,
177
127k
     OPC_Scope, 18, 
178
127k
      OPC_CheckPredicate2, 
179
127k
      OPC_MoveParent,
180
127k
      OPC_CheckPatternPredicate1,
181
127k
      OPC_CheckComplexPat0, /*#*/1,
182
127k
      OPC_EmitMergeInputChains1_0,
183
127k
      OPC_EmitInteger32, 0, 
184
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
185
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
186
127k
     18, 
187
127k
      OPC_CheckPredicate1, 
188
127k
      OPC_MoveParent,
189
127k
      OPC_CheckPatternPredicate1,
190
127k
      OPC_CheckComplexPat0, /*#*/1,
191
127k
      OPC_EmitMergeInputChains1_0,
192
127k
      OPC_EmitInteger32, 0, 
193
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
194
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
195
127k
     18, 
196
127k
      OPC_CheckPredicate3, 
197
127k
      OPC_MoveParent,
198
127k
      OPC_CheckPatternPredicate1,
199
127k
      OPC_CheckComplexPat0, /*#*/1,
200
127k
      OPC_EmitMergeInputChains1_0,
201
127k
      OPC_EmitInteger32, 0, 
202
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
203
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
204
127k
     0, 
205
127k
    66, 
206
127k
     OPC_CheckChild1TypeI64,
207
127k
     OPC_MoveChild2,
208
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
209
127k
     OPC_RecordChild0,
210
127k
     OPC_MoveParent,
211
127k
     OPC_Scope, 18, 
212
127k
      OPC_CheckPredicate2, 
213
127k
      OPC_MoveParent,
214
127k
      OPC_CheckPatternPredicate2,
215
127k
      OPC_CheckComplexPat1, /*#*/1,
216
127k
      OPC_EmitMergeInputChains1_0,
217
127k
      OPC_EmitInteger32, 0, 
218
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
219
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
220
127k
     18, 
221
127k
      OPC_CheckPredicate1, 
222
127k
      OPC_MoveParent,
223
127k
      OPC_CheckPatternPredicate2,
224
127k
      OPC_CheckComplexPat1, /*#*/1,
225
127k
      OPC_EmitMergeInputChains1_0,
226
127k
      OPC_EmitInteger32, 0, 
227
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
228
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
229
127k
     18, 
230
127k
      OPC_CheckPredicate3, 
231
127k
      OPC_MoveParent,
232
127k
      OPC_CheckPatternPredicate2,
233
127k
      OPC_CheckComplexPat1, /*#*/1,
234
127k
      OPC_EmitMergeInputChains1_0,
235
127k
      OPC_EmitInteger32, 0, 
236
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
237
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
238
127k
     0, 
239
127k
    0, 
240
127k
   11|128,1, TARGET_VAL(ISD::ATOMIC_LOAD_SUB),
241
127k
    OPC_RecordMemRef,
242
127k
    OPC_RecordNode,
243
127k
    OPC_RecordChild1,
244
127k
    OPC_Scope, 66, 
245
127k
     OPC_CheckChild1TypeI32,
246
127k
     OPC_MoveChild2,
247
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
248
127k
     OPC_RecordChild0,
249
127k
     OPC_MoveParent,
250
127k
     OPC_Scope, 18, 
251
127k
      OPC_CheckPredicate2, 
252
127k
      OPC_MoveParent,
253
127k
      OPC_CheckPatternPredicate1,
254
127k
      OPC_CheckComplexPat0, /*#*/1,
255
127k
      OPC_EmitMergeInputChains1_0,
256
127k
      OPC_EmitInteger32, 0, 
257
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
258
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
259
127k
     18, 
260
127k
      OPC_CheckPredicate1, 
261
127k
      OPC_MoveParent,
262
127k
      OPC_CheckPatternPredicate1,
263
127k
      OPC_CheckComplexPat0, /*#*/1,
264
127k
      OPC_EmitMergeInputChains1_0,
265
127k
      OPC_EmitInteger32, 0, 
266
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
267
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
268
127k
     18, 
269
127k
      OPC_CheckPredicate3, 
270
127k
      OPC_MoveParent,
271
127k
      OPC_CheckPatternPredicate1,
272
127k
      OPC_CheckComplexPat0, /*#*/1,
273
127k
      OPC_EmitMergeInputChains1_0,
274
127k
      OPC_EmitInteger32, 0, 
275
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
276
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
277
127k
     0, 
278
127k
    66, 
279
127k
     OPC_CheckChild1TypeI64,
280
127k
     OPC_MoveChild2,
281
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
282
127k
     OPC_RecordChild0,
283
127k
     OPC_MoveParent,
284
127k
     OPC_Scope, 18, 
285
127k
      OPC_CheckPredicate2, 
286
127k
      OPC_MoveParent,
287
127k
      OPC_CheckPatternPredicate2,
288
127k
      OPC_CheckComplexPat1, /*#*/1,
289
127k
      OPC_EmitMergeInputChains1_0,
290
127k
      OPC_EmitInteger32, 0, 
291
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
292
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
293
127k
     18, 
294
127k
      OPC_CheckPredicate1, 
295
127k
      OPC_MoveParent,
296
127k
      OPC_CheckPatternPredicate2,
297
127k
      OPC_CheckComplexPat1, /*#*/1,
298
127k
      OPC_EmitMergeInputChains1_0,
299
127k
      OPC_EmitInteger32, 0, 
300
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
301
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
302
127k
     18, 
303
127k
      OPC_CheckPredicate3, 
304
127k
      OPC_MoveParent,
305
127k
      OPC_CheckPatternPredicate2,
306
127k
      OPC_CheckComplexPat1, /*#*/1,
307
127k
      OPC_EmitMergeInputChains1_0,
308
127k
      OPC_EmitInteger32, 0, 
309
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
310
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
311
127k
     0, 
312
127k
    0, 
313
127k
   11|128,1, TARGET_VAL(ISD::ATOMIC_LOAD_AND),
314
127k
    OPC_RecordMemRef,
315
127k
    OPC_RecordNode,
316
127k
    OPC_RecordChild1,
317
127k
    OPC_Scope, 66, 
318
127k
     OPC_CheckChild1TypeI32,
319
127k
     OPC_MoveChild2,
320
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
321
127k
     OPC_RecordChild0,
322
127k
     OPC_MoveParent,
323
127k
     OPC_Scope, 18, 
324
127k
      OPC_CheckPredicate2, 
325
127k
      OPC_MoveParent,
326
127k
      OPC_CheckPatternPredicate1,
327
127k
      OPC_CheckComplexPat0, /*#*/1,
328
127k
      OPC_EmitMergeInputChains1_0,
329
127k
      OPC_EmitInteger32, 0, 
330
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
331
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
332
127k
     18, 
333
127k
      OPC_CheckPredicate1, 
334
127k
      OPC_MoveParent,
335
127k
      OPC_CheckPatternPredicate1,
336
127k
      OPC_CheckComplexPat0, /*#*/1,
337
127k
      OPC_EmitMergeInputChains1_0,
338
127k
      OPC_EmitInteger32, 0, 
339
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
340
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
341
127k
     18, 
342
127k
      OPC_CheckPredicate3, 
343
127k
      OPC_MoveParent,
344
127k
      OPC_CheckPatternPredicate1,
345
127k
      OPC_CheckComplexPat0, /*#*/1,
346
127k
      OPC_EmitMergeInputChains1_0,
347
127k
      OPC_EmitInteger32, 0, 
348
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
349
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
350
127k
     0, 
351
127k
    66, 
352
127k
     OPC_CheckChild1TypeI64,
353
127k
     OPC_MoveChild2,
354
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
355
127k
     OPC_RecordChild0,
356
127k
     OPC_MoveParent,
357
127k
     OPC_Scope, 18, 
358
127k
      OPC_CheckPredicate2, 
359
127k
      OPC_MoveParent,
360
127k
      OPC_CheckPatternPredicate2,
361
127k
      OPC_CheckComplexPat1, /*#*/1,
362
127k
      OPC_EmitMergeInputChains1_0,
363
127k
      OPC_EmitInteger32, 0, 
364
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
365
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
366
127k
     18, 
367
127k
      OPC_CheckPredicate1, 
368
127k
      OPC_MoveParent,
369
127k
      OPC_CheckPatternPredicate2,
370
127k
      OPC_CheckComplexPat1, /*#*/1,
371
127k
      OPC_EmitMergeInputChains1_0,
372
127k
      OPC_EmitInteger32, 0, 
373
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
374
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
375
127k
     18, 
376
127k
      OPC_CheckPredicate3, 
377
127k
      OPC_MoveParent,
378
127k
      OPC_CheckPatternPredicate2,
379
127k
      OPC_CheckComplexPat1, /*#*/1,
380
127k
      OPC_EmitMergeInputChains1_0,
381
127k
      OPC_EmitInteger32, 0, 
382
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
383
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
384
127k
     0, 
385
127k
    0, 
386
127k
   11|128,1, TARGET_VAL(ISD::ATOMIC_LOAD_OR),
387
127k
    OPC_RecordMemRef,
388
127k
    OPC_RecordNode,
389
127k
    OPC_RecordChild1,
390
127k
    OPC_Scope, 66, 
391
127k
     OPC_CheckChild1TypeI32,
392
127k
     OPC_MoveChild2,
393
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
394
127k
     OPC_RecordChild0,
395
127k
     OPC_MoveParent,
396
127k
     OPC_Scope, 18, 
397
127k
      OPC_CheckPredicate2, 
398
127k
      OPC_MoveParent,
399
127k
      OPC_CheckPatternPredicate1,
400
127k
      OPC_CheckComplexPat0, /*#*/1,
401
127k
      OPC_EmitMergeInputChains1_0,
402
127k
      OPC_EmitInteger32, 0, 
403
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
404
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
405
127k
     18, 
406
127k
      OPC_CheckPredicate1, 
407
127k
      OPC_MoveParent,
408
127k
      OPC_CheckPatternPredicate1,
409
127k
      OPC_CheckComplexPat0, /*#*/1,
410
127k
      OPC_EmitMergeInputChains1_0,
411
127k
      OPC_EmitInteger32, 0, 
412
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
413
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
414
127k
     18, 
415
127k
      OPC_CheckPredicate3, 
416
127k
      OPC_MoveParent,
417
127k
      OPC_CheckPatternPredicate1,
418
127k
      OPC_CheckComplexPat0, /*#*/1,
419
127k
      OPC_EmitMergeInputChains1_0,
420
127k
      OPC_EmitInteger32, 0, 
421
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
422
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
423
127k
     0, 
424
127k
    66, 
425
127k
     OPC_CheckChild1TypeI64,
426
127k
     OPC_MoveChild2,
427
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
428
127k
     OPC_RecordChild0,
429
127k
     OPC_MoveParent,
430
127k
     OPC_Scope, 18, 
431
127k
      OPC_CheckPredicate2, 
432
127k
      OPC_MoveParent,
433
127k
      OPC_CheckPatternPredicate2,
434
127k
      OPC_CheckComplexPat1, /*#*/1,
435
127k
      OPC_EmitMergeInputChains1_0,
436
127k
      OPC_EmitInteger32, 0, 
437
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
438
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
439
127k
     18, 
440
127k
      OPC_CheckPredicate1, 
441
127k
      OPC_MoveParent,
442
127k
      OPC_CheckPatternPredicate2,
443
127k
      OPC_CheckComplexPat1, /*#*/1,
444
127k
      OPC_EmitMergeInputChains1_0,
445
127k
      OPC_EmitInteger32, 0, 
446
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
447
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
448
127k
     18, 
449
127k
      OPC_CheckPredicate3, 
450
127k
      OPC_MoveParent,
451
127k
      OPC_CheckPatternPredicate2,
452
127k
      OPC_CheckComplexPat1, /*#*/1,
453
127k
      OPC_EmitMergeInputChains1_0,
454
127k
      OPC_EmitInteger32, 0, 
455
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
456
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
457
127k
     0, 
458
127k
    0, 
459
127k
   11|128,1, TARGET_VAL(ISD::ATOMIC_LOAD_XOR),
460
127k
    OPC_RecordMemRef,
461
127k
    OPC_RecordNode,
462
127k
    OPC_RecordChild1,
463
127k
    OPC_Scope, 66, 
464
127k
     OPC_CheckChild1TypeI32,
465
127k
     OPC_MoveChild2,
466
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
467
127k
     OPC_RecordChild0,
468
127k
     OPC_MoveParent,
469
127k
     OPC_Scope, 18, 
470
127k
      OPC_CheckPredicate2, 
471
127k
      OPC_MoveParent,
472
127k
      OPC_CheckPatternPredicate1,
473
127k
      OPC_CheckComplexPat0, /*#*/1,
474
127k
      OPC_EmitMergeInputChains1_0,
475
127k
      OPC_EmitInteger32, 0, 
476
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
477
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
478
127k
     18, 
479
127k
      OPC_CheckPredicate1, 
480
127k
      OPC_MoveParent,
481
127k
      OPC_CheckPatternPredicate1,
482
127k
      OPC_CheckComplexPat0, /*#*/1,
483
127k
      OPC_EmitMergeInputChains1_0,
484
127k
      OPC_EmitInteger32, 0, 
485
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
486
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
487
127k
     18, 
488
127k
      OPC_CheckPredicate3, 
489
127k
      OPC_MoveParent,
490
127k
      OPC_CheckPatternPredicate1,
491
127k
      OPC_CheckComplexPat0, /*#*/1,
492
127k
      OPC_EmitMergeInputChains1_0,
493
127k
      OPC_EmitInteger32, 0, 
494
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
495
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
496
127k
     0, 
497
127k
    66, 
498
127k
     OPC_CheckChild1TypeI64,
499
127k
     OPC_MoveChild2,
500
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
501
127k
     OPC_RecordChild0,
502
127k
     OPC_MoveParent,
503
127k
     OPC_Scope, 18, 
504
127k
      OPC_CheckPredicate2, 
505
127k
      OPC_MoveParent,
506
127k
      OPC_CheckPatternPredicate2,
507
127k
      OPC_CheckComplexPat1, /*#*/1,
508
127k
      OPC_EmitMergeInputChains1_0,
509
127k
      OPC_EmitInteger32, 0, 
510
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
511
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
512
127k
     18, 
513
127k
      OPC_CheckPredicate1, 
514
127k
      OPC_MoveParent,
515
127k
      OPC_CheckPatternPredicate2,
516
127k
      OPC_CheckComplexPat1, /*#*/1,
517
127k
      OPC_EmitMergeInputChains1_0,
518
127k
      OPC_EmitInteger32, 0, 
519
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
520
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
521
127k
     18, 
522
127k
      OPC_CheckPredicate3, 
523
127k
      OPC_MoveParent,
524
127k
      OPC_CheckPatternPredicate2,
525
127k
      OPC_CheckComplexPat1, /*#*/1,
526
127k
      OPC_EmitMergeInputChains1_0,
527
127k
      OPC_EmitInteger32, 0, 
528
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
529
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
530
127k
     0, 
531
127k
    0, 
532
127k
   11|128,1, TARGET_VAL(ISD::ATOMIC_SWAP),
533
127k
    OPC_RecordMemRef,
534
127k
    OPC_RecordNode,
535
127k
    OPC_RecordChild1,
536
127k
    OPC_Scope, 66, 
537
127k
     OPC_CheckChild1TypeI32,
538
127k
     OPC_MoveChild2,
539
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
540
127k
     OPC_RecordChild0,
541
127k
     OPC_MoveParent,
542
127k
     OPC_Scope, 18, 
543
127k
      OPC_CheckPredicate2, 
544
127k
      OPC_MoveParent,
545
127k
      OPC_CheckPatternPredicate1,
546
127k
      OPC_CheckComplexPat0, /*#*/1,
547
127k
      OPC_EmitMergeInputChains1_0,
548
127k
      OPC_EmitInteger32, 0, 
549
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
550
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
551
127k
     18, 
552
127k
      OPC_CheckPredicate1, 
553
127k
      OPC_MoveParent,
554
127k
      OPC_CheckPatternPredicate1,
555
127k
      OPC_CheckComplexPat0, /*#*/1,
556
127k
      OPC_EmitMergeInputChains1_0,
557
127k
      OPC_EmitInteger32, 0, 
558
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
559
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
560
127k
     18, 
561
127k
      OPC_CheckPredicate3, 
562
127k
      OPC_MoveParent,
563
127k
      OPC_CheckPatternPredicate1,
564
127k
      OPC_CheckComplexPat0, /*#*/1,
565
127k
      OPC_EmitMergeInputChains1_0,
566
127k
      OPC_EmitInteger32, 0, 
567
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
568
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
569
127k
     0, 
570
127k
    66, 
571
127k
     OPC_CheckChild1TypeI64,
572
127k
     OPC_MoveChild2,
573
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
574
127k
     OPC_RecordChild0,
575
127k
     OPC_MoveParent,
576
127k
     OPC_Scope, 18, 
577
127k
      OPC_CheckPredicate2, 
578
127k
      OPC_MoveParent,
579
127k
      OPC_CheckPatternPredicate2,
580
127k
      OPC_CheckComplexPat1, /*#*/1,
581
127k
      OPC_EmitMergeInputChains1_0,
582
127k
      OPC_EmitInteger32, 0, 
583
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
584
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
585
127k
     18, 
586
127k
      OPC_CheckPredicate1, 
587
127k
      OPC_MoveParent,
588
127k
      OPC_CheckPatternPredicate2,
589
127k
      OPC_CheckComplexPat1, /*#*/1,
590
127k
      OPC_EmitMergeInputChains1_0,
591
127k
      OPC_EmitInteger32, 0, 
592
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
593
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
594
127k
     18, 
595
127k
      OPC_CheckPredicate3, 
596
127k
      OPC_MoveParent,
597
127k
      OPC_CheckPatternPredicate2,
598
127k
      OPC_CheckComplexPat1, /*#*/1,
599
127k
      OPC_EmitMergeInputChains1_0,
600
127k
      OPC_EmitInteger32, 0, 
601
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW32_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
602
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
603
127k
     0, 
604
127k
    0, 
605
127k
   121, TARGET_VAL(ISD::ATOMIC_LOAD),
606
127k
    OPC_RecordMemRef,
607
127k
    OPC_RecordNode,
608
127k
    OPC_RecordChild1,
609
127k
    OPC_Scope, 57, 
610
127k
     OPC_CheckChild1TypeI32,
611
127k
     OPC_Scope, 17, 
612
127k
      OPC_CheckPredicate2, 
613
127k
      OPC_MoveParent,
614
127k
      OPC_CheckPatternPredicate3,
615
127k
      OPC_CheckComplexPat0, /*#*/1,
616
127k
      OPC_EmitMergeInputChains1_0,
617
127k
      OPC_EmitInteger32, 0, 
618
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
619
127k
                    MVT::i64, 3, 4, 2, 3, 
620
127k
     17, 
621
127k
      OPC_CheckPredicate1, 
622
127k
      OPC_MoveParent,
623
127k
      OPC_CheckPatternPredicate3,
624
127k
      OPC_CheckComplexPat0, /*#*/1,
625
127k
      OPC_EmitMergeInputChains1_0,
626
127k
      OPC_EmitInteger32, 0, 
627
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
628
127k
                    MVT::i64, 3, 4, 2, 3, 
629
127k
     17, 
630
127k
      OPC_CheckPredicate3, 
631
127k
      OPC_MoveParent,
632
127k
      OPC_CheckPatternPredicate3,
633
127k
      OPC_CheckComplexPat0, /*#*/1,
634
127k
      OPC_EmitMergeInputChains1_0,
635
127k
      OPC_EmitInteger32, 0, 
636
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
637
127k
                    MVT::i64, 3, 4, 2, 3, 
638
127k
     0, 
639
127k
    57, 
640
127k
     OPC_CheckChild1TypeI64,
641
127k
     OPC_Scope, 17, 
642
127k
      OPC_CheckPredicate2, 
643
127k
      OPC_MoveParent,
644
127k
      OPC_CheckPatternPredicate4,
645
127k
      OPC_CheckComplexPat1, /*#*/1,
646
127k
      OPC_EmitMergeInputChains1_0,
647
127k
      OPC_EmitInteger32, 0, 
648
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
649
127k
                    MVT::i64, 3, 4, 2, 3, 
650
127k
     17, 
651
127k
      OPC_CheckPredicate1, 
652
127k
      OPC_MoveParent,
653
127k
      OPC_CheckPatternPredicate4,
654
127k
      OPC_CheckComplexPat1, /*#*/1,
655
127k
      OPC_EmitMergeInputChains1_0,
656
127k
      OPC_EmitInteger32, 0, 
657
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
658
127k
                    MVT::i64, 3, 4, 2, 3, 
659
127k
     17, 
660
127k
      OPC_CheckPredicate3, 
661
127k
      OPC_MoveParent,
662
127k
      OPC_CheckPatternPredicate4,
663
127k
      OPC_CheckComplexPat1, /*#*/1,
664
127k
      OPC_EmitMergeInputChains1_0,
665
127k
      OPC_EmitInteger32, 0, 
666
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
667
127k
                    MVT::i64, 3, 4, 2, 3, 
668
127k
     0, 
669
127k
    0, 
670
127k
   0,
671
127k
  7, 
672
127k
   OPC_RecordChild0,
673
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_EXTEND_U_I32),
674
127k
                 MVT::i64, 1, 0, 
675
127k
  0, 
676
127k
 86|128,6, TARGET_VAL(ISD::ANY_EXTEND),
677
127k
  OPC_Scope, 74|128,6, 
678
127k
   OPC_MoveChild0,
679
127k
   OPC_SwitchOpcode , 124, TARGET_VAL(ISD::AssertZext),
680
127k
    OPC_MoveChild0,
681
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::ATOMIC_CMP_SWAP),
682
127k
    OPC_RecordMemRef,
683
127k
    OPC_RecordNode,
684
127k
    OPC_CheckFoldableChainNode,
685
127k
    OPC_RecordChild1,
686
127k
    OPC_Scope, 56, 
687
127k
     OPC_CheckChild1TypeI32,
688
127k
     OPC_MoveChild2,
689
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
690
127k
     OPC_RecordChild0,
691
127k
     OPC_MoveSibling3,
692
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
693
127k
     OPC_RecordChild0,
694
127k
     OPC_MoveParent,
695
127k
     OPC_Scope, 20, 
696
127k
      OPC_CheckPredicate2, 
697
127k
      OPC_MoveParent,
698
127k
      OPC_MoveParent,
699
127k
      OPC_CheckPatternPredicate1,
700
127k
      OPC_CheckComplexPat0, /*#*/1,
701
127k
      OPC_EmitMergeInputChains1_0,
702
127k
      OPC_EmitInteger32, 0, 
703
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
704
127k
                    MVT::i64, 5, 6, 4, 5, 2, 3, 
705
127k
     20, 
706
127k
      OPC_CheckPredicate1, 
707
127k
      OPC_MoveParent,
708
127k
      OPC_MoveParent,
709
127k
      OPC_CheckPatternPredicate1,
710
127k
      OPC_CheckComplexPat0, /*#*/1,
711
127k
      OPC_EmitMergeInputChains1_0,
712
127k
      OPC_EmitInteger32, 0, 
713
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
714
127k
                    MVT::i64, 5, 6, 4, 5, 2, 3, 
715
127k
     0, 
716
127k
    56, 
717
127k
     OPC_CheckChild1TypeI64,
718
127k
     OPC_MoveChild2,
719
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
720
127k
     OPC_RecordChild0,
721
127k
     OPC_MoveSibling3,
722
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
723
127k
     OPC_RecordChild0,
724
127k
     OPC_MoveParent,
725
127k
     OPC_Scope, 20, 
726
127k
      OPC_CheckPredicate2, 
727
127k
      OPC_MoveParent,
728
127k
      OPC_MoveParent,
729
127k
      OPC_CheckPatternPredicate2,
730
127k
      OPC_CheckComplexPat1, /*#*/1,
731
127k
      OPC_EmitMergeInputChains1_0,
732
127k
      OPC_EmitInteger32, 0, 
733
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
734
127k
                    MVT::i64, 5, 6, 4, 5, 2, 3, 
735
127k
     20, 
736
127k
      OPC_CheckPredicate1, 
737
127k
      OPC_MoveParent,
738
127k
      OPC_MoveParent,
739
127k
      OPC_CheckPatternPredicate2,
740
127k
      OPC_CheckComplexPat1, /*#*/1,
741
127k
      OPC_EmitMergeInputChains1_0,
742
127k
      OPC_EmitInteger32, 0, 
743
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
744
127k
                    MVT::i64, 5, 6, 4, 5, 2, 3, 
745
127k
     0, 
746
127k
    0, 
747
127k
   101, TARGET_VAL(ISD::ATOMIC_LOAD_ADD),
748
127k
    OPC_RecordMemRef,
749
127k
    OPC_RecordNode,
750
127k
    OPC_RecordChild1,
751
127k
    OPC_Scope, 47, 
752
127k
     OPC_CheckChild1TypeI32,
753
127k
     OPC_MoveChild2,
754
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
755
127k
     OPC_RecordChild0,
756
127k
     OPC_MoveParent,
757
127k
     OPC_Scope, 18, 
758
127k
      OPC_CheckPredicate2, 
759
127k
      OPC_MoveParent,
760
127k
      OPC_CheckPatternPredicate1,
761
127k
      OPC_CheckComplexPat0, /*#*/1,
762
127k
      OPC_EmitMergeInputChains1_0,
763
127k
      OPC_EmitInteger32, 0, 
764
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
765
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
766
127k
     18, 
767
127k
      OPC_CheckPredicate1, 
768
127k
      OPC_MoveParent,
769
127k
      OPC_CheckPatternPredicate1,
770
127k
      OPC_CheckComplexPat0, /*#*/1,
771
127k
      OPC_EmitMergeInputChains1_0,
772
127k
      OPC_EmitInteger32, 0, 
773
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
774
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
775
127k
     0, 
776
127k
    47, 
777
127k
     OPC_CheckChild1TypeI64,
778
127k
     OPC_MoveChild2,
779
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
780
127k
     OPC_RecordChild0,
781
127k
     OPC_MoveParent,
782
127k
     OPC_Scope, 18, 
783
127k
      OPC_CheckPredicate2, 
784
127k
      OPC_MoveParent,
785
127k
      OPC_CheckPatternPredicate2,
786
127k
      OPC_CheckComplexPat1, /*#*/1,
787
127k
      OPC_EmitMergeInputChains1_0,
788
127k
      OPC_EmitInteger32, 0, 
789
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
790
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
791
127k
     18, 
792
127k
      OPC_CheckPredicate1, 
793
127k
      OPC_MoveParent,
794
127k
      OPC_CheckPatternPredicate2,
795
127k
      OPC_CheckComplexPat1, /*#*/1,
796
127k
      OPC_EmitMergeInputChains1_0,
797
127k
      OPC_EmitInteger32, 0, 
798
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
799
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
800
127k
     0, 
801
127k
    0, 
802
127k
   101, TARGET_VAL(ISD::ATOMIC_LOAD_SUB),
803
127k
    OPC_RecordMemRef,
804
127k
    OPC_RecordNode,
805
127k
    OPC_RecordChild1,
806
127k
    OPC_Scope, 47, 
807
127k
     OPC_CheckChild1TypeI32,
808
127k
     OPC_MoveChild2,
809
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
810
127k
     OPC_RecordChild0,
811
127k
     OPC_MoveParent,
812
127k
     OPC_Scope, 18, 
813
127k
      OPC_CheckPredicate2, 
814
127k
      OPC_MoveParent,
815
127k
      OPC_CheckPatternPredicate1,
816
127k
      OPC_CheckComplexPat0, /*#*/1,
817
127k
      OPC_EmitMergeInputChains1_0,
818
127k
      OPC_EmitInteger32, 0, 
819
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
820
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
821
127k
     18, 
822
127k
      OPC_CheckPredicate1, 
823
127k
      OPC_MoveParent,
824
127k
      OPC_CheckPatternPredicate1,
825
127k
      OPC_CheckComplexPat0, /*#*/1,
826
127k
      OPC_EmitMergeInputChains1_0,
827
127k
      OPC_EmitInteger32, 0, 
828
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
829
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
830
127k
     0, 
831
127k
    47, 
832
127k
     OPC_CheckChild1TypeI64,
833
127k
     OPC_MoveChild2,
834
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
835
127k
     OPC_RecordChild0,
836
127k
     OPC_MoveParent,
837
127k
     OPC_Scope, 18, 
838
127k
      OPC_CheckPredicate2, 
839
127k
      OPC_MoveParent,
840
127k
      OPC_CheckPatternPredicate2,
841
127k
      OPC_CheckComplexPat1, /*#*/1,
842
127k
      OPC_EmitMergeInputChains1_0,
843
127k
      OPC_EmitInteger32, 0, 
844
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
845
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
846
127k
     18, 
847
127k
      OPC_CheckPredicate1, 
848
127k
      OPC_MoveParent,
849
127k
      OPC_CheckPatternPredicate2,
850
127k
      OPC_CheckComplexPat1, /*#*/1,
851
127k
      OPC_EmitMergeInputChains1_0,
852
127k
      OPC_EmitInteger32, 0, 
853
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
854
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
855
127k
     0, 
856
127k
    0, 
857
127k
   101, TARGET_VAL(ISD::ATOMIC_LOAD_AND),
858
127k
    OPC_RecordMemRef,
859
127k
    OPC_RecordNode,
860
127k
    OPC_RecordChild1,
861
127k
    OPC_Scope, 47, 
862
127k
     OPC_CheckChild1TypeI32,
863
127k
     OPC_MoveChild2,
864
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
865
127k
     OPC_RecordChild0,
866
127k
     OPC_MoveParent,
867
127k
     OPC_Scope, 18, 
868
127k
      OPC_CheckPredicate2, 
869
127k
      OPC_MoveParent,
870
127k
      OPC_CheckPatternPredicate1,
871
127k
      OPC_CheckComplexPat0, /*#*/1,
872
127k
      OPC_EmitMergeInputChains1_0,
873
127k
      OPC_EmitInteger32, 0, 
874
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
875
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
876
127k
     18, 
877
127k
      OPC_CheckPredicate1, 
878
127k
      OPC_MoveParent,
879
127k
      OPC_CheckPatternPredicate1,
880
127k
      OPC_CheckComplexPat0, /*#*/1,
881
127k
      OPC_EmitMergeInputChains1_0,
882
127k
      OPC_EmitInteger32, 0, 
883
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
884
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
885
127k
     0, 
886
127k
    47, 
887
127k
     OPC_CheckChild1TypeI64,
888
127k
     OPC_MoveChild2,
889
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
890
127k
     OPC_RecordChild0,
891
127k
     OPC_MoveParent,
892
127k
     OPC_Scope, 18, 
893
127k
      OPC_CheckPredicate2, 
894
127k
      OPC_MoveParent,
895
127k
      OPC_CheckPatternPredicate2,
896
127k
      OPC_CheckComplexPat1, /*#*/1,
897
127k
      OPC_EmitMergeInputChains1_0,
898
127k
      OPC_EmitInteger32, 0, 
899
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
900
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
901
127k
     18, 
902
127k
      OPC_CheckPredicate1, 
903
127k
      OPC_MoveParent,
904
127k
      OPC_CheckPatternPredicate2,
905
127k
      OPC_CheckComplexPat1, /*#*/1,
906
127k
      OPC_EmitMergeInputChains1_0,
907
127k
      OPC_EmitInteger32, 0, 
908
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
909
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
910
127k
     0, 
911
127k
    0, 
912
127k
   101, TARGET_VAL(ISD::ATOMIC_LOAD_OR),
913
127k
    OPC_RecordMemRef,
914
127k
    OPC_RecordNode,
915
127k
    OPC_RecordChild1,
916
127k
    OPC_Scope, 47, 
917
127k
     OPC_CheckChild1TypeI32,
918
127k
     OPC_MoveChild2,
919
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
920
127k
     OPC_RecordChild0,
921
127k
     OPC_MoveParent,
922
127k
     OPC_Scope, 18, 
923
127k
      OPC_CheckPredicate2, 
924
127k
      OPC_MoveParent,
925
127k
      OPC_CheckPatternPredicate1,
926
127k
      OPC_CheckComplexPat0, /*#*/1,
927
127k
      OPC_EmitMergeInputChains1_0,
928
127k
      OPC_EmitInteger32, 0, 
929
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
930
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
931
127k
     18, 
932
127k
      OPC_CheckPredicate1, 
933
127k
      OPC_MoveParent,
934
127k
      OPC_CheckPatternPredicate1,
935
127k
      OPC_CheckComplexPat0, /*#*/1,
936
127k
      OPC_EmitMergeInputChains1_0,
937
127k
      OPC_EmitInteger32, 0, 
938
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
939
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
940
127k
     0, 
941
127k
    47, 
942
127k
     OPC_CheckChild1TypeI64,
943
127k
     OPC_MoveChild2,
944
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
945
127k
     OPC_RecordChild0,
946
127k
     OPC_MoveParent,
947
127k
     OPC_Scope, 18, 
948
127k
      OPC_CheckPredicate2, 
949
127k
      OPC_MoveParent,
950
127k
      OPC_CheckPatternPredicate2,
951
127k
      OPC_CheckComplexPat1, /*#*/1,
952
127k
      OPC_EmitMergeInputChains1_0,
953
127k
      OPC_EmitInteger32, 0, 
954
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
955
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
956
127k
     18, 
957
127k
      OPC_CheckPredicate1, 
958
127k
      OPC_MoveParent,
959
127k
      OPC_CheckPatternPredicate2,
960
127k
      OPC_CheckComplexPat1, /*#*/1,
961
127k
      OPC_EmitMergeInputChains1_0,
962
127k
      OPC_EmitInteger32, 0, 
963
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
964
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
965
127k
     0, 
966
127k
    0, 
967
127k
   101, TARGET_VAL(ISD::ATOMIC_LOAD_XOR),
968
127k
    OPC_RecordMemRef,
969
127k
    OPC_RecordNode,
970
127k
    OPC_RecordChild1,
971
127k
    OPC_Scope, 47, 
972
127k
     OPC_CheckChild1TypeI32,
973
127k
     OPC_MoveChild2,
974
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
975
127k
     OPC_RecordChild0,
976
127k
     OPC_MoveParent,
977
127k
     OPC_Scope, 18, 
978
127k
      OPC_CheckPredicate2, 
979
127k
      OPC_MoveParent,
980
127k
      OPC_CheckPatternPredicate1,
981
127k
      OPC_CheckComplexPat0, /*#*/1,
982
127k
      OPC_EmitMergeInputChains1_0,
983
127k
      OPC_EmitInteger32, 0, 
984
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
985
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
986
127k
     18, 
987
127k
      OPC_CheckPredicate1, 
988
127k
      OPC_MoveParent,
989
127k
      OPC_CheckPatternPredicate1,
990
127k
      OPC_CheckComplexPat0, /*#*/1,
991
127k
      OPC_EmitMergeInputChains1_0,
992
127k
      OPC_EmitInteger32, 0, 
993
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
994
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
995
127k
     0, 
996
127k
    47, 
997
127k
     OPC_CheckChild1TypeI64,
998
127k
     OPC_MoveChild2,
999
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
1000
127k
     OPC_RecordChild0,
1001
127k
     OPC_MoveParent,
1002
127k
     OPC_Scope, 18, 
1003
127k
      OPC_CheckPredicate2, 
1004
127k
      OPC_MoveParent,
1005
127k
      OPC_CheckPatternPredicate2,
1006
127k
      OPC_CheckComplexPat1, /*#*/1,
1007
127k
      OPC_EmitMergeInputChains1_0,
1008
127k
      OPC_EmitInteger32, 0, 
1009
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1010
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
1011
127k
     18, 
1012
127k
      OPC_CheckPredicate1, 
1013
127k
      OPC_MoveParent,
1014
127k
      OPC_CheckPatternPredicate2,
1015
127k
      OPC_CheckComplexPat1, /*#*/1,
1016
127k
      OPC_EmitMergeInputChains1_0,
1017
127k
      OPC_EmitInteger32, 0, 
1018
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1019
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
1020
127k
     0, 
1021
127k
    0, 
1022
127k
   101, TARGET_VAL(ISD::ATOMIC_SWAP),
1023
127k
    OPC_RecordMemRef,
1024
127k
    OPC_RecordNode,
1025
127k
    OPC_RecordChild1,
1026
127k
    OPC_Scope, 47, 
1027
127k
     OPC_CheckChild1TypeI32,
1028
127k
     OPC_MoveChild2,
1029
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
1030
127k
     OPC_RecordChild0,
1031
127k
     OPC_MoveParent,
1032
127k
     OPC_Scope, 18, 
1033
127k
      OPC_CheckPredicate2, 
1034
127k
      OPC_MoveParent,
1035
127k
      OPC_CheckPatternPredicate1,
1036
127k
      OPC_CheckComplexPat0, /*#*/1,
1037
127k
      OPC_EmitMergeInputChains1_0,
1038
127k
      OPC_EmitInteger32, 0, 
1039
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1040
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
1041
127k
     18, 
1042
127k
      OPC_CheckPredicate1, 
1043
127k
      OPC_MoveParent,
1044
127k
      OPC_CheckPatternPredicate1,
1045
127k
      OPC_CheckComplexPat0, /*#*/1,
1046
127k
      OPC_EmitMergeInputChains1_0,
1047
127k
      OPC_EmitInteger32, 0, 
1048
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1049
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
1050
127k
     0, 
1051
127k
    47, 
1052
127k
     OPC_CheckChild1TypeI64,
1053
127k
     OPC_MoveChild2,
1054
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
1055
127k
     OPC_RecordChild0,
1056
127k
     OPC_MoveParent,
1057
127k
     OPC_Scope, 18, 
1058
127k
      OPC_CheckPredicate2, 
1059
127k
      OPC_MoveParent,
1060
127k
      OPC_CheckPatternPredicate2,
1061
127k
      OPC_CheckComplexPat1, /*#*/1,
1062
127k
      OPC_EmitMergeInputChains1_0,
1063
127k
      OPC_EmitInteger32, 0, 
1064
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1065
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
1066
127k
     18, 
1067
127k
      OPC_CheckPredicate1, 
1068
127k
      OPC_MoveParent,
1069
127k
      OPC_CheckPatternPredicate2,
1070
127k
      OPC_CheckComplexPat1, /*#*/1,
1071
127k
      OPC_EmitMergeInputChains1_0,
1072
127k
      OPC_EmitInteger32, 0, 
1073
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1074
127k
                    MVT::i64, 4, 5, 3, 4, 2, 
1075
127k
     0, 
1076
127k
    0, 
1077
127k
   85, TARGET_VAL(ISD::ATOMIC_LOAD),
1078
127k
    OPC_RecordMemRef,
1079
127k
    OPC_RecordNode,
1080
127k
    OPC_RecordChild1,
1081
127k
    OPC_Scope, 39, 
1082
127k
     OPC_CheckChild1TypeI32,
1083
127k
     OPC_Scope, 17, 
1084
127k
      OPC_CheckPredicate2, 
1085
127k
      OPC_MoveParent,
1086
127k
      OPC_CheckPatternPredicate3,
1087
127k
      OPC_CheckComplexPat0, /*#*/1,
1088
127k
      OPC_EmitMergeInputChains1_0,
1089
127k
      OPC_EmitInteger32, 0, 
1090
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1091
127k
                    MVT::i64, 3, 4, 2, 3, 
1092
127k
     17, 
1093
127k
      OPC_CheckPredicate1, 
1094
127k
      OPC_MoveParent,
1095
127k
      OPC_CheckPatternPredicate3,
1096
127k
      OPC_CheckComplexPat0, /*#*/1,
1097
127k
      OPC_EmitMergeInputChains1_0,
1098
127k
      OPC_EmitInteger32, 0, 
1099
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1100
127k
                    MVT::i64, 3, 4, 2, 3, 
1101
127k
     0, 
1102
127k
    39, 
1103
127k
     OPC_CheckChild1TypeI64,
1104
127k
     OPC_Scope, 17, 
1105
127k
      OPC_CheckPredicate2, 
1106
127k
      OPC_MoveParent,
1107
127k
      OPC_CheckPatternPredicate4,
1108
127k
      OPC_CheckComplexPat1, /*#*/1,
1109
127k
      OPC_EmitMergeInputChains1_0,
1110
127k
      OPC_EmitInteger32, 0, 
1111
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1112
127k
                    MVT::i64, 3, 4, 2, 3, 
1113
127k
     17, 
1114
127k
      OPC_CheckPredicate1, 
1115
127k
      OPC_MoveParent,
1116
127k
      OPC_CheckPatternPredicate4,
1117
127k
      OPC_CheckComplexPat1, /*#*/1,
1118
127k
      OPC_EmitMergeInputChains1_0,
1119
127k
      OPC_EmitInteger32, 0, 
1120
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1121
127k
                    MVT::i64, 3, 4, 2, 3, 
1122
127k
     0, 
1123
127k
    0, 
1124
127k
   0,
1125
127k
  7, 
1126
127k
   OPC_RecordChild0,
1127
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_EXTEND_U_I32),
1128
127k
                 MVT::i64, 1, 0, 
1129
127k
  0, 
1130
127k
 22|128,7, TARGET_VAL(ISD::STORE),
1131
127k
  OPC_RecordMemRef,
1132
127k
  OPC_RecordNode,
1133
127k
  OPC_Scope, 127|128,1, 
1134
127k
   OPC_MoveChild1,
1135
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
1136
127k
   OPC_RecordChild0,
1137
127k
   OPC_Scope, 64, 
1138
127k
    OPC_CheckChild0Type, MVT::v16i8,
1139
127k
    OPC_RecordChild1,
1140
127k
    OPC_MoveChild1,
1141
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1142
127k
    OPC_CheckPredicate, 15,
1143
127k
    OPC_CheckTypeI32,
1144
127k
    OPC_MoveParent,
1145
127k
    OPC_CheckTypeI32,
1146
127k
    OPC_MoveParent,
1147
127k
    OPC_RecordChild2,
1148
127k
    OPC_Scope, 23, 
1149
127k
     OPC_CheckChild2TypeI32,
1150
127k
     OPC_CheckPredicate4, 
1151
127k
     OPC_CheckPredicate, 11,
1152
127k
     OPC_CheckPredicate, 19,
1153
127k
     OPC_CheckPatternPredicate3,
1154
127k
     OPC_CheckComplexPat0, /*#*/3,
1155
127k
     OPC_EmitMergeInputChains1_0,
1156
127k
     OPC_EmitInteger32, 0, 
1157
127k
     OPC_EmitConvertToTarget2,
1158
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I8x16_A32), 0|OPFL_Chain|OPFL_MemRefs,
1159
127k
                   5, 6, 4, 7, 5, 1, 
1160
127k
    23, 
1161
127k
     OPC_CheckChild2TypeI64,
1162
127k
     OPC_CheckPredicate4, 
1163
127k
     OPC_CheckPredicate, 11,
1164
127k
     OPC_CheckPredicate, 19,
1165
127k
     OPC_CheckPatternPredicate4,
1166
127k
     OPC_CheckComplexPat1, /*#*/3,
1167
127k
     OPC_EmitMergeInputChains1_0,
1168
127k
     OPC_EmitInteger32, 0, 
1169
127k
     OPC_EmitConvertToTarget2,
1170
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I8x16_A64), 0|OPFL_Chain|OPFL_MemRefs,
1171
127k
                   5, 6, 4, 7, 5, 1, 
1172
127k
    0, 
1173
127k
   64, 
1174
127k
    OPC_CheckChild0Type, MVT::v8i16,
1175
127k
    OPC_RecordChild1,
1176
127k
    OPC_MoveChild1,
1177
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1178
127k
    OPC_CheckPredicate, 17,
1179
127k
    OPC_CheckTypeI32,
1180
127k
    OPC_MoveParent,
1181
127k
    OPC_CheckTypeI32,
1182
127k
    OPC_MoveParent,
1183
127k
    OPC_RecordChild2,
1184
127k
    OPC_Scope, 23, 
1185
127k
     OPC_CheckChild2TypeI32,
1186
127k
     OPC_CheckPredicate4, 
1187
127k
     OPC_CheckPredicate, 11,
1188
127k
     OPC_CheckPredicate, 20,
1189
127k
     OPC_CheckPatternPredicate3,
1190
127k
     OPC_CheckComplexPat0, /*#*/3,
1191
127k
     OPC_EmitMergeInputChains1_0,
1192
127k
     OPC_EmitInteger32, 0, 
1193
127k
     OPC_EmitConvertToTarget2,
1194
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs,
1195
127k
                   5, 6, 4, 7, 5, 1, 
1196
127k
    23, 
1197
127k
     OPC_CheckChild2TypeI64,
1198
127k
     OPC_CheckPredicate4, 
1199
127k
     OPC_CheckPredicate, 11,
1200
127k
     OPC_CheckPredicate, 20,
1201
127k
     OPC_CheckPatternPredicate4,
1202
127k
     OPC_CheckComplexPat1, /*#*/3,
1203
127k
     OPC_EmitMergeInputChains1_0,
1204
127k
     OPC_EmitInteger32, 0, 
1205
127k
     OPC_EmitConvertToTarget2,
1206
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs,
1207
127k
                   5, 6, 4, 7, 5, 1, 
1208
127k
    0, 
1209
127k
   58, 
1210
127k
    OPC_CheckChild0Type, MVT::v4i32,
1211
127k
    OPC_RecordChild1,
1212
127k
    OPC_MoveChild1,
1213
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1214
127k
    OPC_CheckPredicate, 16,
1215
127k
    OPC_CheckTypeI32,
1216
127k
    OPC_MoveParent,
1217
127k
    OPC_CheckTypeI32,
1218
127k
    OPC_MoveParent,
1219
127k
    OPC_RecordChild2,
1220
127k
    OPC_Scope, 20, 
1221
127k
     OPC_CheckChild2TypeI32,
1222
127k
     OPC_CheckPredicate4, 
1223
127k
     OPC_CheckPredicate5, 
1224
127k
     OPC_CheckPatternPredicate3,
1225
127k
     OPC_CheckComplexPat0, /*#*/3,
1226
127k
     OPC_EmitMergeInputChains1_0,
1227
127k
     OPC_EmitInteger32, 0, 
1228
127k
     OPC_EmitConvertToTarget2,
1229
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs,
1230
127k
                   5, 6, 4, 7, 5, 1, 
1231
127k
    20, 
1232
127k
     OPC_CheckChild2TypeI64,
1233
127k
     OPC_CheckPredicate4, 
1234
127k
     OPC_CheckPredicate5, 
1235
127k
     OPC_CheckPatternPredicate4,
1236
127k
     OPC_CheckComplexPat1, /*#*/3,
1237
127k
     OPC_EmitMergeInputChains1_0,
1238
127k
     OPC_EmitInteger32, 0, 
1239
127k
     OPC_EmitConvertToTarget2,
1240
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs,
1241
127k
                   5, 6, 4, 7, 5, 1, 
1242
127k
    0, 
1243
127k
   58, 
1244
127k
    OPC_CheckChild0Type, MVT::v2i64,
1245
127k
    OPC_RecordChild1,
1246
127k
    OPC_MoveChild1,
1247
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1248
127k
    OPC_CheckPredicate, 18,
1249
127k
    OPC_CheckTypeI32,
1250
127k
    OPC_MoveParent,
1251
127k
    OPC_CheckTypeI64,
1252
127k
    OPC_MoveParent,
1253
127k
    OPC_RecordChild2,
1254
127k
    OPC_Scope, 20, 
1255
127k
     OPC_CheckChild2TypeI32,
1256
127k
     OPC_CheckPredicate4, 
1257
127k
     OPC_CheckPredicate5, 
1258
127k
     OPC_CheckPatternPredicate3,
1259
127k
     OPC_CheckComplexPat0, /*#*/3,
1260
127k
     OPC_EmitMergeInputChains1_0,
1261
127k
     OPC_EmitInteger32, 0, 
1262
127k
     OPC_EmitConvertToTarget2,
1263
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs,
1264
127k
                   5, 6, 4, 7, 5, 1, 
1265
127k
    20, 
1266
127k
     OPC_CheckChild2TypeI64,
1267
127k
     OPC_CheckPredicate4, 
1268
127k
     OPC_CheckPredicate5, 
1269
127k
     OPC_CheckPatternPredicate4,
1270
127k
     OPC_CheckComplexPat1, /*#*/3,
1271
127k
     OPC_EmitMergeInputChains1_0,
1272
127k
     OPC_EmitInteger32, 0, 
1273
127k
     OPC_EmitConvertToTarget2,
1274
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_LANE_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs,
1275
127k
                   5, 6, 4, 7, 5, 1, 
1276
127k
    0, 
1277
127k
   0, 
1278
127k
  15|128,5, 
1279
127k
   OPC_RecordChild1,
1280
127k
   OPC_Scope, 2|128,1, 
1281
127k
    OPC_CheckChild1TypeI32,
1282
127k
    OPC_RecordChild2,
1283
127k
    OPC_Scope, 62, 
1284
127k
     OPC_CheckChild2TypeI32,
1285
127k
     OPC_CheckPredicate4, 
1286
127k
     OPC_Scope, 16, 
1287
127k
      OPC_CheckPredicate5, 
1288
127k
      OPC_CheckPatternPredicate3,
1289
127k
      OPC_CheckComplexPat0, /*#*/2,
1290
127k
      OPC_EmitMergeInputChains1_0,
1291
127k
      OPC_EmitInteger32, 0, 
1292
127k
      OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
1293
127k
                    4, 5, 3, 4, 1, 
1294
127k
     40, 
1295
127k
      OPC_CheckPredicate, 11,
1296
127k
      OPC_Scope, 17, 
1297
127k
       OPC_CheckPredicate, 19,
1298
127k
       OPC_CheckPatternPredicate3,
1299
127k
       OPC_CheckComplexPat0, /*#*/2,
1300
127k
       OPC_EmitMergeInputChains1_0,
1301
127k
       OPC_EmitInteger32, 0, 
1302
127k
       OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
1303
127k
                     4, 5, 3, 4, 1, 
1304
127k
      17, 
1305
127k
       OPC_CheckPredicate, 20,
1306
127k
       OPC_CheckPatternPredicate3,
1307
127k
       OPC_CheckComplexPat0, /*#*/2,
1308
127k
       OPC_EmitMergeInputChains1_0,
1309
127k
       OPC_EmitInteger32, 0, 
1310
127k
       OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
1311
127k
                     4, 5, 3, 4, 1, 
1312
127k
      0, 
1313
127k
     0, 
1314
127k
    62, 
1315
127k
     OPC_CheckChild2TypeI64,
1316
127k
     OPC_CheckPredicate4, 
1317
127k
     OPC_Scope, 16, 
1318
127k
      OPC_CheckPredicate5, 
1319
127k
      OPC_CheckPatternPredicate4,
1320
127k
      OPC_CheckComplexPat1, /*#*/2,
1321
127k
      OPC_EmitMergeInputChains1_0,
1322
127k
      OPC_EmitInteger32, 0, 
1323
127k
      OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
1324
127k
                    4, 5, 3, 4, 1, 
1325
127k
     40, 
1326
127k
      OPC_CheckPredicate, 11,
1327
127k
      OPC_Scope, 17, 
1328
127k
       OPC_CheckPredicate, 19,
1329
127k
       OPC_CheckPatternPredicate4,
1330
127k
       OPC_CheckComplexPat1, /*#*/2,
1331
127k
       OPC_EmitMergeInputChains1_0,
1332
127k
       OPC_EmitInteger32, 0, 
1333
127k
       OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
1334
127k
                     4, 5, 3, 4, 1, 
1335
127k
      17, 
1336
127k
       OPC_CheckPredicate, 20,
1337
127k
       OPC_CheckPatternPredicate4,
1338
127k
       OPC_CheckComplexPat1, /*#*/2,
1339
127k
       OPC_EmitMergeInputChains1_0,
1340
127k
       OPC_EmitInteger32, 0, 
1341
127k
       OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
1342
127k
                     4, 5, 3, 4, 1, 
1343
127k
      0, 
1344
127k
     0, 
1345
127k
    0, 
1346
127k
   38|128,1, 
1347
127k
    OPC_CheckChild1TypeI64,
1348
127k
    OPC_RecordChild2,
1349
127k
    OPC_Scope, 80, 
1350
127k
     OPC_CheckChild2TypeI32,
1351
127k
     OPC_CheckPredicate4, 
1352
127k
     OPC_Scope, 16, 
1353
127k
      OPC_CheckPredicate5, 
1354
127k
      OPC_CheckPatternPredicate3,
1355
127k
      OPC_CheckComplexPat0, /*#*/2,
1356
127k
      OPC_EmitMergeInputChains1_0,
1357
127k
      OPC_EmitInteger32, 0, 
1358
127k
      OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1359
127k
                    4, 5, 3, 4, 1, 
1360
127k
     58, 
1361
127k
      OPC_CheckPredicate, 11,
1362
127k
      OPC_Scope, 17, 
1363
127k
       OPC_CheckPredicate, 19,
1364
127k
       OPC_CheckPatternPredicate3,
1365
127k
       OPC_CheckComplexPat0, /*#*/2,
1366
127k
       OPC_EmitMergeInputChains1_0,
1367
127k
       OPC_EmitInteger32, 0, 
1368
127k
       OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1369
127k
                     4, 5, 3, 4, 1, 
1370
127k
      17, 
1371
127k
       OPC_CheckPredicate, 20,
1372
127k
       OPC_CheckPatternPredicate3,
1373
127k
       OPC_CheckComplexPat0, /*#*/2,
1374
127k
       OPC_EmitMergeInputChains1_0,
1375
127k
       OPC_EmitInteger32, 0, 
1376
127k
       OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1377
127k
                     4, 5, 3, 4, 1, 
1378
127k
      17, 
1379
127k
       OPC_CheckPredicate, 25,
1380
127k
       OPC_CheckPatternPredicate3,
1381
127k
       OPC_CheckComplexPat0, /*#*/2,
1382
127k
       OPC_EmitMergeInputChains1_0,
1383
127k
       OPC_EmitInteger32, 0, 
1384
127k
       OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1385
127k
                     4, 5, 3, 4, 1, 
1386
127k
      0, 
1387
127k
     0, 
1388
127k
    80, 
1389
127k
     OPC_CheckChild2TypeI64,
1390
127k
     OPC_CheckPredicate4, 
1391
127k
     OPC_Scope, 16, 
1392
127k
      OPC_CheckPredicate5, 
1393
127k
      OPC_CheckPatternPredicate4,
1394
127k
      OPC_CheckComplexPat1, /*#*/2,
1395
127k
      OPC_EmitMergeInputChains1_0,
1396
127k
      OPC_EmitInteger32, 0, 
1397
127k
      OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1398
127k
                    4, 5, 3, 4, 1, 
1399
127k
     58, 
1400
127k
      OPC_CheckPredicate, 11,
1401
127k
      OPC_Scope, 17, 
1402
127k
       OPC_CheckPredicate, 19,
1403
127k
       OPC_CheckPatternPredicate4,
1404
127k
       OPC_CheckComplexPat1, /*#*/2,
1405
127k
       OPC_EmitMergeInputChains1_0,
1406
127k
       OPC_EmitInteger32, 0, 
1407
127k
       OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1408
127k
                     4, 5, 3, 4, 1, 
1409
127k
      17, 
1410
127k
       OPC_CheckPredicate, 20,
1411
127k
       OPC_CheckPatternPredicate4,
1412
127k
       OPC_CheckComplexPat1, /*#*/2,
1413
127k
       OPC_EmitMergeInputChains1_0,
1414
127k
       OPC_EmitInteger32, 0, 
1415
127k
       OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1416
127k
                     4, 5, 3, 4, 1, 
1417
127k
      17, 
1418
127k
       OPC_CheckPredicate, 25,
1419
127k
       OPC_CheckPatternPredicate4,
1420
127k
       OPC_CheckComplexPat1, /*#*/2,
1421
127k
       OPC_EmitMergeInputChains1_0,
1422
127k
       OPC_EmitInteger32, 0, 
1423
127k
       OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1424
127k
                     4, 5, 3, 4, 1, 
1425
127k
      0, 
1426
127k
     0, 
1427
127k
    0, 
1428
127k
   43, 
1429
127k
    OPC_CheckChild1Type, MVT::f32,
1430
127k
    OPC_RecordChild2,
1431
127k
    OPC_Scope, 18, 
1432
127k
     OPC_CheckChild2TypeI32,
1433
127k
     OPC_CheckPredicate4, 
1434
127k
     OPC_CheckPredicate5, 
1435
127k
     OPC_CheckPatternPredicate3,
1436
127k
     OPC_CheckComplexPat0, /*#*/2,
1437
127k
     OPC_EmitMergeInputChains1_0,
1438
127k
     OPC_EmitInteger32, 0, 
1439
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A32), 0|OPFL_Chain|OPFL_MemRefs,
1440
127k
                   4, 5, 3, 4, 1, 
1441
127k
    18, 
1442
127k
     OPC_CheckChild2TypeI64,
1443
127k
     OPC_CheckPredicate4, 
1444
127k
     OPC_CheckPredicate5, 
1445
127k
     OPC_CheckPatternPredicate4,
1446
127k
     OPC_CheckComplexPat1, /*#*/2,
1447
127k
     OPC_EmitMergeInputChains1_0,
1448
127k
     OPC_EmitInteger32, 0, 
1449
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F32_A64), 0|OPFL_Chain|OPFL_MemRefs,
1450
127k
                   4, 5, 3, 4, 1, 
1451
127k
    0, 
1452
127k
   43, 
1453
127k
    OPC_CheckChild1Type, MVT::f64,
1454
127k
    OPC_RecordChild2,
1455
127k
    OPC_Scope, 18, 
1456
127k
     OPC_CheckChild2TypeI32,
1457
127k
     OPC_CheckPredicate4, 
1458
127k
     OPC_CheckPredicate5, 
1459
127k
     OPC_CheckPatternPredicate3,
1460
127k
     OPC_CheckComplexPat0, /*#*/2,
1461
127k
     OPC_EmitMergeInputChains1_0,
1462
127k
     OPC_EmitInteger32, 0, 
1463
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1464
127k
                   4, 5, 3, 4, 1, 
1465
127k
    18, 
1466
127k
     OPC_CheckChild2TypeI64,
1467
127k
     OPC_CheckPredicate4, 
1468
127k
     OPC_CheckPredicate5, 
1469
127k
     OPC_CheckPatternPredicate4,
1470
127k
     OPC_CheckComplexPat1, /*#*/2,
1471
127k
     OPC_EmitMergeInputChains1_0,
1472
127k
     OPC_EmitInteger32, 0, 
1473
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_F64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1474
127k
                   4, 5, 3, 4, 1, 
1475
127k
    0, 
1476
127k
   43, 
1477
127k
    OPC_CheckChild1Type, MVT::v16i8,
1478
127k
    OPC_RecordChild2,
1479
127k
    OPC_Scope, 18, 
1480
127k
     OPC_CheckChild2TypeI32,
1481
127k
     OPC_CheckPredicate4, 
1482
127k
     OPC_CheckPredicate5, 
1483
127k
     OPC_CheckPatternPredicate3,
1484
127k
     OPC_CheckComplexPat0, /*#*/2,
1485
127k
     OPC_EmitMergeInputChains1_0,
1486
127k
     OPC_EmitInteger32, 0, 
1487
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
1488
127k
                   4, 5, 3, 4, 1, 
1489
127k
    18, 
1490
127k
     OPC_CheckChild2TypeI64,
1491
127k
     OPC_CheckPredicate4, 
1492
127k
     OPC_CheckPredicate5, 
1493
127k
     OPC_CheckPatternPredicate4,
1494
127k
     OPC_CheckComplexPat1, /*#*/2,
1495
127k
     OPC_EmitMergeInputChains1_0,
1496
127k
     OPC_EmitInteger32, 0, 
1497
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
1498
127k
                   4, 5, 3, 4, 1, 
1499
127k
    0, 
1500
127k
   43, 
1501
127k
    OPC_CheckChild1Type, MVT::v8i16,
1502
127k
    OPC_RecordChild2,
1503
127k
    OPC_Scope, 18, 
1504
127k
     OPC_CheckChild2TypeI32,
1505
127k
     OPC_CheckPredicate4, 
1506
127k
     OPC_CheckPredicate5, 
1507
127k
     OPC_CheckPatternPredicate3,
1508
127k
     OPC_CheckComplexPat0, /*#*/2,
1509
127k
     OPC_EmitMergeInputChains1_0,
1510
127k
     OPC_EmitInteger32, 0, 
1511
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
1512
127k
                   4, 5, 3, 4, 1, 
1513
127k
    18, 
1514
127k
     OPC_CheckChild2TypeI64,
1515
127k
     OPC_CheckPredicate4, 
1516
127k
     OPC_CheckPredicate5, 
1517
127k
     OPC_CheckPatternPredicate4,
1518
127k
     OPC_CheckComplexPat1, /*#*/2,
1519
127k
     OPC_EmitMergeInputChains1_0,
1520
127k
     OPC_EmitInteger32, 0, 
1521
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
1522
127k
                   4, 5, 3, 4, 1, 
1523
127k
    0, 
1524
127k
   43, 
1525
127k
    OPC_CheckChild1Type, MVT::v4i32,
1526
127k
    OPC_RecordChild2,
1527
127k
    OPC_Scope, 18, 
1528
127k
     OPC_CheckChild2TypeI32,
1529
127k
     OPC_CheckPredicate4, 
1530
127k
     OPC_CheckPredicate5, 
1531
127k
     OPC_CheckPatternPredicate3,
1532
127k
     OPC_CheckComplexPat0, /*#*/2,
1533
127k
     OPC_EmitMergeInputChains1_0,
1534
127k
     OPC_EmitInteger32, 0, 
1535
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
1536
127k
                   4, 5, 3, 4, 1, 
1537
127k
    18, 
1538
127k
     OPC_CheckChild2TypeI64,
1539
127k
     OPC_CheckPredicate4, 
1540
127k
     OPC_CheckPredicate5, 
1541
127k
     OPC_CheckPatternPredicate4,
1542
127k
     OPC_CheckComplexPat1, /*#*/2,
1543
127k
     OPC_EmitMergeInputChains1_0,
1544
127k
     OPC_EmitInteger32, 0, 
1545
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
1546
127k
                   4, 5, 3, 4, 1, 
1547
127k
    0, 
1548
127k
   43, 
1549
127k
    OPC_CheckChild1Type, MVT::v2i64,
1550
127k
    OPC_RecordChild2,
1551
127k
    OPC_Scope, 18, 
1552
127k
     OPC_CheckChild2TypeI32,
1553
127k
     OPC_CheckPredicate4, 
1554
127k
     OPC_CheckPredicate5, 
1555
127k
     OPC_CheckPatternPredicate3,
1556
127k
     OPC_CheckComplexPat0, /*#*/2,
1557
127k
     OPC_EmitMergeInputChains1_0,
1558
127k
     OPC_EmitInteger32, 0, 
1559
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
1560
127k
                   4, 5, 3, 4, 1, 
1561
127k
    18, 
1562
127k
     OPC_CheckChild2TypeI64,
1563
127k
     OPC_CheckPredicate4, 
1564
127k
     OPC_CheckPredicate5, 
1565
127k
     OPC_CheckPatternPredicate4,
1566
127k
     OPC_CheckComplexPat1, /*#*/2,
1567
127k
     OPC_EmitMergeInputChains1_0,
1568
127k
     OPC_EmitInteger32, 0, 
1569
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
1570
127k
                   4, 5, 3, 4, 1, 
1571
127k
    0, 
1572
127k
   43, 
1573
127k
    OPC_CheckChild1Type, MVT::v4f32,
1574
127k
    OPC_RecordChild2,
1575
127k
    OPC_Scope, 18, 
1576
127k
     OPC_CheckChild2TypeI32,
1577
127k
     OPC_CheckPredicate4, 
1578
127k
     OPC_CheckPredicate5, 
1579
127k
     OPC_CheckPatternPredicate3,
1580
127k
     OPC_CheckComplexPat0, /*#*/2,
1581
127k
     OPC_EmitMergeInputChains1_0,
1582
127k
     OPC_EmitInteger32, 0, 
1583
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
1584
127k
                   4, 5, 3, 4, 1, 
1585
127k
    18, 
1586
127k
     OPC_CheckChild2TypeI64,
1587
127k
     OPC_CheckPredicate4, 
1588
127k
     OPC_CheckPredicate5, 
1589
127k
     OPC_CheckPatternPredicate4,
1590
127k
     OPC_CheckComplexPat1, /*#*/2,
1591
127k
     OPC_EmitMergeInputChains1_0,
1592
127k
     OPC_EmitInteger32, 0, 
1593
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
1594
127k
                   4, 5, 3, 4, 1, 
1595
127k
    0, 
1596
127k
   43, 
1597
127k
    OPC_CheckChild1Type, MVT::v2f64,
1598
127k
    OPC_RecordChild2,
1599
127k
    OPC_Scope, 18, 
1600
127k
     OPC_CheckChild2TypeI32,
1601
127k
     OPC_CheckPredicate4, 
1602
127k
     OPC_CheckPredicate5, 
1603
127k
     OPC_CheckPatternPredicate3,
1604
127k
     OPC_CheckComplexPat0, /*#*/2,
1605
127k
     OPC_EmitMergeInputChains1_0,
1606
127k
     OPC_EmitInteger32, 0, 
1607
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
1608
127k
                   4, 5, 3, 4, 1, 
1609
127k
    18, 
1610
127k
     OPC_CheckChild2TypeI64,
1611
127k
     OPC_CheckPredicate4, 
1612
127k
     OPC_CheckPredicate5, 
1613
127k
     OPC_CheckPatternPredicate4,
1614
127k
     OPC_CheckComplexPat1, /*#*/2,
1615
127k
     OPC_EmitMergeInputChains1_0,
1616
127k
     OPC_EmitInteger32, 0, 
1617
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::STORE_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
1618
127k
                   4, 5, 3, 4, 1, 
1619
127k
    0, 
1620
127k
   0, 
1621
127k
  0, 
1622
127k
 42|128,1, TARGET_VAL(ISD::INTRINSIC_VOID),
1623
127k
  OPC_RecordNode,
1624
127k
  OPC_Scope, 39, 
1625
127k
   OPC_CheckChild1Integer, 42|128,60|128,1, 
1626
127k
   OPC_MoveChild2,
1627
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
1628
127k
   OPC_RecordChild0,
1629
127k
   OPC_MoveChild0,
1630
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
1631
127k
   OPC_MoveParent,
1632
127k
   OPC_MoveSibling3,
1633
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
1634
127k
   OPC_RecordChild0,
1635
127k
   OPC_MoveChild0,
1636
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
1637
127k
   OPC_MoveParent,
1638
127k
   OPC_MoveParent,
1639
127k
   OPC_RecordChild4,
1640
127k
   OPC_RecordChild5,
1641
127k
   OPC_RecordChild6,
1642
127k
   OPC_CheckPatternPredicate5,
1643
127k
   OPC_EmitMergeInputChains1_0,
1644
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::TABLE_COPY),
1645
127k
                 5, 1, 2, 3, 4, 5, 
1646
127k
  26, 
1647
127k
   OPC_CheckChild1Integer, 58|128,60|128,1, 
1648
127k
   OPC_MoveChild2,
1649
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
1650
127k
   OPC_RecordChild0,
1651
127k
   OPC_MoveChild0,
1652
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
1653
127k
   OPC_MoveParent,
1654
127k
   OPC_MoveParent,
1655
127k
   OPC_RecordChild3,
1656
127k
   OPC_RecordChild4,
1657
127k
   OPC_CheckPatternPredicate5,
1658
127k
   OPC_EmitMergeInputChains1_0,
1659
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::TABLE_SET_FUNCREF),
1660
127k
                 3, 1, 2, 3, 
1661
127k
  28, 
1662
127k
   OPC_CheckChild1Integer, 46|128,60|128,1, 
1663
127k
   OPC_MoveChild2,
1664
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
1665
127k
   OPC_RecordChild0,
1666
127k
   OPC_MoveChild0,
1667
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
1668
127k
   OPC_MoveParent,
1669
127k
   OPC_MoveParent,
1670
127k
   OPC_RecordChild3,
1671
127k
   OPC_RecordChild4,
1672
127k
   OPC_RecordChild5,
1673
127k
   OPC_CheckPatternPredicate5,
1674
127k
   OPC_EmitMergeInputChains1_0,
1675
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::TABLE_FILL_FUNCREF),
1676
127k
                 4, 1, 2, 3, 4, 
1677
127k
  26, 
1678
127k
   OPC_CheckChild1Integer, 56|128,60|128,1, 
1679
127k
   OPC_MoveChild2,
1680
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
1681
127k
   OPC_RecordChild0,
1682
127k
   OPC_MoveChild0,
1683
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
1684
127k
   OPC_MoveParent,
1685
127k
   OPC_MoveParent,
1686
127k
   OPC_RecordChild3,
1687
127k
   OPC_RecordChild4,
1688
127k
   OPC_CheckPatternPredicate5,
1689
127k
   OPC_EmitMergeInputChains1_0,
1690
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::TABLE_SET_EXTERNREF),
1691
127k
                 3, 1, 2, 3, 
1692
127k
  28, 
1693
127k
   OPC_CheckChild1Integer, 44|128,60|128,1, 
1694
127k
   OPC_MoveChild2,
1695
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
1696
127k
   OPC_RecordChild0,
1697
127k
   OPC_MoveChild0,
1698
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
1699
127k
   OPC_MoveParent,
1700
127k
   OPC_MoveParent,
1701
127k
   OPC_RecordChild3,
1702
127k
   OPC_RecordChild4,
1703
127k
   OPC_RecordChild5,
1704
127k
   OPC_CheckPatternPredicate5,
1705
127k
   OPC_EmitMergeInputChains1_0,
1706
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::TABLE_FILL_EXTERNREF),
1707
127k
                 4, 1, 2, 3, 4, 
1708
127k
  14, 
1709
127k
   OPC_CheckChild1Integer, 32|128,60|128,1, 
1710
127k
   OPC_CheckPatternPredicate, 13,
1711
127k
   OPC_EmitMergeInputChains1_0,
1712
127k
   OPC_EmitInteger32, 0, 
1713
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::RETHROW),
1714
127k
                 1, 1, 
1715
127k
  0, 
1716
127k
 106|128,2, TARGET_VAL(ISD::INTRINSIC_W_CHAIN),
1717
127k
  OPC_Scope, 22|128,1, 
1718
127k
   OPC_RecordMemRef,
1719
127k
   OPC_RecordNode,
1720
127k
   OPC_Scope, 45, 
1721
127k
    OPC_CheckChild1Integer, 104|128,59|128,1, 
1722
127k
    OPC_RecordChild2,
1723
127k
    OPC_Scope, 18, 
1724
127k
     OPC_CheckChild2TypeI32,
1725
127k
     OPC_RecordChild3,
1726
127k
     OPC_CheckPatternPredicate1,
1727
127k
     OPC_CheckComplexPat0, /*#*/1,
1728
127k
     OPC_EmitMergeInputChains1_0,
1729
127k
     OPC_EmitInteger32, 0, 
1730
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A32), 0|OPFL_Chain|OPFL_MemRefs,
1731
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
1732
127k
    18, 
1733
127k
     OPC_CheckChild2TypeI64,
1734
127k
     OPC_RecordChild3,
1735
127k
     OPC_CheckPatternPredicate2,
1736
127k
     OPC_CheckComplexPat1, /*#*/1,
1737
127k
     OPC_EmitMergeInputChains1_0,
1738
127k
     OPC_EmitInteger32, 0, 
1739
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_NOTIFY_A64), 0|OPFL_Chain|OPFL_MemRefs,
1740
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
1741
127k
    0, 
1742
127k
   49, 
1743
127k
    OPC_CheckChild1Integer, 106|128,59|128,1, 
1744
127k
    OPC_RecordChild2,
1745
127k
    OPC_Scope, 20, 
1746
127k
     OPC_CheckChild2TypeI32,
1747
127k
     OPC_RecordChild3,
1748
127k
     OPC_RecordChild4,
1749
127k
     OPC_CheckPatternPredicate1,
1750
127k
     OPC_CheckComplexPat0, /*#*/1,
1751
127k
     OPC_EmitMergeInputChains1_0,
1752
127k
     OPC_EmitInteger32, 0, 
1753
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A32), 0|OPFL_Chain|OPFL_MemRefs,
1754
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
1755
127k
    20, 
1756
127k
     OPC_CheckChild2TypeI64,
1757
127k
     OPC_RecordChild3,
1758
127k
     OPC_RecordChild4,
1759
127k
     OPC_CheckPatternPredicate2,
1760
127k
     OPC_CheckComplexPat1, /*#*/1,
1761
127k
     OPC_EmitMergeInputChains1_0,
1762
127k
     OPC_EmitInteger32, 0, 
1763
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT32_A64), 0|OPFL_Chain|OPFL_MemRefs,
1764
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
1765
127k
    0, 
1766
127k
   49, 
1767
127k
    OPC_CheckChild1Integer, 108|128,59|128,1, 
1768
127k
    OPC_RecordChild2,
1769
127k
    OPC_Scope, 20, 
1770
127k
     OPC_CheckChild2TypeI32,
1771
127k
     OPC_RecordChild3,
1772
127k
     OPC_RecordChild4,
1773
127k
     OPC_CheckPatternPredicate1,
1774
127k
     OPC_CheckComplexPat0, /*#*/1,
1775
127k
     OPC_EmitMergeInputChains1_0,
1776
127k
     OPC_EmitInteger32, 0, 
1777
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1778
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
1779
127k
    20, 
1780
127k
     OPC_CheckChild2TypeI64,
1781
127k
     OPC_RecordChild3,
1782
127k
     OPC_RecordChild4,
1783
127k
     OPC_CheckPatternPredicate2,
1784
127k
     OPC_CheckComplexPat1, /*#*/1,
1785
127k
     OPC_EmitMergeInputChains1_0,
1786
127k
     OPC_EmitInteger32, 0, 
1787
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::MEMORY_ATOMIC_WAIT64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1788
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
1789
127k
    0, 
1790
127k
   0, 
1791
127k
  78|128,1, 
1792
127k
   OPC_RecordNode,
1793
127k
   OPC_Scope, 25, 
1794
127k
    OPC_CheckChild1Integer, 50|128,60|128,1, 
1795
127k
    OPC_MoveChild2,
1796
127k
    OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
1797
127k
    OPC_RecordChild0,
1798
127k
    OPC_MoveChild0,
1799
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
1800
127k
    OPC_MoveParent,
1801
127k
    OPC_MoveParent,
1802
127k
    OPC_RecordChild3,
1803
127k
    OPC_CheckPatternPredicate5,
1804
127k
    OPC_EmitMergeInputChains1_0,
1805
127k
    OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::TABLE_GET_FUNCREF),
1806
127k
                  MVT::funcref, 2, 1, 2, 
1807
127k
   27, 
1808
127k
    OPC_CheckChild1Integer, 54|128,60|128,1, 
1809
127k
    OPC_MoveChild2,
1810
127k
    OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
1811
127k
    OPC_RecordChild0,
1812
127k
    OPC_MoveChild0,
1813
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
1814
127k
    OPC_MoveParent,
1815
127k
    OPC_MoveParent,
1816
127k
    OPC_RecordChild3,
1817
127k
    OPC_RecordChild4,
1818
127k
    OPC_CheckPatternPredicate5,
1819
127k
    OPC_EmitMergeInputChains1_0,
1820
127k
    OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::TABLE_GROW_FUNCREF),
1821
127k
                  MVT::i32, 3, 1, 2, 3, 
1822
127k
   25, 
1823
127k
    OPC_CheckChild1Integer, 48|128,60|128,1, 
1824
127k
    OPC_MoveChild2,
1825
127k
    OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
1826
127k
    OPC_RecordChild0,
1827
127k
    OPC_MoveChild0,
1828
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
1829
127k
    OPC_MoveParent,
1830
127k
    OPC_MoveParent,
1831
127k
    OPC_RecordChild3,
1832
127k
    OPC_CheckPatternPredicate5,
1833
127k
    OPC_EmitMergeInputChains1_0,
1834
127k
    OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::TABLE_GET_EXTERNREF),
1835
127k
                  MVT::externref, 2, 1, 2, 
1836
127k
   27, 
1837
127k
    OPC_CheckChild1Integer, 52|128,60|128,1, 
1838
127k
    OPC_MoveChild2,
1839
127k
    OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
1840
127k
    OPC_RecordChild0,
1841
127k
    OPC_MoveChild0,
1842
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
1843
127k
    OPC_MoveParent,
1844
127k
    OPC_MoveParent,
1845
127k
    OPC_RecordChild3,
1846
127k
    OPC_RecordChild4,
1847
127k
    OPC_CheckPatternPredicate5,
1848
127k
    OPC_EmitMergeInputChains1_0,
1849
127k
    OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::TABLE_GROW_EXTERNREF),
1850
127k
                  MVT::i32, 3, 1, 2, 3, 
1851
127k
   23, 
1852
127k
    OPC_CheckChild1Integer, 60|128,60|128,1, 
1853
127k
    OPC_MoveChild2,
1854
127k
    OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
1855
127k
    OPC_RecordChild0,
1856
127k
    OPC_MoveChild0,
1857
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
1858
127k
    OPC_MoveParent,
1859
127k
    OPC_MoveParent,
1860
127k
    OPC_CheckPatternPredicate5,
1861
127k
    OPC_EmitMergeInputChains1_0,
1862
127k
    OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::TABLE_SIZE),
1863
127k
                  MVT::i32, 1, 1, 
1864
127k
   32, 
1865
127k
    OPC_CheckChild1Integer, 112|128,59|128,1, 
1866
127k
    OPC_RecordChild2,
1867
127k
    OPC_MoveChild2,
1868
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1869
127k
    OPC_MoveParent,
1870
127k
    OPC_SwitchType , 8, MVT::i32,
1871
127k
     OPC_EmitMergeInputChains1_0,
1872
127k
     OPC_EmitConvertToTarget1,
1873
127k
     OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::anonymous_7277MEMORY_SIZE_A32),
1874
127k
                   MVT::i32, 1, 2, 
1875
127k
    8, MVT::i64,
1876
127k
     OPC_EmitMergeInputChains1_0,
1877
127k
     OPC_EmitConvertToTarget1,
1878
127k
     OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::anonymous_7278MEMORY_SIZE_A64),
1879
127k
                   MVT::i64, 1, 2, 
1880
127k
    0,
1881
127k
   37, 
1882
127k
    OPC_CheckChild1Integer, 110|128,59|128,1, 
1883
127k
    OPC_RecordChild2,
1884
127k
    OPC_MoveChild2,
1885
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
1886
127k
    OPC_MoveParent,
1887
127k
    OPC_RecordChild3,
1888
127k
    OPC_SwitchType , 10, MVT::i32,
1889
127k
     OPC_CheckChild3TypeI32,
1890
127k
     OPC_EmitMergeInputChains1_0,
1891
127k
     OPC_EmitConvertToTarget1,
1892
127k
     OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::anonymous_7277MEMORY_GROW_A32),
1893
127k
                   MVT::i32, 2, 3, 2, 
1894
127k
    10, MVT::i64,
1895
127k
     OPC_CheckChild3TypeI64,
1896
127k
     OPC_EmitMergeInputChains1_0,
1897
127k
     OPC_EmitConvertToTarget1,
1898
127k
     OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::anonymous_7278MEMORY_GROW_A64),
1899
127k
                   MVT::i64, 2, 3, 2, 
1900
127k
    0,
1901
127k
   0, 
1902
127k
  0, 
1903
127k
 29|128,2, TARGET_VAL(ISD::ATOMIC_STORE),
1904
127k
  OPC_RecordMemRef,
1905
127k
  OPC_RecordNode,
1906
127k
  OPC_Scope, 119, 
1907
127k
   OPC_MoveChild1,
1908
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
1909
127k
   OPC_RecordChild0,
1910
127k
   OPC_MoveParent,
1911
127k
   OPC_RecordChild2,
1912
127k
   OPC_Scope, 54, 
1913
127k
    OPC_CheckChild2TypeI32,
1914
127k
    OPC_Scope, 16, 
1915
127k
     OPC_CheckPredicate2, 
1916
127k
     OPC_CheckPatternPredicate1,
1917
127k
     OPC_CheckComplexPat0, /*#*/2,
1918
127k
     OPC_EmitMergeInputChains1_0,
1919
127k
     OPC_EmitInteger32, 0, 
1920
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1921
127k
                   4, 5, 3, 4, 1, 
1922
127k
    16, 
1923
127k
     OPC_CheckPredicate1, 
1924
127k
     OPC_CheckPatternPredicate1,
1925
127k
     OPC_CheckComplexPat0, /*#*/2,
1926
127k
     OPC_EmitMergeInputChains1_0,
1927
127k
     OPC_EmitInteger32, 0, 
1928
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1929
127k
                   4, 5, 3, 4, 1, 
1930
127k
    16, 
1931
127k
     OPC_CheckPredicate3, 
1932
127k
     OPC_CheckPatternPredicate1,
1933
127k
     OPC_CheckComplexPat0, /*#*/2,
1934
127k
     OPC_EmitMergeInputChains1_0,
1935
127k
     OPC_EmitInteger32, 0, 
1936
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
1937
127k
                   4, 5, 3, 4, 1, 
1938
127k
    0, 
1939
127k
   54, 
1940
127k
    OPC_CheckChild2TypeI64,
1941
127k
    OPC_Scope, 16, 
1942
127k
     OPC_CheckPredicate2, 
1943
127k
     OPC_CheckPatternPredicate2,
1944
127k
     OPC_CheckComplexPat1, /*#*/2,
1945
127k
     OPC_EmitMergeInputChains1_0,
1946
127k
     OPC_EmitInteger32, 0, 
1947
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1948
127k
                   4, 5, 3, 4, 1, 
1949
127k
    16, 
1950
127k
     OPC_CheckPredicate1, 
1951
127k
     OPC_CheckPatternPredicate2,
1952
127k
     OPC_CheckComplexPat1, /*#*/2,
1953
127k
     OPC_EmitMergeInputChains1_0,
1954
127k
     OPC_EmitInteger32, 0, 
1955
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1956
127k
                   4, 5, 3, 4, 1, 
1957
127k
    16, 
1958
127k
     OPC_CheckPredicate3, 
1959
127k
     OPC_CheckPatternPredicate2,
1960
127k
     OPC_CheckComplexPat1, /*#*/2,
1961
127k
     OPC_EmitMergeInputChains1_0,
1962
127k
     OPC_EmitInteger32, 0, 
1963
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE32_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
1964
127k
                   4, 5, 3, 4, 1, 
1965
127k
    0, 
1966
127k
   0, 
1967
127k
  31|128,1, 
1968
127k
   OPC_RecordChild1,
1969
127k
   OPC_Scope, 114, 
1970
127k
    OPC_CheckChild1TypeI32,
1971
127k
    OPC_RecordChild2,
1972
127k
    OPC_Scope, 54, 
1973
127k
     OPC_CheckChild2TypeI32,
1974
127k
     OPC_Scope, 16, 
1975
127k
      OPC_CheckPredicate3, 
1976
127k
      OPC_CheckPatternPredicate1,
1977
127k
      OPC_CheckComplexPat0, /*#*/2,
1978
127k
      OPC_EmitMergeInputChains1_0,
1979
127k
      OPC_EmitInteger32, 0, 
1980
127k
      OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
1981
127k
                    4, 5, 3, 4, 1, 
1982
127k
     16, 
1983
127k
      OPC_CheckPredicate2, 
1984
127k
      OPC_CheckPatternPredicate1,
1985
127k
      OPC_CheckComplexPat0, /*#*/2,
1986
127k
      OPC_EmitMergeInputChains1_0,
1987
127k
      OPC_EmitInteger32, 0, 
1988
127k
      OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
1989
127k
                    4, 5, 3, 4, 1, 
1990
127k
     16, 
1991
127k
      OPC_CheckPredicate1, 
1992
127k
      OPC_CheckPatternPredicate1,
1993
127k
      OPC_CheckComplexPat0, /*#*/2,
1994
127k
      OPC_EmitMergeInputChains1_0,
1995
127k
      OPC_EmitInteger32, 0, 
1996
127k
      OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
1997
127k
                    4, 5, 3, 4, 1, 
1998
127k
     0, 
1999
127k
    54, 
2000
127k
     OPC_CheckChild2TypeI64,
2001
127k
     OPC_Scope, 16, 
2002
127k
      OPC_CheckPredicate3, 
2003
127k
      OPC_CheckPatternPredicate2,
2004
127k
      OPC_CheckComplexPat1, /*#*/2,
2005
127k
      OPC_EmitMergeInputChains1_0,
2006
127k
      OPC_EmitInteger32, 0, 
2007
127k
      OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
2008
127k
                    4, 5, 3, 4, 1, 
2009
127k
     16, 
2010
127k
      OPC_CheckPredicate2, 
2011
127k
      OPC_CheckPatternPredicate2,
2012
127k
      OPC_CheckComplexPat1, /*#*/2,
2013
127k
      OPC_EmitMergeInputChains1_0,
2014
127k
      OPC_EmitInteger32, 0, 
2015
127k
      OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE8_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
2016
127k
                    4, 5, 3, 4, 1, 
2017
127k
     16, 
2018
127k
      OPC_CheckPredicate1, 
2019
127k
      OPC_CheckPatternPredicate2,
2020
127k
      OPC_CheckComplexPat1, /*#*/2,
2021
127k
      OPC_EmitMergeInputChains1_0,
2022
127k
      OPC_EmitInteger32, 0, 
2023
127k
      OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE16_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
2024
127k
                    4, 5, 3, 4, 1, 
2025
127k
     0, 
2026
127k
    0, 
2027
127k
   40, 
2028
127k
    OPC_CheckChild1TypeI64,
2029
127k
    OPC_RecordChild2,
2030
127k
    OPC_Scope, 17, 
2031
127k
     OPC_CheckChild2TypeI32,
2032
127k
     OPC_CheckPredicate7, 
2033
127k
     OPC_CheckPatternPredicate1,
2034
127k
     OPC_CheckComplexPat0, /*#*/2,
2035
127k
     OPC_EmitMergeInputChains1_0,
2036
127k
     OPC_EmitInteger32, 0, 
2037
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
2038
127k
                   4, 5, 3, 4, 1, 
2039
127k
    17, 
2040
127k
     OPC_CheckChild2TypeI64,
2041
127k
     OPC_CheckPredicate7, 
2042
127k
     OPC_CheckPatternPredicate2,
2043
127k
     OPC_CheckComplexPat1, /*#*/2,
2044
127k
     OPC_EmitMergeInputChains1_0,
2045
127k
     OPC_EmitInteger32, 0, 
2046
127k
     OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::ATOMIC_STORE_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
2047
127k
                   4, 5, 3, 4, 1, 
2048
127k
    0, 
2049
127k
   0, 
2050
127k
  0, 
2051
127k
 90|128,2, TARGET_VAL(ISD::AND),
2052
127k
  OPC_Scope, 118, 
2053
127k
   OPC_MoveChild0,
2054
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
2055
127k
   OPC_Scope, 55, 
2056
127k
    OPC_CheckChild0Integer, 80|128,59|128,1, 
2057
127k
    OPC_RecordChild1,
2058
127k
    OPC_Scope, 11, 
2059
127k
     OPC_CheckChild1Type, MVT::v16i8,
2060
127k
     OPC_MoveParent,
2061
127k
     OPC_CheckChild1Integer, 2, 
2062
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2063
127k
                   MVT::i32, 1, 0, 
2064
127k
    11, 
2065
127k
     OPC_CheckChild1Type, MVT::v8i16,
2066
127k
     OPC_MoveParent,
2067
127k
     OPC_CheckChild1Integer, 2, 
2068
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2069
127k
                   MVT::i32, 1, 0, 
2070
127k
    11, 
2071
127k
     OPC_CheckChild1Type, MVT::v4i32,
2072
127k
     OPC_MoveParent,
2073
127k
     OPC_CheckChild1Integer, 2, 
2074
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2075
127k
                   MVT::i32, 1, 0, 
2076
127k
    11, 
2077
127k
     OPC_CheckChild1Type, MVT::v2i64,
2078
127k
     OPC_MoveParent,
2079
127k
     OPC_CheckChild1Integer, 2, 
2080
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2081
127k
                   MVT::i32, 1, 0, 
2082
127k
    0, 
2083
127k
   55, 
2084
127k
    OPC_CheckChild0Integer, 78|128,59|128,1, 
2085
127k
    OPC_RecordChild1,
2086
127k
    OPC_Scope, 11, 
2087
127k
     OPC_CheckChild1Type, MVT::v16i8,
2088
127k
     OPC_MoveParent,
2089
127k
     OPC_CheckChild1Integer, 2, 
2090
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I8x16),
2091
127k
                   MVT::i32, 1, 0, 
2092
127k
    11, 
2093
127k
     OPC_CheckChild1Type, MVT::v8i16,
2094
127k
     OPC_MoveParent,
2095
127k
     OPC_CheckChild1Integer, 2, 
2096
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I16x8),
2097
127k
                   MVT::i32, 1, 0, 
2098
127k
    11, 
2099
127k
     OPC_CheckChild1Type, MVT::v4i32,
2100
127k
     OPC_MoveParent,
2101
127k
     OPC_CheckChild1Integer, 2, 
2102
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I32x4),
2103
127k
                   MVT::i32, 1, 0, 
2104
127k
    11, 
2105
127k
     OPC_CheckChild1Type, MVT::v2i64,
2106
127k
     OPC_MoveParent,
2107
127k
     OPC_CheckChild1Integer, 2, 
2108
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I64x2),
2109
127k
                   MVT::i32, 1, 0, 
2110
127k
    0, 
2111
127k
   0, 
2112
127k
  29, 
2113
127k
   OPC_CheckAndImm, 127|128,1, 
2114
127k
   OPC_MoveChild0,
2115
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
2116
127k
   OPC_RecordChild0,
2117
127k
   OPC_CheckChild0Type, MVT::v16i8,
2118
127k
   OPC_RecordChild1,
2119
127k
   OPC_MoveChild1,
2120
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2121
127k
   OPC_CheckPredicate, 15,
2122
127k
   OPC_CheckTypeI32,
2123
127k
   OPC_MoveParent,
2124
127k
   OPC_MoveParent,
2125
127k
   OPC_CheckTypeI32,
2126
127k
   OPC_EmitConvertToTarget1,
2127
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTRACT_LANE_I8x16_u),
2128
127k
                 MVT::i32, 2, 0, 2, 
2129
127k
  30, 
2130
127k
   OPC_CheckAndImm, 127|128,127|128,3, 
2131
127k
   OPC_MoveChild0,
2132
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
2133
127k
   OPC_RecordChild0,
2134
127k
   OPC_CheckChild0Type, MVT::v8i16,
2135
127k
   OPC_RecordChild1,
2136
127k
   OPC_MoveChild1,
2137
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
2138
127k
   OPC_CheckPredicate, 17,
2139
127k
   OPC_CheckTypeI32,
2140
127k
   OPC_MoveParent,
2141
127k
   OPC_MoveParent,
2142
127k
   OPC_CheckTypeI32,
2143
127k
   OPC_EmitConvertToTarget1,
2144
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTRACT_LANE_I16x8_u),
2145
127k
                 MVT::i32, 2, 0, 2, 
2146
127k
  73, 
2147
127k
   OPC_RecordChild0,
2148
127k
   OPC_Scope, 21, 
2149
127k
    OPC_RecordChild1,
2150
127k
    OPC_SwitchType , 7, MVT::i32,
2151
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AND_I32),
2152
127k
                   MVT::i32, 2, 0, 1, 
2153
127k
    7, MVT::i64,
2154
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AND_I64),
2155
127k
                   MVT::i64, 2, 0, 1, 
2156
127k
    0,
2157
127k
   47, 
2158
127k
    OPC_MoveChild1,
2159
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2160
127k
    OPC_RecordChild0,
2161
127k
    OPC_MoveChild1,
2162
127k
    OPC_CheckImmAllOnesV,
2163
127k
    OPC_MoveParent,
2164
127k
    OPC_MoveParent,
2165
127k
    OPC_SwitchType , 7, MVT::v16i8,
2166
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANDNOT),
2167
127k
                   MVT::v16i8, 2, 0, 1, 
2168
127k
    7, MVT::v8i16,
2169
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANDNOT),
2170
127k
                   MVT::v8i16, 2, 0, 1, 
2171
127k
    7, MVT::v4i32,
2172
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANDNOT),
2173
127k
                   MVT::v4i32, 2, 0, 1, 
2174
127k
    7, MVT::v2i64,
2175
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANDNOT),
2176
127k
                   MVT::v2i64, 2, 0, 1, 
2177
127k
    0,
2178
127k
   0, 
2179
127k
  48, 
2180
127k
   OPC_MoveChild0,
2181
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
2182
127k
   OPC_RecordChild0,
2183
127k
   OPC_MoveChild1,
2184
127k
   OPC_CheckImmAllOnesV,
2185
127k
   OPC_MoveParent,
2186
127k
   OPC_MoveParent,
2187
127k
   OPC_RecordChild1,
2188
127k
   OPC_SwitchType , 7, MVT::v16i8,
2189
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANDNOT),
2190
127k
                  MVT::v16i8, 2, 1, 0, 
2191
127k
   7, MVT::v8i16,
2192
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANDNOT),
2193
127k
                  MVT::v8i16, 2, 1, 0, 
2194
127k
   7, MVT::v4i32,
2195
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANDNOT),
2196
127k
                  MVT::v4i32, 2, 1, 0, 
2197
127k
   7, MVT::v2i64,
2198
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANDNOT),
2199
127k
                  MVT::v2i64, 2, 1, 0, 
2200
127k
   0,
2201
127k
  40, 
2202
127k
   OPC_RecordChild0,
2203
127k
   OPC_RecordChild1,
2204
127k
   OPC_SwitchType , 7, MVT::v16i8,
2205
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AND),
2206
127k
                  MVT::v16i8, 2, 0, 1, 
2207
127k
   7, MVT::v8i16,
2208
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AND),
2209
127k
                  MVT::v8i16, 2, 0, 1, 
2210
127k
   7, MVT::v4i32,
2211
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AND),
2212
127k
                  MVT::v4i32, 2, 0, 1, 
2213
127k
   7, MVT::v2i64,
2214
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AND),
2215
127k
                  MVT::v2i64, 2, 0, 1, 
2216
127k
   0,
2217
127k
  0, 
2218
127k
 48|128,11, TARGET_VAL(ISD::SETCC),
2219
127k
  OPC_Scope, 126|128,1, 
2220
127k
   OPC_MoveChild0,
2221
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
2222
127k
   OPC_Scope, 123, 
2223
127k
    OPC_CheckChild0Integer, 80|128,59|128,1, 
2224
127k
    OPC_RecordChild1,
2225
127k
    OPC_Scope, 28, 
2226
127k
     OPC_CheckChild1Type, MVT::v16i8,
2227
127k
     OPC_MoveParent,
2228
127k
     OPC_CheckTypeI32,
2229
127k
     OPC_Scope, 10, 
2230
127k
      OPC_CheckChild1Integer, 0, 
2231
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2232
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2233
127k
                    MVT::i32, 1, 0, 
2234
127k
     10, 
2235
127k
      OPC_CheckChild1Integer, 2, 
2236
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2237
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2238
127k
                    MVT::i32, 1, 0, 
2239
127k
     0, 
2240
127k
    28, 
2241
127k
     OPC_CheckChild1Type, MVT::v8i16,
2242
127k
     OPC_MoveParent,
2243
127k
     OPC_CheckTypeI32,
2244
127k
     OPC_Scope, 10, 
2245
127k
      OPC_CheckChild1Integer, 0, 
2246
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2247
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2248
127k
                    MVT::i32, 1, 0, 
2249
127k
     10, 
2250
127k
      OPC_CheckChild1Integer, 2, 
2251
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2252
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2253
127k
                    MVT::i32, 1, 0, 
2254
127k
     0, 
2255
127k
    28, 
2256
127k
     OPC_CheckChild1Type, MVT::v4i32,
2257
127k
     OPC_MoveParent,
2258
127k
     OPC_CheckTypeI32,
2259
127k
     OPC_Scope, 10, 
2260
127k
      OPC_CheckChild1Integer, 0, 
2261
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2262
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2263
127k
                    MVT::i32, 1, 0, 
2264
127k
     10, 
2265
127k
      OPC_CheckChild1Integer, 2, 
2266
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2267
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2268
127k
                    MVT::i32, 1, 0, 
2269
127k
     0, 
2270
127k
    28, 
2271
127k
     OPC_CheckChild1Type, MVT::v2i64,
2272
127k
     OPC_MoveParent,
2273
127k
     OPC_CheckTypeI32,
2274
127k
     OPC_Scope, 10, 
2275
127k
      OPC_CheckChild1Integer, 0, 
2276
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2277
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2278
127k
                    MVT::i32, 1, 0, 
2279
127k
     10, 
2280
127k
      OPC_CheckChild1Integer, 2, 
2281
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2282
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
2283
127k
                    MVT::i32, 1, 0, 
2284
127k
     0, 
2285
127k
    0, 
2286
127k
   123, 
2287
127k
    OPC_CheckChild0Integer, 78|128,59|128,1, 
2288
127k
    OPC_RecordChild1,
2289
127k
    OPC_Scope, 28, 
2290
127k
     OPC_CheckChild1Type, MVT::v16i8,
2291
127k
     OPC_MoveParent,
2292
127k
     OPC_CheckTypeI32,
2293
127k
     OPC_Scope, 10, 
2294
127k
      OPC_CheckChild1Integer, 0, 
2295
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2296
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I8x16),
2297
127k
                    MVT::i32, 1, 0, 
2298
127k
     10, 
2299
127k
      OPC_CheckChild1Integer, 2, 
2300
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2301
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I8x16),
2302
127k
                    MVT::i32, 1, 0, 
2303
127k
     0, 
2304
127k
    28, 
2305
127k
     OPC_CheckChild1Type, MVT::v8i16,
2306
127k
     OPC_MoveParent,
2307
127k
     OPC_CheckTypeI32,
2308
127k
     OPC_Scope, 10, 
2309
127k
      OPC_CheckChild1Integer, 0, 
2310
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2311
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I16x8),
2312
127k
                    MVT::i32, 1, 0, 
2313
127k
     10, 
2314
127k
      OPC_CheckChild1Integer, 2, 
2315
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2316
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I16x8),
2317
127k
                    MVT::i32, 1, 0, 
2318
127k
     0, 
2319
127k
    28, 
2320
127k
     OPC_CheckChild1Type, MVT::v4i32,
2321
127k
     OPC_MoveParent,
2322
127k
     OPC_CheckTypeI32,
2323
127k
     OPC_Scope, 10, 
2324
127k
      OPC_CheckChild1Integer, 0, 
2325
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2326
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I32x4),
2327
127k
                    MVT::i32, 1, 0, 
2328
127k
     10, 
2329
127k
      OPC_CheckChild1Integer, 2, 
2330
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2331
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I32x4),
2332
127k
                    MVT::i32, 1, 0, 
2333
127k
     0, 
2334
127k
    28, 
2335
127k
     OPC_CheckChild1Type, MVT::v2i64,
2336
127k
     OPC_MoveParent,
2337
127k
     OPC_CheckTypeI32,
2338
127k
     OPC_Scope, 10, 
2339
127k
      OPC_CheckChild1Integer, 0, 
2340
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2341
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I64x2),
2342
127k
                    MVT::i32, 1, 0, 
2343
127k
     10, 
2344
127k
      OPC_CheckChild1Integer, 2, 
2345
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2346
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I64x2),
2347
127k
                    MVT::i32, 1, 0, 
2348
127k
     0, 
2349
127k
    0, 
2350
127k
   0, 
2351
127k
  44|128,9, 
2352
127k
   OPC_RecordChild0,
2353
127k
   OPC_SwitchType , 108|128,3, MVT::i32,
2354
127k
    OPC_Scope, 118, 
2355
127k
     OPC_CheckChild0TypeI32,
2356
127k
     OPC_Scope, 10, 
2357
127k
      OPC_CheckChild1Integer, 0, 
2358
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2359
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQZ_I32),
2360
127k
                    MVT::i32, 1, 0, 
2361
127k
     103, 
2362
127k
      OPC_RecordChild1,
2363
127k
      OPC_Scope, 9, 
2364
127k
       OPC_CheckChild2CondCode, ISD::SETEQ,
2365
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_I32),
2366
127k
                     MVT::i32, 2, 0, 1, 
2367
127k
      9, 
2368
127k
       OPC_CheckChild2CondCode, ISD::SETNE,
2369
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_I32),
2370
127k
                     MVT::i32, 2, 0, 1, 
2371
127k
      9, 
2372
127k
       OPC_CheckChild2CondCode, ISD::SETLT,
2373
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_S_I32),
2374
127k
                     MVT::i32, 2, 0, 1, 
2375
127k
      9, 
2376
127k
       OPC_CheckChild2CondCode, ISD::SETULT,
2377
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_U_I32),
2378
127k
                     MVT::i32, 2, 0, 1, 
2379
127k
      9, 
2380
127k
       OPC_CheckChild2CondCode, ISD::SETGT,
2381
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_S_I32),
2382
127k
                     MVT::i32, 2, 0, 1, 
2383
127k
      9, 
2384
127k
       OPC_CheckChild2CondCode, ISD::SETUGT,
2385
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_U_I32),
2386
127k
                     MVT::i32, 2, 0, 1, 
2387
127k
      9, 
2388
127k
       OPC_CheckChild2CondCode, ISD::SETLE,
2389
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_S_I32),
2390
127k
                     MVT::i32, 2, 0, 1, 
2391
127k
      9, 
2392
127k
       OPC_CheckChild2CondCode, ISD::SETULE,
2393
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_U_I32),
2394
127k
                     MVT::i32, 2, 0, 1, 
2395
127k
      9, 
2396
127k
       OPC_CheckChild2CondCode, ISD::SETGE,
2397
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_S_I32),
2398
127k
                     MVT::i32, 2, 0, 1, 
2399
127k
      9, 
2400
127k
       OPC_CheckChild2CondCode, ISD::SETUGE,
2401
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_U_I32),
2402
127k
                     MVT::i32, 2, 0, 1, 
2403
127k
      0, 
2404
127k
     0, 
2405
127k
    118, 
2406
127k
     OPC_CheckChild0TypeI64,
2407
127k
     OPC_Scope, 10, 
2408
127k
      OPC_CheckChild1Integer, 0, 
2409
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2410
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQZ_I64),
2411
127k
                    MVT::i32, 1, 0, 
2412
127k
     103, 
2413
127k
      OPC_RecordChild1,
2414
127k
      OPC_Scope, 9, 
2415
127k
       OPC_CheckChild2CondCode, ISD::SETEQ,
2416
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_I64),
2417
127k
                     MVT::i32, 2, 0, 1, 
2418
127k
      9, 
2419
127k
       OPC_CheckChild2CondCode, ISD::SETNE,
2420
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_I64),
2421
127k
                     MVT::i32, 2, 0, 1, 
2422
127k
      9, 
2423
127k
       OPC_CheckChild2CondCode, ISD::SETLT,
2424
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_S_I64),
2425
127k
                     MVT::i32, 2, 0, 1, 
2426
127k
      9, 
2427
127k
       OPC_CheckChild2CondCode, ISD::SETULT,
2428
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_U_I64),
2429
127k
                     MVT::i32, 2, 0, 1, 
2430
127k
      9, 
2431
127k
       OPC_CheckChild2CondCode, ISD::SETGT,
2432
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_S_I64),
2433
127k
                     MVT::i32, 2, 0, 1, 
2434
127k
      9, 
2435
127k
       OPC_CheckChild2CondCode, ISD::SETUGT,
2436
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_U_I64),
2437
127k
                     MVT::i32, 2, 0, 1, 
2438
127k
      9, 
2439
127k
       OPC_CheckChild2CondCode, ISD::SETLE,
2440
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_S_I64),
2441
127k
                     MVT::i32, 2, 0, 1, 
2442
127k
      9, 
2443
127k
       OPC_CheckChild2CondCode, ISD::SETULE,
2444
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_U_I64),
2445
127k
                     MVT::i32, 2, 0, 1, 
2446
127k
      9, 
2447
127k
       OPC_CheckChild2CondCode, ISD::SETGE,
2448
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_S_I64),
2449
127k
                     MVT::i32, 2, 0, 1, 
2450
127k
      9, 
2451
127k
       OPC_CheckChild2CondCode, ISD::SETUGE,
2452
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_U_I64),
2453
127k
                     MVT::i32, 2, 0, 1, 
2454
127k
      0, 
2455
127k
     0, 
2456
127k
    125, 
2457
127k
     OPC_CheckChild0Type, MVT::f32,
2458
127k
     OPC_RecordChild1,
2459
127k
     OPC_Scope, 9, 
2460
127k
      OPC_CheckChild2CondCode, ISD::SETOEQ,
2461
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_F32),
2462
127k
                    MVT::i32, 2, 0, 1, 
2463
127k
     9, 
2464
127k
      OPC_CheckChild2CondCode, ISD::SETUNE,
2465
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_F32),
2466
127k
                    MVT::i32, 2, 0, 1, 
2467
127k
     9, 
2468
127k
      OPC_CheckChild2CondCode, ISD::SETOLT,
2469
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_F32),
2470
127k
                    MVT::i32, 2, 0, 1, 
2471
127k
     9, 
2472
127k
      OPC_CheckChild2CondCode, ISD::SETOLE,
2473
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_F32),
2474
127k
                    MVT::i32, 2, 0, 1, 
2475
127k
     9, 
2476
127k
      OPC_CheckChild2CondCode, ISD::SETOGT,
2477
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_F32),
2478
127k
                    MVT::i32, 2, 0, 1, 
2479
127k
     9, 
2480
127k
      OPC_CheckChild2CondCode, ISD::SETOGE,
2481
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_F32),
2482
127k
                    MVT::i32, 2, 0, 1, 
2483
127k
     9, 
2484
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2485
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_F32),
2486
127k
                    MVT::i32, 2, 0, 1, 
2487
127k
     9, 
2488
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2489
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_F32),
2490
127k
                    MVT::i32, 2, 0, 1, 
2491
127k
     9, 
2492
127k
      OPC_CheckChild2CondCode, ISD::SETLT,
2493
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_F32),
2494
127k
                    MVT::i32, 2, 0, 1, 
2495
127k
     9, 
2496
127k
      OPC_CheckChild2CondCode, ISD::SETLE,
2497
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_F32),
2498
127k
                    MVT::i32, 2, 0, 1, 
2499
127k
     9, 
2500
127k
      OPC_CheckChild2CondCode, ISD::SETGT,
2501
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_F32),
2502
127k
                    MVT::i32, 2, 0, 1, 
2503
127k
     9, 
2504
127k
      OPC_CheckChild2CondCode, ISD::SETGE,
2505
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_F32),
2506
127k
                    MVT::i32, 2, 0, 1, 
2507
127k
     0, 
2508
127k
    125, 
2509
127k
     OPC_CheckChild0Type, MVT::f64,
2510
127k
     OPC_RecordChild1,
2511
127k
     OPC_Scope, 9, 
2512
127k
      OPC_CheckChild2CondCode, ISD::SETOEQ,
2513
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_F64),
2514
127k
                    MVT::i32, 2, 0, 1, 
2515
127k
     9, 
2516
127k
      OPC_CheckChild2CondCode, ISD::SETUNE,
2517
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_F64),
2518
127k
                    MVT::i32, 2, 0, 1, 
2519
127k
     9, 
2520
127k
      OPC_CheckChild2CondCode, ISD::SETOLT,
2521
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_F64),
2522
127k
                    MVT::i32, 2, 0, 1, 
2523
127k
     9, 
2524
127k
      OPC_CheckChild2CondCode, ISD::SETOLE,
2525
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_F64),
2526
127k
                    MVT::i32, 2, 0, 1, 
2527
127k
     9, 
2528
127k
      OPC_CheckChild2CondCode, ISD::SETOGT,
2529
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_F64),
2530
127k
                    MVT::i32, 2, 0, 1, 
2531
127k
     9, 
2532
127k
      OPC_CheckChild2CondCode, ISD::SETOGE,
2533
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_F64),
2534
127k
                    MVT::i32, 2, 0, 1, 
2535
127k
     9, 
2536
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2537
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_F64),
2538
127k
                    MVT::i32, 2, 0, 1, 
2539
127k
     9, 
2540
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2541
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_F64),
2542
127k
                    MVT::i32, 2, 0, 1, 
2543
127k
     9, 
2544
127k
      OPC_CheckChild2CondCode, ISD::SETLT,
2545
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_F64),
2546
127k
                    MVT::i32, 2, 0, 1, 
2547
127k
     9, 
2548
127k
      OPC_CheckChild2CondCode, ISD::SETLE,
2549
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_F64),
2550
127k
                    MVT::i32, 2, 0, 1, 
2551
127k
     9, 
2552
127k
      OPC_CheckChild2CondCode, ISD::SETGT,
2553
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_F64),
2554
127k
                    MVT::i32, 2, 0, 1, 
2555
127k
     9, 
2556
127k
      OPC_CheckChild2CondCode, ISD::SETGE,
2557
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_F64),
2558
127k
                    MVT::i32, 2, 0, 1, 
2559
127k
     0, 
2560
127k
    0, 
2561
127k
   115, MVT::v16i8,
2562
127k
    OPC_CheckChild0Type, MVT::v16i8,
2563
127k
    OPC_RecordChild1,
2564
127k
    OPC_Scope, 10, 
2565
127k
     OPC_CheckChild2CondCode, ISD::SETEQ,
2566
127k
     OPC_CheckPatternPredicate0,
2567
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_I8x16),
2568
127k
                   MVT::v16i8, 2, 0, 1, 
2569
127k
    10, 
2570
127k
     OPC_CheckChild2CondCode, ISD::SETNE,
2571
127k
     OPC_CheckPatternPredicate0,
2572
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_I8x16),
2573
127k
                   MVT::v16i8, 2, 0, 1, 
2574
127k
    10, 
2575
127k
     OPC_CheckChild2CondCode, ISD::SETLT,
2576
127k
     OPC_CheckPatternPredicate0,
2577
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_S_I8x16),
2578
127k
                   MVT::v16i8, 2, 0, 1, 
2579
127k
    10, 
2580
127k
     OPC_CheckChild2CondCode, ISD::SETULT,
2581
127k
     OPC_CheckPatternPredicate0,
2582
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_U_I8x16),
2583
127k
                   MVT::v16i8, 2, 0, 1, 
2584
127k
    10, 
2585
127k
     OPC_CheckChild2CondCode, ISD::SETGT,
2586
127k
     OPC_CheckPatternPredicate0,
2587
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_S_I8x16),
2588
127k
                   MVT::v16i8, 2, 0, 1, 
2589
127k
    10, 
2590
127k
     OPC_CheckChild2CondCode, ISD::SETUGT,
2591
127k
     OPC_CheckPatternPredicate0,
2592
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_U_I8x16),
2593
127k
                   MVT::v16i8, 2, 0, 1, 
2594
127k
    10, 
2595
127k
     OPC_CheckChild2CondCode, ISD::SETLE,
2596
127k
     OPC_CheckPatternPredicate0,
2597
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_S_I8x16),
2598
127k
                   MVT::v16i8, 2, 0, 1, 
2599
127k
    10, 
2600
127k
     OPC_CheckChild2CondCode, ISD::SETULE,
2601
127k
     OPC_CheckPatternPredicate0,
2602
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_U_I8x16),
2603
127k
                   MVT::v16i8, 2, 0, 1, 
2604
127k
    10, 
2605
127k
     OPC_CheckChild2CondCode, ISD::SETGE,
2606
127k
     OPC_CheckPatternPredicate0,
2607
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_S_I8x16),
2608
127k
                   MVT::v16i8, 2, 0, 1, 
2609
127k
    10, 
2610
127k
     OPC_CheckChild2CondCode, ISD::SETUGE,
2611
127k
     OPC_CheckPatternPredicate0,
2612
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_U_I8x16),
2613
127k
                   MVT::v16i8, 2, 0, 1, 
2614
127k
    0, 
2615
127k
   115, MVT::v8i16,
2616
127k
    OPC_CheckChild0Type, MVT::v8i16,
2617
127k
    OPC_RecordChild1,
2618
127k
    OPC_Scope, 10, 
2619
127k
     OPC_CheckChild2CondCode, ISD::SETEQ,
2620
127k
     OPC_CheckPatternPredicate0,
2621
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_I16x8),
2622
127k
                   MVT::v8i16, 2, 0, 1, 
2623
127k
    10, 
2624
127k
     OPC_CheckChild2CondCode, ISD::SETNE,
2625
127k
     OPC_CheckPatternPredicate0,
2626
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_I16x8),
2627
127k
                   MVT::v8i16, 2, 0, 1, 
2628
127k
    10, 
2629
127k
     OPC_CheckChild2CondCode, ISD::SETLT,
2630
127k
     OPC_CheckPatternPredicate0,
2631
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_S_I16x8),
2632
127k
                   MVT::v8i16, 2, 0, 1, 
2633
127k
    10, 
2634
127k
     OPC_CheckChild2CondCode, ISD::SETULT,
2635
127k
     OPC_CheckPatternPredicate0,
2636
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_U_I16x8),
2637
127k
                   MVT::v8i16, 2, 0, 1, 
2638
127k
    10, 
2639
127k
     OPC_CheckChild2CondCode, ISD::SETGT,
2640
127k
     OPC_CheckPatternPredicate0,
2641
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_S_I16x8),
2642
127k
                   MVT::v8i16, 2, 0, 1, 
2643
127k
    10, 
2644
127k
     OPC_CheckChild2CondCode, ISD::SETUGT,
2645
127k
     OPC_CheckPatternPredicate0,
2646
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_U_I16x8),
2647
127k
                   MVT::v8i16, 2, 0, 1, 
2648
127k
    10, 
2649
127k
     OPC_CheckChild2CondCode, ISD::SETLE,
2650
127k
     OPC_CheckPatternPredicate0,
2651
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_S_I16x8),
2652
127k
                   MVT::v8i16, 2, 0, 1, 
2653
127k
    10, 
2654
127k
     OPC_CheckChild2CondCode, ISD::SETULE,
2655
127k
     OPC_CheckPatternPredicate0,
2656
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_U_I16x8),
2657
127k
                   MVT::v8i16, 2, 0, 1, 
2658
127k
    10, 
2659
127k
     OPC_CheckChild2CondCode, ISD::SETGE,
2660
127k
     OPC_CheckPatternPredicate0,
2661
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_S_I16x8),
2662
127k
                   MVT::v8i16, 2, 0, 1, 
2663
127k
    10, 
2664
127k
     OPC_CheckChild2CondCode, ISD::SETUGE,
2665
127k
     OPC_CheckPatternPredicate0,
2666
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_U_I16x8),
2667
127k
                   MVT::v8i16, 2, 0, 1, 
2668
127k
    0, 
2669
127k
   123|128,1, MVT::v4i32,
2670
127k
    OPC_Scope, 115, 
2671
127k
     OPC_CheckChild0Type, MVT::v4i32,
2672
127k
     OPC_RecordChild1,
2673
127k
     OPC_Scope, 10, 
2674
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2675
127k
      OPC_CheckPatternPredicate0,
2676
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_I32x4),
2677
127k
                    MVT::v4i32, 2, 0, 1, 
2678
127k
     10, 
2679
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2680
127k
      OPC_CheckPatternPredicate0,
2681
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_I32x4),
2682
127k
                    MVT::v4i32, 2, 0, 1, 
2683
127k
     10, 
2684
127k
      OPC_CheckChild2CondCode, ISD::SETLT,
2685
127k
      OPC_CheckPatternPredicate0,
2686
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_S_I32x4),
2687
127k
                    MVT::v4i32, 2, 0, 1, 
2688
127k
     10, 
2689
127k
      OPC_CheckChild2CondCode, ISD::SETULT,
2690
127k
      OPC_CheckPatternPredicate0,
2691
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_U_I32x4),
2692
127k
                    MVT::v4i32, 2, 0, 1, 
2693
127k
     10, 
2694
127k
      OPC_CheckChild2CondCode, ISD::SETGT,
2695
127k
      OPC_CheckPatternPredicate0,
2696
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_S_I32x4),
2697
127k
                    MVT::v4i32, 2, 0, 1, 
2698
127k
     10, 
2699
127k
      OPC_CheckChild2CondCode, ISD::SETUGT,
2700
127k
      OPC_CheckPatternPredicate0,
2701
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_U_I32x4),
2702
127k
                    MVT::v4i32, 2, 0, 1, 
2703
127k
     10, 
2704
127k
      OPC_CheckChild2CondCode, ISD::SETLE,
2705
127k
      OPC_CheckPatternPredicate0,
2706
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_S_I32x4),
2707
127k
                    MVT::v4i32, 2, 0, 1, 
2708
127k
     10, 
2709
127k
      OPC_CheckChild2CondCode, ISD::SETULE,
2710
127k
      OPC_CheckPatternPredicate0,
2711
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_U_I32x4),
2712
127k
                    MVT::v4i32, 2, 0, 1, 
2713
127k
     10, 
2714
127k
      OPC_CheckChild2CondCode, ISD::SETGE,
2715
127k
      OPC_CheckPatternPredicate0,
2716
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_S_I32x4),
2717
127k
                    MVT::v4i32, 2, 0, 1, 
2718
127k
     10, 
2719
127k
      OPC_CheckChild2CondCode, ISD::SETUGE,
2720
127k
      OPC_CheckPatternPredicate0,
2721
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_U_I32x4),
2722
127k
                    MVT::v4i32, 2, 0, 1, 
2723
127k
     0, 
2724
127k
    3|128,1, 
2725
127k
     OPC_CheckChild0Type, MVT::v4f32,
2726
127k
     OPC_RecordChild1,
2727
127k
     OPC_Scope, 10, 
2728
127k
      OPC_CheckChild2CondCode, ISD::SETOEQ,
2729
127k
      OPC_CheckPatternPredicate0,
2730
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_F32x4),
2731
127k
                    MVT::v4i32, 2, 0, 1, 
2732
127k
     10, 
2733
127k
      OPC_CheckChild2CondCode, ISD::SETUNE,
2734
127k
      OPC_CheckPatternPredicate0,
2735
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_F32x4),
2736
127k
                    MVT::v4i32, 2, 0, 1, 
2737
127k
     10, 
2738
127k
      OPC_CheckChild2CondCode, ISD::SETOLT,
2739
127k
      OPC_CheckPatternPredicate0,
2740
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_F32x4),
2741
127k
                    MVT::v4i32, 2, 0, 1, 
2742
127k
     10, 
2743
127k
      OPC_CheckChild2CondCode, ISD::SETOGT,
2744
127k
      OPC_CheckPatternPredicate0,
2745
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_F32x4),
2746
127k
                    MVT::v4i32, 2, 0, 1, 
2747
127k
     10, 
2748
127k
      OPC_CheckChild2CondCode, ISD::SETOLE,
2749
127k
      OPC_CheckPatternPredicate0,
2750
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_F32x4),
2751
127k
                    MVT::v4i32, 2, 0, 1, 
2752
127k
     10, 
2753
127k
      OPC_CheckChild2CondCode, ISD::SETOGE,
2754
127k
      OPC_CheckPatternPredicate0,
2755
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_F32x4),
2756
127k
                    MVT::v4i32, 2, 0, 1, 
2757
127k
     9, 
2758
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2759
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_F32x4),
2760
127k
                    MVT::v4i32, 2, 0, 1, 
2761
127k
     9, 
2762
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2763
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_F32x4),
2764
127k
                    MVT::v4i32, 2, 0, 1, 
2765
127k
     9, 
2766
127k
      OPC_CheckChild2CondCode, ISD::SETLT,
2767
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_F32x4),
2768
127k
                    MVT::v4i32, 2, 0, 1, 
2769
127k
     9, 
2770
127k
      OPC_CheckChild2CondCode, ISD::SETGT,
2771
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_F32x4),
2772
127k
                    MVT::v4i32, 2, 0, 1, 
2773
127k
     9, 
2774
127k
      OPC_CheckChild2CondCode, ISD::SETLE,
2775
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_F32x4),
2776
127k
                    MVT::v4i32, 2, 0, 1, 
2777
127k
     9, 
2778
127k
      OPC_CheckChild2CondCode, ISD::SETGE,
2779
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_F32x4),
2780
127k
                    MVT::v4i32, 2, 0, 1, 
2781
127k
     0, 
2782
127k
    0, 
2783
127k
   79|128,1, MVT::v2i64,
2784
127k
    OPC_Scope, 71, 
2785
127k
     OPC_CheckChild0Type, MVT::v2i64,
2786
127k
     OPC_RecordChild1,
2787
127k
     OPC_Scope, 10, 
2788
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2789
127k
      OPC_CheckPatternPredicate0,
2790
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_I64x2),
2791
127k
                    MVT::v2i64, 2, 0, 1, 
2792
127k
     10, 
2793
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2794
127k
      OPC_CheckPatternPredicate0,
2795
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_I64x2),
2796
127k
                    MVT::v2i64, 2, 0, 1, 
2797
127k
     10, 
2798
127k
      OPC_CheckChild2CondCode, ISD::SETLT,
2799
127k
      OPC_CheckPatternPredicate0,
2800
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_S_I64x2),
2801
127k
                    MVT::v2i64, 2, 0, 1, 
2802
127k
     10, 
2803
127k
      OPC_CheckChild2CondCode, ISD::SETGT,
2804
127k
      OPC_CheckPatternPredicate0,
2805
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_S_I64x2),
2806
127k
                    MVT::v2i64, 2, 0, 1, 
2807
127k
     10, 
2808
127k
      OPC_CheckChild2CondCode, ISD::SETLE,
2809
127k
      OPC_CheckPatternPredicate0,
2810
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_S_I64x2),
2811
127k
                    MVT::v2i64, 2, 0, 1, 
2812
127k
     10, 
2813
127k
      OPC_CheckChild2CondCode, ISD::SETGE,
2814
127k
      OPC_CheckPatternPredicate0,
2815
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_S_I64x2),
2816
127k
                    MVT::v2i64, 2, 0, 1, 
2817
127k
     0, 
2818
127k
    3|128,1, 
2819
127k
     OPC_CheckChild0Type, MVT::v2f64,
2820
127k
     OPC_RecordChild1,
2821
127k
     OPC_Scope, 10, 
2822
127k
      OPC_CheckChild2CondCode, ISD::SETOEQ,
2823
127k
      OPC_CheckPatternPredicate0,
2824
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_F64x2),
2825
127k
                    MVT::v2i64, 2, 0, 1, 
2826
127k
     10, 
2827
127k
      OPC_CheckChild2CondCode, ISD::SETUNE,
2828
127k
      OPC_CheckPatternPredicate0,
2829
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_F64x2),
2830
127k
                    MVT::v2i64, 2, 0, 1, 
2831
127k
     10, 
2832
127k
      OPC_CheckChild2CondCode, ISD::SETOLT,
2833
127k
      OPC_CheckPatternPredicate0,
2834
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_F64x2),
2835
127k
                    MVT::v2i64, 2, 0, 1, 
2836
127k
     10, 
2837
127k
      OPC_CheckChild2CondCode, ISD::SETOGT,
2838
127k
      OPC_CheckPatternPredicate0,
2839
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_F64x2),
2840
127k
                    MVT::v2i64, 2, 0, 1, 
2841
127k
     10, 
2842
127k
      OPC_CheckChild2CondCode, ISD::SETOLE,
2843
127k
      OPC_CheckPatternPredicate0,
2844
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_F64x2),
2845
127k
                    MVT::v2i64, 2, 0, 1, 
2846
127k
     10, 
2847
127k
      OPC_CheckChild2CondCode, ISD::SETOGE,
2848
127k
      OPC_CheckPatternPredicate0,
2849
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_F64x2),
2850
127k
                    MVT::v2i64, 2, 0, 1, 
2851
127k
     9, 
2852
127k
      OPC_CheckChild2CondCode, ISD::SETEQ,
2853
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EQ_F64x2),
2854
127k
                    MVT::v2i64, 2, 0, 1, 
2855
127k
     9, 
2856
127k
      OPC_CheckChild2CondCode, ISD::SETNE,
2857
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NE_F64x2),
2858
127k
                    MVT::v2i64, 2, 0, 1, 
2859
127k
     9, 
2860
127k
      OPC_CheckChild2CondCode, ISD::SETLT,
2861
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LT_F64x2),
2862
127k
                    MVT::v2i64, 2, 0, 1, 
2863
127k
     9, 
2864
127k
      OPC_CheckChild2CondCode, ISD::SETGT,
2865
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GT_F64x2),
2866
127k
                    MVT::v2i64, 2, 0, 1, 
2867
127k
     9, 
2868
127k
      OPC_CheckChild2CondCode, ISD::SETLE,
2869
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LE_F64x2),
2870
127k
                    MVT::v2i64, 2, 0, 1, 
2871
127k
     9, 
2872
127k
      OPC_CheckChild2CondCode, ISD::SETGE,
2873
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GE_F64x2),
2874
127k
                    MVT::v2i64, 2, 0, 1, 
2875
127k
     0, 
2876
127k
    0, 
2877
127k
   0,
2878
127k
  0, 
2879
127k
 17|128,11, TARGET_VAL(ISD::LOAD),
2880
127k
  OPC_RecordMemRef,
2881
127k
  OPC_RecordNode,
2882
127k
  OPC_RecordChild1,
2883
127k
  OPC_Scope, 68|128,5, 
2884
127k
   OPC_CheckChild1TypeI32,
2885
127k
   OPC_CheckPredicate, 9,
2886
127k
   OPC_Scope, 37, 
2887
127k
    OPC_CheckPredicate6, 
2888
127k
    OPC_SwitchType , 15, MVT::i32,
2889
127k
     OPC_CheckPatternPredicate3,
2890
127k
     OPC_CheckComplexPat0, /*#*/1,
2891
127k
     OPC_EmitMergeInputChains1_0,
2892
127k
     OPC_EmitInteger32, 0, 
2893
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
2894
127k
                   MVT::i32, 3, 4, 2, 3, 
2895
127k
    15, MVT::i64,
2896
127k
     OPC_CheckPatternPredicate3,
2897
127k
     OPC_CheckComplexPat0, /*#*/1,
2898
127k
     OPC_EmitMergeInputChains1_0,
2899
127k
     OPC_EmitInteger32, 0, 
2900
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
2901
127k
                   MVT::i64, 3, 4, 2, 3, 
2902
127k
    0,
2903
127k
   97, 
2904
127k
    OPC_CheckPredicate, 12,
2905
127k
    OPC_SwitchType , 36, MVT::i32,
2906
127k
     OPC_Scope, 16, 
2907
127k
      OPC_CheckPredicate2, 
2908
127k
      OPC_CheckPatternPredicate3,
2909
127k
      OPC_CheckComplexPat0, /*#*/1,
2910
127k
      OPC_EmitMergeInputChains1_0,
2911
127k
      OPC_EmitInteger32, 0, 
2912
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
2913
127k
                    MVT::i32, 3, 4, 2, 3, 
2914
127k
     16, 
2915
127k
      OPC_CheckPredicate1, 
2916
127k
      OPC_CheckPatternPredicate3,
2917
127k
      OPC_CheckComplexPat0, /*#*/1,
2918
127k
      OPC_EmitMergeInputChains1_0,
2919
127k
      OPC_EmitInteger32, 0, 
2920
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
2921
127k
                    MVT::i32, 3, 4, 2, 3, 
2922
127k
     0, 
2923
127k
    53, MVT::i64,
2924
127k
     OPC_Scope, 16, 
2925
127k
      OPC_CheckPredicate2, 
2926
127k
      OPC_CheckPatternPredicate3,
2927
127k
      OPC_CheckComplexPat0, /*#*/1,
2928
127k
      OPC_EmitMergeInputChains1_0,
2929
127k
      OPC_EmitInteger32, 0, 
2930
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
2931
127k
                    MVT::i64, 3, 4, 2, 3, 
2932
127k
     16, 
2933
127k
      OPC_CheckPredicate1, 
2934
127k
      OPC_CheckPatternPredicate3,
2935
127k
      OPC_CheckComplexPat0, /*#*/1,
2936
127k
      OPC_EmitMergeInputChains1_0,
2937
127k
      OPC_EmitInteger32, 0, 
2938
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
2939
127k
                    MVT::i64, 3, 4, 2, 3, 
2940
127k
     16, 
2941
127k
      OPC_CheckPredicate3, 
2942
127k
      OPC_CheckPatternPredicate3,
2943
127k
      OPC_CheckComplexPat0, /*#*/1,
2944
127k
      OPC_EmitMergeInputChains1_0,
2945
127k
      OPC_EmitInteger32, 0, 
2946
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
2947
127k
                    MVT::i64, 3, 4, 2, 3, 
2948
127k
     0, 
2949
127k
    0,
2950
127k
   97, 
2951
127k
    OPC_CheckPredicate, 14,
2952
127k
    OPC_SwitchType , 36, MVT::i32,
2953
127k
     OPC_Scope, 16, 
2954
127k
      OPC_CheckPredicate2, 
2955
127k
      OPC_CheckPatternPredicate3,
2956
127k
      OPC_CheckComplexPat0, /*#*/1,
2957
127k
      OPC_EmitMergeInputChains1_0,
2958
127k
      OPC_EmitInteger32, 0, 
2959
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
2960
127k
                    MVT::i32, 3, 4, 2, 3, 
2961
127k
     16, 
2962
127k
      OPC_CheckPredicate1, 
2963
127k
      OPC_CheckPatternPredicate3,
2964
127k
      OPC_CheckComplexPat0, /*#*/1,
2965
127k
      OPC_EmitMergeInputChains1_0,
2966
127k
      OPC_EmitInteger32, 0, 
2967
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
2968
127k
                    MVT::i32, 3, 4, 2, 3, 
2969
127k
     0, 
2970
127k
    53, MVT::i64,
2971
127k
     OPC_Scope, 16, 
2972
127k
      OPC_CheckPredicate2, 
2973
127k
      OPC_CheckPatternPredicate3,
2974
127k
      OPC_CheckComplexPat0, /*#*/1,
2975
127k
      OPC_EmitMergeInputChains1_0,
2976
127k
      OPC_EmitInteger32, 0, 
2977
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
2978
127k
                    MVT::i64, 3, 4, 2, 3, 
2979
127k
     16, 
2980
127k
      OPC_CheckPredicate1, 
2981
127k
      OPC_CheckPatternPredicate3,
2982
127k
      OPC_CheckComplexPat0, /*#*/1,
2983
127k
      OPC_EmitMergeInputChains1_0,
2984
127k
      OPC_EmitInteger32, 0, 
2985
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
2986
127k
                    MVT::i64, 3, 4, 2, 3, 
2987
127k
     16, 
2988
127k
      OPC_CheckPredicate3, 
2989
127k
      OPC_CheckPatternPredicate3,
2990
127k
      OPC_CheckComplexPat0, /*#*/1,
2991
127k
      OPC_EmitMergeInputChains1_0,
2992
127k
      OPC_EmitInteger32, 0, 
2993
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
2994
127k
                    MVT::i64, 3, 4, 2, 3, 
2995
127k
     0, 
2996
127k
    0,
2997
127k
   97, 
2998
127k
    OPC_CheckPredicate, 10,
2999
127k
    OPC_SwitchType , 36, MVT::i32,
3000
127k
     OPC_Scope, 16, 
3001
127k
      OPC_CheckPredicate2, 
3002
127k
      OPC_CheckPatternPredicate3,
3003
127k
      OPC_CheckComplexPat0, /*#*/1,
3004
127k
      OPC_EmitMergeInputChains1_0,
3005
127k
      OPC_EmitInteger32, 0, 
3006
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3007
127k
                    MVT::i32, 3, 4, 2, 3, 
3008
127k
     16, 
3009
127k
      OPC_CheckPredicate1, 
3010
127k
      OPC_CheckPatternPredicate3,
3011
127k
      OPC_CheckComplexPat0, /*#*/1,
3012
127k
      OPC_EmitMergeInputChains1_0,
3013
127k
      OPC_EmitInteger32, 0, 
3014
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3015
127k
                    MVT::i32, 3, 4, 2, 3, 
3016
127k
     0, 
3017
127k
    53, MVT::i64,
3018
127k
     OPC_Scope, 16, 
3019
127k
      OPC_CheckPredicate2, 
3020
127k
      OPC_CheckPatternPredicate3,
3021
127k
      OPC_CheckComplexPat0, /*#*/1,
3022
127k
      OPC_EmitMergeInputChains1_0,
3023
127k
      OPC_EmitInteger32, 0, 
3024
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
3025
127k
                    MVT::i64, 3, 4, 2, 3, 
3026
127k
     16, 
3027
127k
      OPC_CheckPredicate1, 
3028
127k
      OPC_CheckPatternPredicate3,
3029
127k
      OPC_CheckComplexPat0, /*#*/1,
3030
127k
      OPC_EmitMergeInputChains1_0,
3031
127k
      OPC_EmitInteger32, 0, 
3032
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
3033
127k
                    MVT::i64, 3, 4, 2, 3, 
3034
127k
     16, 
3035
127k
      OPC_CheckPredicate3, 
3036
127k
      OPC_CheckPatternPredicate3,
3037
127k
      OPC_CheckComplexPat0, /*#*/1,
3038
127k
      OPC_EmitMergeInputChains1_0,
3039
127k
      OPC_EmitInteger32, 0, 
3040
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
3041
127k
                    MVT::i64, 3, 4, 2, 3, 
3042
127k
     0, 
3043
127k
    0,
3044
127k
   105, 
3045
127k
    OPC_CheckPredicate6, 
3046
127k
    OPC_SwitchType , 15, MVT::f32,
3047
127k
     OPC_CheckPatternPredicate3,
3048
127k
     OPC_CheckComplexPat0, /*#*/1,
3049
127k
     OPC_EmitMergeInputChains1_0,
3050
127k
     OPC_EmitInteger32, 0, 
3051
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3052
127k
                   MVT::f32, 3, 4, 2, 3, 
3053
127k
    15, MVT::f64,
3054
127k
     OPC_CheckPatternPredicate3,
3055
127k
     OPC_CheckComplexPat0, /*#*/1,
3056
127k
     OPC_EmitMergeInputChains1_0,
3057
127k
     OPC_EmitInteger32, 0, 
3058
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A32), 0|OPFL_Chain|OPFL_MemRefs,
3059
127k
                   MVT::f64, 3, 4, 2, 3, 
3060
127k
    15, MVT::v16i8,
3061
127k
     OPC_CheckPatternPredicate3,
3062
127k
     OPC_CheckComplexPat0, /*#*/1,
3063
127k
     OPC_EmitMergeInputChains1_0,
3064
127k
     OPC_EmitInteger32, 0, 
3065
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
3066
127k
                   MVT::v16i8, 3, 4, 2, 3, 
3067
127k
    15, MVT::v8i16,
3068
127k
     OPC_CheckPatternPredicate3,
3069
127k
     OPC_CheckComplexPat0, /*#*/1,
3070
127k
     OPC_EmitMergeInputChains1_0,
3071
127k
     OPC_EmitInteger32, 0, 
3072
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
3073
127k
                   MVT::v8i16, 3, 4, 2, 3, 
3074
127k
    15, MVT::v4i32,
3075
127k
     OPC_CheckPatternPredicate3,
3076
127k
     OPC_CheckComplexPat0, /*#*/1,
3077
127k
     OPC_EmitMergeInputChains1_0,
3078
127k
     OPC_EmitInteger32, 0, 
3079
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
3080
127k
                   MVT::v4i32, 3, 4, 2, 3, 
3081
127k
    15, MVT::v2i64,
3082
127k
     OPC_CheckPatternPredicate3,
3083
127k
     OPC_CheckComplexPat0, /*#*/1,
3084
127k
     OPC_EmitMergeInputChains1_0,
3085
127k
     OPC_EmitInteger32, 0, 
3086
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
3087
127k
                   MVT::v2i64, 3, 4, 2, 3, 
3088
127k
    0,
3089
127k
   21, 
3090
127k
    OPC_CheckPredicate, 12,
3091
127k
    OPC_CheckPredicate, 21,
3092
127k
    OPC_CheckType, MVT::v8i16,
3093
127k
    OPC_CheckPatternPredicate3,
3094
127k
    OPC_CheckComplexPat0, /*#*/1,
3095
127k
    OPC_EmitMergeInputChains1_0,
3096
127k
    OPC_EmitInteger32, 0, 
3097
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs,
3098
127k
                  MVT::v8i16, 3, 4, 2, 3, 
3099
127k
   21, 
3100
127k
    OPC_CheckPredicate, 14,
3101
127k
    OPC_CheckPredicate, 21,
3102
127k
    OPC_CheckType, MVT::v8i16,
3103
127k
    OPC_CheckPatternPredicate3,
3104
127k
    OPC_CheckComplexPat0, /*#*/1,
3105
127k
    OPC_EmitMergeInputChains1_0,
3106
127k
    OPC_EmitInteger32, 0, 
3107
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs,
3108
127k
                  MVT::v8i16, 3, 4, 2, 3, 
3109
127k
   21, 
3110
127k
    OPC_CheckPredicate, 10,
3111
127k
    OPC_CheckPredicate, 21,
3112
127k
    OPC_CheckType, MVT::v8i16,
3113
127k
    OPC_CheckPatternPredicate3,
3114
127k
    OPC_CheckComplexPat0, /*#*/1,
3115
127k
    OPC_EmitMergeInputChains1_0,
3116
127k
    OPC_EmitInteger32, 0, 
3117
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs,
3118
127k
                  MVT::v8i16, 3, 4, 2, 3, 
3119
127k
   21, 
3120
127k
    OPC_CheckPredicate, 12,
3121
127k
    OPC_CheckPredicate, 22,
3122
127k
    OPC_CheckType, MVT::v4i32,
3123
127k
    OPC_CheckPatternPredicate3,
3124
127k
    OPC_CheckComplexPat0, /*#*/1,
3125
127k
    OPC_EmitMergeInputChains1_0,
3126
127k
    OPC_EmitInteger32, 0, 
3127
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs,
3128
127k
                  MVT::v4i32, 3, 4, 2, 3, 
3129
127k
   21, 
3130
127k
    OPC_CheckPredicate, 14,
3131
127k
    OPC_CheckPredicate, 22,
3132
127k
    OPC_CheckType, MVT::v4i32,
3133
127k
    OPC_CheckPatternPredicate3,
3134
127k
    OPC_CheckComplexPat0, /*#*/1,
3135
127k
    OPC_EmitMergeInputChains1_0,
3136
127k
    OPC_EmitInteger32, 0, 
3137
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs,
3138
127k
                  MVT::v4i32, 3, 4, 2, 3, 
3139
127k
   21, 
3140
127k
    OPC_CheckPredicate, 10,
3141
127k
    OPC_CheckPredicate, 22,
3142
127k
    OPC_CheckType, MVT::v4i32,
3143
127k
    OPC_CheckPatternPredicate3,
3144
127k
    OPC_CheckComplexPat0, /*#*/1,
3145
127k
    OPC_EmitMergeInputChains1_0,
3146
127k
    OPC_EmitInteger32, 0, 
3147
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs,
3148
127k
                  MVT::v4i32, 3, 4, 2, 3, 
3149
127k
   21, 
3150
127k
    OPC_CheckPredicate, 12,
3151
127k
    OPC_CheckPredicate, 23,
3152
127k
    OPC_CheckType, MVT::v2i64,
3153
127k
    OPC_CheckPatternPredicate3,
3154
127k
    OPC_CheckComplexPat0, /*#*/1,
3155
127k
    OPC_EmitMergeInputChains1_0,
3156
127k
    OPC_EmitInteger32, 0, 
3157
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs,
3158
127k
                  MVT::v2i64, 3, 4, 2, 3, 
3159
127k
   21, 
3160
127k
    OPC_CheckPredicate, 14,
3161
127k
    OPC_CheckPredicate, 23,
3162
127k
    OPC_CheckType, MVT::v2i64,
3163
127k
    OPC_CheckPatternPredicate3,
3164
127k
    OPC_CheckComplexPat0, /*#*/1,
3165
127k
    OPC_EmitMergeInputChains1_0,
3166
127k
    OPC_EmitInteger32, 0, 
3167
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs,
3168
127k
                  MVT::v2i64, 3, 4, 2, 3, 
3169
127k
   21, 
3170
127k
    OPC_CheckPredicate, 10,
3171
127k
    OPC_CheckPredicate, 23,
3172
127k
    OPC_CheckType, MVT::v2i64,
3173
127k
    OPC_CheckPatternPredicate3,
3174
127k
    OPC_CheckComplexPat0, /*#*/1,
3175
127k
    OPC_EmitMergeInputChains1_0,
3176
127k
    OPC_EmitInteger32, 0, 
3177
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs,
3178
127k
                  MVT::v2i64, 3, 4, 2, 3, 
3179
127k
   37, 
3180
127k
    OPC_CheckPredicate6, 
3181
127k
    OPC_SwitchType , 15, MVT::v4f32,
3182
127k
     OPC_CheckPatternPredicate3,
3183
127k
     OPC_CheckComplexPat0, /*#*/1,
3184
127k
     OPC_EmitMergeInputChains1_0,
3185
127k
     OPC_EmitInteger32, 0, 
3186
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
3187
127k
                   MVT::v4f32, 3, 4, 2, 3, 
3188
127k
    15, MVT::v2f64,
3189
127k
     OPC_CheckPatternPredicate3,
3190
127k
     OPC_CheckComplexPat0, /*#*/1,
3191
127k
     OPC_EmitMergeInputChains1_0,
3192
127k
     OPC_EmitInteger32, 0, 
3193
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A32), 0|OPFL_Chain|OPFL_MemRefs,
3194
127k
                   MVT::v2f64, 3, 4, 2, 3, 
3195
127k
    0,
3196
127k
   28, 
3197
127k
    OPC_CheckPredicate, 10,
3198
127k
    OPC_CheckType, MVT::v2f64,
3199
127k
    OPC_CheckPatternPredicate3,
3200
127k
    OPC_EmitMergeInputChains1_0,
3201
127k
    OPC_EmitInteger32, 0, 
3202
127k
    OPC_EmitInteger32, 0, 
3203
127k
    OPC_EmitNode1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs,
3204
127k
                  MVT::v16i8, 3, 2, 3, 1, 
3205
127k
    OPC_EmitNode1None, TARGET_VAL(WebAssembly::promote_low_F64x2),
3206
127k
                  MVT::v2f64, 1, 4, 
3207
127k
    OPC_CompleteMatch, 1, 5, 
3208
3209
127k
   0, 
3210
127k
  68|128,5, 
3211
127k
   OPC_CheckChild1TypeI64,
3212
127k
   OPC_CheckPredicate, 9,
3213
127k
   OPC_Scope, 37, 
3214
127k
    OPC_CheckPredicate6, 
3215
127k
    OPC_SwitchType , 15, MVT::i32,
3216
127k
     OPC_CheckPatternPredicate4,
3217
127k
     OPC_CheckComplexPat1, /*#*/1,
3218
127k
     OPC_EmitMergeInputChains1_0,
3219
127k
     OPC_EmitInteger32, 0, 
3220
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3221
127k
                   MVT::i32, 3, 4, 2, 3, 
3222
127k
    15, MVT::i64,
3223
127k
     OPC_CheckPatternPredicate4,
3224
127k
     OPC_CheckComplexPat1, /*#*/1,
3225
127k
     OPC_EmitMergeInputChains1_0,
3226
127k
     OPC_EmitInteger32, 0, 
3227
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3228
127k
                   MVT::i64, 3, 4, 2, 3, 
3229
127k
    0,
3230
127k
   97, 
3231
127k
    OPC_CheckPredicate, 12,
3232
127k
    OPC_SwitchType , 36, MVT::i32,
3233
127k
     OPC_Scope, 16, 
3234
127k
      OPC_CheckPredicate2, 
3235
127k
      OPC_CheckPatternPredicate4,
3236
127k
      OPC_CheckComplexPat1, /*#*/1,
3237
127k
      OPC_EmitMergeInputChains1_0,
3238
127k
      OPC_EmitInteger32, 0, 
3239
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3240
127k
                    MVT::i32, 3, 4, 2, 3, 
3241
127k
     16, 
3242
127k
      OPC_CheckPredicate1, 
3243
127k
      OPC_CheckPatternPredicate4,
3244
127k
      OPC_CheckComplexPat1, /*#*/1,
3245
127k
      OPC_EmitMergeInputChains1_0,
3246
127k
      OPC_EmitInteger32, 0, 
3247
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3248
127k
                    MVT::i32, 3, 4, 2, 3, 
3249
127k
     0, 
3250
127k
    53, MVT::i64,
3251
127k
     OPC_Scope, 16, 
3252
127k
      OPC_CheckPredicate2, 
3253
127k
      OPC_CheckPatternPredicate4,
3254
127k
      OPC_CheckComplexPat1, /*#*/1,
3255
127k
      OPC_EmitMergeInputChains1_0,
3256
127k
      OPC_EmitInteger32, 0, 
3257
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3258
127k
                    MVT::i64, 3, 4, 2, 3, 
3259
127k
     16, 
3260
127k
      OPC_CheckPredicate1, 
3261
127k
      OPC_CheckPatternPredicate4,
3262
127k
      OPC_CheckComplexPat1, /*#*/1,
3263
127k
      OPC_EmitMergeInputChains1_0,
3264
127k
      OPC_EmitInteger32, 0, 
3265
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3266
127k
                    MVT::i64, 3, 4, 2, 3, 
3267
127k
     16, 
3268
127k
      OPC_CheckPredicate3, 
3269
127k
      OPC_CheckPatternPredicate4,
3270
127k
      OPC_CheckComplexPat1, /*#*/1,
3271
127k
      OPC_EmitMergeInputChains1_0,
3272
127k
      OPC_EmitInteger32, 0, 
3273
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_S_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3274
127k
                    MVT::i64, 3, 4, 2, 3, 
3275
127k
     0, 
3276
127k
    0,
3277
127k
   97, 
3278
127k
    OPC_CheckPredicate, 14,
3279
127k
    OPC_SwitchType , 36, MVT::i32,
3280
127k
     OPC_Scope, 16, 
3281
127k
      OPC_CheckPredicate2, 
3282
127k
      OPC_CheckPatternPredicate4,
3283
127k
      OPC_CheckComplexPat1, /*#*/1,
3284
127k
      OPC_EmitMergeInputChains1_0,
3285
127k
      OPC_EmitInteger32, 0, 
3286
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3287
127k
                    MVT::i32, 3, 4, 2, 3, 
3288
127k
     16, 
3289
127k
      OPC_CheckPredicate1, 
3290
127k
      OPC_CheckPatternPredicate4,
3291
127k
      OPC_CheckComplexPat1, /*#*/1,
3292
127k
      OPC_EmitMergeInputChains1_0,
3293
127k
      OPC_EmitInteger32, 0, 
3294
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3295
127k
                    MVT::i32, 3, 4, 2, 3, 
3296
127k
     0, 
3297
127k
    53, MVT::i64,
3298
127k
     OPC_Scope, 16, 
3299
127k
      OPC_CheckPredicate2, 
3300
127k
      OPC_CheckPatternPredicate4,
3301
127k
      OPC_CheckComplexPat1, /*#*/1,
3302
127k
      OPC_EmitMergeInputChains1_0,
3303
127k
      OPC_EmitInteger32, 0, 
3304
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3305
127k
                    MVT::i64, 3, 4, 2, 3, 
3306
127k
     16, 
3307
127k
      OPC_CheckPredicate1, 
3308
127k
      OPC_CheckPatternPredicate4,
3309
127k
      OPC_CheckComplexPat1, /*#*/1,
3310
127k
      OPC_EmitMergeInputChains1_0,
3311
127k
      OPC_EmitInteger32, 0, 
3312
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3313
127k
                    MVT::i64, 3, 4, 2, 3, 
3314
127k
     16, 
3315
127k
      OPC_CheckPredicate3, 
3316
127k
      OPC_CheckPatternPredicate4,
3317
127k
      OPC_CheckComplexPat1, /*#*/1,
3318
127k
      OPC_EmitMergeInputChains1_0,
3319
127k
      OPC_EmitInteger32, 0, 
3320
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3321
127k
                    MVT::i64, 3, 4, 2, 3, 
3322
127k
     0, 
3323
127k
    0,
3324
127k
   97, 
3325
127k
    OPC_CheckPredicate, 10,
3326
127k
    OPC_SwitchType , 36, MVT::i32,
3327
127k
     OPC_Scope, 16, 
3328
127k
      OPC_CheckPredicate2, 
3329
127k
      OPC_CheckPatternPredicate4,
3330
127k
      OPC_CheckComplexPat1, /*#*/1,
3331
127k
      OPC_EmitMergeInputChains1_0,
3332
127k
      OPC_EmitInteger32, 0, 
3333
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3334
127k
                    MVT::i32, 3, 4, 2, 3, 
3335
127k
     16, 
3336
127k
      OPC_CheckPredicate1, 
3337
127k
      OPC_CheckPatternPredicate4,
3338
127k
      OPC_CheckComplexPat1, /*#*/1,
3339
127k
      OPC_EmitMergeInputChains1_0,
3340
127k
      OPC_EmitInteger32, 0, 
3341
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3342
127k
                    MVT::i32, 3, 4, 2, 3, 
3343
127k
     0, 
3344
127k
    53, MVT::i64,
3345
127k
     OPC_Scope, 16, 
3346
127k
      OPC_CheckPredicate2, 
3347
127k
      OPC_CheckPatternPredicate4,
3348
127k
      OPC_CheckComplexPat1, /*#*/1,
3349
127k
      OPC_EmitMergeInputChains1_0,
3350
127k
      OPC_EmitInteger32, 0, 
3351
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3352
127k
                    MVT::i64, 3, 4, 2, 3, 
3353
127k
     16, 
3354
127k
      OPC_CheckPredicate1, 
3355
127k
      OPC_CheckPatternPredicate4,
3356
127k
      OPC_CheckComplexPat1, /*#*/1,
3357
127k
      OPC_EmitMergeInputChains1_0,
3358
127k
      OPC_EmitInteger32, 0, 
3359
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3360
127k
                    MVT::i64, 3, 4, 2, 3, 
3361
127k
     16, 
3362
127k
      OPC_CheckPredicate3, 
3363
127k
      OPC_CheckPatternPredicate4,
3364
127k
      OPC_CheckComplexPat1, /*#*/1,
3365
127k
      OPC_EmitMergeInputChains1_0,
3366
127k
      OPC_EmitInteger32, 0, 
3367
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_U_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3368
127k
                    MVT::i64, 3, 4, 2, 3, 
3369
127k
     0, 
3370
127k
    0,
3371
127k
   105, 
3372
127k
    OPC_CheckPredicate6, 
3373
127k
    OPC_SwitchType , 15, MVT::f32,
3374
127k
     OPC_CheckPatternPredicate4,
3375
127k
     OPC_CheckComplexPat1, /*#*/1,
3376
127k
     OPC_EmitMergeInputChains1_0,
3377
127k
     OPC_EmitInteger32, 0, 
3378
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3379
127k
                   MVT::f32, 3, 4, 2, 3, 
3380
127k
    15, MVT::f64,
3381
127k
     OPC_CheckPatternPredicate4,
3382
127k
     OPC_CheckComplexPat1, /*#*/1,
3383
127k
     OPC_EmitMergeInputChains1_0,
3384
127k
     OPC_EmitInteger32, 0, 
3385
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_F64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3386
127k
                   MVT::f64, 3, 4, 2, 3, 
3387
127k
    15, MVT::v16i8,
3388
127k
     OPC_CheckPatternPredicate4,
3389
127k
     OPC_CheckComplexPat1, /*#*/1,
3390
127k
     OPC_EmitMergeInputChains1_0,
3391
127k
     OPC_EmitInteger32, 0, 
3392
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
3393
127k
                   MVT::v16i8, 3, 4, 2, 3, 
3394
127k
    15, MVT::v8i16,
3395
127k
     OPC_CheckPatternPredicate4,
3396
127k
     OPC_CheckComplexPat1, /*#*/1,
3397
127k
     OPC_EmitMergeInputChains1_0,
3398
127k
     OPC_EmitInteger32, 0, 
3399
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
3400
127k
                   MVT::v8i16, 3, 4, 2, 3, 
3401
127k
    15, MVT::v4i32,
3402
127k
     OPC_CheckPatternPredicate4,
3403
127k
     OPC_CheckComplexPat1, /*#*/1,
3404
127k
     OPC_EmitMergeInputChains1_0,
3405
127k
     OPC_EmitInteger32, 0, 
3406
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
3407
127k
                   MVT::v4i32, 3, 4, 2, 3, 
3408
127k
    15, MVT::v2i64,
3409
127k
     OPC_CheckPatternPredicate4,
3410
127k
     OPC_CheckComplexPat1, /*#*/1,
3411
127k
     OPC_EmitMergeInputChains1_0,
3412
127k
     OPC_EmitInteger32, 0, 
3413
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
3414
127k
                   MVT::v2i64, 3, 4, 2, 3, 
3415
127k
    0,
3416
127k
   21, 
3417
127k
    OPC_CheckPredicate, 12,
3418
127k
    OPC_CheckPredicate, 21,
3419
127k
    OPC_CheckType, MVT::v8i16,
3420
127k
    OPC_CheckPatternPredicate4,
3421
127k
    OPC_CheckComplexPat1, /*#*/1,
3422
127k
    OPC_EmitMergeInputChains1_0,
3423
127k
    OPC_EmitInteger32, 0, 
3424
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs,
3425
127k
                  MVT::v8i16, 3, 4, 2, 3, 
3426
127k
   21, 
3427
127k
    OPC_CheckPredicate, 14,
3428
127k
    OPC_CheckPredicate, 21,
3429
127k
    OPC_CheckType, MVT::v8i16,
3430
127k
    OPC_CheckPatternPredicate4,
3431
127k
    OPC_CheckComplexPat1, /*#*/1,
3432
127k
    OPC_EmitMergeInputChains1_0,
3433
127k
    OPC_EmitInteger32, 0, 
3434
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs,
3435
127k
                  MVT::v8i16, 3, 4, 2, 3, 
3436
127k
   21, 
3437
127k
    OPC_CheckPredicate, 10,
3438
127k
    OPC_CheckPredicate, 21,
3439
127k
    OPC_CheckType, MVT::v8i16,
3440
127k
    OPC_CheckPatternPredicate4,
3441
127k
    OPC_CheckComplexPat1, /*#*/1,
3442
127k
    OPC_EmitMergeInputChains1_0,
3443
127k
    OPC_EmitInteger32, 0, 
3444
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs,
3445
127k
                  MVT::v8i16, 3, 4, 2, 3, 
3446
127k
   21, 
3447
127k
    OPC_CheckPredicate, 12,
3448
127k
    OPC_CheckPredicate, 22,
3449
127k
    OPC_CheckType, MVT::v4i32,
3450
127k
    OPC_CheckPatternPredicate4,
3451
127k
    OPC_CheckComplexPat1, /*#*/1,
3452
127k
    OPC_EmitMergeInputChains1_0,
3453
127k
    OPC_EmitInteger32, 0, 
3454
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs,
3455
127k
                  MVT::v4i32, 3, 4, 2, 3, 
3456
127k
   21, 
3457
127k
    OPC_CheckPredicate, 14,
3458
127k
    OPC_CheckPredicate, 22,
3459
127k
    OPC_CheckType, MVT::v4i32,
3460
127k
    OPC_CheckPatternPredicate4,
3461
127k
    OPC_CheckComplexPat1, /*#*/1,
3462
127k
    OPC_EmitMergeInputChains1_0,
3463
127k
    OPC_EmitInteger32, 0, 
3464
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs,
3465
127k
                  MVT::v4i32, 3, 4, 2, 3, 
3466
127k
   21, 
3467
127k
    OPC_CheckPredicate, 10,
3468
127k
    OPC_CheckPredicate, 22,
3469
127k
    OPC_CheckType, MVT::v4i32,
3470
127k
    OPC_CheckPatternPredicate4,
3471
127k
    OPC_CheckComplexPat1, /*#*/1,
3472
127k
    OPC_EmitMergeInputChains1_0,
3473
127k
    OPC_EmitInteger32, 0, 
3474
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs,
3475
127k
                  MVT::v4i32, 3, 4, 2, 3, 
3476
127k
   21, 
3477
127k
    OPC_CheckPredicate, 12,
3478
127k
    OPC_CheckPredicate, 23,
3479
127k
    OPC_CheckType, MVT::v2i64,
3480
127k
    OPC_CheckPatternPredicate4,
3481
127k
    OPC_CheckComplexPat1, /*#*/1,
3482
127k
    OPC_EmitMergeInputChains1_0,
3483
127k
    OPC_EmitInteger32, 0, 
3484
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_S_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs,
3485
127k
                  MVT::v2i64, 3, 4, 2, 3, 
3486
127k
   21, 
3487
127k
    OPC_CheckPredicate, 14,
3488
127k
    OPC_CheckPredicate, 23,
3489
127k
    OPC_CheckType, MVT::v2i64,
3490
127k
    OPC_CheckPatternPredicate4,
3491
127k
    OPC_CheckComplexPat1, /*#*/1,
3492
127k
    OPC_EmitMergeInputChains1_0,
3493
127k
    OPC_EmitInteger32, 0, 
3494
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs,
3495
127k
                  MVT::v2i64, 3, 4, 2, 3, 
3496
127k
   21, 
3497
127k
    OPC_CheckPredicate, 10,
3498
127k
    OPC_CheckPredicate, 23,
3499
127k
    OPC_CheckType, MVT::v2i64,
3500
127k
    OPC_CheckPatternPredicate4,
3501
127k
    OPC_CheckComplexPat1, /*#*/1,
3502
127k
    OPC_EmitMergeInputChains1_0,
3503
127k
    OPC_EmitInteger32, 0, 
3504
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_EXTEND_U_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs,
3505
127k
                  MVT::v2i64, 3, 4, 2, 3, 
3506
127k
   37, 
3507
127k
    OPC_CheckPredicate6, 
3508
127k
    OPC_SwitchType , 15, MVT::v4f32,
3509
127k
     OPC_CheckPatternPredicate4,
3510
127k
     OPC_CheckComplexPat1, /*#*/1,
3511
127k
     OPC_EmitMergeInputChains1_0,
3512
127k
     OPC_EmitInteger32, 0, 
3513
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
3514
127k
                   MVT::v4f32, 3, 4, 2, 3, 
3515
127k
    15, MVT::v2f64,
3516
127k
     OPC_CheckPatternPredicate4,
3517
127k
     OPC_CheckComplexPat1, /*#*/1,
3518
127k
     OPC_EmitMergeInputChains1_0,
3519
127k
     OPC_EmitInteger32, 0, 
3520
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_V128_A64), 0|OPFL_Chain|OPFL_MemRefs,
3521
127k
                   MVT::v2f64, 3, 4, 2, 3, 
3522
127k
    0,
3523
127k
   28, 
3524
127k
    OPC_CheckPredicate, 10,
3525
127k
    OPC_CheckType, MVT::v2f64,
3526
127k
    OPC_CheckPatternPredicate4,
3527
127k
    OPC_EmitMergeInputChains1_0,
3528
127k
    OPC_EmitInteger32, 0, 
3529
127k
    OPC_EmitInteger64, 0, 
3530
127k
    OPC_EmitNode1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs,
3531
127k
                  MVT::v16i8, 3, 2, 3, 1, 
3532
127k
    OPC_EmitNode1None, TARGET_VAL(WebAssembly::promote_low_F64x2),
3533
127k
                  MVT::v2f64, 1, 4, 
3534
127k
    OPC_CompleteMatch, 1, 5, 
3535
3536
127k
   0, 
3537
127k
  0, 
3538
127k
 31|128,1, TARGET_VAL(ISD::ATOMIC_LOAD),
3539
127k
  OPC_RecordMemRef,
3540
127k
  OPC_RecordNode,
3541
127k
  OPC_RecordChild1,
3542
127k
  OPC_Scope, 76, 
3543
127k
   OPC_CheckChild1TypeI32,
3544
127k
   OPC_SwitchType , 53, MVT::i32,
3545
127k
    OPC_Scope, 16, 
3546
127k
     OPC_CheckPredicate3, 
3547
127k
     OPC_CheckPatternPredicate3,
3548
127k
     OPC_CheckComplexPat0, /*#*/1,
3549
127k
     OPC_EmitMergeInputChains1_0,
3550
127k
     OPC_EmitInteger32, 0, 
3551
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3552
127k
                   MVT::i32, 3, 4, 2, 3, 
3553
127k
    16, 
3554
127k
     OPC_CheckPredicate2, 
3555
127k
     OPC_CheckPatternPredicate3,
3556
127k
     OPC_CheckComplexPat0, /*#*/1,
3557
127k
     OPC_EmitMergeInputChains1_0,
3558
127k
     OPC_EmitInteger32, 0, 
3559
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3560
127k
                   MVT::i32, 3, 4, 2, 3, 
3561
127k
    16, 
3562
127k
     OPC_CheckPredicate1, 
3563
127k
     OPC_CheckPatternPredicate3,
3564
127k
     OPC_CheckComplexPat0, /*#*/1,
3565
127k
     OPC_EmitMergeInputChains1_0,
3566
127k
     OPC_EmitInteger32, 0, 
3567
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3568
127k
                   MVT::i32, 3, 4, 2, 3, 
3569
127k
    0, 
3570
127k
   16, MVT::i64,
3571
127k
    OPC_CheckPredicate7, 
3572
127k
    OPC_CheckPatternPredicate3,
3573
127k
    OPC_CheckComplexPat0, /*#*/1,
3574
127k
    OPC_EmitMergeInputChains1_0,
3575
127k
    OPC_EmitInteger32, 0, 
3576
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
3577
127k
                  MVT::i64, 3, 4, 2, 3, 
3578
127k
   0,
3579
127k
  76, 
3580
127k
   OPC_CheckChild1TypeI64,
3581
127k
   OPC_SwitchType , 53, MVT::i32,
3582
127k
    OPC_Scope, 16, 
3583
127k
     OPC_CheckPredicate3, 
3584
127k
     OPC_CheckPatternPredicate4,
3585
127k
     OPC_CheckComplexPat1, /*#*/1,
3586
127k
     OPC_EmitMergeInputChains1_0,
3587
127k
     OPC_EmitInteger32, 0, 
3588
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3589
127k
                   MVT::i32, 3, 4, 2, 3, 
3590
127k
    16, 
3591
127k
     OPC_CheckPredicate2, 
3592
127k
     OPC_CheckPatternPredicate4,
3593
127k
     OPC_CheckComplexPat1, /*#*/1,
3594
127k
     OPC_EmitMergeInputChains1_0,
3595
127k
     OPC_EmitInteger32, 0, 
3596
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD8_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3597
127k
                   MVT::i32, 3, 4, 2, 3, 
3598
127k
    16, 
3599
127k
     OPC_CheckPredicate1, 
3600
127k
     OPC_CheckPatternPredicate4,
3601
127k
     OPC_CheckComplexPat1, /*#*/1,
3602
127k
     OPC_EmitMergeInputChains1_0,
3603
127k
     OPC_EmitInteger32, 0, 
3604
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD16_U_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3605
127k
                   MVT::i32, 3, 4, 2, 3, 
3606
127k
    0, 
3607
127k
   16, MVT::i64,
3608
127k
    OPC_CheckPredicate7, 
3609
127k
    OPC_CheckPatternPredicate4,
3610
127k
    OPC_CheckComplexPat1, /*#*/1,
3611
127k
    OPC_EmitMergeInputChains1_0,
3612
127k
    OPC_EmitInteger32, 0, 
3613
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_LOAD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3614
127k
                  MVT::i64, 3, 4, 2, 3, 
3615
127k
   0,
3616
127k
  0, 
3617
127k
 113|128,1, TARGET_VAL(ISD::ATOMIC_LOAD_ADD),
3618
127k
  OPC_RecordMemRef,
3619
127k
  OPC_RecordNode,
3620
127k
  OPC_RecordChild1,
3621
127k
  OPC_Scope, 117, 
3622
127k
   OPC_CheckChild1TypeI32,
3623
127k
   OPC_RecordChild2,
3624
127k
   OPC_SwitchType , 92, MVT::i32,
3625
127k
    OPC_Scope, 17, 
3626
127k
     OPC_CheckPredicate3, 
3627
127k
     OPC_CheckPatternPredicate1,
3628
127k
     OPC_CheckComplexPat0, /*#*/1,
3629
127k
     OPC_EmitMergeInputChains1_0,
3630
127k
     OPC_EmitInteger32, 0, 
3631
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3632
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3633
127k
    17, 
3634
127k
     OPC_CheckPredicate2, 
3635
127k
     OPC_CheckPatternPredicate1,
3636
127k
     OPC_CheckComplexPat0, /*#*/1,
3637
127k
     OPC_EmitMergeInputChains1_0,
3638
127k
     OPC_EmitInteger32, 0, 
3639
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3640
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3641
127k
    17, 
3642
127k
     OPC_CheckPredicate1, 
3643
127k
     OPC_CheckPatternPredicate1,
3644
127k
     OPC_CheckComplexPat0, /*#*/1,
3645
127k
     OPC_EmitMergeInputChains1_0,
3646
127k
     OPC_EmitInteger32, 0, 
3647
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3648
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3649
127k
    17, 
3650
127k
     OPC_CheckPredicate2, 
3651
127k
     OPC_CheckPatternPredicate1,
3652
127k
     OPC_CheckComplexPat0, /*#*/1,
3653
127k
     OPC_EmitMergeInputChains1_0,
3654
127k
     OPC_EmitInteger32, 0, 
3655
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3656
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3657
127k
    17, 
3658
127k
     OPC_CheckPredicate1, 
3659
127k
     OPC_CheckPatternPredicate1,
3660
127k
     OPC_CheckComplexPat0, /*#*/1,
3661
127k
     OPC_EmitMergeInputChains1_0,
3662
127k
     OPC_EmitInteger32, 0, 
3663
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3664
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3665
127k
    0, 
3666
127k
   17, MVT::i64,
3667
127k
    OPC_CheckPredicate7, 
3668
127k
    OPC_CheckPatternPredicate1,
3669
127k
    OPC_CheckComplexPat0, /*#*/1,
3670
127k
    OPC_EmitMergeInputChains1_0,
3671
127k
    OPC_EmitInteger32, 0, 
3672
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
3673
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
3674
127k
   0,
3675
127k
  117, 
3676
127k
   OPC_CheckChild1TypeI64,
3677
127k
   OPC_RecordChild2,
3678
127k
   OPC_SwitchType , 92, MVT::i32,
3679
127k
    OPC_Scope, 17, 
3680
127k
     OPC_CheckPredicate3, 
3681
127k
     OPC_CheckPatternPredicate2,
3682
127k
     OPC_CheckComplexPat1, /*#*/1,
3683
127k
     OPC_EmitMergeInputChains1_0,
3684
127k
     OPC_EmitInteger32, 0, 
3685
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3686
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3687
127k
    17, 
3688
127k
     OPC_CheckPredicate2, 
3689
127k
     OPC_CheckPatternPredicate2,
3690
127k
     OPC_CheckComplexPat1, /*#*/1,
3691
127k
     OPC_EmitMergeInputChains1_0,
3692
127k
     OPC_EmitInteger32, 0, 
3693
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3694
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3695
127k
    17, 
3696
127k
     OPC_CheckPredicate1, 
3697
127k
     OPC_CheckPatternPredicate2,
3698
127k
     OPC_CheckComplexPat1, /*#*/1,
3699
127k
     OPC_EmitMergeInputChains1_0,
3700
127k
     OPC_EmitInteger32, 0, 
3701
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3702
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3703
127k
    17, 
3704
127k
     OPC_CheckPredicate2, 
3705
127k
     OPC_CheckPatternPredicate2,
3706
127k
     OPC_CheckComplexPat1, /*#*/1,
3707
127k
     OPC_EmitMergeInputChains1_0,
3708
127k
     OPC_EmitInteger32, 0, 
3709
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3710
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3711
127k
    17, 
3712
127k
     OPC_CheckPredicate1, 
3713
127k
     OPC_CheckPatternPredicate2,
3714
127k
     OPC_CheckComplexPat1, /*#*/1,
3715
127k
     OPC_EmitMergeInputChains1_0,
3716
127k
     OPC_EmitInteger32, 0, 
3717
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_ADD_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3718
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3719
127k
    0, 
3720
127k
   17, MVT::i64,
3721
127k
    OPC_CheckPredicate7, 
3722
127k
    OPC_CheckPatternPredicate2,
3723
127k
    OPC_CheckComplexPat1, /*#*/1,
3724
127k
    OPC_EmitMergeInputChains1_0,
3725
127k
    OPC_EmitInteger32, 0, 
3726
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_ADD_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3727
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
3728
127k
   0,
3729
127k
  0, 
3730
127k
 113|128,1, TARGET_VAL(ISD::ATOMIC_LOAD_SUB),
3731
127k
  OPC_RecordMemRef,
3732
127k
  OPC_RecordNode,
3733
127k
  OPC_RecordChild1,
3734
127k
  OPC_Scope, 117, 
3735
127k
   OPC_CheckChild1TypeI32,
3736
127k
   OPC_RecordChild2,
3737
127k
   OPC_SwitchType , 92, MVT::i32,
3738
127k
    OPC_Scope, 17, 
3739
127k
     OPC_CheckPredicate3, 
3740
127k
     OPC_CheckPatternPredicate1,
3741
127k
     OPC_CheckComplexPat0, /*#*/1,
3742
127k
     OPC_EmitMergeInputChains1_0,
3743
127k
     OPC_EmitInteger32, 0, 
3744
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3745
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3746
127k
    17, 
3747
127k
     OPC_CheckPredicate2, 
3748
127k
     OPC_CheckPatternPredicate1,
3749
127k
     OPC_CheckComplexPat0, /*#*/1,
3750
127k
     OPC_EmitMergeInputChains1_0,
3751
127k
     OPC_EmitInteger32, 0, 
3752
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3753
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3754
127k
    17, 
3755
127k
     OPC_CheckPredicate1, 
3756
127k
     OPC_CheckPatternPredicate1,
3757
127k
     OPC_CheckComplexPat0, /*#*/1,
3758
127k
     OPC_EmitMergeInputChains1_0,
3759
127k
     OPC_EmitInteger32, 0, 
3760
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3761
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3762
127k
    17, 
3763
127k
     OPC_CheckPredicate2, 
3764
127k
     OPC_CheckPatternPredicate1,
3765
127k
     OPC_CheckComplexPat0, /*#*/1,
3766
127k
     OPC_EmitMergeInputChains1_0,
3767
127k
     OPC_EmitInteger32, 0, 
3768
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3769
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3770
127k
    17, 
3771
127k
     OPC_CheckPredicate1, 
3772
127k
     OPC_CheckPatternPredicate1,
3773
127k
     OPC_CheckComplexPat0, /*#*/1,
3774
127k
     OPC_EmitMergeInputChains1_0,
3775
127k
     OPC_EmitInteger32, 0, 
3776
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3777
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3778
127k
    0, 
3779
127k
   17, MVT::i64,
3780
127k
    OPC_CheckPredicate7, 
3781
127k
    OPC_CheckPatternPredicate1,
3782
127k
    OPC_CheckComplexPat0, /*#*/1,
3783
127k
    OPC_EmitMergeInputChains1_0,
3784
127k
    OPC_EmitInteger32, 0, 
3785
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
3786
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
3787
127k
   0,
3788
127k
  117, 
3789
127k
   OPC_CheckChild1TypeI64,
3790
127k
   OPC_RecordChild2,
3791
127k
   OPC_SwitchType , 92, MVT::i32,
3792
127k
    OPC_Scope, 17, 
3793
127k
     OPC_CheckPredicate3, 
3794
127k
     OPC_CheckPatternPredicate2,
3795
127k
     OPC_CheckComplexPat1, /*#*/1,
3796
127k
     OPC_EmitMergeInputChains1_0,
3797
127k
     OPC_EmitInteger32, 0, 
3798
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3799
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3800
127k
    17, 
3801
127k
     OPC_CheckPredicate2, 
3802
127k
     OPC_CheckPatternPredicate2,
3803
127k
     OPC_CheckComplexPat1, /*#*/1,
3804
127k
     OPC_EmitMergeInputChains1_0,
3805
127k
     OPC_EmitInteger32, 0, 
3806
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3807
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3808
127k
    17, 
3809
127k
     OPC_CheckPredicate1, 
3810
127k
     OPC_CheckPatternPredicate2,
3811
127k
     OPC_CheckComplexPat1, /*#*/1,
3812
127k
     OPC_EmitMergeInputChains1_0,
3813
127k
     OPC_EmitInteger32, 0, 
3814
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3815
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3816
127k
    17, 
3817
127k
     OPC_CheckPredicate2, 
3818
127k
     OPC_CheckPatternPredicate2,
3819
127k
     OPC_CheckComplexPat1, /*#*/1,
3820
127k
     OPC_EmitMergeInputChains1_0,
3821
127k
     OPC_EmitInteger32, 0, 
3822
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3823
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3824
127k
    17, 
3825
127k
     OPC_CheckPredicate1, 
3826
127k
     OPC_CheckPatternPredicate2,
3827
127k
     OPC_CheckComplexPat1, /*#*/1,
3828
127k
     OPC_EmitMergeInputChains1_0,
3829
127k
     OPC_EmitInteger32, 0, 
3830
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_SUB_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3831
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3832
127k
    0, 
3833
127k
   17, MVT::i64,
3834
127k
    OPC_CheckPredicate7, 
3835
127k
    OPC_CheckPatternPredicate2,
3836
127k
    OPC_CheckComplexPat1, /*#*/1,
3837
127k
    OPC_EmitMergeInputChains1_0,
3838
127k
    OPC_EmitInteger32, 0, 
3839
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_SUB_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3840
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
3841
127k
   0,
3842
127k
  0, 
3843
127k
 113|128,1, TARGET_VAL(ISD::ATOMIC_LOAD_AND),
3844
127k
  OPC_RecordMemRef,
3845
127k
  OPC_RecordNode,
3846
127k
  OPC_RecordChild1,
3847
127k
  OPC_Scope, 117, 
3848
127k
   OPC_CheckChild1TypeI32,
3849
127k
   OPC_RecordChild2,
3850
127k
   OPC_SwitchType , 92, MVT::i32,
3851
127k
    OPC_Scope, 17, 
3852
127k
     OPC_CheckPredicate3, 
3853
127k
     OPC_CheckPatternPredicate1,
3854
127k
     OPC_CheckComplexPat0, /*#*/1,
3855
127k
     OPC_EmitMergeInputChains1_0,
3856
127k
     OPC_EmitInteger32, 0, 
3857
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3858
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3859
127k
    17, 
3860
127k
     OPC_CheckPredicate2, 
3861
127k
     OPC_CheckPatternPredicate1,
3862
127k
     OPC_CheckComplexPat0, /*#*/1,
3863
127k
     OPC_EmitMergeInputChains1_0,
3864
127k
     OPC_EmitInteger32, 0, 
3865
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3866
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3867
127k
    17, 
3868
127k
     OPC_CheckPredicate1, 
3869
127k
     OPC_CheckPatternPredicate1,
3870
127k
     OPC_CheckComplexPat0, /*#*/1,
3871
127k
     OPC_EmitMergeInputChains1_0,
3872
127k
     OPC_EmitInteger32, 0, 
3873
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3874
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3875
127k
    17, 
3876
127k
     OPC_CheckPredicate2, 
3877
127k
     OPC_CheckPatternPredicate1,
3878
127k
     OPC_CheckComplexPat0, /*#*/1,
3879
127k
     OPC_EmitMergeInputChains1_0,
3880
127k
     OPC_EmitInteger32, 0, 
3881
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3882
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3883
127k
    17, 
3884
127k
     OPC_CheckPredicate1, 
3885
127k
     OPC_CheckPatternPredicate1,
3886
127k
     OPC_CheckComplexPat0, /*#*/1,
3887
127k
     OPC_EmitMergeInputChains1_0,
3888
127k
     OPC_EmitInteger32, 0, 
3889
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3890
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3891
127k
    0, 
3892
127k
   17, MVT::i64,
3893
127k
    OPC_CheckPredicate7, 
3894
127k
    OPC_CheckPatternPredicate1,
3895
127k
    OPC_CheckComplexPat0, /*#*/1,
3896
127k
    OPC_EmitMergeInputChains1_0,
3897
127k
    OPC_EmitInteger32, 0, 
3898
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
3899
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
3900
127k
   0,
3901
127k
  117, 
3902
127k
   OPC_CheckChild1TypeI64,
3903
127k
   OPC_RecordChild2,
3904
127k
   OPC_SwitchType , 92, MVT::i32,
3905
127k
    OPC_Scope, 17, 
3906
127k
     OPC_CheckPredicate3, 
3907
127k
     OPC_CheckPatternPredicate2,
3908
127k
     OPC_CheckComplexPat1, /*#*/1,
3909
127k
     OPC_EmitMergeInputChains1_0,
3910
127k
     OPC_EmitInteger32, 0, 
3911
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3912
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3913
127k
    17, 
3914
127k
     OPC_CheckPredicate2, 
3915
127k
     OPC_CheckPatternPredicate2,
3916
127k
     OPC_CheckComplexPat1, /*#*/1,
3917
127k
     OPC_EmitMergeInputChains1_0,
3918
127k
     OPC_EmitInteger32, 0, 
3919
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3920
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3921
127k
    17, 
3922
127k
     OPC_CheckPredicate1, 
3923
127k
     OPC_CheckPatternPredicate2,
3924
127k
     OPC_CheckComplexPat1, /*#*/1,
3925
127k
     OPC_EmitMergeInputChains1_0,
3926
127k
     OPC_EmitInteger32, 0, 
3927
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3928
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3929
127k
    17, 
3930
127k
     OPC_CheckPredicate2, 
3931
127k
     OPC_CheckPatternPredicate2,
3932
127k
     OPC_CheckComplexPat1, /*#*/1,
3933
127k
     OPC_EmitMergeInputChains1_0,
3934
127k
     OPC_EmitInteger32, 0, 
3935
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3936
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3937
127k
    17, 
3938
127k
     OPC_CheckPredicate1, 
3939
127k
     OPC_CheckPatternPredicate2,
3940
127k
     OPC_CheckComplexPat1, /*#*/1,
3941
127k
     OPC_EmitMergeInputChains1_0,
3942
127k
     OPC_EmitInteger32, 0, 
3943
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_AND_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
3944
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3945
127k
    0, 
3946
127k
   17, MVT::i64,
3947
127k
    OPC_CheckPredicate7, 
3948
127k
    OPC_CheckPatternPredicate2,
3949
127k
    OPC_CheckComplexPat1, /*#*/1,
3950
127k
    OPC_EmitMergeInputChains1_0,
3951
127k
    OPC_EmitInteger32, 0, 
3952
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_AND_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
3953
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
3954
127k
   0,
3955
127k
  0, 
3956
127k
 113|128,1, TARGET_VAL(ISD::ATOMIC_LOAD_OR),
3957
127k
  OPC_RecordMemRef,
3958
127k
  OPC_RecordNode,
3959
127k
  OPC_RecordChild1,
3960
127k
  OPC_Scope, 117, 
3961
127k
   OPC_CheckChild1TypeI32,
3962
127k
   OPC_RecordChild2,
3963
127k
   OPC_SwitchType , 92, MVT::i32,
3964
127k
    OPC_Scope, 17, 
3965
127k
     OPC_CheckPredicate3, 
3966
127k
     OPC_CheckPatternPredicate1,
3967
127k
     OPC_CheckComplexPat0, /*#*/1,
3968
127k
     OPC_EmitMergeInputChains1_0,
3969
127k
     OPC_EmitInteger32, 0, 
3970
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3971
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3972
127k
    17, 
3973
127k
     OPC_CheckPredicate2, 
3974
127k
     OPC_CheckPatternPredicate1,
3975
127k
     OPC_CheckComplexPat0, /*#*/1,
3976
127k
     OPC_EmitMergeInputChains1_0,
3977
127k
     OPC_EmitInteger32, 0, 
3978
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3979
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3980
127k
    17, 
3981
127k
     OPC_CheckPredicate1, 
3982
127k
     OPC_CheckPatternPredicate1,
3983
127k
     OPC_CheckComplexPat0, /*#*/1,
3984
127k
     OPC_EmitMergeInputChains1_0,
3985
127k
     OPC_EmitInteger32, 0, 
3986
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3987
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3988
127k
    17, 
3989
127k
     OPC_CheckPredicate2, 
3990
127k
     OPC_CheckPatternPredicate1,
3991
127k
     OPC_CheckComplexPat0, /*#*/1,
3992
127k
     OPC_EmitMergeInputChains1_0,
3993
127k
     OPC_EmitInteger32, 0, 
3994
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
3995
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
3996
127k
    17, 
3997
127k
     OPC_CheckPredicate1, 
3998
127k
     OPC_CheckPatternPredicate1,
3999
127k
     OPC_CheckComplexPat0, /*#*/1,
4000
127k
     OPC_EmitMergeInputChains1_0,
4001
127k
     OPC_EmitInteger32, 0, 
4002
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4003
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4004
127k
    0, 
4005
127k
   17, MVT::i64,
4006
127k
    OPC_CheckPredicate7, 
4007
127k
    OPC_CheckPatternPredicate1,
4008
127k
    OPC_CheckComplexPat0, /*#*/1,
4009
127k
    OPC_EmitMergeInputChains1_0,
4010
127k
    OPC_EmitInteger32, 0, 
4011
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
4012
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
4013
127k
   0,
4014
127k
  117, 
4015
127k
   OPC_CheckChild1TypeI64,
4016
127k
   OPC_RecordChild2,
4017
127k
   OPC_SwitchType , 92, MVT::i32,
4018
127k
    OPC_Scope, 17, 
4019
127k
     OPC_CheckPredicate3, 
4020
127k
     OPC_CheckPatternPredicate2,
4021
127k
     OPC_CheckComplexPat1, /*#*/1,
4022
127k
     OPC_EmitMergeInputChains1_0,
4023
127k
     OPC_EmitInteger32, 0, 
4024
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4025
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4026
127k
    17, 
4027
127k
     OPC_CheckPredicate2, 
4028
127k
     OPC_CheckPatternPredicate2,
4029
127k
     OPC_CheckComplexPat1, /*#*/1,
4030
127k
     OPC_EmitMergeInputChains1_0,
4031
127k
     OPC_EmitInteger32, 0, 
4032
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4033
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4034
127k
    17, 
4035
127k
     OPC_CheckPredicate1, 
4036
127k
     OPC_CheckPatternPredicate2,
4037
127k
     OPC_CheckComplexPat1, /*#*/1,
4038
127k
     OPC_EmitMergeInputChains1_0,
4039
127k
     OPC_EmitInteger32, 0, 
4040
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4041
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4042
127k
    17, 
4043
127k
     OPC_CheckPredicate2, 
4044
127k
     OPC_CheckPatternPredicate2,
4045
127k
     OPC_CheckComplexPat1, /*#*/1,
4046
127k
     OPC_EmitMergeInputChains1_0,
4047
127k
     OPC_EmitInteger32, 0, 
4048
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4049
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4050
127k
    17, 
4051
127k
     OPC_CheckPredicate1, 
4052
127k
     OPC_CheckPatternPredicate2,
4053
127k
     OPC_CheckComplexPat1, /*#*/1,
4054
127k
     OPC_EmitMergeInputChains1_0,
4055
127k
     OPC_EmitInteger32, 0, 
4056
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_OR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4057
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4058
127k
    0, 
4059
127k
   17, MVT::i64,
4060
127k
    OPC_CheckPredicate7, 
4061
127k
    OPC_CheckPatternPredicate2,
4062
127k
    OPC_CheckComplexPat1, /*#*/1,
4063
127k
    OPC_EmitMergeInputChains1_0,
4064
127k
    OPC_EmitInteger32, 0, 
4065
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_OR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
4066
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
4067
127k
   0,
4068
127k
  0, 
4069
127k
 113|128,1, TARGET_VAL(ISD::ATOMIC_LOAD_XOR),
4070
127k
  OPC_RecordMemRef,
4071
127k
  OPC_RecordNode,
4072
127k
  OPC_RecordChild1,
4073
127k
  OPC_Scope, 117, 
4074
127k
   OPC_CheckChild1TypeI32,
4075
127k
   OPC_RecordChild2,
4076
127k
   OPC_SwitchType , 92, MVT::i32,
4077
127k
    OPC_Scope, 17, 
4078
127k
     OPC_CheckPredicate3, 
4079
127k
     OPC_CheckPatternPredicate1,
4080
127k
     OPC_CheckComplexPat0, /*#*/1,
4081
127k
     OPC_EmitMergeInputChains1_0,
4082
127k
     OPC_EmitInteger32, 0, 
4083
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4084
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4085
127k
    17, 
4086
127k
     OPC_CheckPredicate2, 
4087
127k
     OPC_CheckPatternPredicate1,
4088
127k
     OPC_CheckComplexPat0, /*#*/1,
4089
127k
     OPC_EmitMergeInputChains1_0,
4090
127k
     OPC_EmitInteger32, 0, 
4091
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4092
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4093
127k
    17, 
4094
127k
     OPC_CheckPredicate1, 
4095
127k
     OPC_CheckPatternPredicate1,
4096
127k
     OPC_CheckComplexPat0, /*#*/1,
4097
127k
     OPC_EmitMergeInputChains1_0,
4098
127k
     OPC_EmitInteger32, 0, 
4099
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4100
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4101
127k
    17, 
4102
127k
     OPC_CheckPredicate2, 
4103
127k
     OPC_CheckPatternPredicate1,
4104
127k
     OPC_CheckComplexPat0, /*#*/1,
4105
127k
     OPC_EmitMergeInputChains1_0,
4106
127k
     OPC_EmitInteger32, 0, 
4107
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4108
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4109
127k
    17, 
4110
127k
     OPC_CheckPredicate1, 
4111
127k
     OPC_CheckPatternPredicate1,
4112
127k
     OPC_CheckComplexPat0, /*#*/1,
4113
127k
     OPC_EmitMergeInputChains1_0,
4114
127k
     OPC_EmitInteger32, 0, 
4115
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4116
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4117
127k
    0, 
4118
127k
   17, MVT::i64,
4119
127k
    OPC_CheckPredicate7, 
4120
127k
    OPC_CheckPatternPredicate1,
4121
127k
    OPC_CheckComplexPat0, /*#*/1,
4122
127k
    OPC_EmitMergeInputChains1_0,
4123
127k
    OPC_EmitInteger32, 0, 
4124
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
4125
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
4126
127k
   0,
4127
127k
  117, 
4128
127k
   OPC_CheckChild1TypeI64,
4129
127k
   OPC_RecordChild2,
4130
127k
   OPC_SwitchType , 92, MVT::i32,
4131
127k
    OPC_Scope, 17, 
4132
127k
     OPC_CheckPredicate3, 
4133
127k
     OPC_CheckPatternPredicate2,
4134
127k
     OPC_CheckComplexPat1, /*#*/1,
4135
127k
     OPC_EmitMergeInputChains1_0,
4136
127k
     OPC_EmitInteger32, 0, 
4137
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4138
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4139
127k
    17, 
4140
127k
     OPC_CheckPredicate2, 
4141
127k
     OPC_CheckPatternPredicate2,
4142
127k
     OPC_CheckComplexPat1, /*#*/1,
4143
127k
     OPC_EmitMergeInputChains1_0,
4144
127k
     OPC_EmitInteger32, 0, 
4145
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4146
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4147
127k
    17, 
4148
127k
     OPC_CheckPredicate1, 
4149
127k
     OPC_CheckPatternPredicate2,
4150
127k
     OPC_CheckComplexPat1, /*#*/1,
4151
127k
     OPC_EmitMergeInputChains1_0,
4152
127k
     OPC_EmitInteger32, 0, 
4153
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4154
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4155
127k
    17, 
4156
127k
     OPC_CheckPredicate2, 
4157
127k
     OPC_CheckPatternPredicate2,
4158
127k
     OPC_CheckComplexPat1, /*#*/1,
4159
127k
     OPC_EmitMergeInputChains1_0,
4160
127k
     OPC_EmitInteger32, 0, 
4161
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4162
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4163
127k
    17, 
4164
127k
     OPC_CheckPredicate1, 
4165
127k
     OPC_CheckPatternPredicate2,
4166
127k
     OPC_CheckComplexPat1, /*#*/1,
4167
127k
     OPC_EmitMergeInputChains1_0,
4168
127k
     OPC_EmitInteger32, 0, 
4169
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XOR_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4170
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4171
127k
    0, 
4172
127k
   17, MVT::i64,
4173
127k
    OPC_CheckPredicate7, 
4174
127k
    OPC_CheckPatternPredicate2,
4175
127k
    OPC_CheckComplexPat1, /*#*/1,
4176
127k
    OPC_EmitMergeInputChains1_0,
4177
127k
    OPC_EmitInteger32, 0, 
4178
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XOR_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
4179
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
4180
127k
   0,
4181
127k
  0, 
4182
127k
 113|128,1, TARGET_VAL(ISD::ATOMIC_SWAP),
4183
127k
  OPC_RecordMemRef,
4184
127k
  OPC_RecordNode,
4185
127k
  OPC_RecordChild1,
4186
127k
  OPC_Scope, 117, 
4187
127k
   OPC_CheckChild1TypeI32,
4188
127k
   OPC_RecordChild2,
4189
127k
   OPC_SwitchType , 92, MVT::i32,
4190
127k
    OPC_Scope, 17, 
4191
127k
     OPC_CheckPredicate3, 
4192
127k
     OPC_CheckPatternPredicate1,
4193
127k
     OPC_CheckComplexPat0, /*#*/1,
4194
127k
     OPC_EmitMergeInputChains1_0,
4195
127k
     OPC_EmitInteger32, 0, 
4196
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4197
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4198
127k
    17, 
4199
127k
     OPC_CheckPredicate2, 
4200
127k
     OPC_CheckPatternPredicate1,
4201
127k
     OPC_CheckComplexPat0, /*#*/1,
4202
127k
     OPC_EmitMergeInputChains1_0,
4203
127k
     OPC_EmitInteger32, 0, 
4204
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4205
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4206
127k
    17, 
4207
127k
     OPC_CheckPredicate1, 
4208
127k
     OPC_CheckPatternPredicate1,
4209
127k
     OPC_CheckComplexPat0, /*#*/1,
4210
127k
     OPC_EmitMergeInputChains1_0,
4211
127k
     OPC_EmitInteger32, 0, 
4212
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4213
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4214
127k
    17, 
4215
127k
     OPC_CheckPredicate2, 
4216
127k
     OPC_CheckPatternPredicate1,
4217
127k
     OPC_CheckComplexPat0, /*#*/1,
4218
127k
     OPC_EmitMergeInputChains1_0,
4219
127k
     OPC_EmitInteger32, 0, 
4220
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4221
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4222
127k
    17, 
4223
127k
     OPC_CheckPredicate1, 
4224
127k
     OPC_CheckPatternPredicate1,
4225
127k
     OPC_CheckComplexPat0, /*#*/1,
4226
127k
     OPC_EmitMergeInputChains1_0,
4227
127k
     OPC_EmitInteger32, 0, 
4228
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4229
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4230
127k
    0, 
4231
127k
   17, MVT::i64,
4232
127k
    OPC_CheckPredicate7, 
4233
127k
    OPC_CheckPatternPredicate1,
4234
127k
    OPC_CheckComplexPat0, /*#*/1,
4235
127k
    OPC_EmitMergeInputChains1_0,
4236
127k
    OPC_EmitInteger32, 0, 
4237
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
4238
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
4239
127k
   0,
4240
127k
  117, 
4241
127k
   OPC_CheckChild1TypeI64,
4242
127k
   OPC_RecordChild2,
4243
127k
   OPC_SwitchType , 92, MVT::i32,
4244
127k
    OPC_Scope, 17, 
4245
127k
     OPC_CheckPredicate3, 
4246
127k
     OPC_CheckPatternPredicate2,
4247
127k
     OPC_CheckComplexPat1, /*#*/1,
4248
127k
     OPC_EmitMergeInputChains1_0,
4249
127k
     OPC_EmitInteger32, 0, 
4250
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4251
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4252
127k
    17, 
4253
127k
     OPC_CheckPredicate2, 
4254
127k
     OPC_CheckPatternPredicate2,
4255
127k
     OPC_CheckComplexPat1, /*#*/1,
4256
127k
     OPC_EmitMergeInputChains1_0,
4257
127k
     OPC_EmitInteger32, 0, 
4258
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4259
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4260
127k
    17, 
4261
127k
     OPC_CheckPredicate1, 
4262
127k
     OPC_CheckPatternPredicate2,
4263
127k
     OPC_CheckComplexPat1, /*#*/1,
4264
127k
     OPC_EmitMergeInputChains1_0,
4265
127k
     OPC_EmitInteger32, 0, 
4266
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4267
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4268
127k
    17, 
4269
127k
     OPC_CheckPredicate2, 
4270
127k
     OPC_CheckPatternPredicate2,
4271
127k
     OPC_CheckComplexPat1, /*#*/1,
4272
127k
     OPC_EmitMergeInputChains1_0,
4273
127k
     OPC_EmitInteger32, 0, 
4274
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4275
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4276
127k
    17, 
4277
127k
     OPC_CheckPredicate1, 
4278
127k
     OPC_CheckPatternPredicate2,
4279
127k
     OPC_CheckComplexPat1, /*#*/1,
4280
127k
     OPC_EmitMergeInputChains1_0,
4281
127k
     OPC_EmitInteger32, 0, 
4282
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_XCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4283
127k
                   MVT::i32, 4, 5, 3, 4, 2, 
4284
127k
    0, 
4285
127k
   17, MVT::i64,
4286
127k
    OPC_CheckPredicate7, 
4287
127k
    OPC_CheckPatternPredicate2,
4288
127k
    OPC_CheckComplexPat1, /*#*/1,
4289
127k
    OPC_EmitMergeInputChains1_0,
4290
127k
    OPC_EmitInteger32, 0, 
4291
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_XCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
4292
127k
                  MVT::i64, 4, 5, 3, 4, 2, 
4293
127k
   0,
4294
127k
  0, 
4295
127k
 127|128,1, TARGET_VAL(ISD::ATOMIC_CMP_SWAP),
4296
127k
  OPC_RecordMemRef,
4297
127k
  OPC_RecordNode,
4298
127k
  OPC_RecordChild1,
4299
127k
  OPC_Scope, 124, 
4300
127k
   OPC_CheckChild1TypeI32,
4301
127k
   OPC_RecordChild2,
4302
127k
   OPC_RecordChild3,
4303
127k
   OPC_SwitchType , 97, MVT::i32,
4304
127k
    OPC_Scope, 18, 
4305
127k
     OPC_CheckPredicate3, 
4306
127k
     OPC_CheckPatternPredicate1,
4307
127k
     OPC_CheckComplexPat0, /*#*/1,
4308
127k
     OPC_EmitMergeInputChains1_0,
4309
127k
     OPC_EmitInteger32, 0, 
4310
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4311
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
4312
127k
    18, 
4313
127k
     OPC_CheckPredicate2, 
4314
127k
     OPC_CheckPatternPredicate1,
4315
127k
     OPC_CheckComplexPat0, /*#*/1,
4316
127k
     OPC_EmitMergeInputChains1_0,
4317
127k
     OPC_EmitInteger32, 0, 
4318
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4319
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
4320
127k
    18, 
4321
127k
     OPC_CheckPredicate1, 
4322
127k
     OPC_CheckPatternPredicate1,
4323
127k
     OPC_CheckComplexPat0, /*#*/1,
4324
127k
     OPC_EmitMergeInputChains1_0,
4325
127k
     OPC_EmitInteger32, 0, 
4326
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4327
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
4328
127k
    18, 
4329
127k
     OPC_CheckPredicate2, 
4330
127k
     OPC_CheckPatternPredicate1,
4331
127k
     OPC_CheckComplexPat0, /*#*/1,
4332
127k
     OPC_EmitMergeInputChains1_0,
4333
127k
     OPC_EmitInteger32, 0, 
4334
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4335
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
4336
127k
    18, 
4337
127k
     OPC_CheckPredicate1, 
4338
127k
     OPC_CheckPatternPredicate1,
4339
127k
     OPC_CheckComplexPat0, /*#*/1,
4340
127k
     OPC_EmitMergeInputChains1_0,
4341
127k
     OPC_EmitInteger32, 0, 
4342
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A32), 0|OPFL_Chain|OPFL_MemRefs,
4343
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
4344
127k
    0, 
4345
127k
   18, MVT::i64,
4346
127k
    OPC_CheckPredicate7, 
4347
127k
    OPC_CheckPatternPredicate1,
4348
127k
    OPC_CheckComplexPat0, /*#*/1,
4349
127k
    OPC_EmitMergeInputChains1_0,
4350
127k
    OPC_EmitInteger32, 0, 
4351
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A32), 0|OPFL_Chain|OPFL_MemRefs,
4352
127k
                  MVT::i64, 5, 6, 4, 5, 2, 3, 
4353
127k
   0,
4354
127k
  124, 
4355
127k
   OPC_CheckChild1TypeI64,
4356
127k
   OPC_RecordChild2,
4357
127k
   OPC_RecordChild3,
4358
127k
   OPC_SwitchType , 97, MVT::i32,
4359
127k
    OPC_Scope, 18, 
4360
127k
     OPC_CheckPredicate3, 
4361
127k
     OPC_CheckPatternPredicate2,
4362
127k
     OPC_CheckComplexPat1, /*#*/1,
4363
127k
     OPC_EmitMergeInputChains1_0,
4364
127k
     OPC_EmitInteger32, 0, 
4365
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4366
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
4367
127k
    18, 
4368
127k
     OPC_CheckPredicate2, 
4369
127k
     OPC_CheckPatternPredicate2,
4370
127k
     OPC_CheckComplexPat1, /*#*/1,
4371
127k
     OPC_EmitMergeInputChains1_0,
4372
127k
     OPC_EmitInteger32, 0, 
4373
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4374
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
4375
127k
    18, 
4376
127k
     OPC_CheckPredicate1, 
4377
127k
     OPC_CheckPatternPredicate2,
4378
127k
     OPC_CheckComplexPat1, /*#*/1,
4379
127k
     OPC_EmitMergeInputChains1_0,
4380
127k
     OPC_EmitInteger32, 0, 
4381
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4382
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
4383
127k
    18, 
4384
127k
     OPC_CheckPredicate2, 
4385
127k
     OPC_CheckPatternPredicate2,
4386
127k
     OPC_CheckComplexPat1, /*#*/1,
4387
127k
     OPC_EmitMergeInputChains1_0,
4388
127k
     OPC_EmitInteger32, 0, 
4389
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW8_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4390
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
4391
127k
    18, 
4392
127k
     OPC_CheckPredicate1, 
4393
127k
     OPC_CheckPatternPredicate2,
4394
127k
     OPC_CheckComplexPat1, /*#*/1,
4395
127k
     OPC_EmitMergeInputChains1_0,
4396
127k
     OPC_EmitInteger32, 0, 
4397
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW16_U_CMPXCHG_I32_A64), 0|OPFL_Chain|OPFL_MemRefs,
4398
127k
                   MVT::i32, 5, 6, 4, 5, 2, 3, 
4399
127k
    0, 
4400
127k
   18, MVT::i64,
4401
127k
    OPC_CheckPredicate7, 
4402
127k
    OPC_CheckPatternPredicate2,
4403
127k
    OPC_CheckComplexPat1, /*#*/1,
4404
127k
    OPC_EmitMergeInputChains1_0,
4405
127k
    OPC_EmitInteger32, 0, 
4406
127k
    OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ATOMIC_RMW_CMPXCHG_I64_A64), 0|OPFL_Chain|OPFL_MemRefs,
4407
127k
                  MVT::i64, 5, 6, 4, 5, 2, 3, 
4408
127k
   0,
4409
127k
  0, 
4410
127k
 89, TARGET_VAL(ISD::BRCOND),
4411
127k
  OPC_RecordNode,
4412
127k
  OPC_Scope, 69, 
4413
127k
   OPC_MoveChild1,
4414
127k
   OPC_SwitchOpcode , 21, TARGET_VAL(ISD::XOR),
4415
127k
    OPC_RecordChild0,
4416
127k
    OPC_MoveChild0,
4417
127k
    OPC_CheckPredicate, 26,
4418
127k
    OPC_MoveParent,
4419
127k
    OPC_CheckChild1Integer, 2, 
4420
127k
    OPC_CheckTypeI32,
4421
127k
    OPC_MoveSibling2,
4422
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
4423
127k
    OPC_RecordNode,
4424
127k
    OPC_MoveParent,
4425
127k
    OPC_EmitMergeInputChains1_0,
4426
127k
    OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::BR_UNLESS),
4427
127k
                  2, 2, 1, 
4428
127k
   39, TARGET_VAL(ISD::SETCC),
4429
127k
    OPC_RecordChild0,
4430
127k
    OPC_CheckChild0TypeI32,
4431
127k
    OPC_CheckChild1Integer, 0, 
4432
127k
    OPC_CheckTypeI32,
4433
127k
    OPC_Scope, 15, 
4434
127k
     OPC_CheckChild2CondCode, ISD::SETNE,
4435
127k
     OPC_MoveSibling2,
4436
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
4437
127k
     OPC_RecordNode,
4438
127k
     OPC_MoveParent,
4439
127k
     OPC_EmitMergeInputChains1_0,
4440
127k
     OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::BR_IF),
4441
127k
                   2, 2, 1, 
4442
127k
    15, 
4443
127k
     OPC_CheckChild2CondCode, ISD::SETEQ,
4444
127k
     OPC_MoveSibling2,
4445
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
4446
127k
     OPC_RecordNode,
4447
127k
     OPC_MoveParent,
4448
127k
     OPC_EmitMergeInputChains1_0,
4449
127k
     OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::BR_UNLESS),
4450
127k
                   2, 2, 1, 
4451
127k
    0, 
4452
127k
   0,
4453
127k
  15, 
4454
127k
   OPC_RecordChild1,
4455
127k
   OPC_CheckChild1TypeI32,
4456
127k
   OPC_RecordChild2,
4457
127k
   OPC_MoveChild2,
4458
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
4459
127k
   OPC_MoveParent,
4460
127k
   OPC_EmitMergeInputChains1_0,
4461
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::BR_IF),
4462
127k
                 2, 2, 1, 
4463
127k
  0, 
4464
127k
 59, TARGET_VAL(ISD::SHL),
4465
127k
  OPC_RecordChild0,
4466
127k
  OPC_Scope, 31, 
4467
127k
   OPC_MoveChild1,
4468
127k
   OPC_SwitchType , 12, MVT::i32,
4469
127k
    OPC_CheckAndImm, 31, 
4470
127k
    OPC_RecordChild0,
4471
127k
    OPC_MoveParent,
4472
127k
    OPC_CheckTypeI32,
4473
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I32),
4474
127k
                  MVT::i32, 2, 0, 1, 
4475
127k
   12, MVT::i64,
4476
127k
    OPC_CheckAndImm, 63, 
4477
127k
    OPC_RecordChild0,
4478
127k
    OPC_MoveParent,
4479
127k
    OPC_CheckTypeI64,
4480
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I64),
4481
127k
                  MVT::i64, 2, 0, 1, 
4482
127k
   0,
4483
127k
  23, 
4484
127k
   OPC_RecordChild1,
4485
127k
   OPC_SwitchType , 8, MVT::i32,
4486
127k
    OPC_CheckChild1TypeI32,
4487
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I32),
4488
127k
                  MVT::i32, 2, 0, 1, 
4489
127k
   8, MVT::i64,
4490
127k
    OPC_CheckChild1TypeI64,
4491
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I64),
4492
127k
                  MVT::i64, 2, 0, 1, 
4493
127k
   0,
4494
127k
  0, 
4495
127k
 59, TARGET_VAL(ISD::SRA),
4496
127k
  OPC_RecordChild0,
4497
127k
  OPC_Scope, 31, 
4498
127k
   OPC_MoveChild1,
4499
127k
   OPC_SwitchType , 12, MVT::i32,
4500
127k
    OPC_CheckAndImm, 31, 
4501
127k
    OPC_RecordChild0,
4502
127k
    OPC_MoveParent,
4503
127k
    OPC_CheckTypeI32,
4504
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I32),
4505
127k
                  MVT::i32, 2, 0, 1, 
4506
127k
   12, MVT::i64,
4507
127k
    OPC_CheckAndImm, 63, 
4508
127k
    OPC_RecordChild0,
4509
127k
    OPC_MoveParent,
4510
127k
    OPC_CheckTypeI64,
4511
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I64),
4512
127k
                  MVT::i64, 2, 0, 1, 
4513
127k
   0,
4514
127k
  23, 
4515
127k
   OPC_RecordChild1,
4516
127k
   OPC_SwitchType , 8, MVT::i32,
4517
127k
    OPC_CheckChild1TypeI32,
4518
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I32),
4519
127k
                  MVT::i32, 2, 0, 1, 
4520
127k
   8, MVT::i64,
4521
127k
    OPC_CheckChild1TypeI64,
4522
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I64),
4523
127k
                  MVT::i64, 2, 0, 1, 
4524
127k
   0,
4525
127k
  0, 
4526
127k
 59, TARGET_VAL(ISD::SRL),
4527
127k
  OPC_RecordChild0,
4528
127k
  OPC_Scope, 31, 
4529
127k
   OPC_MoveChild1,
4530
127k
   OPC_SwitchType , 12, MVT::i32,
4531
127k
    OPC_CheckAndImm, 31, 
4532
127k
    OPC_RecordChild0,
4533
127k
    OPC_MoveParent,
4534
127k
    OPC_CheckTypeI32,
4535
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I32),
4536
127k
                  MVT::i32, 2, 0, 1, 
4537
127k
   12, MVT::i64,
4538
127k
    OPC_CheckAndImm, 63, 
4539
127k
    OPC_RecordChild0,
4540
127k
    OPC_MoveParent,
4541
127k
    OPC_CheckTypeI64,
4542
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I64),
4543
127k
                  MVT::i64, 2, 0, 1, 
4544
127k
   0,
4545
127k
  23, 
4546
127k
   OPC_RecordChild1,
4547
127k
   OPC_SwitchType , 8, MVT::i32,
4548
127k
    OPC_CheckChild1TypeI32,
4549
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I32),
4550
127k
                  MVT::i32, 2, 0, 1, 
4551
127k
   8, MVT::i64,
4552
127k
    OPC_CheckChild1TypeI64,
4553
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I64),
4554
127k
                  MVT::i64, 2, 0, 1, 
4555
127k
   0,
4556
127k
  0, 
4557
127k
 59, TARGET_VAL(ISD::ROTL),
4558
127k
  OPC_RecordChild0,
4559
127k
  OPC_Scope, 31, 
4560
127k
   OPC_MoveChild1,
4561
127k
   OPC_SwitchType , 12, MVT::i32,
4562
127k
    OPC_CheckAndImm, 31, 
4563
127k
    OPC_RecordChild0,
4564
127k
    OPC_MoveParent,
4565
127k
    OPC_CheckTypeI32,
4566
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ROTL_I32),
4567
127k
                  MVT::i32, 2, 0, 1, 
4568
127k
   12, MVT::i64,
4569
127k
    OPC_CheckAndImm, 63, 
4570
127k
    OPC_RecordChild0,
4571
127k
    OPC_MoveParent,
4572
127k
    OPC_CheckTypeI64,
4573
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ROTL_I64),
4574
127k
                  MVT::i64, 2, 0, 1, 
4575
127k
   0,
4576
127k
  23, 
4577
127k
   OPC_RecordChild1,
4578
127k
   OPC_SwitchType , 8, MVT::i32,
4579
127k
    OPC_CheckChild1TypeI32,
4580
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ROTL_I32),
4581
127k
                  MVT::i32, 2, 0, 1, 
4582
127k
   8, MVT::i64,
4583
127k
    OPC_CheckChild1TypeI64,
4584
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ROTL_I64),
4585
127k
                  MVT::i64, 2, 0, 1, 
4586
127k
   0,
4587
127k
  0, 
4588
127k
 59, TARGET_VAL(ISD::ROTR),
4589
127k
  OPC_RecordChild0,
4590
127k
  OPC_Scope, 31, 
4591
127k
   OPC_MoveChild1,
4592
127k
   OPC_SwitchType , 12, MVT::i32,
4593
127k
    OPC_CheckAndImm, 31, 
4594
127k
    OPC_RecordChild0,
4595
127k
    OPC_MoveParent,
4596
127k
    OPC_CheckTypeI32,
4597
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ROTR_I32),
4598
127k
                  MVT::i32, 2, 0, 1, 
4599
127k
   12, MVT::i64,
4600
127k
    OPC_CheckAndImm, 63, 
4601
127k
    OPC_RecordChild0,
4602
127k
    OPC_MoveParent,
4603
127k
    OPC_CheckTypeI64,
4604
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ROTR_I64),
4605
127k
                  MVT::i64, 2, 0, 1, 
4606
127k
   0,
4607
127k
  23, 
4608
127k
   OPC_RecordChild1,
4609
127k
   OPC_SwitchType , 8, MVT::i32,
4610
127k
    OPC_CheckChild1TypeI32,
4611
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ROTR_I32),
4612
127k
                  MVT::i32, 2, 0, 1, 
4613
127k
   8, MVT::i64,
4614
127k
    OPC_CheckChild1TypeI64,
4615
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ROTR_I64),
4616
127k
                  MVT::i64, 2, 0, 1, 
4617
127k
   0,
4618
127k
  0, 
4619
127k
 120|128,3, TARGET_VAL(ISD::SELECT),
4620
127k
  OPC_Scope, 107, 
4621
127k
   OPC_MoveChild0,
4622
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::SETCC),
4623
127k
   OPC_RecordChild0,
4624
127k
   OPC_CheckChild0TypeI32,
4625
127k
   OPC_CheckChild1Integer, 0, 
4626
127k
   OPC_CheckTypeI32,
4627
127k
   OPC_Scope, 47, 
4628
127k
    OPC_CheckChild2CondCode, ISD::SETNE,
4629
127k
    OPC_MoveParent,
4630
127k
    OPC_RecordChild1,
4631
127k
    OPC_RecordChild2,
4632
127k
    OPC_SwitchType , 8, MVT::i32,
4633
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_I32),
4634
127k
                   MVT::i32, 3, 1, 2, 0, 
4635
127k
    8, MVT::i64,
4636
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_I64),
4637
127k
                   MVT::i64, 3, 1, 2, 0, 
4638
127k
    8, MVT::funcref,
4639
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_FUNCREF),
4640
127k
                   MVT::funcref, 3, 1, 2, 0, 
4641
127k
    8, MVT::externref,
4642
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_EXTERNREF),
4643
127k
                   MVT::externref, 3, 1, 2, 0, 
4644
127k
    0,
4645
127k
   47, 
4646
127k
    OPC_CheckChild2CondCode, ISD::SETEQ,
4647
127k
    OPC_MoveParent,
4648
127k
    OPC_RecordChild1,
4649
127k
    OPC_RecordChild2,
4650
127k
    OPC_SwitchType , 8, MVT::i32,
4651
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_I32),
4652
127k
                   MVT::i32, 3, 2, 1, 0, 
4653
127k
    8, MVT::i64,
4654
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_I64),
4655
127k
                   MVT::i64, 3, 2, 1, 0, 
4656
127k
    8, MVT::funcref,
4657
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_FUNCREF),
4658
127k
                   MVT::funcref, 3, 2, 1, 0, 
4659
127k
    8, MVT::externref,
4660
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_EXTERNREF),
4661
127k
                   MVT::externref, 3, 2, 1, 0, 
4662
127k
    0,
4663
127k
   0, 
4664
127k
  48, 
4665
127k
   OPC_RecordChild0,
4666
127k
   OPC_CheckChild0TypeI32,
4667
127k
   OPC_RecordChild1,
4668
127k
   OPC_RecordChild2,
4669
127k
   OPC_SwitchType , 8, MVT::i32,
4670
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_I32),
4671
127k
                  MVT::i32, 3, 1, 2, 0, 
4672
127k
   8, MVT::i64,
4673
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_I64),
4674
127k
                  MVT::i64, 3, 1, 2, 0, 
4675
127k
   9, MVT::funcref,
4676
127k
    OPC_CheckPatternPredicate5,
4677
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_FUNCREF),
4678
127k
                  MVT::funcref, 3, 1, 2, 0, 
4679
127k
   9, MVT::externref,
4680
127k
    OPC_CheckPatternPredicate5,
4681
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_EXTERNREF),
4682
127k
                  MVT::externref, 3, 1, 2, 0, 
4683
127k
   0,
4684
127k
  67, 
4685
127k
   OPC_MoveChild0,
4686
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::SETCC),
4687
127k
   OPC_RecordChild0,
4688
127k
   OPC_CheckChild0TypeI32,
4689
127k
   OPC_CheckChild1Integer, 0, 
4690
127k
   OPC_CheckTypeI32,
4691
127k
   OPC_Scope, 27, 
4692
127k
    OPC_CheckChild2CondCode, ISD::SETNE,
4693
127k
    OPC_MoveParent,
4694
127k
    OPC_RecordChild1,
4695
127k
    OPC_RecordChild2,
4696
127k
    OPC_SwitchType , 8, MVT::f32,
4697
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_F32),
4698
127k
                   MVT::f32, 3, 1, 2, 0, 
4699
127k
    8, MVT::f64,
4700
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_F64),
4701
127k
                   MVT::f64, 3, 1, 2, 0, 
4702
127k
    0,
4703
127k
   27, 
4704
127k
    OPC_CheckChild2CondCode, ISD::SETEQ,
4705
127k
    OPC_MoveParent,
4706
127k
    OPC_RecordChild1,
4707
127k
    OPC_RecordChild2,
4708
127k
    OPC_SwitchType , 8, MVT::f32,
4709
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_F32),
4710
127k
                   MVT::f32, 3, 2, 1, 0, 
4711
127k
    8, MVT::f64,
4712
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_F64),
4713
127k
                   MVT::f64, 3, 2, 1, 0, 
4714
127k
    0,
4715
127k
   0, 
4716
127k
  26, 
4717
127k
   OPC_RecordChild0,
4718
127k
   OPC_CheckChild0TypeI32,
4719
127k
   OPC_RecordChild1,
4720
127k
   OPC_RecordChild2,
4721
127k
   OPC_SwitchType , 8, MVT::f32,
4722
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_F32),
4723
127k
                  MVT::f32, 3, 1, 2, 0, 
4724
127k
   8, MVT::f64,
4725
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_F64),
4726
127k
                  MVT::f64, 3, 1, 2, 0, 
4727
127k
   0,
4728
127k
  107, 
4729
127k
   OPC_MoveChild0,
4730
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::SETCC),
4731
127k
   OPC_RecordChild0,
4732
127k
   OPC_CheckChild0TypeI32,
4733
127k
   OPC_CheckChild1Integer, 0, 
4734
127k
   OPC_CheckTypeI32,
4735
127k
   OPC_Scope, 47, 
4736
127k
    OPC_CheckChild2CondCode, ISD::SETNE,
4737
127k
    OPC_MoveParent,
4738
127k
    OPC_RecordChild1,
4739
127k
    OPC_RecordChild2,
4740
127k
    OPC_SwitchType , 8, MVT::v16i8,
4741
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4742
127k
                   MVT::v16i8, 3, 1, 2, 0, 
4743
127k
    8, MVT::v8i16,
4744
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4745
127k
                   MVT::v8i16, 3, 1, 2, 0, 
4746
127k
    8, MVT::v4i32,
4747
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4748
127k
                   MVT::v4i32, 3, 1, 2, 0, 
4749
127k
    8, MVT::v2i64,
4750
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4751
127k
                   MVT::v2i64, 3, 1, 2, 0, 
4752
127k
    0,
4753
127k
   47, 
4754
127k
    OPC_CheckChild2CondCode, ISD::SETEQ,
4755
127k
    OPC_MoveParent,
4756
127k
    OPC_RecordChild1,
4757
127k
    OPC_RecordChild2,
4758
127k
    OPC_SwitchType , 8, MVT::v16i8,
4759
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4760
127k
                   MVT::v16i8, 3, 2, 1, 0, 
4761
127k
    8, MVT::v8i16,
4762
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4763
127k
                   MVT::v8i16, 3, 2, 1, 0, 
4764
127k
    8, MVT::v4i32,
4765
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4766
127k
                   MVT::v4i32, 3, 2, 1, 0, 
4767
127k
    8, MVT::v2i64,
4768
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4769
127k
                   MVT::v2i64, 3, 2, 1, 0, 
4770
127k
    0,
4771
127k
   0, 
4772
127k
  46, 
4773
127k
   OPC_RecordChild0,
4774
127k
   OPC_CheckChild0TypeI32,
4775
127k
   OPC_RecordChild1,
4776
127k
   OPC_RecordChild2,
4777
127k
   OPC_SwitchType , 8, MVT::v16i8,
4778
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4779
127k
                  MVT::v16i8, 3, 1, 2, 0, 
4780
127k
   8, MVT::v8i16,
4781
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4782
127k
                  MVT::v8i16, 3, 1, 2, 0, 
4783
127k
   8, MVT::v4i32,
4784
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4785
127k
                  MVT::v4i32, 3, 1, 2, 0, 
4786
127k
   8, MVT::v2i64,
4787
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4788
127k
                  MVT::v2i64, 3, 1, 2, 0, 
4789
127k
   0,
4790
127k
  67, 
4791
127k
   OPC_MoveChild0,
4792
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::SETCC),
4793
127k
   OPC_RecordChild0,
4794
127k
   OPC_CheckChild0TypeI32,
4795
127k
   OPC_CheckChild1Integer, 0, 
4796
127k
   OPC_CheckTypeI32,
4797
127k
   OPC_Scope, 27, 
4798
127k
    OPC_CheckChild2CondCode, ISD::SETNE,
4799
127k
    OPC_MoveParent,
4800
127k
    OPC_RecordChild1,
4801
127k
    OPC_RecordChild2,
4802
127k
    OPC_SwitchType , 8, MVT::v4f32,
4803
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4804
127k
                   MVT::v4f32, 3, 1, 2, 0, 
4805
127k
    8, MVT::v2f64,
4806
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4807
127k
                   MVT::v2f64, 3, 1, 2, 0, 
4808
127k
    0,
4809
127k
   27, 
4810
127k
    OPC_CheckChild2CondCode, ISD::SETEQ,
4811
127k
    OPC_MoveParent,
4812
127k
    OPC_RecordChild1,
4813
127k
    OPC_RecordChild2,
4814
127k
    OPC_SwitchType , 8, MVT::v4f32,
4815
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4816
127k
                   MVT::v4f32, 3, 2, 1, 0, 
4817
127k
    8, MVT::v2f64,
4818
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4819
127k
                   MVT::v2f64, 3, 2, 1, 0, 
4820
127k
    0,
4821
127k
   0, 
4822
127k
  26, 
4823
127k
   OPC_RecordChild0,
4824
127k
   OPC_CheckChild0TypeI32,
4825
127k
   OPC_RecordChild1,
4826
127k
   OPC_RecordChild2,
4827
127k
   OPC_SwitchType , 8, MVT::v4f32,
4828
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4829
127k
                  MVT::v4f32, 3, 1, 2, 0, 
4830
127k
   8, MVT::v2f64,
4831
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SELECT_V128),
4832
127k
                  MVT::v2f64, 3, 1, 2, 0, 
4833
127k
   0,
4834
127k
  0, 
4835
127k
 1|128,1, TARGET_VAL(ISD::SIGN_EXTEND_INREG),
4836
127k
  OPC_Scope, 57, 
4837
127k
   OPC_MoveChild0,
4838
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
4839
127k
   OPC_RecordChild0,
4840
127k
   OPC_Scope, 24, 
4841
127k
    OPC_CheckChild0Type, MVT::v16i8,
4842
127k
    OPC_RecordChild1,
4843
127k
    OPC_MoveChild1,
4844
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4845
127k
    OPC_CheckPredicate, 15,
4846
127k
    OPC_CheckTypeI32,
4847
127k
    OPC_MoveParent,
4848
127k
    OPC_MoveSibling1,
4849
127k
    OPC_CheckValueType, MVT::i8,
4850
127k
    OPC_MoveParent,
4851
127k
    OPC_CheckTypeI32,
4852
127k
    OPC_EmitConvertToTarget1,
4853
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTRACT_LANE_I8x16_s),
4854
127k
                  MVT::i32, 2, 0, 2, 
4855
127k
   24, 
4856
127k
    OPC_CheckChild0Type, MVT::v8i16,
4857
127k
    OPC_RecordChild1,
4858
127k
    OPC_MoveChild1,
4859
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
4860
127k
    OPC_CheckPredicate, 17,
4861
127k
    OPC_CheckTypeI32,
4862
127k
    OPC_MoveParent,
4863
127k
    OPC_MoveSibling1,
4864
127k
    OPC_CheckValueType, MVT::i16,
4865
127k
    OPC_MoveParent,
4866
127k
    OPC_CheckTypeI32,
4867
127k
    OPC_EmitConvertToTarget1,
4868
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTRACT_LANE_I16x8_s),
4869
127k
                  MVT::i32, 2, 0, 2, 
4870
127k
   0, 
4871
127k
  68, 
4872
127k
   OPC_RecordChild0,
4873
127k
   OPC_MoveChild1,
4874
127k
   OPC_Scope, 25, 
4875
127k
    OPC_CheckValueType, MVT::i8,
4876
127k
    OPC_MoveParent,
4877
127k
    OPC_SwitchType , 8, MVT::i32,
4878
127k
     OPC_CheckPatternPredicate, 9,
4879
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_EXTEND8_S_I32),
4880
127k
                   MVT::i32, 1, 0, 
4881
127k
    8, MVT::i64,
4882
127k
     OPC_CheckPatternPredicate, 9,
4883
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_EXTEND8_S_I64),
4884
127k
                   MVT::i64, 1, 0, 
4885
127k
    0,
4886
127k
   25, 
4887
127k
    OPC_CheckValueType, MVT::i16,
4888
127k
    OPC_MoveParent,
4889
127k
    OPC_SwitchType , 8, MVT::i32,
4890
127k
     OPC_CheckPatternPredicate, 9,
4891
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_EXTEND16_S_I32),
4892
127k
                   MVT::i32, 1, 0, 
4893
127k
    8, MVT::i64,
4894
127k
     OPC_CheckPatternPredicate, 9,
4895
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_EXTEND16_S_I64),
4896
127k
                   MVT::i64, 1, 0, 
4897
127k
    0,
4898
127k
   11, 
4899
127k
    OPC_CheckValueType, MVT::i32,
4900
127k
    OPC_MoveParent,
4901
127k
    OPC_CheckPatternPredicate, 9,
4902
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_EXTEND32_S_I64),
4903
127k
                  MVT::i64, 1, 0, 
4904
127k
   0, 
4905
127k
  0, 
4906
127k
 15|128,1, TARGET_VAL(WebAssemblyISD::GLOBAL_GET),
4907
127k
  OPC_RecordMemRef,
4908
127k
  OPC_RecordNode,
4909
127k
  OPC_MoveChild1,
4910
127k
  OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
4911
127k
  OPC_RecordChild0,
4912
127k
  OPC_MoveChild0,
4913
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
4914
127k
  OPC_MoveParent,
4915
127k
  OPC_MoveParent,
4916
127k
  OPC_SwitchType , 8, MVT::i32,
4917
127k
   OPC_EmitMergeInputChains1_0,
4918
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_I32), 0|OPFL_Chain|OPFL_MemRefs,
4919
127k
                 MVT::i32, 1, 1, 
4920
127k
  8, MVT::i64,
4921
127k
   OPC_EmitMergeInputChains1_0,
4922
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_I64), 0|OPFL_Chain|OPFL_MemRefs,
4923
127k
                 MVT::i64, 1, 1, 
4924
127k
  9, MVT::funcref,
4925
127k
   OPC_CheckPatternPredicate5,
4926
127k
   OPC_EmitMergeInputChains1_0,
4927
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_FUNCREF), 0|OPFL_Chain|OPFL_MemRefs,
4928
127k
                 MVT::funcref, 1, 1, 
4929
127k
  9, MVT::externref,
4930
127k
   OPC_CheckPatternPredicate5,
4931
127k
   OPC_EmitMergeInputChains1_0,
4932
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_EXTERNREF), 0|OPFL_Chain|OPFL_MemRefs,
4933
127k
                 MVT::externref, 1, 1, 
4934
127k
  8, MVT::f32,
4935
127k
   OPC_EmitMergeInputChains1_0,
4936
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_F32), 0|OPFL_Chain|OPFL_MemRefs,
4937
127k
                 MVT::f32, 1, 1, 
4938
127k
  8, MVT::f64,
4939
127k
   OPC_EmitMergeInputChains1_0,
4940
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_F64), 0|OPFL_Chain|OPFL_MemRefs,
4941
127k
                 MVT::f64, 1, 1, 
4942
127k
  9, MVT::v2i64,
4943
127k
   OPC_CheckPatternPredicate0,
4944
127k
   OPC_EmitMergeInputChains1_0,
4945
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_V128), 0|OPFL_Chain|OPFL_MemRefs,
4946
127k
                 MVT::v2i64, 1, 1, 
4947
127k
  9, MVT::v4i32,
4948
127k
   OPC_CheckPatternPredicate0,
4949
127k
   OPC_EmitMergeInputChains1_0,
4950
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_V128), 0|OPFL_Chain|OPFL_MemRefs,
4951
127k
                 MVT::v4i32, 1, 1, 
4952
127k
  9, MVT::v16i8,
4953
127k
   OPC_CheckPatternPredicate0,
4954
127k
   OPC_EmitMergeInputChains1_0,
4955
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_V128), 0|OPFL_Chain|OPFL_MemRefs,
4956
127k
                 MVT::v16i8, 1, 1, 
4957
127k
  9, MVT::v8i16,
4958
127k
   OPC_CheckPatternPredicate0,
4959
127k
   OPC_EmitMergeInputChains1_0,
4960
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_V128), 0|OPFL_Chain|OPFL_MemRefs,
4961
127k
                 MVT::v8i16, 1, 1, 
4962
127k
  9, MVT::v4f32,
4963
127k
   OPC_CheckPatternPredicate0,
4964
127k
   OPC_EmitMergeInputChains1_0,
4965
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_V128), 0|OPFL_Chain|OPFL_MemRefs,
4966
127k
                 MVT::v4f32, 1, 1, 
4967
127k
  9, MVT::v2f64,
4968
127k
   OPC_CheckPatternPredicate0,
4969
127k
   OPC_EmitMergeInputChains1_0,
4970
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::GLOBAL_GET_V128), 0|OPFL_Chain|OPFL_MemRefs,
4971
127k
                 MVT::v2f64, 1, 1, 
4972
127k
  0,
4973
127k
 19|128,2, TARGET_VAL(WebAssemblyISD::GLOBAL_SET),
4974
127k
  OPC_RecordMemRef,
4975
127k
  OPC_RecordNode,
4976
127k
  OPC_RecordChild1,
4977
127k
  OPC_Scope, 20, 
4978
127k
   OPC_CheckChild1TypeI32,
4979
127k
   OPC_MoveChild2,
4980
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
4981
127k
   OPC_RecordChild0,
4982
127k
   OPC_MoveChild0,
4983
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
4984
127k
   OPC_MoveParent,
4985
127k
   OPC_MoveParent,
4986
127k
   OPC_EmitMergeInputChains1_0,
4987
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_I32), 0|OPFL_Chain|OPFL_MemRefs,
4988
127k
                 2, 2, 1, 
4989
127k
  20, 
4990
127k
   OPC_CheckChild1TypeI64,
4991
127k
   OPC_MoveChild2,
4992
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
4993
127k
   OPC_RecordChild0,
4994
127k
   OPC_MoveChild0,
4995
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
4996
127k
   OPC_MoveParent,
4997
127k
   OPC_MoveParent,
4998
127k
   OPC_EmitMergeInputChains1_0,
4999
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_I64), 0|OPFL_Chain|OPFL_MemRefs,
5000
127k
                 2, 2, 1, 
5001
127k
  21, 
5002
127k
   OPC_CheckChild1Type, MVT::f32,
5003
127k
   OPC_MoveChild2,
5004
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5005
127k
   OPC_RecordChild0,
5006
127k
   OPC_MoveChild0,
5007
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5008
127k
   OPC_MoveParent,
5009
127k
   OPC_MoveParent,
5010
127k
   OPC_EmitMergeInputChains1_0,
5011
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_F32), 0|OPFL_Chain|OPFL_MemRefs,
5012
127k
                 2, 2, 1, 
5013
127k
  21, 
5014
127k
   OPC_CheckChild1Type, MVT::f64,
5015
127k
   OPC_MoveChild2,
5016
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5017
127k
   OPC_RecordChild0,
5018
127k
   OPC_MoveChild0,
5019
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5020
127k
   OPC_MoveParent,
5021
127k
   OPC_MoveParent,
5022
127k
   OPC_EmitMergeInputChains1_0,
5023
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_F64), 0|OPFL_Chain|OPFL_MemRefs,
5024
127k
                 2, 2, 1, 
5025
127k
  22, 
5026
127k
   OPC_CheckChild1Type, MVT::v4f32,
5027
127k
   OPC_MoveChild2,
5028
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5029
127k
   OPC_RecordChild0,
5030
127k
   OPC_MoveChild0,
5031
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5032
127k
   OPC_MoveParent,
5033
127k
   OPC_MoveParent,
5034
127k
   OPC_CheckPatternPredicate0,
5035
127k
   OPC_EmitMergeInputChains1_0,
5036
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_V128), 0|OPFL_Chain|OPFL_MemRefs,
5037
127k
                 2, 2, 1, 
5038
127k
  22, 
5039
127k
   OPC_CheckChild1Type, MVT::v2f64,
5040
127k
   OPC_MoveChild2,
5041
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5042
127k
   OPC_RecordChild0,
5043
127k
   OPC_MoveChild0,
5044
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5045
127k
   OPC_MoveParent,
5046
127k
   OPC_MoveParent,
5047
127k
   OPC_CheckPatternPredicate0,
5048
127k
   OPC_EmitMergeInputChains1_0,
5049
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_V128), 0|OPFL_Chain|OPFL_MemRefs,
5050
127k
                 2, 2, 1, 
5051
127k
  22, 
5052
127k
   OPC_CheckChild1Type, MVT::v2i64,
5053
127k
   OPC_MoveChild2,
5054
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5055
127k
   OPC_RecordChild0,
5056
127k
   OPC_MoveChild0,
5057
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5058
127k
   OPC_MoveParent,
5059
127k
   OPC_MoveParent,
5060
127k
   OPC_CheckPatternPredicate0,
5061
127k
   OPC_EmitMergeInputChains1_0,
5062
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_V128), 0|OPFL_Chain|OPFL_MemRefs,
5063
127k
                 2, 2, 1, 
5064
127k
  22, 
5065
127k
   OPC_CheckChild1Type, MVT::v4i32,
5066
127k
   OPC_MoveChild2,
5067
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5068
127k
   OPC_RecordChild0,
5069
127k
   OPC_MoveChild0,
5070
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5071
127k
   OPC_MoveParent,
5072
127k
   OPC_MoveParent,
5073
127k
   OPC_CheckPatternPredicate0,
5074
127k
   OPC_EmitMergeInputChains1_0,
5075
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_V128), 0|OPFL_Chain|OPFL_MemRefs,
5076
127k
                 2, 2, 1, 
5077
127k
  22, 
5078
127k
   OPC_CheckChild1Type, MVT::v16i8,
5079
127k
   OPC_MoveChild2,
5080
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5081
127k
   OPC_RecordChild0,
5082
127k
   OPC_MoveChild0,
5083
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5084
127k
   OPC_MoveParent,
5085
127k
   OPC_MoveParent,
5086
127k
   OPC_CheckPatternPredicate0,
5087
127k
   OPC_EmitMergeInputChains1_0,
5088
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_V128), 0|OPFL_Chain|OPFL_MemRefs,
5089
127k
                 2, 2, 1, 
5090
127k
  22, 
5091
127k
   OPC_CheckChild1Type, MVT::v8i16,
5092
127k
   OPC_MoveChild2,
5093
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5094
127k
   OPC_RecordChild0,
5095
127k
   OPC_MoveChild0,
5096
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5097
127k
   OPC_MoveParent,
5098
127k
   OPC_MoveParent,
5099
127k
   OPC_CheckPatternPredicate0,
5100
127k
   OPC_EmitMergeInputChains1_0,
5101
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_V128), 0|OPFL_Chain|OPFL_MemRefs,
5102
127k
                 2, 2, 1, 
5103
127k
  22, 
5104
127k
   OPC_CheckChild1Type, MVT::funcref,
5105
127k
   OPC_MoveChild2,
5106
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5107
127k
   OPC_RecordChild0,
5108
127k
   OPC_MoveChild0,
5109
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5110
127k
   OPC_MoveParent,
5111
127k
   OPC_MoveParent,
5112
127k
   OPC_CheckPatternPredicate5,
5113
127k
   OPC_EmitMergeInputChains1_0,
5114
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_FUNCREF), 0|OPFL_Chain|OPFL_MemRefs,
5115
127k
                 2, 2, 1, 
5116
127k
  22, 
5117
127k
   OPC_CheckChild1Type, MVT::externref,
5118
127k
   OPC_MoveChild2,
5119
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5120
127k
   OPC_RecordChild0,
5121
127k
   OPC_MoveChild0,
5122
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5123
127k
   OPC_MoveParent,
5124
127k
   OPC_MoveParent,
5125
127k
   OPC_CheckPatternPredicate5,
5126
127k
   OPC_EmitMergeInputChains1_0,
5127
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::GLOBAL_SET_EXTERNREF), 0|OPFL_Chain|OPFL_MemRefs,
5128
127k
                 2, 2, 1, 
5129
127k
  0, 
5130
127k
 21, TARGET_VAL(ISD::CALLSEQ_START),
5131
127k
  OPC_RecordNode,
5132
127k
  OPC_RecordChild1,
5133
127k
  OPC_MoveChild1,
5134
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
5135
127k
  OPC_MoveSibling2,
5136
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
5137
127k
  OPC_RecordNode,
5138
127k
  OPC_MoveParent,
5139
127k
  OPC_EmitMergeInputChains1_0,
5140
127k
  OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADJCALLSTACKDOWN), 0|OPFL_Chain|OPFL_GlueOutput,
5141
127k
                MVT::i32, 2, 1, 2, 
5142
127k
 22, TARGET_VAL(ISD::CALLSEQ_END),
5143
127k
  OPC_RecordNode,
5144
127k
  OPC_CaptureGlueInput,
5145
127k
  OPC_RecordChild1,
5146
127k
  OPC_MoveChild1,
5147
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
5148
127k
  OPC_MoveSibling2,
5149
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
5150
127k
  OPC_RecordNode,
5151
127k
  OPC_MoveParent,
5152
127k
  OPC_EmitMergeInputChains1_0,
5153
127k
  OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::ADJCALLSTACKUP), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput,
5154
127k
                MVT::i32, 2, 1, 2, 
5155
127k
 57, TARGET_VAL(WebAssemblyISD::MEMORY_COPY),
5156
127k
  OPC_RecordNode,
5157
127k
  OPC_RecordChild1,
5158
127k
  OPC_MoveChild1,
5159
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
5160
127k
  OPC_CheckTypeI32,
5161
127k
  OPC_MoveSibling2,
5162
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
5163
127k
  OPC_RecordNode,
5164
127k
  OPC_CheckTypeI32,
5165
127k
  OPC_MoveParent,
5166
127k
  OPC_RecordChild3,
5167
127k
  OPC_Scope, 19, 
5168
127k
   OPC_CheckChild3TypeI32,
5169
127k
   OPC_RecordChild4,
5170
127k
   OPC_CheckChild4TypeI32,
5171
127k
   OPC_RecordChild5,
5172
127k
   OPC_CheckChild5TypeI32,
5173
127k
   OPC_CheckPatternPredicate, 10,
5174
127k
   OPC_EmitMergeInputChains1_0,
5175
127k
   OPC_EmitConvertToTarget1,
5176
127k
   OPC_EmitConvertToTarget2,
5177
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::anonymous_7959MEMORY_COPY_A32),
5178
127k
                 5, 6, 7, 3, 4, 5, 
5179
127k
  19, 
5180
127k
   OPC_CheckChild3TypeI64,
5181
127k
   OPC_RecordChild4,
5182
127k
   OPC_CheckChild4TypeI64,
5183
127k
   OPC_RecordChild5,
5184
127k
   OPC_CheckChild5TypeI64,
5185
127k
   OPC_CheckPatternPredicate, 10,
5186
127k
   OPC_EmitMergeInputChains1_0,
5187
127k
   OPC_EmitConvertToTarget1,
5188
127k
   OPC_EmitConvertToTarget2,
5189
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::anonymous_7960MEMORY_COPY_A64),
5190
127k
                 5, 6, 7, 3, 4, 5, 
5191
127k
  0, 
5192
127k
 41, TARGET_VAL(WebAssemblyISD::TABLE_GET),
5193
127k
  OPC_RecordMemRef,
5194
127k
  OPC_RecordNode,
5195
127k
  OPC_MoveChild1,
5196
127k
  OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5197
127k
  OPC_RecordChild0,
5198
127k
  OPC_MoveChild0,
5199
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5200
127k
  OPC_MoveParent,
5201
127k
  OPC_MoveParent,
5202
127k
  OPC_RecordChild2,
5203
127k
  OPC_CheckChild2TypeI32,
5204
127k
  OPC_SwitchType , 10, MVT::funcref,
5205
127k
   OPC_CheckPatternPredicate5,
5206
127k
   OPC_EmitMergeInputChains1_0,
5207
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::TABLE_GET_FUNCREF), 0|OPFL_Chain|OPFL_MemRefs,
5208
127k
                 MVT::funcref, 2, 1, 2, 
5209
127k
  10, MVT::externref,
5210
127k
   OPC_CheckPatternPredicate5,
5211
127k
   OPC_EmitMergeInputChains1_0,
5212
127k
   OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::TABLE_GET_EXTERNREF), 0|OPFL_Chain|OPFL_MemRefs,
5213
127k
                 MVT::externref, 2, 1, 2, 
5214
127k
  0,
5215
127k
 69, TARGET_VAL(WebAssemblyISD::TABLE_SET),
5216
127k
  OPC_RecordMemRef,
5217
127k
  OPC_RecordNode,
5218
127k
  OPC_Scope, 42, 
5219
127k
   OPC_MoveChild1,
5220
127k
   OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::Wrapper),
5221
127k
   OPC_RecordChild0,
5222
127k
   OPC_MoveChild0,
5223
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalAddress),
5224
127k
   OPC_MoveParent,
5225
127k
   OPC_MoveParent,
5226
127k
   OPC_RecordChild2,
5227
127k
   OPC_CheckChild2TypeI32,
5228
127k
   OPC_RecordChild3,
5229
127k
   OPC_Scope, 12, 
5230
127k
    OPC_CheckChild3Type, MVT::funcref,
5231
127k
    OPC_CheckPatternPredicate5,
5232
127k
    OPC_EmitMergeInputChains1_0,
5233
127k
    OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::TABLE_SET_FUNCREF), 0|OPFL_Chain|OPFL_MemRefs,
5234
127k
                  3, 1, 2, 3, 
5235
127k
   12, 
5236
127k
    OPC_CheckChild3Type, MVT::externref,
5237
127k
    OPC_CheckPatternPredicate5,
5238
127k
    OPC_EmitMergeInputChains1_0,
5239
127k
    OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::TABLE_SET_EXTERNREF), 0|OPFL_Chain|OPFL_MemRefs,
5240
127k
                  3, 1, 2, 3, 
5241
127k
   0, 
5242
127k
  21, 
5243
127k
   OPC_RecordChild1,
5244
127k
   OPC_MoveChild1,
5245
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::MCSymbol),
5246
127k
   OPC_MoveParent,
5247
127k
   OPC_RecordChild2,
5248
127k
   OPC_CheckChild2TypeI32,
5249
127k
   OPC_RecordChild3,
5250
127k
   OPC_CheckChild3Type, MVT::funcref,
5251
127k
   OPC_CheckPatternPredicate5,
5252
127k
   OPC_EmitMergeInputChains1_0,
5253
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::TABLE_SET_FUNCREF), 0|OPFL_Chain|OPFL_MemRefs,
5254
127k
                 3, 1, 2, 3, 
5255
127k
  0, 
5256
127k
 3|128,9, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN),
5257
127k
  OPC_Scope, 49, 
5258
127k
   OPC_CheckChild0Integer, 74|128,60|128,1, 
5259
127k
   OPC_RecordChild1,
5260
127k
   OPC_Scope, 20, 
5261
127k
    OPC_CheckChild1Type, MVT::f32,
5262
127k
    OPC_SwitchType , 6, MVT::i32,
5263
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_S_F32),
5264
127k
                   MVT::i32, 1, 0, 
5265
127k
    6, MVT::i64,
5266
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_S_F32),
5267
127k
                   MVT::i64, 1, 0, 
5268
127k
    0,
5269
127k
   20, 
5270
127k
    OPC_CheckChild1Type, MVT::f64,
5271
127k
    OPC_SwitchType , 6, MVT::i32,
5272
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_S_F64),
5273
127k
                   MVT::i32, 1, 0, 
5274
127k
    6, MVT::i64,
5275
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_S_F64),
5276
127k
                   MVT::i64, 1, 0, 
5277
127k
    0,
5278
127k
   0, 
5279
127k
  49, 
5280
127k
   OPC_CheckChild0Integer, 76|128,60|128,1, 
5281
127k
   OPC_RecordChild1,
5282
127k
   OPC_Scope, 20, 
5283
127k
    OPC_CheckChild1Type, MVT::f32,
5284
127k
    OPC_SwitchType , 6, MVT::i32,
5285
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_U_F32),
5286
127k
                   MVT::i32, 1, 0, 
5287
127k
    6, MVT::i64,
5288
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_U_F32),
5289
127k
                   MVT::i64, 1, 0, 
5290
127k
    0,
5291
127k
   20, 
5292
127k
    OPC_CheckChild1Type, MVT::f64,
5293
127k
    OPC_SwitchType , 6, MVT::i32,
5294
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_U_F64),
5295
127k
                   MVT::i32, 1, 0, 
5296
127k
    6, MVT::i64,
5297
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_U_F64),
5298
127k
                   MVT::i64, 1, 0, 
5299
127k
    0,
5300
127k
   0, 
5301
127k
  43, 
5302
127k
   OPC_CheckChild0Integer, 80|128,59|128,1, 
5303
127k
   OPC_RecordChild1,
5304
127k
   OPC_Scope, 8, 
5305
127k
    OPC_CheckChild1Type, MVT::v16i8,
5306
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
5307
127k
                  MVT::i32, 1, 0, 
5308
127k
   8, 
5309
127k
    OPC_CheckChild1Type, MVT::v8i16,
5310
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
5311
127k
                  MVT::i32, 1, 0, 
5312
127k
   8, 
5313
127k
    OPC_CheckChild1Type, MVT::v4i32,
5314
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
5315
127k
                  MVT::i32, 1, 0, 
5316
127k
   8, 
5317
127k
    OPC_CheckChild1Type, MVT::v2i64,
5318
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ANYTRUE),
5319
127k
                  MVT::i32, 1, 0, 
5320
127k
   0, 
5321
127k
  47, 
5322
127k
   OPC_CheckChild0Integer, 78|128,59|128,1, 
5323
127k
   OPC_RecordChild1,
5324
127k
   OPC_Scope, 9, 
5325
127k
    OPC_CheckChild1Type, MVT::v16i8,
5326
127k
    OPC_CheckPatternPredicate0,
5327
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I8x16),
5328
127k
                  MVT::i32, 1, 0, 
5329
127k
   9, 
5330
127k
    OPC_CheckChild1Type, MVT::v8i16,
5331
127k
    OPC_CheckPatternPredicate0,
5332
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I16x8),
5333
127k
                  MVT::i32, 1, 0, 
5334
127k
   9, 
5335
127k
    OPC_CheckChild1Type, MVT::v4i32,
5336
127k
    OPC_CheckPatternPredicate0,
5337
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I32x4),
5338
127k
                  MVT::i32, 1, 0, 
5339
127k
   9, 
5340
127k
    OPC_CheckChild1Type, MVT::v2i64,
5341
127k
    OPC_CheckPatternPredicate0,
5342
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ALLTRUE_I64x2),
5343
127k
                  MVT::i32, 1, 0, 
5344
127k
   0, 
5345
127k
  47, 
5346
127k
   OPC_CheckChild0Integer, 84|128,59|128,1, 
5347
127k
   OPC_RecordChild1,
5348
127k
   OPC_Scope, 9, 
5349
127k
    OPC_CheckChild1Type, MVT::v16i8,
5350
127k
    OPC_CheckPatternPredicate0,
5351
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITMASK_I8x16),
5352
127k
                  MVT::i32, 1, 0, 
5353
127k
   9, 
5354
127k
    OPC_CheckChild1Type, MVT::v8i16,
5355
127k
    OPC_CheckPatternPredicate0,
5356
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITMASK_I16x8),
5357
127k
                  MVT::i32, 1, 0, 
5358
127k
   9, 
5359
127k
    OPC_CheckChild1Type, MVT::v4i32,
5360
127k
    OPC_CheckPatternPredicate0,
5361
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITMASK_I32x4),
5362
127k
                  MVT::i32, 1, 0, 
5363
127k
   9, 
5364
127k
    OPC_CheckChild1Type, MVT::v2i64,
5365
127k
    OPC_CheckPatternPredicate0,
5366
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITMASK_I64x2),
5367
127k
                  MVT::i32, 1, 0, 
5368
127k
   0, 
5369
127k
  10, 
5370
127k
   OPC_CheckChild0Integer, 2|128,60|128,1, 
5371
127k
   OPC_CheckPatternPredicate5,
5372
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REF_NULL_FUNCREF),
5373
127k
                 MVT::funcref, 0, 
5374
127k
  12, 
5375
127k
   OPC_CheckChild0Integer, 126|128,59|128,1, 
5376
127k
   OPC_RecordChild1,
5377
127k
   OPC_CheckPatternPredicate5,
5378
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REF_IS_NULL_FUNCREF),
5379
127k
                 MVT::i32, 1, 0, 
5380
127k
  10, 
5381
127k
   OPC_CheckChild0Integer, 0|128,60|128,1, 
5382
127k
   OPC_CheckPatternPredicate5,
5383
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REF_NULL_EXTERNREF),
5384
127k
                 MVT::externref, 0, 
5385
127k
  12, 
5386
127k
   OPC_CheckChild0Integer, 124|128,59|128,1, 
5387
127k
   OPC_RecordChild1,
5388
127k
   OPC_CheckPatternPredicate5,
5389
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REF_IS_NULL_EXTERNREF),
5390
127k
                 MVT::i32, 1, 0, 
5391
127k
  13, 
5392
127k
   OPC_CheckChild0Integer, 40|128,60|128,1, 
5393
127k
   OPC_RecordChild1,
5394
127k
   OPC_RecordChild2,
5395
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SWIZZLE),
5396
127k
                 MVT::v16i8, 2, 0, 1, 
5397
127k
  115, 
5398
127k
   OPC_CheckChild0Integer, 86|128,59|128,1, 
5399
127k
   OPC_RecordChild1,
5400
127k
   OPC_SwitchType , 16, MVT::v16i8,
5401
127k
    OPC_CheckChild1Type, MVT::v16i8,
5402
127k
    OPC_RecordChild2,
5403
127k
    OPC_CheckChild2Type, MVT::v16i8,
5404
127k
    OPC_RecordChild3,
5405
127k
    OPC_CheckChild3Type, MVT::v16i8,
5406
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
5407
127k
                  MVT::v16i8, 3, 0, 1, 2, 
5408
127k
   16, MVT::v8i16,
5409
127k
    OPC_CheckChild1Type, MVT::v8i16,
5410
127k
    OPC_RecordChild2,
5411
127k
    OPC_CheckChild2Type, MVT::v8i16,
5412
127k
    OPC_RecordChild3,
5413
127k
    OPC_CheckChild3Type, MVT::v8i16,
5414
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
5415
127k
                  MVT::v8i16, 3, 0, 1, 2, 
5416
127k
   16, MVT::v4i32,
5417
127k
    OPC_CheckChild1Type, MVT::v4i32,
5418
127k
    OPC_RecordChild2,
5419
127k
    OPC_CheckChild2Type, MVT::v4i32,
5420
127k
    OPC_RecordChild3,
5421
127k
    OPC_CheckChild3Type, MVT::v4i32,
5422
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
5423
127k
                  MVT::v4i32, 3, 0, 1, 2, 
5424
127k
   16, MVT::v2i64,
5425
127k
    OPC_CheckChild1Type, MVT::v2i64,
5426
127k
    OPC_RecordChild2,
5427
127k
    OPC_CheckChild2Type, MVT::v2i64,
5428
127k
    OPC_RecordChild3,
5429
127k
    OPC_CheckChild3Type, MVT::v2i64,
5430
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
5431
127k
                  MVT::v2i64, 3, 0, 1, 2, 
5432
127k
   16, MVT::v4f32,
5433
127k
    OPC_CheckChild1Type, MVT::v4f32,
5434
127k
    OPC_RecordChild2,
5435
127k
    OPC_CheckChild2Type, MVT::v4f32,
5436
127k
    OPC_RecordChild3,
5437
127k
    OPC_CheckChild3Type, MVT::v4f32,
5438
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
5439
127k
                  MVT::v4f32, 3, 0, 1, 2, 
5440
127k
   16, MVT::v2f64,
5441
127k
    OPC_CheckChild1Type, MVT::v2f64,
5442
127k
    OPC_RecordChild2,
5443
127k
    OPC_CheckChild2Type, MVT::v2f64,
5444
127k
    OPC_RecordChild3,
5445
127k
    OPC_CheckChild3Type, MVT::v2f64,
5446
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
5447
127k
                  MVT::v2f64, 3, 0, 1, 2, 
5448
127k
   0,
5449
127k
  37, 
5450
127k
   OPC_CheckChild0Integer, 36|128,60|128,1, 
5451
127k
   OPC_RecordChild1,
5452
127k
   OPC_SwitchType , 13, MVT::v16i8,
5453
127k
    OPC_CheckChild1Type, MVT::v16i8,
5454
127k
    OPC_RecordChild2,
5455
127k
    OPC_CheckChild2Type, MVT::v16i8,
5456
127k
    OPC_CheckPatternPredicate0,
5457
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_SAT_S_I8x16),
5458
127k
                  MVT::v16i8, 2, 0, 1, 
5459
127k
   13, MVT::v8i16,
5460
127k
    OPC_CheckChild1Type, MVT::v8i16,
5461
127k
    OPC_RecordChild2,
5462
127k
    OPC_CheckChild2Type, MVT::v8i16,
5463
127k
    OPC_CheckPatternPredicate0,
5464
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_SAT_S_I16x8),
5465
127k
                  MVT::v8i16, 2, 0, 1, 
5466
127k
   0,
5467
127k
  37, 
5468
127k
   OPC_CheckChild0Integer, 38|128,60|128,1, 
5469
127k
   OPC_RecordChild1,
5470
127k
   OPC_SwitchType , 13, MVT::v16i8,
5471
127k
    OPC_CheckChild1Type, MVT::v16i8,
5472
127k
    OPC_RecordChild2,
5473
127k
    OPC_CheckChild2Type, MVT::v16i8,
5474
127k
    OPC_CheckPatternPredicate0,
5475
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_SAT_U_I8x16),
5476
127k
                  MVT::v16i8, 2, 0, 1, 
5477
127k
   13, MVT::v8i16,
5478
127k
    OPC_CheckChild1Type, MVT::v8i16,
5479
127k
    OPC_RecordChild2,
5480
127k
    OPC_CheckChild2Type, MVT::v8i16,
5481
127k
    OPC_CheckPatternPredicate0,
5482
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_SAT_U_I16x8),
5483
127k
                  MVT::v8i16, 2, 0, 1, 
5484
127k
   0,
5485
127k
  37, 
5486
127k
   OPC_CheckChild0Integer, 82|128,59|128,1, 
5487
127k
   OPC_RecordChild1,
5488
127k
   OPC_SwitchType , 13, MVT::v16i8,
5489
127k
    OPC_CheckChild1Type, MVT::v16i8,
5490
127k
    OPC_RecordChild2,
5491
127k
    OPC_CheckChild2Type, MVT::v16i8,
5492
127k
    OPC_CheckPatternPredicate0,
5493
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AVGR_U_I8x16),
5494
127k
                  MVT::v16i8, 2, 0, 1, 
5495
127k
   13, MVT::v8i16,
5496
127k
    OPC_CheckChild1Type, MVT::v8i16,
5497
127k
    OPC_RecordChild2,
5498
127k
    OPC_CheckChild2Type, MVT::v8i16,
5499
127k
    OPC_CheckPatternPredicate0,
5500
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AVGR_U_I16x8),
5501
127k
                  MVT::v8i16, 2, 0, 1, 
5502
127k
   0,
5503
127k
  14, 
5504
127k
   OPC_CheckChild0Integer, 90|128,59|128,1, 
5505
127k
   OPC_RecordChild1,
5506
127k
   OPC_RecordChild2,
5507
127k
   OPC_CheckPatternPredicate0,
5508
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::DOT),
5509
127k
                 MVT::v4i32, 2, 0, 1, 
5510
127k
  37, 
5511
127k
   OPC_CheckChild0Integer, 114|128,59|128,1, 
5512
127k
   OPC_RecordChild1,
5513
127k
   OPC_SwitchType , 13, MVT::v16i8,
5514
127k
    OPC_CheckChild1Type, MVT::v8i16,
5515
127k
    OPC_RecordChild2,
5516
127k
    OPC_CheckChild2Type, MVT::v8i16,
5517
127k
    OPC_CheckPatternPredicate0,
5518
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NARROW_S_I8x16),
5519
127k
                  MVT::v16i8, 2, 0, 1, 
5520
127k
   13, MVT::v8i16,
5521
127k
    OPC_CheckChild1Type, MVT::v4i32,
5522
127k
    OPC_RecordChild2,
5523
127k
    OPC_CheckChild2Type, MVT::v4i32,
5524
127k
    OPC_CheckPatternPredicate0,
5525
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NARROW_S_I16x8),
5526
127k
                  MVT::v8i16, 2, 0, 1, 
5527
127k
   0,
5528
127k
  37, 
5529
127k
   OPC_CheckChild0Integer, 116|128,59|128,1, 
5530
127k
   OPC_RecordChild1,
5531
127k
   OPC_SwitchType , 13, MVT::v16i8,
5532
127k
    OPC_CheckChild1Type, MVT::v8i16,
5533
127k
    OPC_RecordChild2,
5534
127k
    OPC_CheckChild2Type, MVT::v8i16,
5535
127k
    OPC_CheckPatternPredicate0,
5536
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NARROW_U_I8x16),
5537
127k
                  MVT::v16i8, 2, 0, 1, 
5538
127k
   13, MVT::v8i16,
5539
127k
    OPC_CheckChild1Type, MVT::v4i32,
5540
127k
    OPC_RecordChild2,
5541
127k
    OPC_CheckChild2Type, MVT::v4i32,
5542
127k
    OPC_CheckPatternPredicate0,
5543
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NARROW_U_I16x8),
5544
127k
                  MVT::v8i16, 2, 0, 1, 
5545
127k
   0,
5546
127k
  29, 
5547
127k
   OPC_CheckChild0Integer, 92|128,59|128,1, 
5548
127k
   OPC_RecordChild1,
5549
127k
   OPC_SwitchType , 9, MVT::v8i16,
5550
127k
    OPC_CheckChild1Type, MVT::v16i8,
5551
127k
    OPC_CheckPatternPredicate0,
5552
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::int_wasm_extadd_pairwise_signed_I16x8),
5553
127k
                  MVT::v8i16, 1, 0, 
5554
127k
   9, MVT::v4i32,
5555
127k
    OPC_CheckChild1Type, MVT::v8i16,
5556
127k
    OPC_CheckPatternPredicate0,
5557
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::int_wasm_extadd_pairwise_signed_I32x4),
5558
127k
                  MVT::v4i32, 1, 0, 
5559
127k
   0,
5560
127k
  29, 
5561
127k
   OPC_CheckChild0Integer, 94|128,59|128,1, 
5562
127k
   OPC_RecordChild1,
5563
127k
   OPC_SwitchType , 9, MVT::v8i16,
5564
127k
    OPC_CheckChild1Type, MVT::v16i8,
5565
127k
    OPC_CheckPatternPredicate0,
5566
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::int_wasm_extadd_pairwise_unsigned_I16x8),
5567
127k
                  MVT::v8i16, 1, 0, 
5568
127k
   9, MVT::v4i32,
5569
127k
    OPC_CheckChild1Type, MVT::v8i16,
5570
127k
    OPC_CheckPatternPredicate0,
5571
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::int_wasm_extadd_pairwise_unsigned_I32x4),
5572
127k
                  MVT::v4i32, 1, 0, 
5573
127k
   0,
5574
127k
  14, 
5575
127k
   OPC_CheckChild0Integer, 122|128,59|128,1, 
5576
127k
   OPC_RecordChild1,
5577
127k
   OPC_RecordChild2,
5578
127k
   OPC_CheckPatternPredicate0,
5579
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::Q15MULR_SAT_S_I16x8),
5580
127k
                 MVT::v8i16, 2, 0, 1, 
5581
127k
  14, 
5582
127k
   OPC_CheckChild0Integer, 22|128,60|128,1, 
5583
127k
   OPC_RecordChild1,
5584
127k
   OPC_RecordChild2,
5585
127k
   OPC_CheckPatternPredicate6,
5586
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::RELAXED_SWIZZLE),
5587
127k
                 MVT::v16i8, 2, 0, 1, 
5588
127k
  12, 
5589
127k
   OPC_CheckChild0Integer, 24|128,60|128,1, 
5590
127k
   OPC_RecordChild1,
5591
127k
   OPC_CheckPatternPredicate6,
5592
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::int_wasm_relaxed_trunc_signed_I32x4),
5593
127k
                 MVT::v4i32, 1, 0, 
5594
127k
  12, 
5595
127k
   OPC_CheckChild0Integer, 28|128,60|128,1, 
5596
127k
   OPC_RecordChild1,
5597
127k
   OPC_CheckPatternPredicate6,
5598
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::int_wasm_relaxed_trunc_unsigned_I32x4),
5599
127k
                 MVT::v4i32, 1, 0, 
5600
127k
  12, 
5601
127k
   OPC_CheckChild0Integer, 26|128,60|128,1, 
5602
127k
   OPC_RecordChild1,
5603
127k
   OPC_CheckPatternPredicate6,
5604
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::int_wasm_relaxed_trunc_signed_zero_I32x4),
5605
127k
                 MVT::v4i32, 1, 0, 
5606
127k
  12, 
5607
127k
   OPC_CheckChild0Integer, 30|128,60|128,1, 
5608
127k
   OPC_RecordChild1,
5609
127k
   OPC_CheckPatternPredicate6,
5610
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::int_wasm_relaxed_trunc_unsigned_zero_I32x4),
5611
127k
                 MVT::v4i32, 1, 0, 
5612
127k
  83, 
5613
127k
   OPC_CheckChild0Integer, 10|128,60|128,1, 
5614
127k
   OPC_RecordChild1,
5615
127k
   OPC_SwitchType , 17, MVT::v16i8,
5616
127k
    OPC_CheckChild1Type, MVT::v16i8,
5617
127k
    OPC_RecordChild2,
5618
127k
    OPC_CheckChild2Type, MVT::v16i8,
5619
127k
    OPC_RecordChild3,
5620
127k
    OPC_CheckChild3Type, MVT::v16i8,
5621
127k
    OPC_CheckPatternPredicate6,
5622
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LANESELECT_I8x16),
5623
127k
                  MVT::v16i8, 3, 0, 1, 2, 
5624
127k
   17, MVT::v8i16,
5625
127k
    OPC_CheckChild1Type, MVT::v8i16,
5626
127k
    OPC_RecordChild2,
5627
127k
    OPC_CheckChild2Type, MVT::v8i16,
5628
127k
    OPC_RecordChild3,
5629
127k
    OPC_CheckChild3Type, MVT::v8i16,
5630
127k
    OPC_CheckPatternPredicate6,
5631
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LANESELECT_I16x8),
5632
127k
                  MVT::v8i16, 3, 0, 1, 2, 
5633
127k
   17, MVT::v4i32,
5634
127k
    OPC_CheckChild1Type, MVT::v4i32,
5635
127k
    OPC_RecordChild2,
5636
127k
    OPC_CheckChild2Type, MVT::v4i32,
5637
127k
    OPC_RecordChild3,
5638
127k
    OPC_CheckChild3Type, MVT::v4i32,
5639
127k
    OPC_CheckPatternPredicate6,
5640
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LANESELECT_I32x4),
5641
127k
                  MVT::v4i32, 3, 0, 1, 2, 
5642
127k
   17, MVT::v2i64,
5643
127k
    OPC_CheckChild1Type, MVT::v2i64,
5644
127k
    OPC_RecordChild2,
5645
127k
    OPC_CheckChild2Type, MVT::v2i64,
5646
127k
    OPC_RecordChild3,
5647
127k
    OPC_CheckChild3Type, MVT::v2i64,
5648
127k
    OPC_CheckPatternPredicate6,
5649
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::LANESELECT_I64x2),
5650
127k
                  MVT::v2i64, 3, 0, 1, 2, 
5651
127k
   0,
5652
127k
  14, 
5653
127k
   OPC_CheckChild0Integer, 20|128,60|128,1, 
5654
127k
   OPC_RecordChild1,
5655
127k
   OPC_RecordChild2,
5656
127k
   OPC_CheckPatternPredicate6,
5657
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::RELAXED_Q15MULR_S_I16x8),
5658
127k
                 MVT::v8i16, 2, 0, 1, 
5659
127k
  14, 
5660
127k
   OPC_CheckChild0Integer, 8|128,60|128,1, 
5661
127k
   OPC_RecordChild1,
5662
127k
   OPC_RecordChild2,
5663
127k
   OPC_CheckPatternPredicate6,
5664
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::RELAXED_DOT),
5665
127k
                 MVT::v8i16, 2, 0, 1, 
5666
127k
  16, 
5667
127k
   OPC_CheckChild0Integer, 6|128,60|128,1, 
5668
127k
   OPC_RecordChild1,
5669
127k
   OPC_RecordChild2,
5670
127k
   OPC_RecordChild3,
5671
127k
   OPC_CheckPatternPredicate6,
5672
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::RELAXED_DOT_ADD),
5673
127k
                 MVT::v4i32, 3, 0, 1, 2, 
5674
127k
  35, 
5675
127k
   OPC_CheckChild0Integer, 120|128,59|128,1, 
5676
127k
   OPC_RecordChild1,
5677
127k
   OPC_SwitchType , 12, MVT::v4f32,
5678
127k
    OPC_CheckChild1Type, MVT::v4f32,
5679
127k
    OPC_RecordChild2,
5680
127k
    OPC_CheckChild2Type, MVT::v4f32,
5681
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F32x4),
5682
127k
                  MVT::v4f32, 2, 0, 1, 
5683
127k
   12, MVT::v2f64,
5684
127k
    OPC_CheckChild1Type, MVT::v2f64,
5685
127k
    OPC_RecordChild2,
5686
127k
    OPC_CheckChild2Type, MVT::v2f64,
5687
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F64x2),
5688
127k
                  MVT::v2f64, 2, 0, 1, 
5689
127k
   0,
5690
127k
  35, 
5691
127k
   OPC_CheckChild0Integer, 118|128,59|128,1, 
5692
127k
   OPC_RecordChild1,
5693
127k
   OPC_SwitchType , 12, MVT::v4f32,
5694
127k
    OPC_CheckChild1Type, MVT::v4f32,
5695
127k
    OPC_RecordChild2,
5696
127k
    OPC_CheckChild2Type, MVT::v4f32,
5697
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F32x4),
5698
127k
                  MVT::v4f32, 2, 0, 1, 
5699
127k
   12, MVT::v2f64,
5700
127k
    OPC_CheckChild1Type, MVT::v2f64,
5701
127k
    OPC_RecordChild2,
5702
127k
    OPC_CheckChild2Type, MVT::v2f64,
5703
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F64x2),
5704
127k
                  MVT::v2f64, 2, 0, 1, 
5705
127k
   0,
5706
127k
  45, 
5707
127k
   OPC_CheckChild0Integer, 12|128,60|128,1, 
5708
127k
   OPC_RecordChild1,
5709
127k
   OPC_SwitchType , 17, MVT::v4f32,
5710
127k
    OPC_CheckChild1Type, MVT::v4f32,
5711
127k
    OPC_RecordChild2,
5712
127k
    OPC_CheckChild2Type, MVT::v4f32,
5713
127k
    OPC_RecordChild3,
5714
127k
    OPC_CheckChild3Type, MVT::v4f32,
5715
127k
    OPC_CheckPatternPredicate6,
5716
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MADD_F32x4),
5717
127k
                  MVT::v4f32, 3, 0, 1, 2, 
5718
127k
   17, MVT::v2f64,
5719
127k
    OPC_CheckChild1Type, MVT::v2f64,
5720
127k
    OPC_RecordChild2,
5721
127k
    OPC_CheckChild2Type, MVT::v2f64,
5722
127k
    OPC_RecordChild3,
5723
127k
    OPC_CheckChild3Type, MVT::v2f64,
5724
127k
    OPC_CheckPatternPredicate6,
5725
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MADD_F64x2),
5726
127k
                  MVT::v2f64, 3, 0, 1, 2, 
5727
127k
   0,
5728
127k
  45, 
5729
127k
   OPC_CheckChild0Integer, 18|128,60|128,1, 
5730
127k
   OPC_RecordChild1,
5731
127k
   OPC_SwitchType , 17, MVT::v4f32,
5732
127k
    OPC_CheckChild1Type, MVT::v4f32,
5733
127k
    OPC_RecordChild2,
5734
127k
    OPC_CheckChild2Type, MVT::v4f32,
5735
127k
    OPC_RecordChild3,
5736
127k
    OPC_CheckChild3Type, MVT::v4f32,
5737
127k
    OPC_CheckPatternPredicate6,
5738
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NMADD_F32x4),
5739
127k
                  MVT::v4f32, 3, 0, 1, 2, 
5740
127k
   17, MVT::v2f64,
5741
127k
    OPC_CheckChild1Type, MVT::v2f64,
5742
127k
    OPC_RecordChild2,
5743
127k
    OPC_CheckChild2Type, MVT::v2f64,
5744
127k
    OPC_RecordChild3,
5745
127k
    OPC_CheckChild3Type, MVT::v2f64,
5746
127k
    OPC_CheckPatternPredicate6,
5747
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NMADD_F64x2),
5748
127k
                  MVT::v2f64, 3, 0, 1, 2, 
5749
127k
   0,
5750
127k
  37, 
5751
127k
   OPC_CheckChild0Integer, 16|128,60|128,1, 
5752
127k
   OPC_RecordChild1,
5753
127k
   OPC_SwitchType , 13, MVT::v4f32,
5754
127k
    OPC_CheckChild1Type, MVT::v4f32,
5755
127k
    OPC_RecordChild2,
5756
127k
    OPC_CheckChild2Type, MVT::v4f32,
5757
127k
    OPC_CheckPatternPredicate6,
5758
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SIMD_RELAXED_FMIN_F32x4),
5759
127k
                  MVT::v4f32, 2, 0, 1, 
5760
127k
   13, MVT::v2f64,
5761
127k
    OPC_CheckChild1Type, MVT::v2f64,
5762
127k
    OPC_RecordChild2,
5763
127k
    OPC_CheckChild2Type, MVT::v2f64,
5764
127k
    OPC_CheckPatternPredicate6,
5765
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SIMD_RELAXED_FMIN_F64x2),
5766
127k
                  MVT::v2f64, 2, 0, 1, 
5767
127k
   0,
5768
127k
  37, 
5769
127k
   OPC_CheckChild0Integer, 14|128,60|128,1, 
5770
127k
   OPC_RecordChild1,
5771
127k
   OPC_SwitchType , 13, MVT::v4f32,
5772
127k
    OPC_CheckChild1Type, MVT::v4f32,
5773
127k
    OPC_RecordChild2,
5774
127k
    OPC_CheckChild2Type, MVT::v4f32,
5775
127k
    OPC_CheckPatternPredicate6,
5776
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SIMD_RELAXED_FMAX_F32x4),
5777
127k
                  MVT::v4f32, 2, 0, 1, 
5778
127k
   13, MVT::v2f64,
5779
127k
    OPC_CheckChild1Type, MVT::v2f64,
5780
127k
    OPC_RecordChild2,
5781
127k
    OPC_CheckChild2Type, MVT::v2f64,
5782
127k
    OPC_CheckPatternPredicate6,
5783
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SIMD_RELAXED_FMAX_F64x2),
5784
127k
                  MVT::v2f64, 2, 0, 1, 
5785
127k
   0,
5786
127k
  16, 
5787
127k
   OPC_CheckChild0Integer, 4|128,60|128,1, 
5788
127k
   OPC_RecordChild1,
5789
127k
   OPC_RecordChild2,
5790
127k
   OPC_RecordChild3,
5791
127k
   OPC_CheckPatternPredicate6,
5792
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::RELAXED_DOT_BFLOAT),
5793
127k
                 MVT::v4f32, 3, 0, 1, 2, 
5794
127k
  0, 
5795
127k
 3|128,1, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT),
5796
127k
  OPC_RecordChild0,
5797
127k
  OPC_Scope, 20, 
5798
127k
   OPC_CheckChild0Type, MVT::v16i8,
5799
127k
   OPC_RecordChild1,
5800
127k
   OPC_MoveChild1,
5801
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
5802
127k
   OPC_CheckPredicate, 15,
5803
127k
   OPC_CheckTypeI32,
5804
127k
   OPC_MoveParent,
5805
127k
   OPC_CheckTypeI32,
5806
127k
   OPC_EmitConvertToTarget1,
5807
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTRACT_LANE_I8x16_u),
5808
127k
                 MVT::i32, 2, 0, 2, 
5809
127k
  20, 
5810
127k
   OPC_CheckChild0Type, MVT::v8i16,
5811
127k
   OPC_RecordChild1,
5812
127k
   OPC_MoveChild1,
5813
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
5814
127k
   OPC_CheckPredicate, 17,
5815
127k
   OPC_CheckTypeI32,
5816
127k
   OPC_MoveParent,
5817
127k
   OPC_CheckTypeI32,
5818
127k
   OPC_EmitConvertToTarget1,
5819
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTRACT_LANE_I16x8_u),
5820
127k
                 MVT::i32, 2, 0, 2, 
5821
127k
  20, 
5822
127k
   OPC_CheckChild0Type, MVT::v4i32,
5823
127k
   OPC_RecordChild1,
5824
127k
   OPC_MoveChild1,
5825
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
5826
127k
   OPC_CheckPredicate, 16,
5827
127k
   OPC_CheckTypeI32,
5828
127k
   OPC_MoveParent,
5829
127k
   OPC_CheckTypeI32,
5830
127k
   OPC_EmitConvertToTarget1,
5831
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTRACT_LANE_I32x4),
5832
127k
                 MVT::i32, 2, 0, 2, 
5833
127k
  20, 
5834
127k
   OPC_CheckChild0Type, MVT::v2i64,
5835
127k
   OPC_RecordChild1,
5836
127k
   OPC_MoveChild1,
5837
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
5838
127k
   OPC_CheckPredicate, 18,
5839
127k
   OPC_CheckTypeI32,
5840
127k
   OPC_MoveParent,
5841
127k
   OPC_CheckTypeI64,
5842
127k
   OPC_EmitConvertToTarget1,
5843
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTRACT_LANE_I64x2),
5844
127k
                 MVT::i64, 2, 0, 2, 
5845
127k
  21, 
5846
127k
   OPC_CheckChild0Type, MVT::v4f32,
5847
127k
   OPC_RecordChild1,
5848
127k
   OPC_MoveChild1,
5849
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
5850
127k
   OPC_CheckPredicate, 16,
5851
127k
   OPC_CheckTypeI32,
5852
127k
   OPC_MoveParent,
5853
127k
   OPC_CheckType, MVT::f32,
5854
127k
   OPC_EmitConvertToTarget1,
5855
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTRACT_LANE_F32x4),
5856
127k
                 MVT::f32, 2, 0, 2, 
5857
127k
  21, 
5858
127k
   OPC_CheckChild0Type, MVT::v2f64,
5859
127k
   OPC_RecordChild1,
5860
127k
   OPC_MoveChild1,
5861
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
5862
127k
   OPC_CheckPredicate, 18,
5863
127k
   OPC_CheckTypeI32,
5864
127k
   OPC_MoveParent,
5865
127k
   OPC_CheckType, MVT::f64,
5866
127k
   OPC_EmitConvertToTarget1,
5867
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTRACT_LANE_F64x2),
5868
127k
                 MVT::f64, 2, 0, 2, 
5869
127k
  0, 
5870
127k
 104, TARGET_VAL(WebAssemblyISD::ARGUMENT),
5871
127k
  OPC_RecordChild0,
5872
127k
  OPC_MoveChild0,
5873
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
5874
127k
  OPC_MoveParent,
5875
127k
  OPC_SwitchType , 6, MVT::i32,
5876
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_i32),
5877
127k
                 MVT::i32, 1, 0, 
5878
127k
  6, MVT::i64,
5879
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_i64),
5880
127k
                 MVT::i64, 1, 0, 
5881
127k
  6, MVT::funcref,
5882
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_funcref),
5883
127k
                 MVT::funcref, 1, 0, 
5884
127k
  6, MVT::externref,
5885
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_externref),
5886
127k
                 MVT::externref, 1, 0, 
5887
127k
  6, MVT::f32,
5888
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_f32),
5889
127k
                 MVT::f32, 1, 0, 
5890
127k
  6, MVT::f64,
5891
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_f64),
5892
127k
                 MVT::f64, 1, 0, 
5893
127k
  6, MVT::v16i8,
5894
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_v16i8),
5895
127k
                 MVT::v16i8, 1, 0, 
5896
127k
  6, MVT::v8i16,
5897
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_v8i16),
5898
127k
                 MVT::v8i16, 1, 0, 
5899
127k
  6, MVT::v4i32,
5900
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_v4i32),
5901
127k
                 MVT::v4i32, 1, 0, 
5902
127k
  6, MVT::v2i64,
5903
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_v2i64),
5904
127k
                 MVT::v2i64, 1, 0, 
5905
127k
  6, MVT::v4f32,
5906
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_v4f32),
5907
127k
                 MVT::v4f32, 1, 0, 
5908
127k
  6, MVT::v2f64,
5909
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ARGUMENT_v2f64),
5910
127k
                 MVT::v2f64, 1, 0, 
5911
127k
  0,
5912
127k
 125, TARGET_VAL(WebAssemblyISD::LOCAL_GET),
5913
127k
  OPC_RecordNode,
5914
127k
  OPC_RecordChild1,
5915
127k
  OPC_MoveChild1,
5916
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
5917
127k
  OPC_MoveParent,
5918
127k
  OPC_SwitchType , 7, MVT::i32,
5919
127k
   OPC_EmitMergeInputChains1_0,
5920
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_I32),
5921
127k
                 MVT::i32, 1, 1, 
5922
127k
  7, MVT::i64,
5923
127k
   OPC_EmitMergeInputChains1_0,
5924
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_I64),
5925
127k
                 MVT::i64, 1, 1, 
5926
127k
  8, MVT::funcref,
5927
127k
   OPC_CheckPatternPredicate5,
5928
127k
   OPC_EmitMergeInputChains1_0,
5929
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_FUNCREF),
5930
127k
                 MVT::funcref, 1, 1, 
5931
127k
  8, MVT::externref,
5932
127k
   OPC_CheckPatternPredicate5,
5933
127k
   OPC_EmitMergeInputChains1_0,
5934
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_EXTERNREF),
5935
127k
                 MVT::externref, 1, 1, 
5936
127k
  7, MVT::f32,
5937
127k
   OPC_EmitMergeInputChains1_0,
5938
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_F32),
5939
127k
                 MVT::f32, 1, 1, 
5940
127k
  7, MVT::f64,
5941
127k
   OPC_EmitMergeInputChains1_0,
5942
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_F64),
5943
127k
                 MVT::f64, 1, 1, 
5944
127k
  8, MVT::v2i64,
5945
127k
   OPC_CheckPatternPredicate0,
5946
127k
   OPC_EmitMergeInputChains1_0,
5947
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_V128),
5948
127k
                 MVT::v2i64, 1, 1, 
5949
127k
  8, MVT::v4i32,
5950
127k
   OPC_CheckPatternPredicate0,
5951
127k
   OPC_EmitMergeInputChains1_0,
5952
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_V128),
5953
127k
                 MVT::v4i32, 1, 1, 
5954
127k
  8, MVT::v16i8,
5955
127k
   OPC_CheckPatternPredicate0,
5956
127k
   OPC_EmitMergeInputChains1_0,
5957
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_V128),
5958
127k
                 MVT::v16i8, 1, 1, 
5959
127k
  8, MVT::v8i16,
5960
127k
   OPC_CheckPatternPredicate0,
5961
127k
   OPC_EmitMergeInputChains1_0,
5962
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_V128),
5963
127k
                 MVT::v8i16, 1, 1, 
5964
127k
  8, MVT::v4f32,
5965
127k
   OPC_CheckPatternPredicate0,
5966
127k
   OPC_EmitMergeInputChains1_0,
5967
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_V128),
5968
127k
                 MVT::v4f32, 1, 1, 
5969
127k
  8, MVT::v2f64,
5970
127k
   OPC_CheckPatternPredicate0,
5971
127k
   OPC_EmitMergeInputChains1_0,
5972
127k
   OPC_MorphNodeTo1Chain, TARGET_VAL(WebAssembly::LOCAL_GET_V128),
5973
127k
                 MVT::v2f64, 1, 1, 
5974
127k
  0,
5975
127k
 8|128,1, TARGET_VAL(WebAssemblyISD::LOCAL_SET),
5976
127k
  OPC_RecordNode,
5977
127k
  OPC_RecordChild1,
5978
127k
  OPC_MoveChild1,
5979
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
5980
127k
  OPC_MoveParent,
5981
127k
  OPC_RecordChild2,
5982
127k
  OPC_Scope, 8, 
5983
127k
   OPC_CheckChild2TypeI32,
5984
127k
   OPC_EmitMergeInputChains1_0,
5985
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_I32),
5986
127k
                 2, 1, 2, 
5987
127k
  8, 
5988
127k
   OPC_CheckChild2TypeI64,
5989
127k
   OPC_EmitMergeInputChains1_0,
5990
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_I64),
5991
127k
                 2, 1, 2, 
5992
127k
  9, 
5993
127k
   OPC_CheckChild2Type, MVT::f32,
5994
127k
   OPC_EmitMergeInputChains1_0,
5995
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_F32),
5996
127k
                 2, 1, 2, 
5997
127k
  9, 
5998
127k
   OPC_CheckChild2Type, MVT::f64,
5999
127k
   OPC_EmitMergeInputChains1_0,
6000
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_F64),
6001
127k
                 2, 1, 2, 
6002
127k
  10, 
6003
127k
   OPC_CheckChild2Type, MVT::v4f32,
6004
127k
   OPC_CheckPatternPredicate0,
6005
127k
   OPC_EmitMergeInputChains1_0,
6006
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_V128),
6007
127k
                 2, 1, 2, 
6008
127k
  10, 
6009
127k
   OPC_CheckChild2Type, MVT::v2f64,
6010
127k
   OPC_CheckPatternPredicate0,
6011
127k
   OPC_EmitMergeInputChains1_0,
6012
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_V128),
6013
127k
                 2, 1, 2, 
6014
127k
  10, 
6015
127k
   OPC_CheckChild2Type, MVT::v2i64,
6016
127k
   OPC_CheckPatternPredicate0,
6017
127k
   OPC_EmitMergeInputChains1_0,
6018
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_V128),
6019
127k
                 2, 1, 2, 
6020
127k
  10, 
6021
127k
   OPC_CheckChild2Type, MVT::v4i32,
6022
127k
   OPC_CheckPatternPredicate0,
6023
127k
   OPC_EmitMergeInputChains1_0,
6024
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_V128),
6025
127k
                 2, 1, 2, 
6026
127k
  10, 
6027
127k
   OPC_CheckChild2Type, MVT::v16i8,
6028
127k
   OPC_CheckPatternPredicate0,
6029
127k
   OPC_EmitMergeInputChains1_0,
6030
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_V128),
6031
127k
                 2, 1, 2, 
6032
127k
  10, 
6033
127k
   OPC_CheckChild2Type, MVT::v8i16,
6034
127k
   OPC_CheckPatternPredicate0,
6035
127k
   OPC_EmitMergeInputChains1_0,
6036
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_V128),
6037
127k
                 2, 1, 2, 
6038
127k
  10, 
6039
127k
   OPC_CheckChild2Type, MVT::funcref,
6040
127k
   OPC_CheckPatternPredicate5,
6041
127k
   OPC_EmitMergeInputChains1_0,
6042
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_FUNCREF),
6043
127k
                 2, 1, 2, 
6044
127k
  10, 
6045
127k
   OPC_CheckChild2Type, MVT::externref,
6046
127k
   OPC_CheckPatternPredicate5,
6047
127k
   OPC_EmitMergeInputChains1_0,
6048
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::LOCAL_SET_EXTERNREF),
6049
127k
                 2, 1, 2, 
6050
127k
  0, 
6051
127k
 0|128,1, TARGET_VAL(WebAssemblyISD::Wrapper),
6052
127k
  OPC_RecordChild0,
6053
127k
  OPC_MoveChild0,
6054
127k
  OPC_SwitchOpcode , 47, TARGET_VAL(ISD::TargetGlobalAddress),
6055
127k
   OPC_MoveParent,
6056
127k
   OPC_SwitchType , 20, MVT::i32,
6057
127k
    OPC_Scope, 8, 
6058
127k
     OPC_CheckPatternPredicate, 14,
6059
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I32),
6060
127k
                   MVT::i32, 1, 0, 
6061
127k
    8, 
6062
127k
     OPC_CheckPatternPredicate, 11,
6063
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GLOBAL_GET_I32),
6064
127k
                   MVT::i32, 1, 0, 
6065
127k
    0, 
6066
127k
   20, MVT::i64,
6067
127k
    OPC_Scope, 8, 
6068
127k
     OPC_CheckPatternPredicate, 15,
6069
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I64),
6070
127k
                   MVT::i64, 1, 0, 
6071
127k
    8, 
6072
127k
     OPC_CheckPatternPredicate, 12,
6073
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GLOBAL_GET_I64),
6074
127k
                   MVT::i64, 1, 0, 
6075
127k
    0, 
6076
127k
   0,
6077
127k
  21, TARGET_VAL(ISD::TargetGlobalTLSAddress),
6078
127k
   OPC_MoveParent,
6079
127k
   OPC_SwitchType , 7, MVT::i32,
6080
127k
    OPC_CheckPatternPredicate3,
6081
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GLOBAL_GET_I32),
6082
127k
                  MVT::i32, 1, 0, 
6083
127k
   7, MVT::i64,
6084
127k
    OPC_CheckPatternPredicate4,
6085
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GLOBAL_GET_I64),
6086
127k
                  MVT::i64, 1, 0, 
6087
127k
   0,
6088
127k
  47, TARGET_VAL(ISD::TargetExternalSymbol),
6089
127k
   OPC_MoveParent,
6090
127k
   OPC_SwitchType , 20, MVT::i32,
6091
127k
    OPC_Scope, 8, 
6092
127k
     OPC_CheckPatternPredicate, 11,
6093
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GLOBAL_GET_I32),
6094
127k
                   MVT::i32, 1, 0, 
6095
127k
    8, 
6096
127k
     OPC_CheckPatternPredicate, 14,
6097
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I32),
6098
127k
                   MVT::i32, 1, 0, 
6099
127k
    0, 
6100
127k
   20, MVT::i64,
6101
127k
    OPC_Scope, 8, 
6102
127k
     OPC_CheckPatternPredicate, 12,
6103
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::GLOBAL_GET_I64),
6104
127k
                   MVT::i64, 1, 0, 
6105
127k
    8, 
6106
127k
     OPC_CheckPatternPredicate, 15,
6107
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I64),
6108
127k
                   MVT::i64, 1, 0, 
6109
127k
    0, 
6110
127k
   0,
6111
127k
  0,
6112
127k
 80, TARGET_VAL(WebAssemblyISD::WrapperREL),
6113
127k
  OPC_RecordChild0,
6114
127k
  OPC_MoveChild0,
6115
127k
  OPC_SwitchOpcode , 23, TARGET_VAL(ISD::TargetGlobalAddress),
6116
127k
   OPC_MoveParent,
6117
127k
   OPC_SwitchType , 8, MVT::i32,
6118
127k
    OPC_CheckPatternPredicate, 11,
6119
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I32),
6120
127k
                  MVT::i32, 1, 0, 
6121
127k
   8, MVT::i64,
6122
127k
    OPC_CheckPatternPredicate, 12,
6123
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I64),
6124
127k
                  MVT::i64, 1, 0, 
6125
127k
   0,
6126
127k
  21, TARGET_VAL(ISD::TargetGlobalTLSAddress),
6127
127k
   OPC_MoveParent,
6128
127k
   OPC_SwitchType , 7, MVT::i32,
6129
127k
    OPC_CheckPatternPredicate3,
6130
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I32),
6131
127k
                  MVT::i32, 1, 0, 
6132
127k
   7, MVT::i64,
6133
127k
    OPC_CheckPatternPredicate4,
6134
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I64),
6135
127k
                  MVT::i64, 1, 0, 
6136
127k
   0,
6137
127k
  23, TARGET_VAL(ISD::TargetExternalSymbol),
6138
127k
   OPC_MoveParent,
6139
127k
   OPC_SwitchType , 8, MVT::i32,
6140
127k
    OPC_CheckPatternPredicate, 11,
6141
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I32),
6142
127k
                  MVT::i32, 1, 0, 
6143
127k
   8, MVT::i64,
6144
127k
    OPC_CheckPatternPredicate, 12,
6145
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I64),
6146
127k
                  MVT::i64, 1, 0, 
6147
127k
   0,
6148
127k
  0,
6149
127k
 47, TARGET_VAL(WebAssemblyISD::MEMORY_FILL),
6150
127k
  OPC_RecordNode,
6151
127k
  OPC_RecordChild1,
6152
127k
  OPC_MoveChild1,
6153
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
6154
127k
  OPC_CheckTypeI32,
6155
127k
  OPC_MoveParent,
6156
127k
  OPC_RecordChild2,
6157
127k
  OPC_Scope, 17, 
6158
127k
   OPC_CheckChild2TypeI32,
6159
127k
   OPC_RecordChild3,
6160
127k
   OPC_CheckChild3TypeI32,
6161
127k
   OPC_RecordChild4,
6162
127k
   OPC_CheckChild4TypeI32,
6163
127k
   OPC_CheckPatternPredicate, 10,
6164
127k
   OPC_EmitMergeInputChains1_0,
6165
127k
   OPC_EmitConvertToTarget1,
6166
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::anonymous_7959MEMORY_FILL_A32),
6167
127k
                 4, 5, 2, 3, 4, 
6168
127k
  17, 
6169
127k
   OPC_CheckChild2TypeI64,
6170
127k
   OPC_RecordChild3,
6171
127k
   OPC_CheckChild3TypeI32,
6172
127k
   OPC_RecordChild4,
6173
127k
   OPC_CheckChild4TypeI64,
6174
127k
   OPC_CheckPatternPredicate, 10,
6175
127k
   OPC_EmitMergeInputChains1_0,
6176
127k
   OPC_EmitConvertToTarget1,
6177
127k
   OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::anonymous_7960MEMORY_FILL_A64),
6178
127k
                 4, 5, 2, 3, 4, 
6179
127k
  0, 
6180
127k
 21, TARGET_VAL(ISD::Constant),
6181
127k
  OPC_RecordNode,
6182
127k
  OPC_SwitchType , 7, MVT::i32,
6183
127k
   OPC_EmitConvertToTarget0,
6184
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I32),
6185
127k
                 MVT::i32, 1, 1, 
6186
127k
  7, MVT::i64,
6187
127k
   OPC_EmitConvertToTarget0,
6188
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_I64),
6189
127k
                 MVT::i64, 1, 1, 
6190
127k
  0,
6191
127k
 13, TARGET_VAL(ISD::BR),
6192
127k
  OPC_RecordNode,
6193
127k
  OPC_RecordChild1,
6194
127k
  OPC_MoveChild1,
6195
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
6196
127k
  OPC_MoveParent,
6197
127k
  OPC_EmitMergeInputChains1_0,
6198
127k
  OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::BR),
6199
127k
                1, 1, 
6200
127k
 22, TARGET_VAL(WebAssemblyISD::BR_TABLE),
6201
127k
  OPC_RecordNode,
6202
127k
  OPC_RecordChild1,
6203
127k
  OPC_Scope, 8, 
6204
127k
   OPC_CheckChild1TypeI32,
6205
127k
   OPC_EmitMergeInputChains1_0,
6206
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::BR_TABLE_I32), 0|OPFL_Chain|OPFL_Variadic1,
6207
127k
                 1, 1, 
6208
127k
  8, 
6209
127k
   OPC_CheckChild1TypeI64,
6210
127k
   OPC_EmitMergeInputChains1_0,
6211
127k
   OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::BR_TABLE_I64), 0|OPFL_Chain|OPFL_Variadic1,
6212
127k
                 1, 1, 
6213
127k
  0, 
6214
127k
 7, TARGET_VAL(WebAssemblyISD::RETURN),
6215
127k
  OPC_RecordNode,
6216
127k
  OPC_EmitMergeInputChains1_0,
6217
127k
  OPC_MorphNodeTo0, TARGET_VAL(WebAssembly::RETURN), 0|OPFL_Chain|OPFL_Variadic0,
6218
127k
                0, 
6219
127k
 6, TARGET_VAL(ISD::TRAP),
6220
127k
  OPC_RecordNode,
6221
127k
  OPC_EmitMergeInputChains1_0,
6222
127k
  OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::UNREACHABLE),
6223
127k
                0, 
6224
127k
 6, TARGET_VAL(ISD::DEBUGTRAP),
6225
127k
  OPC_RecordNode,
6226
127k
  OPC_EmitMergeInputChains1_0,
6227
127k
  OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::DEBUG_UNREACHABLE),
6228
127k
                0, 
6229
127k
 8, TARGET_VAL(ISD::CLEANUPRET),
6230
127k
  OPC_RecordNode,
6231
127k
  OPC_CheckPatternPredicate, 13,
6232
127k
  OPC_EmitMergeInputChains1_0,
6233
127k
  OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::CLEANUPRET),
6234
127k
                0, 
6235
127k
 21, TARGET_VAL(ISD::CATCHRET),
6236
127k
  OPC_RecordNode,
6237
127k
  OPC_RecordChild1,
6238
127k
  OPC_MoveChild1,
6239
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
6240
127k
  OPC_MoveSibling2,
6241
127k
  OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
6242
127k
  OPC_RecordNode,
6243
127k
  OPC_MoveParent,
6244
127k
  OPC_CheckPatternPredicate, 13,
6245
127k
  OPC_EmitMergeInputChains1_0,
6246
127k
  OPC_MorphNodeTo0Chain, TARGET_VAL(WebAssembly::CATCHRET),
6247
127k
                2, 1, 2, 
6248
127k
 62, TARGET_VAL(ISD::ADD),
6249
127k
  OPC_RecordChild0,
6250
127k
  OPC_RecordChild1,
6251
127k
  OPC_SwitchType , 7, MVT::i32,
6252
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_I32),
6253
127k
                 MVT::i32, 2, 0, 1, 
6254
127k
  7, MVT::i64,
6255
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_I64),
6256
127k
                 MVT::i64, 2, 0, 1, 
6257
127k
  8, MVT::v16i8,
6258
127k
   OPC_CheckPatternPredicate0,
6259
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_I8x16),
6260
127k
                 MVT::v16i8, 2, 0, 1, 
6261
127k
  8, MVT::v8i16,
6262
127k
   OPC_CheckPatternPredicate0,
6263
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_I16x8),
6264
127k
                 MVT::v8i16, 2, 0, 1, 
6265
127k
  8, MVT::v4i32,
6266
127k
   OPC_CheckPatternPredicate0,
6267
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_I32x4),
6268
127k
                 MVT::v4i32, 2, 0, 1, 
6269
127k
  8, MVT::v2i64,
6270
127k
   OPC_CheckPatternPredicate0,
6271
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_I64x2),
6272
127k
                 MVT::v2i64, 2, 0, 1, 
6273
127k
  0,
6274
127k
 113, TARGET_VAL(ISD::SUB),
6275
127k
  OPC_Scope, 22, 
6276
127k
   OPC_RecordChild0,
6277
127k
   OPC_RecordChild1,
6278
127k
   OPC_SwitchType , 7, MVT::i32,
6279
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_I32),
6280
127k
                  MVT::i32, 2, 0, 1, 
6281
127k
   7, MVT::i64,
6282
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_I64),
6283
127k
                  MVT::i64, 2, 0, 1, 
6284
127k
   0,
6285
127k
  42, 
6286
127k
   OPC_MoveChild0,
6287
127k
   OPC_CheckImmAllZerosV,
6288
127k
   OPC_MoveParent,
6289
127k
   OPC_RecordChild1,
6290
127k
   OPC_SwitchType , 7, MVT::v16i8,
6291
127k
    OPC_CheckPatternPredicate0,
6292
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEG_I8x16),
6293
127k
                  MVT::v16i8, 1, 0, 
6294
127k
   7, MVT::v8i16,
6295
127k
    OPC_CheckPatternPredicate0,
6296
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEG_I16x8),
6297
127k
                  MVT::v8i16, 1, 0, 
6298
127k
   7, MVT::v4i32,
6299
127k
    OPC_CheckPatternPredicate0,
6300
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEG_I32x4),
6301
127k
                  MVT::v4i32, 1, 0, 
6302
127k
   7, MVT::v2i64,
6303
127k
    OPC_CheckPatternPredicate0,
6304
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEG_I64x2),
6305
127k
                  MVT::v2i64, 1, 0, 
6306
127k
   0,
6307
127k
  44, 
6308
127k
   OPC_RecordChild0,
6309
127k
   OPC_RecordChild1,
6310
127k
   OPC_SwitchType , 8, MVT::v16i8,
6311
127k
    OPC_CheckPatternPredicate0,
6312
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_I8x16),
6313
127k
                  MVT::v16i8, 2, 0, 1, 
6314
127k
   8, MVT::v8i16,
6315
127k
    OPC_CheckPatternPredicate0,
6316
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_I16x8),
6317
127k
                  MVT::v8i16, 2, 0, 1, 
6318
127k
   8, MVT::v4i32,
6319
127k
    OPC_CheckPatternPredicate0,
6320
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_I32x4),
6321
127k
                  MVT::v4i32, 2, 0, 1, 
6322
127k
   8, MVT::v2i64,
6323
127k
    OPC_CheckPatternPredicate0,
6324
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_I64x2),
6325
127k
                  MVT::v2i64, 2, 0, 1, 
6326
127k
   0,
6327
127k
  0, 
6328
127k
 85|128,2, TARGET_VAL(ISD::MUL),
6329
127k
  OPC_Scope, 22, 
6330
127k
   OPC_RecordChild0,
6331
127k
   OPC_RecordChild1,
6332
127k
   OPC_SwitchType , 7, MVT::i32,
6333
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MUL_I32),
6334
127k
                  MVT::i32, 2, 0, 1, 
6335
127k
   7, MVT::i64,
6336
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MUL_I64),
6337
127k
                  MVT::i64, 2, 0, 1, 
6338
127k
   0,
6339
127k
  23|128,2, 
6340
127k
   OPC_MoveChild0,
6341
127k
   OPC_SwitchOpcode , 66, TARGET_VAL(WebAssemblyISD::EXTEND_LOW_S),
6342
127k
    OPC_RecordChild0,
6343
127k
    OPC_Scope, 20, 
6344
127k
     OPC_CheckChild0Type, MVT::v16i8,
6345
127k
     OPC_MoveSibling1,
6346
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_LOW_S),
6347
127k
     OPC_RecordChild0,
6348
127k
     OPC_CheckChild0Type, MVT::v16i8,
6349
127k
     OPC_MoveParent,
6350
127k
     OPC_CheckType, MVT::v8i16,
6351
127k
     OPC_CheckPatternPredicate0,
6352
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_LOW_S_I16x8),
6353
127k
                   MVT::v8i16, 2, 0, 1, 
6354
127k
    20, 
6355
127k
     OPC_CheckChild0Type, MVT::v8i16,
6356
127k
     OPC_MoveSibling1,
6357
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_LOW_S),
6358
127k
     OPC_RecordChild0,
6359
127k
     OPC_CheckChild0Type, MVT::v8i16,
6360
127k
     OPC_MoveParent,
6361
127k
     OPC_CheckType, MVT::v4i32,
6362
127k
     OPC_CheckPatternPredicate0,
6363
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_LOW_S_I32x4),
6364
127k
                   MVT::v4i32, 2, 0, 1, 
6365
127k
    20, 
6366
127k
     OPC_CheckChild0Type, MVT::v4i32,
6367
127k
     OPC_MoveSibling1,
6368
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_LOW_S),
6369
127k
     OPC_RecordChild0,
6370
127k
     OPC_CheckChild0Type, MVT::v4i32,
6371
127k
     OPC_MoveParent,
6372
127k
     OPC_CheckType, MVT::v2i64,
6373
127k
     OPC_CheckPatternPredicate0,
6374
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_LOW_S_I64x2),
6375
127k
                   MVT::v2i64, 2, 0, 1, 
6376
127k
    0, 
6377
127k
   66, TARGET_VAL(WebAssemblyISD::EXTEND_HIGH_S),
6378
127k
    OPC_RecordChild0,
6379
127k
    OPC_Scope, 20, 
6380
127k
     OPC_CheckChild0Type, MVT::v16i8,
6381
127k
     OPC_MoveSibling1,
6382
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_HIGH_S),
6383
127k
     OPC_RecordChild0,
6384
127k
     OPC_CheckChild0Type, MVT::v16i8,
6385
127k
     OPC_MoveParent,
6386
127k
     OPC_CheckType, MVT::v8i16,
6387
127k
     OPC_CheckPatternPredicate0,
6388
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_HIGH_S_I16x8),
6389
127k
                   MVT::v8i16, 2, 0, 1, 
6390
127k
    20, 
6391
127k
     OPC_CheckChild0Type, MVT::v8i16,
6392
127k
     OPC_MoveSibling1,
6393
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_HIGH_S),
6394
127k
     OPC_RecordChild0,
6395
127k
     OPC_CheckChild0Type, MVT::v8i16,
6396
127k
     OPC_MoveParent,
6397
127k
     OPC_CheckType, MVT::v4i32,
6398
127k
     OPC_CheckPatternPredicate0,
6399
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_HIGH_S_I32x4),
6400
127k
                   MVT::v4i32, 2, 0, 1, 
6401
127k
    20, 
6402
127k
     OPC_CheckChild0Type, MVT::v4i32,
6403
127k
     OPC_MoveSibling1,
6404
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_HIGH_S),
6405
127k
     OPC_RecordChild0,
6406
127k
     OPC_CheckChild0Type, MVT::v4i32,
6407
127k
     OPC_MoveParent,
6408
127k
     OPC_CheckType, MVT::v2i64,
6409
127k
     OPC_CheckPatternPredicate0,
6410
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_HIGH_S_I64x2),
6411
127k
                   MVT::v2i64, 2, 0, 1, 
6412
127k
    0, 
6413
127k
   66, TARGET_VAL(WebAssemblyISD::EXTEND_LOW_U),
6414
127k
    OPC_RecordChild0,
6415
127k
    OPC_Scope, 20, 
6416
127k
     OPC_CheckChild0Type, MVT::v16i8,
6417
127k
     OPC_MoveSibling1,
6418
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_LOW_U),
6419
127k
     OPC_RecordChild0,
6420
127k
     OPC_CheckChild0Type, MVT::v16i8,
6421
127k
     OPC_MoveParent,
6422
127k
     OPC_CheckType, MVT::v8i16,
6423
127k
     OPC_CheckPatternPredicate0,
6424
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_LOW_U_I16x8),
6425
127k
                   MVT::v8i16, 2, 0, 1, 
6426
127k
    20, 
6427
127k
     OPC_CheckChild0Type, MVT::v8i16,
6428
127k
     OPC_MoveSibling1,
6429
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_LOW_U),
6430
127k
     OPC_RecordChild0,
6431
127k
     OPC_CheckChild0Type, MVT::v8i16,
6432
127k
     OPC_MoveParent,
6433
127k
     OPC_CheckType, MVT::v4i32,
6434
127k
     OPC_CheckPatternPredicate0,
6435
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_LOW_U_I32x4),
6436
127k
                   MVT::v4i32, 2, 0, 1, 
6437
127k
    20, 
6438
127k
     OPC_CheckChild0Type, MVT::v4i32,
6439
127k
     OPC_MoveSibling1,
6440
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_LOW_U),
6441
127k
     OPC_RecordChild0,
6442
127k
     OPC_CheckChild0Type, MVT::v4i32,
6443
127k
     OPC_MoveParent,
6444
127k
     OPC_CheckType, MVT::v2i64,
6445
127k
     OPC_CheckPatternPredicate0,
6446
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_LOW_U_I64x2),
6447
127k
                   MVT::v2i64, 2, 0, 1, 
6448
127k
    0, 
6449
127k
   66, TARGET_VAL(WebAssemblyISD::EXTEND_HIGH_U),
6450
127k
    OPC_RecordChild0,
6451
127k
    OPC_Scope, 20, 
6452
127k
     OPC_CheckChild0Type, MVT::v16i8,
6453
127k
     OPC_MoveSibling1,
6454
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_HIGH_U),
6455
127k
     OPC_RecordChild0,
6456
127k
     OPC_CheckChild0Type, MVT::v16i8,
6457
127k
     OPC_MoveParent,
6458
127k
     OPC_CheckType, MVT::v8i16,
6459
127k
     OPC_CheckPatternPredicate0,
6460
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_HIGH_U_I16x8),
6461
127k
                   MVT::v8i16, 2, 0, 1, 
6462
127k
    20, 
6463
127k
     OPC_CheckChild0Type, MVT::v8i16,
6464
127k
     OPC_MoveSibling1,
6465
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_HIGH_U),
6466
127k
     OPC_RecordChild0,
6467
127k
     OPC_CheckChild0Type, MVT::v8i16,
6468
127k
     OPC_MoveParent,
6469
127k
     OPC_CheckType, MVT::v4i32,
6470
127k
     OPC_CheckPatternPredicate0,
6471
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_HIGH_U_I32x4),
6472
127k
                   MVT::v4i32, 2, 0, 1, 
6473
127k
    20, 
6474
127k
     OPC_CheckChild0Type, MVT::v4i32,
6475
127k
     OPC_MoveSibling1,
6476
127k
     OPC_CheckOpcode, TARGET_VAL(WebAssemblyISD::EXTEND_HIGH_U),
6477
127k
     OPC_RecordChild0,
6478
127k
     OPC_CheckChild0Type, MVT::v4i32,
6479
127k
     OPC_MoveParent,
6480
127k
     OPC_CheckType, MVT::v2i64,
6481
127k
     OPC_CheckPatternPredicate0,
6482
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::EXTMUL_HIGH_U_I64x2),
6483
127k
                   MVT::v2i64, 2, 0, 1, 
6484
127k
    0, 
6485
127k
   0,
6486
127k
  34, 
6487
127k
   OPC_RecordChild0,
6488
127k
   OPC_RecordChild1,
6489
127k
   OPC_SwitchType , 8, MVT::v8i16,
6490
127k
    OPC_CheckPatternPredicate0,
6491
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MUL_I16x8),
6492
127k
                  MVT::v8i16, 2, 0, 1, 
6493
127k
   8, MVT::v4i32,
6494
127k
    OPC_CheckPatternPredicate0,
6495
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MUL_I32x4),
6496
127k
                  MVT::v4i32, 2, 0, 1, 
6497
127k
   8, MVT::v2i64,
6498
127k
    OPC_CheckPatternPredicate0,
6499
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MUL_I64x2),
6500
127k
                  MVT::v2i64, 2, 0, 1, 
6501
127k
   0,
6502
127k
  0, 
6503
127k
 22, TARGET_VAL(ISD::SDIV),
6504
127k
  OPC_RecordChild0,
6505
127k
  OPC_RecordChild1,
6506
127k
  OPC_SwitchType , 7, MVT::i32,
6507
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::DIV_S_I32),
6508
127k
                 MVT::i32, 2, 0, 1, 
6509
127k
  7, MVT::i64,
6510
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::DIV_S_I64),
6511
127k
                 MVT::i64, 2, 0, 1, 
6512
127k
  0,
6513
127k
 22, TARGET_VAL(ISD::UDIV),
6514
127k
  OPC_RecordChild0,
6515
127k
  OPC_RecordChild1,
6516
127k
  OPC_SwitchType , 7, MVT::i32,
6517
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::DIV_U_I32),
6518
127k
                 MVT::i32, 2, 0, 1, 
6519
127k
  7, MVT::i64,
6520
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::DIV_U_I64),
6521
127k
                 MVT::i64, 2, 0, 1, 
6522
127k
  0,
6523
127k
 22, TARGET_VAL(ISD::SREM),
6524
127k
  OPC_RecordChild0,
6525
127k
  OPC_RecordChild1,
6526
127k
  OPC_SwitchType , 7, MVT::i32,
6527
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REM_S_I32),
6528
127k
                 MVT::i32, 2, 0, 1, 
6529
127k
  7, MVT::i64,
6530
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REM_S_I64),
6531
127k
                 MVT::i64, 2, 0, 1, 
6532
127k
  0,
6533
127k
 22, TARGET_VAL(ISD::UREM),
6534
127k
  OPC_RecordChild0,
6535
127k
  OPC_RecordChild1,
6536
127k
  OPC_SwitchType , 7, MVT::i32,
6537
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REM_U_I32),
6538
127k
                 MVT::i32, 2, 0, 1, 
6539
127k
  7, MVT::i64,
6540
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REM_U_I64),
6541
127k
                 MVT::i64, 2, 0, 1, 
6542
127k
  0,
6543
127k
 56|128,6, TARGET_VAL(ISD::OR),
6544
127k
  OPC_Scope, 22, 
6545
127k
   OPC_RecordChild0,
6546
127k
   OPC_RecordChild1,
6547
127k
   OPC_SwitchType , 7, MVT::i32,
6548
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::OR_I32),
6549
127k
                  MVT::i32, 2, 0, 1, 
6550
127k
   7, MVT::i64,
6551
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::OR_I64),
6552
127k
                  MVT::i64, 2, 0, 1, 
6553
127k
   0,
6554
127k
  116|128,5, 
6555
127k
   OPC_MoveChild0,
6556
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6557
127k
   OPC_Scope, 4|128,1, 
6558
127k
    OPC_RecordChild0,
6559
127k
    OPC_RecordChild1,
6560
127k
    OPC_MoveSibling1,
6561
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6562
127k
    OPC_Scope, 54, 
6563
127k
     OPC_MoveChild0,
6564
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6565
127k
     OPC_CheckChild0Same, 0,
6566
127k
     OPC_MoveChild1,
6567
127k
     OPC_CheckImmAllOnesV,
6568
127k
     OPC_MoveParent,
6569
127k
     OPC_MoveParent,
6570
127k
     OPC_RecordChild1,
6571
127k
     OPC_MoveParent,
6572
127k
     OPC_SwitchType , 8, MVT::v16i8,
6573
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6574
127k
                    MVT::v16i8, 3, 1, 2, 0, 
6575
127k
     8, MVT::v8i16,
6576
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6577
127k
                    MVT::v8i16, 3, 1, 2, 0, 
6578
127k
     8, MVT::v4i32,
6579
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6580
127k
                    MVT::v4i32, 3, 1, 2, 0, 
6581
127k
     8, MVT::v2i64,
6582
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6583
127k
                    MVT::v2i64, 3, 1, 2, 0, 
6584
127k
     0,
6585
127k
    22, 
6586
127k
     OPC_RecordChild0,
6587
127k
     OPC_MoveChild1,
6588
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6589
127k
     OPC_CheckChild0Same, 0,
6590
127k
     OPC_MoveChild1,
6591
127k
     OPC_CheckImmAllOnesV,
6592
127k
     OPC_MoveParent,
6593
127k
     OPC_MoveParent,
6594
127k
     OPC_MoveParent,
6595
127k
     OPC_CheckType, MVT::v16i8,
6596
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6597
127k
                   MVT::v16i8, 3, 1, 2, 0, 
6598
127k
    22, 
6599
127k
     OPC_MoveChild0,
6600
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6601
127k
     OPC_CheckChild0Same, 1,
6602
127k
     OPC_MoveChild1,
6603
127k
     OPC_CheckImmAllOnesV,
6604
127k
     OPC_MoveParent,
6605
127k
     OPC_MoveParent,
6606
127k
     OPC_RecordChild1,
6607
127k
     OPC_MoveParent,
6608
127k
     OPC_CheckType, MVT::v16i8,
6609
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6610
127k
                   MVT::v16i8, 3, 0, 2, 1, 
6611
127k
    22, 
6612
127k
     OPC_RecordChild0,
6613
127k
     OPC_MoveChild1,
6614
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6615
127k
     OPC_CheckChild0Same, 1,
6616
127k
     OPC_MoveChild1,
6617
127k
     OPC_CheckImmAllOnesV,
6618
127k
     OPC_MoveParent,
6619
127k
     OPC_MoveParent,
6620
127k
     OPC_MoveParent,
6621
127k
     OPC_CheckType, MVT::v16i8,
6622
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6623
127k
                   MVT::v16i8, 3, 0, 2, 1, 
6624
127k
    0, 
6625
127k
   46, 
6626
127k
    OPC_MoveChild0,
6627
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6628
127k
    OPC_RecordChild0,
6629
127k
    OPC_MoveChild1,
6630
127k
    OPC_CheckImmAllOnesV,
6631
127k
    OPC_MoveParent,
6632
127k
    OPC_MoveParent,
6633
127k
    OPC_RecordChild1,
6634
127k
    OPC_MoveSibling1,
6635
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6636
127k
    OPC_Scope, 14, 
6637
127k
     OPC_CheckChild0Same, 0,
6638
127k
     OPC_RecordChild1,
6639
127k
     OPC_MoveParent,
6640
127k
     OPC_CheckType, MVT::v16i8,
6641
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6642
127k
                   MVT::v16i8, 3, 2, 1, 0, 
6643
127k
    14, 
6644
127k
     OPC_RecordChild0,
6645
127k
     OPC_CheckChild1Same, 0,
6646
127k
     OPC_MoveParent,
6647
127k
     OPC_CheckType, MVT::v16i8,
6648
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6649
127k
                   MVT::v16i8, 3, 2, 1, 0, 
6650
127k
    0, 
6651
127k
   126, 
6652
127k
    OPC_RecordChild0,
6653
127k
    OPC_Scope, 45, 
6654
127k
     OPC_MoveChild1,
6655
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6656
127k
     OPC_RecordChild0,
6657
127k
     OPC_MoveChild1,
6658
127k
     OPC_CheckImmAllOnesV,
6659
127k
     OPC_MoveParent,
6660
127k
     OPC_MoveParent,
6661
127k
     OPC_MoveSibling1,
6662
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6663
127k
     OPC_Scope, 14, 
6664
127k
      OPC_CheckChild0Same, 1,
6665
127k
      OPC_RecordChild1,
6666
127k
      OPC_MoveParent,
6667
127k
      OPC_CheckType, MVT::v16i8,
6668
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6669
127k
                    MVT::v16i8, 3, 2, 0, 1, 
6670
127k
     14, 
6671
127k
      OPC_RecordChild0,
6672
127k
      OPC_CheckChild1Same, 1,
6673
127k
      OPC_MoveParent,
6674
127k
      OPC_CheckType, MVT::v16i8,
6675
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6676
127k
                    MVT::v16i8, 3, 2, 0, 1, 
6677
127k
     0, 
6678
127k
    76, 
6679
127k
     OPC_RecordChild1,
6680
127k
     OPC_MoveSibling1,
6681
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6682
127k
     OPC_Scope, 22, 
6683
127k
      OPC_RecordChild0,
6684
127k
      OPC_MoveChild1,
6685
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6686
127k
      OPC_CheckChild0Same, 0,
6687
127k
      OPC_MoveChild1,
6688
127k
      OPC_CheckImmAllOnesV,
6689
127k
      OPC_MoveParent,
6690
127k
      OPC_MoveParent,
6691
127k
      OPC_MoveParent,
6692
127k
      OPC_CheckType, MVT::v8i16,
6693
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6694
127k
                    MVT::v8i16, 3, 1, 2, 0, 
6695
127k
     22, 
6696
127k
      OPC_MoveChild0,
6697
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6698
127k
      OPC_CheckChild0Same, 1,
6699
127k
      OPC_MoveChild1,
6700
127k
      OPC_CheckImmAllOnesV,
6701
127k
      OPC_MoveParent,
6702
127k
      OPC_MoveParent,
6703
127k
      OPC_RecordChild1,
6704
127k
      OPC_MoveParent,
6705
127k
      OPC_CheckType, MVT::v8i16,
6706
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6707
127k
                    MVT::v8i16, 3, 0, 2, 1, 
6708
127k
     22, 
6709
127k
      OPC_RecordChild0,
6710
127k
      OPC_MoveChild1,
6711
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6712
127k
      OPC_CheckChild0Same, 1,
6713
127k
      OPC_MoveChild1,
6714
127k
      OPC_CheckImmAllOnesV,
6715
127k
      OPC_MoveParent,
6716
127k
      OPC_MoveParent,
6717
127k
      OPC_MoveParent,
6718
127k
      OPC_CheckType, MVT::v8i16,
6719
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6720
127k
                    MVT::v8i16, 3, 0, 2, 1, 
6721
127k
     0, 
6722
127k
    0, 
6723
127k
   46, 
6724
127k
    OPC_MoveChild0,
6725
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6726
127k
    OPC_RecordChild0,
6727
127k
    OPC_MoveChild1,
6728
127k
    OPC_CheckImmAllOnesV,
6729
127k
    OPC_MoveParent,
6730
127k
    OPC_MoveParent,
6731
127k
    OPC_RecordChild1,
6732
127k
    OPC_MoveSibling1,
6733
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6734
127k
    OPC_Scope, 14, 
6735
127k
     OPC_CheckChild0Same, 0,
6736
127k
     OPC_RecordChild1,
6737
127k
     OPC_MoveParent,
6738
127k
     OPC_CheckType, MVT::v8i16,
6739
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6740
127k
                   MVT::v8i16, 3, 2, 1, 0, 
6741
127k
    14, 
6742
127k
     OPC_RecordChild0,
6743
127k
     OPC_CheckChild1Same, 0,
6744
127k
     OPC_MoveParent,
6745
127k
     OPC_CheckType, MVT::v8i16,
6746
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6747
127k
                   MVT::v8i16, 3, 2, 1, 0, 
6748
127k
    0, 
6749
127k
   126, 
6750
127k
    OPC_RecordChild0,
6751
127k
    OPC_Scope, 45, 
6752
127k
     OPC_MoveChild1,
6753
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6754
127k
     OPC_RecordChild0,
6755
127k
     OPC_MoveChild1,
6756
127k
     OPC_CheckImmAllOnesV,
6757
127k
     OPC_MoveParent,
6758
127k
     OPC_MoveParent,
6759
127k
     OPC_MoveSibling1,
6760
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6761
127k
     OPC_Scope, 14, 
6762
127k
      OPC_CheckChild0Same, 1,
6763
127k
      OPC_RecordChild1,
6764
127k
      OPC_MoveParent,
6765
127k
      OPC_CheckType, MVT::v8i16,
6766
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6767
127k
                    MVT::v8i16, 3, 2, 0, 1, 
6768
127k
     14, 
6769
127k
      OPC_RecordChild0,
6770
127k
      OPC_CheckChild1Same, 1,
6771
127k
      OPC_MoveParent,
6772
127k
      OPC_CheckType, MVT::v8i16,
6773
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6774
127k
                    MVT::v8i16, 3, 2, 0, 1, 
6775
127k
     0, 
6776
127k
    76, 
6777
127k
     OPC_RecordChild1,
6778
127k
     OPC_MoveSibling1,
6779
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6780
127k
     OPC_Scope, 22, 
6781
127k
      OPC_RecordChild0,
6782
127k
      OPC_MoveChild1,
6783
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6784
127k
      OPC_CheckChild0Same, 0,
6785
127k
      OPC_MoveChild1,
6786
127k
      OPC_CheckImmAllOnesV,
6787
127k
      OPC_MoveParent,
6788
127k
      OPC_MoveParent,
6789
127k
      OPC_MoveParent,
6790
127k
      OPC_CheckType, MVT::v4i32,
6791
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6792
127k
                    MVT::v4i32, 3, 1, 2, 0, 
6793
127k
     22, 
6794
127k
      OPC_MoveChild0,
6795
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6796
127k
      OPC_CheckChild0Same, 1,
6797
127k
      OPC_MoveChild1,
6798
127k
      OPC_CheckImmAllOnesV,
6799
127k
      OPC_MoveParent,
6800
127k
      OPC_MoveParent,
6801
127k
      OPC_RecordChild1,
6802
127k
      OPC_MoveParent,
6803
127k
      OPC_CheckType, MVT::v4i32,
6804
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6805
127k
                    MVT::v4i32, 3, 0, 2, 1, 
6806
127k
     22, 
6807
127k
      OPC_RecordChild0,
6808
127k
      OPC_MoveChild1,
6809
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6810
127k
      OPC_CheckChild0Same, 1,
6811
127k
      OPC_MoveChild1,
6812
127k
      OPC_CheckImmAllOnesV,
6813
127k
      OPC_MoveParent,
6814
127k
      OPC_MoveParent,
6815
127k
      OPC_MoveParent,
6816
127k
      OPC_CheckType, MVT::v4i32,
6817
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6818
127k
                    MVT::v4i32, 3, 0, 2, 1, 
6819
127k
     0, 
6820
127k
    0, 
6821
127k
   46, 
6822
127k
    OPC_MoveChild0,
6823
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6824
127k
    OPC_RecordChild0,
6825
127k
    OPC_MoveChild1,
6826
127k
    OPC_CheckImmAllOnesV,
6827
127k
    OPC_MoveParent,
6828
127k
    OPC_MoveParent,
6829
127k
    OPC_RecordChild1,
6830
127k
    OPC_MoveSibling1,
6831
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6832
127k
    OPC_Scope, 14, 
6833
127k
     OPC_CheckChild0Same, 0,
6834
127k
     OPC_RecordChild1,
6835
127k
     OPC_MoveParent,
6836
127k
     OPC_CheckType, MVT::v4i32,
6837
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6838
127k
                   MVT::v4i32, 3, 2, 1, 0, 
6839
127k
    14, 
6840
127k
     OPC_RecordChild0,
6841
127k
     OPC_CheckChild1Same, 0,
6842
127k
     OPC_MoveParent,
6843
127k
     OPC_CheckType, MVT::v4i32,
6844
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6845
127k
                   MVT::v4i32, 3, 2, 1, 0, 
6846
127k
    0, 
6847
127k
   126, 
6848
127k
    OPC_RecordChild0,
6849
127k
    OPC_Scope, 45, 
6850
127k
     OPC_MoveChild1,
6851
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6852
127k
     OPC_RecordChild0,
6853
127k
     OPC_MoveChild1,
6854
127k
     OPC_CheckImmAllOnesV,
6855
127k
     OPC_MoveParent,
6856
127k
     OPC_MoveParent,
6857
127k
     OPC_MoveSibling1,
6858
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6859
127k
     OPC_Scope, 14, 
6860
127k
      OPC_CheckChild0Same, 1,
6861
127k
      OPC_RecordChild1,
6862
127k
      OPC_MoveParent,
6863
127k
      OPC_CheckType, MVT::v4i32,
6864
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6865
127k
                    MVT::v4i32, 3, 2, 0, 1, 
6866
127k
     14, 
6867
127k
      OPC_RecordChild0,
6868
127k
      OPC_CheckChild1Same, 1,
6869
127k
      OPC_MoveParent,
6870
127k
      OPC_CheckType, MVT::v4i32,
6871
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6872
127k
                    MVT::v4i32, 3, 2, 0, 1, 
6873
127k
     0, 
6874
127k
    76, 
6875
127k
     OPC_RecordChild1,
6876
127k
     OPC_MoveSibling1,
6877
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6878
127k
     OPC_Scope, 22, 
6879
127k
      OPC_RecordChild0,
6880
127k
      OPC_MoveChild1,
6881
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6882
127k
      OPC_CheckChild0Same, 0,
6883
127k
      OPC_MoveChild1,
6884
127k
      OPC_CheckImmAllOnesV,
6885
127k
      OPC_MoveParent,
6886
127k
      OPC_MoveParent,
6887
127k
      OPC_MoveParent,
6888
127k
      OPC_CheckType, MVT::v2i64,
6889
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6890
127k
                    MVT::v2i64, 3, 1, 2, 0, 
6891
127k
     22, 
6892
127k
      OPC_MoveChild0,
6893
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6894
127k
      OPC_CheckChild0Same, 1,
6895
127k
      OPC_MoveChild1,
6896
127k
      OPC_CheckImmAllOnesV,
6897
127k
      OPC_MoveParent,
6898
127k
      OPC_MoveParent,
6899
127k
      OPC_RecordChild1,
6900
127k
      OPC_MoveParent,
6901
127k
      OPC_CheckType, MVT::v2i64,
6902
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6903
127k
                    MVT::v2i64, 3, 0, 2, 1, 
6904
127k
     22, 
6905
127k
      OPC_RecordChild0,
6906
127k
      OPC_MoveChild1,
6907
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6908
127k
      OPC_CheckChild0Same, 1,
6909
127k
      OPC_MoveChild1,
6910
127k
      OPC_CheckImmAllOnesV,
6911
127k
      OPC_MoveParent,
6912
127k
      OPC_MoveParent,
6913
127k
      OPC_MoveParent,
6914
127k
      OPC_CheckType, MVT::v2i64,
6915
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6916
127k
                    MVT::v2i64, 3, 0, 2, 1, 
6917
127k
     0, 
6918
127k
    0, 
6919
127k
   46, 
6920
127k
    OPC_MoveChild0,
6921
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6922
127k
    OPC_RecordChild0,
6923
127k
    OPC_MoveChild1,
6924
127k
    OPC_CheckImmAllOnesV,
6925
127k
    OPC_MoveParent,
6926
127k
    OPC_MoveParent,
6927
127k
    OPC_RecordChild1,
6928
127k
    OPC_MoveSibling1,
6929
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6930
127k
    OPC_Scope, 14, 
6931
127k
     OPC_CheckChild0Same, 0,
6932
127k
     OPC_RecordChild1,
6933
127k
     OPC_MoveParent,
6934
127k
     OPC_CheckType, MVT::v2i64,
6935
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6936
127k
                   MVT::v2i64, 3, 2, 1, 0, 
6937
127k
    14, 
6938
127k
     OPC_RecordChild0,
6939
127k
     OPC_CheckChild1Same, 0,
6940
127k
     OPC_MoveParent,
6941
127k
     OPC_CheckType, MVT::v2i64,
6942
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6943
127k
                   MVT::v2i64, 3, 2, 1, 0, 
6944
127k
    0, 
6945
127k
   46, 
6946
127k
    OPC_RecordChild0,
6947
127k
    OPC_MoveChild1,
6948
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
6949
127k
    OPC_RecordChild0,
6950
127k
    OPC_MoveChild1,
6951
127k
    OPC_CheckImmAllOnesV,
6952
127k
    OPC_MoveParent,
6953
127k
    OPC_MoveParent,
6954
127k
    OPC_MoveSibling1,
6955
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::AND),
6956
127k
    OPC_Scope, 14, 
6957
127k
     OPC_CheckChild0Same, 1,
6958
127k
     OPC_RecordChild1,
6959
127k
     OPC_MoveParent,
6960
127k
     OPC_CheckType, MVT::v2i64,
6961
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6962
127k
                   MVT::v2i64, 3, 2, 0, 1, 
6963
127k
    14, 
6964
127k
     OPC_RecordChild0,
6965
127k
     OPC_CheckChild1Same, 1,
6966
127k
     OPC_MoveParent,
6967
127k
     OPC_CheckType, MVT::v2i64,
6968
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
6969
127k
                   MVT::v2i64, 3, 2, 0, 1, 
6970
127k
    0, 
6971
127k
   0, 
6972
127k
  40, 
6973
127k
   OPC_RecordChild0,
6974
127k
   OPC_RecordChild1,
6975
127k
   OPC_SwitchType , 7, MVT::v16i8,
6976
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::OR),
6977
127k
                  MVT::v16i8, 2, 0, 1, 
6978
127k
   7, MVT::v8i16,
6979
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::OR),
6980
127k
                  MVT::v8i16, 2, 0, 1, 
6981
127k
   7, MVT::v4i32,
6982
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::OR),
6983
127k
                  MVT::v4i32, 2, 0, 1, 
6984
127k
   7, MVT::v2i64,
6985
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::OR),
6986
127k
                  MVT::v2i64, 2, 0, 1, 
6987
127k
   0,
6988
127k
  0, 
6989
127k
 121|128,11, TARGET_VAL(ISD::XOR),
6990
127k
  OPC_Scope, 22, 
6991
127k
   OPC_RecordChild0,
6992
127k
   OPC_RecordChild1,
6993
127k
   OPC_SwitchType , 7, MVT::i32,
6994
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::XOR_I32),
6995
127k
                  MVT::i32, 2, 0, 1, 
6996
127k
   7, MVT::i64,
6997
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::XOR_I64),
6998
127k
                  MVT::i64, 2, 0, 1, 
6999
127k
   0,
7000
127k
  121, 
7001
127k
   OPC_MoveChild0,
7002
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7003
127k
   OPC_MoveChild0,
7004
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7005
127k
   OPC_RecordChild0,
7006
127k
   OPC_Scope, 71, 
7007
127k
    OPC_RecordChild1,
7008
127k
    OPC_MoveSibling1,
7009
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7010
127k
    OPC_RecordChild0,
7011
127k
    OPC_MoveChild1,
7012
127k
    OPC_CheckImmAllOnesV,
7013
127k
    OPC_MoveParent,
7014
127k
    OPC_MoveParent,
7015
127k
    OPC_MoveParent,
7016
127k
    OPC_Scope, 44, 
7017
127k
     OPC_CheckChild1Same, 1,
7018
127k
     OPC_SwitchType , 8, MVT::v16i8,
7019
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7020
127k
                    MVT::v16i8, 3, 1, 0, 2, 
7021
127k
     8, MVT::v8i16,
7022
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7023
127k
                    MVT::v8i16, 3, 1, 0, 2, 
7024
127k
     8, MVT::v4i32,
7025
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7026
127k
                    MVT::v4i32, 3, 1, 0, 2, 
7027
127k
     8, MVT::v2i64,
7028
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7029
127k
                    MVT::v2i64, 3, 1, 0, 2, 
7030
127k
     0,
7031
127k
    12, 
7032
127k
     OPC_CheckChild1Same, 0,
7033
127k
     OPC_CheckType, MVT::v16i8,
7034
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7035
127k
                   MVT::v16i8, 3, 0, 1, 2, 
7036
127k
    0, 
7037
127k
   37, 
7038
127k
    OPC_MoveChild1,
7039
127k
    OPC_CheckImmAllOnesV,
7040
127k
    OPC_MoveParent,
7041
127k
    OPC_MoveSibling1,
7042
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7043
127k
    OPC_RecordChild0,
7044
127k
    OPC_RecordChild1,
7045
127k
    OPC_MoveParent,
7046
127k
    OPC_MoveParent,
7047
127k
    OPC_CheckType, MVT::v16i8,
7048
127k
    OPC_Scope, 10, 
7049
127k
     OPC_CheckChild1Same, 2,
7050
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7051
127k
                   MVT::v16i8, 3, 2, 1, 0, 
7052
127k
    10, 
7053
127k
     OPC_CheckChild1Same, 1,
7054
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7055
127k
                   MVT::v16i8, 3, 1, 2, 0, 
7056
127k
    0, 
7057
127k
   0, 
7058
127k
  102, 
7059
127k
   OPC_RecordChild0,
7060
127k
   OPC_MoveChild1,
7061
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7062
127k
   OPC_MoveChild0,
7063
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7064
127k
   OPC_Scope, 23, 
7065
127k
    OPC_RecordChild0,
7066
127k
    OPC_CheckChild1Same, 0,
7067
127k
    OPC_MoveSibling1,
7068
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7069
127k
    OPC_RecordChild0,
7070
127k
    OPC_MoveChild1,
7071
127k
    OPC_CheckImmAllOnesV,
7072
127k
    OPC_MoveParent,
7073
127k
    OPC_MoveParent,
7074
127k
    OPC_MoveParent,
7075
127k
    OPC_CheckType, MVT::v16i8,
7076
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7077
127k
                  MVT::v16i8, 3, 0, 1, 2, 
7078
127k
   23, 
7079
127k
    OPC_CheckChild0Same, 0,
7080
127k
    OPC_RecordChild1,
7081
127k
    OPC_MoveSibling1,
7082
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7083
127k
    OPC_RecordChild0,
7084
127k
    OPC_MoveChild1,
7085
127k
    OPC_CheckImmAllOnesV,
7086
127k
    OPC_MoveParent,
7087
127k
    OPC_MoveParent,
7088
127k
    OPC_MoveParent,
7089
127k
    OPC_CheckType, MVT::v16i8,
7090
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7091
127k
                  MVT::v16i8, 3, 0, 1, 2, 
7092
127k
   42, 
7093
127k
    OPC_RecordChild0,
7094
127k
    OPC_MoveChild1,
7095
127k
    OPC_CheckImmAllOnesV,
7096
127k
    OPC_MoveParent,
7097
127k
    OPC_MoveSibling1,
7098
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7099
127k
    OPC_Scope, 15, 
7100
127k
     OPC_RecordChild0,
7101
127k
     OPC_CheckChild1Same, 0,
7102
127k
     OPC_MoveParent,
7103
127k
     OPC_MoveParent,
7104
127k
     OPC_CheckType, MVT::v16i8,
7105
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7106
127k
                   MVT::v16i8, 3, 0, 2, 1, 
7107
127k
    15, 
7108
127k
     OPC_CheckChild0Same, 0,
7109
127k
     OPC_RecordChild1,
7110
127k
     OPC_MoveParent,
7111
127k
     OPC_MoveParent,
7112
127k
     OPC_CheckType, MVT::v16i8,
7113
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7114
127k
                   MVT::v16i8, 3, 0, 2, 1, 
7115
127k
    0, 
7116
127k
   0, 
7117
127k
  73, 
7118
127k
   OPC_MoveChild0,
7119
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7120
127k
   OPC_MoveChild0,
7121
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7122
127k
   OPC_RecordChild0,
7123
127k
   OPC_Scope, 23, 
7124
127k
    OPC_RecordChild1,
7125
127k
    OPC_MoveSibling1,
7126
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7127
127k
    OPC_RecordChild0,
7128
127k
    OPC_MoveChild1,
7129
127k
    OPC_CheckImmAllOnesV,
7130
127k
    OPC_MoveParent,
7131
127k
    OPC_MoveParent,
7132
127k
    OPC_MoveParent,
7133
127k
    OPC_CheckChild1Same, 0,
7134
127k
    OPC_CheckType, MVT::v8i16,
7135
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7136
127k
                  MVT::v8i16, 3, 0, 1, 2, 
7137
127k
   37, 
7138
127k
    OPC_MoveChild1,
7139
127k
    OPC_CheckImmAllOnesV,
7140
127k
    OPC_MoveParent,
7141
127k
    OPC_MoveSibling1,
7142
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7143
127k
    OPC_RecordChild0,
7144
127k
    OPC_RecordChild1,
7145
127k
    OPC_MoveParent,
7146
127k
    OPC_MoveParent,
7147
127k
    OPC_CheckType, MVT::v8i16,
7148
127k
    OPC_Scope, 10, 
7149
127k
     OPC_CheckChild1Same, 2,
7150
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7151
127k
                   MVT::v8i16, 3, 2, 1, 0, 
7152
127k
    10, 
7153
127k
     OPC_CheckChild1Same, 1,
7154
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7155
127k
                   MVT::v8i16, 3, 1, 2, 0, 
7156
127k
    0, 
7157
127k
   0, 
7158
127k
  102, 
7159
127k
   OPC_RecordChild0,
7160
127k
   OPC_MoveChild1,
7161
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7162
127k
   OPC_MoveChild0,
7163
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7164
127k
   OPC_Scope, 23, 
7165
127k
    OPC_RecordChild0,
7166
127k
    OPC_CheckChild1Same, 0,
7167
127k
    OPC_MoveSibling1,
7168
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7169
127k
    OPC_RecordChild0,
7170
127k
    OPC_MoveChild1,
7171
127k
    OPC_CheckImmAllOnesV,
7172
127k
    OPC_MoveParent,
7173
127k
    OPC_MoveParent,
7174
127k
    OPC_MoveParent,
7175
127k
    OPC_CheckType, MVT::v8i16,
7176
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7177
127k
                  MVT::v8i16, 3, 0, 1, 2, 
7178
127k
   23, 
7179
127k
    OPC_CheckChild0Same, 0,
7180
127k
    OPC_RecordChild1,
7181
127k
    OPC_MoveSibling1,
7182
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7183
127k
    OPC_RecordChild0,
7184
127k
    OPC_MoveChild1,
7185
127k
    OPC_CheckImmAllOnesV,
7186
127k
    OPC_MoveParent,
7187
127k
    OPC_MoveParent,
7188
127k
    OPC_MoveParent,
7189
127k
    OPC_CheckType, MVT::v8i16,
7190
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7191
127k
                  MVT::v8i16, 3, 0, 1, 2, 
7192
127k
   42, 
7193
127k
    OPC_RecordChild0,
7194
127k
    OPC_MoveChild1,
7195
127k
    OPC_CheckImmAllOnesV,
7196
127k
    OPC_MoveParent,
7197
127k
    OPC_MoveSibling1,
7198
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7199
127k
    OPC_Scope, 15, 
7200
127k
     OPC_RecordChild0,
7201
127k
     OPC_CheckChild1Same, 0,
7202
127k
     OPC_MoveParent,
7203
127k
     OPC_MoveParent,
7204
127k
     OPC_CheckType, MVT::v8i16,
7205
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7206
127k
                   MVT::v8i16, 3, 0, 2, 1, 
7207
127k
    15, 
7208
127k
     OPC_CheckChild0Same, 0,
7209
127k
     OPC_RecordChild1,
7210
127k
     OPC_MoveParent,
7211
127k
     OPC_MoveParent,
7212
127k
     OPC_CheckType, MVT::v8i16,
7213
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7214
127k
                   MVT::v8i16, 3, 0, 2, 1, 
7215
127k
    0, 
7216
127k
   0, 
7217
127k
  73, 
7218
127k
   OPC_MoveChild0,
7219
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7220
127k
   OPC_MoveChild0,
7221
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7222
127k
   OPC_RecordChild0,
7223
127k
   OPC_Scope, 23, 
7224
127k
    OPC_RecordChild1,
7225
127k
    OPC_MoveSibling1,
7226
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7227
127k
    OPC_RecordChild0,
7228
127k
    OPC_MoveChild1,
7229
127k
    OPC_CheckImmAllOnesV,
7230
127k
    OPC_MoveParent,
7231
127k
    OPC_MoveParent,
7232
127k
    OPC_MoveParent,
7233
127k
    OPC_CheckChild1Same, 0,
7234
127k
    OPC_CheckType, MVT::v4i32,
7235
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7236
127k
                  MVT::v4i32, 3, 0, 1, 2, 
7237
127k
   37, 
7238
127k
    OPC_MoveChild1,
7239
127k
    OPC_CheckImmAllOnesV,
7240
127k
    OPC_MoveParent,
7241
127k
    OPC_MoveSibling1,
7242
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7243
127k
    OPC_RecordChild0,
7244
127k
    OPC_RecordChild1,
7245
127k
    OPC_MoveParent,
7246
127k
    OPC_MoveParent,
7247
127k
    OPC_CheckType, MVT::v4i32,
7248
127k
    OPC_Scope, 10, 
7249
127k
     OPC_CheckChild1Same, 2,
7250
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7251
127k
                   MVT::v4i32, 3, 2, 1, 0, 
7252
127k
    10, 
7253
127k
     OPC_CheckChild1Same, 1,
7254
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7255
127k
                   MVT::v4i32, 3, 1, 2, 0, 
7256
127k
    0, 
7257
127k
   0, 
7258
127k
  102, 
7259
127k
   OPC_RecordChild0,
7260
127k
   OPC_MoveChild1,
7261
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7262
127k
   OPC_MoveChild0,
7263
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7264
127k
   OPC_Scope, 23, 
7265
127k
    OPC_RecordChild0,
7266
127k
    OPC_CheckChild1Same, 0,
7267
127k
    OPC_MoveSibling1,
7268
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7269
127k
    OPC_RecordChild0,
7270
127k
    OPC_MoveChild1,
7271
127k
    OPC_CheckImmAllOnesV,
7272
127k
    OPC_MoveParent,
7273
127k
    OPC_MoveParent,
7274
127k
    OPC_MoveParent,
7275
127k
    OPC_CheckType, MVT::v4i32,
7276
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7277
127k
                  MVT::v4i32, 3, 0, 1, 2, 
7278
127k
   23, 
7279
127k
    OPC_CheckChild0Same, 0,
7280
127k
    OPC_RecordChild1,
7281
127k
    OPC_MoveSibling1,
7282
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7283
127k
    OPC_RecordChild0,
7284
127k
    OPC_MoveChild1,
7285
127k
    OPC_CheckImmAllOnesV,
7286
127k
    OPC_MoveParent,
7287
127k
    OPC_MoveParent,
7288
127k
    OPC_MoveParent,
7289
127k
    OPC_CheckType, MVT::v4i32,
7290
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7291
127k
                  MVT::v4i32, 3, 0, 1, 2, 
7292
127k
   42, 
7293
127k
    OPC_RecordChild0,
7294
127k
    OPC_MoveChild1,
7295
127k
    OPC_CheckImmAllOnesV,
7296
127k
    OPC_MoveParent,
7297
127k
    OPC_MoveSibling1,
7298
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7299
127k
    OPC_Scope, 15, 
7300
127k
     OPC_RecordChild0,
7301
127k
     OPC_CheckChild1Same, 0,
7302
127k
     OPC_MoveParent,
7303
127k
     OPC_MoveParent,
7304
127k
     OPC_CheckType, MVT::v4i32,
7305
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7306
127k
                   MVT::v4i32, 3, 0, 2, 1, 
7307
127k
    15, 
7308
127k
     OPC_CheckChild0Same, 0,
7309
127k
     OPC_RecordChild1,
7310
127k
     OPC_MoveParent,
7311
127k
     OPC_MoveParent,
7312
127k
     OPC_CheckType, MVT::v4i32,
7313
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7314
127k
                   MVT::v4i32, 3, 0, 2, 1, 
7315
127k
    0, 
7316
127k
   0, 
7317
127k
  73, 
7318
127k
   OPC_MoveChild0,
7319
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7320
127k
   OPC_MoveChild0,
7321
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7322
127k
   OPC_RecordChild0,
7323
127k
   OPC_Scope, 23, 
7324
127k
    OPC_RecordChild1,
7325
127k
    OPC_MoveSibling1,
7326
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7327
127k
    OPC_RecordChild0,
7328
127k
    OPC_MoveChild1,
7329
127k
    OPC_CheckImmAllOnesV,
7330
127k
    OPC_MoveParent,
7331
127k
    OPC_MoveParent,
7332
127k
    OPC_MoveParent,
7333
127k
    OPC_CheckChild1Same, 0,
7334
127k
    OPC_CheckType, MVT::v2i64,
7335
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7336
127k
                  MVT::v2i64, 3, 0, 1, 2, 
7337
127k
   37, 
7338
127k
    OPC_MoveChild1,
7339
127k
    OPC_CheckImmAllOnesV,
7340
127k
    OPC_MoveParent,
7341
127k
    OPC_MoveSibling1,
7342
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7343
127k
    OPC_RecordChild0,
7344
127k
    OPC_RecordChild1,
7345
127k
    OPC_MoveParent,
7346
127k
    OPC_MoveParent,
7347
127k
    OPC_CheckType, MVT::v2i64,
7348
127k
    OPC_Scope, 10, 
7349
127k
     OPC_CheckChild1Same, 2,
7350
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7351
127k
                   MVT::v2i64, 3, 2, 1, 0, 
7352
127k
    10, 
7353
127k
     OPC_CheckChild1Same, 1,
7354
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7355
127k
                   MVT::v2i64, 3, 1, 2, 0, 
7356
127k
    0, 
7357
127k
   0, 
7358
127k
  102, 
7359
127k
   OPC_RecordChild0,
7360
127k
   OPC_MoveChild1,
7361
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7362
127k
   OPC_MoveChild0,
7363
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7364
127k
   OPC_Scope, 23, 
7365
127k
    OPC_RecordChild0,
7366
127k
    OPC_CheckChild1Same, 0,
7367
127k
    OPC_MoveSibling1,
7368
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7369
127k
    OPC_RecordChild0,
7370
127k
    OPC_MoveChild1,
7371
127k
    OPC_CheckImmAllOnesV,
7372
127k
    OPC_MoveParent,
7373
127k
    OPC_MoveParent,
7374
127k
    OPC_MoveParent,
7375
127k
    OPC_CheckType, MVT::v2i64,
7376
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7377
127k
                  MVT::v2i64, 3, 0, 1, 2, 
7378
127k
   23, 
7379
127k
    OPC_CheckChild0Same, 0,
7380
127k
    OPC_RecordChild1,
7381
127k
    OPC_MoveSibling1,
7382
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7383
127k
    OPC_RecordChild0,
7384
127k
    OPC_MoveChild1,
7385
127k
    OPC_CheckImmAllOnesV,
7386
127k
    OPC_MoveParent,
7387
127k
    OPC_MoveParent,
7388
127k
    OPC_MoveParent,
7389
127k
    OPC_CheckType, MVT::v2i64,
7390
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7391
127k
                  MVT::v2i64, 3, 0, 1, 2, 
7392
127k
   42, 
7393
127k
    OPC_RecordChild0,
7394
127k
    OPC_MoveChild1,
7395
127k
    OPC_CheckImmAllOnesV,
7396
127k
    OPC_MoveParent,
7397
127k
    OPC_MoveSibling1,
7398
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7399
127k
    OPC_Scope, 15, 
7400
127k
     OPC_RecordChild0,
7401
127k
     OPC_CheckChild1Same, 0,
7402
127k
     OPC_MoveParent,
7403
127k
     OPC_MoveParent,
7404
127k
     OPC_CheckType, MVT::v2i64,
7405
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7406
127k
                   MVT::v2i64, 3, 0, 2, 1, 
7407
127k
    15, 
7408
127k
     OPC_CheckChild0Same, 0,
7409
127k
     OPC_RecordChild1,
7410
127k
     OPC_MoveParent,
7411
127k
     OPC_MoveParent,
7412
127k
     OPC_CheckType, MVT::v2i64,
7413
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7414
127k
                   MVT::v2i64, 3, 0, 2, 1, 
7415
127k
    0, 
7416
127k
   0, 
7417
127k
  112, 
7418
127k
   OPC_MoveChild0,
7419
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7420
127k
   OPC_Scope, 69, 
7421
127k
    OPC_MoveChild0,
7422
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7423
127k
    OPC_RecordChild0,
7424
127k
    OPC_RecordChild1,
7425
127k
    OPC_MoveParent,
7426
127k
    OPC_RecordChild1,
7427
127k
    OPC_MoveParent,
7428
127k
    OPC_Scope, 44, 
7429
127k
     OPC_CheckChild1Same, 1,
7430
127k
     OPC_SwitchType , 8, MVT::v16i8,
7431
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7432
127k
                    MVT::v16i8, 3, 0, 1, 2, 
7433
127k
     8, MVT::v8i16,
7434
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7435
127k
                    MVT::v8i16, 3, 0, 1, 2, 
7436
127k
     8, MVT::v4i32,
7437
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7438
127k
                    MVT::v4i32, 3, 0, 1, 2, 
7439
127k
     8, MVT::v2i64,
7440
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7441
127k
                    MVT::v2i64, 3, 0, 1, 2, 
7442
127k
     0,
7443
127k
    12, 
7444
127k
     OPC_CheckChild1Same, 0,
7445
127k
     OPC_CheckType, MVT::v16i8,
7446
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7447
127k
                   MVT::v16i8, 3, 1, 0, 2, 
7448
127k
    0, 
7449
127k
   35, 
7450
127k
    OPC_RecordChild0,
7451
127k
    OPC_MoveChild1,
7452
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7453
127k
    OPC_RecordChild0,
7454
127k
    OPC_RecordChild1,
7455
127k
    OPC_MoveParent,
7456
127k
    OPC_MoveParent,
7457
127k
    OPC_CheckType, MVT::v16i8,
7458
127k
    OPC_Scope, 10, 
7459
127k
     OPC_CheckChild1Same, 2,
7460
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7461
127k
                   MVT::v16i8, 3, 1, 2, 0, 
7462
127k
    10, 
7463
127k
     OPC_CheckChild1Same, 1,
7464
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7465
127k
                   MVT::v16i8, 3, 2, 1, 0, 
7466
127k
    0, 
7467
127k
   0, 
7468
127k
  88, 
7469
127k
   OPC_RecordChild0,
7470
127k
   OPC_MoveChild1,
7471
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7472
127k
   OPC_Scope, 40, 
7473
127k
    OPC_MoveChild0,
7474
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7475
127k
    OPC_Scope, 16, 
7476
127k
     OPC_RecordChild0,
7477
127k
     OPC_CheckChild1Same, 0,
7478
127k
     OPC_MoveParent,
7479
127k
     OPC_RecordChild1,
7480
127k
     OPC_MoveParent,
7481
127k
     OPC_CheckType, MVT::v16i8,
7482
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7483
127k
                   MVT::v16i8, 3, 1, 0, 2, 
7484
127k
    16, 
7485
127k
     OPC_CheckChild0Same, 0,
7486
127k
     OPC_RecordChild1,
7487
127k
     OPC_MoveParent,
7488
127k
     OPC_RecordChild1,
7489
127k
     OPC_MoveParent,
7490
127k
     OPC_CheckType, MVT::v16i8,
7491
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7492
127k
                   MVT::v16i8, 3, 1, 0, 2, 
7493
127k
    0, 
7494
127k
   39, 
7495
127k
    OPC_RecordChild0,
7496
127k
    OPC_MoveChild1,
7497
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7498
127k
    OPC_Scope, 15, 
7499
127k
     OPC_RecordChild0,
7500
127k
     OPC_CheckChild1Same, 0,
7501
127k
     OPC_MoveParent,
7502
127k
     OPC_MoveParent,
7503
127k
     OPC_CheckType, MVT::v16i8,
7504
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7505
127k
                   MVT::v16i8, 3, 2, 0, 1, 
7506
127k
    15, 
7507
127k
     OPC_CheckChild0Same, 0,
7508
127k
     OPC_RecordChild1,
7509
127k
     OPC_MoveParent,
7510
127k
     OPC_MoveParent,
7511
127k
     OPC_CheckType, MVT::v16i8,
7512
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7513
127k
                   MVT::v16i8, 3, 2, 0, 1, 
7514
127k
    0, 
7515
127k
   0, 
7516
127k
  64, 
7517
127k
   OPC_MoveChild0,
7518
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7519
127k
   OPC_Scope, 21, 
7520
127k
    OPC_MoveChild0,
7521
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7522
127k
    OPC_RecordChild0,
7523
127k
    OPC_RecordChild1,
7524
127k
    OPC_MoveParent,
7525
127k
    OPC_RecordChild1,
7526
127k
    OPC_MoveParent,
7527
127k
    OPC_CheckChild1Same, 0,
7528
127k
    OPC_CheckType, MVT::v8i16,
7529
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7530
127k
                  MVT::v8i16, 3, 1, 0, 2, 
7531
127k
   35, 
7532
127k
    OPC_RecordChild0,
7533
127k
    OPC_MoveChild1,
7534
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7535
127k
    OPC_RecordChild0,
7536
127k
    OPC_RecordChild1,
7537
127k
    OPC_MoveParent,
7538
127k
    OPC_MoveParent,
7539
127k
    OPC_CheckType, MVT::v8i16,
7540
127k
    OPC_Scope, 10, 
7541
127k
     OPC_CheckChild1Same, 2,
7542
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7543
127k
                   MVT::v8i16, 3, 1, 2, 0, 
7544
127k
    10, 
7545
127k
     OPC_CheckChild1Same, 1,
7546
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7547
127k
                   MVT::v8i16, 3, 2, 1, 0, 
7548
127k
    0, 
7549
127k
   0, 
7550
127k
  88, 
7551
127k
   OPC_RecordChild0,
7552
127k
   OPC_MoveChild1,
7553
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7554
127k
   OPC_Scope, 40, 
7555
127k
    OPC_MoveChild0,
7556
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7557
127k
    OPC_Scope, 16, 
7558
127k
     OPC_RecordChild0,
7559
127k
     OPC_CheckChild1Same, 0,
7560
127k
     OPC_MoveParent,
7561
127k
     OPC_RecordChild1,
7562
127k
     OPC_MoveParent,
7563
127k
     OPC_CheckType, MVT::v8i16,
7564
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7565
127k
                   MVT::v8i16, 3, 1, 0, 2, 
7566
127k
    16, 
7567
127k
     OPC_CheckChild0Same, 0,
7568
127k
     OPC_RecordChild1,
7569
127k
     OPC_MoveParent,
7570
127k
     OPC_RecordChild1,
7571
127k
     OPC_MoveParent,
7572
127k
     OPC_CheckType, MVT::v8i16,
7573
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7574
127k
                   MVT::v8i16, 3, 1, 0, 2, 
7575
127k
    0, 
7576
127k
   39, 
7577
127k
    OPC_RecordChild0,
7578
127k
    OPC_MoveChild1,
7579
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7580
127k
    OPC_Scope, 15, 
7581
127k
     OPC_RecordChild0,
7582
127k
     OPC_CheckChild1Same, 0,
7583
127k
     OPC_MoveParent,
7584
127k
     OPC_MoveParent,
7585
127k
     OPC_CheckType, MVT::v8i16,
7586
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7587
127k
                   MVT::v8i16, 3, 2, 0, 1, 
7588
127k
    15, 
7589
127k
     OPC_CheckChild0Same, 0,
7590
127k
     OPC_RecordChild1,
7591
127k
     OPC_MoveParent,
7592
127k
     OPC_MoveParent,
7593
127k
     OPC_CheckType, MVT::v8i16,
7594
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7595
127k
                   MVT::v8i16, 3, 2, 0, 1, 
7596
127k
    0, 
7597
127k
   0, 
7598
127k
  64, 
7599
127k
   OPC_MoveChild0,
7600
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7601
127k
   OPC_Scope, 21, 
7602
127k
    OPC_MoveChild0,
7603
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7604
127k
    OPC_RecordChild0,
7605
127k
    OPC_RecordChild1,
7606
127k
    OPC_MoveParent,
7607
127k
    OPC_RecordChild1,
7608
127k
    OPC_MoveParent,
7609
127k
    OPC_CheckChild1Same, 0,
7610
127k
    OPC_CheckType, MVT::v4i32,
7611
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7612
127k
                  MVT::v4i32, 3, 1, 0, 2, 
7613
127k
   35, 
7614
127k
    OPC_RecordChild0,
7615
127k
    OPC_MoveChild1,
7616
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7617
127k
    OPC_RecordChild0,
7618
127k
    OPC_RecordChild1,
7619
127k
    OPC_MoveParent,
7620
127k
    OPC_MoveParent,
7621
127k
    OPC_CheckType, MVT::v4i32,
7622
127k
    OPC_Scope, 10, 
7623
127k
     OPC_CheckChild1Same, 2,
7624
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7625
127k
                   MVT::v4i32, 3, 1, 2, 0, 
7626
127k
    10, 
7627
127k
     OPC_CheckChild1Same, 1,
7628
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7629
127k
                   MVT::v4i32, 3, 2, 1, 0, 
7630
127k
    0, 
7631
127k
   0, 
7632
127k
  88, 
7633
127k
   OPC_RecordChild0,
7634
127k
   OPC_MoveChild1,
7635
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7636
127k
   OPC_Scope, 40, 
7637
127k
    OPC_MoveChild0,
7638
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7639
127k
    OPC_Scope, 16, 
7640
127k
     OPC_RecordChild0,
7641
127k
     OPC_CheckChild1Same, 0,
7642
127k
     OPC_MoveParent,
7643
127k
     OPC_RecordChild1,
7644
127k
     OPC_MoveParent,
7645
127k
     OPC_CheckType, MVT::v4i32,
7646
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7647
127k
                   MVT::v4i32, 3, 1, 0, 2, 
7648
127k
    16, 
7649
127k
     OPC_CheckChild0Same, 0,
7650
127k
     OPC_RecordChild1,
7651
127k
     OPC_MoveParent,
7652
127k
     OPC_RecordChild1,
7653
127k
     OPC_MoveParent,
7654
127k
     OPC_CheckType, MVT::v4i32,
7655
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7656
127k
                   MVT::v4i32, 3, 1, 0, 2, 
7657
127k
    0, 
7658
127k
   39, 
7659
127k
    OPC_RecordChild0,
7660
127k
    OPC_MoveChild1,
7661
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7662
127k
    OPC_Scope, 15, 
7663
127k
     OPC_RecordChild0,
7664
127k
     OPC_CheckChild1Same, 0,
7665
127k
     OPC_MoveParent,
7666
127k
     OPC_MoveParent,
7667
127k
     OPC_CheckType, MVT::v4i32,
7668
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7669
127k
                   MVT::v4i32, 3, 2, 0, 1, 
7670
127k
    15, 
7671
127k
     OPC_CheckChild0Same, 0,
7672
127k
     OPC_RecordChild1,
7673
127k
     OPC_MoveParent,
7674
127k
     OPC_MoveParent,
7675
127k
     OPC_CheckType, MVT::v4i32,
7676
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7677
127k
                   MVT::v4i32, 3, 2, 0, 1, 
7678
127k
    0, 
7679
127k
   0, 
7680
127k
  64, 
7681
127k
   OPC_MoveChild0,
7682
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7683
127k
   OPC_Scope, 21, 
7684
127k
    OPC_MoveChild0,
7685
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7686
127k
    OPC_RecordChild0,
7687
127k
    OPC_RecordChild1,
7688
127k
    OPC_MoveParent,
7689
127k
    OPC_RecordChild1,
7690
127k
    OPC_MoveParent,
7691
127k
    OPC_CheckChild1Same, 0,
7692
127k
    OPC_CheckType, MVT::v2i64,
7693
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7694
127k
                  MVT::v2i64, 3, 1, 0, 2, 
7695
127k
   35, 
7696
127k
    OPC_RecordChild0,
7697
127k
    OPC_MoveChild1,
7698
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7699
127k
    OPC_RecordChild0,
7700
127k
    OPC_RecordChild1,
7701
127k
    OPC_MoveParent,
7702
127k
    OPC_MoveParent,
7703
127k
    OPC_CheckType, MVT::v2i64,
7704
127k
    OPC_Scope, 10, 
7705
127k
     OPC_CheckChild1Same, 2,
7706
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7707
127k
                   MVT::v2i64, 3, 1, 2, 0, 
7708
127k
    10, 
7709
127k
     OPC_CheckChild1Same, 1,
7710
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7711
127k
                   MVT::v2i64, 3, 2, 1, 0, 
7712
127k
    0, 
7713
127k
   0, 
7714
127k
  43|128,1, 
7715
127k
   OPC_RecordChild0,
7716
127k
   OPC_Scope, 127, 
7717
127k
    OPC_MoveChild1,
7718
127k
    OPC_Scope, 86, 
7719
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::AND),
7720
127k
     OPC_Scope, 40, 
7721
127k
      OPC_MoveChild0,
7722
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7723
127k
      OPC_Scope, 16, 
7724
127k
       OPC_RecordChild0,
7725
127k
       OPC_CheckChild1Same, 0,
7726
127k
       OPC_MoveParent,
7727
127k
       OPC_RecordChild1,
7728
127k
       OPC_MoveParent,
7729
127k
       OPC_CheckType, MVT::v2i64,
7730
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7731
127k
                     MVT::v2i64, 3, 1, 0, 2, 
7732
127k
      16, 
7733
127k
       OPC_CheckChild0Same, 0,
7734
127k
       OPC_RecordChild1,
7735
127k
       OPC_MoveParent,
7736
127k
       OPC_RecordChild1,
7737
127k
       OPC_MoveParent,
7738
127k
       OPC_CheckType, MVT::v2i64,
7739
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7740
127k
                     MVT::v2i64, 3, 1, 0, 2, 
7741
127k
      0, 
7742
127k
     39, 
7743
127k
      OPC_RecordChild0,
7744
127k
      OPC_MoveChild1,
7745
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
7746
127k
      OPC_Scope, 15, 
7747
127k
       OPC_RecordChild0,
7748
127k
       OPC_CheckChild1Same, 0,
7749
127k
       OPC_MoveParent,
7750
127k
       OPC_MoveParent,
7751
127k
       OPC_CheckType, MVT::v2i64,
7752
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7753
127k
                     MVT::v2i64, 3, 2, 0, 1, 
7754
127k
      15, 
7755
127k
       OPC_CheckChild0Same, 0,
7756
127k
       OPC_RecordChild1,
7757
127k
       OPC_MoveParent,
7758
127k
       OPC_MoveParent,
7759
127k
       OPC_CheckType, MVT::v2i64,
7760
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
7761
127k
                     MVT::v2i64, 3, 2, 0, 1, 
7762
127k
      0, 
7763
127k
     0, 
7764
127k
    36, 
7765
127k
     OPC_CheckImmAllOnesV,
7766
127k
     OPC_MoveParent,
7767
127k
     OPC_SwitchType , 6, MVT::v16i8,
7768
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NOT),
7769
127k
                    MVT::v16i8, 1, 0, 
7770
127k
     6, MVT::v8i16,
7771
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NOT),
7772
127k
                    MVT::v8i16, 1, 0, 
7773
127k
     6, MVT::v4i32,
7774
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NOT),
7775
127k
                    MVT::v4i32, 1, 0, 
7776
127k
     6, MVT::v2i64,
7777
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NOT),
7778
127k
                    MVT::v2i64, 1, 0, 
7779
127k
     0,
7780
127k
    0, 
7781
127k
   39, 
7782
127k
    OPC_RecordChild1,
7783
127k
    OPC_SwitchType , 7, MVT::v16i8,
7784
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::XOR),
7785
127k
                   MVT::v16i8, 2, 0, 1, 
7786
127k
    7, MVT::v8i16,
7787
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::XOR),
7788
127k
                   MVT::v8i16, 2, 0, 1, 
7789
127k
    7, MVT::v4i32,
7790
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::XOR),
7791
127k
                   MVT::v4i32, 2, 0, 1, 
7792
127k
    7, MVT::v2i64,
7793
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::XOR),
7794
127k
                   MVT::v2i64, 2, 0, 1, 
7795
127k
    0,
7796
127k
   0, 
7797
127k
  0, 
7798
127k
 21, TARGET_VAL(ISD::CTLZ),
7799
127k
  OPC_RecordChild0,
7800
127k
  OPC_SwitchType , 7, MVT::i32,
7801
127k
   OPC_CheckChild0TypeI32,
7802
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CLZ_I32),
7803
127k
                 MVT::i32, 1, 0, 
7804
127k
  7, MVT::i64,
7805
127k
   OPC_CheckChild0TypeI64,
7806
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CLZ_I64),
7807
127k
                 MVT::i64, 1, 0, 
7808
127k
  0,
7809
127k
 21, TARGET_VAL(ISD::CTTZ),
7810
127k
  OPC_RecordChild0,
7811
127k
  OPC_SwitchType , 7, MVT::i32,
7812
127k
   OPC_CheckChild0TypeI32,
7813
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CTZ_I32),
7814
127k
                 MVT::i32, 1, 0, 
7815
127k
  7, MVT::i64,
7816
127k
   OPC_CheckChild0TypeI64,
7817
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CTZ_I64),
7818
127k
                 MVT::i64, 1, 0, 
7819
127k
  0,
7820
127k
 32, TARGET_VAL(ISD::CTPOP),
7821
127k
  OPC_RecordChild0,
7822
127k
  OPC_SwitchType , 7, MVT::i32,
7823
127k
   OPC_CheckChild0TypeI32,
7824
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::POPCNT_I32),
7825
127k
                 MVT::i32, 1, 0, 
7826
127k
  7, MVT::i64,
7827
127k
   OPC_CheckChild0TypeI64,
7828
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::POPCNT_I64),
7829
127k
                 MVT::i64, 1, 0, 
7830
127k
  9, MVT::v16i8,
7831
127k
   OPC_CheckChild0Type, MVT::v16i8,
7832
127k
   OPC_CheckPatternPredicate0,
7833
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::POPCNT_I8x16),
7834
127k
                 MVT::v16i8, 1, 0, 
7835
127k
  0,
7836
127k
 7, TARGET_VAL(ISD::TRUNCATE),
7837
127k
  OPC_RecordChild0,
7838
127k
  OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_WRAP_I64),
7839
127k
                MVT::i32, 1, 0, 
7840
127k
 7, TARGET_VAL(ISD::SIGN_EXTEND),
7841
127k
  OPC_RecordChild0,
7842
127k
  OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_EXTEND_S_I32),
7843
127k
                MVT::i64, 1, 0, 
7844
127k
 107, TARGET_VAL(ISD::FP_TO_SINT),
7845
127k
  OPC_RecordChild0,
7846
127k
  OPC_Scope, 46, 
7847
127k
   OPC_CheckChild0Type, MVT::f32,
7848
127k
   OPC_SwitchType , 19, MVT::i32,
7849
127k
    OPC_Scope, 7, 
7850
127k
     OPC_CheckPatternPredicate7,
7851
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_S_SAT_F32),
7852
127k
                   MVT::i32, 1, 0, 
7853
127k
    8, 
7854
127k
     OPC_CheckPatternPredicate, 8,
7855
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FP_TO_SINT_I32_F32),
7856
127k
                   MVT::i32, 1, 0, 
7857
127k
    0, 
7858
127k
   19, MVT::i64,
7859
127k
    OPC_Scope, 7, 
7860
127k
     OPC_CheckPatternPredicate7,
7861
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_S_SAT_F32),
7862
127k
                   MVT::i64, 1, 0, 
7863
127k
    8, 
7864
127k
     OPC_CheckPatternPredicate, 8,
7865
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FP_TO_SINT_I64_F32),
7866
127k
                   MVT::i64, 1, 0, 
7867
127k
    0, 
7868
127k
   0,
7869
127k
  46, 
7870
127k
   OPC_CheckChild0Type, MVT::f64,
7871
127k
   OPC_SwitchType , 19, MVT::i32,
7872
127k
    OPC_Scope, 7, 
7873
127k
     OPC_CheckPatternPredicate7,
7874
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_S_SAT_F64),
7875
127k
                   MVT::i32, 1, 0, 
7876
127k
    8, 
7877
127k
     OPC_CheckPatternPredicate, 8,
7878
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FP_TO_SINT_I32_F64),
7879
127k
                   MVT::i32, 1, 0, 
7880
127k
    0, 
7881
127k
   19, MVT::i64,
7882
127k
    OPC_Scope, 7, 
7883
127k
     OPC_CheckPatternPredicate7,
7884
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_S_SAT_F64),
7885
127k
                   MVT::i64, 1, 0, 
7886
127k
    8, 
7887
127k
     OPC_CheckPatternPredicate, 8,
7888
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FP_TO_SINT_I64_F64),
7889
127k
                   MVT::i64, 1, 0, 
7890
127k
    0, 
7891
127k
   0,
7892
127k
  9, 
7893
127k
   OPC_CheckType, MVT::v4i32,
7894
127k
   OPC_CheckPatternPredicate0,
7895
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::fp_to_sint_I32x4),
7896
127k
                 MVT::v4i32, 1, 0, 
7897
127k
  0, 
7898
127k
 107, TARGET_VAL(ISD::FP_TO_UINT),
7899
127k
  OPC_RecordChild0,
7900
127k
  OPC_Scope, 46, 
7901
127k
   OPC_CheckChild0Type, MVT::f32,
7902
127k
   OPC_SwitchType , 19, MVT::i32,
7903
127k
    OPC_Scope, 7, 
7904
127k
     OPC_CheckPatternPredicate7,
7905
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_U_SAT_F32),
7906
127k
                   MVT::i32, 1, 0, 
7907
127k
    8, 
7908
127k
     OPC_CheckPatternPredicate, 8,
7909
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FP_TO_UINT_I32_F32),
7910
127k
                   MVT::i32, 1, 0, 
7911
127k
    0, 
7912
127k
   19, MVT::i64,
7913
127k
    OPC_Scope, 7, 
7914
127k
     OPC_CheckPatternPredicate7,
7915
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_U_SAT_F32),
7916
127k
                   MVT::i64, 1, 0, 
7917
127k
    8, 
7918
127k
     OPC_CheckPatternPredicate, 8,
7919
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FP_TO_UINT_I64_F32),
7920
127k
                   MVT::i64, 1, 0, 
7921
127k
    0, 
7922
127k
   0,
7923
127k
  46, 
7924
127k
   OPC_CheckChild0Type, MVT::f64,
7925
127k
   OPC_SwitchType , 19, MVT::i32,
7926
127k
    OPC_Scope, 7, 
7927
127k
     OPC_CheckPatternPredicate7,
7928
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_U_SAT_F64),
7929
127k
                   MVT::i32, 1, 0, 
7930
127k
    8, 
7931
127k
     OPC_CheckPatternPredicate, 8,
7932
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FP_TO_UINT_I32_F64),
7933
127k
                   MVT::i32, 1, 0, 
7934
127k
    0, 
7935
127k
   19, MVT::i64,
7936
127k
    OPC_Scope, 7, 
7937
127k
     OPC_CheckPatternPredicate7,
7938
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_U_SAT_F64),
7939
127k
                   MVT::i64, 1, 0, 
7940
127k
    8, 
7941
127k
     OPC_CheckPatternPredicate, 8,
7942
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FP_TO_UINT_I64_F64),
7943
127k
                   MVT::i64, 1, 0, 
7944
127k
    0, 
7945
127k
   0,
7946
127k
  9, 
7947
127k
   OPC_CheckType, MVT::v4i32,
7948
127k
   OPC_CheckPatternPredicate0,
7949
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::fp_to_uint_I32x4),
7950
127k
                 MVT::v4i32, 1, 0, 
7951
127k
  0, 
7952
127k
 72, TARGET_VAL(ISD::FP_TO_SINT_SAT),
7953
127k
  OPC_RecordChild0,
7954
127k
  OPC_Scope, 27, 
7955
127k
   OPC_CheckChild0Type, MVT::f32,
7956
127k
   OPC_MoveChild1,
7957
127k
   OPC_Scope, 10, 
7958
127k
    OPC_CheckValueType, MVT::i32,
7959
127k
    OPC_MoveParent,
7960
127k
    OPC_CheckTypeI32,
7961
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_S_SAT_F32),
7962
127k
                  MVT::i32, 1, 0, 
7963
127k
   10, 
7964
127k
    OPC_CheckValueType, MVT::i64,
7965
127k
    OPC_MoveParent,
7966
127k
    OPC_CheckTypeI64,
7967
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_S_SAT_F32),
7968
127k
                  MVT::i64, 1, 0, 
7969
127k
   0, 
7970
127k
  27, 
7971
127k
   OPC_CheckChild0Type, MVT::f64,
7972
127k
   OPC_MoveChild1,
7973
127k
   OPC_Scope, 10, 
7974
127k
    OPC_CheckValueType, MVT::i32,
7975
127k
    OPC_MoveParent,
7976
127k
    OPC_CheckTypeI32,
7977
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_S_SAT_F64),
7978
127k
                  MVT::i32, 1, 0, 
7979
127k
   10, 
7980
127k
    OPC_CheckValueType, MVT::i64,
7981
127k
    OPC_MoveParent,
7982
127k
    OPC_CheckTypeI64,
7983
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_S_SAT_F64),
7984
127k
                  MVT::i64, 1, 0, 
7985
127k
   0, 
7986
127k
  12, 
7987
127k
   OPC_MoveChild1,
7988
127k
   OPC_CheckValueType, MVT::i32,
7989
127k
   OPC_MoveParent,
7990
127k
   OPC_CheckType, MVT::v4i32,
7991
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::fp_to_sint_I32x4),
7992
127k
                 MVT::v4i32, 1, 0, 
7993
127k
  0, 
7994
127k
 72, TARGET_VAL(ISD::FP_TO_UINT_SAT),
7995
127k
  OPC_RecordChild0,
7996
127k
  OPC_Scope, 27, 
7997
127k
   OPC_CheckChild0Type, MVT::f32,
7998
127k
   OPC_MoveChild1,
7999
127k
   OPC_Scope, 10, 
8000
127k
    OPC_CheckValueType, MVT::i32,
8001
127k
    OPC_MoveParent,
8002
127k
    OPC_CheckTypeI32,
8003
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_U_SAT_F32),
8004
127k
                  MVT::i32, 1, 0, 
8005
127k
   10, 
8006
127k
    OPC_CheckValueType, MVT::i64,
8007
127k
    OPC_MoveParent,
8008
127k
    OPC_CheckTypeI64,
8009
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_U_SAT_F32),
8010
127k
                  MVT::i64, 1, 0, 
8011
127k
   0, 
8012
127k
  27, 
8013
127k
   OPC_CheckChild0Type, MVT::f64,
8014
127k
   OPC_MoveChild1,
8015
127k
   OPC_Scope, 10, 
8016
127k
    OPC_CheckValueType, MVT::i32,
8017
127k
    OPC_MoveParent,
8018
127k
    OPC_CheckTypeI32,
8019
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_TRUNC_U_SAT_F64),
8020
127k
                  MVT::i32, 1, 0, 
8021
127k
   10, 
8022
127k
    OPC_CheckValueType, MVT::i64,
8023
127k
    OPC_MoveParent,
8024
127k
    OPC_CheckTypeI64,
8025
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_TRUNC_U_SAT_F64),
8026
127k
                  MVT::i64, 1, 0, 
8027
127k
   0, 
8028
127k
  12, 
8029
127k
   OPC_MoveChild1,
8030
127k
   OPC_CheckValueType, MVT::i32,
8031
127k
   OPC_MoveParent,
8032
127k
   OPC_CheckType, MVT::v4i32,
8033
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::fp_to_uint_I32x4),
8034
127k
                 MVT::v4i32, 1, 0, 
8035
127k
  0, 
8036
127k
 95|128,1, TARGET_VAL(ISD::BITCAST),
8037
127k
  OPC_RecordChild0,
8038
127k
  OPC_Scope, 9, 
8039
127k
   OPC_CheckChild0Type, MVT::f32,
8040
127k
   OPC_CheckTypeI32,
8041
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I32_REINTERPRET_F32),
8042
127k
                 MVT::i32, 1, 0, 
8043
127k
  9, 
8044
127k
   OPC_CheckChild0Type, MVT::f64,
8045
127k
   OPC_CheckTypeI64,
8046
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::I64_REINTERPRET_F64),
8047
127k
                 MVT::i64, 1, 0, 
8048
127k
  9, 
8049
127k
   OPC_CheckChild0TypeI32,
8050
127k
   OPC_CheckType, MVT::f32,
8051
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F32_REINTERPRET_I32),
8052
127k
                 MVT::f32, 1, 0, 
8053
127k
  9, 
8054
127k
   OPC_CheckChild0TypeI64,
8055
127k
   OPC_CheckType, MVT::f64,
8056
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F64_REINTERPRET_I64),
8057
127k
                 MVT::f64, 1, 0, 
8058
127k
  29, 
8059
127k
   OPC_CheckChild0Type, MVT::v8i16,
8060
127k
   OPC_SwitchType , 3, MVT::v16i8,
8061
127k
    OPC_CompleteMatch, 1, 0, 
8062
8063
127k
   3, MVT::v4i32,
8064
127k
    OPC_CompleteMatch, 1, 0, 
8065
8066
127k
   3, MVT::v2i64,
8067
127k
    OPC_CompleteMatch, 1, 0, 
8068
8069
127k
   3, MVT::v4f32,
8070
127k
    OPC_CompleteMatch, 1, 0, 
8071
8072
127k
   3, MVT::v2f64,
8073
127k
    OPC_CompleteMatch, 1, 0, 
8074
8075
127k
   0,
8076
127k
  29, 
8077
127k
   OPC_CheckChild0Type, MVT::v4i32,
8078
127k
   OPC_SwitchType , 3, MVT::v16i8,
8079
127k
    OPC_CompleteMatch, 1, 0, 
8080
8081
127k
   3, MVT::v8i16,
8082
127k
    OPC_CompleteMatch, 1, 0, 
8083
8084
127k
   3, MVT::v2i64,
8085
127k
    OPC_CompleteMatch, 1, 0, 
8086
8087
127k
   3, MVT::v4f32,
8088
127k
    OPC_CompleteMatch, 1, 0, 
8089
8090
127k
   3, MVT::v2f64,
8091
127k
    OPC_CompleteMatch, 1, 0, 
8092
8093
127k
   0,
8094
127k
  29, 
8095
127k
   OPC_CheckChild0Type, MVT::v2i64,
8096
127k
   OPC_SwitchType , 3, MVT::v16i8,
8097
127k
    OPC_CompleteMatch, 1, 0, 
8098
8099
127k
   3, MVT::v8i16,
8100
127k
    OPC_CompleteMatch, 1, 0, 
8101
8102
127k
   3, MVT::v4i32,
8103
127k
    OPC_CompleteMatch, 1, 0, 
8104
8105
127k
   3, MVT::v4f32,
8106
127k
    OPC_CompleteMatch, 1, 0, 
8107
8108
127k
   3, MVT::v2f64,
8109
127k
    OPC_CompleteMatch, 1, 0, 
8110
8111
127k
   0,
8112
127k
  29, 
8113
127k
   OPC_CheckChild0Type, MVT::v4f32,
8114
127k
   OPC_SwitchType , 3, MVT::v16i8,
8115
127k
    OPC_CompleteMatch, 1, 0, 
8116
8117
127k
   3, MVT::v8i16,
8118
127k
    OPC_CompleteMatch, 1, 0, 
8119
8120
127k
   3, MVT::v4i32,
8121
127k
    OPC_CompleteMatch, 1, 0, 
8122
8123
127k
   3, MVT::v2i64,
8124
127k
    OPC_CompleteMatch, 1, 0, 
8125
8126
127k
   3, MVT::v2f64,
8127
127k
    OPC_CompleteMatch, 1, 0, 
8128
8129
127k
   0,
8130
127k
  29, 
8131
127k
   OPC_CheckChild0Type, MVT::v2f64,
8132
127k
   OPC_SwitchType , 3, MVT::v16i8,
8133
127k
    OPC_CompleteMatch, 1, 0, 
8134
8135
127k
   3, MVT::v8i16,
8136
127k
    OPC_CompleteMatch, 1, 0, 
8137
8138
127k
   3, MVT::v4i32,
8139
127k
    OPC_CompleteMatch, 1, 0, 
8140
8141
127k
   3, MVT::v2i64,
8142
127k
    OPC_CompleteMatch, 1, 0, 
8143
8144
127k
   3, MVT::v4f32,
8145
127k
    OPC_CompleteMatch, 1, 0, 
8146
8147
127k
   0,
8148
127k
  29, 
8149
127k
   OPC_CheckChild0Type, MVT::v16i8,
8150
127k
   OPC_SwitchType , 3, MVT::v8i16,
8151
127k
    OPC_CompleteMatch, 1, 0, 
8152
8153
127k
   3, MVT::v4i32,
8154
127k
    OPC_CompleteMatch, 1, 0, 
8155
8156
127k
   3, MVT::v2i64,
8157
127k
    OPC_CompleteMatch, 1, 0, 
8158
8159
127k
   3, MVT::v4f32,
8160
127k
    OPC_CompleteMatch, 1, 0, 
8161
8162
127k
   3, MVT::v2f64,
8163
127k
    OPC_CompleteMatch, 1, 0, 
8164
8165
127k
   0,
8166
127k
  0, 
8167
127k
 21, TARGET_VAL(ISD::ConstantFP),
8168
127k
  OPC_RecordNode,
8169
127k
  OPC_SwitchType , 7, MVT::f32,
8170
127k
   OPC_EmitConvertToTarget0,
8171
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_F32),
8172
127k
                 MVT::f32, 1, 1, 
8173
127k
  7, MVT::f64,
8174
127k
   OPC_EmitConvertToTarget0,
8175
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_F64),
8176
127k
                 MVT::f64, 1, 1, 
8177
127k
  0,
8178
127k
 53, TARGET_VAL(ISD::SINT_TO_FP),
8179
127k
  OPC_RecordChild0,
8180
127k
  OPC_Scope, 19, 
8181
127k
   OPC_CheckChild0TypeI32,
8182
127k
   OPC_SwitchType , 6, MVT::f32,
8183
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F32_CONVERT_S_I32),
8184
127k
                  MVT::f32, 1, 0, 
8185
127k
   6, MVT::f64,
8186
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F64_CONVERT_S_I32),
8187
127k
                  MVT::f64, 1, 0, 
8188
127k
   0,
8189
127k
  19, 
8190
127k
   OPC_CheckChild0TypeI64,
8191
127k
   OPC_SwitchType , 6, MVT::f32,
8192
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F32_CONVERT_S_I64),
8193
127k
                  MVT::f32, 1, 0, 
8194
127k
   6, MVT::f64,
8195
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F64_CONVERT_S_I64),
8196
127k
                  MVT::f64, 1, 0, 
8197
127k
   0,
8198
127k
  9, 
8199
127k
   OPC_CheckType, MVT::v4f32,
8200
127k
   OPC_CheckPatternPredicate0,
8201
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::sint_to_fp_F32x4),
8202
127k
                 MVT::v4f32, 1, 0, 
8203
127k
  0, 
8204
127k
 53, TARGET_VAL(ISD::UINT_TO_FP),
8205
127k
  OPC_RecordChild0,
8206
127k
  OPC_Scope, 19, 
8207
127k
   OPC_CheckChild0TypeI32,
8208
127k
   OPC_SwitchType , 6, MVT::f32,
8209
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F32_CONVERT_U_I32),
8210
127k
                  MVT::f32, 1, 0, 
8211
127k
   6, MVT::f64,
8212
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F64_CONVERT_U_I32),
8213
127k
                  MVT::f64, 1, 0, 
8214
127k
   0,
8215
127k
  19, 
8216
127k
   OPC_CheckChild0TypeI64,
8217
127k
   OPC_SwitchType , 6, MVT::f32,
8218
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F32_CONVERT_U_I64),
8219
127k
                  MVT::f32, 1, 0, 
8220
127k
   6, MVT::f64,
8221
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F64_CONVERT_U_I64),
8222
127k
                  MVT::f64, 1, 0, 
8223
127k
   0,
8224
127k
  9, 
8225
127k
   OPC_CheckType, MVT::v4f32,
8226
127k
   OPC_CheckPatternPredicate0,
8227
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::uint_to_fp_F32x4),
8228
127k
                 MVT::v4f32, 1, 0, 
8229
127k
  0, 
8230
127k
 7, TARGET_VAL(ISD::FP_EXTEND),
8231
127k
  OPC_RecordChild0,
8232
127k
  OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F64_PROMOTE_F32),
8233
127k
                MVT::f64, 1, 0, 
8234
127k
 7, TARGET_VAL(ISD::FP_ROUND),
8235
127k
  OPC_RecordChild0,
8236
127k
  OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::F32_DEMOTE_F64),
8237
127k
                MVT::f32, 1, 0, 
8238
127k
 42, TARGET_VAL(ISD::FADD),
8239
127k
  OPC_RecordChild0,
8240
127k
  OPC_RecordChild1,
8241
127k
  OPC_SwitchType , 7, MVT::f32,
8242
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_F32),
8243
127k
                 MVT::f32, 2, 0, 1, 
8244
127k
  7, MVT::f64,
8245
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_F64),
8246
127k
                 MVT::f64, 2, 0, 1, 
8247
127k
  8, MVT::v4f32,
8248
127k
   OPC_CheckPatternPredicate0,
8249
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_F32x4),
8250
127k
                 MVT::v4f32, 2, 0, 1, 
8251
127k
  8, MVT::v2f64,
8252
127k
   OPC_CheckPatternPredicate0,
8253
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_F64x2),
8254
127k
                 MVT::v2f64, 2, 0, 1, 
8255
127k
  0,
8256
127k
 42, TARGET_VAL(ISD::FSUB),
8257
127k
  OPC_RecordChild0,
8258
127k
  OPC_RecordChild1,
8259
127k
  OPC_SwitchType , 7, MVT::f32,
8260
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_F32),
8261
127k
                 MVT::f32, 2, 0, 1, 
8262
127k
  7, MVT::f64,
8263
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_F64),
8264
127k
                 MVT::f64, 2, 0, 1, 
8265
127k
  8, MVT::v4f32,
8266
127k
   OPC_CheckPatternPredicate0,
8267
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_F32x4),
8268
127k
                 MVT::v4f32, 2, 0, 1, 
8269
127k
  8, MVT::v2f64,
8270
127k
   OPC_CheckPatternPredicate0,
8271
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SUB_F64x2),
8272
127k
                 MVT::v2f64, 2, 0, 1, 
8273
127k
  0,
8274
127k
 42, TARGET_VAL(ISD::FMUL),
8275
127k
  OPC_RecordChild0,
8276
127k
  OPC_RecordChild1,
8277
127k
  OPC_SwitchType , 7, MVT::f32,
8278
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MUL_F32),
8279
127k
                 MVT::f32, 2, 0, 1, 
8280
127k
  7, MVT::f64,
8281
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MUL_F64),
8282
127k
                 MVT::f64, 2, 0, 1, 
8283
127k
  8, MVT::v4f32,
8284
127k
   OPC_CheckPatternPredicate0,
8285
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MUL_F32x4),
8286
127k
                 MVT::v4f32, 2, 0, 1, 
8287
127k
  8, MVT::v2f64,
8288
127k
   OPC_CheckPatternPredicate0,
8289
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MUL_F64x2),
8290
127k
                 MVT::v2f64, 2, 0, 1, 
8291
127k
  0,
8292
127k
 42, TARGET_VAL(ISD::FDIV),
8293
127k
  OPC_RecordChild0,
8294
127k
  OPC_RecordChild1,
8295
127k
  OPC_SwitchType , 7, MVT::f32,
8296
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::DIV_F32),
8297
127k
                 MVT::f32, 2, 0, 1, 
8298
127k
  7, MVT::f64,
8299
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::DIV_F64),
8300
127k
                 MVT::f64, 2, 0, 1, 
8301
127k
  8, MVT::v4f32,
8302
127k
   OPC_CheckPatternPredicate0,
8303
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::DIV_F32x4),
8304
127k
                 MVT::v4f32, 2, 0, 1, 
8305
127k
  8, MVT::v2f64,
8306
127k
   OPC_CheckPatternPredicate0,
8307
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::DIV_F64x2),
8308
127k
                 MVT::v2f64, 2, 0, 1, 
8309
127k
  0,
8310
127k
 37, TARGET_VAL(ISD::FSQRT),
8311
127k
  OPC_RecordChild0,
8312
127k
  OPC_SwitchType , 6, MVT::f32,
8313
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SQRT_F32),
8314
127k
                 MVT::f32, 1, 0, 
8315
127k
  6, MVT::f64,
8316
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SQRT_F64),
8317
127k
                 MVT::f64, 1, 0, 
8318
127k
  7, MVT::v4f32,
8319
127k
   OPC_CheckPatternPredicate0,
8320
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SQRT_F32x4),
8321
127k
                 MVT::v4f32, 1, 0, 
8322
127k
  7, MVT::v2f64,
8323
127k
   OPC_CheckPatternPredicate0,
8324
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SQRT_F64x2),
8325
127k
                 MVT::v2f64, 1, 0, 
8326
127k
  0,
8327
127k
 37, TARGET_VAL(ISD::FABS),
8328
127k
  OPC_RecordChild0,
8329
127k
  OPC_SwitchType , 6, MVT::f32,
8330
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ABS_F32),
8331
127k
                 MVT::f32, 1, 0, 
8332
127k
  6, MVT::f64,
8333
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ABS_F64),
8334
127k
                 MVT::f64, 1, 0, 
8335
127k
  7, MVT::v4f32,
8336
127k
   OPC_CheckPatternPredicate0,
8337
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ABS_F32x4),
8338
127k
                 MVT::v4f32, 1, 0, 
8339
127k
  7, MVT::v2f64,
8340
127k
   OPC_CheckPatternPredicate0,
8341
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ABS_F64x2),
8342
127k
                 MVT::v2f64, 1, 0, 
8343
127k
  0,
8344
127k
 37, TARGET_VAL(ISD::FNEG),
8345
127k
  OPC_RecordChild0,
8346
127k
  OPC_SwitchType , 6, MVT::f32,
8347
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEG_F32),
8348
127k
                 MVT::f32, 1, 0, 
8349
127k
  6, MVT::f64,
8350
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEG_F64),
8351
127k
                 MVT::f64, 1, 0, 
8352
127k
  7, MVT::v4f32,
8353
127k
   OPC_CheckPatternPredicate0,
8354
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEG_F32x4),
8355
127k
                 MVT::v4f32, 1, 0, 
8356
127k
  7, MVT::v2f64,
8357
127k
   OPC_CheckPatternPredicate0,
8358
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEG_F64x2),
8359
127k
                 MVT::v2f64, 1, 0, 
8360
127k
  0,
8361
127k
 62, TARGET_VAL(ISD::FCOPYSIGN),
8362
127k
  OPC_RecordChild0,
8363
127k
  OPC_RecordChild1,
8364
127k
  OPC_Scope, 28, 
8365
127k
   OPC_CheckChild1Type, MVT::f32,
8366
127k
   OPC_SwitchType , 7, MVT::f32,
8367
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::COPYSIGN_F32),
8368
127k
                  MVT::f32, 2, 0, 1, 
8369
127k
   13, MVT::f64,
8370
127k
    OPC_EmitNode1None, TARGET_VAL(WebAssembly::F64_PROMOTE_F32),
8371
127k
                  MVT::f64, 1, 1, 
8372
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::COPYSIGN_F64),
8373
127k
                  MVT::f64, 2, 0, 2, 
8374
127k
   0,
8375
127k
  28, 
8376
127k
   OPC_CheckChild1Type, MVT::f64,
8377
127k
   OPC_SwitchType , 7, MVT::f64,
8378
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::COPYSIGN_F64),
8379
127k
                  MVT::f64, 2, 0, 1, 
8380
127k
   13, MVT::f32,
8381
127k
    OPC_EmitNode1None, TARGET_VAL(WebAssembly::F32_DEMOTE_F64),
8382
127k
                  MVT::f32, 1, 1, 
8383
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::COPYSIGN_F32),
8384
127k
                  MVT::f32, 2, 0, 2, 
8385
127k
   0,
8386
127k
  0, 
8387
127k
 42, TARGET_VAL(ISD::FMINIMUM),
8388
127k
  OPC_RecordChild0,
8389
127k
  OPC_RecordChild1,
8390
127k
  OPC_SwitchType , 7, MVT::f32,
8391
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MIN_F32),
8392
127k
                 MVT::f32, 2, 0, 1, 
8393
127k
  7, MVT::f64,
8394
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MIN_F64),
8395
127k
                 MVT::f64, 2, 0, 1, 
8396
127k
  8, MVT::v4f32,
8397
127k
   OPC_CheckPatternPredicate0,
8398
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MIN_F32x4),
8399
127k
                 MVT::v4f32, 2, 0, 1, 
8400
127k
  8, MVT::v2f64,
8401
127k
   OPC_CheckPatternPredicate0,
8402
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MIN_F64x2),
8403
127k
                 MVT::v2f64, 2, 0, 1, 
8404
127k
  0,
8405
127k
 42, TARGET_VAL(ISD::FMAXIMUM),
8406
127k
  OPC_RecordChild0,
8407
127k
  OPC_RecordChild1,
8408
127k
  OPC_SwitchType , 7, MVT::f32,
8409
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MAX_F32),
8410
127k
                 MVT::f32, 2, 0, 1, 
8411
127k
  7, MVT::f64,
8412
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MAX_F64),
8413
127k
                 MVT::f64, 2, 0, 1, 
8414
127k
  8, MVT::v4f32,
8415
127k
   OPC_CheckPatternPredicate0,
8416
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MAX_F32x4),
8417
127k
                 MVT::v4f32, 2, 0, 1, 
8418
127k
  8, MVT::v2f64,
8419
127k
   OPC_CheckPatternPredicate0,
8420
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MAX_F64x2),
8421
127k
                 MVT::v2f64, 2, 0, 1, 
8422
127k
  0,
8423
127k
 37, TARGET_VAL(ISD::FCEIL),
8424
127k
  OPC_RecordChild0,
8425
127k
  OPC_SwitchType , 6, MVT::f32,
8426
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CEIL_F32),
8427
127k
                 MVT::f32, 1, 0, 
8428
127k
  6, MVT::f64,
8429
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CEIL_F64),
8430
127k
                 MVT::f64, 1, 0, 
8431
127k
  7, MVT::v4f32,
8432
127k
   OPC_CheckPatternPredicate0,
8433
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CEIL_F32x4),
8434
127k
                 MVT::v4f32, 1, 0, 
8435
127k
  7, MVT::v2f64,
8436
127k
   OPC_CheckPatternPredicate0,
8437
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CEIL_F64x2),
8438
127k
                 MVT::v2f64, 1, 0, 
8439
127k
  0,
8440
127k
 37, TARGET_VAL(ISD::FFLOOR),
8441
127k
  OPC_RecordChild0,
8442
127k
  OPC_SwitchType , 6, MVT::f32,
8443
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FLOOR_F32),
8444
127k
                 MVT::f32, 1, 0, 
8445
127k
  6, MVT::f64,
8446
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FLOOR_F64),
8447
127k
                 MVT::f64, 1, 0, 
8448
127k
  7, MVT::v4f32,
8449
127k
   OPC_CheckPatternPredicate0,
8450
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FLOOR_F32x4),
8451
127k
                 MVT::v4f32, 1, 0, 
8452
127k
  7, MVT::v2f64,
8453
127k
   OPC_CheckPatternPredicate0,
8454
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::FLOOR_F64x2),
8455
127k
                 MVT::v2f64, 1, 0, 
8456
127k
  0,
8457
127k
 37, TARGET_VAL(ISD::FTRUNC),
8458
127k
  OPC_RecordChild0,
8459
127k
  OPC_SwitchType , 6, MVT::f32,
8460
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::TRUNC_F32),
8461
127k
                 MVT::f32, 1, 0, 
8462
127k
  6, MVT::f64,
8463
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::TRUNC_F64),
8464
127k
                 MVT::f64, 1, 0, 
8465
127k
  7, MVT::v4f32,
8466
127k
   OPC_CheckPatternPredicate0,
8467
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::TRUNC_F32x4),
8468
127k
                 MVT::v4f32, 1, 0, 
8469
127k
  7, MVT::v2f64,
8470
127k
   OPC_CheckPatternPredicate0,
8471
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::TRUNC_F64x2),
8472
127k
                 MVT::v2f64, 1, 0, 
8473
127k
  0,
8474
127k
 37, TARGET_VAL(ISD::FNEARBYINT),
8475
127k
  OPC_RecordChild0,
8476
127k
  OPC_SwitchType , 6, MVT::f32,
8477
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F32),
8478
127k
                 MVT::f32, 1, 0, 
8479
127k
  6, MVT::f64,
8480
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F64),
8481
127k
                 MVT::f64, 1, 0, 
8482
127k
  7, MVT::v4f32,
8483
127k
   OPC_CheckPatternPredicate0,
8484
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F32x4),
8485
127k
                 MVT::v4f32, 1, 0, 
8486
127k
  7, MVT::v2f64,
8487
127k
   OPC_CheckPatternPredicate0,
8488
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F64x2),
8489
127k
                 MVT::v2f64, 1, 0, 
8490
127k
  0,
8491
127k
 35, TARGET_VAL(ISD::FRINT),
8492
127k
  OPC_RecordChild0,
8493
127k
  OPC_SwitchType , 6, MVT::f32,
8494
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F32),
8495
127k
                 MVT::f32, 1, 0, 
8496
127k
  6, MVT::f64,
8497
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F64),
8498
127k
                 MVT::f64, 1, 0, 
8499
127k
  6, MVT::v4f32,
8500
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F32x4),
8501
127k
                 MVT::v4f32, 1, 0, 
8502
127k
  6, MVT::v2f64,
8503
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F64x2),
8504
127k
                 MVT::v2f64, 1, 0, 
8505
127k
  0,
8506
127k
 35, TARGET_VAL(ISD::FROUNDEVEN),
8507
127k
  OPC_RecordChild0,
8508
127k
  OPC_SwitchType , 6, MVT::f32,
8509
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F32),
8510
127k
                 MVT::f32, 1, 0, 
8511
127k
  6, MVT::f64,
8512
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F64),
8513
127k
                 MVT::f64, 1, 0, 
8514
127k
  6, MVT::v4f32,
8515
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F32x4),
8516
127k
                 MVT::v4f32, 1, 0, 
8517
127k
  6, MVT::v2f64,
8518
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NEAREST_F64x2),
8519
127k
                 MVT::v2f64, 1, 0, 
8520
127k
  0,
8521
127k
 20|128,3, TARGET_VAL(ISD::BUILD_VECTOR),
8522
127k
  OPC_RecordChild0,
8523
127k
  OPC_MoveChild0,
8524
127k
  OPC_SwitchOpcode , 73|128,2, TARGET_VAL(ISD::Constant),
8525
127k
   OPC_SwitchType , 47|128,2, MVT::i32,
8526
127k
    OPC_Scope, 51|128,1, 
8527
127k
     OPC_CheckPredicate, 8,
8528
127k
     OPC_MoveSibling1,
8529
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8530
127k
     OPC_RecordNode,
8531
127k
     OPC_CheckPredicate, 8,
8532
127k
     OPC_CheckTypeI32,
8533
127k
     OPC_MoveSibling2,
8534
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8535
127k
     OPC_RecordNode,
8536
127k
     OPC_CheckPredicate, 8,
8537
127k
     OPC_CheckTypeI32,
8538
127k
     OPC_MoveSibling3,
8539
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8540
127k
     OPC_RecordNode,
8541
127k
     OPC_CheckPredicate, 8,
8542
127k
     OPC_CheckTypeI32,
8543
127k
     OPC_MoveSibling4,
8544
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8545
127k
     OPC_RecordNode,
8546
127k
     OPC_CheckPredicate, 8,
8547
127k
     OPC_CheckTypeI32,
8548
127k
     OPC_MoveSibling5,
8549
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8550
127k
     OPC_RecordNode,
8551
127k
     OPC_CheckPredicate, 8,
8552
127k
     OPC_CheckTypeI32,
8553
127k
     OPC_MoveSibling6,
8554
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8555
127k
     OPC_RecordNode,
8556
127k
     OPC_CheckPredicate, 8,
8557
127k
     OPC_CheckTypeI32,
8558
127k
     OPC_MoveSibling7,
8559
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8560
127k
     OPC_RecordNode,
8561
127k
     OPC_CheckPredicate, 8,
8562
127k
     OPC_CheckTypeI32,
8563
127k
     OPC_MoveSibling, 8,
8564
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8565
127k
     OPC_RecordNode,
8566
127k
     OPC_CheckPredicate, 8,
8567
127k
     OPC_CheckTypeI32,
8568
127k
     OPC_MoveSibling, 9,
8569
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8570
127k
     OPC_RecordNode,
8571
127k
     OPC_CheckPredicate, 8,
8572
127k
     OPC_CheckTypeI32,
8573
127k
     OPC_MoveSibling, 10,
8574
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8575
127k
     OPC_RecordNode,
8576
127k
     OPC_CheckPredicate, 8,
8577
127k
     OPC_CheckTypeI32,
8578
127k
     OPC_MoveSibling, 11,
8579
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8580
127k
     OPC_RecordNode,
8581
127k
     OPC_CheckPredicate, 8,
8582
127k
     OPC_CheckTypeI32,
8583
127k
     OPC_MoveSibling, 12,
8584
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8585
127k
     OPC_RecordNode,
8586
127k
     OPC_CheckPredicate, 8,
8587
127k
     OPC_CheckTypeI32,
8588
127k
     OPC_MoveSibling, 13,
8589
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8590
127k
     OPC_RecordNode,
8591
127k
     OPC_CheckPredicate, 8,
8592
127k
     OPC_CheckTypeI32,
8593
127k
     OPC_MoveSibling, 14,
8594
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8595
127k
     OPC_RecordNode,
8596
127k
     OPC_CheckPredicate, 8,
8597
127k
     OPC_CheckTypeI32,
8598
127k
     OPC_MoveSibling, 15,
8599
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8600
127k
     OPC_RecordNode,
8601
127k
     OPC_CheckPredicate, 8,
8602
127k
     OPC_CheckTypeI32,
8603
127k
     OPC_MoveParent,
8604
127k
     OPC_CheckType, MVT::v16i8,
8605
127k
     OPC_CheckPatternPredicate0,
8606
127k
     OPC_EmitConvertToTarget0,
8607
127k
     OPC_EmitConvertToTarget1,
8608
127k
     OPC_EmitConvertToTarget2,
8609
127k
     OPC_EmitConvertToTarget3,
8610
127k
     OPC_EmitConvertToTarget4,
8611
127k
     OPC_EmitConvertToTarget5,
8612
127k
     OPC_EmitConvertToTarget6,
8613
127k
     OPC_EmitConvertToTarget7,
8614
127k
     OPC_EmitConvertToTarget, 8,
8615
127k
     OPC_EmitConvertToTarget, 9,
8616
127k
     OPC_EmitConvertToTarget, 10,
8617
127k
     OPC_EmitConvertToTarget, 11,
8618
127k
     OPC_EmitConvertToTarget, 12,
8619
127k
     OPC_EmitConvertToTarget, 13,
8620
127k
     OPC_EmitConvertToTarget, 14,
8621
127k
     OPC_EmitConvertToTarget, 15,
8622
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_I8x16),
8623
127k
                   MVT::v16i8, 16, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 
8624
127k
    83, 
8625
127k
     OPC_CheckPredicate, 13,
8626
127k
     OPC_MoveSibling1,
8627
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8628
127k
     OPC_RecordNode,
8629
127k
     OPC_CheckPredicate, 13,
8630
127k
     OPC_CheckTypeI32,
8631
127k
     OPC_MoveSibling2,
8632
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8633
127k
     OPC_RecordNode,
8634
127k
     OPC_CheckPredicate, 13,
8635
127k
     OPC_CheckTypeI32,
8636
127k
     OPC_MoveSibling3,
8637
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8638
127k
     OPC_RecordNode,
8639
127k
     OPC_CheckPredicate, 13,
8640
127k
     OPC_CheckTypeI32,
8641
127k
     OPC_MoveSibling4,
8642
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8643
127k
     OPC_RecordNode,
8644
127k
     OPC_CheckPredicate, 13,
8645
127k
     OPC_CheckTypeI32,
8646
127k
     OPC_MoveSibling5,
8647
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8648
127k
     OPC_RecordNode,
8649
127k
     OPC_CheckPredicate, 13,
8650
127k
     OPC_CheckTypeI32,
8651
127k
     OPC_MoveSibling6,
8652
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8653
127k
     OPC_RecordNode,
8654
127k
     OPC_CheckPredicate, 13,
8655
127k
     OPC_CheckTypeI32,
8656
127k
     OPC_MoveSibling7,
8657
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8658
127k
     OPC_RecordNode,
8659
127k
     OPC_CheckPredicate, 13,
8660
127k
     OPC_CheckTypeI32,
8661
127k
     OPC_MoveParent,
8662
127k
     OPC_CheckType, MVT::v8i16,
8663
127k
     OPC_CheckPatternPredicate0,
8664
127k
     OPC_EmitConvertToTarget0,
8665
127k
     OPC_EmitConvertToTarget1,
8666
127k
     OPC_EmitConvertToTarget2,
8667
127k
     OPC_EmitConvertToTarget3,
8668
127k
     OPC_EmitConvertToTarget4,
8669
127k
     OPC_EmitConvertToTarget5,
8670
127k
     OPC_EmitConvertToTarget6,
8671
127k
     OPC_EmitConvertToTarget7,
8672
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_I16x8),
8673
127k
                   MVT::v8i16, 8, 8, 9, 10, 11, 12, 13, 14, 15, 
8674
127k
    35, 
8675
127k
     OPC_MoveSibling1,
8676
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8677
127k
     OPC_RecordNode,
8678
127k
     OPC_CheckTypeI32,
8679
127k
     OPC_MoveSibling2,
8680
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8681
127k
     OPC_RecordNode,
8682
127k
     OPC_CheckTypeI32,
8683
127k
     OPC_MoveSibling3,
8684
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8685
127k
     OPC_RecordNode,
8686
127k
     OPC_CheckTypeI32,
8687
127k
     OPC_MoveParent,
8688
127k
     OPC_CheckType, MVT::v4i32,
8689
127k
     OPC_CheckPatternPredicate0,
8690
127k
     OPC_EmitConvertToTarget0,
8691
127k
     OPC_EmitConvertToTarget1,
8692
127k
     OPC_EmitConvertToTarget2,
8693
127k
     OPC_EmitConvertToTarget3,
8694
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_I32x4),
8695
127k
                   MVT::v4i32, 4, 4, 5, 6, 7, 
8696
127k
    0, 
8697
127k
   19, MVT::i64,
8698
127k
    OPC_MoveSibling1,
8699
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8700
127k
    OPC_RecordNode,
8701
127k
    OPC_CheckTypeI64,
8702
127k
    OPC_MoveParent,
8703
127k
    OPC_CheckType, MVT::v2i64,
8704
127k
    OPC_CheckPatternPredicate0,
8705
127k
    OPC_EmitConvertToTarget0,
8706
127k
    OPC_EmitConvertToTarget1,
8707
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_I64x2),
8708
127k
                  MVT::v2i64, 2, 2, 3, 
8709
127k
   0,
8710
127k
  64, TARGET_VAL(ISD::ConstantFP),
8711
127k
   OPC_SwitchType , 38, MVT::f32,
8712
127k
    OPC_MoveSibling1,
8713
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP),
8714
127k
    OPC_RecordNode,
8715
127k
    OPC_CheckType, MVT::f32,
8716
127k
    OPC_MoveSibling2,
8717
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP),
8718
127k
    OPC_RecordNode,
8719
127k
    OPC_CheckType, MVT::f32,
8720
127k
    OPC_MoveSibling3,
8721
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP),
8722
127k
    OPC_RecordNode,
8723
127k
    OPC_CheckType, MVT::f32,
8724
127k
    OPC_MoveParent,
8725
127k
    OPC_CheckType, MVT::v4f32,
8726
127k
    OPC_CheckPatternPredicate0,
8727
127k
    OPC_EmitConvertToTarget0,
8728
127k
    OPC_EmitConvertToTarget1,
8729
127k
    OPC_EmitConvertToTarget2,
8730
127k
    OPC_EmitConvertToTarget3,
8731
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_F32x4),
8732
127k
                  MVT::v4f32, 4, 4, 5, 6, 7, 
8733
127k
   20, MVT::f64,
8734
127k
    OPC_MoveSibling1,
8735
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP),
8736
127k
    OPC_RecordNode,
8737
127k
    OPC_CheckType, MVT::f64,
8738
127k
    OPC_MoveParent,
8739
127k
    OPC_CheckType, MVT::v2f64,
8740
127k
    OPC_CheckPatternPredicate0,
8741
127k
    OPC_EmitConvertToTarget0,
8742
127k
    OPC_EmitConvertToTarget1,
8743
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_F64x2),
8744
127k
                  MVT::v2f64, 2, 2, 3, 
8745
127k
   0,
8746
127k
  0,
8747
127k
 1|128,16, TARGET_VAL(WebAssemblyISD::SHUFFLE),
8748
127k
  OPC_RecordChild0,
8749
127k
  OPC_Scope, 83|128,2, 
8750
127k
   OPC_CheckChild0Type, MVT::v16i8,
8751
127k
   OPC_RecordChild1,
8752
127k
   OPC_CheckChild1Type, MVT::v16i8,
8753
127k
   OPC_RecordChild2,
8754
127k
   OPC_MoveChild2,
8755
127k
   OPC_SwitchOpcode , 41|128,1, TARGET_VAL(ISD::Constant),
8756
127k
    OPC_CheckPredicate0, 
8757
127k
    OPC_CheckTypeI32,
8758
127k
    OPC_MoveSibling3,
8759
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8760
127k
    OPC_RecordNode,
8761
127k
    OPC_CheckPredicate0, 
8762
127k
    OPC_CheckTypeI32,
8763
127k
    OPC_MoveSibling4,
8764
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8765
127k
    OPC_RecordNode,
8766
127k
    OPC_CheckPredicate0, 
8767
127k
    OPC_CheckTypeI32,
8768
127k
    OPC_MoveSibling5,
8769
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8770
127k
    OPC_RecordNode,
8771
127k
    OPC_CheckPredicate0, 
8772
127k
    OPC_CheckTypeI32,
8773
127k
    OPC_MoveSibling6,
8774
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8775
127k
    OPC_RecordNode,
8776
127k
    OPC_CheckPredicate0, 
8777
127k
    OPC_CheckTypeI32,
8778
127k
    OPC_MoveSibling7,
8779
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8780
127k
    OPC_RecordNode,
8781
127k
    OPC_CheckPredicate0, 
8782
127k
    OPC_CheckTypeI32,
8783
127k
    OPC_MoveSibling, 8,
8784
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8785
127k
    OPC_RecordNode,
8786
127k
    OPC_CheckPredicate0, 
8787
127k
    OPC_CheckTypeI32,
8788
127k
    OPC_MoveSibling, 9,
8789
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8790
127k
    OPC_RecordNode,
8791
127k
    OPC_CheckPredicate0, 
8792
127k
    OPC_CheckTypeI32,
8793
127k
    OPC_MoveSibling, 10,
8794
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8795
127k
    OPC_RecordNode,
8796
127k
    OPC_CheckPredicate0, 
8797
127k
    OPC_CheckTypeI32,
8798
127k
    OPC_MoveSibling, 11,
8799
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8800
127k
    OPC_RecordNode,
8801
127k
    OPC_CheckPredicate0, 
8802
127k
    OPC_CheckTypeI32,
8803
127k
    OPC_MoveSibling, 12,
8804
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8805
127k
    OPC_RecordNode,
8806
127k
    OPC_CheckPredicate0, 
8807
127k
    OPC_CheckTypeI32,
8808
127k
    OPC_MoveSibling, 13,
8809
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8810
127k
    OPC_RecordNode,
8811
127k
    OPC_CheckPredicate0, 
8812
127k
    OPC_CheckTypeI32,
8813
127k
    OPC_MoveSibling, 14,
8814
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8815
127k
    OPC_RecordNode,
8816
127k
    OPC_CheckPredicate0, 
8817
127k
    OPC_CheckTypeI32,
8818
127k
    OPC_MoveSibling, 15,
8819
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8820
127k
    OPC_RecordNode,
8821
127k
    OPC_CheckPredicate0, 
8822
127k
    OPC_CheckTypeI32,
8823
127k
    OPC_MoveSibling, 16,
8824
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8825
127k
    OPC_RecordNode,
8826
127k
    OPC_CheckPredicate0, 
8827
127k
    OPC_CheckTypeI32,
8828
127k
    OPC_MoveSibling, 17,
8829
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8830
127k
    OPC_RecordNode,
8831
127k
    OPC_CheckPredicate0, 
8832
127k
    OPC_CheckTypeI32,
8833
127k
    OPC_MoveParent,
8834
127k
    OPC_CheckType, MVT::v16i8,
8835
127k
    OPC_EmitConvertToTarget2,
8836
127k
    OPC_EmitConvertToTarget3,
8837
127k
    OPC_EmitConvertToTarget4,
8838
127k
    OPC_EmitConvertToTarget5,
8839
127k
    OPC_EmitConvertToTarget6,
8840
127k
    OPC_EmitConvertToTarget7,
8841
127k
    OPC_EmitConvertToTarget, 8,
8842
127k
    OPC_EmitConvertToTarget, 9,
8843
127k
    OPC_EmitConvertToTarget, 10,
8844
127k
    OPC_EmitConvertToTarget, 11,
8845
127k
    OPC_EmitConvertToTarget, 12,
8846
127k
    OPC_EmitConvertToTarget, 13,
8847
127k
    OPC_EmitConvertToTarget, 14,
8848
127k
    OPC_EmitConvertToTarget, 15,
8849
127k
    OPC_EmitConvertToTarget, 16,
8850
127k
    OPC_EmitConvertToTarget, 17,
8851
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
8852
127k
                  MVT::v16i8, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
8853
127k
   25|128,1, TARGET_VAL(ISD::TargetConstant),
8854
127k
    OPC_CheckTypeI32,
8855
127k
    OPC_MoveSibling3,
8856
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8857
127k
    OPC_RecordNode,
8858
127k
    OPC_CheckTypeI32,
8859
127k
    OPC_MoveSibling4,
8860
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8861
127k
    OPC_RecordNode,
8862
127k
    OPC_CheckTypeI32,
8863
127k
    OPC_MoveSibling5,
8864
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8865
127k
    OPC_RecordNode,
8866
127k
    OPC_CheckTypeI32,
8867
127k
    OPC_MoveSibling6,
8868
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8869
127k
    OPC_RecordNode,
8870
127k
    OPC_CheckTypeI32,
8871
127k
    OPC_MoveSibling7,
8872
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8873
127k
    OPC_RecordNode,
8874
127k
    OPC_CheckTypeI32,
8875
127k
    OPC_MoveSibling, 8,
8876
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8877
127k
    OPC_RecordNode,
8878
127k
    OPC_CheckTypeI32,
8879
127k
    OPC_MoveSibling, 9,
8880
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8881
127k
    OPC_RecordNode,
8882
127k
    OPC_CheckTypeI32,
8883
127k
    OPC_MoveSibling, 10,
8884
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8885
127k
    OPC_RecordNode,
8886
127k
    OPC_CheckTypeI32,
8887
127k
    OPC_MoveSibling, 11,
8888
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8889
127k
    OPC_RecordNode,
8890
127k
    OPC_CheckTypeI32,
8891
127k
    OPC_MoveSibling, 12,
8892
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8893
127k
    OPC_RecordNode,
8894
127k
    OPC_CheckTypeI32,
8895
127k
    OPC_MoveSibling, 13,
8896
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8897
127k
    OPC_RecordNode,
8898
127k
    OPC_CheckTypeI32,
8899
127k
    OPC_MoveSibling, 14,
8900
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8901
127k
    OPC_RecordNode,
8902
127k
    OPC_CheckTypeI32,
8903
127k
    OPC_MoveSibling, 15,
8904
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8905
127k
    OPC_RecordNode,
8906
127k
    OPC_CheckTypeI32,
8907
127k
    OPC_MoveSibling, 16,
8908
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8909
127k
    OPC_RecordNode,
8910
127k
    OPC_CheckTypeI32,
8911
127k
    OPC_MoveSibling, 17,
8912
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
8913
127k
    OPC_RecordNode,
8914
127k
    OPC_CheckTypeI32,
8915
127k
    OPC_MoveParent,
8916
127k
    OPC_CheckType, MVT::v16i8,
8917
127k
    OPC_EmitConvertToTarget2,
8918
127k
    OPC_EmitConvertToTarget3,
8919
127k
    OPC_EmitConvertToTarget4,
8920
127k
    OPC_EmitConvertToTarget5,
8921
127k
    OPC_EmitConvertToTarget6,
8922
127k
    OPC_EmitConvertToTarget7,
8923
127k
    OPC_EmitConvertToTarget, 8,
8924
127k
    OPC_EmitConvertToTarget, 9,
8925
127k
    OPC_EmitConvertToTarget, 10,
8926
127k
    OPC_EmitConvertToTarget, 11,
8927
127k
    OPC_EmitConvertToTarget, 12,
8928
127k
    OPC_EmitConvertToTarget, 13,
8929
127k
    OPC_EmitConvertToTarget, 14,
8930
127k
    OPC_EmitConvertToTarget, 15,
8931
127k
    OPC_EmitConvertToTarget, 16,
8932
127k
    OPC_EmitConvertToTarget, 17,
8933
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
8934
127k
                  MVT::v16i8, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
8935
127k
   0,
8936
127k
  83|128,2, 
8937
127k
   OPC_CheckChild0Type, MVT::v8i16,
8938
127k
   OPC_RecordChild1,
8939
127k
   OPC_CheckChild1Type, MVT::v8i16,
8940
127k
   OPC_RecordChild2,
8941
127k
   OPC_MoveChild2,
8942
127k
   OPC_SwitchOpcode , 41|128,1, TARGET_VAL(ISD::Constant),
8943
127k
    OPC_CheckPredicate0, 
8944
127k
    OPC_CheckTypeI32,
8945
127k
    OPC_MoveSibling3,
8946
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8947
127k
    OPC_RecordNode,
8948
127k
    OPC_CheckPredicate0, 
8949
127k
    OPC_CheckTypeI32,
8950
127k
    OPC_MoveSibling4,
8951
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8952
127k
    OPC_RecordNode,
8953
127k
    OPC_CheckPredicate0, 
8954
127k
    OPC_CheckTypeI32,
8955
127k
    OPC_MoveSibling5,
8956
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8957
127k
    OPC_RecordNode,
8958
127k
    OPC_CheckPredicate0, 
8959
127k
    OPC_CheckTypeI32,
8960
127k
    OPC_MoveSibling6,
8961
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8962
127k
    OPC_RecordNode,
8963
127k
    OPC_CheckPredicate0, 
8964
127k
    OPC_CheckTypeI32,
8965
127k
    OPC_MoveSibling7,
8966
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8967
127k
    OPC_RecordNode,
8968
127k
    OPC_CheckPredicate0, 
8969
127k
    OPC_CheckTypeI32,
8970
127k
    OPC_MoveSibling, 8,
8971
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8972
127k
    OPC_RecordNode,
8973
127k
    OPC_CheckPredicate0, 
8974
127k
    OPC_CheckTypeI32,
8975
127k
    OPC_MoveSibling, 9,
8976
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8977
127k
    OPC_RecordNode,
8978
127k
    OPC_CheckPredicate0, 
8979
127k
    OPC_CheckTypeI32,
8980
127k
    OPC_MoveSibling, 10,
8981
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8982
127k
    OPC_RecordNode,
8983
127k
    OPC_CheckPredicate0, 
8984
127k
    OPC_CheckTypeI32,
8985
127k
    OPC_MoveSibling, 11,
8986
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8987
127k
    OPC_RecordNode,
8988
127k
    OPC_CheckPredicate0, 
8989
127k
    OPC_CheckTypeI32,
8990
127k
    OPC_MoveSibling, 12,
8991
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8992
127k
    OPC_RecordNode,
8993
127k
    OPC_CheckPredicate0, 
8994
127k
    OPC_CheckTypeI32,
8995
127k
    OPC_MoveSibling, 13,
8996
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
8997
127k
    OPC_RecordNode,
8998
127k
    OPC_CheckPredicate0, 
8999
127k
    OPC_CheckTypeI32,
9000
127k
    OPC_MoveSibling, 14,
9001
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9002
127k
    OPC_RecordNode,
9003
127k
    OPC_CheckPredicate0, 
9004
127k
    OPC_CheckTypeI32,
9005
127k
    OPC_MoveSibling, 15,
9006
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9007
127k
    OPC_RecordNode,
9008
127k
    OPC_CheckPredicate0, 
9009
127k
    OPC_CheckTypeI32,
9010
127k
    OPC_MoveSibling, 16,
9011
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9012
127k
    OPC_RecordNode,
9013
127k
    OPC_CheckPredicate0, 
9014
127k
    OPC_CheckTypeI32,
9015
127k
    OPC_MoveSibling, 17,
9016
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9017
127k
    OPC_RecordNode,
9018
127k
    OPC_CheckPredicate0, 
9019
127k
    OPC_CheckTypeI32,
9020
127k
    OPC_MoveParent,
9021
127k
    OPC_CheckType, MVT::v8i16,
9022
127k
    OPC_EmitConvertToTarget2,
9023
127k
    OPC_EmitConvertToTarget3,
9024
127k
    OPC_EmitConvertToTarget4,
9025
127k
    OPC_EmitConvertToTarget5,
9026
127k
    OPC_EmitConvertToTarget6,
9027
127k
    OPC_EmitConvertToTarget7,
9028
127k
    OPC_EmitConvertToTarget, 8,
9029
127k
    OPC_EmitConvertToTarget, 9,
9030
127k
    OPC_EmitConvertToTarget, 10,
9031
127k
    OPC_EmitConvertToTarget, 11,
9032
127k
    OPC_EmitConvertToTarget, 12,
9033
127k
    OPC_EmitConvertToTarget, 13,
9034
127k
    OPC_EmitConvertToTarget, 14,
9035
127k
    OPC_EmitConvertToTarget, 15,
9036
127k
    OPC_EmitConvertToTarget, 16,
9037
127k
    OPC_EmitConvertToTarget, 17,
9038
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
9039
127k
                  MVT::v8i16, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
9040
127k
   25|128,1, TARGET_VAL(ISD::TargetConstant),
9041
127k
    OPC_CheckTypeI32,
9042
127k
    OPC_MoveSibling3,
9043
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9044
127k
    OPC_RecordNode,
9045
127k
    OPC_CheckTypeI32,
9046
127k
    OPC_MoveSibling4,
9047
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9048
127k
    OPC_RecordNode,
9049
127k
    OPC_CheckTypeI32,
9050
127k
    OPC_MoveSibling5,
9051
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9052
127k
    OPC_RecordNode,
9053
127k
    OPC_CheckTypeI32,
9054
127k
    OPC_MoveSibling6,
9055
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9056
127k
    OPC_RecordNode,
9057
127k
    OPC_CheckTypeI32,
9058
127k
    OPC_MoveSibling7,
9059
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9060
127k
    OPC_RecordNode,
9061
127k
    OPC_CheckTypeI32,
9062
127k
    OPC_MoveSibling, 8,
9063
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9064
127k
    OPC_RecordNode,
9065
127k
    OPC_CheckTypeI32,
9066
127k
    OPC_MoveSibling, 9,
9067
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9068
127k
    OPC_RecordNode,
9069
127k
    OPC_CheckTypeI32,
9070
127k
    OPC_MoveSibling, 10,
9071
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9072
127k
    OPC_RecordNode,
9073
127k
    OPC_CheckTypeI32,
9074
127k
    OPC_MoveSibling, 11,
9075
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9076
127k
    OPC_RecordNode,
9077
127k
    OPC_CheckTypeI32,
9078
127k
    OPC_MoveSibling, 12,
9079
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9080
127k
    OPC_RecordNode,
9081
127k
    OPC_CheckTypeI32,
9082
127k
    OPC_MoveSibling, 13,
9083
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9084
127k
    OPC_RecordNode,
9085
127k
    OPC_CheckTypeI32,
9086
127k
    OPC_MoveSibling, 14,
9087
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9088
127k
    OPC_RecordNode,
9089
127k
    OPC_CheckTypeI32,
9090
127k
    OPC_MoveSibling, 15,
9091
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9092
127k
    OPC_RecordNode,
9093
127k
    OPC_CheckTypeI32,
9094
127k
    OPC_MoveSibling, 16,
9095
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9096
127k
    OPC_RecordNode,
9097
127k
    OPC_CheckTypeI32,
9098
127k
    OPC_MoveSibling, 17,
9099
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9100
127k
    OPC_RecordNode,
9101
127k
    OPC_CheckTypeI32,
9102
127k
    OPC_MoveParent,
9103
127k
    OPC_CheckType, MVT::v8i16,
9104
127k
    OPC_EmitConvertToTarget2,
9105
127k
    OPC_EmitConvertToTarget3,
9106
127k
    OPC_EmitConvertToTarget4,
9107
127k
    OPC_EmitConvertToTarget5,
9108
127k
    OPC_EmitConvertToTarget6,
9109
127k
    OPC_EmitConvertToTarget7,
9110
127k
    OPC_EmitConvertToTarget, 8,
9111
127k
    OPC_EmitConvertToTarget, 9,
9112
127k
    OPC_EmitConvertToTarget, 10,
9113
127k
    OPC_EmitConvertToTarget, 11,
9114
127k
    OPC_EmitConvertToTarget, 12,
9115
127k
    OPC_EmitConvertToTarget, 13,
9116
127k
    OPC_EmitConvertToTarget, 14,
9117
127k
    OPC_EmitConvertToTarget, 15,
9118
127k
    OPC_EmitConvertToTarget, 16,
9119
127k
    OPC_EmitConvertToTarget, 17,
9120
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
9121
127k
                  MVT::v8i16, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
9122
127k
   0,
9123
127k
  83|128,2, 
9124
127k
   OPC_CheckChild0Type, MVT::v4i32,
9125
127k
   OPC_RecordChild1,
9126
127k
   OPC_CheckChild1Type, MVT::v4i32,
9127
127k
   OPC_RecordChild2,
9128
127k
   OPC_MoveChild2,
9129
127k
   OPC_SwitchOpcode , 41|128,1, TARGET_VAL(ISD::Constant),
9130
127k
    OPC_CheckPredicate0, 
9131
127k
    OPC_CheckTypeI32,
9132
127k
    OPC_MoveSibling3,
9133
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9134
127k
    OPC_RecordNode,
9135
127k
    OPC_CheckPredicate0, 
9136
127k
    OPC_CheckTypeI32,
9137
127k
    OPC_MoveSibling4,
9138
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9139
127k
    OPC_RecordNode,
9140
127k
    OPC_CheckPredicate0, 
9141
127k
    OPC_CheckTypeI32,
9142
127k
    OPC_MoveSibling5,
9143
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9144
127k
    OPC_RecordNode,
9145
127k
    OPC_CheckPredicate0, 
9146
127k
    OPC_CheckTypeI32,
9147
127k
    OPC_MoveSibling6,
9148
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9149
127k
    OPC_RecordNode,
9150
127k
    OPC_CheckPredicate0, 
9151
127k
    OPC_CheckTypeI32,
9152
127k
    OPC_MoveSibling7,
9153
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9154
127k
    OPC_RecordNode,
9155
127k
    OPC_CheckPredicate0, 
9156
127k
    OPC_CheckTypeI32,
9157
127k
    OPC_MoveSibling, 8,
9158
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9159
127k
    OPC_RecordNode,
9160
127k
    OPC_CheckPredicate0, 
9161
127k
    OPC_CheckTypeI32,
9162
127k
    OPC_MoveSibling, 9,
9163
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9164
127k
    OPC_RecordNode,
9165
127k
    OPC_CheckPredicate0, 
9166
127k
    OPC_CheckTypeI32,
9167
127k
    OPC_MoveSibling, 10,
9168
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9169
127k
    OPC_RecordNode,
9170
127k
    OPC_CheckPredicate0, 
9171
127k
    OPC_CheckTypeI32,
9172
127k
    OPC_MoveSibling, 11,
9173
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9174
127k
    OPC_RecordNode,
9175
127k
    OPC_CheckPredicate0, 
9176
127k
    OPC_CheckTypeI32,
9177
127k
    OPC_MoveSibling, 12,
9178
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9179
127k
    OPC_RecordNode,
9180
127k
    OPC_CheckPredicate0, 
9181
127k
    OPC_CheckTypeI32,
9182
127k
    OPC_MoveSibling, 13,
9183
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9184
127k
    OPC_RecordNode,
9185
127k
    OPC_CheckPredicate0, 
9186
127k
    OPC_CheckTypeI32,
9187
127k
    OPC_MoveSibling, 14,
9188
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9189
127k
    OPC_RecordNode,
9190
127k
    OPC_CheckPredicate0, 
9191
127k
    OPC_CheckTypeI32,
9192
127k
    OPC_MoveSibling, 15,
9193
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9194
127k
    OPC_RecordNode,
9195
127k
    OPC_CheckPredicate0, 
9196
127k
    OPC_CheckTypeI32,
9197
127k
    OPC_MoveSibling, 16,
9198
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9199
127k
    OPC_RecordNode,
9200
127k
    OPC_CheckPredicate0, 
9201
127k
    OPC_CheckTypeI32,
9202
127k
    OPC_MoveSibling, 17,
9203
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9204
127k
    OPC_RecordNode,
9205
127k
    OPC_CheckPredicate0, 
9206
127k
    OPC_CheckTypeI32,
9207
127k
    OPC_MoveParent,
9208
127k
    OPC_CheckType, MVT::v4i32,
9209
127k
    OPC_EmitConvertToTarget2,
9210
127k
    OPC_EmitConvertToTarget3,
9211
127k
    OPC_EmitConvertToTarget4,
9212
127k
    OPC_EmitConvertToTarget5,
9213
127k
    OPC_EmitConvertToTarget6,
9214
127k
    OPC_EmitConvertToTarget7,
9215
127k
    OPC_EmitConvertToTarget, 8,
9216
127k
    OPC_EmitConvertToTarget, 9,
9217
127k
    OPC_EmitConvertToTarget, 10,
9218
127k
    OPC_EmitConvertToTarget, 11,
9219
127k
    OPC_EmitConvertToTarget, 12,
9220
127k
    OPC_EmitConvertToTarget, 13,
9221
127k
    OPC_EmitConvertToTarget, 14,
9222
127k
    OPC_EmitConvertToTarget, 15,
9223
127k
    OPC_EmitConvertToTarget, 16,
9224
127k
    OPC_EmitConvertToTarget, 17,
9225
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
9226
127k
                  MVT::v4i32, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
9227
127k
   25|128,1, TARGET_VAL(ISD::TargetConstant),
9228
127k
    OPC_CheckTypeI32,
9229
127k
    OPC_MoveSibling3,
9230
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9231
127k
    OPC_RecordNode,
9232
127k
    OPC_CheckTypeI32,
9233
127k
    OPC_MoveSibling4,
9234
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9235
127k
    OPC_RecordNode,
9236
127k
    OPC_CheckTypeI32,
9237
127k
    OPC_MoveSibling5,
9238
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9239
127k
    OPC_RecordNode,
9240
127k
    OPC_CheckTypeI32,
9241
127k
    OPC_MoveSibling6,
9242
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9243
127k
    OPC_RecordNode,
9244
127k
    OPC_CheckTypeI32,
9245
127k
    OPC_MoveSibling7,
9246
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9247
127k
    OPC_RecordNode,
9248
127k
    OPC_CheckTypeI32,
9249
127k
    OPC_MoveSibling, 8,
9250
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9251
127k
    OPC_RecordNode,
9252
127k
    OPC_CheckTypeI32,
9253
127k
    OPC_MoveSibling, 9,
9254
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9255
127k
    OPC_RecordNode,
9256
127k
    OPC_CheckTypeI32,
9257
127k
    OPC_MoveSibling, 10,
9258
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9259
127k
    OPC_RecordNode,
9260
127k
    OPC_CheckTypeI32,
9261
127k
    OPC_MoveSibling, 11,
9262
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9263
127k
    OPC_RecordNode,
9264
127k
    OPC_CheckTypeI32,
9265
127k
    OPC_MoveSibling, 12,
9266
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9267
127k
    OPC_RecordNode,
9268
127k
    OPC_CheckTypeI32,
9269
127k
    OPC_MoveSibling, 13,
9270
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9271
127k
    OPC_RecordNode,
9272
127k
    OPC_CheckTypeI32,
9273
127k
    OPC_MoveSibling, 14,
9274
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9275
127k
    OPC_RecordNode,
9276
127k
    OPC_CheckTypeI32,
9277
127k
    OPC_MoveSibling, 15,
9278
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9279
127k
    OPC_RecordNode,
9280
127k
    OPC_CheckTypeI32,
9281
127k
    OPC_MoveSibling, 16,
9282
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9283
127k
    OPC_RecordNode,
9284
127k
    OPC_CheckTypeI32,
9285
127k
    OPC_MoveSibling, 17,
9286
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9287
127k
    OPC_RecordNode,
9288
127k
    OPC_CheckTypeI32,
9289
127k
    OPC_MoveParent,
9290
127k
    OPC_CheckType, MVT::v4i32,
9291
127k
    OPC_EmitConvertToTarget2,
9292
127k
    OPC_EmitConvertToTarget3,
9293
127k
    OPC_EmitConvertToTarget4,
9294
127k
    OPC_EmitConvertToTarget5,
9295
127k
    OPC_EmitConvertToTarget6,
9296
127k
    OPC_EmitConvertToTarget7,
9297
127k
    OPC_EmitConvertToTarget, 8,
9298
127k
    OPC_EmitConvertToTarget, 9,
9299
127k
    OPC_EmitConvertToTarget, 10,
9300
127k
    OPC_EmitConvertToTarget, 11,
9301
127k
    OPC_EmitConvertToTarget, 12,
9302
127k
    OPC_EmitConvertToTarget, 13,
9303
127k
    OPC_EmitConvertToTarget, 14,
9304
127k
    OPC_EmitConvertToTarget, 15,
9305
127k
    OPC_EmitConvertToTarget, 16,
9306
127k
    OPC_EmitConvertToTarget, 17,
9307
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
9308
127k
                  MVT::v4i32, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
9309
127k
   0,
9310
127k
  83|128,2, 
9311
127k
   OPC_CheckChild0Type, MVT::v2i64,
9312
127k
   OPC_RecordChild1,
9313
127k
   OPC_CheckChild1Type, MVT::v2i64,
9314
127k
   OPC_RecordChild2,
9315
127k
   OPC_MoveChild2,
9316
127k
   OPC_SwitchOpcode , 41|128,1, TARGET_VAL(ISD::Constant),
9317
127k
    OPC_CheckPredicate0, 
9318
127k
    OPC_CheckTypeI32,
9319
127k
    OPC_MoveSibling3,
9320
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9321
127k
    OPC_RecordNode,
9322
127k
    OPC_CheckPredicate0, 
9323
127k
    OPC_CheckTypeI32,
9324
127k
    OPC_MoveSibling4,
9325
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9326
127k
    OPC_RecordNode,
9327
127k
    OPC_CheckPredicate0, 
9328
127k
    OPC_CheckTypeI32,
9329
127k
    OPC_MoveSibling5,
9330
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9331
127k
    OPC_RecordNode,
9332
127k
    OPC_CheckPredicate0, 
9333
127k
    OPC_CheckTypeI32,
9334
127k
    OPC_MoveSibling6,
9335
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9336
127k
    OPC_RecordNode,
9337
127k
    OPC_CheckPredicate0, 
9338
127k
    OPC_CheckTypeI32,
9339
127k
    OPC_MoveSibling7,
9340
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9341
127k
    OPC_RecordNode,
9342
127k
    OPC_CheckPredicate0, 
9343
127k
    OPC_CheckTypeI32,
9344
127k
    OPC_MoveSibling, 8,
9345
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9346
127k
    OPC_RecordNode,
9347
127k
    OPC_CheckPredicate0, 
9348
127k
    OPC_CheckTypeI32,
9349
127k
    OPC_MoveSibling, 9,
9350
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9351
127k
    OPC_RecordNode,
9352
127k
    OPC_CheckPredicate0, 
9353
127k
    OPC_CheckTypeI32,
9354
127k
    OPC_MoveSibling, 10,
9355
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9356
127k
    OPC_RecordNode,
9357
127k
    OPC_CheckPredicate0, 
9358
127k
    OPC_CheckTypeI32,
9359
127k
    OPC_MoveSibling, 11,
9360
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9361
127k
    OPC_RecordNode,
9362
127k
    OPC_CheckPredicate0, 
9363
127k
    OPC_CheckTypeI32,
9364
127k
    OPC_MoveSibling, 12,
9365
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9366
127k
    OPC_RecordNode,
9367
127k
    OPC_CheckPredicate0, 
9368
127k
    OPC_CheckTypeI32,
9369
127k
    OPC_MoveSibling, 13,
9370
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9371
127k
    OPC_RecordNode,
9372
127k
    OPC_CheckPredicate0, 
9373
127k
    OPC_CheckTypeI32,
9374
127k
    OPC_MoveSibling, 14,
9375
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9376
127k
    OPC_RecordNode,
9377
127k
    OPC_CheckPredicate0, 
9378
127k
    OPC_CheckTypeI32,
9379
127k
    OPC_MoveSibling, 15,
9380
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9381
127k
    OPC_RecordNode,
9382
127k
    OPC_CheckPredicate0, 
9383
127k
    OPC_CheckTypeI32,
9384
127k
    OPC_MoveSibling, 16,
9385
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9386
127k
    OPC_RecordNode,
9387
127k
    OPC_CheckPredicate0, 
9388
127k
    OPC_CheckTypeI32,
9389
127k
    OPC_MoveSibling, 17,
9390
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9391
127k
    OPC_RecordNode,
9392
127k
    OPC_CheckPredicate0, 
9393
127k
    OPC_CheckTypeI32,
9394
127k
    OPC_MoveParent,
9395
127k
    OPC_CheckType, MVT::v2i64,
9396
127k
    OPC_EmitConvertToTarget2,
9397
127k
    OPC_EmitConvertToTarget3,
9398
127k
    OPC_EmitConvertToTarget4,
9399
127k
    OPC_EmitConvertToTarget5,
9400
127k
    OPC_EmitConvertToTarget6,
9401
127k
    OPC_EmitConvertToTarget7,
9402
127k
    OPC_EmitConvertToTarget, 8,
9403
127k
    OPC_EmitConvertToTarget, 9,
9404
127k
    OPC_EmitConvertToTarget, 10,
9405
127k
    OPC_EmitConvertToTarget, 11,
9406
127k
    OPC_EmitConvertToTarget, 12,
9407
127k
    OPC_EmitConvertToTarget, 13,
9408
127k
    OPC_EmitConvertToTarget, 14,
9409
127k
    OPC_EmitConvertToTarget, 15,
9410
127k
    OPC_EmitConvertToTarget, 16,
9411
127k
    OPC_EmitConvertToTarget, 17,
9412
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
9413
127k
                  MVT::v2i64, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
9414
127k
   25|128,1, TARGET_VAL(ISD::TargetConstant),
9415
127k
    OPC_CheckTypeI32,
9416
127k
    OPC_MoveSibling3,
9417
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9418
127k
    OPC_RecordNode,
9419
127k
    OPC_CheckTypeI32,
9420
127k
    OPC_MoveSibling4,
9421
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9422
127k
    OPC_RecordNode,
9423
127k
    OPC_CheckTypeI32,
9424
127k
    OPC_MoveSibling5,
9425
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9426
127k
    OPC_RecordNode,
9427
127k
    OPC_CheckTypeI32,
9428
127k
    OPC_MoveSibling6,
9429
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9430
127k
    OPC_RecordNode,
9431
127k
    OPC_CheckTypeI32,
9432
127k
    OPC_MoveSibling7,
9433
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9434
127k
    OPC_RecordNode,
9435
127k
    OPC_CheckTypeI32,
9436
127k
    OPC_MoveSibling, 8,
9437
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9438
127k
    OPC_RecordNode,
9439
127k
    OPC_CheckTypeI32,
9440
127k
    OPC_MoveSibling, 9,
9441
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9442
127k
    OPC_RecordNode,
9443
127k
    OPC_CheckTypeI32,
9444
127k
    OPC_MoveSibling, 10,
9445
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9446
127k
    OPC_RecordNode,
9447
127k
    OPC_CheckTypeI32,
9448
127k
    OPC_MoveSibling, 11,
9449
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9450
127k
    OPC_RecordNode,
9451
127k
    OPC_CheckTypeI32,
9452
127k
    OPC_MoveSibling, 12,
9453
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9454
127k
    OPC_RecordNode,
9455
127k
    OPC_CheckTypeI32,
9456
127k
    OPC_MoveSibling, 13,
9457
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9458
127k
    OPC_RecordNode,
9459
127k
    OPC_CheckTypeI32,
9460
127k
    OPC_MoveSibling, 14,
9461
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9462
127k
    OPC_RecordNode,
9463
127k
    OPC_CheckTypeI32,
9464
127k
    OPC_MoveSibling, 15,
9465
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9466
127k
    OPC_RecordNode,
9467
127k
    OPC_CheckTypeI32,
9468
127k
    OPC_MoveSibling, 16,
9469
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9470
127k
    OPC_RecordNode,
9471
127k
    OPC_CheckTypeI32,
9472
127k
    OPC_MoveSibling, 17,
9473
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9474
127k
    OPC_RecordNode,
9475
127k
    OPC_CheckTypeI32,
9476
127k
    OPC_MoveParent,
9477
127k
    OPC_CheckType, MVT::v2i64,
9478
127k
    OPC_EmitConvertToTarget2,
9479
127k
    OPC_EmitConvertToTarget3,
9480
127k
    OPC_EmitConvertToTarget4,
9481
127k
    OPC_EmitConvertToTarget5,
9482
127k
    OPC_EmitConvertToTarget6,
9483
127k
    OPC_EmitConvertToTarget7,
9484
127k
    OPC_EmitConvertToTarget, 8,
9485
127k
    OPC_EmitConvertToTarget, 9,
9486
127k
    OPC_EmitConvertToTarget, 10,
9487
127k
    OPC_EmitConvertToTarget, 11,
9488
127k
    OPC_EmitConvertToTarget, 12,
9489
127k
    OPC_EmitConvertToTarget, 13,
9490
127k
    OPC_EmitConvertToTarget, 14,
9491
127k
    OPC_EmitConvertToTarget, 15,
9492
127k
    OPC_EmitConvertToTarget, 16,
9493
127k
    OPC_EmitConvertToTarget, 17,
9494
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
9495
127k
                  MVT::v2i64, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
9496
127k
   0,
9497
127k
  83|128,2, 
9498
127k
   OPC_CheckChild0Type, MVT::v4f32,
9499
127k
   OPC_RecordChild1,
9500
127k
   OPC_CheckChild1Type, MVT::v4f32,
9501
127k
   OPC_RecordChild2,
9502
127k
   OPC_MoveChild2,
9503
127k
   OPC_SwitchOpcode , 41|128,1, TARGET_VAL(ISD::Constant),
9504
127k
    OPC_CheckPredicate0, 
9505
127k
    OPC_CheckTypeI32,
9506
127k
    OPC_MoveSibling3,
9507
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9508
127k
    OPC_RecordNode,
9509
127k
    OPC_CheckPredicate0, 
9510
127k
    OPC_CheckTypeI32,
9511
127k
    OPC_MoveSibling4,
9512
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9513
127k
    OPC_RecordNode,
9514
127k
    OPC_CheckPredicate0, 
9515
127k
    OPC_CheckTypeI32,
9516
127k
    OPC_MoveSibling5,
9517
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9518
127k
    OPC_RecordNode,
9519
127k
    OPC_CheckPredicate0, 
9520
127k
    OPC_CheckTypeI32,
9521
127k
    OPC_MoveSibling6,
9522
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9523
127k
    OPC_RecordNode,
9524
127k
    OPC_CheckPredicate0, 
9525
127k
    OPC_CheckTypeI32,
9526
127k
    OPC_MoveSibling7,
9527
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9528
127k
    OPC_RecordNode,
9529
127k
    OPC_CheckPredicate0, 
9530
127k
    OPC_CheckTypeI32,
9531
127k
    OPC_MoveSibling, 8,
9532
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9533
127k
    OPC_RecordNode,
9534
127k
    OPC_CheckPredicate0, 
9535
127k
    OPC_CheckTypeI32,
9536
127k
    OPC_MoveSibling, 9,
9537
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9538
127k
    OPC_RecordNode,
9539
127k
    OPC_CheckPredicate0, 
9540
127k
    OPC_CheckTypeI32,
9541
127k
    OPC_MoveSibling, 10,
9542
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9543
127k
    OPC_RecordNode,
9544
127k
    OPC_CheckPredicate0, 
9545
127k
    OPC_CheckTypeI32,
9546
127k
    OPC_MoveSibling, 11,
9547
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9548
127k
    OPC_RecordNode,
9549
127k
    OPC_CheckPredicate0, 
9550
127k
    OPC_CheckTypeI32,
9551
127k
    OPC_MoveSibling, 12,
9552
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9553
127k
    OPC_RecordNode,
9554
127k
    OPC_CheckPredicate0, 
9555
127k
    OPC_CheckTypeI32,
9556
127k
    OPC_MoveSibling, 13,
9557
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9558
127k
    OPC_RecordNode,
9559
127k
    OPC_CheckPredicate0, 
9560
127k
    OPC_CheckTypeI32,
9561
127k
    OPC_MoveSibling, 14,
9562
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9563
127k
    OPC_RecordNode,
9564
127k
    OPC_CheckPredicate0, 
9565
127k
    OPC_CheckTypeI32,
9566
127k
    OPC_MoveSibling, 15,
9567
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9568
127k
    OPC_RecordNode,
9569
127k
    OPC_CheckPredicate0, 
9570
127k
    OPC_CheckTypeI32,
9571
127k
    OPC_MoveSibling, 16,
9572
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9573
127k
    OPC_RecordNode,
9574
127k
    OPC_CheckPredicate0, 
9575
127k
    OPC_CheckTypeI32,
9576
127k
    OPC_MoveSibling, 17,
9577
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9578
127k
    OPC_RecordNode,
9579
127k
    OPC_CheckPredicate0, 
9580
127k
    OPC_CheckTypeI32,
9581
127k
    OPC_MoveParent,
9582
127k
    OPC_CheckType, MVT::v4f32,
9583
127k
    OPC_EmitConvertToTarget2,
9584
127k
    OPC_EmitConvertToTarget3,
9585
127k
    OPC_EmitConvertToTarget4,
9586
127k
    OPC_EmitConvertToTarget5,
9587
127k
    OPC_EmitConvertToTarget6,
9588
127k
    OPC_EmitConvertToTarget7,
9589
127k
    OPC_EmitConvertToTarget, 8,
9590
127k
    OPC_EmitConvertToTarget, 9,
9591
127k
    OPC_EmitConvertToTarget, 10,
9592
127k
    OPC_EmitConvertToTarget, 11,
9593
127k
    OPC_EmitConvertToTarget, 12,
9594
127k
    OPC_EmitConvertToTarget, 13,
9595
127k
    OPC_EmitConvertToTarget, 14,
9596
127k
    OPC_EmitConvertToTarget, 15,
9597
127k
    OPC_EmitConvertToTarget, 16,
9598
127k
    OPC_EmitConvertToTarget, 17,
9599
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
9600
127k
                  MVT::v4f32, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
9601
127k
   25|128,1, TARGET_VAL(ISD::TargetConstant),
9602
127k
    OPC_CheckTypeI32,
9603
127k
    OPC_MoveSibling3,
9604
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9605
127k
    OPC_RecordNode,
9606
127k
    OPC_CheckTypeI32,
9607
127k
    OPC_MoveSibling4,
9608
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9609
127k
    OPC_RecordNode,
9610
127k
    OPC_CheckTypeI32,
9611
127k
    OPC_MoveSibling5,
9612
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9613
127k
    OPC_RecordNode,
9614
127k
    OPC_CheckTypeI32,
9615
127k
    OPC_MoveSibling6,
9616
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9617
127k
    OPC_RecordNode,
9618
127k
    OPC_CheckTypeI32,
9619
127k
    OPC_MoveSibling7,
9620
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9621
127k
    OPC_RecordNode,
9622
127k
    OPC_CheckTypeI32,
9623
127k
    OPC_MoveSibling, 8,
9624
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9625
127k
    OPC_RecordNode,
9626
127k
    OPC_CheckTypeI32,
9627
127k
    OPC_MoveSibling, 9,
9628
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9629
127k
    OPC_RecordNode,
9630
127k
    OPC_CheckTypeI32,
9631
127k
    OPC_MoveSibling, 10,
9632
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9633
127k
    OPC_RecordNode,
9634
127k
    OPC_CheckTypeI32,
9635
127k
    OPC_MoveSibling, 11,
9636
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9637
127k
    OPC_RecordNode,
9638
127k
    OPC_CheckTypeI32,
9639
127k
    OPC_MoveSibling, 12,
9640
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9641
127k
    OPC_RecordNode,
9642
127k
    OPC_CheckTypeI32,
9643
127k
    OPC_MoveSibling, 13,
9644
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9645
127k
    OPC_RecordNode,
9646
127k
    OPC_CheckTypeI32,
9647
127k
    OPC_MoveSibling, 14,
9648
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9649
127k
    OPC_RecordNode,
9650
127k
    OPC_CheckTypeI32,
9651
127k
    OPC_MoveSibling, 15,
9652
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9653
127k
    OPC_RecordNode,
9654
127k
    OPC_CheckTypeI32,
9655
127k
    OPC_MoveSibling, 16,
9656
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9657
127k
    OPC_RecordNode,
9658
127k
    OPC_CheckTypeI32,
9659
127k
    OPC_MoveSibling, 17,
9660
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9661
127k
    OPC_RecordNode,
9662
127k
    OPC_CheckTypeI32,
9663
127k
    OPC_MoveParent,
9664
127k
    OPC_CheckType, MVT::v4f32,
9665
127k
    OPC_EmitConvertToTarget2,
9666
127k
    OPC_EmitConvertToTarget3,
9667
127k
    OPC_EmitConvertToTarget4,
9668
127k
    OPC_EmitConvertToTarget5,
9669
127k
    OPC_EmitConvertToTarget6,
9670
127k
    OPC_EmitConvertToTarget7,
9671
127k
    OPC_EmitConvertToTarget, 8,
9672
127k
    OPC_EmitConvertToTarget, 9,
9673
127k
    OPC_EmitConvertToTarget, 10,
9674
127k
    OPC_EmitConvertToTarget, 11,
9675
127k
    OPC_EmitConvertToTarget, 12,
9676
127k
    OPC_EmitConvertToTarget, 13,
9677
127k
    OPC_EmitConvertToTarget, 14,
9678
127k
    OPC_EmitConvertToTarget, 15,
9679
127k
    OPC_EmitConvertToTarget, 16,
9680
127k
    OPC_EmitConvertToTarget, 17,
9681
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
9682
127k
                  MVT::v4f32, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
9683
127k
   0,
9684
127k
  83|128,2, 
9685
127k
   OPC_CheckChild0Type, MVT::v2f64,
9686
127k
   OPC_RecordChild1,
9687
127k
   OPC_CheckChild1Type, MVT::v2f64,
9688
127k
   OPC_RecordChild2,
9689
127k
   OPC_MoveChild2,
9690
127k
   OPC_SwitchOpcode , 41|128,1, TARGET_VAL(ISD::Constant),
9691
127k
    OPC_CheckPredicate0, 
9692
127k
    OPC_CheckTypeI32,
9693
127k
    OPC_MoveSibling3,
9694
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9695
127k
    OPC_RecordNode,
9696
127k
    OPC_CheckPredicate0, 
9697
127k
    OPC_CheckTypeI32,
9698
127k
    OPC_MoveSibling4,
9699
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9700
127k
    OPC_RecordNode,
9701
127k
    OPC_CheckPredicate0, 
9702
127k
    OPC_CheckTypeI32,
9703
127k
    OPC_MoveSibling5,
9704
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9705
127k
    OPC_RecordNode,
9706
127k
    OPC_CheckPredicate0, 
9707
127k
    OPC_CheckTypeI32,
9708
127k
    OPC_MoveSibling6,
9709
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9710
127k
    OPC_RecordNode,
9711
127k
    OPC_CheckPredicate0, 
9712
127k
    OPC_CheckTypeI32,
9713
127k
    OPC_MoveSibling7,
9714
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9715
127k
    OPC_RecordNode,
9716
127k
    OPC_CheckPredicate0, 
9717
127k
    OPC_CheckTypeI32,
9718
127k
    OPC_MoveSibling, 8,
9719
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9720
127k
    OPC_RecordNode,
9721
127k
    OPC_CheckPredicate0, 
9722
127k
    OPC_CheckTypeI32,
9723
127k
    OPC_MoveSibling, 9,
9724
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9725
127k
    OPC_RecordNode,
9726
127k
    OPC_CheckPredicate0, 
9727
127k
    OPC_CheckTypeI32,
9728
127k
    OPC_MoveSibling, 10,
9729
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9730
127k
    OPC_RecordNode,
9731
127k
    OPC_CheckPredicate0, 
9732
127k
    OPC_CheckTypeI32,
9733
127k
    OPC_MoveSibling, 11,
9734
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9735
127k
    OPC_RecordNode,
9736
127k
    OPC_CheckPredicate0, 
9737
127k
    OPC_CheckTypeI32,
9738
127k
    OPC_MoveSibling, 12,
9739
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9740
127k
    OPC_RecordNode,
9741
127k
    OPC_CheckPredicate0, 
9742
127k
    OPC_CheckTypeI32,
9743
127k
    OPC_MoveSibling, 13,
9744
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9745
127k
    OPC_RecordNode,
9746
127k
    OPC_CheckPredicate0, 
9747
127k
    OPC_CheckTypeI32,
9748
127k
    OPC_MoveSibling, 14,
9749
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9750
127k
    OPC_RecordNode,
9751
127k
    OPC_CheckPredicate0, 
9752
127k
    OPC_CheckTypeI32,
9753
127k
    OPC_MoveSibling, 15,
9754
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9755
127k
    OPC_RecordNode,
9756
127k
    OPC_CheckPredicate0, 
9757
127k
    OPC_CheckTypeI32,
9758
127k
    OPC_MoveSibling, 16,
9759
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9760
127k
    OPC_RecordNode,
9761
127k
    OPC_CheckPredicate0, 
9762
127k
    OPC_CheckTypeI32,
9763
127k
    OPC_MoveSibling, 17,
9764
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9765
127k
    OPC_RecordNode,
9766
127k
    OPC_CheckPredicate0, 
9767
127k
    OPC_CheckTypeI32,
9768
127k
    OPC_MoveParent,
9769
127k
    OPC_CheckType, MVT::v2f64,
9770
127k
    OPC_EmitConvertToTarget2,
9771
127k
    OPC_EmitConvertToTarget3,
9772
127k
    OPC_EmitConvertToTarget4,
9773
127k
    OPC_EmitConvertToTarget5,
9774
127k
    OPC_EmitConvertToTarget6,
9775
127k
    OPC_EmitConvertToTarget7,
9776
127k
    OPC_EmitConvertToTarget, 8,
9777
127k
    OPC_EmitConvertToTarget, 9,
9778
127k
    OPC_EmitConvertToTarget, 10,
9779
127k
    OPC_EmitConvertToTarget, 11,
9780
127k
    OPC_EmitConvertToTarget, 12,
9781
127k
    OPC_EmitConvertToTarget, 13,
9782
127k
    OPC_EmitConvertToTarget, 14,
9783
127k
    OPC_EmitConvertToTarget, 15,
9784
127k
    OPC_EmitConvertToTarget, 16,
9785
127k
    OPC_EmitConvertToTarget, 17,
9786
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
9787
127k
                  MVT::v2f64, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
9788
127k
   25|128,1, TARGET_VAL(ISD::TargetConstant),
9789
127k
    OPC_CheckTypeI32,
9790
127k
    OPC_MoveSibling3,
9791
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9792
127k
    OPC_RecordNode,
9793
127k
    OPC_CheckTypeI32,
9794
127k
    OPC_MoveSibling4,
9795
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9796
127k
    OPC_RecordNode,
9797
127k
    OPC_CheckTypeI32,
9798
127k
    OPC_MoveSibling5,
9799
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9800
127k
    OPC_RecordNode,
9801
127k
    OPC_CheckTypeI32,
9802
127k
    OPC_MoveSibling6,
9803
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9804
127k
    OPC_RecordNode,
9805
127k
    OPC_CheckTypeI32,
9806
127k
    OPC_MoveSibling7,
9807
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9808
127k
    OPC_RecordNode,
9809
127k
    OPC_CheckTypeI32,
9810
127k
    OPC_MoveSibling, 8,
9811
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9812
127k
    OPC_RecordNode,
9813
127k
    OPC_CheckTypeI32,
9814
127k
    OPC_MoveSibling, 9,
9815
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9816
127k
    OPC_RecordNode,
9817
127k
    OPC_CheckTypeI32,
9818
127k
    OPC_MoveSibling, 10,
9819
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9820
127k
    OPC_RecordNode,
9821
127k
    OPC_CheckTypeI32,
9822
127k
    OPC_MoveSibling, 11,
9823
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9824
127k
    OPC_RecordNode,
9825
127k
    OPC_CheckTypeI32,
9826
127k
    OPC_MoveSibling, 12,
9827
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9828
127k
    OPC_RecordNode,
9829
127k
    OPC_CheckTypeI32,
9830
127k
    OPC_MoveSibling, 13,
9831
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9832
127k
    OPC_RecordNode,
9833
127k
    OPC_CheckTypeI32,
9834
127k
    OPC_MoveSibling, 14,
9835
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9836
127k
    OPC_RecordNode,
9837
127k
    OPC_CheckTypeI32,
9838
127k
    OPC_MoveSibling, 15,
9839
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9840
127k
    OPC_RecordNode,
9841
127k
    OPC_CheckTypeI32,
9842
127k
    OPC_MoveSibling, 16,
9843
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9844
127k
    OPC_RecordNode,
9845
127k
    OPC_CheckTypeI32,
9846
127k
    OPC_MoveSibling, 17,
9847
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
9848
127k
    OPC_RecordNode,
9849
127k
    OPC_CheckTypeI32,
9850
127k
    OPC_MoveParent,
9851
127k
    OPC_CheckType, MVT::v2f64,
9852
127k
    OPC_EmitConvertToTarget2,
9853
127k
    OPC_EmitConvertToTarget3,
9854
127k
    OPC_EmitConvertToTarget4,
9855
127k
    OPC_EmitConvertToTarget5,
9856
127k
    OPC_EmitConvertToTarget6,
9857
127k
    OPC_EmitConvertToTarget7,
9858
127k
    OPC_EmitConvertToTarget, 8,
9859
127k
    OPC_EmitConvertToTarget, 9,
9860
127k
    OPC_EmitConvertToTarget, 10,
9861
127k
    OPC_EmitConvertToTarget, 11,
9862
127k
    OPC_EmitConvertToTarget, 12,
9863
127k
    OPC_EmitConvertToTarget, 13,
9864
127k
    OPC_EmitConvertToTarget, 14,
9865
127k
    OPC_EmitConvertToTarget, 15,
9866
127k
    OPC_EmitConvertToTarget, 16,
9867
127k
    OPC_EmitConvertToTarget, 17,
9868
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHUFFLE),
9869
127k
                  MVT::v2f64, 18, 0, 1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 
9870
127k
   0,
9871
127k
  0, 
9872
127k
 41|128,5, TARGET_VAL(ISD::INSERT_VECTOR_ELT),
9873
127k
  OPC_Scope, 6|128,1, 
9874
127k
   OPC_MoveChild0,
9875
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::SPLAT_VECTOR),
9876
127k
   OPC_CheckChild0Integer, 0, 
9877
127k
   OPC_Scope, 62, 
9878
127k
    OPC_CheckChild0TypeI32,
9879
127k
    OPC_MoveSibling1,
9880
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
9881
127k
    OPC_RecordMemRef,
9882
127k
    OPC_RecordNode,
9883
127k
    OPC_CheckFoldableChainNode,
9884
127k
    OPC_RecordChild1,
9885
127k
    OPC_CheckTypeI32,
9886
127k
    OPC_Scope, 24, 
9887
127k
     OPC_CheckChild1TypeI32,
9888
127k
     OPC_CheckPredicate, 9,
9889
127k
     OPC_CheckPredicate6, 
9890
127k
     OPC_MoveParent,
9891
127k
     OPC_CheckChild2Integer, 0, 
9892
127k
     OPC_CheckType, MVT::v4i32,
9893
127k
     OPC_CheckPatternPredicate3,
9894
127k
     OPC_CheckComplexPat0, /*#*/1,
9895
127k
     OPC_EmitMergeInputChains1_0,
9896
127k
     OPC_EmitInteger32, 0, 
9897
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs,
9898
127k
                   MVT::v4i32, 3, 4, 2, 3, 
9899
127k
    24, 
9900
127k
     OPC_CheckChild1TypeI64,
9901
127k
     OPC_CheckPredicate, 9,
9902
127k
     OPC_CheckPredicate6, 
9903
127k
     OPC_MoveParent,
9904
127k
     OPC_CheckChild2Integer, 0, 
9905
127k
     OPC_CheckType, MVT::v4i32,
9906
127k
     OPC_CheckPatternPredicate4,
9907
127k
     OPC_CheckComplexPat1, /*#*/1,
9908
127k
     OPC_EmitMergeInputChains1_0,
9909
127k
     OPC_EmitInteger32, 0, 
9910
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs,
9911
127k
                   MVT::v4i32, 3, 4, 2, 3, 
9912
127k
    0, 
9913
127k
   62, 
9914
127k
    OPC_CheckChild0TypeI64,
9915
127k
    OPC_MoveSibling1,
9916
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
9917
127k
    OPC_RecordMemRef,
9918
127k
    OPC_RecordNode,
9919
127k
    OPC_CheckFoldableChainNode,
9920
127k
    OPC_RecordChild1,
9921
127k
    OPC_CheckTypeI64,
9922
127k
    OPC_Scope, 24, 
9923
127k
     OPC_CheckChild1TypeI32,
9924
127k
     OPC_CheckPredicate, 9,
9925
127k
     OPC_CheckPredicate6, 
9926
127k
     OPC_MoveParent,
9927
127k
     OPC_CheckChild2Integer, 0, 
9928
127k
     OPC_CheckType, MVT::v2i64,
9929
127k
     OPC_CheckPatternPredicate3,
9930
127k
     OPC_CheckComplexPat0, /*#*/1,
9931
127k
     OPC_EmitMergeInputChains1_0,
9932
127k
     OPC_EmitInteger32, 0, 
9933
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs,
9934
127k
                   MVT::v2i64, 3, 4, 2, 3, 
9935
127k
    24, 
9936
127k
     OPC_CheckChild1TypeI64,
9937
127k
     OPC_CheckPredicate, 9,
9938
127k
     OPC_CheckPredicate6, 
9939
127k
     OPC_MoveParent,
9940
127k
     OPC_CheckChild2Integer, 0, 
9941
127k
     OPC_CheckType, MVT::v2i64,
9942
127k
     OPC_CheckPatternPredicate4,
9943
127k
     OPC_CheckComplexPat1, /*#*/1,
9944
127k
     OPC_EmitMergeInputChains1_0,
9945
127k
     OPC_EmitInteger32, 0, 
9946
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs,
9947
127k
                   MVT::v2i64, 3, 4, 2, 3, 
9948
127k
    0, 
9949
127k
   0, 
9950
127k
  29|128,4, 
9951
127k
   OPC_RecordChild0,
9952
127k
   OPC_Scope, 36|128,2, 
9953
127k
    OPC_MoveChild1,
9954
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
9955
127k
    OPC_RecordMemRef,
9956
127k
    OPC_RecordNode,
9957
127k
    OPC_CheckFoldableChainNode,
9958
127k
    OPC_RecordChild1,
9959
127k
    OPC_Scope, 11|128,1, 
9960
127k
     OPC_CheckChild1TypeI32,
9961
127k
     OPC_CheckPredicate, 9,
9962
127k
     OPC_Scope, 67, 
9963
127k
      OPC_CheckPredicate, 10,
9964
127k
      OPC_CheckTypeI32,
9965
127k
      OPC_Scope, 30, 
9966
127k
       OPC_CheckPredicate2, 
9967
127k
       OPC_MoveSibling2,
9968
127k
       OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9969
127k
       OPC_RecordNode,
9970
127k
       OPC_CheckPredicate, 15,
9971
127k
       OPC_CheckTypeI32,
9972
127k
       OPC_MoveParent,
9973
127k
       OPC_CheckType, MVT::v16i8,
9974
127k
       OPC_CheckPatternPredicate3,
9975
127k
       OPC_EmitMergeInputChains1_1,
9976
127k
       OPC_EmitInteger32, 0, 
9977
127k
       OPC_EmitInteger32, 0, 
9978
127k
       OPC_EmitConvertToTarget3,
9979
127k
       OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I8x16_A32), 0|OPFL_Chain|OPFL_MemRefs,
9980
127k
                     MVT::v16i8, 5, 4, 5, 6, 2, 0, 
9981
127k
      30, 
9982
127k
       OPC_CheckPredicate1, 
9983
127k
       OPC_MoveSibling2,
9984
127k
       OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
9985
127k
       OPC_RecordNode,
9986
127k
       OPC_CheckPredicate, 17,
9987
127k
       OPC_CheckTypeI32,
9988
127k
       OPC_MoveParent,
9989
127k
       OPC_CheckType, MVT::v8i16,
9990
127k
       OPC_CheckPatternPredicate3,
9991
127k
       OPC_EmitMergeInputChains1_1,
9992
127k
       OPC_EmitInteger32, 0, 
9993
127k
       OPC_EmitInteger32, 0, 
9994
127k
       OPC_EmitConvertToTarget3,
9995
127k
       OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I16x8_A32), 0|OPFL_Chain|OPFL_MemRefs,
9996
127k
                     MVT::v8i16, 5, 4, 5, 6, 2, 0, 
9997
127k
      0, 
9998
127k
     65, 
9999
127k
      OPC_CheckPredicate6, 
10000
127k
      OPC_SwitchType , 29, MVT::i32,
10001
127k
       OPC_MoveSibling2,
10002
127k
       OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10003
127k
       OPC_RecordNode,
10004
127k
       OPC_CheckPredicate, 16,
10005
127k
       OPC_CheckTypeI32,
10006
127k
       OPC_MoveParent,
10007
127k
       OPC_CheckType, MVT::v4i32,
10008
127k
       OPC_CheckPatternPredicate3,
10009
127k
       OPC_EmitMergeInputChains1_1,
10010
127k
       OPC_EmitInteger32, 0, 
10011
127k
       OPC_EmitInteger32, 0, 
10012
127k
       OPC_EmitConvertToTarget3,
10013
127k
       OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs,
10014
127k
                     MVT::v4i32, 5, 4, 5, 6, 2, 0, 
10015
127k
      29, MVT::i64,
10016
127k
       OPC_MoveSibling2,
10017
127k
       OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10018
127k
       OPC_RecordNode,
10019
127k
       OPC_CheckPredicate, 18,
10020
127k
       OPC_CheckTypeI32,
10021
127k
       OPC_MoveParent,
10022
127k
       OPC_CheckType, MVT::v2i64,
10023
127k
       OPC_CheckPatternPredicate3,
10024
127k
       OPC_EmitMergeInputChains1_1,
10025
127k
       OPC_EmitInteger32, 0, 
10026
127k
       OPC_EmitInteger32, 0, 
10027
127k
       OPC_EmitConvertToTarget3,
10028
127k
       OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs,
10029
127k
                     MVT::v2i64, 5, 4, 5, 6, 2, 0, 
10030
127k
      0,
10031
127k
     0, 
10032
127k
    11|128,1, 
10033
127k
     OPC_CheckChild1TypeI64,
10034
127k
     OPC_CheckPredicate, 9,
10035
127k
     OPC_Scope, 67, 
10036
127k
      OPC_CheckPredicate, 10,
10037
127k
      OPC_CheckTypeI32,
10038
127k
      OPC_Scope, 30, 
10039
127k
       OPC_CheckPredicate2, 
10040
127k
       OPC_MoveSibling2,
10041
127k
       OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10042
127k
       OPC_RecordNode,
10043
127k
       OPC_CheckPredicate, 15,
10044
127k
       OPC_CheckTypeI32,
10045
127k
       OPC_MoveParent,
10046
127k
       OPC_CheckType, MVT::v16i8,
10047
127k
       OPC_CheckPatternPredicate4,
10048
127k
       OPC_EmitMergeInputChains1_1,
10049
127k
       OPC_EmitInteger32, 0, 
10050
127k
       OPC_EmitInteger64, 0, 
10051
127k
       OPC_EmitConvertToTarget3,
10052
127k
       OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I8x16_A64), 0|OPFL_Chain|OPFL_MemRefs,
10053
127k
                     MVT::v16i8, 5, 4, 5, 6, 2, 0, 
10054
127k
      30, 
10055
127k
       OPC_CheckPredicate1, 
10056
127k
       OPC_MoveSibling2,
10057
127k
       OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10058
127k
       OPC_RecordNode,
10059
127k
       OPC_CheckPredicate, 17,
10060
127k
       OPC_CheckTypeI32,
10061
127k
       OPC_MoveParent,
10062
127k
       OPC_CheckType, MVT::v8i16,
10063
127k
       OPC_CheckPatternPredicate4,
10064
127k
       OPC_EmitMergeInputChains1_1,
10065
127k
       OPC_EmitInteger32, 0, 
10066
127k
       OPC_EmitInteger64, 0, 
10067
127k
       OPC_EmitConvertToTarget3,
10068
127k
       OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I16x8_A64), 0|OPFL_Chain|OPFL_MemRefs,
10069
127k
                     MVT::v8i16, 5, 4, 5, 6, 2, 0, 
10070
127k
      0, 
10071
127k
     65, 
10072
127k
      OPC_CheckPredicate6, 
10073
127k
      OPC_SwitchType , 29, MVT::i32,
10074
127k
       OPC_MoveSibling2,
10075
127k
       OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10076
127k
       OPC_RecordNode,
10077
127k
       OPC_CheckPredicate, 16,
10078
127k
       OPC_CheckTypeI32,
10079
127k
       OPC_MoveParent,
10080
127k
       OPC_CheckType, MVT::v4i32,
10081
127k
       OPC_CheckPatternPredicate4,
10082
127k
       OPC_EmitMergeInputChains1_1,
10083
127k
       OPC_EmitInteger32, 0, 
10084
127k
       OPC_EmitInteger64, 0, 
10085
127k
       OPC_EmitConvertToTarget3,
10086
127k
       OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs,
10087
127k
                     MVT::v4i32, 5, 4, 5, 6, 2, 0, 
10088
127k
      29, MVT::i64,
10089
127k
       OPC_MoveSibling2,
10090
127k
       OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10091
127k
       OPC_RecordNode,
10092
127k
       OPC_CheckPredicate, 18,
10093
127k
       OPC_CheckTypeI32,
10094
127k
       OPC_MoveParent,
10095
127k
       OPC_CheckType, MVT::v2i64,
10096
127k
       OPC_CheckPatternPredicate4,
10097
127k
       OPC_EmitMergeInputChains1_1,
10098
127k
       OPC_EmitInteger32, 0, 
10099
127k
       OPC_EmitInteger64, 0, 
10100
127k
       OPC_EmitConvertToTarget3,
10101
127k
       OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_LANE_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs,
10102
127k
                     MVT::v2i64, 5, 4, 5, 6, 2, 0, 
10103
127k
      0,
10104
127k
     0, 
10105
127k
    0, 
10106
127k
   114|128,1, 
10107
127k
    OPC_RecordChild1,
10108
127k
    OPC_Scope, 104, 
10109
127k
     OPC_CheckChild1TypeI32,
10110
127k
     OPC_Scope, 56, 
10111
127k
      OPC_RecordChild2,
10112
127k
      OPC_MoveChild2,
10113
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10114
127k
      OPC_CheckTypeI32,
10115
127k
      OPC_Scope, 15, 
10116
127k
       OPC_CheckPredicate, 15,
10117
127k
       OPC_MoveParent,
10118
127k
       OPC_CheckType, MVT::v16i8,
10119
127k
       OPC_CheckPatternPredicate0,
10120
127k
       OPC_EmitConvertToTarget2,
10121
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_I8x16),
10122
127k
                     MVT::v16i8, 3, 0, 3, 1, 
10123
127k
      15, 
10124
127k
       OPC_CheckPredicate, 17,
10125
127k
       OPC_MoveParent,
10126
127k
       OPC_CheckType, MVT::v8i16,
10127
127k
       OPC_CheckPatternPredicate0,
10128
127k
       OPC_EmitConvertToTarget2,
10129
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_I16x8),
10130
127k
                     MVT::v8i16, 3, 0, 3, 1, 
10131
127k
      15, 
10132
127k
       OPC_CheckPredicate, 16,
10133
127k
       OPC_MoveParent,
10134
127k
       OPC_CheckType, MVT::v4i32,
10135
127k
       OPC_CheckPatternPredicate0,
10136
127k
       OPC_EmitConvertToTarget2,
10137
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_I32x4),
10138
127k
                     MVT::v4i32, 3, 0, 3, 1, 
10139
127k
      0, 
10140
127k
     43, 
10141
127k
      OPC_MoveChild2,
10142
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF),
10143
127k
      OPC_MoveParent,
10144
127k
      OPC_SwitchType , 10, MVT::v16i8,
10145
127k
       OPC_EmitInteger32, 0, 
10146
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_I8x16),
10147
127k
                     MVT::v16i8, 3, 0, 2, 1, 
10148
127k
      10, MVT::v8i16,
10149
127k
       OPC_EmitInteger32, 0, 
10150
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_I16x8),
10151
127k
                     MVT::v8i16, 3, 0, 2, 1, 
10152
127k
      10, MVT::v4i32,
10153
127k
       OPC_EmitInteger32, 0, 
10154
127k
       OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_I32x4),
10155
127k
                     MVT::v4i32, 3, 0, 2, 1, 
10156
127k
      0,
10157
127k
     0, 
10158
127k
    43, 
10159
127k
     OPC_CheckChild1TypeI64,
10160
127k
     OPC_Scope, 21, 
10161
127k
      OPC_RecordChild2,
10162
127k
      OPC_MoveChild2,
10163
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10164
127k
      OPC_CheckPredicate, 18,
10165
127k
      OPC_CheckTypeI32,
10166
127k
      OPC_MoveParent,
10167
127k
      OPC_CheckType, MVT::v2i64,
10168
127k
      OPC_CheckPatternPredicate0,
10169
127k
      OPC_EmitConvertToTarget2,
10170
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_I64x2),
10171
127k
                    MVT::v2i64, 3, 0, 3, 1, 
10172
127k
     17, 
10173
127k
      OPC_MoveChild2,
10174
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF),
10175
127k
      OPC_MoveParent,
10176
127k
      OPC_CheckType, MVT::v2i64,
10177
127k
      OPC_EmitInteger32, 0, 
10178
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_I64x2),
10179
127k
                    MVT::v2i64, 3, 0, 2, 1, 
10180
127k
     0, 
10181
127k
    44, 
10182
127k
     OPC_CheckChild1Type, MVT::f32,
10183
127k
     OPC_Scope, 21, 
10184
127k
      OPC_RecordChild2,
10185
127k
      OPC_MoveChild2,
10186
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10187
127k
      OPC_CheckPredicate, 16,
10188
127k
      OPC_CheckTypeI32,
10189
127k
      OPC_MoveParent,
10190
127k
      OPC_CheckType, MVT::v4f32,
10191
127k
      OPC_CheckPatternPredicate0,
10192
127k
      OPC_EmitConvertToTarget2,
10193
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_F32x4),
10194
127k
                    MVT::v4f32, 3, 0, 3, 1, 
10195
127k
     17, 
10196
127k
      OPC_MoveChild2,
10197
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF),
10198
127k
      OPC_MoveParent,
10199
127k
      OPC_CheckType, MVT::v4f32,
10200
127k
      OPC_EmitInteger32, 0, 
10201
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_F32x4),
10202
127k
                    MVT::v4f32, 3, 0, 2, 1, 
10203
127k
     0, 
10204
127k
    44, 
10205
127k
     OPC_CheckChild1Type, MVT::f64,
10206
127k
     OPC_Scope, 21, 
10207
127k
      OPC_RecordChild2,
10208
127k
      OPC_MoveChild2,
10209
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10210
127k
      OPC_CheckPredicate, 18,
10211
127k
      OPC_CheckTypeI32,
10212
127k
      OPC_MoveParent,
10213
127k
      OPC_CheckType, MVT::v2f64,
10214
127k
      OPC_CheckPatternPredicate0,
10215
127k
      OPC_EmitConvertToTarget2,
10216
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_F64x2),
10217
127k
                    MVT::v2f64, 3, 0, 3, 1, 
10218
127k
     17, 
10219
127k
      OPC_MoveChild2,
10220
127k
      OPC_CheckOpcode, TARGET_VAL(ISD::UNDEF),
10221
127k
      OPC_MoveParent,
10222
127k
      OPC_CheckType, MVT::v2f64,
10223
127k
      OPC_EmitInteger32, 0, 
10224
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::REPLACE_LANE_F64x2),
10225
127k
                    MVT::v2f64, 3, 0, 2, 1, 
10226
127k
     0, 
10227
127k
    0, 
10228
127k
   0, 
10229
127k
  0, 
10230
127k
 96|128,1, TARGET_VAL(WebAssemblyISD::VEC_SHR_U),
10231
127k
  OPC_Scope, 87, 
10232
127k
   OPC_MoveChild0,
10233
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
10234
127k
   OPC_MoveChild0,
10235
127k
   OPC_SwitchOpcode , 37, TARGET_VAL(ISD::ADD),
10236
127k
    OPC_RecordChild0,
10237
127k
    OPC_RecordChild1,
10238
127k
    OPC_CheckPredicate, 24,
10239
127k
    OPC_MoveSibling1,
10240
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::SPLAT_VECTOR),
10241
127k
    OPC_CheckChild0Integer, 2, 
10242
127k
    OPC_CheckChild0TypeI32,
10243
127k
    OPC_MoveParent,
10244
127k
    OPC_CheckPredicate, 24,
10245
127k
    OPC_MoveParent,
10246
127k
    OPC_CheckChild1Integer, 2, 
10247
127k
    OPC_SwitchType , 7, MVT::v16i8,
10248
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AVGR_U_I8x16),
10249
127k
                   MVT::v16i8, 2, 0, 1, 
10250
127k
    7, MVT::v8i16,
10251
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AVGR_U_I16x8),
10252
127k
                   MVT::v8i16, 2, 0, 1, 
10253
127k
    0,
10254
127k
   37, TARGET_VAL(ISD::SPLAT_VECTOR),
10255
127k
    OPC_CheckChild0Integer, 2, 
10256
127k
    OPC_CheckChild0TypeI32,
10257
127k
    OPC_MoveSibling1,
10258
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::ADD),
10259
127k
    OPC_RecordChild0,
10260
127k
    OPC_RecordChild1,
10261
127k
    OPC_CheckPredicate, 24,
10262
127k
    OPC_MoveParent,
10263
127k
    OPC_CheckPredicate, 24,
10264
127k
    OPC_MoveParent,
10265
127k
    OPC_CheckChild1Integer, 2, 
10266
127k
    OPC_SwitchType , 7, MVT::v16i8,
10267
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AVGR_U_I8x16),
10268
127k
                   MVT::v16i8, 2, 0, 1, 
10269
127k
    7, MVT::v8i16,
10270
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::AVGR_U_I16x8),
10271
127k
                   MVT::v8i16, 2, 0, 1, 
10272
127k
    0,
10273
127k
   0,
10274
127k
  4|128,1, 
10275
127k
   OPC_RecordChild0,
10276
127k
   OPC_Scope, 84, 
10277
127k
    OPC_MoveChild1,
10278
127k
    OPC_Scope, 24, 
10279
127k
     OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
10280
127k
     OPC_MoveChild0,
10281
127k
     OPC_CheckAndImm, 63, 
10282
127k
     OPC_RecordChild0,
10283
127k
     OPC_MoveParent,
10284
127k
     OPC_MoveParent,
10285
127k
     OPC_CheckType, MVT::v2i64,
10286
127k
     OPC_EmitNode1None, TARGET_VAL(WebAssembly::I32_WRAP_I64),
10287
127k
                   MVT::i32, 1, 1, 
10288
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I64x2),
10289
127k
                   MVT::v2i64, 2, 0, 2, 
10290
127k
    13, 
10291
127k
     OPC_CheckAndImm, 7, 
10292
127k
     OPC_RecordChild0,
10293
127k
     OPC_MoveParent,
10294
127k
     OPC_CheckType, MVT::v16i8,
10295
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I8x16),
10296
127k
                   MVT::v16i8, 2, 0, 1, 
10297
127k
    13, 
10298
127k
     OPC_CheckAndImm, 15, 
10299
127k
     OPC_RecordChild0,
10300
127k
     OPC_MoveParent,
10301
127k
     OPC_CheckType, MVT::v8i16,
10302
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I16x8),
10303
127k
                   MVT::v8i16, 2, 0, 1, 
10304
127k
    13, 
10305
127k
     OPC_CheckAndImm, 31, 
10306
127k
     OPC_RecordChild0,
10307
127k
     OPC_MoveParent,
10308
127k
     OPC_CheckType, MVT::v4i32,
10309
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I32x4),
10310
127k
                   MVT::v4i32, 2, 0, 1, 
10311
127k
    13, 
10312
127k
     OPC_CheckAndImm, 63, 
10313
127k
     OPC_RecordChild0,
10314
127k
     OPC_MoveParent,
10315
127k
     OPC_CheckType, MVT::v2i64,
10316
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I64x2),
10317
127k
                   MVT::v2i64, 2, 0, 1, 
10318
127k
    0, 
10319
127k
   43, 
10320
127k
    OPC_RecordChild1,
10321
127k
    OPC_SwitchType , 8, MVT::v16i8,
10322
127k
     OPC_CheckPatternPredicate0,
10323
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I8x16),
10324
127k
                   MVT::v16i8, 2, 0, 1, 
10325
127k
    8, MVT::v8i16,
10326
127k
     OPC_CheckPatternPredicate0,
10327
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I16x8),
10328
127k
                   MVT::v8i16, 2, 0, 1, 
10329
127k
    8, MVT::v4i32,
10330
127k
     OPC_CheckPatternPredicate0,
10331
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I32x4),
10332
127k
                   MVT::v4i32, 2, 0, 1, 
10333
127k
    8, MVT::v2i64,
10334
127k
     OPC_CheckPatternPredicate0,
10335
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_U_I64x2),
10336
127k
                   MVT::v2i64, 2, 0, 1, 
10337
127k
    0,
10338
127k
   0, 
10339
127k
  0, 
10340
127k
 14|128,4, TARGET_VAL(ISD::SPLAT_VECTOR),
10341
127k
  OPC_Scope, 73|128,1, 
10342
127k
   OPC_MoveChild0,
10343
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
10344
127k
   OPC_RecordMemRef,
10345
127k
   OPC_RecordNode,
10346
127k
   OPC_RecordChild1,
10347
127k
   OPC_Scope, 95, 
10348
127k
    OPC_CheckChild1TypeI32,
10349
127k
    OPC_CheckPredicate, 9,
10350
127k
    OPC_Scope, 45, 
10351
127k
     OPC_CheckPredicate, 10,
10352
127k
     OPC_CheckTypeI32,
10353
127k
     OPC_Scope, 19, 
10354
127k
      OPC_CheckPredicate2, 
10355
127k
      OPC_MoveParent,
10356
127k
      OPC_CheckType, MVT::v16i8,
10357
127k
      OPC_CheckPatternPredicate3,
10358
127k
      OPC_CheckComplexPat0, /*#*/1,
10359
127k
      OPC_EmitMergeInputChains1_0,
10360
127k
      OPC_EmitInteger32, 0, 
10361
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs,
10362
127k
                    MVT::v16i8, 3, 4, 2, 3, 
10363
127k
     19, 
10364
127k
      OPC_CheckPredicate1, 
10365
127k
      OPC_MoveParent,
10366
127k
      OPC_CheckType, MVT::v8i16,
10367
127k
      OPC_CheckPatternPredicate3,
10368
127k
      OPC_CheckComplexPat0, /*#*/1,
10369
127k
      OPC_EmitMergeInputChains1_0,
10370
127k
      OPC_EmitInteger32, 0, 
10371
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs,
10372
127k
                    MVT::v8i16, 3, 4, 2, 3, 
10373
127k
     0, 
10374
127k
    43, 
10375
127k
     OPC_CheckPredicate6, 
10376
127k
     OPC_SwitchType , 18, MVT::i32,
10377
127k
      OPC_MoveParent,
10378
127k
      OPC_CheckType, MVT::v4i32,
10379
127k
      OPC_CheckPatternPredicate3,
10380
127k
      OPC_CheckComplexPat0, /*#*/1,
10381
127k
      OPC_EmitMergeInputChains1_0,
10382
127k
      OPC_EmitInteger32, 0, 
10383
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs,
10384
127k
                    MVT::v4i32, 3, 4, 2, 3, 
10385
127k
     18, MVT::i64,
10386
127k
      OPC_MoveParent,
10387
127k
      OPC_CheckType, MVT::v2i64,
10388
127k
      OPC_CheckPatternPredicate3,
10389
127k
      OPC_CheckComplexPat0, /*#*/1,
10390
127k
      OPC_EmitMergeInputChains1_0,
10391
127k
      OPC_EmitInteger32, 0, 
10392
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs,
10393
127k
                    MVT::v2i64, 3, 4, 2, 3, 
10394
127k
     0,
10395
127k
    0, 
10396
127k
   95, 
10397
127k
    OPC_CheckChild1TypeI64,
10398
127k
    OPC_CheckPredicate, 9,
10399
127k
    OPC_Scope, 45, 
10400
127k
     OPC_CheckPredicate, 10,
10401
127k
     OPC_CheckTypeI32,
10402
127k
     OPC_Scope, 19, 
10403
127k
      OPC_CheckPredicate2, 
10404
127k
      OPC_MoveParent,
10405
127k
      OPC_CheckType, MVT::v16i8,
10406
127k
      OPC_CheckPatternPredicate4,
10407
127k
      OPC_CheckComplexPat1, /*#*/1,
10408
127k
      OPC_EmitMergeInputChains1_0,
10409
127k
      OPC_EmitInteger32, 0, 
10410
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD8_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs,
10411
127k
                    MVT::v16i8, 3, 4, 2, 3, 
10412
127k
     19, 
10413
127k
      OPC_CheckPredicate1, 
10414
127k
      OPC_MoveParent,
10415
127k
      OPC_CheckType, MVT::v8i16,
10416
127k
      OPC_CheckPatternPredicate4,
10417
127k
      OPC_CheckComplexPat1, /*#*/1,
10418
127k
      OPC_EmitMergeInputChains1_0,
10419
127k
      OPC_EmitInteger32, 0, 
10420
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD16_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs,
10421
127k
                    MVT::v8i16, 3, 4, 2, 3, 
10422
127k
     0, 
10423
127k
    43, 
10424
127k
     OPC_CheckPredicate6, 
10425
127k
     OPC_SwitchType , 18, MVT::i32,
10426
127k
      OPC_MoveParent,
10427
127k
      OPC_CheckType, MVT::v4i32,
10428
127k
      OPC_CheckPatternPredicate4,
10429
127k
      OPC_CheckComplexPat1, /*#*/1,
10430
127k
      OPC_EmitMergeInputChains1_0,
10431
127k
      OPC_EmitInteger32, 0, 
10432
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs,
10433
127k
                    MVT::v4i32, 3, 4, 2, 3, 
10434
127k
     18, MVT::i64,
10435
127k
      OPC_MoveParent,
10436
127k
      OPC_CheckType, MVT::v2i64,
10437
127k
      OPC_CheckPatternPredicate4,
10438
127k
      OPC_CheckComplexPat1, /*#*/1,
10439
127k
      OPC_EmitMergeInputChains1_0,
10440
127k
      OPC_EmitInteger32, 0, 
10441
127k
      OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs,
10442
127k
                    MVT::v2i64, 3, 4, 2, 3, 
10443
127k
     0,
10444
127k
    0, 
10445
127k
   0, 
10446
127k
  20|128,1, 
10447
127k
   OPC_RecordChild0,
10448
127k
   OPC_Scope, 102, 
10449
127k
    OPC_MoveChild0,
10450
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
10451
127k
    OPC_SwitchType , 80, MVT::i32,
10452
127k
     OPC_MoveParent,
10453
127k
     OPC_SwitchType , 37, MVT::v16i8,
10454
127k
      OPC_EmitConvertToTarget0,
10455
127k
      OPC_EmitConvertToTarget0,
10456
127k
      OPC_EmitConvertToTarget0,
10457
127k
      OPC_EmitConvertToTarget0,
10458
127k
      OPC_EmitConvertToTarget0,
10459
127k
      OPC_EmitConvertToTarget0,
10460
127k
      OPC_EmitConvertToTarget0,
10461
127k
      OPC_EmitConvertToTarget0,
10462
127k
      OPC_EmitConvertToTarget0,
10463
127k
      OPC_EmitConvertToTarget0,
10464
127k
      OPC_EmitConvertToTarget0,
10465
127k
      OPC_EmitConvertToTarget0,
10466
127k
      OPC_EmitConvertToTarget0,
10467
127k
      OPC_EmitConvertToTarget0,
10468
127k
      OPC_EmitConvertToTarget0,
10469
127k
      OPC_EmitConvertToTarget0,
10470
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_I8x16),
10471
127k
                    MVT::v16i8, 16, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 
10472
127k
     21, MVT::v8i16,
10473
127k
      OPC_EmitConvertToTarget0,
10474
127k
      OPC_EmitConvertToTarget0,
10475
127k
      OPC_EmitConvertToTarget0,
10476
127k
      OPC_EmitConvertToTarget0,
10477
127k
      OPC_EmitConvertToTarget0,
10478
127k
      OPC_EmitConvertToTarget0,
10479
127k
      OPC_EmitConvertToTarget0,
10480
127k
      OPC_EmitConvertToTarget0,
10481
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_I16x8),
10482
127k
                    MVT::v8i16, 8, 1, 2, 3, 4, 5, 6, 7, 8, 
10483
127k
     13, MVT::v4i32,
10484
127k
      OPC_EmitConvertToTarget0,
10485
127k
      OPC_EmitConvertToTarget0,
10486
127k
      OPC_EmitConvertToTarget0,
10487
127k
      OPC_EmitConvertToTarget0,
10488
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_I32x4),
10489
127k
                    MVT::v4i32, 4, 1, 2, 3, 4, 
10490
127k
     0,
10491
127k
    12, MVT::i64,
10492
127k
     OPC_MoveParent,
10493
127k
     OPC_CheckType, MVT::v2i64,
10494
127k
     OPC_EmitConvertToTarget0,
10495
127k
     OPC_EmitConvertToTarget0,
10496
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_I64x2),
10497
127k
                   MVT::v2i64, 2, 1, 2, 
10498
127k
    0,
10499
127k
   30, 
10500
127k
    OPC_CheckChild0TypeI32,
10501
127k
    OPC_SwitchType , 7, MVT::v16i8,
10502
127k
     OPC_CheckPatternPredicate0,
10503
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_I8x16),
10504
127k
                   MVT::v16i8, 1, 0, 
10505
127k
    7, MVT::v8i16,
10506
127k
     OPC_CheckPatternPredicate0,
10507
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_I16x8),
10508
127k
                   MVT::v8i16, 1, 0, 
10509
127k
    7, MVT::v4i32,
10510
127k
     OPC_CheckPatternPredicate0,
10511
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_I32x4),
10512
127k
                   MVT::v4i32, 1, 0, 
10513
127k
    0,
10514
127k
   10, 
10515
127k
    OPC_CheckChild0TypeI64,
10516
127k
    OPC_CheckType, MVT::v2i64,
10517
127k
    OPC_CheckPatternPredicate0,
10518
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_I64x2),
10519
127k
                  MVT::v2i64, 1, 0, 
10520
127k
   0, 
10521
127k
  103, 
10522
127k
   OPC_MoveChild0,
10523
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
10524
127k
   OPC_RecordMemRef,
10525
127k
   OPC_RecordNode,
10526
127k
   OPC_RecordChild1,
10527
127k
   OPC_Scope, 46, 
10528
127k
    OPC_CheckChild1TypeI32,
10529
127k
    OPC_CheckPredicate, 9,
10530
127k
    OPC_CheckPredicate6, 
10531
127k
    OPC_SwitchType , 18, MVT::f32,
10532
127k
     OPC_MoveParent,
10533
127k
     OPC_CheckType, MVT::v4f32,
10534
127k
     OPC_CheckPatternPredicate3,
10535
127k
     OPC_CheckComplexPat0, /*#*/1,
10536
127k
     OPC_EmitMergeInputChains1_0,
10537
127k
     OPC_EmitInteger32, 0, 
10538
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs,
10539
127k
                   MVT::v4f32, 3, 4, 2, 3, 
10540
127k
    18, MVT::f64,
10541
127k
     OPC_MoveParent,
10542
127k
     OPC_CheckType, MVT::v2f64,
10543
127k
     OPC_CheckPatternPredicate3,
10544
127k
     OPC_CheckComplexPat0, /*#*/1,
10545
127k
     OPC_EmitMergeInputChains1_0,
10546
127k
     OPC_EmitInteger32, 0, 
10547
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A32), 0|OPFL_Chain|OPFL_MemRefs,
10548
127k
                   MVT::v2f64, 3, 4, 2, 3, 
10549
127k
    0,
10550
127k
   46, 
10551
127k
    OPC_CheckChild1TypeI64,
10552
127k
    OPC_CheckPredicate, 9,
10553
127k
    OPC_CheckPredicate6, 
10554
127k
    OPC_SwitchType , 18, MVT::f32,
10555
127k
     OPC_MoveParent,
10556
127k
     OPC_CheckType, MVT::v4f32,
10557
127k
     OPC_CheckPatternPredicate4,
10558
127k
     OPC_CheckComplexPat1, /*#*/1,
10559
127k
     OPC_EmitMergeInputChains1_0,
10560
127k
     OPC_EmitInteger32, 0, 
10561
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD32_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs,
10562
127k
                   MVT::v4f32, 3, 4, 2, 3, 
10563
127k
    18, MVT::f64,
10564
127k
     OPC_MoveParent,
10565
127k
     OPC_CheckType, MVT::v2f64,
10566
127k
     OPC_CheckPatternPredicate4,
10567
127k
     OPC_CheckComplexPat1, /*#*/1,
10568
127k
     OPC_EmitMergeInputChains1_0,
10569
127k
     OPC_EmitInteger32, 0, 
10570
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD64_SPLAT_A64), 0|OPFL_Chain|OPFL_MemRefs,
10571
127k
                   MVT::v2f64, 3, 4, 2, 3, 
10572
127k
    0,
10573
127k
   0, 
10574
127k
  66, 
10575
127k
   OPC_RecordChild0,
10576
127k
   OPC_Scope, 38, 
10577
127k
    OPC_MoveChild0,
10578
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::ConstantFP),
10579
127k
    OPC_SwitchType , 16, MVT::f32,
10580
127k
     OPC_MoveParent,
10581
127k
     OPC_CheckType, MVT::v4f32,
10582
127k
     OPC_EmitConvertToTarget0,
10583
127k
     OPC_EmitConvertToTarget0,
10584
127k
     OPC_EmitConvertToTarget0,
10585
127k
     OPC_EmitConvertToTarget0,
10586
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_F32x4),
10587
127k
                   MVT::v4f32, 4, 1, 2, 3, 4, 
10588
127k
    12, MVT::f64,
10589
127k
     OPC_MoveParent,
10590
127k
     OPC_CheckType, MVT::v2f64,
10591
127k
     OPC_EmitConvertToTarget0,
10592
127k
     OPC_EmitConvertToTarget0,
10593
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::CONST_V128_F64x2),
10594
127k
                   MVT::v2f64, 2, 1, 2, 
10595
127k
    0,
10596
127k
   11, 
10597
127k
    OPC_CheckChild0Type, MVT::f32,
10598
127k
    OPC_CheckType, MVT::v4f32,
10599
127k
    OPC_CheckPatternPredicate0,
10600
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_F32x4),
10601
127k
                  MVT::v4f32, 1, 0, 
10602
127k
   11, 
10603
127k
    OPC_CheckChild0Type, MVT::f64,
10604
127k
    OPC_CheckType, MVT::v2f64,
10605
127k
    OPC_CheckPatternPredicate0,
10606
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_F64x2),
10607
127k
                  MVT::v2f64, 1, 0, 
10608
127k
   0, 
10609
127k
  0, 
10610
127k
 42|128,1, TARGET_VAL(ISD::SCALAR_TO_VECTOR),
10611
127k
  OPC_Scope, 103, 
10612
127k
   OPC_MoveChild0,
10613
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
10614
127k
   OPC_RecordMemRef,
10615
127k
   OPC_RecordNode,
10616
127k
   OPC_RecordChild1,
10617
127k
   OPC_Scope, 46, 
10618
127k
    OPC_CheckChild1TypeI32,
10619
127k
    OPC_CheckPredicate, 9,
10620
127k
    OPC_CheckPredicate6, 
10621
127k
    OPC_SwitchType , 18, MVT::i32,
10622
127k
     OPC_MoveParent,
10623
127k
     OPC_CheckType, MVT::v4i32,
10624
127k
     OPC_CheckPatternPredicate3,
10625
127k
     OPC_CheckComplexPat0, /*#*/1,
10626
127k
     OPC_EmitMergeInputChains1_0,
10627
127k
     OPC_EmitInteger32, 0, 
10628
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A32), 0|OPFL_Chain|OPFL_MemRefs,
10629
127k
                   MVT::v4i32, 3, 4, 2, 3, 
10630
127k
    18, MVT::i64,
10631
127k
     OPC_MoveParent,
10632
127k
     OPC_CheckType, MVT::v2i64,
10633
127k
     OPC_CheckPatternPredicate3,
10634
127k
     OPC_CheckComplexPat0, /*#*/1,
10635
127k
     OPC_EmitMergeInputChains1_0,
10636
127k
     OPC_EmitInteger32, 0, 
10637
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A32), 0|OPFL_Chain|OPFL_MemRefs,
10638
127k
                   MVT::v2i64, 3, 4, 2, 3, 
10639
127k
    0,
10640
127k
   46, 
10641
127k
    OPC_CheckChild1TypeI64,
10642
127k
    OPC_CheckPredicate, 9,
10643
127k
    OPC_CheckPredicate6, 
10644
127k
    OPC_SwitchType , 18, MVT::i32,
10645
127k
     OPC_MoveParent,
10646
127k
     OPC_CheckType, MVT::v4i32,
10647
127k
     OPC_CheckPatternPredicate4,
10648
127k
     OPC_CheckComplexPat1, /*#*/1,
10649
127k
     OPC_EmitMergeInputChains1_0,
10650
127k
     OPC_EmitInteger32, 0, 
10651
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I32x4_A64), 0|OPFL_Chain|OPFL_MemRefs,
10652
127k
                   MVT::v4i32, 3, 4, 2, 3, 
10653
127k
    18, MVT::i64,
10654
127k
     OPC_MoveParent,
10655
127k
     OPC_CheckType, MVT::v2i64,
10656
127k
     OPC_CheckPatternPredicate4,
10657
127k
     OPC_CheckComplexPat1, /*#*/1,
10658
127k
     OPC_EmitMergeInputChains1_0,
10659
127k
     OPC_EmitInteger32, 0, 
10660
127k
     OPC_MorphNodeTo1, TARGET_VAL(WebAssembly::LOAD_ZERO_I64x2_A64), 0|OPFL_Chain|OPFL_MemRefs,
10661
127k
                   MVT::v2i64, 3, 4, 2, 3, 
10662
127k
    0,
10663
127k
   0, 
10664
127k
  63, 
10665
127k
   OPC_RecordChild0,
10666
127k
   OPC_Scope, 27, 
10667
127k
    OPC_CheckChild0TypeI32,
10668
127k
    OPC_SwitchType , 6, MVT::v16i8,
10669
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_I8x16),
10670
127k
                   MVT::v16i8, 1, 0, 
10671
127k
    6, MVT::v8i16,
10672
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_I16x8),
10673
127k
                   MVT::v8i16, 1, 0, 
10674
127k
    6, MVT::v4i32,
10675
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_I32x4),
10676
127k
                   MVT::v4i32, 1, 0, 
10677
127k
    0,
10678
127k
   9, 
10679
127k
    OPC_CheckChild0TypeI64,
10680
127k
    OPC_CheckType, MVT::v2i64,
10681
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_I64x2),
10682
127k
                  MVT::v2i64, 1, 0, 
10683
127k
   10, 
10684
127k
    OPC_CheckChild0Type, MVT::f32,
10685
127k
    OPC_CheckType, MVT::v4f32,
10686
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_F32x4),
10687
127k
                  MVT::v4f32, 1, 0, 
10688
127k
   10, 
10689
127k
    OPC_CheckChild0Type, MVT::f64,
10690
127k
    OPC_CheckType, MVT::v2f64,
10691
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SPLAT_F64x2),
10692
127k
                  MVT::v2f64, 1, 0, 
10693
127k
   0, 
10694
127k
  0, 
10695
127k
 4|128,1, TARGET_VAL(WebAssemblyISD::VEC_SHL),
10696
127k
  OPC_RecordChild0,
10697
127k
  OPC_Scope, 84, 
10698
127k
   OPC_MoveChild1,
10699
127k
   OPC_Scope, 24, 
10700
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
10701
127k
    OPC_MoveChild0,
10702
127k
    OPC_CheckAndImm, 63, 
10703
127k
    OPC_RecordChild0,
10704
127k
    OPC_MoveParent,
10705
127k
    OPC_MoveParent,
10706
127k
    OPC_CheckType, MVT::v2i64,
10707
127k
    OPC_EmitNode1None, TARGET_VAL(WebAssembly::I32_WRAP_I64),
10708
127k
                  MVT::i32, 1, 1, 
10709
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I64x2),
10710
127k
                  MVT::v2i64, 2, 0, 2, 
10711
127k
   13, 
10712
127k
    OPC_CheckAndImm, 7, 
10713
127k
    OPC_RecordChild0,
10714
127k
    OPC_MoveParent,
10715
127k
    OPC_CheckType, MVT::v16i8,
10716
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I8x16),
10717
127k
                  MVT::v16i8, 2, 0, 1, 
10718
127k
   13, 
10719
127k
    OPC_CheckAndImm, 15, 
10720
127k
    OPC_RecordChild0,
10721
127k
    OPC_MoveParent,
10722
127k
    OPC_CheckType, MVT::v8i16,
10723
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I16x8),
10724
127k
                  MVT::v8i16, 2, 0, 1, 
10725
127k
   13, 
10726
127k
    OPC_CheckAndImm, 31, 
10727
127k
    OPC_RecordChild0,
10728
127k
    OPC_MoveParent,
10729
127k
    OPC_CheckType, MVT::v4i32,
10730
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I32x4),
10731
127k
                  MVT::v4i32, 2, 0, 1, 
10732
127k
   13, 
10733
127k
    OPC_CheckAndImm, 63, 
10734
127k
    OPC_RecordChild0,
10735
127k
    OPC_MoveParent,
10736
127k
    OPC_CheckType, MVT::v2i64,
10737
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I64x2),
10738
127k
                  MVT::v2i64, 2, 0, 1, 
10739
127k
   0, 
10740
127k
  43, 
10741
127k
   OPC_RecordChild1,
10742
127k
   OPC_SwitchType , 8, MVT::v16i8,
10743
127k
    OPC_CheckPatternPredicate0,
10744
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I8x16),
10745
127k
                  MVT::v16i8, 2, 0, 1, 
10746
127k
   8, MVT::v8i16,
10747
127k
    OPC_CheckPatternPredicate0,
10748
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I16x8),
10749
127k
                  MVT::v8i16, 2, 0, 1, 
10750
127k
   8, MVT::v4i32,
10751
127k
    OPC_CheckPatternPredicate0,
10752
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I32x4),
10753
127k
                  MVT::v4i32, 2, 0, 1, 
10754
127k
   8, MVT::v2i64,
10755
127k
    OPC_CheckPatternPredicate0,
10756
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHL_I64x2),
10757
127k
                  MVT::v2i64, 2, 0, 1, 
10758
127k
   0,
10759
127k
  0, 
10760
127k
 4|128,1, TARGET_VAL(WebAssemblyISD::VEC_SHR_S),
10761
127k
  OPC_RecordChild0,
10762
127k
  OPC_Scope, 84, 
10763
127k
   OPC_MoveChild1,
10764
127k
   OPC_Scope, 24, 
10765
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
10766
127k
    OPC_MoveChild0,
10767
127k
    OPC_CheckAndImm, 63, 
10768
127k
    OPC_RecordChild0,
10769
127k
    OPC_MoveParent,
10770
127k
    OPC_MoveParent,
10771
127k
    OPC_CheckType, MVT::v2i64,
10772
127k
    OPC_EmitNode1None, TARGET_VAL(WebAssembly::I32_WRAP_I64),
10773
127k
                  MVT::i32, 1, 1, 
10774
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I64x2),
10775
127k
                  MVT::v2i64, 2, 0, 2, 
10776
127k
   13, 
10777
127k
    OPC_CheckAndImm, 7, 
10778
127k
    OPC_RecordChild0,
10779
127k
    OPC_MoveParent,
10780
127k
    OPC_CheckType, MVT::v16i8,
10781
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I8x16),
10782
127k
                  MVT::v16i8, 2, 0, 1, 
10783
127k
   13, 
10784
127k
    OPC_CheckAndImm, 15, 
10785
127k
    OPC_RecordChild0,
10786
127k
    OPC_MoveParent,
10787
127k
    OPC_CheckType, MVT::v8i16,
10788
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I16x8),
10789
127k
                  MVT::v8i16, 2, 0, 1, 
10790
127k
   13, 
10791
127k
    OPC_CheckAndImm, 31, 
10792
127k
    OPC_RecordChild0,
10793
127k
    OPC_MoveParent,
10794
127k
    OPC_CheckType, MVT::v4i32,
10795
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I32x4),
10796
127k
                  MVT::v4i32, 2, 0, 1, 
10797
127k
   13, 
10798
127k
    OPC_CheckAndImm, 63, 
10799
127k
    OPC_RecordChild0,
10800
127k
    OPC_MoveParent,
10801
127k
    OPC_CheckType, MVT::v2i64,
10802
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I64x2),
10803
127k
                  MVT::v2i64, 2, 0, 1, 
10804
127k
   0, 
10805
127k
  43, 
10806
127k
   OPC_RecordChild1,
10807
127k
   OPC_SwitchType , 8, MVT::v16i8,
10808
127k
    OPC_CheckPatternPredicate0,
10809
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I8x16),
10810
127k
                  MVT::v16i8, 2, 0, 1, 
10811
127k
   8, MVT::v8i16,
10812
127k
    OPC_CheckPatternPredicate0,
10813
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I16x8),
10814
127k
                  MVT::v8i16, 2, 0, 1, 
10815
127k
   8, MVT::v4i32,
10816
127k
    OPC_CheckPatternPredicate0,
10817
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I32x4),
10818
127k
                  MVT::v4i32, 2, 0, 1, 
10819
127k
   8, MVT::v2i64,
10820
127k
    OPC_CheckPatternPredicate0,
10821
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SHR_S_I64x2),
10822
127k
                  MVT::v2i64, 2, 0, 1, 
10823
127k
   0,
10824
127k
  0, 
10825
127k
 83|128,3, TARGET_VAL(ISD::VSELECT),
10826
127k
  OPC_Scope, 97, 
10827
127k
   OPC_MoveChild0,
10828
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::SETCC),
10829
127k
   OPC_MoveChild0,
10830
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
10831
127k
   OPC_RecordChild0,
10832
127k
   OPC_SwitchType , 41, MVT::v4f32,
10833
127k
    OPC_CheckChild0Type, MVT::v4i32,
10834
127k
    OPC_MoveSibling1,
10835
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
10836
127k
    OPC_RecordChild0,
10837
127k
    OPC_CheckChild0Type, MVT::v4i32,
10838
127k
    OPC_MoveParent,
10839
127k
    OPC_CheckChild2CondCode, ISD::SETOLT,
10840
127k
    OPC_MoveParent,
10841
127k
    OPC_CheckType, MVT::v4i32,
10842
127k
    OPC_Scope, 11, 
10843
127k
     OPC_CheckChild1Same, 0,
10844
127k
     OPC_CheckChild2Same, 1,
10845
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F32x4),
10846
127k
                   MVT::v4i32, 2, 1, 0, 
10847
127k
    11, 
10848
127k
     OPC_CheckChild1Same, 1,
10849
127k
     OPC_CheckChild2Same, 0,
10850
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F32x4),
10851
127k
                   MVT::v4i32, 2, 0, 1, 
10852
127k
    0, 
10853
127k
   41, MVT::v2f64,
10854
127k
    OPC_CheckChild0Type, MVT::v2i64,
10855
127k
    OPC_MoveSibling1,
10856
127k
    OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST),
10857
127k
    OPC_RecordChild0,
10858
127k
    OPC_CheckChild0Type, MVT::v2i64,
10859
127k
    OPC_MoveParent,
10860
127k
    OPC_CheckChild2CondCode, ISD::SETOLT,
10861
127k
    OPC_MoveParent,
10862
127k
    OPC_CheckType, MVT::v2i64,
10863
127k
    OPC_Scope, 11, 
10864
127k
     OPC_CheckChild1Same, 0,
10865
127k
     OPC_CheckChild2Same, 1,
10866
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F64x2),
10867
127k
                   MVT::v2i64, 2, 1, 0, 
10868
127k
    11, 
10869
127k
     OPC_CheckChild1Same, 1,
10870
127k
     OPC_CheckChild2Same, 0,
10871
127k
     OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F64x2),
10872
127k
                   MVT::v2i64, 2, 0, 1, 
10873
127k
    0, 
10874
127k
   0,
10875
127k
  45, 
10876
127k
   OPC_RecordChild0,
10877
127k
   OPC_RecordChild1,
10878
127k
   OPC_RecordChild2,
10879
127k
   OPC_SwitchType , 8, MVT::v16i8,
10880
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
10881
127k
                  MVT::v16i8, 3, 1, 2, 0, 
10882
127k
   8, MVT::v8i16,
10883
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
10884
127k
                  MVT::v8i16, 3, 1, 2, 0, 
10885
127k
   8, MVT::v4i32,
10886
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
10887
127k
                  MVT::v4i32, 3, 1, 2, 0, 
10888
127k
   8, MVT::v2i64,
10889
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
10890
127k
                  MVT::v2i64, 3, 1, 2, 0, 
10891
127k
   0,
10892
127k
  37|128,2, 
10893
127k
   OPC_MoveChild0,
10894
127k
   OPC_CheckOpcode, TARGET_VAL(ISD::SETCC),
10895
127k
   OPC_RecordChild0,
10896
127k
   OPC_Scope, 13|128,1, 
10897
127k
    OPC_CheckChild0Type, MVT::v4f32,
10898
127k
    OPC_RecordChild1,
10899
127k
    OPC_Scope, 33, 
10900
127k
     OPC_CheckChild2CondCode, ISD::SETOLT,
10901
127k
     OPC_MoveParent,
10902
127k
     OPC_CheckType, MVT::v4f32,
10903
127k
     OPC_Scope, 12, 
10904
127k
      OPC_CheckChild1Same, 0,
10905
127k
      OPC_CheckChild2Same, 1,
10906
127k
      OPC_CheckPatternPredicate0,
10907
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F32x4),
10908
127k
                    MVT::v4f32, 2, 1, 0, 
10909
127k
     12, 
10910
127k
      OPC_CheckChild1Same, 1,
10911
127k
      OPC_CheckChild2Same, 0,
10912
127k
      OPC_CheckPatternPredicate0,
10913
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F32x4),
10914
127k
                    MVT::v4f32, 2, 0, 1, 
10915
127k
     0, 
10916
127k
    33, 
10917
127k
     OPC_CheckChild2CondCode, ISD::SETOLE,
10918
127k
     OPC_MoveParent,
10919
127k
     OPC_CheckType, MVT::v4f32,
10920
127k
     OPC_Scope, 12, 
10921
127k
      OPC_CheckChild1Same, 0,
10922
127k
      OPC_CheckChild2Same, 1,
10923
127k
      OPC_CheckPatternPredicate0,
10924
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F32x4),
10925
127k
                    MVT::v4f32, 2, 1, 0, 
10926
127k
     12, 
10927
127k
      OPC_CheckChild1Same, 1,
10928
127k
      OPC_CheckChild2Same, 0,
10929
127k
      OPC_CheckPatternPredicate0,
10930
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F32x4),
10931
127k
                    MVT::v4f32, 2, 0, 1, 
10932
127k
     0, 
10933
127k
    33, 
10934
127k
     OPC_CheckChild2CondCode, ISD::SETOGT,
10935
127k
     OPC_MoveParent,
10936
127k
     OPC_CheckType, MVT::v4f32,
10937
127k
     OPC_Scope, 12, 
10938
127k
      OPC_CheckChild1Same, 1,
10939
127k
      OPC_CheckChild2Same, 0,
10940
127k
      OPC_CheckPatternPredicate0,
10941
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F32x4),
10942
127k
                    MVT::v4f32, 2, 0, 1, 
10943
127k
     12, 
10944
127k
      OPC_CheckChild1Same, 0,
10945
127k
      OPC_CheckChild2Same, 1,
10946
127k
      OPC_CheckPatternPredicate0,
10947
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F32x4),
10948
127k
                    MVT::v4f32, 2, 1, 0, 
10949
127k
     0, 
10950
127k
    33, 
10951
127k
     OPC_CheckChild2CondCode, ISD::SETOGE,
10952
127k
     OPC_MoveParent,
10953
127k
     OPC_CheckType, MVT::v4f32,
10954
127k
     OPC_Scope, 12, 
10955
127k
      OPC_CheckChild1Same, 1,
10956
127k
      OPC_CheckChild2Same, 0,
10957
127k
      OPC_CheckPatternPredicate0,
10958
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F32x4),
10959
127k
                    MVT::v4f32, 2, 0, 1, 
10960
127k
     12, 
10961
127k
      OPC_CheckChild1Same, 0,
10962
127k
      OPC_CheckChild2Same, 1,
10963
127k
      OPC_CheckPatternPredicate0,
10964
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F32x4),
10965
127k
                    MVT::v4f32, 2, 1, 0, 
10966
127k
     0, 
10967
127k
    0, 
10968
127k
   13|128,1, 
10969
127k
    OPC_CheckChild0Type, MVT::v2f64,
10970
127k
    OPC_RecordChild1,
10971
127k
    OPC_Scope, 33, 
10972
127k
     OPC_CheckChild2CondCode, ISD::SETOLT,
10973
127k
     OPC_MoveParent,
10974
127k
     OPC_CheckType, MVT::v2f64,
10975
127k
     OPC_Scope, 12, 
10976
127k
      OPC_CheckChild1Same, 0,
10977
127k
      OPC_CheckChild2Same, 1,
10978
127k
      OPC_CheckPatternPredicate0,
10979
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F64x2),
10980
127k
                    MVT::v2f64, 2, 1, 0, 
10981
127k
     12, 
10982
127k
      OPC_CheckChild1Same, 1,
10983
127k
      OPC_CheckChild2Same, 0,
10984
127k
      OPC_CheckPatternPredicate0,
10985
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F64x2),
10986
127k
                    MVT::v2f64, 2, 0, 1, 
10987
127k
     0, 
10988
127k
    33, 
10989
127k
     OPC_CheckChild2CondCode, ISD::SETOLE,
10990
127k
     OPC_MoveParent,
10991
127k
     OPC_CheckType, MVT::v2f64,
10992
127k
     OPC_Scope, 12, 
10993
127k
      OPC_CheckChild1Same, 0,
10994
127k
      OPC_CheckChild2Same, 1,
10995
127k
      OPC_CheckPatternPredicate0,
10996
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F64x2),
10997
127k
                    MVT::v2f64, 2, 1, 0, 
10998
127k
     12, 
10999
127k
      OPC_CheckChild1Same, 1,
11000
127k
      OPC_CheckChild2Same, 0,
11001
127k
      OPC_CheckPatternPredicate0,
11002
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F64x2),
11003
127k
                    MVT::v2f64, 2, 0, 1, 
11004
127k
     0, 
11005
127k
    33, 
11006
127k
     OPC_CheckChild2CondCode, ISD::SETOGT,
11007
127k
     OPC_MoveParent,
11008
127k
     OPC_CheckType, MVT::v2f64,
11009
127k
     OPC_Scope, 12, 
11010
127k
      OPC_CheckChild1Same, 1,
11011
127k
      OPC_CheckChild2Same, 0,
11012
127k
      OPC_CheckPatternPredicate0,
11013
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F64x2),
11014
127k
                    MVT::v2f64, 2, 0, 1, 
11015
127k
     12, 
11016
127k
      OPC_CheckChild1Same, 0,
11017
127k
      OPC_CheckChild2Same, 1,
11018
127k
      OPC_CheckPatternPredicate0,
11019
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F64x2),
11020
127k
                    MVT::v2f64, 2, 1, 0, 
11021
127k
     0, 
11022
127k
    33, 
11023
127k
     OPC_CheckChild2CondCode, ISD::SETOGE,
11024
127k
     OPC_MoveParent,
11025
127k
     OPC_CheckType, MVT::v2f64,
11026
127k
     OPC_Scope, 12, 
11027
127k
      OPC_CheckChild1Same, 1,
11028
127k
      OPC_CheckChild2Same, 0,
11029
127k
      OPC_CheckPatternPredicate0,
11030
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMIN_F64x2),
11031
127k
                    MVT::v2f64, 2, 0, 1, 
11032
127k
     12, 
11033
127k
      OPC_CheckChild1Same, 0,
11034
127k
      OPC_CheckChild2Same, 1,
11035
127k
      OPC_CheckPatternPredicate0,
11036
127k
      OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::PMAX_F64x2),
11037
127k
                    MVT::v2f64, 2, 1, 0, 
11038
127k
     0, 
11039
127k
    0, 
11040
127k
   0, 
11041
127k
  25, 
11042
127k
   OPC_RecordChild0,
11043
127k
   OPC_RecordChild1,
11044
127k
   OPC_RecordChild2,
11045
127k
   OPC_SwitchType , 8, MVT::v4f32,
11046
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
11047
127k
                  MVT::v4f32, 3, 1, 2, 0, 
11048
127k
   8, MVT::v2f64,
11049
127k
    OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::BITSELECT),
11050
127k
                  MVT::v2f64, 3, 1, 2, 0, 
11051
127k
   0,
11052
127k
  0, 
11053
127k
 16, TARGET_VAL(WebAssemblyISD::SWIZZLE),
11054
127k
  OPC_RecordChild0,
11055
127k
  OPC_CheckChild0Type, MVT::v16i8,
11056
127k
  OPC_RecordChild1,
11057
127k
  OPC_CheckChild1Type, MVT::v16i8,
11058
127k
  OPC_CheckType, MVT::v16i8,
11059
127k
  OPC_CheckPatternPredicate0,
11060
127k
  OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::SWIZZLE),
11061
127k
                MVT::v16i8, 2, 0, 1, 
11062
127k
 39, TARGET_VAL(ISD::ABS),
11063
127k
  OPC_RecordChild0,
11064
127k
  OPC_SwitchType , 7, MVT::v16i8,
11065
127k
   OPC_CheckPatternPredicate0,
11066
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ABS_I8x16),
11067
127k
                 MVT::v16i8, 1, 0, 
11068
127k
  7, MVT::v8i16,
11069
127k
   OPC_CheckPatternPredicate0,
11070
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ABS_I16x8),
11071
127k
                 MVT::v8i16, 1, 0, 
11072
127k
  7, MVT::v4i32,
11073
127k
   OPC_CheckPatternPredicate0,
11074
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ABS_I32x4),
11075
127k
                 MVT::v4i32, 1, 0, 
11076
127k
  7, MVT::v2i64,
11077
127k
   OPC_CheckPatternPredicate0,
11078
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ABS_I64x2),
11079
127k
                 MVT::v2i64, 1, 0, 
11080
127k
  0,
11081
127k
 24, TARGET_VAL(ISD::SADDSAT),
11082
127k
  OPC_RecordChild0,
11083
127k
  OPC_RecordChild1,
11084
127k
  OPC_SwitchType , 8, MVT::v16i8,
11085
127k
   OPC_CheckPatternPredicate0,
11086
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_SAT_S_I8x16),
11087
127k
                 MVT::v16i8, 2, 0, 1, 
11088
127k
  8, MVT::v8i16,
11089
127k
   OPC_CheckPatternPredicate0,
11090
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_SAT_S_I16x8),
11091
127k
                 MVT::v8i16, 2, 0, 1, 
11092
127k
  0,
11093
127k
 24, TARGET_VAL(ISD::UADDSAT),
11094
127k
  OPC_RecordChild0,
11095
127k
  OPC_RecordChild1,
11096
127k
  OPC_SwitchType , 8, MVT::v16i8,
11097
127k
   OPC_CheckPatternPredicate0,
11098
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_SAT_U_I8x16),
11099
127k
                 MVT::v16i8, 2, 0, 1, 
11100
127k
  8, MVT::v8i16,
11101
127k
   OPC_CheckPatternPredicate0,
11102
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::ADD_SAT_U_I16x8),
11103
127k
                 MVT::v8i16, 2, 0, 1, 
11104
127k
  0,
11105
127k
 34, TARGET_VAL(ISD::SMIN),
11106
127k
  OPC_RecordChild0,
11107
127k
  OPC_RecordChild1,
11108
127k
  OPC_SwitchType , 8, MVT::v16i8,
11109
127k
   OPC_CheckPatternPredicate0,
11110
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MIN_S_I8x16),
11111
127k
                 MVT::v16i8, 2, 0, 1, 
11112
127k
  8, MVT::v8i16,
11113
127k
   OPC_CheckPatternPredicate0,
11114
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MIN_S_I16x8),
11115
127k
                 MVT::v8i16, 2, 0, 1, 
11116
127k
  8, MVT::v4i32,
11117
127k
   OPC_CheckPatternPredicate0,
11118
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MIN_S_I32x4),
11119
127k
                 MVT::v4i32, 2, 0, 1, 
11120
127k
  0,
11121
127k
 34, TARGET_VAL(ISD::UMIN),
11122
127k
  OPC_RecordChild0,
11123
127k
  OPC_RecordChild1,
11124
127k
  OPC_SwitchType , 8, MVT::v16i8,
11125
127k
   OPC_CheckPatternPredicate0,
11126
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MIN_U_I8x16),
11127
127k
                 MVT::v16i8, 2, 0, 1, 
11128
127k
  8, MVT::v8i16,
11129
127k
   OPC_CheckPatternPredicate0,
11130
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MIN_U_I16x8),
11131
127k
                 MVT::v8i16, 2, 0, 1, 
11132
127k
  8, MVT::v4i32,
11133
127k
   OPC_CheckPatternPredicate0,
11134
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MIN_U_I32x4),
11135
127k
                 MVT::v4i32, 2, 0, 1, 
11136
127k
  0,
11137
127k
 34, TARGET_VAL(ISD::SMAX),
11138
127k
  OPC_RecordChild0,
11139
127k
  OPC_RecordChild1,
11140
127k
  OPC_SwitchType , 8, MVT::v16i8,
11141
127k
   OPC_CheckPatternPredicate0,
11142
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MAX_S_I8x16),
11143
127k
                 MVT::v16i8, 2, 0, 1, 
11144
127k
  8, MVT::v8i16,
11145
127k
   OPC_CheckPatternPredicate0,
11146
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MAX_S_I16x8),
11147
127k
                 MVT::v8i16, 2, 0, 1, 
11148
127k
  8, MVT::v4i32,
11149
127k
   OPC_CheckPatternPredicate0,
11150
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MAX_S_I32x4),
11151
127k
                 MVT::v4i32, 2, 0, 1, 
11152
127k
  0,
11153
127k
 34, TARGET_VAL(ISD::UMAX),
11154
127k
  OPC_RecordChild0,
11155
127k
  OPC_RecordChild1,
11156
127k
  OPC_SwitchType , 8, MVT::v16i8,
11157
127k
   OPC_CheckPatternPredicate0,
11158
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MAX_U_I8x16),
11159
127k
                 MVT::v16i8, 2, 0, 1, 
11160
127k
  8, MVT::v8i16,
11161
127k
   OPC_CheckPatternPredicate0,
11162
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MAX_U_I16x8),
11163
127k
                 MVT::v8i16, 2, 0, 1, 
11164
127k
  8, MVT::v4i32,
11165
127k
   OPC_CheckPatternPredicate0,
11166
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::MAX_U_I32x4),
11167
127k
                 MVT::v4i32, 2, 0, 1, 
11168
127k
  0,
11169
127k
 12, TARGET_VAL(WebAssemblyISD::TRUNC_SAT_ZERO_S),
11170
127k
  OPC_RecordChild0,
11171
127k
  OPC_CheckChild0Type, MVT::v2f64,
11172
127k
  OPC_CheckType, MVT::v4i32,
11173
127k
  OPC_CheckPatternPredicate0,
11174
127k
  OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::trunc_sat_zero_s_I32x4),
11175
127k
                MVT::v4i32, 1, 0, 
11176
127k
 12, TARGET_VAL(WebAssemblyISD::TRUNC_SAT_ZERO_U),
11177
127k
  OPC_RecordChild0,
11178
127k
  OPC_CheckChild0Type, MVT::v2f64,
11179
127k
  OPC_CheckType, MVT::v4i32,
11180
127k
  OPC_CheckPatternPredicate0,
11181
127k
  OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::trunc_sat_zero_u_I32x4),
11182
127k
                MVT::v4i32, 1, 0, 
11183
127k
 36, TARGET_VAL(WebAssemblyISD::EXTEND_LOW_S),
11184
127k
  OPC_RecordChild0,
11185
127k
  OPC_SwitchType , 9, MVT::v8i16,
11186
127k
   OPC_CheckChild0Type, MVT::v16i8,
11187
127k
   OPC_CheckPatternPredicate0,
11188
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_low_s_I16x8),
11189
127k
                 MVT::v8i16, 1, 0, 
11190
127k
  9, MVT::v4i32,
11191
127k
   OPC_CheckChild0Type, MVT::v8i16,
11192
127k
   OPC_CheckPatternPredicate0,
11193
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_low_s_I32x4),
11194
127k
                 MVT::v4i32, 1, 0, 
11195
127k
  9, MVT::v2i64,
11196
127k
   OPC_CheckChild0Type, MVT::v4i32,
11197
127k
   OPC_CheckPatternPredicate0,
11198
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_low_s_I64x2),
11199
127k
                 MVT::v2i64, 1, 0, 
11200
127k
  0,
11201
127k
 36, TARGET_VAL(WebAssemblyISD::EXTEND_HIGH_S),
11202
127k
  OPC_RecordChild0,
11203
127k
  OPC_SwitchType , 9, MVT::v8i16,
11204
127k
   OPC_CheckChild0Type, MVT::v16i8,
11205
127k
   OPC_CheckPatternPredicate0,
11206
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_high_s_I16x8),
11207
127k
                 MVT::v8i16, 1, 0, 
11208
127k
  9, MVT::v4i32,
11209
127k
   OPC_CheckChild0Type, MVT::v8i16,
11210
127k
   OPC_CheckPatternPredicate0,
11211
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_high_s_I32x4),
11212
127k
                 MVT::v4i32, 1, 0, 
11213
127k
  9, MVT::v2i64,
11214
127k
   OPC_CheckChild0Type, MVT::v4i32,
11215
127k
   OPC_CheckPatternPredicate0,
11216
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_high_s_I64x2),
11217
127k
                 MVT::v2i64, 1, 0, 
11218
127k
  0,
11219
127k
 36, TARGET_VAL(WebAssemblyISD::EXTEND_LOW_U),
11220
127k
  OPC_RecordChild0,
11221
127k
  OPC_SwitchType , 9, MVT::v8i16,
11222
127k
   OPC_CheckChild0Type, MVT::v16i8,
11223
127k
   OPC_CheckPatternPredicate0,
11224
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_low_u_I16x8),
11225
127k
                 MVT::v8i16, 1, 0, 
11226
127k
  9, MVT::v4i32,
11227
127k
   OPC_CheckChild0Type, MVT::v8i16,
11228
127k
   OPC_CheckPatternPredicate0,
11229
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_low_u_I32x4),
11230
127k
                 MVT::v4i32, 1, 0, 
11231
127k
  9, MVT::v2i64,
11232
127k
   OPC_CheckChild0Type, MVT::v4i32,
11233
127k
   OPC_CheckPatternPredicate0,
11234
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_low_u_I64x2),
11235
127k
                 MVT::v2i64, 1, 0, 
11236
127k
  0,
11237
127k
 36, TARGET_VAL(WebAssemblyISD::EXTEND_HIGH_U),
11238
127k
  OPC_RecordChild0,
11239
127k
  OPC_SwitchType , 9, MVT::v8i16,
11240
127k
   OPC_CheckChild0Type, MVT::v16i8,
11241
127k
   OPC_CheckPatternPredicate0,
11242
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_high_u_I16x8),
11243
127k
                 MVT::v8i16, 1, 0, 
11244
127k
  9, MVT::v4i32,
11245
127k
   OPC_CheckChild0Type, MVT::v8i16,
11246
127k
   OPC_CheckPatternPredicate0,
11247
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_high_u_I32x4),
11248
127k
                 MVT::v4i32, 1, 0, 
11249
127k
  9, MVT::v2i64,
11250
127k
   OPC_CheckChild0Type, MVT::v4i32,
11251
127k
   OPC_CheckPatternPredicate0,
11252
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::extend_high_u_I64x2),
11253
127k
                 MVT::v2i64, 1, 0, 
11254
127k
  0,
11255
127k
 31, TARGET_VAL(WebAssemblyISD::NARROW_U),
11256
127k
  OPC_RecordChild0,
11257
127k
  OPC_SwitchType , 12, MVT::v16i8,
11258
127k
   OPC_CheckChild0Type, MVT::v8i16,
11259
127k
   OPC_RecordChild1,
11260
127k
   OPC_CheckChild1Type, MVT::v8i16,
11261
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NARROW_U_I8x16),
11262
127k
                 MVT::v16i8, 2, 0, 1, 
11263
127k
  12, MVT::v8i16,
11264
127k
   OPC_CheckChild0Type, MVT::v4i32,
11265
127k
   OPC_RecordChild1,
11266
127k
   OPC_CheckChild1Type, MVT::v4i32,
11267
127k
   OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::NARROW_U_I16x8),
11268
127k
                 MVT::v8i16, 2, 0, 1, 
11269
127k
  0,
11270
127k
 12, TARGET_VAL(WebAssemblyISD::CONVERT_LOW_S),
11271
127k
  OPC_RecordChild0,
11272
127k
  OPC_CheckChild0Type, MVT::v4i32,
11273
127k
  OPC_CheckType, MVT::v2f64,
11274
127k
  OPC_CheckPatternPredicate0,
11275
127k
  OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::convert_low_s_F64x2),
11276
127k
                MVT::v2f64, 1, 0, 
11277
127k
 12, TARGET_VAL(WebAssemblyISD::CONVERT_LOW_U),
11278
127k
  OPC_RecordChild0,
11279
127k
  OPC_CheckChild0Type, MVT::v4i32,
11280
127k
  OPC_CheckType, MVT::v2f64,
11281
127k
  OPC_CheckPatternPredicate0,
11282
127k
  OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::convert_low_u_F64x2),
11283
127k
                MVT::v2f64, 1, 0, 
11284
127k
 12, TARGET_VAL(WebAssemblyISD::DEMOTE_ZERO),
11285
127k
  OPC_RecordChild0,
11286
127k
  OPC_CheckChild0Type, MVT::v2f64,
11287
127k
  OPC_CheckType, MVT::v4f32,
11288
127k
  OPC_CheckPatternPredicate0,
11289
127k
  OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::demote_zero_F32x4),
11290
127k
                MVT::v4f32, 1, 0, 
11291
127k
 12, TARGET_VAL(WebAssemblyISD::PROMOTE_LOW),
11292
127k
  OPC_RecordChild0,
11293
127k
  OPC_CheckChild0Type, MVT::v4f32,
11294
127k
  OPC_CheckType, MVT::v2f64,
11295
127k
  OPC_CheckPatternPredicate0,
11296
127k
  OPC_MorphNodeTo1None, TARGET_VAL(WebAssembly::promote_low_F64x2),
11297
127k
                MVT::v2f64, 1, 0, 
11298
127k
 0,
11299
127k
    0
11300
127k
  }; // Total Array size is 22597 bytes
11301
11302
127k
  #undef TARGET_VAL
11303
127k
  SelectCodeCommon(N, MatcherTable,sizeof(MatcherTable));
11304
127k
}
11305
#endif // GET_DAGISEL_BODY
11306
11307
#ifdef GET_DAGISEL_DECL
11308
bool CheckPatternPredicate(unsigned PredNo) const override;
11309
#endif
11310
#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
11311
bool DAGISEL_CLASS_COLONCOLON CheckPatternPredicate(unsigned PredNo) const
11312
#if DAGISEL_INLINE
11313
  override
11314
#endif
11315
9.47k
{
11316
9.47k
  switch (PredNo) {
11317
0
  default: llvm_unreachable("Invalid predicate in table?");
11318
0
  case 0: return (Subtarget->hasSIMD128());
11319
0
  case 1: return (!Subtarget->hasAddr64()) && (Subtarget->hasAtomics());
11320
0
  case 2: return (Subtarget->hasAddr64()) && (Subtarget->hasAtomics());
11321
8.92k
  case 3: return (!Subtarget->hasAddr64());
11322
0
  case 4: return (Subtarget->hasAddr64());
11323
0
  case 5: return (Subtarget->hasReferenceTypes());
11324
0
  case 6: return (Subtarget->hasRelaxedSIMD());
11325
0
  case 7: return (Subtarget->hasNontrappingFPToInt());
11326
0
  case 8: return (!Subtarget->hasNontrappingFPToInt());
11327
319
  case 9: return (Subtarget->hasSignExt());
11328
0
  case 10: return (Subtarget->hasBulkMemory());
11329
0
  case 11: return (!Subtarget->hasAddr64()) && (TM.isPositionIndependent());
11330
0
  case 12: return (Subtarget->hasAddr64()) && (TM.isPositionIndependent());
11331
0
  case 13: return (Subtarget->hasExceptionHandling());
11332
233
  case 14: return (!Subtarget->hasAddr64()) && (!TM.isPositionIndependent());
11333
0
  case 15: return (Subtarget->hasAddr64()) && (!TM.isPositionIndependent());
11334
9.47k
  }
11335
9.47k
}
11336
#endif // GET_DAGISEL_BODY
11337
11338
#ifdef GET_DAGISEL_DECL
11339
bool CheckNodePredicate(SDNode *Node, unsigned PredNo) const override;
11340
#endif
11341
#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
11342
bool DAGISEL_CLASS_COLONCOLON CheckNodePredicate(SDNode *Node, unsigned PredNo) const
11343
#if DAGISEL_INLINE
11344
  override
11345
#endif
11346
27.7k
{
11347
27.7k
  switch (PredNo) {
11348
0
  default: llvm_unreachable("Invalid predicate in table?");
11349
0
  case 0: {
11350
    // Predicate_LaneIdx32
11351
0
    int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue();
11352
0
return 0 <= Imm && Imm < 32;
11353
0
  }
11354
180
  case 1: {
11355
    // Predicate_atomic_cmp_swap_16
11356
    // Predicate_atomic_load_16
11357
    // Predicate_atomic_load_add_16
11358
    // Predicate_atomic_load_and_16
11359
    // Predicate_atomic_load_or_16
11360
    // Predicate_atomic_load_sub_16
11361
    // Predicate_atomic_load_xor_16
11362
    // Predicate_atomic_store_16
11363
    // Predicate_atomic_swap_16
11364
    // Predicate_extloadi16
11365
    // Predicate_sextloadi16
11366
    // Predicate_zextloadi16
11367
180
    SDNode *N = Node;
11368
180
    (void)N;
11369
180
if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i16) return false;
11370
180
return true;
11371
11372
180
  }
11373
546
  case 2: {
11374
    // Predicate_atomic_cmp_swap_8
11375
    // Predicate_atomic_load_8
11376
    // Predicate_atomic_load_add_8
11377
    // Predicate_atomic_load_and_8
11378
    // Predicate_atomic_load_or_8
11379
    // Predicate_atomic_load_sub_8
11380
    // Predicate_atomic_load_xor_8
11381
    // Predicate_atomic_store_8
11382
    // Predicate_atomic_swap_8
11383
    // Predicate_extloadi8
11384
    // Predicate_sextloadi8
11385
    // Predicate_zextloadi8
11386
546
    SDNode *N = Node;
11387
546
    (void)N;
11388
546
if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i8) return false;
11389
366
return true;
11390
11391
546
  }
11392
0
  case 3: {
11393
    // Predicate_atomic_cmp_swap_32
11394
    // Predicate_atomic_load_32
11395
    // Predicate_atomic_load_add_32
11396
    // Predicate_atomic_load_and_32
11397
    // Predicate_atomic_load_or_32
11398
    // Predicate_atomic_load_sub_32
11399
    // Predicate_atomic_load_xor_32
11400
    // Predicate_atomic_store_32
11401
    // Predicate_atomic_swap_32
11402
    // Predicate_extloadi32
11403
    // Predicate_sextloadi32
11404
    // Predicate_zextloadi32
11405
0
    SDNode *N = Node;
11406
0
    (void)N;
11407
0
if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i32) return false;
11408
0
return true;
11409
11410
0
  }
11411
7.33k
  case 4: {
11412
    // Predicate_unindexedstore
11413
7.33k
    SDNode *N = Node;
11414
7.33k
    (void)N;
11415
7.33k
if (cast<StoreSDNode>(N)->getAddressingMode() != ISD::UNINDEXED) return false;
11416
7.33k
return true;
11417
11418
7.33k
  }
11419
7.33k
  case 5: {
11420
    // Predicate_store
11421
7.33k
    SDNode *N = Node;
11422
7.33k
    (void)N;
11423
7.33k
 if (cast<StoreSDNode>(N)->isTruncatingStore()) return false;
11424
4.54k
return true;
11425
11426
7.33k
  }
11427
2.05k
  case 6: {
11428
    // Predicate_load
11429
2.05k
    SDNode *N = Node;
11430
2.05k
    (void)N;
11431
2.05k
if (cast<LoadSDNode>(N)->getExtensionType() != ISD::NON_EXTLOAD) return false;
11432
1.51k
return true;
11433
11434
2.05k
  }
11435
0
  case 7: {
11436
    // Predicate_atomic_cmp_swap_64
11437
    // Predicate_atomic_load_64
11438
    // Predicate_atomic_load_add_64
11439
    // Predicate_atomic_load_and_64
11440
    // Predicate_atomic_load_or_64
11441
    // Predicate_atomic_load_sub_64
11442
    // Predicate_atomic_load_xor_64
11443
    // Predicate_atomic_store_64
11444
    // Predicate_atomic_swap_64
11445
0
    SDNode *N = Node;
11446
0
    (void)N;
11447
0
if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i64) return false;
11448
0
return true;
11449
11450
0
  }
11451
0
  case 8: {
11452
    // Predicate_ImmI8
11453
0
    int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue();
11454
0
return -(1 << (8 - 1)) <= Imm && Imm < (1 << (8 - 1));
11455
0
  }
11456
1.59k
  case 9: {
11457
    // Predicate_unindexedload
11458
1.59k
    SDNode *N = Node;
11459
1.59k
    (void)N;
11460
1.59k
if (cast<LoadSDNode>(N)->getAddressingMode() != ISD::UNINDEXED) return false;
11461
1.59k
return true;
11462
11463
1.59k
  }
11464
640
  case 10: {
11465
    // Predicate_extload
11466
640
    SDNode *N = Node;
11467
640
    (void)N;
11468
640
if (cast<LoadSDNode>(N)->getExtensionType() != ISD::EXTLOAD) return false;
11469
173
return true;
11470
11471
640
  }
11472
2.79k
  case 11: {
11473
    // Predicate_truncstore
11474
2.79k
    SDNode *N = Node;
11475
2.79k
    (void)N;
11476
2.79k
 if (!cast<StoreSDNode>(N)->isTruncatingStore()) return false;
11477
2.79k
return true;
11478
11479
2.79k
  }
11480
1.01k
  case 12: {
11481
    // Predicate_sextload
11482
1.01k
    SDNode *N = Node;
11483
1.01k
    (void)N;
11484
1.01k
if (cast<LoadSDNode>(N)->getExtensionType() != ISD::SEXTLOAD) return false;
11485
79
return true;
11486
11487
1.01k
  }
11488
0
  case 13: {
11489
    // Predicate_ImmI16
11490
0
    int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue();
11491
0
return -(1 << (16 - 1)) <= Imm && Imm < (1 << (16 - 1));
11492
1.01k
  }
11493
934
  case 14: {
11494
    // Predicate_zextload
11495
934
    SDNode *N = Node;
11496
934
    (void)N;
11497
934
if (cast<LoadSDNode>(N)->getExtensionType() != ISD::ZEXTLOAD) return false;
11498
294
return true;
11499
11500
934
  }
11501
0
  case 15: {
11502
    // Predicate_LaneIdx16
11503
0
    int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue();
11504
0
return 0 <= Imm && Imm < 16;
11505
934
  }
11506
0
  case 16: {
11507
    // Predicate_LaneIdx4
11508
0
    int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue();
11509
0
return 0 <= Imm && Imm < 4;
11510
934
  }
11511
0
  case 17: {
11512
    // Predicate_LaneIdx8
11513
0
    int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue();
11514
0
return 0 <= Imm && Imm < 8;
11515
934
  }
11516
0
  case 18: {
11517
    // Predicate_LaneIdx2
11518
0
    int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue();
11519
0
return 0 <= Imm && Imm < 2;
11520
934
  }
11521
2.79k
  case 19: {
11522
    // Predicate_truncstorei8
11523
2.79k
    SDNode *N = Node;
11524
2.79k
    (void)N;
11525
2.79k
if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i8) return false;
11526
2.30k
 if (!cast<StoreSDNode>(N)->isTruncatingStore()) return false;
11527
2.30k
return true;
11528
11529
2.30k
  }
11530
483
  case 20: {
11531
    // Predicate_truncstorei16
11532
483
    SDNode *N = Node;
11533
483
    (void)N;
11534
483
if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i16) return false;
11535
471
 if (!cast<StoreSDNode>(N)->isTruncatingStore()) return false;
11536
471
return true;
11537
11538
471
  }
11539
0
  case 21: {
11540
    // Predicate_extloadvi8
11541
    // Predicate_sextloadvi8
11542
    // Predicate_zextloadvi8
11543
0
    SDNode *N = Node;
11544
0
    (void)N;
11545
0
if (cast<LoadSDNode>(N)->getMemoryVT().getScalarType() != MVT::i8) return false;
11546
0
return true;
11547
11548
0
  }
11549
0
  case 22: {
11550
    // Predicate_extloadvi16
11551
    // Predicate_sextloadvi16
11552
    // Predicate_zextloadvi16
11553
0
    SDNode *N = Node;
11554
0
    (void)N;
11555
0
if (cast<LoadSDNode>(N)->getMemoryVT().getScalarType() != MVT::i16) return false;
11556
0
return true;
11557
11558
0
  }
11559
0
  case 23: {
11560
    // Predicate_extloadvi32
11561
    // Predicate_sextloadvi32
11562
    // Predicate_zextloadvi32
11563
0
    SDNode *N = Node;
11564
0
    (void)N;
11565
0
if (cast<LoadSDNode>(N)->getMemoryVT().getScalarType() != MVT::i32) return false;
11566
0
return true;
11567
11568
0
  }
11569
0
  case 24: {
11570
    // Predicate_add_nuw
11571
0
    SDNode *N = Node;
11572
0
    (void)N;
11573
0
return N->getFlags().hasNoUnsignedWrap();
11574
0
  }
11575
12
  case 25: {
11576
    // Predicate_truncstorei32
11577
12
    SDNode *N = Node;
11578
12
    (void)N;
11579
12
if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i32) return false;
11580
12
 if (!cast<StoreSDNode>(N)->isTruncatingStore()) return false;
11581
12
return true;
11582
11583
12
  }
11584
4
  case 26: {
11585
    // Predicate_bool_node
11586
4
    SDNode *N = Node;
11587
4
    (void)N;
11588
11589
4
  return CurDAG->computeKnownBits(SDValue(N, 0)).countMinLeadingZeros() == 31;
11590
11591
12
  }
11592
27.7k
  }
11593
27.7k
}
11594
#endif // GET_DAGISEL_BODY
11595
11596
#ifdef GET_DAGISEL_DECL
11597
bool CheckComplexPattern(SDNode *Root, SDNode *Parent,
11598
      SDValue N, unsigned PatternNo,
11599
      SmallVectorImpl<std::pair<SDValue, SDNode *>> &Result) override;
11600
#endif
11601
#if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE
11602
bool DAGISEL_CLASS_COLONCOLON CheckComplexPattern(SDNode *Root, SDNode *Parent,
11603
      SDValue N, unsigned PatternNo,
11604
      SmallVectorImpl<std::pair<SDValue, SDNode *>> &Result)
11605
#if DAGISEL_INLINE
11606
  override
11607
#endif
11608
8.92k
{
11609
8.92k
  unsigned NextRes = Result.size();
11610
8.92k
  switch (PatternNo) {
11611
0
  default: llvm_unreachable("Invalid pattern # in table?");
11612
8.92k
  case 0:
11613
8.92k
    Result.resize(NextRes+2);
11614
8.92k
  return SelectAddrOperands32(N, Result[NextRes+0].first, Result[NextRes+1].first);
11615
0
  case 1:
11616
0
    Result.resize(NextRes+2);
11617
0
  return SelectAddrOperands64(N, Result[NextRes+0].first, Result[NextRes+1].first);
11618
8.92k
  }
11619
8.92k
}
11620
#endif // GET_DAGISEL_BODY
11621
11622
11623
#ifdef DAGISEL_INLINE
11624
#undef DAGISEL_INLINE
11625
#endif
11626
#ifdef DAGISEL_CLASS_COLONCOLON
11627
#undef DAGISEL_CLASS_COLONCOLON
11628
#endif
11629
#ifdef GET_DAGISEL_DECL
11630
#undef GET_DAGISEL_DECL
11631
#endif
11632
#ifdef GET_DAGISEL_BODY
11633
#undef GET_DAGISEL_BODY
11634
#endif