HomeSort by: relevance | last modified time | path
    Searched refs:ICmp (Results 1 - 25 of 74) sorted by relevancy

1 2 3

  /src/external/apache2/llvm/dist/llvm/lib/FuzzMutate/
Operations.cpp 33 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_EQ));
34 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_NE));
35 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_UGT));
36 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_UGE));
37 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_ULT));
38 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_ULE));
39 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_SGT));
40 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_SGE));
41 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_SLT));
42 Ops.push_back(cmpOpDescriptor(1, Instruction::ICmp, CmpInst::ICMP_SLE))
    [all...]
IRMutator.cpp 219 case Instruction::ICmp:
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
SimplifyIndVar.cpp 89 bool makeIVComparisonInvariant(ICmpInst *ICmp, Value *IVOperand);
90 void eliminateIVComparison(ICmpInst *ICmp, Value *IVOperand);
195 bool SimplifyIndvar::makeIVComparisonInvariant(ICmpInst *ICmp,
198 ICmpInst::Predicate Pred = ICmp->getPredicate();
199 if (IVOperand != ICmp->getOperand(0)) {
201 assert(IVOperand == ICmp->getOperand(1) && "Can't find IVOperand");
206 // Get the SCEVs for the ICmp operands (in the specific context of the
208 const Loop *ICmpLoop = LI->getLoopFor(ICmp->getParent());
209 const SCEV *S = SE->getSCEVAtScope(ICmp->getOperand(IVOperIdx), ICmpLoop);
210 const SCEV *X = SE->getSCEVAtScope(ICmp->getOperand(1 - IVOperIdx), ICmpLoop)
    [all...]
ScalarEvolutionExpander.cpp 1741 Value *ICmp = Builder.CreateICmpSGT(LHS, RHS);
1742 Sel = Builder.CreateSelect(ICmp, LHS, RHS, "smax");
1770 Value *ICmp = Builder.CreateICmpUGT(LHS, RHS);
1771 Sel = Builder.CreateSelect(ICmp, LHS, RHS, "umax");
1799 Value *ICmp = Builder.CreateICmpSLT(LHS, RHS);
1800 Sel = Builder.CreateSelect(ICmp, LHS, RHS, "smin");
1828 Value *ICmp = Builder.CreateICmpULT(LHS, RHS);
1829 Sel = Builder.CreateSelect(ICmp, LHS, RHS, "umin");
2308 Cost += CmpSelCost(Instruction::ICmp, S->getNumOperands() - 1, 0, 1);
  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/
HardwareLoops.cpp 355 // Check that the icmp is checking for equality of Count and zero and that
357 auto ICmp = cast<ICmpInst>(BI->getCondition());
358 LLVM_DEBUG(dbgs() << " - Found condition: " << *ICmp << "\n");
359 if (!ICmp->isEquality())
362 auto IsCompareZero = [](ICmpInst *ICmp, Value *Count, unsigned OpIdx) {
363 if (auto *Const = dyn_cast<ConstantInt>(ICmp->getOperand(OpIdx)))
364 return Const->isZero() && ICmp->getOperand(OpIdx ^ 1) == Count;
368 if (!IsCompareZero(ICmp, Count, 0) && !IsCompareZero(ICmp, Count, 1))
371 unsigned SuccIdx = ICmp->getPredicate() == ICmpInst::ICMP_NE ? 0 : 1
    [all...]
TypePromotion.cpp 12 /// of selection dag for cyclic regions. The search begins from icmp
60 // %3 = icmp ult i8 %2, 3
89 // %1 = icmp ult i32 %c.off, 3
258 // icmp, switch or store.
270 if (auto *ICmp = dyn_cast<ICmpInst>(V))
271 return ICmp->isSigned() || LessThanTypeSize(ICmp->getOperand(0));
279 // - It is only used by an unsigned icmp.
280 // - The icmp uses a constant.
287 // just underflows the range, the icmp would give the same result whether th
    [all...]
ExpandReductions.cpp 51 return Instruction::ICmp;
  /src/external/apache2/llvm/dist/llvm/lib/Target/SystemZ/
SystemZTDC.cpp 18 // 5: icmp slt (bitcast float X to int), 0 -> tdc X, mask [ie. signbit]
19 // 6: icmp sgt (bitcast float X to int), -1 -> tdc X, mask
20 // 7: icmp ne/eq (call @llvm.s390.tdc.*(X, mask)) -> tdc X, mask/~mask
27 // 1. All fcmp and icmp instructions in a function are checked for a match
95 // Tries to convert an icmp instruction.
244 // All our icmp rules involve comparisons with consts.
248 // Check for icmp+bitcast used for signbit.
256 // icmp slt (bitcast X), 0 - set if sign bit true
259 // icmp sgt (bitcast X), -1 - set if sign bit false
282 // icmp ne (call llvm.s390.tdc(...)), 0 -> simple TD
    [all...]
SystemZTargetTransformInfo.cpp 101 case Instruction::ICmp:
882 case Instruction::ICmp: {
884 // Test. The load is then not foldable, so return 0 cost for the ICmp.
908 if (Opcode == Instruction::ICmp || Opcode == Instruction::FCmp) {
1014 case Instruction::ICmp:
1019 if (UserI->getOpcode() != Instruction::ICmp) {
1047 if (UserI->getOpcode() == Instruction::ICmp)
  /src/external/apache2/llvm/dist/llvm/lib/Target/WebAssembly/
WebAssemblyFastISel.cpp 419 if (const auto *ICmp = dyn_cast<ICmpInst>(V))
420 if (const ConstantInt *C = dyn_cast<ConstantInt>(ICmp->getOperand(1)))
421 if (ICmp->isEquality() && C->isZero() && C->getType()->isIntegerTy(32)) {
422 Not = ICmp->isTrueWhenEqual();
423 return getRegForValue(ICmp->getOperand(0));
1025 const auto *ICmp = cast<ICmpInst>(I);
1027 bool I32 = getSimpleType(ICmp->getOperand(0)->getType()) != MVT::i64;
1030 switch (ICmp->getPredicate()) {
1069 unsigned LHS = getRegForPromotedValue(ICmp->getOperand(0), IsSigned);
1073 unsigned RHS = getRegForPromotedValue(ICmp->getOperand(1), IsSigned)
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/InstCombine/
InstCombineCompares.cpp 64 /// Given an icmp instruction, return true if any use of this comparison is a
73 /// Returns true if the exploded icmp can be expressed as a signed comparison
103 /// we can optimize "icmp eq (load (gep "foo", 0, i)), 0" into "icmp eq i, 3".
379 /// "icmp ne i, 0". Note that, in general, indices can be complex, and scales
381 /// "icmp ne (i*4), 0" (assuming A is a pointer to i32).
812 // and would change the result of the icmp.
971 // Only lower this if the icmp is the only user of the GEP or if we expect
1064 /// Fold "icmp pred (X+C), X".
1112 /// Handle "(icmp eq/ne (ashr/lshr AP2, A), AP1)" -
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Analysis/
CaptureTracking.cpp 335 case Instruction::ICmp: {
IVDescriptors.cpp 249 // To recognize min/max patterns formed by a icmp select sequence, we store
626 case Instruction::ICmp:
859 return Instruction::ICmp;
879 // to check for a pair of icmp/select, for which we use getNextInstruction and
881 // check the icmp/select pair.
889 if (RedOp == Instruction::ICmp || RedOp == Instruction::FCmp)
893 if (RedOp == Instruction::ICmp || RedOp == Instruction::FCmp) {
894 // We are expecting a icmp/select pair, which we go to the next select
904 if (RedOp == Instruction::ICmp || RedOp == Instruction::FCmp) {
CFLGraph.h 185 return CE->getOpcode() != Instruction::ICmp &&
586 case Instruction::ICmp:
ObjCARCInstKind.cpp 286 case Instruction::ICmp:
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
SpeculativeExecution.cpp 246 case Instruction::ICmp:
IndVarSimplify.cpp 701 ICmpInst *ICmp = dyn_cast<ICmpInst>(BI->getCondition());
702 // TODO: Allow non-icmp loop test.
703 if (!ICmp)
707 return ICmp->getOperand(0) == V || ICmp->getOperand(1) == V;
723 // Do LFTR to simplify the exit condition to an ICMP.
728 // Do LFTR to simplify the exit ICMP to EQ/NE
  /src/external/apache2/llvm/dist/llvm/include/llvm/CodeGen/
BasicTTIImpl.h 1256 // %mask = icmp ult <8 x i32> %vec1, %vec2
1425 thisT()->getCmpSelInstrCost(BinaryOperator::ICmp, RetTy, CondTy,
1670 // abs(X) = select(icmp(X,0),X,sub(0,X))
1671 // minmax(X,Y) = select(icmp(X,Y),X,Y)
1674 // TODO: Ideally getCmpSelInstrCost would accept an icmp condition code.
1676 thisT()->getCmpSelInstrCost(BinaryOperator::ICmp, RetTy, CondTy,
1703 thisT()->getCmpSelInstrCost(BinaryOperator::ICmp, RetTy, CondTy,
1771 Instruction::ICmp, SumTy, OverflowTy,
1791 thisT()->getCmpSelInstrCost(BinaryOperator::ICmp, SumTy, OverflowTy,
1822 thisT()->getCmpSelInstrCost(BinaryOperator::ICmp, MulTy, OverflowTy
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Instrumentation/
ControlHeightReduction.cpp 1519 // Negate the predicate if an ICmp if it's used only by branches or selects by
1521 static bool negateICmpIfUsedByBranchOrSelectOnly(ICmpInst *ICmp,
1524 for (User *U : ICmp->users()) {
1529 if (isa<SelectInst>(U) && cast<SelectInst>(U)->getCondition() == ICmp)
1533 for (User *U : ICmp->users()) {
1563 ICmp->setPredicate(CmpInst::getInversePredicate(ICmp->getPredicate()));
1954 // If Cond is an icmp and all users of V except for BranchOrSelect is a
1955 // branch, negate the icmp predicate and swap the branch targets and avoid
1958 if (auto *ICmp = dyn_cast<ICmpInst>(Cond)
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/ARM/
MVELaneInterleavingPass.cpp 233 case Instruction::ICmp:
  /src/external/apache2/llvm/dist/llvm/lib/Target/NVPTX/
NVPTXGenericToNVVM.cpp 258 case Instruction::ICmp:
259 // CompareConstantExpr (icmp)
  /src/external/apache2/llvm/dist/llvm/lib/IR/
ConstantsContext.h 313 // behind the scenes to implement ICmp and FCmp constant expressions. This is
334 return CE->getOpcode() == Instruction::ICmp ||
635 case Instruction::ICmp:
636 return new CompareConstantExpr(Ty, Instruction::ICmp, SubclassData,
  /src/external/apache2/llvm/dist/llvm/lib/Target/AMDGPU/
AMDGPUPromoteAlloca.cpp 89 /// indices to an instruction with 2 pointer inputs (e.g. select, icmp).
647 if (ICmpInst *ICmp = dyn_cast<ICmpInst>(UseInst)) {
648 if (!binaryOpIsDerivedFromSameAlloca(BaseAlloca, Val, ICmp, 0, 1))
652 WorkList.push_back(ICmp);
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Vectorize/
VectorCombine.cpp 300 assert((Opcode == Instruction::ICmp || Opcode == Instruction::FCmp) &&
716 : Instruction::ICmp;
  /src/external/apache2/llvm/dist/llvm/lib/Target/AArch64/GISel/
AArch64InstructionSelector.cpp 121 bool selectCompareBranchFedByICmp(MachineInstr &I, MachineInstr &ICmp,
123 bool tryOptCompareBranchFedByICmp(MachineInstr &I, MachineInstr &ICmp,
1478 MachineInstr &I, MachineInstr &ICmp, MachineIRBuilder &MIB) const {
1479 assert(ICmp.getOpcode() == TargetOpcode::G_ICMP);
1492 static_cast<CmpInst::Predicate>(ICmp.getOperand(1).getPredicate());
1493 Register LHS = ICmp.getOperand(2).getReg();
1494 Register RHS = ICmp.getOperand(3).getReg();
1564 MachineInstr &I, MachineInstr &ICmp, MachineIRBuilder &MIB) const {
1565 assert(ICmp.getOpcode() == TargetOpcode::G_ICMP);
1567 if (tryOptCompareBranchFedByICmp(I, ICmp, MIB)
    [all...]

Completed in 87 milliseconds

1 2 3