Lines Matching refs:NumBits
86 unsigned NumBits = C->getType()->getPrimitiveSizeInBits(); in extractConstantBits() local
89 return APInt::getZero(NumBits); in extractConstantBits()
100 assert((NumBits % Bits->getBitWidth()) == 0 && "Illegal splat"); in extractConstantBits()
101 return APInt::getSplat(NumBits, *Bits); in extractConstantBits()
105 APInt Bits = APInt::getZero(NumBits); in extractConstantBits()
111 assert(NumBits == (E * SubBits->getBitWidth()) && in extractConstantBits()
125 APInt Bits = APInt::getZero(NumBits); in extractConstantBits()
142 unsigned NumBits) { in extractConstantBits() argument
144 return Bits->zextOrTrunc(NumBits); in extractConstantBits()
266 static Constant *rebuildZeroUpperCst(const Constant *C, unsigned NumBits, in rebuildZeroUpperCst() argument
273 if (NumBits > ScalarBitWidth) { in rebuildZeroUpperCst()
275 if (std::optional<APInt> Bits = extractConstantBits(C, NumBits)) { in rebuildZeroUpperCst()
276 if (Bits->countLeadingZeros() >= (NumBits - ScalarBitWidth)) { in rebuildZeroUpperCst()
293 unsigned NumBits, unsigned NumElts, in rebuildExtCst() argument
295 unsigned DstEltBitWidth = NumBits / NumElts; in rebuildExtCst()
296 assert((NumBits % NumElts) == 0 && (NumBits % SrcEltBitWidth) == 0 && in rebuildExtCst()
300 if (std::optional<APInt> Bits = extractConstantBits(C, NumBits)) { in rebuildExtCst()
322 static Constant *rebuildSExtCst(const Constant *C, unsigned NumBits, in rebuildSExtCst() argument
324 return rebuildExtCst(C, true, NumBits, NumElts, SrcEltBitWidth); in rebuildSExtCst()
326 static Constant *rebuildZExtCst(const Constant *C, unsigned NumBits, in rebuildZExtCst() argument
328 return rebuildExtCst(C, false, NumBits, NumElts, SrcEltBitWidth); in rebuildZExtCst()