Lines Matching defs:BVN
4260 // Try to represent constant BUILD_VECTOR node BVN using a
4263 static bool tryBuildVectorByteMask(BuildVectorSDNode *BVN, uint64_t &Mask) {
4264 EVT ElemVT = BVN->getValueType(0).getVectorElementType();
4266 for (unsigned I = 0, E = BVN->getNumOperands(); I != E; ++I) {
4267 SDValue Op = BVN->getOperand(I);
4337 BuildVectorSDNode *BVN) {
4338 EVT VT = BVN->getValueType(0);
4349 SDValue Op = BVN->getOperand(I);
4363 ResidueOps.push_back(BVN->getOperand(I));
4377 Op = DAG.getBuildVector(VT, SDLoc(BVN), ResidueOps);
4382 return GS.getNode(DAG, SDLoc(BVN));
4529 auto *BVN = cast<BuildVectorSDNode>(Op.getNode());
4533 if (BVN->isConstant()) {
4538 if (tryBuildVectorByteMask(BVN, Mask)) {
4549 if (BVN->isConstantSplat(SplatBits, SplatUndef, SplatBitSize, HasAnyUndefs,
4583 if (SDValue Res = tryBuildVectorShuffle(DAG, BVN))
4724 if (auto *BVN = dyn_cast<BuildVectorSDNode>(Op1)) {
4730 if (BVN->isConstantSplat(SplatBits, SplatUndef, SplatBitSize, HasAnyUndefs,
4739 SDValue Splat = BVN->getSplatValue(&UndefElements);