Lines Matching refs:Known
77 KnownBits Known; in getKnownBits() local
78 computeKnownBitsImpl(R, Known, DemandedElts, Depth); in getKnownBits()
80 return Known; in getKnownBits()
96 dumpResult(const MachineInstr &MI, const KnownBits &Known, unsigned Depth) { in dumpResult() argument
99 << toString(Known.Zero | Known.One, 16, false) << "\n" in dumpResult()
100 << "[" << Depth << "] Zero: 0x" << toString(Known.Zero, 16, false) in dumpResult()
102 << "[" << Depth << "] One: 0x" << toString(Known.One, 16, false) in dumpResult()
108 KnownBits &Known, in computeKnownBitsMin() argument
112 computeKnownBitsImpl(Src1, Known, DemandedElts, Depth); in computeKnownBitsMin()
115 if (Known.isUnknown()) in computeKnownBitsMin()
122 Known = Known.intersectWith(Known2); in computeKnownBitsMin()
139 void GISelKnownBits::computeKnownBitsImpl(Register R, KnownBits &Known, in computeKnownBitsImpl() argument
151 Known = KnownBits(); in computeKnownBitsImpl()
158 Known = CacheEntry->second; in computeKnownBitsImpl()
160 LLVM_DEBUG(dumpResult(MI, Known, Depth)); in computeKnownBitsImpl()
161 assert(Known.getBitWidth() == BitWidth && "Cache entry size doesn't match"); in computeKnownBitsImpl()
164 Known = KnownBits(BitWidth); // Don't know anything in computeKnownBitsImpl()
184 TL.computeKnownBitsForTargetInstr(*this, R, Known, DemandedElts, MRI, in computeKnownBitsImpl()
189 Known.Zero.setAllBits(); Known.One.setAllBits(); in computeKnownBitsImpl()
198 Known = Known.intersectWith(Known2); in computeKnownBitsImpl()
201 if (Known.isUnknown()) in computeKnownBitsImpl()
209 Known.One = APInt::getAllOnes(BitWidth); in computeKnownBitsImpl()
210 Known.Zero = APInt::getAllOnes(BitWidth); in computeKnownBitsImpl()
242 Known = Known.intersectWith(Known2); in computeKnownBitsImpl()
245 if (Known.isUnknown()) in computeKnownBitsImpl()
249 Known = KnownBits(BitWidth); in computeKnownBitsImpl()
259 Known = KnownBits::makeConstant(*CstVal); in computeKnownBitsImpl()
264 TL.computeKnownBitsForFrameIndex(FrameIdx, Known, MF); in computeKnownBitsImpl()
268 computeKnownBitsImpl(MI.getOperand(1).getReg(), Known, DemandedElts, in computeKnownBitsImpl()
272 Known = KnownBits::computeForAddSub(/*Add*/ false, /*NSW*/ false, Known, in computeKnownBitsImpl()
277 computeKnownBitsImpl(MI.getOperand(2).getReg(), Known, DemandedElts, in computeKnownBitsImpl()
282 Known ^= Known2; in computeKnownBitsImpl()
295 computeKnownBitsImpl(MI.getOperand(1).getReg(), Known, DemandedElts, in computeKnownBitsImpl()
299 Known = in computeKnownBitsImpl()
300 KnownBits::computeForAddSub(/*Add*/ true, /*NSW*/ false, Known, Known2); in computeKnownBitsImpl()
305 computeKnownBitsImpl(MI.getOperand(2).getReg(), Known, DemandedElts, in computeKnownBitsImpl()
310 Known &= Known2; in computeKnownBitsImpl()
315 computeKnownBitsImpl(MI.getOperand(2).getReg(), Known, DemandedElts, in computeKnownBitsImpl()
320 Known |= Known2; in computeKnownBitsImpl()
324 computeKnownBitsImpl(MI.getOperand(2).getReg(), Known, DemandedElts, in computeKnownBitsImpl()
328 Known = KnownBits::mul(Known, Known2); in computeKnownBitsImpl()
333 Known, DemandedElts, Depth + 1); in computeKnownBitsImpl()
339 computeKnownBitsImpl(MI.getOperand(1).getReg(), Known, DemandedElts, in computeKnownBitsImpl()
343 Known = KnownBits::smin(Known, KnownRHS); in computeKnownBitsImpl()
349 computeKnownBitsImpl(MI.getOperand(1).getReg(), Known, DemandedElts, in computeKnownBitsImpl()
353 Known = KnownBits::smax(Known, KnownRHS); in computeKnownBitsImpl()
358 computeKnownBitsImpl(MI.getOperand(1).getReg(), Known, in computeKnownBitsImpl()
362 Known = KnownBits::umin(Known, KnownRHS); in computeKnownBitsImpl()
367 computeKnownBitsImpl(MI.getOperand(1).getReg(), Known, in computeKnownBitsImpl()
371 Known = KnownBits::umax(Known, KnownRHS); in computeKnownBitsImpl()
382 Known.Zero.setBitsFrom(1); in computeKnownBitsImpl()
386 computeKnownBitsImpl(MI.getOperand(1).getReg(), Known, DemandedElts, in computeKnownBitsImpl()
390 Known = Known.sext(BitWidth); in computeKnownBitsImpl()
395 computeKnownBitsImpl(MI.getOperand(1).getReg(), Known, DemandedElts, in computeKnownBitsImpl()
397 Known = Known.sextInReg(MI.getOperand(2).getImm()); in computeKnownBitsImpl()
401 computeKnownBitsImpl(MI.getOperand(1).getReg(), Known, DemandedElts, in computeKnownBitsImpl()
403 Known = Known.anyext(BitWidth); in computeKnownBitsImpl()
409 computeKnownBitsFromRangeMetadata(*Ranges, Known); in computeKnownBitsImpl()
418 Known.Zero.setBitsFrom((*MI.memoperands_begin())->getSizeInBits()); in computeKnownBitsImpl()
427 Known = KnownBits::ashr(LHSKnown, RHSKnown); in computeKnownBitsImpl()
436 Known = KnownBits::lshr(LHSKnown, RHSKnown); in computeKnownBitsImpl()
445 Known = KnownBits::shl(LHSKnown, RHSKnown); in computeKnownBitsImpl()
470 Known = Known.zextOrTrunc(SrcBitWidth); in computeKnownBitsImpl()
471 computeKnownBitsImpl(SrcReg, Known, DemandedElts, Depth + 1); in computeKnownBitsImpl()
472 Known = Known.zextOrTrunc(BitWidth); in computeKnownBitsImpl()
474 Known.Zero.setBitsFrom(SrcBitWidth); in computeKnownBitsImpl()
483 Known.Zero.setLowBits(LogOfAlign); in computeKnownBitsImpl()
484 Known.One.clearLowBits(LogOfAlign); in computeKnownBitsImpl()
495 Known.insertBits(SrcOpKnown, I * OpSize); in computeKnownBitsImpl()
516 Known = SrcOpKnown.extractBits(BitWidth, BitWidth * DstIdx); in computeKnownBitsImpl()
521 computeKnownBitsImpl(SrcReg, Known, DemandedElts, Depth + 1); in computeKnownBitsImpl()
522 Known = Known.byteSwap(); in computeKnownBitsImpl()
527 computeKnownBitsImpl(SrcReg, Known, DemandedElts, Depth + 1); in computeKnownBitsImpl()
528 Known = Known.reverseBits(); in computeKnownBitsImpl()
538 Known.Zero.setBitsFrom(LowBits); in computeKnownBitsImpl()
551 Known = extractBits(BitWidth, SrcOpKnown, OffsetKnown, WidthKnown); in computeKnownBitsImpl()
562 Known = extractBits(BitWidth, SrcOpKnown, OffsetKnown, WidthKnown); in computeKnownBitsImpl()
568 Known = KnownBits::ashr(KnownBits::shl(Known, ShiftKnown), ShiftKnown); in computeKnownBitsImpl()
587 Known.Zero.setBitsFrom(1); in computeKnownBitsImpl()
593 assert(!Known.hasConflict() && "Bits known to be one AND zero?"); in computeKnownBitsImpl()
594 LLVM_DEBUG(dumpResult(MI, Known, Depth)); in computeKnownBitsImpl()
597 ComputeKnownBitsCache[R] = Known; in computeKnownBitsImpl()
745 KnownBits Known = getKnownBits(R, DemandedElts, Depth); in computeNumSignBits() local
747 if (Known.isNonNegative()) { // sign bit is 0 in computeNumSignBits()
748 Mask = Known.Zero; in computeNumSignBits()
749 } else if (Known.isNegative()) { // sign bit is 1; in computeNumSignBits()
750 Mask = Known.One; in computeNumSignBits()