denyhosts/clamscan/libclamav/c++/X86GenDAGISel.inc
2022-10-22 18:41:00 +08:00

37913 lines
1.6 MiB

//===- TableGen'erated file -------------------------------------*- C++ -*-===//
//
// DAG Instruction Selector for the X86 target
//
// Automatically generated file, do not edit!
//
//===----------------------------------------------------------------------===//
// *** NOTE: This file is #included into the middle of the target
// *** instruction selector class. These functions are really methods.
// The main instruction selector code.
SDNode *SelectCode(SDNode *N) {
// Opcodes are emitted as 2 bytes, TARGET_OPCODE handles this.
#define TARGET_OPCODE(X) X & 255, unsigned(X) >> 8
static const unsigned char MatcherTable[] = {
OPC_SwitchOpcode , 86|128,98, TARGET_OPCODE(ISD::STORE),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_Scope, 34|128,2,
OPC_RecordChild1,
OPC_Scope, 80,
OPC_CheckChild1Type, MVT::v4f32,
OPC_RecordChild2,
OPC_CheckPredicate, 0,
OPC_Scope, 34,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_Scope, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTDQmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTDQmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
77,
OPC_CheckChild1Type, MVT::v2f64,
OPC_RecordChild2,
OPC_CheckPredicate, 0,
OPC_Scope, 34,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_Scope, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTDQ_64mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
34,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_Scope, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTDQ_64mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
0,
39,
OPC_CheckChild1Type, MVT::v8f32,
OPC_RecordChild2,
OPC_CheckPredicate, 0,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_Scope, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTPSYmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTDQYmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
39,
OPC_CheckChild1Type, MVT::v4f64,
OPC_RecordChild2,
OPC_CheckPredicate, 0,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_Scope, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTPDYmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTDQY_64mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
23,
OPC_CheckChild1Type, MVT::i32,
OPC_RecordChild2,
OPC_CheckPredicate, 1,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTImr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
23,
OPC_CheckChild1Type, MVT::i64,
OPC_RecordChild2,
OPC_CheckPredicate, 1,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTI_64mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
33|128,86,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 82|128,5, TARGET_OPCODE(ISD::SHL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 47,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
45,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
45,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
85,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckType, MVT::i8,
OPC_Scope, 38,
OPC_CheckAndImm, 63,
OPC_RecordChild0,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
34,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
0,
41,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
41,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
90,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_Scope, 38,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
43,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
46,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
46,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
88,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
36,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
0,
40,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
40,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
42,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
0,
82|128,5, TARGET_OPCODE(ISD::SRL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 47,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
45,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
45,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
85,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckType, MVT::i8,
OPC_Scope, 38,
OPC_CheckAndImm, 63,
OPC_RecordChild0,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
34,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
0,
41,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
41,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
90,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_Scope, 38,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
43,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
46,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
46,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
88,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
36,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
0,
40,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
40,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
42,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
0,
82|128,5, TARGET_OPCODE(ISD::SRA),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 47,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
45,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
45,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
85,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckType, MVT::i8,
OPC_Scope, 38,
OPC_CheckAndImm, 63,
OPC_RecordChild0,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
34,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
0,
41,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
41,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
90,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_Scope, 38,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
43,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
46,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
46,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
88,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
36,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
0,
40,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
40,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
42,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
0,
101|128,4, TARGET_OPCODE(ISD::SUB),
OPC_MoveChild, 0,
OPC_Scope, 32|128,1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 36,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG8m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
34,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG16m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
34,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
36,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
0,
61|128,3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 78|128,1,
OPC_CheckPredicate, 3,
OPC_Scope, 27|128,1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 107,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 32, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
32, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
32, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
37,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mi32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
44,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
44,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
44,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
6|128,1,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 30, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
0,
0,
0,
23|128,6, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 0|128,5,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 49,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT8m), 0|OPFL_Chain|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
47,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT16m), 0|OPFL_Chain|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
47,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT32m), 0|OPFL_Chain|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
125|128,1,
OPC_CheckPredicate, 3,
OPC_Scope, 47,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT64m), 0|OPFL_Chain|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
114,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 32, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
32, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
32, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
85,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 37,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mi32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
35,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
0,
44,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
44,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
6|128,1,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 30, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
0,
0,
17|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 30, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
0,
0,
90|128,10, TARGET_OPCODE(ISD::ADD),
OPC_Scope, 67|128,9,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 41,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC8m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
41,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC16m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
41,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
50,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC8m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
50,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC16m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
50,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
88,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_Scope, 34,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
43,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
0,
41,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_16m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
41,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
50,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_16m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
50,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
53,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitInteger, MVT::i16, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
53,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitInteger, MVT::i32, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
60|128,2,
OPC_CheckPredicate, 3,
OPC_Scope, 109,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_Scope, 48,
OPC_CheckInteger, 0|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitInteger, MVT::i64, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
52,
OPC_CheckInteger, 0|128,0|128,0|128,0|128,0|128,1,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitInteger, MVT::i64, 0|128,0|128,0|128,0|128,120|128,127|128,127|128,127|128,127|128,1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mi32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
0,
27|128,1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 107,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 32, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
32, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
32, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
37,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mi32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
44,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
44,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
44,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
6|128,1,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 30, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
0,
0,
17|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 30, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
0,
0,
28|128,4, TARGET_OPCODE(ISD::ROTL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 43,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
41,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
41,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
90,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_Scope, 38,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
43,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
46,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
46,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
88,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
36,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
0,
40,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
40,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
42,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
0,
28|128,4, TARGET_OPCODE(ISD::ROTR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 43,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
41,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
41,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
90,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_Scope, 38,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64m1), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
43,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
46,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
46,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
88,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
36,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
0,
40,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
40,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
42,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i8,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 3, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 5, 4, 5, 6, 7, 8,
0,
85|128,4, TARGET_OPCODE(ISD::AND),
OPC_Scope, 62|128,3,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 77|128,1,
OPC_CheckPredicate, 3,
OPC_Scope, 114,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 32, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
32, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
32, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
85,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 37,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mi32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
35,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
0,
44,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
44,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
6|128,1,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 30, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
0,
0,
17|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 30, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
0,
0,
85|128,4, TARGET_OPCODE(ISD::OR),
OPC_Scope, 62|128,3,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 77|128,1,
OPC_CheckPredicate, 3,
OPC_Scope, 114,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 32, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
32, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
32, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
85,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 37,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mi32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
35,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
0,
0,
44,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
44,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
6|128,1,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 30, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
30, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 3,
0,
0,
17|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 30, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
30, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 1,
0,
0,
5|128,5, TARGET_OPCODE(ISD::ADDE),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_Scope, 96|128,3,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 93|128,1,
OPC_CheckPredicate, 3,
OPC_Scope, 39|128,1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 116,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 35, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
35, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
35, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
0,
40,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64mi32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
0,
47,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
0,
47,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
47,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
18|128,1,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 33, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 4,
33, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 4,
33, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 4,
33, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 4,
0,
0,
29|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 33, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 4,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/4,
OPC_EmitMergeInputChains, 2, 0, 3,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 2,
33, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 4,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/4,
OPC_EmitMergeInputChains, 2, 0, 3,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 2,
33, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 4,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/4,
OPC_EmitMergeInputChains, 2, 0, 3,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 2,
33, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 4,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/4,
OPC_EmitMergeInputChains, 2, 0, 3,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 2,
0,
0,
98|128,3, TARGET_OPCODE(ISD::SUBE),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 93|128,1,
OPC_CheckPredicate, 3,
OPC_Scope, 39|128,1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 116,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 35, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
35, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
35, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
0,
40,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64mi32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
0,
47,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB8mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
0,
47,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
47,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_EmitConvertToTarget, 4,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 10,
18|128,1,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 33, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB8mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 4,
33, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 4,
33, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 4,
33, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 3,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 2, 0, 2,
OPC_MarkFlagResults, 1, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 4,
0,
0,
40|128,1, TARGET_OPCODE(ISD::VECTOR_SHUFFLE),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 51, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckPredicate, 11,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 4, 5, 6, 7, 8, 3,
107, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckPredicate, 11,
OPC_SwitchType , 29, MVT::v4f32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 4, 5, 6, 7, 8, 3,
29, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 4, 5, 6, 7, 8, 3,
29, MVT::v2i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 4, 5, 6, 7, 8, 3,
0,
0,
37|128,2, TARGET_OPCODE(X86ISD::SHLD),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 48,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32mri8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 7, 5, 6, 7, 8, 9, 3, 10,
48,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16mri8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 7, 5, 6, 7, 8, 9, 3, 10,
50,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64mri8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 7, 5, 6, 7, 8, 9, 3, 10,
42,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckChild2Type, MVT::i8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 4, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 3,
42,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckChild2Type, MVT::i8,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 4, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 3,
44,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckChild2Type, MVT::i8,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 4, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 3,
0,
37|128,2, TARGET_OPCODE(X86ISD::SHRD),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 48,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32mri8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 7, 5, 6, 7, 8, 9, 3, 10,
48,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16mri8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 7, 5, 6, 7, 8, 9, 3, 10,
50,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64mri8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 7, 5, 6, 7, 8, 9, 3, 10,
42,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckChild2Type, MVT::i8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 4, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 3,
42,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckChild2Type, MVT::i8,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 4, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 3,
44,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckChild2Type, MVT::i8,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitCopyToReg, 4, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 5, 6, 7, 8, 9, 3,
0,
100, TARGET_OPCODE(X86ISD::MOVLPS),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 49, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 4, 5, 6, 7, 8, 3,
41, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v4f32,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 4, 5, 6, 7, 8, 3,
0,
79, TARGET_OPCODE(X86ISD::MOVLPD),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 29, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 4, 5, 6, 7, 8, 3,
29, MVT::v2i64,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckSame, 2,
OPC_MoveParent,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 4, 5, 6, 7, 8, 3,
0,
102|128,5, TARGET_OPCODE(ISD::EXTRACT_VECTOR_ELT),
OPC_Scope, 106|128,2,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 14|128,1, TARGET_OPCODE(ISD::VECTOR_SHUFFLE),
OPC_Scope, 73,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 12,
OPC_CheckType, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVHPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
65,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 12,
OPC_CheckType, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVHPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
0,
39, TARGET_OPCODE(X86ISD::UNPCKHPS),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
39, TARGET_OPCODE(X86ISD::UNPCKHPD),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
125, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v4f32,
OPC_SwitchType , 54, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVLPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
62, MVT::v4i32,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VEXTRACTPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 7, 4, 5, 6, 7, 8, 1, 9,
21,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::EXTRACTPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 7, 4, 5, 6, 7, 8, 1, 9,
0,
0,
0,
118|128,2,
OPC_RecordChild0,
OPC_Scope, 84,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVLPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
28,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f64, 2, 1, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 9,
0,
120,
OPC_CheckChild0Type, MVT::v4i32,
OPC_Scope, 53,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVPDI2DImr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVPDI2DImr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
61,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPEXTRDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 7, 4, 5, 6, 7, 8, 1, 9,
21,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 7, 4, 5, 6, 7, 8, 1, 9,
0,
0,
120,
OPC_CheckChild0Type, MVT::v2i64,
OPC_Scope, 53,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVPQI2QImr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVPQI2QImr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
61,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPEXTRQmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 7, 4, 5, 6, 7, 8, 1, 9,
21,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRQmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 7, 4, 5, 6, 7, 8, 1, 9,
0,
0,
43,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::f32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f32, 2, 1, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 9,
0,
0,
52|128,1, TARGET_OPCODE(ISD::TRUNCATE),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SRL),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckInteger, 8,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckPredicate, 13,
OPC_SwitchType , 51, MVT::i64,
OPC_MoveParent,
OPC_CheckPredicate, 14,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i32, X86::GR64_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i64, 2, 1, 8,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 9, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8mr_NOREX), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 11,
53, MVT::i32,
OPC_MoveParent,
OPC_CheckPredicate, 14,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i32, 2, 1, 8,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 9, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8mr_NOREX), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 11,
53, MVT::i16,
OPC_MoveParent,
OPC_CheckPredicate, 14,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 1, 8,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 9, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8mr_NOREX), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 11,
0,
55, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::EXTRACT_VECTOR_ELT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v4f32,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::f32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::EXTRACTPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 7, 4, 5, 6, 7, 8, 1, 9,
84|128,3, TARGET_OPCODE(X86ISD::SETCC),
OPC_MoveChild, 0,
OPC_Scope, 28,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 9,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETLm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETGEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETLEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETGm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETBm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETAEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETBEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETAm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 15,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETSm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 12,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNSm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 14,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETPm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 11,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNPm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 13,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETOm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
28,
OPC_CheckInteger, 10,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNOm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
0,
105|128,1, TARGET_OPCODE(X86ISD::Wrapper),
OPC_RecordChild0,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 53, TARGET_OPCODE(ISD::TargetGlobalAddress),
OPC_MoveParent,
OPC_SwitchType , 22, MVT::i32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32mi), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
24, MVT::i64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
53, TARGET_OPCODE(ISD::TargetExternalSymbol),
OPC_MoveParent,
OPC_SwitchType , 22, MVT::i32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32mi), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
24, MVT::i64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
53, TARGET_OPCODE(ISD::TargetBlockAddress),
OPC_MoveParent,
OPC_SwitchType , 22, MVT::i32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32mi), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
24, MVT::i64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
27, TARGET_OPCODE(ISD::TargetConstantPool),
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
27, TARGET_OPCODE(ISD::TargetJumpTable),
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
0,
114,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_SwitchType , 26, MVT::i64,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 8,
24, MVT::i8,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8mi), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 8,
24, MVT::i16,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16mi), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 8,
24, MVT::i32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32mi), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 8,
0,
86,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_SwitchType , 26, MVT::i64,
OPC_CheckChild0Type, MVT::f64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDto64mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
48, MVT::i32,
OPC_CheckChild0Type, MVT::f32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSS2DImr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSS2DImr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
0,
63|128,8,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_CheckChild1Type, MVT::f32,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp32m), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
92,
OPC_CheckChild1Type, MVT::f64,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_Scope, 22,
OPC_CheckPredicate, 15,
OPC_CheckPredicate, 16,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
61,
OPC_CheckPredicate, 6,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp64m), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
0,
69,
OPC_CheckChild1Type, MVT::f80,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_Scope, 42,
OPC_CheckPredicate, 15,
OPC_Scope, 18,
OPC_CheckPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPredicate, 17,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
18,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_FpP80m), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
23,
OPC_CheckChild1Type, MVT::i8,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
23,
OPC_CheckChild1Type, MVT::i16,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
23,
OPC_CheckChild1Type, MVT::i32,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
23,
OPC_CheckChild1Type, MVT::i64,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
89,
OPC_CheckChild1Type, MVT::v4f32,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
89,
OPC_CheckChild1Type, MVT::v2f64,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPDmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
49,
OPC_CheckChild1Type, MVT::v8f32,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPSYmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSYmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
49,
OPC_CheckChild1Type, MVT::v4f64,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPDYmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPDYmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
89,
OPC_CheckChild1Type, MVT::v2i64,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
89,
OPC_CheckChild1Type, MVT::v4i32,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
89,
OPC_CheckChild1Type, MVT::v8i16,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
89,
OPC_CheckChild1Type, MVT::v16i8,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
20,
OPC_CheckPredicate, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
45,
OPC_CheckChild1Type, MVT::v1i64,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
23,
OPC_CheckChild1Type, MVT::v8i8,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
23,
OPC_CheckChild1Type, MVT::v4i16,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
23,
OPC_CheckChild1Type, MVT::v2i32,
OPC_RecordChild2,
OPC_CheckPredicate, 5,
OPC_CheckPredicate, 6,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64mr), 0|OPFL_Chain|OPFL_MemRefs,
0, 6, 3, 4, 5, 6, 7, 1,
0,
0,
120|128,33, TARGET_OPCODE(ISD::VECTOR_SHUFFLE),
OPC_Scope, 76,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 20,
OPC_CheckPredicate, 20,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckPredicate, 21,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
57,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPredicate, 11,
OPC_SwitchType , 17, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
17, MVT::v2i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
83,
OPC_RecordNode,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 22,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSHUFDmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 3, 4, 5, 6, 7, 8,
22,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 3, 4, 5, 6, 7, 8,
0,
96,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 47, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 23,
OPC_CheckType, MVT::v4i32,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
39, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 23,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
86|128,1,
OPC_RecordNode,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 26|128,1,
OPC_CheckPredicate, 19,
OPC_SwitchType , 112, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckType, MVT::v8i16,
OPC_Scope, 24,
OPC_CheckPredicate, 24,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitNodeXForm, 1, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSHUFHWmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 3, 4, 5, 6, 7, 8,
24,
OPC_CheckPredicate, 25,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitNodeXForm, 2, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSHUFLWmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 3, 4, 5, 6, 7, 8,
24,
OPC_CheckPredicate, 24,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitNodeXForm, 1, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFHWmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 3, 4, 5, 6, 7, 8,
24,
OPC_CheckPredicate, 25,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitNodeXForm, 2, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFLWmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 3, 4, 5, 6, 7, 8,
0,
34, MVT::v4f32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 22,
OPC_CheckType, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 3, 4, 5, 6, 7, 8,
0,
36,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 26,
OPC_CheckType, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitNodeXForm, 3, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSHUFWmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 3, 4, 5, 6, 7, 8,
0,
43|128,2,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 67,
OPC_CheckPredicate, 27,
OPC_SwitchType , 19, MVT::v16i8,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKLBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v8i16,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKLWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4i32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKLDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_CheckPredicate, 12,
OPC_SwitchType , 19, MVT::v16i8,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKHBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v8i16,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKHWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4i32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKHDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_CheckPredicate, 27,
OPC_SwitchType , 19, MVT::v16i8,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v8i16,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_CheckPredicate, 12,
OPC_SwitchType , 19, MVT::v16i8,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v8i16,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
0,
55,
OPC_RecordNode,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPredicate, 28,
OPC_CheckType, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 7, 1, 4, 5, 6, 7, 8, 9,
23|128,3,
OPC_RecordChild0,
OPC_Scope, 79|128,2,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 61|128,1, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 22|128,1, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 67,
OPC_CheckPredicate, 29,
OPC_SwitchType , 19, MVT::v8i8,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_CheckPredicate, 30,
OPC_SwitchType , 19, MVT::v8i8,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
0,
0,
28, TARGET_OPCODE(X86ISD::VZEXT_LOAD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPredicate, 31,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPSrm), 0|OPFL_Chain,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
29, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_SwitchType , 11, MVT::v2i64,
OPC_CheckPredicate, 23,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLHPSrr), 0,
1, MVT::v2i64, 2, 0, 0,
11, MVT::v4i32,
OPC_CheckPredicate, 32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHLPSrr), 0,
1, MVT::v4i32, 2, 0, 0,
0,
103, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 21,
OPC_CheckPredicate, 27,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKLQDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
21,
OPC_CheckPredicate, 12,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKHQDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
21,
OPC_CheckPredicate, 27,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLQDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
21,
OPC_CheckPredicate, 12,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHQDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
29,
OPC_RecordChild1,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 11,
OPC_CheckPredicate, 31,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLHPSrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPredicate, 33,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHLPSrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
36,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 12,
OPC_CheckPredicate, 20,
OPC_CheckPatternPredicate, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrr), 0,
1, MVT::v4i32, 1, 0,
12,
OPC_CheckPredicate, 21,
OPC_CheckPatternPredicate, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrr), 0,
1, MVT::v4i32, 1, 0,
0,
0,
46,
OPC_RecordNode,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 16,
OPC_CheckPredicate, 34,
OPC_CheckPatternPredicate, 11,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0,
1, MVT::v4i32, 2, 1, 2,
16,
OPC_CheckPredicate, 35,
OPC_CheckPatternPredicate, 11,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0,
1, MVT::v4i32, 2, 1, 2,
0,
24|128,2,
OPC_RecordChild0,
OPC_Scope, 82,
OPC_RecordChild1,
OPC_Scope, 50,
OPC_CheckPredicate, 36,
OPC_SwitchType , 21, MVT::v4i32,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f32, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0,
1, MVT::v4i32, 2, 0, 3,
21, MVT::v2i64,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f64, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0,
1, MVT::v2i64, 2, 0, 3,
0,
27,
OPC_CheckPredicate, 11,
OPC_CheckType, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f64, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0,
1, MVT::v4i32, 2, 0, 3,
0,
64|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_Scope, 15,
OPC_CheckPredicate, 37,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLQDQrr), 0,
1, MVT::v2i64, 2, 0, 0,
15,
OPC_CheckPredicate, 12,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHQDQrr), 0,
1, MVT::v2i64, 2, 0, 0,
37,
OPC_CheckPredicate, 34,
OPC_SwitchType , 9, MVT::v16i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLBWrr), 0,
1, MVT::v16i8, 2, 0, 0,
9, MVT::v8i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLWDrr), 0,
1, MVT::v8i16, 2, 0, 0,
9, MVT::v4i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLDQrr), 0,
1, MVT::v4i32, 2, 0, 0,
0,
37,
OPC_CheckPredicate, 35,
OPC_SwitchType , 9, MVT::v16i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHBWrr), 0,
1, MVT::v16i8, 2, 0, 0,
9, MVT::v8i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHWDrr), 0,
1, MVT::v8i16, 2, 0, 0,
9, MVT::v4i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHDQrr), 0,
1, MVT::v4i32, 2, 0, 0,
0,
37,
OPC_CheckPredicate, 38,
OPC_SwitchType , 9, MVT::v8i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLBWrr), 0,
1, MVT::v8i8, 2, 0, 0,
9, MVT::v4i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLWDrr), 0,
1, MVT::v4i16, 2, 0, 0,
9, MVT::v2i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLDQrr), 0,
1, MVT::v2i32, 2, 0, 0,
0,
37,
OPC_CheckPredicate, 39,
OPC_SwitchType , 9, MVT::v8i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHBWrr), 0,
1, MVT::v8i8, 2, 0, 0,
9, MVT::v4i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHWDrr), 0,
1, MVT::v4i16, 2, 0, 0,
9, MVT::v2i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHDQrr), 0,
1, MVT::v2i32, 2, 0, 0,
0,
0,
0,
39,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 40,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v1i64,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPredicate, 36,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0,
1, MVT::v2i64, 1, 0,
34|128,2,
OPC_RecordNode,
OPC_RecordChild0,
OPC_Scope, 42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 22,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSHUFDri), 0,
1, MVT::v4i32, 2, 1, 2,
14,
OPC_CheckPatternPredicate, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0,
1, MVT::v4i32, 2, 1, 2,
0,
124,
OPC_RecordChild1,
OPC_CheckPredicate, 41,
OPC_SwitchType , 15, MVT::v1i64,
OPC_CheckPatternPredicate, 12,
OPC_EmitNodeXForm, 4, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR64rr), 0,
1, MVT::v1i64, 3, 2, 1, 3,
15, MVT::v2i32,
OPC_CheckPatternPredicate, 12,
OPC_EmitNodeXForm, 4, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR64rr), 0,
1, MVT::v2i32, 3, 2, 1, 3,
15, MVT::v4i16,
OPC_CheckPatternPredicate, 12,
OPC_EmitNodeXForm, 4, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR64rr), 0,
1, MVT::v4i16, 3, 2, 1, 3,
15, MVT::v8i8,
OPC_CheckPatternPredicate, 12,
OPC_EmitNodeXForm, 4, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR64rr), 0,
1, MVT::v8i8, 3, 2, 1, 3,
15, MVT::v4i32,
OPC_CheckPatternPredicate, 12,
OPC_EmitNodeXForm, 4, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0,
1, MVT::v4i32, 3, 2, 1, 3,
15, MVT::v8i16,
OPC_CheckPatternPredicate, 12,
OPC_EmitNodeXForm, 4, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0,
1, MVT::v8i16, 3, 2, 1, 3,
15, MVT::v16i8,
OPC_CheckPatternPredicate, 12,
OPC_EmitNodeXForm, 4, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0,
1, MVT::v16i8, 3, 2, 1, 3,
0,
117,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_SwitchType , 70, MVT::v8i16,
OPC_Scope, 16,
OPC_CheckPredicate, 24,
OPC_CheckPatternPredicate, 0,
OPC_EmitNodeXForm, 1, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSHUFHWri), 0,
1, MVT::v8i16, 2, 1, 2,
16,
OPC_CheckPredicate, 25,
OPC_CheckPatternPredicate, 0,
OPC_EmitNodeXForm, 2, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSHUFLWri), 0,
1, MVT::v8i16, 2, 1, 2,
16,
OPC_CheckPredicate, 24,
OPC_CheckPatternPredicate, 2,
OPC_EmitNodeXForm, 1, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFHWri), 0,
1, MVT::v8i16, 2, 1, 2,
16,
OPC_CheckPredicate, 25,
OPC_CheckPatternPredicate, 2,
OPC_EmitNodeXForm, 2, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFLWri), 0,
1, MVT::v8i16, 2, 1, 2,
0,
17, MVT::v2i64,
OPC_CheckPredicate, 22,
OPC_CheckPatternPredicate, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrri), 0,
1, MVT::v2i64, 3, 1, 1, 2,
16, MVT::v4i16,
OPC_CheckPredicate, 26,
OPC_CheckPatternPredicate, 9,
OPC_EmitNodeXForm, 3, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSHUFWri), 0,
1, MVT::v4i16, 2, 1, 2,
0,
0,
104|128,1,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_Scope, 56,
OPC_CheckPredicate, 27,
OPC_SwitchType , 11, MVT::v16i8,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKLBWrr), 0,
1, MVT::v16i8, 2, 0, 1,
11, MVT::v8i16,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKLWDrr), 0,
1, MVT::v8i16, 2, 0, 1,
11, MVT::v4i32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKLDQrr), 0,
1, MVT::v4i32, 2, 0, 1,
11, MVT::v2i64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKLQDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
56,
OPC_CheckPredicate, 12,
OPC_SwitchType , 11, MVT::v16i8,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKHBWrr), 0,
1, MVT::v16i8, 2, 0, 1,
11, MVT::v8i16,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKHWDrr), 0,
1, MVT::v8i16, 2, 0, 1,
11, MVT::v4i32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKHDQrr), 0,
1, MVT::v4i32, 2, 0, 1,
11, MVT::v2i64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPUNPCKHQDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
56,
OPC_CheckPredicate, 27,
OPC_SwitchType , 11, MVT::v16i8,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLBWrr), 0,
1, MVT::v16i8, 2, 0, 1,
11, MVT::v8i16,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLWDrr), 0,
1, MVT::v8i16, 2, 0, 1,
11, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLDQrr), 0,
1, MVT::v4i32, 2, 0, 1,
11, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLQDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
56,
OPC_CheckPredicate, 12,
OPC_SwitchType , 11, MVT::v16i8,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHBWrr), 0,
1, MVT::v16i8, 2, 0, 1,
11, MVT::v8i16,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHWDrr), 0,
1, MVT::v8i16, 2, 0, 1,
11, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHDQrr), 0,
1, MVT::v4i32, 2, 0, 1,
11, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHQDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
41,
OPC_RecordNode,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_CheckPredicate, 28,
OPC_SwitchType , 15, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrri), 0,
1, MVT::v4i32, 3, 1, 2, 3,
15, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrri), 0,
1, MVT::v2i64, 3, 1, 2, 3,
0,
7|128,3,
OPC_RecordChild0,
OPC_Scope, 91,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_CheckPredicate, 29,
OPC_SwitchType , 11, MVT::v8i8,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHBWrr), 0,
1, MVT::v8i8, 2, 0, 1,
11, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHWDrr), 0,
1, MVT::v4i16, 2, 0, 1,
11, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHDQrr), 0,
1, MVT::v2i32, 2, 0, 1,
0,
43,
OPC_CheckPredicate, 30,
OPC_SwitchType , 11, MVT::v8i8,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLBWrr), 0,
1, MVT::v8i8, 2, 0, 1,
11, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLWDrr), 0,
1, MVT::v4i16, 2, 0, 1,
11, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLDQrr), 0,
1, MVT::v2i32, 2, 0, 1,
0,
0,
38|128,2,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 119, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_Scope, 21,
OPC_CheckPredicate, 11,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
21,
OPC_CheckPredicate, 31,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVHPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
21,
OPC_CheckPredicate, 11,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
21,
OPC_CheckPredicate, 31,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
111, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_Scope, 21,
OPC_CheckPredicate, 11,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVLPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
21,
OPC_CheckPredicate, 31,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVHPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
21,
OPC_CheckPredicate, 11,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
21,
OPC_CheckPredicate, 31,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
51, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPredicate, 11,
OPC_SwitchType , 17, MVT::v4f32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
17, MVT::v2f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
0,
52,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 23,
OPC_CheckType, MVT::v4f32,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
45|128,2,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 46,
OPC_CheckPredicate, 12,
OPC_SwitchType , 19, MVT::v4f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKHPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v2f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKHPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
46,
OPC_CheckPredicate, 27,
OPC_SwitchType , 19, MVT::v4f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v2f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
46,
OPC_CheckPredicate, 12,
OPC_SwitchType , 19, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKHPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKHPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
0,
46,
OPC_CheckPredicate, 27,
OPC_SwitchType , 19, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
0,
46,
OPC_CheckPredicate, 12,
OPC_SwitchType , 19, MVT::v4f32,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
46,
OPC_CheckPredicate, 27,
OPC_SwitchType , 19, MVT::v4f32,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
11|128,2,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 55, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 23,
OPC_CheckType, MVT::v2f64,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
1|128,1, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_SwitchType , 20, MVT::v2f64,
OPC_CheckPredicate, 23,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
86, MVT::v4f32,
OPC_Scope, 20,
OPC_CheckPredicate, 20,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSHDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckPredicate, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSLDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckPredicate, 20,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckPredicate, 21,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
0,
69, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 23,
OPC_CheckType, MVT::v2f64,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
0,
0,
35,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_Scope, 11,
OPC_CheckPredicate, 23,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLHPSrr), 0,
1, MVT::v4f32, 2, 0, 0,
11,
OPC_CheckPredicate, 32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHLPSrr), 0,
1, MVT::v4f32, 2, 0, 0,
0,
60|128,1,
OPC_RecordNode,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPredicate, 28,
OPC_SwitchType , 54, MVT::v4f32,
OPC_Scope, 25,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 1, 4, 5, 6, 7, 8, 9,
25,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 1, 4, 5, 6, 7, 8, 9,
0,
25, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPSYrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 7, 1, 4, 5, 6, 7, 8, 9,
54, MVT::v2f64,
OPC_Scope, 25,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 1, 4, 5, 6, 7, 8, 9,
25,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 1, 4, 5, 6, 7, 8, 9,
0,
25, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPDYrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 7, 1, 4, 5, 6, 7, 8, 9,
0,
62,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_CheckType, MVT::v4f32,
OPC_Scope, 13,
OPC_CheckPredicate, 31,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVLHPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
13,
OPC_CheckPredicate, 33,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVHLPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
13,
OPC_CheckPredicate, 31,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLHPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
13,
OPC_CheckPredicate, 33,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHLPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
46,
OPC_RecordNode,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_Scope, 16,
OPC_CheckPredicate, 34,
OPC_CheckPatternPredicate, 11,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0,
1, MVT::v4f32, 2, 1, 2,
16,
OPC_CheckPredicate, 35,
OPC_CheckPatternPredicate, 11,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0,
1, MVT::v4f32, 2, 1, 2,
0,
90|128,2,
OPC_RecordChild0,
OPC_Scope, 82,
OPC_RecordChild1,
OPC_Scope, 50,
OPC_CheckPredicate, 36,
OPC_SwitchType , 21, MVT::v4f32,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f32, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0,
1, MVT::v4f32, 2, 0, 3,
21, MVT::v2f64,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f64, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0,
1, MVT::v2f64, 2, 0, 3,
0,
27,
OPC_CheckPredicate, 11,
OPC_CheckType, MVT::v4f32,
OPC_CheckPatternPredicate, 2,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f64, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0,
1, MVT::v4f32, 2, 0, 3,
0,
68,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_SwitchType , 30, MVT::v2f64,
OPC_Scope, 13,
OPC_CheckPredicate, 37,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPDrr), 0,
1, MVT::v2f64, 2, 0, 0,
13,
OPC_CheckPredicate, 12,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPDrr), 0,
1, MVT::v2f64, 2, 0, 0,
0,
26, MVT::v4f32,
OPC_Scope, 11,
OPC_CheckPredicate, 34,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPSrr), 0,
1, MVT::v4f32, 2, 0, 0,
11,
OPC_CheckPredicate, 35,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPSrr), 0,
1, MVT::v4f32, 2, 0, 0,
0,
0,
61|128,1,
OPC_RecordChild1,
OPC_Scope, 30,
OPC_CheckPredicate, 12,
OPC_SwitchType , 11, MVT::v4f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKHPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11, MVT::v2f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKHPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
30,
OPC_CheckPredicate, 27,
OPC_SwitchType , 11, MVT::v4f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11, MVT::v2f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
30,
OPC_CheckPredicate, 12,
OPC_SwitchType , 11, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKHPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
11, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKHPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
30,
OPC_CheckPredicate, 27,
OPC_SwitchType , 11, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
11, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
30,
OPC_CheckPredicate, 12,
OPC_SwitchType , 11, MVT::v4f32,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
30,
OPC_CheckPredicate, 27,
OPC_SwitchType , 11, MVT::v4f32,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
0,
50,
OPC_RecordNode,
OPC_RecordChild0,
OPC_Scope, 24,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 22,
OPC_CheckType, MVT::v4f32,
OPC_CheckPatternPredicate, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0,
1, MVT::v4f32, 2, 1, 2,
20,
OPC_RecordChild1,
OPC_CheckPredicate, 41,
OPC_CheckType, MVT::v4f32,
OPC_CheckPatternPredicate, 12,
OPC_EmitNodeXForm, 4, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0,
1, MVT::v4f32, 3, 2, 1, 3,
0,
41|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 71, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_RecordChild0,
OPC_Scope, 33,
OPC_CheckChild0Type, MVT::f32,
OPC_MoveParent,
OPC_CheckPredicate, 36,
OPC_CheckType, MVT::v4f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
33,
OPC_CheckChild0Type, MVT::f64,
OPC_MoveParent,
OPC_CheckPredicate, 36,
OPC_CheckType, MVT::v2f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
87, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_SwitchType , 54, MVT::v4f32,
OPC_Scope, 12,
OPC_CheckPredicate, 20,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSHDUPrr), 0,
1, MVT::v4f32, 1, 0,
12,
OPC_CheckPredicate, 21,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSLDUPrr), 0,
1, MVT::v4f32, 1, 0,
12,
OPC_CheckPredicate, 20,
OPC_CheckPatternPredicate, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrr), 0,
1, MVT::v4f32, 1, 0,
12,
OPC_CheckPredicate, 21,
OPC_CheckPatternPredicate, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrr), 0,
1, MVT::v4f32, 1, 0,
0,
26, MVT::v2f64,
OPC_CheckPredicate, 23,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDDUPrr), 0,
1, MVT::v2f64, 1, 0,
10,
OPC_CheckPatternPredicate, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrr), 0,
1, MVT::v2f64, 1, 0,
0,
0,
0,
53|128,1,
OPC_RecordNode,
OPC_RecordChild0,
OPC_Scope, 42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::UNDEF),
OPC_MoveParent,
OPC_CheckPredicate, 22,
OPC_SwitchType , 13, MVT::v4f32,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrri), 0,
1, MVT::v4f32, 3, 1, 1, 2,
15, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrri), 0,
1, MVT::v2f64, 3, 1, 1, 2,
0,
4|128,1,
OPC_RecordChild1,
OPC_Scope, 110,
OPC_CheckPredicate, 28,
OPC_SwitchType , 34, MVT::v4f32,
OPC_Scope, 15,
OPC_CheckPatternPredicate, 0,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPSrri), 0,
1, MVT::v4f32, 3, 1, 2, 3,
15,
OPC_CheckPatternPredicate, 1,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrri), 0,
1, MVT::v4f32, 3, 1, 2, 3,
0,
15, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPSYrri), 0,
1, MVT::v8f32, 3, 1, 2, 3,
34, MVT::v2f64,
OPC_Scope, 15,
OPC_CheckPatternPredicate, 0,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPDrri), 0,
1, MVT::v2f64, 3, 1, 2, 3,
15,
OPC_CheckPatternPredicate, 2,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrri), 0,
1, MVT::v2f64, 3, 1, 2, 3,
0,
15, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPDYrri), 0,
1, MVT::v4f64, 3, 1, 2, 3,
0,
17,
OPC_CheckPredicate, 11,
OPC_CheckType, MVT::v4f32,
OPC_EmitNodeXForm, 0, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrri), 0,
1, MVT::v4f32, 3, 2, 1, 3,
0,
0,
0,
94|128,6, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_Scope, 61|128,3,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 93|128,1, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_Scope, 11|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_SwitchType , 74, MVT::i32,
OPC_Scope, 46,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
24,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 5, 2, 3, 4, 5, 6,
0,
48, MVT::i64,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVZQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
0,
77,
OPC_RecordChild0,
OPC_Scope, 43,
OPC_CheckChild0Type, MVT::i32,
OPC_MoveParent,
OPC_SwitchType , 24, MVT::v4i32,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVZDI2PDIrr), 0,
1, MVT::v4i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZDI2PDIrr), 0,
1, MVT::v4i32, 1, 0,
0,
10, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVZDI2PDIrr), 0,
1, MVT::v2i32, 1, 0,
0,
29,
OPC_CheckChild0Type, MVT::i64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVZQI2PQIrr), 0,
1, MVT::v2i64, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZQI2PQIrr), 0,
1, MVT::v2i64, 1, 0,
0,
0,
0,
123, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_SwitchType , 40, MVT::v4f32,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 16, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
16, MVT::v2i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
20, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
20, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZPQILo2PQIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
20, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 5, 2, 3, 4, 5, 6,
0,
87, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 16, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
57, MVT::v2i64,
OPC_Scope, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVZPQILo2PQIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZPQILo2PQIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
0,
0,
77,
OPC_RecordChild0,
OPC_SwitchType , 24, MVT::v2i64,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVZPQILo2PQIrr), 0,
1, MVT::v2i64, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZPQILo2PQIrr), 0,
1, MVT::v2i64, 1, 0,
0,
16, MVT::v2i32,
OPC_EmitNode, TARGET_OPCODE(X86::MMX_V_SET0), 0,
1, MVT::v2i32, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLDQrr), 0,
1, MVT::v2i32, 2, 0, 1,
28, MVT::v4i32,
OPC_EmitNode, TARGET_OPCODE(X86::V_SET0PI), 0,
1, MVT::v4i32, 0,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f32, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0,
1, MVT::v4i32, 2, 1, 3,
0,
31|128,2,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 16|128,1, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_Scope, 93,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_SwitchType , 36, MVT::f32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i32, 0,
OPC_EmitNode, TARGET_OPCODE(X86::MOVSSrm), 0|OPFL_Chain,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 3, 7, 8, 9,
36, MVT::f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitNode, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 3, 7, 8, 9,
0,
47,
OPC_RecordChild0,
OPC_Scope, 21,
OPC_CheckChild0Type, MVT::f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_EmitNode, TARGET_OPCODE(X86::V_SET0PS), 0,
1, MVT::v2f64, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0,
1, MVT::v2f64, 2, 1, 0,
21,
OPC_CheckChild0Type, MVT::f32,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_EmitNode, TARGET_OPCODE(X86::V_SET0PS), 0,
1, MVT::v4f32, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0,
1, MVT::v4f32, 2, 1, 0,
0,
0,
51, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v4f32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitNode, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 3, 7, 8, 9,
78, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 32, MVT::v4f32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i32, 0,
OPC_EmitNode, TARGET_OPCODE(X86::MOVSSrm), 0|OPFL_Chain,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 3, 7, 8, 9,
32, MVT::v2f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitNode, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 3, 7, 8, 9,
0,
0,
45,
OPC_RecordChild0,
OPC_SwitchType , 28, MVT::v4f32,
OPC_EmitNode, TARGET_OPCODE(X86::V_SET0PS), 0,
1, MVT::v4f32, 0,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f32, 2, 0, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0,
1, MVT::v4f32, 2, 1, 3,
10, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZPQILo2PQIrr), 0,
1, MVT::v2f64, 1, 0,
0,
0,
82|128,12, TARGET_OPCODE(X86ISD::CMP),
OPC_Scope, 121|128,5,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 58|128,3, TARGET_OPCODE(ISD::AND),
OPC_Scope, 35|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 73,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 30,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64mi32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
28,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
0,
37,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
37,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
0,
6|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 30,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
28,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
28,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
30,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
9|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 31,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
29,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
29,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
31,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
0,
51|128,2, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 33,
OPC_CheckPredicate, 7,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
92,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_SwitchType , 55, MVT::i64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 22,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
22,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64mi32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
0,
27, MVT::i8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP8mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
0,
31,
OPC_CheckPredicate, 7,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
31,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32mi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP8mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
23,
OPC_CheckPredicate, 7,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
23,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
0,
0,
107,
OPC_RecordChild0,
OPC_Scope, 35,
OPC_CheckChild0Type, MVT::i8,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP8rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
33,
OPC_CheckChild0Type, MVT::i16,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
33,
OPC_CheckChild0Type, MVT::i32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
36,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64mr), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
33|128,1,
OPC_RecordChild0,
OPC_Scope, 35,
OPC_CheckChild0Type, MVT::i64,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
60,
OPC_CheckChild0Type, MVT::f32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUCOMISSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOMISSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
60,
OPC_CheckChild0Type, MVT::f64,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUCOMISDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOMISDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
0,
49|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::AND),
OPC_RecordChild0,
OPC_RecordChild1,
OPC_Scope, 93,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 62,
OPC_MoveParent,
OPC_CheckPredicate, 42,
OPC_SwitchType , 17, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8ri), 0,
1, MVT::i32, 2, 0, 2,
17, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16ri), 0,
1, MVT::i32, 2, 0, 2,
17, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32ri), 0,
1, MVT::i32, 2, 0, 2,
0,
22,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64ri32), 0,
1, MVT::i32, 2, 0, 2,
0,
55,
OPC_CheckPredicate, 42,
OPC_SwitchType , 15, MVT::i8,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8rr), 0,
1, MVT::i32, 2, 0, 1,
15, MVT::i16,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16rr), 0,
1, MVT::i32, 2, 0, 1,
15, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32rr), 0,
1, MVT::i32, 2, 0, 1,
0,
17,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64rr), 0,
1, MVT::i32, 2, 0, 1,
0,
108|128,2,
OPC_RecordChild0,
OPC_Scope, 51,
OPC_CheckChild0Type, MVT::i8,
OPC_Scope, 14,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8rr), 0,
1, MVT::i32, 2, 0, 0,
31,
OPC_RecordChild1,
OPC_Scope, 17,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP8ri), 0,
1, MVT::i32, 2, 0, 2,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP8rr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
69,
OPC_CheckChild0Type, MVT::i16,
OPC_Scope, 14,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16rr), 0,
1, MVT::i32, 2, 0, 0,
49,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 14,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16ri8), 0,
1, MVT::i32, 2, 0, 2,
12,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16ri), 0,
1, MVT::i32, 2, 0, 2,
0,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16rr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
69,
OPC_CheckChild0Type, MVT::i32,
OPC_Scope, 14,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32rr), 0,
1, MVT::i32, 2, 0, 0,
49,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 14,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32ri8), 0,
1, MVT::i32, 2, 0, 2,
12,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32ri), 0,
1, MVT::i32, 2, 0, 2,
0,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32rr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
71,
OPC_CheckChild0Type, MVT::i64,
OPC_Scope, 14,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64rr), 0,
1, MVT::i32, 2, 0, 0,
51,
OPC_RecordChild1,
OPC_Scope, 37,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 14,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64ri8), 0,
1, MVT::i32, 2, 0, 2,
14,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64ri32), 0,
1, MVT::i32, 2, 0, 2,
0,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64rr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
41,
OPC_CheckChild0Type, MVT::f32,
OPC_RecordChild1,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOM_FpIr32), 0,
1, MVT::i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUCOMISSrr), 0,
1, MVT::i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOMISSrr), 0,
1, MVT::i32, 2, 0, 1,
0,
41,
OPC_CheckChild0Type, MVT::f64,
OPC_RecordChild1,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOM_FpIr64), 0,
1, MVT::i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUCOMISDrr), 0,
1, MVT::i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOMISDrr), 0,
1, MVT::i32, 2, 0, 1,
0,
12,
OPC_CheckChild0Type, MVT::f80,
OPC_RecordChild1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOM_FpIr80), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
73|128,90|128,1, TARGET_OPCODE(ISD::INTRINSIC_WO_CHAIN),
OPC_MoveChild, 0,
OPC_Scope, 122,
OPC_CheckInteger, 12|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 71,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 23,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRIrm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
23,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIrm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
42,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 15,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRIrr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
15,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIrr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
0,
0,
122,
OPC_CheckInteger, 13|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 71,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 23,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRIArm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
23,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIArm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
42,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 15,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRIArr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
15,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIArr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
0,
0,
122,
OPC_CheckInteger, 14|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 71,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 23,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRICrm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
23,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRICrm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
42,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 15,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRICrr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
15,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRICrr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
0,
0,
122,
OPC_CheckInteger, 15|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 71,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 23,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRIOrm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
23,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIOrm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
42,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 15,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRIOrr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
15,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIOrr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
0,
0,
122,
OPC_CheckInteger, 16|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 71,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 23,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRISrm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
23,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRISrm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
42,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 15,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRISrr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
15,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRISrr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
0,
0,
122,
OPC_CheckInteger, 17|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 71,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 23,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRIZrm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
23,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIZrm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
42,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 15,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRIZrr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
15,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIZrr), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
0,
0,
25|128,1,
OPC_CheckInteger, 4|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 88,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 31,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRIrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
31,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
0,
55,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRIrr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
21,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIrr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
0,
0,
25|128,1,
OPC_CheckInteger, 5|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 88,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 31,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRIArm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
31,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIArm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
0,
55,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRIArr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
21,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIArr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
0,
0,
25|128,1,
OPC_CheckInteger, 6|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 88,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 31,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRICrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
31,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRICrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
0,
55,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRICrr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
21,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRICrr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
0,
0,
25|128,1,
OPC_CheckInteger, 7|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 88,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 31,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRIOrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
31,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIOrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
0,
55,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRIOrr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
21,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIOrr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
0,
0,
25|128,1,
OPC_CheckInteger, 8|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 88,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 31,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRISrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
31,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRISrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
0,
55,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRISrr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
21,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRISrr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
0,
0,
25|128,1,
OPC_CheckInteger, 9|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 88,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 31,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRIZrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
31,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIZrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
0,
55,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRIZrr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
21,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIZrr), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 2, 5,
0,
0,
57|128,1,
OPC_CheckInteger, 109|128,5,
OPC_MoveParent,
OPC_Scope, 23|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 46, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
62, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
0,
25, TARGET_OPCODE(X86ISD::VZEXT_LOAD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBWrm), 0|OPFL_Chain,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXBWrr), 0,
1, MVT::v8i16, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBWrr), 0,
1, MVT::v8i16, 1, 0,
0,
0,
57|128,1,
OPC_CheckInteger, 111|128,5,
OPC_MoveParent,
OPC_Scope, 23|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 46, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
62, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
25, TARGET_OPCODE(X86ISD::VZEXT_LOAD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWDrm), 0|OPFL_Chain,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXWDrr), 0,
1, MVT::v4i32, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWDrr), 0,
1, MVT::v4i32, 1, 0,
0,
0,
57|128,1,
OPC_CheckInteger, 110|128,5,
OPC_MoveParent,
OPC_Scope, 23|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 46, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
62, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
25, TARGET_OPCODE(X86ISD::VZEXT_LOAD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXDQrm), 0|OPFL_Chain,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXDQrr), 0,
1, MVT::v2i64, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXDQrr), 0,
1, MVT::v2i64, 1, 0,
0,
0,
57|128,1,
OPC_CheckInteger, 115|128,5,
OPC_MoveParent,
OPC_Scope, 23|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 46, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
62, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
0,
25, TARGET_OPCODE(X86ISD::VZEXT_LOAD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBWrm), 0|OPFL_Chain,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXBWrr), 0,
1, MVT::v8i16, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBWrr), 0,
1, MVT::v8i16, 1, 0,
0,
0,
57|128,1,
OPC_CheckInteger, 117|128,5,
OPC_MoveParent,
OPC_Scope, 23|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 46, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
62, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
25, TARGET_OPCODE(X86ISD::VZEXT_LOAD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWDrm), 0|OPFL_Chain,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXWDrr), 0,
1, MVT::v4i32, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWDrr), 0,
1, MVT::v4i32, 1, 0,
0,
0,
57|128,1,
OPC_CheckInteger, 116|128,5,
OPC_MoveParent,
OPC_Scope, 23|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 46, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
62, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
25, TARGET_OPCODE(X86ISD::VZEXT_LOAD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXDQrm), 0|OPFL_Chain,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXDQrr), 0,
1, MVT::v2i64, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXDQrr), 0,
1, MVT::v2i64, 1, 0,
0,
0,
24|128,1,
OPC_CheckInteger, 107|128,5,
OPC_MoveParent,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 44, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
60, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXBDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXBDrr), 0,
1, MVT::v4i32, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBDrr), 0,
1, MVT::v4i32, 1, 0,
0,
0,
24|128,1,
OPC_CheckInteger, 112|128,5,
OPC_MoveParent,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 44, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
60, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXWQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXWQrr), 0,
1, MVT::v2i64, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWQrr), 0,
1, MVT::v2i64, 1, 0,
0,
0,
24|128,1,
OPC_CheckInteger, 113|128,5,
OPC_MoveParent,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 44, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
60, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXBDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXBDrr), 0,
1, MVT::v4i32, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBDrr), 0,
1, MVT::v4i32, 1, 0,
0,
0,
24|128,1,
OPC_CheckInteger, 118|128,5,
OPC_MoveParent,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 44, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
60, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXWQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXWQrr), 0,
1, MVT::v2i64, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWQrr), 0,
1, MVT::v2i64, 1, 0,
0,
0,
24|128,1,
OPC_CheckInteger, 108|128,5,
OPC_MoveParent,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 44, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
60, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 43,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXBQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVSXBQrr), 0,
1, MVT::v2i64, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBQrr), 0,
1, MVT::v2i64, 1, 0,
0,
0,
24|128,1,
OPC_CheckInteger, 114|128,5,
OPC_MoveParent,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 44, TARGET_OPCODE(X86ISD::VZEXT_MOVL),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
60, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 43,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXBQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVZXBQrr), 0,
1, MVT::v2i64, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBQrr), 0,
1, MVT::v2i64, 1, 0,
0,
0,
0|128,1,
OPC_CheckInteger, 93|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 79,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPBLENDWrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PBLENDWrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 7, 0, 4, 5, 6, 7, 8, 9,
0,
40,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPBLENDWrri), 0,
1, MVT::v8i16, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PBLENDWrri), 0,
1, MVT::v8i16, 3, 0, 1, 3,
0,
0,
102,
OPC_CheckInteger, 56|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 57|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 58|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBUSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBUSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBUSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBUSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 59|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBUSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBUSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBUSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBUSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 14|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 15|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 16|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDUSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDUSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDUSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 17|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDUSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDUSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDUSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 33|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULHUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULHUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULHUWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHUWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 32|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULHWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULHWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULHWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 34|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULUDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULUDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULUDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULUDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULUDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULUDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 26|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMADDWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMADDWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMADDWDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDWDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 18|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPAVGBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPAVGBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPAVGBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 19|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPAVGWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPAVGWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPAVGWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 30|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINUBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 29|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 28|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXUBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 27|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 35|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSADBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSADBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSADBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSADBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSADBWrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSADBWrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 40|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 36|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 52|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 48|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 45|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRAWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRAWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRAWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRAWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 44|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRADrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRADrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRADrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRADrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 20|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPEQBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 22|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPEQWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 21|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPEQDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 23|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPGTBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPGTBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 25|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPGTWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPGTWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 24|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPGTDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPGTDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 12|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPACKSSWBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKSSWBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPACKSSWBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKSSWBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 11|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPACKSSDWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKSSDWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPACKSSDWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKSSDWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 13|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPACKUSWBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKUSWBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPACKUSWBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKUSWBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 77|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHADDWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHADDWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 73|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHADDDrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDDrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHADDDrr128), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDDrr128), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 75|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHADDSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHADDSWrr128), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDSWrr128), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 83|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHSUBWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHSUBWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 79|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHSUBDrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBDrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHSUBDrr128), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBDrr128), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 81|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHSUBSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHSUBSWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBSWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 85|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMADDUBSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDUBSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMADDUBSWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDUBSWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 96|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSIGNWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSIGNWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
102,
OPC_CheckInteger, 94|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSIGNDrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNDrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSIGNDrr128), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNDrr128), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 87|128,6,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULHRSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULHRSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULHRSWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrr128), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
64,
OPC_CheckInteger, 76|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_CheckType, MVT::v8i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDWrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDWrr64), 0,
1, MVT::v4i16, 2, 0, 1,
0,
64,
OPC_CheckInteger, 72|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_CheckType, MVT::v8i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDDrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDDrr64), 0,
1, MVT::v2i32, 2, 0, 1,
0,
64,
OPC_CheckInteger, 74|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_CheckType, MVT::v8i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDSWrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDSWrr64), 0,
1, MVT::v4i16, 2, 0, 1,
0,
64,
OPC_CheckInteger, 82|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_CheckType, MVT::v8i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBWrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBWrr64), 0,
1, MVT::v4i16, 2, 0, 1,
0,
64,
OPC_CheckInteger, 78|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_CheckType, MVT::v8i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBDrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBDrr64), 0,
1, MVT::v2i32, 2, 0, 1,
0,
64,
OPC_CheckInteger, 80|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_CheckType, MVT::v8i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBSWrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBSWrr64), 0,
1, MVT::v4i16, 2, 0, 1,
0,
64,
OPC_CheckInteger, 84|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_CheckType, MVT::v8i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDUBSWrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDUBSWrr64), 0,
1, MVT::v4i16, 2, 0, 1,
0,
64,
OPC_CheckInteger, 95|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_CheckType, MVT::v8i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNWrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNWrr64), 0,
1, MVT::v4i16, 2, 0, 1,
0,
64,
OPC_CheckInteger, 93|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_CheckType, MVT::v8i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNDrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNDrr64), 0,
1, MVT::v2i32, 2, 0, 1,
0,
110,
OPC_CheckInteger, 86|128,6,
OPC_MoveParent,
OPC_Scope, 44,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_CheckType, MVT::v8i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
44,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_CheckType, MVT::v8i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrr64), 0,
1, MVT::v4i16, 2, 0, 1,
0,
102,
OPC_CheckInteger, 91|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPACKUSDWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKUSDWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPACKUSDWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKUSDWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 94|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPEQQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPEQQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPEQQrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 104|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINSDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 105|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINUDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINUDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINUDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 106|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINUWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 100|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXSDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 101|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXUDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXUDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXUDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 102|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXUWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
0,
43|128,1,
OPC_CheckInteger, 119|128,5,
OPC_MoveParent,
OPC_Scope, 67,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
66|128,1,
OPC_CheckInteger, 90|128,5,
OPC_MoveParent,
OPC_Scope, 72,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMPSADBWrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MPSADBWrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 7, 0, 4, 5, 6, 7, 8, 9,
0,
72,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMPSADBWrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 7, 2, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MPSADBWrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 7, 2, 4, 5, 6, 7, 8, 9,
0,
41,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMPSADBWrri), 0,
1, MVT::v16i8, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MPSADBWrri), 0,
1, MVT::v16i8, 3, 0, 1, 3,
0,
0,
102,
OPC_CheckInteger, 11|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPGTQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPGTQrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
17|128,1,
OPC_CheckInteger, 55|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 99,
OPC_MoveChild, 2,
OPC_SwitchOpcode , 61, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 14,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESENCrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 15,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESENCrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
28, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESENCrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
37,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 14,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESENCrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 15,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESENCrr), 0,
1, MVT::v2i64, 2, 0, 1,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESENCrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
17|128,1,
OPC_CheckInteger, 56|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 99,
OPC_MoveChild, 2,
OPC_SwitchOpcode , 61, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 14,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESENCLASTrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 15,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESENCLASTrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
28, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESENCLASTrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
37,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 14,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESENCLASTrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 15,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESENCLASTrr), 0,
1, MVT::v2i64, 2, 0, 1,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESENCLASTrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
17|128,1,
OPC_CheckInteger, 53|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 99,
OPC_MoveChild, 2,
OPC_SwitchOpcode , 61, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 14,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESDECrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 15,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESDECrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
28, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESDECrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
37,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 14,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESDECrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 15,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESDECrr), 0,
1, MVT::v2i64, 2, 0, 1,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESDECrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
17|128,1,
OPC_CheckInteger, 54|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 99,
OPC_MoveChild, 2,
OPC_SwitchOpcode , 61, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 14,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESDECLASTrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 15,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESDECLASTrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
28, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESDECLASTrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
37,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 14,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESDECLASTrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 15,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESDECLASTrr), 0,
1, MVT::v2i64, 2, 0, 1,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESDECLASTrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
115,
OPC_CheckInteger, 58|128,3,
OPC_MoveParent,
OPC_Scope, 69,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 14,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESKEYGENASSIST128rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 3, 4, 5, 6, 7, 8,
21,
OPC_CheckPatternPredicate, 15,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESKEYGENASSIST128rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 3, 4, 5, 6, 7, 8,
0,
38,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 14,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESKEYGENASSIST128rr), 0,
1, MVT::v2i64, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 15,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESKEYGENASSIST128rr), 0,
1, MVT::v2i64, 2, 0, 2,
0,
0,
72,
OPC_CheckInteger, 126|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERM2F128rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i32, 7, 0, 4, 5, 6, 7, 8, 9,
20,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERM2F128rr), 0,
1, MVT::v8i32, 3, 0, 1, 3,
0,
106,
OPC_CheckInteger, 35|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
106,
OPC_CheckInteger, 36|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
106,
OPC_CheckInteger, 37|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
106,
OPC_CheckInteger, 38|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
62,
OPC_CheckInteger, 83|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBSBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
62,
OPC_CheckInteger, 84|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBSWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
62,
OPC_CheckInteger, 85|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBUSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBUSBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
62,
OPC_CheckInteger, 86|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBUSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBUSWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
106,
OPC_CheckInteger, 57|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
106,
OPC_CheckInteger, 58|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHUWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHUWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
106,
OPC_CheckInteger, 60|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULUDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULUDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULUDQrr), 0,
1, MVT::v2i32, 2, 0, 1,
0,
106,
OPC_CheckInteger, 51|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMADDWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMADDWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMADDWDrr), 0,
1, MVT::v2i32, 2, 0, 1,
0,
106,
OPC_CheckInteger, 41|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
106,
OPC_CheckInteger, 42|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
106,
OPC_CheckInteger, 55|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINUBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
106,
OPC_CheckInteger, 54|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINSWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
106,
OPC_CheckInteger, 53|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXUBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXUBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
106,
OPC_CheckInteger, 52|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXSWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXSWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
106,
OPC_CheckInteger, 62|128,4,
OPC_MoveParent,
OPC_Scope, 42,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSADBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSADBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSADBWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
62,
OPC_CheckInteger, 43|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
62,
OPC_CheckInteger, 45|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
62,
OPC_CheckInteger, 44|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQDrr), 0,
1, MVT::v2i32, 2, 0, 1,
0,
62,
OPC_CheckInteger, 46|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
62,
OPC_CheckInteger, 48|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
62,
OPC_CheckInteger, 47|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTDrr), 0,
1, MVT::v2i32, 2, 0, 1,
0,
62,
OPC_CheckInteger, 29|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKSSWBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKSSWBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
62,
OPC_CheckInteger, 28|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKSSDWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKSSDWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
62,
OPC_CheckInteger, 30|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKUSWBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKUSWBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
122,
OPC_CheckInteger, 18|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 71,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 23,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRM128MEM), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::v16i8, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
23,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRM128MEM), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::v16i8, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
42,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 15,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRM128REG), 0,
2, MVT::v16i8, MVT::i32, 3, 0, 1, 3,
15,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPISTRM128REG), 0,
2, MVT::v16i8, MVT::i32, 3, 0, 1, 3,
0,
0,
25|128,1,
OPC_CheckInteger, 10|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 88,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 31,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRM128MEM), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::v16i8, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
31,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/3,
OPC_EmitMergeInputChains, 1, 2,
OPC_EmitConvertToTarget, 5,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 4, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRM128MEM), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::v16i8, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11,
0,
55,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_RecordChild5,
OPC_MoveChild, 5,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 13,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRM128REG), 0|OPFL_FlagInput,
2, MVT::v16i8, MVT::i32, 3, 0, 2, 5,
21,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 4,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPCMPESTRM128REG), 0|OPFL_FlagInput,
2, MVT::v16i8, MVT::i32, 3, 0, 2, 5,
0,
0,
87,
OPC_CheckInteger, 34|128,6,
OPC_MoveParent,
OPC_Scope, 54,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSS2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSS2SIrr), 0,
1, MVT::i32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SIrr), 0,
1, MVT::i32, 1, 0,
0,
0,
87,
OPC_CheckInteger, 35|128,6,
OPC_MoveParent,
OPC_Scope, 54,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSS2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSS2SI64rr), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SI64rr), 0,
1, MVT::i64, 1, 0,
0,
0,
87,
OPC_CheckInteger, 114|128,4,
OPC_MoveParent,
OPC_Scope, 54,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSD2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSD2SIrr), 0,
1, MVT::i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SIrr), 0,
1, MVT::i32, 1, 0,
0,
0,
87,
OPC_CheckInteger, 115|128,4,
OPC_MoveParent,
OPC_Scope, 54,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSD2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSD2SI64rr), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SI64rr), 0,
1, MVT::i64, 1, 0,
0,
0,
87,
OPC_CheckInteger, 38|128,6,
OPC_MoveParent,
OPC_Scope, 54,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTSS2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSS2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTSS2SIrr), 0,
1, MVT::i32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSS2SIrr), 0,
1, MVT::i32, 1, 0,
0,
0,
87,
OPC_CheckInteger, 39|128,6,
OPC_MoveParent,
OPC_Scope, 54,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTSS2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSS2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTSS2SI64rr), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSS2SI64rr), 0,
1, MVT::i64, 1, 0,
0,
0,
87,
OPC_CheckInteger, 122|128,4,
OPC_MoveParent,
OPC_Scope, 54,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTSD2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSD2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTSD2SIrr), 0,
1, MVT::i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSD2SIrr), 0,
1, MVT::i32, 1, 0,
0,
0,
87,
OPC_CheckInteger, 123|128,4,
OPC_MoveParent,
OPC_Scope, 54,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTSD2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSD2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTSD2SI64rr), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSD2SI64rr), 0,
1, MVT::i64, 1, 0,
0,
0,
54,
OPC_CheckInteger, 1|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32m8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32r8), 0,
1, MVT::i32, 2, 0, 1,
0,
54,
OPC_CheckInteger, 127|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32m16), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32r16), 0,
1, MVT::i32, 2, 0, 1,
0,
54,
OPC_CheckInteger, 0|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32r32), 0,
1, MVT::i32, 2, 0, 1,
0,
54,
OPC_CheckInteger, 3|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC64m8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC64r8), 0,
1, MVT::i64, 2, 0, 1,
0,
54,
OPC_CheckInteger, 2|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 13,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC64m64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC64r64), 0,
1, MVT::i64, 2, 0, 1,
0,
29,
OPC_CheckInteger, 47|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVMSKPSrr), 0,
1, MVT::i32, 1, 0,
10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVMSKPSrr), 0,
1, MVT::i32, 1, 0,
0,
29,
OPC_CheckInteger, 6|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVMSKPDrr), 0,
1, MVT::i32, 1, 0,
10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVMSKPDrr), 0,
1, MVT::i32, 1, 0,
0,
15,
OPC_CheckInteger, 97|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVMSKPSYrr), 0,
1, MVT::i32, 1, 0,
15,
OPC_CheckInteger, 96|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVMSKPDYrr), 0,
1, MVT::i32, 1, 0,
29,
OPC_CheckInteger, 31|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMOVMSKBrr), 0,
1, MVT::i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVMSKBrr), 0,
1, MVT::i32, 1, 0,
0,
15,
OPC_CheckInteger, 56|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMOVMSKBrr), 0,
1, MVT::i32, 1, 0,
51,
OPC_CheckInteger, 31|128,6,
OPC_MoveParent,
OPC_Scope, 32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2PIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2PIrr), 0,
1, MVT::v2i32, 1, 0,
0,
53,
OPC_CheckInteger, 28|128,6,
OPC_MoveParent,
OPC_Scope, 34,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2PIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2PIrr), 0,
1, MVT::v2i32, 1, 0,
0,
51,
OPC_CheckInteger, 37|128,6,
OPC_MoveParent,
OPC_Scope, 32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPS2PIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPS2PIrr), 0,
1, MVT::v2i32, 1, 0,
0,
53,
OPC_CheckInteger, 36|128,6,
OPC_MoveParent,
OPC_Scope, 34,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPD2PIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPD2PIrr), 0,
1, MVT::v2i32, 1, 0,
0,
89,
OPC_CheckInteger, 112|128,4,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTPS2DQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2DQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTPS2DQrr), 0,
1, MVT::v4i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2DQrr), 0,
1, MVT::v4i32, 1, 0,
0,
0,
89,
OPC_CheckInteger, 110|128,4,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTPD2DQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2DQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTPD2DQrr), 0,
1, MVT::v4i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2DQrr), 0,
1, MVT::v4i32, 1, 0,
0,
0,
89,
OPC_CheckInteger, 121|128,4,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTPS2DQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPS2DQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTPS2DQrr), 0,
1, MVT::v4i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPS2DQrr), 0,
1, MVT::v4i32, 1, 0,
0,
0,
89,
OPC_CheckInteger, 120|128,4,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTPD2DQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPD2DQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTTPD2DQrr), 0,
1, MVT::v4i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPD2DQrr), 0,
1, MVT::v4i32, 1, 0,
0,
0,
49,
OPC_CheckInteger, 70|128,3,
OPC_MoveParent,
OPC_Scope, 32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTPS2DQYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i32, 5, 2, 3, 4, 5, 6,
9,
OPC_RecordChild1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTPS2DQYrr), 0,
1, MVT::v8i32, 1, 0,
0,
49,
OPC_CheckInteger, 73|128,3,
OPC_MoveParent,
OPC_Scope, 32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTPD2DQYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
9,
OPC_RecordChild1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTPD2DQYrr), 0,
1, MVT::v4i32, 1, 0,
0,
49,
OPC_CheckInteger, 74|128,3,
OPC_MoveParent,
OPC_Scope, 32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTPS2DQYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i32, 5, 2, 3, 4, 5, 6,
9,
OPC_RecordChild1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTPS2DQYrr), 0,
1, MVT::v8i32, 1, 0,
0,
94,
OPC_CheckInteger, 39|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLQrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
94,
OPC_CheckInteger, 51|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLQrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
0,
49,
OPC_CheckInteger, 68|128,3,
OPC_MoveParent,
OPC_Scope, 32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTPD2DQYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
9,
OPC_RecordChild1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTPD2DQYrr), 0,
1, MVT::v4i32, 1, 0,
0,
89,
OPC_CheckInteger, 67|128,6,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPABSBrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSBrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPABSBrr128), 0,
1, MVT::v16i8, 1, 0,
10,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSBrr128), 0,
1, MVT::v16i8, 1, 0,
0,
0,
89,
OPC_CheckInteger, 71|128,6,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPABSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPABSWrr128), 0,
1, MVT::v8i16, 1, 0,
10,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSWrr128), 0,
1, MVT::v8i16, 1, 0,
0,
0,
89,
OPC_CheckInteger, 69|128,6,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPABSDrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSDrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPABSDrr128), 0,
1, MVT::v4i32, 1, 0,
10,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSDrr128), 0,
1, MVT::v4i32, 1, 0,
0,
0,
53,
OPC_CheckInteger, 66|128,6,
OPC_MoveParent,
OPC_Scope, 34,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSBrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSBrr64), 0,
1, MVT::v8i8, 1, 0,
0,
53,
OPC_CheckInteger, 70|128,6,
OPC_MoveParent,
OPC_Scope, 34,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSWrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSWrr64), 0,
1, MVT::v4i16, 1, 0,
0,
53,
OPC_CheckInteger, 68|128,6,
OPC_MoveParent,
OPC_Scope, 34,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSDrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSDrr64), 0,
1, MVT::v2i32, 1, 0,
0,
94,
OPC_CheckInteger, 89|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSHUFBrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSHUFBrr128), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrr128), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
94,
OPC_CheckInteger, 92|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSIGNBrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNBrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSIGNBrr128), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNBrr128), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
56,
OPC_CheckInteger, 88|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrr64), 0,
1, MVT::v8i8, 2, 0, 1,
0,
56,
OPC_CheckInteger, 91|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNBrm64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNBrr64), 0,
1, MVT::v8i8, 2, 0, 1,
0,
89,
OPC_CheckInteger, 98|128,5,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 44,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHMINPOSUWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHMINPOSUWrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPHMINPOSUWrr128), 0,
1, MVT::v8i16, 1, 0,
10,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PHMINPOSUWrr128), 0,
1, MVT::v8i16, 1, 0,
0,
0,
27|128,1,
OPC_CheckInteger, 103|128,5,
OPC_MoveParent,
OPC_Scope, 59,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
59,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMINSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
27|128,1,
OPC_CheckInteger, 99|128,5,
OPC_MoveParent,
OPC_Scope, 59,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
59,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
0,
28,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMAXSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
0,
104,
OPC_CheckInteger, 92|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 63,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild3,
OPC_Scope, 20,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPBLENDVBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 7, 0, 4, 5, 6, 7, 8, 3,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::XMM0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PBLENDVBrm0), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 4, 5, 6, 7, 8,
0,
32,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_Scope, 12,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPBLENDVBrr), 0,
1, MVT::v16i8, 3, 0, 1, 2,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitCopyToReg, 2, X86::XMM0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PBLENDVBrr0), 0|OPFL_FlagInput,
1, MVT::v16i8, 2, 0, 1,
0,
0,
89,
OPC_CheckInteger, 57|128,3,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 14,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESIMCrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 15,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESIMCrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 14,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VAESIMCrr), 0,
1, MVT::v2i64, 1, 0,
10,
OPC_CheckPatternPredicate, 15,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AESIMCrr), 0,
1, MVT::v2i64, 1, 0,
0,
0,
54,
OPC_CheckInteger, 75|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
54,
OPC_CheckInteger, 73|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLDrr), 0,
1, MVT::v2i32, 2, 0, 1,
0,
54,
OPC_CheckInteger, 74|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLQrr), 0,
1, MVT::v1i64, 2, 0, 1,
0,
54,
OPC_CheckInteger, 65|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
54,
OPC_CheckInteger, 63|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLDrr), 0,
1, MVT::v2i32, 2, 0, 1,
0,
54,
OPC_CheckInteger, 64|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLQrr), 0,
1, MVT::v1i64, 2, 0, 1,
0,
54,
OPC_CheckInteger, 70|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRAWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRAWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
54,
OPC_CheckInteger, 69|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRADrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRADrr), 0,
1, MVT::v2i32, 2, 0, 1,
0,
42,
OPC_CheckInteger, 43|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLWri), 0,
1, MVT::v8i16, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLWri), 0,
1, MVT::v8i16, 2, 0, 2,
0,
42,
OPC_CheckInteger, 41|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLDri), 0,
1, MVT::v4i32, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDri), 0,
1, MVT::v4i32, 2, 0, 2,
0,
42,
OPC_CheckInteger, 42|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLQri), 0,
1, MVT::v2i64, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLQri), 0,
1, MVT::v2i64, 2, 0, 2,
0,
42,
OPC_CheckInteger, 55|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLWri), 0,
1, MVT::v8i16, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLWri), 0,
1, MVT::v8i16, 2, 0, 2,
0,
42,
OPC_CheckInteger, 53|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLDri), 0,
1, MVT::v4i32, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDri), 0,
1, MVT::v4i32, 2, 0, 2,
0,
42,
OPC_CheckInteger, 54|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLQri), 0,
1, MVT::v2i64, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLQri), 0,
1, MVT::v2i64, 2, 0, 2,
0,
42,
OPC_CheckInteger, 47|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRAWri), 0,
1, MVT::v8i16, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRAWri), 0,
1, MVT::v8i16, 2, 0, 2,
0,
42,
OPC_CheckInteger, 46|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRADri), 0,
1, MVT::v4i32, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRADri), 0,
1, MVT::v4i32, 2, 0, 2,
0,
48,
OPC_CheckInteger, 37|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 16,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 5, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLDQri), 0,
1, MVT::v2i64, 2, 0, 3,
16,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 5, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDQri), 0,
1, MVT::v2i64, 2, 0, 3,
0,
48,
OPC_CheckInteger, 49|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 16,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 5, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLDQri), 0,
1, MVT::v2i64, 2, 0, 3,
16,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 5, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDQri), 0,
1, MVT::v2i64, 2, 0, 3,
0,
42,
OPC_CheckInteger, 38|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLDQri), 0,
1, MVT::v2i64, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDQri), 0,
1, MVT::v2i64, 2, 0, 2,
0,
42,
OPC_CheckInteger, 50|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLDQri), 0,
1, MVT::v2i64, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDQri), 0,
1, MVT::v2i64, 2, 0, 2,
0,
25,
OPC_CheckInteger, 123|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VINSERTF128rr), 0,
1, MVT::v8i32, 3, 0, 1, 3,
23,
OPC_CheckInteger, 120|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VEXTRACTF128rr), 0,
1, MVT::v4i32, 2, 0, 2,
25,
OPC_CheckInteger, 78|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLWri), 0,
1, MVT::v4i16, 2, 0, 2,
25,
OPC_CheckInteger, 76|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLDri), 0,
1, MVT::v2i32, 2, 0, 2,
25,
OPC_CheckInteger, 77|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLQri), 0,
1, MVT::v1i64, 2, 0, 2,
25,
OPC_CheckInteger, 68|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLWri), 0,
1, MVT::v4i16, 2, 0, 2,
25,
OPC_CheckInteger, 66|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLDri), 0,
1, MVT::v2i32, 2, 0, 2,
25,
OPC_CheckInteger, 67|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLQri), 0,
1, MVT::v1i64, 2, 0, 2,
25,
OPC_CheckInteger, 72|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRAWri), 0,
1, MVT::v4i16, 2, 0, 2,
25,
OPC_CheckInteger, 71|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRADri), 0,
1, MVT::v2i32, 2, 0, 2,
0|128,1,
OPC_CheckInteger, 82|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 79,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
40,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDPSrri), 0,
1, MVT::v4f32, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDPSrri), 0,
1, MVT::v4f32, 3, 0, 1, 3,
0,
0,
0|128,1,
OPC_CheckInteger, 81|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 79,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9,
0,
40,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDPDrri), 0,
1, MVT::v2f64, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDPDrri), 0,
1, MVT::v2f64, 3, 0, 1, 3,
0,
0,
84,
OPC_CheckInteger, 62|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 53,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v32i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDPSYrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDPSYrri), 0,
1, MVT::v8f32, 3, 0, 1, 3,
0,
84,
OPC_CheckInteger, 61|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 53,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v32i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDPDYrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDPDYrri), 0,
1, MVT::v4f64, 3, 0, 1, 3,
0,
82|128,1,
OPC_CheckInteger, 86|128,5,
OPC_MoveParent,
OPC_Scope, 80,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDPPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
80,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDPPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 2, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 2, 4, 5, 6, 7, 8, 9,
0,
41,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDPPSrri), 0,
1, MVT::v4f32, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPSrri), 0,
1, MVT::v4f32, 3, 0, 1, 3,
0,
0,
82|128,1,
OPC_CheckInteger, 85|128,5,
OPC_MoveParent,
OPC_Scope, 80,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDPPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9,
0,
80,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDPPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 2, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 2, 4, 5, 6, 7, 8, 9,
0,
41,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDPPDrri), 0,
1, MVT::v2f64, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPDrri), 0,
1, MVT::v2f64, 3, 0, 1, 3,
0,
0,
84,
OPC_CheckInteger, 75|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 53,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v32i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDPPSYrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDPPSYrri), 0,
1, MVT::v8f32, 3, 0, 1, 3,
0,
97,
OPC_CheckInteger, 109|128,4,
OPC_MoveParent,
OPC_Scope, 64,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTDQ2PSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTDQ2PSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTDQ2PSrr), 0,
1, MVT::v4f32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTDQ2PSrr), 0,
1, MVT::v4f32, 1, 0,
0,
0,
97,
OPC_CheckInteger, 108|128,4,
OPC_MoveParent,
OPC_Scope, 64,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTDQ2PDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTDQ2PDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTDQ2PDrr), 0,
1, MVT::v2f64, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTDQ2PDrr), 0,
1, MVT::v2f64, 1, 0,
0,
0,
118,
OPC_CheckInteger, 21|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 69,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCMPSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CMPSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
40,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCMPSSrr), 0,
1, MVT::v4f32, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 1,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CMPSSrr), 0,
1, MVT::v4f32, 3, 0, 1, 3,
0,
0,
118,
OPC_CheckInteger, 101|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 69,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCMPSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CMPSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9,
0,
40,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCMPSDrr), 0,
1, MVT::v2f64, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CMPSDrr), 0,
1, MVT::v2f64, 3, 0, 1, 3,
0,
0,
120,
OPC_CheckInteger, 20|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 71,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCMPPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
40,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCMPPSrri), 0,
1, MVT::v4f32, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 1,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPSrri), 0,
1, MVT::v4f32, 3, 0, 1, 3,
0,
0,
120,
OPC_CheckInteger, 100|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 71,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCMPPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9,
0,
40,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCMPPDrri), 0,
1, MVT::v2f64, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPDrri), 0,
1, MVT::v2f64, 3, 0, 1, 3,
0,
0,
76,
OPC_CheckInteger, 66|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 45,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCMPPSYrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCMPPSYrri), 0,
1, MVT::v8f32, 3, 0, 1, 3,
0,
76,
OPC_CheckInteger, 65|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 45,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCMPPDYrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCMPPDYrri), 0,
1, MVT::v4f64, 3, 0, 1, 3,
0,
115,
OPC_CheckInteger, 124|128,5,
OPC_MoveParent,
OPC_Scope, 69,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDPSm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 3, 4, 5, 6, 7, 8,
21,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDPSm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 3, 4, 5, 6, 7, 8,
0,
38,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDPSr_Int), 0,
1, MVT::v4f32, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDPSr_Int), 0,
1, MVT::v4f32, 2, 0, 2,
0,
0,
115,
OPC_CheckInteger, 123|128,5,
OPC_MoveParent,
OPC_Scope, 69,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDPDm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 3, 4, 5, 6, 7, 8,
21,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDPDm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 3, 4, 5, 6, 7, 8,
0,
38,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDPDr_Int), 0,
1, MVT::v2f64, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDPDr_Int), 0,
1, MVT::v2f64, 2, 0, 2,
0,
0,
73,
OPC_CheckInteger, 106|128,3,
OPC_MoveParent,
OPC_Scope, 44,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDYPSm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 3, 4, 5, 6, 7, 8,
21,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDYPSr_Int), 0,
1, MVT::v8f32, 2, 0, 2,
0,
73,
OPC_CheckInteger, 105|128,3,
OPC_MoveParent,
OPC_Scope, 44,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDYPDm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 3, 4, 5, 6, 7, 8,
21,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDYPDr_Int), 0,
1, MVT::v4f64, 2, 0, 2,
0,
112,
OPC_CheckInteger, 83|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 71,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_Scope, 20,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDVPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 3,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::XMM0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDVPDrm0), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 4, 5, 6, 7, 8,
0,
32,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_Scope, 12,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDVPDrr), 0,
1, MVT::v2f64, 3, 0, 1, 2,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitCopyToReg, 2, X86::XMM0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDVPDrr0), 0|OPFL_FlagInput,
1, MVT::v2f64, 2, 0, 1,
0,
0,
112,
OPC_CheckInteger, 84|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 71,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_Scope, 20,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDVPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 3,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::XMM0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDVPSrm0), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 4, 5, 6, 7, 8,
0,
32,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_Scope, 12,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDVPSrr), 0,
1, MVT::v4f32, 3, 0, 1, 2,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitCopyToReg, 2, X86::XMM0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDVPSrr0), 0|OPFL_FlagInput,
1, MVT::v4f32, 2, 0, 1,
0,
0,
68,
OPC_CheckInteger, 63|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 45,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v32i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDVPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 7, 0, 4, 5, 6, 7, 8, 3,
14,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDVPDYrr), 0,
1, MVT::v4f64, 3, 0, 1, 2,
0,
68,
OPC_CheckInteger, 64|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 45,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v32i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDVPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 7, 0, 4, 5, 6, 7, 8, 3,
14,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBLENDVPSYrr), 0,
1, MVT::v8f32, 3, 0, 1, 2,
0,
73,
OPC_CheckInteger, 1|128,4,
OPC_MoveParent,
OPC_Scope, 44,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPSmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 3, 4, 5, 6, 7, 8,
21,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPSri), 0,
1, MVT::v4f32, 2, 0, 2,
0,
73,
OPC_CheckInteger, 2|128,4,
OPC_MoveParent,
OPC_Scope, 44,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPSYmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 3, 4, 5, 6, 7, 8,
21,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPSYri), 0,
1, MVT::v8f32, 2, 0, 2,
0,
73,
OPC_CheckInteger, 127|128,3,
OPC_MoveParent,
OPC_Scope, 44,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPDmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 3, 4, 5, 6, 7, 8,
21,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPDri), 0,
1, MVT::v2f64, 2, 0, 2,
0,
73,
OPC_CheckInteger, 0|128,4,
OPC_MoveParent,
OPC_Scope, 44,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPDYmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 3, 4, 5, 6, 7, 8,
21,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPDYri), 0,
1, MVT::v4f64, 2, 0, 2,
0,
72,
OPC_CheckInteger, 125|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERM2F128rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 7, 0, 4, 5, 6, 7, 8, 9,
20,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERM2F128rr), 0,
1, MVT::v8f32, 3, 0, 1, 3,
0,
72,
OPC_CheckInteger, 124|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 43,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERM2F128rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 7, 0, 4, 5, 6, 7, 8, 9,
20,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERM2F128rr), 0,
1, MVT::v4f64, 3, 0, 1, 3,
0,
92,
OPC_CheckInteger, 32|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 56,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSI2SSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSI2SSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
0,
94,
OPC_CheckInteger, 33|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSI2SS64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SS64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSI2SS64rr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SS64rr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
0,
92,
OPC_CheckInteger, 117|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 56,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSI2SDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSI2SDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
94,
OPC_CheckInteger, 118|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSI2SD64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SD64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSI2SD64rr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SD64rr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
51,
OPC_CheckInteger, 29|128,6,
OPC_MoveParent,
OPC_Scope, 32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPI2PDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPI2PDrr), 0,
1, MVT::v2f64, 1, 0,
0,
54,
OPC_CheckInteger, 30|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 33,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPI2PSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPI2PSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
92,
OPC_CheckInteger, 116|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 56,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSD2SSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSD2SSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
0,
92,
OPC_CheckInteger, 119|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 56,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSS2SDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTSS2SDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
87,
OPC_CheckInteger, 113|128,4,
OPC_MoveParent,
OPC_Scope, 54,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTPS2PDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2PDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTPS2PDrr), 0,
1, MVT::v2f64, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2PDrr), 0,
1, MVT::v2f64, 1, 0,
0,
0,
89,
OPC_CheckInteger, 111|128,4,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTPD2PSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2PSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCVTPD2PSrr), 0,
1, MVT::v4f32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2PSrr), 0,
1, MVT::v4f32, 1, 0,
0,
0,
49,
OPC_CheckInteger, 72|128,3,
OPC_MoveParent,
OPC_Scope, 32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTDQ2PSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
9,
OPC_RecordChild1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTDQ2PSYrr), 0,
1, MVT::v8f32, 1, 0,
0,
49,
OPC_CheckInteger, 67|128,3,
OPC_MoveParent,
OPC_Scope, 32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTPD2PSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
9,
OPC_RecordChild1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTPD2PSYrr), 0,
1, MVT::v4f32, 1, 0,
0,
49,
OPC_CheckInteger, 69|128,3,
OPC_MoveParent,
OPC_Scope, 32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTPS2PDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 5, 2, 3, 4, 5, 6,
9,
OPC_RecordChild1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTPS2PDYrr), 0,
1, MVT::v4f64, 1, 0,
0,
94,
OPC_CheckInteger, 43|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPSrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPSrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
0,
0,
94,
OPC_CheckInteger, 1|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPDrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPDrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
56,
OPC_CheckInteger, 93|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPSYrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPSYrr_Int), 0,
1, MVT::v8f32, 2, 0, 1,
0,
56,
OPC_CheckInteger, 92|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPDYrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPDYrr_Int), 0,
1, MVT::v4f64, 2, 0, 1,
0,
94,
OPC_CheckInteger, 45|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPSrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPSrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
0,
0,
94,
OPC_CheckInteger, 4|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPDrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPDrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
56,
OPC_CheckInteger, 95|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPSYrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPSYrr_Int), 0,
1, MVT::v8f32, 2, 0, 1,
0,
56,
OPC_CheckInteger, 94|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPDYrm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPDYrr_Int), 0,
1, MVT::v4f64, 2, 0, 1,
0,
89,
OPC_CheckInteger, 55|128,6,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPSm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPSm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPSr_Int), 0,
1, MVT::v4f32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPSr_Int), 0,
1, MVT::v4f32, 1, 0,
0,
0,
89,
OPC_CheckInteger, 60|128,5,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPDm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPDm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPDr_Int), 0,
1, MVT::v2f64, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPDr_Int), 0,
1, MVT::v2f64, 1, 0,
0,
0,
53,
OPC_CheckInteger, 109|128,3,
OPC_MoveParent,
OPC_Scope, 34,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPSYm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPSYr_Int), 0,
1, MVT::v8f32, 1, 0,
0,
53,
OPC_CheckInteger, 108|128,3,
OPC_MoveParent,
OPC_Scope, 34,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPDYm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPDYr_Int), 0,
1, MVT::v4f64, 1, 0,
0,
53,
OPC_CheckInteger, 107|128,3,
OPC_MoveParent,
OPC_Scope, 34,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRSQRTPSYm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRSQRTPSYr_Int), 0,
1, MVT::v8f32, 1, 0,
0,
89,
OPC_CheckInteger, 52|128,6,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRSQRTPSm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTPSm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRSQRTPSr_Int), 0,
1, MVT::v4f32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTPSr_Int), 0,
1, MVT::v4f32, 1, 0,
0,
0,
53,
OPC_CheckInteger, 104|128,3,
OPC_MoveParent,
OPC_Scope, 34,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRCPPSYm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRCPPSYr_Int), 0,
1, MVT::v8f32, 1, 0,
0,
89,
OPC_CheckInteger, 50|128,6,
OPC_MoveParent,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRCPPSm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPPSm_Int), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
25,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRCPPSr_Int), 0,
1, MVT::v4f32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPPSr_Int), 0,
1, MVT::v4f32, 1, 0,
0,
0,
49,
OPC_CheckInteger, 71|128,3,
OPC_MoveParent,
OPC_Scope, 32,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTDQ2PDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 5, 2, 3, 4, 5, 6,
9,
OPC_RecordChild1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTDQ2PDYrr), 0,
1, MVT::v4f64, 1, 0,
0,
94,
OPC_CheckInteger, 73|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSUBPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSUBPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSUBPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSUBPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
0,
94,
OPC_CheckInteger, 72|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSUBPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSUBPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSUBPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSUBPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
56,
OPC_CheckInteger, 60|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSUBPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSUBPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
0,
56,
OPC_CheckInteger, 59|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSUBPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSUBPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
94,
OPC_CheckInteger, 75|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHADDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::HADDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHADDPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::HADDPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
0,
94,
OPC_CheckInteger, 74|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHADDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::HADDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHADDPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::HADDPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
94,
OPC_CheckInteger, 77|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHSUBPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::HSUBPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHSUBPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::HSUBPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
0,
94,
OPC_CheckInteger, 76|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 58,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHSUBPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::HSUBPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild2,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHSUBPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 10,
OPC_MorphNodeTo, TARGET_OPCODE(X86::HSUBPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
56,
OPC_CheckInteger, 77|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHADDPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHADDPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
0,
56,
OPC_CheckInteger, 76|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHADDPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHADDPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
56,
OPC_CheckInteger, 79|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHSUBPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHSUBPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
0,
56,
OPC_CheckInteger, 78|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHSUBPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VHSUBPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
56,
OPC_CheckInteger, 5|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
56,
OPC_CheckInteger, 6|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
0,
56,
OPC_CheckInteger, 3|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
56,
OPC_CheckInteger, 4|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 35,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPERMILPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
95,
OPC_CheckInteger, 126|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 24,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 8,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDSSm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 7, 0, 3, 4, 5, 6, 7, 9,
24,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 8,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDSSm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 7, 0, 3, 4, 5, 6, 7, 9,
14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDSSr_Int), 0,
1, MVT::v4f32, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDSSr_Int), 0,
1, MVT::v4f32, 3, 0, 1, 3,
0,
95,
OPC_CheckInteger, 125|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 24,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 8,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDSDm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 7, 0, 3, 4, 5, 6, 7, 9,
24,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 8,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDSDm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 7, 0, 3, 4, 5, 6, 7, 9,
14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VROUNDSDr_Int), 0,
1, MVT::v2f64, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDSDr_Int), 0,
1, MVT::v2f64, 3, 0, 1, 3,
0,
76,
OPC_CheckInteger, 19|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
0,
76,
OPC_CheckInteger, 98|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
0,
76,
OPC_CheckInteger, 49|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
0,
76,
OPC_CheckInteger, 10|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
0,
76,
OPC_CheckInteger, 59|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
0,
76,
OPC_CheckInteger, 65|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
0,
76,
OPC_CheckInteger, 40|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
0,
76,
OPC_CheckInteger, 124|128,4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
0,
76,
OPC_CheckInteger, 44|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
0,
76,
OPC_CheckInteger, 2|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
0,
76,
OPC_CheckInteger, 46|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/1, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSSrr_Int), 0,
1, MVT::v4f32, 2, 0, 1,
0,
76,
OPC_CheckInteger, 5|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
21,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/2, /*#*/1,
OPC_EmitMergeInputChains, 1, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSDrr_Int), 0,
1, MVT::v2f64, 2, 0, 1,
0,
71,
OPC_CheckInteger, 56|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 20,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/1, /*#*/0,
OPC_EmitMergeInputChains, 1, 6,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTSSm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 5, 1, 2, 3, 4, 5,
20,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/1, /*#*/0,
OPC_EmitMergeInputChains, 1, 6,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSSm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 5, 1, 2, 3, 4, 5,
10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTSSr_Int), 0,
1, MVT::v4f32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSSr_Int), 0,
1, MVT::v4f32, 1, 0,
0,
71,
OPC_CheckInteger, 61|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 20,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/2, /*#*/0,
OPC_EmitMergeInputChains, 1, 6,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTSDm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 5, 1, 2, 3, 4, 5,
20,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/2, /*#*/0,
OPC_EmitMergeInputChains, 1, 6,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSDm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 5, 1, 2, 3, 4, 5,
10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTSDr_Int), 0,
1, MVT::v2f64, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSDr_Int), 0,
1, MVT::v2f64, 1, 0,
0,
71,
OPC_CheckInteger, 53|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 20,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/1, /*#*/0,
OPC_EmitMergeInputChains, 1, 6,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRSQRTSSm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 5, 1, 2, 3, 4, 5,
20,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/1, /*#*/0,
OPC_EmitMergeInputChains, 1, 6,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTSSm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 5, 1, 2, 3, 4, 5,
10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRSQRTSSr_Int), 0,
1, MVT::v4f32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTSSr_Int), 0,
1, MVT::v4f32, 1, 0,
0,
71,
OPC_CheckInteger, 51|128,6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_Scope, 20,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/1, /*#*/0,
OPC_EmitMergeInputChains, 1, 6,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRCPSSm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 5, 1, 2, 3, 4, 5,
20,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/1, /*#*/0,
OPC_EmitMergeInputChains, 1, 6,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPSSm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 5, 1, 2, 3, 4, 5,
10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRCPSSr_Int), 0,
1, MVT::v4f32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPSSr_Int), 0,
1, MVT::v4f32, 1, 0,
0,
45,
OPC_CheckInteger, 88|128,5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VINSERTPSrr), 0,
1, MVT::v4f32, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INSERTPSrr), 0,
1, MVT::v4f32, 3, 0, 1, 3,
0,
25,
OPC_CheckInteger, 121|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VINSERTF128rr), 0,
1, MVT::v4f64, 3, 0, 1, 3,
25,
OPC_CheckInteger, 122|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VINSERTF128rr), 0,
1, MVT::v8f32, 3, 0, 1, 3,
23,
OPC_CheckInteger, 118|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VEXTRACTF128rr), 0,
1, MVT::v2f64, 2, 0, 2,
23,
OPC_CheckInteger, 119|128,3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VEXTRACTF128rr), 0,
1, MVT::v4f32, 2, 0, 2,
0,
32|128,36, TARGET_OPCODE(X86ISD::CMOV),
OPC_Scope, 78|128,8,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 9,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 9,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 7,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 7,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 6,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 6,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 5,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 5,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 15,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 15,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 12,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 12,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 14,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 14,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 11,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 11,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 13,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 13,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 10,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 0, 4, 5, 6, 7, 8,
33,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_CheckInteger, 10,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 0, 4, 5, 6, 7, 8,
0,
45|128,8,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 9,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 9,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 7,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 7,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 6,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 6,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 5,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 5,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 14,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 14,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 11,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 11,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 15,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 15,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 12,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 12,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 13,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 13,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 10,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i16, 6, 2, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckInteger, 10,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i32, 6, 2, 4, 5, 6, 7, 8,
0,
69|128,3,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_Scope, 26,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 9,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 7,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 6,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 5,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 15,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 12,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 14,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 11,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 13,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 10,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 0, 4, 5, 6, 7, 8,
0,
69|128,3,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_Scope, 26,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 9,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 7,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 6,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 5,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 14,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 11,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 15,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 12,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 13,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
26,
OPC_CheckInteger, 10,
OPC_MoveParent,
OPC_RecordChild3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
1, MVT::i64, 6, 2, 4, 5, 6, 7, 8,
0,
15|128,12,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_Scope, 84|128,6,
OPC_MoveChild, 2,
OPC_Scope, 52,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 9,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 7,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 6,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 5,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 15,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 12,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 14,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 11,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 13,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
52,
OPC_CheckInteger, 10,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::i16,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO16rr), 0|OPFL_FlagInput,
1, MVT::i16, 2, 0, 1,
14, MVT::i32,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO32rr), 0|OPFL_FlagInput,
1, MVT::i32, 2, 0, 1,
12, MVT::i64,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO64rr), 0|OPFL_FlagInput,
1, MVT::i64, 2, 0, 1,
0,
0,
68,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 16, MVT::i8,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_GR8), 0|OPFL_FlagInput,
2, MVT::i8, MVT::i32, 3, 0, 1, 4,
18, MVT::i32,
OPC_CheckPatternPredicate, 17,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_GR32), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 3, 0, 1, 4,
18, MVT::i16,
OPC_CheckPatternPredicate, 17,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_GR16), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 3, 0, 1, 4,
0,
60|128,3,
OPC_MoveChild, 2,
OPC_Scope, 54,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::f32,
OPC_CheckPatternPredicate, 18,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB_Fp32), 0|OPFL_FlagInput,
1, MVT::f32, 2, 0, 1,
14, MVT::f64,
OPC_CheckPatternPredicate, 19,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB_Fp64), 0|OPFL_FlagInput,
1, MVT::f64, 2, 0, 1,
14, MVT::f80,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB_Fp80), 0|OPFL_FlagInput,
1, MVT::f80, 2, 0, 1,
0,
54,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::f32,
OPC_CheckPatternPredicate, 18,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE_Fp32), 0|OPFL_FlagInput,
1, MVT::f32, 2, 0, 1,
14, MVT::f64,
OPC_CheckPatternPredicate, 19,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE_Fp64), 0|OPFL_FlagInput,
1, MVT::f64, 2, 0, 1,
14, MVT::f80,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE_Fp80), 0|OPFL_FlagInput,
1, MVT::f80, 2, 0, 1,
0,
54,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::f32,
OPC_CheckPatternPredicate, 18,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE_Fp32), 0|OPFL_FlagInput,
1, MVT::f32, 2, 0, 1,
14, MVT::f64,
OPC_CheckPatternPredicate, 19,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE_Fp64), 0|OPFL_FlagInput,
1, MVT::f64, 2, 0, 1,
14, MVT::f80,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE_Fp80), 0|OPFL_FlagInput,
1, MVT::f80, 2, 0, 1,
0,
54,
OPC_CheckInteger, 14,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::f32,
OPC_CheckPatternPredicate, 18,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP_Fp32), 0|OPFL_FlagInput,
1, MVT::f32, 2, 0, 1,
14, MVT::f64,
OPC_CheckPatternPredicate, 19,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP_Fp64), 0|OPFL_FlagInput,
1, MVT::f64, 2, 0, 1,
14, MVT::f80,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP_Fp80), 0|OPFL_FlagInput,
1, MVT::f80, 2, 0, 1,
0,
54,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::f32,
OPC_CheckPatternPredicate, 18,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNB_Fp32), 0|OPFL_FlagInput,
1, MVT::f32, 2, 0, 1,
14, MVT::f64,
OPC_CheckPatternPredicate, 19,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNB_Fp64), 0|OPFL_FlagInput,
1, MVT::f64, 2, 0, 1,
14, MVT::f80,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNB_Fp80), 0|OPFL_FlagInput,
1, MVT::f80, 2, 0, 1,
0,
54,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::f32,
OPC_CheckPatternPredicate, 18,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNBE_Fp32), 0|OPFL_FlagInput,
1, MVT::f32, 2, 0, 1,
14, MVT::f64,
OPC_CheckPatternPredicate, 19,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNBE_Fp64), 0|OPFL_FlagInput,
1, MVT::f64, 2, 0, 1,
14, MVT::f80,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNBE_Fp80), 0|OPFL_FlagInput,
1, MVT::f80, 2, 0, 1,
0,
54,
OPC_CheckInteger, 9,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::f32,
OPC_CheckPatternPredicate, 18,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE_Fp32), 0|OPFL_FlagInput,
1, MVT::f32, 2, 0, 1,
14, MVT::f64,
OPC_CheckPatternPredicate, 19,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE_Fp64), 0|OPFL_FlagInput,
1, MVT::f64, 2, 0, 1,
14, MVT::f80,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE_Fp80), 0|OPFL_FlagInput,
1, MVT::f80, 2, 0, 1,
0,
54,
OPC_CheckInteger, 11,
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 14, MVT::f32,
OPC_CheckPatternPredicate, 18,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP_Fp32), 0|OPFL_FlagInput,
1, MVT::f32, 2, 0, 1,
14, MVT::f64,
OPC_CheckPatternPredicate, 19,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP_Fp64), 0|OPFL_FlagInput,
1, MVT::f64, 2, 0, 1,
14, MVT::f80,
OPC_CheckPatternPredicate, 16,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP_Fp80), 0|OPFL_FlagInput,
1, MVT::f80, 2, 0, 1,
0,
0,
48|128,1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_RecordChild3,
OPC_SwitchType , 37, MVT::f32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 17,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_RFP32), 0|OPFL_FlagInput,
2, MVT::f32, MVT::i32, 3, 0, 1, 4,
15,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_FR32), 0|OPFL_FlagInput,
1, MVT::f32, 3, 0, 1, 4,
0,
37, MVT::f64,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 17,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_RFP64), 0|OPFL_FlagInput,
2, MVT::f64, MVT::i32, 3, 0, 1, 4,
15,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_FR64), 0|OPFL_FlagInput,
1, MVT::f64, 3, 0, 1, 4,
0,
18, MVT::f80,
OPC_CheckPatternPredicate, 17,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_RFP80), 0|OPFL_FlagInput,
2, MVT::f80, MVT::i32, 3, 0, 1, 4,
15, MVT::v2i64,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_V2I64), 0|OPFL_FlagInput,
1, MVT::v2i64, 3, 0, 1, 4,
15, MVT::v1i64,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_V1I64), 0|OPFL_FlagInput,
1, MVT::v1i64, 3, 0, 1, 4,
15, MVT::v4f32,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_V4F32), 0|OPFL_FlagInput,
1, MVT::v4f32, 3, 0, 1, 4,
15, MVT::v2f64,
OPC_EmitConvertToTarget, 2,
OPC_EmitCopyToReg, 3, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_V2F64), 0|OPFL_FlagInput,
1, MVT::v2f64, 3, 0, 1, 4,
0,
0,
0,
37|128,12, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_Scope, 19|128,6,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 24|128,1,
OPC_CheckPredicate, 3,
OPC_SwitchType , 42, MVT::f64,
OPC_CheckPredicate, 4,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
0,
40, MVT::i32,
OPC_Scope, 18,
OPC_CheckPredicate, 45,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::GS_MOV32rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPredicate, 46,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FS_MOV32rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
40, MVT::i64,
OPC_Scope, 18,
OPC_CheckPredicate, 45,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64GSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPredicate, 46,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64FSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
0,
18, MVT::i8,
OPC_CheckPredicate, 4,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i8, 5, 2, 3, 4, 5, 6,
0,
20,
OPC_CheckPredicate, 7,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i16, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
66,
OPC_CheckPredicate, 47,
OPC_Scope, 40,
OPC_CheckPredicate, 48,
OPC_SwitchType , 16, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX16rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i16, 5, 2, 3, 4, 5, 6,
16, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
20,
OPC_CheckPredicate, 49,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rm16), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
125,
OPC_CheckPredicate, 50,
OPC_Scope, 40,
OPC_CheckPredicate, 51,
OPC_SwitchType , 16, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i16, 5, 2, 3, 4, 5, 6,
16, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
20,
OPC_CheckPredicate, 52,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm16), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
58,
OPC_CheckPredicate, 53,
OPC_SwitchType , 16, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i8, 5, 2, 3, 4, 5, 6,
16, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i16, 5, 2, 3, 4, 5, 6,
16, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
0,
125,
OPC_CheckPredicate, 54,
OPC_Scope, 58,
OPC_CheckPredicate, 55,
OPC_SwitchType , 16, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i8, 5, 2, 3, 4, 5, 6,
16, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i16, 5, 2, 3, 4, 5, 6,
16, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
40,
OPC_CheckPredicate, 56,
OPC_SwitchType , 16, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i16, 5, 2, 3, 4, 5, 6,
16, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
20,
OPC_CheckPredicate, 57,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm16), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
20,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
63,
OPC_CheckPredicate, 47,
OPC_CheckType, MVT::i64,
OPC_Scope, 18,
OPC_CheckPredicate, 48,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPredicate, 49,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rm16), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPredicate, 58,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rm32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
0,
82,
OPC_CheckPredicate, 50,
OPC_CheckType, MVT::i64,
OPC_Scope, 18,
OPC_CheckPredicate, 51,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPredicate, 52,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm16), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPredicate, 59,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPredicate, 53,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
0,
98,
OPC_CheckPredicate, 54,
OPC_CheckType, MVT::i64,
OPC_Scope, 18,
OPC_CheckPredicate, 55,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPredicate, 56,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPredicate, 57,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm16), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
34,
OPC_CheckPredicate, 60,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitNode, TARGET_OPCODE(X86::MOV32rm), 0|OPFL_Chain,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
OPC_EmitInteger, MVT::i32, X86::sub_32bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 3, 7, 8, 9,
0,
0,
30,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(X86ISD::Wrapper),
OPC_RecordChild0,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::TargetGlobalTLSAddress),
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::i64,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 1, 1,
107|128,5,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 64,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_SwitchType , 18, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
18, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
16, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp80m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 5, 2, 3, 4, 5, 6,
0,
68,
OPC_CheckPredicate, 54,
OPC_SwitchType , 20, MVT::f64,
OPC_CheckPredicate, 61,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp32m64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
40, MVT::f80,
OPC_Scope, 18,
OPC_CheckPredicate, 62,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp64m80), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPredicate, 61,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp32m80), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 5, 2, 3, 4, 5, 6,
0,
0,
46,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
0,
24,
OPC_CheckPredicate, 54,
OPC_CheckPredicate, 61,
OPC_CheckType, MVT::f64,
OPC_CheckPatternPredicate, 20,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSS2SDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
46,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 63,
OPC_SwitchType , 18, MVT::f32,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsMOVAPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
18, MVT::f64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsMOVAPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
0,
35,
OPC_CheckPredicate, 54,
OPC_CheckPredicate, 61,
OPC_CheckType, MVT::f64,
OPC_CheckPatternPredicate, 21,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitNode, TARGET_OPCODE(X86::MOVSSrm), 0|OPFL_Chain,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
OPC_EmitNode, TARGET_OPCODE(X86::CVTSS2SDrr), 0|OPFL_MemRefs,
1, MVT::f64, 1, 7,
OPC_CompleteMatch, 1, 8,
67|128,3,
OPC_CheckPredicate, 3,
OPC_SwitchType , 85, MVT::v4i32,
OPC_Scope, 20,
OPC_CheckPredicate, 63,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
61,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckPredicate, 63,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
0,
82, MVT::v2i64,
OPC_Scope, 20,
OPC_CheckPredicate, 63,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckPredicate, 63,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
18, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 5, 2, 3, 4, 5, 6,
82, MVT::v4f32,
OPC_Scope, 20,
OPC_CheckPredicate, 63,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckPredicate, 63,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
82, MVT::v2f64,
OPC_Scope, 20,
OPC_CheckPredicate, 63,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckPredicate, 63,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
0,
42, MVT::v8f32,
OPC_Scope, 20,
OPC_CheckPredicate, 63,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
0,
42, MVT::v4f64,
OPC_Scope, 20,
OPC_CheckPredicate, 63,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVAPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 5, 2, 3, 4, 5, 6,
0,
0,
0,
0,
56, TARGET_OPCODE(X86ISD::VZEXT_LOAD),
OPC_RecordNode,
OPC_RecordChild1,
OPC_SwitchType , 16, MVT::v2i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZQI2PQIrm), 0|OPFL_Chain,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
32, MVT::v2f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitNode, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain,
1, MVT::v2f64, 3, 7, 8, 9,
0,
113|128,30, TARGET_OPCODE(ISD::AND),
OPC_Scope, 0|128,12,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 27|128,6, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 48|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_Scope, 58,
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
58,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
50,
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
51|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_SwitchType , 40, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
40, MVT::v8i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
40, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
36, MVT::v2i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7,
0,
110|128,1,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 50, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
49|128,1, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_SwitchType , 41, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
41, MVT::v8i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
41, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
37, MVT::v2i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
96,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 47,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7,
0,
96,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 47,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
89|128,5, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 35|128,3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 39|128,1,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 123, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_Scope, 42,
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
34,
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
34, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
39,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
39,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
39,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v8i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
39,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v8i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
39,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
39,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
84,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 37,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v2i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7,
37,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v2i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7,
0,
10|128,1,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 31,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
31,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
31,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
31,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
72,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 31,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7,
31,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7,
0,
0,
0,
114,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
117,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 26,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
26,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
17|128,1,
OPC_CheckAndImm, 127|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SRL),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckInteger, 8,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckPredicate, 13,
OPC_MoveParent,
OPC_SwitchType , 72, MVT::i32,
OPC_Scope, 34,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i32, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0,
1, MVT::i32, 1, 4,
34,
OPC_CheckPatternPredicate, 4,
OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i32, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0,
1, MVT::i32, 1, 4,
0,
48, MVT::i64,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitInteger, MVT::i32, X86::GR64_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i64, 2, 0, 2,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 3, 4,
OPC_EmitNode, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0,
1, MVT::i32, 1, 5,
OPC_EmitInteger, MVT::i32, X86::sub_32bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0,
1, MVT::i64, 3, 1, 6, 7,
0,
27,
OPC_CheckAndImm, 127|128,127|128,3,
OPC_RecordChild0,
OPC_CheckType, MVT::i32,
OPC_EmitInteger, MVT::i32, X86::sub_16bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i16, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr16), 0,
1, MVT::i32, 1, 2,
29,
OPC_CheckAndImm, 127|128,127|128,127|128,127|128,15,
OPC_RecordChild0,
OPC_CheckType, MVT::i64,
OPC_EmitInteger, MVT::i32, X86::sub_32bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i32, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr32), 0,
1, MVT::i64, 1, 2,
27,
OPC_CheckAndImm, 127|128,127|128,3,
OPC_RecordChild0,
OPC_CheckType, MVT::i64,
OPC_EmitInteger, MVT::i32, X86::sub_16bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i16, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr16), 0,
1, MVT::i64, 1, 2,
24|128,1,
OPC_CheckAndImm, 127|128,1,
OPC_RecordChild0,
OPC_SwitchType , 20, MVT::i64,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr8), 0,
1, MVT::i64, 1, 2,
60, MVT::i32,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 4,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0,
1, MVT::i32, 1, 2,
34,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i32, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0,
1, MVT::i32, 1, 4,
0,
60, MVT::i16,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 4,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rr8), 0,
1, MVT::i16, 1, 2,
34,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rr8), 0,
1, MVT::i16, 1, 4,
0,
0,
98|128,1,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_Scope, 40|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
48,
OPC_CheckPredicate, 65,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitInteger, MVT::i32, X86::sub_32bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i32, 2, 0, 3,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 6, 5,
OPC_EmitNode, TARGET_OPCODE(X86::AND32ri), 0,
2, MVT::i32, MVT::i32, 2, 4, 6,
OPC_EmitInteger, MVT::i32, X86::sub_32bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0,
1, MVT::i64, 3, 2, 7, 9,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rr), 0,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
36|128,1,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 85, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_Scope, 40,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
40,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
69, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_Scope, 24,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
0,
87,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 47,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPANDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7,
0,
5|128,3,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 83, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 48,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPANDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
23,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7,
0,
93|128,1, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 80,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 35, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrr), 0,
1, MVT::v2i64, 2, 0, 1,
35, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
104,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_SwitchType , 32, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
17, MVT::v8i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 0, 1,
17, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 0, 1,
15, MVT::v2i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v1i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0,
1, MVT::v1i64, 2, 0, 1,
0,
32,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
71, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 26, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrr), 0,
1, MVT::v2i64, 2, 1, 0,
26, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrr), 0,
1, MVT::v2i64, 2, 1, 0,
0,
0,
72,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 31,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrr), 0,
1, MVT::v2i64, 2, 1, 0,
31,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrr), 0,
1, MVT::v2i64, 2, 1, 0,
0,
37,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 0, 1,
72,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 31,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 1, 0,
31,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 1, 0,
0,
37,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v8i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 0, 1,
72,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 31,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v8i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 1, 0,
31,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v8i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 1, 0,
0,
37,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 0, 1,
72,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 31,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 1, 0,
31,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v16i8,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 1, 0,
0,
35,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v2i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v1i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0,
1, MVT::v1i64, 2, 0, 1,
68,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 29,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v2i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0,
1, MVT::v1i64, 2, 1, 0,
29,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v2i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0,
1, MVT::v1i64, 2, 1, 0,
0,
87,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 54,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::v2i64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPANDNrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
11, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0,
1, MVT::v1i64, 2, 0, 1,
0,
24,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPANDNrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
56,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 23,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPANDNrr), 0,
1, MVT::v2i64, 2, 1, 0,
23,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPANDNrr), 0,
1, MVT::v2i64, 2, 1, 0,
0,
29,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 0, 1,
56,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 23,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 1, 0,
23,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0,
1, MVT::v2i64, 2, 1, 0,
0,
29,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0,
1, MVT::v1i64, 2, 0, 1,
56,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 23,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0,
1, MVT::v1i64, 2, 1, 0,
23,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_CheckPredicate, 64,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0,
1, MVT::v1i64, 2, 1, 0,
0,
31,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPDrr), 0,
1, MVT::v2i64, 2, 0, 1,
57,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 38, MVT::v2i64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPSrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPANDrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
11, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDrr), 0,
1, MVT::v1i64, 2, 0, 1,
0,
0,
63|128,1, TARGET_OPCODE(X86ISD::PSHUFD),
OPC_Scope, 115,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_SwitchType , 57, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSHUFDmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 3, 4, 5, 6, 7, 8,
19,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 3, 4, 5, 6, 7, 8,
0,
32, MVT::v4f32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 3, 4, 5, 6, 7, 8,
0,
72,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 28, MVT::v4i32,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSHUFDri), 0,
1, MVT::v4i32, 2, 0, 2,
11,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0,
1, MVT::v4i32, 2, 0, 2,
0,
28, MVT::v4f32,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSHUFDri), 0,
1, MVT::v4f32, 2, 0, 2,
11,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0,
1, MVT::v4f32, 2, 0, 2,
0,
0,
0,
39|128,2, TARGET_OPCODE(X86ISD::SHUFPS),
OPC_RecordChild0,
OPC_Scope, 81,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 7, 0, 4, 5, 6, 7, 8, 9,
20,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
42,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPSrri), 0,
1, MVT::v4i32, 3, 0, 1, 3,
12,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrri), 0,
1, MVT::v4i32, 3, 0, 1, 3,
0,
123,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 46, MVT::v2f64,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9,
20,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9,
0,
46, MVT::v4f32,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
20,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
0,
42,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPSrri), 0,
1, MVT::v4f32, 3, 0, 1, 3,
12,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrri), 0,
1, MVT::v4f32, 3, 0, 1, 3,
0,
0,
81, TARGET_OPCODE(X86ISD::PSHUFHW),
OPC_Scope, 54,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::v8i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFHWmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 3, 4, 5, 6, 7, 8,
23,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::v8i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFHWri), 0,
1, MVT::v8i16, 2, 0, 2,
0,
81, TARGET_OPCODE(X86ISD::PSHUFLW),
OPC_Scope, 54,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::v8i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFLWmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 3, 4, 5, 6, 7, 8,
23,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::v8i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFLWri), 0,
1, MVT::v8i16, 2, 0, 2,
0,
78, TARGET_OPCODE(X86ISD::MMX_PINSRW),
OPC_RecordChild0,
OPC_Scope, 51,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::ANY_EXTEND),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 7,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PINSRWrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PINSRWrri), 0,
1, MVT::v4i16, 3, 0, 1, 3,
0,
88, TARGET_OPCODE(X86ISD::MOVQ2DQ),
OPC_Scope, 75,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 41, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 8,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::v2i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
24, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
9,
OPC_RecordChild0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0,
1, MVT::v2i64, 1, 0,
0,
3|128,4, TARGET_OPCODE(X86ISD::SMUL),
OPC_Scope, 40|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 71,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 20, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rmi8), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
20, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rmi8), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
20, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rmi8), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
0,
25,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rmi32), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
47,
OPC_MoveParent,
OPC_SwitchType , 20, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rmi), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
20, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rmi), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
0,
0,
77,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
77,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
57|128,1,
OPC_RecordChild0,
OPC_Scope, 31,
OPC_MoveChild, 1,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_SwitchType , 10, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 0,
10, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 0,
0,
20|128,1,
OPC_RecordChild1,
OPC_Scope, 105,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
31,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
0,
101|128,1, TARGET_OPCODE(X86ISD::BT),
OPC_Scope, 114,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_SwitchType , 31, MVT::i16,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BT16mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
31, MVT::i32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BT32mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
33, MVT::i64,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BT64mi8), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
0,
111,
OPC_RecordChild0,
OPC_Scope, 35,
OPC_CheckChild0Type, MVT::i16,
OPC_RecordChild1,
OPC_Scope, 19,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BT16ri8), 0,
1, MVT::i32, 2, 0, 2,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BT16rr), 0,
1, MVT::i32, 2, 0, 1,
0,
35,
OPC_CheckChild0Type, MVT::i32,
OPC_RecordChild1,
OPC_Scope, 19,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BT32ri8), 0,
1, MVT::i32, 2, 0, 2,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BT32rr), 0,
1, MVT::i32, 2, 0, 1,
0,
35,
OPC_CheckChild0Type, MVT::i64,
OPC_RecordChild1,
OPC_Scope, 19,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BT64ri8), 0,
1, MVT::i32, 2, 0, 2,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BT64rr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
0,
124|128,7, TARGET_OPCODE(ISD::MUL),
OPC_Scope, 87|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 34,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rmi8), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
34,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rmi8), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
65,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 25,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rmi8), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
25,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rmi32), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
0,
32,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rmi), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rmi), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 8,
0,
116,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 27,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitCopyToReg, 0, X86::AL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL8m), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 5, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
90,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 24,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
26,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
60,
OPC_RecordNode,
OPC_SwitchType , 38, MVT::i32,
OPC_Scope, 17,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
17,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
0,
15, MVT::i64,
OPC_CheckComplexPat, /*CP*/4, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0,
1, MVT::i64, 5, 1, 2, 3, 4, 5,
0,
55|128,2,
OPC_RecordChild0,
OPC_Scope, 35|128,1,
OPC_RecordChild1,
OPC_Scope, 105,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
31,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
14,
OPC_CheckType, MVT::i8,
OPC_EmitCopyToReg, 0, X86::AL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL8r), 0|OPFL_FlagInput,
2, MVT::i8, MVT::i32, 1, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
13|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_SwitchType , 94, MVT::v2i64,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::v8i16,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::v4i32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULLDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
0,
23, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
0,
0,
15|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_SwitchType , 95, MVT::v2i64,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 42, MVT::v8i16,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
42, MVT::v4i32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULLDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
0,
0,
24, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULLWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
0,
73,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::v8i16,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULLWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
26, MVT::v4i32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPMULLDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
11, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULLWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
0,
4|128,1, TARGET_OPCODE(X86ISD::BSF),
OPC_Scope, 86,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_SwitchType , 22, MVT::i16,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 5, 2, 3, 4, 5, 6,
22, MVT::i32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 5, 2, 3, 4, 5, 6,
24, MVT::i64,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
42,
OPC_RecordChild0,
OPC_SwitchType , 11, MVT::i16,
OPC_CheckChild0Type, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF16rr), 0,
2, MVT::i16, MVT::i32, 1, 0,
11, MVT::i32,
OPC_CheckChild0Type, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF32rr), 0,
2, MVT::i32, MVT::i32, 1, 0,
11, MVT::i64,
OPC_CheckChild0Type, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF64rr), 0,
2, MVT::i64, MVT::i32, 1, 0,
0,
0,
4|128,1, TARGET_OPCODE(X86ISD::BSR),
OPC_Scope, 86,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_SwitchType , 22, MVT::i16,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 5, 2, 3, 4, 5, 6,
22, MVT::i32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 5, 2, 3, 4, 5, 6,
24, MVT::i64,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
42,
OPC_RecordChild0,
OPC_SwitchType , 11, MVT::i16,
OPC_CheckChild0Type, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR16rr), 0,
2, MVT::i16, MVT::i32, 1, 0,
11, MVT::i32,
OPC_CheckChild0Type, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR32rr), 0,
2, MVT::i32, MVT::i32, 1, 0,
11, MVT::i64,
OPC_CheckChild0Type, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR64rr), 0,
2, MVT::i64, MVT::i32, 1, 0,
0,
0,
25|128,3, TARGET_OPCODE(X86ISD::AND),
OPC_Scope, 112,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
115,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 26,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
48|128,1,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rr), 0,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
120|128,2, TARGET_OPCODE(X86ISD::OR),
OPC_Scope, 97,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
97,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 18, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
48|128,1,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rr), 0,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
120|128,2, TARGET_OPCODE(X86ISD::XOR),
OPC_Scope, 97,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
97,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 18, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
48|128,1,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rr), 0,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
120|128,2, TARGET_OPCODE(X86ISD::ADD),
OPC_Scope, 97,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
97,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 18, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
48|128,1,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rr), 0,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
121|128,2, TARGET_OPCODE(ISD::ADDE),
OPC_CaptureFlagInput,
OPC_Scope, 97,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
97,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 18, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
48|128,1,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16ri8), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32ri8), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64ri8), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64ri32), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 2,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8ri), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16ri), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32ri), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8rr), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16rr), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32rr), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64rr), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
21|128,2, TARGET_OPCODE(X86ISD::SUB),
OPC_RecordChild0,
OPC_Scope, 96,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
47|128,1,
OPC_RecordChild1,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8rr), 0,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
22|128,2, TARGET_OPCODE(ISD::SUBE),
OPC_CaptureFlagInput,
OPC_RecordChild0,
OPC_Scope, 96,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB8rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
47|128,1,
OPC_RecordChild1,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16ri8), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32ri8), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64ri8), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64ri32), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 2,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB8ri), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16ri), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32ri), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB8rr), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16rr), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32rr), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64rr), 0|OPFL_FlagInput|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
97|128,1, TARGET_OPCODE(ISD::ADDC),
OPC_Scope, 57,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
57,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
106,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_Scope, 75,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 33,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri8), 0|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri8), 0|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri32), 0|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 2,
15,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rr), 0|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
36|128,1, TARGET_OPCODE(ISD::SUBC),
OPC_RecordChild0,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
18, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
103,
OPC_RecordChild1,
OPC_Scope, 73,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 33,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri8), 0|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri8), 0|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
31,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri), 0|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri32), 0|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rr), 0|OPFL_FlagOutput,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rr), 0|OPFL_FlagOutput,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
26|128,14, TARGET_OPCODE(ISD::ADD),
OPC_Scope, 114,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
117,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 26,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
26,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
60,
OPC_RecordNode,
OPC_SwitchType , 38, MVT::i32,
OPC_Scope, 17,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
17,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
0,
15, MVT::i64,
OPC_CheckComplexPat, /*CP*/4, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0,
1, MVT::i64, 5, 1, 2, 3, 4, 5,
0,
113,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(X86ISD::Wrapper),
OPC_RecordChild0,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 14, TARGET_OPCODE(ISD::TargetConstantPool),
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
14, TARGET_OPCODE(ISD::TargetJumpTable),
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
14, TARGET_OPCODE(ISD::TargetGlobalAddress),
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
14, TARGET_OPCODE(ISD::TargetExternalSymbol),
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
14, TARGET_OPCODE(ISD::TargetBlockAddress),
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
14, TARGET_OPCODE(ISD::TargetGlobalTLSAddress),
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
118,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(X86ISD::Wrapper),
OPC_RecordChild0,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 15, TARGET_OPCODE(ISD::TargetGlobalTLSAddress),
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri32), 0,
2, MVT::i64, MVT::i32, 2, 1, 0,
15, TARGET_OPCODE(ISD::TargetConstantPool),
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 1, 0,
15, TARGET_OPCODE(ISD::TargetJumpTable),
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 1, 0,
15, TARGET_OPCODE(ISD::TargetGlobalAddress),
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 1, 0,
15, TARGET_OPCODE(ISD::TargetExternalSymbol),
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 1, 0,
15, TARGET_OPCODE(ISD::TargetBlockAddress),
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 1, 0,
0,
66|128,5,
OPC_RecordChild0,
OPC_Scope, 36|128,2,
OPC_MoveChild, 1,
OPC_Scope, 83,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_SwitchType , 26, MVT::i16,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC16r), 0,
2, MVT::i16, MVT::i32, 1, 0,
11,
OPC_CheckPatternPredicate, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_16r), 0,
2, MVT::i16, MVT::i32, 1, 0,
0,
26, MVT::i32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC32r), 0,
2, MVT::i32, MVT::i32, 1, 0,
11,
OPC_CheckPatternPredicate, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_32r), 0,
2, MVT::i32, MVT::i32, 1, 0,
0,
9, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC8r), 0,
2, MVT::i8, MVT::i32, 1, 0,
9, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64r), 0,
2, MVT::i64, MVT::i32, 1, 0,
0,
92,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_SwitchType , 26, MVT::i16,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC16r), 0,
2, MVT::i16, MVT::i32, 1, 0,
11,
OPC_CheckPatternPredicate, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_16r), 0,
2, MVT::i16, MVT::i32, 1, 0,
0,
26, MVT::i32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC32r), 0,
2, MVT::i32, MVT::i32, 1, 0,
11,
OPC_CheckPatternPredicate, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_32r), 0,
2, MVT::i32, MVT::i32, 1, 0,
0,
9, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC8r), 0,
2, MVT::i8, MVT::i32, 1, 0,
9, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64r), 0,
2, MVT::i64, MVT::i32, 1, 0,
0,
78,
OPC_CheckInteger, 0|128,1,
OPC_MoveParent,
OPC_SwitchType , 22, MVT::i16,
OPC_EmitInteger, MVT::i16, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
22, MVT::i32,
OPC_EmitInteger, MVT::i32, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
22, MVT::i64,
OPC_EmitInteger, MVT::i64, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
31,
OPC_CheckInteger, 0|128,0|128,0|128,0|128,8,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitInteger, MVT::i64, 0|128,0|128,0|128,0|128,120|128,127|128,127|128,127|128,127|128,1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
47|128,1,
OPC_RecordChild1,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rr), 0,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
102|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_SwitchType , 10|128,1, MVT::v2i64,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::v16i8,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::v8i16,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::v4i32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
0,
67, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::v8i8,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
0,
0,
0,
104|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_SwitchType , 11|128,1, MVT::v2i64,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 42, MVT::v16i8,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
0,
42, MVT::v8i16,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
0,
42, MVT::v4i32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
0,
0,
68, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 19, MVT::v8i8,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7,
19, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
19, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 2, 3, 4, 5, 6, 7,
0,
0,
87,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 47,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7,
0,
88,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 48,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
23,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7,
0,
40|128,1,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::v16i8,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
26, MVT::v8i16,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
26, MVT::v4i32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
26, MVT::v2i64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPADDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
11, MVT::v8i8,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDBrr), 0,
1, MVT::v8i8, 2, 0, 1,
11, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDWrr), 0,
1, MVT::v4i16, 2, 0, 1,
11, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDDrr), 0,
1, MVT::v2i32, 2, 0, 1,
11, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDQrr), 0,
1, MVT::v1i64, 2, 0, 1,
0,
0,
5|128,7, TARGET_OPCODE(ISD::SUB),
OPC_Scope, 114,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
60,
OPC_RecordNode,
OPC_SwitchType , 38, MVT::i32,
OPC_Scope, 17,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
17,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
0,
15, MVT::i64,
OPC_CheckComplexPat, /*CP*/4, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0,
1, MVT::i64, 5, 1, 2, 3, 4, 5,
0,
52,
OPC_MoveChild, 0,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 9, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG8r), 0,
2, MVT::i8, MVT::i32, 1, 0,
9, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG16r), 0,
2, MVT::i16, MVT::i32, 1, 0,
9, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG32r), 0,
2, MVT::i32, MVT::i32, 1, 0,
9, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG64r), 0,
2, MVT::i64, MVT::i32, 1, 0,
0,
28|128,5,
OPC_RecordChild0,
OPC_Scope, 47|128,1,
OPC_RecordChild1,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8rr), 0,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
61|128,2,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 97|128,1, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_SwitchType , 10|128,1, MVT::v2i64,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::v16i8,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::v8i16,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::v4i32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
0,
67, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::v8i8,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
0,
0,
81, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 47,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
39|128,1,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::v16i8,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBBrr), 0,
1, MVT::v16i8, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBBrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
26, MVT::v8i16,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBWrr), 0,
1, MVT::v8i16, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBWrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
26, MVT::v4i32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBDrr), 0,
1, MVT::v4i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBDrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
26, MVT::v2i64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSUBQrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
11, MVT::v8i8,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBBrr), 0,
1, MVT::v8i8, 2, 0, 1,
11, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBWrr), 0,
1, MVT::v4i16, 2, 0, 1,
11, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBDrr), 0,
1, MVT::v2i32, 2, 0, 1,
11, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBQrr), 0,
1, MVT::v1i64, 2, 0, 1,
0,
0,
0,
35|128,8, TARGET_OPCODE(ISD::OR),
OPC_Scope, 114,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
117,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 26,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
26,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
60,
OPC_RecordNode,
OPC_SwitchType , 38, MVT::i32,
OPC_Scope, 17,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
17,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
0,
15, MVT::i64,
OPC_CheckComplexPat, /*CP*/4, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0,
1, MVT::i64, 5, 1, 2, 3, 4, 5,
0,
73|128,2,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_Scope, 111,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 49,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_CheckPredicate, 66,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
19,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckPredicate, 66,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
33,
OPC_MoveParent,
OPC_CheckPredicate, 66,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
40,
OPC_CheckPredicate, 66,
OPC_SwitchType , 10, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
10, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
10, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rr), 0,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
36|128,1,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 85, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_Scope, 40,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
40,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
69, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_Scope, 24,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
0,
87,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 47,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7,
0,
119,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 83, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 48,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
23,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7,
0,
26, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPDrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
57,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 38, MVT::v2i64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPSrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPORrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PORrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
11, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PORrr), 0,
1, MVT::v1i64, 2, 0, 1,
0,
0,
10|128,7, TARGET_OPCODE(ISD::XOR),
OPC_Scope, 114,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
23,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
117,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 26,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
26,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rm), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
109|128,1,
OPC_RecordChild0,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1,
OPC_MoveParent,
OPC_SwitchType , 8, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT8r), 0,
1, MVT::i8, 1, 0,
8, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT16r), 0,
1, MVT::i16, 1, 0,
8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT32r), 0,
1, MVT::i32, 1, 0,
8, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT64r), 0,
1, MVT::i64, 1, 0,
0,
47|128,1,
OPC_RecordChild1,
OPC_Scope, 119,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 47,
OPC_CheckPredicate, 9,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16ri8), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32ri8), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64ri8), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
17,
OPC_CheckPredicate, 10,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64ri32), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
45,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
0,
0,
12,
OPC_CheckType, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rr), 0,
2, MVT::i8, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 1,
12,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
36|128,1,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 85, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_Scope, 40,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
40,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
69, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_Scope, 24,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
24,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
0,
87,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 47,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPXORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PXORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_MoveParent,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PXORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7,
0,
119,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 83, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_Scope, 48,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPXORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PXORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
0,
23,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PXORrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7,
0,
26, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPDrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
57,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 38, MVT::v2i64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPSrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPXORrr), 0,
1, MVT::v2i64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PXORrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
11, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PXORrr), 0,
1, MVT::v1i64, 2, 0, 1,
0,
0,
91|128,2, TARGET_OPCODE(ISD::FP_TO_SINT),
OPC_Scope, 66|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_SwitchType , 87, MVT::f32,
OPC_MoveParent,
OPC_SwitchType , 40, MVT::i32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTSS2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSS2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
40, MVT::i64,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTSS2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSS2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
0,
0,
87, MVT::f64,
OPC_MoveParent,
OPC_SwitchType , 40, MVT::i32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTSD2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSD2SIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
0,
40, MVT::i64,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTSD2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSD2SI64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
0,
0,
0,
19|128,1,
OPC_RecordChild0,
OPC_Scope, 56,
OPC_CheckChild0Type, MVT::f32,
OPC_SwitchType , 24, MVT::i32,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTSS2SIrr), 0,
1, MVT::i32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSS2SIrr), 0,
1, MVT::i32, 1, 0,
0,
24, MVT::i64,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTSS2SI64rr), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSS2SI64rr), 0,
1, MVT::i64, 1, 0,
0,
0,
56,
OPC_CheckChild0Type, MVT::f64,
OPC_SwitchType , 24, MVT::i32,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTSD2SIrr), 0,
1, MVT::i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSD2SIrr), 0,
1, MVT::i32, 1, 0,
0,
24, MVT::i64,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VCVTTSD2SI64rr), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSD2SI64rr), 0,
1, MVT::i64, 1, 0,
0,
0,
14,
OPC_CheckChild0Type, MVT::v4f32,
OPC_CheckType, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPS2DQrr), 0,
1, MVT::v4i32, 1, 0,
14,
OPC_CheckChild0Type, MVT::v2f64,
OPC_CheckType, MVT::v2i32,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPD2PIrr), 0,
1, MVT::v2i32, 1, 0,
0,
0,
55|128,1, TARGET_OPCODE(X86ISD::UCOMI),
OPC_RecordChild0,
OPC_Scope, 89,
OPC_CheckChild0Type, MVT::v4f32,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VUCOMISSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_UCOMISSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild1,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VUCOMISSrr), 0,
1, MVT::i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_UCOMISSrr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
89,
OPC_CheckChild0Type, MVT::v2f64,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VUCOMISDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_UCOMISDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild1,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VUCOMISDrr), 0,
1, MVT::i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_UCOMISDrr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
0,
55|128,1, TARGET_OPCODE(X86ISD::COMI),
OPC_RecordChild0,
OPC_Scope, 89,
OPC_CheckChild0Type, MVT::v4f32,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCOMISSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_COMISSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild1,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCOMISSrr), 0,
1, MVT::i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_COMISSrr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
89,
OPC_CheckChild0Type, MVT::v2f64,
OPC_Scope, 56,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCOMISDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_COMISDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild1,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_VCOMISDrr), 0,
1, MVT::i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_COMISDrr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
0,
21|128,1, TARGET_OPCODE(X86ISD::PTEST),
OPC_RecordChild0,
OPC_Scope, 91,
OPC_CheckChild0Type, MVT::v4f32,
OPC_Scope, 58,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPTESTrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PTESTrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild1,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPTESTrr), 0,
1, MVT::i32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 5,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PTESTrr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
53,
OPC_CheckChild0Type, MVT::v4i64,
OPC_Scope, 35,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPTESTYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPTESTYrr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
91|128,1, TARGET_OPCODE(X86ISD::TESTP),
OPC_RecordChild0,
OPC_Scope, 53,
OPC_CheckChild0Type, MVT::v4f32,
OPC_Scope, 35,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VTESTPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VTESTPSrr), 0,
1, MVT::i32, 2, 0, 1,
0,
53,
OPC_CheckChild0Type, MVT::v8f32,
OPC_Scope, 35,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VTESTPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VTESTPSYrr), 0,
1, MVT::i32, 2, 0, 1,
0,
53,
OPC_CheckChild0Type, MVT::v2f64,
OPC_Scope, 35,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VTESTPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VTESTPDrr), 0,
1, MVT::i32, 2, 0, 1,
0,
53,
OPC_CheckChild0Type, MVT::v4f64,
OPC_Scope, 35,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VTESTPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VTESTPDYrr), 0,
1, MVT::i32, 2, 0, 1,
0,
0,
90, TARGET_OPCODE(ISD::ATOMIC_SWAP),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_SwitchType , 19, MVT::i32,
OPC_CheckPredicate, 67,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XCHG32rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
19, MVT::i16,
OPC_CheckPredicate, 68,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XCHG16rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i16, 6, 2, 3, 4, 5, 6, 7,
19, MVT::i8,
OPC_CheckPredicate, 69,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XCHG8rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i8, 6, 2, 3, 4, 5, 6, 7,
19, MVT::i64,
OPC_CheckPredicate, 70,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::XCHG64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::i64, 6, 2, 3, 4, 5, 6, 7,
0,
94, TARGET_OPCODE(ISD::ATOMIC_LOAD_ADD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_SwitchType , 20, MVT::i32,
OPC_CheckPredicate, 71,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LXADD32), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
20, MVT::i16,
OPC_CheckPredicate, 72,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LXADD16), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
20, MVT::i8,
OPC_CheckPredicate, 73,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LXADD8), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
20, MVT::i64,
OPC_CheckPredicate, 74,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LXADD64), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7,
0,
94, TARGET_OPCODE(ISD::ATOMIC_LOAD_AND),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_SwitchType , 20, MVT::i32,
OPC_CheckPredicate, 75,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMAND32), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i16,
OPC_CheckPredicate, 76,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMAND16), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i8,
OPC_CheckPredicate, 77,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMAND8), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i64,
OPC_CheckPredicate, 78,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMAND64), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
0,
94, TARGET_OPCODE(ISD::ATOMIC_LOAD_OR),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_SwitchType , 20, MVT::i32,
OPC_CheckPredicate, 79,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMOR32), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i16,
OPC_CheckPredicate, 80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMOR16), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i8,
OPC_CheckPredicate, 81,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMOR8), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i64,
OPC_CheckPredicate, 82,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMOR64), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
0,
94, TARGET_OPCODE(ISD::ATOMIC_LOAD_XOR),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_SwitchType , 20, MVT::i32,
OPC_CheckPredicate, 83,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMXOR32), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i16,
OPC_CheckPredicate, 84,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMXOR16), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i8,
OPC_CheckPredicate, 85,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMXOR8), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i64,
OPC_CheckPredicate, 86,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMXOR64), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
0,
94, TARGET_OPCODE(ISD::ATOMIC_LOAD_NAND),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_SwitchType , 20, MVT::i32,
OPC_CheckPredicate, 87,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMNAND32), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i16,
OPC_CheckPredicate, 88,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMNAND16), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i8,
OPC_CheckPredicate, 89,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMNAND8), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i8, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i64,
OPC_CheckPredicate, 90,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMNAND64), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
0,
72, TARGET_OPCODE(ISD::ATOMIC_LOAD_MIN),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_SwitchType , 20, MVT::i32,
OPC_CheckPredicate, 91,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMIN32), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i16,
OPC_CheckPredicate, 92,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMIN16), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i64,
OPC_CheckPredicate, 93,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMIN64), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
0,
72, TARGET_OPCODE(ISD::ATOMIC_LOAD_MAX),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_SwitchType , 20, MVT::i32,
OPC_CheckPredicate, 94,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMAX32), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i16,
OPC_CheckPredicate, 95,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMAX16), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i64,
OPC_CheckPredicate, 96,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMAX64), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
0,
72, TARGET_OPCODE(ISD::ATOMIC_LOAD_UMIN),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_SwitchType , 20, MVT::i32,
OPC_CheckPredicate, 97,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMIN32), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i16,
OPC_CheckPredicate, 98,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMIN16), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i64,
OPC_CheckPredicate, 99,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMIN64), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
0,
72, TARGET_OPCODE(ISD::ATOMIC_LOAD_UMAX),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_SwitchType , 20, MVT::i32,
OPC_CheckPredicate, 100,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMAX32), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i16,
OPC_CheckPredicate, 101,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMAX16), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
20, MVT::i64,
OPC_CheckPredicate, 102,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMAX64), 0|OPFL_Chain|OPFL_MemRefs,
2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
0,
60, TARGET_OPCODE(X86ISD::MUL_IMM),
OPC_RecordNode,
OPC_SwitchType , 38, MVT::i32,
OPC_Scope, 17,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
17,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
0,
15, MVT::i64,
OPC_CheckComplexPat, /*CP*/4, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0,
1, MVT::i64, 5, 1, 2, 3, 4, 5,
0,
75|128,2, TARGET_OPCODE(ISD::SHL),
OPC_Scope, 60,
OPC_RecordNode,
OPC_SwitchType , 38, MVT::i32,
OPC_Scope, 17,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
17,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
0,
15, MVT::i64,
OPC_CheckComplexPat, /*CP*/4, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0,
1, MVT::i64, 5, 1, 2, 3, 4, 5,
0,
10|128,2,
OPC_RecordChild0,
OPC_Scope, 0|128,1,
OPC_MoveChild, 1,
OPC_CheckType, MVT::i8,
OPC_Scope, 48,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8rCL), 0|OPFL_FlagInput,
2, MVT::i8, MVT::i32, 1, 0,
12, MVT::i16,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16rCL), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 1, 0,
12, MVT::i32,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32rCL), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 1, 0,
0,
18,
OPC_CheckAndImm, 63,
OPC_RecordChild0,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64rCL), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 1, 0,
53,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_SwitchType , 10, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rr), 0,
2, MVT::i8, MVT::i32, 2, 0, 0,
10, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rr), 0,
2, MVT::i16, MVT::i32, 2, 0, 0,
10, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0,
2, MVT::i32, MVT::i32, 2, 0, 0,
10, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rr), 0,
2, MVT::i64, MVT::i32, 2, 0, 0,
0,
0,
3|128,1,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64ri), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
60,
OPC_CheckChild1Type, MVT::i8,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8rCL), 0|OPFL_FlagInput,
2, MVT::i8, MVT::i32, 1, 0,
12, MVT::i16,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16rCL), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 1, 0,
12, MVT::i32,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32rCL), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 1, 0,
12, MVT::i64,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64rCL), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 1, 0,
0,
0,
0,
0,
60, TARGET_OPCODE(ISD::FrameIndex),
OPC_RecordNode,
OPC_SwitchType , 38, MVT::i32,
OPC_Scope, 17,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
17,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/3, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
0,
15, MVT::i64,
OPC_CheckComplexPat, /*CP*/4, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0,
1, MVT::i64, 5, 1, 2, 3, 4, 5,
0,
18, TARGET_OPCODE(X86ISD::WrapperRIP),
OPC_RecordNode,
OPC_CheckType, MVT::i64,
OPC_CheckComplexPat, /*CP*/4, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0,
1, MVT::i64, 5, 1, 2, 3, 4, 5,
82|128,3, TARGET_OPCODE(ISD::SRL),
OPC_Scope, 97,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::AND),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckInteger, 0|128,126|128,3,
OPC_MoveParent,
OPC_CheckPredicate, 42,
OPC_MoveParent,
OPC_MoveChild, 1,
OPC_CheckInteger, 8,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_Scope, 34,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i32, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0,
1, MVT::i32, 1, 4,
34,
OPC_CheckPatternPredicate, 4,
OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i32, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0,
1, MVT::i32, 1, 4,
0,
108|128,2,
OPC_RecordChild0,
OPC_Scope, 98|128,1,
OPC_MoveChild, 1,
OPC_CheckType, MVT::i8,
OPC_Scope, 48,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8rCL), 0|OPFL_FlagInput,
2, MVT::i8, MVT::i32, 1, 0,
12, MVT::i16,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16rCL), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 1, 0,
12, MVT::i32,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32rCL), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 1, 0,
0,
18,
OPC_CheckAndImm, 63,
OPC_RecordChild0,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64rCL), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 1, 0,
49,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_SwitchType , 9, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8r1), 0,
2, MVT::i8, MVT::i32, 1, 0,
9, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16r1), 0,
2, MVT::i16, MVT::i32, 1, 0,
9, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32r1), 0,
2, MVT::i32, MVT::i32, 1, 0,
9, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64r1), 0,
2, MVT::i64, MVT::i32, 1, 0,
0,
101,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_CheckType, MVT::i16,
OPC_Scope, 46,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_EmitNode, TARGET_OPCODE(X86::MOVZX32rr8), 0,
1, MVT::i32, 1, 4,
OPC_EmitInteger, MVT::i32, X86::sub_16bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i16, 2, 5, 6,
46,
OPC_CheckPatternPredicate, 4,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_EmitNode, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0,
1, MVT::i32, 1, 4,
OPC_EmitInteger, MVT::i32, X86::sub_16bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i16, 2, 5, 6,
0,
0,
3|128,1,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64ri), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
60,
OPC_CheckChild1Type, MVT::i8,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8rCL), 0|OPFL_FlagInput,
2, MVT::i8, MVT::i32, 1, 0,
12, MVT::i16,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16rCL), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 1, 0,
12, MVT::i32,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32rCL), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 1, 0,
12, MVT::i64,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64rCL), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 1, 0,
0,
0,
0,
0,
120|128,1, TARGET_OPCODE(ISD::TRUNCATE),
OPC_Scope, 79,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SRL),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckInteger, 8,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckPredicate, 13,
OPC_SwitchType , 29, MVT::i16,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
29, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::i8,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i32, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
0,
36|128,1,
OPC_RecordChild0,
OPC_Scope, 64,
OPC_CheckChild0Type, MVT::i32,
OPC_SwitchType , 12, MVT::i16,
OPC_EmitInteger, MVT::i32, X86::sub_16bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i16, 2, 0, 1,
44, MVT::i8,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 4,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 0, 1,
26,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i32, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
0,
0,
46,
OPC_CheckChild0Type, MVT::i64,
OPC_SwitchType , 12, MVT::i32,
OPC_EmitInteger, MVT::i32, X86::sub_32bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i32, 2, 0, 1,
12, MVT::i16,
OPC_EmitInteger, MVT::i32, X86::sub_16bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i16, 2, 0, 1,
12, MVT::i8,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 0, 1,
0,
48,
OPC_CheckChild0Type, MVT::i16,
OPC_CheckType, MVT::i8,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 4,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 0, 1,
26,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
0,
0,
0,
123|128,1, TARGET_OPCODE(ISD::ZERO_EXTEND),
OPC_Scope, 16|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SRL),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckInteger, 8,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckPredicate, 13,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_SwitchType , 72, MVT::i32,
OPC_Scope, 34,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0,
1, MVT::i32, 1, 4,
34,
OPC_CheckPatternPredicate, 4,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0,
1, MVT::i32, 1, 4,
0,
48, MVT::i64,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 2,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 3, 4,
OPC_EmitNode, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0,
1, MVT::i32, 1, 5,
OPC_EmitInteger, MVT::i32, X86::sub_32bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0,
1, MVT::i64, 3, 1, 6, 7,
0,
102,
OPC_RecordChild0,
OPC_Scope, 25,
OPC_MoveChild, 0,
OPC_CheckPredicate, 103,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitInteger, MVT::i32, X86::sub_32bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0,
1, MVT::i64, 3, 1, 0, 2,
34,
OPC_CheckChild0Type, MVT::i8,
OPC_SwitchType , 8, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rr8), 0,
1, MVT::i16, 1, 0,
8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0,
1, MVT::i32, 1, 0,
8, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr8), 0,
1, MVT::i64, 1, 0,
0,
24,
OPC_CheckChild0Type, MVT::i16,
OPC_SwitchType , 8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr16), 0,
1, MVT::i32, 1, 0,
8, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr16), 0,
1, MVT::i64, 1, 0,
0,
12,
OPC_CheckChild0Type, MVT::i32,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr32), 0,
1, MVT::i64, 1, 0,
0,
0,
63|128,2, TARGET_OPCODE(ISD::ANY_EXTEND),
OPC_Scope, 90|128,1,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 11|128,1, TARGET_OPCODE(ISD::SRL),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckInteger, 8,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckPredicate, 13,
OPC_CheckType, MVT::i16,
OPC_MoveParent,
OPC_SwitchType , 72, MVT::i32,
OPC_Scope, 34,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0,
1, MVT::i32, 1, 4,
34,
OPC_CheckPatternPredicate, 4,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0,
1, MVT::i32, 1, 4,
0,
48, MVT::i64,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 2,
OPC_EmitInteger, MVT::i32, X86::sub_8bit_hi,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 3, 4,
OPC_EmitNode, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0,
1, MVT::i32, 1, 5,
OPC_EmitInteger, MVT::i32, X86::sub_32bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0,
1, MVT::i64, 3, 1, 6, 7,
0,
68, TARGET_OPCODE(X86ISD::SETCC_CARRY),
OPC_MoveChild, 0,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 42, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 11, MVT::i16,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C16r), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 0,
11, MVT::i32,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C32r), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 0,
11, MVT::i64,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C64r), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 0,
0,
14, MVT::i16,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C32r), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 0,
0,
0,
96,
OPC_RecordChild0,
OPC_Scope, 20,
OPC_CheckChild0Type, MVT::i32,
OPC_CheckType, MVT::i64,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitInteger, MVT::i32, X86::sub_32bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0,
1, MVT::i64, 3, 1, 0, 2,
34,
OPC_CheckChild0Type, MVT::i8,
OPC_SwitchType , 8, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rr8), 0,
1, MVT::i16, 1, 0,
8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0,
1, MVT::i32, 1, 0,
8, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr8), 0,
1, MVT::i64, 1, 0,
0,
36,
OPC_CheckChild0Type, MVT::i16,
OPC_SwitchType , 8, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr16), 0,
1, MVT::i64, 1, 0,
20, MVT::i32,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::IMPLICIT_DEF), 0,
1, MVT::i32, 0,
OPC_EmitInteger, MVT::i32, X86::sub_16bit,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::INSERT_SUBREG), 0,
1, MVT::i32, 3, 1, 0, 2,
0,
0,
0,
5|128,2, TARGET_OPCODE(ISD::SRA),
OPC_RecordChild0,
OPC_Scope, 124,
OPC_MoveChild, 1,
OPC_CheckType, MVT::i8,
OPC_Scope, 48,
OPC_CheckAndImm, 31,
OPC_RecordChild0,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8rCL), 0|OPFL_FlagInput,
2, MVT::i8, MVT::i32, 1, 0,
12, MVT::i16,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16rCL), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 1, 0,
12, MVT::i32,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32rCL), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 1, 0,
0,
18,
OPC_CheckAndImm, 63,
OPC_RecordChild0,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64rCL), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 1, 0,
49,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_SwitchType , 9, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8r1), 0,
2, MVT::i8, MVT::i32, 1, 0,
9, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16r1), 0,
2, MVT::i16, MVT::i32, 1, 0,
9, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32r1), 0,
2, MVT::i32, MVT::i32, 1, 0,
9, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64r1), 0,
2, MVT::i64, MVT::i32, 1, 0,
0,
0,
3|128,1,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64ri), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
60,
OPC_CheckChild1Type, MVT::i8,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8rCL), 0|OPFL_FlagInput,
2, MVT::i8, MVT::i32, 1, 0,
12, MVT::i16,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16rCL), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 1, 0,
12, MVT::i32,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32rCL), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 1, 0,
12, MVT::i64,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64rCL), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 1, 0,
0,
0,
0,
114|128,1, TARGET_OPCODE(ISD::EXTRACT_VECTOR_ELT),
OPC_Scope, 50,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v4f32,
OPC_CheckType, MVT::v4i32,
OPC_MoveParent,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VEXTRACTPSrr), 0,
1, MVT::i32, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::EXTRACTPSrr), 0,
1, MVT::i32, 2, 0, 2,
0,
59|128,1,
OPC_RecordChild0,
OPC_Scope, 62,
OPC_CheckChild0Type, MVT::v2i64,
OPC_Scope, 17,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVPQIto64rr), 0,
1, MVT::i64, 1, 0,
39,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPEXTRQrr), 0,
1, MVT::i64, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRQrr), 0,
1, MVT::i64, 2, 0, 2,
0,
0,
76,
OPC_CheckChild0Type, MVT::v4i32,
OPC_Scope, 31,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVPDI2DIrr), 0,
1, MVT::i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVPDI2DIrr), 0,
1, MVT::i32, 1, 0,
0,
39,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::i32,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPEXTRDrr), 0,
1, MVT::i32, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRDrr), 0,
1, MVT::i32, 2, 0, 2,
0,
0,
21,
OPC_CheckChild0Type, MVT::v4f32,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::f32,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f32, 2, 0, 1,
21,
OPC_CheckChild0Type, MVT::v2f64,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f64, 2, 0, 1,
0,
0,
62|128,1, TARGET_OPCODE(ISD::ROTL),
OPC_RecordChild0,
OPC_Scope, 53,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 9, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8r1), 0,
2, MVT::i8, MVT::i32, 1, 0,
9, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16r1), 0,
2, MVT::i16, MVT::i32, 1, 0,
9, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32r1), 0,
2, MVT::i32, MVT::i32, 1, 0,
9, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64r1), 0,
2, MVT::i64, MVT::i32, 1, 0,
0,
3|128,1,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64ri), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
60,
OPC_CheckChild1Type, MVT::i8,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8rCL), 0|OPFL_FlagInput,
2, MVT::i8, MVT::i32, 1, 0,
12, MVT::i16,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16rCL), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 1, 0,
12, MVT::i32,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32rCL), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 1, 0,
12, MVT::i64,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64rCL), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 1, 0,
0,
0,
0,
62|128,1, TARGET_OPCODE(ISD::ROTR),
OPC_RecordChild0,
OPC_Scope, 53,
OPC_MoveChild, 1,
OPC_CheckInteger, 1,
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 9, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8r1), 0,
2, MVT::i8, MVT::i32, 1, 0,
9, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16r1), 0,
2, MVT::i16, MVT::i32, 1, 0,
9, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32r1), 0,
2, MVT::i32, MVT::i32, 1, 0,
9, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64r1), 0,
2, MVT::i64, MVT::i32, 1, 0,
0,
3|128,1,
OPC_RecordChild1,
OPC_Scope, 66,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8ri), 0,
2, MVT::i8, MVT::i32, 2, 0, 2,
12, MVT::i16,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16ri), 0,
2, MVT::i16, MVT::i32, 2, 0, 2,
12, MVT::i32,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32ri), 0,
2, MVT::i32, MVT::i32, 2, 0, 2,
12, MVT::i64,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64ri), 0,
2, MVT::i64, MVT::i32, 2, 0, 2,
0,
60,
OPC_CheckChild1Type, MVT::i8,
OPC_SwitchType , 12, MVT::i8,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8rCL), 0|OPFL_FlagInput,
2, MVT::i8, MVT::i32, 1, 0,
12, MVT::i16,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16rCL), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 1, 0,
12, MVT::i32,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32rCL), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 1, 0,
12, MVT::i64,
OPC_EmitCopyToReg, 1, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64rCL), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 1, 0,
0,
0,
0,
60, TARGET_OPCODE(X86ISD::SETCC_CARRY),
OPC_MoveChild, 0,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 11, MVT::i8,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C8r), 0|OPFL_FlagInput,
2, MVT::i8, MVT::i32, 0,
11, MVT::i16,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C16r), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 0,
11, MVT::i32,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C32r), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 0,
11, MVT::i64,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C64r), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 0,
0,
116|128,1, TARGET_OPCODE(X86ISD::SETCC),
OPC_MoveChild, 0,
OPC_Scope, 14,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETEr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 9,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNEr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 7,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETLr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 6,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETGEr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETLEr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 5,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETGr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETBr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETAEr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETBEr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETAr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 15,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETSr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 12,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNSr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 14,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETPr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 11,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNPr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 13,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETOr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
14,
OPC_CheckInteger, 10,
OPC_MoveParent,
OPC_RecordChild1,
OPC_EmitCopyToReg, 0, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNOr), 0|OPFL_FlagInput,
1, MVT::i8, 0,
0,
111, TARGET_OPCODE(X86ISD::SHLD),
OPC_RecordChild0,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 55,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 13, MVT::i32,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32rri8), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
13, MVT::i16,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16rri8), 0,
2, MVT::i16, MVT::i32, 3, 0, 1, 3,
13, MVT::i64,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64rri8), 0,
2, MVT::i64, MVT::i32, 3, 0, 1, 3,
0,
49,
OPC_CheckChild2Type, MVT::i8,
OPC_SwitchType , 13, MVT::i32,
OPC_EmitCopyToReg, 2, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32rrCL), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 2, 0, 1,
13, MVT::i16,
OPC_EmitCopyToReg, 2, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16rrCL), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 2, 0, 1,
13, MVT::i64,
OPC_EmitCopyToReg, 2, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64rrCL), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
111, TARGET_OPCODE(X86ISD::SHRD),
OPC_RecordChild0,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 55,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 13, MVT::i32,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32rri8), 0,
2, MVT::i32, MVT::i32, 3, 0, 1, 3,
13, MVT::i16,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16rri8), 0,
2, MVT::i16, MVT::i32, 3, 0, 1, 3,
13, MVT::i64,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64rri8), 0,
2, MVT::i64, MVT::i32, 3, 0, 1, 3,
0,
49,
OPC_CheckChild2Type, MVT::i8,
OPC_SwitchType , 13, MVT::i32,
OPC_EmitCopyToReg, 2, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32rrCL), 0|OPFL_FlagInput,
2, MVT::i32, MVT::i32, 2, 0, 1,
13, MVT::i16,
OPC_EmitCopyToReg, 2, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16rrCL), 0|OPFL_FlagInput,
2, MVT::i16, MVT::i32, 2, 0, 1,
13, MVT::i64,
OPC_EmitCopyToReg, 2, X86::CL,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64rrCL), 0|OPFL_FlagInput,
2, MVT::i64, MVT::i32, 2, 0, 1,
0,
0,
40|128,2, TARGET_OPCODE(X86ISD::Wrapper),
OPC_RecordChild0,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 50, TARGET_OPCODE(ISD::TargetConstantPool),
OPC_MoveParent,
OPC_SwitchType , 8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0,
1, MVT::i32, 1, 0,
35, MVT::i64,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 22,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 23,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 24,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0,
1, MVT::i64, 1, 0,
0,
0,
50, TARGET_OPCODE(ISD::TargetJumpTable),
OPC_MoveParent,
OPC_SwitchType , 8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0,
1, MVT::i32, 1, 0,
35, MVT::i64,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 22,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 23,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 24,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0,
1, MVT::i64, 1, 0,
0,
0,
23, TARGET_OPCODE(ISD::TargetGlobalTLSAddress),
OPC_MoveParent,
OPC_SwitchType , 8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0,
1, MVT::i32, 1, 0,
8, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0,
1, MVT::i64, 1, 0,
0,
50, TARGET_OPCODE(ISD::TargetGlobalAddress),
OPC_MoveParent,
OPC_SwitchType , 8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0,
1, MVT::i32, 1, 0,
35, MVT::i64,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 22,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 23,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 24,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0,
1, MVT::i64, 1, 0,
0,
0,
50, TARGET_OPCODE(ISD::TargetExternalSymbol),
OPC_MoveParent,
OPC_SwitchType , 8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0,
1, MVT::i32, 1, 0,
35, MVT::i64,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 22,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 23,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 24,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0,
1, MVT::i64, 1, 0,
0,
0,
50, TARGET_OPCODE(ISD::TargetBlockAddress),
OPC_MoveParent,
OPC_SwitchType , 8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0,
1, MVT::i32, 1, 0,
35, MVT::i64,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 22,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 23,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckPatternPredicate, 24,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0,
1, MVT::i64, 1, 0,
0,
0,
0,
0|128,1, TARGET_OPCODE(ISD::Constant),
OPC_Scope, 44,
OPC_CheckInteger, 0,
OPC_SwitchType , 8, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64r0), 0,
2, MVT::i64, MVT::i32, 0,
8, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8r0), 0,
2, MVT::i8, MVT::i32, 0,
8, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16r0), 0,
2, MVT::i16, MVT::i32, 0,
8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32r0), 0,
2, MVT::i32, MVT::i32, 0,
0,
80,
OPC_RecordNode,
OPC_SwitchType , 39, MVT::i64,
OPC_Scope, 12,
OPC_CheckPredicate, 65,
OPC_EmitConvertToTarget, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0,
1, MVT::i64, 1, 1,
12,
OPC_CheckPredicate, 10,
OPC_EmitConvertToTarget, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0,
1, MVT::i64, 1, 1,
10,
OPC_EmitConvertToTarget, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0,
1, MVT::i64, 1, 1,
0,
10, MVT::i8,
OPC_EmitConvertToTarget, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8ri), 0,
1, MVT::i8, 1, 1,
10, MVT::i16,
OPC_EmitConvertToTarget, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16ri), 0,
1, MVT::i16, 1, 1,
10, MVT::i32,
OPC_EmitConvertToTarget, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0,
1, MVT::i32, 1, 1,
0,
0,
66, TARGET_OPCODE(X86ISD::PEXTRW),
OPC_RecordChild0,
OPC_Scope, 39,
OPC_CheckChild0Type, MVT::v8i16,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPEXTRWri), 0,
1, MVT::i32, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRWri), 0,
1, MVT::i32, 2, 0, 2,
0,
22,
OPC_CheckChild0Type, MVT::v4i16,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PEXTRWri), 0,
1, MVT::i32, 2, 0, 2,
0,
40, TARGET_OPCODE(X86ISD::PEXTRB),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v16i8,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 13,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPEXTRBrr), 0,
1, MVT::i32, 2, 0, 2,
13,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRBrr), 0,
1, MVT::i32, 2, 0, 2,
0,
89, TARGET_OPCODE(X86ISD::INC),
OPC_RecordChild0,
OPC_SwitchType , 28, MVT::i16,
OPC_CheckChild0Type, MVT::i16,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC16r), 0,
2, MVT::i16, MVT::i32, 1, 0,
11,
OPC_CheckPatternPredicate, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_16r), 0,
2, MVT::i16, MVT::i32, 1, 0,
0,
28, MVT::i32,
OPC_CheckChild0Type, MVT::i32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC32r), 0,
2, MVT::i32, MVT::i32, 1, 0,
11,
OPC_CheckPatternPredicate, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_32r), 0,
2, MVT::i32, MVT::i32, 1, 0,
0,
11, MVT::i8,
OPC_CheckChild0Type, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC8r), 0,
2, MVT::i8, MVT::i32, 1, 0,
11, MVT::i64,
OPC_CheckChild0Type, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64r), 0,
2, MVT::i64, MVT::i32, 1, 0,
0,
89, TARGET_OPCODE(X86ISD::DEC),
OPC_RecordChild0,
OPC_SwitchType , 28, MVT::i16,
OPC_CheckChild0Type, MVT::i16,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC16r), 0,
2, MVT::i16, MVT::i32, 1, 0,
11,
OPC_CheckPatternPredicate, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_16r), 0,
2, MVT::i16, MVT::i32, 1, 0,
0,
28, MVT::i32,
OPC_CheckChild0Type, MVT::i32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC32r), 0,
2, MVT::i32, MVT::i32, 1, 0,
11,
OPC_CheckPatternPredicate, 4,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_32r), 0,
2, MVT::i32, MVT::i32, 1, 0,
0,
11, MVT::i8,
OPC_CheckChild0Type, MVT::i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC8r), 0,
2, MVT::i8, MVT::i32, 1, 0,
11, MVT::i64,
OPC_CheckChild0Type, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64r), 0,
2, MVT::i64, MVT::i32, 1, 0,
0,
23, TARGET_OPCODE(ISD::BSWAP),
OPC_RecordChild0,
OPC_SwitchType , 8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSWAP32r), 0,
1, MVT::i32, 1, 0,
8, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::BSWAP64r), 0,
1, MVT::i64, 1, 0,
0,
76, TARGET_OPCODE(ISD::SIGN_EXTEND),
OPC_RecordChild0,
OPC_Scope, 34,
OPC_CheckChild0Type, MVT::i8,
OPC_SwitchType , 8, MVT::i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX16rr8), 0,
1, MVT::i16, 1, 0,
8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rr8), 0,
1, MVT::i32, 1, 0,
8, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr8), 0,
1, MVT::i64, 1, 0,
0,
24,
OPC_CheckChild0Type, MVT::i16,
OPC_SwitchType , 8, MVT::i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rr16), 0,
1, MVT::i32, 1, 0,
8, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr16), 0,
1, MVT::i64, 1, 0,
0,
12,
OPC_CheckChild0Type, MVT::i32,
OPC_CheckType, MVT::i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr32), 0,
1, MVT::i64, 1, 0,
0,
111|128,5, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_Scope, 92,
OPC_RecordChild0,
OPC_SwitchType , 59, MVT::i64,
OPC_Scope, 12,
OPC_CheckChild0Type, MVT::f64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDto64rr), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckChild0Type, MVT::v1i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64from64rr), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckChild0Type, MVT::v2i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64from64rr), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckChild0Type, MVT::v4i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64from64rr), 0,
1, MVT::i64, 1, 0,
10,
OPC_CheckChild0Type, MVT::v8i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64from64rr), 0,
1, MVT::i64, 1, 0,
0,
26, MVT::i32,
OPC_CheckChild0Type, MVT::f32,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVSS2DIrr), 0,
1, MVT::i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSS2DIrr), 0,
1, MVT::i32, 1, 0,
0,
0,
86,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_SwitchType , 25, MVT::i64,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64toSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
45, MVT::i32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::f32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDI2SSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDI2SSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
0,
0,
92,
OPC_RecordChild0,
OPC_SwitchType , 59, MVT::f64,
OPC_Scope, 12,
OPC_CheckChild0Type, MVT::i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64toSDrr), 0,
1, MVT::f64, 1, 0,
10,
OPC_CheckChild0Type, MVT::v1i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2FR64rr), 0,
1, MVT::f64, 1, 0,
10,
OPC_CheckChild0Type, MVT::v2i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2FR64rr), 0,
1, MVT::f64, 1, 0,
10,
OPC_CheckChild0Type, MVT::v4i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2FR64rr), 0,
1, MVT::f64, 1, 0,
10,
OPC_CheckChild0Type, MVT::v8i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2FR64rr), 0,
1, MVT::f64, 1, 0,
0,
26, MVT::f32,
OPC_CheckChild0Type, MVT::i32,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDI2SSrr), 0,
1, MVT::f32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDI2SSrr), 0,
1, MVT::f32, 1, 0,
0,
0,
60,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::EXTRACT_VECTOR_ELT),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2i64,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_SwitchType , 10, MVT::v1i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVDQ2Qrr), 0,
1, MVT::v1i64, 1, 0,
8, MVT::v2i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVDQ2Qrr), 0,
1, MVT::v2i32, 1, 0,
8, MVT::v4i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVDQ2Qrr), 0,
1, MVT::v4i16, 1, 0,
8, MVT::v8i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVDQ2Qrr), 0,
1, MVT::v8i8, 1, 0,
0,
29|128,3,
OPC_RecordChild0,
OPC_Scope, 39,
OPC_CheckChild0Type, MVT::v4i32,
OPC_SwitchType , 5, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v8i16,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v16i8,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v4f32,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
0,
39,
OPC_CheckChild0Type, MVT::v8i16,
OPC_SwitchType , 5, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v16i8,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v4f32,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
0,
39,
OPC_CheckChild0Type, MVT::v16i8,
OPC_SwitchType , 5, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v8i16,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v4f32,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
0,
39,
OPC_CheckChild0Type, MVT::v2f64,
OPC_SwitchType , 5, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v8i16,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v16i8,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v4f32,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
0,
39,
OPC_CheckChild0Type, MVT::v4f32,
OPC_SwitchType , 5, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v8i16,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v16i8,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
0,
39,
OPC_CheckChild0Type, MVT::v2i64,
OPC_SwitchType , 5, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v8i16,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v16i8,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v4f32,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
5, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_CompleteMatch, 1, 0,
0,
19,
OPC_CheckChild0Type, MVT::v1i64,
OPC_SwitchType , 3, MVT::v8i8,
OPC_CompleteMatch, 1, 0,
3, MVT::v4i16,
OPC_CompleteMatch, 1, 0,
3, MVT::v2i32,
OPC_CompleteMatch, 1, 0,
0,
19,
OPC_CheckChild0Type, MVT::v2i32,
OPC_SwitchType , 3, MVT::v8i8,
OPC_CompleteMatch, 1, 0,
3, MVT::v4i16,
OPC_CompleteMatch, 1, 0,
3, MVT::v1i64,
OPC_CompleteMatch, 1, 0,
0,
19,
OPC_CheckChild0Type, MVT::v4i16,
OPC_SwitchType , 3, MVT::v8i8,
OPC_CompleteMatch, 1, 0,
3, MVT::v2i32,
OPC_CompleteMatch, 1, 0,
3, MVT::v1i64,
OPC_CompleteMatch, 1, 0,
0,
19,
OPC_CheckChild0Type, MVT::v8i8,
OPC_SwitchType , 3, MVT::v4i16,
OPC_CompleteMatch, 1, 0,
3, MVT::v2i32,
OPC_CompleteMatch, 1, 0,
3, MVT::v1i64,
OPC_CompleteMatch, 1, 0,
0,
44,
OPC_CheckChild0Type, MVT::i64,
OPC_SwitchType , 8, MVT::v1i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64to64rr), 0,
1, MVT::v1i64, 1, 0,
8, MVT::v2i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64to64rr), 0,
1, MVT::v2i32, 1, 0,
8, MVT::v4i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64to64rr), 0,
1, MVT::v4i16, 1, 0,
8, MVT::v8i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64to64rr), 0,
1, MVT::v8i8, 1, 0,
0,
44,
OPC_CheckChild0Type, MVT::f64,
OPC_SwitchType , 8, MVT::v1i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVFR642Qrr), 0,
1, MVT::v1i64, 1, 0,
8, MVT::v2i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVFR642Qrr), 0,
1, MVT::v2i32, 1, 0,
8, MVT::v4i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVFR642Qrr), 0,
1, MVT::v4i16, 1, 0,
8, MVT::v8i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVFR642Qrr), 0,
1, MVT::v8i8, 1, 0,
0,
0,
0,
106|128,1, TARGET_OPCODE(ISD::SIGN_EXTEND_INREG),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_Scope, 49,
OPC_CheckValueType, MVT::i16,
OPC_MoveParent,
OPC_SwitchType , 20, MVT::i32,
OPC_EmitInteger, MVT::i32, X86::sub_16bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i16, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rr16), 0,
1, MVT::i32, 1, 2,
20, MVT::i64,
OPC_EmitInteger, MVT::i32, X86::sub_16bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i16, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr16), 0,
1, MVT::i64, 1, 2,
0,
25,
OPC_CheckValueType, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::i64,
OPC_EmitInteger, MVT::i32, X86::sub_32bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i32, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr32), 0,
1, MVT::i64, 1, 2,
23|128,1,
OPC_CheckValueType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 20, MVT::i64,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr8), 0,
1, MVT::i64, 1, 2,
60, MVT::i32,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 4,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rr8), 0,
1, MVT::i32, 1, 2,
34,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i32, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rr8), 0,
1, MVT::i32, 1, 4,
0,
60, MVT::i16,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 4,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX16rr8), 0,
1, MVT::i16, 1, 2,
34,
OPC_CheckPatternPredicate, 3,
OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::i16, 2, 0, 1,
OPC_EmitInteger, MVT::i32, X86::sub_8bit,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::i8, 2, 2, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX16rr8), 0,
1, MVT::i16, 1, 4,
0,
0,
0,
7|128,10, TARGET_OPCODE(ISD::FADD),
OPC_Scope, 10|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 49,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
73,
OPC_CheckPredicate, 54,
OPC_Scope, 45,
OPC_CheckPredicate, 61,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_CheckPredicate, 62,
OPC_MoveParent,
OPC_CheckType, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
0,
12|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 50,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
0,
75,
OPC_CheckPredicate, 54,
OPC_Scope, 46,
OPC_CheckPredicate, 61,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 2, 3, 4, 5, 6, 7,
0,
23,
OPC_CheckPredicate, 62,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 2, 3, 4, 5, 6, 7,
0,
0,
105,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
105,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
0,
0,
21|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(X86ISD::FILD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_Scope, 67,
OPC_CheckValueType, MVT::i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_CheckValueType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
0,
22|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(X86ISD::FILD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_Scope, 68,
OPC_CheckValueType, MVT::i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m32), 0|OPFL_Chain,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m64), 0|OPFL_Chain,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m80), 0|OPFL_Chain,
1, MVT::f80, 6, 2, 3, 4, 5, 6, 7,
0,
68,
OPC_CheckValueType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m32), 0|OPFL_Chain,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m64), 0|OPFL_Chain,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m80), 0|OPFL_Chain,
1, MVT::f80, 6, 2, 3, 4, 5, 6, 7,
0,
0,
120|128,1,
OPC_RecordChild0,
OPC_Scope, 94,
OPC_RecordChild1,
OPC_SwitchType , 38, MVT::f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp32), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSSrr), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSSrr), 0,
1, MVT::f32, 2, 0, 1,
0,
38, MVT::f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp64), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDSDrr), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSDrr), 0,
1, MVT::f64, 2, 0, 1,
0,
9, MVT::f80,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp80), 0,
1, MVT::f80, 2, 0, 1,
0,
20|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::v4f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::v2f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
19, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
21|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 42, MVT::v4f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 2, 3, 4, 5, 6, 7,
0,
42, MVT::v2f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 2, 3, 4, 5, 6, 7,
0,
19, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 2, 3, 4, 5, 6, 7,
19, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 2, 3, 4, 5, 6, 7,
0,
86,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::v4f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
26, MVT::v2f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
11, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
11, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VADDPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
0,
47|128,7, TARGET_OPCODE(ISD::FSUB),
OPC_RecordChild0,
OPC_Scope, 95|128,4,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 94|128,2, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 49,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
73,
OPC_CheckPredicate, 54,
OPC_Scope, 45,
OPC_CheckPredicate, 61,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_CheckPredicate, 62,
OPC_MoveParent,
OPC_CheckType, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
49,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_Fp32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_Fp64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
73,
OPC_CheckPredicate, 54,
OPC_Scope, 45,
OPC_CheckPredicate, 61,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_CheckPredicate, 62,
OPC_MoveParent,
OPC_CheckType, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
93,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
0,
117|128,1, TARGET_OPCODE(X86ISD::FILD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_Scope, 118,
OPC_CheckValueType, MVT::i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 36, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI16m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI16m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
36, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI16m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI16m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
34, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI16m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI16m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
0,
118,
OPC_CheckValueType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 36, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI32m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI32m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
36, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI32m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI32m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
34, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI32m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI32m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
0,
0,
0,
94,
OPC_RecordChild1,
OPC_SwitchType , 38, MVT::f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp32), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBSSrr), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSSrr), 0,
1, MVT::f32, 2, 0, 1,
0,
38, MVT::f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp64), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBSDrr), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSDrr), 0,
1, MVT::f64, 2, 0, 1,
0,
9, MVT::f80,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp80), 0,
1, MVT::f80, 2, 0, 1,
0,
20|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::v4f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::v2f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
19, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
0,
85,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::v4f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
26, MVT::v2f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
11, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
11, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSUBPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
0,
7|128,10, TARGET_OPCODE(ISD::FMUL),
OPC_Scope, 10|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 49,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
73,
OPC_CheckPredicate, 54,
OPC_Scope, 45,
OPC_CheckPredicate, 61,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_CheckPredicate, 62,
OPC_MoveParent,
OPC_CheckType, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
0,
12|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 50,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
0,
75,
OPC_CheckPredicate, 54,
OPC_Scope, 46,
OPC_CheckPredicate, 61,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 2, 3, 4, 5, 6, 7,
0,
23,
OPC_CheckPredicate, 62,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 2, 3, 4, 5, 6, 7,
0,
0,
105,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
105,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
0,
0,
21|128,1,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(X86ISD::FILD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_Scope, 67,
OPC_CheckValueType, MVT::i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
67,
OPC_CheckValueType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
0,
22|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(X86ISD::FILD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_Scope, 68,
OPC_CheckValueType, MVT::i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m32), 0|OPFL_Chain,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m64), 0|OPFL_Chain,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m80), 0|OPFL_Chain,
1, MVT::f80, 6, 2, 3, 4, 5, 6, 7,
0,
68,
OPC_CheckValueType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m32), 0|OPFL_Chain,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m64), 0|OPFL_Chain,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m80), 0|OPFL_Chain,
1, MVT::f80, 6, 2, 3, 4, 5, 6, 7,
0,
0,
120|128,1,
OPC_RecordChild0,
OPC_Scope, 94,
OPC_RecordChild1,
OPC_SwitchType , 38, MVT::f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp32), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULSSrr), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSSrr), 0,
1, MVT::f32, 2, 0, 1,
0,
38, MVT::f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp64), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULSDrr), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSDrr), 0,
1, MVT::f64, 2, 0, 1,
0,
9, MVT::f80,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp80), 0,
1, MVT::f80, 2, 0, 1,
0,
20|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::v4f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::v2f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
19, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
21|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 42, MVT::v4f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 2, 3, 4, 5, 6, 7,
0,
42, MVT::v2f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 2, 3, 4, 5, 6, 7,
0,
19, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 2, 3, 4, 5, 6, 7,
19, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 2, 3, 4, 5, 6, 7,
0,
86,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::v4f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
26, MVT::v2f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
11, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
11, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMULPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
0,
47|128,7, TARGET_OPCODE(ISD::FDIV),
OPC_RecordChild0,
OPC_Scope, 95|128,4,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 94|128,2, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 49,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
73,
OPC_CheckPredicate, 54,
OPC_Scope, 45,
OPC_CheckPredicate, 61,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_CheckPredicate, 62,
OPC_MoveParent,
OPC_CheckType, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
49,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_Fp32m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_Fp64m), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
73,
OPC_CheckPredicate, 54,
OPC_Scope, 45,
OPC_CheckPredicate, 61,
OPC_MoveParent,
OPC_SwitchType , 19, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
17, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
22,
OPC_CheckPredicate, 62,
OPC_MoveParent,
OPC_CheckType, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
93,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
0,
117|128,1, TARGET_OPCODE(X86ISD::FILD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_Scope, 118,
OPC_CheckValueType, MVT::i16,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 36, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI16m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI16m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
36, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI16m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI16m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
34, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI16m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI16m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
0,
118,
OPC_CheckValueType, MVT::i32,
OPC_MoveParent,
OPC_MoveParent,
OPC_SwitchType , 36, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI32m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI32m32), 0|OPFL_Chain,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
36, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI32m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI32m64), 0|OPFL_Chain,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
34, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_Scope, 13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI32m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
13,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI32m80), 0|OPFL_Chain,
1, MVT::f80, 6, 0, 3, 4, 5, 6, 7,
0,
0,
0,
0,
94,
OPC_RecordChild1,
OPC_SwitchType , 38, MVT::f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp32), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVSSrr), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSSrr), 0,
1, MVT::f32, 2, 0, 1,
0,
38, MVT::f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp64), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVSDrr), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSDrr), 0,
1, MVT::f64, 2, 0, 1,
0,
9, MVT::f80,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp80), 0,
1, MVT::f80, 2, 0, 1,
0,
20|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::v4f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::v2f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
19, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
0,
85,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::v4f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
26, MVT::v2f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
11, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
11, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VDIVPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
0,
87|128,1, TARGET_OPCODE(ISD::SINT_TO_FP),
OPC_Scope, 120,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_SwitchType , 50, MVT::i32,
OPC_Scope, 23,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::f32,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
23,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
0,
54, MVT::i64,
OPC_Scope, 25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::f32,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SS64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
25,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SD64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
0,
0,
91,
OPC_RecordChild0,
OPC_Scope, 28,
OPC_CheckChild0Type, MVT::i32,
OPC_SwitchType , 10, MVT::f32,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SSrr), 0,
1, MVT::f32, 1, 0,
10, MVT::f64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SDrr), 0,
1, MVT::f64, 1, 0,
0,
28,
OPC_CheckChild0Type, MVT::i64,
OPC_SwitchType , 10, MVT::f32,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SS64rr), 0,
1, MVT::f32, 1, 0,
10, MVT::f64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SD64rr), 0,
1, MVT::f64, 1, 0,
0,
14,
OPC_CheckChild0Type, MVT::v4i32,
OPC_CheckType, MVT::v4f32,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTDQ2PSrr), 0,
1, MVT::v4f32, 1, 0,
14,
OPC_CheckChild0Type, MVT::v2i32,
OPC_CheckType, MVT::v2f64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPI2PDrr), 0,
1, MVT::v2f64, 1, 0,
0,
0,
111, TARGET_OPCODE(ISD::FP_ROUND),
OPC_Scope, 37,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_CheckType, MVT::f32,
OPC_CheckPatternPredicate, 20,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSD2SSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
70,
OPC_RecordChild0,
OPC_SwitchType , 49, MVT::f32,
OPC_Scope, 16,
OPC_CheckChild0Type, MVT::f64,
OPC_CheckPatternPredicate, 7,
OPC_EmitInteger, MVT::i32, X86::RFP32RegClassID,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::f32, 2, 0, 1,
16,
OPC_CheckChild0Type, MVT::f80,
OPC_CheckPatternPredicate, 7,
OPC_EmitInteger, MVT::i32, X86::RFP32RegClassID,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::f32, 2, 0, 1,
12,
OPC_CheckChild0Type, MVT::f64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSD2SSrr), 0,
1, MVT::f32, 1, 0,
0,
14, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_EmitInteger, MVT::i32, X86::RFP64RegClassID,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::f64, 2, 0, 1,
0,
0,
23|128,2, TARGET_OPCODE(X86ISD::FAND),
OPC_Scope, 107,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsANDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsANDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
107,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsANDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsANDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
0,
0,
60,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsANDPSrr), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPSrr), 0,
1, MVT::f32, 2, 0, 1,
0,
26, MVT::f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsANDPDrr), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPDrr), 0,
1, MVT::f64, 2, 0, 1,
0,
0,
0,
23|128,2, TARGET_OPCODE(X86ISD::FOR),
OPC_Scope, 107,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
107,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
0,
0,
60,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsORPSrr), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPSrr), 0,
1, MVT::f32, 2, 0, 1,
0,
26, MVT::f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsORPDrr), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPDrr), 0,
1, MVT::f64, 2, 0, 1,
0,
0,
0,
23|128,2, TARGET_OPCODE(X86ISD::FXOR),
OPC_Scope, 107,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsXORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsXORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
107,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsXORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 2, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsXORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 2, 3, 4, 5, 6, 7,
0,
0,
60,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsXORPSrr), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPSrr), 0,
1, MVT::f32, 2, 0, 1,
0,
26, MVT::f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VFsXORPDrr), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPDrr), 0,
1, MVT::f64, 2, 0, 1,
0,
0,
0,
20|128,3, TARGET_OPCODE(X86ISD::FMAX),
OPC_RecordChild0,
OPC_Scope, 104,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
59,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXSSrr), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSSrr), 0,
1, MVT::f32, 2, 0, 1,
0,
26, MVT::f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXSDrr), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSDrr), 0,
1, MVT::f64, 2, 0, 1,
0,
0,
20|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::v4f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::v2f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
19, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
0,
85,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::v4f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
26, MVT::v2f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
11, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
11, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMAXPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
0,
20|128,3, TARGET_OPCODE(X86ISD::FMIN),
OPC_RecordChild0,
OPC_Scope, 104,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
59,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINSSrr), 0,
1, MVT::f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSSrr), 0,
1, MVT::f32, 2, 0, 1,
0,
26, MVT::f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINSDrr), 0,
1, MVT::f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSDrr), 0,
1, MVT::f64, 2, 0, 1,
0,
0,
20|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 42, MVT::v4f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
42, MVT::v2f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
19,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
19, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPSYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 6, 0, 3, 4, 5, 6, 7,
19, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPDYrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 6, 0, 3, 4, 5, 6, 7,
0,
85,
OPC_RecordChild1,
OPC_SwitchType , 26, MVT::v4f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
26, MVT::v2f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
11,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
11, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPSYrr), 0,
1, MVT::v8f32, 2, 0, 1,
11, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMINPDYrr), 0,
1, MVT::v4f64, 2, 0, 1,
0,
0,
91|128,2, TARGET_OPCODE(ISD::FSQRT),
OPC_Scope, 55,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::f32,
OPC_CheckPatternPredicate, 25,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSSm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
18, MVT::f64,
OPC_CheckPatternPredicate, 20,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSDm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
0,
65,
OPC_RecordChild0,
OPC_SwitchType , 24, MVT::f32,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRT_Fp32), 0,
1, MVT::f32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSSr), 0,
1, MVT::f32, 1, 0,
0,
24, MVT::f64,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRT_Fp64), 0,
1, MVT::f64, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSDr), 0,
1, MVT::f64, 1, 0,
0,
8, MVT::f80,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRT_Fp80), 0,
1, MVT::f80, 1, 0,
0,
13|128,1,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 40, MVT::v4f32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPSm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPSm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
40, MVT::v2f64,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPDm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPDm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
0,
18, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPSYm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
18, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPDYm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f64, 5, 2, 3, 4, 5, 6,
0,
79,
OPC_RecordChild0,
OPC_SwitchType , 24, MVT::v4f32,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPSr), 0,
1, MVT::v4f32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPSr), 0,
1, MVT::v4f32, 1, 0,
0,
24, MVT::v2f64,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPDr), 0,
1, MVT::v2f64, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPDr), 0,
1, MVT::v2f64, 1, 0,
0,
10, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPSYr), 0,
1, MVT::v8f32, 1, 0,
10, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSQRTPDYr), 0,
1, MVT::v4f64, 1, 0,
0,
0,
44|128,1, TARGET_OPCODE(X86ISD::FRSQRT),
OPC_Scope, 33,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckType, MVT::f32,
OPC_CheckPatternPredicate, 25,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTSSm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
13,
OPC_RecordChild0,
OPC_CheckType, MVT::f32,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTSSr), 0,
1, MVT::f32, 1, 0,
79,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 40, MVT::v4f32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRSQRTPSm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTPSm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
18, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRSQRTPSYm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
0,
41,
OPC_RecordChild0,
OPC_SwitchType , 24, MVT::v4f32,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRSQRTPSr), 0,
1, MVT::v4f32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTPSr), 0,
1, MVT::v4f32, 1, 0,
0,
10, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRSQRTPSYr), 0,
1, MVT::v8f32, 1, 0,
0,
0,
44|128,1, TARGET_OPCODE(X86ISD::FRCP),
OPC_Scope, 33,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_CheckType, MVT::f32,
OPC_CheckPatternPredicate, 25,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPSSm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
13,
OPC_RecordChild0,
OPC_CheckType, MVT::f32,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPSSr), 0,
1, MVT::f32, 1, 0,
79,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 40, MVT::v4f32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRCPPSm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPPSm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
18, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRCPPSYm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
0,
41,
OPC_RecordChild0,
OPC_SwitchType , 24, MVT::v4f32,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRCPPSr), 0,
1, MVT::v4f32, 1, 0,
10,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPPSr), 0,
1, MVT::v4f32, 1, 0,
0,
10, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VRCPPSYr), 0,
1, MVT::v8f32, 1, 0,
0,
0,
114, TARGET_OPCODE(ISD::FP_EXTEND),
OPC_Scope, 37,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f32,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSS2SDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
73,
OPC_RecordChild0,
OPC_Scope, 50,
OPC_CheckChild0Type, MVT::f32,
OPC_SwitchType , 28, MVT::f64,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 7,
OPC_EmitInteger, MVT::i32, X86::RFP64RegClassID,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::f64, 2, 0, 1,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSS2SDrr), 0,
1, MVT::f64, 1, 0,
0,
14, MVT::f80,
OPC_CheckPatternPredicate, 7,
OPC_EmitInteger, MVT::i32, X86::RFP80RegClassID,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::f80, 2, 0, 1,
0,
18,
OPC_CheckChild0Type, MVT::f64,
OPC_CheckType, MVT::f80,
OPC_CheckPatternPredicate, 8,
OPC_EmitInteger, MVT::i32, X86::RFP80RegClassID,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0,
1, MVT::f80, 2, 0, 1,
0,
0,
70|128,1, TARGET_OPCODE(X86ISD::FILD),
OPC_RecordNode,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_Scope, 63,
OPC_CheckValueType, MVT::i16,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp16m32), 0|OPFL_Chain,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
18, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp16m64), 0|OPFL_Chain,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
16, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp16m80), 0|OPFL_Chain,
1, MVT::f80, 5, 2, 3, 4, 5, 6,
0,
63,
OPC_CheckValueType, MVT::i32,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp32m32), 0|OPFL_Chain,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
18, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp32m64), 0|OPFL_Chain,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
16, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp32m80), 0|OPFL_Chain,
1, MVT::f80, 5, 2, 3, 4, 5, 6,
0,
63,
OPC_CheckValueType, MVT::i64,
OPC_MoveParent,
OPC_SwitchType , 18, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp64m32), 0|OPFL_Chain,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
18, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp64m64), 0|OPFL_Chain,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
16, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp64m80), 0|OPFL_Chain,
1, MVT::f80, 5, 2, 3, 4, 5, 6,
0,
0,
72, TARGET_OPCODE(X86ISD::FLD),
OPC_RecordNode,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_Scope, 21,
OPC_CheckValueType, MVT::f32,
OPC_MoveParent,
OPC_CheckType, MVT::f32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp32m), 0|OPFL_Chain,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
21,
OPC_CheckValueType, MVT::f64,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp64m), 0|OPFL_Chain,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
21,
OPC_CheckValueType, MVT::f80,
OPC_MoveParent,
OPC_CheckType, MVT::f80,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp80m), 0|OPFL_Chain,
1, MVT::f80, 5, 2, 3, 4, 5, 6,
0,
25, TARGET_OPCODE(X86ISD::FILD_FLAG),
OPC_RecordNode,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckValueType, MVT::i64,
OPC_MoveParent,
OPC_CheckType, MVT::f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp64m64), 0|OPFL_Chain|OPFL_FlagOutput,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
94|128,1, TARGET_OPCODE(ISD::ConstantFP),
OPC_SwitchType , 78, MVT::f32,
OPC_Scope, 11,
OPC_CheckPredicate, 104,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp032), 0,
1, MVT::f32, 0,
11,
OPC_CheckPredicate, 105,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp132), 0,
1, MVT::f32, 0,
11,
OPC_CheckPredicate, 106,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsFLD0SS), 0,
1, MVT::f32, 0,
19,
OPC_CheckPredicate, 107,
OPC_CheckPatternPredicate, 7,
OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp032), 0,
1, MVT::f32, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp32), 0,
1, MVT::f32, 1, 0,
19,
OPC_CheckPredicate, 108,
OPC_CheckPatternPredicate, 7,
OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp132), 0,
1, MVT::f32, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp32), 0,
1, MVT::f32, 1, 0,
0,
78, MVT::f64,
OPC_Scope, 11,
OPC_CheckPredicate, 104,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp064), 0,
1, MVT::f64, 0,
11,
OPC_CheckPredicate, 105,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp164), 0,
1, MVT::f64, 0,
11,
OPC_CheckPredicate, 104,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FsFLD0SD), 0,
1, MVT::f64, 0,
19,
OPC_CheckPredicate, 107,
OPC_CheckPatternPredicate, 8,
OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp064), 0,
1, MVT::f64, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp64), 0,
1, MVT::f64, 1, 0,
19,
OPC_CheckPredicate, 108,
OPC_CheckPatternPredicate, 8,
OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp164), 0,
1, MVT::f64, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp64), 0,
1, MVT::f64, 1, 0,
0,
58, MVT::f80,
OPC_Scope, 9,
OPC_CheckPredicate, 104,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp080), 0,
1, MVT::f80, 0,
9,
OPC_CheckPredicate, 105,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp180), 0,
1, MVT::f80, 0,
17,
OPC_CheckPredicate, 107,
OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp080), 0,
1, MVT::f80, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp80), 0,
1, MVT::f80, 1, 0,
17,
OPC_CheckPredicate, 108,
OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp180), 0,
1, MVT::f80, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp80), 0,
1, MVT::f80, 1, 0,
0,
0,
37, TARGET_OPCODE(ISD::FNEG),
OPC_RecordChild0,
OPC_SwitchType , 10, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp32), 0,
1, MVT::f32, 1, 0,
10, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp64), 0,
1, MVT::f64, 1, 0,
8, MVT::f80,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp80), 0,
1, MVT::f80, 1, 0,
0,
37, TARGET_OPCODE(ISD::FABS),
OPC_RecordChild0,
OPC_SwitchType , 10, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ABS_Fp32), 0,
1, MVT::f32, 1, 0,
10, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ABS_Fp64), 0,
1, MVT::f64, 1, 0,
8, MVT::f80,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ABS_Fp80), 0,
1, MVT::f80, 1, 0,
0,
37, TARGET_OPCODE(ISD::FSIN),
OPC_RecordChild0,
OPC_SwitchType , 10, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SIN_Fp32), 0,
1, MVT::f32, 1, 0,
10, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SIN_Fp64), 0,
1, MVT::f64, 1, 0,
8, MVT::f80,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SIN_Fp80), 0,
1, MVT::f80, 1, 0,
0,
37, TARGET_OPCODE(ISD::FCOS),
OPC_RecordChild0,
OPC_SwitchType , 10, MVT::f32,
OPC_CheckPatternPredicate, 7,
OPC_MorphNodeTo, TARGET_OPCODE(X86::COS_Fp32), 0,
1, MVT::f32, 1, 0,
10, MVT::f64,
OPC_CheckPatternPredicate, 8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::COS_Fp64), 0,
1, MVT::f64, 1, 0,
8, MVT::f80,
OPC_MorphNodeTo, TARGET_OPCODE(X86::COS_Fp80), 0,
1, MVT::f80, 1, 0,
0,
98, TARGET_OPCODE(ISD::PREFETCH),
OPC_RecordNode,
OPC_RecordChild1,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_MoveChild, 3,
OPC_Scope, 20,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PREFETCHT0), 0|OPFL_Chain,
0, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PREFETCHT1), 0|OPFL_Chain,
0, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PREFETCHT2), 0|OPFL_Chain,
0, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PREFETCHNTA), 0|OPFL_Chain,
0, 5, 2, 3, 4, 5, 6,
0,
114|128,1, TARGET_OPCODE(X86ISD::TC_RETURN),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_Scope, 73,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 24,
OPC_CheckPatternPredicate, 26,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNmi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs|OPFL_Variadic2,
1, MVT::i32, 6, 4, 5, 6, 7, 8, 9,
24,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNmi64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs|OPFL_Variadic2,
1, MVT::i64, 6, 4, 5, 6, 7, 8, 9,
0,
34|128,1,
OPC_RecordChild1,
OPC_Scope, 110,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 50, TARGET_OPCODE(ISD::TargetGlobalAddress),
OPC_SwitchType , 22, MVT::i32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 3,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNdi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2,
1, MVT::i32, 2, 1, 3,
22, MVT::i64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 4,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNdi64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2,
1, MVT::i64, 2, 1, 3,
0,
50, TARGET_OPCODE(ISD::TargetExternalSymbol),
OPC_SwitchType , 22, MVT::i32,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 3,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNdi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2,
1, MVT::i32, 2, 1, 3,
22, MVT::i64,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 4,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNdi64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2,
1, MVT::i64, 2, 1, 3,
0,
0,
23,
OPC_CheckChild1Type, MVT::i32,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 3,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNri), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2,
1, MVT::i32, 2, 1, 3,
23,
OPC_CheckChild1Type, MVT::i64,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckPatternPredicate, 4,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNri64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2,
1, MVT::i64, 2, 1, 3,
0,
0,
74, TARGET_OPCODE(X86ISD::CMPPS),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v4f32,
OPC_Scope, 45,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPSrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPSrri), 0,
1, MVT::v4i32, 3, 0, 1, 3,
0,
74, TARGET_OPCODE(X86ISD::CMPPD),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::v2f64,
OPC_Scope, 45,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPDrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPDrri), 0,
1, MVT::v2i64, 3, 0, 1, 3,
0,
116, TARGET_OPCODE(X86ISD::PINSRW),
OPC_RecordChild0,
OPC_Scope, 71,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 54,
OPC_CheckPredicate, 57,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPINSRWrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRWrmi), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 7, 0, 4, 5, 6, 7, 8, 9,
0,
40,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPINSRWrri), 0,
1, MVT::v8i16, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRWrri), 0,
1, MVT::v8i16, 3, 0, 1, 3,
0,
0,
60, TARGET_OPCODE(X86ISD::PSHUFB),
OPC_RecordChild0,
OPC_Scope, 43,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckPatternPredicate, 12,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrm128), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckPatternPredicate, 12,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrr128), 0,
1, MVT::v16i8, 2, 0, 1,
0,
116, TARGET_OPCODE(X86ISD::PINSRB),
OPC_RecordChild0,
OPC_Scope, 71,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 54,
OPC_CheckPredicate, 56,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPINSRBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 7, 0, 4, 5, 6, 7, 8, 9,
0,
40,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPINSRBrr), 0,
1, MVT::v16i8, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRBrr), 0,
1, MVT::v16i8, 3, 0, 1, 3,
0,
0,
93|128,1, TARGET_OPCODE(ISD::INSERT_VECTOR_ELT),
OPC_RecordChild0,
OPC_Scope, 9|128,1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_Scope, 60,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPINSRDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
62,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPINSRQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 7, 0, 4, 5, 6, 7, 8, 9,
0,
0,
78,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_SwitchType , 32, MVT::v4i32,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPINSRDrr), 0,
1, MVT::v4i32, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRDrr), 0,
1, MVT::v4i32, 3, 0, 1, 3,
0,
32, MVT::v2i64,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPINSRQrr), 0,
1, MVT::v2i64, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRQrr), 0,
1, MVT::v2i64, 3, 0, 1, 3,
0,
0,
0,
81|128,2, TARGET_OPCODE(X86ISD::MOVDDUP),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 44|128,1, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_SwitchOpcode , 100, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_SwitchType , 42, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
42, MVT::v2f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
0,
62, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::i64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
0,
0,
92, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_SwitchType , 38, MVT::v2i64,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
38, MVT::v2f64,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
0,
0,
59, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
0,
0,
60, TARGET_OPCODE(X86ISD::PUNPCKLBW),
OPC_RecordChild0,
OPC_Scope, 43,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v16i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckType, MVT::v16i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLBWrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
60, TARGET_OPCODE(X86ISD::PUNPCKLWD),
OPC_RecordChild0,
OPC_Scope, 43,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v8i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckType, MVT::v8i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLWDrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
60, TARGET_OPCODE(X86ISD::PUNPCKLDQ),
OPC_RecordChild0,
OPC_Scope, 43,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckType, MVT::v4i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLDQrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
60, TARGET_OPCODE(X86ISD::PUNPCKHBW),
OPC_RecordChild0,
OPC_Scope, 43,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v16i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHBWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckType, MVT::v16i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHBWrr), 0,
1, MVT::v16i8, 2, 0, 1,
0,
60, TARGET_OPCODE(X86ISD::PUNPCKHWD),
OPC_RecordChild0,
OPC_Scope, 43,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v8i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHWDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckType, MVT::v8i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHWDrr), 0,
1, MVT::v8i16, 2, 0, 1,
0,
60, TARGET_OPCODE(X86ISD::PUNPCKHDQ),
OPC_RecordChild0,
OPC_Scope, 43,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckType, MVT::v4i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHDQrr), 0,
1, MVT::v4i32, 2, 0, 1,
0,
116, TARGET_OPCODE(X86ISD::MOVSS),
OPC_RecordChild0,
OPC_Scope, 41,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
24,
OPC_RecordChild1,
OPC_CheckType, MVT::v4i32,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f32, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0,
1, MVT::v4i32, 2, 0, 3,
20,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::f32,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0,
1, MVT::v4f32, 2, 0, 1,
24,
OPC_RecordChild1,
OPC_CheckType, MVT::v4f32,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f32, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0,
1, MVT::v4f32, 2, 0, 3,
0,
103, TARGET_OPCODE(X86ISD::MOVSHDUP),
OPC_Scope, 42,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild0,
OPC_CheckType, MVT::v4i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrr), 0,
1, MVT::v4i32, 1, 0,
33,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild0,
OPC_CheckType, MVT::v4f32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrr), 0,
1, MVT::v4f32, 1, 0,
0,
103, TARGET_OPCODE(X86ISD::MOVSLDUP),
OPC_Scope, 42,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild0,
OPC_CheckType, MVT::v4i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrr), 0,
1, MVT::v4i32, 1, 0,
33,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
11,
OPC_RecordChild0,
OPC_CheckType, MVT::v4f32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrr), 0,
1, MVT::v4f32, 1, 0,
0,
61|128,1, TARGET_OPCODE(X86ISD::PCMPEQB),
OPC_Scope, 42,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v8i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v8i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7,
36,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v16i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
36,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v16i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7,
26,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 9, MVT::v16i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQBrr), 0,
1, MVT::v16i8, 2, 0, 1,
9, MVT::v8i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
0,
61|128,1, TARGET_OPCODE(X86ISD::PCMPEQW),
OPC_Scope, 42,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v4i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7,
36,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v8i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
36,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v8i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
26,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 9, MVT::v8i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQWrr), 0,
1, MVT::v8i16, 2, 0, 1,
9, MVT::v4i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
0,
61|128,1, TARGET_OPCODE(X86ISD::PCMPEQD),
OPC_Scope, 42,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
42,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 2, 3, 4, 5, 6, 7,
36,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
36,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7,
26,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 9, MVT::v4i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQDrr), 0,
1, MVT::v4i32, 2, 0, 1,
9, MVT::v2i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQDrr), 0,
1, MVT::v2i32, 2, 0, 1,
0,
0,
106, TARGET_OPCODE(X86ISD::PCMPGTB),
OPC_RecordChild0,
OPC_Scope, 76,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 36, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v8i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7,
30, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v16i8,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTBrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7,
0,
25,
OPC_RecordChild1,
OPC_SwitchType , 9, MVT::v16i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTBrr), 0,
1, MVT::v16i8, 2, 0, 1,
9, MVT::v8i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTBrr), 0,
1, MVT::v8i8, 2, 0, 1,
0,
0,
106, TARGET_OPCODE(X86ISD::PCMPGTW),
OPC_RecordChild0,
OPC_Scope, 76,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 36, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7,
30, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v8i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTWrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7,
0,
25,
OPC_RecordChild1,
OPC_SwitchType , 9, MVT::v8i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTWrr), 0,
1, MVT::v8i16, 2, 0, 1,
9, MVT::v4i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTWrr), 0,
1, MVT::v4i16, 2, 0, 1,
0,
0,
106, TARGET_OPCODE(X86ISD::PCMPGTD),
OPC_RecordChild0,
OPC_Scope, 76,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 36, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckType, MVT::v1i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7,
30, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
0,
25,
OPC_RecordChild1,
OPC_SwitchType , 9, MVT::v4i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTDrr), 0,
1, MVT::v4i32, 2, 0, 1,
9, MVT::v2i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTDrr), 0,
1, MVT::v2i32, 2, 0, 1,
0,
0,
3|128,1, TARGET_OPCODE(X86ISD::MOVLHPS),
OPC_RecordChild0,
OPC_Scope, 36,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(X86ISD::VZEXT_LOAD),
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPSrm), 0|OPFL_Chain,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
25,
OPC_RecordChild1,
OPC_SwitchType , 9, MVT::v4i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLHPSrr), 0,
1, MVT::v4i32, 2, 0, 1,
9, MVT::v2i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLHPSrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
51,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckType, MVT::v4f32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLHPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
106, TARGET_OPCODE(X86ISD::LCMPXCHG_DAG),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_Scope, 24,
OPC_CheckChild2Type, MVT::i32,
OPC_MoveChild, 3,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LCMPXCHG32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i32, 6, 3, 4, 5, 6, 7, 2,
24,
OPC_CheckChild2Type, MVT::i16,
OPC_MoveChild, 3,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LCMPXCHG16), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i16, 6, 3, 4, 5, 6, 7, 2,
24,
OPC_CheckChild2Type, MVT::i8,
OPC_MoveChild, 3,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LCMPXCHG8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i8, 6, 3, 4, 5, 6, 7, 2,
24,
OPC_CheckChild2Type, MVT::i64,
OPC_MoveChild, 3,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LCMPXCHG64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i64, 6, 3, 4, 5, 6, 7, 2,
0,
27|128,8, TARGET_OPCODE(ISD::INTRINSIC_VOID),
OPC_RecordNode,
OPC_MoveChild, 1,
OPC_Scope, 22,
OPC_CheckInteger, 112|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSYmr), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
22,
OPC_CheckInteger, 111|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPDYmr), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
46,
OPC_CheckInteger, 58|128,6,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
0,
46,
OPC_CheckInteger, 64|128,5,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPDmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPDmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
0,
46,
OPC_CheckInteger, 48|128,6,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTPSmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTPSmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
0,
46,
OPC_CheckInteger, 9|128,5,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTPDmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTPDmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
0,
46,
OPC_CheckInteger, 7|128,5,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTDQmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTDQmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
0,
22,
OPC_CheckInteger, 98|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTDQYmr), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
22,
OPC_CheckInteger, 99|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTPDYmr), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
22,
OPC_CheckInteger, 100|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTPSYmr), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
24,
OPC_CheckInteger, 8|128,5,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTImr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
43,
OPC_CheckInteger, 41|128,6,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 17,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VLDMXCSR), 0|OPFL_Chain,
0, 5, 2, 3, 4, 5, 6,
17,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LDMXCSR), 0|OPFL_Chain,
0, 5, 2, 3, 4, 5, 6,
0,
43,
OPC_CheckInteger, 57|128,6,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 17,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSTMXCSR), 0|OPFL_Chain,
0, 5, 2, 3, 4, 5, 6,
17,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::STMXCSR), 0|OPFL_Chain,
0, 5, 2, 3, 4, 5, 6,
0,
46,
OPC_CheckInteger, 63|128,5,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDQUmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDQUmr_Int), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
0,
22,
OPC_CheckInteger, 110|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDQUYmr), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
46,
OPC_CheckInteger, 62|128,5,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVLQ128mr), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLQ128mr), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
0,
22,
OPC_CheckInteger, 99|128,4,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CLFLUSH), 0|OPFL_Chain,
0, 5, 2, 3, 4, 5, 6,
26,
OPC_CheckInteger, 90|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMASKMOVPSmr), 0|OPFL_Chain,
0, 7, 4, 5, 6, 7, 8, 2, 3,
26,
OPC_CheckInteger, 91|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMASKMOVPSYmr), 0|OPFL_Chain,
0, 7, 4, 5, 6, 7, 8, 2, 3,
26,
OPC_CheckInteger, 88|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMASKMOVPDmr), 0|OPFL_Chain,
0, 7, 4, 5, 6, 7, 8, 2, 3,
26,
OPC_CheckInteger, 89|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMASKMOVPDYmr), 0|OPFL_Chain,
0, 7, 4, 5, 6, 7, 8, 2, 3,
24,
OPC_CheckInteger, 27|128,4,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVNTQmr), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 2,
37,
OPC_CheckInteger, 21|128,4,
OPC_MoveParent,
OPC_Scope, 12,
OPC_MoveChild, 2,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INT3), 0|OPFL_Chain,
0, 0,
17,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INT), 0|OPFL_Chain,
0, 1, 2,
0,
13,
OPC_CheckInteger, 54|128,6,
OPC_MoveParent,
OPC_CheckPatternPredicate, 1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SFENCE), 0|OPFL_Chain,
0, 0,
79,
OPC_CheckInteger, 0|128,5,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_Scope, 34,
OPC_CheckChild4Type, MVT::i32,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EDI,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMASKMOVDQU), 0|OPFL_Chain|OPFL_FlagInput,
0, 2, 1, 2,
14,
OPC_CheckPatternPredicate, 2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EDI,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MASKMOVDQU), 0|OPFL_Chain|OPFL_FlagInput,
0, 2, 1, 2,
0,
34,
OPC_CheckChild4Type, MVT::i64,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::RDI,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMASKMOVDQU64), 0|OPFL_Chain|OPFL_FlagInput,
0, 2, 1, 2,
14,
OPC_CheckPatternPredicate, 2,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::RDI,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MASKMOVDQU64), 0|OPFL_Chain|OPFL_FlagInput,
0, 2, 1, 2,
0,
0,
13,
OPC_CheckInteger, 125|128,4,
OPC_MoveParent,
OPC_CheckPatternPredicate, 2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LFENCE), 0|OPFL_Chain,
0, 0,
13,
OPC_CheckInteger, 3|128,5,
OPC_MoveParent,
OPC_CheckPatternPredicate, 2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MFENCE), 0|OPFL_Chain,
0, 0,
27,
OPC_CheckInteger, 79|128,5,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckChild2Type, MVT::i32,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_CheckPatternPredicate, 10,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::EAX,
OPC_EmitCopyToReg, 2, X86::ECX,
OPC_EmitCopyToReg, 3, X86::EDX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MONITOR), 0|OPFL_Chain|OPFL_FlagInput,
0, 0,
21,
OPC_CheckInteger, 80|128,5,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckPatternPredicate, 10,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 1, X86::ECX,
OPC_EmitCopyToReg, 2, X86::EAX,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MWAIT), 0|OPFL_Chain|OPFL_FlagInput,
0, 0,
13,
OPC_CheckInteger, 19|128,4,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VZEROALL), 0|OPFL_Chain,
0, 0,
13,
OPC_CheckInteger, 20|128,4,
OPC_MoveParent,
OPC_CheckPatternPredicate, 0,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VZEROUPPER), 0|OPFL_Chain,
0, 0,
13,
OPC_CheckInteger, 24|128,4,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_EMMS), 0|OPFL_Chain,
0, 0,
13,
OPC_CheckInteger, 25|128,4,
OPC_MoveParent,
OPC_CheckPatternPredicate, 9,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_FEMMS), 0|OPFL_Chain,
0, 0,
43,
OPC_CheckInteger, 26|128,4,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_RecordChild4,
OPC_Scope, 16,
OPC_CheckChild4Type, MVT::i32,
OPC_CheckPatternPredicate, 9,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::EDI,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MASKMOVQ), 0|OPFL_Chain|OPFL_FlagInput,
0, 2, 1, 2,
16,
OPC_CheckChild4Type, MVT::i64,
OPC_CheckPatternPredicate, 27,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 3, X86::RDI,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MASKMOVQ64), 0|OPFL_Chain|OPFL_FlagInput,
0, 2, 1, 2,
0,
0,
35|128,4, TARGET_OPCODE(ISD::INTRINSIC_W_CHAIN),
OPC_RecordNode,
OPC_MoveChild, 1,
OPC_Scope, 45,
OPC_CheckInteger, 126|128,4,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDQUrm_Int), 0|OPFL_Chain,
1, MVT::v16i8, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDQUrm_Int), 0|OPFL_Chain,
1, MVT::v16i8, 5, 2, 3, 4, 5, 6,
0,
21,
OPC_CheckInteger, 81|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDQUYrm), 0|OPFL_Chain,
1, MVT::v32i8, 5, 2, 3, 4, 5, 6,
45,
OPC_CheckInteger, 78|128,5,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VLDDQUrm), 0|OPFL_Chain,
1, MVT::v16i8, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LDDQUrm), 0|OPFL_Chain,
1, MVT::v16i8, 5, 2, 3, 4, 5, 6,
0,
23,
OPC_CheckInteger, 80|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VLDDQUYrm), 0|OPFL_Chain,
1, MVT::v32i8, 5, 2, 3, 4, 5, 6,
45,
OPC_CheckInteger, 89|128,5,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVNTDQArm), 0|OPFL_Chain,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTDQArm), 0|OPFL_Chain,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
21,
OPC_CheckInteger, 83|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSYrm), 0|OPFL_Chain,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
21,
OPC_CheckInteger, 82|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPDYrm), 0|OPFL_Chain,
1, MVT::v4f64, 5, 2, 3, 4, 5, 6,
45,
OPC_CheckInteger, 42|128,6,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSrm_Int), 0|OPFL_Chain,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
0,
45,
OPC_CheckInteger, 127|128,4,
OPC_MoveParent,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVUPDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPDrm_Int), 0|OPFL_Chain,
1, MVT::v2f64, 5, 2, 3, 4, 5, 6,
0,
23,
OPC_CheckInteger, 116|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBROADCASTSS), 0|OPFL_Chain,
1, MVT::v4f32, 5, 2, 3, 4, 5, 6,
23,
OPC_CheckInteger, 117|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBROADCASTSSY), 0|OPFL_Chain,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
23,
OPC_CheckInteger, 113|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBROADCASTSD), 0|OPFL_Chain,
1, MVT::v4f64, 5, 2, 3, 4, 5, 6,
23,
OPC_CheckInteger, 114|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBROADCASTF128), 0|OPFL_Chain,
1, MVT::v4f64, 5, 2, 3, 4, 5, 6,
25,
OPC_CheckInteger, 86|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMASKMOVPSrm), 0|OPFL_Chain,
1, MVT::v4f32, 6, 2, 3, 4, 5, 6, 7,
25,
OPC_CheckInteger, 87|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMASKMOVPSYrm), 0|OPFL_Chain,
1, MVT::v8f32, 6, 2, 3, 4, 5, 6, 7,
25,
OPC_CheckInteger, 84|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMASKMOVPDrm), 0|OPFL_Chain,
1, MVT::v2f64, 6, 2, 3, 4, 5, 6, 7,
25,
OPC_CheckInteger, 85|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_RecordChild3,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMASKMOVPDYrm), 0|OPFL_Chain,
1, MVT::v4f64, 6, 2, 3, 4, 5, 6, 7,
21,
OPC_CheckInteger, 115|128,3,
OPC_MoveParent,
OPC_RecordChild2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VBROADCASTF128), 0|OPFL_Chain,
1, MVT::v8f32, 5, 2, 3, 4, 5, 6,
0,
99, TARGET_OPCODE(ISD::BRIND),
OPC_RecordNode,
OPC_Scope, 65,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_SwitchType , 23, MVT::i32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JMP32m), 0|OPFL_Chain|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
25, MVT::i64,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JMP64m), 0|OPFL_Chain|OPFL_MemRefs,
0, 5, 3, 4, 5, 6, 7,
0,
29,
OPC_RecordChild1,
OPC_Scope, 12,
OPC_CheckChild1Type, MVT::i32,
OPC_CheckPatternPredicate, 3,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JMP32r), 0|OPFL_Chain,
0, 1, 1,
12,
OPC_CheckChild1Type, MVT::i64,
OPC_CheckPatternPredicate, 4,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JMP64r), 0|OPFL_Chain,
0, 1, 1,
0,
0,
1|128,2, TARGET_OPCODE(X86ISD::CALL),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_Scope, 90,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_SwitchType , 22, MVT::i32,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL32m), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs|OPFL_Variadic1,
1, MVT::i32, 5, 3, 4, 5, 6, 7,
51, MVT::i64,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_Scope, 21,
OPC_CheckPatternPredicate, 28,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL64m), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs|OPFL_Variadic1,
1, MVT::i64, 5, 3, 4, 5, 6, 7,
21,
OPC_CheckPatternPredicate, 29,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains, 2, 0, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::WINCALL64m), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs|OPFL_Variadic1,
1, MVT::i64, 5, 3, 4, 5, 6, 7,
0,
0,
32|128,1,
OPC_RecordChild1,
OPC_Scope, 115,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 43, TARGET_OPCODE(ISD::TargetGlobalAddress),
OPC_SwitchType , 10, MVT::i32,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CALLpcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1,
1, MVT::i32, 1, 1,
27, MVT::i64,
OPC_MoveParent,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 28,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL64pcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1,
1, MVT::i64, 1, 1,
11,
OPC_CheckPatternPredicate, 29,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::WINCALL64pcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1,
1, MVT::i64, 1, 1,
0,
0,
43, TARGET_OPCODE(ISD::TargetExternalSymbol),
OPC_SwitchType , 10, MVT::i32,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CALLpcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1,
1, MVT::i32, 1, 1,
27, MVT::i64,
OPC_MoveParent,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 28,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL64pcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1,
1, MVT::i64, 1, 1,
11,
OPC_CheckPatternPredicate, 29,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::WINCALL64pcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1,
1, MVT::i64, 1, 1,
0,
0,
16, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_CheckPatternPredicate, 30,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CALLpcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1,
1, MVT::i32, 1, 2,
0,
11,
OPC_CheckChild1Type, MVT::i32,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL32r), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1,
1, MVT::i32, 1, 1,
28,
OPC_CheckChild1Type, MVT::i64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 28,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL64r), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1,
1, MVT::i64, 1, 1,
11,
OPC_CheckPatternPredicate, 29,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::WINCALL64r), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1,
1, MVT::i64, 1, 1,
0,
0,
0,
41|128,3, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_Scope, 74|128,1,
OPC_MoveChild, 0,
OPC_SwitchOpcode , 2|128,1, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_SwitchType , 72, MVT::i32,
OPC_Scope, 45,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::v4i32,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 5, 2, 3, 4, 5, 6,
0,
23,
OPC_CheckPredicate, 8,
OPC_MoveParent,
OPC_CheckType, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64rm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i32, 5, 2, 3, 4, 5, 6,
0,
47, MVT::i64,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
18,
OPC_CheckPatternPredicate, 2,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 5, 2, 3, 4, 5, 6,
0,
0,
61, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_RecordChild0,
OPC_CheckType, MVT::i64,
OPC_Scope, 13,
OPC_CheckChild0Type, MVT::v8i8,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0,
1, MVT::v2i64, 1, 0,
13,
OPC_CheckChild0Type, MVT::v4i16,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0,
1, MVT::v2i64, 1, 0,
13,
OPC_CheckChild0Type, MVT::v2i32,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0,
1, MVT::v2i64, 1, 0,
13,
OPC_CheckChild0Type, MVT::v1i64,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0,
1, MVT::v2i64, 1, 0,
0,
0,
75,
OPC_RecordChild0,
OPC_Scope, 28,
OPC_CheckChild0Type, MVT::i64,
OPC_SwitchType , 10, MVT::v2i64,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64toPQIrr), 0,
1, MVT::v2i64, 1, 0,
10, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64rrv164), 0,
1, MVT::v1i64, 1, 0,
0,
42,
OPC_CheckChild0Type, MVT::i32,
OPC_SwitchType , 24, MVT::v4i32,
OPC_Scope, 10,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VMOVDI2PDIrr), 0,
1, MVT::v4i32, 1, 0,
10,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDI2PDIrr), 0,
1, MVT::v4i32, 1, 0,
0,
10, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64rr), 0,
1, MVT::v2i32, 1, 0,
0,
0,
90,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_SwitchType , 35, MVT::f32,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i32, 0,
OPC_EmitNode, TARGET_OPCODE(X86::MOVSSrm), 0|OPFL_Chain,
1, MVT::f32, 5, 2, 3, 4, 5, 6,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 3, 7, 8, 9,
35, MVT::f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_EmitInteger, MVT::i64, 0,
OPC_EmitNode, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain,
1, MVT::f64, 5, 2, 3, 4, 5, 6,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 3, 7, 8, 9,
0,
51,
OPC_RecordChild0,
OPC_SwitchType , 22, MVT::v4f32,
OPC_CheckChild0Type, MVT::f32,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::IMPLICIT_DEF), 0,
1, MVT::v4f32, 0,
OPC_EmitInteger, MVT::i32, X86::sub_ss,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::INSERT_SUBREG), 0,
1, MVT::v4f32, 3, 1, 0, 2,
22, MVT::v2f64,
OPC_CheckChild0Type, MVT::f64,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::IMPLICIT_DEF), 0,
1, MVT::v2f64, 0,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::INSERT_SUBREG), 0,
1, MVT::v2f64, 3, 1, 0, 2,
0,
0,
90, TARGET_OPCODE(X86ISD::PCMPEQQ),
OPC_Scope, 36,
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
36,
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7,
13,
OPC_RecordChild0,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
52, TARGET_OPCODE(X86ISD::PCMPGTQ),
OPC_RecordChild0,
OPC_Scope, 35,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
52, TARGET_OPCODE(X86ISD::PUNPCKLQDQ),
OPC_RecordChild0,
OPC_Scope, 35,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLQDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLQDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
52, TARGET_OPCODE(X86ISD::PUNPCKHQDQ),
OPC_RecordChild0,
OPC_Scope, 35,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHQDQrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
12,
OPC_RecordChild1,
OPC_CheckType, MVT::v2i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHQDQrr), 0,
1, MVT::v2i64, 2, 0, 1,
0,
106, TARGET_OPCODE(X86ISD::MOVLPS),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 49, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 17, MVT::v4i32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7,
17, MVT::v4f32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
46, TARGET_OPCODE(ISD::BIT_CONVERT),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
98, TARGET_OPCODE(X86ISD::MOVLPD),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 49, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_MoveParent,
OPC_SwitchType , 17, MVT::v2i64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7,
17, MVT::v2f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
38, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
30, TARGET_OPCODE(X86ISD::PSHUFHW_LD),
OPC_RecordChild0,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::v8i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFHWmi), 0|OPFL_Chain,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
30, TARGET_OPCODE(X86ISD::PSHUFLW_LD),
OPC_RecordChild0,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_CheckType, MVT::v8i16,
OPC_CheckComplexPat, /*CP*/0, /*#*/0,
OPC_EmitConvertToTarget, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFLWmi), 0|OPFL_Chain,
1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7,
2|128,1, TARGET_OPCODE(X86ISD::FP_TO_INT16_IN_MEM),
OPC_RecordNode,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_CheckChild1Type, MVT::f32,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp16m32), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FP32_TO_INT16_IN_MEM), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
0,
41,
OPC_CheckChild1Type, MVT::f64,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp16m64), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FP64_TO_INT16_IN_MEM), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
0,
41,
OPC_CheckChild1Type, MVT::f80,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp16m80), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FP80_TO_INT16_IN_MEM), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
0,
0,
2|128,1, TARGET_OPCODE(X86ISD::FP_TO_INT32_IN_MEM),
OPC_RecordNode,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_CheckChild1Type, MVT::f32,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp32m32), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FP32_TO_INT32_IN_MEM), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
0,
41,
OPC_CheckChild1Type, MVT::f64,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp32m64), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FP64_TO_INT32_IN_MEM), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
0,
41,
OPC_CheckChild1Type, MVT::f80,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp32m80), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FP80_TO_INT32_IN_MEM), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
0,
0,
2|128,1, TARGET_OPCODE(X86ISD::FP_TO_INT64_IN_MEM),
OPC_RecordNode,
OPC_RecordChild1,
OPC_Scope, 41,
OPC_CheckChild1Type, MVT::f32,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp64m32), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FP32_TO_INT64_IN_MEM), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
0,
41,
OPC_CheckChild1Type, MVT::f64,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp64m64), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FP64_TO_INT64_IN_MEM), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
0,
41,
OPC_CheckChild1Type, MVT::f80,
OPC_RecordChild2,
OPC_Scope, 18,
OPC_CheckPatternPredicate, 10,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp64m80), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
16,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FP80_TO_INT64_IN_MEM), 0|OPFL_Chain,
0, 6, 3, 4, 5, 6, 7, 1,
0,
0,
18|128,1, TARGET_OPCODE(X86ISD::FST),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_RecordChild1,
OPC_Scope, 24,
OPC_CheckChild1Type, MVT::f32,
OPC_RecordChild2,
OPC_MoveChild, 3,
OPC_CheckValueType, MVT::f32,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp32m), 0|OPFL_Chain|OPFL_FlagInput,
0, 6, 3, 4, 5, 6, 7, 1,
47,
OPC_CheckChild1Type, MVT::f64,
OPC_RecordChild2,
OPC_MoveChild, 3,
OPC_Scope, 19,
OPC_CheckValueType, MVT::f32,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp64m32), 0|OPFL_Chain|OPFL_FlagInput,
0, 6, 3, 4, 5, 6, 7, 1,
19,
OPC_CheckValueType, MVT::f64,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp64m), 0|OPFL_Chain|OPFL_FlagInput,
0, 6, 3, 4, 5, 6, 7, 1,
0,
67,
OPC_CheckChild1Type, MVT::f80,
OPC_RecordChild2,
OPC_MoveChild, 3,
OPC_Scope, 19,
OPC_CheckValueType, MVT::f32,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp80m32), 0|OPFL_Chain|OPFL_FlagInput,
0, 6, 3, 4, 5, 6, 7, 1,
19,
OPC_CheckValueType, MVT::f64,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp80m64), 0|OPFL_Chain|OPFL_FlagInput,
0, 6, 3, 4, 5, 6, 7, 1,
19,
OPC_CheckValueType, MVT::f80,
OPC_MoveParent,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_FpP80m), 0|OPFL_Chain|OPFL_FlagInput,
0, 6, 3, 4, 5, 6, 7, 1,
0,
0,
47, TARGET_OPCODE(X86ISD::TLSADDR),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_RecordChild1,
OPC_Scope, 20,
OPC_CheckChild1Type, MVT::i32,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/5, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TLS_addr32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
20,
OPC_CheckChild1Type, MVT::i64,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/6, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TLS_addr64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i64, 5, 2, 3, 4, 5, 6,
0,
19, TARGET_OPCODE(X86ISD::LCMPXCHG8_DAG),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_RecordChild1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LCMPXCHG8B), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i32, 5, 2, 3, 4, 5, 6,
17, TARGET_OPCODE(X86ISD::FNSTCW16m),
OPC_RecordNode,
OPC_RecordChild1,
OPC_CheckComplexPat, /*CP*/0, /*#*/1,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::FNSTCW16m), 0|OPFL_Chain,
0, 5, 2, 3, 4, 5, 6,
39, TARGET_OPCODE(X86ISD::TLSCALL),
OPC_RecordChild0,
OPC_Scope, 17,
OPC_CheckPatternPredicate, 3,
OPC_CheckComplexPat, /*CP*/0, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TLSCall_32), 0,
1, MVT::i32, 5, 1, 2, 3, 4, 5,
17,
OPC_CheckPatternPredicate, 4,
OPC_CheckComplexPat, /*CP*/0, /*#*/0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TLSCall_64), 0,
1, MVT::i64, 5, 1, 2, 3, 4, 5,
0,
44, TARGET_OPCODE(ISD::CALLSEQ_END),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::TargetConstant),
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::TargetConstant),
OPC_MoveParent,
OPC_Scope, 12,
OPC_CheckPatternPredicate, 3,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADJCALLSTACKUP32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i32, 2, 1, 2,
12,
OPC_CheckPatternPredicate, 4,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADJCALLSTACKUP64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i64, 2, 1, 2,
0,
30, TARGET_OPCODE(X86ISD::VASTART_SAVE_XMM_REGS),
OPC_RecordNode,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_RecordChild3,
OPC_MoveChild, 3,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_EmitConvertToTarget, 2,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VASTART_SAVE_XMM_REGS), 0|OPFL_Chain|OPFL_Variadic3,
0, 3, 1, 4, 5,
33, TARGET_OPCODE(X86ISD::RET_FLAG),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_Scope, 12,
OPC_MoveChild, 1,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RET), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic1,
0, 0,
15,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::TargetConstant),
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RETI), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic1,
0, 1, 1,
0,
12|128,2, TARGET_OPCODE(X86ISD::BRCOND),
OPC_RecordNode,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BasicBlock),
OPC_MoveParent,
OPC_MoveChild, 2,
OPC_Scope, 15,
OPC_CheckInteger, 13,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JO_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 10,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JNO_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 2,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JB_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 1,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JAE_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 4,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JE_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 9,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JNE_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 3,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JBE_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 0,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JA_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 15,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JS_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 12,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JNS_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 14,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JP_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 11,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JNP_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 7,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JL_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 6,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JGE_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 8,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JLE_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
15,
OPC_CheckInteger, 5,
OPC_MoveParent,
OPC_RecordChild3,
OPC_EmitMergeInputChains1_0,
OPC_EmitCopyToReg, 2, X86::EFLAGS,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JG_4), 0|OPFL_Chain|OPFL_FlagInput,
0, 1, 1,
0,
34, TARGET_OPCODE(ISD::CALLSEQ_START),
OPC_RecordNode,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::TargetConstant),
OPC_MoveParent,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 3,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADJCALLSTACKDOWN32), 0|OPFL_Chain|OPFL_FlagOutput,
1, MVT::i32, 1, 1,
11,
OPC_CheckPatternPredicate, 4,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::ADJCALLSTACKDOWN64), 0|OPFL_Chain|OPFL_FlagOutput,
1, MVT::i64, 1, 1,
0,
66, TARGET_OPCODE(X86ISD::VSHL),
OPC_RecordChild0,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 36, MVT::v2i64,
OPC_Scope, 16,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 5, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSLLDQri), 0,
1, MVT::v2i64, 2, 0, 3,
16,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 5, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDQri), 0,
1, MVT::v2i64, 2, 0, 3,
0,
14, MVT::v1i64,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 6, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLQri), 0,
1, MVT::v1i64, 2, 0, 3,
0,
66, TARGET_OPCODE(X86ISD::VSRL),
OPC_RecordChild0,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 36, MVT::v2i64,
OPC_Scope, 16,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 5, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLDQri), 0,
1, MVT::v2i64, 2, 0, 3,
16,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 5, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDQri), 0,
1, MVT::v2i64, 2, 0, 3,
0,
14, MVT::v1i64,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 6, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLQri), 0,
1, MVT::v1i64, 2, 0, 3,
0,
77, TARGET_OPCODE(X86ISD::SHUFPD),
OPC_RecordChild0,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 30, MVT::v2i64,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPDrri), 0,
1, MVT::v2i64, 3, 0, 1, 3,
12,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrri), 0,
1, MVT::v2i64, 3, 0, 1, 3,
0,
30, MVT::v2f64,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VSHUFPDrri), 0,
1, MVT::v2f64, 3, 0, 1, 3,
12,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrri), 0,
1, MVT::v2f64, 3, 0, 1, 3,
0,
0,
125, TARGET_OPCODE(X86ISD::PALIGN),
OPC_RecordChild0,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckType, MVT::i8,
OPC_MoveParent,
OPC_SwitchType , 12, MVT::v1i64,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR64rr), 0,
1, MVT::v1i64, 3, 1, 0, 3,
12, MVT::v2i32,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR64rr), 0,
1, MVT::v2i32, 3, 1, 0, 3,
12, MVT::v4i16,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR64rr), 0,
1, MVT::v4i16, 3, 1, 0, 3,
12, MVT::v8i8,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR64rr), 0,
1, MVT::v8i8, 3, 1, 0, 3,
12, MVT::v4i32,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0,
1, MVT::v4i32, 3, 1, 0, 3,
12, MVT::v8i16,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0,
1, MVT::v8i16, 3, 1, 0, 3,
12, MVT::v16i8,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0,
1, MVT::v16i8, 3, 1, 0, 3,
12, MVT::v4f32,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0,
1, MVT::v4f32, 3, 1, 0, 3,
0,
80|128,1, TARGET_OPCODE(ISD::BUILD_VECTOR),
OPC_Scope, 55,
OPC_CheckPredicate, 40,
OPC_SwitchType , 22, MVT::v4i32,
OPC_Scope, 9,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0PI), 0,
1, MVT::v4i32, 0,
9,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AVX_SET0PI), 0,
1, MVT::v4i32, 0,
0,
7, MVT::v2i64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0PI), 0,
1, MVT::v2i64, 0,
7, MVT::v8i16,
OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0PI), 0,
1, MVT::v8i16, 0,
7, MVT::v16i8,
OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0PI), 0,
1, MVT::v16i8, 0,
0,
13,
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v4i32,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SETALLONES), 0,
1, MVT::v4i32, 0,
13,
OPC_CheckPredicate, 40,
OPC_CheckType, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_V_SET0), 0,
1, MVT::v2i32, 0,
13,
OPC_CheckPredicate, 64,
OPC_CheckType, MVT::v2i32,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_V_SETALLONES), 0,
1, MVT::v2i32, 0,
107,
OPC_CheckPredicate, 40,
OPC_SwitchType , 9, MVT::v1i64,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_V_SET0), 0,
1, MVT::v1i64, 0,
9, MVT::v4i16,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_V_SET0), 0,
1, MVT::v4i16, 0,
9, MVT::v8i8,
OPC_CheckPatternPredicate, 9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_V_SET0), 0,
1, MVT::v8i8, 0,
22, MVT::v4f32,
OPC_Scope, 9,
OPC_CheckPatternPredicate, 1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0PS), 0,
1, MVT::v4f32, 0,
9,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AVX_SET0PS), 0,
1, MVT::v4f32, 0,
0,
22, MVT::v2f64,
OPC_Scope, 9,
OPC_CheckPatternPredicate, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0PD), 0,
1, MVT::v2f64, 0,
9,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AVX_SET0PD), 0,
1, MVT::v2f64, 0,
0,
9, MVT::v8f32,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AVX_SET0PSY), 0,
1, MVT::v8f32, 0,
9, MVT::v4f64,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::AVX_SET0PDY), 0,
1, MVT::v4f64, 0,
0,
0,
16, TARGET_OPCODE(ISD::BR),
OPC_RecordNode,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::BasicBlock),
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::JMP_4), 0|OPFL_Chain,
0, 1, 1,
54, TARGET_OPCODE(X86ISD::REP_MOVS),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_MoveChild, 1,
OPC_Scope, 11,
OPC_CheckValueType, MVT::i8,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_MOVSB), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i32, 0,
11,
OPC_CheckValueType, MVT::i16,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_MOVSW), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i32, 0,
11,
OPC_CheckValueType, MVT::i32,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_MOVSD), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i32, 0,
11,
OPC_CheckValueType, MVT::i64,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_MOVSQ), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i64, 0,
0,
54, TARGET_OPCODE(X86ISD::REP_STOS),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_MoveChild, 1,
OPC_Scope, 11,
OPC_CheckValueType, MVT::i8,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_STOSB), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i32, 0,
11,
OPC_CheckValueType, MVT::i16,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_STOSW), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i32, 0,
11,
OPC_CheckValueType, MVT::i32,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_STOSD), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i32, 0,
11,
OPC_CheckValueType, MVT::i64,
OPC_MoveParent,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_STOSQ), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i64, 0,
0,
9, TARGET_OPCODE(X86ISD::RDTSC_DAG),
OPC_RecordNode,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::RDTSC), 0|OPFL_Chain|OPFL_FlagOutput,
1, MVT::i64, 0,
8, TARGET_OPCODE(ISD::TRAP),
OPC_RecordNode,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::TRAP), 0|OPFL_Chain,
0, 0,
26, TARGET_OPCODE(X86ISD::EH_RETURN),
OPC_RecordNode,
OPC_RecordChild1,
OPC_Scope, 10,
OPC_CheckChild1Type, MVT::i32,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::EH_RETURN), 0|OPFL_Chain,
0, 1, 1,
10,
OPC_CheckChild1Type, MVT::i64,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::EH_RETURN64), 0|OPFL_Chain,
0, 1, 1,
0,
28, TARGET_OPCODE(X86ISD::MEMBARRIER),
OPC_RecordNode,
OPC_Scope, 9,
OPC_CheckPatternPredicate, 2,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_MemBarrier), 0|OPFL_Chain,
0, 0,
14,
OPC_RecordChild1,
OPC_CheckChild1Type, MVT::i64,
OPC_CheckPatternPredicate, 4,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_MemBarrierNoSSE64), 0|OPFL_Chain,
1, MVT::i32, 1, 1,
0,
8, TARGET_OPCODE(X86ISD::SFENCE),
OPC_RecordNode,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::SFENCE), 0|OPFL_Chain,
0, 0,
8, TARGET_OPCODE(X86ISD::LFENCE),
OPC_RecordNode,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::LFENCE), 0|OPFL_Chain,
0, 0,
8, TARGET_OPCODE(X86ISD::MFENCE),
OPC_RecordNode,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MFENCE), 0|OPFL_Chain,
0, 0,
26, TARGET_OPCODE(X86ISD::MOVHLPS),
OPC_RecordChild0,
OPC_RecordChild1,
OPC_SwitchType , 9, MVT::v4i32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHLPSrr), 0,
1, MVT::v4i32, 2, 0, 1,
9, MVT::v4f32,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHLPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
124, TARGET_OPCODE(X86ISD::MOVSD),
OPC_RecordChild0,
OPC_Scope, 49,
OPC_RecordChild1,
OPC_SwitchType , 21, MVT::v2i64,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f64, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0,
1, MVT::v2i64, 2, 0, 3,
21, MVT::v4i32,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f64, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0,
1, MVT::v4i32, 2, 0, 3,
0,
20,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_RecordChild0,
OPC_CheckChild0Type, MVT::f64,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0,
1, MVT::v2f64, 2, 0, 1,
49,
OPC_RecordChild1,
OPC_SwitchType , 21, MVT::v2f64,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f64, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0,
1, MVT::v2f64, 2, 0, 3,
21, MVT::v4f32,
OPC_EmitInteger, MVT::i32, X86::sub_sd,
OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0,
1, MVT::f64, 2, 1, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0,
1, MVT::v4f32, 2, 0, 3,
0,
0,
124, TARGET_OPCODE(X86ISD::INSERTPS),
OPC_RecordChild0,
OPC_Scope, 79,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f32,
OPC_MoveParent,
OPC_MoveParent,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 22,
OPC_CheckPatternPredicate, 5,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INSERTPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
22,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_EmitConvertToTarget, 3,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VINSERTPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9,
0,
40,
OPC_RecordChild1,
OPC_RecordChild2,
OPC_MoveChild, 2,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_MoveParent,
OPC_Scope, 14,
OPC_CheckPatternPredicate, 5,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::INSERTPSrr), 0,
1, MVT::v4f32, 3, 0, 1, 3,
14,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VINSERTPSrr), 0,
1, MVT::v4f32, 3, 0, 1, 3,
0,
0,
44, TARGET_OPCODE(X86ISD::MOVLHPD),
OPC_RecordChild0,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
5|128,1, TARGET_OPCODE(X86ISD::UNPCKLPD),
OPC_RecordChild0,
OPC_Scope, 101,
OPC_MoveChild, 1,
OPC_SwitchOpcode , 38, TARGET_OPCODE(ISD::SCALAR_TO_VECTOR),
OPC_MoveChild, 0,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 4,
OPC_CheckType, MVT::f64,
OPC_MoveParent,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPDrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
53, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
17,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
0,
27,
OPC_RecordChild1,
OPC_CheckType, MVT::v2f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
90, TARGET_OPCODE(X86ISD::UNPCKLPS),
OPC_RecordChild0,
OPC_Scope, 58,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
17,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild1,
OPC_CheckType, MVT::v4f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
0,
90, TARGET_OPCODE(X86ISD::UNPCKHPS),
OPC_RecordChild0,
OPC_Scope, 58,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v4f32,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKHPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
17,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild1,
OPC_CheckType, MVT::v4f32,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKHPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPSrr), 0,
1, MVT::v4f32, 2, 0, 1,
0,
0,
90, TARGET_OPCODE(X86ISD::UNPCKHPD),
OPC_RecordChild0,
OPC_Scope, 58,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::LOAD),
OPC_RecordMemRef,
OPC_RecordNode,
OPC_CheckFoldableChainNode,
OPC_RecordChild1,
OPC_CheckPredicate, 2,
OPC_CheckPredicate, 3,
OPC_CheckPredicate, 19,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_Scope, 19,
OPC_CheckPatternPredicate, 0,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
17,
OPC_CheckComplexPat, /*CP*/0, /*#*/2,
OPC_EmitMergeInputChains1_1,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPSrm), 0|OPFL_Chain|OPFL_MemRefs,
1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7,
0,
27,
OPC_RecordChild1,
OPC_CheckType, MVT::v2f64,
OPC_Scope, 11,
OPC_CheckPatternPredicate, 0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VUNPCKHPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
9,
OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPDrr), 0,
1, MVT::v2f64, 2, 0, 1,
0,
0,
50, TARGET_OPCODE(X86ISD::FSRL),
OPC_RecordChild0,
OPC_RecordChild1,
OPC_MoveChild, 1,
OPC_CheckOpcode, TARGET_OPCODE(ISD::Constant),
OPC_CheckPredicate, 9,
OPC_CheckType, MVT::i32,
OPC_MoveParent,
OPC_CheckType, MVT::v2f64,
OPC_Scope, 16,
OPC_CheckPatternPredicate, 0,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 5, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::VPSRLDQri), 0,
1, MVT::v2f64, 2, 0, 3,
16,
OPC_CheckPatternPredicate, 2,
OPC_EmitConvertToTarget, 1,
OPC_EmitNodeXForm, 5, 2,
OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDQri), 0,
1, MVT::v2f64, 2, 0, 3,
0,
10, TARGET_OPCODE(X86ISD::MINGW_ALLOCA),
OPC_RecordNode,
OPC_CaptureFlagInput,
OPC_EmitMergeInputChains1_0,
OPC_MorphNodeTo, TARGET_OPCODE(X86::MINGW_ALLOCA), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput,
1, MVT::i32, 0,
0,
0
}; // Total Array size is 92067 bytes
#undef TARGET_OPCODE
return SelectCodeCommon(N, MatcherTable,sizeof(MatcherTable));
}
bool CheckPatternPredicate(unsigned PredNo) const {
switch (PredNo) {
default: assert(0 && "Invalid predicate in table?");
case 0: return (Subtarget->hasAVX());
case 1: return (Subtarget->hasSSE1());
case 2: return (Subtarget->hasSSE2());
case 3: return (!Subtarget->is64Bit());
case 4: return (Subtarget->is64Bit());
case 5: return (Subtarget->hasSSE41());
case 6: return (TM.getCodeModel() == CodeModel::Small ||TM.getCodeModel() == CodeModel::Kernel) && (TM.getRelocationModel() == Reloc::Static);
case 7: return (!Subtarget->hasSSE1());
case 8: return (!Subtarget->hasSSE2());
case 9: return (Subtarget->hasMMX() && !Subtarget->hasAVX());
case 10: return (Subtarget->hasSSE3());
case 11: return (!OptForSize) && (Subtarget->hasSSE2());
case 12: return (Subtarget->hasSSSE3());
case 13: return (Subtarget->hasSSE42());
case 14: return (Subtarget->hasAVX()) && (Subtarget->hasAES());
case 15: return (Subtarget->hasAES());
case 16: return (Subtarget->hasCMov());
case 17: return (!Subtarget->hasCMov());
case 18: return (!Subtarget->hasSSE1()) && (Subtarget->hasCMov());
case 19: return (!Subtarget->hasSSE2()) && (Subtarget->hasCMov());
case 20: return (Subtarget->hasSSE2()) && (OptForSize);
case 21: return (Subtarget->hasSSE2()) && (!OptForSize);
case 22: return (TM.getCodeModel() != CodeModel::Small &&TM.getCodeModel() != CodeModel::Kernel);
case 23: return (TM.getCodeModel() == CodeModel::Small);
case 24: return (TM.getCodeModel() == CodeModel::Kernel);
case 25: return (Subtarget->hasSSE1()) && (OptForSize);
case 26: return (!Subtarget->is64Bit()) && (TM.getRelocationModel() != Reloc::PIC_);
case 27: return (Subtarget->hasMMX() && !Subtarget->hasAVX()) && (Subtarget->is64Bit());
case 28: return (!Subtarget->isTargetWin64());
case 29: return (Subtarget->isTargetWin64());
case 30: return (Subtarget->IsLegalToCallImmediateAddr(TM));
}
}
bool CheckNodePredicate(SDNode *Node, unsigned PredNo) const {
switch (PredNo) {
default: assert(0 && "Invalid predicate in table?");
case 0: { // Predicate_alignednontemporalstore
SDNode *N = Node;
if (StoreSDNode *ST = dyn_cast<StoreSDNode>(N))
return ST->isNonTemporal() && !ST->isTruncatingStore() &&
ST->getAddressingMode() == ISD::UNINDEXED &&
ST->getAlignment() >= 16;
return false;
}
case 1: { // Predicate_nontemporalstore
SDNode *N = Node;
if (StoreSDNode *ST = dyn_cast<StoreSDNode>(N))
return ST->isNonTemporal();
return false;
}
case 2: { // Predicate_unindexedload
SDNode *N = Node;
return cast<LoadSDNode>(N)->getAddressingMode() == ISD::UNINDEXED;
}
case 3: { // Predicate_load
SDNode *N = Node;
return cast<LoadSDNode>(N)->getExtensionType() == ISD::NON_EXTLOAD;
}
case 4: { // Predicate_dsload
SDNode *N = Node;
if (const Value *Src = cast<LoadSDNode>(N)->getSrcValue())
if (const PointerType *PT = dyn_cast<PointerType>(Src->getType()))
if (PT->getAddressSpace() > 255)
return false;
return true;
}
case 5: { // Predicate_unindexedstore
SDNode *N = Node;
return cast<StoreSDNode>(N)->getAddressingMode() == ISD::UNINDEXED;
}
case 6: { // Predicate_store
SDNode *N = Node;
return !cast<StoreSDNode>(N)->isTruncatingStore();
}
case 7: { // Predicate_loadi16
SDNode *N = Node;
LoadSDNode *LD = cast<LoadSDNode>(N);
if (const Value *Src = LD->getSrcValue())
if (const PointerType *PT = dyn_cast<PointerType>(Src->getType()))
if (PT->getAddressSpace() > 255)
return false;
ISD::LoadExtType ExtType = LD->getExtensionType();
if (ExtType == ISD::NON_EXTLOAD)
return true;
if (ExtType == ISD::EXTLOAD)
return LD->getAlignment() >= 2 && !LD->isVolatile();
return false;
}
case 8: { // Predicate_loadi32
SDNode *N = Node;
LoadSDNode *LD = cast<LoadSDNode>(N);
if (const Value *Src = LD->getSrcValue())
if (const PointerType *PT = dyn_cast<PointerType>(Src->getType()))
if (PT->getAddressSpace() > 255)
return false;
ISD::LoadExtType ExtType = LD->getExtensionType();
if (ExtType == ISD::NON_EXTLOAD)
return true;
if (ExtType == ISD::EXTLOAD)
return LD->getAlignment() >= 4 && !LD->isVolatile();
return false;
}
case 9: { // Predicate_immSext8
ConstantSDNode*N = cast<ConstantSDNode>(Node);
return immSext8(N);
}
case 10: { // Predicate_i64immSExt32
ConstantSDNode*N = cast<ConstantSDNode>(Node);
return i64immSExt32(N);
}
case 11: { // Predicate_movlp
SDNode *N = Node;
return X86::isMOVLPMask(cast<ShuffleVectorSDNode>(N));
}
case 12: { // Predicate_unpckh
SDNode *N = Node;
return X86::isUNPCKHMask(cast<ShuffleVectorSDNode>(N));
}
case 13: { // Predicate_srl_su
SDNode *N = Node;
return N->hasOneUse();
}
case 14: { // Predicate_trunc_su
SDNode *N = Node;
return N->hasOneUse();
}
case 15: { // Predicate_truncstore
SDNode *N = Node;
return cast<StoreSDNode>(N)->isTruncatingStore();
}
case 16: { // Predicate_truncstoref32
SDNode *N = Node;
return cast<StoreSDNode>(N)->getMemoryVT() == MVT::f32;
}
case 17: { // Predicate_truncstoref64
SDNode *N = Node;
return cast<StoreSDNode>(N)->getMemoryVT() == MVT::f64;
}
case 18: { // Predicate_alignedstore
SDNode *N = Node;
return cast<StoreSDNode>(N)->getAlignment() >= 16;
}
case 19: { // Predicate_memop
SDNode *N = Node;
return Subtarget->hasVectorUAMem()
|| cast<LoadSDNode>(N)->getAlignment() >= 16;
}
case 20: { // Predicate_movshdup
SDNode *N = Node;
return X86::isMOVSHDUPMask(cast<ShuffleVectorSDNode>(N));
}
case 21: { // Predicate_movsldup
SDNode *N = Node;
return X86::isMOVSLDUPMask(cast<ShuffleVectorSDNode>(N));
}
case 22: { // Predicate_pshufd
SDNode *N = Node;
return X86::isPSHUFDMask(cast<ShuffleVectorSDNode>(N));
}
case 23: { // Predicate_movddup
SDNode *N = Node;
return X86::isMOVDDUPMask(cast<ShuffleVectorSDNode>(N));
}
case 24: { // Predicate_pshufhw
SDNode *N = Node;
return X86::isPSHUFHWMask(cast<ShuffleVectorSDNode>(N));
}
case 25: { // Predicate_pshuflw
SDNode *N = Node;
return X86::isPSHUFLWMask(cast<ShuffleVectorSDNode>(N));
}
case 26: { // Predicate_mmx_pshufw
SDNode *N = Node;
return X86::isPSHUFDMask(cast<ShuffleVectorSDNode>(N));
}
case 27: { // Predicate_unpckl
SDNode *N = Node;
return X86::isUNPCKLMask(cast<ShuffleVectorSDNode>(N));
}
case 28: { // Predicate_shufp
SDNode *N = Node;
return X86::isSHUFPMask(cast<ShuffleVectorSDNode>(N));
}
case 29: { // Predicate_mmx_unpckh
SDNode *N = Node;
return X86::isUNPCKHMask(cast<ShuffleVectorSDNode>(N));
}
case 30: { // Predicate_mmx_unpckl
SDNode *N = Node;
return X86::isUNPCKLMask(cast<ShuffleVectorSDNode>(N));
}
case 31: { // Predicate_movlhps
SDNode *N = Node;
return X86::isMOVLHPSMask(cast<ShuffleVectorSDNode>(N));
}
case 32: { // Predicate_movhlps_undef
SDNode *N = Node;
return X86::isMOVHLPS_v_undef_Mask(cast<ShuffleVectorSDNode>(N));
}
case 33: { // Predicate_movhlps
SDNode *N = Node;
return X86::isMOVHLPSMask(cast<ShuffleVectorSDNode>(N));
}
case 34: { // Predicate_unpckl_undef
SDNode *N = Node;
return X86::isUNPCKL_v_undef_Mask(cast<ShuffleVectorSDNode>(N));
}
case 35: { // Predicate_unpckh_undef
SDNode *N = Node;
return X86::isUNPCKH_v_undef_Mask(cast<ShuffleVectorSDNode>(N));
}
case 36: { // Predicate_movl
SDNode *N = Node;
return X86::isMOVLMask(cast<ShuffleVectorSDNode>(N));
}
case 37: { // Predicate_splat_lo
SDNode *N = Node;
ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(N);
return SVOp->isSplat() && SVOp->getSplatIndex() == 0;
}
case 38: { // Predicate_mmx_unpckl_undef
SDNode *N = Node;
return X86::isUNPCKL_v_undef_Mask(cast<ShuffleVectorSDNode>(N));
}
case 39: { // Predicate_mmx_unpckh_undef
SDNode *N = Node;
return X86::isUNPCKH_v_undef_Mask(cast<ShuffleVectorSDNode>(N));
}
case 40: { // Predicate_immAllZerosV
SDNode *N = Node;
return ISD::isBuildVectorAllZeros(N);
}
case 41: { // Predicate_palign
SDNode *N = Node;
return X86::isPALIGNRMask(cast<ShuffleVectorSDNode>(N));
}
case 42: { // Predicate_and_su
SDNode *N = Node;
return N->hasOneUse();
}
case 43: { // Predicate_loadi16_anyext
SDNode *N = Node;
LoadSDNode *LD = cast<LoadSDNode>(N);
if (const Value *Src = LD->getSrcValue())
if (const PointerType *PT = dyn_cast<PointerType>(Src->getType()))
if (PT->getAddressSpace() > 255)
return false;
ISD::LoadExtType ExtType = LD->getExtensionType();
if (ExtType == ISD::EXTLOAD)
return LD->getAlignment() >= 2 && !LD->isVolatile();
return false;
}
case 44: { // Predicate_memop64
SDNode *N = Node;
return cast<LoadSDNode>(N)->getAlignment() >= 8;
}
case 45: { // Predicate_gsload
SDNode *N = Node;
if (const Value *Src = cast<LoadSDNode>(N)->getSrcValue())
if (const PointerType *PT = dyn_cast<PointerType>(Src->getType()))
return PT->getAddressSpace() == 256;
return false;
}
case 46: { // Predicate_fsload
SDNode *N = Node;
if (const Value *Src = cast<LoadSDNode>(N)->getSrcValue())
if (const PointerType *PT = dyn_cast<PointerType>(Src->getType()))
return PT->getAddressSpace() == 257;
return false;
}
case 47: { // Predicate_sextload
SDNode *N = Node;
return cast<LoadSDNode>(N)->getExtensionType() == ISD::SEXTLOAD;
}
case 48: { // Predicate_sextloadi8
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i8;
}
case 49: { // Predicate_sextloadi16
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 50: { // Predicate_zextload
SDNode *N = Node;
return cast<LoadSDNode>(N)->getExtensionType() == ISD::ZEXTLOAD;
}
case 51: { // Predicate_zextloadi8
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i8;
}
case 52: { // Predicate_zextloadi16
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 53: { // Predicate_zextloadi1
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i1;
}
case 54: { // Predicate_extload
SDNode *N = Node;
return cast<LoadSDNode>(N)->getExtensionType() == ISD::EXTLOAD;
}
case 55: { // Predicate_extloadi1
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i1;
}
case 56: { // Predicate_extloadi8
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i8;
}
case 57: { // Predicate_extloadi16
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 58: { // Predicate_sextloadi32
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 59: { // Predicate_zextloadi32
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 60: { // Predicate_extloadi32
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 61: { // Predicate_extloadf32
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::f32;
}
case 62: { // Predicate_extloadf64
SDNode *N = Node;
return cast<LoadSDNode>(N)->getMemoryVT() == MVT::f64;
}
case 63: { // Predicate_alignedload
SDNode *N = Node;
return cast<LoadSDNode>(N)->getAlignment() >= 16;
}
case 64: { // Predicate_immAllOnesV
SDNode *N = Node;
return ISD::isBuildVectorAllOnes(N);
}
case 65: { // Predicate_i64immZExt32
ConstantSDNode*N = cast<ConstantSDNode>(Node);
// i64immZExt32 predicate - True if the 64-bit immediate fits in a 32-bit
// unsignedsign extended field.
return (uint64_t)N->getZExtValue() == (uint32_t)N->getZExtValue();
}
case 66: { // Predicate_or_is_add
SDNode *N = Node;
if (ConstantSDNode *CN = dyn_cast<ConstantSDNode>(N->getOperand(1)))
return CurDAG->MaskedValueIsZero(N->getOperand(0), CN->getAPIntValue());
unsigned BitWidth = N->getValueType(0).getScalarType().getSizeInBits();
APInt Mask = APInt::getAllOnesValue(BitWidth);
APInt KnownZero0, KnownOne0;
CurDAG->ComputeMaskedBits(N->getOperand(0), Mask, KnownZero0, KnownOne0, 0);
APInt KnownZero1, KnownOne1;
CurDAG->ComputeMaskedBits(N->getOperand(1), Mask, KnownZero1, KnownOne1, 0);
return (~KnownZero0 & ~KnownZero1) == 0;
}
case 67: { // Predicate_atomic_swap_32
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 68: { // Predicate_atomic_swap_16
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 69: { // Predicate_atomic_swap_8
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8;
}
case 70: { // Predicate_atomic_swap_64
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64;
}
case 71: { // Predicate_atomic_load_add_32
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 72: { // Predicate_atomic_load_add_16
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 73: { // Predicate_atomic_load_add_8
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8;
}
case 74: { // Predicate_atomic_load_add_64
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64;
}
case 75: { // Predicate_atomic_load_and_32
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 76: { // Predicate_atomic_load_and_16
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 77: { // Predicate_atomic_load_and_8
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8;
}
case 78: { // Predicate_atomic_load_and_64
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64;
}
case 79: { // Predicate_atomic_load_or_32
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 80: { // Predicate_atomic_load_or_16
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 81: { // Predicate_atomic_load_or_8
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8;
}
case 82: { // Predicate_atomic_load_or_64
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64;
}
case 83: { // Predicate_atomic_load_xor_32
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 84: { // Predicate_atomic_load_xor_16
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 85: { // Predicate_atomic_load_xor_8
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8;
}
case 86: { // Predicate_atomic_load_xor_64
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64;
}
case 87: { // Predicate_atomic_load_nand_32
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 88: { // Predicate_atomic_load_nand_16
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 89: { // Predicate_atomic_load_nand_8
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8;
}
case 90: { // Predicate_atomic_load_nand_64
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64;
}
case 91: { // Predicate_atomic_load_min_32
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 92: { // Predicate_atomic_load_min_16
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 93: { // Predicate_atomic_load_min_64
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64;
}
case 94: { // Predicate_atomic_load_max_32
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 95: { // Predicate_atomic_load_max_16
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 96: { // Predicate_atomic_load_max_64
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64;
}
case 97: { // Predicate_atomic_load_umin_32
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 98: { // Predicate_atomic_load_umin_16
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 99: { // Predicate_atomic_load_umin_64
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64;
}
case 100: { // Predicate_atomic_load_umax_32
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32;
}
case 101: { // Predicate_atomic_load_umax_16
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16;
}
case 102: { // Predicate_atomic_load_umax_64
SDNode *N = Node;
return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64;
}
case 103: { // Predicate_def32
SDNode *N = Node;
return N->getOpcode() != ISD::TRUNCATE &&
N->getOpcode() != TargetOpcode::EXTRACT_SUBREG &&
N->getOpcode() != ISD::CopyFromReg &&
N->getOpcode() != X86ISD::CMOV;
}
case 104: { // Predicate_fpimm0
ConstantFPSDNode*N = cast<ConstantFPSDNode>(Node);
return N->isExactlyValue(+0.0);
}
case 105: { // Predicate_fpimm1
ConstantFPSDNode*N = cast<ConstantFPSDNode>(Node);
return N->isExactlyValue(+1.0);
}
case 106: { // Predicate_fp32imm0
ConstantFPSDNode*N = cast<ConstantFPSDNode>(Node);
return N->isExactlyValue(+0.0);
}
case 107: { // Predicate_fpimmneg0
ConstantFPSDNode*N = cast<ConstantFPSDNode>(Node);
return N->isExactlyValue(-0.0);
}
case 108: { // Predicate_fpimmneg1
ConstantFPSDNode*N = cast<ConstantFPSDNode>(Node);
return N->isExactlyValue(-1.0);
}
}
}
bool CheckComplexPattern(SDNode *Root, SDValue N,
unsigned PatternNo, SmallVectorImpl<SDValue> &Result) {
unsigned NextRes = Result.size();
switch (PatternNo) {
default: assert(0 && "Invalid pattern # in table?");
case 0:
Result.resize(NextRes+5);
return SelectAddr(Root, N, Result[NextRes+0], Result[NextRes+1], Result[NextRes+2], Result[NextRes+3], Result[NextRes+4]);
case 1:
Result.resize(NextRes+6);
return SelectScalarSSELoad(Root, N, Result[NextRes+0], Result[NextRes+1], Result[NextRes+2], Result[NextRes+3], Result[NextRes+4], Result[NextRes+5]);
case 2:
Result.resize(NextRes+6);
return SelectScalarSSELoad(Root, N, Result[NextRes+0], Result[NextRes+1], Result[NextRes+2], Result[NextRes+3], Result[NextRes+4], Result[NextRes+5]);
case 3:
Result.resize(NextRes+5);
return SelectLEAAddr(Root, N, Result[NextRes+0], Result[NextRes+1], Result[NextRes+2], Result[NextRes+3], Result[NextRes+4]);
case 4:
Result.resize(NextRes+5);
return SelectLEAAddr(Root, N, Result[NextRes+0], Result[NextRes+1], Result[NextRes+2], Result[NextRes+3], Result[NextRes+4]);
case 5:
Result.resize(NextRes+5);
return SelectTLSADDRAddr(Root, N, Result[NextRes+0], Result[NextRes+1], Result[NextRes+2], Result[NextRes+3], Result[NextRes+4]);
case 6:
Result.resize(NextRes+5);
return SelectTLSADDRAddr(Root, N, Result[NextRes+0], Result[NextRes+1], Result[NextRes+2], Result[NextRes+3], Result[NextRes+4]);
}
}
SDValue RunSDNodeXForm(SDValue V, unsigned XFormNo) {
switch (XFormNo) {
default: assert(0 && "Invalid xform # in table?");
case 0: {
SDNode *N = V.getNode();
return getI8Imm(X86::getShuffleSHUFImmediate(N));
}
case 1: {
SDNode *N = V.getNode();
return getI8Imm(X86::getShufflePSHUFHWImmediate(N));
}
case 2: {
SDNode *N = V.getNode();
return getI8Imm(X86::getShufflePSHUFLWImmediate(N));
}
case 3: {
SDNode *N = V.getNode();
return getI8Imm(X86::getShuffleSHUFImmediate(N));
}
case 4: {
SDNode *N = V.getNode();
return getI8Imm(X86::getShufflePALIGNRImmediate(N));
}
case 5: {
ConstantSDNode *N = cast<ConstantSDNode>(V.getNode());
// Transformation function: imm >> 3
return getI32Imm(N->getZExtValue() >> 3);
}
case 6: {
ConstantSDNode *N = cast<ConstantSDNode>(V.getNode());
// Transformation function: get the low 32 bits.
return getI32Imm((unsigned)N->getZExtValue());
}
}
}