//===- TableGen'erated file -------------------------------------*- C++ -*-===// // // DAG Instruction Selector for the X86 target // // Automatically generated file, do not edit! // //===----------------------------------------------------------------------===// // *** NOTE: This file is #included into the middle of the target // *** instruction selector class. These functions are really methods. // Predicate functions. inline bool Predicate_alignedload(SDNode *N) const { return cast<LoadSDNode>(N)->getAlignment() >= 16; } inline bool Predicate_alignednontemporalstore(SDNode *N) const { if (StoreSDNode *ST = dyn_cast<StoreSDNode>(N)) return ST->isNonTemporal() && !ST->isTruncatingStore() && ST->getAddressingMode() == ISD::UNINDEXED && ST->getAlignment() >= 16; return false; } inline bool Predicate_alignedstore(SDNode *N) const { return cast<StoreSDNode>(N)->getAlignment() >= 16; } inline bool Predicate_and_su(SDNode *N) const { return N->hasOneUse(); } inline bool Predicate_atomic_cmp_swap_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_cmp_swap_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_cmp_swap_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_cmp_swap_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_atomic_load_add_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_load_add_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_load_add_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_load_add_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_atomic_load_and_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_load_and_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_load_and_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_load_and_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_atomic_load_max_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_load_max_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_load_max_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_load_max_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_atomic_load_min_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_load_min_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_load_min_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_load_min_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_atomic_load_nand_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_load_nand_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_load_nand_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_load_nand_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_atomic_load_or_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_load_or_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_load_or_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_load_or_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_atomic_load_sub_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_load_sub_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_load_sub_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_load_sub_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_atomic_load_umax_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_load_umax_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_load_umax_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_load_umax_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_atomic_load_umin_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_load_umin_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_load_umin_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_load_umin_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_atomic_load_xor_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_load_xor_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_load_xor_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_load_xor_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_atomic_swap_16(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_atomic_swap_32(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_atomic_swap_64(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } inline bool Predicate_atomic_swap_8(SDNode *N) const { return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_cvtff(SDNode *N) const { return cast<CvtRndSatSDNode>(N)->getCvtCode() == ISD::CVT_FF; } inline bool Predicate_cvtfs(SDNode *N) const { return cast<CvtRndSatSDNode>(N)->getCvtCode() == ISD::CVT_FS; } inline bool Predicate_cvtfu(SDNode *N) const { return cast<CvtRndSatSDNode>(N)->getCvtCode() == ISD::CVT_FU; } inline bool Predicate_cvtsf(SDNode *N) const { return cast<CvtRndSatSDNode>(N)->getCvtCode() == ISD::CVT_SF; } inline bool Predicate_cvtss(SDNode *N) const { return cast<CvtRndSatSDNode>(N)->getCvtCode() == ISD::CVT_SS; } inline bool Predicate_cvtsu(SDNode *N) const { return cast<CvtRndSatSDNode>(N)->getCvtCode() == ISD::CVT_SU; } inline bool Predicate_cvtuf(SDNode *N) const { return cast<CvtRndSatSDNode>(N)->getCvtCode() == ISD::CVT_UF; } inline bool Predicate_cvtus(SDNode *N) const { return cast<CvtRndSatSDNode>(N)->getCvtCode() == ISD::CVT_US; } inline bool Predicate_cvtuu(SDNode *N) const { return cast<CvtRndSatSDNode>(N)->getCvtCode() == ISD::CVT_UU; } inline bool Predicate_def32(SDNode *N) const { return N->getOpcode() != ISD::TRUNCATE && N->getOpcode() != TargetOpcode::EXTRACT_SUBREG && N->getOpcode() != ISD::CopyFromReg && N->getOpcode() != X86ISD::CMOV; } inline bool Predicate_dsload(SDNode *N) const { if (const Value *Src = cast<LoadSDNode>(N)->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) if (PT->getAddressSpace() > 255) return false; return true; } inline bool Predicate_extload(SDNode *N) const { return cast<LoadSDNode>(N)->getExtensionType() == ISD::EXTLOAD; } inline bool Predicate_extloadf32(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::f32; } inline bool Predicate_extloadf64(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::f64; } inline bool Predicate_extloadi1(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i1; } inline bool Predicate_extloadi16(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_extloadi32(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_extloadi8(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_fp32imm0(SDNode *inN) const { ConstantFPSDNode *N = cast<ConstantFPSDNode>(inN); return N->isExactlyValue(+0.0); } inline bool Predicate_fpimm0(SDNode *inN) const { ConstantFPSDNode *N = cast<ConstantFPSDNode>(inN); return N->isExactlyValue(+0.0); } inline bool Predicate_fpimm1(SDNode *inN) const { ConstantFPSDNode *N = cast<ConstantFPSDNode>(inN); return N->isExactlyValue(+1.0); } inline bool Predicate_fpimmneg0(SDNode *inN) const { ConstantFPSDNode *N = cast<ConstantFPSDNode>(inN); return N->isExactlyValue(-0.0); } inline bool Predicate_fpimmneg1(SDNode *inN) const { ConstantFPSDNode *N = cast<ConstantFPSDNode>(inN); return N->isExactlyValue(-1.0); } inline bool Predicate_fsload(SDNode *N) const { if (const Value *Src = cast<LoadSDNode>(N)->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) return PT->getAddressSpace() == 257; return false; } inline bool Predicate_gsload(SDNode *N) const { if (const Value *Src = cast<LoadSDNode>(N)->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) return PT->getAddressSpace() == 256; return false; } inline bool Predicate_i64immSExt32(SDNode *inN) const { ConstantSDNode *N = cast<ConstantSDNode>(inN); // i64immSExt32 predicate - True if the 64-bit immediate fits in a 32-bit // sign extended field. return (int64_t)N->getZExtValue() == (int32_t)N->getZExtValue(); } inline bool Predicate_i64immZExt32(SDNode *inN) const { ConstantSDNode *N = cast<ConstantSDNode>(inN); // i64immZExt32 predicate - True if the 64-bit immediate fits in a 32-bit // unsignedsign extended field. return (uint64_t)N->getZExtValue() == (uint32_t)N->getZExtValue(); } inline bool Predicate_immAllOnesV(SDNode *N) const { return ISD::isBuildVectorAllOnes(N); } inline bool Predicate_immAllOnesV_bc(SDNode *N) const { return ISD::isBuildVectorAllOnes(N); } inline bool Predicate_immAllZerosV(SDNode *N) const { return ISD::isBuildVectorAllZeros(N); } inline bool Predicate_immAllZerosV_bc(SDNode *N) const { return ISD::isBuildVectorAllZeros(N); } inline bool Predicate_immSext8(SDNode *inN) const { ConstantSDNode *N = cast<ConstantSDNode>(inN); return N->getSExtValue() == (int8_t)N->getSExtValue(); } inline bool Predicate_istore(SDNode *N) const { return !cast<StoreSDNode>(N)->isTruncatingStore(); } inline bool Predicate_itruncstore(SDNode *N) const { return cast<StoreSDNode>(N)->isTruncatingStore(); } inline bool Predicate_load(SDNode *N) const { return cast<LoadSDNode>(N)->getExtensionType() == ISD::NON_EXTLOAD; } inline bool Predicate_loadi16(SDNode *N) const { LoadSDNode *LD = cast<LoadSDNode>(N); if (const Value *Src = LD->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) if (PT->getAddressSpace() > 255) return false; ISD::LoadExtType ExtType = LD->getExtensionType(); if (ExtType == ISD::NON_EXTLOAD) return true; if (ExtType == ISD::EXTLOAD) return LD->getAlignment() >= 2 && !LD->isVolatile(); return false; } inline bool Predicate_loadi16_anyext(SDNode *N) const { LoadSDNode *LD = cast<LoadSDNode>(N); if (const Value *Src = LD->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) if (PT->getAddressSpace() > 255) return false; ISD::LoadExtType ExtType = LD->getExtensionType(); if (ExtType == ISD::EXTLOAD) return LD->getAlignment() >= 2 && !LD->isVolatile(); return false; } inline bool Predicate_loadi32(SDNode *N) const { LoadSDNode *LD = cast<LoadSDNode>(N); if (const Value *Src = LD->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) if (PT->getAddressSpace() > 255) return false; ISD::LoadExtType ExtType = LD->getExtensionType(); if (ExtType == ISD::NON_EXTLOAD) return true; if (ExtType == ISD::EXTLOAD) return LD->getAlignment() >= 4 && !LD->isVolatile(); return false; } inline bool Predicate_memop(SDNode *N) const { return Subtarget->hasVectorUAMem() || cast<LoadSDNode>(N)->getAlignment() >= 16; } inline bool Predicate_memop64(SDNode *N) const { return cast<LoadSDNode>(N)->getAlignment() >= 8; } inline bool Predicate_mmx_pshufw(SDNode *N) const { return X86::isPSHUFDMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_mmx_unpckh(SDNode *N) const { return X86::isUNPCKHMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_mmx_unpckh_undef(SDNode *N) const { return X86::isUNPCKH_v_undef_Mask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_mmx_unpckl(SDNode *N) const { return X86::isUNPCKLMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_mmx_unpckl_undef(SDNode *N) const { return X86::isUNPCKL_v_undef_Mask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_movddup(SDNode *N) const { return X86::isMOVDDUPMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_movhlps(SDNode *N) const { return X86::isMOVHLPSMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_movhlps_undef(SDNode *N) const { return X86::isMOVHLPS_v_undef_Mask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_movl(SDNode *N) const { return X86::isMOVLMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_movlhps(SDNode *N) const { return X86::isMOVLHPSMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_movlp(SDNode *N) const { return X86::isMOVLPMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_movshdup(SDNode *N) const { return X86::isMOVSHDUPMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_movsldup(SDNode *N) const { return X86::isMOVSLDUPMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_nontemporalstore(SDNode *N) const { if (StoreSDNode *ST = dyn_cast<StoreSDNode>(N)) return ST->isNonTemporal(); return false; } inline bool Predicate_or_is_add(SDNode *N) const { if (ConstantSDNode *CN = dyn_cast<ConstantSDNode>(N->getOperand(1))) return CurDAG->MaskedValueIsZero(N->getOperand(0), CN->getAPIntValue()); else { unsigned BitWidth = N->getValueType(0).getScalarType().getSizeInBits(); APInt Mask = APInt::getAllOnesValue(BitWidth); APInt KnownZero0, KnownOne0; CurDAG->ComputeMaskedBits(N->getOperand(0), Mask, KnownZero0, KnownOne0, 0); APInt KnownZero1, KnownOne1; CurDAG->ComputeMaskedBits(N->getOperand(1), Mask, KnownZero1, KnownOne1, 0); return (~KnownZero0 & ~KnownZero1) == 0; } } inline bool Predicate_palign(SDNode *N) const { return X86::isPALIGNRMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_post_store(SDNode *N) const { ISD::MemIndexedMode AM = cast<StoreSDNode>(N)->getAddressingMode(); return AM == ISD::POST_INC || AM == ISD::POST_DEC; } inline bool Predicate_post_truncst(SDNode *N) const { ISD::MemIndexedMode AM = cast<StoreSDNode>(N)->getAddressingMode(); return AM == ISD::POST_INC || AM == ISD::POST_DEC; } inline bool Predicate_post_truncstf32(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::f32; } inline bool Predicate_post_truncsti1(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i1; } inline bool Predicate_post_truncsti16(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_post_truncsti32(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_post_truncsti8(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_pre_store(SDNode *N) const { ISD::MemIndexedMode AM = cast<StoreSDNode>(N)->getAddressingMode(); return AM == ISD::PRE_INC || AM == ISD::PRE_DEC; } inline bool Predicate_pre_truncst(SDNode *N) const { ISD::MemIndexedMode AM = cast<StoreSDNode>(N)->getAddressingMode(); return AM == ISD::PRE_INC || AM == ISD::PRE_DEC; } inline bool Predicate_pre_truncstf32(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::f32; } inline bool Predicate_pre_truncsti1(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i1; } inline bool Predicate_pre_truncsti16(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_pre_truncsti32(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_pre_truncsti8(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_pshufd(SDNode *N) const { return X86::isPSHUFDMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_pshufhw(SDNode *N) const { return X86::isPSHUFHWMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_pshuflw(SDNode *N) const { return X86::isPSHUFLWMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_sextload(SDNode *N) const { return cast<LoadSDNode>(N)->getExtensionType() == ISD::SEXTLOAD; } inline bool Predicate_sextloadi1(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i1; } inline bool Predicate_sextloadi16(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_sextloadi32(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_sextloadi8(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_shld(SDNode *N) const { assert(N->getOpcode() == ISD::OR); return N->getOperand(0).getOpcode() == ISD::SHL && N->getOperand(1).getOpcode() == ISD::SRL && isa<ConstantSDNode>(N->getOperand(0).getOperand(1)) && isa<ConstantSDNode>(N->getOperand(1).getOperand(1)) && N->getOperand(0).getConstantOperandVal(1) == N->getValueSizeInBits(0) - N->getOperand(1).getConstantOperandVal(1); } inline bool Predicate_shrd(SDNode *N) const { assert(N->getOpcode() == ISD::OR); return N->getOperand(0).getOpcode() == ISD::SRL && N->getOperand(1).getOpcode() == ISD::SHL && isa<ConstantSDNode>(N->getOperand(0).getOperand(1)) && isa<ConstantSDNode>(N->getOperand(1).getOperand(1)) && N->getOperand(0).getConstantOperandVal(1) == N->getValueSizeInBits(0) - N->getOperand(1).getConstantOperandVal(1); } inline bool Predicate_shufp(SDNode *N) const { return X86::isSHUFPMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_splat_lo(SDNode *N) const { ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(N); return SVOp->isSplat() && SVOp->getSplatIndex() == 0; } inline bool Predicate_srl_su(SDNode *N) const { return N->hasOneUse(); } inline bool Predicate_store(SDNode *N) const { return !cast<StoreSDNode>(N)->isTruncatingStore(); } inline bool Predicate_trunc_su(SDNode *N) const { return N->hasOneUse(); } inline bool Predicate_truncstore(SDNode *N) const { return cast<StoreSDNode>(N)->isTruncatingStore(); } inline bool Predicate_truncstoref32(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::f32; } inline bool Predicate_truncstoref64(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::f64; } inline bool Predicate_truncstorei16(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_truncstorei32(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_truncstorei8(SDNode *N) const { return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i8; } inline bool Predicate_unalignednontemporalstore(SDNode *N) const { if (StoreSDNode *ST = dyn_cast<StoreSDNode>(N)) return ST->isNonTemporal() && ST->getAlignment() < 16; return false; } inline bool Predicate_unindexedload(SDNode *N) const { return cast<LoadSDNode>(N)->getAddressingMode() == ISD::UNINDEXED; } inline bool Predicate_unindexedstore(SDNode *N) const { return cast<StoreSDNode>(N)->getAddressingMode() == ISD::UNINDEXED; } inline bool Predicate_unpckh(SDNode *N) const { return X86::isUNPCKHMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_unpckh_undef(SDNode *N) const { return X86::isUNPCKH_v_undef_Mask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_unpckl(SDNode *N) const { return X86::isUNPCKLMask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_unpckl_undef(SDNode *N) const { return X86::isUNPCKL_v_undef_Mask(cast<ShuffleVectorSDNode>(N)); } inline bool Predicate_vtFP(SDNode *inN) const { VTSDNode *N = cast<VTSDNode>(inN); return N->getVT().isFloatingPoint(); } inline bool Predicate_vtInt(SDNode *inN) const { VTSDNode *N = cast<VTSDNode>(inN); return N->getVT().isInteger(); } inline bool Predicate_zextload(SDNode *N) const { return cast<LoadSDNode>(N)->getExtensionType() == ISD::ZEXTLOAD; } inline bool Predicate_zextloadi1(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i1; } inline bool Predicate_zextloadi16(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i16; } inline bool Predicate_zextloadi32(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i32; } inline bool Predicate_zextloadi8(SDNode *N) const { return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i8; } // The main instruction selector code. SDNode *SelectCode(SDNode *N) { // Opcodes are emitted as 2 bytes, TARGET_OPCODE handles this. #define TARGET_OPCODE(X) X & 255, unsigned(X) >> 8 static const unsigned char MatcherTable[] = { OPC_SwitchOpcode , 117|128,6|128,1, ISD::STORE, OPC_RecordMemRef, OPC_RecordNode, OPC_Scope, 43|128,1, OPC_RecordChild1, OPC_Scope, 49, OPC_CheckChild1Type, MVT::v4f32, OPC_RecordChild2, OPC_CheckPredicate, 0, OPC_Scope, 20, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 20, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTDQmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 41, OPC_CheckChild1Type, MVT::v2f64, OPC_RecordChild2, OPC_CheckPredicate, 0, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_Scope, 12, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTDQ_64mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 12, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTPDmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 25, OPC_CheckChild1Type, MVT::i32, OPC_RecordChild2, OPC_CheckPredicate, 1, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTImr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 25, OPC_CheckChild1Type, MVT::i64, OPC_RecordChild2, OPC_CheckPredicate, 1, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTI_64mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 23, OPC_CheckChild1Type, MVT::v4i32, OPC_RecordChild2, OPC_CheckPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTDQmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 1, 3, 4, 5, 6, 7, 0, 104|128,124, OPC_MoveChild, 1, OPC_SwitchOpcode , 68|128,20, ISD::OR, OPC_Scope, 46|128,19, OPC_MoveChild, 0, OPC_SwitchOpcode , 118|128,7, ISD::SRL, OPC_Scope, 44|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 79, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_RecordChild0, OPC_RecordChild0, OPC_CheckChild0Type, MVT::i32, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::ECX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 5, 79, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_RecordChild0, OPC_RecordChild0, OPC_CheckChild0Type, MVT::i16, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 5, 0, 39|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_Scope, 76, OPC_CheckInteger, 32, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 5, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/5, OPC_EmitMergeInputChains, 2, 0, 4, OPC_EmitCopyToReg, 3, X86::ECX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 1, 76, OPC_CheckInteger, 16, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 5, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/5, OPC_EmitMergeInputChains, 2, 0, 4, OPC_EmitCopyToReg, 3, X86::CX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 1, 0, 16|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 65, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 5, 65, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 5, 0, 15|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_Scope, 66, OPC_CheckInteger, 32, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 2, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 5, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/5, OPC_EmitMergeInputChains, 2, 0, 4, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 1, 66, OPC_CheckInteger, 16, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 2, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 5, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/5, OPC_EmitMergeInputChains, 2, 0, 4, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 1, 0, 72|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 61, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 7, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 4, 10, 61, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 7, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 4, 10, 63, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 7, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 4, 10, 0, 46|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 48, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 10, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 1, 10, 48, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 10, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 1, 10, 50, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 10, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 1, 10, 0, 0, 118|128,7, ISD::SHL, OPC_Scope, 44|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 79, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_RecordChild0, OPC_RecordChild0, OPC_CheckChild0Type, MVT::i32, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::ECX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 5, 79, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_RecordChild0, OPC_RecordChild0, OPC_CheckChild0Type, MVT::i16, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 5, 0, 39|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_Scope, 76, OPC_CheckInteger, 32, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 5, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/5, OPC_EmitMergeInputChains, 2, 0, 4, OPC_EmitCopyToReg, 3, X86::ECX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 1, 76, OPC_CheckInteger, 16, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 5, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/5, OPC_EmitMergeInputChains, 2, 0, 4, OPC_EmitCopyToReg, 3, X86::CX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 1, 0, 16|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 65, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 5, 65, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 5, 0, 15|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_Scope, 66, OPC_CheckInteger, 32, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 2, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 5, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/5, OPC_EmitMergeInputChains, 2, 0, 4, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 1, 66, OPC_CheckInteger, 16, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 2, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 5, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/5, OPC_EmitMergeInputChains, 2, 0, 4, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 6, 7, 8, 9, 10, 1, 0, 72|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 61, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 10, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 4, 10, 61, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 10, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 4, 10, 63, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 10, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 4, 10, 0, 46|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 48, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 7, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 1, 10, 48, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 7, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 1, 10, 50, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 7, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 1, 10, 0, 0, 53|128,3, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 75|128,1, OPC_CheckPredicate, 8, OPC_Scope, 113, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 32, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 32, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 32, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 84, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 37, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 35, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 0, 43, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 43, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 6|128,1, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 30, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 0, 0, 0, 16|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_SwitchType , 30, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 0, 0, 61|128,5, ISD::SHL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 46, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 44, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 44, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 83, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckType, MVT::i8, OPC_Scope, 37, OPC_CheckAndImm, 63, OPC_RecordChild0, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 33, OPC_CheckInteger, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 0, 40, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 40, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 87, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_Scope, 37, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 41, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 0, 44, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 44, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 85, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 40, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 35, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 0, 39, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 39, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 41, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 0, 61|128,5, ISD::SRL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 46, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 44, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 44, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 83, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckType, MVT::i8, OPC_Scope, 37, OPC_CheckAndImm, 63, OPC_RecordChild0, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 33, OPC_CheckInteger, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 0, 40, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 40, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 87, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_Scope, 37, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 41, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 0, 44, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 44, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 85, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 40, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 35, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 0, 39, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 39, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 41, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 0, 61|128,5, ISD::SRA, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 46, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 44, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 44, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 83, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckType, MVT::i8, OPC_Scope, 37, OPC_CheckAndImm, 63, OPC_RecordChild0, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 33, OPC_CheckInteger, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 0, 40, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 40, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 87, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_Scope, 37, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 41, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 0, 44, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 44, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 85, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 40, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 35, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 0, 39, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 39, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 41, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 0, 95|128,4, ISD::SUB, OPC_MoveChild, 0, OPC_Scope, 31|128,1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 36, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG8m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG16m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 36, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 0, 56|128,3, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 76|128,1, OPC_CheckPredicate, 8, OPC_Scope, 26|128,1, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 107, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 32, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 32, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 32, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 37, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 43, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 43, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 43, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 6|128,1, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 30, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 0, 0, 0, 17|128,6, ISD::XOR, OPC_Scope, 123|128,4, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 49, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT8m), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 47, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT16m), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 47, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT32m), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 123|128,1, OPC_CheckPredicate, 8, OPC_Scope, 47, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT64m), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 113, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 32, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 32, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 32, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 84, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 37, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 35, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 0, 43, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 43, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 6|128,1, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 30, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 0, 0, 16|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_SwitchType , 30, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 0, 0, 80|128,10, ISD::ADD, OPC_Scope, 58|128,9, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 41, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC8m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 41, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC16m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 41, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 50, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC8m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 50, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC16m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 50, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 88, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_Scope, 34, OPC_CheckInteger, 1, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 43, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 0, 41, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_16m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 41, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 50, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_16m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 50, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 52, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0|128,1, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitInteger, MVT::i16, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16mi8), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 8, 52, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0|128,1, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitInteger, MVT::i32, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32mi8), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 8, 56|128,2, OPC_CheckPredicate, 8, OPC_Scope, 107, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_Scope, 47, OPC_CheckInteger, 0|128,1, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitInteger, MVT::i64, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mi8), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 8, 51, OPC_CheckInteger, 0|128,0|128,0|128,0|128,0|128,1, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitInteger, MVT::i64, 0|128,0|128,0|128,0|128,120|128,127|128,127|128,127|128,127|128,1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mi32), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 8, 0, 26|128,1, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 107, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 32, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 32, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 32, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 37, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 43, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 43, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 43, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 6|128,1, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 30, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 0, 0, 16|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_SwitchType , 30, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 0, 0, 11|128,4, ISD::ROTL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 42, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 40, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 40, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 87, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_Scope, 37, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 41, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 0, 44, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 44, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 85, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 40, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 35, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 0, 39, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 39, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 41, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 0, 11|128,4, ISD::ROTR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 42, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 40, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 40, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 87, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_Scope, 37, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64m1), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 41, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 0, 44, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 44, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 85, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 40, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 9, 35, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 0, 39, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 39, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 41, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 3, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64mCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 4, 5, 6, 7, 8, 0, 79|128,4, ISD::AND, OPC_Scope, 57|128,3, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 75|128,1, OPC_CheckPredicate, 8, OPC_Scope, 113, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 32, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 32, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 32, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 84, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 37, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 35, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 0, 43, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 43, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 6|128,1, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 30, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 30, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 0, 0, 16|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_SwitchType , 30, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 30, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 0, 0, 112|128,4, ISD::ADDE, OPC_RecordNode, OPC_CaptureFlagInput, OPC_Scope, 80|128,3, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 86|128,1, OPC_CheckPredicate, 8, OPC_Scope, 34|128,1, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 113, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 34, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 34, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 34, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 0, 39, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64mi32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 0, 45, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 0, 45, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 45, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 14|128,1, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 32, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 4, 32, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 4, 32, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 4, 32, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 4, 0, 0, 24|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_SwitchType , 32, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 4, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/4, OPC_EmitMergeInputChains, 2, 0, 3, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 2, 32, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 4, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/4, OPC_EmitMergeInputChains, 2, 0, 3, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 2, 32, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 4, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/4, OPC_EmitMergeInputChains, 2, 0, 3, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 2, 32, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 4, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/4, OPC_EmitMergeInputChains, 2, 0, 3, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 2, 0, 0, 82|128,3, ISD::SUBE, OPC_RecordNode, OPC_CaptureFlagInput, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 86|128,1, OPC_CheckPredicate, 8, OPC_Scope, 34|128,1, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 113, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 34, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 34, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 34, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64mi8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 0, 39, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64mi32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 0, 45, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB8mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 0, 45, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 45, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_EmitConvertToTarget, 4, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32mi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 10, 14|128,1, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 32, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB8mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 4, 32, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 4, 32, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 4, 32, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MarkFlagResults, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64mr), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 4, 0, 0, 124|128,4, X86ISD::ADD, OPC_Scope, 85|128,3, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 45, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 45, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 124, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 37, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 37, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 35, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 43, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 43, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 38, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 36, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 36, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 38, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 0, 33|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 37, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 35, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 35, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 37, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 0, 0, 85|128,3, X86ISD::SUB, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 45, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 45, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 124, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 37, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 37, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 35, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 43, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 43, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 38, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 36, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 36, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 38, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 0, 124|128,4, X86ISD::OR, OPC_Scope, 85|128,3, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 45, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 45, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 124, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 37, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 37, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 35, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 43, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 43, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 38, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 36, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 36, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 38, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 0, 33|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 37, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 35, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 35, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 37, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 0, 0, 124|128,4, X86ISD::XOR, OPC_Scope, 85|128,3, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 45, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 45, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 124, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 37, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 37, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 35, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 43, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 43, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 38, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 36, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 36, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 38, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 0, 33|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 37, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 35, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 35, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 37, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 0, 0, 124|128,4, X86ISD::AND, OPC_Scope, 85|128,3, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 45, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 45, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 124, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 37, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 37, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 35, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 0, 43, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 43, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 9, 38, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 36, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 36, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 38, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 3, 0, 33|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 37, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 35, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 35, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 37, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 3, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 4, 5, 6, 7, 8, 1, 0, 0, 37|128,1, ISD::VECTOR_SHUFFLE, OPC_MoveChild, 0, OPC_SwitchOpcode , 50, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckPredicate, 13, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 3, 107, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild1, OPC_CheckPredicate, 13, OPC_SwitchType , 29, MVT::v4f32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 3, 29, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 3, 29, MVT::v2i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 4, 5, 6, 7, 8, 3, 0, 0, 27|128,2, X86ISD::SHLD, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 46, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 3, 10, 46, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 3, 10, 48, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 3, 10, 41, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckChild2Type, MVT::i8, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 3, 41, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckChild2Type, MVT::i8, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 3, 43, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckChild2Type, MVT::i8, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 3, 0, 27|128,2, X86ISD::SHRD, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 46, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 3, 10, 46, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 3, 10, 48, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitConvertToTarget, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64mri8), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 5, 6, 7, 8, 9, 3, 10, 41, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckChild2Type, MVT::i8, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 3, 41, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckChild2Type, MVT::i8, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 3, 43, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckChild2Type, MVT::i8, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_EmitCopyToReg, 4, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64mrCL), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 6, 5, 6, 7, 8, 9, 3, 0, 116|128,1, X86ISD::INC, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_SwitchType , 36, MVT::i8, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC8m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 76, MVT::i16, OPC_Scope, 36, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC16m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 36, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_16m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 0, 76, MVT::i32, OPC_Scope, 36, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 36, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 0, 36, MVT::i64, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 0, 116|128,1, X86ISD::DEC, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_SwitchType , 36, MVT::i8, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC8m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 76, MVT::i16, OPC_Scope, 36, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC16m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 36, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_16m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 0, 76, MVT::i32, OPC_Scope, 36, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 36, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 0, 36, MVT::i64, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckSame, 2, OPC_MoveParent, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 3, 4, 5, 6, 7, 0, 83|128,3, ISD::EXTRACT_VECTOR_ELT, OPC_Scope, 60|128,1, OPC_MoveChild, 0, OPC_SwitchOpcode , 99, ISD::VECTOR_SHUFFLE, OPC_Scope, 51, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckPredicate, 14, OPC_CheckType, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 44, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckPredicate, 14, OPC_CheckType, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPDmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 81, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v4f32, OPC_SwitchType , 34, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 38, MVT::v4i32, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::EXTRACTPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 4, 5, 6, 7, 8, 1, 9, 0, 0, 17|128,2, OPC_RecordChild0, OPC_Scope, 69, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_Scope, 20, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 30, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f64, 2, 1, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 9, 0, 76, OPC_CheckChild0Type, MVT::v2i64, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVPQI2QImr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 37, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRQmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 4, 5, 6, 7, 8, 1, 9, 0, 76, OPC_CheckChild0Type, MVT::v4i32, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVPDI2DImr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 37, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRDmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 4, 5, 6, 7, 8, 1, 9, 0, 45, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f32, 2, 1, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 9, 0, 0, 57|128,1, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckInteger, 8, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckPredicate, 15, OPC_SwitchType , 53, MVT::i64, OPC_MoveParent, OPC_CheckPredicate, 16, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i32, X86::GR64_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i64, 2, 1, 8, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 9, 10, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8mr_NOREX), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 11, 55, MVT::i32, OPC_MoveParent, OPC_CheckPredicate, 16, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i32, 2, 1, 8, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 9, 10, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8mr_NOREX), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 11, 55, MVT::i16, OPC_MoveParent, OPC_CheckPredicate, 16, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 1, 8, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 9, 10, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8mr_NOREX), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 11, 0, 54, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::EXTRACT_VECTOR_ELT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v4f32, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::EXTRACTPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 7, 4, 5, 6, 7, 8, 1, 9, 116|128,3, X86ISD::SETCC, OPC_MoveChild, 0, OPC_Scope, 30, OPC_CheckInteger, 4, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 7, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETLm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETGEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 8, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETLEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 5, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETGm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETBm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 1, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETAEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETBEm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 0, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETAm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 15, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETSm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 12, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNSm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 14, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETPm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 11, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNPm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 13, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETOm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 30, OPC_CheckInteger, 10, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNOm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 0, 116|128,1, X86ISD::Wrapper, OPC_RecordChild0, OPC_MoveChild, 0, OPC_SwitchOpcode , 57, ISD::TargetGlobalAddress, OPC_MoveParent, OPC_SwitchType , 24, MVT::i32, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 26, MVT::i64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 57, ISD::TargetExternalSymbol, OPC_MoveParent, OPC_SwitchType , 24, MVT::i32, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 26, MVT::i64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 57, ISD::TargetBlockAddress, OPC_MoveParent, OPC_SwitchType , 24, MVT::i32, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 26, MVT::i64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 29, ISD::TargetConstantPool, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 29, ISD::TargetJumpTable, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 0, 21|128,1, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_SwitchType , 28, MVT::i64, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mi32), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 8, 26, MVT::i8, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 8, 26, MVT::i16, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 8, 54, MVT::i32, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_Scope, 22, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 8, 24, OPC_CheckPredicate, 17, OPC_CheckPredicate, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 8, 0, 0, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::f64, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDto64mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 35, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 17, OPC_CheckPredicate, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16mi), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 8, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::f32, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSS2DImr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 85|128,6, OPC_RecordChild1, OPC_Scope, 51, OPC_CheckChild1Type, MVT::f32, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_Scope, 20, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp32m), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 20, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 79, OPC_CheckChild1Type, MVT::f64, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_Scope, 24, OPC_CheckPredicate, 17, OPC_CheckPredicate, 19, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 46, OPC_CheckPredicate, 5, OPC_Scope, 20, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp64m), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 20, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 0, 75, OPC_CheckChild1Type, MVT::f80, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_Scope, 46, OPC_CheckPredicate, 17, OPC_Scope, 20, OPC_CheckPredicate, 19, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 20, OPC_CheckPredicate, 20, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 20, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_FpP80m), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 25, OPC_CheckChild1Type, MVT::i8, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 25, OPC_CheckChild1Type, MVT::i16, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 63, OPC_CheckChild1Type, MVT::i32, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_Scope, 20, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 34, OPC_CheckPredicate, 17, OPC_CheckPredicate, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i32, 3, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i16, 2, 1, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 9, 0, 63, OPC_CheckChild1Type, MVT::i64, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_Scope, 20, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 34, OPC_CheckPredicate, 17, OPC_CheckPredicate, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i32, 3, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i16, 2, 1, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 9, 0, 53, OPC_CheckChild1Type, MVT::v4f32, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_Scope, 22, OPC_CheckPredicate, 21, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 20, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 53, OPC_CheckChild1Type, MVT::v2f64, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_Scope, 22, OPC_CheckPredicate, 21, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPDmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 20, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPDmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 49, OPC_CheckChild1Type, MVT::v2i64, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_Scope, 20, OPC_CheckPredicate, 21, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 49, OPC_CheckChild1Type, MVT::v4i32, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_Scope, 20, OPC_CheckPredicate, 21, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 49, OPC_CheckChild1Type, MVT::v8i16, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_Scope, 20, OPC_CheckPredicate, 21, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 49, OPC_CheckChild1Type, MVT::v16i8, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_Scope, 20, OPC_CheckPredicate, 21, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 49, OPC_CheckChild1Type, MVT::v1i64, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_Scope, 20, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 25, OPC_CheckChild1Type, MVT::v8i8, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 25, OPC_CheckChild1Type, MVT::v4i16, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 25, OPC_CheckChild1Type, MVT::v2i32, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 25, OPC_CheckChild1Type, MVT::v2f32, OPC_RecordChild2, OPC_CheckPredicate, 4, OPC_CheckPredicate, 5, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64mr), 0|OPFL_Chain|OPFL_MemRefs, 0, 6, 3, 4, 5, 6, 7, 1, 0, 0, 7|128,24, ISD::VECTOR_SHUFFLE, OPC_Scope, 82, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::f64, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_Scope, 23, OPC_CheckPredicate, 13, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 23, OPC_CheckPredicate, 22, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 0, 77, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_Scope, 22, OPC_CheckPredicate, 24, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 22, OPC_CheckPredicate, 25, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 0, 48|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_SwitchOpcode , 70, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::f64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_Scope, 23, OPC_CheckPredicate, 13, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 23, OPC_CheckPredicate, 22, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 0, 97, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPredicate, 13, OPC_SwitchType , 19, MVT::v4f32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 19, MVT::v2f64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 19, MVT::v4i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 19, MVT::v2i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 56, OPC_RecordNode, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckPredicate, 26, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 3, 4, 5, 6, 7, 8, 86, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_SwitchType , 31, MVT::v2f64, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckPredicate, 27, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 31, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckPredicate, 27, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 0, 122, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_SwitchType , 50, MVT::v4f32, OPC_Scope, 23, OPC_CheckPredicate, 14, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 23, OPC_CheckPredicate, 28, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 0, 50, MVT::v2f64, OPC_Scope, 23, OPC_CheckPredicate, 14, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 23, OPC_CheckPredicate, 28, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 126, OPC_MoveChild, 0, OPC_SwitchOpcode , 54, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckPredicate, 27, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 5, 2, 3, 4, 5, 6, 64, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckPredicate, 27, OPC_SwitchType , 20, MVT::v2f64, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 5, 2, 3, 4, 5, 6, 20, MVT::v2i64, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 0, 0, 86, OPC_RecordNode, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckType, MVT::v8i16, OPC_Scope, 26, OPC_CheckPredicate, 29, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitNodeXForm, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFHWmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 3, 4, 5, 6, 7, 8, 26, OPC_CheckPredicate, 30, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitNodeXForm, 2, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFLWmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 3, 4, 5, 6, 7, 8, 0, 51, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::f64, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckPredicate, 27, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 5, 2, 3, 4, 5, 6, 95, OPC_RecordNode, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_SwitchType , 37, MVT::v4f32, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckPredicate, 26, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 3, 4, 5, 6, 7, 8, 35, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckPredicate, 31, OPC_CheckType, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitNodeXForm, 3, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSHUFWmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 3, 4, 5, 6, 7, 8, 0, 45|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_Scope, 73, OPC_CheckPredicate, 28, OPC_SwitchType , 21, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 0, 73, OPC_CheckPredicate, 14, OPC_SwitchType , 21, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 0, 0, 70, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_Scope, 22, OPC_CheckPredicate, 24, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 22, OPC_CheckPredicate, 25, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 0, 53, OPC_RecordNode, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 32, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 2, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 7, 1, 4, 5, 6, 7, 8, 9, 12|128,2, OPC_RecordChild0, OPC_MoveChild, 1, OPC_SwitchOpcode , 73|128,1, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 34|128,1, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_Scope, 73, OPC_CheckPredicate, 33, OPC_SwitchType , 21, MVT::v8i8, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 0, 73, OPC_CheckPredicate, 34, OPC_SwitchType , 21, MVT::v8i8, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 0, 0, 30, X86ISD::VZEXT_LOAD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 22, OPC_CheckType, MVT::v4i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHPSrm), 0|OPFL_Chain, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 0, 57, ISD::UNDEF, OPC_MoveParent, OPC_Scope, 26, OPC_CheckPredicate, 27, OPC_SwitchType , 9, MVT::v4f32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLHPSrr), 0, 1, MVT::v4f32, 2, 0, 0, 9, MVT::v2i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLHPSrr), 0, 1, MVT::v2i64, 2, 0, 0, 0, 26, OPC_CheckPredicate, 35, OPC_SwitchType , 9, MVT::v4f32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHLPSrr), 0, 1, MVT::v4f32, 2, 0, 0, 9, MVT::v4i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHLPSrr), 0, 1, MVT::v4i32, 2, 0, 0, 0, 0, 0, 75, OPC_RecordNode, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPredicate, 32, OPC_SwitchType , 25, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 2, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 7, 1, 4, 5, 6, 7, 8, 9, 25, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 2, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 7, 1, 4, 5, 6, 7, 8, 9, 0, 7|128,1, OPC_RecordChild0, OPC_Scope, 67, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_Scope, 23, OPC_CheckPredicate, 28, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLQDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 23, OPC_CheckPredicate, 14, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHQDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 0, 63, OPC_RecordChild1, OPC_SwitchType , 30, MVT::v4f32, OPC_Scope, 13, OPC_CheckPredicate, 22, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLHPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 13, OPC_CheckPredicate, 36, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHLPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 0, 26, MVT::v4i32, OPC_Scope, 11, OPC_CheckPredicate, 22, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLHPSrr), 0, 1, MVT::v4i32, 2, 0, 1, 11, OPC_CheckPredicate, 36, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVHLPSrr), 0, 1, MVT::v4i32, 2, 0, 1, 0, 0, 0, 22, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_CheckPredicate, 37, OPC_MoveParent, OPC_RecordChild1, OPC_CheckPredicate, 38, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZPQILo2PQIrr), 0, 1, MVT::v2f64, 1, 0, 36, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_Scope, 12, OPC_CheckPredicate, 24, OPC_CheckPatternPredicate, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrr), 0, 1, MVT::v4i32, 1, 0, 12, OPC_CheckPredicate, 25, OPC_CheckPatternPredicate, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrr), 0, 1, MVT::v4i32, 1, 0, 0, 83, OPC_RecordNode, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_Scope, 36, OPC_CheckPredicate, 39, OPC_SwitchType , 14, MVT::v4i32, OPC_CheckPatternPredicate, 10, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0, 1, MVT::v4i32, 2, 1, 2, 14, MVT::v4f32, OPC_CheckPatternPredicate, 10, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0, 1, MVT::v4f32, 2, 1, 2, 0, 36, OPC_CheckPredicate, 40, OPC_SwitchType , 14, MVT::v4i32, OPC_CheckPatternPredicate, 10, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0, 1, MVT::v4i32, 2, 1, 2, 14, MVT::v4f32, OPC_CheckPatternPredicate, 10, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0, 1, MVT::v4f32, 2, 1, 2, 0, 0, 91|128,3, OPC_RecordChild0, OPC_Scope, 27|128,1, OPC_RecordChild1, OPC_Scope, 96, OPC_CheckPredicate, 38, OPC_SwitchType , 21, MVT::v4f32, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f32, 2, 1, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0, 1, MVT::v4f32, 2, 0, 3, 21, MVT::v2f64, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f64, 2, 1, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0, 1, MVT::v2f64, 2, 0, 3, 21, MVT::v4i32, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f32, 2, 1, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0, 1, MVT::v4i32, 2, 0, 3, 21, MVT::v2i64, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f64, 2, 1, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0, 1, MVT::v2i64, 2, 0, 3, 0, 54, OPC_CheckPredicate, 13, OPC_SwitchType , 23, MVT::v4f32, OPC_CheckPatternPredicate, 1, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f64, 2, 1, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0, 1, MVT::v4f32, 2, 0, 3, 23, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f64, 2, 1, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0, 1, MVT::v4i32, 2, 0, 3, 0, 0, 117|128,1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_Scope, 15, OPC_CheckPredicate, 41, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPDrr), 0, 1, MVT::v2f64, 2, 0, 0, 15, OPC_CheckPredicate, 14, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPDrr), 0, 1, MVT::v2f64, 2, 0, 0, 15, OPC_CheckPredicate, 41, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLQDQrr), 0, 1, MVT::v2i64, 2, 0, 0, 15, OPC_CheckPredicate, 14, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHQDQrr), 0, 1, MVT::v2i64, 2, 0, 0, 48, OPC_CheckPredicate, 39, OPC_SwitchType , 9, MVT::v4f32, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPSrr), 0, 1, MVT::v4f32, 2, 0, 0, 9, MVT::v16i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLBWrr), 0, 1, MVT::v16i8, 2, 0, 0, 9, MVT::v8i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLWDrr), 0, 1, MVT::v8i16, 2, 0, 0, 9, MVT::v4i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLDQrr), 0, 1, MVT::v4i32, 2, 0, 0, 0, 48, OPC_CheckPredicate, 40, OPC_SwitchType , 9, MVT::v4f32, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPSrr), 0, 1, MVT::v4f32, 2, 0, 0, 9, MVT::v16i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHBWrr), 0, 1, MVT::v16i8, 2, 0, 0, 9, MVT::v8i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHWDrr), 0, 1, MVT::v8i16, 2, 0, 0, 9, MVT::v4i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHDQrr), 0, 1, MVT::v4i32, 2, 0, 0, 0, 37, OPC_CheckPredicate, 42, OPC_SwitchType , 9, MVT::v8i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLBWrr), 0, 1, MVT::v8i8, 2, 0, 0, 9, MVT::v4i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLWDrr), 0, 1, MVT::v4i16, 2, 0, 0, 9, MVT::v2i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLDQrr), 0, 1, MVT::v2i32, 2, 0, 0, 0, 37, OPC_CheckPredicate, 43, OPC_SwitchType , 9, MVT::v8i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHBWrr), 0, 1, MVT::v8i8, 2, 0, 0, 9, MVT::v4i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHWDrr), 0, 1, MVT::v4i16, 2, 0, 0, 9, MVT::v2i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHDQrr), 0, 1, MVT::v2i32, 2, 0, 0, 0, 0, 67, OPC_RecordChild1, OPC_SwitchType , 30, MVT::v4f32, OPC_Scope, 13, OPC_CheckPredicate, 14, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 13, OPC_CheckPredicate, 28, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 0, 30, MVT::v2f64, OPC_Scope, 13, OPC_CheckPredicate, 14, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKHPDrr), 0, 1, MVT::v2f64, 2, 0, 1, 13, OPC_CheckPredicate, 28, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UNPCKLPDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 0, 0, 36, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 44, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v8i8, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 38, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0, 1, MVT::v2i64, 1, 0, 120, OPC_RecordNode, OPC_RecordChild0, OPC_Scope, 41, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckPredicate, 26, OPC_SwitchType , 14, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0, 1, MVT::v4i32, 2, 1, 2, 14, MVT::v4f32, OPC_CheckPatternPredicate, 1, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFDri), 0, 1, MVT::v4f32, 2, 1, 2, 0, 73, OPC_RecordChild1, OPC_CheckPredicate, 45, OPC_SwitchType , 15, MVT::v4i32, OPC_CheckPatternPredicate, 11, OPC_EmitNodeXForm, 4, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0, 1, MVT::v4i32, 3, 2, 1, 3, 15, MVT::v4f32, OPC_CheckPatternPredicate, 11, OPC_EmitNodeXForm, 4, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0, 1, MVT::v4f32, 3, 2, 1, 3, 15, MVT::v8i16, OPC_CheckPatternPredicate, 11, OPC_EmitNodeXForm, 4, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0, 1, MVT::v8i16, 3, 2, 1, 3, 15, MVT::v16i8, OPC_CheckPatternPredicate, 11, OPC_EmitNodeXForm, 4, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0, 1, MVT::v16i8, 3, 2, 1, 3, 0, 0, 46, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_RecordChild0, OPC_Scope, 18, OPC_CheckChild0Type, MVT::f32, OPC_MoveParent, OPC_CheckPredicate, 38, OPC_CheckType, MVT::v16i8, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0, 1, MVT::v16i8, 2, 0, 1, 18, OPC_CheckChild0Type, MVT::f64, OPC_MoveParent, OPC_CheckPredicate, 38, OPC_CheckType, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 45, OPC_RecordNode, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_CheckType, MVT::v8i16, OPC_Scope, 16, OPC_CheckPredicate, 29, OPC_CheckPatternPredicate, 1, OPC_EmitNodeXForm, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFHWri), 0, 1, MVT::v8i16, 2, 1, 2, 16, OPC_CheckPredicate, 30, OPC_CheckPatternPredicate, 1, OPC_EmitNodeXForm, 2, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFLWri), 0, 1, MVT::v8i16, 2, 1, 2, 0, 52, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_SwitchType , 28, MVT::v4f32, OPC_Scope, 12, OPC_CheckPredicate, 24, OPC_CheckPatternPredicate, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSHDUPrr), 0, 1, MVT::v4f32, 1, 0, 12, OPC_CheckPredicate, 25, OPC_CheckPatternPredicate, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSLDUPrr), 0, 1, MVT::v4f32, 1, 0, 0, 12, MVT::v2f64, OPC_CheckPredicate, 27, OPC_CheckPatternPredicate, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDDUPrr), 0, 1, MVT::v2f64, 1, 0, 0, 125, OPC_RecordNode, OPC_RecordChild0, OPC_Scope, 80, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::UNDEF, OPC_MoveParent, OPC_Scope, 53, OPC_CheckPredicate, 26, OPC_SwitchType , 13, MVT::v4f32, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrri), 0, 1, MVT::v4f32, 3, 1, 1, 2, 15, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrri), 0, 1, MVT::v2i64, 3, 1, 1, 2, 15, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrri), 0, 1, MVT::v2f64, 3, 1, 1, 2, 0, 18, OPC_CheckPredicate, 31, OPC_CheckType, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_EmitNodeXForm, 3, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSHUFWri), 0, 1, MVT::v4i16, 2, 1, 2, 0, 39, OPC_RecordChild1, OPC_CheckPredicate, 32, OPC_SwitchType , 15, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrri), 0, 1, MVT::v4f32, 3, 1, 2, 3, 15, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrri), 0, 1, MVT::v2f64, 3, 1, 2, 3, 0, 0, 118, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 56, OPC_CheckPredicate, 28, OPC_SwitchType , 11, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLBWrr), 0, 1, MVT::v16i8, 2, 0, 1, 11, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLWDrr), 0, 1, MVT::v8i16, 2, 0, 1, 11, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLDQrr), 0, 1, MVT::v4i32, 2, 0, 1, 11, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKLQDQrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 56, OPC_CheckPredicate, 14, OPC_SwitchType , 11, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHBWrr), 0, 1, MVT::v16i8, 2, 0, 1, 11, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHWDrr), 0, 1, MVT::v8i16, 2, 0, 1, 11, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHDQrr), 0, 1, MVT::v4i32, 2, 0, 1, 11, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PUNPCKHQDQrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 0, 62, OPC_RecordNode, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 38, OPC_CheckPredicate, 32, OPC_SwitchType , 15, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrri), 0, 1, MVT::v4i32, 3, 1, 2, 3, 15, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPDrri), 0, 1, MVT::v2i64, 3, 1, 2, 3, 0, 17, OPC_CheckPredicate, 13, OPC_CheckType, MVT::v4f32, OPC_EmitNodeXForm, 0, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHUFPSrri), 0, 1, MVT::v4f32, 3, 2, 1, 3, 0, 92, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 43, OPC_CheckPredicate, 33, OPC_SwitchType , 11, MVT::v8i8, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHBWrr), 0, 1, MVT::v8i8, 2, 0, 1, 11, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHWDrr), 0, 1, MVT::v4i16, 2, 0, 1, 11, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKHDQrr), 0, 1, MVT::v2i32, 2, 0, 1, 0, 43, OPC_CheckPredicate, 34, OPC_SwitchType , 11, MVT::v8i8, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLBWrr), 0, 1, MVT::v8i8, 2, 0, 1, 11, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLWDrr), 0, 1, MVT::v4i16, 2, 0, 1, 11, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLDQrr), 0, 1, MVT::v2i32, 2, 0, 1, 0, 0, 0, 83|128,5, X86ISD::VZEXT_MOVL, OPC_Scope, 101|128,4, OPC_MoveChild, 0, OPC_SwitchOpcode , 30|128,2, ISD::SCALAR_TO_VECTOR, OPC_Scope, 60|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 28, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 30, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 28, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 5, 2, 3, 4, 5, 6, 86, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_SwitchType , 38, MVT::f32, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i32, 0, OPC_EmitNode, TARGET_OPCODE(X86::MOVSSrm), 0|OPFL_Chain, 1, MVT::f32, 5, 2, 3, 4, 5, 6, OPC_EmitInteger, MVT::i32, 1, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 3, 7, 8, 9, 38, MVT::f64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i64, 0, OPC_EmitNode, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain, 1, MVT::f64, 5, 2, 3, 4, 5, 6, OPC_EmitInteger, MVT::i32, 2, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 3, 7, 8, 9, 0, 0, 93, OPC_RecordChild0, OPC_Scope, 29, OPC_CheckChild0Type, MVT::i32, OPC_MoveParent, OPC_SwitchType , 10, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZDI2PDIrr), 0, 1, MVT::v4i32, 1, 0, 10, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVZDI2PDIrr), 0, 1, MVT::v2i32, 1, 0, 0, 15, OPC_CheckChild0Type, MVT::i64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZQI2PQIrr), 0, 1, MVT::v2i64, 1, 0, 21, OPC_CheckChild0Type, MVT::f64, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_EmitNode, TARGET_OPCODE(X86::V_SET0), 0, 1, MVT::v2f64, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrr), 0, 1, MVT::v2f64, 2, 1, 0, 21, OPC_CheckChild0Type, MVT::f32, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_EmitNode, TARGET_OPCODE(X86::V_SET0), 0, 1, MVT::v4f32, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0, 1, MVT::v4f32, 2, 1, 0, 0, 0, 40|128,1, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_SwitchType , 80, MVT::v4f32, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 18, MVT::v4i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 18, MVT::v2i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 34, MVT::v2f64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i64, 0, OPC_EmitNode, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain, 1, MVT::f64, 5, 2, 3, 4, 5, 6, OPC_EmitInteger, MVT::i32, 2, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 3, 7, 8, 9, 0, 22, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 22, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZPQILo2PQIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 22, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 5, 2, 3, 4, 5, 6, 0, 18|128,1, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_SwitchType , 18, MVT::v4i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 42, MVT::v2i64, OPC_Scope, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 20, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZPQILo2PQIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 0, 34, MVT::v4f32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i32, 0, OPC_EmitNode, TARGET_OPCODE(X86::MOVSSrm), 0|OPFL_Chain, 1, MVT::f32, 5, 2, 3, 4, 5, 6, OPC_EmitInteger, MVT::i32, 1, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 3, 7, 8, 9, 34, MVT::v2f64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i64, 0, OPC_EmitNode, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain, 1, MVT::f64, 5, 2, 3, 4, 5, 6, OPC_EmitInteger, MVT::i32, 2, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 3, 7, 8, 9, 0, 0, 105, OPC_RecordChild0, OPC_SwitchType , 10, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZPQILo2PQIrr), 0, 1, MVT::v2i64, 1, 0, 16, MVT::v2i32, OPC_EmitNode, TARGET_OPCODE(X86::MMX_V_SET0), 0, 1, MVT::v8i8, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PUNPCKLDQrr), 0, 1, MVT::v2i32, 2, 0, 1, 28, MVT::v4f32, OPC_EmitNode, TARGET_OPCODE(X86::V_SET0), 0, 1, MVT::v4f32, 0, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f32, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0, 1, MVT::v4f32, 2, 1, 3, 28, MVT::v4i32, OPC_EmitNode, TARGET_OPCODE(X86::V_SET0), 0, 1, MVT::v4i32, 0, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f32, 2, 0, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrr), 0, 1, MVT::v4i32, 2, 1, 3, 10, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZPQILo2PQIrr), 0, 1, MVT::v2f64, 1, 0, 0, 0, 108|128,2, ISD::SCALAR_TO_VECTOR, OPC_Scope, 120|128,1, OPC_MoveChild, 0, OPC_SwitchOpcode , 50|128,1, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 84, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_SwitchType , 37, MVT::f32, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i32, 0, OPC_EmitNode, TARGET_OPCODE(X86::MOVSSrm), 0|OPFL_Chain, 1, MVT::f32, 5, 2, 3, 4, 5, 6, OPC_EmitInteger, MVT::i32, 1, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 3, 7, 8, 9, 37, MVT::f64, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i64, 0, OPC_EmitNode, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain, 1, MVT::f64, 5, 2, 3, 4, 5, 6, OPC_EmitInteger, MVT::i32, 2, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 3, 7, 8, 9, 0, 27, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 29, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 27, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 5, 2, 3, 4, 5, 6, 0, 61, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckType, MVT::i64, OPC_Scope, 13, OPC_CheckChild0Type, MVT::v8i8, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0, 1, MVT::v2i64, 1, 0, 13, OPC_CheckChild0Type, MVT::v4i16, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0, 1, MVT::v2i64, 1, 0, 13, OPC_CheckChild0Type, MVT::v2i32, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0, 1, MVT::v2i64, 1, 0, 13, OPC_CheckChild0Type, MVT::v1i64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0, 1, MVT::v2i64, 1, 0, 0, 0, 111, OPC_RecordChild0, OPC_Scope, 28, OPC_CheckChild0Type, MVT::i64, OPC_SwitchType , 10, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64toPQIrr), 0, 1, MVT::v2i64, 1, 0, 10, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64rrv164), 0, 1, MVT::v1i64, 1, 0, 0, 28, OPC_CheckChild0Type, MVT::i32, OPC_SwitchType , 10, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDI2PDIrr), 0, 1, MVT::v4i32, 1, 0, 10, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64rr), 0, 1, MVT::v2i32, 1, 0, 0, 24, OPC_CheckChild0Type, MVT::f32, OPC_CheckType, MVT::v4f32, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::IMPLICIT_DEF), 0, 1, MVT::v4f32, 0, OPC_EmitInteger, MVT::i32, 1, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::INSERT_SUBREG), 0, 1, MVT::v4f32, 3, 1, 0, 2, 24, OPC_CheckChild0Type, MVT::f64, OPC_CheckType, MVT::v2f64, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::IMPLICIT_DEF), 0, 1, MVT::v2f64, 0, OPC_EmitInteger, MVT::i32, 2, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::INSERT_SUBREG), 0, 1, MVT::v2f64, 3, 1, 0, 2, 0, 0, 90|128,11, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 62|128,1, OPC_CheckPredicate, 8, OPC_Scope, 24, OPC_CheckPredicate, 9, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 22, OPC_CheckPredicate, 46, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::GS_MOV32rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 22, OPC_CheckPredicate, 47, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FS_MOV32rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 22, OPC_CheckPredicate, 46, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64GSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 22, OPC_CheckPredicate, 47, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64FSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 68, OPC_CheckPredicate, 9, OPC_SwitchType , 20, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 20, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 18, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp80m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 5, 2, 3, 4, 5, 6, 0, 0, 74, OPC_CheckPredicate, 48, OPC_SwitchType , 22, MVT::f64, OPC_CheckPredicate, 49, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp32m64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 44, MVT::f80, OPC_Scope, 20, OPC_CheckPredicate, 50, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp64m80), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 5, 2, 3, 4, 5, 6, 20, OPC_CheckPredicate, 49, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp32m80), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 5, 2, 3, 4, 5, 6, 0, 0, 24, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i8, 5, 2, 3, 4, 5, 6, 22, OPC_CheckPredicate, 6, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 5, 2, 3, 4, 5, 6, 22, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 72, OPC_CheckPredicate, 51, OPC_Scope, 44, OPC_CheckPredicate, 52, OPC_SwitchType , 18, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX16rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 5, 2, 3, 4, 5, 6, 18, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 0, 22, OPC_CheckPredicate, 53, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 0, 9|128,1, OPC_CheckPredicate, 54, OPC_Scope, 44, OPC_CheckPredicate, 55, OPC_SwitchType , 18, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 5, 2, 3, 4, 5, 6, 18, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 0, 22, OPC_CheckPredicate, 56, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 64, OPC_CheckPredicate, 57, OPC_SwitchType , 18, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i8, 5, 2, 3, 4, 5, 6, 18, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 5, 2, 3, 4, 5, 6, 18, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 0, 0, 9|128,1, OPC_CheckPredicate, 48, OPC_Scope, 64, OPC_CheckPredicate, 58, OPC_SwitchType , 18, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i8, 5, 2, 3, 4, 5, 6, 18, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 5, 2, 3, 4, 5, 6, 18, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 0, 44, OPC_CheckPredicate, 59, OPC_SwitchType , 18, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 5, 2, 3, 4, 5, 6, 18, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 0, 22, OPC_CheckPredicate, 60, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 0, 24, OPC_CheckPredicate, 51, OPC_CheckPredicate, 53, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 24, OPC_CheckPredicate, 54, OPC_CheckPredicate, 56, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 24, OPC_CheckPredicate, 48, OPC_CheckPredicate, 60, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 22, OPC_CheckPredicate, 8, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 69, OPC_CheckPredicate, 51, OPC_CheckType, MVT::i64, OPC_Scope, 20, OPC_CheckPredicate, 52, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 20, OPC_CheckPredicate, 53, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 20, OPC_CheckPredicate, 61, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rm32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 0, 90, OPC_CheckPredicate, 54, OPC_CheckType, MVT::i64, OPC_Scope, 20, OPC_CheckPredicate, 55, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 20, OPC_CheckPredicate, 56, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 20, OPC_CheckPredicate, 62, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 20, OPC_CheckPredicate, 57, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 0, 69, OPC_CheckPredicate, 48, OPC_CheckType, MVT::i64, OPC_Scope, 20, OPC_CheckPredicate, 58, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 20, OPC_CheckPredicate, 59, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 20, OPC_CheckPredicate, 60, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 0, 24, OPC_CheckPredicate, 51, OPC_CheckPredicate, 53, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 24, OPC_CheckPredicate, 54, OPC_CheckPredicate, 56, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 24, OPC_CheckPredicate, 48, OPC_CheckPredicate, 60, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rm16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 101, OPC_CheckPredicate, 8, OPC_Scope, 24, OPC_CheckPredicate, 9, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 48, OPC_CheckPredicate, 63, OPC_SwitchType , 20, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsMOVAPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 20, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 0, 22, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 0, 26, OPC_CheckPredicate, 48, OPC_CheckPredicate, 49, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 12, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSS2SDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 61|128,1, OPC_CheckPredicate, 8, OPC_Scope, 48, OPC_CheckPredicate, 63, OPC_SwitchType , 20, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsMOVAPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 20, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 5, 2, 3, 4, 5, 6, 0, 22, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 5, 2, 3, 4, 5, 6, 44, OPC_CheckType, MVT::v4i32, OPC_Scope, 20, OPC_CheckPredicate, 63, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 0, 44, OPC_CheckType, MVT::v2i64, OPC_Scope, 20, OPC_CheckPredicate, 63, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVAPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 0, 22, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 5, 2, 3, 4, 5, 6, 0, 77, OPC_CheckPredicate, 48, OPC_SwitchType , 36, MVT::i64, OPC_CheckPredicate, 64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i64, 0, OPC_EmitNode, TARGET_OPCODE(X86::MOV32rm), 0|OPFL_Chain, 1, MVT::i32, 5, 2, 3, 4, 5, 6, OPC_EmitInteger, MVT::i32, 4, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 3, 7, 8, 9, 33, MVT::f64, OPC_CheckPredicate, 49, OPC_CheckPatternPredicate, 13, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitNode, TARGET_OPCODE(X86::MOVSSrm), 0|OPFL_Chain, 1, MVT::f32, 5, 2, 3, 4, 5, 6, OPC_EmitNode, TARGET_OPCODE(X86::CVTSS2SDrr), 0|OPFL_MemRefs, 1, MVT::f64, 1, 7, OPC_CompleteMatch, 1, 8, 0, 0, 60, X86ISD::VZEXT_LOAD, OPC_RecordNode, OPC_RecordChild1, OPC_SwitchType , 18, MVT::v2i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZQI2PQIrm), 0|OPFL_Chain, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 34, MVT::v2f64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitInteger, MVT::i64, 0, OPC_EmitNode, TARGET_OPCODE(X86::MOVSDrm), 0|OPFL_Chain, 1, MVT::f64, 5, 2, 3, 4, 5, 6, OPC_EmitInteger, MVT::i32, 2, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0|OPFL_Chain, 1, MVT::v2f64, 3, 7, 8, 9, 0, 9|128,9|128,1, ISD::INTRINSIC_WO_CHAIN, OPC_MoveChild, 0, OPC_Scope, 20|128,1, OPC_CheckInteger, 126|128,4, OPC_MoveParent, OPC_Scope, 0|128,1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 46, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 5, 2, 3, 4, 5, 6, 41, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 5, 2, 3, 4, 5, 6, 27, X86ISD::VZEXT_LOAD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBWrm), 0|OPFL_Chain, 1, MVT::v8i16, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBWrr), 0, 1, MVT::v8i16, 1, 0, 0, 20|128,1, OPC_CheckInteger, 0|128,5, OPC_MoveParent, OPC_Scope, 0|128,1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 46, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 41, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 27, X86ISD::VZEXT_LOAD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWDrm), 0|OPFL_Chain, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWDrr), 0, 1, MVT::v4i32, 1, 0, 0, 20|128,1, OPC_CheckInteger, 127|128,4, OPC_MoveParent, OPC_Scope, 0|128,1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 46, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 41, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 27, X86ISD::VZEXT_LOAD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXDQrm), 0|OPFL_Chain, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXDQrr), 0, 1, MVT::v2i64, 1, 0, 0, 20|128,1, OPC_CheckInteger, 4|128,5, OPC_MoveParent, OPC_Scope, 0|128,1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 46, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 5, 2, 3, 4, 5, 6, 41, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 5, 2, 3, 4, 5, 6, 27, X86ISD::VZEXT_LOAD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBWrm), 0|OPFL_Chain, 1, MVT::v8i16, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBWrr), 0, 1, MVT::v8i16, 1, 0, 0, 20|128,1, OPC_CheckInteger, 6|128,5, OPC_MoveParent, OPC_Scope, 0|128,1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 46, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 41, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 27, X86ISD::VZEXT_LOAD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWDrm), 0|OPFL_Chain, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWDrr), 0, 1, MVT::v4i32, 1, 0, 0, 20|128,1, OPC_CheckInteger, 5|128,5, OPC_MoveParent, OPC_Scope, 0|128,1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 46, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 41, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 27, X86ISD::VZEXT_LOAD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXDQrm), 0|OPFL_Chain, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXDQrr), 0, 1, MVT::v2i64, 1, 0, 0, 114, OPC_CheckInteger, 124|128,4, OPC_MoveParent, OPC_Scope, 95, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 44, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 39, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBDrr), 0, 1, MVT::v4i32, 1, 0, 0, 114, OPC_CheckInteger, 1|128,5, OPC_MoveParent, OPC_Scope, 95, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 44, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 39, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXWQrr), 0, 1, MVT::v2i64, 1, 0, 0, 114, OPC_CheckInteger, 2|128,5, OPC_MoveParent, OPC_Scope, 95, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 44, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 39, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBDrr), 0, 1, MVT::v4i32, 1, 0, 0, 114, OPC_CheckInteger, 7|128,5, OPC_MoveParent, OPC_Scope, 95, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 44, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 39, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXWQrr), 0, 1, MVT::v2i64, 1, 0, 0, 114, OPC_CheckInteger, 125|128,4, OPC_MoveParent, OPC_Scope, 95, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 44, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 39, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 65, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVSXBQrr), 0, 1, MVT::v2i64, 1, 0, 0, 114, OPC_CheckInteger, 3|128,5, OPC_MoveParent, OPC_Scope, 95, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 44, X86ISD::VZEXT_MOVL, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 39, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 65, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 0, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVZXBQrr), 0, 1, MVT::v2i64, 1, 0, 0, 82, OPC_CheckInteger, 99|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 52, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDPSrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDPSrri), 0, 1, MVT::v4f32, 3, 0, 1, 3, 0, 82, OPC_CheckInteger, 98|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 52, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDPDrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDPDrri), 0, 1, MVT::v2f64, 3, 0, 1, 3, 0, 82, OPC_CheckInteger, 110|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 52, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PBLENDWrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PBLENDWrri), 0, 1, MVT::v8i16, 3, 0, 1, 3, 0, 9|128,1, OPC_CheckInteger, 103|128,4, OPC_MoveParent, OPC_Scope, 53, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPSrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9, 53, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPSrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 7, 2, 4, 5, 6, 7, 8, 9, 22, OPC_RecordChild1, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPSrri), 0, 1, MVT::v4f32, 3, 0, 1, 3, 0, 9|128,1, OPC_CheckInteger, 102|128,4, OPC_MoveParent, OPC_Scope, 53, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPDrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9, 53, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPDrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 7, 2, 4, 5, 6, 7, 8, 9, 22, OPC_RecordChild1, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::DPPDrri), 0, 1, MVT::v2f64, 3, 0, 1, 3, 0, 9|128,1, OPC_CheckInteger, 107|128,4, OPC_MoveParent, OPC_Scope, 53, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MPSADBWrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 7, 0, 4, 5, 6, 7, 8, 9, 53, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MPSADBWrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 7, 2, 4, 5, 6, 7, 8, 9, 22, OPC_RecordChild1, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::MPSADBWrri), 0, 1, MVT::v16i8, 3, 0, 1, 3, 0, 73, OPC_CheckInteger, 38|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CMPSSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CMPSSrr), 0, 1, MVT::v4f32, 3, 0, 1, 3, 0, 75, OPC_CheckInteger, 37|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 45, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPSrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPSrri), 0, 1, MVT::v4f32, 3, 0, 1, 3, 0, 73, OPC_CheckInteger, 118|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CMPSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CMPSDrr), 0, 1, MVT::v2f64, 3, 0, 1, 3, 0, 61, OPC_CheckInteger, 126|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTDQ2PSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTDQ2PSrr), 0, 1, MVT::v4f32, 1, 0, 0, 61, OPC_CheckInteger, 125|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTDQ2PDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTDQ2PDrr), 0, 1, MVT::v2f64, 1, 0, 0, 75, OPC_CheckInteger, 117|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 45, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPDrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPDrri), 0, 1, MVT::v2f64, 3, 0, 1, 3, 0, 110, OPC_CheckInteger, 31|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 110, OPC_CheckInteger, 32|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDSWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 33|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 110, OPC_CheckInteger, 34|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDUSWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 73|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBSBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 64, OPC_CheckInteger, 74|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBSWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 75|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBUSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBUSBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 64, OPC_CheckInteger, 76|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBUSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBUSWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 50|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHUWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHUWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHUWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 49|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 51|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULUDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULUDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULUDQrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 110, OPC_CheckInteger, 43|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDWDrr), 0, 1, MVT::v4i32, 2, 0, 1, 0, 110, OPC_CheckInteger, 35|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 110, OPC_CheckInteger, 36|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PAVGWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 47|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 110, OPC_CheckInteger, 46|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 45|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 110, OPC_CheckInteger, 44|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 52|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSADBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSADBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSADBWrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 64, OPC_CheckInteger, 57|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 53|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDrr), 0, 1, MVT::v4i32, 2, 0, 1, 0, 64, OPC_CheckInteger, 56|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLQrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 64, OPC_CheckInteger, 69|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 65|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDrr), 0, 1, MVT::v4i32, 2, 0, 1, 0, 64, OPC_CheckInteger, 68|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLQrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 64, OPC_CheckInteger, 62|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRAWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRAWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 61|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRADrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRADrr), 0, 1, MVT::v4i32, 2, 0, 1, 0, 64, OPC_CheckInteger, 37|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 64, OPC_CheckInteger, 39|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 38|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQDrr), 0, 1, MVT::v4i32, 2, 0, 1, 0, 64, OPC_CheckInteger, 40|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 64, OPC_CheckInteger, 42|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 41|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTDrr), 0, 1, MVT::v4i32, 2, 0, 1, 0, 64, OPC_CheckInteger, 29|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKSSWBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKSSWBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 64, OPC_CheckInteger, 28|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKSSDWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKSSDWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 30|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKUSWBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKUSWBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 61, OPC_CheckInteger, 83|128,5, OPC_MoveParent, OPC_Scope, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSBrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSBrr64), 0, 1, MVT::v8i8, 1, 0, 0, 61, OPC_CheckInteger, 84|128,5, OPC_MoveParent, OPC_Scope, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSBrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSBrr128), 0, 1, MVT::v16i8, 1, 0, 0, 61, OPC_CheckInteger, 87|128,5, OPC_MoveParent, OPC_Scope, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSWrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSWrr64), 0, 1, MVT::v4i16, 1, 0, 0, 61, OPC_CheckInteger, 88|128,5, OPC_MoveParent, OPC_Scope, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSWrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSWrr128), 0, 1, MVT::v8i16, 1, 0, 0, 61, OPC_CheckInteger, 85|128,5, OPC_MoveParent, OPC_Scope, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSDrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSDrr64), 0, 1, MVT::v2i32, 1, 0, 0, 61, OPC_CheckInteger, 86|128,5, OPC_MoveParent, OPC_Scope, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSDrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PABSDrr128), 0, 1, MVT::v4i32, 1, 0, 0, 64, OPC_CheckInteger, 95|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDWrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDWrr64), 0, 1, MVT::v4i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 96|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDWrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDWrr128), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 91|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDDrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDDrr64), 0, 1, MVT::v2i32, 2, 0, 1, 0, 64, OPC_CheckInteger, 92|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDDrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDDrr128), 0, 1, MVT::v4i32, 2, 0, 1, 0, 64, OPC_CheckInteger, 93|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDSWrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDSWrr64), 0, 1, MVT::v4i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 94|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDSWrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHADDSWrr128), 0, 1, MVT::v4i32, 2, 0, 1, 0, 64, OPC_CheckInteger, 101|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBWrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBWrr64), 0, 1, MVT::v4i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 102|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBWrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBWrr128), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 97|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBDrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBDrr64), 0, 1, MVT::v2i32, 2, 0, 1, 0, 64, OPC_CheckInteger, 98|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBDrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBDrr128), 0, 1, MVT::v4i32, 2, 0, 1, 0, 64, OPC_CheckInteger, 99|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBSWrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBSWrr64), 0, 1, MVT::v4i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 100|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBSWrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHSUBSWrr128), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 103|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDUBSWrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDUBSWrr64), 0, 1, MVT::v4i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 104|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDUBSWrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMADDUBSWrr128), 0, 1, MVT::v8i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 105|128,5, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrr64), 0, 1, MVT::v4i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 106|128,5, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULHRSWrr128), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 107|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrr64), 0, 1, MVT::v8i8, 2, 0, 1, 0, 64, OPC_CheckInteger, 108|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrr128), 0, 1, MVT::v16i8, 2, 0, 1, 0, 64, OPC_CheckInteger, 109|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNBrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNBrr64), 0, 1, MVT::v8i8, 2, 0, 1, 0, 64, OPC_CheckInteger, 110|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNBrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNBrr128), 0, 1, MVT::v16i8, 2, 0, 1, 0, 64, OPC_CheckInteger, 113|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNWrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNWrr64), 0, 1, MVT::v4i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 114|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNWrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNWrr128), 0, 1, MVT::v8i16, 2, 0, 1, 0, 64, OPC_CheckInteger, 111|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNDrm64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNDrr64), 0, 1, MVT::v2i32, 2, 0, 1, 0, 64, OPC_CheckInteger, 112|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNDrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSIGNDrr128), 0, 1, MVT::v4i32, 2, 0, 1, 0, 81, OPC_CheckInteger, 89|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 48, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_EmitNodeXForm, 5, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 7, 0, 4, 5, 6, 7, 8, 10, 24, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_EmitConvertToTarget, 2, OPC_EmitNodeXForm, 5, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR64rr), 0, 1, MVT::v1i64, 3, 0, 1, 4, 0, 81, OPC_CheckInteger, 90|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 48, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_EmitNodeXForm, 5, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 7, 0, 4, 5, 6, 7, 8, 10, 24, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_EmitConvertToTarget, 2, OPC_EmitNodeXForm, 5, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PALIGNR128rr), 0, 1, MVT::v2i64, 3, 0, 1, 4, 0, 72, OPC_CheckInteger, 14|128,5, OPC_MoveParent, OPC_Scope, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDPSm_Int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 3, 4, 5, 6, 7, 8, 20, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDPSr_Int), 0, 1, MVT::v4f32, 2, 0, 2, 0, 72, OPC_CheckInteger, 13|128,5, OPC_MoveParent, OPC_Scope, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDPDm_Int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 3, 4, 5, 6, 7, 8, 20, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDPDr_Int), 0, 1, MVT::v2f64, 2, 0, 2, 0, 61, OPC_CheckInteger, 115|128,4, OPC_MoveParent, OPC_Scope, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 66, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHMINPOSUWrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PHMINPOSUWrr128), 0, 1, MVT::v8i16, 1, 0, 0, 110, OPC_CheckInteger, 111|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 64, OPC_CheckInteger, 108|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKUSDWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PACKUSDWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 120|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 110, OPC_CheckInteger, 121|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINSDrr), 0, 1, MVT::v4i32, 2, 0, 1, 0, 110, OPC_CheckInteger, 122|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUDrr), 0, 1, MVT::v4i32, 2, 0, 1, 0, 110, OPC_CheckInteger, 123|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMINUWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 116|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSBrr), 0, 1, MVT::v16i8, 2, 0, 1, 0, 110, OPC_CheckInteger, 117|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXSDrr), 0, 1, MVT::v4i32, 2, 0, 1, 0, 110, OPC_CheckInteger, 118|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUDrr), 0, 1, MVT::v4i32, 2, 0, 1, 0, 110, OPC_CheckInteger, 119|128,4, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMAXUWrr), 0, 1, MVT::v8i16, 2, 0, 1, 0, 110, OPC_CheckInteger, 8|128,5, OPC_MoveParent, OPC_Scope, 44, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 44, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULDQrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 72, OPC_CheckInteger, 100|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 47, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild3, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::XMM0, OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDVPDrm0), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 4, 5, 6, 7, 8, 16, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 4, OPC_EmitCopyToReg, 2, X86::XMM0, OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDVPDrr0), 0|OPFL_FlagInput, 1, MVT::v2f64, 2, 0, 1, 0, 72, OPC_CheckInteger, 101|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 47, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild3, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::XMM0, OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDVPSrm0), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 4, 5, 6, 7, 8, 16, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 4, OPC_EmitCopyToReg, 2, X86::XMM0, OPC_MorphNodeTo, TARGET_OPCODE(X86::BLENDVPSrr0), 0|OPFL_FlagInput, 1, MVT::v4f32, 2, 0, 1, 0, 72, OPC_CheckInteger, 109|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 47, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild3, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::XMM0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PBLENDVBrm0), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 4, 5, 6, 7, 8, 16, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 4, OPC_EmitCopyToReg, 2, X86::XMM0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PBLENDVBrr0), 0|OPFL_FlagInput, 1, MVT::v16i8, 2, 0, 1, 0, 64, OPC_CheckInteger, 28|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 14, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTQrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 75, OPC_CheckInteger, 29|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 44, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIrm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9, 22, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIrr), 0, 2, MVT::i32, MVT::i32, 3, 0, 1, 3, 0, 75, OPC_CheckInteger, 30|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 44, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIArm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9, 22, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIArr), 0, 2, MVT::i32, MVT::i32, 3, 0, 1, 3, 0, 75, OPC_CheckInteger, 31|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 44, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRICrm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9, 22, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRICrr), 0, 2, MVT::i32, MVT::i32, 3, 0, 1, 3, 0, 75, OPC_CheckInteger, 32|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 44, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIOrm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9, 22, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIOrr), 0, 2, MVT::i32, MVT::i32, 3, 0, 1, 3, 0, 75, OPC_CheckInteger, 33|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 44, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRISrm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9, 22, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRISrr), 0, 2, MVT::i32, MVT::i32, 3, 0, 1, 3, 0, 75, OPC_CheckInteger, 34|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 44, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIZrm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 4, 5, 6, 7, 8, 9, 22, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRIZrr), 0, 2, MVT::i32, MVT::i32, 3, 0, 1, 3, 0, 90, OPC_CheckInteger, 21|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_Scope, 51, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 2, OPC_EmitConvertToTarget, 5, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 4, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11, 29, OPC_RecordChild3, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 4, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 3, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIrr), 0|OPFL_FlagInput, 2, MVT::i32, MVT::i32, 3, 0, 2, 5, 0, 90, OPC_CheckInteger, 22|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_Scope, 51, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 2, OPC_EmitConvertToTarget, 5, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 4, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIArm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11, 29, OPC_RecordChild3, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 4, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 3, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIArr), 0|OPFL_FlagInput, 2, MVT::i32, MVT::i32, 3, 0, 2, 5, 0, 90, OPC_CheckInteger, 23|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_Scope, 51, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 2, OPC_EmitConvertToTarget, 5, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 4, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRICrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11, 29, OPC_RecordChild3, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 4, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 3, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRICrr), 0|OPFL_FlagInput, 2, MVT::i32, MVT::i32, 3, 0, 2, 5, 0, 90, OPC_CheckInteger, 24|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_Scope, 51, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 2, OPC_EmitConvertToTarget, 5, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 4, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIOrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11, 29, OPC_RecordChild3, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 4, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 3, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIOrr), 0|OPFL_FlagInput, 2, MVT::i32, MVT::i32, 3, 0, 2, 5, 0, 90, OPC_CheckInteger, 25|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_Scope, 51, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 2, OPC_EmitConvertToTarget, 5, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 4, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRISrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11, 29, OPC_RecordChild3, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 4, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 3, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRISrr), 0|OPFL_FlagInput, 2, MVT::i32, MVT::i32, 3, 0, 2, 5, 0, 90, OPC_CheckInteger, 26|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_Scope, 51, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 2, OPC_EmitConvertToTarget, 5, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 4, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIZrm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 7, 0, 6, 7, 8, 9, 10, 11, 29, OPC_RecordChild3, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 4, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 3, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRIZrr), 0|OPFL_FlagInput, 2, MVT::i32, MVT::i32, 3, 0, 2, 5, 0, 106, OPC_CheckInteger, 73|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 106, OPC_CheckInteger, 74|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDSWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 106, OPC_CheckInteger, 75|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 106, OPC_CheckInteger, 76|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDUSWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 62, OPC_CheckInteger, 111|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBSBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 62, OPC_CheckInteger, 112|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBSWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 62, OPC_CheckInteger, 113|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBUSBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBUSBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 62, OPC_CheckInteger, 114|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBUSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBUSWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 106, OPC_CheckInteger, 91|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 106, OPC_CheckInteger, 92|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHUWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHUWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULHUWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 106, OPC_CheckInteger, 93|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULUDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULUDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULUDQrr), 0, 1, MVT::v2i32, 2, 0, 1, 0, 106, OPC_CheckInteger, 85|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMADDWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMADDWDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMADDWDrr), 0, 1, MVT::v2i32, 2, 0, 1, 0, 106, OPC_CheckInteger, 77|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 106, OPC_CheckInteger, 78|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PAVGWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 106, OPC_CheckInteger, 89|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINUBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINUBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINUBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 106, OPC_CheckInteger, 88|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMINSWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 106, OPC_CheckInteger, 87|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXUBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXUBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXUBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 106, OPC_CheckInteger, 86|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXSWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMAXSWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 106, OPC_CheckInteger, 94|128,3, OPC_MoveParent, OPC_Scope, 42, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSADBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSADBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSADBWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 62, OPC_CheckInteger, 107|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 62, OPC_CheckInteger, 105|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLDrr), 0, 1, MVT::v2i32, 2, 0, 1, 0, 62, OPC_CheckInteger, 106|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLQrr), 0, 1, MVT::v1i64, 2, 0, 1, 0, 62, OPC_CheckInteger, 97|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 62, OPC_CheckInteger, 95|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLDrr), 0, 1, MVT::v2i32, 2, 0, 1, 0, 62, OPC_CheckInteger, 96|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLQrr), 0, 1, MVT::v1i64, 2, 0, 1, 0, 62, OPC_CheckInteger, 102|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRAWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRAWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 62, OPC_CheckInteger, 101|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRADrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRADrr), 0, 1, MVT::v2i32, 2, 0, 1, 0, 62, OPC_CheckInteger, 79|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 62, OPC_CheckInteger, 81|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 62, OPC_CheckInteger, 80|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQDrr), 0, 1, MVT::v2i32, 2, 0, 1, 0, 62, OPC_CheckInteger, 82|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 62, OPC_CheckInteger, 84|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 62, OPC_CheckInteger, 83|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTDrr), 0, 1, MVT::v2i32, 2, 0, 1, 0, 62, OPC_CheckInteger, 71|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKSSWBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKSSWBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 62, OPC_CheckInteger, 70|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKSSDWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKSSDWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 62, OPC_CheckInteger, 72|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 41, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKUSWBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PACKUSWBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 73, OPC_CheckInteger, 35|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 43, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRM128MEM), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPISTRM128REG), 0, 1, MVT::v16i8, 3, 0, 1, 3, 0, 88, OPC_CheckInteger, 27|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_Scope, 50, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/3, OPC_EmitMergeInputChains, 1, 2, OPC_EmitConvertToTarget, 5, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 4, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRM128MEM), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::v16i8, 7, 0, 6, 7, 8, 9, 10, 11, 28, OPC_RecordChild3, OPC_RecordChild4, OPC_RecordChild5, OPC_MoveChild, 5, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_EmitConvertToTarget, 4, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 3, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPESTRM128REG), 0|OPFL_FlagInput, 1, MVT::v16i8, 3, 0, 2, 5, 0, 52, OPC_CheckInteger, 4|128,4, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SI64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SI64rr), 0, 1, MVT::i64, 1, 0, 0, 52, OPC_CheckInteger, 12|128,4, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSD2SI64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSD2SI64rr), 0, 1, MVT::i64, 1, 0, 0, 57, OPC_CheckInteger, 7|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SD64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SD64rr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 57, OPC_CheckInteger, 50|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SS64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SS64rr), 0, 1, MVT::v4f32, 2, 0, 1, 0, 52, OPC_CheckInteger, 52|128,5, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SI64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SI64rr), 0, 1, MVT::i64, 1, 0, 0, 52, OPC_CheckInteger, 56|128,5, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSS2SI64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSS2SI64rr), 0, 1, MVT::i64, 1, 0, 0, 52, OPC_CheckInteger, 51|128,5, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SIrr), 0, 1, MVT::i32, 1, 0, 0, 52, OPC_CheckInteger, 48|128,5, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2PIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2PIrr), 0, 1, MVT::v2i32, 1, 0, 0, 52, OPC_CheckInteger, 54|128,5, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPS2PIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPS2PIrr), 0, 1, MVT::v2i32, 1, 0, 0, 55, OPC_CheckInteger, 47|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 34, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPI2PSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPI2PSrr), 0, 1, MVT::v4f32, 2, 0, 1, 0, 52, OPC_CheckInteger, 55|128,5, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSS2SIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSS2SIrr), 0, 1, MVT::i32, 1, 0, 0, 55, OPC_CheckInteger, 49|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 34, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SSrr), 0, 1, MVT::v4f32, 2, 0, 1, 0, 57, OPC_CheckInteger, 60|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPSrm_Int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPSrr_Int), 0, 1, MVT::v4f32, 2, 0, 1, 0, 57, OPC_CheckInteger, 62|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPSrm_Int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPSrr_Int), 0, 1, MVT::v4f32, 2, 0, 1, 0, 54, OPC_CheckInteger, 72|128,5, OPC_MoveParent, OPC_Scope, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPSm_Int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPSr_Int), 0, 1, MVT::v4f32, 1, 0, 0, 54, OPC_CheckInteger, 69|128,5, OPC_MoveParent, OPC_Scope, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTPSm_Int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTPSr_Int), 0, 1, MVT::v4f32, 1, 0, 0, 54, OPC_CheckInteger, 67|128,5, OPC_MoveParent, OPC_Scope, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPPSm_Int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPPSr_Int), 0, 1, MVT::v4f32, 1, 0, 0, 52, OPC_CheckInteger, 3|128,4, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SIrr), 0, 1, MVT::i32, 1, 0, 0, 54, OPC_CheckInteger, 45|128,5, OPC_MoveParent, OPC_Scope, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2PIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2PIrr), 0, 1, MVT::v2i32, 1, 0, 0, 54, OPC_CheckInteger, 53|128,5, OPC_MoveParent, OPC_Scope, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPD2PIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPD2PIrr), 0, 1, MVT::v2i32, 1, 0, 0, 52, OPC_CheckInteger, 46|128,5, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPI2PDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPI2PDrr), 0, 1, MVT::v2f64, 1, 0, 0, 52, OPC_CheckInteger, 11|128,4, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSD2SIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTSD2SIrr), 0, 1, MVT::i32, 1, 0, 0, 57, OPC_CheckInteger, 18|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPDrm_Int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPDrr_Int), 0, 1, MVT::v2f64, 2, 0, 1, 0, 57, OPC_CheckInteger, 21|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPDrm_Int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPDrr_Int), 0, 1, MVT::v2f64, 2, 0, 1, 0, 54, OPC_CheckInteger, 1|128,4, OPC_MoveParent, OPC_Scope, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2DQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2DQrr), 0, 1, MVT::v4i32, 1, 0, 0, 54, OPC_CheckInteger, 10|128,4, OPC_MoveParent, OPC_Scope, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPS2DQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPS2DQrr), 0, 1, MVT::v4i32, 1, 0, 0, 54, OPC_CheckInteger, 127|128,3, OPC_MoveParent, OPC_Scope, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2DQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2DQrr), 0, 1, MVT::v4i32, 1, 0, 0, 54, OPC_CheckInteger, 9|128,4, OPC_MoveParent, OPC_Scope, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPD2DQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPD2DQrr), 0, 1, MVT::v4i32, 1, 0, 0, 52, OPC_CheckInteger, 2|128,4, OPC_MoveParent, OPC_Scope, 33, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2PDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPS2PDrr), 0, 1, MVT::v2f64, 1, 0, 0, 54, OPC_CheckInteger, 0|128,4, OPC_MoveParent, OPC_Scope, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2PSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPD2PSrr), 0, 1, MVT::v4f32, 1, 0, 0, 55, OPC_CheckInteger, 6|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 34, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSI2SDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 55, OPC_CheckInteger, 5|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 34, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSD2SSrr), 0, 1, MVT::v4f32, 2, 0, 1, 0, 55, OPC_CheckInteger, 8|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 34, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTSS2SDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 54, OPC_CheckInteger, 77|128,4, OPC_MoveParent, OPC_Scope, 35, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPDm_Int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 5, 2, 3, 4, 5, 6, 11, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPDr_Int), 0, 1, MVT::v2f64, 1, 0, 0, 57, OPC_CheckInteger, 90|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSUBPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSUBPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 0, 57, OPC_CheckInteger, 89|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSUBPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSUBPDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 57, OPC_CheckInteger, 92|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::HADDPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::HADDPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 0, 57, OPC_CheckInteger, 91|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::HADDPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::HADDPDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 57, OPC_CheckInteger, 94|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::HSUBPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::HSUBPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 0, 57, OPC_CheckInteger, 93|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::HSUBPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::HSUBPDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 96, OPC_CheckInteger, 9|128,5, OPC_MoveParent, OPC_Scope, 37, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLDrm_int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 37, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLDrm_int), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLDrr_int), 0, 1, MVT::v4i32, 2, 0, 1, 0, 55, OPC_CheckInteger, 20|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 34, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32m8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 14, OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32r8), 0, 1, MVT::i32, 2, 0, 1, 0, 55, OPC_CheckInteger, 17|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 34, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32m16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 14, OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32r16), 0, 1, MVT::i32, 2, 0, 1, 0, 55, OPC_CheckInteger, 18|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 34, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 14, OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC32r32), 0, 1, MVT::i32, 2, 0, 1, 0, 55, OPC_CheckInteger, 19|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_Scope, 34, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 14, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC64m64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild2, OPC_CheckPatternPredicate, 14, OPC_MorphNodeTo, TARGET_OPCODE(X86::CRC64r64), 0, 1, MVT::i64, 2, 0, 1, 0, 52, OPC_CheckInteger, 16|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_Scope, 22, OPC_CheckComplexPat, /*CP*/1, /*#*/1, OPC_EmitMergeInputChains, 1, 8, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDSSm_Int), 0|OPFL_Chain, 1, MVT::v4f32, 7, 0, 3, 4, 5, 6, 7, 9, 12, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDSSr_Int), 0, 1, MVT::v4f32, 3, 0, 1, 3, 0, 52, OPC_CheckInteger, 15|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_Scope, 22, OPC_CheckComplexPat, /*CP*/2, /*#*/1, OPC_EmitMergeInputChains, 1, 8, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDSDm_Int), 0|OPFL_Chain, 1, MVT::v2f64, 7, 0, 3, 4, 5, 6, 7, 9, 12, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROUNDSDr_Int), 0, 1, MVT::v2f64, 3, 0, 1, 3, 0, 40, OPC_CheckInteger, 36|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/1, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSSrm_Int), 0|OPFL_Chain, 1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSSrr_Int), 0, 1, MVT::v4f32, 2, 0, 1, 0, 40, OPC_CheckInteger, 66|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/1, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSSrm_Int), 0|OPFL_Chain, 1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSSrr_Int), 0, 1, MVT::v4f32, 2, 0, 1, 0, 40, OPC_CheckInteger, 76|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/1, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSSrm_Int), 0|OPFL_Chain, 1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSSrr_Int), 0, 1, MVT::v4f32, 2, 0, 1, 0, 40, OPC_CheckInteger, 57|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/1, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSSrm_Int), 0|OPFL_Chain, 1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSSrr_Int), 0, 1, MVT::v4f32, 2, 0, 1, 0, 40, OPC_CheckInteger, 61|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/1, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSSrm_Int), 0|OPFL_Chain, 1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSSrr_Int), 0, 1, MVT::v4f32, 2, 0, 1, 0, 40, OPC_CheckInteger, 63|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/1, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSSrm_Int), 0|OPFL_Chain, 1, MVT::v4f32, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSSrr_Int), 0, 1, MVT::v4f32, 2, 0, 1, 0, 37, OPC_CheckInteger, 73|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_Scope, 18, OPC_CheckComplexPat, /*CP*/1, /*#*/0, OPC_EmitMergeInputChains, 1, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSSm_Int), 0|OPFL_Chain, 1, MVT::v4f32, 5, 1, 2, 3, 4, 5, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSSr_Int), 0, 1, MVT::v4f32, 1, 0, 0, 37, OPC_CheckInteger, 70|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_Scope, 18, OPC_CheckComplexPat, /*CP*/1, /*#*/0, OPC_EmitMergeInputChains, 1, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTSSm_Int), 0|OPFL_Chain, 1, MVT::v4f32, 5, 1, 2, 3, 4, 5, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTSSr_Int), 0, 1, MVT::v4f32, 1, 0, 0, 37, OPC_CheckInteger, 68|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_Scope, 18, OPC_CheckComplexPat, /*CP*/1, /*#*/0, OPC_EmitMergeInputChains, 1, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPSSm_Int), 0|OPFL_Chain, 1, MVT::v4f32, 5, 1, 2, 3, 4, 5, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPSSr_Int), 0, 1, MVT::v4f32, 1, 0, 0, 40, OPC_CheckInteger, 115|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/2, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSDrm_Int), 0|OPFL_Chain, 1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSDrr_Int), 0, 1, MVT::v2f64, 2, 0, 1, 0, 40, OPC_CheckInteger, 27|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/2, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSDrm_Int), 0|OPFL_Chain, 1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSDrr_Int), 0, 1, MVT::v2f64, 2, 0, 1, 0, 40, OPC_CheckInteger, 82|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/2, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSDrm_Int), 0|OPFL_Chain, 1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSDrr_Int), 0, 1, MVT::v2f64, 2, 0, 1, 0, 40, OPC_CheckInteger, 13|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/2, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSDrm_Int), 0|OPFL_Chain, 1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSDrr_Int), 0, 1, MVT::v2f64, 2, 0, 1, 0, 40, OPC_CheckInteger, 19|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/2, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSDrm_Int), 0|OPFL_Chain, 1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSDrr_Int), 0, 1, MVT::v2f64, 2, 0, 1, 0, 40, OPC_CheckInteger, 22|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_Scope, 19, OPC_CheckComplexPat, /*CP*/2, /*#*/1, OPC_EmitMergeInputChains, 1, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSDrm_Int), 0|OPFL_Chain, 1, MVT::v2f64, 6, 0, 2, 3, 4, 5, 6, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSDrr_Int), 0, 1, MVT::v2f64, 2, 0, 1, 0, 37, OPC_CheckInteger, 78|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_Scope, 18, OPC_CheckComplexPat, /*CP*/2, /*#*/0, OPC_EmitMergeInputChains, 1, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSDm_Int), 0|OPFL_Chain, 1, MVT::v2f64, 5, 1, 2, 3, 4, 5, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSDr_Int), 0, 1, MVT::v2f64, 1, 0, 0, 24, OPC_CheckInteger, 60|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLWri), 0, 1, MVT::v8i16, 2, 0, 2, 24, OPC_CheckInteger, 58|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDri), 0, 1, MVT::v4i32, 2, 0, 2, 24, OPC_CheckInteger, 59|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLQri), 0, 1, MVT::v2i64, 2, 0, 2, 24, OPC_CheckInteger, 72|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLWri), 0, 1, MVT::v8i16, 2, 0, 2, 24, OPC_CheckInteger, 70|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDri), 0, 1, MVT::v4i32, 2, 0, 2, 24, OPC_CheckInteger, 71|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLQri), 0, 1, MVT::v2i64, 2, 0, 2, 24, OPC_CheckInteger, 64|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRAWri), 0, 1, MVT::v8i16, 2, 0, 2, 24, OPC_CheckInteger, 63|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRADri), 0, 1, MVT::v4i32, 2, 0, 2, 27, OPC_CheckInteger, 54|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_EmitNodeXForm, 5, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDQri), 0, 1, MVT::v2i64, 2, 0, 3, 27, OPC_CheckInteger, 66|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_EmitNodeXForm, 5, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDQri), 0, 1, MVT::v2i64, 2, 0, 3, 24, OPC_CheckInteger, 55|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDQri), 0, 1, MVT::v2i64, 2, 0, 2, 24, OPC_CheckInteger, 67|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDQri), 0, 1, MVT::v2i64, 2, 0, 2, 24, OPC_CheckInteger, 105|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::INSERTPSrr), 0, 1, MVT::v4f32, 3, 0, 1, 3, 24, OPC_CheckInteger, 110|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLWri), 0, 1, MVT::v4i16, 2, 0, 2, 24, OPC_CheckInteger, 108|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLDri), 0, 1, MVT::v2i32, 2, 0, 2, 24, OPC_CheckInteger, 109|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLQri), 0, 1, MVT::v1i64, 2, 0, 2, 24, OPC_CheckInteger, 100|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLWri), 0, 1, MVT::v4i16, 2, 0, 2, 24, OPC_CheckInteger, 98|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLDri), 0, 1, MVT::v2i32, 2, 0, 2, 24, OPC_CheckInteger, 99|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLQri), 0, 1, MVT::v1i64, 2, 0, 2, 24, OPC_CheckInteger, 104|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRAWri), 0, 1, MVT::v4i16, 2, 0, 2, 24, OPC_CheckInteger, 103|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRADri), 0, 1, MVT::v2i32, 2, 0, 2, 15, OPC_CheckInteger, 64|128,5, OPC_MoveParent, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVMSKPSrr), 0, 1, MVT::i32, 1, 0, 15, OPC_CheckInteger, 23|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVMSKPDrr), 0, 1, MVT::i32, 1, 0, 15, OPC_CheckInteger, 48|128,4, OPC_MoveParent, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMOVMSKBrr), 0, 1, MVT::i32, 1, 0, 15, OPC_CheckInteger, 90|128,3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMOVMSKBrr), 0, 1, MVT::i32, 1, 0, 0, 65|128,32, ISD::AND, OPC_Scope, 118|128,14, OPC_MoveChild, 0, OPC_SwitchOpcode , 33|128,7, ISD::XOR, OPC_Scope, 45|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_Scope, 57, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 57, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 50, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 0, 12|128,2, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 44|128,1, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_SwitchType , 41, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 41, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 41, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 37, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 0, 82, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_SwitchType , 37, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 37, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 72|128,2, OPC_MoveChild, 0, OPC_SwitchOpcode , 50, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 13|128,2, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 48|128,1, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_SwitchType , 42, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 42, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 42, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 38, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 0, 84, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_SwitchType , 38, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 38, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 0, 75, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 24, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 0, 75, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 24, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 114|128,6, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 34|128,3, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 39|128,1, OPC_MoveChild, 0, OPC_SwitchOpcode , 124, ISD::BIT_CONVERT, OPC_Scope, 42, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 35, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 0, 35, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 0, 39, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 39, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 39, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 39, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 39, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 39, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 0, 107|128,1, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 37, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 37, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 37, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 37, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 37, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_CheckType, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 37, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_CheckType, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 0, 75, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 32, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 32, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 0, 73, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 32, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 32, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 0, 64, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_Scope, 26, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 0, 0, 87, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_Scope, 41, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 41, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 46|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 80, OPC_CheckPredicate, 8, OPC_Scope, 23, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 24, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 51|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 28, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 83, OPC_CheckPredicate, 8, OPC_Scope, 24, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 27, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 25, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 0, 0, 16|128,1, OPC_CheckAndImm, 127|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckInteger, 8, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckPredicate, 15, OPC_MoveParent, OPC_SwitchType , 72, MVT::i32, OPC_Scope, 34, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i32, 2, 0, 1, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0, 1, MVT::i32, 1, 4, 34, OPC_CheckPatternPredicate, 3, OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i32, 2, 0, 1, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0, 1, MVT::i32, 1, 4, 0, 48, MVT::i64, OPC_EmitInteger, MVT::i64, 0, OPC_EmitInteger, MVT::i32, X86::GR64_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i64, 2, 0, 2, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 3, 4, OPC_EmitNode, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0, 1, MVT::i32, 1, 5, OPC_EmitInteger, MVT::i32, 4, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0, 1, MVT::i64, 3, 1, 6, 7, 0, 73|128,2, OPC_MoveChild, 0, OPC_SwitchOpcode , 126|128,1, ISD::XOR, OPC_Scope, 74, OPC_MoveChild, 0, OPC_SwitchOpcode , 33, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrr), 0, 1, MVT::v2i64, 2, 0, 1, 33, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 16|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_SwitchOpcode , 93, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_SwitchType , 32, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_Scope, 11, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrr), 0, 1, MVT::v2i64, 2, 0, 1, 11, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 17, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 0, 1, 17, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 0, 1, 15, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 0, 1, 0, 38, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_SwitchType , 15, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 0, 1, 15, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 0, 1, 0, 0, 30, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 66, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_MoveChild, 0, OPC_SwitchOpcode , 25, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrr), 0, 1, MVT::v2i64, 2, 1, 0, 25, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPDrr), 0, 1, MVT::v2i64, 2, 1, 0, 0, 0, 67, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 29, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrr), 0, 1, MVT::v2i64, 2, 1, 0, 29, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDNPSrr), 0, 1, MVT::v2i64, 2, 1, 0, 0, 34, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::XOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 0, 1, 67, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 29, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 1, 0, 29, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 1, 0, 0, 34, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::XOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 0, 1, 67, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 29, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 1, 0, 29, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v8i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 1, 0, 0, 34, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::XOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 0, 1, 67, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 29, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 1, 0, 29, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v16i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 1, 0, 0, 32, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::XOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 0, 1, 63, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 27, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 1, 0, 27, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 1, 0, 0, 32, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::XOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 0, 1, 63, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 27, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 1, 0, 27, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_CheckType, MVT::v4i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 1, 0, 0, 32, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::XOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_CheckType, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 0, 1, 63, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 27, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_CheckType, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 1, 0, 27, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_CheckPredicate, 68, OPC_CheckType, MVT::v8i8, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 1, 0, 0, 69, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 38, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 11, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 0, 1, 11, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 0, 1, 0, 23, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 53, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 22, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 1, 0, 22, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDNrr), 0, 1, MVT::v2i64, 2, 1, 0, 0, 27, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::XOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 0, 1, 53, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::XOR, OPC_Scope, 22, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 1, 0, 22, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BUILD_VECTOR, OPC_CheckPredicate, 67, OPC_MoveParent, OPC_RecordChild1, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDNrr), 0, 1, MVT::v1i64, 2, 1, 0, 0, 29, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPDrr), 0, 1, MVT::v2i64, 2, 0, 1, 27, OPC_CheckAndImm, 127|128,127|128,3, OPC_RecordChild0, OPC_CheckType, MVT::i32, OPC_EmitInteger, MVT::i32, 3, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i16, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr16), 0, 1, MVT::i32, 1, 2, 29, OPC_CheckAndImm, 127|128,127|128,127|128,127|128,15, OPC_RecordChild0, OPC_CheckType, MVT::i64, OPC_EmitInteger, MVT::i32, 4, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i32, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr32), 0, 1, MVT::i64, 1, 2, 27, OPC_CheckAndImm, 127|128,127|128,3, OPC_RecordChild0, OPC_CheckType, MVT::i64, OPC_EmitInteger, MVT::i32, 3, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i16, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr16), 0, 1, MVT::i64, 1, 2, 24|128,1, OPC_CheckAndImm, 127|128,1, OPC_RecordChild0, OPC_SwitchType , 20, MVT::i64, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr8), 0, 1, MVT::i64, 1, 2, 60, MVT::i32, OPC_Scope, 22, OPC_CheckPatternPredicate, 3, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0, 1, MVT::i32, 1, 2, 34, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i32, 2, 0, 1, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0, 1, MVT::i32, 1, 4, 0, 60, MVT::i16, OPC_Scope, 22, OPC_CheckPatternPredicate, 3, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rr8), 0, 1, MVT::i16, 1, 2, 34, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 1, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rr8), 0, 1, MVT::i16, 1, 4, 0, 0, 11|128,2, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 38|128,1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16ri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32ri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64ri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64ri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 47, OPC_CheckPredicate, 69, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitInteger, MVT::i64, 0, OPC_EmitInteger, MVT::i32, 4, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i32, 2, 0, 3, OPC_EmitConvertToTarget, 1, OPC_EmitNodeXForm, 6, 5, OPC_EmitNode, TARGET_OPCODE(X86::AND32ri), 0, 1, MVT::i32, 2, 4, 6, OPC_EmitInteger, MVT::i32, 4, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0, 1, MVT::i64, 3, 2, 7, 8, 45, OPC_MoveParent, OPC_SwitchType , 12, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8ri), 0, 2, MVT::i8, MVT::i32, 2, 0, 2, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16ri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32ri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 12, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rr), 0, 2, MVT::i8, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 28, OPC_CheckType, MVT::v2i64, OPC_Scope, 11, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ANDPSrr), 0, 1, MVT::v2i64, 2, 0, 1, 11, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PANDrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 13, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PANDrr), 0, 1, MVT::v1i64, 2, 0, 1, 0, 0, 42|128,12, X86ISD::CMP, OPC_Scope, 23|128,6, OPC_MoveChild, 0, OPC_SwitchOpcode , 76|128,3, ISD::AND, OPC_Scope, 39|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 76, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 32, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 30, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 0, 38, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 38, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 0, 13|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 32, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 30, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 30, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 32, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 16|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 33, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 31, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 31, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 33, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 0, 0, 65|128,2, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 34, OPC_CheckPredicate, 6, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 96, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_SwitchType , 58, MVT::i64, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 24, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 24, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64mi32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 0, 28, MVT::i8, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP8mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 0, 32, OPC_CheckPredicate, 6, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 32, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32mi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_RecordChild1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP8mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 25, OPC_CheckPredicate, 6, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_RecordChild1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 25, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_RecordChild1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 0, 0, 110, OPC_RecordChild0, OPC_Scope, 36, OPC_CheckChild0Type, MVT::i8, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP8rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 34, OPC_CheckChild0Type, MVT::i16, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 34, OPC_CheckChild0Type, MVT::i32, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 37, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_RecordChild1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64mr), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 118, OPC_RecordChild0, OPC_Scope, 36, OPC_CheckChild0Type, MVT::i64, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 38, OPC_CheckChild0Type, MVT::f32, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOMISSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 38, OPC_CheckChild0Type, MVT::f64, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOMISDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 47|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::AND, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 92, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 62, OPC_MoveParent, OPC_CheckPredicate, 70, OPC_SwitchType , 17, MVT::i8, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8ri), 0, 1, MVT::i32, 2, 0, 2, 17, MVT::i16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16ri), 0, 1, MVT::i32, 2, 0, 2, 17, MVT::i32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32ri), 0, 1, MVT::i32, 2, 0, 2, 0, 22, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64ri32), 0, 1, MVT::i32, 2, 0, 2, 0, 55, OPC_CheckPredicate, 70, OPC_SwitchType , 15, MVT::i8, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8rr), 0, 1, MVT::i32, 2, 0, 1, 15, MVT::i16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16rr), 0, 1, MVT::i32, 2, 0, 1, 15, MVT::i32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32rr), 0, 1, MVT::i32, 2, 0, 1, 0, 17, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64rr), 0, 1, MVT::i32, 2, 0, 1, 0, 80|128,2, OPC_RecordChild0, OPC_Scope, 50, OPC_CheckChild0Type, MVT::i8, OPC_Scope, 14, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST8rr), 0, 1, MVT::i32, 2, 0, 0, 30, OPC_RecordChild1, OPC_Scope, 16, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP8ri), 0, 1, MVT::i32, 2, 0, 2, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP8rr), 0, 1, MVT::i32, 2, 0, 1, 0, 0, 68, OPC_CheckChild0Type, MVT::i16, OPC_Scope, 14, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST16rr), 0, 1, MVT::i32, 2, 0, 0, 48, OPC_RecordChild1, OPC_Scope, 34, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 14, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16ri8), 0, 1, MVT::i32, 2, 0, 2, 12, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16ri), 0, 1, MVT::i32, 2, 0, 2, 0, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP16rr), 0, 1, MVT::i32, 2, 0, 1, 0, 0, 68, OPC_CheckChild0Type, MVT::i32, OPC_Scope, 14, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST32rr), 0, 1, MVT::i32, 2, 0, 0, 48, OPC_RecordChild1, OPC_Scope, 34, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 14, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32ri8), 0, 1, MVT::i32, 2, 0, 2, 12, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32ri), 0, 1, MVT::i32, 2, 0, 2, 0, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP32rr), 0, 1, MVT::i32, 2, 0, 1, 0, 0, 70, OPC_CheckChild0Type, MVT::i64, OPC_Scope, 14, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MorphNodeTo, TARGET_OPCODE(X86::TEST64rr), 0, 1, MVT::i32, 2, 0, 0, 50, OPC_RecordChild1, OPC_Scope, 36, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 14, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64ri8), 0, 1, MVT::i32, 2, 0, 2, 14, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64ri32), 0, 1, MVT::i32, 2, 0, 2, 0, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMP64rr), 0, 1, MVT::i32, 2, 0, 1, 0, 0, 29, OPC_CheckChild0Type, MVT::f32, OPC_RecordChild1, OPC_Scope, 11, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOM_FpIr32), 0, 1, MVT::i32, 2, 0, 1, 11, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOMISSrr), 0, 1, MVT::i32, 2, 0, 1, 0, 29, OPC_CheckChild0Type, MVT::f64, OPC_RecordChild1, OPC_Scope, 11, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOM_FpIr64), 0, 1, MVT::i32, 2, 0, 1, 11, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOMISDrr), 0, 1, MVT::i32, 2, 0, 1, 0, 12, OPC_CheckChild0Type, MVT::f80, OPC_RecordChild1, OPC_MorphNodeTo, TARGET_OPCODE(X86::UCOM_FpIr80), 0, 1, MVT::i32, 2, 0, 1, 0, 0, 78, X86ISD::INSERTPS, OPC_RecordChild0, OPC_Scope, 52, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::f32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::INSERTPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::INSERTPSrr), 0, 1, MVT::v4f32, 3, 0, 1, 3, 0, 76, X86ISD::MMX_PINSRW, OPC_RecordChild0, OPC_Scope, 50, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::ANY_EXTEND, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 6, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PINSRWrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PINSRWrri), 0, 1, MVT::v4i16, 3, 0, 1, 3, 0, 88, X86ISD::MOVQ2DQ, OPC_Scope, 75, OPC_MoveChild, 0, OPC_SwitchOpcode , 41, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SCALAR_TO_VECTOR, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 3, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::v2i32, OPC_MoveParent, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDI2PDIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 26, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVQI2PQIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 0, 9, OPC_RecordChild0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2DQrr), 0, 1, MVT::v2i64, 1, 0, 0, 25|128,35, X86ISD::CMOV, OPC_Scope, 77|128,8, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 1, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 1, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 4, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 4, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 9, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 9, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 3, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 3, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 0, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 0, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 7, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 7, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 6, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 6, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 8, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 8, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 5, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 5, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 15, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 15, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 12, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 12, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 14, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 14, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 11, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 11, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 13, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 13, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 10, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 10, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 4, 5, 6, 7, 8, 0, 108|128,8, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 1, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 1, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 4, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 4, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 9, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 9, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 3, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 3, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 0, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 0, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 7, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 7, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 6, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 6, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 8, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 8, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 5, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 5, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 14, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 14, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 11, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 11, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 15, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 15, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 12, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 12, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 13, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 13, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 10, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 4, 5, 6, 7, 8, 34, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckInteger, 10, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 4, 5, 6, 7, 8, 0, 100|128,3, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_MoveChild, 2, OPC_Scope, 28, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 1, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 4, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 9, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 3, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 0, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 7, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 6, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 8, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 5, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 15, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 12, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 14, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 11, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 13, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 10, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 4, 5, 6, 7, 8, 0, 100|128,3, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 2, OPC_Scope, 28, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 1, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 4, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 9, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 3, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 0, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 7, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 6, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 8, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 5, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 14, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 11, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 15, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 12, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 13, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 28, OPC_CheckInteger, 10, OPC_MoveParent, OPC_RecordChild3, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 4, 5, 6, 7, 8, 0, 12|128,10, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 4|128,9, OPC_MoveChild, 2, OPC_Scope, 94, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 14, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB_Fp32), 0|OPFL_FlagInput, 1, MVT::f32, 2, 0, 1, 14, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB_Fp64), 0|OPFL_FlagInput, 1, MVT::f64, 2, 0, 1, 12, MVT::f80, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB_Fp80), 0|OPFL_FlagInput, 1, MVT::f80, 2, 0, 1, 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVB64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 94, OPC_CheckInteger, 3, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 14, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE_Fp32), 0|OPFL_FlagInput, 1, MVT::f32, 2, 0, 1, 14, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE_Fp64), 0|OPFL_FlagInput, 1, MVT::f64, 2, 0, 1, 12, MVT::f80, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE_Fp80), 0|OPFL_FlagInput, 1, MVT::f80, 2, 0, 1, 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVBE64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 94, OPC_CheckInteger, 4, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 14, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE_Fp32), 0|OPFL_FlagInput, 1, MVT::f32, 2, 0, 1, 14, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE_Fp64), 0|OPFL_FlagInput, 1, MVT::f64, 2, 0, 1, 12, MVT::f80, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE_Fp80), 0|OPFL_FlagInput, 1, MVT::f80, 2, 0, 1, 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVE64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 94, OPC_CheckInteger, 14, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 14, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP_Fp32), 0|OPFL_FlagInput, 1, MVT::f32, 2, 0, 1, 14, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP_Fp64), 0|OPFL_FlagInput, 1, MVT::f64, 2, 0, 1, 12, MVT::f80, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP_Fp80), 0|OPFL_FlagInput, 1, MVT::f80, 2, 0, 1, 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVP64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 94, OPC_CheckInteger, 1, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 14, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNB_Fp32), 0|OPFL_FlagInput, 1, MVT::f32, 2, 0, 1, 14, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNB_Fp64), 0|OPFL_FlagInput, 1, MVT::f64, 2, 0, 1, 12, MVT::f80, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNB_Fp80), 0|OPFL_FlagInput, 1, MVT::f80, 2, 0, 1, 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVAE64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 94, OPC_CheckInteger, 0, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 14, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNBE_Fp32), 0|OPFL_FlagInput, 1, MVT::f32, 2, 0, 1, 14, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNBE_Fp64), 0|OPFL_FlagInput, 1, MVT::f64, 2, 0, 1, 12, MVT::f80, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNBE_Fp80), 0|OPFL_FlagInput, 1, MVT::f80, 2, 0, 1, 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVA64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 94, OPC_CheckInteger, 9, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 14, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE_Fp32), 0|OPFL_FlagInput, 1, MVT::f32, 2, 0, 1, 14, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE_Fp64), 0|OPFL_FlagInput, 1, MVT::f64, 2, 0, 1, 12, MVT::f80, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE_Fp80), 0|OPFL_FlagInput, 1, MVT::f80, 2, 0, 1, 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNE64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 94, OPC_CheckInteger, 11, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 14, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP_Fp32), 0|OPFL_FlagInput, 1, MVT::f32, 2, 0, 1, 14, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP_Fp64), 0|OPFL_FlagInput, 1, MVT::f64, 2, 0, 1, 12, MVT::f80, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP_Fp80), 0|OPFL_FlagInput, 1, MVT::f80, 2, 0, 1, 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNP64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 48, OPC_CheckInteger, 7, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVL64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 48, OPC_CheckInteger, 6, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVGE64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 48, OPC_CheckInteger, 8, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVLE64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 48, OPC_CheckInteger, 5, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVG64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 48, OPC_CheckInteger, 15, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVS64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 48, OPC_CheckInteger, 12, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNS64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 48, OPC_CheckInteger, 13, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVO64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 48, OPC_CheckInteger, 10, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO16rr), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO32rr), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOVNO64rr), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 0, 0|128,1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_RecordChild3, OPC_SwitchType , 15, MVT::i8, OPC_EmitConvertToTarget, 2, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_GR8), 0|OPFL_FlagInput, 1, MVT::i8, 3, 0, 1, 4, 15, MVT::f32, OPC_EmitConvertToTarget, 2, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_FR32), 0|OPFL_FlagInput, 1, MVT::f32, 3, 0, 1, 4, 15, MVT::f64, OPC_EmitConvertToTarget, 2, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_FR64), 0|OPFL_FlagInput, 1, MVT::f64, 3, 0, 1, 4, 15, MVT::v4f32, OPC_EmitConvertToTarget, 2, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_V4F32), 0|OPFL_FlagInput, 1, MVT::v4f32, 3, 0, 1, 4, 15, MVT::v2f64, OPC_EmitConvertToTarget, 2, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_V2F64), 0|OPFL_FlagInput, 1, MVT::v2f64, 3, 0, 1, 4, 15, MVT::v2i64, OPC_EmitConvertToTarget, 2, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_V2I64), 0|OPFL_FlagInput, 1, MVT::v2i64, 3, 0, 1, 4, 15, MVT::v1i64, OPC_EmitConvertToTarget, 2, OPC_EmitCopyToReg, 3, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMOV_V1I64), 0|OPFL_FlagInput, 1, MVT::v1i64, 3, 0, 1, 4, 0, 0, 0, 88|128,6, ISD::MUL, OPC_Scope, 50|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 77, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 22, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rmi8), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 22, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rmi8), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 22, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rmi8), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 0, 27, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rmi32), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 51, OPC_MoveParent, OPC_SwitchType , 22, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rmi), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 22, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rmi), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 0, 0, 75, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_SwitchType , 27, MVT::v2i64, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 25, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULLWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 0, 76, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_SwitchType , 28, MVT::v2i64, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 26, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULLWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 0, 12|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 27, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitCopyToReg, 0, X86::AL, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL8m), 0|OPFL_Chain|OPFL_FlagInput|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 5, 3, 4, 5, 6, 7, 69, OPC_MoveParent, OPC_SwitchType , 20, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 0, 113, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 70, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 20, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 20, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 20, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 0, 27, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7, 0, 57, OPC_RecordNode, OPC_SwitchType , 36, MVT::i32, OPC_Scope, 16, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 16, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 0, 14, MVT::i64, OPC_CheckComplexPat, /*CP*/4, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0, 1, MVT::i64, 4, 1, 2, 3, 4, 0, 77|128,1, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 104, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 31, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 14, OPC_CheckType, MVT::i8, OPC_EmitCopyToReg, 0, X86::AL, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL8r), 0|OPFL_FlagInput, 2, MVT::i8, MVT::i32, 1, 1, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 13, OPC_CheckType, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLWrr), 0, 1, MVT::v8i16, 2, 0, 1, 13, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PMULLDrr), 0, 1, MVT::v4i32, 2, 0, 1, 13, OPC_CheckType, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PMULLWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 0, 100|128,1, X86ISD::BT, OPC_Scope, 116, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_SwitchType , 32, MVT::i16, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::BT16mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 32, MVT::i32, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::BT32mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 34, MVT::i64, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::BT64mi8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 0, 108, OPC_RecordChild0, OPC_Scope, 34, OPC_CheckChild0Type, MVT::i16, OPC_RecordChild1, OPC_Scope, 18, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::BT16ri8), 0, 1, MVT::i32, 2, 0, 2, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::BT16rr), 0, 1, MVT::i32, 2, 0, 1, 0, 34, OPC_CheckChild0Type, MVT::i32, OPC_RecordChild1, OPC_Scope, 18, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::BT32ri8), 0, 1, MVT::i32, 2, 0, 2, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::BT32rr), 0, 1, MVT::i32, 2, 0, 1, 0, 34, OPC_CheckChild0Type, MVT::i64, OPC_RecordChild1, OPC_Scope, 18, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::BT64ri8), 0, 1, MVT::i32, 2, 0, 2, 9, OPC_MorphNodeTo, TARGET_OPCODE(X86::BT64rr), 0, 1, MVT::i32, 2, 0, 1, 0, 0, 0, 89|128,4, X86ISD::SMUL, OPC_Scope, 93|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 35, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rmi8), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 35, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rmi8), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 68, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 27, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rmi8), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 27, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rmi32), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 0, 33, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rmi), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 33, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rmi), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 3, 4, 5, 6, 7, 8, 0, 93, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 25, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 95, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 26, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 28, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 0, 56|128,1, OPC_RecordChild0, OPC_Scope, 31, OPC_MoveChild, 1, OPC_CheckInteger, 2, OPC_MoveParent, OPC_SwitchType , 10, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 0, 10, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 0, 0, 19|128,1, OPC_RecordChild1, OPC_Scope, 104, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 31, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::IMUL64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 0, 0, 0, 105, ISD::PREFETCH, OPC_RecordNode, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_MoveChild, 3, OPC_Scope, 22, OPC_CheckInteger, 3, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PREFETCHT0), 0|OPFL_Chain, 0, 5, 2, 3, 4, 5, 6, 22, OPC_CheckInteger, 2, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PREFETCHT1), 0|OPFL_Chain, 0, 5, 2, 3, 4, 5, 6, 22, OPC_CheckInteger, 1, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PREFETCHT2), 0|OPFL_Chain, 0, 5, 2, 3, 4, 5, 6, 22, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PREFETCHNTA), 0|OPFL_Chain, 0, 5, 2, 3, 4, 5, 6, 0, 4|128,1, ISD::INSERT_VECTOR_ELT, OPC_RecordChild0, OPC_Scope, 86, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 37, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 7, 0, 4, 5, 6, 7, 8, 9, 35, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 7, 0, 4, 5, 6, 7, 8, 9, 0, 41, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_SwitchType , 14, MVT::v2i64, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRQrr), 0, 1, MVT::v2i64, 3, 0, 1, 3, 14, MVT::v4i32, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRDrr), 0, 1, MVT::v4i32, 3, 0, 1, 3, 0, 0, 60|128,15, ISD::OR, OPC_Scope, 39|128,1, OPC_MoveChild, 0, OPC_SwitchOpcode , 87, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_Scope, 41, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 41, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 0, 72, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_Scope, 26, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 0, 0, 31|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 91, OPC_MoveParent, OPC_SwitchType , 20, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PORrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 24, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PORrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 0, 28|128,9, OPC_MoveChild, 0, OPC_SwitchOpcode , 29|128,1, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 92, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 20, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 20, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 20, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 20, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 0, 27, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PORrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 25, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PORrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 0, 121|128,3, ISD::SRL, OPC_RecordChild0, OPC_Scope, 82|128,1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_Scope, 104, OPC_RecordChild0, OPC_RecordChild0, OPC_CheckType, MVT::i8, OPC_Scope, 48, OPC_CheckChild0Type, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_EmitCopyToReg, 2, X86::ECX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32rrCL), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 3, 48, OPC_CheckChild0Type, MVT::i16, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_EmitCopyToReg, 2, X86::CX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16rrCL), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 3, 0, 98, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_Scope, 44, OPC_CheckInteger, 32, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_EmitCopyToReg, 2, X86::ECX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32rrCL), 0|OPFL_FlagInput, 1, MVT::i32, 2, 3, 0, 44, OPC_CheckInteger, 16, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_EmitCopyToReg, 2, X86::CX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16rrCL), 0|OPFL_FlagInput, 1, MVT::i16, 2, 3, 0, 0, 0, 72, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_Scope, 26, OPC_CheckInteger, 32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32rrCL), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 3, 26, OPC_CheckInteger, 16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16rrCL), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 3, 0, 78, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_Scope, 34, OPC_CheckInteger, 32, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32rrCL), 0|OPFL_FlagInput, 1, MVT::i32, 2, 3, 0, 34, OPC_CheckInteger, 16, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16rrCL), 0|OPFL_FlagInput, 1, MVT::i16, 2, 3, 0, 0, 68, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 7, OPC_SwitchType , 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32rri8), 0, 1, MVT::i32, 3, 0, 2, 3, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16rri8), 0, 1, MVT::i16, 3, 0, 2, 3, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64rri8), 0, 1, MVT::i64, 3, 0, 2, 3, 0, 68, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SHL, OPC_RecordChild0, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 10, OPC_SwitchType , 12, MVT::i32, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32rri8), 0, 1, MVT::i32, 3, 1, 0, 3, 12, MVT::i16, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16rri8), 0, 1, MVT::i16, 3, 1, 0, 3, 12, MVT::i64, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64rri8), 0, 1, MVT::i64, 3, 1, 0, 3, 0, 0, 121|128,3, ISD::SHL, OPC_RecordChild0, OPC_Scope, 82|128,1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_Scope, 104, OPC_RecordChild0, OPC_RecordChild0, OPC_CheckType, MVT::i8, OPC_Scope, 48, OPC_CheckChild0Type, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_EmitCopyToReg, 2, X86::ECX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32rrCL), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 3, 48, OPC_CheckChild0Type, MVT::i16, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_CheckInteger, 16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_EmitCopyToReg, 2, X86::CX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16rrCL), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 3, 0, 98, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_Scope, 44, OPC_CheckInteger, 32, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_EmitCopyToReg, 2, X86::ECX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32rrCL), 0|OPFL_FlagInput, 1, MVT::i32, 2, 3, 0, 44, OPC_CheckInteger, 16, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TRUNCATE, OPC_MoveChild, 0, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_EmitCopyToReg, 2, X86::CX, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16rrCL), 0|OPFL_FlagInput, 1, MVT::i16, 2, 3, 0, 0, 0, 72, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckChild1Type, MVT::i8, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_Scope, 26, OPC_CheckInteger, 32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32rrCL), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 3, 26, OPC_CheckInteger, 16, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16rrCL), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 3, 0, 78, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SUB, OPC_MoveChild, 0, OPC_Scope, 34, OPC_CheckInteger, 32, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32rrCL), 0|OPFL_FlagInput, 1, MVT::i32, 2, 3, 0, 34, OPC_CheckInteger, 16, OPC_MoveParent, OPC_RecordChild1, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckSame, 1, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16rrCL), 0|OPFL_FlagInput, 1, MVT::i16, 2, 3, 0, 0, 68, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 10, OPC_SwitchType , 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32rri8), 0, 1, MVT::i32, 3, 0, 2, 3, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16rri8), 0, 1, MVT::i16, 3, 0, 2, 3, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64rri8), 0, 1, MVT::i64, 3, 0, 2, 3, 0, 68, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_MoveParent, OPC_CheckPredicate, 7, OPC_SwitchType , 12, MVT::i32, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32rri8), 0, 1, MVT::i32, 3, 1, 0, 3, 12, MVT::i16, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16rri8), 0, 1, MVT::i16, 3, 1, 0, 3, 12, MVT::i64, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64rri8), 0, 1, MVT::i64, 3, 1, 0, 3, 0, 0, 0, 57, OPC_RecordNode, OPC_SwitchType , 36, MVT::i32, OPC_Scope, 16, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 16, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 0, 14, MVT::i64, OPC_CheckComplexPat, /*CP*/4, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0, 1, MVT::i64, 4, 1, 2, 3, 4, 0, 28|128,1, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 110, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 49, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_CheckPredicate, 71, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 19, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckPredicate, 71, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 33, OPC_MoveParent, OPC_CheckPredicate, 71, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 40, OPC_CheckPredicate, 71, OPC_SwitchType , 10, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 10, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 10, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 0, 0, 29, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPDrr), 0, 1, MVT::v2i64, 2, 0, 1, 90|128,1, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 118, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16ri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32ri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64ri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64ri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 45, OPC_MoveParent, OPC_SwitchType , 12, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8ri), 0, 2, MVT::i8, MVT::i32, 2, 0, 2, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16ri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32ri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 12, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rr), 0, 2, MVT::i8, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 28, OPC_CheckType, MVT::v2i64, OPC_Scope, 11, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ORPSrr), 0, 1, MVT::v2i64, 2, 0, 1, 11, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PORrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 13, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PORrr), 0, 1, MVT::v1i64, 2, 0, 1, 0, 0, 35|128,6, ISD::XOR, OPC_Scope, 39|128,1, OPC_MoveChild, 0, OPC_SwitchOpcode , 87, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_Scope, 41, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 41, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 0, 72, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_Scope, 26, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 0, 0, 31|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 91, OPC_MoveParent, OPC_SwitchType , 20, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PXORrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 24, OPC_MoveParent, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PXORrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 0, 33|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 92, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 20, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 20, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 20, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 20, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 0, 27, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PXORrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 25, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PXORrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 0, 57, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_SwitchType , 8, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT8r), 0, 1, MVT::i8, 1, 0, 8, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT16r), 0, 1, MVT::i16, 1, 0, 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT32r), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::NOT64r), 0, 1, MVT::i64, 1, 0, 0, 29, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPDrr), 0, 1, MVT::v2i64, 2, 0, 1, 90|128,1, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 118, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16ri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32ri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64ri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64ri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 45, OPC_MoveParent, OPC_SwitchType , 12, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8ri), 0, 2, MVT::i8, MVT::i32, 2, 0, 2, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16ri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32ri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 12, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rr), 0, 2, MVT::i8, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 28, OPC_CheckType, MVT::v2i64, OPC_Scope, 11, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XORPSrr), 0, 1, MVT::v2i64, 2, 0, 1, 11, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PXORrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 13, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PXORrr), 0, 1, MVT::v1i64, 2, 0, 1, 0, 0, 73, X86ISD::CMPPS, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v4f32, OPC_Scope, 45, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPSrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPSrri), 0, 1, MVT::v4i32, 3, 0, 1, 3, 0, 73, X86ISD::CMPPD, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2f64, OPC_Scope, 45, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPDrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::CMPPDrri), 0, 1, MVT::v2i64, 3, 0, 1, 3, 0, 77|128,11, ISD::ADD, OPC_Scope, 66|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_SwitchType , 75, MVT::v2i64, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 21, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 0, 96, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 21, MVT::v8i8, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 67|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_SwitchType , 76, MVT::v2i64, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7, 21, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 21, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7, 0, 97, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::v8i8, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7, 21, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 21, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 2, 3, 4, 5, 6, 7, 0, 0, 6|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 91, OPC_MoveParent, OPC_SwitchType , 20, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 0, 7|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 92, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 20, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 20, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 20, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 20, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 0, 27, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 0, 57, OPC_RecordNode, OPC_SwitchType , 36, MVT::i32, OPC_Scope, 16, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 16, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 0, 14, MVT::i64, OPC_CheckComplexPat, /*CP*/4, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0, 1, MVT::i64, 4, 1, 2, 3, 4, 0, 85, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, X86ISD::Wrapper, OPC_RecordChild0, OPC_MoveChild, 0, OPC_SwitchOpcode , 13, ISD::TargetConstantPool, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 1, MVT::i32, 2, 0, 1, 13, ISD::TargetJumpTable, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 1, MVT::i32, 2, 0, 1, 13, ISD::TargetGlobalAddress, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 1, MVT::i32, 2, 0, 1, 13, ISD::TargetExternalSymbol, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 1, MVT::i32, 2, 0, 1, 13, ISD::TargetBlockAddress, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 1, MVT::i32, 2, 0, 1, 0, 89, OPC_MoveChild, 0, OPC_CheckOpcode, X86ISD::Wrapper, OPC_RecordChild0, OPC_MoveChild, 0, OPC_SwitchOpcode , 14, ISD::TargetConstantPool, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 1, MVT::i32, 2, 1, 0, 14, ISD::TargetJumpTable, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 1, MVT::i32, 2, 1, 0, 14, ISD::TargetGlobalAddress, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 1, MVT::i32, 2, 1, 0, 14, ISD::TargetExternalSymbol, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 1, MVT::i32, 2, 1, 0, 14, ISD::TargetBlockAddress, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 1, MVT::i32, 2, 1, 0, 0, 69|128,4, OPC_RecordChild0, OPC_Scope, 32|128,2, OPC_MoveChild, 1, OPC_Scope, 83, OPC_CheckInteger, 1, OPC_MoveParent, OPC_SwitchType , 26, MVT::i16, OPC_Scope, 11, OPC_CheckPatternPredicate, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC16r), 0, 2, MVT::i16, MVT::i32, 1, 0, 11, OPC_CheckPatternPredicate, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_16r), 0, 2, MVT::i16, MVT::i32, 1, 0, 0, 26, MVT::i32, OPC_Scope, 11, OPC_CheckPatternPredicate, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC32r), 0, 2, MVT::i32, MVT::i32, 1, 0, 11, OPC_CheckPatternPredicate, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_32r), 0, 2, MVT::i32, MVT::i32, 1, 0, 0, 9, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC8r), 0, 2, MVT::i8, MVT::i32, 1, 0, 9, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64r), 0, 2, MVT::i64, MVT::i32, 1, 0, 0, 92, OPC_CheckInteger, 127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MoveParent, OPC_SwitchType , 26, MVT::i16, OPC_Scope, 11, OPC_CheckPatternPredicate, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC16r), 0, 2, MVT::i16, MVT::i32, 1, 0, 11, OPC_CheckPatternPredicate, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_16r), 0, 2, MVT::i16, MVT::i32, 1, 0, 0, 26, MVT::i32, OPC_Scope, 11, OPC_CheckPatternPredicate, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC32r), 0, 2, MVT::i32, MVT::i32, 1, 0, 11, OPC_CheckPatternPredicate, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_32r), 0, 2, MVT::i32, MVT::i32, 1, 0, 0, 9, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC8r), 0, 2, MVT::i8, MVT::i32, 1, 0, 9, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64r), 0, 2, MVT::i64, MVT::i32, 1, 0, 0, 75, OPC_CheckInteger, 0|128,1, OPC_MoveParent, OPC_SwitchType , 21, MVT::i16, OPC_EmitInteger, MVT::i16, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16ri8), 0, 1, MVT::i16, 2, 0, 1, 21, MVT::i32, OPC_EmitInteger, MVT::i32, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri8), 0, 1, MVT::i32, 2, 0, 1, 21, MVT::i64, OPC_EmitInteger, MVT::i64, 0|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,127|128,1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri8), 0, 1, MVT::i64, 2, 0, 1, 0, 30, OPC_CheckInteger, 0|128,0|128,0|128,0|128,8, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitInteger, MVT::i64, 0|128,0|128,0|128,0|128,120|128,127|128,127|128,127|128,127|128,1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri32), 0, 1, MVT::i64, 2, 0, 1, 0, 30|128,2, OPC_RecordChild1, OPC_Scope, 118, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 45, OPC_MoveParent, OPC_SwitchType , 12, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8ri), 0, 2, MVT::i8, MVT::i32, 2, 0, 2, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 12, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rr), 0, 2, MVT::i8, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 13, OPC_CheckType, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDBrr), 0, 1, MVT::v16i8, 2, 0, 1, 13, OPC_CheckType, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDWrr), 0, 1, MVT::v8i16, 2, 0, 1, 13, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDDrr), 0, 1, MVT::v4i32, 2, 0, 1, 13, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PADDQrr), 0, 1, MVT::v2i64, 2, 0, 1, 13, OPC_CheckType, MVT::v8i8, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDBrr), 0, 1, MVT::v8i8, 2, 0, 1, 13, OPC_CheckType, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDWrr), 0, 1, MVT::v4i16, 2, 0, 1, 13, OPC_CheckType, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDDrr), 0, 1, MVT::v2i32, 2, 0, 1, 13, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PADDQrr), 0, 1, MVT::v1i64, 2, 0, 1, 0, 0, 0, 93|128,5, ISD::SUB, OPC_Scope, 73|128,2, OPC_RecordChild0, OPC_MoveChild, 1, OPC_SwitchOpcode , 61|128,1, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_SwitchType , 75, MVT::v2i64, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 21, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 0, 96, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 21, MVT::v8i8, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v1i64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 1|128,1, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 91, OPC_MoveParent, OPC_SwitchType , 20, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 20, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 57, OPC_RecordNode, OPC_SwitchType , 36, MVT::i32, OPC_Scope, 16, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 16, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 0, 14, MVT::i64, OPC_CheckComplexPat, /*CP*/4, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0, 1, MVT::i64, 4, 1, 2, 3, 4, 0, 52, OPC_MoveChild, 0, OPC_CheckInteger, 0, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 9, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG8r), 0, 2, MVT::i8, MVT::i32, 1, 0, 9, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG16r), 0, 2, MVT::i16, MVT::i32, 1, 0, 9, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG32r), 0, 2, MVT::i32, MVT::i32, 1, 0, 9, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::NEG64r), 0, 2, MVT::i64, MVT::i32, 1, 0, 0, 31|128,2, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 118, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16ri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 45, OPC_MoveParent, OPC_SwitchType , 12, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8ri), 0, 2, MVT::i8, MVT::i32, 2, 0, 2, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16ri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 12, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8rr), 0, 2, MVT::i8, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 13, OPC_CheckType, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBBrr), 0, 1, MVT::v16i8, 2, 0, 1, 13, OPC_CheckType, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBWrr), 0, 1, MVT::v8i16, 2, 0, 1, 13, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBDrr), 0, 1, MVT::v4i32, 2, 0, 1, 13, OPC_CheckType, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSUBQrr), 0, 1, MVT::v2i64, 2, 0, 1, 13, OPC_CheckType, MVT::v8i8, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBBrr), 0, 1, MVT::v8i8, 2, 0, 1, 13, OPC_CheckType, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBWrr), 0, 1, MVT::v4i16, 2, 0, 1, 13, OPC_CheckType, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBDrr), 0, 1, MVT::v2i32, 2, 0, 1, 13, OPC_CheckType, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSUBQrr), 0, 1, MVT::v1i64, 2, 0, 1, 0, 0, 71, X86ISD::PINSRW, OPC_RecordChild0, OPC_Scope, 45, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 48, OPC_CheckPredicate, 60, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRWrmi), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRWrri), 0, 1, MVT::v8i16, 3, 0, 1, 3, 0, 122, ISD::MEMBARRIER, OPC_RecordNode, OPC_MoveChild, 1, OPC_CheckType, MVT::i8, OPC_Scope, 32, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MoveChild, 3, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MoveChild, 4, OPC_CheckInteger, 1, OPC_MoveParent, OPC_MoveChild, 5, OPC_CheckInteger, 1, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SFENCE), 0|OPFL_Chain, 0, 0, 32, OPC_CheckInteger, 1, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MoveChild, 3, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MoveChild, 4, OPC_CheckInteger, 0, OPC_MoveParent, OPC_MoveChild, 5, OPC_CheckInteger, 1, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LFENCE), 0|OPFL_Chain, 0, 0, 48, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_MoveChild, 4, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_MoveChild, 5, OPC_Scope, 12, OPC_CheckInteger, 0, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::NOOP), 0|OPFL_Chain, 0, 0, 12, OPC_CheckInteger, 1, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MFENCE), 0|OPFL_Chain, 0, 0, 0, 0, 60, X86ISD::PSHUFB, OPC_RecordChild0, OPC_Scope, 43, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_CheckType, MVT::v2i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckPatternPredicate, 11, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrm128), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild1, OPC_CheckPatternPredicate, 11, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSHUFBrr128), 0, 1, MVT::v16i8, 2, 0, 1, 0, 71, X86ISD::PINSRB, OPC_RecordChild0, OPC_Scope, 45, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 48, OPC_CheckPredicate, 59, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 7, 0, 4, 5, 6, 7, 8, 9, 21, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PINSRBrr), 0, 1, MVT::v16i8, 3, 0, 1, 3, 0, 63|128,1, X86ISD::PCMPEQB, OPC_Scope, 42, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v8i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v8i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 2, 3, 4, 5, 6, 7, 37, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v16i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 37, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v16i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 2, 3, 4, 5, 6, 7, 26, OPC_RecordChild0, OPC_RecordChild1, OPC_SwitchType , 9, MVT::v16i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQBrr), 0, 1, MVT::v16i8, 2, 0, 1, 9, MVT::v8i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 0, 63|128,1, X86ISD::PCMPEQW, OPC_Scope, 42, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v4i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 2, 3, 4, 5, 6, 7, 37, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v8i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 37, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v8i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 2, 3, 4, 5, 6, 7, 26, OPC_RecordChild0, OPC_RecordChild1, OPC_SwitchType , 9, MVT::v8i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQWrr), 0, 1, MVT::v8i16, 2, 0, 1, 9, MVT::v4i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 0, 63|128,1, X86ISD::PCMPEQD, OPC_Scope, 42, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 42, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 2, 3, 4, 5, 6, 7, 37, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 37, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v4i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_RecordChild0, OPC_RecordChild1, OPC_SwitchType , 9, MVT::v4i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQDrr), 0, 1, MVT::v4i32, 2, 0, 1, 9, MVT::v2i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPEQDrr), 0, 1, MVT::v2i32, 2, 0, 1, 0, 0, 107, X86ISD::PCMPGTB, OPC_RecordChild0, OPC_Scope, 77, OPC_MoveChild, 1, OPC_SwitchOpcode , 37, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v8i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i8, 6, 0, 3, 4, 5, 6, 7, 32, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v16i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTBrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v16i8, 6, 0, 3, 4, 5, 6, 7, 0, 25, OPC_RecordChild1, OPC_SwitchType , 9, MVT::v16i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTBrr), 0, 1, MVT::v16i8, 2, 0, 1, 9, MVT::v8i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTBrr), 0, 1, MVT::v8i8, 2, 0, 1, 0, 0, 107, X86ISD::PCMPGTW, OPC_RecordChild0, OPC_Scope, 77, OPC_MoveChild, 1, OPC_SwitchOpcode , 37, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v4i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i16, 6, 0, 3, 4, 5, 6, 7, 32, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v8i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTWrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v8i16, 6, 0, 3, 4, 5, 6, 7, 0, 25, OPC_RecordChild1, OPC_SwitchType , 9, MVT::v8i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTWrr), 0, 1, MVT::v8i16, 2, 0, 1, 9, MVT::v4i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTWrr), 0, 1, MVT::v4i16, 2, 0, 1, 0, 0, 107, X86ISD::PCMPGTD, OPC_RecordChild0, OPC_Scope, 77, OPC_MoveChild, 1, OPC_SwitchOpcode , 37, ISD::BIT_CONVERT, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckType, MVT::v1i64, OPC_MoveParent, OPC_MoveParent, OPC_CheckType, MVT::v2i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i32, 6, 0, 3, 4, 5, 6, 7, 32, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4i32, 6, 0, 3, 4, 5, 6, 7, 0, 25, OPC_RecordChild1, OPC_SwitchType , 9, MVT::v4i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTDrr), 0, 1, MVT::v4i32, 2, 0, 1, 9, MVT::v2i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PCMPGTDrr), 0, 1, MVT::v2i32, 2, 0, 1, 0, 0, 110, X86ISD::LCMPXCHG_DAG, OPC_RecordNode, OPC_CaptureFlagInput, OPC_RecordChild1, OPC_RecordChild2, OPC_Scope, 25, OPC_CheckChild2Type, MVT::i32, OPC_MoveChild, 3, OPC_CheckInteger, 4, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LCMPXCHG32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 6, 3, 4, 5, 6, 7, 2, 25, OPC_CheckChild2Type, MVT::i16, OPC_MoveChild, 3, OPC_CheckInteger, 2, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LCMPXCHG16), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 6, 3, 4, 5, 6, 7, 2, 25, OPC_CheckChild2Type, MVT::i8, OPC_MoveChild, 3, OPC_CheckInteger, 1, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LCMPXCHG8), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 6, 3, 4, 5, 6, 7, 2, 25, OPC_CheckChild2Type, MVT::i64, OPC_MoveChild, 3, OPC_CheckInteger, 8, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LCMPXCHG64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 6, 3, 4, 5, 6, 7, 2, 0, 7|128,1, ISD::INTRINSIC_W_CHAIN, OPC_RecordNode, OPC_MoveChild, 1, OPC_Scope, 25, OPC_CheckInteger, 59|128,5, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSrm_Int), 0|OPFL_Chain, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 25, OPC_CheckInteger, 16|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPDrm_Int), 0|OPFL_Chain, 1, MVT::v2f64, 5, 2, 3, 4, 5, 6, 25, OPC_CheckInteger, 15|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDQUrm_Int), 0|OPFL_Chain, 1, MVT::v16i8, 5, 2, 3, 4, 5, 6, 25, OPC_CheckInteger, 95|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LDDQUrm), 0|OPFL_Chain, 1, MVT::v16i8, 5, 2, 3, 4, 5, 6, 25, OPC_CheckInteger, 106|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTDQArm), 0|OPFL_Chain, 1, MVT::v2i64, 5, 2, 3, 4, 5, 6, 0, 41|128,4, ISD::INTRINSIC_VOID, OPC_RecordNode, OPC_MoveChild, 1, OPC_Scope, 26, OPC_CheckInteger, 75|128,5, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPSmr_Int), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 2, 26, OPC_CheckInteger, 65|128,5, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTPSmr_Int), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 2, 24, OPC_CheckInteger, 58|128,5, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LDMXCSR), 0|OPFL_Chain, 0, 5, 2, 3, 4, 5, 6, 24, OPC_CheckInteger, 74|128,5, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::STMXCSR), 0|OPFL_Chain, 0, 5, 2, 3, 4, 5, 6, 26, OPC_CheckInteger, 81|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVUPDmr_Int), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 2, 26, OPC_CheckInteger, 80|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDQUmr_Int), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 2, 26, OPC_CheckInteger, 26|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTPDmr_Int), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 2, 26, OPC_CheckInteger, 24|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTDQmr_Int), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 2, 26, OPC_CheckInteger, 25|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVNTImr_Int), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 2, 24, OPC_CheckInteger, 116|128,3, OPC_MoveParent, OPC_RecordChild2, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CLFLUSH), 0|OPFL_Chain, 0, 5, 2, 3, 4, 5, 6, 26, OPC_CheckInteger, 79|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVLQ128mr), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 2, 26, OPC_CheckInteger, 69|128,3, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVNTQmr), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 2, 15, OPC_CheckInteger, 71|128,5, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SFENCE), 0|OPFL_Chain, 0, 0, 47, OPC_CheckInteger, 17|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_RecordChild4, OPC_Scope, 18, OPC_CheckChild4Type, MVT::i32, OPC_CheckPatternPredicate, 1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EDI, OPC_MorphNodeTo, TARGET_OPCODE(X86::MASKMOVDQU), 0|OPFL_Chain|OPFL_FlagInput, 0, 2, 1, 2, 18, OPC_CheckChild4Type, MVT::i64, OPC_CheckPatternPredicate, 1, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::RDI, OPC_MorphNodeTo, TARGET_OPCODE(X86::MASKMOVDQU64), 0|OPFL_Chain|OPFL_FlagInput, 0, 2, 1, 2, 0, 15, OPC_CheckInteger, 14|128,4, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LFENCE), 0|OPFL_Chain, 0, 0, 15, OPC_CheckInteger, 20|128,4, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MFENCE), 0|OPFL_Chain, 0, 0, 29, OPC_CheckInteger, 96|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_CheckChild2Type, MVT::i32, OPC_RecordChild3, OPC_RecordChild4, OPC_CheckPatternPredicate, 9, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::EAX, OPC_EmitCopyToReg, 2, X86::ECX, OPC_EmitCopyToReg, 3, X86::EDX, OPC_MorphNodeTo, TARGET_OPCODE(X86::MONITOR), 0|OPFL_Chain|OPFL_FlagInput, 0, 0, 23, OPC_CheckInteger, 97|128,4, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_CheckPatternPredicate, 9, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 1, X86::ECX, OPC_EmitCopyToReg, 2, X86::EAX, OPC_MorphNodeTo, TARGET_OPCODE(X86::MWAIT), 0|OPFL_Chain|OPFL_FlagInput, 0, 0, 15, OPC_CheckInteger, 66|128,3, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_EMMS), 0|OPFL_Chain, 0, 0, 15, OPC_CheckInteger, 67|128,3, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_FEMMS), 0|OPFL_Chain, 0, 0, 47, OPC_CheckInteger, 68|128,3, OPC_MoveParent, OPC_RecordChild2, OPC_RecordChild3, OPC_RecordChild4, OPC_Scope, 18, OPC_CheckChild4Type, MVT::i32, OPC_CheckPatternPredicate, 8, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::EDI, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MASKMOVQ), 0|OPFL_Chain|OPFL_FlagInput, 0, 2, 1, 2, 18, OPC_CheckChild4Type, MVT::i64, OPC_CheckPatternPredicate, 15, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 3, X86::RDI, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MASKMOVQ64), 0|OPFL_Chain|OPFL_FlagInput, 0, 2, 1, 2, 0, 0, 72|128,7, ISD::FADD, OPC_Scope, 19|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 53, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 79, OPC_CheckPredicate, 48, OPC_Scope, 49, OPC_CheckPredicate, 49, OPC_MoveParent, OPC_SwitchType , 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 24, OPC_CheckPredicate, 50, OPC_MoveParent, OPC_CheckType, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 0, 21|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 54, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 0, 81, OPC_CheckPredicate, 48, OPC_Scope, 50, OPC_CheckPredicate, 49, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 2, 3, 4, 5, 6, 7, 0, 25, OPC_CheckPredicate, 50, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 2, 3, 4, 5, 6, 7, 0, 0, 119, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 24, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 24, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 0, 122, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 25, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 2, 3, 4, 5, 6, 7, 27, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 2, 3, 4, 5, 6, 7, 25, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 27, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 2, 3, 4, 5, 6, 7, 0, 32|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, X86ISD::FILD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_MoveChild, 2, OPC_Scope, 73, OPC_CheckValueType, MVT::i16, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 73, OPC_CheckValueType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 0, 33|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, X86ISD::FILD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_MoveChild, 2, OPC_Scope, 74, OPC_CheckValueType, MVT::i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m32), 0|OPFL_Chain, 1, MVT::f32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m64), 0|OPFL_Chain, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI16m80), 0|OPFL_Chain, 1, MVT::f80, 6, 2, 3, 4, 5, 6, 7, 0, 74, OPC_CheckValueType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m32), 0|OPFL_Chain, 1, MVT::f32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m64), 0|OPFL_Chain, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_FpI32m80), 0|OPFL_Chain, 1, MVT::f80, 6, 2, 3, 4, 5, 6, 7, 0, 0, 97, OPC_RecordChild0, OPC_RecordChild1, OPC_SwitchType , 26, MVT::f32, OPC_Scope, 11, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp32), 0, 1, MVT::f32, 2, 0, 1, 11, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSSrr), 0, 1, MVT::f32, 2, 0, 1, 0, 26, MVT::f64, OPC_Scope, 11, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp64), 0, 1, MVT::f64, 2, 0, 1, 11, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDSDrr), 0, 1, MVT::f64, 2, 0, 1, 0, 9, MVT::f80, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD_Fp80), 0, 1, MVT::f80, 2, 0, 1, 11, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 11, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADDPDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 0, 114|128,5, ISD::FSUB, OPC_RecordChild0, OPC_Scope, 12|128,5, OPC_MoveChild, 1, OPC_SwitchOpcode , 1|128,3, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 53, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 79, OPC_CheckPredicate, 48, OPC_Scope, 49, OPC_CheckPredicate, 49, OPC_MoveParent, OPC_SwitchType , 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 24, OPC_CheckPredicate, 50, OPC_MoveParent, OPC_CheckType, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 53, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_Fp32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_Fp64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 79, OPC_CheckPredicate, 48, OPC_Scope, 49, OPC_CheckPredicate, 49, OPC_MoveParent, OPC_SwitchType , 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 24, OPC_CheckPredicate, 50, OPC_MoveParent, OPC_CheckType, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 108, OPC_CheckPredicate, 8, OPC_Scope, 24, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 24, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 1|128,2, X86ISD::FILD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_MoveChild, 2, OPC_Scope, 124, OPC_CheckValueType, MVT::i16, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 38, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI16m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI16m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 0, 38, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI16m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI16m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 36, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI16m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI16m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 0, 124, OPC_CheckValueType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 38, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI32m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI32m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 0, 38, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI32m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI32m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 36, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_FpI32m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBR_FpI32m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 0, 0, 0, 96, OPC_RecordChild1, OPC_SwitchType , 26, MVT::f32, OPC_Scope, 11, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp32), 0, 1, MVT::f32, 2, 0, 1, 11, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSSrr), 0, 1, MVT::f32, 2, 0, 1, 0, 26, MVT::f64, OPC_Scope, 11, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp64), 0, 1, MVT::f64, 2, 0, 1, 11, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBSDrr), 0, 1, MVT::f64, 2, 0, 1, 0, 9, MVT::f80, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB_Fp80), 0, 1, MVT::f80, 2, 0, 1, 11, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 11, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUBPDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 0, 72|128,7, ISD::FMUL, OPC_Scope, 19|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 53, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 79, OPC_CheckPredicate, 48, OPC_Scope, 49, OPC_CheckPredicate, 49, OPC_MoveParent, OPC_SwitchType , 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 24, OPC_CheckPredicate, 50, OPC_MoveParent, OPC_CheckType, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 0, 21|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 54, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 0, 81, OPC_CheckPredicate, 48, OPC_Scope, 50, OPC_CheckPredicate, 49, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 2, 3, 4, 5, 6, 7, 0, 25, OPC_CheckPredicate, 50, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 2, 3, 4, 5, 6, 7, 0, 0, 119, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 24, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 24, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 0, 122, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 25, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 2, 3, 4, 5, 6, 7, 27, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 2, 3, 4, 5, 6, 7, 25, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 27, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 2, 3, 4, 5, 6, 7, 0, 32|128,1, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, X86ISD::FILD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_MoveChild, 2, OPC_Scope, 73, OPC_CheckValueType, MVT::i16, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 73, OPC_CheckValueType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 0, 33|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, X86ISD::FILD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_MoveChild, 2, OPC_Scope, 74, OPC_CheckValueType, MVT::i16, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m32), 0|OPFL_Chain, 1, MVT::f32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m64), 0|OPFL_Chain, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI16m80), 0|OPFL_Chain, 1, MVT::f80, 6, 2, 3, 4, 5, 6, 7, 0, 74, OPC_CheckValueType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m32), 0|OPFL_Chain, 1, MVT::f32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m64), 0|OPFL_Chain, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_FpI32m80), 0|OPFL_Chain, 1, MVT::f80, 6, 2, 3, 4, 5, 6, 7, 0, 0, 97, OPC_RecordChild0, OPC_RecordChild1, OPC_SwitchType , 26, MVT::f32, OPC_Scope, 11, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp32), 0, 1, MVT::f32, 2, 0, 1, 11, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSSrr), 0, 1, MVT::f32, 2, 0, 1, 0, 26, MVT::f64, OPC_Scope, 11, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp64), 0, 1, MVT::f64, 2, 0, 1, 11, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULSDrr), 0, 1, MVT::f64, 2, 0, 1, 0, 9, MVT::f80, OPC_MorphNodeTo, TARGET_OPCODE(X86::MUL_Fp80), 0, 1, MVT::f80, 2, 0, 1, 11, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 11, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MULPDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 0, 114|128,5, ISD::FDIV, OPC_RecordChild0, OPC_Scope, 12|128,5, OPC_MoveChild, 1, OPC_SwitchOpcode , 1|128,3, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 53, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 79, OPC_CheckPredicate, 48, OPC_Scope, 49, OPC_CheckPredicate, 49, OPC_MoveParent, OPC_SwitchType , 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 24, OPC_CheckPredicate, 50, OPC_MoveParent, OPC_CheckType, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 53, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_Fp32m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_Fp64m), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 79, OPC_CheckPredicate, 48, OPC_Scope, 49, OPC_CheckPredicate, 49, OPC_MoveParent, OPC_SwitchType , 21, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_Fp64m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 19, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_Fp80m32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 24, OPC_CheckPredicate, 50, OPC_MoveParent, OPC_CheckType, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_Fp80m64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 108, OPC_CheckPredicate, 8, OPC_Scope, 24, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 24, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 0, 0, 1|128,2, X86ISD::FILD, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_MoveChild, 2, OPC_Scope, 124, OPC_CheckValueType, MVT::i16, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 38, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI16m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI16m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 0, 38, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI16m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI16m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 36, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI16m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI16m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 0, 124, OPC_CheckValueType, MVT::i32, OPC_MoveParent, OPC_MoveParent, OPC_SwitchType , 38, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI32m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI32m32), 0|OPFL_Chain, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 0, 38, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI32m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI32m64), 0|OPFL_Chain, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 36, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_Scope, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_FpI32m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 13, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVR_FpI32m80), 0|OPFL_Chain, 1, MVT::f80, 6, 0, 3, 4, 5, 6, 7, 0, 0, 0, 0, 96, OPC_RecordChild1, OPC_SwitchType , 26, MVT::f32, OPC_Scope, 11, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp32), 0, 1, MVT::f32, 2, 0, 1, 11, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSSrr), 0, 1, MVT::f32, 2, 0, 1, 0, 26, MVT::f64, OPC_Scope, 11, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp64), 0, 1, MVT::f64, 2, 0, 1, 11, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVSDrr), 0, 1, MVT::f64, 2, 0, 1, 0, 9, MVT::f80, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIV_Fp80), 0, 1, MVT::f80, 2, 0, 1, 11, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 11, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::DIVPDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 0, 94, ISD::BRIND, OPC_RecordNode, OPC_Scope, 60, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::JMP32m), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 23, MVT::i64, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::JMP64m), 0|OPFL_Chain|OPFL_MemRefs, 0, 5, 3, 4, 5, 6, 7, 0, 29, OPC_RecordChild1, OPC_Scope, 12, OPC_CheckChild1Type, MVT::i32, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::JMP32r), 0|OPFL_Chain, 0, 1, 1, 12, OPC_CheckChild1Type, MVT::i64, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::JMP64r), 0|OPFL_Chain, 0, 1, 1, 0, 0, 4|128,2, X86ISD::CALL, OPC_RecordNode, OPC_CaptureFlagInput, OPC_Scope, 86, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL32m), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs|OPFL_Variadic1, 0, 5, 3, 4, 5, 6, 7, 49, MVT::i64, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_Scope, 20, OPC_CheckPatternPredicate, 16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL64m), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs|OPFL_Variadic1, 0, 5, 3, 4, 5, 6, 7, 20, OPC_CheckPatternPredicate, 17, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::WINCALL64m), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs|OPFL_Variadic1, 0, 5, 3, 4, 5, 6, 7, 0, 0, 39|128,1, OPC_RecordChild1, OPC_Scope, 119, OPC_MoveChild, 1, OPC_SwitchOpcode , 46, ISD::TargetGlobalAddress, OPC_SwitchType , 11, MVT::i32, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CALLpcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1, 0, 1, 1, 29, MVT::i64, OPC_MoveParent, OPC_Scope, 12, OPC_CheckPatternPredicate, 16, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL64pcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1, 0, 1, 1, 12, OPC_CheckPatternPredicate, 17, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::WINCALL64pcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1, 0, 1, 1, 0, 0, 46, ISD::TargetExternalSymbol, OPC_SwitchType , 11, MVT::i32, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CALLpcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1, 0, 1, 1, 29, MVT::i64, OPC_MoveParent, OPC_Scope, 12, OPC_CheckPatternPredicate, 16, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL64pcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1, 0, 1, 1, 12, OPC_CheckPatternPredicate, 17, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::WINCALL64pcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1, 0, 1, 1, 0, 0, 17, ISD::Constant, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckPatternPredicate, 18, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CALLpcrel32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1, 0, 1, 2, 0, 12, OPC_CheckChild1Type, MVT::i32, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL32r), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1, 0, 1, 1, 30, OPC_CheckChild1Type, MVT::i64, OPC_Scope, 12, OPC_CheckPatternPredicate, 16, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CALL64r), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1, 0, 1, 1, 12, OPC_CheckPatternPredicate, 17, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::WINCALL64r), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_Variadic1, 0, 1, 1, 0, 0, 0, 0|128,1, X86ISD::BSF, OPC_Scope, 88, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 24, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 5, 2, 3, 4, 5, 6, 24, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 5, 2, 3, 4, 5, 6, 26, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 5, 2, 3, 4, 5, 6, 0, 36, OPC_RecordChild0, OPC_SwitchType , 9, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF16rr), 0, 2, MVT::i16, MVT::i32, 1, 0, 9, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF32rr), 0, 2, MVT::i32, MVT::i32, 1, 0, 9, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSF64rr), 0, 2, MVT::i64, MVT::i32, 1, 0, 0, 0, 0|128,1, X86ISD::BSR, OPC_Scope, 88, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 24, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 5, 2, 3, 4, 5, 6, 24, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 5, 2, 3, 4, 5, 6, 26, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 5, 2, 3, 4, 5, 6, 0, 36, OPC_RecordChild0, OPC_SwitchType , 9, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR16rr), 0, 2, MVT::i16, MVT::i32, 1, 0, 9, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR32rr), 0, 2, MVT::i32, MVT::i32, 1, 0, 9, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSR64rr), 0, 2, MVT::i64, MVT::i32, 1, 0, 0, 0, 115|128,2, ISD::ADDE, OPC_CaptureFlagInput, OPC_Scope, 100, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_SwitchType , 19, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i8, 6, 0, 3, 4, 5, 6, 7, 19, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 3, 4, 5, 6, 7, 19, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 19, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 3, 4, 5, 6, 7, 0, 100, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 19, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i8, 6, 2, 3, 4, 5, 6, 7, 19, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i16, 6, 2, 3, 4, 5, 6, 7, 19, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 19, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 3, 4, 5, 6, 7, 0, 36|128,1, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 111, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 44, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 11, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16ri8), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i16, 2, 0, 2, 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32ri8), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 2, 11, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64ri8), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 2, 0, 16, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64ri32), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 2, 42, OPC_MoveParent, OPC_SwitchType , 11, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8ri), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i8, 2, 0, 2, 11, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16ri), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i16, 2, 0, 2, 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32ri), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 2, 0, 0, 11, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC8rr), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i8, 2, 0, 1, 11, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC16rr), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i16, 2, 0, 1, 11, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC32rr), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 1, 11, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADC64rr), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 1, 0, 0, 13|128,2, ISD::SUBE, OPC_CaptureFlagInput, OPC_RecordChild0, OPC_Scope, 99, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_SwitchType , 19, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB8rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i8, 6, 0, 3, 4, 5, 6, 7, 19, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i16, 6, 0, 3, 4, 5, 6, 7, 19, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 19, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64rm), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 3, 4, 5, 6, 7, 0, 35|128,1, OPC_RecordChild1, OPC_Scope, 111, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 44, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 11, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16ri8), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i16, 2, 0, 2, 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32ri8), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 2, 11, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64ri8), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 2, 0, 16, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64ri32), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 2, 42, OPC_MoveParent, OPC_SwitchType , 11, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB8ri), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i8, 2, 0, 2, 11, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16ri), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i16, 2, 0, 2, 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32ri), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 2, 0, 0, 11, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB8rr), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i8, 2, 0, 1, 11, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB16rr), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i16, 2, 0, 1, 11, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB32rr), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 1, 11, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::SBB64rr), 0|OPFL_FlagInput|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 1, 0, 0, 92|128,1, ISD::ADDC, OPC_Scope, 58, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_SwitchType , 19, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 19, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 3, 4, 5, 6, 7, 0, 58, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 19, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i64, 6, 2, 3, 4, 5, 6, 7, 19, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 0, 99, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 70, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 31, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri8), 0|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 2, 11, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri8), 0|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 2, 0, 16, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri32), 0|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 2, 14, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 2, 0, 11, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 1, 11, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rr), 0|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 1, 0, 0, 30|128,1, ISD::SUBC, OPC_RecordChild0, OPC_Scope, 57, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_SwitchType , 19, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 19, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rm), 0|OPFL_Chain|OPFL_FlagOutput|OPFL_MemRefs, 1, MVT::i64, 6, 0, 3, 4, 5, 6, 7, 0, 96, OPC_RecordChild1, OPC_Scope, 68, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 31, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri8), 0|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 2, 11, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri8), 0|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 2, 0, 29, OPC_MoveParent, OPC_SwitchType , 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri), 0|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 2, 11, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri32), 0|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 2, 0, 0, 11, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rr), 0|OPFL_FlagOutput, 1, MVT::i32, 2, 0, 1, 11, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rr), 0|OPFL_FlagOutput, 1, MVT::i64, 2, 0, 1, 0, 0, 42|128,3, X86ISD::ADD, OPC_Scope, 121, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 124, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 28, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 28, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 0, 47|128,1, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 118, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64ri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 45, OPC_MoveParent, OPC_SwitchType , 12, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8ri), 0, 2, MVT::i8, MVT::i32, 2, 0, 2, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16ri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32ri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 12, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rr), 0, 2, MVT::i8, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 0, 0, 44|128,2, X86ISD::SUB, OPC_RecordChild0, OPC_Scope, 120, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 46|128,1, OPC_RecordChild1, OPC_Scope, 118, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16ri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64ri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 45, OPC_MoveParent, OPC_SwitchType , 12, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8ri), 0, 2, MVT::i8, MVT::i32, 2, 0, 2, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16ri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32ri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 12, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB8rr), 0, 2, MVT::i8, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::SUB64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 0, 0, 42|128,3, X86ISD::OR, OPC_Scope, 121, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 124, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 28, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 28, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 0, 47|128,1, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 118, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16ri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32ri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64ri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64ri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 45, OPC_MoveParent, OPC_SwitchType , 12, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8ri), 0, 2, MVT::i8, MVT::i32, 2, 0, 2, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16ri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32ri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 12, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR8rr), 0, 2, MVT::i8, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::OR64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 0, 0, 42|128,3, X86ISD::XOR, OPC_Scope, 121, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 124, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 28, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 28, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 0, 47|128,1, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 118, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16ri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32ri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64ri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64ri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 45, OPC_MoveParent, OPC_SwitchType , 12, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8ri), 0, 2, MVT::i8, MVT::i32, 2, 0, 2, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16ri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32ri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 12, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR8rr), 0, 2, MVT::i8, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::XOR64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 0, 0, 42|128,3, X86ISD::AND, OPC_Scope, 121, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 25, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 27, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 0, 124, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_Scope, 28, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i8, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 6, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i16, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i16, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i32, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 28, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rm), 0|OPFL_Chain|OPFL_MemRefs, 2, MVT::i64, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 0, 47|128,1, OPC_RecordChild0, OPC_RecordChild1, OPC_Scope, 118, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_Scope, 47, OPC_CheckPredicate, 11, OPC_MoveParent, OPC_SwitchType , 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16ri8), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32ri8), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 12, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64ri8), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 0, 17, OPC_CheckPredicate, 12, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64ri32), 0, 2, MVT::i64, MVT::i32, 2, 0, 2, 45, OPC_MoveParent, OPC_SwitchType , 12, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8ri), 0, 2, MVT::i8, MVT::i32, 2, 0, 2, 12, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16ri), 0, 2, MVT::i16, MVT::i32, 2, 0, 2, 12, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32ri), 0, 2, MVT::i32, MVT::i32, 2, 0, 2, 0, 0, 12, OPC_CheckType, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND8rr), 0, 2, MVT::i8, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND16rr), 0, 2, MVT::i16, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND32rr), 0, 2, MVT::i32, MVT::i32, 2, 0, 1, 12, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::AND64rr), 0, 2, MVT::i64, MVT::i32, 2, 0, 1, 0, 0, 80|128,1, ISD::FP_TO_SINT, OPC_Scope, 113, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_SwitchType , 47, MVT::f64, OPC_MoveParent, OPC_SwitchType , 20, MVT::i64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSD2SI64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 20, MVT::i32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSD2SIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 0, 47, MVT::f32, OPC_MoveParent, OPC_SwitchType , 20, MVT::i64, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSS2SI64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 5, 2, 3, 4, 5, 6, 20, MVT::i32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSS2SIrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 5, 2, 3, 4, 5, 6, 0, 0, 91, OPC_RecordChild0, OPC_Scope, 28, OPC_CheckChild0Type, MVT::f64, OPC_SwitchType , 10, MVT::i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSD2SI64rr), 0, 1, MVT::i64, 1, 0, 10, MVT::i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSD2SIrr), 0, 1, MVT::i32, 1, 0, 0, 28, OPC_CheckChild0Type, MVT::f32, OPC_SwitchType , 10, MVT::i64, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSS2SI64rr), 0, 1, MVT::i64, 1, 0, 10, MVT::i32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTTSS2SIrr), 0, 1, MVT::i32, 1, 0, 0, 14, OPC_CheckChild0Type, MVT::v4f32, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPS2DQrr), 0, 1, MVT::v4i32, 1, 0, 14, OPC_CheckChild0Type, MVT::v2f64, OPC_CheckType, MVT::v2i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTTPD2PIrr), 0, 1, MVT::v2i32, 1, 0, 0, 0, 82|128,1, ISD::SINT_TO_FP, OPC_Scope, 115, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_SwitchType , 51, MVT::i64, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_SwitchType , 20, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SD64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 20, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SS64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 0, 49, MVT::i32, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_SwitchType , 20, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 20, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 0, 0, 91, OPC_RecordChild0, OPC_Scope, 28, OPC_CheckChild0Type, MVT::i64, OPC_SwitchType , 10, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SD64rr), 0, 1, MVT::f64, 1, 0, 10, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SS64rr), 0, 1, MVT::f32, 1, 0, 0, 28, OPC_CheckChild0Type, MVT::i32, OPC_SwitchType , 10, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SSrr), 0, 1, MVT::f32, 1, 0, 10, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSI2SDrr), 0, 1, MVT::f64, 1, 0, 0, 14, OPC_CheckChild0Type, MVT::v4i32, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTDQ2PSrr), 0, 1, MVT::v4f32, 1, 0, 14, OPC_CheckChild0Type, MVT::v2i32, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_CVTPI2PDrr), 0, 1, MVT::v2f64, 1, 0, 0, 0, 61|128,5, ISD::BIT_CONVERT, OPC_Scope, 126, OPC_MoveChild, 0, OPC_SwitchOpcode , 63, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_SwitchType , 27, MVT::i64, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64toSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 25, MVT::i32, OPC_CheckPredicate, 3, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDI2SSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 0, 55, ISD::EXTRACT_VECTOR_ELT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v2i64, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_MoveParent, OPC_SwitchType , 10, MVT::v1i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVDQ2Qrr), 0, 1, MVT::v1i64, 1, 0, 8, MVT::v2i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVDQ2Qrr), 0, 1, MVT::v2i32, 1, 0, 8, MVT::v4i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVDQ2Qrr), 0, 1, MVT::v4i16, 1, 0, 8, MVT::v8i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVDQ2Qrr), 0, 1, MVT::v8i8, 1, 0, 0, 0, 58|128,4, OPC_RecordChild0, OPC_Scope, 39, OPC_CheckChild0Type, MVT::v4i32, OPC_SwitchType , 5, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v4f32, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 0, 39, OPC_CheckChild0Type, MVT::v8i16, OPC_SwitchType , 5, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v4f32, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 0, 39, OPC_CheckChild0Type, MVT::v16i8, OPC_SwitchType , 5, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v4f32, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 0, 39, OPC_CheckChild0Type, MVT::v2f64, OPC_SwitchType , 5, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v4f32, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 0, 39, OPC_CheckChild0Type, MVT::v4f32, OPC_SwitchType , 5, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 0, 39, OPC_CheckChild0Type, MVT::v2i64, OPC_SwitchType , 5, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v8i16, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v16i8, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v4f32, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 5, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CompleteMatch, 1, 0, 0, 44, OPC_CheckChild0Type, MVT::v1i64, OPC_SwitchType , 3, MVT::v8i8, OPC_CompleteMatch, 1, 0, 3, MVT::v4i16, OPC_CompleteMatch, 1, 0, 3, MVT::v2i32, OPC_CompleteMatch, 1, 0, 3, MVT::v2f32, OPC_CompleteMatch, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64from64rr), 0, 1, MVT::i64, 1, 0, 8, MVT::f64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2FR64rr), 0, 1, MVT::f64, 1, 0, 0, 44, OPC_CheckChild0Type, MVT::v2i32, OPC_SwitchType , 3, MVT::v8i8, OPC_CompleteMatch, 1, 0, 3, MVT::v4i16, OPC_CompleteMatch, 1, 0, 3, MVT::v2f32, OPC_CompleteMatch, 1, 0, 3, MVT::v1i64, OPC_CompleteMatch, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64from64rr), 0, 1, MVT::i64, 1, 0, 8, MVT::f64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2FR64rr), 0, 1, MVT::f64, 1, 0, 0, 34, OPC_CheckChild0Type, MVT::v2f32, OPC_SwitchType , 3, MVT::v8i8, OPC_CompleteMatch, 1, 0, 3, MVT::v4i16, OPC_CompleteMatch, 1, 0, 3, MVT::v2i32, OPC_CompleteMatch, 1, 0, 3, MVT::v1i64, OPC_CompleteMatch, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64from64rr), 0, 1, MVT::i64, 1, 0, 0, 44, OPC_CheckChild0Type, MVT::v4i16, OPC_SwitchType , 3, MVT::v8i8, OPC_CompleteMatch, 1, 0, 3, MVT::v2i32, OPC_CompleteMatch, 1, 0, 3, MVT::v2f32, OPC_CompleteMatch, 1, 0, 3, MVT::v1i64, OPC_CompleteMatch, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64from64rr), 0, 1, MVT::i64, 1, 0, 8, MVT::f64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2FR64rr), 0, 1, MVT::f64, 1, 0, 0, 44, OPC_CheckChild0Type, MVT::v8i8, OPC_SwitchType , 3, MVT::v4i16, OPC_CompleteMatch, 1, 0, 3, MVT::v2i32, OPC_CompleteMatch, 1, 0, 3, MVT::v2f32, OPC_CompleteMatch, 1, 0, 3, MVT::v1i64, OPC_CompleteMatch, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64from64rr), 0, 1, MVT::i64, 1, 0, 8, MVT::f64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVQ2FR64rr), 0, 1, MVT::f64, 1, 0, 0, 66, OPC_CheckChild0Type, MVT::i64, OPC_SwitchType , 10, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64toSDrr), 0, 1, MVT::f64, 1, 0, 8, MVT::v1i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64to64rr), 0, 1, MVT::v1i64, 1, 0, 8, MVT::v2i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64to64rr), 0, 1, MVT::v2i32, 1, 0, 8, MVT::v2f32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64to64rr), 0, 1, MVT::v2f32, 1, 0, 8, MVT::v4i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64to64rr), 0, 1, MVT::v4i16, 1, 0, 8, MVT::v8i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_MOVD64to64rr), 0, 1, MVT::v8i8, 1, 0, 0, 14, OPC_CheckChild0Type, MVT::f64, OPC_CheckType, MVT::i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSDto64rr), 0, 1, MVT::i64, 1, 0, 14, OPC_CheckChild0Type, MVT::i32, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVDI2SSrr), 0, 1, MVT::f32, 1, 0, 14, OPC_CheckChild0Type, MVT::f32, OPC_CheckType, MVT::i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSS2DIrr), 0, 1, MVT::i32, 1, 0, 0, 0, 109, X86ISD::UCOMI, OPC_RecordChild0, OPC_Scope, 52, OPC_CheckChild0Type, MVT::v4f32, OPC_Scope, 34, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_UCOMISSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_UCOMISSrr), 0, 1, MVT::i32, 2, 0, 1, 0, 52, OPC_CheckChild0Type, MVT::v2f64, OPC_Scope, 34, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_UCOMISDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_UCOMISDrr), 0, 1, MVT::i32, 2, 0, 1, 0, 0, 109, X86ISD::COMI, OPC_RecordChild0, OPC_Scope, 52, OPC_CheckChild0Type, MVT::v4f32, OPC_Scope, 34, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_COMISSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild1, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_COMISSrr), 0, 1, MVT::i32, 2, 0, 1, 0, 52, OPC_CheckChild0Type, MVT::v2f64, OPC_Scope, 34, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_COMISDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild1, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::Int_COMISDrr), 0, 1, MVT::i32, 2, 0, 1, 0, 0, 35|128,1, X86ISD::FAND, OPC_Scope, 64, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 64, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 0, 30, OPC_RecordChild0, OPC_RecordChild1, OPC_SwitchType , 11, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPSrr), 0, 1, MVT::f32, 2, 0, 1, 11, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsANDPDrr), 0, 1, MVT::f64, 2, 0, 1, 0, 0, 35|128,1, X86ISD::FOR, OPC_Scope, 64, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 64, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 0, 30, OPC_RecordChild0, OPC_RecordChild1, OPC_SwitchType , 11, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPSrr), 0, 1, MVT::f32, 2, 0, 1, 11, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsORPDrr), 0, 1, MVT::f64, 2, 0, 1, 0, 0, 35|128,1, X86ISD::FXOR, OPC_Scope, 64, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 0, 64, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 21, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 2, 3, 4, 5, 6, 7, 0, 30, OPC_RecordChild0, OPC_RecordChild1, OPC_SwitchType , 11, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPSrr), 0, 1, MVT::f32, 2, 0, 1, 11, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsXORPDrr), 0, 1, MVT::f64, 2, 0, 1, 0, 0, 50|128,1, X86ISD::FMAX, OPC_RecordChild0, OPC_Scope, 118, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 24, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 24, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 0, 55, OPC_RecordChild1, OPC_SwitchType , 11, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSSrr), 0, 1, MVT::f32, 2, 0, 1, 11, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 11, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXSDrr), 0, 1, MVT::f64, 2, 0, 1, 11, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MAXPDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 0, 50|128,1, X86ISD::FMIN, OPC_RecordChild0, OPC_Scope, 118, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 24, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 6, 0, 3, 4, 5, 6, 7, 24, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 6, 0, 3, 4, 5, 6, 7, 26, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 6, 0, 3, 4, 5, 6, 7, 0, 55, OPC_RecordChild1, OPC_SwitchType , 11, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSSrr), 0, 1, MVT::f32, 2, 0, 1, 11, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPSrr), 0, 1, MVT::v4f32, 2, 0, 1, 11, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINSDrr), 0, 1, MVT::f64, 2, 0, 1, 11, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINPDrr), 0, 1, MVT::v2f64, 2, 0, 1, 0, 0, 78|128,1, ISD::FSQRT, OPC_Scope, 113, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 23, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 19, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSSm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 25, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPSm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 23, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSDm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 25, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPDm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2f64, 5, 2, 3, 4, 5, 6, 0, 89, OPC_RecordChild0, OPC_SwitchType , 24, MVT::f32, OPC_Scope, 10, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRT_Fp32), 0, 1, MVT::f32, 1, 0, 10, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSSr), 0, 1, MVT::f32, 1, 0, 0, 24, MVT::f64, OPC_Scope, 10, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRT_Fp64), 0, 1, MVT::f64, 1, 0, 10, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTSDr), 0, 1, MVT::f64, 1, 0, 0, 8, MVT::f80, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRT_Fp80), 0, 1, MVT::f80, 1, 0, 10, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPSr), 0, 1, MVT::v4f32, 1, 0, 10, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SQRTPDr), 0, 1, MVT::v2f64, 1, 0, 0, 0, 94, X86ISD::FRSQRT, OPC_Scope, 63, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 23, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 19, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTSSm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 25, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTPSm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 0, 27, OPC_RecordChild0, OPC_SwitchType , 10, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTSSr), 0, 1, MVT::f32, 1, 0, 10, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RSQRTPSr), 0, 1, MVT::v4f32, 1, 0, 0, 0, 94, X86ISD::FRCP, OPC_Scope, 63, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_Scope, 23, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 19, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPSSm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 25, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPPSm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v4f32, 5, 2, 3, 4, 5, 6, 0, 27, OPC_RecordChild0, OPC_SwitchType , 10, MVT::f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPSSr), 0, 1, MVT::f32, 1, 0, 10, MVT::v4f32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RCPPSr), 0, 1, MVT::v4f32, 1, 0, 0, 0, 103, ISD::FP_ROUND, OPC_Scope, 38, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::f64, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckPatternPredicate, 12, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSD2SSrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 61, OPC_RecordChild0, OPC_Scope, 28, OPC_CheckChild0Type, MVT::f64, OPC_CheckType, MVT::f32, OPC_Scope, 10, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV_Fp6432), 0, 1, MVT::f32, 1, 0, 10, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSD2SSrr), 0, 1, MVT::f32, 1, 0, 0, 28, OPC_CheckChild0Type, MVT::f80, OPC_SwitchType , 10, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV_Fp8032), 0, 1, MVT::f32, 1, 0, 10, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV_Fp8064), 0, 1, MVT::f64, 1, 0, 0, 0, 0, 103, ISD::FP_EXTEND, OPC_Scope, 38, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 9, OPC_CheckType, MVT::f32, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_CheckPatternPredicate, 1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSS2SDrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 61, OPC_RecordChild0, OPC_Scope, 42, OPC_CheckChild0Type, MVT::f32, OPC_SwitchType , 24, MVT::f64, OPC_Scope, 10, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV_Fp3264), 0, 1, MVT::f64, 1, 0, 10, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::CVTSS2SDrr), 0, 1, MVT::f64, 1, 0, 0, 10, MVT::f80, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV_Fp3280), 0, 1, MVT::f80, 1, 0, 0, 14, OPC_CheckChild0Type, MVT::f64, OPC_CheckType, MVT::f80, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV_Fp6480), 0, 1, MVT::f80, 1, 0, 0, 0, 92, X86ISD::PCMPEQQ, OPC_Scope, 37, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 37, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 2, 3, 4, 5, 6, 7, 13, OPC_RecordChild0, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPEQQrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 51, X86ISD::PTEST, OPC_RecordChild0, OPC_Scope, 34, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PTESTrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild1, OPC_CheckPatternPredicate, 4, OPC_MorphNodeTo, TARGET_OPCODE(X86::PTESTrr), 0, 1, MVT::i32, 2, 0, 1, 0, 53, X86ISD::PCMPGTQ, OPC_RecordChild0, OPC_Scope, 36, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::LOAD, OPC_RecordMemRef, OPC_RecordNode, OPC_CheckFoldableChainNode, OPC_RecordChild1, OPC_CheckPredicate, 2, OPC_CheckPredicate, 8, OPC_CheckPredicate, 23, OPC_MoveParent, OPC_CheckType, MVT::v2i64, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTQrm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::v2i64, 6, 0, 3, 4, 5, 6, 7, 12, OPC_RecordChild1, OPC_CheckType, MVT::v2i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::PCMPGTQrr), 0, 1, MVT::v2i64, 2, 0, 1, 0, 98, ISD::ATOMIC_SWAP, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_RecordChild2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 72, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XCHG32rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::i16, OPC_CheckPredicate, 73, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XCHG16rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 6, 2, 3, 4, 5, 6, 7, 21, MVT::i8, OPC_CheckPredicate, 74, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XCHG8rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i8, 6, 2, 3, 4, 5, 6, 7, 21, MVT::i64, OPC_CheckPredicate, 75, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::XCHG64rm), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 6, 2, 3, 4, 5, 6, 7, 0, 98, ISD::ATOMIC_LOAD_ADD, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_RecordChild2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 76, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LXADD32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 2, 3, 4, 5, 6, 7, 21, MVT::i16, OPC_CheckPredicate, 77, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LXADD16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 6, 2, 3, 4, 5, 6, 7, 21, MVT::i8, OPC_CheckPredicate, 78, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LXADD8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i8, 6, 2, 3, 4, 5, 6, 7, 21, MVT::i64, OPC_CheckPredicate, 79, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LXADD64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 6, 2, 3, 4, 5, 6, 7, 0, 98, ISD::ATOMIC_LOAD_AND, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_RecordChild2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMAND32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i16, OPC_CheckPredicate, 81, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMAND16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i8, OPC_CheckPredicate, 82, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMAND8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i8, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i64, OPC_CheckPredicate, 83, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMAND64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 6, 3, 4, 5, 6, 7, 2, 0, 98, ISD::ATOMIC_LOAD_OR, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_RecordChild2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 84, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMOR32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i16, OPC_CheckPredicate, 85, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMOR16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i8, OPC_CheckPredicate, 86, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMOR8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i8, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i64, OPC_CheckPredicate, 87, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMOR64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 6, 3, 4, 5, 6, 7, 2, 0, 98, ISD::ATOMIC_LOAD_XOR, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_RecordChild2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 88, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMXOR32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i16, OPC_CheckPredicate, 89, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMXOR16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i8, OPC_CheckPredicate, 90, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMXOR8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i8, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i64, OPC_CheckPredicate, 91, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMXOR64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 6, 3, 4, 5, 6, 7, 2, 0, 98, ISD::ATOMIC_LOAD_NAND, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_RecordChild2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 92, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMNAND32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i16, OPC_CheckPredicate, 93, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMNAND16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i8, OPC_CheckPredicate, 94, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMNAND8), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i8, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i64, OPC_CheckPredicate, 95, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMNAND64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 6, 3, 4, 5, 6, 7, 2, 0, 75, ISD::ATOMIC_LOAD_MIN, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_RecordChild2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 96, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMIN32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i16, OPC_CheckPredicate, 97, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMIN16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i64, OPC_CheckPredicate, 98, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMIN64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 6, 3, 4, 5, 6, 7, 2, 0, 75, ISD::ATOMIC_LOAD_MAX, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_RecordChild2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 99, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMAX32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i16, OPC_CheckPredicate, 100, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMAX16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i64, OPC_CheckPredicate, 101, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMMAX64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 6, 3, 4, 5, 6, 7, 2, 0, 75, ISD::ATOMIC_LOAD_UMIN, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_RecordChild2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 102, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMIN32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i16, OPC_CheckPredicate, 103, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMIN16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i64, OPC_CheckPredicate, 104, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMIN64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 6, 3, 4, 5, 6, 7, 2, 0, 75, ISD::ATOMIC_LOAD_UMAX, OPC_RecordMemRef, OPC_RecordNode, OPC_RecordChild1, OPC_RecordChild2, OPC_SwitchType , 21, MVT::i32, OPC_CheckPredicate, 105, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMAX32), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i32, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i16, OPC_CheckPredicate, 106, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMAX16), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i16, 6, 3, 4, 5, 6, 7, 2, 21, MVT::i64, OPC_CheckPredicate, 107, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ATOMUMAX64), 0|OPFL_Chain|OPFL_MemRefs, 1, MVT::i64, 6, 3, 4, 5, 6, 7, 2, 0, 88|128,1, X86ISD::FILD, OPC_RecordNode, OPC_RecordChild1, OPC_MoveChild, 2, OPC_Scope, 69, OPC_CheckValueType, MVT::i16, OPC_MoveParent, OPC_SwitchType , 20, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp16m32), 0|OPFL_Chain, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 20, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp16m64), 0|OPFL_Chain, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 18, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp16m80), 0|OPFL_Chain, 1, MVT::f80, 5, 2, 3, 4, 5, 6, 0, 69, OPC_CheckValueType, MVT::i32, OPC_MoveParent, OPC_SwitchType , 20, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp32m32), 0|OPFL_Chain, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 20, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp32m64), 0|OPFL_Chain, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 18, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp32m80), 0|OPFL_Chain, 1, MVT::f80, 5, 2, 3, 4, 5, 6, 0, 69, OPC_CheckValueType, MVT::i64, OPC_MoveParent, OPC_SwitchType , 20, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp64m32), 0|OPFL_Chain, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 20, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp64m64), 0|OPFL_Chain, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 18, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp64m80), 0|OPFL_Chain, 1, MVT::f80, 5, 2, 3, 4, 5, 6, 0, 0, 14|128,1, X86ISD::FP_TO_INT16_IN_MEM, OPC_RecordNode, OPC_RecordChild1, OPC_Scope, 45, OPC_CheckChild1Type, MVT::f32, OPC_RecordChild2, OPC_Scope, 20, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp16m32), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FP32_TO_INT16_IN_MEM), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 0, 45, OPC_CheckChild1Type, MVT::f64, OPC_RecordChild2, OPC_Scope, 20, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp16m64), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FP64_TO_INT16_IN_MEM), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 0, 45, OPC_CheckChild1Type, MVT::f80, OPC_RecordChild2, OPC_Scope, 20, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp16m80), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FP80_TO_INT16_IN_MEM), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 0, 0, 14|128,1, X86ISD::FP_TO_INT32_IN_MEM, OPC_RecordNode, OPC_RecordChild1, OPC_Scope, 45, OPC_CheckChild1Type, MVT::f32, OPC_RecordChild2, OPC_Scope, 20, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp32m32), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FP32_TO_INT32_IN_MEM), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 0, 45, OPC_CheckChild1Type, MVT::f64, OPC_RecordChild2, OPC_Scope, 20, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp32m64), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FP64_TO_INT32_IN_MEM), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 0, 45, OPC_CheckChild1Type, MVT::f80, OPC_RecordChild2, OPC_Scope, 20, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp32m80), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FP80_TO_INT32_IN_MEM), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 0, 0, 14|128,1, X86ISD::FP_TO_INT64_IN_MEM, OPC_RecordNode, OPC_RecordChild1, OPC_Scope, 45, OPC_CheckChild1Type, MVT::f32, OPC_RecordChild2, OPC_Scope, 20, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp64m32), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FP32_TO_INT64_IN_MEM), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 0, 45, OPC_CheckChild1Type, MVT::f64, OPC_RecordChild2, OPC_Scope, 20, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp64m64), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FP64_TO_INT64_IN_MEM), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 0, 45, OPC_CheckChild1Type, MVT::f80, OPC_RecordChild2, OPC_Scope, 20, OPC_CheckPatternPredicate, 9, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ISTT_Fp64m80), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 18, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FP80_TO_INT64_IN_MEM), 0|OPFL_Chain, 0, 6, 3, 4, 5, 6, 7, 1, 0, 0, 78, X86ISD::FLD, OPC_RecordNode, OPC_RecordChild1, OPC_MoveChild, 2, OPC_Scope, 23, OPC_CheckValueType, MVT::f32, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp32m), 0|OPFL_Chain, 1, MVT::f32, 5, 2, 3, 4, 5, 6, 23, OPC_CheckValueType, MVT::f64, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp64m), 0|OPFL_Chain, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 23, OPC_CheckValueType, MVT::f80, OPC_MoveParent, OPC_CheckType, MVT::f80, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp80m), 0|OPFL_Chain, 1, MVT::f80, 5, 2, 3, 4, 5, 6, 0, 30|128,1, X86ISD::FST, OPC_RecordNode, OPC_CaptureFlagInput, OPC_RecordChild1, OPC_Scope, 26, OPC_CheckChild1Type, MVT::f32, OPC_RecordChild2, OPC_MoveChild, 3, OPC_CheckValueType, MVT::f32, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp32m), 0|OPFL_Chain|OPFL_FlagInput, 0, 6, 3, 4, 5, 6, 7, 1, 51, OPC_CheckChild1Type, MVT::f64, OPC_RecordChild2, OPC_MoveChild, 3, OPC_Scope, 21, OPC_CheckValueType, MVT::f32, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp64m32), 0|OPFL_Chain|OPFL_FlagInput, 0, 6, 3, 4, 5, 6, 7, 1, 21, OPC_CheckValueType, MVT::f64, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp64m), 0|OPFL_Chain|OPFL_FlagInput, 0, 6, 3, 4, 5, 6, 7, 1, 0, 73, OPC_CheckChild1Type, MVT::f80, OPC_RecordChild2, OPC_MoveChild, 3, OPC_Scope, 21, OPC_CheckValueType, MVT::f32, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp80m32), 0|OPFL_Chain|OPFL_FlagInput, 0, 6, 3, 4, 5, 6, 7, 1, 21, OPC_CheckValueType, MVT::f64, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_Fp80m64), 0|OPFL_Chain|OPFL_FlagInput, 0, 6, 3, 4, 5, 6, 7, 1, 21, OPC_CheckValueType, MVT::f80, OPC_MoveParent, OPC_CheckComplexPat, /*CP*/0, /*#*/2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ST_FpP80m), 0|OPFL_Chain|OPFL_FlagInput, 0, 6, 3, 4, 5, 6, 7, 1, 0, 0, 27, X86ISD::FILD_FLAG, OPC_RecordNode, OPC_RecordChild1, OPC_MoveChild, 2, OPC_CheckValueType, MVT::i64, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ILD_Fp64m64), 0|OPFL_Chain|OPFL_FlagOutput, 1, MVT::f64, 5, 2, 3, 4, 5, 6, 20, X86ISD::LCMPXCHG8_DAG, OPC_RecordNode, OPC_CaptureFlagInput, OPC_RecordChild1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LCMPXCHG8B), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 5, 2, 3, 4, 5, 6, 19, X86ISD::FNSTCW16m, OPC_RecordNode, OPC_RecordChild1, OPC_CheckComplexPat, /*CP*/0, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FNSTCW16m), 0|OPFL_Chain, 0, 5, 2, 3, 4, 5, 6, 47, X86ISD::TLSADDR, OPC_RecordNode, OPC_CaptureFlagInput, OPC_RecordChild1, OPC_Scope, 20, OPC_CheckChild1Type, MVT::i32, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/5, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::TLS_addr32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 4, 2, 3, 4, 5, 20, OPC_CheckChild1Type, MVT::i64, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/6, /*#*/1, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::TLS_addr64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 4, 2, 3, 4, 5, 0, 57, X86ISD::MUL_IMM, OPC_RecordNode, OPC_SwitchType , 36, MVT::i32, OPC_Scope, 16, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 16, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 0, 14, MVT::i64, OPC_CheckComplexPat, /*CP*/4, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0, 1, MVT::i64, 4, 1, 2, 3, 4, 0, 53|128,2, ISD::SHL, OPC_Scope, 57, OPC_RecordNode, OPC_SwitchType , 36, MVT::i32, OPC_Scope, 16, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 16, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 0, 14, MVT::i64, OPC_CheckComplexPat, /*CP*/4, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0, 1, MVT::i64, 4, 1, 2, 3, 4, 0, 119|128,1, OPC_RecordChild0, OPC_Scope, 120, OPC_MoveChild, 1, OPC_CheckType, MVT::i8, OPC_Scope, 45, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_MoveParent, OPC_SwitchType , 11, MVT::i8, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8rCL), 0|OPFL_FlagInput, 1, MVT::i8, 1, 0, 11, MVT::i16, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16rCL), 0|OPFL_FlagInput, 1, MVT::i16, 1, 0, 11, MVT::i32, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32rCL), 0|OPFL_FlagInput, 1, MVT::i32, 1, 0, 0, 17, OPC_CheckAndImm, 63, OPC_RecordChild0, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64rCL), 0|OPFL_FlagInput, 1, MVT::i64, 1, 0, 49, OPC_CheckInteger, 1, OPC_MoveParent, OPC_SwitchType , 9, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD8rr), 0, 1, MVT::i8, 2, 0, 0, 9, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD16rr), 0, 1, MVT::i16, 2, 0, 0, 9, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD32rr), 0, 1, MVT::i32, 2, 0, 0, 9, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADD64rr), 0, 1, MVT::i64, 2, 0, 0, 0, 0, 122, OPC_RecordChild1, OPC_Scope, 61, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 11, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8ri), 0, 1, MVT::i8, 2, 0, 2, 11, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16ri), 0, 1, MVT::i16, 2, 0, 2, 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32ri), 0, 1, MVT::i32, 2, 0, 2, 11, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64ri), 0, 1, MVT::i64, 2, 0, 2, 0, 56, OPC_CheckChild1Type, MVT::i8, OPC_SwitchType , 11, MVT::i8, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL8rCL), 0|OPFL_FlagInput, 1, MVT::i8, 1, 0, 11, MVT::i16, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL16rCL), 0|OPFL_FlagInput, 1, MVT::i16, 1, 0, 11, MVT::i32, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL32rCL), 0|OPFL_FlagInput, 1, MVT::i32, 1, 0, 11, MVT::i64, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHL64rCL), 0|OPFL_FlagInput, 1, MVT::i64, 1, 0, 0, 0, 0, 0, 57, ISD::FrameIndex, OPC_RecordNode, OPC_SwitchType , 36, MVT::i32, OPC_Scope, 16, OPC_CheckPatternPredicate, 2, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 16, OPC_CheckPatternPredicate, 3, OPC_CheckComplexPat, /*CP*/3, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64_32r), 0, 1, MVT::i32, 4, 1, 2, 3, 4, 0, 14, MVT::i64, OPC_CheckComplexPat, /*CP*/4, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0, 1, MVT::i64, 4, 1, 2, 3, 4, 0, 17, X86ISD::WrapperRIP, OPC_RecordNode, OPC_CheckType, MVT::i64, OPC_CheckComplexPat, /*CP*/4, /*#*/0, OPC_MorphNodeTo, TARGET_OPCODE(X86::LEA64r), 0, 1, MVT::i64, 4, 1, 2, 3, 4, 119|128,1, ISD::TRUNCATE, OPC_Scope, 78, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckInteger, 8, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckPredicate, 15, OPC_SwitchType , 29, MVT::i16, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i32, 2, 0, 1, OPC_EmitInteger, MVT::i32, 2, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, 29, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::i8, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 1, OPC_EmitInteger, MVT::i32, 2, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, 0, 36|128,1, OPC_RecordChild0, OPC_Scope, 64, OPC_CheckChild0Type, MVT::i32, OPC_SwitchType , 12, MVT::i16, OPC_EmitInteger, MVT::i32, 3, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i16, 2, 0, 1, 44, MVT::i8, OPC_Scope, 14, OPC_CheckPatternPredicate, 3, OPC_EmitInteger, MVT::i32, 1, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 0, 1, 26, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i32, 2, 0, 1, OPC_EmitInteger, MVT::i32, 1, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, 0, 0, 46, OPC_CheckChild0Type, MVT::i64, OPC_SwitchType , 12, MVT::i32, OPC_EmitInteger, MVT::i32, 4, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i32, 2, 0, 1, 12, MVT::i16, OPC_EmitInteger, MVT::i32, 3, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i16, 2, 0, 1, 12, MVT::i8, OPC_EmitInteger, MVT::i32, 1, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 0, 1, 0, 48, OPC_CheckChild0Type, MVT::i16, OPC_CheckType, MVT::i8, OPC_Scope, 14, OPC_CheckPatternPredicate, 3, OPC_EmitInteger, MVT::i32, 1, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 0, 1, 26, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 1, OPC_EmitInteger, MVT::i32, 1, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, 0, 0, 0, 122|128,1, ISD::ZERO_EXTEND, OPC_Scope, 15|128,1, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckInteger, 8, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckPredicate, 15, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_SwitchType , 72, MVT::i32, OPC_Scope, 34, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 1, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0, 1, MVT::i32, 1, 4, 34, OPC_CheckPatternPredicate, 3, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 1, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0, 1, MVT::i32, 1, 4, 0, 48, MVT::i64, OPC_EmitInteger, MVT::i64, 0, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 2, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 3, 4, OPC_EmitNode, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0, 1, MVT::i32, 1, 5, OPC_EmitInteger, MVT::i32, 4, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0, 1, MVT::i64, 3, 1, 6, 7, 0, 102, OPC_RecordChild0, OPC_Scope, 25, OPC_MoveChild, 0, OPC_CheckPredicate, 108, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitInteger, MVT::i64, 0, OPC_EmitInteger, MVT::i32, 4, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0, 1, MVT::i64, 3, 1, 0, 2, 34, OPC_CheckChild0Type, MVT::i8, OPC_SwitchType , 8, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rr8), 0, 1, MVT::i16, 1, 0, 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr8), 0, 1, MVT::i64, 1, 0, 0, 24, OPC_CheckChild0Type, MVT::i16, OPC_SwitchType , 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr16), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr16), 0, 1, MVT::i64, 1, 0, 0, 12, OPC_CheckChild0Type, MVT::i32, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr32), 0, 1, MVT::i64, 1, 0, 0, 0, 28|128,2, ISD::ANY_EXTEND, OPC_Scope, 67|128,1, OPC_MoveChild, 0, OPC_SwitchOpcode , 11|128,1, ISD::SRL, OPC_RecordChild0, OPC_MoveChild, 1, OPC_CheckInteger, 8, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_CheckPredicate, 15, OPC_CheckType, MVT::i16, OPC_MoveParent, OPC_SwitchType , 72, MVT::i32, OPC_Scope, 34, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 1, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0, 1, MVT::i32, 1, 4, 34, OPC_CheckPatternPredicate, 3, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 1, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0, 1, MVT::i32, 1, 4, 0, 48, MVT::i64, OPC_EmitInteger, MVT::i64, 0, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 2, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 3, 4, OPC_EmitNode, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0, 1, MVT::i32, 1, 5, OPC_EmitInteger, MVT::i32, 4, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0, 1, MVT::i64, 3, 1, 6, 7, 0, 47, X86ISD::SETCC_CARRY, OPC_MoveChild, 0, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 10, MVT::i16, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C16r), 0|OPFL_FlagInput, 1, MVT::i16, 0, 10, MVT::i32, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C32r), 0|OPFL_FlagInput, 1, MVT::i32, 0, 10, MVT::i64, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C64r), 0|OPFL_FlagInput, 1, MVT::i64, 0, 0, 0, 84, OPC_RecordChild0, OPC_Scope, 20, OPC_CheckChild0Type, MVT::i32, OPC_CheckType, MVT::i64, OPC_EmitInteger, MVT::i64, 0, OPC_EmitInteger, MVT::i32, 4, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::SUBREG_TO_REG), 0, 1, MVT::i64, 3, 1, 0, 2, 34, OPC_CheckChild0Type, MVT::i8, OPC_SwitchType , 8, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX16rr8), 0, 1, MVT::i16, 1, 0, 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr8), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr8), 0, 1, MVT::i64, 1, 0, 0, 24, OPC_CheckChild0Type, MVT::i16, OPC_SwitchType , 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX32rr16), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVZX64rr16), 0, 1, MVT::i64, 1, 0, 0, 0, 0, 90|128,2, ISD::SRL, OPC_RecordChild0, OPC_Scope, 90|128,1, OPC_MoveChild, 1, OPC_CheckType, MVT::i8, OPC_Scope, 45, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_MoveParent, OPC_SwitchType , 11, MVT::i8, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8rCL), 0|OPFL_FlagInput, 1, MVT::i8, 1, 0, 11, MVT::i16, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16rCL), 0|OPFL_FlagInput, 1, MVT::i16, 1, 0, 11, MVT::i32, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32rCL), 0|OPFL_FlagInput, 1, MVT::i32, 1, 0, 0, 17, OPC_CheckAndImm, 63, OPC_RecordChild0, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64rCL), 0|OPFL_FlagInput, 1, MVT::i64, 1, 0, 45, OPC_CheckInteger, 1, OPC_MoveParent, OPC_SwitchType , 8, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8r1), 0, 1, MVT::i8, 1, 0, 8, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16r1), 0, 1, MVT::i16, 1, 0, 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32r1), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64r1), 0, 1, MVT::i64, 1, 0, 0, 101, OPC_CheckInteger, 8, OPC_MoveParent, OPC_CheckType, MVT::i16, OPC_Scope, 46, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 1, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_EmitNode, TARGET_OPCODE(X86::MOVZX32rr8), 0, 1, MVT::i32, 1, 4, OPC_EmitInteger, MVT::i32, 3, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i16, 2, 5, 6, 46, OPC_CheckPatternPredicate, 3, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 1, OPC_EmitInteger, MVT::i32, 2, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_EmitNode, TARGET_OPCODE(X86::MOVZX32_NOREXrr8), 0, 1, MVT::i32, 1, 4, OPC_EmitInteger, MVT::i32, 3, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i16, 2, 5, 6, 0, 0, 122, OPC_RecordChild1, OPC_Scope, 61, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 11, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8ri), 0, 1, MVT::i8, 2, 0, 2, 11, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16ri), 0, 1, MVT::i16, 2, 0, 2, 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32ri), 0, 1, MVT::i32, 2, 0, 2, 11, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64ri), 0, 1, MVT::i64, 2, 0, 2, 0, 56, OPC_CheckChild1Type, MVT::i8, OPC_SwitchType , 11, MVT::i8, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR8rCL), 0|OPFL_FlagInput, 1, MVT::i8, 1, 0, 11, MVT::i16, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR16rCL), 0|OPFL_FlagInput, 1, MVT::i16, 1, 0, 11, MVT::i32, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR32rCL), 0|OPFL_FlagInput, 1, MVT::i32, 1, 0, 11, MVT::i64, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHR64rCL), 0|OPFL_FlagInput, 1, MVT::i64, 1, 0, 0, 0, 0, 115|128,1, ISD::SRA, OPC_RecordChild0, OPC_Scope, 116, OPC_MoveChild, 1, OPC_CheckType, MVT::i8, OPC_Scope, 45, OPC_CheckAndImm, 31, OPC_RecordChild0, OPC_MoveParent, OPC_SwitchType , 11, MVT::i8, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8rCL), 0|OPFL_FlagInput, 1, MVT::i8, 1, 0, 11, MVT::i16, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16rCL), 0|OPFL_FlagInput, 1, MVT::i16, 1, 0, 11, MVT::i32, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32rCL), 0|OPFL_FlagInput, 1, MVT::i32, 1, 0, 0, 17, OPC_CheckAndImm, 63, OPC_RecordChild0, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64rCL), 0|OPFL_FlagInput, 1, MVT::i64, 1, 0, 45, OPC_CheckInteger, 1, OPC_MoveParent, OPC_SwitchType , 8, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8r1), 0, 1, MVT::i8, 1, 0, 8, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16r1), 0, 1, MVT::i16, 1, 0, 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32r1), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64r1), 0, 1, MVT::i64, 1, 0, 0, 0, 122, OPC_RecordChild1, OPC_Scope, 61, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 11, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8ri), 0, 1, MVT::i8, 2, 0, 2, 11, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16ri), 0, 1, MVT::i16, 2, 0, 2, 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32ri), 0, 1, MVT::i32, 2, 0, 2, 11, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64ri), 0, 1, MVT::i64, 2, 0, 2, 0, 56, OPC_CheckChild1Type, MVT::i8, OPC_SwitchType , 11, MVT::i8, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR8rCL), 0|OPFL_FlagInput, 1, MVT::i8, 1, 0, 11, MVT::i16, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR16rCL), 0|OPFL_FlagInput, 1, MVT::i16, 1, 0, 11, MVT::i32, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR32rCL), 0|OPFL_FlagInput, 1, MVT::i32, 1, 0, 11, MVT::i64, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SAR64rCL), 0|OPFL_FlagInput, 1, MVT::i64, 1, 0, 0, 0, 0, 44, ISD::CALLSEQ_END, OPC_RecordNode, OPC_CaptureFlagInput, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TargetConstant, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::TargetConstant, OPC_MoveParent, OPC_Scope, 13, OPC_CheckPatternPredicate, 2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADJCALLSTACKUP32), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 2, 1, 2, 13, OPC_CheckPatternPredicate, 3, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADJCALLSTACKUP64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 2, 1, 2, 0, 22|128,1, X86ISD::TC_RETURN, OPC_RecordNode, OPC_CaptureFlagInput, OPC_RecordChild1, OPC_Scope, 100, OPC_MoveChild, 1, OPC_SwitchOpcode , 46, ISD::TargetGlobalAddress, OPC_SwitchType , 20, MVT::i32, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNdi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2, 0, 2, 1, 3, 20, MVT::i64, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNdi64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2, 0, 2, 1, 3, 0, 46, ISD::TargetExternalSymbol, OPC_SwitchType , 20, MVT::i32, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNdi), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2, 0, 2, 1, 3, 20, MVT::i64, OPC_MoveParent, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNdi64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2, 0, 2, 1, 3, 0, 0, 21, OPC_CheckChild1Type, MVT::i32, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNri), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2, 0, 2, 1, 3, 21, OPC_CheckChild1Type, MVT::i64, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::TCRETURNri64), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic2, 0, 2, 1, 3, 0, 45|128,1, ISD::EXTRACT_VECTOR_ELT, OPC_Scope, 31, OPC_MoveChild, 0, OPC_CheckOpcode, ISD::BIT_CONVERT, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v4f32, OPC_CheckType, MVT::v4i32, OPC_MoveParent, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::EXTRACTPSrr), 0, 1, MVT::i32, 2, 0, 2, 9|128,1, OPC_RecordChild0, OPC_Scope, 21, OPC_CheckChild0Type, MVT::v4f32, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::f32, OPC_EmitInteger, MVT::i32, 1, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f32, 2, 0, 1, 21, OPC_CheckChild0Type, MVT::v2f64, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::f64, OPC_EmitInteger, MVT::i32, 2, OPC_MorphNodeTo, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::f64, 2, 0, 1, 44, OPC_CheckChild0Type, MVT::v2i64, OPC_Scope, 17, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVPQIto64rr), 0, 1, MVT::i64, 1, 0, 21, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRQrr), 0, 1, MVT::i64, 2, 0, 2, 0, 44, OPC_CheckChild0Type, MVT::v4i32, OPC_Scope, 17, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVPDI2DIrr), 0, 1, MVT::i32, 1, 0, 21, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRDrr), 0, 1, MVT::i32, 2, 0, 2, 0, 0, 0, 30, X86ISD::VASTART_SAVE_XMM_REGS, OPC_RecordNode, OPC_RecordChild1, OPC_RecordChild2, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_RecordChild3, OPC_MoveChild, 3, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_EmitConvertToTarget, 2, OPC_EmitConvertToTarget, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::VASTART_SAVE_XMM_REGS), 0|OPFL_Chain|OPFL_Variadic3, 0, 3, 1, 4, 5, 36, X86ISD::RET_FLAG, OPC_RecordNode, OPC_CaptureFlagInput, OPC_Scope, 14, OPC_MoveChild, 1, OPC_CheckInteger, 0, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RET), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic1, 0, 0, 16, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TargetConstant, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RETI), 0|OPFL_Chain|OPFL_FlagInput|OPFL_Variadic1, 0, 1, 1, 0, 43|128,2, X86ISD::BRCOND, OPC_RecordNode, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BasicBlock, OPC_MoveParent, OPC_MoveChild, 2, OPC_Scope, 17, OPC_CheckInteger, 13, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JO_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 10, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JNO_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JB_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 1, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JAE_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 4, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JE_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 9, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JNE_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 3, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JBE_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 0, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JA_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 15, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JS_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 12, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JNS_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 14, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JP_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 11, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JNP_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 7, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JL_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 6, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JGE_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 8, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JLE_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 17, OPC_CheckInteger, 5, OPC_MoveParent, OPC_RecordChild3, OPC_EmitMergeInputChains, 1, 0, OPC_EmitCopyToReg, 2, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::JG_4), 0|OPFL_Chain|OPFL_FlagInput, 0, 1, 1, 0, 48|128,1, ISD::ROTL, OPC_RecordChild0, OPC_Scope, 49, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 8, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8r1), 0, 1, MVT::i8, 1, 0, 8, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16r1), 0, 1, MVT::i16, 1, 0, 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32r1), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64r1), 0, 1, MVT::i64, 1, 0, 0, 122, OPC_RecordChild1, OPC_Scope, 61, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 11, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8ri), 0, 1, MVT::i8, 2, 0, 2, 11, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16ri), 0, 1, MVT::i16, 2, 0, 2, 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32ri), 0, 1, MVT::i32, 2, 0, 2, 11, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64ri), 0, 1, MVT::i64, 2, 0, 2, 0, 56, OPC_CheckChild1Type, MVT::i8, OPC_SwitchType , 11, MVT::i8, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL8rCL), 0|OPFL_FlagInput, 1, MVT::i8, 1, 0, 11, MVT::i16, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL16rCL), 0|OPFL_FlagInput, 1, MVT::i16, 1, 0, 11, MVT::i32, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL32rCL), 0|OPFL_FlagInput, 1, MVT::i32, 1, 0, 11, MVT::i64, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROL64rCL), 0|OPFL_FlagInput, 1, MVT::i64, 1, 0, 0, 0, 0, 48|128,1, ISD::ROTR, OPC_RecordChild0, OPC_Scope, 49, OPC_MoveChild, 1, OPC_CheckInteger, 1, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 8, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8r1), 0, 1, MVT::i8, 1, 0, 8, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16r1), 0, 1, MVT::i16, 1, 0, 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32r1), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64r1), 0, 1, MVT::i64, 1, 0, 0, 122, OPC_RecordChild1, OPC_Scope, 61, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 11, MVT::i8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8ri), 0, 1, MVT::i8, 2, 0, 2, 11, MVT::i16, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16ri), 0, 1, MVT::i16, 2, 0, 2, 11, MVT::i32, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32ri), 0, 1, MVT::i32, 2, 0, 2, 11, MVT::i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64ri), 0, 1, MVT::i64, 2, 0, 2, 0, 56, OPC_CheckChild1Type, MVT::i8, OPC_SwitchType , 11, MVT::i8, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR8rCL), 0|OPFL_FlagInput, 1, MVT::i8, 1, 0, 11, MVT::i16, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR16rCL), 0|OPFL_FlagInput, 1, MVT::i16, 1, 0, 11, MVT::i32, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR32rCL), 0|OPFL_FlagInput, 1, MVT::i32, 1, 0, 11, MVT::i64, OPC_EmitCopyToReg, 1, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::ROR64rCL), 0|OPFL_FlagInput, 1, MVT::i64, 1, 0, 0, 0, 0, 56, X86ISD::SETCC_CARRY, OPC_MoveChild, 0, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild1, OPC_SwitchType , 10, MVT::i8, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C8r), 0|OPFL_FlagInput, 1, MVT::i8, 0, 10, MVT::i16, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C16r), 0|OPFL_FlagInput, 1, MVT::i16, 0, 10, MVT::i32, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C32r), 0|OPFL_FlagInput, 1, MVT::i32, 0, 10, MVT::i64, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETB_C64r), 0|OPFL_FlagInput, 1, MVT::i64, 0, 0, 116|128,1, X86ISD::SETCC, OPC_MoveChild, 0, OPC_Scope, 14, OPC_CheckInteger, 4, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETEr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 9, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNEr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 7, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETLr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 6, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETGEr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 8, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETLEr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 5, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETGr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 2, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETBr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 1, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETAEr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 3, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETBEr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 0, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETAr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 15, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETSr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 12, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNSr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 14, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETPr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 11, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNPr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 13, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETOr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 14, OPC_CheckInteger, 10, OPC_MoveParent, OPC_RecordChild1, OPC_EmitCopyToReg, 0, X86::EFLAGS, OPC_MorphNodeTo, TARGET_OPCODE(X86::SETNOr), 0|OPFL_FlagInput, 1, MVT::i8, 0, 0, 29, X86ISD::FSRL, OPC_RecordChild0, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckPredicate, 11, OPC_CheckType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::v2f64, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_EmitNodeXForm, 5, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDQri), 0, 1, MVT::v2f64, 2, 0, 3, 35, ISD::CALLSEQ_START, OPC_RecordNode, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::TargetConstant, OPC_MoveParent, OPC_Scope, 12, OPC_CheckPatternPredicate, 2, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADJCALLSTACKDOWN32), 0|OPFL_Chain|OPFL_FlagOutput, 0, 1, 1, 12, OPC_CheckPatternPredicate, 3, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::ADJCALLSTACKDOWN64), 0|OPFL_Chain|OPFL_FlagOutput, 0, 1, 1, 0, 104, X86ISD::SHLD, OPC_RecordChild0, OPC_RecordChild1, OPC_RecordChild2, OPC_Scope, 51, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 12, MVT::i32, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32rri8), 0, 1, MVT::i32, 3, 0, 1, 3, 12, MVT::i16, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16rri8), 0, 1, MVT::i16, 3, 0, 1, 3, 12, MVT::i64, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64rri8), 0, 1, MVT::i64, 3, 0, 1, 3, 0, 46, OPC_CheckChild2Type, MVT::i8, OPC_SwitchType , 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD32rrCL), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD16rrCL), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHLD64rrCL), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 0, 104, X86ISD::SHRD, OPC_RecordChild0, OPC_RecordChild1, OPC_RecordChild2, OPC_Scope, 51, OPC_MoveChild, 2, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 12, MVT::i32, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32rri8), 0, 1, MVT::i32, 3, 0, 1, 3, 12, MVT::i16, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16rri8), 0, 1, MVT::i16, 3, 0, 1, 3, 12, MVT::i64, OPC_EmitConvertToTarget, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64rri8), 0, 1, MVT::i64, 3, 0, 1, 3, 0, 46, OPC_CheckChild2Type, MVT::i8, OPC_SwitchType , 12, MVT::i32, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD32rrCL), 0|OPFL_FlagInput, 1, MVT::i32, 2, 0, 1, 12, MVT::i16, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD16rrCL), 0|OPFL_FlagInput, 1, MVT::i16, 2, 0, 1, 12, MVT::i64, OPC_EmitCopyToReg, 2, X86::CL, OPC_MorphNodeTo, TARGET_OPCODE(X86::SHRD64rrCL), 0|OPFL_FlagInput, 1, MVT::i64, 2, 0, 1, 0, 0, 22|128,2, X86ISD::Wrapper, OPC_RecordChild0, OPC_MoveChild, 0, OPC_SwitchOpcode , 50, ISD::TargetConstantPool, OPC_MoveParent, OPC_SwitchType , 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0, 1, MVT::i32, 1, 0, 35, MVT::i64, OPC_Scope, 10, OPC_CheckPatternPredicate, 20, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0, 1, MVT::i64, 1, 0, 10, OPC_CheckPatternPredicate, 21, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0, 1, MVT::i64, 1, 0, 10, OPC_CheckPatternPredicate, 22, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0, 1, MVT::i64, 1, 0, 0, 0, 50, ISD::TargetJumpTable, OPC_MoveParent, OPC_SwitchType , 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0, 1, MVT::i32, 1, 0, 35, MVT::i64, OPC_Scope, 10, OPC_CheckPatternPredicate, 20, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0, 1, MVT::i64, 1, 0, 10, OPC_CheckPatternPredicate, 21, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0, 1, MVT::i64, 1, 0, 10, OPC_CheckPatternPredicate, 22, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0, 1, MVT::i64, 1, 0, 0, 0, 11, ISD::TargetGlobalTLSAddress, OPC_MoveParent, OPC_CheckType, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0, 1, MVT::i32, 1, 0, 50, ISD::TargetGlobalAddress, OPC_MoveParent, OPC_SwitchType , 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0, 1, MVT::i32, 1, 0, 35, MVT::i64, OPC_Scope, 10, OPC_CheckPatternPredicate, 20, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0, 1, MVT::i64, 1, 0, 10, OPC_CheckPatternPredicate, 21, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0, 1, MVT::i64, 1, 0, 10, OPC_CheckPatternPredicate, 22, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0, 1, MVT::i64, 1, 0, 0, 0, 50, ISD::TargetExternalSymbol, OPC_MoveParent, OPC_SwitchType , 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0, 1, MVT::i32, 1, 0, 35, MVT::i64, OPC_Scope, 10, OPC_CheckPatternPredicate, 20, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0, 1, MVT::i64, 1, 0, 10, OPC_CheckPatternPredicate, 21, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0, 1, MVT::i64, 1, 0, 10, OPC_CheckPatternPredicate, 22, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0, 1, MVT::i64, 1, 0, 0, 0, 50, ISD::TargetBlockAddress, OPC_MoveParent, OPC_SwitchType , 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0, 1, MVT::i32, 1, 0, 35, MVT::i64, OPC_Scope, 10, OPC_CheckPatternPredicate, 20, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0, 1, MVT::i64, 1, 0, 10, OPC_CheckPatternPredicate, 21, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0, 1, MVT::i64, 1, 0, 10, OPC_CheckPatternPredicate, 22, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0, 1, MVT::i64, 1, 0, 0, 0, 0, 124, ISD::Constant, OPC_Scope, 40, OPC_CheckInteger, 0, OPC_SwitchType , 7, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64r0), 0, 1, MVT::i64, 0, 7, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8r0), 0, 1, MVT::i8, 0, 7, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16r0), 0, 1, MVT::i16, 0, 7, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32r0), 0, 1, MVT::i32, 0, 0, 80, OPC_RecordNode, OPC_SwitchType , 39, MVT::i64, OPC_Scope, 12, OPC_CheckPredicate, 69, OPC_EmitConvertToTarget, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri64i32), 0, 1, MVT::i64, 1, 1, 12, OPC_CheckPredicate, 12, OPC_EmitConvertToTarget, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri32), 0, 1, MVT::i64, 1, 1, 10, OPC_EmitConvertToTarget, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV64ri), 0, 1, MVT::i64, 1, 1, 0, 10, MVT::i8, OPC_EmitConvertToTarget, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV8ri), 0, 1, MVT::i8, 1, 1, 10, MVT::i16, OPC_EmitConvertToTarget, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV16ri), 0, 1, MVT::i16, 1, 1, 10, MVT::i32, OPC_EmitConvertToTarget, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOV32ri), 0, 1, MVT::i32, 1, 1, 0, 0, 42, X86ISD::VSHL, OPC_RecordChild0, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 16, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_EmitNodeXForm, 5, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSLLDQri), 0, 1, MVT::v2i64, 2, 0, 3, 11, MVT::v1i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSLLQri), 0, 1, MVT::v1i64, 2, 0, 2, 0, 42, X86ISD::VSRL, OPC_RecordChild0, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_CheckType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 16, MVT::v2i64, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_EmitNodeXForm, 5, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::PSRLDQri), 0, 1, MVT::v2i64, 2, 0, 3, 11, MVT::v1i64, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PSRLQri), 0, 1, MVT::v1i64, 2, 0, 2, 0, 47, X86ISD::PEXTRW, OPC_RecordChild0, OPC_Scope, 21, OPC_CheckChild0Type, MVT::v8i16, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 1, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRWri), 0, 1, MVT::i32, 2, 0, 2, 21, OPC_CheckChild0Type, MVT::v4i16, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 8, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_PEXTRWri), 0, 1, MVT::i32, 2, 0, 2, 0, 22, X86ISD::PEXTRB, OPC_RecordChild0, OPC_CheckChild0Type, MVT::v16i8, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::Constant, OPC_MoveParent, OPC_CheckPatternPredicate, 4, OPC_EmitConvertToTarget, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::PEXTRBrr), 0, 1, MVT::i32, 2, 0, 2, 94|128,1, ISD::ConstantFP, OPC_SwitchType , 78, MVT::f32, OPC_Scope, 11, OPC_CheckPredicate, 109, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp032), 0, 1, MVT::f32, 0, 11, OPC_CheckPredicate, 110, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp132), 0, 1, MVT::f32, 0, 11, OPC_CheckPredicate, 111, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsFLD0SS), 0, 1, MVT::f32, 0, 19, OPC_CheckPredicate, 112, OPC_CheckPatternPredicate, 6, OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp032), 0, 1, MVT::f32, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp32), 0, 1, MVT::f32, 1, 0, 19, OPC_CheckPredicate, 113, OPC_CheckPatternPredicate, 6, OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp132), 0, 1, MVT::f32, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp32), 0, 1, MVT::f32, 1, 0, 0, 78, MVT::f64, OPC_Scope, 11, OPC_CheckPredicate, 109, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp064), 0, 1, MVT::f64, 0, 11, OPC_CheckPredicate, 110, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp164), 0, 1, MVT::f64, 0, 11, OPC_CheckPredicate, 109, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::FsFLD0SD), 0, 1, MVT::f64, 0, 19, OPC_CheckPredicate, 112, OPC_CheckPatternPredicate, 7, OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp064), 0, 1, MVT::f64, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp64), 0, 1, MVT::f64, 1, 0, 19, OPC_CheckPredicate, 113, OPC_CheckPatternPredicate, 7, OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp164), 0, 1, MVT::f64, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp64), 0, 1, MVT::f64, 1, 0, 0, 58, MVT::f80, OPC_Scope, 9, OPC_CheckPredicate, 109, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp080), 0, 1, MVT::f80, 0, 9, OPC_CheckPredicate, 110, OPC_MorphNodeTo, TARGET_OPCODE(X86::LD_Fp180), 0, 1, MVT::f80, 0, 17, OPC_CheckPredicate, 112, OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp080), 0, 1, MVT::f80, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp80), 0, 1, MVT::f80, 1, 0, 17, OPC_CheckPredicate, 113, OPC_EmitNode, TARGET_OPCODE(X86::LD_Fp180), 0, 1, MVT::f80, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp80), 0, 1, MVT::f80, 1, 0, 0, 0, 15|128,1, ISD::BUILD_VECTOR, OPC_Scope, 60, OPC_CheckPredicate, 44, OPC_SwitchType , 9, MVT::v4i32, OPC_CheckPatternPredicate, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0), 0, 1, MVT::v4i32, 0, 7, MVT::v2i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0), 0, 1, MVT::v2i64, 0, 7, MVT::v8i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0), 0, 1, MVT::v8i16, 0, 7, MVT::v16i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0), 0, 1, MVT::v16i8, 0, 7, MVT::v2f64, OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0), 0, 1, MVT::v2f64, 0, 7, MVT::v4f32, OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SET0), 0, 1, MVT::v4f32, 0, 0, 13, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v4i32, OPC_CheckPatternPredicate, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::V_SETALLONES), 0, 1, MVT::v4i32, 0, 13, OPC_CheckPredicate, 44, OPC_CheckType, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_V_SET0), 0, 1, MVT::v2i32, 0, 13, OPC_CheckPredicate, 67, OPC_CheckType, MVT::v2i32, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_V_SETALLONES), 0, 1, MVT::v2i32, 0, 37, OPC_CheckPredicate, 44, OPC_SwitchType , 9, MVT::v1i64, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_V_SET0), 0, 1, MVT::v1i64, 0, 9, MVT::v4i16, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_V_SET0), 0, 1, MVT::v4i16, 0, 9, MVT::v8i8, OPC_CheckPatternPredicate, 8, OPC_MorphNodeTo, TARGET_OPCODE(X86::MMX_V_SET0), 0, 1, MVT::v8i8, 0, 0, 0, 37, ISD::FNEG, OPC_RecordChild0, OPC_SwitchType , 10, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp32), 0, 1, MVT::f32, 1, 0, 10, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp64), 0, 1, MVT::f64, 1, 0, 8, MVT::f80, OPC_MorphNodeTo, TARGET_OPCODE(X86::CHS_Fp80), 0, 1, MVT::f80, 1, 0, 0, 37, ISD::FABS, OPC_RecordChild0, OPC_SwitchType , 10, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::ABS_Fp32), 0, 1, MVT::f32, 1, 0, 10, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::ABS_Fp64), 0, 1, MVT::f64, 1, 0, 8, MVT::f80, OPC_MorphNodeTo, TARGET_OPCODE(X86::ABS_Fp80), 0, 1, MVT::f80, 1, 0, 0, 37, ISD::FSIN, OPC_RecordChild0, OPC_SwitchType , 10, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::SIN_Fp32), 0, 1, MVT::f32, 1, 0, 10, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::SIN_Fp64), 0, 1, MVT::f64, 1, 0, 8, MVT::f80, OPC_MorphNodeTo, TARGET_OPCODE(X86::SIN_Fp80), 0, 1, MVT::f80, 1, 0, 0, 37, ISD::FCOS, OPC_RecordChild0, OPC_SwitchType , 10, MVT::f32, OPC_CheckPatternPredicate, 6, OPC_MorphNodeTo, TARGET_OPCODE(X86::COS_Fp32), 0, 1, MVT::f32, 1, 0, 10, MVT::f64, OPC_CheckPatternPredicate, 7, OPC_MorphNodeTo, TARGET_OPCODE(X86::COS_Fp64), 0, 1, MVT::f64, 1, 0, 8, MVT::f80, OPC_MorphNodeTo, TARGET_OPCODE(X86::COS_Fp80), 0, 1, MVT::f80, 1, 0, 0, 89, X86ISD::INC, OPC_RecordChild0, OPC_SwitchType , 28, MVT::i16, OPC_CheckChild0Type, MVT::i16, OPC_Scope, 11, OPC_CheckPatternPredicate, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC16r), 0, 2, MVT::i16, MVT::i32, 1, 0, 11, OPC_CheckPatternPredicate, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_16r), 0, 2, MVT::i16, MVT::i32, 1, 0, 0, 28, MVT::i32, OPC_CheckChild0Type, MVT::i32, OPC_Scope, 11, OPC_CheckPatternPredicate, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC32r), 0, 2, MVT::i32, MVT::i32, 1, 0, 11, OPC_CheckPatternPredicate, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64_32r), 0, 2, MVT::i32, MVT::i32, 1, 0, 0, 11, MVT::i8, OPC_CheckChild0Type, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC8r), 0, 2, MVT::i8, MVT::i32, 1, 0, 11, MVT::i64, OPC_CheckChild0Type, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::INC64r), 0, 2, MVT::i64, MVT::i32, 1, 0, 0, 89, X86ISD::DEC, OPC_RecordChild0, OPC_SwitchType , 28, MVT::i16, OPC_CheckChild0Type, MVT::i16, OPC_Scope, 11, OPC_CheckPatternPredicate, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC16r), 0, 2, MVT::i16, MVT::i32, 1, 0, 11, OPC_CheckPatternPredicate, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_16r), 0, 2, MVT::i16, MVT::i32, 1, 0, 0, 28, MVT::i32, OPC_CheckChild0Type, MVT::i32, OPC_Scope, 11, OPC_CheckPatternPredicate, 2, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC32r), 0, 2, MVT::i32, MVT::i32, 1, 0, 11, OPC_CheckPatternPredicate, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64_32r), 0, 2, MVT::i32, MVT::i32, 1, 0, 0, 11, MVT::i8, OPC_CheckChild0Type, MVT::i8, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC8r), 0, 2, MVT::i8, MVT::i32, 1, 0, 11, MVT::i64, OPC_CheckChild0Type, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::DEC64r), 0, 2, MVT::i64, MVT::i32, 1, 0, 0, 17, ISD::BR, OPC_RecordNode, OPC_RecordChild1, OPC_MoveChild, 1, OPC_CheckOpcode, ISD::BasicBlock, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::JMP_4), 0|OPFL_Chain, 0, 1, 1, 23, ISD::BSWAP, OPC_RecordChild0, OPC_SwitchType , 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSWAP32r), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::BSWAP64r), 0, 1, MVT::i64, 1, 0, 0, 58, X86ISD::REP_MOVS, OPC_RecordNode, OPC_CaptureFlagInput, OPC_MoveChild, 1, OPC_Scope, 12, OPC_CheckValueType, MVT::i8, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_MOVSB), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 0, 12, OPC_CheckValueType, MVT::i16, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_MOVSW), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 0, 12, OPC_CheckValueType, MVT::i32, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_MOVSD), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 0, 12, OPC_CheckValueType, MVT::i64, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_MOVSQ), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 0, 0, 58, X86ISD::REP_STOS, OPC_RecordNode, OPC_CaptureFlagInput, OPC_MoveChild, 1, OPC_Scope, 12, OPC_CheckValueType, MVT::i8, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_STOSB), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 0, 12, OPC_CheckValueType, MVT::i16, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_STOSW), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 0, 12, OPC_CheckValueType, MVT::i32, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_STOSD), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 0, 12, OPC_CheckValueType, MVT::i64, OPC_MoveParent, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::REP_STOSQ), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 0, 0, 10, X86ISD::RDTSC_DAG, OPC_RecordNode, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::RDTSC), 0|OPFL_Chain|OPFL_FlagOutput, 0, 0, 10, ISD::TRAP, OPC_RecordNode, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::TRAP), 0|OPFL_Chain, 0, 0, 76, ISD::SIGN_EXTEND, OPC_RecordChild0, OPC_Scope, 34, OPC_CheckChild0Type, MVT::i8, OPC_SwitchType , 8, MVT::i16, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX16rr8), 0, 1, MVT::i16, 1, 0, 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rr8), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr8), 0, 1, MVT::i64, 1, 0, 0, 24, OPC_CheckChild0Type, MVT::i16, OPC_SwitchType , 8, MVT::i32, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rr16), 0, 1, MVT::i32, 1, 0, 8, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr16), 0, 1, MVT::i64, 1, 0, 0, 12, OPC_CheckChild0Type, MVT::i32, OPC_CheckType, MVT::i64, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr32), 0, 1, MVT::i64, 1, 0, 0, 30, X86ISD::EH_RETURN, OPC_RecordNode, OPC_RecordChild1, OPC_Scope, 12, OPC_CheckChild1Type, MVT::i32, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::EH_RETURN), 0|OPFL_Chain, 0, 1, 1, 12, OPC_CheckChild1Type, MVT::i64, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::EH_RETURN64), 0|OPFL_Chain, 0, 1, 1, 0, 106|128,1, ISD::SIGN_EXTEND_INREG, OPC_RecordChild0, OPC_MoveChild, 1, OPC_Scope, 49, OPC_CheckValueType, MVT::i16, OPC_MoveParent, OPC_SwitchType , 20, MVT::i32, OPC_EmitInteger, MVT::i32, 3, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i16, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rr16), 0, 1, MVT::i32, 1, 2, 20, MVT::i64, OPC_EmitInteger, MVT::i32, 3, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i16, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr16), 0, 1, MVT::i64, 1, 2, 0, 25, OPC_CheckValueType, MVT::i32, OPC_MoveParent, OPC_CheckType, MVT::i64, OPC_EmitInteger, MVT::i32, 4, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i32, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr32), 0, 1, MVT::i64, 1, 2, 23|128,1, OPC_CheckValueType, MVT::i8, OPC_MoveParent, OPC_SwitchType , 20, MVT::i64, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX64rr8), 0, 1, MVT::i64, 1, 2, 60, MVT::i32, OPC_Scope, 22, OPC_CheckPatternPredicate, 3, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rr8), 0, 1, MVT::i32, 1, 2, 34, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR32_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i32, 2, 0, 1, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX32rr8), 0, 1, MVT::i32, 1, 4, 0, 60, MVT::i16, OPC_Scope, 22, OPC_CheckPatternPredicate, 3, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 0, 1, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX16rr8), 0, 1, MVT::i16, 1, 2, 34, OPC_CheckPatternPredicate, 2, OPC_EmitInteger, MVT::i32, X86::GR16_ABCDRegClassID, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::COPY_TO_REGCLASS), 0, 1, MVT::i16, 2, 0, 1, OPC_EmitInteger, MVT::i32, 1, OPC_EmitNode, TARGET_OPCODE(TargetOpcode::EXTRACT_SUBREG), 0, 1, MVT::i8, 2, 2, 3, OPC_MorphNodeTo, TARGET_OPCODE(X86::MOVSX16rr8), 0, 1, MVT::i16, 1, 4, 0, 0, 0, 11, X86ISD::MINGW_ALLOCA, OPC_RecordNode, OPC_CaptureFlagInput, OPC_EmitMergeInputChains, 1, 0, OPC_MorphNodeTo, TARGET_OPCODE(X86::MINGW_ALLOCA), 0|OPFL_Chain|OPFL_FlagInput|OPFL_FlagOutput, 0, 0, 0, 0 }; // Total Array size is 77632 bytes #undef TARGET_OPCODE return SelectCodeCommon(N, MatcherTable,sizeof(MatcherTable)); } bool CheckPatternPredicate(unsigned PredNo) const { switch (PredNo) { default: assert(0 && "Invalid predicate in table?"); case 0: return (Subtarget->hasSSE1()); case 1: return (Subtarget->hasSSE2()); case 2: return (!Subtarget->is64Bit()); case 3: return (Subtarget->is64Bit()); case 4: return (Subtarget->hasSSE41()); case 5: return (TM.getCodeModel() == CodeModel::Small ||TM.getCodeModel() == CodeModel::Kernel) && (TM.getRelocationModel() == Reloc::Static); case 6: return (!Subtarget->hasSSE1()); case 7: return (!Subtarget->hasSSE2()); case 8: return (Subtarget->hasMMX()); case 9: return (Subtarget->hasSSE3()); case 10: return (!OptForSize) && (Subtarget->hasSSE2()); case 11: return (Subtarget->hasSSSE3()); case 12: return (Subtarget->hasSSE2()) && (OptForSize); case 13: return (Subtarget->hasSSE2()) && (!OptForSize); case 14: return (Subtarget->hasSSE42()); case 15: return (Subtarget->hasMMX()) && (Subtarget->is64Bit()); case 16: return (!Subtarget->isTargetWin64()); case 17: return (Subtarget->isTargetWin64()); case 18: return (Subtarget->IsLegalToCallImmediateAddr(TM)); case 19: return (Subtarget->hasSSE1()) && (OptForSize); case 20: return (TM.getCodeModel() != CodeModel::Small &&TM.getCodeModel() != CodeModel::Kernel); case 21: return (TM.getCodeModel() == CodeModel::Small); case 22: return (TM.getCodeModel() == CodeModel::Kernel); } } bool CheckNodePredicate(SDNode *Node, unsigned PredNo) const { switch (PredNo) { default: assert(0 && "Invalid predicate in table?"); case 0: { // Predicate_alignednontemporalstore SDNode *N = Node; if (StoreSDNode *ST = dyn_cast<StoreSDNode>(N)) return ST->isNonTemporal() && !ST->isTruncatingStore() && ST->getAddressingMode() == ISD::UNINDEXED && ST->getAlignment() >= 16; return false; } case 1: { // Predicate_nontemporalstore SDNode *N = Node; if (StoreSDNode *ST = dyn_cast<StoreSDNode>(N)) return ST->isNonTemporal(); return false; } case 2: { // Predicate_unindexedload SDNode *N = Node; return cast<LoadSDNode>(N)->getAddressingMode() == ISD::UNINDEXED; } case 3: { // Predicate_loadi32 SDNode *N = Node; LoadSDNode *LD = cast<LoadSDNode>(N); if (const Value *Src = LD->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) if (PT->getAddressSpace() > 255) return false; ISD::LoadExtType ExtType = LD->getExtensionType(); if (ExtType == ISD::NON_EXTLOAD) return true; if (ExtType == ISD::EXTLOAD) return LD->getAlignment() >= 4 && !LD->isVolatile(); return false; } case 4: { // Predicate_unindexedstore SDNode *N = Node; return cast<StoreSDNode>(N)->getAddressingMode() == ISD::UNINDEXED; } case 5: { // Predicate_store SDNode *N = Node; return !cast<StoreSDNode>(N)->isTruncatingStore(); } case 6: { // Predicate_loadi16 SDNode *N = Node; LoadSDNode *LD = cast<LoadSDNode>(N); if (const Value *Src = LD->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) if (PT->getAddressSpace() > 255) return false; ISD::LoadExtType ExtType = LD->getExtensionType(); if (ExtType == ISD::NON_EXTLOAD) return true; if (ExtType == ISD::EXTLOAD) return LD->getAlignment() >= 2 && !LD->isVolatile(); return false; } case 7: { // Predicate_shrd SDNode *N = Node; assert(N->getOpcode() == ISD::OR); return N->getOperand(0).getOpcode() == ISD::SRL && N->getOperand(1).getOpcode() == ISD::SHL && isa<ConstantSDNode>(N->getOperand(0).getOperand(1)) && isa<ConstantSDNode>(N->getOperand(1).getOperand(1)) && N->getOperand(0).getConstantOperandVal(1) == N->getValueSizeInBits(0) - N->getOperand(1).getConstantOperandVal(1); } case 8: { // Predicate_load SDNode *N = Node; return cast<LoadSDNode>(N)->getExtensionType() == ISD::NON_EXTLOAD; } case 9: { // Predicate_dsload SDNode *N = Node; if (const Value *Src = cast<LoadSDNode>(N)->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) if (PT->getAddressSpace() > 255) return false; return true; } case 10: { // Predicate_shld SDNode *N = Node; assert(N->getOpcode() == ISD::OR); return N->getOperand(0).getOpcode() == ISD::SHL && N->getOperand(1).getOpcode() == ISD::SRL && isa<ConstantSDNode>(N->getOperand(0).getOperand(1)) && isa<ConstantSDNode>(N->getOperand(1).getOperand(1)) && N->getOperand(0).getConstantOperandVal(1) == N->getValueSizeInBits(0) - N->getOperand(1).getConstantOperandVal(1); } case 11: { // Predicate_immSext8 ConstantSDNode*N = cast<ConstantSDNode>(Node); return N->getSExtValue() == (int8_t)N->getSExtValue(); } case 12: { // Predicate_i64immSExt32 ConstantSDNode*N = cast<ConstantSDNode>(Node); // i64immSExt32 predicate - True if the 64-bit immediate fits in a 32-bit // sign extended field. return (int64_t)N->getZExtValue() == (int32_t)N->getZExtValue(); } case 13: { // Predicate_movlp SDNode *N = Node; return X86::isMOVLPMask(cast<ShuffleVectorSDNode>(N)); } case 14: { // Predicate_unpckh SDNode *N = Node; return X86::isUNPCKHMask(cast<ShuffleVectorSDNode>(N)); } case 15: { // Predicate_srl_su SDNode *N = Node; return N->hasOneUse(); } case 16: { // Predicate_trunc_su SDNode *N = Node; return N->hasOneUse(); } case 17: { // Predicate_truncstore SDNode *N = Node; return cast<StoreSDNode>(N)->isTruncatingStore(); } case 18: { // Predicate_truncstorei16 SDNode *N = Node; return cast<StoreSDNode>(N)->getMemoryVT() == MVT::i16; } case 19: { // Predicate_truncstoref32 SDNode *N = Node; return cast<StoreSDNode>(N)->getMemoryVT() == MVT::f32; } case 20: { // Predicate_truncstoref64 SDNode *N = Node; return cast<StoreSDNode>(N)->getMemoryVT() == MVT::f64; } case 21: { // Predicate_alignedstore SDNode *N = Node; return cast<StoreSDNode>(N)->getAlignment() >= 16; } case 22: { // Predicate_movlhps SDNode *N = Node; return X86::isMOVLHPSMask(cast<ShuffleVectorSDNode>(N)); } case 23: { // Predicate_memop SDNode *N = Node; return Subtarget->hasVectorUAMem() || cast<LoadSDNode>(N)->getAlignment() >= 16; } case 24: { // Predicate_movshdup SDNode *N = Node; return X86::isMOVSHDUPMask(cast<ShuffleVectorSDNode>(N)); } case 25: { // Predicate_movsldup SDNode *N = Node; return X86::isMOVSLDUPMask(cast<ShuffleVectorSDNode>(N)); } case 26: { // Predicate_pshufd SDNode *N = Node; return X86::isPSHUFDMask(cast<ShuffleVectorSDNode>(N)); } case 27: { // Predicate_movddup SDNode *N = Node; return X86::isMOVDDUPMask(cast<ShuffleVectorSDNode>(N)); } case 28: { // Predicate_unpckl SDNode *N = Node; return X86::isUNPCKLMask(cast<ShuffleVectorSDNode>(N)); } case 29: { // Predicate_pshufhw SDNode *N = Node; return X86::isPSHUFHWMask(cast<ShuffleVectorSDNode>(N)); } case 30: { // Predicate_pshuflw SDNode *N = Node; return X86::isPSHUFLWMask(cast<ShuffleVectorSDNode>(N)); } case 31: { // Predicate_mmx_pshufw SDNode *N = Node; return X86::isPSHUFDMask(cast<ShuffleVectorSDNode>(N)); } case 32: { // Predicate_shufp SDNode *N = Node; return X86::isSHUFPMask(cast<ShuffleVectorSDNode>(N)); } case 33: { // Predicate_mmx_unpckh SDNode *N = Node; return X86::isUNPCKHMask(cast<ShuffleVectorSDNode>(N)); } case 34: { // Predicate_mmx_unpckl SDNode *N = Node; return X86::isUNPCKLMask(cast<ShuffleVectorSDNode>(N)); } case 35: { // Predicate_movhlps_undef SDNode *N = Node; return X86::isMOVHLPS_v_undef_Mask(cast<ShuffleVectorSDNode>(N)); } case 36: { // Predicate_movhlps SDNode *N = Node; return X86::isMOVHLPSMask(cast<ShuffleVectorSDNode>(N)); } case 37: { // Predicate_immAllZerosV_bc SDNode *N = Node; return ISD::isBuildVectorAllZeros(N); } case 38: { // Predicate_movl SDNode *N = Node; return X86::isMOVLMask(cast<ShuffleVectorSDNode>(N)); } case 39: { // Predicate_unpckl_undef SDNode *N = Node; return X86::isUNPCKL_v_undef_Mask(cast<ShuffleVectorSDNode>(N)); } case 40: { // Predicate_unpckh_undef SDNode *N = Node; return X86::isUNPCKH_v_undef_Mask(cast<ShuffleVectorSDNode>(N)); } case 41: { // Predicate_splat_lo SDNode *N = Node; ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(N); return SVOp->isSplat() && SVOp->getSplatIndex() == 0; } case 42: { // Predicate_mmx_unpckl_undef SDNode *N = Node; return X86::isUNPCKL_v_undef_Mask(cast<ShuffleVectorSDNode>(N)); } case 43: { // Predicate_mmx_unpckh_undef SDNode *N = Node; return X86::isUNPCKH_v_undef_Mask(cast<ShuffleVectorSDNode>(N)); } case 44: { // Predicate_immAllZerosV SDNode *N = Node; return ISD::isBuildVectorAllZeros(N); } case 45: { // Predicate_palign SDNode *N = Node; return X86::isPALIGNRMask(cast<ShuffleVectorSDNode>(N)); } case 46: { // Predicate_gsload SDNode *N = Node; if (const Value *Src = cast<LoadSDNode>(N)->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) return PT->getAddressSpace() == 256; return false; } case 47: { // Predicate_fsload SDNode *N = Node; if (const Value *Src = cast<LoadSDNode>(N)->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) return PT->getAddressSpace() == 257; return false; } case 48: { // Predicate_extload SDNode *N = Node; return cast<LoadSDNode>(N)->getExtensionType() == ISD::EXTLOAD; } case 49: { // Predicate_extloadf32 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::f32; } case 50: { // Predicate_extloadf64 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::f64; } case 51: { // Predicate_sextload SDNode *N = Node; return cast<LoadSDNode>(N)->getExtensionType() == ISD::SEXTLOAD; } case 52: { // Predicate_sextloadi8 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i8; } case 53: { // Predicate_sextloadi16 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i16; } case 54: { // Predicate_zextload SDNode *N = Node; return cast<LoadSDNode>(N)->getExtensionType() == ISD::ZEXTLOAD; } case 55: { // Predicate_zextloadi8 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i8; } case 56: { // Predicate_zextloadi16 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i16; } case 57: { // Predicate_zextloadi1 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i1; } case 58: { // Predicate_extloadi1 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i1; } case 59: { // Predicate_extloadi8 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i8; } case 60: { // Predicate_extloadi16 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i16; } case 61: { // Predicate_sextloadi32 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i32; } case 62: { // Predicate_zextloadi32 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i32; } case 63: { // Predicate_alignedload SDNode *N = Node; return cast<LoadSDNode>(N)->getAlignment() >= 16; } case 64: { // Predicate_extloadi32 SDNode *N = Node; return cast<LoadSDNode>(N)->getMemoryVT() == MVT::i32; } case 65: { // Predicate_loadi16_anyext SDNode *N = Node; LoadSDNode *LD = cast<LoadSDNode>(N); if (const Value *Src = LD->getSrcValue()) if (const PointerType *PT = dyn_cast<PointerType>(Src->getType())) if (PT->getAddressSpace() > 255) return false; ISD::LoadExtType ExtType = LD->getExtensionType(); if (ExtType == ISD::EXTLOAD) return LD->getAlignment() >= 2 && !LD->isVolatile(); return false; } case 66: { // Predicate_memop64 SDNode *N = Node; return cast<LoadSDNode>(N)->getAlignment() >= 8; } case 67: { // Predicate_immAllOnesV SDNode *N = Node; return ISD::isBuildVectorAllOnes(N); } case 68: { // Predicate_immAllOnesV_bc SDNode *N = Node; return ISD::isBuildVectorAllOnes(N); } case 69: { // Predicate_i64immZExt32 ConstantSDNode*N = cast<ConstantSDNode>(Node); // i64immZExt32 predicate - True if the 64-bit immediate fits in a 32-bit // unsignedsign extended field. return (uint64_t)N->getZExtValue() == (uint32_t)N->getZExtValue(); } case 70: { // Predicate_and_su SDNode *N = Node; return N->hasOneUse(); } case 71: { // Predicate_or_is_add SDNode *N = Node; if (ConstantSDNode *CN = dyn_cast<ConstantSDNode>(N->getOperand(1))) return CurDAG->MaskedValueIsZero(N->getOperand(0), CN->getAPIntValue()); else { unsigned BitWidth = N->getValueType(0).getScalarType().getSizeInBits(); APInt Mask = APInt::getAllOnesValue(BitWidth); APInt KnownZero0, KnownOne0; CurDAG->ComputeMaskedBits(N->getOperand(0), Mask, KnownZero0, KnownOne0, 0); APInt KnownZero1, KnownOne1; CurDAG->ComputeMaskedBits(N->getOperand(1), Mask, KnownZero1, KnownOne1, 0); return (~KnownZero0 & ~KnownZero1) == 0; } } case 72: { // Predicate_atomic_swap_32 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } case 73: { // Predicate_atomic_swap_16 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } case 74: { // Predicate_atomic_swap_8 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } case 75: { // Predicate_atomic_swap_64 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } case 76: { // Predicate_atomic_load_add_32 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } case 77: { // Predicate_atomic_load_add_16 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } case 78: { // Predicate_atomic_load_add_8 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } case 79: { // Predicate_atomic_load_add_64 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } case 80: { // Predicate_atomic_load_and_32 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } case 81: { // Predicate_atomic_load_and_16 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } case 82: { // Predicate_atomic_load_and_8 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } case 83: { // Predicate_atomic_load_and_64 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } case 84: { // Predicate_atomic_load_or_32 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } case 85: { // Predicate_atomic_load_or_16 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } case 86: { // Predicate_atomic_load_or_8 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } case 87: { // Predicate_atomic_load_or_64 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } case 88: { // Predicate_atomic_load_xor_32 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } case 89: { // Predicate_atomic_load_xor_16 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } case 90: { // Predicate_atomic_load_xor_8 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } case 91: { // Predicate_atomic_load_xor_64 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } case 92: { // Predicate_atomic_load_nand_32 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } case 93: { // Predicate_atomic_load_nand_16 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } case 94: { // Predicate_atomic_load_nand_8 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i8; } case 95: { // Predicate_atomic_load_nand_64 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } case 96: { // Predicate_atomic_load_min_32 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } case 97: { // Predicate_atomic_load_min_16 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } case 98: { // Predicate_atomic_load_min_64 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } case 99: { // Predicate_atomic_load_max_32 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } case 100: { // Predicate_atomic_load_max_16 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } case 101: { // Predicate_atomic_load_max_64 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } case 102: { // Predicate_atomic_load_umin_32 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } case 103: { // Predicate_atomic_load_umin_16 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } case 104: { // Predicate_atomic_load_umin_64 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } case 105: { // Predicate_atomic_load_umax_32 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i32; } case 106: { // Predicate_atomic_load_umax_16 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i16; } case 107: { // Predicate_atomic_load_umax_64 SDNode *N = Node; return cast<AtomicSDNode>(N)->getMemoryVT() == MVT::i64; } case 108: { // Predicate_def32 SDNode *N = Node; return N->getOpcode() != ISD::TRUNCATE && N->getOpcode() != TargetOpcode::EXTRACT_SUBREG && N->getOpcode() != ISD::CopyFromReg && N->getOpcode() != X86ISD::CMOV; } case 109: { // Predicate_fpimm0 ConstantFPSDNode*N = cast<ConstantFPSDNode>(Node); return N->isExactlyValue(+0.0); } case 110: { // Predicate_fpimm1 ConstantFPSDNode*N = cast<ConstantFPSDNode>(Node); return N->isExactlyValue(+1.0); } case 111: { // Predicate_fp32imm0 ConstantFPSDNode*N = cast<ConstantFPSDNode>(Node); return N->isExactlyValue(+0.0); } case 112: { // Predicate_fpimmneg0 ConstantFPSDNode*N = cast<ConstantFPSDNode>(Node); return N->isExactlyValue(-0.0); } case 113: { // Predicate_fpimmneg1 ConstantFPSDNode*N = cast<ConstantFPSDNode>(Node); return N->isExactlyValue(-1.0); } } } bool CheckComplexPattern(SDNode *Root, SDValue N, unsigned PatternNo, SmallVectorImpl<SDValue> &Result) { switch (PatternNo) { default: assert(0 && "Invalid pattern # in table?"); case 0: Result.resize(Result.size()+5); return SelectAddr(Root, N, Result[Result.size()-5], Result[Result.size()-4], Result[Result.size()-3], Result[Result.size()-2], Result[Result.size()-1]); case 1: Result.resize(Result.size()+6); return SelectScalarSSELoad(Root, N, Result[Result.size()-6], Result[Result.size()-5], Result[Result.size()-4], Result[Result.size()-3], Result[Result.size()-2], Result[Result.size()-1]); case 2: Result.resize(Result.size()+6); return SelectScalarSSELoad(Root, N, Result[Result.size()-6], Result[Result.size()-5], Result[Result.size()-4], Result[Result.size()-3], Result[Result.size()-2], Result[Result.size()-1]); case 3: Result.resize(Result.size()+4); return SelectLEAAddr(Root, N, Result[Result.size()-4], Result[Result.size()-3], Result[Result.size()-2], Result[Result.size()-1]); case 4: Result.resize(Result.size()+4); return SelectLEAAddr(Root, N, Result[Result.size()-4], Result[Result.size()-3], Result[Result.size()-2], Result[Result.size()-1]); case 5: Result.resize(Result.size()+4); return SelectTLSADDRAddr(Root, N, Result[Result.size()-4], Result[Result.size()-3], Result[Result.size()-2], Result[Result.size()-1]); case 6: Result.resize(Result.size()+4); return SelectTLSADDRAddr(Root, N, Result[Result.size()-4], Result[Result.size()-3], Result[Result.size()-2], Result[Result.size()-1]); } } SDValue RunSDNodeXForm(SDValue V, unsigned XFormNo) { switch (XFormNo) { default: assert(0 && "Invalid xform # in table?"); case 0: { SDNode *N = V.getNode(); return getI8Imm(X86::getShuffleSHUFImmediate(N)); } case 1: { SDNode *N = V.getNode(); return getI8Imm(X86::getShufflePSHUFHWImmediate(N)); } case 2: { SDNode *N = V.getNode(); return getI8Imm(X86::getShufflePSHUFLWImmediate(N)); } case 3: { SDNode *N = V.getNode(); return getI8Imm(X86::getShuffleSHUFImmediate(N)); } case 4: { SDNode *N = V.getNode(); return getI8Imm(X86::getShufflePALIGNRImmediate(N)); } case 5: { ConstantSDNode *N = cast<ConstantSDNode>(V.getNode()); // Transformation function: imm >> 3 return getI32Imm(N->getZExtValue() >> 3); } case 6: { ConstantSDNode *N = cast<ConstantSDNode>(V.getNode()); // Transformation function: get the low 32 bits. return getI32Imm((unsigned)N->getZExtValue()); } } }