Lines Matching refs:KnownZero
2016 APInt KnownZero, KnownOne; in MaskedValueIsZero() local
2017 computeKnownBits(Op, KnownZero, KnownOne, Depth); in MaskedValueIsZero()
2018 return (KnownZero & Mask) == Mask; in MaskedValueIsZero()
2023 void SelectionDAG::computeKnownBits(SDValue Op, APInt &KnownZero, in computeKnownBits() argument
2027 KnownZero = KnownOne = APInt(BitWidth, 0); // Don't know anything. in computeKnownBits()
2037 KnownZero = ~KnownOne; in computeKnownBits()
2041 computeKnownBits(Op.getOperand(1), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2047 KnownZero |= KnownZero2; in computeKnownBits()
2050 computeKnownBits(Op.getOperand(1), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2054 KnownZero &= KnownZero2; in computeKnownBits()
2059 computeKnownBits(Op.getOperand(1), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2063 APInt KnownZeroOut = (KnownZero & KnownZero2) | (KnownOne & KnownOne2); in computeKnownBits()
2065 KnownOne = (KnownZero & KnownOne2) | (KnownOne & KnownZero2); in computeKnownBits()
2066 KnownZero = KnownZeroOut; in computeKnownBits()
2070 computeKnownBits(Op.getOperand(1), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2078 unsigned TrailZ = KnownZero.countTrailingOnes() + in computeKnownBits()
2080 unsigned LeadZ = std::max(KnownZero.countLeadingOnes() + in computeKnownBits()
2086 KnownZero = APInt::getLowBitsSet(BitWidth, TrailZ) | in computeKnownBits()
2105 KnownZero = APInt::getHighBitsSet(BitWidth, LeadZ); in computeKnownBits()
2109 computeKnownBits(Op.getOperand(2), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2114 KnownZero &= KnownZero2; in computeKnownBits()
2117 computeKnownBits(Op.getOperand(3), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2122 KnownZero &= KnownZero2; in computeKnownBits()
2139 KnownZero |= APInt::getHighBitsSet(BitWidth, BitWidth - 1); in computeKnownBits()
2146 KnownZero |= APInt::getHighBitsSet(BitWidth, BitWidth - 1); in computeKnownBits()
2157 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2158 KnownZero <<= ShAmt; in computeKnownBits()
2161 KnownZero |= APInt::getLowBitsSet(BitWidth, ShAmt); in computeKnownBits()
2173 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2174 KnownZero = KnownZero.lshr(ShAmt); in computeKnownBits()
2178 KnownZero |= HighBits; // High bits known zero. in computeKnownBits()
2193 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2194 KnownZero = KnownZero.lshr(ShAmt); in computeKnownBits()
2201 if (KnownZero.intersects(SignBit)) { in computeKnownBits()
2202 KnownZero |= HighBits; // New bits are known zero. in computeKnownBits()
2225 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2227 KnownZero &= InputDemandedBits; in computeKnownBits()
2231 if (KnownZero.intersects(InSignBit)) { // Input sign bit known clear in computeKnownBits()
2232 KnownZero |= NewBits; in computeKnownBits()
2236 KnownZero &= ~NewBits; in computeKnownBits()
2238 KnownZero &= ~NewBits; in computeKnownBits()
2249 KnownZero = APInt::getHighBitsSet(BitWidth, BitWidth - LowBits); in computeKnownBits()
2259 KnownZero |= APInt::getHighBitsSet(BitWidth, BitWidth - MemBits); in computeKnownBits()
2262 computeKnownBitsFromRangeMetadata(*Ranges, KnownZero, KnownOne); in computeKnownBits()
2270 KnownZero = KnownZero.trunc(InBits); in computeKnownBits()
2272 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2273 KnownZero = KnownZero.zext(BitWidth); in computeKnownBits()
2275 KnownZero |= NewBits; in computeKnownBits()
2283 KnownZero = KnownZero.trunc(InBits); in computeKnownBits()
2285 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2288 bool SignBitKnownZero = KnownZero.isNegative(); in computeKnownBits()
2291 KnownZero = KnownZero.zext(BitWidth); in computeKnownBits()
2296 KnownZero |= NewBits; in computeKnownBits()
2304 KnownZero = KnownZero.trunc(InBits); in computeKnownBits()
2306 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2307 KnownZero = KnownZero.zext(BitWidth); in computeKnownBits()
2314 KnownZero = KnownZero.zext(InBits); in computeKnownBits()
2316 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2317 KnownZero = KnownZero.trunc(BitWidth); in computeKnownBits()
2324 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2325 KnownZero |= (~InMask); in computeKnownBits()
2326 KnownOne &= (~KnownZero); in computeKnownBits()
2331 KnownZero = APInt::getHighBitsSet(BitWidth, BitWidth - 1); in computeKnownBits()
2351 KnownZero = APInt::getHighBitsSet(BitWidth, NLZ2); in computeKnownBits()
2377 KnownZero |= APInt::getLowBitsSet(BitWidth, KnownZeroLow); in computeKnownBits()
2379 KnownZero |= APInt::getHighBitsSet(BitWidth, KnownZeroHigh - 1); in computeKnownBits()
2388 KnownZero |= APInt::getBitsSet(BitWidth, 1, KnownZeroLow); in computeKnownBits()
2399 KnownZero = KnownZero2 & LowBits; in computeKnownBits()
2405 KnownZero |= ~LowBits; in computeKnownBits()
2411 assert((KnownZero & KnownOne) == 0&&"Bits known to be one AND zero?"); in computeKnownBits()
2423 KnownZero = KnownZero2 | ~LowBits; in computeKnownBits()
2431 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2434 uint32_t Leaders = std::max(KnownZero.countLeadingOnes(), in computeKnownBits()
2437 KnownZero = APInt::getHighBitsSet(BitWidth, Leaders); in computeKnownBits()
2441 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in computeKnownBits()
2447 KnownZero = KnownZero.getHiBits(KnownZero.getBitWidth() - Index * BitWidth); in computeKnownBits()
2451 KnownZero = KnownZero.trunc(BitWidth); in computeKnownBits()
2457 KnownZero = KnownZero2.byteSwap(); in computeKnownBits()
2470 KnownZero = Op0Zero & Op1Zero; in computeKnownBits()
2478 KnownZero = APInt::getLowBitsSet(BitWidth, Log2_32(Align)); in computeKnownBits()
2491 TLI->computeKnownBitsForTargetNode(Op, KnownZero, KnownOne, *this, Depth); in computeKnownBits()
2495 assert((KnownZero & KnownOne) == 0 && "Bits known to be one AND zero?"); in computeKnownBits()
2521 APInt KnownZero, KnownOne; in isKnownToBeAPowerOfTwo() local
2522 computeKnownBits(Val, KnownZero, KnownOne); in isKnownToBeAPowerOfTwo()
2523 return (KnownZero.countPopulation() == BitWidth - 1) && in isKnownToBeAPowerOfTwo()
2661 APInt KnownZero, KnownOne; in ComputeNumSignBits() local
2662 computeKnownBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1); in ComputeNumSignBits()
2666 if ((KnownZero | APInt(VTBits, 1)).isAllOnesValue()) in ComputeNumSignBits()
2671 if (KnownZero.isNegative()) in ComputeNumSignBits()
2686 APInt KnownZero, KnownOne; in ComputeNumSignBits() local
2687 computeKnownBits(Op.getOperand(1), KnownZero, KnownOne, Depth+1); in ComputeNumSignBits()
2690 if ((KnownZero | APInt(VTBits, 1)).isAllOnesValue()) in ComputeNumSignBits()
2695 if (KnownZero.isNegative()) in ComputeNumSignBits()
2755 APInt KnownZero, KnownOne; in ComputeNumSignBits() local
2756 computeKnownBits(Op, KnownZero, KnownOne, Depth); in ComputeNumSignBits()
2759 if (KnownZero.isNegative()) { // sign bit is 0 in ComputeNumSignBits()
2760 Mask = KnownZero; in ComputeNumSignBits()
7026 APInt KnownZero(PtrWidth, 0), KnownOne(PtrWidth, 0); in InferPtrAlignment() local
7027 llvm::computeKnownBits(const_cast<GlobalValue *>(GV), KnownZero, KnownOne, in InferPtrAlignment()
7029 unsigned AlignBits = KnownZero.countTrailingOnes(); in InferPtrAlignment()