| /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |
| |* *| |
| |* DAG Instruction Selector for the Mips 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. |
| |
| // If GET_DAGISEL_DECL is #defined with any value, only function |
| // declarations will be included when this file is included. |
| // If GET_DAGISEL_BODY is #defined, its value should be the name of |
| // the instruction selector class. Function bodies will be emitted |
| // and each function's name will be qualified with the name of the |
| // class. |
| // |
| // When neither of the GET_DAGISEL* macros is defined, the functions |
| // are emitted inline. |
| |
| #if defined(GET_DAGISEL_DECL) && defined(GET_DAGISEL_BODY) |
| #error GET_DAGISEL_DECL and GET_DAGISEL_BODY cannot be both defined, undef both for inline definitions |
| #endif |
| |
| #ifdef GET_DAGISEL_BODY |
| #define LOCAL_DAGISEL_STRINGIZE(X) LOCAL_DAGISEL_STRINGIZE_(X) |
| #define LOCAL_DAGISEL_STRINGIZE_(X) #X |
| static_assert(sizeof(LOCAL_DAGISEL_STRINGIZE(GET_DAGISEL_BODY)) > 1, |
| "GET_DAGISEL_BODY is empty: it should be defined with the class name"); |
| #undef LOCAL_DAGISEL_STRINGIZE_ |
| #undef LOCAL_DAGISEL_STRINGIZE |
| #endif |
| |
| #if !defined(GET_DAGISEL_DECL) && !defined(GET_DAGISEL_BODY) |
| #define DAGISEL_INLINE 1 |
| #else |
| #define DAGISEL_INLINE 0 |
| #endif |
| |
| #if !DAGISEL_INLINE |
| #define DAGISEL_CLASS_COLONCOLON GET_DAGISEL_BODY :: |
| #else |
| #define DAGISEL_CLASS_COLONCOLON |
| #endif |
| |
| #ifdef GET_DAGISEL_DECL |
| void SelectCode(SDNode *N); |
| #endif |
| #if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE |
| void DAGISEL_CLASS_COLONCOLON SelectCode(SDNode *N) |
| { |
| // Some target values are emitted as 2 bytes, TARGET_VAL handles |
| // this. |
| #define TARGET_VAL(X) X & 255, unsigned(X) >> 8 |
| static const unsigned char MatcherTable[] = { |
| OPC_SwitchOpcode , 103|128,7, TARGET_VAL(ISD::STORE), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_Scope, 82|128,1, |
| OPC_RecordChild1, |
| OPC_Scope, 125, |
| OPC_CheckChild1Type, MVT::f64, |
| OPC_Scope, 82, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 0, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC1_D64_MMR6), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 1, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC164), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 2, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC1), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 3, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC1_MM_D32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 4, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC1_MM_D64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 37, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 5, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDXC1), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 2, 3, |
| 11, |
| OPC_CheckPatternPredicate, 6, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDXC164), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 2, 3, |
| 0, |
| 0, |
| 80, |
| OPC_CheckChild1Type, MVT::f32, |
| OPC_Scope, 37, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWC1), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWC1_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 37, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 9, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWXC1), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 2, 3, |
| 11, |
| OPC_CheckPatternPredicate, 10, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWXC1_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 2, 3, |
| 0, |
| 0, |
| 0, |
| 26, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SW), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 4, 2, 3, |
| 114|128,5, |
| OPC_RecordChild1, |
| OPC_Scope, 44|128,2, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_Scope, 38, |
| OPC_CheckPredicate, 2, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 3, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SB), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 16, |
| OPC_CheckPredicate, 4, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SH), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 79, |
| OPC_CheckPredicate, 1, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SW), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 11, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWC2), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 12, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC2), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 13, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWC3), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 14, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC3), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 38, |
| OPC_CheckPredicate, 2, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 3, |
| OPC_CheckPatternPredicate, 15, |
| OPC_CheckComplexPat, /*CP*/3, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SbRxRyOffMemX16), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 16, |
| OPC_CheckPredicate, 4, |
| OPC_CheckPatternPredicate, 15, |
| OPC_CheckComplexPat, /*CP*/3, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ShRxRyOffMemX16), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 16, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 15, |
| OPC_CheckComplexPat, /*CP*/4, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SwRxSpImmX16), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 38, |
| OPC_CheckPredicate, 2, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 3, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SB_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 16, |
| OPC_CheckPredicate, 4, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SH_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 78, |
| OPC_CheckPredicate, 1, |
| OPC_Scope, 30, |
| OPC_CheckPatternPredicate, 8, |
| OPC_Scope, 12, |
| OPC_CheckComplexPat, /*CP*/5, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SW16_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 12, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SW_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 42, |
| OPC_CheckPatternPredicate, 16, |
| OPC_Scope, 24, |
| OPC_CheckComplexPat, /*CP*/6, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_Scope, 8, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC2_MMR6), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 8, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWC2_MMR6), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 12, |
| OPC_CheckComplexPat, /*CP*/5, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SW16_MMR6), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 0, |
| 0, |
| 39, |
| OPC_CheckChild1Type, MVT::f32, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 17, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWC1), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 18, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWC1_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 84, |
| OPC_CheckChild1Type, MVT::f64, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 19, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC164), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 20, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC1), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 21, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC1_MM_D32), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 22, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC1_MM_D64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 23, |
| OPC_CheckComplexPat, /*CP*/7, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDC1_D64_MMR6), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 80, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_Scope, 55, |
| OPC_CheckPredicate, 2, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 3, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SB64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 16, |
| OPC_CheckPredicate, 4, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SH64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 16, |
| OPC_CheckPredicate, 5, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SW64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 16, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 25, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SD), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 21, |
| OPC_CheckChild1Type, MVT::v16i8, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/8, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ST_B), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 21, |
| OPC_CheckChild1Type, MVT::v8i16, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/9, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ST_H), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 21, |
| OPC_CheckChild1Type, MVT::v4i32, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/10, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ST_W), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 21, |
| OPC_CheckChild1Type, MVT::v2i64, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/11, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ST_D), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 21, |
| OPC_CheckChild1Type, MVT::v8f16, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 27, |
| OPC_CheckComplexPat, /*CP*/9, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ST_H), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 21, |
| OPC_CheckChild1Type, MVT::v4f32, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 27, |
| OPC_CheckComplexPat, /*CP*/10, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ST_W), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 21, |
| OPC_CheckChild1Type, MVT::v2f64, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 27, |
| OPC_CheckComplexPat, /*CP*/11, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ST_D), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 32, |
| OPC_CheckChild1Type, MVT::v2i16, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 28, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 1, 5, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SW), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 6, 3, 4, |
| 32, |
| OPC_CheckChild1Type, MVT::v4i8, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 28, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 1, 5, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SW), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 6, 3, 4, |
| 22, |
| OPC_CheckChild1Type, MVT::f16, |
| OPC_RecordChild2, |
| OPC_RecordChild2, |
| OPC_CheckPredicate, 0, |
| OPC_CheckPredicate, 1, |
| OPC_CheckPatternPredicate, 27, |
| OPC_CheckComplexPat, /*CP*/8, /*#*/3, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ST_F16), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 2, 3, |
| 0, |
| 0, |
| 109|128,11, TARGET_VAL(ISD::LOAD), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_Scope, 121, |
| OPC_RecordChild1, |
| OPC_CheckPredicate, 6, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 38, |
| OPC_CheckPredicate, 7, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LBu), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LHu), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 38, |
| OPC_CheckPredicate, 10, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LB), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LH), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 16, |
| OPC_CheckPredicate, 11, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LW), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 18, |
| OPC_CheckPredicate, 10, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LH_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 61, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 6, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 15, |
| OPC_CheckPredicate, 7, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LBUX), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 15, |
| OPC_CheckPredicate, 10, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LHX), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWX), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 57|128,7, |
| OPC_RecordChild1, |
| OPC_CheckPredicate, 6, |
| OPC_Scope, 20, |
| OPC_CheckPredicate, 10, |
| OPC_CheckPredicate, 8, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LB), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 7, |
| OPC_CheckPredicate, 8, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LBu), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 10, |
| OPC_CheckPredicate, 9, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LH), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 7, |
| OPC_CheckPredicate, 9, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LHu), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 81, |
| OPC_CheckPredicate, 11, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LW), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 11, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWC2), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 12, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC2), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 13, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWC3), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 14, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC3), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 57, |
| OPC_CheckPredicate, 12, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 13, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LBu), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LBu), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LHu), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 20, |
| OPC_CheckPredicate, 10, |
| OPC_CheckPredicate, 8, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LB64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 7, |
| OPC_CheckPredicate, 8, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LBu64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 10, |
| OPC_CheckPredicate, 9, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LH64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 7, |
| OPC_CheckPredicate, 9, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LHu64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 10, |
| OPC_CheckPredicate, 14, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LW64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 7, |
| OPC_CheckPredicate, 14, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 25, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWu), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 18, |
| OPC_CheckPredicate, 11, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 25, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LD), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 74, |
| OPC_CheckPredicate, 12, |
| OPC_CheckType, MVT::i64, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 13, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LB64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LB64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LH64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LW64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 0, |
| 20, |
| OPC_CheckPredicate, 10, |
| OPC_CheckPredicate, 8, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_CheckComplexPat, /*CP*/3, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LbRxRyOffMemX16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 7, |
| OPC_CheckPredicate, 8, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_CheckComplexPat, /*CP*/3, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LbuRxRyOffMemX16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 10, |
| OPC_CheckPredicate, 9, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_CheckComplexPat, /*CP*/3, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LhRxRyOffMemX16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 7, |
| OPC_CheckPredicate, 9, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_CheckComplexPat, /*CP*/3, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LhuRxRyOffMemX16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 18, |
| OPC_CheckPredicate, 11, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_CheckComplexPat, /*CP*/4, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LwRxSpImmX16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 40, |
| OPC_CheckPredicate, 12, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 15, |
| OPC_CheckComplexPat, /*CP*/3, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LbuRxRyOffMemX16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 15, |
| OPC_CheckComplexPat, /*CP*/3, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LhuRxRyOffMemX16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 20, |
| OPC_CheckPredicate, 10, |
| OPC_CheckPredicate, 8, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LB_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 7, |
| OPC_CheckPredicate, 8, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LBu_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 20, |
| OPC_CheckPredicate, 10, |
| OPC_CheckPredicate, 9, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LH_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 40, |
| OPC_CheckPredicate, 7, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LHu_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 30, |
| OPC_CheckComplexPat, /*CP*/12, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWU_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 34, |
| OPC_CheckPredicate, 11, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_Scope, 12, |
| OPC_CheckComplexPat, /*CP*/5, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LW16_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 12, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LW_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 57, |
| OPC_CheckPredicate, 12, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 13, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LBu_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LBu_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LHu_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 33|128,1, |
| OPC_CheckPredicate, 11, |
| OPC_SwitchType , 42, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_Scope, 12, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LW_MMR6), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 24, |
| OPC_CheckComplexPat, /*CP*/6, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_Scope, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC2_MMR6), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWC2_MMR6), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 0, |
| 77, MVT::f64, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 0, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC1_D64_MMR6), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 1, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC164), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 2, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC1), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 3, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC1_MM_D32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 4, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC1_MM_D64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 2, 3, |
| 0, |
| 32, MVT::f32, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWC1), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f32, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/0, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWC1_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f32, 2, 2, 3, |
| 0, |
| 0, |
| 0, |
| 69, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 6, |
| OPC_CheckPredicate, 11, |
| OPC_SwitchType , 26, MVT::f32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 9, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWXC1), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 10, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWXC1_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f32, 2, 1, 2, |
| 0, |
| 26, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 5, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDXC1), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 6, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDXC164), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 1, 2, |
| 0, |
| 0, |
| 46|128,2, |
| OPC_RecordChild1, |
| OPC_CheckPredicate, 6, |
| OPC_CheckPredicate, 11, |
| OPC_SwitchType , 32, MVT::f32, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 17, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWC1), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f32, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 18, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWC1_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f32, 2, 2, 3, |
| 0, |
| 77, MVT::f64, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 19, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC164), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 20, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC1), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 21, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC1_MM_D32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 22, |
| OPC_CheckComplexPat, /*CP*/2, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC1_MM_D64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 2, 3, |
| 14, |
| OPC_CheckPatternPredicate, 23, |
| OPC_CheckComplexPat, /*CP*/7, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDC1_D64_MMR6), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f64, 2, 2, 3, |
| 0, |
| 14, MVT::f16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_CheckComplexPat, /*CP*/8, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LD_F16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::f16, 2, 2, 3, |
| 14, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/8, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LD_B), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::v16i8, 2, 2, 3, |
| 14, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/9, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LD_H), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::v8i16, 2, 2, 3, |
| 14, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/10, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LD_W), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::v4i32, 2, 2, 3, |
| 14, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/11, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LD_D), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::v2i64, 2, 2, 3, |
| 25, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::LW), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0|OPFL_Chain, |
| MVT::v2i16, 2, 4, 5, |
| 25, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::LW), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0|OPFL_Chain, |
| MVT::v4i8, 2, 4, 5, |
| 14, MVT::v8f16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_CheckComplexPat, /*CP*/9, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LD_H), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::v8f16, 2, 2, 3, |
| 14, MVT::v4f32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_CheckComplexPat, /*CP*/10, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LD_W), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::v4f32, 2, 2, 3, |
| 14, MVT::v2f64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_CheckComplexPat, /*CP*/11, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LD_D), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::v2f64, 2, 2, 3, |
| 0, |
| 0, |
| 79|128,20, TARGET_VAL(ISD::BRCOND), |
| OPC_RecordNode, |
| OPC_Scope, 111|128,19, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SETCC), |
| OPC_Scope, 52|128,4, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 21|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_Scope, 68, |
| OPC_CheckChild0Integer, 2, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 15, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 22, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 31, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT0), 0|OPFL_Chain, |
| 3, 1, 4, 3, |
| 22, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 31, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT1), 0|OPFL_Chain, |
| 3, 1, 4, 3, |
| 0, |
| 72, |
| OPC_CheckChild0Integer, 0|128,0|128,0|128,0|128,32, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 15, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 22, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 31, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT032), 0|OPFL_Chain, |
| 3, 1, 4, 3, |
| 22, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 31, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT132), 0|OPFL_Chain, |
| 3, 1, 4, 3, |
| 0, |
| 0, |
| 22|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_Scope, 69, |
| OPC_CheckChild0Integer, 2, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 15, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 22, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 31, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT0), 0|OPFL_Chain, |
| 3, 2, 4, 3, |
| 22, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 31, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT1), 0|OPFL_Chain, |
| 3, 2, 4, 3, |
| 0, |
| 73, |
| OPC_CheckChild0Integer, 0|128,0|128,0|128,0|128,32, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 15, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 22, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 31, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT032), 0|OPFL_Chain, |
| 3, 2, 4, 3, |
| 22, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 31, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT132), 0|OPFL_Chain, |
| 3, 2, 4, 3, |
| 0, |
| 0, |
| 125|128,1, |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 35, |
| OPC_CheckPredicate, 16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 32, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 0, 4, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT0), 0|OPFL_Chain, |
| 3, 1, 5, 3, |
| 35, |
| OPC_CheckPredicate, 17, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 32, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 1, 4, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT032), 0|OPFL_Chain, |
| 3, 1, 5, 3, |
| 35, |
| OPC_CheckPredicate, 16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 32, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 0, 4, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT1), 0|OPFL_Chain, |
| 3, 1, 5, 3, |
| 35, |
| OPC_CheckPredicate, 17, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 32, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 1, 4, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT132), 0|OPFL_Chain, |
| 3, 1, 5, 3, |
| 100, |
| OPC_CheckPredicate, 18, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 43, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 32, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 4, 1, 5, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 0, 7, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT0), 0|OPFL_Chain, |
| 3, 6, 8, 3, |
| 43, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 32, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 4, 1, 5, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 0, 7, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BBIT1), 0|OPFL_Chain, |
| 3, 6, 8, 3, |
| 0, |
| 0, |
| 0, |
| 49|128,15, |
| OPC_RecordChild0, |
| OPC_Scope, 11|128,11, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_Scope, 14|128,2, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 33, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BGEZ), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BGEZ_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BGTZ), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BGTZ_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BLEZ), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BLEZ_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BLTZ), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BLTZ_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 63, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BNE), 0|OPFL_Chain, |
| 3, 1, 3, 2, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BnezRxImm16), 0|OPFL_Chain, |
| 2, 1, 2, |
| 14, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BNE_MM), 0|OPFL_Chain, |
| 3, 1, 3, 2, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BNEZC_MMR6), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 63, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 1, 3, 2, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BeqzRxImm16), 0|OPFL_Chain, |
| 2, 1, 2, |
| 14, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ_MM), 0|OPFL_Chain, |
| 3, 1, 3, 2, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQZC_MMR6), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 0, |
| 37, |
| OPC_CheckChild1Integer, 2, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BLEZ), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BLEZ_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 37, |
| OPC_CheckChild1Integer, 3, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BGEZ), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BGEZ_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 41|128,8, |
| OPC_RecordChild1, |
| OPC_Scope, 62|128,4, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 75, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 33, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 1, 4, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 5, 6, 3, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 1, 4, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 5, 6, 3, |
| 0, |
| 81, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 36, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 1, 5, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 6, 7, 3, |
| 36, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 1, 5, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 6, 7, 3, |
| 0, |
| 75, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 33, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 1, 4, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ_MM), 0|OPFL_Chain, |
| 3, 5, 6, 3, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 1, 4, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ_MM), 0|OPFL_Chain, |
| 3, 5, 6, 3, |
| 0, |
| 81, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 36, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 1, 5, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ_MM), 0|OPFL_Chain, |
| 3, 6, 7, 3, |
| 36, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 1, 5, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ_MM), 0|OPFL_Chain, |
| 3, 6, 7, 3, |
| 0, |
| 67, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 29, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 1, 4, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQZC_MMR6), 0|OPFL_Chain, |
| 2, 5, 3, |
| 29, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 1, 4, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQZC_MMR6), 0|OPFL_Chain, |
| 2, 5, 3, |
| 0, |
| 73, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 32, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 1, 5, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQZC_MMR6), 0|OPFL_Chain, |
| 2, 6, 3, |
| 32, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 1, 5, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQZC_MMR6), 0|OPFL_Chain, |
| 2, 6, 3, |
| 0, |
| 27, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BteqzT8CmpiX16), 0|OPFL_Chain, |
| 3, 1, 4, 3, |
| 53, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 22, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BteqzT8SltiX16), 0|OPFL_Chain, |
| 3, 1, 4, 3, |
| 22, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BtnezT8SltiX16), 0|OPFL_Chain, |
| 3, 1, 4, 3, |
| 0, |
| 27, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BtnezT8CmpiX16), 0|OPFL_Chain, |
| 3, 1, 4, 3, |
| 0, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 11, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ_MM), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 11, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BteqzT8CmpX16), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 0, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BNE), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 11, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BNE_MM), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 11, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BtnezT8CmpX16), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 0, |
| 90, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 22, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 22, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ_MM), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 18, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQZC_MMR6), 0|OPFL_Chain, |
| 2, 4, 3, |
| 11, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BteqzT8SltX16), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 0, |
| 78, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 22, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 22, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ_MM), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 18, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQZC_MMR6), 0|OPFL_Chain, |
| 2, 4, 3, |
| 0, |
| 90, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 22, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 2, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 22, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 2, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ_MM), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 18, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 2, 1, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQZC_MMR6), 0|OPFL_Chain, |
| 2, 4, 3, |
| 11, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BteqzT8SltX16), 0|OPFL_Chain, |
| 3, 2, 1, 3, |
| 0, |
| 78, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 22, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 2, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 22, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 2, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ_MM), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 18, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 2, 1, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQZC_MMR6), 0|OPFL_Chain, |
| 2, 4, 3, |
| 0, |
| 22, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BtnezT8SltX16), 0|OPFL_Chain, |
| 3, 2, 1, 3, |
| 22, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BtnezT8SltX16), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 0, |
| 0, |
| 31|128,4, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_Scope, 8|128,1, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 19, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 24, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BGEZ64), 0|OPFL_Chain, |
| 2, 1, 2, |
| 19, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 24, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BGTZ64), 0|OPFL_Chain, |
| 2, 1, 2, |
| 19, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 24, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BLEZ64), 0|OPFL_Chain, |
| 2, 1, 2, |
| 19, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 24, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BLTZ64), 0|OPFL_Chain, |
| 2, 1, 2, |
| 24, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BNE64), 0|OPFL_Chain, |
| 3, 1, 3, 2, |
| 24, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ64), 0|OPFL_Chain, |
| 3, 1, 3, 2, |
| 0, |
| 23, |
| OPC_CheckChild1Integer, 2, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BLEZ64), 0|OPFL_Chain, |
| 2, 1, 2, |
| 23, |
| OPC_CheckChild1Integer, 3, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BGEZ64), 0|OPFL_Chain, |
| 2, 1, 2, |
| 95|128,2, |
| OPC_RecordChild1, |
| OPC_Scope, 36|128,1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 75, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 33, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 1, 4, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 5, 6, 3, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 1, 4, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 5, 6, 3, |
| 0, |
| 81, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 36, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 1, 5, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 6, 7, 3, |
| 36, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 1, 5, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 6, 7, 3, |
| 0, |
| 0, |
| 22, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 24, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ64), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 22, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 24, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BNE64), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 2, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 2, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BEQ), 0|OPFL_Chain, |
| 3, 4, 5, 3, |
| 0, |
| 0, |
| 0, |
| 0, |
| 90, |
| OPC_RecordChild1, |
| OPC_Scope, 62, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BNE), 0|OPFL_Chain, |
| 3, 1, 3, 2, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BnezRxImm16), 0|OPFL_Chain, |
| 2, 1, 2, |
| 14, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BNE_MM), 0|OPFL_Chain, |
| 3, 1, 3, 2, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BNEZC_MMR6), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 23, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BNE64), 0|OPFL_Chain, |
| 3, 1, 3, 2, |
| 0, |
| 0, |
| 98|128,53, TARGET_VAL(ISD::SELECT), |
| OPC_Scope, 53|128,24, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SETCC), |
| OPC_RecordChild0, |
| OPC_Scope, 7|128,17, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_Scope, 49|128,2, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 17|128,1, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_Scope, 20, |
| OPC_RecordChild1, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELEQZ), 0, |
| MVT::i32, 2, 1, 0, |
| 20, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELNEZ), 0, |
| MVT::i32, 2, 1, 0, |
| 20, |
| OPC_RecordChild1, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELEQZ_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| 20, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELNEZ_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| 27, |
| OPC_RecordChild1, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 1, 2, |
| 27, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 17|128,1, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_Scope, 20, |
| OPC_RecordChild1, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELNEZ), 0, |
| MVT::i32, 2, 1, 0, |
| 20, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELEQZ), 0, |
| MVT::i32, 2, 1, 0, |
| 20, |
| OPC_RecordChild1, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELNEZ_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| 20, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELEQZ_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| 27, |
| OPC_RecordChild1, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 1, 2, |
| 27, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 0, |
| 12|128,1, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 60, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 38, MVT::i32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 35, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 30, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelBeqZ), 0, |
| MVT::i32, 3, 1, 2, 0, |
| 0, |
| 11, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 1, 0, 2, |
| 0, |
| 72, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 50, MVT::i32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 35, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_I), 0, |
| MVT::i32, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 37, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_MM), 0, |
| MVT::i32, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 30, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_MM), 0, |
| MVT::i32, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelBneZ), 0, |
| MVT::i32, 3, 1, 2, 0, |
| 0, |
| 11, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_I64), 0, |
| MVT::i64, 3, 1, 0, 2, |
| 0, |
| 0, |
| 67|128,5, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 0, |
| 36, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 6, 3, |
| 0, |
| 36, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 6, 3, |
| 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 0, |
| 36, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 0, |
| 36, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 0, |
| 11|128,1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 63, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 26, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ), 0, |
| MVT::i32, 2, 2, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR), 0, |
| MVT::i32, 2, 3, 4, |
| 26, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ_MMR6), 0, |
| MVT::i32, 2, 2, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_MM), 0, |
| MVT::i32, 2, 3, 4, |
| 0, |
| 63, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 26, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ), 0, |
| MVT::i32, 2, 2, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR), 0, |
| MVT::i32, 2, 3, 4, |
| 26, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ_MMR6), 0, |
| MVT::i32, 2, 2, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_MM), 0, |
| MVT::i32, 2, 3, 4, |
| 0, |
| 0, |
| 7|128,2, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 127, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 59, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ), 0, |
| MVT::i32, 2, 2, 6, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 0, 9, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ), 0, |
| MVT::i32, 2, 3, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR), 0, |
| MVT::i32, 2, 7, 11, |
| 59, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ), 0, |
| MVT::i32, 2, 2, 6, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 0, 9, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ), 0, |
| MVT::i32, 2, 3, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR), 0, |
| MVT::i32, 2, 7, 11, |
| 0, |
| 127, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 59, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ), 0, |
| MVT::i32, 2, 2, 6, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 9, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ), 0, |
| MVT::i32, 2, 3, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR), 0, |
| MVT::i32, 2, 7, 11, |
| 59, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ), 0, |
| MVT::i32, 2, 2, 6, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 9, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ), 0, |
| MVT::i32, 2, 3, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR), 0, |
| MVT::i32, 2, 7, 11, |
| 0, |
| 0, |
| 107, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 47, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 1, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 2, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 4, 6, |
| 47, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 1, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 2, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 4, 6, |
| 0, |
| 121|128,3, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 127, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 59, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORI_MMR6), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ_MMR6), 0, |
| MVT::i32, 2, 2, 6, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORI_MMR6), 0, |
| MVT::i32, 2, 0, 9, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ_MMR6), 0, |
| MVT::i32, 2, 3, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_MM), 0, |
| MVT::i32, 2, 7, 11, |
| 59, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORI_MMR6), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ_MMR6), 0, |
| MVT::i32, 2, 2, 6, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORI_MMR6), 0, |
| MVT::i32, 2, 0, 9, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ_MMR6), 0, |
| MVT::i32, 2, 3, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_MM), 0, |
| MVT::i32, 2, 7, 11, |
| 0, |
| 127, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 59, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ_MMR6), 0, |
| MVT::i32, 2, 2, 6, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 9, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ_MMR6), 0, |
| MVT::i32, 2, 3, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_MM), 0, |
| MVT::i32, 2, 7, 11, |
| 59, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ_MMR6), 0, |
| MVT::i32, 2, 2, 6, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 9, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ_MMR6), 0, |
| MVT::i32, 2, 3, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_MM), 0, |
| MVT::i32, 2, 7, 11, |
| 0, |
| 27|128,1, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 73, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 6, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 2, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 9, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 0, 10, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 11, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 3, 12, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 8, 13, |
| 73, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 6, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 2, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 9, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 0, 10, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 11, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 3, 12, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 8, 13, |
| 0, |
| 26, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelTBtneZSlti), 0, |
| MVT::i32, 4, 2, 3, 0, 4, |
| 57, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 24, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelTBteqZCmpi), 0, |
| MVT::i32, 4, 2, 3, 0, 5, |
| 24, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelTBtneZCmpi), 0, |
| MVT::i32, 4, 2, 3, 0, 5, |
| 0, |
| 0, |
| 0, |
| 35|128,7, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_Scope, 107, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 47, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_Scope, 20, |
| OPC_RecordChild1, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 1, 0, |
| 20, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 47, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_Scope, 20, |
| OPC_RecordChild1, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 1, 0, |
| 20, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 74, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 33, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 11, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I64_I), 0, |
| MVT::i32, 3, 1, 0, 2, |
| 11, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I64_I64), 0, |
| MVT::i64, 3, 1, 0, 2, |
| 0, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 11, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_I), 0, |
| MVT::i32, 3, 1, 0, 2, |
| 11, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_I64), 0, |
| MVT::i64, 3, 1, 0, 2, |
| 0, |
| 0, |
| 92|128,2, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 0, |
| 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 6, 3, |
| 0, |
| 64, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi64), 0, |
| MVT::i64, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I64_I), 0, |
| MVT::i32, 3, 2, 6, 3, |
| 24, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi64), 0, |
| MVT::i64, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I64_I64), 0, |
| MVT::i64, 3, 2, 6, 3, |
| 0, |
| 0, |
| 79, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 33, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 2, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 3, 4, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 2, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 3, 4, |
| 0, |
| 56|128,2, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 115, |
| OPC_CheckPredicate, 23, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 53, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi64), 0, |
| MVT::i64, 2, 0, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 2, 5, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi64), 0, |
| MVT::i64, 2, 0, 7, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 3, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 6, 9, |
| 53, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi64), 0, |
| MVT::i64, 2, 0, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 2, 5, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::XORi64), 0, |
| MVT::i64, 2, 0, 7, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 3, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 6, 9, |
| 0, |
| 59|128,1, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 89, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitInteger, MVT::i64, 0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 6, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::SUBREG_TO_REG), 0, |
| MVT::i64, 3, 4, 7, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 2, 9, |
| OPC_EmitInteger, MVT::i64, 0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 12, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 13, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::SUBREG_TO_REG), 0, |
| MVT::i64, 3, 11, 14, 15, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 3, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 10, 17, |
| 89, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitInteger, MVT::i64, 0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 5, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 6, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::SUBREG_TO_REG), 0, |
| MVT::i64, 3, 4, 7, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 2, 9, |
| OPC_EmitInteger, MVT::i64, 0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 12, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 13, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::SUBREG_TO_REG), 0, |
| MVT::i64, 3, 11, 14, 15, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 3, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 10, 17, |
| 0, |
| 0, |
| 0, |
| 0, |
| 17|128,1, |
| OPC_RecordChild0, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_Scope, 20, |
| OPC_RecordChild1, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELNEZ), 0, |
| MVT::i32, 2, 1, 0, |
| 20, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELEQZ), 0, |
| MVT::i32, 2, 1, 0, |
| 20, |
| OPC_RecordChild1, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELNEZ_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| 20, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELEQZ_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| 27, |
| OPC_RecordChild1, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 1, 2, |
| 27, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 3|128,7, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SETCC), |
| OPC_RecordChild0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 69|128,4, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_RecordChild1, |
| OPC_Scope, 85, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 55, MVT::i32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 12, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelTBteqZSlt), 0, |
| MVT::i32, 4, 2, 3, 0, 1, |
| 0, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 85, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 55, MVT::i32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 12, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelTBteqZSltu), 0, |
| MVT::i32, 4, 2, 3, 0, 1, |
| 0, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 85, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 55, MVT::i32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 12, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelTBteqZSlt), 0, |
| MVT::i32, 4, 2, 3, 1, 0, |
| 0, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 85, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 55, MVT::i32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 12, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelTBteqZSltu), 0, |
| MVT::i32, 4, 2, 3, 1, 0, |
| 0, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 85, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 55, MVT::i32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_MM), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 12, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelTBteqZCmp), 0, |
| MVT::i32, 4, 2, 3, 1, 0, |
| 0, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 105, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 75, MVT::i32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 37, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_MM), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_MM), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 12, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelTBtneZCmp), 0, |
| MVT::i32, 4, 2, 3, 1, 0, |
| 0, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 19, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelTBtneZSlt), 0, |
| MVT::i32, 4, 2, 3, 1, 0, |
| 19, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelTBtneZSltu), 0, |
| MVT::i32, 4, 2, 3, 1, 0, |
| 0, |
| 49|128,2, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_RecordChild1, |
| OPC_Scope, 49, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR64), 0, |
| MVT::i64, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I64_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR64), 0, |
| MVT::i64, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I64_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR64), 0, |
| MVT::i64, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_I), 0, |
| MVT::i32, 3, 2, 4, 3, |
| 19, MVT::i64, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR64), 0, |
| MVT::i64, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_I64), 0, |
| MVT::i64, 3, 2, 4, 3, |
| 0, |
| 0, |
| 0, |
| 5|128,2, |
| OPC_RecordChild0, |
| OPC_Scope, 65|128,1, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 116, MVT::i32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 35, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_I), 0, |
| MVT::i32, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 37, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_MM), 0, |
| MVT::i32, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 30, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_MM), 0, |
| MVT::i32, 3, 1, 0, 2, |
| 26, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ), 0, |
| MVT::i32, 2, 2, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR), 0, |
| MVT::i32, 2, 3, 4, |
| 26, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ_MMR6), 0, |
| MVT::i32, 2, 2, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_MM), 0, |
| MVT::i32, 2, 3, 4, |
| 11, |
| OPC_CheckPatternPredicate, 38, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECT_I), 0, |
| MVT::i32, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SelBneZ), 0, |
| MVT::i32, 3, 1, 2, 0, |
| 0, |
| 67, MVT::i64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_I64), 0, |
| MVT::i64, 3, 1, 0, 2, |
| 40, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 1, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 2, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 4, 6, |
| 11, |
| OPC_CheckPatternPredicate, 38, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECT_I64), 0, |
| MVT::i64, 3, 0, 1, 2, |
| 0, |
| 0, |
| 62, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 11, MVT::i32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_I), 0, |
| MVT::i32, 3, 1, 0, 2, |
| 41, MVT::i64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_I64), 0, |
| MVT::i64, 3, 1, 0, 2, |
| 26, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELNEZ64), 0, |
| MVT::i64, 2, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SELEQZ64), 0, |
| MVT::i64, 2, 2, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 3, 4, |
| 0, |
| 0, |
| 0, |
| 90|128,17, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SETCC), |
| OPC_RecordChild0, |
| OPC_Scope, 39|128,12, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_Scope, 30|128,1, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 75, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 26, MVT::f32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 35, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 30, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S_MM), 0, |
| MVT::f32, 3, 1, 0, 2, |
| 0, |
| 38, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 39, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 40, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 41, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32_MM), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 0, |
| 0, |
| 75, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 26, MVT::f32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 35, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_S), 0, |
| MVT::f32, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 30, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_S_MM), 0, |
| MVT::f32, 3, 1, 0, 2, |
| 0, |
| 38, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 39, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_D32), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 40, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_D64), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 41, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_D32_MM), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 0, |
| 0, |
| 0, |
| 1|128,11, |
| OPC_RecordChild1, |
| OPC_Scope, 56|128,5, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 6, 3, |
| 0, |
| 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 39, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32), 0, |
| MVT::f64, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 39, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32), 0, |
| MVT::f64, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 39, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32), 0, |
| MVT::f64, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 39, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32), 0, |
| MVT::f64, 3, 2, 6, 3, |
| 0, |
| 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 6, 3, |
| 0, |
| 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S_MM), 0, |
| MVT::f32, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S_MM), 0, |
| MVT::f32, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S_MM), 0, |
| MVT::f32, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S_MM), 0, |
| MVT::f32, 3, 2, 6, 3, |
| 0, |
| 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 41, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32_MM), 0, |
| MVT::f64, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 41, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32_MM), 0, |
| MVT::f64, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 41, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32_MM), 0, |
| MVT::f64, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 41, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32_MM), 0, |
| MVT::f64, 3, 2, 6, 3, |
| 0, |
| 0, |
| 117, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 42, MVT::f32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S_MM), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 0, |
| 62, MVT::f64, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 39, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 41, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32_MM), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 0, |
| 117, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 42, MVT::f32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S_MM), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 0, |
| 62, MVT::f64, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 39, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 41, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32_MM), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 0, |
| 117, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 42, MVT::f32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S_MM), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 0, |
| 62, MVT::f64, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 39, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 41, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32_MM), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 0, |
| 117, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 42, MVT::f32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S_MM), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 0, |
| 62, MVT::f64, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 39, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 41, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32_MM), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 0, |
| 117, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 42, MVT::f32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S_MM), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 0, |
| 62, MVT::f64, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 39, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 41, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D32_MM), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 0, |
| 117, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 42, MVT::f32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 35, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_S_MM), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 0, |
| 62, MVT::f64, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 39, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_D32), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 19, |
| OPC_CheckPatternPredicate, 41, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_D32_MM), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 0, |
| 0, |
| 0, |
| 40|128,5, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_Scope, 74, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 33, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 11, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I64_S), 0, |
| MVT::f32, 3, 1, 0, 2, |
| 11, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I64_D64), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 0, |
| 33, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 11, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_S), 0, |
| MVT::f32, 3, 1, 0, 2, |
| 11, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_D64), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 0, |
| 0, |
| 87|128,4, |
| OPC_RecordChild1, |
| OPC_Scope, 26|128,2, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 6, 3, |
| 0, |
| 65, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 28, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 5, 3, |
| 28, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 5, 3, |
| 0, |
| 71, |
| OPC_CheckPredicate, 20, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 31, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 6, 3, |
| 31, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 2, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 5, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 6, 3, |
| 0, |
| 0, |
| 51, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 51, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 51, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 51, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 51, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR64), 0, |
| MVT::i64, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I64_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR64), 0, |
| MVT::i64, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVZ_I64_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 51, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 19, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR64), 0, |
| MVT::i64, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_S), 0, |
| MVT::f32, 3, 2, 4, 3, |
| 19, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR64), 0, |
| MVT::i64, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_D64), 0, |
| MVT::f64, 3, 2, 4, 3, |
| 0, |
| 0, |
| 0, |
| 0, |
| 44|128,1, |
| OPC_RecordChild0, |
| OPC_Scope, 6|128,1, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 62, MVT::f32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 35, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_S), 0, |
| MVT::f32, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEL_S), 0, |
| MVT::f32, 3, 0, 2, 1, |
| 11, |
| OPC_CheckPatternPredicate, 30, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_S_MM), 0, |
| MVT::f32, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEL_S_MMR6), 0, |
| MVT::f32, 3, 0, 2, 1, |
| 11, |
| OPC_CheckPatternPredicate, 38, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECT_S), 0, |
| MVT::f32, 3, 0, 1, 2, |
| 0, |
| 62, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 39, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_D32), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 40, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_D64), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 41, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I_D32_MM), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 43, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECT_D32), 0, |
| MVT::f64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 44, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECT_D64), 0, |
| MVT::f64, 3, 0, 1, 2, |
| 0, |
| 0, |
| 32, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 11, MVT::f32, |
| OPC_CheckPatternPredicate, 36, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_S), 0, |
| MVT::f32, 3, 1, 0, 2, |
| 11, MVT::f64, |
| OPC_CheckPatternPredicate, 40, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVN_I64_D64), 0, |
| MVT::f64, 3, 1, 0, 2, |
| 0, |
| 0, |
| 0, |
| 55|128,1, TARGET_VAL(ISD::ATOMIC_LOAD), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_SwitchType , 104, MVT::i32, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LB), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LH), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LW), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LB_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LH_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LW_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 70, MVT::i64, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LB64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LH64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LW64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 16, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LD), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 2, 3, |
| 0, |
| 0, |
| 7|128,1, TARGET_VAL(ISD::ATOMIC_STORE), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 55, |
| OPC_CheckChild2Type, MVT::i32, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SB), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 2, 3, 4, |
| 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SH), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 2, 3, 4, |
| 16, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SW), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 2, 3, 4, |
| 0, |
| 72, |
| OPC_CheckChild2Type, MVT::i64, |
| OPC_Scope, 16, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SB64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 2, 3, 4, |
| 16, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SH64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 2, 3, 4, |
| 16, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SW64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 2, 3, 4, |
| 16, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 29, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SD), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 2, 3, 4, |
| 0, |
| 0, |
| 75, TARGET_VAL(MipsISD::LWL), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 50, MVT::i32, |
| OPC_Scope, 15, |
| OPC_CheckPatternPredicate, 11, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWL), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 3, 3, 4, 2, |
| 15, |
| OPC_CheckPatternPredicate, 45, |
| OPC_CheckComplexPat, /*CP*/12, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWLE_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 3, 3, 4, 2, |
| 15, |
| OPC_CheckPatternPredicate, 30, |
| OPC_CheckComplexPat, /*CP*/12, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWL_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 3, 3, 4, 2, |
| 0, |
| 15, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWL64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 3, 3, 4, 2, |
| 0, |
| 75, TARGET_VAL(MipsISD::LWR), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 50, MVT::i32, |
| OPC_Scope, 15, |
| OPC_CheckPatternPredicate, 11, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWR), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 3, 3, 4, 2, |
| 15, |
| OPC_CheckPatternPredicate, 45, |
| OPC_CheckComplexPat, /*CP*/12, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWRE_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 3, 3, 4, 2, |
| 15, |
| OPC_CheckPatternPredicate, 30, |
| OPC_CheckComplexPat, /*CP*/12, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWR_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 3, 3, 4, 2, |
| 0, |
| 15, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWR64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 3, 3, 4, 2, |
| 0, |
| 74, TARGET_VAL(MipsISD::SWL), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_Scope, 50, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_RecordChild2, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 11, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWL), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 45, |
| OPC_CheckComplexPat, /*CP*/12, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWLE_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 30, |
| OPC_CheckComplexPat, /*CP*/12, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWL_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 17, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWL64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 74, TARGET_VAL(MipsISD::SWR), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_Scope, 50, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_RecordChild2, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 11, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWR), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 45, |
| OPC_CheckComplexPat, /*CP*/12, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWRE_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 14, |
| OPC_CheckPatternPredicate, 30, |
| OPC_CheckComplexPat, /*CP*/12, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWR_MM), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 17, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 24, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SWR64), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 0, |
| 21, TARGET_VAL(MipsISD::LDL), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 46, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDL), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 3, 3, 4, 2, |
| 21, TARGET_VAL(MipsISD::LDR), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 46, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/1, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDR), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 3, 3, 4, 2, |
| 20, TARGET_VAL(MipsISD::SDL), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 46, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDL), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 20, TARGET_VAL(MipsISD::SDR), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 46, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/2, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SDR), 0|OPFL_Chain|OPFL_MemRefs, |
| 3, 1, 3, 4, |
| 23|128,11, TARGET_VAL(ISD::INTRINSIC_W_CHAIN), |
| OPC_RecordNode, |
| OPC_Scope, 69, |
| OPC_CheckChild1Integer, 70|128,84, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 37, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLL_S_W), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 3, |
| 13, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLL_S_W_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 3, |
| 0, |
| 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLLV_S_W), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLLV_S_W_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 38, |
| OPC_CheckChild1Integer, 34|128,84, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 26, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::RDDSP), 0|OPFL_Chain, |
| MVT::i32, 1, 1, |
| 13, |
| OPC_CheckPredicate, 27, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::RDDSP_MM), 0|OPFL_Chain, |
| MVT::i32, 1, 1, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 126|128,75, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQ_S_W), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQ_S_W_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 86|128,85, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQ_S_W), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQ_S_W_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 28, |
| OPC_CheckChild1Integer, 112|128,75, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ABSQ_S_W), 0|OPFL_Chain, |
| MVT::i32, 1, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ABSQ_S_W_MM), 0|OPFL_Chain, |
| MVT::i32, 1, 1, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 34|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULEQ_S_W_PHL), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULEQ_S_W_PHL_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 36|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULEQ_S_W_PHR), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULEQ_S_W_PHR_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 74|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGU_EQ_QB), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGU_EQ_QB_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 78|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGU_LT_QB), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGU_LT_QB_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 76|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGU_LE_QB), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGU_LE_QB_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 2|128,82, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWX), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LWX_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 126|128,81, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LHX), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LHX_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 104|128,81, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LBUX), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LBUX_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 94|128,81, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSV), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSV_MM), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 68|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGDU_EQ_QB), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGDU_EQ_QB_MMR2), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 72|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGDU_LT_QB), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGDU_LT_QB_MMR2), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 70|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGDU_LE_QB), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMPGDU_LE_QB_MMR2), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 48|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULQ_S_W), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULQ_S_W_MMR2), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 44|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULQ_RS_W), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULQ_RS_W_MMR2), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 16, |
| OPC_CheckChild1Integer, 32|128,76, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDSC), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 16, |
| OPC_CheckChild1Integer, 62|128,76, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDWC), 0|OPFL_Chain, |
| MVT::i32, 2, 1, 2, |
| 10, |
| OPC_CheckChild1Integer, 76|128,77, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BPOSGE32_PSEUDO), 0|OPFL_Chain, |
| MVT::i32, 0, |
| 69, |
| OPC_CheckChild1Integer, 68|128,84, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 37, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLL_S_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 3, |
| 13, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLL_S_PH_MM), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 3, |
| 0, |
| 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLLV_S_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLLV_S_PH_MM), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 52, |
| OPC_CheckChild1Integer, 64|128,84, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 20, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLL_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 3, |
| 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLLV_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLLV_PH_MM), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 52, |
| OPC_CheckChild1Integer, 66|128,84, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 20, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLL_QB), 0|OPFL_Chain, |
| MVT::v4i8, 2, 1, 3, |
| 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLLV_QB), 0|OPFL_Chain, |
| MVT::v4i8, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLLV_QB_MM), 0|OPFL_Chain, |
| MVT::v4i8, 2, 1, 2, |
| 0, |
| 28, |
| OPC_CheckChild1Integer, 108|128,75, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ABSQ_S_PH), 0|OPFL_Chain, |
| MVT::v2i16, 1, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ABSQ_S_PH_MM), 0|OPFL_Chain, |
| MVT::v2i16, 1, 1, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 26|128,84, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECRQ_RS_PH_W), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECRQ_RS_PH_W_MM), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 28|128,84, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECRQU_S_QB_PH), 0|OPFL_Chain, |
| MVT::v4i8, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECRQU_S_QB_PH_MM), 0|OPFL_Chain, |
| MVT::v4i8, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 38|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULEU_S_PH_QBL), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULEU_S_PH_QBL_MM), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 40|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULEU_S_PH_QBR), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULEU_S_PH_QBR_MM), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 42|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULQ_RS_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULQ_RS_PH_MM), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 122|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PICK_QB), 0|OPFL_Chain, |
| MVT::v4i8, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PICK_QB_MM), 0|OPFL_Chain, |
| MVT::v4i8, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 120|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PICK_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PICK_PH_MM), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 34|128,76, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDU_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDU_PH_MMR2), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 38|128,76, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDU_S_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDU_S_PH_MMR2), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 0|128,86, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBU_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBU_PH_MMR2), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 4|128,86, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBU_S_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBU_S_PH_MMR2), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 28, |
| OPC_CheckChild1Integer, 110|128,75, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ABSQ_S_QB), 0|OPFL_Chain, |
| MVT::v4i8, 1, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ABSQ_S_QB_MMR2), 0|OPFL_Chain, |
| MVT::v4i8, 1, 1, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 32|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUL_S_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUL_S_PH_MMR2), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 46|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULQ_S_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULQ_S_PH_MMR2), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 0, |
| 31, |
| OPC_CheckChild1Integer, 16|128,84, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECR_QB_PH), 0|OPFL_Chain, |
| MVT::v4i8, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECR_QB_PH_MMR2), 0|OPFL_Chain, |
| MVT::v4i8, 2, 1, 2, |
| 0, |
| 16, |
| OPC_CheckChild1Integer, 26|128,83, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUL_PH), 0|OPFL_Chain, |
| MVT::v2i16, 2, 1, 2, |
| 16, |
| OPC_CheckChild1Integer, 122|128,81, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDR_D), 0|OPFL_Chain, |
| MVT::v2i64, 2, 1, 2, |
| 16, |
| OPC_CheckChild1Integer, 124|128,81, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LDR_W), 0|OPFL_Chain, |
| MVT::v4i32, 2, 1, 2, |
| 0, |
| 28|128,40, TARGET_VAL(ISD::INTRINSIC_WO_CHAIN), |
| OPC_Scope, 65, |
| OPC_CheckChild0Integer, 80|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 35, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRA_R_W), 0, |
| MVT::i32, 2, 0, 2, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRA_R_W_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 0, |
| 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRAV_R_W), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRAV_R_W_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 39, |
| OPC_CheckChild0Integer, 68|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::APPEND), 0, |
| MVT::i32, 3, 1, 2, 0, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::APPEND_MMR2), 0, |
| MVT::i32, 3, 1, 2, 0, |
| 0, |
| 45, |
| OPC_CheckChild0Integer, 118|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_SwitchOpcode , 14, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 30, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BALIGN), 0, |
| MVT::i32, 3, 1, 2, 0, |
| 16, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 30, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BALIGN_MMR2), 0, |
| MVT::i32, 3, 1, 3, 0, |
| 0, |
| 39, |
| OPC_CheckChild0Integer, 30|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PREPEND), 0, |
| MVT::i32, 3, 1, 2, 0, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PREPEND_MMR2), 0, |
| MVT::i32, 3, 1, 2, 0, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 0|128,83, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MODSUB), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MODSUB_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 32|128,84, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::RADDU_W_QB), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::RADDU_W_QB_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 124|128,83, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQ_W_PHL), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQ_W_PHL_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 126|128,83, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQ_W_PHR), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQ_W_PHR_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 40|128,77, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BITREV), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BITREV_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 6|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQH_W), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQH_W_MMR2), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 4|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQH_R_W), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQH_R_W_MMR2), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 94|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQH_W), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQH_W_MMR2), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 92|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQH_R_W), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQH_R_W_MMR2), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 65, |
| OPC_CheckChild0Integer, 76|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 35, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRA_R_PH), 0, |
| MVT::v2i16, 2, 0, 2, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRA_R_PH_MM), 0, |
| MVT::v2i16, 2, 0, 2, |
| 0, |
| 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRAV_R_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRAV_R_PH_MM), 0, |
| MVT::v2i16, 2, 0, 1, |
| 0, |
| 60, |
| OPC_CheckChild0Integer, 38|128,84, |
| OPC_RecordChild1, |
| OPC_Scope, 33, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 31, |
| OPC_MoveParent, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::REPL_QB), 0, |
| MVT::v4i8, 1, 1, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::REPL_QB_MM), 0, |
| MVT::v4i8, 1, 1, |
| 0, |
| 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::REPLV_QB), 0, |
| MVT::v4i8, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::REPLV_QB_MM), 0, |
| MVT::v4i8, 1, 0, |
| 0, |
| 60, |
| OPC_CheckChild0Integer, 36|128,84, |
| OPC_RecordChild1, |
| OPC_Scope, 33, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 32, |
| OPC_MoveParent, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::REPL_PH), 0, |
| MVT::v2i16, 1, 1, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::REPL_PH_MM), 0, |
| MVT::v2i16, 1, 1, |
| 0, |
| 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::REPLV_PH), 0, |
| MVT::v2i16, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::REPLV_PH_MM), 0, |
| MVT::v2i16, 1, 0, |
| 0, |
| 39, |
| OPC_CheckChild0Integer, 18|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECR_SRA_PH_W), 0, |
| MVT::v2i16, 3, 1, 2, 0, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECR_SRA_PH_W_MMR2), 0, |
| MVT::v2i16, 3, 1, 2, 0, |
| 0, |
| 39, |
| OPC_CheckChild0Integer, 20|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECR_SRA_R_PH_W), 0, |
| MVT::v2i16, 3, 1, 2, 0, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECR_SRA_R_PH_W_MMR2), 0, |
| MVT::v2i16, 3, 1, 2, 0, |
| 0, |
| 65, |
| OPC_CheckChild0Integer, 78|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 35, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRA_R_QB), 0, |
| MVT::v4i8, 2, 0, 2, |
| 12, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRA_R_QB_MMR2), 0, |
| MVT::v4i8, 2, 0, 2, |
| 0, |
| 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRAV_R_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRAV_R_QB_MMR2), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 49, |
| OPC_CheckChild0Integer, 72|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 19, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRA_PH), 0, |
| MVT::v2i16, 2, 0, 2, |
| 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRAV_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRAV_PH_MM), 0, |
| MVT::v2i16, 2, 0, 1, |
| 0, |
| 49, |
| OPC_CheckChild0Integer, 82|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 19, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRL_PH), 0, |
| MVT::v2i16, 2, 0, 2, |
| 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRLV_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRLV_PH_MMR2), 0, |
| MVT::v2i16, 2, 0, 1, |
| 0, |
| 49, |
| OPC_CheckChild0Integer, 74|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 19, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRA_QB), 0, |
| MVT::v4i8, 2, 0, 2, |
| 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRAV_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRAV_QB_MMR2), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 49, |
| OPC_CheckChild0Integer, 84|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 19, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRL_QB), 0, |
| MVT::v4i8, 2, 0, 2, |
| 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRLV_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRLV_QB_MM), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 22, |
| OPC_CheckChild0Integer, 40|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SAT_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 44|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SAT_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 46|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SAT_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 42|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 33, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SAT_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 48|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SAT_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 52|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SAT_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 54|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SAT_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 50|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 33, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SAT_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 24, |
| OPC_CheckChild0Integer, 94|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLDI_B), 0, |
| MVT::v16i8, 3, 0, 1, 2, |
| 24, |
| OPC_CheckChild0Integer, 98|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLDI_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 24, |
| OPC_CheckChild0Integer, 100|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 30, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLDI_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 24, |
| OPC_CheckChild0Integer, 96|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 34, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLDI_D), 0, |
| MVT::v2i64, 3, 0, 1, 2, |
| 22, |
| OPC_CheckChild0Integer, 30|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRARI_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 34|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRARI_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 36|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRARI_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 32|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 33, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRARI_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 62|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLRI_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 66|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLRI_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 68|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLRI_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 22, |
| OPC_CheckChild0Integer, 64|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 33, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLRI_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 29, |
| OPC_CheckChild0Integer, 40|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDU_S_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDU_S_QB_MM), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 6|128,86, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBU_S_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBU_S_QB_MM), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 124|128,75, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQ_S_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQ_S_PH_MM), 0, |
| MVT::v2i16, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 84|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQ_S_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQ_S_PH_MM), 0, |
| MVT::v2i16, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 24|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECRQ_QB_PH), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECRQ_QB_PH_MM), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 22|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECRQ_PH_W), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECRQ_PH_W_MM), 0, |
| MVT::v2i16, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 0|128,84, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQU_PH_QBL), 0, |
| MVT::v2i16, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQU_PH_QBL_MM), 0, |
| MVT::v2i16, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 4|128,84, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQU_PH_QBR), 0, |
| MVT::v2i16, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQU_PH_QBR_MM), 0, |
| MVT::v2i16, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 2|128,84, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQU_PH_QBLA), 0, |
| MVT::v2i16, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQU_PH_QBLA_MM), 0, |
| MVT::v2i16, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 6|128,84, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQU_PH_QBRA), 0, |
| MVT::v2i16, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEQU_PH_QBRA_MM), 0, |
| MVT::v2i16, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 8|128,84, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEU_PH_QBL), 0, |
| MVT::v2i16, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEU_PH_QBL_MM), 0, |
| MVT::v2i16, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 12|128,84, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEU_PH_QBR), 0, |
| MVT::v2i16, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEU_PH_QBR_MM), 0, |
| MVT::v2i16, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 10|128,84, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEU_PH_QBLA), 0, |
| MVT::v2i16, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEU_PH_QBLA_MM), 0, |
| MVT::v2i16, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild0Integer, 14|128,84, |
| OPC_RecordChild1, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEU_PH_QBRA), 0, |
| MVT::v2i16, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PRECEU_PH_QBRA_MM), 0, |
| MVT::v2i16, 1, 0, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 94|128,83, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PACKRL_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PACKRL_PH_MM), 0, |
| MVT::v2i16, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 42|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDUH_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDUH_QB_MMR2), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 44|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDUH_R_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDUH_R_QB_MMR2), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 8|128,86, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBUH_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBUH_QB_MMR2), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 10|128,86, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBUH_R_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBUH_R_QB_MMR2), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 0|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQH_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQH_PH_MMR2), 0, |
| MVT::v2i16, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 2|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQH_R_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQH_R_PH_MMR2), 0, |
| MVT::v2i16, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 88|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQH_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQH_PH_MMR2), 0, |
| MVT::v2i16, 2, 0, 1, |
| 0, |
| 29, |
| OPC_CheckChild0Integer, 90|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQH_R_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQH_R_PH_MMR2), 0, |
| MVT::v2i16, 2, 0, 1, |
| 0, |
| 15, |
| OPC_CheckChild0Integer, 122|128,75, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQ_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 82|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQ_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 36|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDU_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 2|128,86, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBU_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 114|128,75, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADD_A_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 118|128,75, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADD_A_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 120|128,75, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADD_A_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 116|128,75, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADD_A_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 8|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_A_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 12|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_A_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 14|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_A_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 10|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_A_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 16|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 20|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 22|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 18|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 24|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 28|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 30|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 26|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDS_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 70|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ASUB_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 74|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ASUB_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 76|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ASUB_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 72|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ASUB_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 78|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ASUB_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 82|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ASUB_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 84|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ASUB_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 80|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ASUB_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 86|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVE_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 90|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVE_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 92|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVE_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 88|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVE_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 94|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVE_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 98|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVE_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 100|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVE_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 96|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVE_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 102|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVER_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 106|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVER_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 108|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVER_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 104|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVER_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 110|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVER_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 114|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVER_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 116|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVER_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 112|128,76, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AVER_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 17, |
| OPC_CheckChild0Integer, 8|128,77, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSL_B), 0, |
| MVT::v16i8, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 12|128,77, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSL_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 14|128,77, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSL_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 10|128,77, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSL_D), 0, |
| MVT::v2i64, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 24|128,77, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSR_B), 0, |
| MVT::v16i8, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 28|128,77, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSR_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 30|128,77, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSR_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 26|128,77, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSR_D), 0, |
| MVT::v2i64, 3, 0, 1, 2, |
| 15, |
| OPC_CheckChild0Integer, 124|128,78, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DOTP_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 126|128,78, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DOTP_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 122|128,78, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DOTP_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 2|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DOTP_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 4|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DOTP_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 0|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DOTP_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 17, |
| OPC_CheckChild0Integer, 10|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPADD_S_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 12|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPADD_S_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 8|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPADD_S_D), 0, |
| MVT::v2i64, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 16|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPADD_U_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 18|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPADD_U_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 14|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPADD_U_D), 0, |
| MVT::v2i64, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 50|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSUB_S_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 52|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSUB_S_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 48|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSUB_S_D), 0, |
| MVT::v2i64, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 56|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSUB_U_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 58|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSUB_U_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 54|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSUB_U_D), 0, |
| MVT::v2i64, 3, 0, 1, 2, |
| 15, |
| OPC_CheckChild0Integer, 80|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCAF_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 78|128,79, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCAF_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 13, |
| OPC_CheckChild0Integer, 88|128,79, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCLASS_W), 0, |
| MVT::v4i32, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 86|128,79, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCLASS_D), 0, |
| MVT::v2i64, 1, 0, |
| 15, |
| OPC_CheckChild0Integer, 88|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSAF_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 86|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSAF_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 92|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSEQ_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 90|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSEQ_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 96|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSLE_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 94|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSLE_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 100|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSLT_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 98|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSLT_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 104|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSNE_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 102|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSNE_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 108|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSOR_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 106|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSOR_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 120|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUEQ_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 118|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUEQ_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 124|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSULE_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 122|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSULE_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 0|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSULT_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 126|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSULT_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 4|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUN_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 2|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUN_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 8|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUNE_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 6|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUNE_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 13, |
| OPC_CheckChild0Integer, 12|128,81, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FTINT_S_W), 0, |
| MVT::v4i32, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 10|128,81, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FTINT_S_D), 0, |
| MVT::v2i64, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 16|128,81, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FTINT_U_W), 0, |
| MVT::v4i32, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 14|128,81, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FTINT_U_D), 0, |
| MVT::v2i64, 1, 0, |
| 15, |
| OPC_CheckChild0Integer, 18|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FTQ_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 20|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FTQ_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 32|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HADD_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 34|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HADD_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 30|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HADD_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 38|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HADD_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 40|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HADD_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 36|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HADD_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 44|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HSUB_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 46|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HSUB_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 42|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HSUB_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 50|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HSUB_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 52|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HSUB_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 48|128,81, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::HSUB_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 17, |
| OPC_CheckChild0Integer, 6|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADD_Q_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 8|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADD_Q_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 10|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDR_Q_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 12|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDR_Q_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 15, |
| OPC_CheckChild0Integer, 32|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_A_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 36|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_A_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 38|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_A_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 34|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_A_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 72|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_A_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 76|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_A_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 78|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_A_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 74|128,82, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_A_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 17, |
| OPC_CheckChild0Integer, 6|128,83, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUB_Q_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 8|128,83, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUB_Q_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 10|128,83, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUBR_Q_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 12|128,83, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUBR_Q_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 15, |
| OPC_CheckChild0Integer, 28|128,83, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUL_Q_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 30|128,83, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUL_Q_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 50|128,83, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULR_Q_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 52|128,83, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULR_Q_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 13, |
| OPC_CheckChild0Integer, 70|128,83, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NLOC_B), 0, |
| MVT::v16i8, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 74|128,83, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NLOC_H), 0, |
| MVT::v8i16, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 76|128,83, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NLOC_W), 0, |
| MVT::v4i32, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 72|128,83, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NLOC_D), 0, |
| MVT::v2i64, 1, 0, |
| 17, |
| OPC_CheckChild0Integer, 86|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLD_B), 0, |
| MVT::v16i8, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 90|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLD_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 92|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLD_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 17, |
| OPC_CheckChild0Integer, 88|128,84, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLD_D), 0, |
| MVT::v2i64, 3, 0, 1, 2, |
| 15, |
| OPC_CheckChild0Integer, 22|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRAR_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 26|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRAR_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 28|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRAR_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 24|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRAR_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 54|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLR_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 58|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLR_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 60|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLR_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 56|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLR_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 96|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBS_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 100|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBS_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 102|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBS_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 98|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBS_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 104|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBS_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 108|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBS_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 110|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBS_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 106|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBS_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 112|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBSUS_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 116|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBSUS_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 118|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBSUS_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 114|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBSUS_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 120|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBSUU_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 124|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBSUU_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 126|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBSUU_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 122|128,85, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBSUU_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 2|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXDO_H), 0, |
| MVT::v8f16, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 4|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXDO_W), 0, |
| MVT::v4f32, 2, 0, 1, |
| 13, |
| OPC_CheckChild0Integer, 12|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXUPL_W), 0, |
| MVT::v4f32, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 10|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXUPL_D), 0, |
| MVT::v2f64, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 16|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXUPR_W), 0, |
| MVT::v4f32, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 14|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXUPR_D), 0, |
| MVT::v2f64, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 28|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FFQL_W), 0, |
| MVT::v4f32, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 26|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FFQL_D), 0, |
| MVT::v2f64, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 32|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FFQR_W), 0, |
| MVT::v4f32, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 30|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FFQR_D), 0, |
| MVT::v2f64, 1, 0, |
| 15, |
| OPC_CheckChild0Integer, 56|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMAX_W), 0, |
| MVT::v4f32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 54|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMAX_D), 0, |
| MVT::v2f64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 52|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMAX_A_W), 0, |
| MVT::v4f32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 50|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMAX_A_D), 0, |
| MVT::v2f64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 64|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMIN_W), 0, |
| MVT::v4f32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 62|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMIN_D), 0, |
| MVT::v2f64, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 60|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMIN_A_W), 0, |
| MVT::v4f32, 2, 0, 1, |
| 15, |
| OPC_CheckChild0Integer, 58|128,80, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMIN_A_D), 0, |
| MVT::v2f64, 2, 0, 1, |
| 13, |
| OPC_CheckChild0Integer, 76|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FRCP_W), 0, |
| MVT::v4f32, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 74|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FRCP_D), 0, |
| MVT::v2f64, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 84|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FRSQRT_W), 0, |
| MVT::v4f32, 1, 0, |
| 13, |
| OPC_CheckChild0Integer, 82|128,80, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FRSQRT_D), 0, |
| MVT::v2f64, 1, 0, |
| 0, |
| 3|128,2, TARGET_VAL(ISD::INTRINSIC_VOID), |
| OPC_RecordNode, |
| OPC_Scope, 39, |
| OPC_CheckChild1Integer, 36|128,86, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 26, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 51, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::WRDSP), 0|OPFL_Chain, |
| 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 27, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::WRDSP_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 29, |
| OPC_CheckChild1Integer, 80|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMPU_EQ_QB), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMPU_EQ_QB_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 29, |
| OPC_CheckChild1Integer, 84|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMPU_LT_QB), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMPU_LT_QB_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 29, |
| OPC_CheckChild1Integer, 82|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMPU_LE_QB), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMPU_LE_QB_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 29, |
| OPC_CheckChild1Integer, 62|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMP_EQ_PH), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMP_EQ_PH_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 29, |
| OPC_CheckChild1Integer, 66|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMP_LT_PH), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMP_LT_PH_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 29, |
| OPC_CheckChild1Integer, 64|128,78, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMP_LE_PH), 0|OPFL_Chain, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::CMP_LE_PH_MM), 0|OPFL_Chain, |
| 2, 1, 2, |
| 0, |
| 17, |
| OPC_CheckChild1Integer, 78|128,85, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_RecordChild4, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::STR_D), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 17, |
| OPC_CheckChild1Integer, 80|128,85, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_RecordChild4, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::STR_W), 0|OPFL_Chain, |
| 3, 1, 2, 3, |
| 0, |
| 39|128,18, TARGET_VAL(ISD::XOR), |
| OPC_Scope, 60, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::OR), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_CheckChild1Integer, 3, |
| OPC_SwitchType , 35, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 30, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR64), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 126|128,4, |
| OPC_RecordChild0, |
| OPC_Scope, 100, |
| OPC_CheckChild1Integer, 3, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOT16_MMR6), 0, |
| MVT::i32, 1, 0, |
| 13, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR), 0, |
| MVT::i32, 2, 0, 1, |
| 9, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NotRxRy16), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 30, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOT16_MM), 0, |
| MVT::i32, 1, 0, |
| 24, |
| OPC_CheckPatternPredicate, 8, |
| OPC_Scope, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOT16_MM), 0, |
| MVT::i32, 1, 0, |
| 11, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 24, |
| OPC_CheckPatternPredicate, 16, |
| OPC_Scope, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOT16_MMR6), 0, |
| MVT::i32, 1, 0, |
| 11, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 0, |
| 33|128,1, |
| OPC_RecordChild1, |
| OPC_Scope, 83, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 17, |
| OPC_CheckPredicate, 35, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 0, 2, |
| 58, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_SwitchType , 15, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi64), 0, |
| MVT::i64, 2, 0, 3, |
| 34, MVT::i32, |
| OPC_Scope, 15, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi_MM), 0, |
| MVT::i32, 2, 0, 3, |
| 15, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORI_MMR6), 0, |
| MVT::i32, 2, 0, 3, |
| 0, |
| 0, |
| 0, |
| 60, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XorRxRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| 22, |
| OPC_CheckPatternPredicate, 30, |
| OPC_Scope, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XOR16_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XOR_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 12, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XOR64), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 113|128,2, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 46|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 46|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 0, |
| 115|128,2, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 47|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_B), 0, |
| MVT::v16i8, 2, 1, 0, |
| 47|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_B), 0, |
| MVT::v16i8, 2, 1, 0, |
| 0, |
| 80|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 94, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 94, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 81|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 95, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_H), 0, |
| MVT::v8i16, 2, 1, 0, |
| 95, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_H), 0, |
| MVT::v8i16, 2, 1, 0, |
| 0, |
| 8|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 58, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 58, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 9|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 59, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_W), 0, |
| MVT::v4i32, 2, 1, 0, |
| 59, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_W), 0, |
| MVT::v4i32, 2, 1, 0, |
| 0, |
| 89, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 31, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 31, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 90, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 32, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_D), 0, |
| MVT::v2i64, 2, 1, 0, |
| 32, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_D), 0, |
| MVT::v2i64, 2, 1, 0, |
| 0, |
| 35, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 35, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_D), 0, |
| MVT::v2i64, 2, 1, 0, |
| 63, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_Scope, 15, |
| OPC_CheckChild1Type, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild1Type, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild1Type, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 65, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_Scope, 16, |
| OPC_CheckChild1Type, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_B), 0, |
| MVT::v16i8, 2, 1, 0, |
| 16, |
| OPC_CheckChild1Type, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_H), 0, |
| MVT::v8i16, 2, 1, 0, |
| 16, |
| OPC_CheckChild1Type, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEG_W), 0, |
| MVT::v4i32, 2, 1, 0, |
| 0, |
| 56|128,1, |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 61, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEGI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/14, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEGI_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/14, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORI_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XOR_V), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 37, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEGI_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEGI_H), 0, |
| MVT::v8i16, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XOR_V_H_PSEUDO), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 37, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEGI_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEGI_W), 0, |
| MVT::v4i32, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XOR_V_W_PSEUDO), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 37, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEGI_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BNEGI_D), 0, |
| MVT::v2i64, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XOR_V_D_PSEUDO), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 66|128,1, TARGET_VAL(ISD::CTLZ), |
| OPC_Scope, 73, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_RecordChild0, |
| OPC_CheckChild1Integer, 3, |
| OPC_SwitchType , 35, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 52, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLO), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 53, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLO_R6), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLO_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 25, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 54, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DCLO), 0, |
| MVT::i64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 55, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DCLO_R6), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 0, |
| 117, |
| OPC_RecordChild0, |
| OPC_SwitchType , 34, MVT::i32, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 52, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLZ), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 53, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLZ_R6), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLZ_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 24, MVT::i64, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 54, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DCLZ), 0, |
| MVT::i64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 55, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DCLZ_R6), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 11, MVT::v16i8, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NLZC_B), 0, |
| MVT::v16i8, 1, 0, |
| 11, MVT::v8i16, |
| OPC_CheckChild0Type, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NLZC_H), 0, |
| MVT::v8i16, 1, 0, |
| 11, MVT::v4i32, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NLZC_W), 0, |
| MVT::v4i32, 1, 0, |
| 11, MVT::v2i64, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NLZC_D), 0, |
| MVT::v2i64, 1, 0, |
| 0, |
| 0, |
| 35|128,1, TARGET_VAL(MipsISD::Ext), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 71, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 39, |
| OPC_CheckPredicate, 42, |
| OPC_MoveParent, |
| OPC_SwitchType , 15, MVT::i32, |
| OPC_CheckPatternPredicate, 56, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXT), 0, |
| MVT::i32, 3, 0, 3, 4, |
| 15, MVT::i64, |
| OPC_CheckPatternPredicate, 57, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DEXT), 0, |
| MVT::i64, 3, 0, 3, 4, |
| 0, |
| 20, |
| OPC_CheckPredicate, 43, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 57, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DEXTM), 0, |
| MVT::i64, 3, 0, 3, 4, |
| 0, |
| 28, |
| OPC_CheckPredicate, 44, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 42, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 57, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DEXTU), 0, |
| MVT::i64, 3, 0, 3, 4, |
| 28, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 42, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXT_MM), 0, |
| MVT::i32, 3, 0, 3, 4, |
| 24, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXT_MMR6), 0, |
| MVT::i32, 3, 0, 3, 4, |
| 0, |
| 84|128,18, TARGET_VAL(ISD::AND), |
| OPC_Scope, 22, |
| OPC_CheckAndImm, 127|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::ADD), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 31, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BADDu), 0, |
| MVT::i64, 2, 0, 1, |
| 77|128,4, |
| OPC_RecordChild0, |
| OPC_Scope, 73|128,1, |
| OPC_RecordChild1, |
| OPC_Scope, 123, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 17, |
| OPC_CheckPredicate, 35, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ANDi), 0, |
| MVT::i32, 2, 0, 2, |
| 20, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ANDi64), 0, |
| MVT::i64, 2, 0, 3, |
| 17, |
| OPC_CheckPredicate, 45, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ANDI16_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 20, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ANDi_MM), 0, |
| MVT::i32, 2, 0, 3, |
| 17, |
| OPC_CheckPredicate, 45, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ANDI16_MMR6), 0, |
| MVT::i32, 2, 0, 2, |
| 20, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ANDI_MMR6), 0, |
| MVT::i32, 2, 0, 3, |
| 0, |
| 60, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AND), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AndRxRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| 22, |
| OPC_CheckPatternPredicate, 30, |
| OPC_Scope, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AND16_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AND_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AND_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 12, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AND64), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 125|128,2, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 50|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 50|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 0, |
| 127|128,2, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 51|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_B), 0, |
| MVT::v16i8, 2, 1, 0, |
| 51|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_B), 0, |
| MVT::v16i8, 2, 1, 0, |
| 0, |
| 92|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 98, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 98, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 93|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 99, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_H), 0, |
| MVT::v8i16, 2, 1, 0, |
| 99, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_H), 0, |
| MVT::v8i16, 2, 1, 0, |
| 0, |
| 20|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 62, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 62, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 21|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 63, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_W), 0, |
| MVT::v4i32, 2, 1, 0, |
| 63, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_W), 0, |
| MVT::v4i32, 2, 1, 0, |
| 0, |
| 101, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 35, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 35, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 102, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 36, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_D), 0, |
| MVT::v2i64, 2, 1, 0, |
| 36, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_D), 0, |
| MVT::v2i64, 2, 1, 0, |
| 0, |
| 43, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 43, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_D), 0, |
| MVT::v2i64, 2, 1, 0, |
| 79, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_Scope, 19, |
| OPC_CheckChild1Type, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 19, |
| OPC_CheckChild1Type, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 19, |
| OPC_CheckChild1Type, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 81, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::XOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_Scope, 20, |
| OPC_CheckChild1Type, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_B), 0, |
| MVT::v16i8, 2, 1, 0, |
| 20, |
| OPC_CheckChild1Type, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_H), 0, |
| MVT::v8i16, 2, 1, 0, |
| 20, |
| OPC_CheckChild1Type, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckImmAllOnesV, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLR_W), 0, |
| MVT::v4i32, 2, 1, 0, |
| 0, |
| 56|128,1, |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 61, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/14, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ANDI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/15, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLRI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/14, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ANDI_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/15, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLRI_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AND_V), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 37, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/15, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLRI_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/15, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLRI_H), 0, |
| MVT::v8i16, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AND_V_H_PSEUDO), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 37, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/15, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLRI_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/15, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLRI_W), 0, |
| MVT::v4i32, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AND_V_W_PSEUDO), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 37, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/15, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLRI_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/15, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BCLRI_D), 0, |
| MVT::v2i64, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AND_V_D_PSEUDO), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 89, TARGET_VAL(MipsISD::CIns), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 26, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 58, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CINS), 0, |
| MVT::i64, 3, 0, 3, 4, |
| 26, |
| OPC_CheckPredicate, 44, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 58, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CINS32), 0, |
| MVT::i64, 3, 0, 3, 4, |
| 26, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 58, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CINS_i32), 0, |
| MVT::i32, 3, 0, 3, 4, |
| 0, |
| 45|128,1, TARGET_VAL(ISD::ZERO_EXTEND), |
| OPC_Scope, 125, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 84, TARGET_VAL(ISD::SETCC), |
| OPC_RecordChild0, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_RecordChild1, |
| OPC_Scope, 45, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 46, |
| OPC_MoveParent, |
| OPC_Scope, 17, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 31, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEQi), 0, |
| MVT::i64, 2, 0, 2, |
| 17, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 31, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SNEi), 0, |
| MVT::i64, 2, 0, 2, |
| 0, |
| 15, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 31, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEQ), 0, |
| MVT::i64, 2, 0, 1, |
| 15, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 31, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SNE), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 32, TARGET_VAL(ISD::SHL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 59, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 4, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CINS64_32), 0, |
| MVT::i64, 3, 0, 2, 4, |
| 0, |
| 44, |
| OPC_RecordChild0, |
| OPC_CheckType, MVT::i64, |
| OPC_Scope, 17, |
| OPC_CheckPatternPredicate, 60, |
| OPC_EmitInteger, MVT::i32, 0, |
| OPC_EmitInteger, MVT::i32, 64, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DEXT64_32), 0, |
| MVT::i64, 3, 0, 1, 2, |
| 20, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitNode1, TARGET_VAL(Mips::DSLL64_32), 0, |
| MVT::i64, 1, 0, |
| OPC_EmitInteger, MVT::i32, 64, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSRL), 0, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 0, |
| 79|128,15, TARGET_VAL(ISD::ADD), |
| OPC_Scope, 49, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 47, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_SwitchType , 13, MVT::i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LSA), 0, |
| MVT::i32, 3, 1, 0, 3, |
| 13, MVT::i64, |
| OPC_CheckPatternPredicate, 61, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DLSA), 0, |
| MVT::i64, 3, 1, 0, 3, |
| 0, |
| 49, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 47, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 13, MVT::i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LSA), 0, |
| MVT::i32, 3, 0, 2, 3, |
| 13, MVT::i64, |
| OPC_CheckPatternPredicate, 61, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DLSA), 0, |
| MVT::i64, 3, 0, 2, 3, |
| 0, |
| 18|128,5, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_SwitchOpcode , 113|128,2, TARGET_VAL(MipsISD::Lo), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 67, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_SwitchType , 35, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AddiuRxRxImmX16), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 0, |
| 56, TARGET_VAL(ISD::TargetBlockAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 0, |
| 56, TARGET_VAL(ISD::TargetJumpTable), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 0, |
| 56, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 0, |
| 56, TARGET_VAL(ISD::TargetGlobalTLSAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 0, |
| 56, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 94, TARGET_VAL(MipsISD::GPRel), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 42, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 64, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 42, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 64, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 0, |
| 89, TARGET_VAL(MipsISD::Higher), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 14, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 14, TARGET_VAL(ISD::TargetBlockAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 14, TARGET_VAL(ISD::TargetJumpTable), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 14, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 14, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 89, TARGET_VAL(MipsISD::Hi), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 14, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 14, TARGET_VAL(ISD::TargetBlockAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 14, TARGET_VAL(ISD::TargetJumpTable), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 14, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 14, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 0, |
| 35|128,5, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 119|128,2, TARGET_VAL(MipsISD::Lo), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 68, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 35, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AddiuRxRxImmX16), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 57, TARGET_VAL(ISD::TargetBlockAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 57, TARGET_VAL(ISD::TargetJumpTable), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 57, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 57, TARGET_VAL(ISD::TargetGlobalTLSAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 57, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 24, MVT::i64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 0, |
| 96, TARGET_VAL(MipsISD::GPRel), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 43, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 64, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 43, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 64, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 94, TARGET_VAL(MipsISD::Higher), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 15, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 15, TARGET_VAL(ISD::TargetBlockAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 15, TARGET_VAL(ISD::TargetJumpTable), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 15, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 15, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 94, TARGET_VAL(MipsISD::Hi), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 15, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 15, TARGET_VAL(ISD::TargetBlockAddress), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 15, TARGET_VAL(ISD::TargetJumpTable), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 15, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 15, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 34|128,3, |
| OPC_RecordChild0, |
| OPC_Scope, 95|128,2, |
| OPC_RecordChild1, |
| OPC_Scope, 20|128,1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 17, |
| OPC_CheckPredicate, 48, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 25, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 49, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AddiuRxRxImm16), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AddiuRxRxImmX16), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 50, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDIUR2_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 51, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDIUS5_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 33, |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 12, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDIU_MMR6), 0, |
| MVT::i32, 2, 0, 2, |
| 0, |
| 0, |
| 60, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDU16_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AdduRxRyRz16), 0, |
| MVT::i32, 2, 0, 1, |
| 22, |
| OPC_CheckPatternPredicate, 30, |
| OPC_Scope, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDU16_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 0, |
| 12, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 25, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDu), 0, |
| MVT::i64, 2, 0, 1, |
| 30, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/16, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDVI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/16, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDVI_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 0, |
| 30, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/17, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDVI_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/17, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDVI_H), 0, |
| MVT::v8i16, 2, 1, 2, |
| 0, |
| 30, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDVI_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDVI_W), 0, |
| MVT::v4i32, 2, 1, 2, |
| 0, |
| 30, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/19, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDVI_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/19, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDVI_D), 0, |
| MVT::v2i64, 2, 1, 2, |
| 0, |
| 0, |
| 61, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::MUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_SwitchType , 11, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDV_B), 0, |
| MVT::v16i8, 3, 0, 1, 2, |
| 11, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDV_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 11, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDV_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 11, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDV_D), 0, |
| MVT::v2i64, 3, 0, 1, 2, |
| 0, |
| 0, |
| 62, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::MUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 11, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDV_B), 0, |
| MVT::v16i8, 3, 2, 0, 1, |
| 11, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDV_H), 0, |
| MVT::v8i16, 3, 2, 0, 1, |
| 11, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDV_W), 0, |
| MVT::v4i32, 3, 2, 0, 1, |
| 11, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDV_D), 0, |
| MVT::v2i64, 3, 2, 0, 1, |
| 0, |
| 76, |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDQ_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDU_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDV_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDV_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDV_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDV_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 7|128,5, TARGET_VAL(ISD::SIGN_EXTEND), |
| OPC_Scope, 118|128,4, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 73, TARGET_VAL(ISD::ADD), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_Scope, 38, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 4, 5, |
| 29, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDu), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 3, 4, |
| 0, |
| 77, TARGET_VAL(ISD::SHL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_Scope, 40, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLL), 0, |
| MVT::i32, 2, 0, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 4, 5, |
| 31, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLLV), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 3, 4, |
| 0, |
| 77, TARGET_VAL(ISD::SRL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_Scope, 40, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SRL), 0, |
| MVT::i32, 2, 0, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 4, 5, |
| 31, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SRLV), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 3, 4, |
| 0, |
| 77, TARGET_VAL(ISD::SRA), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_Scope, 40, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SRA), 0, |
| MVT::i32, 2, 0, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 4, 5, |
| 31, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SRAV), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 3, 4, |
| 0, |
| 31, TARGET_VAL(ISD::SUB), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::SUBu), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 3, 4, |
| 66, TARGET_VAL(ISD::MUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_Scope, 29, |
| OPC_CheckPatternPredicate, 65, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode2, TARGET_VAL(Mips::MUL), 0, |
| MVT::i32, MVT::i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 3, 5, |
| 28, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::MUL_R6), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 3, 4, |
| 0, |
| 29, TARGET_VAL(MipsISD::MFHI), |
| OPC_RecordChild0, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoMFHI), 0, |
| MVT::i32, 1, 0, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 1, 2, 3, |
| 29, TARGET_VAL(MipsISD::MFLO), |
| OPC_RecordChild0, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoMFLO), 0, |
| MVT::i32, 1, 0, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 1, 2, 3, |
| 33, TARGET_VAL(ISD::SDIV), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::DIV), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 3, 4, |
| 33, TARGET_VAL(ISD::UDIV), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::DIVU), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 3, 4, |
| 33, TARGET_VAL(ISD::SREM), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::MOD), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 3, 4, |
| 33, TARGET_VAL(ISD::UREM), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 34, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::MODU), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 2, 3, 4, |
| 0, |
| 12, |
| OPC_RecordChild0, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL64_32), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 21, TARGET_VAL(ISD::CALLSEQ_START), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_MoveParent, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ADJCALLSTACKDOWN), 0|OPFL_Chain|OPFL_GlueOutput, |
| 2, 1, 2, |
| 22, TARGET_VAL(ISD::CALLSEQ_END), |
| OPC_RecordNode, |
| OPC_CaptureGlueInput, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_MoveParent, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ADJCALLSTACKUP), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput, |
| 2, 1, 2, |
| 64, TARGET_VAL(ISD::FrameIndex), |
| OPC_RecordNode, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 7, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LEA_ADDiu), 0, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPatternPredicate, 15, |
| OPC_CheckComplexPat, /*CP*/4, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AddiuRxRyOffMemX16), 0, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPatternPredicate, 8, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LEA_ADDiu_MM), 0, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPatternPredicate, 66, |
| OPC_CheckComplexPat, /*CP*/1, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LEA_ADDiu64), 0, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 32, TARGET_VAL(MipsISD::Ins), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_RecordChild3, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INS_MMR6), 0, |
| MVT::i32, 4, 0, 4, 5, 3, |
| 53|128,26, TARGET_VAL(ISD::SETCC), |
| OPC_RecordChild0, |
| OPC_Scope, 82|128,7, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_Scope, 86, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 46, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 1, |
| 13, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 13, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SltiuCCRxImmX16), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 32, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 1, 0, |
| 13, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 0, |
| 41, |
| OPC_CheckChild1Integer, 3|128,0|128,4, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitInteger, MVT::i32, 1|128,0|128,4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SltiCCRxImmX16), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::LiRxImmX16), 0, |
| MVT::i32, 1, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XorRxRxRy16), 0, |
| MVT::i32, 2, 2, 4, |
| 75|128,6, |
| OPC_RecordChild1, |
| OPC_Scope, 77|128,1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 43, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 2, |
| 12, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 12, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SltiCCRxImmX16), 0, |
| MVT::i32, 2, 0, 2, |
| 0, |
| 43, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 2, |
| 12, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 12, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SltiuCCRxImmX16), 0, |
| MVT::i32, 2, 0, 2, |
| 0, |
| 52, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_Scope, 23, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi), 0, |
| MVT::i32, 2, 0, 2, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 3, 4, |
| 23, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi_MM), 0, |
| MVT::i32, 2, 0, 2, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi_MM), 0, |
| MVT::i32, 2, 3, 4, |
| 0, |
| 52, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_Scope, 23, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 0, 2, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 3, 4, |
| 23, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 0, 2, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi_MM), 0, |
| MVT::i32, 2, 3, 4, |
| 0, |
| 0, |
| 39, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SltCCRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 39, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SltuCCRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 39, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SltCCRxRy16), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 39, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SltuCCRxRy16), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 72, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTiu), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTiu_MM), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitNode1, TARGET_VAL(Mips::XorRxRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SltiuCCRxImmX16), 0, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 79, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 2, 3, |
| 28, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitInteger, MVT::i32, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::LiRxImmX16), 0, |
| MVT::i32, 1, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::XorRxRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SltuCCRxRy16), 0, |
| MVT::i32, 2, 3, 4, |
| 0, |
| 79, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi_MM), 0, |
| MVT::i32, 2, 2, 3, |
| 28, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitNode1, TARGET_VAL(Mips::SltCCRxRy16), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::LiRxImm16), 0, |
| MVT::i32, 1, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XorRxRxRy16), 0, |
| MVT::i32, 2, 2, 4, |
| 0, |
| 79, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi_MM), 0, |
| MVT::i32, 2, 2, 3, |
| 28, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitNode1, TARGET_VAL(Mips::SltuCCRxRy16), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::LiRxImmX16), 0, |
| MVT::i32, 1, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XorRxRxRy16), 0, |
| MVT::i32, 2, 2, 4, |
| 0, |
| 79, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi_MM), 0, |
| MVT::i32, 2, 2, 3, |
| 28, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitNode1, TARGET_VAL(Mips::SltCCRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::LiRxImmX16), 0, |
| MVT::i32, 1, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XorRxRxRy16), 0, |
| MVT::i32, 2, 2, 4, |
| 0, |
| 79, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi_MM), 0, |
| MVT::i32, 2, 2, 3, |
| 28, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitNode1, TARGET_VAL(Mips::SltuCCRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::LiRxImmX16), 0, |
| MVT::i32, 1, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XorRxRxRy16), 0, |
| MVT::i32, 2, 2, 4, |
| 0, |
| 0, |
| 0, |
| 104|128,2, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_Scope, 39, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 15, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckPatternPredicate, 67, |
| OPC_EmitInteger, MVT::i64, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 1, |
| 16, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckPatternPredicate, 67, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 58|128,2, |
| OPC_RecordChild1, |
| OPC_Scope, 93, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 14, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckPatternPredicate, 24, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 2, |
| 14, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_CheckPatternPredicate, 24, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 2, |
| 25, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_CheckPatternPredicate, 67, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTi64), 0, |
| MVT::i32, 2, 0, 2, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 3, 4, |
| 25, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_CheckPatternPredicate, 67, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 0, 2, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 3, 4, |
| 0, |
| 14, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 24, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 0, 1, |
| 14, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 24, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 0, 1, |
| 14, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 67, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 1, 0, |
| 14, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 67, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 1, 0, |
| 25, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 67, |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR64), 0, |
| MVT::i64, 2, 0, 1, |
| OPC_EmitInteger, MVT::i64, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTiu64), 0, |
| MVT::i32, 2, 2, 3, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 67, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_EmitNode1, TARGET_VAL(Mips::XOR64), 0, |
| MVT::i64, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 2, 3, |
| 25, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 67, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 2, 3, |
| 25, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 67, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 1, 0, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 2, 3, |
| 25, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 67, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLT64), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 2, 3, |
| 25, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 67, |
| OPC_EmitNode1, TARGET_VAL(Mips::SLTu64), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORi), 0, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 0, |
| 15|128,4, |
| OPC_CheckChild0Type, MVT::f32, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 26, |
| OPC_CheckChild2CondCode, ISD::SETUO, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_UN_S), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_UN_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETOEQ, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_EQ_S), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_EQ_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETUEQ, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_UEQ_S), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_UEQ_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETOLT, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_S), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_ULT_S), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_ULT_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETOLE, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_S), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_ULE_S), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_ULE_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_EQ_S), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_EQ_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_S), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_S_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_S), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_S_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_S), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_S), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 48, |
| OPC_CheckChild2CondCode, ISD::SETONE, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_UEQ_S), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_UEQ_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MMR6), 0, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 48, |
| OPC_CheckChild2CondCode, ISD::SETO, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_UN_S), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_UN_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MMR6), 0, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 48, |
| OPC_CheckChild2CondCode, ISD::SETUNE, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_EQ_S), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_EQ_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MMR6), 0, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 48, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_EQ_S), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_EQ_S_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MMR6), 0, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 0, |
| 15|128,4, |
| OPC_CheckChild0Type, MVT::f64, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 26, |
| OPC_CheckChild2CondCode, ISD::SETUO, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_UN_D), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_UN_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETOEQ, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_EQ_D), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_EQ_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETUEQ, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_UEQ_D), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_UEQ_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETOLT, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_D), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_ULT_D), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_ULT_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETOLE, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_D), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_ULE_D), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_ULE_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_EQ_D), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_EQ_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_D), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_D_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_D), 0, |
| MVT::i32, 2, 1, 0, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_D_MMR6), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_D), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LT_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 26, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_D), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CMP_LE_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 48, |
| OPC_CheckChild2CondCode, ISD::SETONE, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_UEQ_D), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_UEQ_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MMR6), 0, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 48, |
| OPC_CheckChild2CondCode, ISD::SETO, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_UN_D), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_UN_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MMR6), 0, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 48, |
| OPC_CheckChild2CondCode, ISD::SETUNE, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_EQ_D), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_EQ_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MMR6), 0, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 48, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_Scope, 21, |
| OPC_CheckPatternPredicate, 33, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_EQ_D), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR), 0, |
| MVT::i32, 2, 2, 3, |
| 21, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitNode1, TARGET_VAL(Mips::CMP_EQ_D_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_MMR6), 0, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 0, |
| 19|128,1, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_Scope, 27, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/20, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CEQI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CEQ_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/20, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLEI_S_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLE_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/16, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLEI_U_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLE_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/20, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLTI_S_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLT_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/16, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLTI_U_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLT_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 0, |
| 19|128,1, |
| OPC_CheckChild0Type, MVT::v8i16, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_Scope, 27, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/21, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CEQI_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CEQ_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/21, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLEI_S_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLE_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/17, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLEI_U_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLE_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/21, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLTI_S_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLT_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/17, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLTI_U_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLT_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 0, |
| 19|128,1, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_Scope, 27, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/22, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CEQI_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CEQ_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/22, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLEI_S_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLE_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLEI_U_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLE_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/22, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLTI_S_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLT_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLTI_U_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLT_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 0, |
| 19|128,1, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_Scope, 27, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/23, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CEQI_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CEQ_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/23, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLEI_S_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLE_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/19, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLEI_U_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLE_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/23, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLTI_S_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLT_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 27, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/19, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLTI_U_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CLT_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 61|128,1, |
| OPC_CheckChild0Type, MVT::v4f32, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_Scope, 12, |
| OPC_CheckChild2CondCode, ISD::SETOEQ, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCEQ_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETOLE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCLE_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETOLT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCLT_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETONE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCNE_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETO, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCOR_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETUEQ, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCUEQ_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCULE_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCULT_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETUO, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCUN_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETUNE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCUNE_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCEQ_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCLE_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCLT_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCNE_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 61|128,1, |
| OPC_CheckChild0Type, MVT::v2f64, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_Scope, 12, |
| OPC_CheckChild2CondCode, ISD::SETOEQ, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCEQ_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETOLE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCLE_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETOLT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCLT_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETONE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCNE_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETO, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCOR_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETUEQ, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCUEQ_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCULE_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCULT_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETUO, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCUN_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETUNE, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCUNE_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCEQ_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCLE_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCLT_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 12, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCNE_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 76, TARGET_VAL(MipsISD::FPBrcond), |
| OPC_RecordNode, |
| OPC_CaptureGlueInput, |
| OPC_Scope, 35, |
| OPC_CheckChild1Integer, 0, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 69, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BC1F), 0|OPFL_Chain|OPFL_GlueInput, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 10, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BC1F_MM), 0|OPFL_Chain|OPFL_GlueInput, |
| 2, 1, 2, |
| 0, |
| 35, |
| OPC_CheckChild1Integer, 2, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 69, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BC1T), 0|OPFL_Chain|OPFL_GlueInput, |
| 2, 1, 2, |
| 10, |
| OPC_CheckPatternPredicate, 10, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BC1T_MM), 0|OPFL_Chain|OPFL_GlueInput, |
| 2, 1, 2, |
| 0, |
| 0, |
| 41|128,2, TARGET_VAL(ISD::SUB), |
| OPC_Scope, 14, |
| OPC_CheckChild0Integer, 0, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NegRxRy16), 0, |
| MVT::i32, 1, 0, |
| 22|128,2, |
| OPC_RecordChild0, |
| OPC_Scope, 7|128,1, |
| OPC_RecordChild1, |
| OPC_SwitchType , 58, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBU16_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SubuRxRyRz16), 0, |
| MVT::i32, 2, 0, 1, |
| 22, |
| OPC_CheckPatternPredicate, 30, |
| OPC_Scope, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBU16_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 25, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSUBu), 0, |
| MVT::i64, 2, 0, 1, |
| 13, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/16, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBVI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 13, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/17, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBVI_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 13, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBVI_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 13, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/19, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBVI_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 0, |
| 61, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::MUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_SwitchType , 11, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUBV_B), 0, |
| MVT::v16i8, 3, 0, 1, 2, |
| 11, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUBV_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 11, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUBV_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 11, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUBV_D), 0, |
| MVT::v2i64, 3, 0, 1, 2, |
| 0, |
| 75, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBQ_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBU_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBV_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBV_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBV_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBV_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 7|128,17, TARGET_VAL(ISD::OR), |
| OPC_Scope, 27|128,4, |
| OPC_RecordChild0, |
| OPC_Scope, 35|128,1, |
| OPC_RecordChild1, |
| OPC_Scope, 85, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 20, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORI_MMR6), 0, |
| MVT::i32, 2, 0, 3, |
| 17, |
| OPC_CheckPredicate, 35, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORi), 0, |
| MVT::i32, 2, 0, 2, |
| 39, |
| OPC_CheckPredicate, 21, |
| OPC_MoveParent, |
| OPC_SwitchType , 15, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORi64), 0, |
| MVT::i64, 2, 0, 3, |
| 15, MVT::i32, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitConvertToTarget, 1, |
| OPC_EmitNodeXForm, 3, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORi_MM), 0, |
| MVT::i32, 2, 0, 3, |
| 0, |
| 0, |
| 60, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OrRxRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| 22, |
| OPC_CheckPatternPredicate, 30, |
| OPC_Scope, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR16_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 12, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 24, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR64), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 113|128,2, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 46|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 46|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 0, |
| 115|128,2, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 47|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_B), 0, |
| MVT::v16i8, 2, 1, 0, |
| 47|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_B), 0, |
| MVT::v16i8, 2, 1, 0, |
| 0, |
| 80|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 94, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 94, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 81|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 95, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_H), 0, |
| MVT::v8i16, 2, 1, 0, |
| 95, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_H), 0, |
| MVT::v8i16, 2, 1, 0, |
| 0, |
| 8|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 58, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 58, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 9|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 59, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_W), 0, |
| MVT::v4i32, 2, 1, 0, |
| 59, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_W), 0, |
| MVT::v4i32, 2, 1, 0, |
| 0, |
| 89, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 31, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 31, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 90, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 32, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_D), 0, |
| MVT::v2i64, 2, 1, 0, |
| 32, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_D), 0, |
| MVT::v2i64, 2, 1, 0, |
| 0, |
| 35, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 35, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 40, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_D), 0, |
| MVT::v2i64, 2, 1, 0, |
| 63, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_Scope, 15, |
| OPC_CheckChild1Type, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 15, |
| OPC_CheckChild1Type, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 15, |
| OPC_CheckChild1Type, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 65, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::SHL), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckPredicate, 36, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_Scope, 16, |
| OPC_CheckChild1Type, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_B), 0, |
| MVT::v16i8, 2, 1, 0, |
| 16, |
| OPC_CheckChild1Type, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_H), 0, |
| MVT::v8i16, 2, 1, 0, |
| 16, |
| OPC_CheckChild1Type, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSET_W), 0, |
| MVT::v4i32, 2, 1, 0, |
| 0, |
| 56|128,1, |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 61, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSETI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/14, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSETI_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/14, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORI_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_V), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 37, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSETI_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSETI_H), 0, |
| MVT::v8i16, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_V_H_PSEUDO), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 37, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSETI_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSETI_W), 0, |
| MVT::v4i32, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_V_W_PSEUDO), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 37, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSETI_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/13, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSETI_D), 0, |
| MVT::v2i64, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::OR_V_D_PSEUDO), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 10|128,8, TARGET_VAL(ISD::SHL), |
| OPC_RecordChild0, |
| OPC_Scope, 99, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 17, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 33, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 25, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSLL), 0, |
| MVT::i64, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SllX16), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 52, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL16_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 0, |
| 31, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| OPC_RecordChild0, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSLLV), 0, |
| MVT::i64, 2, 0, 3, |
| 54, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_SwitchType , 35, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLLV), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SllvRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLLV_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 25, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSLLV), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 82|128,5, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 45|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 45|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 93, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 93, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 57, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 57, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 30, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 30, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 119, |
| OPC_RecordChild1, |
| OPC_SwitchType , 27, MVT::v16i8, |
| OPC_CheckChild1Type, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/24, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLLI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 27, MVT::v8i16, |
| OPC_CheckChild1Type, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/25, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLLI_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 27, MVT::v4i32, |
| OPC_CheckChild1Type, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLLI_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 27, MVT::v2i64, |
| OPC_CheckChild1Type, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/26, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLLI_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 10|128,8, TARGET_VAL(ISD::SRL), |
| OPC_RecordChild0, |
| OPC_Scope, 99, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 17, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 33, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 25, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSRL), 0, |
| MVT::i64, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SrlX16), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 52, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL16_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 0, |
| 31, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| OPC_RecordChild0, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSRLV), 0, |
| MVT::i64, 2, 0, 3, |
| 54, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_SwitchType , 35, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLV), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SrlvRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLV_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 25, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSRLV), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 82|128,5, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 45|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 45|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 93, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 93, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 57, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 57, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 30, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 30, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 119, |
| OPC_RecordChild1, |
| OPC_SwitchType , 27, MVT::v16i8, |
| OPC_CheckChild1Type, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/24, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 27, MVT::v8i16, |
| OPC_CheckChild1Type, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/25, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLI_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 27, MVT::v4i32, |
| OPC_CheckChild1Type, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLI_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 27, MVT::v2i64, |
| OPC_CheckChild1Type, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/26, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRLI_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 118|128,7, TARGET_VAL(ISD::SRA), |
| OPC_RecordChild0, |
| OPC_Scope, 79, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 17, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 33, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 25, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSRA), 0, |
| MVT::i64, 2, 0, 2, |
| 33, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SraX16), 0, |
| MVT::i32, 2, 0, 2, |
| 12, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 0, |
| 0, |
| 31, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| OPC_RecordChild0, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSRAV), 0, |
| MVT::i64, 2, 0, 3, |
| 54, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_SwitchType , 35, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRAV), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SravRxRy16), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRAV_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 25, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSRAV), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 82|128,5, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_Scope, 45|128,1, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 45|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 8, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 37, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 93, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 93, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild4, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 38, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 57, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 57, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 39, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 30, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 30, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckPredicate, 41, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 119, |
| OPC_RecordChild1, |
| OPC_SwitchType , 27, MVT::v16i8, |
| OPC_CheckChild1Type, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/24, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRAI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 27, MVT::v8i16, |
| OPC_CheckChild1Type, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/25, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRAI_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 27, MVT::v4i32, |
| OPC_CheckChild1Type, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRAI_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 27, MVT::v2i64, |
| OPC_CheckChild1Type, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/26, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRAI_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 15|128,1, TARGET_VAL(ISD::ROTR), |
| OPC_RecordChild0, |
| OPC_Scope, 63, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 17, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 56, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ROTR), 0, |
| MVT::i32, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 33, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 57, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DROTR), 0, |
| MVT::i64, 2, 0, 2, |
| 17, |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ROTR_MM), 0, |
| MVT::i32, 2, 0, 2, |
| 0, |
| 31, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE), |
| OPC_RecordChild0, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DROTRV), 0, |
| MVT::i64, 2, 0, 3, |
| 43, |
| OPC_RecordChild1, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 56, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ROTRV), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ROTRV_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 57, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DROTRV), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 0, |
| 78, TARGET_VAL(MipsISD::Sync), |
| OPC_RecordNode, |
| OPC_Scope, 19, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 70, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SYNC), 0|OPFL_Chain, |
| 1, 2, |
| 19, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 71, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitInteger, MVT::i32, 0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SYNC), 0|OPFL_Chain, |
| 1, 1, |
| 34, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SYNC_MM), 0|OPFL_Chain, |
| 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::SYNC_MMR6), 0|OPFL_Chain, |
| 1, 2, |
| 0, |
| 0, |
| 82, TARGET_VAL(ISD::ADDC), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_Scope, 37, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 19, |
| OPC_MoveParent, |
| OPC_SwitchType , 12, MVT::i32, |
| OPC_CheckPatternPredicate, 72, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0|OPFL_GlueOutput, |
| MVT::i32, 2, 0, 2, |
| 12, MVT::i64, |
| OPC_CheckPatternPredicate, 73, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0|OPFL_GlueOutput, |
| MVT::i64, 2, 0, 2, |
| 0, |
| 26, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 72, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDu), 0|OPFL_GlueOutput, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDSC), 0|OPFL_GlueOutput, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 12, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 73, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDu), 0|OPFL_GlueOutput, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 76, TARGET_VAL(ISD::TRUNCATE), |
| OPC_Scope, 45, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 19, TARGET_VAL(ISD::AssertZext), |
| OPC_RecordChild0, |
| OPC_CheckPredicate, 53, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 0, 1, |
| 17, TARGET_VAL(ISD::AssertSext), |
| OPC_RecordChild0, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 27, |
| OPC_RecordChild0, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL), 0, |
| MVT::i32, 2, 2, 3, |
| 0, |
| 66, TARGET_VAL(MipsISD::SHILO), |
| OPC_RecordChild0, |
| OPC_Scope, 36, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 54, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHILO), 0, |
| MVT::Untyped, 2, 2, 1, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHILO_MM), 0, |
| MVT::Untyped, 2, 2, 1, |
| 0, |
| 25, |
| OPC_RecordChild1, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHILOV), 0, |
| MVT::Untyped, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHILOV_MM), 0, |
| MVT::Untyped, 2, 0, 1, |
| 0, |
| 0, |
| 39, TARGET_VAL(MipsISD::EXTP), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_Scope, 21, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTP), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 3, |
| 12, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTPV), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 1, |
| 0, |
| 39, TARGET_VAL(MipsISD::EXTPDP), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_Scope, 21, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTPDP), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 3, |
| 12, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTPDPV), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 1, |
| 0, |
| 39, TARGET_VAL(MipsISD::EXTR_W), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_Scope, 21, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTR_W), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 3, |
| 12, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTRV_W), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 1, |
| 0, |
| 39, TARGET_VAL(MipsISD::EXTR_R_W), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_Scope, 21, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTR_R_W), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 3, |
| 12, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTRV_R_W), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 1, |
| 0, |
| 39, TARGET_VAL(MipsISD::EXTR_RS_W), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_Scope, 21, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTR_RS_W), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 3, |
| 12, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTRV_RS_W), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 1, |
| 0, |
| 39, TARGET_VAL(MipsISD::EXTR_S_H), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_Scope, 21, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 25, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTR_S_H), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 3, |
| 12, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::EXTRV_S_H), 0|OPFL_Chain, |
| MVT::i32, 2, 2, 1, |
| 0, |
| 83|128,4, TARGET_VAL(MipsISD::VEXTRACT_SEXT_ELT), |
| OPC_RecordChild0, |
| OPC_Scope, 29|128,1, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_RecordChild1, |
| OPC_Scope, 25, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_S_B), 0, |
| MVT::i32, 2, 0, 2, |
| 51, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 4, 5, |
| OPC_EmitInteger, MVT::i32, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA), 0, |
| MVT::i32, 2, 6, 7, |
| 73, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_B), 0, |
| MVT::v16i8, 2, 0, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 8, 9, |
| OPC_EmitInteger, MVT::i32, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA), 0, |
| MVT::i32, 2, 10, 11, |
| 0, |
| 29|128,1, |
| OPC_CheckChild0Type, MVT::v8i16, |
| OPC_RecordChild1, |
| OPC_Scope, 25, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_S_H), 0, |
| MVT::i32, 2, 0, 2, |
| 51, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 4, 5, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA), 0, |
| MVT::i32, 2, 6, 7, |
| 73, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_H), 0, |
| MVT::v8i16, 2, 0, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 8, 9, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRA), 0, |
| MVT::i32, 2, 10, 11, |
| 0, |
| 7|128,1, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_RecordChild1, |
| OPC_Scope, 25, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 30, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_S_W), 0, |
| MVT::i32, 2, 0, 2, |
| 40, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 4, 5, |
| 62, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_W), 0, |
| MVT::v4i32, 2, 0, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 8, 9, |
| 0, |
| 7|128,1, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_RecordChild1, |
| OPC_Scope, 25, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 34, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 61, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_S_D), 0, |
| MVT::i64, 2, 0, 2, |
| 40, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 74, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i64, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR64RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i64, 2, 4, 5, |
| 62, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 74, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_D), 0, |
| MVT::v2i64, 2, 0, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i64, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR64RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i64, 2, 8, 9, |
| 0, |
| 0, |
| 29|128,5, TARGET_VAL(MipsISD::VEXTRACT_ZEXT_ELT), |
| OPC_RecordChild0, |
| OPC_Scope, 29|128,1, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_RecordChild1, |
| OPC_Scope, 25, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_U_B), 0, |
| MVT::i32, 2, 0, 2, |
| 51, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 4, 5, |
| OPC_EmitInteger, MVT::i32, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL), 0, |
| MVT::i32, 2, 6, 7, |
| 73, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i8, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_B), 0, |
| MVT::v16i8, 2, 0, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 8, 9, |
| OPC_EmitInteger, MVT::i32, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL), 0, |
| MVT::i32, 2, 10, 11, |
| 0, |
| 29|128,1, |
| OPC_CheckChild0Type, MVT::v8i16, |
| OPC_RecordChild1, |
| OPC_Scope, 25, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_U_H), 0, |
| MVT::i32, 2, 0, 2, |
| 51, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 4, 5, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL), 0, |
| MVT::i32, 2, 6, 7, |
| 73, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i16, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_H), 0, |
| MVT::v8i16, 2, 0, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 8, 9, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SRL), 0, |
| MVT::i32, 2, 10, 11, |
| 0, |
| 23|128,1, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_RecordChild1, |
| OPC_Scope, 41, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 30, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 61, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_U_W), 0, |
| MVT::i32, 2, 0, 2, |
| 12, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_S_W), 0, |
| MVT::i32, 2, 0, 2, |
| 0, |
| 40, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 4, 5, |
| 62, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_W), 0, |
| MVT::v4i32, 2, 0, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 8, 9, |
| 0, |
| 28, |
| OPC_CheckChild0Type, MVT::v4f32, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 30, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_S_W), 0, |
| MVT::i32, 2, 0, 2, |
| 7|128,1, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_RecordChild1, |
| OPC_Scope, 25, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 34, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_S_D), 0, |
| MVT::i64, 2, 0, 2, |
| 40, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 74, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i64, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR64RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i64, 2, 4, 5, |
| 62, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 74, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_D), 0, |
| MVT::v2i64, 2, 0, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_64, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i64, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR64RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i64, 2, 8, 9, |
| 0, |
| 28, |
| OPC_CheckChild0Type, MVT::v2f64, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 34, |
| OPC_MoveParent, |
| OPC_MoveChild2, |
| OPC_CheckValueType, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_S_D), 0, |
| MVT::i64, 2, 0, 2, |
| 0, |
| 104|128,1, TARGET_VAL(ISD::EXTRACT_VECTOR_ELT), |
| OPC_RecordChild0, |
| OPC_Scope, 24, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 28, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_S_W), 0, |
| MVT::i32, 2, 0, 2, |
| 101, |
| OPC_CheckChild0Type, MVT::v4f32, |
| OPC_RecordChild1, |
| OPC_Scope, 21, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 30, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_FW_PSEUDO), 0, |
| MVT::f32, 2, 0, 2, |
| 25, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::f32, 2, 2, 3, |
| 47, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_W), 0, |
| MVT::v4i32, 2, 0, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::f32, 2, 6, 7, |
| 0, |
| 101, |
| OPC_CheckChild0Type, MVT::v2f64, |
| OPC_RecordChild1, |
| OPC_Scope, 21, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 34, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::COPY_FD_PSEUDO), 0, |
| MVT::f64, 2, 0, 2, |
| 25, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_64, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::f64, 2, 2, 3, |
| 47, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::i32, 2, 1, 2, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitNode1, TARGET_VAL(Mips::SPLAT_D), 0, |
| MVT::v2i64, 2, 0, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_64, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::f64, 2, 6, 7, |
| 0, |
| 0, |
| 100|128,1, TARGET_VAL(MipsISD::JmpLink), |
| OPC_RecordNode, |
| OPC_CaptureGlueInput, |
| OPC_RecordChild1, |
| OPC_Scope, 13|128,1, |
| OPC_MoveChild1, |
| OPC_SwitchOpcode , 73, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_Scope, 23, |
| OPC_MoveParent, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JAL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 52, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JALX), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 0, |
| 12, |
| OPC_CheckType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::Jal16), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 33, |
| OPC_MoveParent, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_Scope, 6, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JAL_MM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 6, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JALX_MM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 0, |
| 9, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JAL_MMR6), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 0, |
| 0, |
| 59, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_SwitchType , 43, MVT::i32, |
| OPC_MoveParent, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 75, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JAL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::Jal16), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JAL_MM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JAL_MMR6), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JAL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 0, |
| 0, |
| 54, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 76, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JALRPseudo), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 77, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JALRHBPseudo), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JumpLinkReg16), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JALR16_MM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JALRC16_MMR6), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 0, |
| 24, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 78, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JALR64Pseudo), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 79, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JALRHB64Pseudo), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1, |
| 1, 1, |
| 0, |
| 0, |
| 63|128,1, TARGET_VAL(MipsISD::TailCall), |
| OPC_RecordNode, |
| OPC_CaptureGlueInput, |
| OPC_RecordChild1, |
| OPC_Scope, 75, |
| OPC_MoveChild1, |
| OPC_SwitchOpcode , 33, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALL_MM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALL_MMR6), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 0, |
| 33, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALL), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALL_MM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALL_MMR6), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 0, |
| 0, |
| 64, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 80, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALLREG), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 81, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALLREGHB), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 82, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALLR6REG), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 83, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALLHBR6REG), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALLREG_MM), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALLREG_MMR6), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 0, |
| 44, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 84, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALLREG64), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 85, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALLREGHB64), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 86, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALL64R6REG), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 87, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TAILCALLHB64R6REG), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic1, |
| 1, 1, |
| 0, |
| 0, |
| 106|128,2, TARGET_VAL(MipsISD::Hi), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 77, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_SwitchType , 43, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi_MM), 0, |
| MVT::i32, 1, 0, |
| 20, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitNode1, TARGET_VAL(Mips::LiRxImmX16), 0, |
| MVT::i32, 1, 0, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SllX16), 0, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 27, MVT::i64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 14, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 77, TARGET_VAL(ISD::TargetBlockAddress), |
| OPC_MoveParent, |
| OPC_SwitchType , 43, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi_MM), 0, |
| MVT::i32, 1, 0, |
| 20, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitNode1, TARGET_VAL(Mips::LiRxImmX16), 0, |
| MVT::i32, 1, 0, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SllX16), 0, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 27, MVT::i64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 14, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 77, TARGET_VAL(ISD::TargetJumpTable), |
| OPC_MoveParent, |
| OPC_SwitchType , 43, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi_MM), 0, |
| MVT::i32, 1, 0, |
| 20, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitNode1, TARGET_VAL(Mips::LiRxImmX16), 0, |
| MVT::i32, 1, 0, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SllX16), 0, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 27, MVT::i64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 14, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 56, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_SwitchType , 22, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 27, MVT::i64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 14, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 56, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_SwitchType , 22, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 27, MVT::i64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 62, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 14, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 0, |
| 62|128,3, TARGET_VAL(MipsISD::Lo), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 69, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_SwitchType , 30, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 13, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 32, MVT::i64, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 62, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 14, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 79, TARGET_VAL(ISD::TargetBlockAddress), |
| OPC_MoveParent, |
| OPC_SwitchType , 40, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LiRxImmX16), 0, |
| MVT::i32, 1, 0, |
| 13, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 32, MVT::i64, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 62, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 14, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 69, TARGET_VAL(ISD::TargetJumpTable), |
| OPC_MoveParent, |
| OPC_SwitchType , 30, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 13, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 32, MVT::i64, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 62, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 14, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 69, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_SwitchType , 30, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 13, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 32, MVT::i64, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 62, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 14, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 69, TARGET_VAL(ISD::TargetGlobalTLSAddress), |
| OPC_MoveParent, |
| OPC_SwitchType , 30, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 13, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 32, MVT::i64, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 62, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 14, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 69, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_SwitchType , 30, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 0, |
| 13, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 0, |
| 0, |
| 32, MVT::i64, |
| OPC_Scope, 14, |
| OPC_CheckPatternPredicate, 62, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 14, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 0, |
| 0, |
| 86, TARGET_VAL(MipsISD::GotHi), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 38, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_SwitchType , 22, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 9, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 38, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_SwitchType , 22, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 9, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 0, |
| 64, TARGET_VAL(MipsISD::TlsHi), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetGlobalTLSAddress), |
| OPC_MoveParent, |
| OPC_SwitchType , 43, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi_MM), 0, |
| MVT::i32, 1, 0, |
| 20, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitNode1, TARGET_VAL(Mips::LiRxImmX16), 0, |
| MVT::i32, 1, 0, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SllX16), 0, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 9, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 35|128,2, TARGET_VAL(MipsISD::Wrapper), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_SwitchOpcode , 52, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_SwitchType , 35, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AddiuRxRxImmX16), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 41, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 41, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 41, TARGET_VAL(ISD::TargetBlockAddress), |
| OPC_MoveParent, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 41, TARGET_VAL(ISD::TargetJumpTable), |
| OPC_MoveParent, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 52, TARGET_VAL(ISD::TargetGlobalTLSAddress), |
| OPC_MoveParent, |
| OPC_SwitchType , 35, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AddiuRxRxImmX16), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 0, |
| 6|128,1, TARGET_VAL(MipsISD::FPCmp), |
| OPC_RecordChild0, |
| OPC_Scope, 39, |
| OPC_CheckChild0Type, MVT::f32, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 69, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCMP_S32), 0|OPFL_GlueOutput, |
| MVT::i32, 3, 0, 1, 3, |
| 13, |
| OPC_CheckPatternPredicate, 10, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCMP_S32_MM), 0|OPFL_GlueOutput, |
| MVT::i32, 3, 0, 1, 3, |
| 0, |
| 53, |
| OPC_CheckChild0Type, MVT::f64, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 88, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCMP_D32), 0|OPFL_GlueOutput, |
| MVT::i32, 3, 0, 1, 3, |
| 13, |
| OPC_CheckPatternPredicate, 89, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCMP_D64), 0|OPFL_GlueOutput, |
| MVT::i32, 3, 0, 1, 3, |
| 13, |
| OPC_CheckPatternPredicate, 10, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCMP_D32_MM), 0|OPFL_GlueOutput, |
| MVT::i32, 3, 0, 1, 3, |
| 0, |
| 36, |
| OPC_CheckChild0Type, MVT::f16, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 90, |
| OPC_EmitNode1, TARGET_VAL(Mips::MSA_FP_EXTEND_W_PSEUDO), 0, |
| MVT::f32, 1, 0, |
| OPC_EmitNode1, TARGET_VAL(Mips::MSA_FP_EXTEND_W_PSEUDO), 0, |
| MVT::f32, 1, 1, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FCMP_S32), 0|OPFL_GlueOutput, |
| MVT::i32, 3, 3, 4, 5, |
| 0, |
| 35, TARGET_VAL(MipsISD::ExtractElementF64), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 91, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ExtractElementF64), 0, |
| MVT::i32, 2, 0, 2, |
| 12, |
| OPC_CheckPatternPredicate, 92, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ExtractElementF64_64), 0, |
| MVT::i32, 2, 0, 2, |
| 0, |
| 79, TARGET_VAL(MipsISD::Highest), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 12, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 12, TARGET_VAL(ISD::TargetBlockAddress), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 12, TARGET_VAL(ISD::TargetJumpTable), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 12, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 12, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 104, TARGET_VAL(MipsISD::Higher), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 17, TARGET_VAL(ISD::TargetGlobalAddress), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 17, TARGET_VAL(ISD::TargetBlockAddress), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 17, TARGET_VAL(ISD::TargetJumpTable), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 17, TARGET_VAL(ISD::TargetConstantPool), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 17, TARGET_VAL(ISD::TargetExternalSymbol), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 63, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 0, |
| 0, |
| 79|128,3, TARGET_VAL(ISD::Constant), |
| OPC_RecordNode, |
| OPC_Scope, 18, |
| OPC_CheckPredicate, 55, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 5, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi), 0, |
| MVT::i32, 1, 2, |
| 19, |
| OPC_CheckPredicate, 56, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORi), 0, |
| MVT::i32, 2, 1, 2, |
| 19, |
| OPC_CheckPredicate, 19, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 1, 2, |
| 18, |
| OPC_CheckPredicate, 55, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 5, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 2, |
| 20, |
| OPC_CheckPredicate, 56, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORi64), 0, |
| MVT::i64, 2, 1, 2, |
| 20, |
| OPC_CheckPredicate, 19, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DADDiu), 0, |
| MVT::i64, 2, 1, 2, |
| 18, |
| OPC_CheckPredicate, 21, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 3, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LiRxImmX16), 0, |
| MVT::i32, 1, 2, |
| 15, |
| OPC_CheckPredicate, 57, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LI16_MM), 0, |
| MVT::i32, 1, 1, |
| 18, |
| OPC_CheckPredicate, 55, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 5, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LUi_MM), 0, |
| MVT::i32, 1, 2, |
| 19, |
| OPC_CheckPredicate, 56, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORi_MM), 0, |
| MVT::i32, 2, 1, 2, |
| 19, |
| OPC_CheckPredicate, 19, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDiu_MM), 0, |
| MVT::i32, 2, 1, 2, |
| 22, |
| OPC_CheckPredicate, 21, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 3, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::XORI_MMR6), 0, |
| MVT::i32, 2, 1, 3, |
| 62, |
| OPC_CheckPredicate, 58, |
| OPC_SwitchType , 27, MVT::i32, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 5, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::LUi), 0, |
| MVT::i32, 1, 2, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORi), 0, |
| MVT::i32, 2, 3, 5, |
| 27, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 5, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::LUi64), 0, |
| MVT::i64, 1, 2, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORi64), 0, |
| MVT::i64, 2, 3, 5, |
| 0, |
| 34, |
| OPC_CheckPredicate, 59, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 5, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::ORi64), 0, |
| MVT::i64, 2, 1, 3, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSLL), 0, |
| MVT::i64, 2, 4, 5, |
| 26, |
| OPC_CheckPredicate, 19, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitNode1, TARGET_VAL(Mips::MoveR3216), 0, |
| MVT::i32, 1, 1, |
| OPC_EmitConvertToTarget, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::AddiuRxRxImmX16), 0, |
| MVT::i32, 2, 2, 3, |
| 31, |
| OPC_CheckPredicate, 58, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 5, 1, |
| OPC_EmitNode1, TARGET_VAL(Mips::LUi_MM), 0, |
| MVT::i32, 1, 2, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 3, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORi_MM), 0, |
| MVT::i32, 2, 3, 5, |
| 47, |
| OPC_CheckPredicate, 60, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 5, 2, |
| OPC_EmitNode1, TARGET_VAL(Mips::ORi64), 0, |
| MVT::i64, 2, 1, 3, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_EmitNode1, TARGET_VAL(Mips::DSLL), 0, |
| MVT::i64, 2, 4, 5, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitNodeXForm, 3, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ORi64), 0, |
| MVT::i64, 2, 6, 8, |
| 17, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitConvertToTarget, 0, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::LwConstant32), 0, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 124, TARGET_VAL(ISD::BRIND), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_Scope, 74, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::JrcRx16), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 80, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::PseudoIndirectBranch), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 93, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::PseudoIndirectHazardBranch), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 82, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::PseudoIndirectBranchR6), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 83, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::PseudoIndrectHazardBranchR6), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::PseudoIndirectBranch_MM), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::PseudoIndirectBranch_MMR6), 0|OPFL_Chain, |
| 1, 1, |
| 0, |
| 44, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 94, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::PseudoIndirectBranch64), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 85, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::PseudoIndirectHazardBranch64), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 86, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::PseudoIndirectBranch64R6), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 87, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::PseudoIndrectHazardBranch64R6), 0|OPFL_Chain, |
| 1, 1, |
| 0, |
| 0, |
| 67, TARGET_VAL(ISD::ATOMIC_LOAD_ADD), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_ADD_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_ADD_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_ADD_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_ADD_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 67, TARGET_VAL(ISD::ATOMIC_LOAD_SUB), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_SUB_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_SUB_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_SUB_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_SUB_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 67, TARGET_VAL(ISD::ATOMIC_LOAD_AND), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_AND_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_AND_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_AND_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_AND_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 67, TARGET_VAL(ISD::ATOMIC_LOAD_OR), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_OR_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_OR_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_OR_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_OR_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 67, TARGET_VAL(ISD::ATOMIC_LOAD_XOR), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_XOR_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_XOR_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_XOR_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_XOR_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 67, TARGET_VAL(ISD::ATOMIC_LOAD_NAND), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_NAND_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_NAND_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_NAND_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_NAND_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 67, TARGET_VAL(ISD::ATOMIC_SWAP), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_SWAP_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_SWAP_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_SWAP_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_SWAP_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 72, TARGET_VAL(ISD::ATOMIC_CMP_SWAP), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_SwitchType , 47, MVT::i32, |
| OPC_Scope, 14, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_CMP_SWAP_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 3, 1, 2, 3, |
| 14, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_CMP_SWAP_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 3, 1, 2, 3, |
| 14, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_CMP_SWAP_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 3, 1, 2, 3, |
| 0, |
| 14, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_CMP_SWAP_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 3, 1, 2, 3, |
| 0, |
| 67, TARGET_VAL(ISD::ATOMIC_LOAD_MIN), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_MIN_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_MIN_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_MIN_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_MIN_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 67, TARGET_VAL(ISD::ATOMIC_LOAD_MAX), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_MAX_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_MAX_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_MAX_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_MAX_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 67, TARGET_VAL(ISD::ATOMIC_LOAD_UMIN), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_UMIN_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_UMIN_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_UMIN_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_UMIN_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 67, TARGET_VAL(ISD::ATOMIC_LOAD_UMAX), |
| OPC_RecordMemRef, |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 13, |
| OPC_CheckPredicate, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_UMAX_I8), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 9, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_UMAX_I16), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 13, |
| OPC_CheckPredicate, 14, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_UMAX_I32), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 13, MVT::i64, |
| OPC_CheckPredicate, 24, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ATOMIC_LOAD_UMAX_I64), 0|OPFL_Chain|OPFL_MemRefs, |
| MVT::i64, 2, 1, 2, |
| 0, |
| 22, TARGET_VAL(MipsISD::Ret), |
| OPC_RecordNode, |
| OPC_CaptureGlueInput, |
| OPC_Scope, 8, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::RetRA), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic0, |
| 0, |
| 8, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::RetRA16), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic0, |
| 0, |
| 0, |
| 10, TARGET_VAL(MipsISD::ERet), |
| OPC_RecordNode, |
| OPC_CaptureGlueInput, |
| OPC_CheckPatternPredicate, 50, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::ERet), 0|OPFL_Chain|OPFL_GlueInput, |
| 0, |
| 43|128,1, TARGET_VAL(ISD::MUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 78, MVT::i32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 52, |
| OPC_MorphNodeTo2, TARGET_VAL(Mips::MUL), 0, |
| MVT::i32, MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUL_R6), 0, |
| MVT::i32, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo2, TARGET_VAL(Mips::MultRxRyRz16), 0, |
| MVT::i32, MVT::i32, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 30, |
| OPC_MorphNodeTo2, TARGET_VAL(Mips::MUL_MM), 0, |
| MVT::i32, MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUL_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 17, |
| OPC_CheckPatternPredicate, 95, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoMULT), 0, |
| MVT::Untyped, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMFLO), 0, |
| MVT::i32, 1, 2, |
| 0, |
| 25, MVT::i64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 31, |
| OPC_MorphNodeTo2, TARGET_VAL(Mips::DMUL), 0, |
| MVT::i64, MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 55, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DMUL_R6), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 10, MVT::v2i16, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUL_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULV_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULV_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULV_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULV_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 30, TARGET_VAL(ISD::TRAP), |
| OPC_RecordNode, |
| OPC_Scope, 8, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TRAP), 0|OPFL_Chain, |
| 0, |
| 8, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::Break16), 0|OPFL_Chain, |
| 0, |
| 8, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::TRAP_MM), 0|OPFL_Chain, |
| 0, |
| 0, |
| 69, TARGET_VAL(ISD::BR), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock), |
| OPC_MoveParent, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 96, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::J), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 7, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::B), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 15, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::Bimm16), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 97, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::J_MM), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 98, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::B_MM), 0|OPFL_Chain, |
| 1, 1, |
| 9, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::BC_MMR6), 0|OPFL_Chain, |
| 1, 1, |
| 0, |
| 33, TARGET_VAL(MipsISD::EH_RETURN), |
| OPC_RecordNode, |
| OPC_CaptureGlueInput, |
| OPC_RecordChild1, |
| OPC_Scope, 13, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_RecordChild2, |
| OPC_CheckChild2Type, MVT::i32, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::MIPSeh_return32), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic2, |
| 2, 1, 2, |
| 13, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_RecordChild2, |
| OPC_CheckChild2Type, MVT::i64, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo0, TARGET_VAL(Mips::MIPSeh_return64), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic2, |
| 2, 1, 2, |
| 0, |
| 119, TARGET_VAL(ISD::SIGN_EXTEND_INREG), |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_Scope, 50, |
| OPC_CheckValueType, MVT::i8, |
| OPC_MoveParent, |
| OPC_SwitchType , 32, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 56, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEB), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SebRx16), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEB_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 9, MVT::i64, |
| OPC_CheckPatternPredicate, 99, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEB64), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 50, |
| OPC_CheckValueType, MVT::i16, |
| OPC_MoveParent, |
| OPC_SwitchType , 32, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 56, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEH), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SehRx16), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEH_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 9, MVT::i64, |
| OPC_CheckPatternPredicate, 99, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEH64), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 12, |
| OPC_CheckValueType, MVT::i32, |
| OPC_MoveParent, |
| OPC_CheckPatternPredicate, 29, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SLL64_64), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 67, TARGET_VAL(MipsISD::Mult), |
| OPC_RecordChild0, |
| OPC_Scope, 49, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_RecordChild1, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 100, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMULT), 0, |
| MVT::Untyped, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULT_DSP), 0, |
| MVT::Untyped, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 101, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMULT_MM), 0, |
| MVT::Untyped, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULT_DSP_MM), 0, |
| MVT::Untyped, 2, 0, 1, |
| 0, |
| 13, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 46, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoDMULT), 0, |
| MVT::Untyped, 2, 0, 1, |
| 0, |
| 67, TARGET_VAL(MipsISD::Multu), |
| OPC_RecordChild0, |
| OPC_Scope, 49, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_RecordChild1, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 100, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMULTu), 0, |
| MVT::Untyped, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULTU_DSP), 0, |
| MVT::Untyped, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 101, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMULTu_MM), 0, |
| MVT::Untyped, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULTU_DSP_MM), 0, |
| MVT::Untyped, 2, 0, 1, |
| 0, |
| 13, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 46, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoDMULTu), 0, |
| MVT::Untyped, 2, 0, 1, |
| 0, |
| 58, TARGET_VAL(MipsISD::MFHI), |
| OPC_RecordChild0, |
| OPC_SwitchType , 42, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 100, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMFHI), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MFHI_DSP), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 101, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMFHI_MM), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MFHI_DSP_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 9, MVT::i64, |
| OPC_CheckPatternPredicate, 46, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMFHI64), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 58, TARGET_VAL(MipsISD::MFLO), |
| OPC_RecordChild0, |
| OPC_SwitchType , 42, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 100, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMFLO), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MFLO_DSP), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 101, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMFLO_MM), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MFLO_DSP_MM), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 9, MVT::i64, |
| OPC_CheckPatternPredicate, 46, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMFLO64), 0, |
| MVT::i64, 1, 0, |
| 0, |
| 56, TARGET_VAL(MipsISD::MTLOHI), |
| OPC_RecordChild0, |
| OPC_Scope, 38, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_RecordChild1, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 100, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMTLOHI), 0, |
| MVT::Untyped, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 102, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMTLOHI_DSP), 0, |
| MVT::Untyped, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 101, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMTLOHI_MM), 0, |
| MVT::Untyped, 2, 0, 1, |
| 0, |
| 13, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 46, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMTLOHI64), 0, |
| MVT::Untyped, 2, 0, 1, |
| 0, |
| 53, TARGET_VAL(MipsISD::MAdd), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 103, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMADD), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADD_DSP), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 101, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMADD_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADD_DSP_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 53, TARGET_VAL(MipsISD::MAddu), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 103, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMADDU), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDU_DSP), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 101, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMADDU_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADDU_DSP_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 53, TARGET_VAL(MipsISD::MSub), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 103, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMSUB), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUB_DSP), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 101, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMSUB_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUB_DSP_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 53, TARGET_VAL(MipsISD::MSubu), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 103, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMSUBU), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUBU_DSP), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 101, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoMSUBU_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUBU_DSP_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 53, TARGET_VAL(ISD::SUBC), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 35, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBu), 0|OPFL_GlueOutput, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBu_MM), 0|OPFL_GlueOutput, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SUBU_MMR6), 0|OPFL_GlueOutput, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 67, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSUBu), 0|OPFL_GlueOutput, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 38|128,18, TARGET_VAL(ISD::BITCAST), |
| OPC_RecordChild0, |
| OPC_Scope, 68, |
| OPC_CheckChild0Type, MVT::f32, |
| OPC_SwitchType , 32, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 17, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MFC1), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 18, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MFC1_MM), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MFC1_MMR6), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 13, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i16, 2, 0, 1, |
| 13, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 13, |
| OPC_CheckChild0Type, MVT::f64, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 104, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DMFC1), 0, |
| MVT::i64, 1, 0, |
| 34, |
| OPC_CheckChild0Type, MVT::v2i16, |
| OPC_SwitchType , 13, MVT::i32, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 0, 1, |
| 13, MVT::f32, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitStringInteger, MVT::i32, Mips::FGR32RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::f32, 2, 0, 1, |
| 0, |
| 34, |
| OPC_CheckChild0Type, MVT::v4i8, |
| OPC_SwitchType , 13, MVT::i32, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitStringInteger, MVT::i32, Mips::GPR32RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::i32, 2, 0, 1, |
| 13, MVT::f32, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitStringInteger, MVT::i32, Mips::FGR32RegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::f32, 2, 0, 1, |
| 0, |
| 68, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_SwitchType , 32, MVT::f32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 17, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MTC1), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 18, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MTC1_MM), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MTC1_MMR6), 0, |
| MVT::f32, 1, 0, |
| 0, |
| 13, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i16, 2, 0, 1, |
| 13, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i8, 2, 0, 1, |
| 0, |
| 13, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_CheckType, MVT::f64, |
| OPC_CheckPatternPredicate, 104, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DMTC1), 0, |
| MVT::f64, 1, 0, |
| 36|128,2, |
| OPC_CheckChild0Type, MVT::v8f16, |
| OPC_SwitchType , 13, MVT::v8i16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| 53, MVT::v16i8, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 4, 5, |
| 0, |
| 53, MVT::v4i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 4, 5, |
| 0, |
| 52, MVT::v2i64, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i64, 2, 0, 1, |
| 35, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i64, 2, 4, 5, |
| 0, |
| 53, MVT::v4f32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4f32, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4f32, 2, 4, 5, |
| 0, |
| 52, MVT::v2f64, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2f64, 2, 0, 1, |
| 35, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2f64, 2, 4, 5, |
| 0, |
| 0, |
| 20|128,2, |
| OPC_CheckChild0Type, MVT::v4f32, |
| OPC_SwitchType , 13, MVT::v4i32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| 52, MVT::v16i8, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| 35, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 4, 5, |
| 0, |
| 53, MVT::v8i16, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 4, 5, |
| 0, |
| 53, MVT::v2i64, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i64, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i64, 2, 4, 5, |
| 0, |
| 53, MVT::v2f64, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2f64, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2f64, 2, 4, 5, |
| 0, |
| 36, MVT::v8f16, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8f16, 2, 4, 5, |
| 0, |
| 41|128,2, |
| OPC_CheckChild0Type, MVT::v2f64, |
| OPC_SwitchType , 13, MVT::v2i64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i64, 2, 0, 1, |
| 75, MVT::v16i8, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| 58, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 4, 5, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 8, 9, |
| 0, |
| 52, MVT::v8i16, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| 35, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 4, 5, |
| 0, |
| 53, MVT::v4i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 4, 5, |
| 0, |
| 53, MVT::v4f32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4f32, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4f32, 2, 4, 5, |
| 0, |
| 35, MVT::v8f16, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8f16, 2, 4, 5, |
| 0, |
| 36|128,2, |
| OPC_CheckChild0Type, MVT::v8i16, |
| OPC_SwitchType , 53, MVT::v16i8, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 4, 5, |
| 0, |
| 53, MVT::v4i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 4, 5, |
| 0, |
| 52, MVT::v2i64, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i64, 2, 0, 1, |
| 35, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i64, 2, 4, 5, |
| 0, |
| 13, MVT::v8f16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8f16, 2, 0, 1, |
| 53, MVT::v4f32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4f32, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4f32, 2, 4, 5, |
| 0, |
| 52, MVT::v2f64, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2f64, 2, 0, 1, |
| 35, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2f64, 2, 4, 5, |
| 0, |
| 0, |
| 20|128,2, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_SwitchType , 52, MVT::v16i8, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| 35, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 4, 5, |
| 0, |
| 53, MVT::v8i16, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 4, 5, |
| 0, |
| 53, MVT::v2i64, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i64, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i64, 2, 4, 5, |
| 0, |
| 13, MVT::v4f32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4f32, 2, 0, 1, |
| 53, MVT::v2f64, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2f64, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2f64, 2, 4, 5, |
| 0, |
| 36, MVT::v8f16, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8f16, 2, 4, 5, |
| 0, |
| 41|128,2, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_SwitchType , 75, MVT::v16i8, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| 58, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 4, 5, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 8, 9, |
| 0, |
| 52, MVT::v8i16, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| 35, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 4, 5, |
| 0, |
| 53, MVT::v4i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 4, 5, |
| 0, |
| 13, MVT::v2f64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2f64, 2, 0, 1, |
| 53, MVT::v4f32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4f32, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4f32, 2, 4, 5, |
| 0, |
| 35, MVT::v8f16, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8f16, 2, 4, 5, |
| 0, |
| 103|128,2, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_SwitchType , 53, MVT::v8i16, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 0, 1, |
| 36, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8i16, 2, 4, 5, |
| 0, |
| 52, MVT::v4i32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 0, 1, |
| 35, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 4, 5, |
| 0, |
| 75, MVT::v2i64, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i64, 2, 0, 1, |
| 58, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 4, 5, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i64, 2, 8, 9, |
| 0, |
| 52, MVT::v4f32, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4f32, 2, 0, 1, |
| 35, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4f32, 2, 4, 5, |
| 0, |
| 75, MVT::v2f64, |
| OPC_Scope, 13, |
| OPC_CheckPatternPredicate, 105, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2f64, 2, 0, 1, |
| 58, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 54, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128WRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i32, 2, 4, 5, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 6, 7, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128DRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2f64, 2, 8, 9, |
| 0, |
| 36, MVT::v8f16, |
| OPC_CheckPatternPredicate, 106, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128BRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v16i8, 2, 0, 1, |
| OPC_EmitInteger, MVT::i32, 98|128,2, |
| OPC_EmitNode1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 2, 3, |
| OPC_EmitStringInteger, MVT::i32, Mips::MSA128HRegClassID, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v8f16, 2, 4, 5, |
| 0, |
| 0, |
| 81, TARGET_VAL(ISD::CTPOP), |
| OPC_RecordChild0, |
| OPC_SwitchType , 11, MVT::i32, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_CheckPatternPredicate, 31, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::POP), 0, |
| MVT::i32, 1, 0, |
| 11, MVT::i64, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_CheckPatternPredicate, 31, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPOP), 0, |
| MVT::i64, 1, 0, |
| 11, MVT::v16i8, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCNT_B), 0, |
| MVT::v16i8, 1, 0, |
| 11, MVT::v8i16, |
| OPC_CheckChild0Type, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCNT_H), 0, |
| MVT::v8i16, 1, 0, |
| 11, MVT::v4i32, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCNT_W), 0, |
| MVT::v4i32, 1, 0, |
| 11, MVT::v2i64, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCNT_D), 0, |
| MVT::v2i64, 1, 0, |
| 0, |
| 50|128,1, TARGET_VAL(MipsISD::CMovFP_T), |
| OPC_CaptureGlueInput, |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 38, MVT::i32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 107, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVT_I), 0|OPFL_GlueInput, |
| MVT::i32, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVT_I_MM), 0|OPFL_GlueInput, |
| MVT::i32, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 38, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECTFP_T_I), 0|OPFL_GlueInput, |
| MVT::i32, 3, 1, 0, 2, |
| 0, |
| 26, MVT::i64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 108, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVT_I64), 0|OPFL_GlueInput, |
| MVT::i64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 38, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECTFP_T_I64), 0|OPFL_GlueInput, |
| MVT::i64, 3, 1, 0, 2, |
| 0, |
| 38, MVT::f32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 107, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVT_S), 0|OPFL_GlueInput, |
| MVT::f32, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVT_S_MM), 0|OPFL_GlueInput, |
| MVT::f32, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 38, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECTFP_T_S), 0|OPFL_GlueInput, |
| MVT::f32, 3, 1, 0, 2, |
| 0, |
| 62, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 109, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVT_D32), 0|OPFL_GlueInput, |
| MVT::f64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 110, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVT_D64), 0|OPFL_GlueInput, |
| MVT::f64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 111, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVT_D32_MM), 0|OPFL_GlueInput, |
| MVT::f64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 43, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECTFP_T_D32), 0|OPFL_GlueInput, |
| MVT::f64, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 44, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECTFP_T_D64), 0|OPFL_GlueInput, |
| MVT::f64, 3, 1, 0, 2, |
| 0, |
| 0, |
| 50|128,1, TARGET_VAL(MipsISD::CMovFP_F), |
| OPC_CaptureGlueInput, |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 38, MVT::i32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 107, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVF_I), 0|OPFL_GlueInput, |
| MVT::i32, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVF_I_MM), 0|OPFL_GlueInput, |
| MVT::i32, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 38, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECTFP_F_I), 0|OPFL_GlueInput, |
| MVT::i32, 3, 1, 0, 2, |
| 0, |
| 26, MVT::i64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 108, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVF_I64), 0|OPFL_GlueInput, |
| MVT::i64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 38, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECTFP_F_I64), 0|OPFL_GlueInput, |
| MVT::i64, 3, 1, 0, 2, |
| 0, |
| 38, MVT::f32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 107, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVF_S), 0|OPFL_GlueInput, |
| MVT::f32, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 10, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVF_S_MM), 0|OPFL_GlueInput, |
| MVT::f32, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 38, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECTFP_F_S), 0|OPFL_GlueInput, |
| MVT::f32, 3, 1, 0, 2, |
| 0, |
| 62, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 109, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVF_D32), 0|OPFL_GlueInput, |
| MVT::f64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 110, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVF_D64), 0|OPFL_GlueInput, |
| MVT::f64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 111, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOVF_D32_MM), 0|OPFL_GlueInput, |
| MVT::f64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 43, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECTFP_F_D32), 0|OPFL_GlueInput, |
| MVT::f64, 3, 1, 0, 2, |
| 11, |
| OPC_CheckPatternPredicate, 44, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSELECTFP_F_D64), 0|OPFL_GlueInput, |
| MVT::f64, 3, 1, 0, 2, |
| 0, |
| 0, |
| 42, TARGET_VAL(ISD::MULHS), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUH), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUH_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 55, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DMUH), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 42, TARGET_VAL(ISD::MULHU), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUHU), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MUHU_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 55, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DMUHU), 0, |
| MVT::i64, 2, 0, 1, |
| 0, |
| 14, TARGET_VAL(MipsISD::DivRem16), |
| OPC_RecordChild0, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DivRxRy16), 0|OPFL_GlueOutput, |
| MVT::i32, 2, 0, 1, |
| 14, TARGET_VAL(MipsISD::DivRemU16), |
| OPC_RecordChild0, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 15, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DivuRxRy16), 0|OPFL_GlueOutput, |
| MVT::i32, 2, 0, 1, |
| 32, TARGET_VAL(MipsISD::MULSAQ_S_W_PH), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULSAQ_S_W_PH), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULSAQ_S_W_PH_MM), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 32, TARGET_VAL(MipsISD::MAQ_S_W_PHL), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAQ_S_W_PHL), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAQ_S_W_PHL_MM), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 32, TARGET_VAL(MipsISD::MAQ_S_W_PHR), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAQ_S_W_PHR), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAQ_S_W_PHR_MM), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 32, TARGET_VAL(MipsISD::MAQ_SA_W_PHL), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAQ_SA_W_PHL), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAQ_SA_W_PHL_MM), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 32, TARGET_VAL(MipsISD::MAQ_SA_W_PHR), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAQ_SA_W_PHR), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAQ_SA_W_PHR_MM), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 29, TARGET_VAL(MipsISD::DPAU_H_QBL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAU_H_QBL), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAU_H_QBL_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 29, TARGET_VAL(MipsISD::DPAU_H_QBR), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAU_H_QBR), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAU_H_QBR_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 29, TARGET_VAL(MipsISD::DPSU_H_QBL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSU_H_QBL), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSU_H_QBL_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 29, TARGET_VAL(MipsISD::DPSU_H_QBR), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSU_H_QBR), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSU_H_QBR_MM), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 32, TARGET_VAL(MipsISD::DPAQ_S_W_PH), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAQ_S_W_PH), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAQ_S_W_PH_MM), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 32, TARGET_VAL(MipsISD::DPSQ_S_W_PH), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSQ_S_W_PH), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSQ_S_W_PH_MM), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 32, TARGET_VAL(MipsISD::DPAQ_SA_L_W), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAQ_SA_L_W), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAQ_SA_L_W_MM), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 32, TARGET_VAL(MipsISD::DPSQ_SA_L_W), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSQ_SA_L_W), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSQ_SA_L_W_MM), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 29, TARGET_VAL(MipsISD::MTHLIP), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MTHLIP), 0|OPFL_Chain, |
| MVT::Untyped, 2, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 47, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MTHLIP_MM), 0|OPFL_Chain, |
| MVT::Untyped, 2, 1, 2, |
| 0, |
| 29, TARGET_VAL(MipsISD::DPA_W_PH), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPA_W_PH), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPA_W_PH_MMR2), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 29, TARGET_VAL(MipsISD::DPS_W_PH), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPS_W_PH), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPS_W_PH_MMR2), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 32, TARGET_VAL(MipsISD::DPAQX_S_W_PH), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAQX_S_W_PH), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAQX_S_W_PH_MMR2), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 32, TARGET_VAL(MipsISD::DPAQX_SA_W_PH), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAQX_SA_W_PH), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAQX_SA_W_PH_MMR2), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 29, TARGET_VAL(MipsISD::DPAX_W_PH), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAX_W_PH), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPAX_W_PH_MMR2), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 29, TARGET_VAL(MipsISD::DPSX_W_PH), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSX_W_PH), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSX_W_PH_MMR2), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 32, TARGET_VAL(MipsISD::DPSQX_S_W_PH), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSQX_S_W_PH), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSQX_S_W_PH_MMR2), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 32, TARGET_VAL(MipsISD::DPSQX_SA_W_PH), |
| OPC_RecordNode, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSQX_SA_W_PH), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 12, |
| OPC_CheckPatternPredicate, 49, |
| OPC_EmitMergeInputChains1_0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DPSQX_SA_W_PH_MMR2), 0|OPFL_Chain, |
| MVT::Untyped, 3, 1, 2, 3, |
| 0, |
| 29, TARGET_VAL(MipsISD::MULSA_W_PH), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 48, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULSA_W_PH), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 49, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MULSA_W_PH_MMR2), 0, |
| MVT::Untyped, 3, 0, 1, 2, |
| 0, |
| 15, TARGET_VAL(ISD::ADDE), |
| OPC_CaptureGlueInput, |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_CheckType, MVT::i32, |
| OPC_CheckPatternPredicate, 28, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ADDWC), 0|OPFL_GlueInput|OPFL_GlueOutput, |
| MVT::i32, 2, 0, 1, |
| 67, TARGET_VAL(ISD::BSWAP), |
| OPC_RecordChild0, |
| OPC_SwitchType , 44, MVT::i32, |
| OPC_Scope, 20, |
| OPC_CheckPatternPredicate, 56, |
| OPC_EmitNode1, TARGET_VAL(Mips::WSBH), 0, |
| MVT::i32, 1, 0, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ROTR), 0, |
| MVT::i32, 2, 1, 2, |
| 20, |
| OPC_CheckPatternPredicate, 8, |
| OPC_EmitNode1, TARGET_VAL(Mips::WSBH_MM), 0, |
| MVT::i32, 1, 0, |
| OPC_EmitInteger, MVT::i32, 32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ROTR_MM), 0, |
| MVT::i32, 2, 1, 2, |
| 0, |
| 16, MVT::i64, |
| OPC_CheckPatternPredicate, 112, |
| OPC_EmitNode1, TARGET_VAL(Mips::DSBH), 0, |
| MVT::i64, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DSHD), 0, |
| MVT::i64, 1, 1, |
| 0, |
| 23, TARGET_VAL(ISD::ANY_EXTEND), |
| OPC_RecordChild0, |
| OPC_CheckType, MVT::i64, |
| OPC_CheckPatternPredicate, 29, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::IMPLICIT_DEF), 0, |
| MVT::i64, 0, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_32, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::INSERT_SUBREG), 0, |
| MVT::i64, 3, 1, 0, 2, |
| 45, TARGET_VAL(MipsISD::DivRem), |
| OPC_RecordChild0, |
| OPC_Scope, 27, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_RecordChild1, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 11, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoSDIV), 0, |
| MVT::Untyped, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 113, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SDIV_MM_Pseudo), 0, |
| MVT::Untyped, 2, 0, 1, |
| 0, |
| 13, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 46, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoDSDIV), 0, |
| MVT::Untyped, 2, 0, 1, |
| 0, |
| 45, TARGET_VAL(MipsISD::DivRemU), |
| OPC_RecordChild0, |
| OPC_Scope, 27, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_RecordChild1, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 11, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoUDIV), 0, |
| MVT::Untyped, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 113, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::UDIV_MM_Pseudo), 0, |
| MVT::Untyped, 2, 0, 1, |
| 0, |
| 13, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_RecordChild1, |
| OPC_CheckPatternPredicate, 46, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoDUDIV), 0, |
| MVT::Untyped, 2, 0, 1, |
| 0, |
| 90, TARGET_VAL(ISD::SDIV), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIV), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIV_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 55, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DDIV), 0, |
| MVT::i64, 2, 0, 1, |
| 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIV_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIV_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIV_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIV_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 90, TARGET_VAL(ISD::UDIV), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIVU), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIVU_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 55, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DDIVU), 0, |
| MVT::i64, 2, 0, 1, |
| 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIV_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIV_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIV_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DIV_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 90, TARGET_VAL(ISD::SREM), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOD), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOD_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 55, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DMOD), 0, |
| MVT::i64, 2, 0, 1, |
| 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOD_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOD_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOD_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOD_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 90, TARGET_VAL(ISD::UREM), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 24, MVT::i32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 33, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MODU), 0, |
| MVT::i32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MODU_MMR6), 0, |
| MVT::i32, 2, 0, 1, |
| 0, |
| 10, MVT::i64, |
| OPC_CheckPatternPredicate, 55, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DMODU), 0, |
| MVT::i64, 2, 0, 1, |
| 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOD_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOD_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOD_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MOD_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 45, TARGET_VAL(MipsISD::VALL_NONZERO), |
| OPC_RecordChild0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SNZ_B_PSEUDO), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckChild0Type, MVT::v8i16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SNZ_H_PSEUDO), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SNZ_W_PSEUDO), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SNZ_D_PSEUDO), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 12, TARGET_VAL(MipsISD::VANY_NONZERO), |
| OPC_RecordChild0, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_CheckType, MVT::i32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SNZ_V_PSEUDO), 0, |
| MVT::i32, 1, 0, |
| 45, TARGET_VAL(MipsISD::VALL_ZERO), |
| OPC_RecordChild0, |
| OPC_CheckType, MVT::i32, |
| OPC_Scope, 9, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SZ_B_PSEUDO), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckChild0Type, MVT::v8i16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SZ_H_PSEUDO), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SZ_W_PSEUDO), 0, |
| MVT::i32, 1, 0, |
| 9, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SZ_D_PSEUDO), 0, |
| MVT::i32, 1, 0, |
| 0, |
| 12, TARGET_VAL(MipsISD::VANY_ZERO), |
| OPC_RecordChild0, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_CheckType, MVT::i32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SZ_V_PSEUDO), 0, |
| MVT::i32, 1, 0, |
| 7|128,3, TARGET_VAL(ISD::FSUB), |
| OPC_Scope, 101|128,1, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 44|128,1, TARGET_VAL(ISD::ConstantFP), |
| OPC_CheckPredicate, 61, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_SwitchOpcode , 108, TARGET_VAL(ISD::FADD), |
| OPC_Scope, 52, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_SwitchType , 11, MVT::f32, |
| OPC_CheckPatternPredicate, 114, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_S), 0, |
| MVT::f32, 3, 2, 0, 1, |
| 26, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 115, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_D32), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 116, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_D64), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 0, |
| 0, |
| 52, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_SwitchType , 11, MVT::f32, |
| OPC_CheckPatternPredicate, 114, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_S), 0, |
| MVT::f32, 3, 0, 1, 2, |
| 26, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 115, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_D32), 0, |
| MVT::f64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 116, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_D64), 0, |
| MVT::f64, 3, 0, 1, 2, |
| 0, |
| 0, |
| 0, |
| 52, TARGET_VAL(ISD::FSUB), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_SwitchType , 11, MVT::f32, |
| OPC_CheckPatternPredicate, 114, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMSUB_S), 0, |
| MVT::f32, 3, 2, 0, 1, |
| 26, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 115, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMSUB_D32), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 116, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMSUB_D64), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 47, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 11, MVT::f32, |
| OPC_CheckPatternPredicate, 117, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUB_S), 0, |
| MVT::f32, 3, 2, 0, 1, |
| 26, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 118, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUB_D32), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 119, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSUB_D64), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 28|128,1, |
| OPC_RecordChild0, |
| OPC_Scope, 88, |
| OPC_RecordChild1, |
| OPC_SwitchType , 35, MVT::f32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 17, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUB_S), 0, |
| MVT::f32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 18, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUB_S_MM), 0, |
| MVT::f32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUB_S_MMR6), 0, |
| MVT::f32, 2, 1, 0, |
| 0, |
| 46, MVT::f64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 120, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUB_D32), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 121, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUB_D64), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 21, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUB_D32_MM), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 22, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUB_D64_MM), 0, |
| MVT::f64, 2, 0, 1, |
| 0, |
| 0, |
| 35, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_SwitchType , 11, MVT::v4f32, |
| OPC_CheckPatternPredicate, 122, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMSUB_W), 0, |
| MVT::v4f32, 3, 0, 1, 2, |
| 11, MVT::v2f64, |
| OPC_CheckPatternPredicate, 122, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMSUB_D), 0, |
| MVT::v2f64, 3, 0, 1, 2, |
| 0, |
| 27, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUB_W), 0, |
| MVT::v4f32, 2, 0, 1, |
| 10, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSUB_D), 0, |
| MVT::v2f64, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 81|128,2, TARGET_VAL(ISD::FNEG), |
| OPC_Scope, 123|128,1, |
| OPC_MoveChild0, |
| OPC_SwitchOpcode , 34|128,1, TARGET_VAL(ISD::FADD), |
| OPC_Scope, 79, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_SwitchType , 26, MVT::f32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 123, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_S), 0, |
| MVT::f32, 3, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 124, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_S_MM), 0, |
| MVT::f32, 3, 2, 0, 1, |
| 0, |
| 38, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 125, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_D32), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 126, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_D64), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 127, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_D32_MM), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 0, |
| 0, |
| 79, |
| OPC_RecordChild0, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_MoveParent, |
| OPC_SwitchType , 26, MVT::f32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 123, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_S), 0, |
| MVT::f32, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 124, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_S_MM), 0, |
| MVT::f32, 3, 0, 1, 2, |
| 0, |
| 38, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 125, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_D32), 0, |
| MVT::f64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 126, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_D64), 0, |
| MVT::f64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 127, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMADD_D32_MM), 0, |
| MVT::f64, 3, 0, 1, 2, |
| 0, |
| 0, |
| 0, |
| 79, TARGET_VAL(ISD::FSUB), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_SwitchType , 26, MVT::f32, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 123, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMSUB_S), 0, |
| MVT::f32, 3, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 124, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMSUB_S_MM), 0, |
| MVT::f32, 3, 2, 0, 1, |
| 0, |
| 38, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 125, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMSUB_D32), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 126, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMSUB_D64), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 127, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NMSUB_D32_MM), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 0, |
| 0, |
| 0, |
| 81, |
| OPC_RecordChild0, |
| OPC_SwitchType , 32, MVT::f32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 128, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FNEG_S), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 18, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FNEG_S_MM), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FNEG_S_MMR6), 0, |
| MVT::f32, 1, 0, |
| 0, |
| 42, MVT::f64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 120, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FNEG_D32), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 121, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FNEG_D64), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 21, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FNEG_D32_MM), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 22, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FNEG_D64_MM), 0, |
| MVT::f64, 1, 0, |
| 0, |
| 0, |
| 0, |
| 45|128,2, TARGET_VAL(ISD::FADD), |
| OPC_Scope, 51, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 11, MVT::f32, |
| OPC_CheckPatternPredicate, 117, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADD_S), 0, |
| MVT::f32, 3, 2, 0, 1, |
| 26, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 118, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADD_D32), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 11, |
| OPC_CheckPatternPredicate, 119, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADD_D64), 0, |
| MVT::f64, 3, 2, 0, 1, |
| 0, |
| 0, |
| 51|128,1, |
| OPC_RecordChild0, |
| OPC_Scope, 50, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_SwitchType , 11, MVT::f32, |
| OPC_CheckPatternPredicate, 117, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADD_S), 0, |
| MVT::f32, 3, 0, 1, 2, |
| 26, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 118, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADD_D32), 0, |
| MVT::f64, 3, 0, 1, 2, |
| 11, |
| OPC_CheckPatternPredicate, 119, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MADD_D64), 0, |
| MVT::f64, 3, 0, 1, 2, |
| 0, |
| 0, |
| 88, |
| OPC_RecordChild1, |
| OPC_SwitchType , 35, MVT::f32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 17, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FADD_S), 0, |
| MVT::f32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 18, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FADD_S_MM), 0, |
| MVT::f32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FADD_S_MMR6), 0, |
| MVT::f32, 2, 1, 0, |
| 0, |
| 46, MVT::f64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 120, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FADD_D32), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 121, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FADD_D64), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 21, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FADD_D32_MM), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 22, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FADD_D64_MM), 0, |
| MVT::f64, 2, 0, 1, |
| 0, |
| 0, |
| 35, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_SwitchType , 11, MVT::v4f32, |
| OPC_CheckPatternPredicate, 122, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMADD_W), 0, |
| MVT::v4f32, 3, 0, 1, 2, |
| 11, MVT::v2f64, |
| OPC_CheckPatternPredicate, 122, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMADD_D), 0, |
| MVT::v2f64, 3, 0, 1, 2, |
| 0, |
| 0, |
| 36, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FMUL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 11, MVT::v4f32, |
| OPC_CheckPatternPredicate, 122, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMADD_W), 0, |
| MVT::v4f32, 3, 2, 0, 1, |
| 11, MVT::v2f64, |
| OPC_CheckPatternPredicate, 122, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMADD_D), 0, |
| MVT::v2f64, 3, 2, 0, 1, |
| 0, |
| 28, |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FADD_W), 0, |
| MVT::v4f32, 2, 0, 1, |
| 10, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FADD_D), 0, |
| MVT::v2f64, 2, 0, 1, |
| 0, |
| 0, |
| 28|128,1, TARGET_VAL(ISD::ConstantFP), |
| OPC_Scope, 62, |
| OPC_CheckPredicate, 61, |
| OPC_SwitchType , 41, MVT::f32, |
| OPC_Scope, 12, |
| OPC_CheckPatternPredicate, 75, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MTC1), 0, |
| MVT::f32, 1, 0, |
| 12, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MTC1_MM), 0, |
| MVT::f32, 1, 0, |
| 12, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MTC1_MMR6), 0, |
| MVT::f32, 1, 0, |
| 0, |
| 13, MVT::f64, |
| OPC_CheckPatternPredicate, 129, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::DMTC1), 0, |
| MVT::f64, 1, 0, |
| 0, |
| 90, |
| OPC_CheckPredicate, 62, |
| OPC_SwitchType , 62, MVT::f32, |
| OPC_Scope, 19, |
| OPC_CheckPatternPredicate, 75, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitNode1, TARGET_VAL(Mips::MTC1), 0, |
| MVT::f32, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FNEG_S), 0, |
| MVT::f32, 1, 1, |
| 19, |
| OPC_CheckPatternPredicate, 30, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitNode1, TARGET_VAL(Mips::MTC1_MM), 0, |
| MVT::f32, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FNEG_S_MM), 0, |
| MVT::f32, 1, 1, |
| 19, |
| OPC_CheckPatternPredicate, 16, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitNode1, TARGET_VAL(Mips::MTC1_MMR6), 0, |
| MVT::f32, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FNEG_S_MMR6), 0, |
| MVT::f32, 1, 1, |
| 0, |
| 20, MVT::f64, |
| OPC_CheckPatternPredicate, 129, |
| OPC_EmitRegister2, MVT::i64, TARGET_VAL(Mips::ZERO_64), |
| OPC_EmitNode1, TARGET_VAL(Mips::DMTC1), 0, |
| MVT::f64, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FNEG_D64), 0, |
| MVT::f64, 1, 1, |
| 0, |
| 0, |
| 93, TARGET_VAL(ISD::FABS), |
| OPC_RecordChild0, |
| OPC_SwitchType , 22, MVT::f32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 130, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FABS_S), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 131, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FABS_S_MM), 0, |
| MVT::f32, 1, 0, |
| 0, |
| 42, MVT::f64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 132, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FABS_D32), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 133, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FABS_D64), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 21, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FABS_D32_MM), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 22, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FABS_D64_MM), 0, |
| MVT::f64, 1, 0, |
| 0, |
| 9, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FABS_W), 0, |
| MVT::v4f32, 1, 0, |
| 9, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FABS_D), 0, |
| MVT::v2f64, 1, 0, |
| 0, |
| 93, TARGET_VAL(ISD::FSQRT), |
| OPC_RecordChild0, |
| OPC_SwitchType , 22, MVT::f32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 134, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSQRT_S), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 18, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSQRT_S_MM), 0, |
| MVT::f32, 1, 0, |
| 0, |
| 42, MVT::f64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 20, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSQRT_D32), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 19, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSQRT_D64), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 21, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSQRT_D32_MM), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 22, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSQRT_D64_MM), 0, |
| MVT::f64, 1, 0, |
| 0, |
| 9, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSQRT_W), 0, |
| MVT::v4f32, 1, 0, |
| 9, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FSQRT_D), 0, |
| MVT::v2f64, 1, 0, |
| 0, |
| 113, TARGET_VAL(ISD::FDIV), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 35, MVT::f32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 17, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FDIV_S), 0, |
| MVT::f32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 18, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FDIV_S_MM), 0, |
| MVT::f32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FDIV_S_MMR6), 0, |
| MVT::f32, 2, 1, 0, |
| 0, |
| 46, MVT::f64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 120, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FDIV_D32), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 121, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FDIV_D64), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 21, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FDIV_D32_MM), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 22, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FDIV_D64_MM), 0, |
| MVT::f64, 2, 0, 1, |
| 0, |
| 10, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FDIV_W), 0, |
| MVT::v4f32, 2, 0, 1, |
| 10, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FDIV_D), 0, |
| MVT::v2f64, 2, 0, 1, |
| 0, |
| 63|128,1, TARGET_VAL(ISD::FMUL), |
| OPC_Scope, 125, |
| OPC_RecordChild0, |
| OPC_Scope, 88, |
| OPC_RecordChild1, |
| OPC_SwitchType , 35, MVT::f32, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 17, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMUL_S), 0, |
| MVT::f32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 18, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMUL_S_MM), 0, |
| MVT::f32, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 68, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMUL_S_MMR6), 0, |
| MVT::f32, 2, 1, 0, |
| 0, |
| 46, MVT::f64, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 120, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMUL_D32), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 121, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMUL_D64), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 21, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMUL_D32_MM), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 22, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMUL_D64_MM), 0, |
| MVT::f64, 2, 0, 1, |
| 0, |
| 0, |
| 32, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FEXP2), |
| OPC_RecordChild0, |
| OPC_MoveParent, |
| OPC_SwitchType , 10, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXP2_W), 0, |
| MVT::v4f32, 2, 0, 1, |
| 10, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXP2_D), 0, |
| MVT::v2f64, 2, 0, 1, |
| 0, |
| 0, |
| 33, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::FEXP2), |
| OPC_RecordChild0, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXP2_W), 0, |
| MVT::v4f32, 2, 1, 0, |
| 10, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXP2_D), 0, |
| MVT::v2f64, 2, 1, 0, |
| 0, |
| 28, |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMUL_W), 0, |
| MVT::v4f32, 2, 0, 1, |
| 10, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMUL_D), 0, |
| MVT::v2f64, 2, 0, 1, |
| 0, |
| 0, |
| 26, TARGET_VAL(MipsISD::BuildPairF64), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_Scope, 10, |
| OPC_CheckPatternPredicate, 91, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BuildPairF64), 0, |
| MVT::f64, 2, 0, 1, |
| 10, |
| OPC_CheckPatternPredicate, 92, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BuildPairF64_64), 0, |
| MVT::f64, 2, 0, 1, |
| 0, |
| 107, TARGET_VAL(ISD::SINT_TO_FP), |
| OPC_RecordChild0, |
| OPC_Scope, 37, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_SwitchType , 7, MVT::f32, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoCVT_S_W), 0, |
| MVT::f32, 1, 0, |
| 22, MVT::f64, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 135, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoCVT_D32_W), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 136, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoCVT_D64_W), 0, |
| MVT::f64, 1, 0, |
| 0, |
| 0, |
| 37, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_SwitchType , 9, MVT::f64, |
| OPC_CheckPatternPredicate, 136, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoCVT_D64_L), 0, |
| MVT::f64, 1, 0, |
| 20, MVT::f32, |
| OPC_CheckPatternPredicate, 136, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCVT_S_L), 0, |
| MVT::f64, 1, 0, |
| OPC_EmitStringInteger, MVT::i32, Mips::sub_lo, |
| OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0, |
| MVT::f32, 2, 1, 2, |
| 0, |
| 13, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_CheckType, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FFINT_S_W), 0, |
| MVT::v4f32, 1, 0, |
| 13, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_CheckType, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FFINT_S_D), 0, |
| MVT::v2f64, 1, 0, |
| 0, |
| 16|128,1, TARGET_VAL(MipsISD::TruncIntFP), |
| OPC_RecordChild0, |
| OPC_Scope, 49, |
| OPC_CheckChild0Type, MVT::f32, |
| OPC_SwitchType , 32, MVT::f32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 75, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::TRUNC_W_S), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 30, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::TRUNC_W_S_MM), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::TRUNC_W_S_MMR6), 0, |
| MVT::f32, 1, 0, |
| 0, |
| 9, MVT::f64, |
| OPC_CheckPatternPredicate, 137, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::TRUNC_L_S), 0, |
| MVT::f64, 1, 0, |
| 0, |
| 69, |
| OPC_CheckChild0Type, MVT::f64, |
| OPC_SwitchType , 52, MVT::f32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 138, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::TRUNC_W_D32), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 137, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::TRUNC_W_D64), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 41, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::TRUNC_W_MM), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 139, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CVT_W_D64_MM), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::TRUNC_W_D_MMR6), 0, |
| MVT::f32, 1, 0, |
| 0, |
| 9, MVT::f64, |
| OPC_CheckPatternPredicate, 137, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::TRUNC_L_D64), 0, |
| MVT::f64, 1, 0, |
| 0, |
| 20, |
| OPC_CheckChild0Type, MVT::f16, |
| OPC_CheckType, MVT::f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitNode1, TARGET_VAL(Mips::MSA_FP_EXTEND_D_PSEUDO), 0, |
| MVT::f64, 1, 0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::TRUNC_W_D64), 0, |
| MVT::f32, 1, 1, |
| 0, |
| 23, TARGET_VAL(MipsISD::MTC1_D64), |
| OPC_RecordChild0, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 140, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MTC1_D64), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MTC1_D64_MM), 0, |
| MVT::f64, 1, 0, |
| 0, |
| 75, TARGET_VAL(ISD::FP_ROUND), |
| OPC_RecordChild0, |
| OPC_SwitchType , 42, MVT::f32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CVT_S_D32), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CVT_S_D64), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CVT_S_D64_MM), 0, |
| MVT::f32, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CVT_S_D32_MM), 0, |
| MVT::f32, 1, 0, |
| 0, |
| 26, MVT::f16, |
| OPC_Scope, 11, |
| OPC_CheckChild0Type, MVT::f32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSA_FP_ROUND_W_PSEUDO), 0, |
| MVT::f16, 1, 0, |
| 11, |
| OPC_CheckChild0Type, MVT::f64, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSA_FP_ROUND_D_PSEUDO), 0, |
| MVT::f16, 1, 0, |
| 0, |
| 0, |
| 75, TARGET_VAL(ISD::FP_EXTEND), |
| OPC_RecordChild0, |
| OPC_SwitchType , 59, MVT::f64, |
| OPC_Scope, 44, |
| OPC_CheckChild0Type, MVT::f32, |
| OPC_Scope, 9, |
| OPC_CheckPatternPredicate, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CVT_D32_S), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CVT_D64_S), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 4, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CVT_D64_S_MM), 0, |
| MVT::f64, 1, 0, |
| 9, |
| OPC_CheckPatternPredicate, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::CVT_D32_S_MM), 0, |
| MVT::f64, 1, 0, |
| 0, |
| 11, |
| OPC_CheckChild0Type, MVT::f16, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSA_FP_EXTEND_D_PSEUDO), 0, |
| MVT::f64, 1, 0, |
| 0, |
| 9, MVT::f32, |
| OPC_CheckPatternPredicate, 27, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MSA_FP_EXTEND_W_PSEUDO), 0, |
| MVT::f32, 1, 0, |
| 0, |
| 33, TARGET_VAL(MipsISD::FSELECT), |
| OPC_RecordChild0, |
| OPC_CheckChild0Type, MVT::f64, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::f64, |
| OPC_Scope, 11, |
| OPC_CheckPatternPredicate, 42, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEL_D), 0, |
| MVT::f64, 3, 0, 2, 1, |
| 11, |
| OPC_CheckPatternPredicate, 16, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SEL_D_MMR6), 0, |
| MVT::f64, 3, 0, 2, 1, |
| 0, |
| 124|128,2, TARGET_VAL(MipsISD::VSHF), |
| OPC_Scope, 88, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BITCAST), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::AND), |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_Scope, 36, |
| OPC_RecordChild0, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_CheckChild1Same, 0, |
| OPC_CheckChild2Same, 0, |
| OPC_CheckChild3Same, 0, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckChild2Same, 1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SPLAT_D), 0, |
| MVT::v2i64, 2, 1, 0, |
| 36, |
| OPC_MoveParent, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_RecordChild0, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_CheckChild1Same, 0, |
| OPC_CheckChild2Same, 0, |
| OPC_CheckChild3Same, 0, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckChild2Same, 1, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SPLAT_D), 0, |
| MVT::v2i64, 2, 1, 0, |
| 0, |
| 83, |
| OPC_RecordChild0, |
| OPC_SwitchType , 18, MVT::v16i8, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_RecordChild1, |
| OPC_CheckChild2Same, 1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/27, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SPLATI_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 18, MVT::v8i16, |
| OPC_CheckChild0Type, MVT::v8i16, |
| OPC_RecordChild1, |
| OPC_CheckChild2Same, 1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/28, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SPLATI_H), 0, |
| MVT::v8i16, 2, 1, 2, |
| 18, MVT::v4i32, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_RecordChild1, |
| OPC_CheckChild2Same, 1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/29, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SPLATI_W), 0, |
| MVT::v4i32, 2, 1, 2, |
| 18, MVT::v2i64, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_RecordChild1, |
| OPC_CheckChild2Same, 1, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/30, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SPLATI_D), 0, |
| MVT::v2i64, 2, 1, 2, |
| 0, |
| 3|128,1, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_RecordChild0, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_CheckChild1Same, 0, |
| OPC_CheckChild2Same, 0, |
| OPC_CheckChild3Same, 0, |
| OPC_Scope, 96, |
| OPC_MoveChild4, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_Scope, 58, |
| OPC_MoveChild, 8, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckChild2Same, 1, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SPLAT_B), 0, |
| MVT::v16i8, 2, 1, 0, |
| 18, |
| OPC_CheckType, MVT::v8i16, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckChild2Same, 1, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SPLAT_H), 0, |
| MVT::v8i16, 2, 1, 0, |
| 0, |
| 18, |
| OPC_CheckType, MVT::v4i32, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_CheckChild2Same, 1, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SPLAT_W), 0, |
| MVT::v4i32, 2, 1, 0, |
| 0, |
| 71, |
| OPC_RecordChild0, |
| OPC_SwitchType , 15, MVT::v16i8, |
| OPC_CheckChild0Type, MVT::v16i8, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::VSHF_B), 0, |
| MVT::v16i8, 3, 0, 1, 2, |
| 15, MVT::v8i16, |
| OPC_CheckChild0Type, MVT::v8i16, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::VSHF_H), 0, |
| MVT::v8i16, 3, 0, 1, 2, |
| 15, MVT::v4i32, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::VSHF_W), 0, |
| MVT::v4i32, 3, 0, 1, 2, |
| 15, MVT::v2i64, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::VSHF_D), 0, |
| MVT::v2i64, 3, 0, 1, 2, |
| 0, |
| 0, |
| 124, TARGET_VAL(MipsISD::INSVE), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_Scope, 28, |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSVE_B), 0, |
| MVT::v16i8, 4, 0, 1, 2, 4, |
| 28, |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSVE_H), 0, |
| MVT::v8i16, 4, 0, 1, 2, 4, |
| 28, |
| OPC_CheckPredicate, 30, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSVE_W), 0, |
| MVT::v4i32, 4, 0, 1, 2, 4, |
| 28, |
| OPC_CheckPredicate, 34, |
| OPC_MoveParent, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild3, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 22, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 3, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSVE_D), 0, |
| MVT::v2i64, 4, 0, 1, 2, 4, |
| 0, |
| 64|128,2, TARGET_VAL(ISD::VSELECT), |
| OPC_RecordChild0, |
| OPC_Scope, 36, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 14, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/31, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSLI_B), 0, |
| MVT::v16i8, 3, 2, 1, 3, |
| 14, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/32, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSLI_H), 0, |
| MVT::v8i16, 3, 2, 1, 3, |
| 0, |
| 20, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/33, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSLI_W), 0, |
| MVT::v4i32, 3, 2, 1, 3, |
| 20, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/34, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSLI_D), 0, |
| MVT::v2i64, 3, 2, 1, 3, |
| 36, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 14, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/35, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSRI_B), 0, |
| MVT::v16i8, 3, 2, 1, 3, |
| 14, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/36, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSRI_H), 0, |
| MVT::v8i16, 3, 2, 1, 3, |
| 0, |
| 20, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/37, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSRI_W), 0, |
| MVT::v4i32, 3, 2, 1, 3, |
| 20, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_CheckComplexPat, /*CP*/38, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BINSRI_D), 0, |
| MVT::v2i64, 3, 2, 1, 3, |
| 92, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 73, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 25, |
| OPC_CheckComplexPat, /*CP*/14, /*#*/0, |
| OPC_Scope, 9, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BMNZI_B), 0, |
| MVT::v16i8, 3, 2, 1, 3, |
| 9, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BMZI_B), 0, |
| MVT::v16i8, 3, 1, 2, 3, |
| 0, |
| 12, |
| OPC_CheckComplexPat, /*CP*/14, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSELI_B), 0, |
| MVT::v16i8, 3, 0, 2, 3, |
| 9, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BMNZ_V), 0, |
| MVT::v16i8, 3, 2, 1, 0, |
| 9, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BMZ_V), 0, |
| MVT::v16i8, 3, 1, 2, 0, |
| 9, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSEL_V), 0, |
| MVT::v16i8, 3, 0, 2, 1, |
| 0, |
| 11, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSEL_H_PSEUDO), 0, |
| MVT::v8i16, 3, 0, 2, 1, |
| 0, |
| 32, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 11, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSEL_W_PSEUDO), 0, |
| MVT::v4i32, 3, 0, 2, 1, |
| 11, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSEL_FW_PSEUDO), 0, |
| MVT::v4f32, 3, 0, 2, 1, |
| 0, |
| 32, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 11, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSEL_D_PSEUDO), 0, |
| MVT::v2i64, 3, 0, 2, 1, |
| 11, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::BSEL_FD_PSEUDO), 0, |
| MVT::v2f64, 3, 0, 2, 1, |
| 0, |
| 0, |
| 32|128,1, TARGET_VAL(ISD::SMAX), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 37, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/20, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_S_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/20, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_S_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 37, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/21, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_S_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/21, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_S_H), 0, |
| MVT::v8i16, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 37, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/22, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_S_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/22, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_S_W), 0, |
| MVT::v4i32, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 37, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/23, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_S_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/23, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_S_D), 0, |
| MVT::v2i64, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 32|128,1, TARGET_VAL(ISD::UMAX), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 37, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/16, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_U_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/16, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_U_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 37, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/17, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_U_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/17, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_U_H), 0, |
| MVT::v8i16, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 37, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_U_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_U_W), 0, |
| MVT::v4i32, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 37, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/19, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_U_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/19, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAXI_U_D), 0, |
| MVT::v2i64, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MAX_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 32|128,1, TARGET_VAL(ISD::SMIN), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 37, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/20, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_S_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/20, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_S_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_S_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 37, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/21, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_S_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/21, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_S_H), 0, |
| MVT::v8i16, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_S_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 37, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/22, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_S_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/22, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_S_W), 0, |
| MVT::v4i32, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_S_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 37, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/23, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_S_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/23, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_S_D), 0, |
| MVT::v2i64, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_S_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 32|128,1, TARGET_VAL(ISD::UMIN), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 37, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/16, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_U_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/16, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_U_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_U_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 37, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/17, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_U_H), 0, |
| MVT::v8i16, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/17, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_U_H), 0, |
| MVT::v8i16, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_U_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 0, |
| 37, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_U_W), 0, |
| MVT::v4i32, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/18, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_U_W), 0, |
| MVT::v4i32, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_U_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 0, |
| 37, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/19, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_U_D), 0, |
| MVT::v2i64, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/19, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MINI_U_D), 0, |
| MVT::v2i64, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::MIN_U_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 0, |
| 79, TARGET_VAL(MipsISD::VNOR), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 37, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_Scope, 11, |
| OPC_CheckComplexPat, /*CP*/14, /*#*/1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NORI_B), 0, |
| MVT::v16i8, 2, 0, 2, |
| 11, |
| OPC_CheckComplexPat, /*CP*/14, /*#*/0, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NORI_B), 0, |
| MVT::v16i8, 2, 1, 2, |
| 8, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_V), 0, |
| MVT::v16i8, 2, 0, 1, |
| 0, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_V_H_PSEUDO), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_V_W_PSEUDO), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::NOR_V_D_PSEUDO), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 90|128,2, TARGET_VAL(ISD::INSERT_VECTOR_ELT), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_Scope, 29|128,1, |
| OPC_CheckChild1Type, MVT::i32, |
| OPC_RecordChild2, |
| OPC_Scope, 63, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_Scope, 18, |
| OPC_CheckPredicate, 28, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_B), 0, |
| MVT::v16i8, 3, 0, 1, 3, |
| 18, |
| OPC_CheckPredicate, 29, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_H), 0, |
| MVT::v8i16, 3, 0, 1, 3, |
| 18, |
| OPC_CheckPredicate, 30, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_W), 0, |
| MVT::v4i32, 3, 0, 1, 3, |
| 0, |
| 43, |
| OPC_CheckChild2Type, MVT::i32, |
| OPC_SwitchType , 11, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_B_VIDX_PSEUDO), 0, |
| MVT::v16i8, 3, 0, 2, 1, |
| 11, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_H_VIDX_PSEUDO), 0, |
| MVT::v8i16, 3, 0, 2, 1, |
| 11, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_W_VIDX_PSEUDO), 0, |
| MVT::v4i32, 3, 0, 2, 1, |
| 0, |
| 43, |
| OPC_CheckChild2Type, MVT::i64, |
| OPC_SwitchType , 11, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_B_VIDX64_PSEUDO), 0, |
| MVT::v16i8, 3, 0, 2, 1, |
| 11, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_H_VIDX64_PSEUDO), 0, |
| MVT::v8i16, 3, 0, 2, 1, |
| 11, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_W_VIDX64_PSEUDO), 0, |
| MVT::v4i32, 3, 0, 2, 1, |
| 0, |
| 0, |
| 60, |
| OPC_CheckChild1Type, MVT::i64, |
| OPC_RecordChild2, |
| OPC_Scope, 22, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 34, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 61, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_D), 0, |
| MVT::v2i64, 3, 0, 1, 3, |
| 15, |
| OPC_CheckChild2Type, MVT::i32, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_D_VIDX_PSEUDO), 0, |
| MVT::v2i64, 3, 0, 2, 1, |
| 15, |
| OPC_CheckChild2Type, MVT::i64, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_D_VIDX64_PSEUDO), 0, |
| MVT::v2i64, 3, 0, 2, 1, |
| 0, |
| 60, |
| OPC_CheckChild1Type, MVT::f32, |
| OPC_RecordChild2, |
| OPC_Scope, 22, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 30, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_FW_PSEUDO), 0, |
| MVT::v4f32, 3, 0, 3, 1, |
| 15, |
| OPC_CheckChild2Type, MVT::i32, |
| OPC_CheckType, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_FW_VIDX_PSEUDO), 0, |
| MVT::v4f32, 3, 0, 2, 1, |
| 15, |
| OPC_CheckChild2Type, MVT::i64, |
| OPC_CheckType, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_FW_VIDX64_PSEUDO), 0, |
| MVT::v4f32, 3, 0, 2, 1, |
| 0, |
| 60, |
| OPC_CheckChild1Type, MVT::f64, |
| OPC_RecordChild2, |
| OPC_Scope, 22, |
| OPC_MoveChild2, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_CheckPredicate, 34, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_EmitConvertToTarget, 2, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_FD_PSEUDO), 0, |
| MVT::v2f64, 3, 0, 3, 1, |
| 15, |
| OPC_CheckChild2Type, MVT::i32, |
| OPC_CheckType, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_FD_VIDX_PSEUDO), 0, |
| MVT::v2f64, 3, 0, 2, 1, |
| 15, |
| OPC_CheckChild2Type, MVT::i64, |
| OPC_CheckType, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::INSERT_FD_VIDX64_PSEUDO), 0, |
| MVT::v2f64, 3, 0, 2, 1, |
| 0, |
| 0, |
| 47, TARGET_VAL(MipsISD::SHF), |
| OPC_RecordChild0, |
| OPC_MoveChild0, |
| OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant), |
| OPC_CheckPredicate, 31, |
| OPC_MoveParent, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHF_B), 0, |
| MVT::v16i8, 2, 1, 0, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHF_H), 0, |
| MVT::v8i16, 2, 1, 0, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHF_W), 0, |
| MVT::v4i32, 2, 1, 0, |
| 0, |
| 37, TARGET_VAL(MipsISD::SHLL_DSP), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_SwitchType , 12, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLL_PH), 0, |
| MVT::v2i16, 2, 0, 2, |
| 12, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHLL_QB), 0, |
| MVT::v4i8, 2, 0, 2, |
| 0, |
| 37, TARGET_VAL(MipsISD::SHRA_DSP), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_SwitchType , 12, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRA_PH), 0, |
| MVT::v2i16, 2, 0, 2, |
| 12, MVT::v4i8, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRA_QB), 0, |
| MVT::v4i8, 2, 0, 2, |
| 0, |
| 37, TARGET_VAL(MipsISD::SHRL_DSP), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_MoveChild1, |
| OPC_CheckOpcode, TARGET_VAL(ISD::Constant), |
| OPC_MoveParent, |
| OPC_SwitchType , 12, MVT::v2i16, |
| OPC_CheckPatternPredicate, 48, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRL_PH), 0, |
| MVT::v2i16, 2, 0, 2, |
| 12, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitConvertToTarget, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::SHRL_QB), 0, |
| MVT::v4i8, 2, 0, 2, |
| 0, |
| 33|128,1, TARGET_VAL(ISD::BUILD_VECTOR), |
| OPC_RecordChild0, |
| OPC_Scope, 105, |
| OPC_CheckChild0Type, MVT::i32, |
| OPC_CheckChild1Same, 0, |
| OPC_CheckChild2Same, 0, |
| OPC_CheckChild3Same, 0, |
| OPC_Scope, 82, |
| OPC_MoveChild4, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild5, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild6, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild7, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_Scope, 51, |
| OPC_MoveChild, 8, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 9, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 10, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 11, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 12, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 13, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 14, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_MoveChild, 15, |
| OPC_CheckSame, 0, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FILL_B), 0, |
| MVT::v16i8, 1, 0, |
| 11, |
| OPC_CheckType, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FILL_H), 0, |
| MVT::v8i16, 1, 0, |
| 0, |
| 11, |
| OPC_CheckType, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FILL_W), 0, |
| MVT::v4i32, 1, 0, |
| 0, |
| 15, |
| OPC_CheckChild0Type, MVT::i64, |
| OPC_CheckChild1Same, 0, |
| OPC_CheckType, MVT::v2i64, |
| OPC_CheckPatternPredicate, 61, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FILL_D), 0, |
| MVT::v2i64, 1, 0, |
| 19, |
| OPC_CheckChild0Type, MVT::f32, |
| OPC_CheckChild1Same, 0, |
| OPC_CheckChild2Same, 0, |
| OPC_CheckChild3Same, 0, |
| OPC_CheckType, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FILL_FW_PSEUDO), 0, |
| MVT::v4f32, 1, 0, |
| 15, |
| OPC_CheckChild0Type, MVT::f64, |
| OPC_CheckChild1Same, 0, |
| OPC_CheckType, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FILL_FD_PSEUDO), 0, |
| MVT::v2f64, 1, 0, |
| 0, |
| 25, TARGET_VAL(ISD::FP_TO_SINT), |
| OPC_RecordChild0, |
| OPC_SwitchType , 9, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FTRUNC_S_W), 0, |
| MVT::v4i32, 1, 0, |
| 9, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FTRUNC_S_D), 0, |
| MVT::v2i64, 1, 0, |
| 0, |
| 25, TARGET_VAL(ISD::FP_TO_UINT), |
| OPC_RecordChild0, |
| OPC_SwitchType , 9, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FTRUNC_U_W), 0, |
| MVT::v4i32, 1, 0, |
| 9, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FTRUNC_U_D), 0, |
| MVT::v2i64, 1, 0, |
| 0, |
| 52, TARGET_VAL(MipsISD::ILVEV), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVEV_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVEV_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVEV_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVEV_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 52, TARGET_VAL(MipsISD::ILVL), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVL_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVL_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVL_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVL_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 52, TARGET_VAL(MipsISD::ILVOD), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVOD_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVOD_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVOD_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVOD_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 52, TARGET_VAL(MipsISD::ILVR), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVR_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVR_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVR_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::ILVR_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 52, TARGET_VAL(MipsISD::PCKEV), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCKEV_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCKEV_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCKEV_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCKEV_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 52, TARGET_VAL(MipsISD::PCKOD), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_SwitchType , 10, MVT::v16i8, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCKOD_B), 0, |
| MVT::v16i8, 2, 0, 1, |
| 10, MVT::v8i16, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCKOD_H), 0, |
| MVT::v8i16, 2, 0, 1, |
| 10, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCKOD_W), 0, |
| MVT::v4i32, 2, 0, 1, |
| 10, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PCKOD_D), 0, |
| MVT::v2i64, 2, 0, 1, |
| 0, |
| 67|128,2, TARGET_VAL(MipsISD::SELECT_CC_DSP), |
| OPC_RecordChild0, |
| OPC_Scope, 30|128,1, |
| OPC_CheckChild0Type, MVT::v2i16, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild4, |
| OPC_Scope, 24, |
| OPC_CheckCondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_EQ_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 4, 2, 3, |
| 24, |
| OPC_CheckCondCode, ISD::SETLT, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_LT_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 4, 2, 3, |
| 24, |
| OPC_CheckCondCode, ISD::SETLE, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_LE_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 4, 2, 3, |
| 24, |
| OPC_CheckCondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_EQ_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 4, 3, 2, |
| 24, |
| OPC_CheckCondCode, ISD::SETGE, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_LT_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 4, 3, 2, |
| 24, |
| OPC_CheckCondCode, ISD::SETGT, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v2i16, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_LE_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 4, 3, 2, |
| 0, |
| 30|128,1, |
| OPC_CheckChild0Type, MVT::v4i8, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_RecordChild3, |
| OPC_MoveChild4, |
| OPC_Scope, 24, |
| OPC_CheckCondCode, ISD::SETEQ, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_EQ_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 4, 2, 3, |
| 24, |
| OPC_CheckCondCode, ISD::SETULT, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_LT_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 4, 2, 3, |
| 24, |
| OPC_CheckCondCode, ISD::SETULE, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_LE_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 4, 2, 3, |
| 24, |
| OPC_CheckCondCode, ISD::SETNE, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_EQ_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 4, 3, 2, |
| 24, |
| OPC_CheckCondCode, ISD::SETUGE, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_LT_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 4, 3, 2, |
| 24, |
| OPC_CheckCondCode, ISD::SETUGT, |
| OPC_MoveParent, |
| OPC_CheckType, MVT::v4i8, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_LE_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 4, 3, 2, |
| 0, |
| 0, |
| 107|128,4, TARGET_VAL(MipsISD::SETCC_DSP), |
| OPC_RecordChild0, |
| OPC_SwitchType , 49|128,2, MVT::v2i16, |
| OPC_CheckChild0Type, MVT::v2i16, |
| OPC_RecordChild1, |
| OPC_Scope, 49, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_EQ_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i16, 2, 5, 6, |
| OPC_EmitRegister, MVT::v2i16, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 2, 7, 8, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETLT, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_LT_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i16, 2, 5, 6, |
| OPC_EmitRegister, MVT::v2i16, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 2, 7, 8, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETLE, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_LE_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i16, 2, 5, 6, |
| OPC_EmitRegister, MVT::v2i16, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 2, 7, 8, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_EQ_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_EmitRegister, MVT::v2i16, Mips::ZERO, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 4, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i16, 2, 6, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 2, 3, 8, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETGE, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_LT_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_EmitRegister, MVT::v2i16, Mips::ZERO, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 4, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i16, 2, 6, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 2, 3, 8, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETGT, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMP_LE_PH), 0, |
| MVT::v2i16, 2, 0, 1, |
| OPC_EmitRegister, MVT::v2i16, Mips::ZERO, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 4, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v2i16, 2, 6, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_PH), 0, |
| MVT::v2i16, 3, 2, 3, 8, |
| 0, |
| 49|128,2, MVT::v4i8, |
| OPC_CheckChild0Type, MVT::v4i8, |
| OPC_RecordChild1, |
| OPC_Scope, 49, |
| OPC_CheckChild2CondCode, ISD::SETEQ, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_EQ_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i8, 2, 5, 6, |
| OPC_EmitRegister, MVT::v4i8, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 2, 7, 8, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETULT, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_LT_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i8, 2, 5, 6, |
| OPC_EmitRegister, MVT::v4i8, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 2, 7, 8, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETULE, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_LE_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 3, 4, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i8, 2, 5, 6, |
| OPC_EmitRegister, MVT::v4i8, Mips::ZERO, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 2, 7, 8, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETNE, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_EQ_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_EmitRegister, MVT::v4i8, Mips::ZERO, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 4, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i8, 2, 6, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 2, 3, 8, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETUGE, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_LT_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_EmitRegister, MVT::v4i8, Mips::ZERO, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 4, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i8, 2, 6, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 2, 3, 8, |
| 49, |
| OPC_CheckChild2CondCode, ISD::SETUGT, |
| OPC_CheckPatternPredicate, 28, |
| OPC_EmitNode1, TARGET_VAL(Mips::PseudoCMPU_LE_QB), 0, |
| MVT::v4i8, 2, 0, 1, |
| OPC_EmitRegister, MVT::v4i8, Mips::ZERO, |
| OPC_EmitRegister, MVT::i32, Mips::ZERO, |
| OPC_EmitInteger, MVT::i32, 3, |
| OPC_EmitNode1, TARGET_VAL(Mips::ADDiu), 0, |
| MVT::i32, 2, 4, 5, |
| OPC_EmitStringInteger, MVT::i32, Mips::DSPRRegClassID, |
| OPC_EmitNode1, TARGET_VAL(TargetOpcode::COPY_TO_REGCLASS), 0, |
| MVT::v4i8, 2, 6, 7, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::PseudoPICK_QB), 0, |
| MVT::v4i8, 3, 2, 3, 8, |
| 0, |
| 0, |
| 29, TARGET_VAL(ISD::UINT_TO_FP), |
| OPC_RecordChild0, |
| OPC_SwitchType , 11, MVT::v4f32, |
| OPC_CheckChild0Type, MVT::v4i32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FFINT_U_W), 0, |
| MVT::v4f32, 1, 0, |
| 11, MVT::v2f64, |
| OPC_CheckChild0Type, MVT::v2i64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FFINT_U_D), 0, |
| MVT::v2f64, 1, 0, |
| 0, |
| 25, TARGET_VAL(ISD::FLOG2), |
| OPC_RecordChild0, |
| OPC_SwitchType , 9, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FLOG2_W), 0, |
| MVT::v4f32, 1, 0, |
| 9, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FLOG2_D), 0, |
| MVT::v2f64, 1, 0, |
| 0, |
| 31, TARGET_VAL(ISD::FMA), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 11, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMADD_W), 0, |
| MVT::v4f32, 3, 0, 1, 2, |
| 11, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMADD_D), 0, |
| MVT::v2f64, 3, 0, 1, 2, |
| 0, |
| 31, TARGET_VAL(MipsISD::FMS), |
| OPC_RecordChild0, |
| OPC_RecordChild1, |
| OPC_RecordChild2, |
| OPC_SwitchType , 11, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMSUB_W), 0, |
| MVT::v4f32, 3, 0, 1, 2, |
| 11, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FMSUB_D), 0, |
| MVT::v2f64, 3, 0, 1, 2, |
| 0, |
| 25, TARGET_VAL(ISD::FRINT), |
| OPC_RecordChild0, |
| OPC_SwitchType , 9, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FRINT_W), 0, |
| MVT::v4f32, 1, 0, |
| 9, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FRINT_D), 0, |
| MVT::v2f64, 1, 0, |
| 0, |
| 25, TARGET_VAL(ISD::FEXP2), |
| OPC_RecordChild0, |
| OPC_SwitchType , 9, MVT::v4f32, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXP2_W_1_PSEUDO), 0, |
| MVT::v4f32, 1, 0, |
| 9, MVT::v2f64, |
| OPC_CheckPatternPredicate, 26, |
| OPC_MorphNodeTo1, TARGET_VAL(Mips::FEXP2_D_1_PSEUDO), 0, |
| MVT::v2f64, 1, 0, |
| 0, |
| 0, |
| 0 |
| }; // Total Array size is 54044 bytes |
| |
| #undef TARGET_VAL |
| SelectCodeCommon(N, MatcherTable,sizeof(MatcherTable)); |
| } |
| #endif // GET_DAGISEL_BODY |
| |
| #ifdef GET_DAGISEL_DECL |
| bool CheckPatternPredicate(unsigned PredNo) const override; |
| #endif |
| #if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE |
| bool DAGISEL_CLASS_COLONCOLON CheckPatternPredicate(unsigned PredNo) const |
| #if DAGISEL_INLINE |
| override |
| #endif |
| { |
| switch (PredNo) { |
| default: llvm_unreachable("Invalid predicate in table?"); |
| case 0: return (Subtarget->hasMips32r6()) && (Subtarget->inMicroMipsMode()) && (Subtarget->isFP64bit()); |
| case 1: return (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()); |
| case 2: return (Subtarget->hasStandardEncoding()) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()); |
| case 3: return (Subtarget->inMicroMipsMode()) && (!Subtarget->isFP64bit()); |
| case 4: return (Subtarget->inMicroMipsMode()) && (Subtarget->isFP64bit()); |
| case 5: return (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->isTargetNaCl()) && (!Subtarget->useSoftFloat()) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 6: return (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (!Subtarget->useSoftFloat()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 7: return (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()); |
| case 8: return (Subtarget->inMicroMipsMode()); |
| case 9: return (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->isTargetNaCl()) && (!Subtarget->useSoftFloat()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 10: return (Subtarget->inMicroMipsMode()) && (!Subtarget->useSoftFloat()) && (!Subtarget->hasMips32r6()); |
| case 11: return (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 12: return (Subtarget->hasMips2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 13: return (Subtarget->hasStandardEncoding()) && (!Subtarget->hasCnMips()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 14: return (Subtarget->hasMips2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->hasCnMips()) && (!Subtarget->inMicroMipsMode()); |
| case 15: return (Subtarget->inMips16Mode()); |
| case 16: return (Subtarget->hasMips32r6()) && (Subtarget->inMicroMipsMode()); |
| case 17: return (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()); |
| case 18: return (Subtarget->inMicroMipsMode()) && (!Subtarget->useSoftFloat()); |
| case 19: return (Subtarget->hasMips2()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()); |
| case 20: return (Subtarget->hasMips2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()); |
| case 21: return (Subtarget->inMicroMipsMode()) && (!Subtarget->useSoftFloat()) && (!Subtarget->isFP64bit()); |
| case 22: return (Subtarget->inMicroMipsMode()) && (Subtarget->isFP64bit()) && (!Subtarget->useSoftFloat()); |
| case 23: return (Subtarget->hasMips32r6()) && (Subtarget->inMicroMipsMode()) && (Subtarget->isFP64bit()) && (!Subtarget->useSoftFloat()); |
| case 24: return (Subtarget->isGP64bit()) && (!Subtarget->inMips16Mode()); |
| case 25: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()); |
| case 26: return (Subtarget->hasMSA()) && (Subtarget->hasStandardEncoding()); |
| case 27: return (Subtarget->hasMSA()); |
| case 28: return (Subtarget->hasDSP()); |
| case 29: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isGP64bit()); |
| case 30: return (Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()); |
| case 31: return (Subtarget->hasCnMips()); |
| case 32: return (Subtarget->hasCnMips()) && (Subtarget->hasMips64()) && (Subtarget->hasMips64r2()) && (Subtarget->hasStandardEncoding()); |
| case 33: return (Subtarget->hasMips32r6()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()); |
| case 34: return (Subtarget->hasMips64r6()) && (Subtarget->hasStandardEncoding()); |
| case 35: return (Subtarget->hasMips4_32()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 36: return (Subtarget->hasMips4_32()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isGP64bit()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 37: return (Subtarget->hasMips4_32()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 38: return (Subtarget->hasStandardEncoding()) && (!Subtarget->hasMips4_32()); |
| case 39: return (Subtarget->hasMips4_32()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 40: return (Subtarget->hasMips4_32()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 41: return (Subtarget->inMicroMipsMode()) && (!Subtarget->isFP64bit()) && (!Subtarget->hasMips32r6()); |
| case 42: return (Subtarget->hasMips32r6()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()); |
| case 43: return (Subtarget->hasStandardEncoding()) && (!Subtarget->isFP64bit()) && (!Subtarget->hasMips4_32()); |
| case 44: return (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (!Subtarget->hasMips4_32()); |
| case 45: return (Subtarget->hasEVA()) && (Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()); |
| case 46: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 47: return (Subtarget->hasDSP()) && (Subtarget->inMicroMipsMode()); |
| case 48: return (Subtarget->hasDSPR2()); |
| case 49: return (Subtarget->hasDSPR2()) && (Subtarget->inMicroMipsMode()); |
| case 50: return (!Subtarget->inMips16Mode()); |
| case 51: return (Subtarget->hasDSP()) && (!Subtarget->inMicroMipsMode()); |
| case 52: return (Subtarget->hasMips32()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 53: return (Subtarget->hasMips32r6()) && (Subtarget->hasStandardEncoding()); |
| case 54: return (Subtarget->hasMips64()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isGP64bit()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips64r6()); |
| case 55: return (Subtarget->hasMips64r6()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()); |
| case 56: return (Subtarget->hasMips32r2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()); |
| case 57: return (Subtarget->hasMips64r2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()); |
| case 58: return (Subtarget->hasCnMips()) && (Subtarget->hasMips64()) && (!Subtarget->inMicroMipsMode()); |
| case 59: return (Subtarget->hasCnMips()) && (Subtarget->hasMips64()) && (Subtarget->hasMips64r2()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isGP64bit()) && (!Subtarget->inMicroMipsMode()); |
| case 60: return (Subtarget->hasMips64r2()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isGP64bit()) && (!Subtarget->inMicroMipsMode()); |
| case 61: return (Subtarget->hasMSA()) && (Subtarget->hasMips64()) && (Subtarget->hasStandardEncoding()); |
| case 62: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isGP64bit()) && (Subtarget->hasSym32()) && (!Subtarget->inMicroMipsMode()); |
| case 63: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isGP64bit()) && (!Subtarget->hasSym32()) && (!Subtarget->inMicroMipsMode()); |
| case 64: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isABI_N64()); |
| case 65: return (Subtarget->hasMips32()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 66: return (Subtarget->isGP64bit()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()); |
| case 67: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isGP64bit()) && (!Subtarget->inMicroMipsMode()); |
| case 68: return (Subtarget->hasMips32r6()) && (Subtarget->inMicroMipsMode()) && (!Subtarget->useSoftFloat()); |
| case 69: return (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 70: return (Subtarget->hasMips2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()); |
| case 71: return (Subtarget->hasMips2()) && (Subtarget->hasStandardEncoding()); |
| case 72: return (Subtarget->hasStandardEncoding()) && (!Subtarget->hasDSP()); |
| case 73: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isGP64bit()) && (!Subtarget->hasDSP()) && (!Subtarget->inMicroMipsMode()); |
| case 74: return (Subtarget->hasMSA()) && (Subtarget->isGP64bit()); |
| case 75: return (Subtarget->hasStandardEncoding()); |
| case 76: return (Subtarget->hasStandardEncoding()) && (!Subtarget->useIndirectJumpsHazard()) && (!Subtarget->inMicroMipsMode()); |
| case 77: return (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()) && (Subtarget->useIndirectJumpsHazard()); |
| case 78: return (Subtarget->isABI_N64()) && (!Subtarget->useIndirectJumpsHazard()) && (!Subtarget->inMips16Mode()); |
| case 79: return (Subtarget->isABI_N64()) && (!Subtarget->inMips16Mode()) && (Subtarget->useIndirectJumpsHazard()); |
| case 80: return (Subtarget->hasStandardEncoding()) && (!Subtarget->useIndirectJumpsHazard()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 81: return (Subtarget->hasMips32()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()) && (Subtarget->useIndirectJumpsHazard()); |
| case 82: return (Subtarget->hasMips32r6()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useIndirectJumpsHazard()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()); |
| case 83: return (Subtarget->hasMips32r6()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()) && (Subtarget->useIndirectJumpsHazard()); |
| case 84: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isABI_N64()) && (!Subtarget->useIndirectJumpsHazard()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 85: return (Subtarget->hasMips32r2()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isABI_N64()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()) && (Subtarget->useIndirectJumpsHazard()); |
| case 86: return (Subtarget->hasMips64r6()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useIndirectJumpsHazard()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()); |
| case 87: return (Subtarget->hasMips64r6()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()) && (Subtarget->useIndirectJumpsHazard()); |
| case 88: return (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 89: return (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (!Subtarget->useSoftFloat()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 90: return (Subtarget->hasMSA()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 91: return (!Subtarget->useSoftFloat()) && (!Subtarget->isFP64bit()) && (!Subtarget->inMips16Mode()); |
| case 92: return (Subtarget->isFP64bit()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMips16Mode()); |
| case 93: return (Subtarget->hasMips32r2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()) && (Subtarget->useIndirectJumpsHazard()); |
| case 94: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useIndirectJumpsHazard()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->inMips16Mode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 95: return (Subtarget->hasStandardEncoding()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 96: return (Subtarget->hasStandardEncoding()) && (!Subtarget->inMicroMipsMode()) && (!TM.isPositionIndependent()); |
| case 97: return (Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!TM.isPositionIndependent()); |
| case 98: return (Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (TM.isPositionIndependent()); |
| case 99: return (Subtarget->hasMips32r2()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isGP64bit()); |
| case 100: return (Subtarget->hasStandardEncoding()) && (!Subtarget->hasDSP()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 101: return (Subtarget->inMicroMipsMode()) && (!Subtarget->hasDSP()) && (!Subtarget->hasMips32r6()); |
| case 102: return (Subtarget->hasDSP()) && (!Subtarget->inMips16Mode()); |
| case 103: return (Subtarget->hasMips32()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->hasDSP()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 104: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()); |
| case 105: return (Subtarget->hasMSA()) && (Subtarget->isLittle()); |
| case 106: return (Subtarget->hasMSA()) && (!Subtarget->isLittle()); |
| case 107: return (Subtarget->hasMips4_32()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 108: return (Subtarget->hasMips4_32()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isGP64bit()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 109: return (Subtarget->hasMips4_32()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 110: return (Subtarget->hasMips4_32()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 111: return (Subtarget->inMicroMipsMode()) && (!Subtarget->useSoftFloat()) && (!Subtarget->isFP64bit()) && (!Subtarget->hasMips32r6()); |
| case 112: return (Subtarget->hasMips64r2()) && (Subtarget->hasStandardEncoding()); |
| case 113: return (Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 114: return (!Subtarget->disableMadd4()) && (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (TM.Options.NoNaNsFPMath) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 115: return (!Subtarget->disableMadd4()) && (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (TM.Options.NoNaNsFPMath) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 116: return (!Subtarget->disableMadd4()) && (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (!Subtarget->useSoftFloat()) && (TM.Options.NoNaNsFPMath) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 117: return (!Subtarget->disableMadd4()) && (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 118: return (!Subtarget->disableMadd4()) && (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 119: return (!Subtarget->disableMadd4()) && (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 120: return (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()); |
| case 121: return (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()); |
| case 122: return (TM.Options.AllowFPOpFusion == FPOpFusion::Fast) && (Subtarget->hasMSA()) && (Subtarget->hasStandardEncoding()); |
| case 123: return (!Subtarget->disableMadd4()) && (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (TM.Options.NoNaNsFPMath) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 124: return (!Subtarget->disableMadd4()) && (Subtarget->inMicroMipsMode()) && (Subtarget->inMicroMipsMode()) && (TM.Options.NoNaNsFPMath) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips32r6()); |
| case 125: return (!Subtarget->disableMadd4()) && (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (TM.Options.NoNaNsFPMath) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 126: return (!Subtarget->disableMadd4()) && (Subtarget->hasMips4_32r2()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (TM.Options.NoNaNsFPMath) && (!Subtarget->inMicroMipsMode()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips64r6()); |
| case 127: return (!Subtarget->disableMadd4()) && (Subtarget->inMicroMipsMode()) && (Subtarget->inMicroMipsMode()) && (TM.Options.NoNaNsFPMath) && (!Subtarget->isFP64bit()) && (!Subtarget->hasMips32r6()) && (!Subtarget->hasMips32r6()); |
| case 128: return (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()); |
| case 129: return (Subtarget->hasMips3()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (Subtarget->isGP64bit()); |
| case 130: return (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()) && (Subtarget->inAbs2008Mode() ||TM.Options.NoNaNsFPMath); |
| case 131: return (Subtarget->inMicroMipsMode()) && (!Subtarget->useSoftFloat()) && (Subtarget->inAbs2008Mode() ||TM.Options.NoNaNsFPMath); |
| case 132: return (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()) && (Subtarget->inAbs2008Mode() ||TM.Options.NoNaNsFPMath); |
| case 133: return (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()) && (Subtarget->inAbs2008Mode() ||TM.Options.NoNaNsFPMath); |
| case 134: return (Subtarget->hasMips2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->useSoftFloat()) && (!Subtarget->inMicroMipsMode()); |
| case 135: return (!Subtarget->isFP64bit()); |
| case 136: return (Subtarget->isFP64bit()); |
| case 137: return (Subtarget->hasMips2()) && (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()); |
| case 138: return (Subtarget->hasMips2()) && (Subtarget->hasStandardEncoding()) && (!Subtarget->isFP64bit()) && (!Subtarget->inMicroMipsMode()); |
| case 139: return (Subtarget->inMicroMipsMode()) && (Subtarget->isFP64bit()) && (!Subtarget->hasMips32r6()); |
| case 140: return (Subtarget->hasStandardEncoding()) && (Subtarget->isFP64bit()); |
| } |
| } |
| #endif // GET_DAGISEL_BODY |
| |
| #ifdef GET_DAGISEL_DECL |
| bool CheckNodePredicate(SDNode *Node, unsigned PredNo) const override; |
| #endif |
| #if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE |
| bool DAGISEL_CLASS_COLONCOLON CheckNodePredicate(SDNode *Node, unsigned PredNo) const |
| #if DAGISEL_INLINE |
| override |
| #endif |
| { |
| switch (PredNo) { |
| default: llvm_unreachable("Invalid predicate in table?"); |
| case 0: { |
| // Predicate_unindexedstore |
| SDNode *N = Node; |
| (void)N; |
| if (cast<StoreSDNode>(N)->getAddressingMode() != ISD::UNINDEXED) return false; |
| return true; |
| |
| } |
| case 1: { |
| // Predicate_store |
| SDNode *N = Node; |
| (void)N; |
| if (cast<StoreSDNode>(N)->isTruncatingStore()) return false; |
| return true; |
| |
| } |
| case 2: { |
| // Predicate_truncstore |
| SDNode *N = Node; |
| (void)N; |
| if (!cast<StoreSDNode>(N)->isTruncatingStore()) return false; |
| return true; |
| |
| } |
| case 3: { |
| // Predicate_truncstorei8 |
| SDNode *N = Node; |
| (void)N; |
| if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i8) return false; |
| if (!cast<StoreSDNode>(N)->isTruncatingStore()) return false; |
| return true; |
| |
| } |
| case 4: { |
| // Predicate_truncstorei16 |
| SDNode *N = Node; |
| (void)N; |
| if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i16) return false; |
| if (!cast<StoreSDNode>(N)->isTruncatingStore()) return false; |
| return true; |
| |
| } |
| case 5: { |
| // Predicate_truncstorei32 |
| SDNode *N = Node; |
| (void)N; |
| if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i32) return false; |
| if (!cast<StoreSDNode>(N)->isTruncatingStore()) return false; |
| return true; |
| |
| } |
| case 6: { |
| // Predicate_unindexedload |
| SDNode *N = Node; |
| (void)N; |
| if (cast<LoadSDNode>(N)->getAddressingMode() != ISD::UNINDEXED) return false; |
| return true; |
| |
| } |
| case 7: { |
| // Predicate_zextload |
| SDNode *N = Node; |
| (void)N; |
| if (cast<LoadSDNode>(N)->getExtensionType() != ISD::ZEXTLOAD) return false; |
| return true; |
| |
| } |
| case 8: { |
| // Predicate_zextloadi8 |
| // Predicate_sextloadi8 |
| // Predicate_extloadi8 |
| // Predicate_atomic_load_8 |
| // Predicate_atomic_store_8 |
| // Predicate_atomic_load_add_8 |
| // Predicate_atomic_load_sub_8 |
| // Predicate_atomic_load_and_8 |
| // Predicate_atomic_load_or_8 |
| // Predicate_atomic_load_xor_8 |
| // Predicate_atomic_load_nand_8 |
| // Predicate_atomic_swap_8 |
| // Predicate_atomic_cmp_swap_8 |
| // Predicate_atomic_load_min_8 |
| // Predicate_atomic_load_max_8 |
| // Predicate_atomic_load_umin_8 |
| // Predicate_atomic_load_umax_8 |
| SDNode *N = Node; |
| (void)N; |
| if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i8) return false; |
| return true; |
| |
| } |
| case 9: { |
| // Predicate_zextloadi16 |
| // Predicate_sextloadi16 |
| // Predicate_extloadi16 |
| // Predicate_atomic_load_16 |
| // Predicate_atomic_store_16 |
| // Predicate_atomic_load_add_16 |
| // Predicate_atomic_load_sub_16 |
| // Predicate_atomic_load_and_16 |
| // Predicate_atomic_load_or_16 |
| // Predicate_atomic_load_xor_16 |
| // Predicate_atomic_load_nand_16 |
| // Predicate_atomic_swap_16 |
| // Predicate_atomic_cmp_swap_16 |
| // Predicate_atomic_load_min_16 |
| // Predicate_atomic_load_max_16 |
| // Predicate_atomic_load_umin_16 |
| // Predicate_atomic_load_umax_16 |
| SDNode *N = Node; |
| (void)N; |
| if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i16) return false; |
| return true; |
| |
| } |
| case 10: { |
| // Predicate_sextload |
| SDNode *N = Node; |
| (void)N; |
| if (cast<LoadSDNode>(N)->getExtensionType() != ISD::SEXTLOAD) return false; |
| return true; |
| |
| } |
| case 11: { |
| // Predicate_load |
| SDNode *N = Node; |
| (void)N; |
| if (cast<LoadSDNode>(N)->getExtensionType() != ISD::NON_EXTLOAD) return false; |
| return true; |
| |
| } |
| case 12: { |
| // Predicate_extload |
| SDNode *N = Node; |
| (void)N; |
| if (cast<LoadSDNode>(N)->getExtensionType() != ISD::EXTLOAD) return false; |
| return true; |
| |
| } |
| case 13: { |
| // Predicate_extloadi1 |
| SDNode *N = Node; |
| (void)N; |
| if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i1) return false; |
| return true; |
| |
| } |
| case 14: { |
| // Predicate_sextloadi32 |
| // Predicate_zextloadi32 |
| // Predicate_extloadi32 |
| // Predicate_atomic_load_32 |
| // Predicate_atomic_store_32 |
| // Predicate_atomic_load_add_32 |
| // Predicate_atomic_load_sub_32 |
| // Predicate_atomic_load_and_32 |
| // Predicate_atomic_load_or_32 |
| // Predicate_atomic_load_xor_32 |
| // Predicate_atomic_load_nand_32 |
| // Predicate_atomic_swap_32 |
| // Predicate_atomic_cmp_swap_32 |
| // Predicate_atomic_load_min_32 |
| // Predicate_atomic_load_max_32 |
| // Predicate_atomic_load_umin_32 |
| // Predicate_atomic_load_umax_32 |
| SDNode *N = Node; |
| (void)N; |
| if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i32) return false; |
| return true; |
| |
| } |
| case 15: { |
| // Predicate_immZExt5_64 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return Imm == (Imm & 0x1f); |
| } |
| case 16: { |
| // Predicate_PowerOf2LO |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| if (N->getValueType(0) == MVT::i64) { |
| uint64_t Imm = N->getZExtValue(); |
| return isPowerOf2_64(Imm) && (Imm & 0xffffffff) == Imm; |
| } |
| else |
| return false; |
| |
| } |
| case 17: { |
| // Predicate_PowerOf2HI |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| if (N->getValueType(0) == MVT::i64) { |
| uint64_t Imm = N->getZExtValue(); |
| return isPowerOf2_64(Imm) && (Imm & 0xffffffff00000000) == Imm; |
| } |
| else |
| return false; |
| |
| } |
| case 18: { |
| // Predicate_PowerOf2LO_i32 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| if (N->getValueType(0) == MVT::i32) { |
| uint64_t Imm = N->getZExtValue(); |
| return isPowerOf2_32(Imm) && isUInt<32>(Imm); |
| } |
| else |
| return false; |
| |
| } |
| case 19: { |
| // Predicate_immSExt16 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| return isInt<16>(N->getSExtValue()); |
| } |
| case 20: { |
| // Predicate_immSExt16Plus1 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| return isInt<17>(N->getSExtValue()) && isInt<16>(N->getSExtValue() + 1); |
| |
| } |
| case 21: { |
| // Predicate_immZExt16 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| if (N->getValueType(0) == MVT::i32) |
| return (uint32_t)N->getZExtValue() == (unsigned short)N->getZExtValue(); |
| else |
| return (uint64_t)N->getZExtValue() == (unsigned short)N->getZExtValue(); |
| |
| } |
| case 22: { |
| // Predicate_immz |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| return N->getSExtValue() == 0; |
| } |
| case 23: { |
| // Predicate_immZExt16_64 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| return isUInt<16>(N->getZExtValue()); |
| } |
| case 24: { |
| // Predicate_atomic_load_64 |
| // Predicate_atomic_store_64 |
| // Predicate_atomic_load_add_64 |
| // Predicate_atomic_load_sub_64 |
| // Predicate_atomic_load_and_64 |
| // Predicate_atomic_load_or_64 |
| // Predicate_atomic_load_xor_64 |
| // Predicate_atomic_load_nand_64 |
| // Predicate_atomic_swap_64 |
| // Predicate_atomic_cmp_swap_64 |
| // Predicate_atomic_load_min_64 |
| // Predicate_atomic_load_max_64 |
| // Predicate_atomic_load_umin_64 |
| // Predicate_atomic_load_umax_64 |
| SDNode *N = Node; |
| (void)N; |
| if (cast<MemSDNode>(N)->getMemoryVT() != MVT::i64) return false; |
| return true; |
| |
| } |
| case 25: { |
| // Predicate_immZExt5 |
| // Predicate_timmZExt5 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return Imm == (Imm & 0x1f); |
| } |
| case 26: { |
| // Predicate_timmZExt10 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isUInt<10>(Imm); |
| } |
| case 27: { |
| // Predicate_timmZExt7 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| return isUInt<7>(N->getZExtValue()); |
| } |
| case 28: { |
| // Predicate_immZExt4 |
| // Predicate_timmZExt4 |
| // Predicate_immZExt4Ptr |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isUInt<4>(Imm); |
| } |
| case 29: { |
| // Predicate_immZExt3 |
| // Predicate_timmZExt3 |
| // Predicate_immZExt3Ptr |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isUInt<3>(Imm); |
| } |
| case 30: { |
| // Predicate_timmZExt2 |
| // Predicate_immZExt2 |
| // Predicate_immZExt2Ptr |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isUInt<2>(Imm); |
| } |
| case 31: { |
| // Predicate_immZExt8 |
| // Predicate_timmZExt8 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isUInt<8>(Imm); |
| } |
| case 32: { |
| // Predicate_immSExt10 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isInt<10>(Imm); |
| } |
| case 33: { |
| // Predicate_timmZExt6 |
| // Predicate_immZExt6 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return Imm == (Imm & 0x3f); |
| } |
| case 34: { |
| // Predicate_timmZExt1 |
| // Predicate_immZExt1Ptr |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isUInt<1>(Imm); |
| } |
| case 35: { |
| // Predicate_imm32ZExt16 |
| const APInt & Imm = cast<ConstantSDNode>(Node)->getAPIntValue(); |
| |
| return (uint32_t)Imm.getZExtValue() == (unsigned short)Imm.getZExtValue(); |
| |
| } |
| case 36: { |
| // Predicate_vsplat_imm_eq_1 |
| SDNode *N = Node; |
| (void)N; |
| |
| APInt Imm; |
| EVT EltTy = N->getValueType(0).getVectorElementType(); |
| |
| return selectVSplat(N, Imm, EltTy.getSizeInBits()) && |
| Imm.getBitWidth() == EltTy.getSizeInBits() && Imm == 1; |
| |
| } |
| case 37: { |
| // Predicate_immi32Cst7 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isUInt<32>(Imm) && Imm == 7; |
| } |
| case 38: { |
| // Predicate_immi32Cst15 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isUInt<32>(Imm) && Imm == 15; |
| } |
| case 39: { |
| // Predicate_immi32Cst31 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isUInt<32>(Imm) && Imm == 31; |
| } |
| case 40: { |
| // Predicate_vsplati64_imm_eq_1 |
| SDNode *N = Node; |
| (void)N; |
| |
| APInt Imm; |
| SDNode *BV = N->getOperand(0).getNode(); |
| EVT EltTy = N->getValueType(0).getVectorElementType(); |
| |
| return selectVSplat(BV, Imm, EltTy.getSizeInBits()) && |
| Imm.getBitWidth() == EltTy.getSizeInBits() && Imm == 1; |
| |
| } |
| case 41: { |
| // Predicate_vsplati64_imm_eq_63 |
| SDNode *N = Node; |
| (void)N; |
| |
| APInt Imm; |
| SDNode *BV = N->getOperand(0).getNode(); |
| EVT EltTy = N->getValueType(0).getVectorElementType(); |
| |
| return selectVSplat(BV, Imm, EltTy.getSizeInBits()) && |
| Imm.getBitWidth() == EltTy.getSizeInBits() && Imm == 63; |
| |
| } |
| case 42: { |
| // Predicate_immZExt5Plus1 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| return isUInt<5>(N->getZExtValue() - 1); |
| |
| } |
| case 43: { |
| // Predicate_immZExt5Plus33 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| return isUInt<5>(N->getZExtValue() - 33); |
| |
| } |
| case 44: { |
| // Predicate_immZExt5Plus32 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| return isUInt<5>(N->getZExtValue() - 32); |
| |
| } |
| case 45: { |
| // Predicate_immZExtAndi16 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return (Imm == 128 || (Imm >= 1 && Imm <= 4) || Imm == 7 || Imm == 8 || |
| Imm == 15 || Imm == 16 || Imm == 31 || Imm == 32 || Imm == 63 || |
| Imm == 64 || Imm == 255 || Imm == 32768 || Imm == 65535 ); |
| } |
| case 46: { |
| // Predicate_immSExt10_64 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| return isInt<10>(N->getSExtValue()); |
| } |
| case 47: { |
| // Predicate_immZExt2Lsa |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isUInt<2>(Imm - 1); |
| } |
| case 48: { |
| // Predicate_imm32SExt16 |
| const APInt & Imm = cast<ConstantSDNode>(Node)->getAPIntValue(); |
| return isInt<16>(Imm.getSExtValue()); |
| } |
| case 49: { |
| // Predicate_immSExt8 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| return isInt<8>(N->getSExtValue()); |
| } |
| case 50: { |
| // Predicate_immSExtAddiur2 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return Imm == 1 || Imm == -1 || |
| ((Imm % 4 == 0) && |
| Imm < 28 && Imm > 0); |
| } |
| case 51: { |
| // Predicate_immSExtAddius5 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return Imm >= -8 && Imm <= 7; |
| } |
| case 52: { |
| // Predicate_immZExt2Shift |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return Imm >= 1 && Imm <= 8; |
| } |
| case 53: { |
| // Predicate_assertzext_lt_i32 |
| SDNode *N = Node; |
| (void)N; |
| |
| return cast<VTSDNode>(N->getOperand(1))->getVT().bitsLT(MVT::i32); |
| |
| } |
| case 54: { |
| // Predicate_immSExt6 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return isInt<6>(Imm); |
| } |
| case 55: { |
| // Predicate_LUiPred |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| int64_t Val = N->getSExtValue(); |
| return !isInt<16>(Val) && isInt<32>(Val) && !(Val & 0xffff); |
| |
| } |
| case 56: { |
| // Predicate_ORiPred |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| return isUInt<16>(N->getZExtValue()) && !isInt<16>(N->getSExtValue()); |
| |
| } |
| case 57: { |
| // Predicate_immLi16 |
| int64_t Imm = cast<ConstantSDNode>(Node)->getSExtValue(); |
| return Imm >= -1 && Imm <= 126; |
| } |
| case 58: { |
| // Predicate_LUiORiPred |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| int64_t SVal = N->getSExtValue(); |
| return isInt<32>(SVal) && (SVal & 0xffff); |
| |
| } |
| case 59: { |
| // Predicate_immZExt32Low16Zero |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| |
| uint64_t Val = N->getZExtValue(); |
| return isUInt<32>(Val) && !(Val & 0xffff); |
| |
| } |
| case 60: { |
| // Predicate_immZExt32 |
| auto *N = cast<ConstantSDNode>(Node); |
| (void)N; |
| return isUInt<32>(N->getZExtValue()); |
| } |
| case 61: { |
| // Predicate_fpimm0 |
| auto *N = cast<ConstantFPSDNode>(Node); |
| (void)N; |
| |
| return N->isExactlyValue(+0.0); |
| |
| } |
| case 62: { |
| // Predicate_fpimm0neg |
| auto *N = cast<ConstantFPSDNode>(Node); |
| (void)N; |
| |
| return N->isExactlyValue(-0.0); |
| |
| } |
| } |
| } |
| #endif // GET_DAGISEL_BODY |
| |
| #ifdef GET_DAGISEL_DECL |
| bool CheckComplexPattern(SDNode *Root, SDNode *Parent, |
| SDValue N, unsigned PatternNo, |
| SmallVectorImpl<std::pair<SDValue, SDNode *>> &Result) override; |
| #endif |
| #if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE |
| bool DAGISEL_CLASS_COLONCOLON CheckComplexPattern(SDNode *Root, SDNode *Parent, |
| SDValue N, unsigned PatternNo, |
| SmallVectorImpl<std::pair<SDValue, SDNode *>> &Result) |
| #if DAGISEL_INLINE |
| override |
| #endif |
| { |
| unsigned NextRes = Result.size(); |
| switch (PatternNo) { |
| default: llvm_unreachable("Invalid pattern # in table?"); |
| case 0: |
| Result.resize(NextRes+2); |
| return selectAddrRegImm(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 1: |
| Result.resize(NextRes+2); |
| return selectIntAddr(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 2: |
| Result.resize(NextRes+2); |
| return selectAddrDefault(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 3: |
| Result.resize(NextRes+2); |
| return selectAddr16(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 4: |
| Result.resize(NextRes+2); |
| return selectAddr16SP(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 5: |
| Result.resize(NextRes+2); |
| return selectIntAddrLSL2MM(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 6: |
| Result.resize(NextRes+2); |
| return selectIntAddr11MM(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 7: |
| Result.resize(NextRes+2); |
| return selectIntAddr16MM(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 8: |
| Result.resize(NextRes+2); |
| return selectIntAddrSImm10(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 9: |
| Result.resize(NextRes+2); |
| return selectIntAddrSImm10Lsl1(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 10: |
| Result.resize(NextRes+2); |
| return selectIntAddrSImm10Lsl2(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 11: |
| Result.resize(NextRes+2); |
| return selectIntAddrSImm10Lsl3(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 12: |
| Result.resize(NextRes+2); |
| return selectIntAddr12MM(N, Result[NextRes+0].first, Result[NextRes+1].first); |
| case 13: |
| Result.resize(NextRes+1); |
| return selectVSplatUimmPow2(N, Result[NextRes+0].first); |
| case 14: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm8(N, Result[NextRes+0].first); |
| case 15: |
| Result.resize(NextRes+1); |
| return selectVSplatUimmInvPow2(N, Result[NextRes+0].first); |
| case 16: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm5(N, Result[NextRes+0].first); |
| case 17: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm5(N, Result[NextRes+0].first); |
| case 18: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm5(N, Result[NextRes+0].first); |
| case 19: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm5(N, Result[NextRes+0].first); |
| case 20: |
| Result.resize(NextRes+1); |
| return selectVSplatSimm5(N, Result[NextRes+0].first); |
| case 21: |
| Result.resize(NextRes+1); |
| return selectVSplatSimm5(N, Result[NextRes+0].first); |
| case 22: |
| Result.resize(NextRes+1); |
| return selectVSplatSimm5(N, Result[NextRes+0].first); |
| case 23: |
| Result.resize(NextRes+1); |
| return selectVSplatSimm5(N, Result[NextRes+0].first); |
| case 24: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm3(N, Result[NextRes+0].first); |
| case 25: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm4(N, Result[NextRes+0].first); |
| case 26: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm6(N, Result[NextRes+0].first); |
| case 27: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm4(N, Result[NextRes+0].first); |
| case 28: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm3(N, Result[NextRes+0].first); |
| case 29: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm2(N, Result[NextRes+0].first); |
| case 30: |
| Result.resize(NextRes+1); |
| return selectVSplatUimm1(N, Result[NextRes+0].first); |
| case 31: |
| Result.resize(NextRes+1); |
| return selectVSplatMaskL(N, Result[NextRes+0].first); |
| case 32: |
| Result.resize(NextRes+1); |
| return selectVSplatMaskL(N, Result[NextRes+0].first); |
| case 33: |
| Result.resize(NextRes+1); |
| return selectVSplatMaskL(N, Result[NextRes+0].first); |
| case 34: |
| Result.resize(NextRes+1); |
| return selectVSplatMaskL(N, Result[NextRes+0].first); |
| case 35: |
| Result.resize(NextRes+1); |
| return selectVSplatMaskR(N, Result[NextRes+0].first); |
| case 36: |
| Result.resize(NextRes+1); |
| return selectVSplatMaskR(N, Result[NextRes+0].first); |
| case 37: |
| Result.resize(NextRes+1); |
| return selectVSplatMaskR(N, Result[NextRes+0].first); |
| case 38: |
| Result.resize(NextRes+1); |
| return selectVSplatMaskR(N, Result[NextRes+0].first); |
| } |
| } |
| #endif // GET_DAGISEL_BODY |
| |
| #ifdef GET_DAGISEL_DECL |
| SDValue RunSDNodeXForm(SDValue V, unsigned XFormNo) override; |
| #endif |
| #if defined(GET_DAGISEL_BODY) || DAGISEL_INLINE |
| SDValue DAGISEL_CLASS_COLONCOLON RunSDNodeXForm(SDValue V, unsigned XFormNo) |
| #if DAGISEL_INLINE |
| override |
| #endif |
| { |
| switch (XFormNo) { |
| default: llvm_unreachable("Invalid xform # in table?"); |
| case 0: { |
| ConstantSDNode *N = cast<ConstantSDNode>(V.getNode()); |
| |
| return getImm(N, Log2_64((unsigned) N->getZExtValue())); |
| |
| } |
| case 1: { |
| ConstantSDNode *N = cast<ConstantSDNode>(V.getNode()); |
| |
| return getImm(N, Log2_64((unsigned) (N->getZExtValue() >> 32))); |
| |
| } |
| case 2: { |
| ConstantSDNode *N = cast<ConstantSDNode>(V.getNode()); |
| return getImm(N, N->getSExtValue() + 1); |
| } |
| case 3: { |
| ConstantSDNode *N = cast<ConstantSDNode>(V.getNode()); |
| |
| return getImm(N, N->getZExtValue() & 0xFFFF); |
| |
| } |
| case 4: { |
| ConstantSDNode *N = cast<ConstantSDNode>(V.getNode()); |
| |
| return getImm(N, 31 - N->getZExtValue()); |
| |
| } |
| case 5: { |
| ConstantSDNode *N = cast<ConstantSDNode>(V.getNode()); |
| |
| return getImm(N, (N->getZExtValue() >> 16) & 0xFFFF); |
| |
| } |
| } |
| } |
| #endif // GET_DAGISEL_BODY |
| |
| |
| #ifdef DAGISEL_INLINE |
| #undef DAGISEL_INLINE |
| #endif |
| #ifdef DAGISEL_CLASS_COLONCOLON |
| #undef DAGISEL_CLASS_COLONCOLON |
| #endif |
| #ifdef GET_DAGISEL_DECL |
| #undef GET_DAGISEL_DECL |
| #endif |
| #ifdef GET_DAGISEL_BODY |
| #undef GET_DAGISEL_BODY |
| #endif |