reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
44286 if (auto *FirstLd = dyn_cast<LoadSDNode>(peekThroughBitcasts(Op0))) { 44299 if (llvm::all_of(Ops, [Op0](SDValue Op) { return Op == Op0; })) { 44299 if (llvm::all_of(Ops, [Op0](SDValue Op) { return Op == Op0; })) { 44302 if (Op0.getOpcode() == X86ISD::VBROADCAST || 44303 Op0.getOpcode() == X86ISD::SUBV_BROADCAST) 44304 return DAG.getNode(Op0.getOpcode(), DL, VT, Op0.getOperand(0)); 44304 return DAG.getNode(Op0.getOpcode(), DL, VT, Op0.getOperand(0)); 44307 if (Op0.getOpcode() == X86ISD::MOVDDUP && VT == MVT::v4f64 && 44308 (Subtarget.hasAVX2() || MayFoldLoad(Op0.getOperand(0)))) 44311 Op0.getOperand(0), 44315 if (Op0.getOpcode() == ISD::SCALAR_TO_VECTOR && 44317 (VT.getScalarSizeInBits() >= 32 && MayFoldLoad(Op0.getOperand(0)))) && 44318 Op0.getOperand(0).getValueType() == VT.getScalarType()) 44319 return DAG.getNode(X86ISD::VBROADCAST, DL, VT, Op0.getOperand(0)); 44322 bool IsSplat = llvm::all_of(Ops, [&Op0](SDValue Op) { return Op == Op0; }); 44322 bool IsSplat = llvm::all_of(Ops, [&Op0](SDValue Op) { return Op == Op0; }); 44327 if (llvm::all_of(Ops, [Op0](SDValue Op) { 44328 return Op.getOpcode() == Op0.getOpcode(); 44331 switch (Op0.getOpcode()) { 44336 Subtarget.hasInt256() && Op0.getOperand(1) == Ops[1].getOperand(1)) { 44340 return DAG.getNode(Op0.getOpcode(), DL, VT, 44342 Op0.getOperand(1)); 44348 Subtarget.hasAVX() && Op0.getOperand(1) == Ops[1].getOperand(1)) { 44354 Op0.getOperand(1)); 44365 MVT SrcVT = Op0.getOperand(0).getSimpleValueType(); 44368 return DAG.getNode(Op0.getOpcode(), DL, VT,