Searched defs:KnownZero (Results 1 - 18 of 18) sorted by relevance

/external/llvm/include/llvm/CodeGen/
H A DFunctionLoweringInfo.h103 APInt KnownOne, KnownZero; member in struct:llvm::FunctionLoweringInfo::LiveOutInfo
105 KnownZero(1, 0) {}
168 const APInt &KnownZero, const APInt &KnownOne) {
170 if (NumSignBits == 1 && KnownZero == 0 && KnownOne == 0)
177 LOI.KnownZero = KnownZero;
167 AddLiveOutRegInfo(unsigned Reg, unsigned NumSignBits, const APInt &KnownZero, const APInt &KnownOne) argument
/external/llvm/lib/Transforms/InstCombine/
H A DInstCombine.h300 void ComputeMaskedBits(Value *V, APInt &KnownZero, argument
302 return llvm::ComputeMaskedBits(V, KnownZero, KnownOne, TD, Depth);
329 APInt& KnownZero, APInt& KnownOne,
332 APInt& KnownZero, APInt& KnownOne,
337 APInt DemandedMask, APInt &KnownZero,
H A DInstCombineSimplifyDemanded.cpp55 APInt KnownZero(BitWidth, 0), KnownOne(BitWidth, 0);
59 KnownZero, KnownOne, 0);
70 APInt &KnownZero, APInt &KnownOne,
73 KnownZero, KnownOne, Depth);
87 /// to be one in the expression. KnownZero contains all the bits that are known
90 /// the expression. KnownOne and KnownZero always follow the invariant that
91 /// KnownOne & KnownZero == 0. That is, a bit can't be both 1 and 0. Note that
92 /// the bits in KnownOne and KnownZero may only be accurate for those bits set
93 /// in DemandedMask. Note also that the bitwidth of V, DemandedMask, KnownZero
102 APInt &KnownZero, APIn
69 SimplifyDemandedBits(Use &U, APInt DemandedMask, APInt &KnownZero, APInt &KnownOne, unsigned Depth) argument
101 SimplifyDemandedUseBits(Value *V, APInt DemandedMask, APInt &KnownZero, APInt &KnownOne, unsigned Depth) argument
845 SimplifyShrShlDemandedBits(Instruction *Shr, Instruction *Shl, APInt DemandedMask, APInt &KnownZero, APInt &KnownOne) argument
[all...]
H A DInstCombineCompares.cpp152 static void ComputeSignedMinMaxValuesFromKnownBits(const APInt& KnownZero, argument
155 assert(KnownZero.getBitWidth() == KnownOne.getBitWidth() &&
156 KnownZero.getBitWidth() == Min.getBitWidth() &&
157 KnownZero.getBitWidth() == Max.getBitWidth() &&
158 "KnownZero, KnownOne and Min, Max must have equal bitwidth.");
159 APInt UnknownBits = ~(KnownZero|KnownOne);
176 static void ComputeUnsignedMinMaxValuesFromKnownBits(const APInt &KnownZero, argument
179 assert(KnownZero.getBitWidth() == KnownOne.getBitWidth() &&
180 KnownZero.getBitWidth() == Min.getBitWidth() &&
181 KnownZero
[all...]
/external/llvm/lib/Target/R600/
H A DAMDILISelLowering.cpp259 APInt &KnownZero,
265 KnownZero = KnownOne = APInt(KnownOne.getBitWidth(), 0); // Don't know anything
271 KnownZero,
280 assert((KnownZero & KnownOne) == 0
286 KnownZero &= KnownZero2;
257 computeMaskedBitsForTargetNode( const SDValue Op, APInt &KnownZero, APInt &KnownOne, const SelectionDAG &DAG, unsigned Depth) const argument
/external/llvm/lib/Analysis/
H A DConstantFolding.cpp567 APInt KnownZero = KnownZero0 | KnownZero1; local
569 if ((KnownZero | KnownOne).isAllOnesValue()) {
H A DValueTracking.cpp47 APInt &KnownZero, APInt &KnownOne,
56 unsigned BitWidth = KnownZero.getBitWidth();
68 KnownZero = APInt::getHighBitsSet(BitWidth, NLZ2);
74 unsigned BitWidth = KnownZero.getBitWidth();
95 KnownZero |= KnownZero2 & Mask;
100 KnownZero |= APInt::getLowBitsSet(BitWidth,
106 KnownZero |= LHSKnownZero & Mask;
111 if (!KnownZero.isNegative() && !KnownOne.isNegative()) {
116 KnownZero |= APInt::getSignBit(BitWidth);
123 KnownZero |
46 ComputeMaskedBitsAddSub(bool Add, Value *Op0, Value *Op1, bool NSW, APInt &KnownZero, APInt &KnownOne, APInt &KnownZero2, APInt &KnownOne2, const DataLayout *TD, unsigned Depth) argument
132 ComputeMaskedBitsMul(Value *Op0, Value *Op1, bool NSW, APInt &KnownZero, APInt &KnownOne, APInt &KnownZero2, APInt &KnownOne2, const DataLayout *TD, unsigned Depth) argument
194 computeMaskedBitsLoad(const MDNode &Ranges, APInt &KnownZero) argument
228 ComputeMaskedBits(Value *V, APInt &KnownZero, APInt &KnownOne, const DataLayout *TD, unsigned Depth) argument
792 ComputeSignBit(Value *V, bool &KnownZero, bool &KnownOne, const DataLayout *TD, unsigned Depth) argument
[all...]
/external/llvm/lib/Target/Sparc/
H A DSparcISelLowering.cpp839 APInt &KnownZero,
844 KnownZero = KnownOne = APInt(KnownZero.getBitWidth(), 0);
850 DAG.ComputeMaskedBits(Op.getOperand(1), KnownZero, KnownOne, Depth+1);
852 assert((KnownZero & KnownOne) == 0 && "Bits known to be one AND zero?");
857 KnownZero &= KnownZero2;
838 computeMaskedBitsForTargetNode(const SDValue Op, APInt &KnownZero, APInt &KnownOne, const SelectionDAG &DAG, unsigned Depth) const argument
/external/llvm/lib/CodeGen/SelectionDAG/
H A DSelectionDAGISel.cpp530 APInt KnownZero; local
560 CurDAG->ComputeMaskedBits(Src, KnownZero, KnownOne);
561 FuncInfo->AddLiveOutRegInfo(DestReg, NumSignBits, KnownZero, KnownOne);
1475 APInt KnownZero, KnownOne; local
1476 CurDAG->ComputeMaskedBits(LHS, KnownZero, KnownOne);
H A DTargetLowering.cpp346 /// analyze the expression and return a mask of KnownOne and KnownZero bits for
347 /// the expression (used to simplify the caller). The KnownZero/One bits may
351 APInt &KnownZero,
362 KnownZero = KnownOne = APInt(BitWidth, 0);
367 // If not at the root, Just compute the KnownZero/KnownOne bits to
369 TLO.DAG.ComputeMaskedBits(Op, KnownZero, KnownOne, Depth);
389 KnownZero = ~KnownOne;
409 if (SimplifyDemandedBits(Op.getOperand(1), NewMask, KnownZero,
412 assert((KnownZero & KnownOne) == 0 && "Bits known to be one AND zero?");
413 if (SimplifyDemandedBits(Op.getOperand(0), ~KnownZero
349 SimplifyDemandedBits(SDValue Op, const APInt &DemandedMask, APInt &KnownZero, APInt &KnownOne, TargetLoweringOpt &TLO, unsigned Depth) const argument
1003 computeMaskedBitsForTargetNode(const SDValue Op, APInt &KnownZero, APInt &KnownOne, const SelectionDAG &DAG, unsigned Depth) const argument
1058 APInt KnownZero, KnownOne; local
[all...]
H A DLegalizeIntegerTypes.cpp1370 APInt KnownZero, KnownOne; local
1371 DAG.ComputeMaskedBits(N->getOperand(1), KnownZero, KnownOne);
1374 if (((KnownZero|KnownOne) & HighBitMask) == 0)
1408 if ((KnownZero & HighBitMask) == HighBitMask) {
H A DSelectionDAG.cpp1671 APInt KnownZero, KnownOne; local
1672 ComputeMaskedBits(Op, KnownZero, KnownOne, Depth);
1673 assert((KnownZero & KnownOne) == 0 && "Bits known to be one AND zero?");
1674 return (KnownZero & Mask) == Mask;
1678 /// known to be either zero or one and return them in the KnownZero/KnownOne
1681 void SelectionDAG::ComputeMaskedBits(SDValue Op, APInt &KnownZero, argument
1685 KnownZero = KnownOne = APInt(BitWidth, 0); // Don't know anything.
1695 KnownZero = ~KnownOne;
1699 ComputeMaskedBits(Op.getOperand(1), KnownZero, KnownOne, Depth+1);
1701 assert((KnownZero
2239 APInt KnownZero, KnownOne; local
2264 APInt KnownZero, KnownOne; local
2315 APInt KnownZero, KnownOne; local
6217 llvm::ComputeMaskedBits(const_cast<GlobalValue*>(GV), KnownZero, KnownOne, local
[all...]
H A DDAGCombiner.cpp689 APInt KnownZero, KnownOne; local
690 if (!TLI.SimplifyDemandedBits(Op, Demanded, KnownZero, KnownOne, TLO))
3932 APInt KnownZero, KnownOne; local
3933 DAG.ComputeMaskedBits(N0.getOperand(0), KnownZero, KnownOne);
3941 APInt UnknownBits = ~KnownZero;
4518 // the value being truncated in Op and which of Op's bits are zero in KnownZero.
4519 // This function computes KnownZero to avoid a duplicated call to
4522 APInt &KnownZero) {
4526 DAG.ComputeMaskedBits(Op, KnownZero, KnownOne);
4547 DAG.ComputeMaskedBits(Op, KnownZero, KnownOn
4521 isTruncateOf(SelectionDAG &DAG, SDValue N, SDValue &Op, APInt &KnownZero) argument
4573 APInt KnownZero; local
[all...]
/external/llvm/lib/Target/XCore/
H A DXCoreISelLowering.cpp1383 APInt KnownZero, KnownOne; local
1386 DAG.ComputeMaskedBits(N2, KnownZero, KnownOne);
1387 if ((KnownZero & Mask) == Mask) {
1406 APInt KnownZero, KnownOne; local
1409 DAG.ComputeMaskedBits(N2, KnownZero, KnownOne);
1410 if ((KnownZero & Mask) == Mask) {
1422 APInt KnownZero, KnownOne; local
1425 DAG.ComputeMaskedBits(N2, KnownZero, KnownOne);
1426 if ((KnownZero & Mask) == Mask) {
1548 APInt &KnownZero,
1547 computeMaskedBitsForTargetNode(const SDValue Op, APInt &KnownZero, APInt &KnownOne, const SelectionDAG &DAG, unsigned Depth) const argument
[all...]
/external/llvm/lib/Target/X86/
H A DX86ISelDAGToDAG.cpp923 APInt KnownZero, KnownOne; local
924 DAG.ComputeMaskedBits(X, KnownZero, KnownOne);
925 if (MaskedHighBits != KnownZero) return true;
H A DX86ISelLowering.cpp14655 APInt &KnownZero,
14659 unsigned BitWidth = KnownZero.getBitWidth();
14668 KnownZero = KnownOne = APInt(BitWidth, 0); // Don't know anything.
14687 KnownZero |= APInt::getHighBitsSet(BitWidth, BitWidth - 1);
14712 KnownZero = APInt::getHighBitsSet(BitWidth, BitWidth - NumLoBits);
15531 APInt KnownZero, KnownOne; local
15535 TLI.SimplifyDemandedBits(Cond, DemandedMask, KnownZero, KnownOne, TLO))
17163 APInt KnownZero, KnownOne; local
17168 TLI.SimplifyDemandedBits(Op1, DemandedMask, KnownZero, KnownOne, TLO))
14654 computeMaskedBitsForTargetNode(const SDValue Op, APInt &KnownZero, APInt &KnownOne, const SelectionDAG &DAG, unsigned Depth) const argument
/external/llvm/lib/Target/PowerPC/
H A DPPCISelLowering.cpp6520 APInt &KnownZero,
6524 KnownZero = KnownOne = APInt(KnownZero.getBitWidth(), 0);
6530 KnownZero = 0xFFFF0000;
6549 KnownZero = ~1U; // All bits but the low one are known to be zero.
6519 computeMaskedBitsForTargetNode(const SDValue Op, APInt &KnownZero, APInt &KnownOne, const SelectionDAG &DAG, unsigned Depth) const argument
/external/llvm/lib/Target/ARM/
H A DARMISelLowering.cpp9378 APInt KnownZero, KnownOne; local
9379 DAG.ComputeMaskedBits(SDValue(N,0), KnownZero, KnownOne); local
9381 if (KnownZero == 0xfffffffe)
9384 else if (KnownZero == 0xffffff00)
9387 else if (KnownZero == 0xffff0000)
9949 APInt &KnownZero,
9953 KnownZero = KnownOne = APInt(KnownOne.getBitWidth(), 0);
9958 DAG.ComputeMaskedBits(Op.getOperand(0), KnownZero, KnownOne, Depth+1);
9959 if (KnownZero == 0 && KnownOne == 0) return;
9963 KnownZero
9948 computeMaskedBitsForTargetNode(const SDValue Op, APInt &KnownZero, APInt &KnownOne, const SelectionDAG &DAG, unsigned Depth) const argument
[all...]

Completed in 1698 milliseconds