Lines Matching full:zero
87 /// to be zero in the expression. These are provided to potentially allow the
158 // If either the LHS or the RHS are Zero, the result is zero.
174 // If all of the demanded bits in the inputs are known zeros, return zero.
188 // If all of the demanded bits are known zero on one side, return the
225 // If either the LHS or the RHS are Zero, the result is zero.
231 assert(!(RHSKnownZero & RHSKnownOne) && "Bits known to be one AND zero?");
232 assert(!(LHSKnownZero & LHSKnownOne) && "Bits known to be one AND zero?");
243 // If all of the demanded bits in the inputs are known zeros, return zero.
253 // Output known-0 are known to be clear if zero in either the LHS | RHS.
263 assert(!(RHSKnownZero & RHSKnownOne) && "Bits known to be one AND zero?");
264 assert(!(LHSKnownZero & LHSKnownOne) && "Bits known to be one AND zero?");
266 // If all of the demanded bits are known zero on one side, return the other.
299 assert(!(RHSKnownZero & RHSKnownOne) && "Bits known to be one AND zero?");
300 assert(!(LHSKnownZero & LHSKnownOne) && "Bits known to be one AND zero?");
302 // If all of the demanded bits are known zero on one side, return the other.
309 // If all of the demanded bits are known to be zero on one side or the
340 // bits to zero. We can just knock out bits from the 'and' and the 'xor',
374 assert(!(RHSKnownZero & RHSKnownOne) && "Bits known to be one AND zero?");
375 assert(!(LHSKnownZero & LHSKnownOne) && "Bits known to be one AND zero?");
397 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?");
420 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?");
435 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?");
436 // The top bits are known to be zero.
462 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?");
467 // If the input sign bit is known zero, or if the NewBits are not demanded
468 // convert this into a zero extension.
488 // won't work if the RHS is zero.
496 // Find information about known zero/one bits in the input.
510 // Turn it into OR if input bits are zero.
518 // We can say something about the output known-zero and known-one bits,
522 // one mask of 0x00001 and a known zero mask of 0xE0F0E.
532 // Bits are known one if they are known zero in one operand and one in the
537 // Bits are known zero if they are known zero in both operands and there
589 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?");
592 // low bits known zero.
606 // they are zero).
613 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?");
619 KnownZero |= HighBits; // high bits known zero.
651 // they are zero).
658 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?");
669 // If the input sign bit is known to be zero, or if none of the top bits
703 // If LHS is non-negative or has all low bits zero, then the upper bits
704 // are all zero.
708 // If LHS is negative and not all low bits are zero, then the upper bits
713 assert(!(KnownZero & KnownOne) && "Bits known to be one AND zero?");
718 // remainder is zero.
724 // If it's known zero, our sign bit is also zero.
777 // TODO: Could compute known zero/one bits based on the input.
856 Constant *Zero = Constant::getNullValue(EltTy);
860 Constant *Elt = DemandedElts[i] ? Zero : Undef;
1031 // div/rem demand all inputs, because they don't want divide by zero.
1066 // div/rem demand all inputs, because they don't want divide by zero.
1075 // like undef&0. The result is known zero, not undef.
1145 // like undef&0. The result is known zero, not undef.