reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
5040 if (N0 == N1) 5041 return N0; 5049 if (ISD::isBuildVectorAllZeros(N0.getNode())) 5051 return DAG.getConstant(APInt::getNullValue(N0.getScalarValueSizeInBits()), 5052 SDLoc(N), N0.getValueType()); 5059 if (ISD::isBuildVectorAllOnes(N0.getNode())) 5062 return N0; 5066 ConstantSDNode *N0C = getAsNonOpaqueConstant(N0); 5071 if (DAG.isConstantIntBuildVectorOrConstantInt(N0) && 5073 return DAG.getNode(ISD::AND, SDLoc(N), VT, N1, N0); 5076 return N0; 5087 if (SDValue RAND = reassociateOps(ISD::AND, SDLoc(N), N0, N1, N->getFlags())) 5099 if (N0.getOpcode() == ISD::OR && 5100 ISD::matchBinaryPredicate(N0.getOperand(1), N1, MatchSubset)) 5103 if (N1C && N0.getOpcode() == ISD::ANY_EXTEND) { 5104 SDValue N0Op0 = N0.getOperand(0); 5109 N0.getValueType(), N0Op0); 5117 CombineTo(N0.getNode(), Zext); 5128 if ((N0.getOpcode() == ISD::EXTRACT_VECTOR_ELT && 5129 N0.getValueSizeInBits() == N0.getOperand(0).getScalarValueSizeInBits() && 5129 N0.getValueSizeInBits() == N0.getOperand(0).getScalarValueSizeInBits() && 5130 N0.getOperand(0).getOpcode() == ISD::LOAD && 5131 N0.getOperand(0).getResNo() == 0) || 5132 (N0.getOpcode() == ISD::LOAD && N0.getResNo() == 0)) { 5132 (N0.getOpcode() == ISD::LOAD && N0.getResNo() == 0)) { 5133 LoadSDNode *Load = cast<LoadSDNode>( (N0.getOpcode() == ISD::LOAD) ? 5134 N0 : N0.getOperand(0) ); 5134 N0 : N0.getOperand(0) ); 5203 CombineTo(N, (N0.getNode() == Load) ? NewLoad : N0); 5203 CombineTo(N, (N0.getNode() == Load) ? NewLoad : N0); 5229 if (!VT.isVector() && N1C && (N0.getOpcode() == ISD::LOAD || 5230 (N0.getOpcode() == ISD::ANY_EXTEND && 5231 N0.getOperand(0).getOpcode() == ISD::LOAD))) { 5233 LoadSDNode *LN0 = N0->getOpcode() == ISD::ANY_EXTEND 5234 ? cast<LoadSDNode>(N0.getOperand(0)) : cast<LoadSDNode>(N0); 5234 ? cast<LoadSDNode>(N0.getOperand(0)) : cast<LoadSDNode>(N0); 5251 if (SDValue Combined = visitANDLike(N0, N1, N)) 5255 if (N0.getOpcode() == N1.getOpcode()) 5266 if (N1C && N1C->isOne() && N0.getOpcode() == ISD::SUB) { 5267 if (isNullOrNullSplat(N0.getOperand(0))) { 5268 SDValue SubRHS = N0.getOperand(1); 5285 if (ISD::isUNINDEXEDLoad(N0.getNode()) && 5286 (ISD::isEXTLoad(N0.getNode()) || 5287 (ISD::isSEXTLoad(N0.getNode()) && N0.hasOneUse()))) { 5287 (ISD::isSEXTLoad(N0.getNode()) && N0.hasOneUse()))) { 5288 LoadSDNode *LN0 = cast<LoadSDNode>(N0); 5299 DAG.getExtLoad(ISD::ZEXTLOAD, SDLoc(N0), VT, LN0->getChain(), 5302 CombineTo(N0.getNode(), ExtLoad, ExtLoad.getValue(1)); 5308 if (N1C && N1C->getAPIntValue() == 0xffff && N0.getOpcode() == ISD::OR) { 5309 if (SDValue BSwap = MatchBSwapHWordLow(N0.getNode(), N0.getOperand(0), 5309 if (SDValue BSwap = MatchBSwapHWordLow(N0.getNode(), N0.getOperand(0), 5310 N0.getOperand(1), false)) 5317 if (TLI.hasBitTest(N0, N1))