LCOV - code coverage report
Current view: top level - build-llvm/lib/Target/MSP430 - MSP430GenDAGISel.inc (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 34 39 87.2 %
Date: 2017-09-14 15:23:50 Functions: 2 2 100.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
       2             : |*                                                                            *|
       3             : |* DAG Instruction Selector for the MSP430 target                             *|
       4             : |*                                                                            *|
       5             : |* Automatically generated file, do not edit!                                 *|
       6             : |*                                                                            *|
       7             : \*===----------------------------------------------------------------------===*/
       8             : 
       9             : // *** NOTE: This file is #included into the middle of the target
      10             : // *** instruction selector class.  These functions are really methods.
      11             : 
      12             : // The main instruction selector code.
      13             : void SelectCode(SDNode *N) {
      14             :   // Some target values are emitted as 2 bytes, TARGET_VAL handles
      15             :   // this.
      16             :   #define TARGET_VAL(X) X & 255, unsigned(X) >> 8
      17             :   static const unsigned char MatcherTable[] = {
      18             : /*0*/       OPC_SwitchOpcode /*34 cases */, 1|128,25/*3201*/, TARGET_VAL(ISD::STORE),// ->3206
      19             : /*5*/         OPC_RecordMemRef,
      20             : /*6*/         OPC_RecordNode, // #0 = 'st' chained node
      21             : /*7*/         OPC_Scope, 28|128,24/*3100*/, /*->3110*/ // 2 children in Scope
      22             : /*10*/          OPC_MoveChild1,
      23             : /*11*/          OPC_SwitchOpcode /*11 cases */, 55|128,5/*695*/, TARGET_VAL(ISD::AND),// ->711
      24             : /*16*/            OPC_Scope, 112|128,4/*624*/, /*->643*/ // 2 children in Scope
      25             : /*19*/              OPC_MoveChild0,
      26             : /*20*/              OPC_SwitchOpcode /*2 cases */, 47|128,3/*431*/, TARGET_VAL(ISD::LOAD),// ->456
      27             : /*25*/                OPC_RecordMemRef,
      28             : /*26*/                OPC_RecordNode, // #1 = 'ld' chained node
      29             : /*27*/                OPC_CheckFoldableChainNode,
      30             : /*28*/                OPC_RecordChild1, // #2 = $dst
      31             : /*29*/                OPC_CheckPredicate, 0, // Predicate_unindexedload
      32             : /*31*/                OPC_CheckPredicate, 1, // Predicate_load
      33             : /*33*/                OPC_MoveParent,
      34             : /*34*/                OPC_Scope, 44|128,2/*300*/, /*->337*/ // 2 children in Scope
      35             : /*37*/                  OPC_MoveChild1,
      36             : /*38*/                  OPC_SwitchOpcode /*2 cases */, 28|128,1/*156*/, TARGET_VAL(ISD::XOR),// ->199
      37             : /*43*/                    OPC_Scope, 87, /*->132*/ // 2 children in Scope
      38             : /*45*/                      OPC_MoveChild0,
      39             : /*46*/                      OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
      40             : /*49*/                      OPC_RecordMemRef,
      41             : /*50*/                      OPC_RecordNode, // #3 = 'ld' chained node
      42             : /*51*/                      OPC_CheckFoldableChainNode,
      43             : /*52*/                      OPC_RecordChild1, // #4 = $src
      44             : /*53*/                      OPC_CheckPredicate, 0, // Predicate_unindexedload
      45             : /*55*/                      OPC_CheckPredicate, 1, // Predicate_load
      46             : /*57*/                      OPC_MoveParent,
      47             : /*58*/                      OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/, 
      48             : /*69*/                      OPC_MoveParent,
      49             : /*70*/                      OPC_SwitchType /*2 cases */, 28, MVT::i8,// ->101
      50             : /*73*/                        OPC_MoveParent,
      51             : /*74*/                        OPC_CheckChild2Same, 2,
      52             : /*76*/                        OPC_CheckPredicate, 2, // Predicate_unindexedstore
      53             : /*78*/                        OPC_CheckPredicate, 3, // Predicate_store
      54             : /*80*/                        OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
      55             : /*83*/                        OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
      56             : /*86*/                        OPC_EmitMergeInputChains, 3, 0, 1, 3, 
      57             : /*91*/                        OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIC8mm), 0|OPFL_Chain|OPFL_MemRefs,
      58             :                                   MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
      59             :                               // Src: (st (and:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (xor:i8 (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, -1:i8)), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 50
      60             :                               // Dst: (BIC8mm:i16 addr:i16:$dst, addr:i16:$src)
      61             : /*101*/                     /*SwitchType*/ 28, MVT::i16,// ->131
      62             : /*103*/                       OPC_MoveParent,
      63             : /*104*/                       OPC_CheckChild2Same, 2,
      64             : /*106*/                       OPC_CheckPredicate, 2, // Predicate_unindexedstore
      65             : /*108*/                       OPC_CheckPredicate, 3, // Predicate_store
      66             : /*110*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
      67             : /*113*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
      68             : /*116*/                       OPC_EmitMergeInputChains, 3, 0, 1, 3, 
      69             : /*121*/                       OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIC16mm), 0|OPFL_Chain|OPFL_MemRefs,
      70             :                                   MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
      71             :                               // Src: (st (and:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (xor:i16 (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, -1:i16)), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 50
      72             :                               // Dst: (BIC16mm:i16 addr:i16:$dst, addr:i16:$src)
      73             : /*131*/                     0, // EndSwitchType
      74             : /*132*/                   /*Scope*/ 65, /*->198*/
      75             : /*133*/                     OPC_RecordChild0, // #3 = $src
      76             : /*134*/                     OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/, 
      77             : /*145*/                     OPC_MoveParent,
      78             : /*146*/                     OPC_SwitchType /*2 cases */, 23, MVT::i8,// ->172
      79             : /*149*/                       OPC_MoveParent,
      80             : /*150*/                       OPC_CheckChild2Same, 2,
      81             : /*152*/                       OPC_CheckPredicate, 2, // Predicate_unindexedstore
      82             : /*154*/                       OPC_CheckPredicate, 3, // Predicate_store
      83             : /*156*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
      84             : /*159*/                       OPC_EmitMergeInputChains, 2, 0, 1, 
      85             : /*163*/                       OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIC8mr), 0|OPFL_Chain|OPFL_MemRefs,
      86             :                                   MVT::i16, 3/*#Ops*/, 4, 5, 3, 
      87             :                               // Src: (st (and:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (xor:i8 GR8:i8:$src, -1:i8)), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 37
      88             :                               // Dst: (BIC8mr:i16 addr:i16:$dst, GR8:i8:$src)
      89             : /*172*/                     /*SwitchType*/ 23, MVT::i16,// ->197
      90             : /*174*/                       OPC_MoveParent,
      91             : /*175*/                       OPC_CheckChild2Same, 2,
      92             : /*177*/                       OPC_CheckPredicate, 2, // Predicate_unindexedstore
      93             : /*179*/                       OPC_CheckPredicate, 3, // Predicate_store
      94             : /*181*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
      95             : /*184*/                       OPC_EmitMergeInputChains, 2, 0, 1, 
      96             : /*188*/                       OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIC16mr), 0|OPFL_Chain|OPFL_MemRefs,
      97             :                                   MVT::i16, 3/*#Ops*/, 4, 5, 3, 
      98             :                               // Src: (st (and:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (xor:i16 GR16:i16:$src, -1:i16)), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 37
      99             :                               // Dst: (BIC16mr:i16 addr:i16:$dst, GR16:i16:$src)
     100             : /*197*/                     0, // EndSwitchType
     101             : /*198*/                   0, /*End of Scope*/
     102             : /*199*/                 /*SwitchOpcode*/ 5|128,1/*133*/, TARGET_VAL(ISD::LOAD),// ->336
     103             : /*203*/                   OPC_RecordMemRef,
     104             : /*204*/                   OPC_RecordNode, // #3 = 'ld' chained node
     105             : /*205*/                   OPC_CheckFoldableChainNode,
     106             : /*206*/                   OPC_RecordChild1, // #4 = $src
     107             : /*207*/                   OPC_CheckPredicate, 0, // Predicate_unindexedload
     108             : /*209*/                   OPC_CheckPredicate, 1, // Predicate_load
     109             : /*211*/                   OPC_MoveParent,
     110             : /*212*/                   OPC_SwitchType /*2 cases */, 59, MVT::i8,// ->274
     111             : /*215*/                     OPC_MoveParent,
     112             : /*216*/                     OPC_Scope, 27, /*->245*/ // 2 children in Scope
     113             : /*218*/                       OPC_CheckChild2Same, 2,
     114             : /*220*/                       OPC_CheckPredicate, 2, // Predicate_unindexedstore
     115             : /*222*/                       OPC_CheckPredicate, 3, // Predicate_store
     116             : /*224*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
     117             : /*227*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
     118             : /*230*/                       OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     119             : /*235*/                       OPC_MorphNodeTo1, TARGET_VAL(MSP430::AND8mm), 0|OPFL_Chain|OPFL_MemRefs,
     120             :                                   MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
     121             :                               // Src: (st (and:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     122             :                               // Dst: (AND8mm:i16 addr:i16:$dst, addr:i16:$src)
     123             : /*245*/                     /*Scope*/ 27, /*->273*/
     124             : /*246*/                       OPC_CheckChild2Same, 4,
     125             : /*248*/                       OPC_CheckPredicate, 2, // Predicate_unindexedstore
     126             : /*250*/                       OPC_CheckPredicate, 3, // Predicate_store
     127             : /*252*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     128             : /*255*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     129             : /*258*/                       OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     130             : /*263*/                       OPC_MorphNodeTo1, TARGET_VAL(MSP430::AND8mm), 0|OPFL_Chain|OPFL_MemRefs,
     131             :                                   MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     132             :                               // Src: (st (and:i8 (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     133             :                               // Dst: (AND8mm:i16 addr:i16:$dst, addr:i16:$src)
     134             : /*273*/                     0, /*End of Scope*/
     135             : /*274*/                   /*SwitchType*/ 59, MVT::i16,// ->335
     136             : /*276*/                     OPC_MoveParent,
     137             : /*277*/                     OPC_Scope, 27, /*->306*/ // 2 children in Scope
     138             : /*279*/                       OPC_CheckChild2Same, 2,
     139             : /*281*/                       OPC_CheckPredicate, 2, // Predicate_unindexedstore
     140             : /*283*/                       OPC_CheckPredicate, 3, // Predicate_store
     141             : /*285*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
     142             : /*288*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
     143             : /*291*/                       OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     144             : /*296*/                       OPC_MorphNodeTo1, TARGET_VAL(MSP430::AND16mm), 0|OPFL_Chain|OPFL_MemRefs,
     145             :                                   MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
     146             :                               // Src: (st (and:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     147             :                               // Dst: (AND16mm:i16 addr:i16:$dst, addr:i16:$src)
     148             : /*306*/                     /*Scope*/ 27, /*->334*/
     149             : /*307*/                       OPC_CheckChild2Same, 4,
     150             : /*309*/                       OPC_CheckPredicate, 2, // Predicate_unindexedstore
     151             : /*311*/                       OPC_CheckPredicate, 3, // Predicate_store
     152             : /*313*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     153             : /*316*/                       OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     154             : /*319*/                       OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     155             : /*324*/                       OPC_MorphNodeTo1, TARGET_VAL(MSP430::AND16mm), 0|OPFL_Chain|OPFL_MemRefs,
     156             :                                   MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     157             :                               // Src: (st (and:i16 (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     158             :                               // Dst: (AND16mm:i16 addr:i16:$dst, addr:i16:$src)
     159             : /*334*/                     0, /*End of Scope*/
     160             : /*335*/                   0, // EndSwitchType
     161             : /*336*/                 0, // EndSwitchOpcode
     162             : /*337*/               /*Scope*/ 117, /*->455*/
     163             : /*338*/                 OPC_RecordChild1, // #3 = $src
     164             : /*339*/                 OPC_Scope, 61, /*->402*/ // 3 children in Scope
     165             : /*341*/                   OPC_MoveChild1,
     166             : /*342*/                   OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
     167             : /*345*/                   OPC_MoveParent,
     168             : /*346*/                   OPC_SwitchType /*2 cases */, 25, MVT::i8,// ->374
     169             : /*349*/                     OPC_MoveParent,
     170             : /*350*/                     OPC_CheckChild2Same, 2,
     171             : /*352*/                     OPC_CheckPredicate, 2, // Predicate_unindexedstore
     172             : /*354*/                     OPC_CheckPredicate, 3, // Predicate_store
     173             : /*356*/                     OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     174             : /*359*/                     OPC_EmitMergeInputChains, 2, 0, 1, 
     175             : /*363*/                     OPC_EmitConvertToTarget, 3,
     176             : /*365*/                     OPC_MorphNodeTo1, TARGET_VAL(MSP430::AND8mi), 0|OPFL_Chain|OPFL_MemRefs,
     177             :                                 MVT::i16, 3/*#Ops*/, 4, 5, 6, 
     178             :                             // Src: (st (and:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i8):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
     179             :                             // Dst: (AND8mi:i16 addr:i16:$dst, (imm:i8):$src)
     180             : /*374*/                   /*SwitchType*/ 25, MVT::i16,// ->401
     181             : /*376*/                     OPC_MoveParent,
     182             : /*377*/                     OPC_CheckChild2Same, 2,
     183             : /*379*/                     OPC_CheckPredicate, 2, // Predicate_unindexedstore
     184             : /*381*/                     OPC_CheckPredicate, 3, // Predicate_store
     185             : /*383*/                     OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     186             : /*386*/                     OPC_EmitMergeInputChains, 2, 0, 1, 
     187             : /*390*/                     OPC_EmitConvertToTarget, 3,
     188             : /*392*/                     OPC_MorphNodeTo1, TARGET_VAL(MSP430::AND16mi), 0|OPFL_Chain|OPFL_MemRefs,
     189             :                                 MVT::i16, 3/*#Ops*/, 4, 5, 6, 
     190             :                             // Src: (st (and:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i16):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
     191             :                             // Dst: (AND16mi:i16 addr:i16:$dst, (imm:i16):$src)
     192             : /*401*/                   0, // EndSwitchType
     193             : /*402*/                 /*Scope*/ 25, /*->428*/
     194             : /*403*/                   OPC_CheckType, MVT::i8,
     195             : /*405*/                   OPC_MoveParent,
     196             : /*406*/                   OPC_CheckChild2Same, 2,
     197             : /*408*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     198             : /*410*/                   OPC_CheckPredicate, 3, // Predicate_store
     199             : /*412*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     200             : /*415*/                   OPC_EmitMergeInputChains, 2, 0, 1, 
     201             : /*419*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::AND8mr), 0|OPFL_Chain|OPFL_MemRefs,
     202             :                               MVT::i16, 3/*#Ops*/, 4, 5, 3, 
     203             :                           // Src: (st (and:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     204             :                           // Dst: (AND8mr:i16 addr:i16:$dst, GR8:i8:$src)
     205             : /*428*/                 /*Scope*/ 25, /*->454*/
     206             : /*429*/                   OPC_CheckType, MVT::i16,
     207             : /*431*/                   OPC_MoveParent,
     208             : /*432*/                   OPC_CheckChild2Same, 2,
     209             : /*434*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     210             : /*436*/                   OPC_CheckPredicate, 3, // Predicate_store
     211             : /*438*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     212             : /*441*/                   OPC_EmitMergeInputChains, 2, 0, 1, 
     213             : /*445*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::AND16mr), 0|OPFL_Chain|OPFL_MemRefs,
     214             :                               MVT::i16, 3/*#Ops*/, 4, 5, 3, 
     215             :                           // Src: (st (and:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     216             :                           // Dst: (AND16mr:i16 addr:i16:$dst, GR16:i16:$src)
     217             : /*454*/                 0, /*End of Scope*/
     218             : /*455*/               0, /*End of Scope*/
     219             : /*456*/             /*SwitchOpcode*/ 54|128,1/*182*/, TARGET_VAL(ISD::XOR),// ->642
     220             : /*460*/               OPC_Scope, 100, /*->562*/ // 2 children in Scope
     221             : /*462*/                 OPC_MoveChild0,
     222             : /*463*/                 OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     223             : /*466*/                 OPC_RecordMemRef,
     224             : /*467*/                 OPC_RecordNode, // #1 = 'ld' chained node
     225             : /*468*/                 OPC_CheckFoldableChainNode,
     226             : /*469*/                 OPC_RecordChild1, // #2 = $src
     227             : /*470*/                 OPC_CheckPredicate, 0, // Predicate_unindexedload
     228             : /*472*/                 OPC_CheckPredicate, 1, // Predicate_load
     229             : /*474*/                 OPC_MoveParent,
     230             : /*475*/                 OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/, 
     231             : /*486*/                 OPC_MoveParent,
     232             : /*487*/                 OPC_MoveChild1,
     233             : /*488*/                 OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     234             : /*491*/                 OPC_RecordMemRef,
     235             : /*492*/                 OPC_RecordNode, // #3 = 'ld' chained node
     236             : /*493*/                 OPC_CheckFoldableChainNode,
     237             : /*494*/                 OPC_RecordChild1, // #4 = $dst
     238             : /*495*/                 OPC_CheckPredicate, 0, // Predicate_unindexedload
     239             : /*497*/                 OPC_CheckPredicate, 1, // Predicate_load
     240             : /*499*/                 OPC_MoveParent,
     241             : /*500*/                 OPC_SwitchType /*2 cases */, 28, MVT::i8,// ->531
     242             : /*503*/                   OPC_MoveParent,
     243             : /*504*/                   OPC_CheckChild2Same, 4,
     244             : /*506*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     245             : /*508*/                   OPC_CheckPredicate, 3, // Predicate_store
     246             : /*510*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     247             : /*513*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     248             : /*516*/                   OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     249             : /*521*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIC8mm), 0|OPFL_Chain|OPFL_MemRefs,
     250             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     251             :                           // Src: (st (and:i8 (xor:i8 (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, -1:i8), (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 50
     252             :                           // Dst: (BIC8mm:i16 addr:i16:$dst, addr:i16:$src)
     253             : /*531*/                 /*SwitchType*/ 28, MVT::i16,// ->561
     254             : /*533*/                   OPC_MoveParent,
     255             : /*534*/                   OPC_CheckChild2Same, 4,
     256             : /*536*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     257             : /*538*/                   OPC_CheckPredicate, 3, // Predicate_store
     258             : /*540*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     259             : /*543*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     260             : /*546*/                   OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     261             : /*551*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIC16mm), 0|OPFL_Chain|OPFL_MemRefs,
     262             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     263             :                           // Src: (st (and:i16 (xor:i16 (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, -1:i16), (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 50
     264             :                           // Dst: (BIC16mm:i16 addr:i16:$dst, addr:i16:$src)
     265             : /*561*/                 0, // EndSwitchType
     266             : /*562*/               /*Scope*/ 78, /*->641*/
     267             : /*563*/                 OPC_RecordChild0, // #1 = $src
     268             : /*564*/                 OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/, 
     269             : /*575*/                 OPC_MoveParent,
     270             : /*576*/                 OPC_MoveChild1,
     271             : /*577*/                 OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     272             : /*580*/                 OPC_RecordMemRef,
     273             : /*581*/                 OPC_RecordNode, // #2 = 'ld' chained node
     274             : /*582*/                 OPC_CheckFoldableChainNode,
     275             : /*583*/                 OPC_RecordChild1, // #3 = $dst
     276             : /*584*/                 OPC_CheckPredicate, 0, // Predicate_unindexedload
     277             : /*586*/                 OPC_CheckPredicate, 1, // Predicate_load
     278             : /*588*/                 OPC_MoveParent,
     279             : /*589*/                 OPC_SwitchType /*2 cases */, 23, MVT::i8,// ->615
     280             : /*592*/                   OPC_MoveParent,
     281             : /*593*/                   OPC_CheckChild2Same, 3,
     282             : /*595*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     283             : /*597*/                   OPC_CheckPredicate, 3, // Predicate_store
     284             : /*599*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     285             : /*602*/                   OPC_EmitMergeInputChains, 2, 0, 2, 
     286             : /*606*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIC8mr), 0|OPFL_Chain|OPFL_MemRefs,
     287             :                               MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     288             :                           // Src: (st (and:i8 (xor:i8 GR8:i8:$src, -1:i8), (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 37
     289             :                           // Dst: (BIC8mr:i16 addr:i16:$dst, GR8:i8:$src)
     290             : /*615*/                 /*SwitchType*/ 23, MVT::i16,// ->640
     291             : /*617*/                   OPC_MoveParent,
     292             : /*618*/                   OPC_CheckChild2Same, 3,
     293             : /*620*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     294             : /*622*/                   OPC_CheckPredicate, 3, // Predicate_store
     295             : /*624*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     296             : /*627*/                   OPC_EmitMergeInputChains, 2, 0, 2, 
     297             : /*631*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIC16mr), 0|OPFL_Chain|OPFL_MemRefs,
     298             :                               MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     299             :                           // Src: (st (and:i16 (xor:i16 GR16:i16:$src, -1:i16), (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 37
     300             :                           // Dst: (BIC16mr:i16 addr:i16:$dst, GR16:i16:$src)
     301             : /*640*/                 0, // EndSwitchType
     302             : /*641*/               0, /*End of Scope*/
     303             : /*642*/             0, // EndSwitchOpcode
     304             : /*643*/           /*Scope*/ 66, /*->710*/
     305             : /*644*/             OPC_RecordChild0, // #1 = $src
     306             : /*645*/             OPC_MoveChild1,
     307             : /*646*/             OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     308             : /*649*/             OPC_RecordMemRef,
     309             : /*650*/             OPC_RecordNode, // #2 = 'ld' chained node
     310             : /*651*/             OPC_CheckFoldableChainNode,
     311             : /*652*/             OPC_RecordChild1, // #3 = $dst
     312             : /*653*/             OPC_CheckPredicate, 0, // Predicate_unindexedload
     313             : /*655*/             OPC_CheckPredicate, 1, // Predicate_load
     314             : /*657*/             OPC_MoveParent,
     315             : /*658*/             OPC_SwitchType /*2 cases */, 23, MVT::i8,// ->684
     316             : /*661*/               OPC_MoveParent,
     317             : /*662*/               OPC_CheckChild2Same, 3,
     318             : /*664*/               OPC_CheckPredicate, 2, // Predicate_unindexedstore
     319             : /*666*/               OPC_CheckPredicate, 3, // Predicate_store
     320             : /*668*/               OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     321             : /*671*/               OPC_EmitMergeInputChains, 2, 0, 2, 
     322             : /*675*/               OPC_MorphNodeTo1, TARGET_VAL(MSP430::AND8mr), 0|OPFL_Chain|OPFL_MemRefs,
     323             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     324             :                       // Src: (st (and:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     325             :                       // Dst: (AND8mr:i16 addr:i16:$dst, GR8:i8:$src)
     326             : /*684*/             /*SwitchType*/ 23, MVT::i16,// ->709
     327             : /*686*/               OPC_MoveParent,
     328             : /*687*/               OPC_CheckChild2Same, 3,
     329             : /*689*/               OPC_CheckPredicate, 2, // Predicate_unindexedstore
     330             : /*691*/               OPC_CheckPredicate, 3, // Predicate_store
     331             : /*693*/               OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     332             : /*696*/               OPC_EmitMergeInputChains, 2, 0, 2, 
     333             : /*700*/               OPC_MorphNodeTo1, TARGET_VAL(MSP430::AND16mr), 0|OPFL_Chain|OPFL_MemRefs,
     334             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     335             :                       // Src: (st (and:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     336             :                       // Dst: (AND16mr:i16 addr:i16:$dst, GR16:i16:$src)
     337             : /*709*/             0, // EndSwitchType
     338             : /*710*/           0, /*End of Scope*/
     339             : /*711*/         /*SwitchOpcode*/ 87|128,2/*343*/, TARGET_VAL(ISD::ADD),// ->1058
     340             : /*715*/           OPC_Scope, 16|128,2/*272*/, /*->990*/ // 2 children in Scope
     341             : /*718*/             OPC_MoveChild0,
     342             : /*719*/             OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     343             : /*722*/             OPC_RecordMemRef,
     344             : /*723*/             OPC_RecordNode, // #1 = 'ld' chained node
     345             : /*724*/             OPC_CheckFoldableChainNode,
     346             : /*725*/             OPC_RecordChild1, // #2 = $dst
     347             : /*726*/             OPC_CheckPredicate, 0, // Predicate_unindexedload
     348             : /*728*/             OPC_CheckPredicate, 1, // Predicate_load
     349             : /*730*/             OPC_MoveParent,
     350             : /*731*/             OPC_Scope, 9|128,1/*137*/, /*->871*/ // 2 children in Scope
     351             : /*734*/               OPC_MoveChild1,
     352             : /*735*/               OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     353             : /*738*/               OPC_RecordMemRef,
     354             : /*739*/               OPC_RecordNode, // #3 = 'ld' chained node
     355             : /*740*/               OPC_CheckFoldableChainNode,
     356             : /*741*/               OPC_RecordChild1, // #4 = $src
     357             : /*742*/               OPC_CheckPredicate, 0, // Predicate_unindexedload
     358             : /*744*/               OPC_CheckPredicate, 1, // Predicate_load
     359             : /*746*/               OPC_MoveParent,
     360             : /*747*/               OPC_SwitchType /*2 cases */, 59, MVT::i8,// ->809
     361             : /*750*/                 OPC_MoveParent,
     362             : /*751*/                 OPC_Scope, 27, /*->780*/ // 2 children in Scope
     363             : /*753*/                   OPC_CheckChild2Same, 2,
     364             : /*755*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     365             : /*757*/                   OPC_CheckPredicate, 3, // Predicate_store
     366             : /*759*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
     367             : /*762*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
     368             : /*765*/                   OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     369             : /*770*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD8mm), 0|OPFL_Chain|OPFL_MemRefs,
     370             :                               MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
     371             :                           // Src: (st (add:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     372             :                           // Dst: (ADD8mm:i16 addr:i16:$dst, addr:i16:$src)
     373             : /*780*/                 /*Scope*/ 27, /*->808*/
     374             : /*781*/                   OPC_CheckChild2Same, 4,
     375             : /*783*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     376             : /*785*/                   OPC_CheckPredicate, 3, // Predicate_store
     377             : /*787*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     378             : /*790*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     379             : /*793*/                   OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     380             : /*798*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD8mm), 0|OPFL_Chain|OPFL_MemRefs,
     381             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     382             :                           // Src: (st (add:i8 (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     383             :                           // Dst: (ADD8mm:i16 addr:i16:$dst, addr:i16:$src)
     384             : /*808*/                 0, /*End of Scope*/
     385             : /*809*/               /*SwitchType*/ 59, MVT::i16,// ->870
     386             : /*811*/                 OPC_MoveParent,
     387             : /*812*/                 OPC_Scope, 27, /*->841*/ // 2 children in Scope
     388             : /*814*/                   OPC_CheckChild2Same, 2,
     389             : /*816*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     390             : /*818*/                   OPC_CheckPredicate, 3, // Predicate_store
     391             : /*820*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
     392             : /*823*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
     393             : /*826*/                   OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     394             : /*831*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD16mm), 0|OPFL_Chain|OPFL_MemRefs,
     395             :                               MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
     396             :                           // Src: (st (add:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     397             :                           // Dst: (ADD16mm:i16 addr:i16:$dst, addr:i16:$src)
     398             : /*841*/                 /*Scope*/ 27, /*->869*/
     399             : /*842*/                   OPC_CheckChild2Same, 4,
     400             : /*844*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     401             : /*846*/                   OPC_CheckPredicate, 3, // Predicate_store
     402             : /*848*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     403             : /*851*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     404             : /*854*/                   OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     405             : /*859*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD16mm), 0|OPFL_Chain|OPFL_MemRefs,
     406             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     407             :                           // Src: (st (add:i16 (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     408             :                           // Dst: (ADD16mm:i16 addr:i16:$dst, addr:i16:$src)
     409             : /*869*/                 0, /*End of Scope*/
     410             : /*870*/               0, // EndSwitchType
     411             : /*871*/             /*Scope*/ 117, /*->989*/
     412             : /*872*/               OPC_RecordChild1, // #3 = $src
     413             : /*873*/               OPC_Scope, 61, /*->936*/ // 3 children in Scope
     414             : /*875*/                 OPC_MoveChild1,
     415             : /*876*/                 OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
     416             : /*879*/                 OPC_MoveParent,
     417             : /*880*/                 OPC_SwitchType /*2 cases */, 25, MVT::i8,// ->908
     418             : /*883*/                   OPC_MoveParent,
     419             : /*884*/                   OPC_CheckChild2Same, 2,
     420             : /*886*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     421             : /*888*/                   OPC_CheckPredicate, 3, // Predicate_store
     422             : /*890*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     423             : /*893*/                   OPC_EmitMergeInputChains, 2, 0, 1, 
     424             : /*897*/                   OPC_EmitConvertToTarget, 3,
     425             : /*899*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD8mi), 0|OPFL_Chain|OPFL_MemRefs,
     426             :                               MVT::i16, 3/*#Ops*/, 4, 5, 6, 
     427             :                           // Src: (st (add:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i8):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
     428             :                           // Dst: (ADD8mi:i16 addr:i16:$dst, (imm:i8):$src)
     429             : /*908*/                 /*SwitchType*/ 25, MVT::i16,// ->935
     430             : /*910*/                   OPC_MoveParent,
     431             : /*911*/                   OPC_CheckChild2Same, 2,
     432             : /*913*/                   OPC_CheckPredicate, 2, // Predicate_unindexedstore
     433             : /*915*/                   OPC_CheckPredicate, 3, // Predicate_store
     434             : /*917*/                   OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     435             : /*920*/                   OPC_EmitMergeInputChains, 2, 0, 1, 
     436             : /*924*/                   OPC_EmitConvertToTarget, 3,
     437             : /*926*/                   OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD16mi), 0|OPFL_Chain|OPFL_MemRefs,
     438             :                               MVT::i16, 3/*#Ops*/, 4, 5, 6, 
     439             :                           // Src: (st (add:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i16):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
     440             :                           // Dst: (ADD16mi:i16 addr:i16:$dst, (imm:i16):$src)
     441             : /*935*/                 0, // EndSwitchType
     442             : /*936*/               /*Scope*/ 25, /*->962*/
     443             : /*937*/                 OPC_CheckType, MVT::i8,
     444             : /*939*/                 OPC_MoveParent,
     445             : /*940*/                 OPC_CheckChild2Same, 2,
     446             : /*942*/                 OPC_CheckPredicate, 2, // Predicate_unindexedstore
     447             : /*944*/                 OPC_CheckPredicate, 3, // Predicate_store
     448             : /*946*/                 OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     449             : /*949*/                 OPC_EmitMergeInputChains, 2, 0, 1, 
     450             : /*953*/                 OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD8mr), 0|OPFL_Chain|OPFL_MemRefs,
     451             :                             MVT::i16, 3/*#Ops*/, 4, 5, 3, 
     452             :                         // Src: (st (add:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     453             :                         // Dst: (ADD8mr:i16 addr:i16:$dst, GR8:i8:$src)
     454             : /*962*/               /*Scope*/ 25, /*->988*/
     455             : /*963*/                 OPC_CheckType, MVT::i16,
     456             : /*965*/                 OPC_MoveParent,
     457             : /*966*/                 OPC_CheckChild2Same, 2,
     458             : /*968*/                 OPC_CheckPredicate, 2, // Predicate_unindexedstore
     459             : /*970*/                 OPC_CheckPredicate, 3, // Predicate_store
     460             : /*972*/                 OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     461             : /*975*/                 OPC_EmitMergeInputChains, 2, 0, 1, 
     462             : /*979*/                 OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD16mr), 0|OPFL_Chain|OPFL_MemRefs,
     463             :                             MVT::i16, 3/*#Ops*/, 4, 5, 3, 
     464             :                         // Src: (st (add:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     465             :                         // Dst: (ADD16mr:i16 addr:i16:$dst, GR16:i16:$src)
     466             : /*988*/               0, /*End of Scope*/
     467             : /*989*/             0, /*End of Scope*/
     468             : /*990*/           /*Scope*/ 66, /*->1057*/
     469             : /*991*/             OPC_RecordChild0, // #1 = $src
     470             : /*992*/             OPC_MoveChild1,
     471             : /*993*/             OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     472             : /*996*/             OPC_RecordMemRef,
     473             : /*997*/             OPC_RecordNode, // #2 = 'ld' chained node
     474             : /*998*/             OPC_CheckFoldableChainNode,
     475             : /*999*/             OPC_RecordChild1, // #3 = $dst
     476             : /*1000*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
     477             : /*1002*/            OPC_CheckPredicate, 1, // Predicate_load
     478             : /*1004*/            OPC_MoveParent,
     479             : /*1005*/            OPC_SwitchType /*2 cases */, 23, MVT::i8,// ->1031
     480             : /*1008*/              OPC_MoveParent,
     481             : /*1009*/              OPC_CheckChild2Same, 3,
     482             : /*1011*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
     483             : /*1013*/              OPC_CheckPredicate, 3, // Predicate_store
     484             : /*1015*/              OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     485             : /*1018*/              OPC_EmitMergeInputChains, 2, 0, 2, 
     486             : /*1022*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD8mr), 0|OPFL_Chain|OPFL_MemRefs,
     487             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     488             :                       // Src: (st (add:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     489             :                       // Dst: (ADD8mr:i16 addr:i16:$dst, GR8:i8:$src)
     490             : /*1031*/            /*SwitchType*/ 23, MVT::i16,// ->1056
     491             : /*1033*/              OPC_MoveParent,
     492             : /*1034*/              OPC_CheckChild2Same, 3,
     493             : /*1036*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
     494             : /*1038*/              OPC_CheckPredicate, 3, // Predicate_store
     495             : /*1040*/              OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     496             : /*1043*/              OPC_EmitMergeInputChains, 2, 0, 2, 
     497             : /*1047*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD16mr), 0|OPFL_Chain|OPFL_MemRefs,
     498             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     499             :                       // Src: (st (add:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     500             :                       // Dst: (ADD16mr:i16 addr:i16:$dst, GR16:i16:$src)
     501             : /*1056*/            0, // EndSwitchType
     502             : /*1057*/          0, /*End of Scope*/
     503             : /*1058*/        /*SwitchOpcode*/ 89|128,2/*345*/, TARGET_VAL(ISD::ADDE),// ->1407
     504             : /*1062*/          OPC_RecordNode, // #1 = 'adde' glue output node
     505             : /*1063*/          OPC_CaptureGlueInput,
     506             : /*1064*/          OPC_Scope, 16|128,2/*272*/, /*->1339*/ // 2 children in Scope
     507             : /*1067*/            OPC_MoveChild0,
     508             : /*1068*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     509             : /*1071*/            OPC_RecordMemRef,
     510             : /*1072*/            OPC_RecordNode, // #1 = 'ld' chained node
     511             : /*1073*/            OPC_CheckFoldableChainNode,
     512             : /*1074*/            OPC_RecordChild1, // #2 = $dst
     513             : /*1075*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
     514             : /*1077*/            OPC_CheckPredicate, 1, // Predicate_load
     515             : /*1079*/            OPC_MoveParent,
     516             : /*1080*/            OPC_Scope, 9|128,1/*137*/, /*->1220*/ // 2 children in Scope
     517             : /*1083*/              OPC_MoveChild1,
     518             : /*1084*/              OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     519             : /*1087*/              OPC_RecordMemRef,
     520             : /*1088*/              OPC_RecordNode, // #3 = 'ld' chained node
     521             : /*1089*/              OPC_CheckFoldableChainNode,
     522             : /*1090*/              OPC_RecordChild1, // #4 = $src
     523             : /*1091*/              OPC_CheckPredicate, 0, // Predicate_unindexedload
     524             : /*1093*/              OPC_CheckPredicate, 1, // Predicate_load
     525             : /*1095*/              OPC_MoveParent,
     526             : /*1096*/              OPC_SwitchType /*2 cases */, 59, MVT::i8,// ->1158
     527             : /*1099*/                OPC_MoveParent,
     528             : /*1100*/                OPC_Scope, 27, /*->1129*/ // 2 children in Scope
     529             : /*1102*/                  OPC_CheckChild2Same, 2,
     530             : /*1104*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     531             : /*1106*/                  OPC_CheckPredicate, 3, // Predicate_store
     532             : /*1108*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
     533             : /*1111*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
     534             : /*1114*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     535             : /*1119*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADC8mm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
     536             :                               MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
     537             :                           // Src: (st (adde:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     538             :                           // Dst: (ADC8mm:i16 addr:i16:$dst, addr:i16:$src)
     539             : /*1129*/                /*Scope*/ 27, /*->1157*/
     540             : /*1130*/                  OPC_CheckChild2Same, 4,
     541             : /*1132*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     542             : /*1134*/                  OPC_CheckPredicate, 3, // Predicate_store
     543             : /*1136*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     544             : /*1139*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     545             : /*1142*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     546             : /*1147*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADC8mm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
     547             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     548             :                           // Src: (st (adde:i8 (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     549             :                           // Dst: (ADC8mm:i16 addr:i16:$dst, addr:i16:$src)
     550             : /*1157*/                0, /*End of Scope*/
     551             : /*1158*/              /*SwitchType*/ 59, MVT::i16,// ->1219
     552             : /*1160*/                OPC_MoveParent,
     553             : /*1161*/                OPC_Scope, 27, /*->1190*/ // 2 children in Scope
     554             : /*1163*/                  OPC_CheckChild2Same, 2,
     555             : /*1165*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     556             : /*1167*/                  OPC_CheckPredicate, 3, // Predicate_store
     557             : /*1169*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
     558             : /*1172*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
     559             : /*1175*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     560             : /*1180*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADC16mm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
     561             :                               MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
     562             :                           // Src: (st (adde:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     563             :                           // Dst: (ADC16mm:i16 addr:i16:$dst, addr:i16:$src)
     564             : /*1190*/                /*Scope*/ 27, /*->1218*/
     565             : /*1191*/                  OPC_CheckChild2Same, 4,
     566             : /*1193*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     567             : /*1195*/                  OPC_CheckPredicate, 3, // Predicate_store
     568             : /*1197*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     569             : /*1200*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     570             : /*1203*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     571             : /*1208*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADC16mm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
     572             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     573             :                           // Src: (st (adde:i16 (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     574             :                           // Dst: (ADC16mm:i16 addr:i16:$dst, addr:i16:$src)
     575             : /*1218*/                0, /*End of Scope*/
     576             : /*1219*/              0, // EndSwitchType
     577             : /*1220*/            /*Scope*/ 117, /*->1338*/
     578             : /*1221*/              OPC_RecordChild1, // #3 = $src
     579             : /*1222*/              OPC_Scope, 61, /*->1285*/ // 3 children in Scope
     580             : /*1224*/                OPC_MoveChild1,
     581             : /*1225*/                OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
     582             : /*1228*/                OPC_MoveParent,
     583             : /*1229*/                OPC_SwitchType /*2 cases */, 25, MVT::i8,// ->1257
     584             : /*1232*/                  OPC_MoveParent,
     585             : /*1233*/                  OPC_CheckChild2Same, 2,
     586             : /*1235*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     587             : /*1237*/                  OPC_CheckPredicate, 3, // Predicate_store
     588             : /*1239*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     589             : /*1242*/                  OPC_EmitMergeInputChains, 2, 0, 1, 
     590             : /*1246*/                  OPC_EmitConvertToTarget, 3,
     591             : /*1248*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADC8mi), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
     592             :                               MVT::i16, 3/*#Ops*/, 4, 5, 6, 
     593             :                           // Src: (st (adde:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i8):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
     594             :                           // Dst: (ADC8mi:i16 addr:i16:$dst, (imm:i8):$src)
     595             : /*1257*/                /*SwitchType*/ 25, MVT::i16,// ->1284
     596             : /*1259*/                  OPC_MoveParent,
     597             : /*1260*/                  OPC_CheckChild2Same, 2,
     598             : /*1262*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     599             : /*1264*/                  OPC_CheckPredicate, 3, // Predicate_store
     600             : /*1266*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     601             : /*1269*/                  OPC_EmitMergeInputChains, 2, 0, 1, 
     602             : /*1273*/                  OPC_EmitConvertToTarget, 3,
     603             : /*1275*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADC16mi), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
     604             :                               MVT::i16, 3/*#Ops*/, 4, 5, 6, 
     605             :                           // Src: (st (adde:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i16):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
     606             :                           // Dst: (ADC16mi:i16 addr:i16:$dst, (imm:i16):$src)
     607             : /*1284*/                0, // EndSwitchType
     608             : /*1285*/              /*Scope*/ 25, /*->1311*/
     609             : /*1286*/                OPC_CheckType, MVT::i8,
     610             : /*1288*/                OPC_MoveParent,
     611             : /*1289*/                OPC_CheckChild2Same, 2,
     612             : /*1291*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
     613             : /*1293*/                OPC_CheckPredicate, 3, // Predicate_store
     614             : /*1295*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     615             : /*1298*/                OPC_EmitMergeInputChains, 2, 0, 1, 
     616             : /*1302*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADC8mr), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
     617             :                             MVT::i16, 3/*#Ops*/, 4, 5, 3, 
     618             :                         // Src: (st (adde:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     619             :                         // Dst: (ADC8mr:i16 addr:i16:$dst, GR8:i8:$src)
     620             : /*1311*/              /*Scope*/ 25, /*->1337*/
     621             : /*1312*/                OPC_CheckType, MVT::i16,
     622             : /*1314*/                OPC_MoveParent,
     623             : /*1315*/                OPC_CheckChild2Same, 2,
     624             : /*1317*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
     625             : /*1319*/                OPC_CheckPredicate, 3, // Predicate_store
     626             : /*1321*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     627             : /*1324*/                OPC_EmitMergeInputChains, 2, 0, 1, 
     628             : /*1328*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADC16mr), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
     629             :                             MVT::i16, 3/*#Ops*/, 4, 5, 3, 
     630             :                         // Src: (st (adde:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     631             :                         // Dst: (ADC16mr:i16 addr:i16:$dst, GR16:i16:$src)
     632             : /*1337*/              0, /*End of Scope*/
     633             : /*1338*/            0, /*End of Scope*/
     634             : /*1339*/          /*Scope*/ 66, /*->1406*/
     635             : /*1340*/            OPC_RecordChild0, // #1 = $src
     636             : /*1341*/            OPC_MoveChild1,
     637             : /*1342*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     638             : /*1345*/            OPC_RecordMemRef,
     639             : /*1346*/            OPC_RecordNode, // #2 = 'ld' chained node
     640             : /*1347*/            OPC_CheckFoldableChainNode,
     641             : /*1348*/            OPC_RecordChild1, // #3 = $dst
     642             : /*1349*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
     643             : /*1351*/            OPC_CheckPredicate, 1, // Predicate_load
     644             : /*1353*/            OPC_MoveParent,
     645             : /*1354*/            OPC_SwitchType /*2 cases */, 23, MVT::i8,// ->1380
     646             : /*1357*/              OPC_MoveParent,
     647             : /*1358*/              OPC_CheckChild2Same, 3,
     648             : /*1360*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
     649             : /*1362*/              OPC_CheckPredicate, 3, // Predicate_store
     650             : /*1364*/              OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     651             : /*1367*/              OPC_EmitMergeInputChains, 2, 0, 2, 
     652             : /*1371*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADC8mr), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
     653             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     654             :                       // Src: (st (adde:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     655             :                       // Dst: (ADC8mr:i16 addr:i16:$dst, GR8:i8:$src)
     656             : /*1380*/            /*SwitchType*/ 23, MVT::i16,// ->1405
     657             : /*1382*/              OPC_MoveParent,
     658             : /*1383*/              OPC_CheckChild2Same, 3,
     659             : /*1385*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
     660             : /*1387*/              OPC_CheckPredicate, 3, // Predicate_store
     661             : /*1389*/              OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     662             : /*1392*/              OPC_EmitMergeInputChains, 2, 0, 2, 
     663             : /*1396*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADC16mr), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
     664             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     665             :                       // Src: (st (adde:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     666             :                       // Dst: (ADC16mr:i16 addr:i16:$dst, GR16:i16:$src)
     667             : /*1405*/            0, // EndSwitchType
     668             : /*1406*/          0, /*End of Scope*/
     669             : /*1407*/        /*SwitchOpcode*/ 87|128,2/*343*/, TARGET_VAL(ISD::OR),// ->1754
     670             : /*1411*/          OPC_Scope, 16|128,2/*272*/, /*->1686*/ // 2 children in Scope
     671             : /*1414*/            OPC_MoveChild0,
     672             : /*1415*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     673             : /*1418*/            OPC_RecordMemRef,
     674             : /*1419*/            OPC_RecordNode, // #1 = 'ld' chained node
     675             : /*1420*/            OPC_CheckFoldableChainNode,
     676             : /*1421*/            OPC_RecordChild1, // #2 = $dst
     677             : /*1422*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
     678             : /*1424*/            OPC_CheckPredicate, 1, // Predicate_load
     679             : /*1426*/            OPC_MoveParent,
     680             : /*1427*/            OPC_Scope, 9|128,1/*137*/, /*->1567*/ // 2 children in Scope
     681             : /*1430*/              OPC_MoveChild1,
     682             : /*1431*/              OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     683             : /*1434*/              OPC_RecordMemRef,
     684             : /*1435*/              OPC_RecordNode, // #3 = 'ld' chained node
     685             : /*1436*/              OPC_CheckFoldableChainNode,
     686             : /*1437*/              OPC_RecordChild1, // #4 = $src
     687             : /*1438*/              OPC_CheckPredicate, 0, // Predicate_unindexedload
     688             : /*1440*/              OPC_CheckPredicate, 1, // Predicate_load
     689             : /*1442*/              OPC_MoveParent,
     690             : /*1443*/              OPC_SwitchType /*2 cases */, 59, MVT::i8,// ->1505
     691             : /*1446*/                OPC_MoveParent,
     692             : /*1447*/                OPC_Scope, 27, /*->1476*/ // 2 children in Scope
     693             : /*1449*/                  OPC_CheckChild2Same, 2,
     694             : /*1451*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     695             : /*1453*/                  OPC_CheckPredicate, 3, // Predicate_store
     696             : /*1455*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
     697             : /*1458*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
     698             : /*1461*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     699             : /*1466*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::OR8mm), 0|OPFL_Chain|OPFL_MemRefs,
     700             :                               MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
     701             :                           // Src: (st (or:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     702             :                           // Dst: (OR8mm:i16 addr:i16:$dst, addr:i16:$src)
     703             : /*1476*/                /*Scope*/ 27, /*->1504*/
     704             : /*1477*/                  OPC_CheckChild2Same, 4,
     705             : /*1479*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     706             : /*1481*/                  OPC_CheckPredicate, 3, // Predicate_store
     707             : /*1483*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     708             : /*1486*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     709             : /*1489*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     710             : /*1494*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::OR8mm), 0|OPFL_Chain|OPFL_MemRefs,
     711             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     712             :                           // Src: (st (or:i8 (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     713             :                           // Dst: (OR8mm:i16 addr:i16:$dst, addr:i16:$src)
     714             : /*1504*/                0, /*End of Scope*/
     715             : /*1505*/              /*SwitchType*/ 59, MVT::i16,// ->1566
     716             : /*1507*/                OPC_MoveParent,
     717             : /*1508*/                OPC_Scope, 27, /*->1537*/ // 2 children in Scope
     718             : /*1510*/                  OPC_CheckChild2Same, 2,
     719             : /*1512*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     720             : /*1514*/                  OPC_CheckPredicate, 3, // Predicate_store
     721             : /*1516*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
     722             : /*1519*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
     723             : /*1522*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     724             : /*1527*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::OR16mm), 0|OPFL_Chain|OPFL_MemRefs,
     725             :                               MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
     726             :                           // Src: (st (or:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     727             :                           // Dst: (OR16mm:i16 addr:i16:$dst, addr:i16:$src)
     728             : /*1537*/                /*Scope*/ 27, /*->1565*/
     729             : /*1538*/                  OPC_CheckChild2Same, 4,
     730             : /*1540*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     731             : /*1542*/                  OPC_CheckPredicate, 3, // Predicate_store
     732             : /*1544*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     733             : /*1547*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     734             : /*1550*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     735             : /*1555*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::OR16mm), 0|OPFL_Chain|OPFL_MemRefs,
     736             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     737             :                           // Src: (st (or:i16 (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     738             :                           // Dst: (OR16mm:i16 addr:i16:$dst, addr:i16:$src)
     739             : /*1565*/                0, /*End of Scope*/
     740             : /*1566*/              0, // EndSwitchType
     741             : /*1567*/            /*Scope*/ 117, /*->1685*/
     742             : /*1568*/              OPC_RecordChild1, // #3 = $src
     743             : /*1569*/              OPC_Scope, 61, /*->1632*/ // 3 children in Scope
     744             : /*1571*/                OPC_MoveChild1,
     745             : /*1572*/                OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
     746             : /*1575*/                OPC_MoveParent,
     747             : /*1576*/                OPC_SwitchType /*2 cases */, 25, MVT::i8,// ->1604
     748             : /*1579*/                  OPC_MoveParent,
     749             : /*1580*/                  OPC_CheckChild2Same, 2,
     750             : /*1582*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     751             : /*1584*/                  OPC_CheckPredicate, 3, // Predicate_store
     752             : /*1586*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     753             : /*1589*/                  OPC_EmitMergeInputChains, 2, 0, 1, 
     754             : /*1593*/                  OPC_EmitConvertToTarget, 3,
     755             : /*1595*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::OR8mi), 0|OPFL_Chain|OPFL_MemRefs,
     756             :                               MVT::i16, 3/*#Ops*/, 4, 5, 6, 
     757             :                           // Src: (st (or:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i8):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
     758             :                           // Dst: (OR8mi:i16 addr:i16:$dst, (imm:i8):$src)
     759             : /*1604*/                /*SwitchType*/ 25, MVT::i16,// ->1631
     760             : /*1606*/                  OPC_MoveParent,
     761             : /*1607*/                  OPC_CheckChild2Same, 2,
     762             : /*1609*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     763             : /*1611*/                  OPC_CheckPredicate, 3, // Predicate_store
     764             : /*1613*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     765             : /*1616*/                  OPC_EmitMergeInputChains, 2, 0, 1, 
     766             : /*1620*/                  OPC_EmitConvertToTarget, 3,
     767             : /*1622*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::OR16mi), 0|OPFL_Chain|OPFL_MemRefs,
     768             :                               MVT::i16, 3/*#Ops*/, 4, 5, 6, 
     769             :                           // Src: (st (or:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i16):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
     770             :                           // Dst: (OR16mi:i16 addr:i16:$dst, (imm:i16):$src)
     771             : /*1631*/                0, // EndSwitchType
     772             : /*1632*/              /*Scope*/ 25, /*->1658*/
     773             : /*1633*/                OPC_CheckType, MVT::i8,
     774             : /*1635*/                OPC_MoveParent,
     775             : /*1636*/                OPC_CheckChild2Same, 2,
     776             : /*1638*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
     777             : /*1640*/                OPC_CheckPredicate, 3, // Predicate_store
     778             : /*1642*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     779             : /*1645*/                OPC_EmitMergeInputChains, 2, 0, 1, 
     780             : /*1649*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::OR8mr), 0|OPFL_Chain|OPFL_MemRefs,
     781             :                             MVT::i16, 3/*#Ops*/, 4, 5, 3, 
     782             :                         // Src: (st (or:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     783             :                         // Dst: (OR8mr:i16 addr:i16:$dst, GR8:i8:$src)
     784             : /*1658*/              /*Scope*/ 25, /*->1684*/
     785             : /*1659*/                OPC_CheckType, MVT::i16,
     786             : /*1661*/                OPC_MoveParent,
     787             : /*1662*/                OPC_CheckChild2Same, 2,
     788             : /*1664*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
     789             : /*1666*/                OPC_CheckPredicate, 3, // Predicate_store
     790             : /*1668*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     791             : /*1671*/                OPC_EmitMergeInputChains, 2, 0, 1, 
     792             : /*1675*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::OR16mr), 0|OPFL_Chain|OPFL_MemRefs,
     793             :                             MVT::i16, 3/*#Ops*/, 4, 5, 3, 
     794             :                         // Src: (st (or:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     795             :                         // Dst: (OR16mr:i16 addr:i16:$dst, GR16:i16:$src)
     796             : /*1684*/              0, /*End of Scope*/
     797             : /*1685*/            0, /*End of Scope*/
     798             : /*1686*/          /*Scope*/ 66, /*->1753*/
     799             : /*1687*/            OPC_RecordChild0, // #1 = $src
     800             : /*1688*/            OPC_MoveChild1,
     801             : /*1689*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     802             : /*1692*/            OPC_RecordMemRef,
     803             : /*1693*/            OPC_RecordNode, // #2 = 'ld' chained node
     804             : /*1694*/            OPC_CheckFoldableChainNode,
     805             : /*1695*/            OPC_RecordChild1, // #3 = $dst
     806             : /*1696*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
     807             : /*1698*/            OPC_CheckPredicate, 1, // Predicate_load
     808             : /*1700*/            OPC_MoveParent,
     809             : /*1701*/            OPC_SwitchType /*2 cases */, 23, MVT::i8,// ->1727
     810             : /*1704*/              OPC_MoveParent,
     811             : /*1705*/              OPC_CheckChild2Same, 3,
     812             : /*1707*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
     813             : /*1709*/              OPC_CheckPredicate, 3, // Predicate_store
     814             : /*1711*/              OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     815             : /*1714*/              OPC_EmitMergeInputChains, 2, 0, 2, 
     816             : /*1718*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::OR8mr), 0|OPFL_Chain|OPFL_MemRefs,
     817             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     818             :                       // Src: (st (or:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     819             :                       // Dst: (OR8mr:i16 addr:i16:$dst, GR8:i8:$src)
     820             : /*1727*/            /*SwitchType*/ 23, MVT::i16,// ->1752
     821             : /*1729*/              OPC_MoveParent,
     822             : /*1730*/              OPC_CheckChild2Same, 3,
     823             : /*1732*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
     824             : /*1734*/              OPC_CheckPredicate, 3, // Predicate_store
     825             : /*1736*/              OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     826             : /*1739*/              OPC_EmitMergeInputChains, 2, 0, 2, 
     827             : /*1743*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::OR16mr), 0|OPFL_Chain|OPFL_MemRefs,
     828             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     829             :                       // Src: (st (or:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     830             :                       // Dst: (OR16mr:i16 addr:i16:$dst, GR16:i16:$src)
     831             : /*1752*/            0, // EndSwitchType
     832             : /*1753*/          0, /*End of Scope*/
     833             : /*1754*/        /*SwitchOpcode*/ 87|128,2/*343*/, TARGET_VAL(ISD::XOR),// ->2101
     834             : /*1758*/          OPC_Scope, 16|128,2/*272*/, /*->2033*/ // 2 children in Scope
     835             : /*1761*/            OPC_MoveChild0,
     836             : /*1762*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     837             : /*1765*/            OPC_RecordMemRef,
     838             : /*1766*/            OPC_RecordNode, // #1 = 'ld' chained node
     839             : /*1767*/            OPC_CheckFoldableChainNode,
     840             : /*1768*/            OPC_RecordChild1, // #2 = $dst
     841             : /*1769*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
     842             : /*1771*/            OPC_CheckPredicate, 1, // Predicate_load
     843             : /*1773*/            OPC_MoveParent,
     844             : /*1774*/            OPC_Scope, 9|128,1/*137*/, /*->1914*/ // 2 children in Scope
     845             : /*1777*/              OPC_MoveChild1,
     846             : /*1778*/              OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     847             : /*1781*/              OPC_RecordMemRef,
     848             : /*1782*/              OPC_RecordNode, // #3 = 'ld' chained node
     849             : /*1783*/              OPC_CheckFoldableChainNode,
     850             : /*1784*/              OPC_RecordChild1, // #4 = $src
     851             : /*1785*/              OPC_CheckPredicate, 0, // Predicate_unindexedload
     852             : /*1787*/              OPC_CheckPredicate, 1, // Predicate_load
     853             : /*1789*/              OPC_MoveParent,
     854             : /*1790*/              OPC_SwitchType /*2 cases */, 59, MVT::i8,// ->1852
     855             : /*1793*/                OPC_MoveParent,
     856             : /*1794*/                OPC_Scope, 27, /*->1823*/ // 2 children in Scope
     857             : /*1796*/                  OPC_CheckChild2Same, 2,
     858             : /*1798*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     859             : /*1800*/                  OPC_CheckPredicate, 3, // Predicate_store
     860             : /*1802*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
     861             : /*1805*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
     862             : /*1808*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     863             : /*1813*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::XOR8mm), 0|OPFL_Chain|OPFL_MemRefs,
     864             :                               MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
     865             :                           // Src: (st (xor:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     866             :                           // Dst: (XOR8mm:i16 addr:i16:$dst, addr:i16:$src)
     867             : /*1823*/                /*Scope*/ 27, /*->1851*/
     868             : /*1824*/                  OPC_CheckChild2Same, 4,
     869             : /*1826*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     870             : /*1828*/                  OPC_CheckPredicate, 3, // Predicate_store
     871             : /*1830*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     872             : /*1833*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     873             : /*1836*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     874             : /*1841*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::XOR8mm), 0|OPFL_Chain|OPFL_MemRefs,
     875             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     876             :                           // Src: (st (xor:i8 (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     877             :                           // Dst: (XOR8mm:i16 addr:i16:$dst, addr:i16:$src)
     878             : /*1851*/                0, /*End of Scope*/
     879             : /*1852*/              /*SwitchType*/ 59, MVT::i16,// ->1913
     880             : /*1854*/                OPC_MoveParent,
     881             : /*1855*/                OPC_Scope, 27, /*->1884*/ // 2 children in Scope
     882             : /*1857*/                  OPC_CheckChild2Same, 2,
     883             : /*1859*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     884             : /*1861*/                  OPC_CheckPredicate, 3, // Predicate_store
     885             : /*1863*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
     886             : /*1866*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
     887             : /*1869*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     888             : /*1874*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::XOR16mm), 0|OPFL_Chain|OPFL_MemRefs,
     889             :                               MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
     890             :                           // Src: (st (xor:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     891             :                           // Dst: (XOR16mm:i16 addr:i16:$dst, addr:i16:$src)
     892             : /*1884*/                /*Scope*/ 27, /*->1912*/
     893             : /*1885*/                  OPC_CheckChild2Same, 4,
     894             : /*1887*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     895             : /*1889*/                  OPC_CheckPredicate, 3, // Predicate_store
     896             : /*1891*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
     897             : /*1894*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
     898             : /*1897*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
     899             : /*1902*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::XOR16mm), 0|OPFL_Chain|OPFL_MemRefs,
     900             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
     901             :                           // Src: (st (xor:i16 (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
     902             :                           // Dst: (XOR16mm:i16 addr:i16:$dst, addr:i16:$src)
     903             : /*1912*/                0, /*End of Scope*/
     904             : /*1913*/              0, // EndSwitchType
     905             : /*1914*/            /*Scope*/ 117, /*->2032*/
     906             : /*1915*/              OPC_RecordChild1, // #3 = $src
     907             : /*1916*/              OPC_Scope, 61, /*->1979*/ // 3 children in Scope
     908             : /*1918*/                OPC_MoveChild1,
     909             : /*1919*/                OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
     910             : /*1922*/                OPC_MoveParent,
     911             : /*1923*/                OPC_SwitchType /*2 cases */, 25, MVT::i8,// ->1951
     912             : /*1926*/                  OPC_MoveParent,
     913             : /*1927*/                  OPC_CheckChild2Same, 2,
     914             : /*1929*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     915             : /*1931*/                  OPC_CheckPredicate, 3, // Predicate_store
     916             : /*1933*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     917             : /*1936*/                  OPC_EmitMergeInputChains, 2, 0, 1, 
     918             : /*1940*/                  OPC_EmitConvertToTarget, 3,
     919             : /*1942*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::XOR8mi), 0|OPFL_Chain|OPFL_MemRefs,
     920             :                               MVT::i16, 3/*#Ops*/, 4, 5, 6, 
     921             :                           // Src: (st (xor:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i8):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
     922             :                           // Dst: (XOR8mi:i16 addr:i16:$dst, (imm:i8):$src)
     923             : /*1951*/                /*SwitchType*/ 25, MVT::i16,// ->1978
     924             : /*1953*/                  OPC_MoveParent,
     925             : /*1954*/                  OPC_CheckChild2Same, 2,
     926             : /*1956*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
     927             : /*1958*/                  OPC_CheckPredicate, 3, // Predicate_store
     928             : /*1960*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     929             : /*1963*/                  OPC_EmitMergeInputChains, 2, 0, 1, 
     930             : /*1967*/                  OPC_EmitConvertToTarget, 3,
     931             : /*1969*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::XOR16mi), 0|OPFL_Chain|OPFL_MemRefs,
     932             :                               MVT::i16, 3/*#Ops*/, 4, 5, 6, 
     933             :                           // Src: (st (xor:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i16):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
     934             :                           // Dst: (XOR16mi:i16 addr:i16:$dst, (imm:i16):$src)
     935             : /*1978*/                0, // EndSwitchType
     936             : /*1979*/              /*Scope*/ 25, /*->2005*/
     937             : /*1980*/                OPC_CheckType, MVT::i8,
     938             : /*1982*/                OPC_MoveParent,
     939             : /*1983*/                OPC_CheckChild2Same, 2,
     940             : /*1985*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
     941             : /*1987*/                OPC_CheckPredicate, 3, // Predicate_store
     942             : /*1989*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     943             : /*1992*/                OPC_EmitMergeInputChains, 2, 0, 1, 
     944             : /*1996*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::XOR8mr), 0|OPFL_Chain|OPFL_MemRefs,
     945             :                             MVT::i16, 3/*#Ops*/, 4, 5, 3, 
     946             :                         // Src: (st (xor:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     947             :                         // Dst: (XOR8mr:i16 addr:i16:$dst, GR8:i8:$src)
     948             : /*2005*/              /*Scope*/ 25, /*->2031*/
     949             : /*2006*/                OPC_CheckType, MVT::i16,
     950             : /*2008*/                OPC_MoveParent,
     951             : /*2009*/                OPC_CheckChild2Same, 2,
     952             : /*2011*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
     953             : /*2013*/                OPC_CheckPredicate, 3, // Predicate_store
     954             : /*2015*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
     955             : /*2018*/                OPC_EmitMergeInputChains, 2, 0, 1, 
     956             : /*2022*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::XOR16mr), 0|OPFL_Chain|OPFL_MemRefs,
     957             :                             MVT::i16, 3/*#Ops*/, 4, 5, 3, 
     958             :                         // Src: (st (xor:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     959             :                         // Dst: (XOR16mr:i16 addr:i16:$dst, GR16:i16:$src)
     960             : /*2031*/              0, /*End of Scope*/
     961             : /*2032*/            0, /*End of Scope*/
     962             : /*2033*/          /*Scope*/ 66, /*->2100*/
     963             : /*2034*/            OPC_RecordChild0, // #1 = $src
     964             : /*2035*/            OPC_MoveChild1,
     965             : /*2036*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
     966             : /*2039*/            OPC_RecordMemRef,
     967             : /*2040*/            OPC_RecordNode, // #2 = 'ld' chained node
     968             : /*2041*/            OPC_CheckFoldableChainNode,
     969             : /*2042*/            OPC_RecordChild1, // #3 = $dst
     970             : /*2043*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
     971             : /*2045*/            OPC_CheckPredicate, 1, // Predicate_load
     972             : /*2047*/            OPC_MoveParent,
     973             : /*2048*/            OPC_SwitchType /*2 cases */, 23, MVT::i8,// ->2074
     974             : /*2051*/              OPC_MoveParent,
     975             : /*2052*/              OPC_CheckChild2Same, 3,
     976             : /*2054*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
     977             : /*2056*/              OPC_CheckPredicate, 3, // Predicate_store
     978             : /*2058*/              OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     979             : /*2061*/              OPC_EmitMergeInputChains, 2, 0, 2, 
     980             : /*2065*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::XOR8mr), 0|OPFL_Chain|OPFL_MemRefs,
     981             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     982             :                       // Src: (st (xor:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     983             :                       // Dst: (XOR8mr:i16 addr:i16:$dst, GR8:i8:$src)
     984             : /*2074*/            /*SwitchType*/ 23, MVT::i16,// ->2099
     985             : /*2076*/              OPC_MoveParent,
     986             : /*2077*/              OPC_CheckChild2Same, 3,
     987             : /*2079*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
     988             : /*2081*/              OPC_CheckPredicate, 3, // Predicate_store
     989             : /*2083*/              OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
     990             : /*2086*/              OPC_EmitMergeInputChains, 2, 0, 2, 
     991             : /*2090*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::XOR16mr), 0|OPFL_Chain|OPFL_MemRefs,
     992             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
     993             :                       // Src: (st (xor:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
     994             :                       // Dst: (XOR16mr:i16 addr:i16:$dst, GR16:i16:$src)
     995             : /*2099*/            0, // EndSwitchType
     996             : /*2100*/          0, /*End of Scope*/
     997             : /*2101*/        /*SwitchOpcode*/ 81|128,1/*209*/, TARGET_VAL(ISD::SUB),// ->2314
     998             : /*2105*/          OPC_MoveChild0,
     999             : /*2106*/          OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1000             : /*2109*/          OPC_RecordMemRef,
    1001             : /*2110*/          OPC_RecordNode, // #1 = 'ld' chained node
    1002             : /*2111*/          OPC_CheckFoldableChainNode,
    1003             : /*2112*/          OPC_RecordChild1, // #2 = $dst
    1004             : /*2113*/          OPC_CheckPredicate, 0, // Predicate_unindexedload
    1005             : /*2115*/          OPC_CheckPredicate, 1, // Predicate_load
    1006             : /*2117*/          OPC_MoveParent,
    1007             : /*2118*/          OPC_Scope, 75, /*->2195*/ // 2 children in Scope
    1008             : /*2120*/            OPC_MoveChild1,
    1009             : /*2121*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1010             : /*2124*/            OPC_RecordMemRef,
    1011             : /*2125*/            OPC_RecordNode, // #3 = 'ld' chained node
    1012             : /*2126*/            OPC_CheckFoldableChainNode,
    1013             : /*2127*/            OPC_RecordChild1, // #4 = $src
    1014             : /*2128*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
    1015             : /*2130*/            OPC_CheckPredicate, 1, // Predicate_load
    1016             : /*2132*/            OPC_MoveParent,
    1017             : /*2133*/            OPC_SwitchType /*2 cases */, 28, MVT::i8,// ->2164
    1018             : /*2136*/              OPC_MoveParent,
    1019             : /*2137*/              OPC_CheckChild2Same, 2,
    1020             : /*2139*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1021             : /*2141*/              OPC_CheckPredicate, 3, // Predicate_store
    1022             : /*2143*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
    1023             : /*2146*/              OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
    1024             : /*2149*/              OPC_EmitMergeInputChains, 3, 0, 1, 3, 
    1025             : /*2154*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SUB8mm), 0|OPFL_Chain|OPFL_MemRefs,
    1026             :                           MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
    1027             :                       // Src: (st (sub:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
    1028             :                       // Dst: (SUB8mm:i16 addr:i16:$dst, addr:i16:$src)
    1029             : /*2164*/            /*SwitchType*/ 28, MVT::i16,// ->2194
    1030             : /*2166*/              OPC_MoveParent,
    1031             : /*2167*/              OPC_CheckChild2Same, 2,
    1032             : /*2169*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1033             : /*2171*/              OPC_CheckPredicate, 3, // Predicate_store
    1034             : /*2173*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
    1035             : /*2176*/              OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
    1036             : /*2179*/              OPC_EmitMergeInputChains, 3, 0, 1, 3, 
    1037             : /*2184*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SUB16mm), 0|OPFL_Chain|OPFL_MemRefs,
    1038             :                           MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
    1039             :                       // Src: (st (sub:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
    1040             :                       // Dst: (SUB16mm:i16 addr:i16:$dst, addr:i16:$src)
    1041             : /*2194*/            0, // EndSwitchType
    1042             : /*2195*/          /*Scope*/ 117, /*->2313*/
    1043             : /*2196*/            OPC_RecordChild1, // #3 = $src
    1044             : /*2197*/            OPC_Scope, 61, /*->2260*/ // 3 children in Scope
    1045             : /*2199*/              OPC_MoveChild1,
    1046             : /*2200*/              OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    1047             : /*2203*/              OPC_MoveParent,
    1048             : /*2204*/              OPC_SwitchType /*2 cases */, 25, MVT::i8,// ->2232
    1049             : /*2207*/                OPC_MoveParent,
    1050             : /*2208*/                OPC_CheckChild2Same, 2,
    1051             : /*2210*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1052             : /*2212*/                OPC_CheckPredicate, 3, // Predicate_store
    1053             : /*2214*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1054             : /*2217*/                OPC_EmitMergeInputChains, 2, 0, 1, 
    1055             : /*2221*/                OPC_EmitConvertToTarget, 3,
    1056             : /*2223*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::SUB8mi), 0|OPFL_Chain|OPFL_MemRefs,
    1057             :                             MVT::i16, 3/*#Ops*/, 4, 5, 6, 
    1058             :                         // Src: (st (sub:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i8):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
    1059             :                         // Dst: (SUB8mi:i16 addr:i16:$dst, (imm:i8):$src)
    1060             : /*2232*/              /*SwitchType*/ 25, MVT::i16,// ->2259
    1061             : /*2234*/                OPC_MoveParent,
    1062             : /*2235*/                OPC_CheckChild2Same, 2,
    1063             : /*2237*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1064             : /*2239*/                OPC_CheckPredicate, 3, // Predicate_store
    1065             : /*2241*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1066             : /*2244*/                OPC_EmitMergeInputChains, 2, 0, 1, 
    1067             : /*2248*/                OPC_EmitConvertToTarget, 3,
    1068             : /*2250*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::SUB16mi), 0|OPFL_Chain|OPFL_MemRefs,
    1069             :                             MVT::i16, 3/*#Ops*/, 4, 5, 6, 
    1070             :                         // Src: (st (sub:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i16):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
    1071             :                         // Dst: (SUB16mi:i16 addr:i16:$dst, (imm:i16):$src)
    1072             : /*2259*/              0, // EndSwitchType
    1073             : /*2260*/            /*Scope*/ 25, /*->2286*/
    1074             : /*2261*/              OPC_CheckType, MVT::i8,
    1075             : /*2263*/              OPC_MoveParent,
    1076             : /*2264*/              OPC_CheckChild2Same, 2,
    1077             : /*2266*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1078             : /*2268*/              OPC_CheckPredicate, 3, // Predicate_store
    1079             : /*2270*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1080             : /*2273*/              OPC_EmitMergeInputChains, 2, 0, 1, 
    1081             : /*2277*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SUB8mr), 0|OPFL_Chain|OPFL_MemRefs,
    1082             :                           MVT::i16, 3/*#Ops*/, 4, 5, 3, 
    1083             :                       // Src: (st (sub:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
    1084             :                       // Dst: (SUB8mr:i16 addr:i16:$dst, GR8:i8:$src)
    1085             : /*2286*/            /*Scope*/ 25, /*->2312*/
    1086             : /*2287*/              OPC_CheckType, MVT::i16,
    1087             : /*2289*/              OPC_MoveParent,
    1088             : /*2290*/              OPC_CheckChild2Same, 2,
    1089             : /*2292*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1090             : /*2294*/              OPC_CheckPredicate, 3, // Predicate_store
    1091             : /*2296*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1092             : /*2299*/              OPC_EmitMergeInputChains, 2, 0, 1, 
    1093             : /*2303*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SUB16mr), 0|OPFL_Chain|OPFL_MemRefs,
    1094             :                           MVT::i16, 3/*#Ops*/, 4, 5, 3, 
    1095             :                       // Src: (st (sub:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
    1096             :                       // Dst: (SUB16mr:i16 addr:i16:$dst, GR16:i16:$src)
    1097             : /*2312*/            0, /*End of Scope*/
    1098             : /*2313*/          0, /*End of Scope*/
    1099             : /*2314*/        /*SwitchOpcode*/ 83|128,1/*211*/, TARGET_VAL(ISD::SUBE),// ->2529
    1100             : /*2318*/          OPC_RecordNode, // #1 = 'sube' glue output node
    1101             : /*2319*/          OPC_CaptureGlueInput,
    1102             : /*2320*/          OPC_MoveChild0,
    1103             : /*2321*/          OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1104             : /*2324*/          OPC_RecordMemRef,
    1105             : /*2325*/          OPC_RecordNode, // #1 = 'ld' chained node
    1106             : /*2326*/          OPC_CheckFoldableChainNode,
    1107             : /*2327*/          OPC_RecordChild1, // #2 = $dst
    1108             : /*2328*/          OPC_CheckPredicate, 0, // Predicate_unindexedload
    1109             : /*2330*/          OPC_CheckPredicate, 1, // Predicate_load
    1110             : /*2332*/          OPC_MoveParent,
    1111             : /*2333*/          OPC_Scope, 75, /*->2410*/ // 2 children in Scope
    1112             : /*2335*/            OPC_MoveChild1,
    1113             : /*2336*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1114             : /*2339*/            OPC_RecordMemRef,
    1115             : /*2340*/            OPC_RecordNode, // #3 = 'ld' chained node
    1116             : /*2341*/            OPC_CheckFoldableChainNode,
    1117             : /*2342*/            OPC_RecordChild1, // #4 = $src
    1118             : /*2343*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
    1119             : /*2345*/            OPC_CheckPredicate, 1, // Predicate_load
    1120             : /*2347*/            OPC_MoveParent,
    1121             : /*2348*/            OPC_SwitchType /*2 cases */, 28, MVT::i8,// ->2379
    1122             : /*2351*/              OPC_MoveParent,
    1123             : /*2352*/              OPC_CheckChild2Same, 2,
    1124             : /*2354*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1125             : /*2356*/              OPC_CheckPredicate, 3, // Predicate_store
    1126             : /*2358*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
    1127             : /*2361*/              OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
    1128             : /*2364*/              OPC_EmitMergeInputChains, 3, 0, 1, 3, 
    1129             : /*2369*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SBC8mm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    1130             :                           MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
    1131             :                       // Src: (st (sube:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
    1132             :                       // Dst: (SBC8mm:i16 addr:i16:$dst, addr:i16:$src)
    1133             : /*2379*/            /*SwitchType*/ 28, MVT::i16,// ->2409
    1134             : /*2381*/              OPC_MoveParent,
    1135             : /*2382*/              OPC_CheckChild2Same, 2,
    1136             : /*2384*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1137             : /*2386*/              OPC_CheckPredicate, 3, // Predicate_store
    1138             : /*2388*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
    1139             : /*2391*/              OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
    1140             : /*2394*/              OPC_EmitMergeInputChains, 3, 0, 1, 3, 
    1141             : /*2399*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SBC16mm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    1142             :                           MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
    1143             :                       // Src: (st (sube:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
    1144             :                       // Dst: (SBC16mm:i16 addr:i16:$dst, addr:i16:$src)
    1145             : /*2409*/            0, // EndSwitchType
    1146             : /*2410*/          /*Scope*/ 117, /*->2528*/
    1147             : /*2411*/            OPC_RecordChild1, // #3 = $src
    1148             : /*2412*/            OPC_Scope, 61, /*->2475*/ // 3 children in Scope
    1149             : /*2414*/              OPC_MoveChild1,
    1150             : /*2415*/              OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    1151             : /*2418*/              OPC_MoveParent,
    1152             : /*2419*/              OPC_SwitchType /*2 cases */, 25, MVT::i8,// ->2447
    1153             : /*2422*/                OPC_MoveParent,
    1154             : /*2423*/                OPC_CheckChild2Same, 2,
    1155             : /*2425*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1156             : /*2427*/                OPC_CheckPredicate, 3, // Predicate_store
    1157             : /*2429*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1158             : /*2432*/                OPC_EmitMergeInputChains, 2, 0, 1, 
    1159             : /*2436*/                OPC_EmitConvertToTarget, 3,
    1160             : /*2438*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::SBC8mi), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    1161             :                             MVT::i16, 3/*#Ops*/, 4, 5, 6, 
    1162             :                         // Src: (st (sube:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i8):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
    1163             :                         // Dst: (SBC8mi:i16 addr:i16:$dst, (imm:i8):$src)
    1164             : /*2447*/              /*SwitchType*/ 25, MVT::i16,// ->2474
    1165             : /*2449*/                OPC_MoveParent,
    1166             : /*2450*/                OPC_CheckChild2Same, 2,
    1167             : /*2452*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1168             : /*2454*/                OPC_CheckPredicate, 3, // Predicate_store
    1169             : /*2456*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1170             : /*2459*/                OPC_EmitMergeInputChains, 2, 0, 1, 
    1171             : /*2463*/                OPC_EmitConvertToTarget, 3,
    1172             : /*2465*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::SBC16mi), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    1173             :                             MVT::i16, 3/*#Ops*/, 4, 5, 6, 
    1174             :                         // Src: (st (sube:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i16):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 32
    1175             :                         // Dst: (SBC16mi:i16 addr:i16:$dst, (imm:i16):$src)
    1176             : /*2474*/              0, // EndSwitchType
    1177             : /*2475*/            /*Scope*/ 25, /*->2501*/
    1178             : /*2476*/              OPC_CheckType, MVT::i8,
    1179             : /*2478*/              OPC_MoveParent,
    1180             : /*2479*/              OPC_CheckChild2Same, 2,
    1181             : /*2481*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1182             : /*2483*/              OPC_CheckPredicate, 3, // Predicate_store
    1183             : /*2485*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1184             : /*2488*/              OPC_EmitMergeInputChains, 2, 0, 1, 
    1185             : /*2492*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SBC8mr), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    1186             :                           MVT::i16, 3/*#Ops*/, 4, 5, 3, 
    1187             :                       // Src: (st (sube:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
    1188             :                       // Dst: (SBC8mr:i16 addr:i16:$dst, GR8:i8:$src)
    1189             : /*2501*/            /*Scope*/ 25, /*->2527*/
    1190             : /*2502*/              OPC_CheckType, MVT::i16,
    1191             : /*2504*/              OPC_MoveParent,
    1192             : /*2505*/              OPC_CheckChild2Same, 2,
    1193             : /*2507*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1194             : /*2509*/              OPC_CheckPredicate, 3, // Predicate_store
    1195             : /*2511*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1196             : /*2514*/              OPC_EmitMergeInputChains, 2, 0, 1, 
    1197             : /*2518*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SBC16mr), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    1198             :                           MVT::i16, 3/*#Ops*/, 4, 5, 3, 
    1199             :                       // Src: (st (sube:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
    1200             :                       // Dst: (SBC16mr:i16 addr:i16:$dst, GR16:i16:$src)
    1201             : /*2527*/            0, /*End of Scope*/
    1202             : /*2528*/          0, /*End of Scope*/
    1203             : /*2529*/        /*SwitchOpcode*/ 24|128,2/*280*/, TARGET_VAL(ISD::ADDC),// ->2813
    1204             : /*2533*/          OPC_RecordNode, // #1 = 'addc' glue output node
    1205             : /*2534*/          OPC_Scope, 80|128,1/*208*/, /*->2745*/ // 2 children in Scope
    1206             : /*2537*/            OPC_MoveChild0,
    1207             : /*2538*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1208             : /*2541*/            OPC_RecordMemRef,
    1209             : /*2542*/            OPC_RecordNode, // #1 = 'ld' chained node
    1210             : /*2543*/            OPC_CheckFoldableChainNode,
    1211             : /*2544*/            OPC_RecordChild1, // #2 = $dst
    1212             : /*2545*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
    1213             : /*2547*/            OPC_CheckPredicate, 1, // Predicate_load
    1214             : /*2549*/            OPC_MoveParent,
    1215             : /*2550*/            OPC_Scope, 9|128,1/*137*/, /*->2690*/ // 2 children in Scope
    1216             : /*2553*/              OPC_MoveChild1,
    1217             : /*2554*/              OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1218             : /*2557*/              OPC_RecordMemRef,
    1219             : /*2558*/              OPC_RecordNode, // #3 = 'ld' chained node
    1220             : /*2559*/              OPC_CheckFoldableChainNode,
    1221             : /*2560*/              OPC_RecordChild1, // #4 = $src
    1222             : /*2561*/              OPC_CheckPredicate, 0, // Predicate_unindexedload
    1223             : /*2563*/              OPC_CheckPredicate, 1, // Predicate_load
    1224             : /*2565*/              OPC_MoveParent,
    1225             : /*2566*/              OPC_SwitchType /*2 cases */, 59, MVT::i16,// ->2628
    1226             : /*2569*/                OPC_MoveParent,
    1227             : /*2570*/                OPC_Scope, 27, /*->2599*/ // 2 children in Scope
    1228             : /*2572*/                  OPC_CheckChild2Same, 2,
    1229             : /*2574*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1230             : /*2576*/                  OPC_CheckPredicate, 3, // Predicate_store
    1231             : /*2578*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
    1232             : /*2581*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
    1233             : /*2584*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
    1234             : /*2589*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD16mm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1235             :                               MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
    1236             :                           // Src: (st (addc:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
    1237             :                           // Dst: (ADD16mm:i16 addr:i16:$dst, addr:i16:$src)
    1238             : /*2599*/                /*Scope*/ 27, /*->2627*/
    1239             : /*2600*/                  OPC_CheckChild2Same, 4,
    1240             : /*2602*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1241             : /*2604*/                  OPC_CheckPredicate, 3, // Predicate_store
    1242             : /*2606*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
    1243             : /*2609*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
    1244             : /*2612*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
    1245             : /*2617*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD16mm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1246             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
    1247             :                           // Src: (st (addc:i16 (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
    1248             :                           // Dst: (ADD16mm:i16 addr:i16:$dst, addr:i16:$src)
    1249             : /*2627*/                0, /*End of Scope*/
    1250             : /*2628*/              /*SwitchType*/ 59, MVT::i8,// ->2689
    1251             : /*2630*/                OPC_MoveParent,
    1252             : /*2631*/                OPC_Scope, 27, /*->2660*/ // 2 children in Scope
    1253             : /*2633*/                  OPC_CheckChild2Same, 2,
    1254             : /*2635*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1255             : /*2637*/                  OPC_CheckPredicate, 3, // Predicate_store
    1256             : /*2639*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
    1257             : /*2642*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
    1258             : /*2645*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
    1259             : /*2650*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD8mm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1260             :                               MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
    1261             :                           // Src: (st (addc:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
    1262             :                           // Dst: (ADD8mm:i16 addr:i16:$dst, addr:i16:$src)
    1263             : /*2660*/                /*Scope*/ 27, /*->2688*/
    1264             : /*2661*/                  OPC_CheckChild2Same, 4,
    1265             : /*2663*/                  OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1266             : /*2665*/                  OPC_CheckPredicate, 3, // Predicate_store
    1267             : /*2667*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #5 #6
    1268             : /*2670*/                  OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$dst #7 #8
    1269             : /*2673*/                  OPC_EmitMergeInputChains, 3, 0, 1, 3, 
    1270             : /*2678*/                  OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD8mm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1271             :                               MVT::i16, 4/*#Ops*/, 7, 8, 5, 6, 
    1272             :                           // Src: (st (addc:i8 (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
    1273             :                           // Dst: (ADD8mm:i16 addr:i16:$dst, addr:i16:$src)
    1274             : /*2688*/                0, /*End of Scope*/
    1275             : /*2689*/              0, // EndSwitchType
    1276             : /*2690*/            /*Scope*/ 53, /*->2744*/
    1277             : /*2691*/              OPC_RecordChild1, // #3 = $src
    1278             : /*2692*/              OPC_SwitchType /*2 cases */, 23, MVT::i16,// ->2718
    1279             : /*2695*/                OPC_MoveParent,
    1280             : /*2696*/                OPC_CheckChild2Same, 2,
    1281             : /*2698*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1282             : /*2700*/                OPC_CheckPredicate, 3, // Predicate_store
    1283             : /*2702*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1284             : /*2705*/                OPC_EmitMergeInputChains, 2, 0, 1, 
    1285             : /*2709*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD16mr), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1286             :                             MVT::i16, 3/*#Ops*/, 4, 5, 3, 
    1287             :                         // Src: (st (addc:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
    1288             :                         // Dst: (ADD16mr:i16 addr:i16:$dst, GR16:i16:$src)
    1289             : /*2718*/              /*SwitchType*/ 23, MVT::i8,// ->2743
    1290             : /*2720*/                OPC_MoveParent,
    1291             : /*2721*/                OPC_CheckChild2Same, 2,
    1292             : /*2723*/                OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1293             : /*2725*/                OPC_CheckPredicate, 3, // Predicate_store
    1294             : /*2727*/                OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1295             : /*2730*/                OPC_EmitMergeInputChains, 2, 0, 1, 
    1296             : /*2734*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD8mr), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1297             :                             MVT::i16, 3/*#Ops*/, 4, 5, 3, 
    1298             :                         // Src: (st (addc:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
    1299             :                         // Dst: (ADD8mr:i16 addr:i16:$dst, GR8:i8:$src)
    1300             : /*2743*/              0, // EndSwitchType
    1301             : /*2744*/            0, /*End of Scope*/
    1302             : /*2745*/          /*Scope*/ 66, /*->2812*/
    1303             : /*2746*/            OPC_RecordChild0, // #1 = $src
    1304             : /*2747*/            OPC_MoveChild1,
    1305             : /*2748*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1306             : /*2751*/            OPC_RecordMemRef,
    1307             : /*2752*/            OPC_RecordNode, // #2 = 'ld' chained node
    1308             : /*2753*/            OPC_CheckFoldableChainNode,
    1309             : /*2754*/            OPC_RecordChild1, // #3 = $dst
    1310             : /*2755*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
    1311             : /*2757*/            OPC_CheckPredicate, 1, // Predicate_load
    1312             : /*2759*/            OPC_MoveParent,
    1313             : /*2760*/            OPC_SwitchType /*2 cases */, 23, MVT::i16,// ->2786
    1314             : /*2763*/              OPC_MoveParent,
    1315             : /*2764*/              OPC_CheckChild2Same, 3,
    1316             : /*2766*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1317             : /*2768*/              OPC_CheckPredicate, 3, // Predicate_store
    1318             : /*2770*/              OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
    1319             : /*2773*/              OPC_EmitMergeInputChains, 2, 0, 2, 
    1320             : /*2777*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD16mr), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1321             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
    1322             :                       // Src: (st (addc:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
    1323             :                       // Dst: (ADD16mr:i16 addr:i16:$dst, GR16:i16:$src)
    1324             : /*2786*/            /*SwitchType*/ 23, MVT::i8,// ->2811
    1325             : /*2788*/              OPC_MoveParent,
    1326             : /*2789*/              OPC_CheckChild2Same, 3,
    1327             : /*2791*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1328             : /*2793*/              OPC_CheckPredicate, 3, // Predicate_store
    1329             : /*2795*/              OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #4 #5
    1330             : /*2798*/              OPC_EmitMergeInputChains, 2, 0, 2, 
    1331             : /*2802*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADD8mr), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1332             :                           MVT::i16, 3/*#Ops*/, 4, 5, 1, 
    1333             :                       // Src: (st (addc:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
    1334             :                       // Dst: (ADD8mr:i16 addr:i16:$dst, GR8:i8:$src)
    1335             : /*2811*/            0, // EndSwitchType
    1336             : /*2812*/          0, /*End of Scope*/
    1337             : /*2813*/        /*SwitchOpcode*/ 18|128,1/*146*/, TARGET_VAL(ISD::SUBC),// ->2963
    1338             : /*2817*/          OPC_RecordNode, // #1 = 'subc' glue output node
    1339             : /*2818*/          OPC_MoveChild0,
    1340             : /*2819*/          OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1341             : /*2822*/          OPC_RecordMemRef,
    1342             : /*2823*/          OPC_RecordNode, // #1 = 'ld' chained node
    1343             : /*2824*/          OPC_CheckFoldableChainNode,
    1344             : /*2825*/          OPC_RecordChild1, // #2 = $dst
    1345             : /*2826*/          OPC_CheckPredicate, 0, // Predicate_unindexedload
    1346             : /*2828*/          OPC_CheckPredicate, 1, // Predicate_load
    1347             : /*2830*/          OPC_MoveParent,
    1348             : /*2831*/          OPC_Scope, 75, /*->2908*/ // 2 children in Scope
    1349             : /*2833*/            OPC_MoveChild1,
    1350             : /*2834*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1351             : /*2837*/            OPC_RecordMemRef,
    1352             : /*2838*/            OPC_RecordNode, // #3 = 'ld' chained node
    1353             : /*2839*/            OPC_CheckFoldableChainNode,
    1354             : /*2840*/            OPC_RecordChild1, // #4 = $src
    1355             : /*2841*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
    1356             : /*2843*/            OPC_CheckPredicate, 1, // Predicate_load
    1357             : /*2845*/            OPC_MoveParent,
    1358             : /*2846*/            OPC_SwitchType /*2 cases */, 28, MVT::i16,// ->2877
    1359             : /*2849*/              OPC_MoveParent,
    1360             : /*2850*/              OPC_CheckChild2Same, 2,
    1361             : /*2852*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1362             : /*2854*/              OPC_CheckPredicate, 3, // Predicate_store
    1363             : /*2856*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
    1364             : /*2859*/              OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
    1365             : /*2862*/              OPC_EmitMergeInputChains, 3, 0, 1, 3, 
    1366             : /*2867*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SUB16mm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1367             :                           MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
    1368             :                       // Src: (st (subc:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
    1369             :                       // Dst: (SUB16mm:i16 addr:i16:$dst, addr:i16:$src)
    1370             : /*2877*/            /*SwitchType*/ 28, MVT::i8,// ->2907
    1371             : /*2879*/              OPC_MoveParent,
    1372             : /*2880*/              OPC_CheckChild2Same, 2,
    1373             : /*2882*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1374             : /*2884*/              OPC_CheckPredicate, 3, // Predicate_store
    1375             : /*2886*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #5 #6
    1376             : /*2889*/              OPC_CheckComplexPat, /*CP*/0, /*#*/4, // SelectAddr:$src #7 #8
    1377             : /*2892*/              OPC_EmitMergeInputChains, 3, 0, 1, 3, 
    1378             : /*2897*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SUB8mm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1379             :                           MVT::i16, 4/*#Ops*/, 5, 6, 7, 8, 
    1380             :                       // Src: (st (subc:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 42
    1381             :                       // Dst: (SUB8mm:i16 addr:i16:$dst, addr:i16:$src)
    1382             : /*2907*/            0, // EndSwitchType
    1383             : /*2908*/          /*Scope*/ 53, /*->2962*/
    1384             : /*2909*/            OPC_RecordChild1, // #3 = $src
    1385             : /*2910*/            OPC_SwitchType /*2 cases */, 23, MVT::i16,// ->2936
    1386             : /*2913*/              OPC_MoveParent,
    1387             : /*2914*/              OPC_CheckChild2Same, 2,
    1388             : /*2916*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1389             : /*2918*/              OPC_CheckPredicate, 3, // Predicate_store
    1390             : /*2920*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1391             : /*2923*/              OPC_EmitMergeInputChains, 2, 0, 1, 
    1392             : /*2927*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SUB16mr), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1393             :                           MVT::i16, 3/*#Ops*/, 4, 5, 3, 
    1394             :                       // Src: (st (subc:i16 (ld:i16 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
    1395             :                       // Dst: (SUB16mr:i16 addr:i16:$dst, GR16:i16:$src)
    1396             : /*2936*/            /*SwitchType*/ 23, MVT::i8,// ->2961
    1397             : /*2938*/              OPC_MoveParent,
    1398             : /*2939*/              OPC_CheckChild2Same, 2,
    1399             : /*2941*/              OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1400             : /*2943*/              OPC_CheckPredicate, 3, // Predicate_store
    1401             : /*2945*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #4 #5
    1402             : /*2948*/              OPC_EmitMergeInputChains, 2, 0, 1, 
    1403             : /*2952*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::SUB8mr), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1404             :                           MVT::i16, 3/*#Ops*/, 4, 5, 3, 
    1405             :                       // Src: (st (subc:i8 (ld:i8 addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 29
    1406             :                       // Dst: (SUB8mr:i16 addr:i16:$dst, GR8:i8:$src)
    1407             : /*2961*/            0, // EndSwitchType
    1408             : /*2962*/          0, /*End of Scope*/
    1409             : /*2963*/        /*SwitchOpcode*/ 64, TARGET_VAL(ISD::LOAD),// ->3030
    1410             : /*2966*/          OPC_RecordMemRef,
    1411             : /*2967*/          OPC_RecordNode, // #1 = 'ld' chained node
    1412             : /*2968*/          OPC_CheckFoldableChainNode,
    1413             : /*2969*/          OPC_RecordChild1, // #2 = $src
    1414             : /*2970*/          OPC_CheckPredicate, 0, // Predicate_unindexedload
    1415             : /*2972*/          OPC_CheckPredicate, 1, // Predicate_load
    1416             : /*2974*/          OPC_SwitchType /*2 cases */, 25, MVT::i8,// ->3002
    1417             : /*2977*/            OPC_MoveParent,
    1418             : /*2978*/            OPC_RecordChild2, // #3 = $dst
    1419             : /*2979*/            OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1420             : /*2981*/            OPC_CheckPredicate, 3, // Predicate_store
    1421             : /*2983*/            OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #4 #5
    1422             : /*2986*/            OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #6 #7
    1423             : /*2989*/            OPC_EmitMergeInputChains, 2, 0, 1, 
    1424             : /*2993*/            OPC_MorphNodeTo0, TARGET_VAL(MSP430::MOV8mm), 0|OPFL_Chain|OPFL_MemRefs,
    1425             :                         4/*#Ops*/, 6, 7, 4, 5, 
    1426             :                     // Src: (st (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 26
    1427             :                     // Dst: (MOV8mm addr:i16:$dst, addr:i16:$src)
    1428             : /*3002*/          /*SwitchType*/ 25, MVT::i16,// ->3029
    1429             : /*3004*/            OPC_MoveParent,
    1430             : /*3005*/            OPC_RecordChild2, // #3 = $dst
    1431             : /*3006*/            OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1432             : /*3008*/            OPC_CheckPredicate, 3, // Predicate_store
    1433             : /*3010*/            OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src #4 #5
    1434             : /*3013*/            OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$dst #6 #7
    1435             : /*3016*/            OPC_EmitMergeInputChains, 2, 0, 1, 
    1436             : /*3020*/            OPC_MorphNodeTo0, TARGET_VAL(MSP430::MOV16mm), 0|OPFL_Chain|OPFL_MemRefs,
    1437             :                         4/*#Ops*/, 6, 7, 4, 5, 
    1438             :                     // Src: (st (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 26
    1439             :                     // Dst: (MOV16mm addr:i16:$dst, addr:i16:$src)
    1440             : /*3029*/          0, // EndSwitchType
    1441             : /*3030*/        /*SwitchOpcode*/ 76, TARGET_VAL(MSP430ISD::Wrapper),// ->3109
    1442             : /*3033*/          OPC_RecordChild0, // #1 = $src
    1443             : /*3034*/          OPC_MoveChild0,
    1444             : /*3035*/          OPC_SwitchOpcode /*3 cases */, 21, TARGET_VAL(ISD::TargetGlobalAddress),// ->3060
    1445             : /*3039*/            OPC_MoveParent,
    1446             : /*3040*/            OPC_CheckType, MVT::i16,
    1447             : /*3042*/            OPC_MoveParent,
    1448             : /*3043*/            OPC_RecordChild2, // #2 = $dst
    1449             : /*3044*/            OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1450             : /*3046*/            OPC_CheckPredicate, 3, // Predicate_store
    1451             : /*3048*/            OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #3 #4
    1452             : /*3051*/            OPC_EmitMergeInputChains1_0,
    1453             : /*3052*/            OPC_MorphNodeTo0, TARGET_VAL(MSP430::MOV16mi), 0|OPFL_Chain|OPFL_MemRefs,
    1454             :                         3/*#Ops*/, 3, 4, 1, 
    1455             :                     // Src: (st (MSP430Wrapper:i16 (tglobaladdr:i16):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 19
    1456             :                     // Dst: (MOV16mi addr:i16:$dst, (tglobaladdr:i16):$src)
    1457             : /*3060*/          /*SwitchOpcode*/ 21, TARGET_VAL(ISD::TargetExternalSymbol),// ->3084
    1458             : /*3063*/            OPC_MoveParent,
    1459             : /*3064*/            OPC_CheckType, MVT::i16,
    1460             : /*3066*/            OPC_MoveParent,
    1461             : /*3067*/            OPC_RecordChild2, // #2 = $dst
    1462             : /*3068*/            OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1463             : /*3070*/            OPC_CheckPredicate, 3, // Predicate_store
    1464             : /*3072*/            OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #3 #4
    1465             : /*3075*/            OPC_EmitMergeInputChains1_0,
    1466             : /*3076*/            OPC_MorphNodeTo0, TARGET_VAL(MSP430::MOV16mi), 0|OPFL_Chain|OPFL_MemRefs,
    1467             :                         3/*#Ops*/, 3, 4, 1, 
    1468             :                     // Src: (st (MSP430Wrapper:i16 (texternalsym:i16):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 19
    1469             :                     // Dst: (MOV16mi addr:i16:$dst, (texternalsym:i16):$src)
    1470             : /*3084*/          /*SwitchOpcode*/ 21, TARGET_VAL(ISD::TargetBlockAddress),// ->3108
    1471             : /*3087*/            OPC_MoveParent,
    1472             : /*3088*/            OPC_CheckType, MVT::i16,
    1473             : /*3090*/            OPC_MoveParent,
    1474             : /*3091*/            OPC_RecordChild2, // #2 = $dst
    1475             : /*3092*/            OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1476             : /*3094*/            OPC_CheckPredicate, 3, // Predicate_store
    1477             : /*3096*/            OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #3 #4
    1478             : /*3099*/            OPC_EmitMergeInputChains1_0,
    1479             : /*3100*/            OPC_MorphNodeTo0, TARGET_VAL(MSP430::MOV16mi), 0|OPFL_Chain|OPFL_MemRefs,
    1480             :                         3/*#Ops*/, 3, 4, 1, 
    1481             :                     // Src: (st (MSP430Wrapper:i16 (tblockaddress:i16):$src), addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 19
    1482             :                     // Dst: (MOV16mi addr:i16:$dst, (tblockaddress:i16):$src)
    1483             : /*3108*/          0, // EndSwitchOpcode
    1484             : /*3109*/        0, // EndSwitchOpcode
    1485             : /*3110*/      /*Scope*/ 94, /*->3205*/
    1486             : /*3111*/        OPC_RecordChild1, // #1 = $src
    1487             : /*3112*/        OPC_Scope, 50, /*->3164*/ // 3 children in Scope
    1488             : /*3114*/          OPC_MoveChild1,
    1489             : /*3115*/          OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    1490             : /*3118*/          OPC_SwitchType /*2 cases */, 20, MVT::i8,// ->3141
    1491             : /*3121*/            OPC_MoveParent,
    1492             : /*3122*/            OPC_RecordChild2, // #2 = $dst
    1493             : /*3123*/            OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1494             : /*3125*/            OPC_CheckPredicate, 3, // Predicate_store
    1495             : /*3127*/            OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #3 #4
    1496             : /*3130*/            OPC_EmitMergeInputChains1_0,
    1497             : /*3131*/            OPC_EmitConvertToTarget, 1,
    1498             : /*3133*/            OPC_MorphNodeTo0, TARGET_VAL(MSP430::MOV8mi), 0|OPFL_Chain|OPFL_MemRefs,
    1499             :                         3/*#Ops*/, 3, 4, 5, 
    1500             :                     // Src: (st (imm:i8):$src, addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 16
    1501             :                     // Dst: (MOV8mi addr:i16:$dst, (imm:i8):$src)
    1502             : /*3141*/          /*SwitchType*/ 20, MVT::i16,// ->3163
    1503             : /*3143*/            OPC_MoveParent,
    1504             : /*3144*/            OPC_RecordChild2, // #2 = $dst
    1505             : /*3145*/            OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1506             : /*3147*/            OPC_CheckPredicate, 3, // Predicate_store
    1507             : /*3149*/            OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #3 #4
    1508             : /*3152*/            OPC_EmitMergeInputChains1_0,
    1509             : /*3153*/            OPC_EmitConvertToTarget, 1,
    1510             : /*3155*/            OPC_MorphNodeTo0, TARGET_VAL(MSP430::MOV16mi), 0|OPFL_Chain|OPFL_MemRefs,
    1511             :                         3/*#Ops*/, 3, 4, 5, 
    1512             :                     // Src: (st (imm:i16):$src, addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 16
    1513             :                     // Dst: (MOV16mi addr:i16:$dst, (imm:i16):$src)
    1514             : /*3163*/          0, // EndSwitchType
    1515             : /*3164*/        /*Scope*/ 19, /*->3184*/
    1516             : /*3165*/          OPC_CheckChild1Type, MVT::i8,
    1517             : /*3167*/          OPC_RecordChild2, // #2 = $dst
    1518             : /*3168*/          OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1519             : /*3170*/          OPC_CheckPredicate, 3, // Predicate_store
    1520             : /*3172*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #3 #4
    1521             : /*3175*/          OPC_EmitMergeInputChains1_0,
    1522             : /*3176*/          OPC_MorphNodeTo0, TARGET_VAL(MSP430::MOV8mr), 0|OPFL_Chain|OPFL_MemRefs,
    1523             :                       3/*#Ops*/, 3, 4, 1, 
    1524             :                   // Src: (st GR8:i8:$src, addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 13
    1525             :                   // Dst: (MOV8mr addr:i16:$dst, GR8:i8:$src)
    1526             : /*3184*/        /*Scope*/ 19, /*->3204*/
    1527             : /*3185*/          OPC_CheckChild1Type, MVT::i16,
    1528             : /*3187*/          OPC_RecordChild2, // #2 = $dst
    1529             : /*3188*/          OPC_CheckPredicate, 2, // Predicate_unindexedstore
    1530             : /*3190*/          OPC_CheckPredicate, 3, // Predicate_store
    1531             : /*3192*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #3 #4
    1532             : /*3195*/          OPC_EmitMergeInputChains1_0,
    1533             : /*3196*/          OPC_MorphNodeTo0, TARGET_VAL(MSP430::MOV16mr), 0|OPFL_Chain|OPFL_MemRefs,
    1534             :                       3/*#Ops*/, 3, 4, 1, 
    1535             :                   // Src: (st GR16:i16:$src, addr:iPTR:$dst)<<P:Predicate_unindexedstore>><<P:Predicate_store>> - Complexity = 13
    1536             :                   // Dst: (MOV16mr addr:i16:$dst, GR16:i16:$src)
    1537             : /*3204*/        0, /*End of Scope*/
    1538             : /*3205*/      0, /*End of Scope*/
    1539             : /*3206*/    /*SwitchOpcode*/ 111|128,4/*623*/, TARGET_VAL(MSP430ISD::CMP),// ->3833
    1540             : /*3210*/      OPC_Scope, 60|128,2/*316*/, /*->3529*/ // 4 children in Scope
    1541             : /*3213*/        OPC_MoveChild0,
    1542             : /*3214*/        OPC_SwitchOpcode /*2 cases */, 120|128,1/*248*/, TARGET_VAL(ISD::AND),// ->3467
    1543             : /*3219*/          OPC_Scope, 6|128,1/*134*/, /*->3356*/ // 3 children in Scope
    1544             : /*3222*/            OPC_MoveChild0,
    1545             : /*3223*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1546             : /*3226*/            OPC_RecordMemRef,
    1547             : /*3227*/            OPC_RecordNode, // #0 = 'ld' chained node
    1548             : /*3228*/            OPC_CheckFoldableChainNode,
    1549             : /*3229*/            OPC_RecordChild1, // #1 = $src
    1550             : /*3230*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
    1551             : /*3232*/            OPC_CheckPredicate, 1, // Predicate_load
    1552             : /*3234*/            OPC_MoveParent,
    1553             : /*3235*/            OPC_Scope, 67, /*->3304*/ // 2 children in Scope
    1554             : /*3237*/              OPC_MoveChild1,
    1555             : /*3238*/              OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1556             : /*3241*/              OPC_RecordMemRef,
    1557             : /*3242*/              OPC_RecordNode, // #2 = 'ld' chained node
    1558             : /*3243*/              OPC_CheckFoldableChainNode,
    1559             : /*3244*/              OPC_RecordChild1, // #3 = $src2
    1560             : /*3245*/              OPC_CheckPredicate, 0, // Predicate_unindexedload
    1561             : /*3247*/              OPC_CheckPredicate, 1, // Predicate_load
    1562             : /*3249*/              OPC_MoveParent,
    1563             : /*3250*/              OPC_CheckPredicate, 4, // Predicate_and_su
    1564             : /*3252*/              OPC_SwitchType /*2 cases */, 23, MVT::i8,// ->3278
    1565             : /*3255*/                OPC_MoveParent,
    1566             : /*3256*/                OPC_CheckChild1Integer, 0, 
    1567             : /*3258*/                OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #4 #5
    1568             : /*3261*/                OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$src2 #6 #7
    1569             : /*3264*/                OPC_EmitMergeInputChains, 2, 0, 2, 
    1570             : /*3268*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT8mm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1571             :                             MVT::i16, 4/*#Ops*/, 4, 5, 6, 7, 
    1572             :                         // Src: (MSP430cmp (and:i8 (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>)<<P:Predicate_and_su>>, 0:i8) - Complexity = 38
    1573             :                         // Dst: (BIT8mm:i16 addr:i16:$src, addr:i16:$src2)
    1574             : /*3278*/              /*SwitchType*/ 23, MVT::i16,// ->3303
    1575             : /*3280*/                OPC_MoveParent,
    1576             : /*3281*/                OPC_CheckChild1Integer, 0, 
    1577             : /*3283*/                OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #4 #5
    1578             : /*3286*/                OPC_CheckComplexPat, /*CP*/0, /*#*/3, // SelectAddr:$src2 #6 #7
    1579             : /*3289*/                OPC_EmitMergeInputChains, 2, 0, 2, 
    1580             : /*3293*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT16mm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1581             :                             MVT::i16, 4/*#Ops*/, 4, 5, 6, 7, 
    1582             :                         // Src: (MSP430cmp (and:i16 (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>)<<P:Predicate_and_su>>, 0:i16) - Complexity = 38
    1583             :                         // Dst: (BIT16mm:i16 addr:i16:$src, addr:i16:$src2)
    1584             : /*3303*/              0, // EndSwitchType
    1585             : /*3304*/            /*Scope*/ 50, /*->3355*/
    1586             : /*3305*/              OPC_RecordChild1, // #2 = $src2
    1587             : /*3306*/              OPC_MoveChild1,
    1588             : /*3307*/              OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    1589             : /*3310*/              OPC_MoveParent,
    1590             : /*3311*/              OPC_CheckPredicate, 4, // Predicate_and_su
    1591             : /*3313*/              OPC_SwitchType /*2 cases */, 18, MVT::i8,// ->3334
    1592             : /*3316*/                OPC_MoveParent,
    1593             : /*3317*/                OPC_CheckChild1Integer, 0, 
    1594             : /*3319*/                OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #3 #4
    1595             : /*3322*/                OPC_EmitMergeInputChains1_0,
    1596             : /*3323*/                OPC_EmitConvertToTarget, 2,
    1597             : /*3325*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT8mi), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1598             :                             MVT::i16, 3/*#Ops*/, 3, 4, 5, 
    1599             :                         // Src: (MSP430cmp (and:i8 (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i8):$src2)<<P:Predicate_and_su>>, 0:i8) - Complexity = 28
    1600             :                         // Dst: (BIT8mi:i16 addr:i16:$src, (imm:i8):$src2)
    1601             : /*3334*/              /*SwitchType*/ 18, MVT::i16,// ->3354
    1602             : /*3336*/                OPC_MoveParent,
    1603             : /*3337*/                OPC_CheckChild1Integer, 0, 
    1604             : /*3339*/                OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #3 #4
    1605             : /*3342*/                OPC_EmitMergeInputChains1_0,
    1606             : /*3343*/                OPC_EmitConvertToTarget, 2,
    1607             : /*3345*/                OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT16mi), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1608             :                             MVT::i16, 3/*#Ops*/, 3, 4, 5, 
    1609             :                         // Src: (MSP430cmp (and:i16 (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i16):$src2)<<P:Predicate_and_su>>, 0:i16) - Complexity = 28
    1610             :                         // Dst: (BIT16mi:i16 addr:i16:$src, (imm:i16):$src2)
    1611             : /*3354*/              0, // EndSwitchType
    1612             : /*3355*/            0, /*End of Scope*/
    1613             : /*3356*/          /*Scope*/ 54, /*->3411*/
    1614             : /*3357*/            OPC_RecordChild0, // #0 = $src
    1615             : /*3358*/            OPC_MoveChild1,
    1616             : /*3359*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1617             : /*3362*/            OPC_RecordMemRef,
    1618             : /*3363*/            OPC_RecordNode, // #1 = 'ld' chained node
    1619             : /*3364*/            OPC_CheckFoldableChainNode,
    1620             : /*3365*/            OPC_RecordChild1, // #2 = $src2
    1621             : /*3366*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
    1622             : /*3368*/            OPC_CheckPredicate, 1, // Predicate_load
    1623             : /*3370*/            OPC_MoveParent,
    1624             : /*3371*/            OPC_CheckPredicate, 4, // Predicate_and_su
    1625             : /*3373*/            OPC_SwitchType /*2 cases */, 16, MVT::i8,// ->3392
    1626             : /*3376*/              OPC_MoveParent,
    1627             : /*3377*/              OPC_CheckChild1Integer, 0, 
    1628             : /*3379*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    1629             : /*3382*/              OPC_EmitMergeInputChains1_1,
    1630             : /*3383*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT8rm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1631             :                           MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    1632             :                       // Src: (MSP430cmp (and:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>)<<P:Predicate_and_su>>, 0:i8) - Complexity = 25
    1633             :                       // Dst: (BIT8rm:i16 GR8:i8:$src, addr:i16:$src2)
    1634             : /*3392*/            /*SwitchType*/ 16, MVT::i16,// ->3410
    1635             : /*3394*/              OPC_MoveParent,
    1636             : /*3395*/              OPC_CheckChild1Integer, 0, 
    1637             : /*3397*/              OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    1638             : /*3400*/              OPC_EmitMergeInputChains1_1,
    1639             : /*3401*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT16rm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1640             :                           MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    1641             :                       // Src: (MSP430cmp (and:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>)<<P:Predicate_and_su>>, 0:i16) - Complexity = 25
    1642             :                       // Dst: (BIT16rm:i16 GR16:i16:$src, addr:i16:$src2)
    1643             : /*3410*/            0, // EndSwitchType
    1644             : /*3411*/          /*Scope*/ 54, /*->3466*/
    1645             : /*3412*/            OPC_MoveChild0,
    1646             : /*3413*/            OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1647             : /*3416*/            OPC_RecordMemRef,
    1648             : /*3417*/            OPC_RecordNode, // #0 = 'ld' chained node
    1649             : /*3418*/            OPC_CheckFoldableChainNode,
    1650             : /*3419*/            OPC_RecordChild1, // #1 = $src
    1651             : /*3420*/            OPC_CheckPredicate, 0, // Predicate_unindexedload
    1652             : /*3422*/            OPC_CheckPredicate, 1, // Predicate_load
    1653             : /*3424*/            OPC_MoveParent,
    1654             : /*3425*/            OPC_RecordChild1, // #2 = $src2
    1655             : /*3426*/            OPC_CheckPredicate, 4, // Predicate_and_su
    1656             : /*3428*/            OPC_SwitchType /*2 cases */, 16, MVT::i8,// ->3447
    1657             : /*3431*/              OPC_MoveParent,
    1658             : /*3432*/              OPC_CheckChild1Integer, 0, 
    1659             : /*3434*/              OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #3 #4
    1660             : /*3437*/              OPC_EmitMergeInputChains1_0,
    1661             : /*3438*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT8mr), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1662             :                           MVT::i16, 3/*#Ops*/, 3, 4, 2, 
    1663             :                       // Src: (MSP430cmp (and:i8 (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src2)<<P:Predicate_and_su>>, 0:i8) - Complexity = 25
    1664             :                       // Dst: (BIT8mr:i16 addr:i16:$src, GR8:i8:$src2)
    1665             : /*3447*/            /*SwitchType*/ 16, MVT::i16,// ->3465
    1666             : /*3449*/              OPC_MoveParent,
    1667             : /*3450*/              OPC_CheckChild1Integer, 0, 
    1668             : /*3452*/              OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #3 #4
    1669             : /*3455*/              OPC_EmitMergeInputChains1_0,
    1670             : /*3456*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT16mr), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1671             :                           MVT::i16, 3/*#Ops*/, 3, 4, 2, 
    1672             :                       // Src: (MSP430cmp (and:i16 (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src2)<<P:Predicate_and_su>>, 0:i16) - Complexity = 25
    1673             :                       // Dst: (BIT16mr:i16 addr:i16:$src, GR16:i16:$src2)
    1674             : /*3465*/            0, // EndSwitchType
    1675             : /*3466*/          0, /*End of Scope*/
    1676             : /*3467*/        /*SwitchOpcode*/ 58, TARGET_VAL(ISD::LOAD),// ->3528
    1677             : /*3470*/          OPC_RecordMemRef,
    1678             : /*3471*/          OPC_RecordNode, // #0 = 'ld' chained node
    1679             : /*3472*/          OPC_CheckFoldableChainNode,
    1680             : /*3473*/          OPC_RecordChild1, // #1 = $src
    1681             : /*3474*/          OPC_CheckPredicate, 0, // Predicate_unindexedload
    1682             : /*3476*/          OPC_CheckPredicate, 1, // Predicate_load
    1683             : /*3478*/          OPC_SwitchType /*2 cases */, 22, MVT::i8,// ->3503
    1684             : /*3481*/            OPC_MoveParent,
    1685             : /*3482*/            OPC_RecordChild1, // #2 = $src2
    1686             : /*3483*/            OPC_MoveChild1,
    1687             : /*3484*/            OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    1688             : /*3487*/            OPC_MoveParent,
    1689             : /*3488*/            OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #3 #4
    1690             : /*3491*/            OPC_EmitMergeInputChains1_0,
    1691             : /*3492*/            OPC_EmitConvertToTarget, 2,
    1692             : /*3494*/            OPC_MorphNodeTo1, TARGET_VAL(MSP430::CMP8mi), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1693             :                         MVT::i16, 3/*#Ops*/, 3, 4, 5, 
    1694             :                     // Src: (MSP430cmp (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i8):$src2) - Complexity = 19
    1695             :                     // Dst: (CMP8mi:i16 addr:i16:$src, (imm:i8):$src2)
    1696             : /*3503*/          /*SwitchType*/ 22, MVT::i16,// ->3527
    1697             : /*3505*/            OPC_MoveParent,
    1698             : /*3506*/            OPC_RecordChild1, // #2 = $src2
    1699             : /*3507*/            OPC_MoveChild1,
    1700             : /*3508*/            OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    1701             : /*3511*/            OPC_MoveParent,
    1702             : /*3512*/            OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #3 #4
    1703             : /*3515*/            OPC_EmitMergeInputChains1_0,
    1704             : /*3516*/            OPC_EmitConvertToTarget, 2,
    1705             : /*3518*/            OPC_MorphNodeTo1, TARGET_VAL(MSP430::CMP16mi), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1706             :                         MVT::i16, 3/*#Ops*/, 3, 4, 5, 
    1707             :                     // Src: (MSP430cmp (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, (imm:i16):$src2) - Complexity = 19
    1708             :                     // Dst: (CMP16mi:i16 addr:i16:$src, (imm:i16):$src2)
    1709             : /*3527*/          0, // EndSwitchType
    1710             : /*3528*/        0, // EndSwitchOpcode
    1711             : /*3529*/      /*Scope*/ 61, /*->3591*/
    1712             : /*3530*/        OPC_RecordChild0, // #0 = $src
    1713             : /*3531*/        OPC_Scope, 28, /*->3561*/ // 2 children in Scope
    1714             : /*3533*/          OPC_CheckChild0Type, MVT::i8,
    1715             : /*3535*/          OPC_MoveChild1,
    1716             : /*3536*/          OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1717             : /*3539*/          OPC_RecordMemRef,
    1718             : /*3540*/          OPC_RecordNode, // #1 = 'ld' chained node
    1719             : /*3541*/          OPC_CheckFoldableChainNode,
    1720             : /*3542*/          OPC_RecordChild1, // #2 = $src2
    1721             : /*3543*/          OPC_CheckPredicate, 0, // Predicate_unindexedload
    1722             : /*3545*/          OPC_CheckPredicate, 1, // Predicate_load
    1723             : /*3547*/          OPC_MoveParent,
    1724             : /*3548*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    1725             : /*3551*/          OPC_EmitMergeInputChains1_1,
    1726             : /*3552*/          OPC_MorphNodeTo1, TARGET_VAL(MSP430::CMP8rm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1727             :                       MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    1728             :                   // Src: (MSP430cmp GR8:i8:$src, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    1729             :                   // Dst: (CMP8rm:i16 GR8:i8:$src, addr:i16:$src2)
    1730             : /*3561*/        /*Scope*/ 28, /*->3590*/
    1731             : /*3562*/          OPC_CheckChild0Type, MVT::i16,
    1732             : /*3564*/          OPC_MoveChild1,
    1733             : /*3565*/          OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1734             : /*3568*/          OPC_RecordMemRef,
    1735             : /*3569*/          OPC_RecordNode, // #1 = 'ld' chained node
    1736             : /*3570*/          OPC_CheckFoldableChainNode,
    1737             : /*3571*/          OPC_RecordChild1, // #2 = $src2
    1738             : /*3572*/          OPC_CheckPredicate, 0, // Predicate_unindexedload
    1739             : /*3574*/          OPC_CheckPredicate, 1, // Predicate_load
    1740             : /*3576*/          OPC_MoveParent,
    1741             : /*3577*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    1742             : /*3580*/          OPC_EmitMergeInputChains1_1,
    1743             : /*3581*/          OPC_MorphNodeTo1, TARGET_VAL(MSP430::CMP16rm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1744             :                       MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    1745             :                   // Src: (MSP430cmp GR16:i16:$src, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    1746             :                   // Dst: (CMP16rm:i16 GR16:i16:$src, addr:i16:$src2)
    1747             : /*3590*/        0, /*End of Scope*/
    1748             : /*3591*/      /*Scope*/ 45|128,1/*173*/, /*->3766*/
    1749             : /*3593*/        OPC_MoveChild0,
    1750             : /*3594*/        OPC_SwitchOpcode /*3 cases */, 44, TARGET_VAL(ISD::LOAD),// ->3642
    1751             : /*3598*/          OPC_RecordMemRef,
    1752             : /*3599*/          OPC_RecordNode, // #0 = 'ld' chained node
    1753             : /*3600*/          OPC_CheckFoldableChainNode,
    1754             : /*3601*/          OPC_RecordChild1, // #1 = $src
    1755             : /*3602*/          OPC_CheckPredicate, 0, // Predicate_unindexedload
    1756             : /*3604*/          OPC_CheckPredicate, 1, // Predicate_load
    1757             : /*3606*/          OPC_SwitchType /*2 cases */, 15, MVT::i8,// ->3624
    1758             : /*3609*/            OPC_MoveParent,
    1759             : /*3610*/            OPC_RecordChild1, // #2 = $src2
    1760             : /*3611*/            OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #3 #4
    1761             : /*3614*/            OPC_EmitMergeInputChains1_0,
    1762             : /*3615*/            OPC_MorphNodeTo1, TARGET_VAL(MSP430::CMP8mr), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1763             :                         MVT::i16, 3/*#Ops*/, 3, 4, 2, 
    1764             :                     // Src: (MSP430cmp (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src2) - Complexity = 16
    1765             :                     // Dst: (CMP8mr:i16 addr:i16:$src, GR8:i8:$src2)
    1766             : /*3624*/          /*SwitchType*/ 15, MVT::i16,// ->3641
    1767             : /*3626*/            OPC_MoveParent,
    1768             : /*3627*/            OPC_RecordChild1, // #2 = $src2
    1769             : /*3628*/            OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #3 #4
    1770             : /*3631*/            OPC_EmitMergeInputChains1_0,
    1771             : /*3632*/            OPC_MorphNodeTo1, TARGET_VAL(MSP430::CMP16mr), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    1772             :                         MVT::i16, 3/*#Ops*/, 3, 4, 2, 
    1773             :                     // Src: (MSP430cmp (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src2) - Complexity = 16
    1774             :                     // Dst: (CMP16mr:i16 addr:i16:$src, GR16:i16:$src2)
    1775             : /*3641*/          0, // EndSwitchType
    1776             : /*3642*/        /*SwitchOpcode*/ 75, TARGET_VAL(ISD::AND),// ->3720
    1777             : /*3645*/          OPC_RecordChild0, // #0 = $src
    1778             : /*3646*/          OPC_RecordChild1, // #1 = $src2
    1779             : /*3647*/          OPC_Scope, 39, /*->3688*/ // 2 children in Scope
    1780             : /*3649*/            OPC_MoveChild1,
    1781             : /*3650*/            OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    1782             : /*3653*/            OPC_MoveParent,
    1783             : /*3654*/            OPC_CheckPredicate, 4, // Predicate_and_su
    1784             : /*3656*/            OPC_SwitchType /*2 cases */, 13, MVT::i8,// ->3672
    1785             : /*3659*/              OPC_MoveParent,
    1786             : /*3660*/              OPC_CheckChild1Integer, 0, 
    1787             : /*3662*/              OPC_EmitConvertToTarget, 1,
    1788             : /*3664*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT8ri), 0|OPFL_GlueOutput,
    1789             :                           MVT::i16, 2/*#Ops*/, 0, 2, 
    1790             :                       // Src: (MSP430cmp (and:i8 GR8:i8:$src, (imm:i8):$src2)<<P:Predicate_and_su>>, 0:i8) - Complexity = 15
    1791             :                       // Dst: (BIT8ri:i16 GR8:i8:$src, (imm:i8):$src2)
    1792             : /*3672*/            /*SwitchType*/ 13, MVT::i16,// ->3687
    1793             : /*3674*/              OPC_MoveParent,
    1794             : /*3675*/              OPC_CheckChild1Integer, 0, 
    1795             : /*3677*/              OPC_EmitConvertToTarget, 1,
    1796             : /*3679*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT16ri), 0|OPFL_GlueOutput,
    1797             :                           MVT::i16, 2/*#Ops*/, 0, 2, 
    1798             :                       // Src: (MSP430cmp (and:i16 GR16:i16:$src, (imm:i16):$src2)<<P:Predicate_and_su>>, 0:i16) - Complexity = 15
    1799             :                       // Dst: (BIT16ri:i16 GR16:i16:$src, (imm:i16):$src2)
    1800             : /*3687*/            0, // EndSwitchType
    1801             : /*3688*/          /*Scope*/ 30, /*->3719*/
    1802             : /*3689*/            OPC_CheckPredicate, 4, // Predicate_and_su
    1803             : /*3691*/            OPC_SwitchType /*2 cases */, 11, MVT::i8,// ->3705
    1804             : /*3694*/              OPC_MoveParent,
    1805             : /*3695*/              OPC_CheckChild1Integer, 0, 
    1806             : /*3697*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT8rr), 0|OPFL_GlueOutput,
    1807             :                           MVT::i16, 2/*#Ops*/, 0, 1, 
    1808             :                       // Src: (MSP430cmp (and:i8 GR8:i8:$src, GR8:i8:$src2)<<P:Predicate_and_su>>, 0:i8) - Complexity = 12
    1809             :                       // Dst: (BIT8rr:i16 GR8:i8:$src, GR8:i8:$src2)
    1810             : /*3705*/            /*SwitchType*/ 11, MVT::i16,// ->3718
    1811             : /*3707*/              OPC_MoveParent,
    1812             : /*3708*/              OPC_CheckChild1Integer, 0, 
    1813             : /*3710*/              OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT16rr), 0|OPFL_GlueOutput,
    1814             :                           MVT::i16, 2/*#Ops*/, 0, 1, 
    1815             :                       // Src: (MSP430cmp (and:i16 GR16:i16:$src, GR16:i16:$src2)<<P:Predicate_and_su>>, 0:i16) - Complexity = 12
    1816             :                       // Dst: (BIT16rr:i16 GR16:i16:$src, GR16:i16:$src2)
    1817             : /*3718*/            0, // EndSwitchType
    1818             : /*3719*/          0, /*End of Scope*/
    1819             : /*3720*/        /*SwitchOpcode*/ 42, TARGET_VAL(ISD::TRUNCATE),// ->3765
    1820             : /*3723*/          OPC_MoveChild0,
    1821             : /*3724*/          OPC_CheckOpcode, TARGET_VAL(ISD::AND),
    1822             : /*3727*/          OPC_RecordChild0, // #0 = $src
    1823             : /*3728*/          OPC_RecordChild1, // #1 = $src2
    1824             : /*3729*/          OPC_CheckPredicate, 4, // Predicate_and_su
    1825             : /*3731*/          OPC_MoveParent,
    1826             : /*3732*/          OPC_MoveParent,
    1827             : /*3733*/          OPC_CheckChild1Integer, 0, 
    1828             : /*3735*/          OPC_EmitInteger, MVT::i32, MSP430::subreg_8bit,
    1829             : /*3738*/          OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
    1830             :                       MVT::i8, 2/*#Ops*/, 0, 2,  // Results = #3
    1831             : /*3746*/          OPC_EmitInteger, MVT::i32, MSP430::subreg_8bit,
    1832             : /*3749*/          OPC_EmitNode1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
    1833             :                       MVT::i8, 2/*#Ops*/, 1, 4,  // Results = #5
    1834             : /*3757*/          OPC_MorphNodeTo1, TARGET_VAL(MSP430::BIT8rr), 0|OPFL_GlueOutput,
    1835             :                       MVT::i16, 2/*#Ops*/, 3, 5, 
    1836             :                   // Src: (MSP430cmp (trunc:i8 (and:i16 GR16:i16:$src, GR16:i16:$src2)<<P:Predicate_and_su>>), 0:i8) - Complexity = 15
    1837             :                   // Dst: (BIT8rr:i16 (EXTRACT_SUBREG:i8 GR16:i16:$src, subreg_8bit:i32), (EXTRACT_SUBREG:i8 GR16:i16:$src2, subreg_8bit:i32))
    1838             : /*3765*/        0, // EndSwitchOpcode
    1839             : /*3766*/      /*Scope*/ 65, /*->3832*/
    1840             : /*3767*/        OPC_RecordChild0, // #0 = $src
    1841             : /*3768*/        OPC_Scope, 30, /*->3800*/ // 2 children in Scope
    1842             : /*3770*/          OPC_CheckChild0Type, MVT::i8,
    1843             : /*3772*/          OPC_RecordChild1, // #1 = $src2
    1844             : /*3773*/          OPC_Scope, 15, /*->3790*/ // 2 children in Scope
    1845             : /*3775*/            OPC_MoveChild1,
    1846             : /*3776*/            OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    1847             : /*3779*/            OPC_MoveParent,
    1848             : /*3780*/            OPC_EmitConvertToTarget, 1,
    1849             : /*3782*/            OPC_MorphNodeTo1, TARGET_VAL(MSP430::CMP8ri), 0|OPFL_GlueOutput,
    1850             :                         MVT::i16, 2/*#Ops*/, 0, 2, 
    1851             :                     // Src: (MSP430cmp GR8:i8:$src, (imm:i8):$src2) - Complexity = 6
    1852             :                     // Dst: (CMP8ri:i16 GR8:i8:$src, (imm:i8):$src2)
    1853             : /*3790*/          /*Scope*/ 8, /*->3799*/
    1854             : /*3791*/            OPC_MorphNodeTo1, TARGET_VAL(MSP430::CMP8rr), 0|OPFL_GlueOutput,
    1855             :                         MVT::i16, 2/*#Ops*/, 0, 1, 
    1856             :                     // Src: (MSP430cmp GR8:i8:$src, GR8:i8:$src2) - Complexity = 3
    1857             :                     // Dst: (CMP8rr:i16 GR8:i8:$src, GR8:i8:$src2)
    1858             : /*3799*/          0, /*End of Scope*/
    1859             : /*3800*/        /*Scope*/ 30, /*->3831*/
    1860             : /*3801*/          OPC_CheckChild0Type, MVT::i16,
    1861             : /*3803*/          OPC_RecordChild1, // #1 = $src2
    1862             : /*3804*/          OPC_Scope, 15, /*->3821*/ // 2 children in Scope
    1863             : /*3806*/            OPC_MoveChild1,
    1864             : /*3807*/            OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    1865             : /*3810*/            OPC_MoveParent,
    1866             : /*3811*/            OPC_EmitConvertToTarget, 1,
    1867             : /*3813*/            OPC_MorphNodeTo1, TARGET_VAL(MSP430::CMP16ri), 0|OPFL_GlueOutput,
    1868             :                         MVT::i16, 2/*#Ops*/, 0, 2, 
    1869             :                     // Src: (MSP430cmp GR16:i16:$src, (imm:i16):$src2) - Complexity = 6
    1870             :                     // Dst: (CMP16ri:i16 GR16:i16:$src, (imm:i16):$src2)
    1871             : /*3821*/          /*Scope*/ 8, /*->3830*/
    1872             : /*3822*/            OPC_MorphNodeTo1, TARGET_VAL(MSP430::CMP16rr), 0|OPFL_GlueOutput,
    1873             :                         MVT::i16, 2/*#Ops*/, 0, 1, 
    1874             :                     // Src: (MSP430cmp GR16:i16:$src, GR16:i16:$src2) - Complexity = 3
    1875             :                     // Dst: (CMP16rr:i16 GR16:i16:$src, GR16:i16:$src2)
    1876             : /*3830*/          0, /*End of Scope*/
    1877             : /*3831*/        0, /*End of Scope*/
    1878             : /*3832*/      0, /*End of Scope*/
    1879             : /*3833*/    /*SwitchOpcode*/ 9|128,3/*393*/, TARGET_VAL(ISD::AND),// ->4230
    1880             : /*3837*/      OPC_Scope, 64, /*->3903*/ // 8 children in Scope
    1881             : /*3839*/        OPC_RecordChild0, // #0 = $src
    1882             : /*3840*/        OPC_MoveChild1,
    1883             : /*3841*/        OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
    1884             : /*3844*/        OPC_MoveChild0,
    1885             : /*3845*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1886             : /*3848*/        OPC_RecordMemRef,
    1887             : /*3849*/        OPC_RecordNode, // #1 = 'ld' chained node
    1888             : /*3850*/        OPC_CheckFoldableChainNode,
    1889             : /*3851*/        OPC_RecordChild1, // #2 = $src2
    1890             : /*3852*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    1891             : /*3854*/        OPC_CheckPredicate, 1, // Predicate_load
    1892             : /*3856*/        OPC_MoveParent,
    1893             : /*3857*/        OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/, 
    1894             : /*3868*/        OPC_MoveParent,
    1895             : /*3869*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->3886
    1896             : /*3872*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    1897             : /*3875*/          OPC_EmitMergeInputChains1_1,
    1898             : /*3876*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::BIC8rm), 0|OPFL_Chain|OPFL_MemRefs,
    1899             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    1900             :                   // Src: (and:i8 GR8:i8:$src, (xor:i8 (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, -1:i8)) - Complexity = 24
    1901             :                   // Dst: (BIC8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    1902             : /*3886*/        /*SwitchType*/ 14, MVT::i16,// ->3902
    1903             : /*3888*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    1904             : /*3891*/          OPC_EmitMergeInputChains1_1,
    1905             : /*3892*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::BIC16rm), 0|OPFL_Chain|OPFL_MemRefs,
    1906             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    1907             :                   // Src: (and:i16 GR16:i16:$src, (xor:i16 (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, -1:i16)) - Complexity = 24
    1908             :                   // Dst: (BIC16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    1909             : /*3902*/        0, // EndSwitchType
    1910             : /*3903*/      /*Scope*/ 64, /*->3968*/
    1911             : /*3904*/        OPC_MoveChild0,
    1912             : /*3905*/        OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
    1913             : /*3908*/        OPC_MoveChild0,
    1914             : /*3909*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1915             : /*3912*/        OPC_RecordMemRef,
    1916             : /*3913*/        OPC_RecordNode, // #0 = 'ld' chained node
    1917             : /*3914*/        OPC_CheckFoldableChainNode,
    1918             : /*3915*/        OPC_RecordChild1, // #1 = $src2
    1919             : /*3916*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    1920             : /*3918*/        OPC_CheckPredicate, 1, // Predicate_load
    1921             : /*3920*/        OPC_MoveParent,
    1922             : /*3921*/        OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/, 
    1923             : /*3932*/        OPC_MoveParent,
    1924             : /*3933*/        OPC_RecordChild1, // #2 = $src
    1925             : /*3934*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->3951
    1926             : /*3937*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    1927             : /*3940*/          OPC_EmitMergeInputChains1_0,
    1928             : /*3941*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::BIC8rm), 0|OPFL_Chain|OPFL_MemRefs,
    1929             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    1930             :                   // Src: (and:i8 (xor:i8 (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, -1:i8), GR8:i8:$src) - Complexity = 24
    1931             :                   // Dst: (BIC8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    1932             : /*3951*/        /*SwitchType*/ 14, MVT::i16,// ->3967
    1933             : /*3953*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    1934             : /*3956*/          OPC_EmitMergeInputChains1_0,
    1935             : /*3957*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::BIC16rm), 0|OPFL_Chain|OPFL_MemRefs,
    1936             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    1937             :                   // Src: (and:i16 (xor:i16 (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, -1:i16), GR16:i16:$src) - Complexity = 24
    1938             :                   // Dst: (BIC16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    1939             : /*3967*/        0, // EndSwitchType
    1940             : /*3968*/      /*Scope*/ 48, /*->4017*/
    1941             : /*3969*/        OPC_RecordChild0, // #0 = $src
    1942             : /*3970*/        OPC_MoveChild1,
    1943             : /*3971*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1944             : /*3974*/        OPC_RecordMemRef,
    1945             : /*3975*/        OPC_RecordNode, // #1 = 'ld' chained node
    1946             : /*3976*/        OPC_CheckFoldableChainNode,
    1947             : /*3977*/        OPC_RecordChild1, // #2 = $src2
    1948             : /*3978*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    1949             : /*3980*/        OPC_CheckPredicate, 1, // Predicate_load
    1950             : /*3982*/        OPC_MoveParent,
    1951             : /*3983*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->4000
    1952             : /*3986*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    1953             : /*3989*/          OPC_EmitMergeInputChains1_1,
    1954             : /*3990*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::AND8rm), 0|OPFL_Chain|OPFL_MemRefs,
    1955             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    1956             :                   // Src: (and:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    1957             :                   // Dst: (AND8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    1958             : /*4000*/        /*SwitchType*/ 14, MVT::i16,// ->4016
    1959             : /*4002*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    1960             : /*4005*/          OPC_EmitMergeInputChains1_1,
    1961             : /*4006*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::AND16rm), 0|OPFL_Chain|OPFL_MemRefs,
    1962             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    1963             :                   // Src: (and:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    1964             :                   // Dst: (AND16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    1965             : /*4016*/        0, // EndSwitchType
    1966             : /*4017*/      /*Scope*/ 48, /*->4066*/
    1967             : /*4018*/        OPC_MoveChild0,
    1968             : /*4019*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    1969             : /*4022*/        OPC_RecordMemRef,
    1970             : /*4023*/        OPC_RecordNode, // #0 = 'ld' chained node
    1971             : /*4024*/        OPC_CheckFoldableChainNode,
    1972             : /*4025*/        OPC_RecordChild1, // #1 = $src2
    1973             : /*4026*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    1974             : /*4028*/        OPC_CheckPredicate, 1, // Predicate_load
    1975             : /*4030*/        OPC_MoveParent,
    1976             : /*4031*/        OPC_RecordChild1, // #2 = $src
    1977             : /*4032*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->4049
    1978             : /*4035*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    1979             : /*4038*/          OPC_EmitMergeInputChains1_0,
    1980             : /*4039*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::AND8rm), 0|OPFL_Chain|OPFL_MemRefs,
    1981             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    1982             :                   // Src: (and:i8 (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src) - Complexity = 16
    1983             :                   // Dst: (AND8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    1984             : /*4049*/        /*SwitchType*/ 14, MVT::i16,// ->4065
    1985             : /*4051*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    1986             : /*4054*/          OPC_EmitMergeInputChains1_0,
    1987             : /*4055*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::AND16rm), 0|OPFL_Chain|OPFL_MemRefs,
    1988             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    1989             :                   // Src: (and:i16 (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src) - Complexity = 16
    1990             :                   // Dst: (AND16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    1991             : /*4065*/        0, // EndSwitchType
    1992             : /*4066*/      /*Scope*/ 42, /*->4109*/
    1993             : /*4067*/        OPC_RecordChild0, // #0 = $src
    1994             : /*4068*/        OPC_MoveChild1,
    1995             : /*4069*/        OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
    1996             : /*4072*/        OPC_RecordChild0, // #1 = $src2
    1997             : /*4073*/        OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/, 
    1998             : /*4084*/        OPC_MoveParent,
    1999             : /*4085*/        OPC_SwitchType /*2 cases */, 9, MVT::i8,// ->4097
    2000             : /*4088*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::BIC8rr), 0,
    2001             :                       MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    2002             :                   // Src: (and:i8 GR8:i8:$src, (xor:i8 GR8:i8:$src2, -1:i8)) - Complexity = 11
    2003             :                   // Dst: (BIC8rr:i8:i16 GR8:i8:$src, GR8:i8:$src2)
    2004             : /*4097*/        /*SwitchType*/ 9, MVT::i16,// ->4108
    2005             : /*4099*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::BIC16rr), 0,
    2006             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2007             :                   // Src: (and:i16 GR16:i16:$src, (xor:i16 GR16:i16:$src2, -1:i16)) - Complexity = 11
    2008             :                   // Dst: (BIC16rr:i16:i16 GR16:i16:$src, GR16:i16:$src2)
    2009             : /*4108*/        0, // EndSwitchType
    2010             : /*4109*/      /*Scope*/ 42, /*->4152*/
    2011             : /*4110*/        OPC_MoveChild0,
    2012             : /*4111*/        OPC_CheckOpcode, TARGET_VAL(ISD::XOR),
    2013             : /*4114*/        OPC_RecordChild0, // #0 = $src2
    2014             : /*4115*/        OPC_CheckChild1Integer, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1/*18446744073709551615*/, 
    2015             : /*4126*/        OPC_MoveParent,
    2016             : /*4127*/        OPC_RecordChild1, // #1 = $src
    2017             : /*4128*/        OPC_SwitchType /*2 cases */, 9, MVT::i8,// ->4140
    2018             : /*4131*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::BIC8rr), 0,
    2019             :                       MVT::i8, MVT::i16, 2/*#Ops*/, 1, 0, 
    2020             :                   // Src: (and:i8 (xor:i8 GR8:i8:$src2, -1:i8), GR8:i8:$src) - Complexity = 11
    2021             :                   // Dst: (BIC8rr:i8:i16 GR8:i8:$src, GR8:i8:$src2)
    2022             : /*4140*/        /*SwitchType*/ 9, MVT::i16,// ->4151
    2023             : /*4142*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::BIC16rr), 0,
    2024             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 1, 0, 
    2025             :                   // Src: (and:i16 (xor:i16 GR16:i16:$src2, -1:i16), GR16:i16:$src) - Complexity = 11
    2026             :                   // Dst: (BIC16rr:i16:i16 GR16:i16:$src, GR16:i16:$src2)
    2027             : /*4151*/        0, // EndSwitchType
    2028             : /*4152*/      /*Scope*/ 13, /*->4166*/
    2029             : /*4153*/        OPC_CheckAndImm, 127|128,1/*255*/, 
    2030             : /*4156*/        OPC_RecordChild0, // #0 = $src
    2031             : /*4157*/        OPC_CheckType, MVT::i16,
    2032             : /*4159*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::ZEXT16r), 0,
    2033             :                     MVT::i16, 1/*#Ops*/, 0, 
    2034             :                 // Src: (and:i16 GR16:i16:$src, 255:i16) - Complexity = 8
    2035             :                 // Dst: (ZEXT16r:i16 GR16:i16:$src)
    2036             : /*4166*/      /*Scope*/ 62, /*->4229*/
    2037             : /*4167*/        OPC_RecordChild0, // #0 = $src
    2038             : /*4168*/        OPC_RecordChild1, // #1 = $src2
    2039             : /*4169*/        OPC_Scope, 33, /*->4204*/ // 3 children in Scope
    2040             : /*4171*/          OPC_MoveChild1,
    2041             : /*4172*/          OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    2042             : /*4175*/          OPC_MoveParent,
    2043             : /*4176*/          OPC_SwitchType /*2 cases */, 11, MVT::i8,// ->4190
    2044             : /*4179*/            OPC_EmitConvertToTarget, 1,
    2045             : /*4181*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::AND8ri), 0,
    2046             :                         MVT::i8, MVT::i16, 2/*#Ops*/, 0, 2, 
    2047             :                     // Src: (and:i8 GR8:i8:$src, (imm:i8):$src2) - Complexity = 6
    2048             :                     // Dst: (AND8ri:i8:i16 GR8:i8:$src, (imm:i8):$src2)
    2049             : /*4190*/          /*SwitchType*/ 11, MVT::i16,// ->4203
    2050             : /*4192*/            OPC_EmitConvertToTarget, 1,
    2051             : /*4194*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::AND16ri), 0,
    2052             :                         MVT::i16, MVT::i16, 2/*#Ops*/, 0, 2, 
    2053             :                     // Src: (and:i16 GR16:i16:$src, (imm:i16):$src2) - Complexity = 6
    2054             :                     // Dst: (AND16ri:i16:i16 GR16:i16:$src, (imm:i16):$src2)
    2055             : /*4203*/          0, // EndSwitchType
    2056             : /*4204*/        /*Scope*/ 11, /*->4216*/
    2057             : /*4205*/          OPC_CheckType, MVT::i8,
    2058             : /*4207*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::AND8rr), 0,
    2059             :                       MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    2060             :                   // Src: (and:i8 GR8:i8:$src, GR8:i8:$src2) - Complexity = 3
    2061             :                   // Dst: (AND8rr:i8:i16 GR8:i8:$src, GR8:i8:$src2)
    2062             : /*4216*/        /*Scope*/ 11, /*->4228*/
    2063             : /*4217*/          OPC_CheckType, MVT::i16,
    2064             : /*4219*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::AND16rr), 0,
    2065             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2066             :                   // Src: (and:i16 GR16:i16:$src, GR16:i16:$src2) - Complexity = 3
    2067             :                   // Dst: (AND16rr:i16:i16 GR16:i16:$src, GR16:i16:$src2)
    2068             : /*4228*/        0, /*End of Scope*/
    2069             : /*4229*/      0, /*End of Scope*/
    2070             : /*4230*/    /*SwitchOpcode*/ 58, TARGET_VAL(ISD::BRIND),// ->4291
    2071             : /*4233*/      OPC_RecordNode, // #0 = 'brind' chained node
    2072             : /*4234*/      OPC_Scope, 27, /*->4263*/ // 2 children in Scope
    2073             : /*4236*/        OPC_MoveChild1,
    2074             : /*4237*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2075             : /*4240*/        OPC_RecordMemRef,
    2076             : /*4241*/        OPC_RecordNode, // #1 = 'ld' chained node
    2077             : /*4242*/        OPC_CheckFoldableChainNode,
    2078             : /*4243*/        OPC_RecordChild1, // #2 = $brdst
    2079             : /*4244*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2080             : /*4246*/        OPC_CheckPredicate, 1, // Predicate_load
    2081             : /*4248*/        OPC_MoveParent,
    2082             : /*4249*/        OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$brdst #3 #4
    2083             : /*4252*/        OPC_EmitMergeInputChains, 2, 0, 1, 
    2084             : /*4256*/        OPC_MorphNodeTo0, TARGET_VAL(MSP430::Bm), 0|OPFL_Chain|OPFL_MemRefs,
    2085             :                     2/*#Ops*/, 3, 4, 
    2086             :                 // Src: (brind (ld:iPTR addr:iPTR:$brdst)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2087             :                 // Dst: (Bm addr:i16:$brdst)
    2088             : /*4263*/      /*Scope*/ 26, /*->4290*/
    2089             : /*4264*/        OPC_RecordChild1, // #1 = $brdst
    2090             : /*4265*/        OPC_Scope, 12, /*->4279*/ // 2 children in Scope
    2091             : /*4267*/          OPC_MoveChild1,
    2092             : /*4268*/          OPC_CheckOpcode, TARGET_VAL(ISD::TargetBlockAddress),
    2093             : /*4271*/          OPC_MoveParent,
    2094             : /*4272*/          OPC_EmitMergeInputChains1_0,
    2095             : /*4273*/          OPC_MorphNodeTo0, TARGET_VAL(MSP430::Bi), 0|OPFL_Chain,
    2096             :                       1/*#Ops*/, 1, 
    2097             :                   // Src: (brind (tblockaddress:iPTR):$brdst) - Complexity = 6
    2098             :                   // Dst: (Bi (tblockaddress:i16):$brdst)
    2099             : /*4279*/        /*Scope*/ 9, /*->4289*/
    2100             : /*4280*/          OPC_CheckChild1Type, MVT::i16,
    2101             : /*4282*/          OPC_EmitMergeInputChains1_0,
    2102             : /*4283*/          OPC_MorphNodeTo0, TARGET_VAL(MSP430::Br), 0|OPFL_Chain,
    2103             :                       1/*#Ops*/, 1, 
    2104             :                   // Src: (brind GR16:i16:$brdst) - Complexity = 3
    2105             :                   // Dst: (Br GR16:i16:$brdst)
    2106             : /*4289*/        0, /*End of Scope*/
    2107             : /*4290*/      0, /*End of Scope*/
    2108             : /*4291*/    /*SwitchOpcode*/ 94, TARGET_VAL(MSP430ISD::CALL),// ->4388
    2109             : /*4294*/      OPC_RecordNode, // #0 = 'MSP430call' chained node
    2110             : /*4295*/      OPC_CaptureGlueInput,
    2111             : /*4296*/      OPC_Scope, 28, /*->4326*/ // 2 children in Scope
    2112             : /*4298*/        OPC_MoveChild1,
    2113             : /*4299*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2114             : /*4302*/        OPC_RecordMemRef,
    2115             : /*4303*/        OPC_RecordNode, // #1 = 'ld' chained node
    2116             : /*4304*/        OPC_CheckFoldableChainNode,
    2117             : /*4305*/        OPC_RecordChild1, // #2 = $dst
    2118             : /*4306*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2119             : /*4308*/        OPC_CheckPredicate, 1, // Predicate_load
    2120             : /*4310*/        OPC_MoveParent,
    2121             : /*4311*/        OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$dst #3 #4
    2122             : /*4314*/        OPC_EmitMergeInputChains, 2, 0, 1, 
    2123             : /*4318*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::CALLm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs|OPFL_Variadic1,
    2124             :                     MVT::i16, 2/*#Ops*/, 3, 4, 
    2125             :                 // Src: (MSP430call (ld:iPTR addr:iPTR:$dst)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2126             :                 // Dst: (CALLm:i16 addr:i16:$dst)
    2127             : /*4326*/      /*Scope*/ 60, /*->4387*/
    2128             : /*4327*/        OPC_RecordChild1, // #1 = $dst
    2129             : /*4328*/        OPC_Scope, 45, /*->4375*/ // 2 children in Scope
    2130             : /*4330*/          OPC_MoveChild1,
    2131             : /*4331*/          OPC_SwitchOpcode /*3 cases */, 11, TARGET_VAL(ISD::Constant),// ->4346
    2132             : /*4335*/            OPC_MoveParent,
    2133             : /*4336*/            OPC_EmitMergeInputChains1_0,
    2134             : /*4337*/            OPC_EmitConvertToTarget, 1,
    2135             : /*4339*/            OPC_MorphNodeTo1, TARGET_VAL(MSP430::CALLi), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
    2136             :                         MVT::i16, 1/*#Ops*/, 2, 
    2137             :                     // Src: (MSP430call (imm:iPTR):$dst) - Complexity = 6
    2138             :                     // Dst: (CALLi:i16 (imm:i16):$dst)
    2139             : /*4346*/          /*SwitchOpcode*/ 11, TARGET_VAL(ISD::TargetGlobalAddress),// ->4360
    2140             : /*4349*/            OPC_CheckType, MVT::i16,
    2141             : /*4351*/            OPC_MoveParent,
    2142             : /*4352*/            OPC_EmitMergeInputChains1_0,
    2143             : /*4353*/            OPC_MorphNodeTo1, TARGET_VAL(MSP430::CALLi), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
    2144             :                         MVT::i16, 1/*#Ops*/, 1, 
    2145             :                     // Src: (MSP430call (tglobaladdr:i16):$dst) - Complexity = 6
    2146             :                     // Dst: (CALLi:i16 (tglobaladdr:i16):$dst)
    2147             : /*4360*/          /*SwitchOpcode*/ 11, TARGET_VAL(ISD::TargetExternalSymbol),// ->4374
    2148             : /*4363*/            OPC_CheckType, MVT::i16,
    2149             : /*4365*/            OPC_MoveParent,
    2150             : /*4366*/            OPC_EmitMergeInputChains1_0,
    2151             : /*4367*/            OPC_MorphNodeTo1, TARGET_VAL(MSP430::CALLi), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
    2152             :                         MVT::i16, 1/*#Ops*/, 1, 
    2153             :                     // Src: (MSP430call (texternalsym:i16):$dst) - Complexity = 6
    2154             :                     // Dst: (CALLi:i16 (texternalsym:i16):$dst)
    2155             : /*4374*/          0, // EndSwitchOpcode
    2156             : /*4375*/        /*Scope*/ 10, /*->4386*/
    2157             : /*4376*/          OPC_CheckChild1Type, MVT::i16,
    2158             : /*4378*/          OPC_EmitMergeInputChains1_0,
    2159             : /*4379*/          OPC_MorphNodeTo1, TARGET_VAL(MSP430::CALLr), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_Variadic1,
    2160             :                       MVT::i16, 1/*#Ops*/, 1, 
    2161             :                   // Src: (MSP430call GR16:i16:$dst) - Complexity = 3
    2162             :                   // Dst: (CALLr:i16 GR16:i16:$dst)
    2163             : /*4386*/        0, /*End of Scope*/
    2164             : /*4387*/      0, /*End of Scope*/
    2165             : /*4388*/    /*SwitchOpcode*/ 25|128,2/*281*/, TARGET_VAL(ISD::ADD),// ->4673
    2166             : /*4392*/      OPC_Scope, 48, /*->4442*/ // 5 children in Scope
    2167             : /*4394*/        OPC_RecordChild0, // #0 = $src
    2168             : /*4395*/        OPC_MoveChild1,
    2169             : /*4396*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2170             : /*4399*/        OPC_RecordMemRef,
    2171             : /*4400*/        OPC_RecordNode, // #1 = 'ld' chained node
    2172             : /*4401*/        OPC_CheckFoldableChainNode,
    2173             : /*4402*/        OPC_RecordChild1, // #2 = $src2
    2174             : /*4403*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2175             : /*4405*/        OPC_CheckPredicate, 1, // Predicate_load
    2176             : /*4407*/        OPC_MoveParent,
    2177             : /*4408*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->4425
    2178             : /*4411*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2179             : /*4414*/          OPC_EmitMergeInputChains1_1,
    2180             : /*4415*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD8rm), 0|OPFL_Chain|OPFL_MemRefs,
    2181             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2182             :                   // Src: (add:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2183             :                   // Dst: (ADD8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2184             : /*4425*/        /*SwitchType*/ 14, MVT::i16,// ->4441
    2185             : /*4427*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2186             : /*4430*/          OPC_EmitMergeInputChains1_1,
    2187             : /*4431*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16rm), 0|OPFL_Chain|OPFL_MemRefs,
    2188             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2189             :                   // Src: (add:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2190             :                   // Dst: (ADD16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2191             : /*4441*/        0, // EndSwitchType
    2192             : /*4442*/      /*Scope*/ 48, /*->4491*/
    2193             : /*4443*/        OPC_MoveChild0,
    2194             : /*4444*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2195             : /*4447*/        OPC_RecordMemRef,
    2196             : /*4448*/        OPC_RecordNode, // #0 = 'ld' chained node
    2197             : /*4449*/        OPC_CheckFoldableChainNode,
    2198             : /*4450*/        OPC_RecordChild1, // #1 = $src2
    2199             : /*4451*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2200             : /*4453*/        OPC_CheckPredicate, 1, // Predicate_load
    2201             : /*4455*/        OPC_MoveParent,
    2202             : /*4456*/        OPC_RecordChild1, // #2 = $src
    2203             : /*4457*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->4474
    2204             : /*4460*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    2205             : /*4463*/          OPC_EmitMergeInputChains1_0,
    2206             : /*4464*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD8rm), 0|OPFL_Chain|OPFL_MemRefs,
    2207             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    2208             :                   // Src: (add:i8 (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src) - Complexity = 16
    2209             :                   // Dst: (ADD8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2210             : /*4474*/        /*SwitchType*/ 14, MVT::i16,// ->4490
    2211             : /*4476*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    2212             : /*4479*/          OPC_EmitMergeInputChains1_0,
    2213             : /*4480*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16rm), 0|OPFL_Chain|OPFL_MemRefs,
    2214             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    2215             :                   // Src: (add:i16 (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src) - Complexity = 16
    2216             :                   // Dst: (ADD16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2217             : /*4490*/        0, // EndSwitchType
    2218             : /*4491*/      /*Scope*/ 57, /*->4549*/
    2219             : /*4492*/        OPC_RecordChild0, // #0 = $src
    2220             : /*4493*/        OPC_MoveChild1,
    2221             : /*4494*/        OPC_CheckOpcode, TARGET_VAL(MSP430ISD::Wrapper),
    2222             : /*4497*/        OPC_RecordChild0, // #1 = $src2
    2223             : /*4498*/        OPC_MoveChild0,
    2224             : /*4499*/        OPC_SwitchOpcode /*3 cases */, 13, TARGET_VAL(ISD::TargetGlobalAddress),// ->4516
    2225             : /*4503*/          OPC_MoveParent,
    2226             : /*4504*/          OPC_MoveParent,
    2227             : /*4505*/          OPC_CheckType, MVT::i16,
    2228             : /*4507*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16ri), 0,
    2229             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2230             :                   // Src: (add:i16 GR16:i16:$src, (MSP430Wrapper:i16 (tglobaladdr:i16):$src2)) - Complexity = 9
    2231             :                   // Dst: (ADD16ri:i16:i16 GR16:i16:$src, (tglobaladdr:i16):$src2)
    2232             : /*4516*/        /*SwitchOpcode*/ 13, TARGET_VAL(ISD::TargetExternalSymbol),// ->4532
    2233             : /*4519*/          OPC_MoveParent,
    2234             : /*4520*/          OPC_MoveParent,
    2235             : /*4521*/          OPC_CheckType, MVT::i16,
    2236             : /*4523*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16ri), 0,
    2237             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2238             :                   // Src: (add:i16 GR16:i16:$src, (MSP430Wrapper:i16 (texternalsym:i16):$src2)) - Complexity = 9
    2239             :                   // Dst: (ADD16ri:i16:i16 GR16:i16:$src, (texternalsym:i16):$src2)
    2240             : /*4532*/        /*SwitchOpcode*/ 13, TARGET_VAL(ISD::TargetBlockAddress),// ->4548
    2241             : /*4535*/          OPC_MoveParent,
    2242             : /*4536*/          OPC_MoveParent,
    2243             : /*4537*/          OPC_CheckType, MVT::i16,
    2244             : /*4539*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16ri), 0,
    2245             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2246             :                   // Src: (add:i16 GR16:i16:$src, (MSP430Wrapper:i16 (tblockaddress:i16):$src2)) - Complexity = 9
    2247             :                   // Dst: (ADD16ri:i16:i16 GR16:i16:$src, (tblockaddress:i16):$src2)
    2248             : /*4548*/        0, // EndSwitchOpcode
    2249             : /*4549*/      /*Scope*/ 59, /*->4609*/
    2250             : /*4550*/        OPC_MoveChild0,
    2251             : /*4551*/        OPC_CheckOpcode, TARGET_VAL(MSP430ISD::Wrapper),
    2252             : /*4554*/        OPC_RecordChild0, // #0 = $src2
    2253             : /*4555*/        OPC_MoveChild0,
    2254             : /*4556*/        OPC_SwitchOpcode /*3 cases */, 14, TARGET_VAL(ISD::TargetGlobalAddress),// ->4574
    2255             : /*4560*/          OPC_MoveParent,
    2256             : /*4561*/          OPC_MoveParent,
    2257             : /*4562*/          OPC_RecordChild1, // #1 = $src
    2258             : /*4563*/          OPC_CheckType, MVT::i16,
    2259             : /*4565*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16ri), 0,
    2260             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 1, 0, 
    2261             :                   // Src: (add:i16 (MSP430Wrapper:i16 (tglobaladdr:i16):$src2), GR16:i16:$src) - Complexity = 9
    2262             :                   // Dst: (ADD16ri:i16:i16 GR16:i16:$src, (tglobaladdr:i16):$src2)
    2263             : /*4574*/        /*SwitchOpcode*/ 14, TARGET_VAL(ISD::TargetExternalSymbol),// ->4591
    2264             : /*4577*/          OPC_MoveParent,
    2265             : /*4578*/          OPC_MoveParent,
    2266             : /*4579*/          OPC_RecordChild1, // #1 = $src
    2267             : /*4580*/          OPC_CheckType, MVT::i16,
    2268             : /*4582*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16ri), 0,
    2269             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 1, 0, 
    2270             :                   // Src: (add:i16 (MSP430Wrapper:i16 (texternalsym:i16):$src2), GR16:i16:$src) - Complexity = 9
    2271             :                   // Dst: (ADD16ri:i16:i16 GR16:i16:$src, (texternalsym:i16):$src2)
    2272             : /*4591*/        /*SwitchOpcode*/ 14, TARGET_VAL(ISD::TargetBlockAddress),// ->4608
    2273             : /*4594*/          OPC_MoveParent,
    2274             : /*4595*/          OPC_MoveParent,
    2275             : /*4596*/          OPC_RecordChild1, // #1 = $src
    2276             : /*4597*/          OPC_CheckType, MVT::i16,
    2277             : /*4599*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16ri), 0,
    2278             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 1, 0, 
    2279             :                   // Src: (add:i16 (MSP430Wrapper:i16 (tblockaddress:i16):$src2), GR16:i16:$src) - Complexity = 9
    2280             :                   // Dst: (ADD16ri:i16:i16 GR16:i16:$src, (tblockaddress:i16):$src2)
    2281             : /*4608*/        0, // EndSwitchOpcode
    2282             : /*4609*/      /*Scope*/ 62, /*->4672*/
    2283             : /*4610*/        OPC_RecordChild0, // #0 = $src
    2284             : /*4611*/        OPC_RecordChild1, // #1 = $src2
    2285             : /*4612*/        OPC_Scope, 33, /*->4647*/ // 3 children in Scope
    2286             : /*4614*/          OPC_MoveChild1,
    2287             : /*4615*/          OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    2288             : /*4618*/          OPC_MoveParent,
    2289             : /*4619*/          OPC_SwitchType /*2 cases */, 11, MVT::i8,// ->4633
    2290             : /*4622*/            OPC_EmitConvertToTarget, 1,
    2291             : /*4624*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD8ri), 0,
    2292             :                         MVT::i8, MVT::i16, 2/*#Ops*/, 0, 2, 
    2293             :                     // Src: (add:i8 GR8:i8:$src, (imm:i8):$src2) - Complexity = 6
    2294             :                     // Dst: (ADD8ri:i8:i16 GR8:i8:$src, (imm:i8):$src2)
    2295             : /*4633*/          /*SwitchType*/ 11, MVT::i16,// ->4646
    2296             : /*4635*/            OPC_EmitConvertToTarget, 1,
    2297             : /*4637*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16ri), 0,
    2298             :                         MVT::i16, MVT::i16, 2/*#Ops*/, 0, 2, 
    2299             :                     // Src: (add:i16 GR16:i16:$src, (imm:i16):$src2) - Complexity = 6
    2300             :                     // Dst: (ADD16ri:i16:i16 GR16:i16:$src, (imm:i16):$src2)
    2301             : /*4646*/          0, // EndSwitchType
    2302             : /*4647*/        /*Scope*/ 11, /*->4659*/
    2303             : /*4648*/          OPC_CheckType, MVT::i8,
    2304             : /*4650*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD8rr), 0,
    2305             :                       MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    2306             :                   // Src: (add:i8 GR8:i8:$src, GR8:i8:$src2) - Complexity = 3
    2307             :                   // Dst: (ADD8rr:i8:i16 GR8:i8:$src, GR8:i8:$src2)
    2308             : /*4659*/        /*Scope*/ 11, /*->4671*/
    2309             : /*4660*/          OPC_CheckType, MVT::i16,
    2310             : /*4662*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16rr), 0,
    2311             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2312             :                   // Src: (add:i16 GR16:i16:$src, GR16:i16:$src2) - Complexity = 3
    2313             :                   // Dst: (ADD16rr:i16:i16 GR16:i16:$src, GR16:i16:$src2)
    2314             : /*4671*/        0, /*End of Scope*/
    2315             : /*4672*/      0, /*End of Scope*/
    2316             : /*4673*/    /*SwitchOpcode*/ 36|128,1/*164*/, TARGET_VAL(ISD::ADDE),// ->4841
    2317             : /*4677*/      OPC_CaptureGlueInput,
    2318             : /*4678*/      OPC_Scope, 48, /*->4728*/ // 3 children in Scope
    2319             : /*4680*/        OPC_RecordChild0, // #0 = $src
    2320             : /*4681*/        OPC_MoveChild1,
    2321             : /*4682*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2322             : /*4685*/        OPC_RecordMemRef,
    2323             : /*4686*/        OPC_RecordNode, // #1 = 'ld' chained node
    2324             : /*4687*/        OPC_CheckFoldableChainNode,
    2325             : /*4688*/        OPC_RecordChild1, // #2 = $src2
    2326             : /*4689*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2327             : /*4691*/        OPC_CheckPredicate, 1, // Predicate_load
    2328             : /*4693*/        OPC_MoveParent,
    2329             : /*4694*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->4711
    2330             : /*4697*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2331             : /*4700*/          OPC_EmitMergeInputChains1_1,
    2332             : /*4701*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADC8rm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    2333             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2334             :                   // Src: (adde:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2335             :                   // Dst: (ADC8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2336             : /*4711*/        /*SwitchType*/ 14, MVT::i16,// ->4727
    2337             : /*4713*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2338             : /*4716*/          OPC_EmitMergeInputChains1_1,
    2339             : /*4717*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADC16rm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    2340             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2341             :                   // Src: (adde:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2342             :                   // Dst: (ADC16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2343             : /*4727*/        0, // EndSwitchType
    2344             : /*4728*/      /*Scope*/ 48, /*->4777*/
    2345             : /*4729*/        OPC_MoveChild0,
    2346             : /*4730*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2347             : /*4733*/        OPC_RecordMemRef,
    2348             : /*4734*/        OPC_RecordNode, // #0 = 'ld' chained node
    2349             : /*4735*/        OPC_CheckFoldableChainNode,
    2350             : /*4736*/        OPC_RecordChild1, // #1 = $src2
    2351             : /*4737*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2352             : /*4739*/        OPC_CheckPredicate, 1, // Predicate_load
    2353             : /*4741*/        OPC_MoveParent,
    2354             : /*4742*/        OPC_RecordChild1, // #2 = $src
    2355             : /*4743*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->4760
    2356             : /*4746*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    2357             : /*4749*/          OPC_EmitMergeInputChains1_0,
    2358             : /*4750*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADC8rm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    2359             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    2360             :                   // Src: (adde:i8 (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src) - Complexity = 16
    2361             :                   // Dst: (ADC8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2362             : /*4760*/        /*SwitchType*/ 14, MVT::i16,// ->4776
    2363             : /*4762*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    2364             : /*4765*/          OPC_EmitMergeInputChains1_0,
    2365             : /*4766*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADC16rm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    2366             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    2367             :                   // Src: (adde:i16 (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src) - Complexity = 16
    2368             :                   // Dst: (ADC16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2369             : /*4776*/        0, // EndSwitchType
    2370             : /*4777*/      /*Scope*/ 62, /*->4840*/
    2371             : /*4778*/        OPC_RecordChild0, // #0 = $src
    2372             : /*4779*/        OPC_RecordChild1, // #1 = $src2
    2373             : /*4780*/        OPC_Scope, 33, /*->4815*/ // 3 children in Scope
    2374             : /*4782*/          OPC_MoveChild1,
    2375             : /*4783*/          OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    2376             : /*4786*/          OPC_MoveParent,
    2377             : /*4787*/          OPC_SwitchType /*2 cases */, 11, MVT::i8,// ->4801
    2378             : /*4790*/            OPC_EmitConvertToTarget, 1,
    2379             : /*4792*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADC8ri), 0|OPFL_GlueInput|OPFL_GlueOutput,
    2380             :                         MVT::i8, MVT::i16, 2/*#Ops*/, 0, 2, 
    2381             :                     // Src: (adde:i8 GR8:i8:$src, (imm:i8):$src2) - Complexity = 6
    2382             :                     // Dst: (ADC8ri:i8:i16 GR8:i8:$src, (imm:i8):$src2)
    2383             : /*4801*/          /*SwitchType*/ 11, MVT::i16,// ->4814
    2384             : /*4803*/            OPC_EmitConvertToTarget, 1,
    2385             : /*4805*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADC16ri), 0|OPFL_GlueInput|OPFL_GlueOutput,
    2386             :                         MVT::i16, MVT::i16, 2/*#Ops*/, 0, 2, 
    2387             :                     // Src: (adde:i16 GR16:i16:$src, (imm:i16):$src2) - Complexity = 6
    2388             :                     // Dst: (ADC16ri:i16:i16 GR16:i16:$src, (imm:i16):$src2)
    2389             : /*4814*/          0, // EndSwitchType
    2390             : /*4815*/        /*Scope*/ 11, /*->4827*/
    2391             : /*4816*/          OPC_CheckType, MVT::i8,
    2392             : /*4818*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADC8rr), 0|OPFL_GlueInput|OPFL_GlueOutput,
    2393             :                       MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    2394             :                   // Src: (adde:i8 GR8:i8:$src, GR8:i8:$src2) - Complexity = 3
    2395             :                   // Dst: (ADC8rr:i8:i16 GR8:i8:$src, GR8:i8:$src2)
    2396             : /*4827*/        /*Scope*/ 11, /*->4839*/
    2397             : /*4828*/          OPC_CheckType, MVT::i16,
    2398             : /*4830*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADC16rr), 0|OPFL_GlueInput|OPFL_GlueOutput,
    2399             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2400             :                   // Src: (adde:i16 GR16:i16:$src, GR16:i16:$src2) - Complexity = 3
    2401             :                   // Dst: (ADC16rr:i16:i16 GR16:i16:$src, GR16:i16:$src2)
    2402             : /*4839*/        0, /*End of Scope*/
    2403             : /*4840*/      0, /*End of Scope*/
    2404             : /*4841*/    /*SwitchOpcode*/ 35|128,1/*163*/, TARGET_VAL(ISD::OR),// ->5008
    2405             : /*4845*/      OPC_Scope, 48, /*->4895*/ // 3 children in Scope
    2406             : /*4847*/        OPC_RecordChild0, // #0 = $src
    2407             : /*4848*/        OPC_MoveChild1,
    2408             : /*4849*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2409             : /*4852*/        OPC_RecordMemRef,
    2410             : /*4853*/        OPC_RecordNode, // #1 = 'ld' chained node
    2411             : /*4854*/        OPC_CheckFoldableChainNode,
    2412             : /*4855*/        OPC_RecordChild1, // #2 = $src2
    2413             : /*4856*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2414             : /*4858*/        OPC_CheckPredicate, 1, // Predicate_load
    2415             : /*4860*/        OPC_MoveParent,
    2416             : /*4861*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->4878
    2417             : /*4864*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2418             : /*4867*/          OPC_EmitMergeInputChains1_1,
    2419             : /*4868*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::OR8rm), 0|OPFL_Chain|OPFL_MemRefs,
    2420             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2421             :                   // Src: (or:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2422             :                   // Dst: (OR8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2423             : /*4878*/        /*SwitchType*/ 14, MVT::i16,// ->4894
    2424             : /*4880*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2425             : /*4883*/          OPC_EmitMergeInputChains1_1,
    2426             : /*4884*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::OR16rm), 0|OPFL_Chain|OPFL_MemRefs,
    2427             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2428             :                   // Src: (or:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2429             :                   // Dst: (OR16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2430             : /*4894*/        0, // EndSwitchType
    2431             : /*4895*/      /*Scope*/ 48, /*->4944*/
    2432             : /*4896*/        OPC_MoveChild0,
    2433             : /*4897*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2434             : /*4900*/        OPC_RecordMemRef,
    2435             : /*4901*/        OPC_RecordNode, // #0 = 'ld' chained node
    2436             : /*4902*/        OPC_CheckFoldableChainNode,
    2437             : /*4903*/        OPC_RecordChild1, // #1 = $src2
    2438             : /*4904*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2439             : /*4906*/        OPC_CheckPredicate, 1, // Predicate_load
    2440             : /*4908*/        OPC_MoveParent,
    2441             : /*4909*/        OPC_RecordChild1, // #2 = $src
    2442             : /*4910*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->4927
    2443             : /*4913*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    2444             : /*4916*/          OPC_EmitMergeInputChains1_0,
    2445             : /*4917*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::OR8rm), 0|OPFL_Chain|OPFL_MemRefs,
    2446             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    2447             :                   // Src: (or:i8 (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src) - Complexity = 16
    2448             :                   // Dst: (OR8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2449             : /*4927*/        /*SwitchType*/ 14, MVT::i16,// ->4943
    2450             : /*4929*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    2451             : /*4932*/          OPC_EmitMergeInputChains1_0,
    2452             : /*4933*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::OR16rm), 0|OPFL_Chain|OPFL_MemRefs,
    2453             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    2454             :                   // Src: (or:i16 (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src) - Complexity = 16
    2455             :                   // Dst: (OR16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2456             : /*4943*/        0, // EndSwitchType
    2457             : /*4944*/      /*Scope*/ 62, /*->5007*/
    2458             : /*4945*/        OPC_RecordChild0, // #0 = $src
    2459             : /*4946*/        OPC_RecordChild1, // #1 = $src2
    2460             : /*4947*/        OPC_Scope, 33, /*->4982*/ // 3 children in Scope
    2461             : /*4949*/          OPC_MoveChild1,
    2462             : /*4950*/          OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    2463             : /*4953*/          OPC_MoveParent,
    2464             : /*4954*/          OPC_SwitchType /*2 cases */, 11, MVT::i8,// ->4968
    2465             : /*4957*/            OPC_EmitConvertToTarget, 1,
    2466             : /*4959*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::OR8ri), 0,
    2467             :                         MVT::i8, MVT::i16, 2/*#Ops*/, 0, 2, 
    2468             :                     // Src: (or:i8 GR8:i8:$src, (imm:i8):$src2) - Complexity = 6
    2469             :                     // Dst: (OR8ri:i8:i16 GR8:i8:$src, (imm:i8):$src2)
    2470             : /*4968*/          /*SwitchType*/ 11, MVT::i16,// ->4981
    2471             : /*4970*/            OPC_EmitConvertToTarget, 1,
    2472             : /*4972*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::OR16ri), 0,
    2473             :                         MVT::i16, MVT::i16, 2/*#Ops*/, 0, 2, 
    2474             :                     // Src: (or:i16 GR16:i16:$src, (imm:i16):$src2) - Complexity = 6
    2475             :                     // Dst: (OR16ri:i16:i16 GR16:i16:$src, (imm:i16):$src2)
    2476             : /*4981*/          0, // EndSwitchType
    2477             : /*4982*/        /*Scope*/ 11, /*->4994*/
    2478             : /*4983*/          OPC_CheckType, MVT::i8,
    2479             : /*4985*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::OR8rr), 0,
    2480             :                       MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    2481             :                   // Src: (or:i8 GR8:i8:$src, GR8:i8:$src2) - Complexity = 3
    2482             :                   // Dst: (OR8rr:i8:i16 GR8:i8:$src, GR8:i8:$src2)
    2483             : /*4994*/        /*Scope*/ 11, /*->5006*/
    2484             : /*4995*/          OPC_CheckType, MVT::i16,
    2485             : /*4997*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::OR16rr), 0,
    2486             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2487             :                   // Src: (or:i16 GR16:i16:$src, GR16:i16:$src2) - Complexity = 3
    2488             :                   // Dst: (OR16rr:i16:i16 GR16:i16:$src, GR16:i16:$src2)
    2489             : /*5006*/        0, /*End of Scope*/
    2490             : /*5007*/      0, /*End of Scope*/
    2491             : /*5008*/    /*SwitchOpcode*/ 35|128,1/*163*/, TARGET_VAL(ISD::XOR),// ->5175
    2492             : /*5012*/      OPC_Scope, 48, /*->5062*/ // 3 children in Scope
    2493             : /*5014*/        OPC_RecordChild0, // #0 = $src
    2494             : /*5015*/        OPC_MoveChild1,
    2495             : /*5016*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2496             : /*5019*/        OPC_RecordMemRef,
    2497             : /*5020*/        OPC_RecordNode, // #1 = 'ld' chained node
    2498             : /*5021*/        OPC_CheckFoldableChainNode,
    2499             : /*5022*/        OPC_RecordChild1, // #2 = $src2
    2500             : /*5023*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2501             : /*5025*/        OPC_CheckPredicate, 1, // Predicate_load
    2502             : /*5027*/        OPC_MoveParent,
    2503             : /*5028*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->5045
    2504             : /*5031*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2505             : /*5034*/          OPC_EmitMergeInputChains1_1,
    2506             : /*5035*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::XOR8rm), 0|OPFL_Chain|OPFL_MemRefs,
    2507             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2508             :                   // Src: (xor:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2509             :                   // Dst: (XOR8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2510             : /*5045*/        /*SwitchType*/ 14, MVT::i16,// ->5061
    2511             : /*5047*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2512             : /*5050*/          OPC_EmitMergeInputChains1_1,
    2513             : /*5051*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::XOR16rm), 0|OPFL_Chain|OPFL_MemRefs,
    2514             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2515             :                   // Src: (xor:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2516             :                   // Dst: (XOR16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2517             : /*5061*/        0, // EndSwitchType
    2518             : /*5062*/      /*Scope*/ 48, /*->5111*/
    2519             : /*5063*/        OPC_MoveChild0,
    2520             : /*5064*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2521             : /*5067*/        OPC_RecordMemRef,
    2522             : /*5068*/        OPC_RecordNode, // #0 = 'ld' chained node
    2523             : /*5069*/        OPC_CheckFoldableChainNode,
    2524             : /*5070*/        OPC_RecordChild1, // #1 = $src2
    2525             : /*5071*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2526             : /*5073*/        OPC_CheckPredicate, 1, // Predicate_load
    2527             : /*5075*/        OPC_MoveParent,
    2528             : /*5076*/        OPC_RecordChild1, // #2 = $src
    2529             : /*5077*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->5094
    2530             : /*5080*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    2531             : /*5083*/          OPC_EmitMergeInputChains1_0,
    2532             : /*5084*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::XOR8rm), 0|OPFL_Chain|OPFL_MemRefs,
    2533             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    2534             :                   // Src: (xor:i8 (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src) - Complexity = 16
    2535             :                   // Dst: (XOR8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2536             : /*5094*/        /*SwitchType*/ 14, MVT::i16,// ->5110
    2537             : /*5096*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    2538             : /*5099*/          OPC_EmitMergeInputChains1_0,
    2539             : /*5100*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::XOR16rm), 0|OPFL_Chain|OPFL_MemRefs,
    2540             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    2541             :                   // Src: (xor:i16 (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src) - Complexity = 16
    2542             :                   // Dst: (XOR16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2543             : /*5110*/        0, // EndSwitchType
    2544             : /*5111*/      /*Scope*/ 62, /*->5174*/
    2545             : /*5112*/        OPC_RecordChild0, // #0 = $src
    2546             : /*5113*/        OPC_RecordChild1, // #1 = $src2
    2547             : /*5114*/        OPC_Scope, 33, /*->5149*/ // 3 children in Scope
    2548             : /*5116*/          OPC_MoveChild1,
    2549             : /*5117*/          OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    2550             : /*5120*/          OPC_MoveParent,
    2551             : /*5121*/          OPC_SwitchType /*2 cases */, 11, MVT::i8,// ->5135
    2552             : /*5124*/            OPC_EmitConvertToTarget, 1,
    2553             : /*5126*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::XOR8ri), 0,
    2554             :                         MVT::i8, MVT::i16, 2/*#Ops*/, 0, 2, 
    2555             :                     // Src: (xor:i8 GR8:i8:$src, (imm:i8):$src2) - Complexity = 6
    2556             :                     // Dst: (XOR8ri:i8:i16 GR8:i8:$src, (imm:i8):$src2)
    2557             : /*5135*/          /*SwitchType*/ 11, MVT::i16,// ->5148
    2558             : /*5137*/            OPC_EmitConvertToTarget, 1,
    2559             : /*5139*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::XOR16ri), 0,
    2560             :                         MVT::i16, MVT::i16, 2/*#Ops*/, 0, 2, 
    2561             :                     // Src: (xor:i16 GR16:i16:$src, (imm:i16):$src2) - Complexity = 6
    2562             :                     // Dst: (XOR16ri:i16:i16 GR16:i16:$src, (imm:i16):$src2)
    2563             : /*5148*/          0, // EndSwitchType
    2564             : /*5149*/        /*Scope*/ 11, /*->5161*/
    2565             : /*5150*/          OPC_CheckType, MVT::i8,
    2566             : /*5152*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::XOR8rr), 0,
    2567             :                       MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    2568             :                   // Src: (xor:i8 GR8:i8:$src, GR8:i8:$src2) - Complexity = 3
    2569             :                   // Dst: (XOR8rr:i8:i16 GR8:i8:$src, GR8:i8:$src2)
    2570             : /*5161*/        /*Scope*/ 11, /*->5173*/
    2571             : /*5162*/          OPC_CheckType, MVT::i16,
    2572             : /*5164*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::XOR16rr), 0,
    2573             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2574             :                   // Src: (xor:i16 GR16:i16:$src, GR16:i16:$src2) - Complexity = 3
    2575             :                   // Dst: (XOR16rr:i16:i16 GR16:i16:$src, GR16:i16:$src2)
    2576             : /*5173*/        0, /*End of Scope*/
    2577             : /*5174*/      0, /*End of Scope*/
    2578             : /*5175*/    /*SwitchOpcode*/ 113, TARGET_VAL(ISD::SUB),// ->5291
    2579             : /*5178*/      OPC_RecordChild0, // #0 = $src
    2580             : /*5179*/      OPC_Scope, 47, /*->5228*/ // 2 children in Scope
    2581             : /*5181*/        OPC_MoveChild1,
    2582             : /*5182*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2583             : /*5185*/        OPC_RecordMemRef,
    2584             : /*5186*/        OPC_RecordNode, // #1 = 'ld' chained node
    2585             : /*5187*/        OPC_CheckFoldableChainNode,
    2586             : /*5188*/        OPC_RecordChild1, // #2 = $src2
    2587             : /*5189*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2588             : /*5191*/        OPC_CheckPredicate, 1, // Predicate_load
    2589             : /*5193*/        OPC_MoveParent,
    2590             : /*5194*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->5211
    2591             : /*5197*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2592             : /*5200*/          OPC_EmitMergeInputChains1_1,
    2593             : /*5201*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB8rm), 0|OPFL_Chain|OPFL_MemRefs,
    2594             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2595             :                   // Src: (sub:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2596             :                   // Dst: (SUB8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2597             : /*5211*/        /*SwitchType*/ 14, MVT::i16,// ->5227
    2598             : /*5213*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2599             : /*5216*/          OPC_EmitMergeInputChains1_1,
    2600             : /*5217*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB16rm), 0|OPFL_Chain|OPFL_MemRefs,
    2601             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2602             :                   // Src: (sub:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2603             :                   // Dst: (SUB16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2604             : /*5227*/        0, // EndSwitchType
    2605             : /*5228*/      /*Scope*/ 61, /*->5290*/
    2606             : /*5229*/        OPC_RecordChild1, // #1 = $src2
    2607             : /*5230*/        OPC_Scope, 33, /*->5265*/ // 3 children in Scope
    2608             : /*5232*/          OPC_MoveChild1,
    2609             : /*5233*/          OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    2610             : /*5236*/          OPC_MoveParent,
    2611             : /*5237*/          OPC_SwitchType /*2 cases */, 11, MVT::i8,// ->5251
    2612             : /*5240*/            OPC_EmitConvertToTarget, 1,
    2613             : /*5242*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB8ri), 0,
    2614             :                         MVT::i8, MVT::i16, 2/*#Ops*/, 0, 2, 
    2615             :                     // Src: (sub:i8 GR8:i8:$src, (imm:i8):$src2) - Complexity = 6
    2616             :                     // Dst: (SUB8ri:i8:i16 GR8:i8:$src, (imm:i8):$src2)
    2617             : /*5251*/          /*SwitchType*/ 11, MVT::i16,// ->5264
    2618             : /*5253*/            OPC_EmitConvertToTarget, 1,
    2619             : /*5255*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB16ri), 0,
    2620             :                         MVT::i16, MVT::i16, 2/*#Ops*/, 0, 2, 
    2621             :                     // Src: (sub:i16 GR16:i16:$src, (imm:i16):$src2) - Complexity = 6
    2622             :                     // Dst: (SUB16ri:i16:i16 GR16:i16:$src, (imm:i16):$src2)
    2623             : /*5264*/          0, // EndSwitchType
    2624             : /*5265*/        /*Scope*/ 11, /*->5277*/
    2625             : /*5266*/          OPC_CheckType, MVT::i8,
    2626             : /*5268*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB8rr), 0,
    2627             :                       MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    2628             :                   // Src: (sub:i8 GR8:i8:$src, GR8:i8:$src2) - Complexity = 3
    2629             :                   // Dst: (SUB8rr:i8:i16 GR8:i8:$src, GR8:i8:$src2)
    2630             : /*5277*/        /*Scope*/ 11, /*->5289*/
    2631             : /*5278*/          OPC_CheckType, MVT::i16,
    2632             : /*5280*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB16rr), 0,
    2633             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2634             :                   // Src: (sub:i16 GR16:i16:$src, GR16:i16:$src2) - Complexity = 3
    2635             :                   // Dst: (SUB16rr:i16:i16 GR16:i16:$src, GR16:i16:$src2)
    2636             : /*5289*/        0, /*End of Scope*/
    2637             : /*5290*/      0, /*End of Scope*/
    2638             : /*5291*/    /*SwitchOpcode*/ 114, TARGET_VAL(ISD::SUBE),// ->5408
    2639             : /*5294*/      OPC_CaptureGlueInput,
    2640             : /*5295*/      OPC_RecordChild0, // #0 = $src
    2641             : /*5296*/      OPC_Scope, 47, /*->5345*/ // 2 children in Scope
    2642             : /*5298*/        OPC_MoveChild1,
    2643             : /*5299*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2644             : /*5302*/        OPC_RecordMemRef,
    2645             : /*5303*/        OPC_RecordNode, // #1 = 'ld' chained node
    2646             : /*5304*/        OPC_CheckFoldableChainNode,
    2647             : /*5305*/        OPC_RecordChild1, // #2 = $src2
    2648             : /*5306*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2649             : /*5308*/        OPC_CheckPredicate, 1, // Predicate_load
    2650             : /*5310*/        OPC_MoveParent,
    2651             : /*5311*/        OPC_SwitchType /*2 cases */, 14, MVT::i8,// ->5328
    2652             : /*5314*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2653             : /*5317*/          OPC_EmitMergeInputChains1_1,
    2654             : /*5318*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SBC8rm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    2655             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2656             :                   // Src: (sube:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2657             :                   // Dst: (SBC8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2658             : /*5328*/        /*SwitchType*/ 14, MVT::i16,// ->5344
    2659             : /*5330*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2660             : /*5333*/          OPC_EmitMergeInputChains1_1,
    2661             : /*5334*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SBC16rm), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput|OPFL_MemRefs,
    2662             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2663             :                   // Src: (sube:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2664             :                   // Dst: (SBC16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2665             : /*5344*/        0, // EndSwitchType
    2666             : /*5345*/      /*Scope*/ 61, /*->5407*/
    2667             : /*5346*/        OPC_RecordChild1, // #1 = $src2
    2668             : /*5347*/        OPC_Scope, 33, /*->5382*/ // 3 children in Scope
    2669             : /*5349*/          OPC_MoveChild1,
    2670             : /*5350*/          OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    2671             : /*5353*/          OPC_MoveParent,
    2672             : /*5354*/          OPC_SwitchType /*2 cases */, 11, MVT::i8,// ->5368
    2673             : /*5357*/            OPC_EmitConvertToTarget, 1,
    2674             : /*5359*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::SBC8ri), 0|OPFL_GlueInput|OPFL_GlueOutput,
    2675             :                         MVT::i8, MVT::i16, 2/*#Ops*/, 0, 2, 
    2676             :                     // Src: (sube:i8 GR8:i8:$src, (imm:i8):$src2) - Complexity = 6
    2677             :                     // Dst: (SBC8ri:i8:i16 GR8:i8:$src, (imm:i8):$src2)
    2678             : /*5368*/          /*SwitchType*/ 11, MVT::i16,// ->5381
    2679             : /*5370*/            OPC_EmitConvertToTarget, 1,
    2680             : /*5372*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::SBC16ri), 0|OPFL_GlueInput|OPFL_GlueOutput,
    2681             :                         MVT::i16, MVT::i16, 2/*#Ops*/, 0, 2, 
    2682             :                     // Src: (sube:i16 GR16:i16:$src, (imm:i16):$src2) - Complexity = 6
    2683             :                     // Dst: (SBC16ri:i16:i16 GR16:i16:$src, (imm:i16):$src2)
    2684             : /*5381*/          0, // EndSwitchType
    2685             : /*5382*/        /*Scope*/ 11, /*->5394*/
    2686             : /*5383*/          OPC_CheckType, MVT::i8,
    2687             : /*5385*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SBC8rr), 0|OPFL_GlueInput|OPFL_GlueOutput,
    2688             :                       MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    2689             :                   // Src: (sube:i8 GR8:i8:$src, GR8:i8:$src2) - Complexity = 3
    2690             :                   // Dst: (SBC8rr:i8:i16 GR8:i8:$src, GR8:i8:$src2)
    2691             : /*5394*/        /*Scope*/ 11, /*->5406*/
    2692             : /*5395*/          OPC_CheckType, MVT::i16,
    2693             : /*5397*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SBC16rr), 0|OPFL_GlueInput|OPFL_GlueOutput,
    2694             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2695             :                   // Src: (sube:i16 GR16:i16:$src, GR16:i16:$src2) - Complexity = 3
    2696             :                   // Dst: (SBC16rr:i16:i16 GR16:i16:$src, GR16:i16:$src2)
    2697             : /*5406*/        0, /*End of Scope*/
    2698             : /*5407*/      0, /*End of Scope*/
    2699             : /*5408*/    /*SwitchOpcode*/ 35|128,1/*163*/, TARGET_VAL(ISD::ADDC),// ->5575
    2700             : /*5412*/      OPC_Scope, 48, /*->5462*/ // 3 children in Scope
    2701             : /*5414*/        OPC_RecordChild0, // #0 = $src
    2702             : /*5415*/        OPC_MoveChild1,
    2703             : /*5416*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2704             : /*5419*/        OPC_RecordMemRef,
    2705             : /*5420*/        OPC_RecordNode, // #1 = 'ld' chained node
    2706             : /*5421*/        OPC_CheckFoldableChainNode,
    2707             : /*5422*/        OPC_RecordChild1, // #2 = $src2
    2708             : /*5423*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2709             : /*5425*/        OPC_CheckPredicate, 1, // Predicate_load
    2710             : /*5427*/        OPC_MoveParent,
    2711             : /*5428*/        OPC_SwitchType /*2 cases */, 14, MVT::i16,// ->5445
    2712             : /*5431*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2713             : /*5434*/          OPC_EmitMergeInputChains1_1,
    2714             : /*5435*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16rm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    2715             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2716             :                   // Src: (addc:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2717             :                   // Dst: (ADD16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2718             : /*5445*/        /*SwitchType*/ 14, MVT::i8,// ->5461
    2719             : /*5447*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2720             : /*5450*/          OPC_EmitMergeInputChains1_1,
    2721             : /*5451*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD8rm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    2722             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2723             :                   // Src: (addc:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2724             :                   // Dst: (ADD8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2725             : /*5461*/        0, // EndSwitchType
    2726             : /*5462*/      /*Scope*/ 48, /*->5511*/
    2727             : /*5463*/        OPC_MoveChild0,
    2728             : /*5464*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2729             : /*5467*/        OPC_RecordMemRef,
    2730             : /*5468*/        OPC_RecordNode, // #0 = 'ld' chained node
    2731             : /*5469*/        OPC_CheckFoldableChainNode,
    2732             : /*5470*/        OPC_RecordChild1, // #1 = $src2
    2733             : /*5471*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2734             : /*5473*/        OPC_CheckPredicate, 1, // Predicate_load
    2735             : /*5475*/        OPC_MoveParent,
    2736             : /*5476*/        OPC_RecordChild1, // #2 = $src
    2737             : /*5477*/        OPC_SwitchType /*2 cases */, 14, MVT::i16,// ->5494
    2738             : /*5480*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    2739             : /*5483*/          OPC_EmitMergeInputChains1_0,
    2740             : /*5484*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16rm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    2741             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    2742             :                   // Src: (addc:i16 (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR16:i16:$src) - Complexity = 16
    2743             :                   // Dst: (ADD16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2744             : /*5494*/        /*SwitchType*/ 14, MVT::i8,// ->5510
    2745             : /*5496*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src2 #3 #4
    2746             : /*5499*/          OPC_EmitMergeInputChains1_0,
    2747             : /*5500*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD8rm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    2748             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 2, 3, 4, 
    2749             :                   // Src: (addc:i8 (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>, GR8:i8:$src) - Complexity = 16
    2750             :                   // Dst: (ADD8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2751             : /*5510*/        0, // EndSwitchType
    2752             : /*5511*/      /*Scope*/ 62, /*->5574*/
    2753             : /*5512*/        OPC_RecordChild0, // #0 = $src
    2754             : /*5513*/        OPC_RecordChild1, // #1 = $src2
    2755             : /*5514*/        OPC_Scope, 33, /*->5549*/ // 3 children in Scope
    2756             : /*5516*/          OPC_MoveChild1,
    2757             : /*5517*/          OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    2758             : /*5520*/          OPC_MoveParent,
    2759             : /*5521*/          OPC_SwitchType /*2 cases */, 11, MVT::i16,// ->5535
    2760             : /*5524*/            OPC_EmitConvertToTarget, 1,
    2761             : /*5526*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16ri), 0|OPFL_GlueOutput,
    2762             :                         MVT::i16, MVT::i16, 2/*#Ops*/, 0, 2, 
    2763             :                     // Src: (addc:i16 GR16:i16:$src, (imm:i16):$src2) - Complexity = 6
    2764             :                     // Dst: (ADD16ri:i16:i16 GR16:i16:$src, (imm:i16):$src2)
    2765             : /*5535*/          /*SwitchType*/ 11, MVT::i8,// ->5548
    2766             : /*5537*/            OPC_EmitConvertToTarget, 1,
    2767             : /*5539*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD8ri), 0|OPFL_GlueOutput,
    2768             :                         MVT::i8, MVT::i16, 2/*#Ops*/, 0, 2, 
    2769             :                     // Src: (addc:i8 GR8:i8:$src, (imm:i8):$src2) - Complexity = 6
    2770             :                     // Dst: (ADD8ri:i8:i16 GR8:i8:$src, (imm:i8):$src2)
    2771             : /*5548*/          0, // EndSwitchType
    2772             : /*5549*/        /*Scope*/ 11, /*->5561*/
    2773             : /*5550*/          OPC_CheckType, MVT::i16,
    2774             : /*5552*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD16rr), 0|OPFL_GlueOutput,
    2775             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2776             :                   // Src: (addc:i16 GR16:i16:$src, GR16:i16:$src2) - Complexity = 3
    2777             :                   // Dst: (ADD16rr:i16:i16 GR16:i16:$src, GR16:i16:$src2)
    2778             : /*5561*/        /*Scope*/ 11, /*->5573*/
    2779             : /*5562*/          OPC_CheckType, MVT::i8,
    2780             : /*5564*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::ADD8rr), 0|OPFL_GlueOutput,
    2781             :                       MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    2782             :                   // Src: (addc:i8 GR8:i8:$src, GR8:i8:$src2) - Complexity = 3
    2783             :                   // Dst: (ADD8rr:i8:i16 GR8:i8:$src, GR8:i8:$src2)
    2784             : /*5573*/        0, /*End of Scope*/
    2785             : /*5574*/      0, /*End of Scope*/
    2786             : /*5575*/    /*SwitchOpcode*/ 113, TARGET_VAL(ISD::SUBC),// ->5691
    2787             : /*5578*/      OPC_RecordChild0, // #0 = $src
    2788             : /*5579*/      OPC_Scope, 47, /*->5628*/ // 2 children in Scope
    2789             : /*5581*/        OPC_MoveChild1,
    2790             : /*5582*/        OPC_CheckOpcode, TARGET_VAL(ISD::LOAD),
    2791             : /*5585*/        OPC_RecordMemRef,
    2792             : /*5586*/        OPC_RecordNode, // #1 = 'ld' chained node
    2793             : /*5587*/        OPC_CheckFoldableChainNode,
    2794             : /*5588*/        OPC_RecordChild1, // #2 = $src2
    2795             : /*5589*/        OPC_CheckPredicate, 0, // Predicate_unindexedload
    2796             : /*5591*/        OPC_CheckPredicate, 1, // Predicate_load
    2797             : /*5593*/        OPC_MoveParent,
    2798             : /*5594*/        OPC_SwitchType /*2 cases */, 14, MVT::i16,// ->5611
    2799             : /*5597*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2800             : /*5600*/          OPC_EmitMergeInputChains1_1,
    2801             : /*5601*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB16rm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    2802             :                       MVT::i16, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2803             :                   // Src: (subc:i16 GR16:i16:$src, (ld:i16 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2804             :                   // Dst: (SUB16rm:i16:i16 GR16:i16:$src, addr:i16:$src2)
    2805             : /*5611*/        /*SwitchType*/ 14, MVT::i8,// ->5627
    2806             : /*5613*/          OPC_CheckComplexPat, /*CP*/0, /*#*/2, // SelectAddr:$src2 #3 #4
    2807             : /*5616*/          OPC_EmitMergeInputChains1_1,
    2808             : /*5617*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB8rm), 0|OPFL_Chain|OPFL_GlueOutput|OPFL_MemRefs,
    2809             :                       MVT::i8, MVT::i16, 3/*#Ops*/, 0, 3, 4, 
    2810             :                   // Src: (subc:i8 GR8:i8:$src, (ld:i8 addr:iPTR:$src2)<<P:Predicate_unindexedload>><<P:Predicate_load>>) - Complexity = 16
    2811             :                   // Dst: (SUB8rm:i8:i16 GR8:i8:$src, addr:i16:$src2)
    2812             : /*5627*/        0, // EndSwitchType
    2813             : /*5628*/      /*Scope*/ 61, /*->5690*/
    2814             : /*5629*/        OPC_RecordChild1, // #1 = $src2
    2815             : /*5630*/        OPC_Scope, 33, /*->5665*/ // 3 children in Scope
    2816             : /*5632*/          OPC_MoveChild1,
    2817             : /*5633*/          OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    2818             : /*5636*/          OPC_MoveParent,
    2819             : /*5637*/          OPC_SwitchType /*2 cases */, 11, MVT::i16,// ->5651
    2820             : /*5640*/            OPC_EmitConvertToTarget, 1,
    2821             : /*5642*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB16ri), 0|OPFL_GlueOutput,
    2822             :                         MVT::i16, MVT::i16, 2/*#Ops*/, 0, 2, 
    2823             :                     // Src: (subc:i16 GR16:i16:$src, (imm:i16):$src2) - Complexity = 6
    2824             :                     // Dst: (SUB16ri:i16:i16 GR16:i16:$src, (imm:i16):$src2)
    2825             : /*5651*/          /*SwitchType*/ 11, MVT::i8,// ->5664
    2826             : /*5653*/            OPC_EmitConvertToTarget, 1,
    2827             : /*5655*/            OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB8ri), 0|OPFL_GlueOutput,
    2828             :                         MVT::i8, MVT::i16, 2/*#Ops*/, 0, 2, 
    2829             :                     // Src: (subc:i8 GR8:i8:$src, (imm:i8):$src2) - Complexity = 6
    2830             :                     // Dst: (SUB8ri:i8:i16 GR8:i8:$src, (imm:i8):$src2)
    2831             : /*5664*/          0, // EndSwitchType
    2832             : /*5665*/        /*Scope*/ 11, /*->5677*/
    2833             : /*5666*/          OPC_CheckType, MVT::i16,
    2834             : /*5668*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB16rr), 0|OPFL_GlueOutput,
    2835             :                       MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    2836             :                   // Src: (subc:i16 GR16:i16:$src, GR16:i16:$src2) - Complexity = 3
    2837             :                   // Dst: (SUB16rr:i16:i16 GR16:i16:$src, GR16:i16:$src2)
    2838             : /*5677*/        /*Scope*/ 11, /*->5689*/
    2839             : /*5678*/          OPC_CheckType, MVT::i8,
    2840             : /*5680*/          OPC_MorphNodeTo2, TARGET_VAL(MSP430::SUB8rr), 0|OPFL_GlueOutput,
    2841             :                       MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    2842             :                   // Src: (subc:i8 GR8:i8:$src, GR8:i8:$src2) - Complexity = 3
    2843             :                   // Dst: (SUB8rr:i8:i16 GR8:i8:$src, GR8:i8:$src2)
    2844             : /*5689*/        0, /*End of Scope*/
    2845             : /*5690*/      0, /*End of Scope*/
    2846             : /*5691*/    /*SwitchOpcode*/ 78, TARGET_VAL(ISD::LOAD),// ->5772
    2847             : /*5694*/      OPC_RecordMemRef,
    2848             : /*5695*/      OPC_RecordNode, // #0 = 'ld' chained node
    2849             : /*5696*/      OPC_RecordChild1, // #1 = $src
    2850             : /*5697*/      OPC_CheckPredicate, 0, // Predicate_unindexedload
    2851             : /*5699*/      OPC_Scope, 32, /*->5733*/ // 3 children in Scope
    2852             : /*5701*/        OPC_CheckPredicate, 1, // Predicate_load
    2853             : /*5703*/        OPC_SwitchType /*2 cases */, 12, MVT::i8,// ->5718
    2854             : /*5706*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #2 #3
    2855             : /*5709*/          OPC_EmitMergeInputChains1_0,
    2856             : /*5710*/          OPC_MorphNodeTo1, TARGET_VAL(MSP430::MOV8rm), 0|OPFL_Chain|OPFL_MemRefs,
    2857             :                       MVT::i8, 2/*#Ops*/, 2, 3, 
    2858             :                   // Src: (ld:i8 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 13
    2859             :                   // Dst: (MOV8rm:i8 addr:i16:$src)
    2860             : /*5718*/        /*SwitchType*/ 12, MVT::i16,// ->5732
    2861             : /*5720*/          OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #2 #3
    2862             : /*5723*/          OPC_EmitMergeInputChains1_0,
    2863             : /*5724*/          OPC_MorphNodeTo1, TARGET_VAL(MSP430::MOV16rm), 0|OPFL_Chain|OPFL_MemRefs,
    2864             :                       MVT::i16, 2/*#Ops*/, 2, 3, 
    2865             :                   // Src: (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_load>> - Complexity = 13
    2866             :                   // Dst: (MOV16rm:i16 addr:i16:$src)
    2867             : /*5732*/        0, // EndSwitchType
    2868             : /*5733*/      /*Scope*/ 18, /*->5752*/
    2869             : /*5734*/        OPC_CheckPredicate, 5, // Predicate_zextload
    2870             : /*5736*/        OPC_CheckPredicate, 6, // Predicate_zextloadi8
    2871             : /*5738*/        OPC_CheckType, MVT::i16,
    2872             : /*5740*/        OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #2 #3
    2873             : /*5743*/        OPC_EmitMergeInputChains1_0,
    2874             : /*5744*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::MOVZX16rm8), 0|OPFL_Chain|OPFL_MemRefs,
    2875             :                     MVT::i16, 2/*#Ops*/, 2, 3, 
    2876             :                 // Src: (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> - Complexity = 13
    2877             :                 // Dst: (MOVZX16rm8:i16 addr:i16:$src)
    2878             : /*5752*/      /*Scope*/ 18, /*->5771*/
    2879             : /*5753*/        OPC_CheckPredicate, 7, // Predicate_extload
    2880             : /*5755*/        OPC_CheckPredicate, 6, // Predicate_extloadi8
    2881             : /*5757*/        OPC_CheckType, MVT::i16,
    2882             : /*5759*/        OPC_CheckComplexPat, /*CP*/0, /*#*/1, // SelectAddr:$src #2 #3
    2883             : /*5762*/        OPC_EmitMergeInputChains1_0,
    2884             : /*5763*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::MOVZX16rm8), 0|OPFL_Chain|OPFL_MemRefs,
    2885             :                     MVT::i16, 2/*#Ops*/, 2, 3, 
    2886             :                 // Src: (ld:i16 addr:iPTR:$src)<<P:Predicate_unindexedload>><<P:Predicate_extload>><<P:Predicate_extloadi8>> - Complexity = 13
    2887             :                 // Dst: (MOVZX16rm8:i16 addr:i16:$src)
    2888             : /*5771*/      0, /*End of Scope*/
    2889             : /*5772*/    /*SwitchOpcode*/ 22, TARGET_VAL(ISD::CALLSEQ_START),// ->5797
    2890             : /*5775*/      OPC_RecordNode, // #0 = 'MSP430callseq_start' chained node
    2891             : /*5776*/      OPC_RecordChild1, // #1 = $amt1
    2892             : /*5777*/      OPC_MoveChild1,
    2893             : /*5778*/      OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
    2894             : /*5781*/      OPC_MoveParent,
    2895             : /*5782*/      OPC_RecordChild2, // #2 = $amt2
    2896             : /*5783*/      OPC_MoveChild2,
    2897             : /*5784*/      OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
    2898             : /*5787*/      OPC_MoveParent,
    2899             : /*5788*/      OPC_EmitMergeInputChains1_0,
    2900             : /*5789*/      OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADJCALLSTACKDOWN), 0|OPFL_Chain|OPFL_GlueOutput,
    2901             :                   MVT::i16, 2/*#Ops*/, 1, 2, 
    2902             :               // Src: (MSP430callseq_start (timm:i16):$amt1, (timm:i16):$amt2) - Complexity = 9
    2903             :               // Dst: (ADJCALLSTACKDOWN:i16 (timm:i16):$amt1, (timm:i16):$amt2)
    2904             : /*5797*/    /*SwitchOpcode*/ 23, TARGET_VAL(ISD::CALLSEQ_END),// ->5823
    2905             : /*5800*/      OPC_RecordNode, // #0 = 'MSP430callseq_end' chained node
    2906             : /*5801*/      OPC_CaptureGlueInput,
    2907             : /*5802*/      OPC_RecordChild1, // #1 = $amt1
    2908             : /*5803*/      OPC_MoveChild1,
    2909             : /*5804*/      OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
    2910             : /*5807*/      OPC_MoveParent,
    2911             : /*5808*/      OPC_RecordChild2, // #2 = $amt2
    2912             : /*5809*/      OPC_MoveChild2,
    2913             : /*5810*/      OPC_CheckOpcode, TARGET_VAL(ISD::TargetConstant),
    2914             : /*5813*/      OPC_MoveParent,
    2915             : /*5814*/      OPC_EmitMergeInputChains1_0,
    2916             : /*5815*/      OPC_MorphNodeTo1, TARGET_VAL(MSP430::ADJCALLSTACKUP), 0|OPFL_Chain|OPFL_GlueInput|OPFL_GlueOutput,
    2917             :                   MVT::i16, 2/*#Ops*/, 1, 2, 
    2918             :               // Src: (MSP430callseq_end (timm:i16):$amt1, (timm:i16):$amt2) - Complexity = 9
    2919             :               // Dst: (ADJCALLSTACKUP:i16 (timm:i16):$amt1, (timm:i16):$amt2)
    2920             : /*5823*/    /*SwitchOpcode*/ 24, TARGET_VAL(MSP430ISD::BR_CC),// ->5850
    2921             : /*5826*/      OPC_RecordNode, // #0 = 'MSP430brcc' chained node
    2922             : /*5827*/      OPC_CaptureGlueInput,
    2923             : /*5828*/      OPC_RecordChild1, // #1 = $dst
    2924             : /*5829*/      OPC_MoveChild1,
    2925             : /*5830*/      OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
    2926             : /*5833*/      OPC_MoveParent,
    2927             : /*5834*/      OPC_RecordChild2, // #2 = $cc
    2928             : /*5835*/      OPC_MoveChild2,
    2929             : /*5836*/      OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    2930             : /*5839*/      OPC_MoveParent,
    2931             : /*5840*/      OPC_EmitMergeInputChains1_0,
    2932             : /*5841*/      OPC_EmitConvertToTarget, 2,
    2933             : /*5843*/      OPC_MorphNodeTo0, TARGET_VAL(MSP430::JCC), 0|OPFL_Chain|OPFL_GlueInput,
    2934             :                   2/*#Ops*/, 1, 3, 
    2935             :               // Src: (MSP430brcc (bb:Other):$dst, (imm:i8):$cc) - Complexity = 6
    2936             :               // Dst: (JCC (bb:Other):$dst, (imm:i8):$cc)
    2937             : /*5850*/    /*SwitchOpcode*/ 48, TARGET_VAL(ISD::ZERO_EXTEND),// ->5901
    2938             : /*5853*/      OPC_Scope, 13, /*->5868*/ // 2 children in Scope
    2939             : /*5855*/        OPC_MoveChild0,
    2940             : /*5856*/        OPC_CheckOpcode, TARGET_VAL(ISD::TRUNCATE),
    2941             : /*5859*/        OPC_RecordChild0, // #0 = $src
    2942             : /*5860*/        OPC_MoveParent,
    2943             : /*5861*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::ZEXT16r), 0,
    2944             :                     MVT::i16, 1/*#Ops*/, 0, 
    2945             :                 // Src: (zext:i16 (trunc:i8 GR16:i16:$src)) - Complexity = 6
    2946             :                 // Dst: (ZEXT16r:i16 GR16:i16:$src)
    2947             : /*5868*/      /*Scope*/ 31, /*->5900*/
    2948             : /*5869*/        OPC_RecordChild0, // #0 = $src
    2949             : /*5870*/        OPC_Scope, 19, /*->5891*/ // 2 children in Scope
    2950             : /*5872*/          OPC_MoveChild0,
    2951             : /*5873*/          OPC_CheckPredicate, 8, // Predicate_def8
    2952             : /*5875*/          OPC_MoveParent,
    2953             : /*5876*/          OPC_EmitInteger, MVT::i16, 0, 
    2954             : /*5879*/          OPC_EmitInteger, MVT::i32, MSP430::subreg_8bit,
    2955             : /*5882*/          OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::SUBREG_TO_REG), 0,
    2956             :                       MVT::i16, 3/*#Ops*/, 1, 0, 2, 
    2957             :                   // Src: (zext:i16 GR8:i8<<P:Predicate_def8>>:$src) - Complexity = 4
    2958             :                   // Dst: (SUBREG_TO_REG:i16 0:i16, GR8:i8:$src, subreg_8bit:i32)
    2959             : /*5891*/        /*Scope*/ 7, /*->5899*/
    2960             : /*5892*/          OPC_MorphNodeTo1, TARGET_VAL(MSP430::MOVZX16rr8), 0,
    2961             :                       MVT::i16, 1/*#Ops*/, 0, 
    2962             :                   // Src: (zext:i16 GR8:i8:$src) - Complexity = 3
    2963             :                   // Dst: (MOVZX16rr8:i16 GR8:i8:$src)
    2964             : /*5899*/        0, /*End of Scope*/
    2965             : /*5900*/      0, /*End of Scope*/
    2966             : /*5901*/    /*SwitchOpcode*/ 43, TARGET_VAL(MSP430ISD::Wrapper),// ->5947
    2967             : /*5904*/      OPC_RecordChild0, // #0 = $dst
    2968             : /*5905*/      OPC_MoveChild0,
    2969             : /*5906*/      OPC_SwitchOpcode /*3 cases */, 10, TARGET_VAL(ISD::TargetGlobalAddress),// ->5920
    2970             : /*5910*/        OPC_MoveParent,
    2971             : /*5911*/        OPC_CheckType, MVT::i16,
    2972             : /*5913*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::MOV16ri), 0,
    2973             :                     MVT::i16, 1/*#Ops*/, 0, 
    2974             :                 // Src: (MSP430Wrapper:i16 (tglobaladdr:i16):$dst) - Complexity = 6
    2975             :                 // Dst: (MOV16ri:i16 (tglobaladdr:i16):$dst)
    2976             : /*5920*/      /*SwitchOpcode*/ 10, TARGET_VAL(ISD::TargetExternalSymbol),// ->5933
    2977             : /*5923*/        OPC_MoveParent,
    2978             : /*5924*/        OPC_CheckType, MVT::i16,
    2979             : /*5926*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::MOV16ri), 0,
    2980             :                     MVT::i16, 1/*#Ops*/, 0, 
    2981             :                 // Src: (MSP430Wrapper:i16 (texternalsym:i16):$dst) - Complexity = 6
    2982             :                 // Dst: (MOV16ri:i16 (texternalsym:i16):$dst)
    2983             : /*5933*/      /*SwitchOpcode*/ 10, TARGET_VAL(ISD::TargetBlockAddress),// ->5946
    2984             : /*5936*/        OPC_MoveParent,
    2985             : /*5937*/        OPC_CheckType, MVT::i16,
    2986             : /*5939*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::MOV16ri), 0,
    2987             :                     MVT::i16, 1/*#Ops*/, 0, 
    2988             :                 // Src: (MSP430Wrapper:i16 (tblockaddress:i16):$dst) - Complexity = 6
    2989             :                 // Dst: (MOV16ri:i16 (tblockaddress:i16):$dst)
    2990             : /*5946*/      0, // EndSwitchOpcode
    2991             : /*5947*/    /*SwitchOpcode*/ 37, TARGET_VAL(MSP430ISD::SELECT_CC),// ->5987
    2992             : /*5950*/      OPC_CaptureGlueInput,
    2993             : /*5951*/      OPC_RecordChild0, // #0 = $src
    2994             : /*5952*/      OPC_RecordChild1, // #1 = $src2
    2995             : /*5953*/      OPC_RecordChild2, // #2 = $cc
    2996             : /*5954*/      OPC_MoveChild2,
    2997             : /*5955*/      OPC_CheckOpcode, TARGET_VAL(ISD::Constant),
    2998             : /*5958*/      OPC_MoveParent,
    2999             : /*5959*/      OPC_SwitchType /*2 cases */, 11, MVT::i8,// ->5973
    3000             : /*5962*/        OPC_EmitConvertToTarget, 2,
    3001             : /*5964*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::Select8), 0|OPFL_GlueInput,
    3002             :                     MVT::i8, 3/*#Ops*/, 0, 1, 3, 
    3003             :                 // Src: (MSP430selectcc:i8 GR8:i8:$src, GR8:i8:$src2, (imm:i8):$cc) - Complexity = 6
    3004             :                 // Dst: (Select8:i8 GR8:i8:$src, GR8:i8:$src2, (imm:i8):$cc)
    3005             : /*5973*/      /*SwitchType*/ 11, MVT::i16,// ->5986
    3006             : /*5975*/        OPC_EmitConvertToTarget, 2,
    3007             : /*5977*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::Select16), 0|OPFL_GlueInput,
    3008             :                     MVT::i16, 3/*#Ops*/, 0, 1, 3, 
    3009             :                 // Src: (MSP430selectcc:i16 GR16:i16:$src, GR16:i16:$src2, (imm:i8):$cc) - Complexity = 6
    3010             :                 // Dst: (Select16:i16 GR16:i16:$src, GR16:i16:$src2, (imm:i8):$cc)
    3011             : /*5986*/      0, // EndSwitchType
    3012             : /*5987*/    /*SwitchOpcode*/ 8, TARGET_VAL(MSP430ISD::RET_FLAG),// ->5998
    3013             : /*5990*/      OPC_RecordNode, // #0 = 'MSP430retflag' chained node
    3014             : /*5991*/      OPC_CaptureGlueInput,
    3015             : /*5992*/      OPC_EmitMergeInputChains1_0,
    3016             : /*5993*/      OPC_MorphNodeTo0, TARGET_VAL(MSP430::RET), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic0,
    3017             :                   0/*#Ops*/, 
    3018             :               // Src: (MSP430retflag) - Complexity = 3
    3019             :               // Dst: (RET)
    3020             : /*5998*/    /*SwitchOpcode*/ 8, TARGET_VAL(MSP430ISD::RETI_FLAG),// ->6009
    3021             : /*6001*/      OPC_RecordNode, // #0 = 'MSP430retiflag' chained node
    3022             : /*6002*/      OPC_CaptureGlueInput,
    3023             : /*6003*/      OPC_EmitMergeInputChains1_0,
    3024             : /*6004*/      OPC_MorphNodeTo0, TARGET_VAL(MSP430::RETI), 0|OPFL_Chain|OPFL_GlueInput|OPFL_Variadic0,
    3025             :                   0/*#Ops*/, 
    3026             :               // Src: (MSP430retiflag) - Complexity = 3
    3027             :               // Dst: (RETI)
    3028             : /*6009*/    /*SwitchOpcode*/ 14, TARGET_VAL(ISD::BR),// ->6026
    3029             : /*6012*/      OPC_RecordNode, // #0 = 'br' chained node
    3030             : /*6013*/      OPC_RecordChild1, // #1 = $dst
    3031             : /*6014*/      OPC_MoveChild1,
    3032             : /*6015*/      OPC_CheckOpcode, TARGET_VAL(ISD::BasicBlock),
    3033             : /*6018*/      OPC_MoveParent,
    3034             : /*6019*/      OPC_EmitMergeInputChains1_0,
    3035             : /*6020*/      OPC_MorphNodeTo0, TARGET_VAL(MSP430::JMP), 0|OPFL_Chain,
    3036             :                   1/*#Ops*/, 1, 
    3037             :               // Src: (br (bb:Other):$dst) - Complexity = 3
    3038             :               // Dst: (JMP (bb:Other):$dst)
    3039             : /*6026*/    /*SwitchOpcode*/ 25, TARGET_VAL(ISD::Constant),// ->6054
    3040             : /*6029*/      OPC_RecordNode, // #0 = $src
    3041             : /*6030*/      OPC_SwitchType /*2 cases */, 9, MVT::i8,// ->6042
    3042             : /*6033*/        OPC_EmitConvertToTarget, 0,
    3043             : /*6035*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::MOV8ri), 0,
    3044             :                     MVT::i8, 1/*#Ops*/, 1, 
    3045             :                 // Src: (imm:i8):$src - Complexity = 3
    3046             :                 // Dst: (MOV8ri:i8 (imm:i8):$src)
    3047             : /*6042*/      /*SwitchType*/ 9, MVT::i16,// ->6053
    3048             : /*6044*/        OPC_EmitConvertToTarget, 0,
    3049             : /*6046*/        OPC_MorphNodeTo1, TARGET_VAL(MSP430::MOV16ri), 0,
    3050             :                     MVT::i16, 1/*#Ops*/, 1, 
    3051             :                 // Src: (imm:i16):$src - Complexity = 3
    3052             :                 // Dst: (MOV16ri:i16 (imm:i16):$src)
    3053             : /*6053*/      0, // EndSwitchType
    3054             : /*6054*/    /*SwitchOpcode*/ 23, TARGET_VAL(MSP430ISD::RRA),// ->6080
    3055             : /*6057*/      OPC_RecordChild0, // #0 = $src
    3056             : /*6058*/      OPC_SwitchType /*2 cases */, 8, MVT::i8,// ->6069
    3057             : /*6061*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::SAR8r1), 0,
    3058             :                     MVT::i8, MVT::i16, 1/*#Ops*/, 0, 
    3059             :                 // Src: (MSP430rra:i8 GR8:i8:$src) - Complexity = 3
    3060             :                 // Dst: (SAR8r1:i8:i16 GR8:i8:$src)
    3061             : /*6069*/      /*SwitchType*/ 8, MVT::i16,// ->6079
    3062             : /*6071*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::SAR16r1), 0,
    3063             :                     MVT::i16, MVT::i16, 1/*#Ops*/, 0, 
    3064             :                 // Src: (MSP430rra:i16 GR16:i16:$src) - Complexity = 3
    3065             :                 // Dst: (SAR16r1:i16:i16 GR16:i16:$src)
    3066             : /*6079*/      0, // EndSwitchType
    3067             : /*6080*/    /*SwitchOpcode*/ 23, TARGET_VAL(MSP430ISD::RLA),// ->6106
    3068             : /*6083*/      OPC_RecordChild0, // #0 = $src
    3069             : /*6084*/      OPC_SwitchType /*2 cases */, 8, MVT::i8,// ->6095
    3070             : /*6087*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::SHL8r1), 0,
    3071             :                     MVT::i8, MVT::i16, 1/*#Ops*/, 0, 
    3072             :                 // Src: (MSP430rla:i8 GR8:i8:$src) - Complexity = 3
    3073             :                 // Dst: (SHL8r1:i8:i16 GR8:i8:$src)
    3074             : /*6095*/      /*SwitchType*/ 8, MVT::i16,// ->6105
    3075             : /*6097*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::SHL16r1), 0,
    3076             :                     MVT::i16, MVT::i16, 1/*#Ops*/, 0, 
    3077             :                 // Src: (MSP430rla:i16 GR16:i16:$src) - Complexity = 3
    3078             :                 // Dst: (SHL16r1:i16:i16 GR16:i16:$src)
    3079             : /*6105*/      0, // EndSwitchType
    3080             : /*6106*/    /*SwitchOpcode*/ 23, TARGET_VAL(MSP430ISD::RRC),// ->6132
    3081             : /*6109*/      OPC_RecordChild0, // #0 = $src
    3082             : /*6110*/      OPC_SwitchType /*2 cases */, 8, MVT::i8,// ->6121
    3083             : /*6113*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::SAR8r1c), 0,
    3084             :                     MVT::i8, MVT::i16, 1/*#Ops*/, 0, 
    3085             :                 // Src: (MSP430rrc:i8 GR8:i8:$src) - Complexity = 3
    3086             :                 // Dst: (SAR8r1c:i8:i16 GR8:i8:$src)
    3087             : /*6121*/      /*SwitchType*/ 8, MVT::i16,// ->6131
    3088             : /*6123*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::SAR16r1c), 0,
    3089             :                     MVT::i16, MVT::i16, 1/*#Ops*/, 0, 
    3090             :                 // Src: (MSP430rrc:i16 GR16:i16:$src) - Complexity = 3
    3091             :                 // Dst: (SAR16r1c:i16:i16 GR16:i16:$src)
    3092             : /*6131*/      0, // EndSwitchType
    3093             : /*6132*/    /*SwitchOpcode*/ 13, TARGET_VAL(ISD::SIGN_EXTEND_INREG),// ->6148
    3094             : /*6135*/      OPC_RecordChild0, // #0 = $src
    3095             : /*6136*/      OPC_MoveChild1,
    3096             : /*6137*/      OPC_CheckValueType, MVT::i8,
    3097             : /*6139*/      OPC_MoveParent,
    3098             : /*6140*/      OPC_MorphNodeTo2, TARGET_VAL(MSP430::SEXT16r), 0,
    3099             :                   MVT::i16, MVT::i16, 1/*#Ops*/, 0, 
    3100             :               // Src: (sext_inreg:i16 GR16:i16:$src, i8:Other) - Complexity = 3
    3101             :               // Dst: (SEXT16r:i16:i16 GR16:i16:$src)
    3102             : /*6148*/    /*SwitchOpcode*/ 10, TARGET_VAL(ISD::BSWAP),// ->6161
    3103             : /*6151*/      OPC_RecordChild0, // #0 = $src
    3104             : /*6152*/      OPC_CheckType, MVT::i16,
    3105             : /*6154*/      OPC_MorphNodeTo1, TARGET_VAL(MSP430::SWPB16r), 0,
    3106             :                   MVT::i16, 1/*#Ops*/, 0, 
    3107             :               // Src: (bswap:i16 GR16:i16:$src) - Complexity = 3
    3108             :               // Dst: (SWPB16r:i16 GR16:i16:$src)
    3109             : /*6161*/    /*SwitchOpcode*/ 16, TARGET_VAL(ISD::ANY_EXTEND),// ->6180
    3110             : /*6164*/      OPC_RecordChild0, // #0 = $src
    3111             : /*6165*/      OPC_EmitInteger, MVT::i16, 0, 
    3112             : /*6168*/      OPC_EmitInteger, MVT::i32, MSP430::subreg_8bit,
    3113             : /*6171*/      OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::SUBREG_TO_REG), 0,
    3114             :                   MVT::i16, 3/*#Ops*/, 1, 0, 2, 
    3115             :               // Src: (anyext:i16 GR8:i8:$src) - Complexity = 3
    3116             :               // Dst: (SUBREG_TO_REG:i16 0:i16, GR8:i8:$src, subreg_8bit:i32)
    3117             : /*6180*/    /*SwitchOpcode*/ 12, TARGET_VAL(ISD::TRUNCATE),// ->6195
    3118             : /*6183*/      OPC_RecordChild0, // #0 = $src
    3119             : /*6184*/      OPC_EmitInteger, MVT::i32, MSP430::subreg_8bit,
    3120             : /*6187*/      OPC_MorphNodeTo1, TARGET_VAL(TargetOpcode::EXTRACT_SUBREG), 0,
    3121             :                   MVT::i8, 2/*#Ops*/, 0, 1, 
    3122             :               // Src: (trunc:i8 GR16:i16:$src) - Complexity = 3
    3123             :               // Dst: (EXTRACT_SUBREG:i8 GR16:i16:$src, subreg_8bit:i32)
    3124             : /*6195*/    /*SwitchOpcode*/ 26, TARGET_VAL(MSP430ISD::SHL),// ->6224
    3125             : /*6198*/      OPC_RecordChild0, // #0 = $src
    3126             : /*6199*/      OPC_RecordChild1, // #1 = $cnt
    3127             : /*6200*/      OPC_SwitchType /*2 cases */, 9, MVT::i8,// ->6212
    3128             : /*6203*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::Shl8), 0,
    3129             :                     MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    3130             :                 // Src: (MSP430shl:i8 GR8:i8:$src, GR8:i8:$cnt) - Complexity = 3
    3131             :                 // Dst: (Shl8:i8:i16 GR8:i8:$src, GR8:i8:$cnt)
    3132             : /*6212*/      /*SwitchType*/ 9, MVT::i16,// ->6223
    3133             : /*6214*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::Shl16), 0,
    3134             :                     MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    3135             :                 // Src: (MSP430shl:i16 GR16:i16:$src, GR8:i8:$cnt) - Complexity = 3
    3136             :                 // Dst: (Shl16:i16:i16 GR16:i16:$src, GR8:i8:$cnt)
    3137             : /*6223*/      0, // EndSwitchType
    3138             : /*6224*/    /*SwitchOpcode*/ 26, TARGET_VAL(MSP430ISD::SRA),// ->6253
    3139             : /*6227*/      OPC_RecordChild0, // #0 = $src
    3140             : /*6228*/      OPC_RecordChild1, // #1 = $cnt
    3141             : /*6229*/      OPC_SwitchType /*2 cases */, 9, MVT::i8,// ->6241
    3142             : /*6232*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::Sra8), 0,
    3143             :                     MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    3144             :                 // Src: (MSP430sra:i8 GR8:i8:$src, GR8:i8:$cnt) - Complexity = 3
    3145             :                 // Dst: (Sra8:i8:i16 GR8:i8:$src, GR8:i8:$cnt)
    3146             : /*6241*/      /*SwitchType*/ 9, MVT::i16,// ->6252
    3147             : /*6243*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::Sra16), 0,
    3148             :                     MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    3149             :                 // Src: (MSP430sra:i16 GR16:i16:$src, GR8:i8:$cnt) - Complexity = 3
    3150             :                 // Dst: (Sra16:i16:i16 GR16:i16:$src, GR8:i8:$cnt)
    3151             : /*6252*/      0, // EndSwitchType
    3152             : /*6253*/    /*SwitchOpcode*/ 26, TARGET_VAL(MSP430ISD::SRL),// ->6282
    3153             : /*6256*/      OPC_RecordChild0, // #0 = $src
    3154             : /*6257*/      OPC_RecordChild1, // #1 = $cnt
    3155             : /*6258*/      OPC_SwitchType /*2 cases */, 9, MVT::i8,// ->6270
    3156             : /*6261*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::Srl8), 0,
    3157             :                     MVT::i8, MVT::i16, 2/*#Ops*/, 0, 1, 
    3158             :                 // Src: (MSP430srl:i8 GR8:i8:$src, GR8:i8:$cnt) - Complexity = 3
    3159             :                 // Dst: (Srl8:i8:i16 GR8:i8:$src, GR8:i8:$cnt)
    3160             : /*6270*/      /*SwitchType*/ 9, MVT::i16,// ->6281
    3161             : /*6272*/        OPC_MorphNodeTo2, TARGET_VAL(MSP430::Srl16), 0,
    3162             :                     MVT::i16, MVT::i16, 2/*#Ops*/, 0, 1, 
    3163             :                 // Src: (MSP430srl:i16 GR16:i16:$src, GR8:i8:$cnt) - Complexity = 3
    3164             :                 // Dst: (Srl16:i16:i16 GR16:i16:$src, GR8:i8:$cnt)
    3165             : /*6281*/      0, // EndSwitchType
    3166             : /*6282*/    0, // EndSwitchOpcode
    3167             :     0
    3168             :   }; // Total Array size is 6284 bytes
    3169             : 
    3170             :   // Opcode Histogram:
    3171             :   // #OPC_Scope                          = 71
    3172             :   // #OPC_RecordNode                     = 71
    3173             :   // #OPC_RecordChild                    = 171
    3174             :   // #OPC_RecordMemRef                   = 58
    3175             :   // #OPC_CaptureGlueInput               = 10
    3176             :   // #OPC_MoveChild                      = 103
    3177             :   // #OPC_MoveParent                     = 211
    3178             :   // #OPC_CheckSame                      = 0
    3179             :   // #OPC_CheckChildSame                 = 82
    3180             :   // #OPC_CheckPatternPredicate          = 0
    3181             :   // #OPC_CheckPredicate                 = 308
    3182             :   // #OPC_CheckOpcode                    = 91
    3183             :   // #OPC_SwitchOpcode                   = 11
    3184             :   // #OPC_CheckType                      = 50
    3185             :   // #OPC_SwitchType                     = 75
    3186             :   // #OPC_CheckChildType                 = 8
    3187             :   // #OPC_CheckInteger                   = 0
    3188             :   // #OPC_CheckChildInteger              = 21
    3189             :   // #OPC_CheckCondCode                  = 0
    3190             :   // #OPC_CheckValueType                 = 1
    3191             :   // #OPC_CheckComplexPat                = 183
    3192             :   // #OPC_CheckAndImm                    = 1
    3193             :   // #OPC_CheckOrImm                     = 0
    3194             :   // #OPC_CheckFoldableChainNode         = 56
    3195             :   // #OPC_EmitInteger                    = 2
    3196             :   // #OPC_EmitStringInteger              = 5
    3197             :   // #OPC_EmitRegister                   = 0
    3198             :   // #OPC_EmitConvertToTarget            = 48
    3199             :   // #OPC_EmitMergeInputChains           = 157
    3200             :   // #OPC_EmitCopyToReg                  = 0
    3201             :   // #OPC_EmitNode                       = 2
    3202             :   // #OPC_EmitNodeXForm                  = 0
    3203             :   // #OPC_CompleteMatch                  = 0
    3204             :   // #OPC_MorphNodeTo                    = 239
    3205             : 
    3206             :   #undef TARGET_VAL
    3207        5469 :   SelectCodeCommon(N, MatcherTable,sizeof(MatcherTable));
    3208             : }
    3209        2255 : bool CheckNodePredicate(SDNode *Node,
    3210             :                         unsigned PredNo) const override {
    3211        2255 :   switch (PredNo) {
    3212           0 :   default: llvm_unreachable("Invalid predicate in table?");
    3213         338 :   case 0: { 
    3214             :     // Predicate_unindexedload
    3215         338 :     SDNode *N = Node;
    3216             : 
    3217         676 :   return cast<LoadSDNode>(N)->getAddressingMode() == ISD::UNINDEXED;
    3218             : 
    3219             :   }
    3220         338 :   case 1: { 
    3221             :     // Predicate_load
    3222         338 :     SDNode *N = Node;
    3223             : 
    3224         676 :   return cast<LoadSDNode>(N)->getExtensionType() == ISD::NON_EXTLOAD;
    3225             : 
    3226             :   }
    3227         778 :   case 2: { 
    3228             :     // Predicate_unindexedstore
    3229         778 :     SDNode *N = Node;
    3230             : 
    3231        1556 :   return cast<StoreSDNode>(N)->getAddressingMode() == ISD::UNINDEXED;
    3232             : 
    3233             :   }
    3234         778 :   case 3: { 
    3235             :     // Predicate_store
    3236         778 :     SDNode *N = Node;
    3237             : 
    3238        1556 :   return !cast<StoreSDNode>(N)->isTruncatingStore();
    3239             : 
    3240             :   }
    3241          19 :   case 4: { 
    3242             :     // Predicate_and_su
    3243          19 :     SDNode *N = Node;
    3244             : 
    3245             :   return N->hasOneUse();
    3246             : 
    3247             :   }
    3248           1 :   case 5: { 
    3249             :     // Predicate_zextload
    3250           1 :     SDNode *N = Node;
    3251             : 
    3252           2 :   return cast<LoadSDNode>(N)->getExtensionType() == ISD::ZEXTLOAD;
    3253             : 
    3254             :   }
    3255           1 :   case 6: { 
    3256             :     // Predicate_zextloadi8
    3257             :     // Predicate_extloadi8
    3258           1 :     SDNode *N = Node;
    3259             : 
    3260           3 :   return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i8;
    3261             : 
    3262             :   }
    3263           0 :   case 7: { 
    3264             :     // Predicate_extload
    3265           0 :     SDNode *N = Node;
    3266             : 
    3267           0 :   return cast<LoadSDNode>(N)->getExtensionType() == ISD::EXTLOAD;
    3268             : 
    3269             :   }
    3270           2 :   case 8: { 
    3271             :     // Predicate_def8
    3272           2 :     SDNode *N = Node;
    3273             : 
    3274           4 :   return N->getOpcode() != ISD::TRUNCATE &&
    3275           4 :          N->getOpcode() != TargetOpcode::EXTRACT_SUBREG &&
    3276           2 :          N->getOpcode() != ISD::CopyFromReg;
    3277             : 
    3278             :   }
    3279             :   }
    3280             : }
    3281             : 
    3282        1070 : bool CheckComplexPattern(SDNode *Root, SDNode *Parent,
    3283             :                          SDValue N, unsigned PatternNo,
    3284             :          SmallVectorImpl<std::pair<SDValue, SDNode*> > &Result) override {
    3285        2140 :   unsigned NextRes = Result.size();
    3286        1070 :   switch (PatternNo) {
    3287           0 :   default: llvm_unreachable("Invalid pattern # in table?");
    3288        1070 :   case 0:
    3289        1070 :     Result.resize(NextRes+2);
    3290        3210 :   return SelectAddr(N, Result[NextRes+0].first, Result[NextRes+1].first);
    3291             :   }
    3292             : }
    3293             : 

Generated by: LCOV version 1.13