Home | History | Annotate | Download | only in Scalar

Lines Matching refs:Constant

245     bool UnswitchIfProfitable(Value *LoopCond, Constant *Val,
247 void UnswitchTrivialCondition(Loop *L, Value *Cond, Constant *Val,
249 void UnswitchNontrivialCondition(Value *LIC, Constant *OnVal, Loop *L,
253 Constant *Val, bool isEqual);
255 void EmitPreheaderBranchOnCondition(Value *LIC, Constant *Val,
409 if (isa<Constant>(Cond)) return nullptr;
560 Constant *UnswitchVal = nullptr;
567 Constant *UnswitchValCandidate = i.getCaseValue();
653 bool LoopUnswitch::UnswitchIfProfitable(Value *LoopCond, Constant *Val,
726 void LoopUnswitch::EmitPreheaderBranchOnCondition(Value *LIC, Constant *Val,
760 void LoopUnswitch::UnswitchTrivialCondition(Loop *L, Value *Cond, Constant *Val,
802 /// Check if the first non-constant condition starting from the loop header is
814 // unconditional branch or constant foldable conditional branch, but
815 // should also consider adding constant foldable switch instruction in
817 // the successor as well. An alternative is to constant fold conditions
825 // constant). Since unswitching generates branches with constant conditions,
844 // FIXME: add check for constant foldable switch instructions.
865 Constant *CondVal = nullptr;
969 void LoopUnswitch::UnswitchNontrivialCondition(Value *LIC, Constant *Val,
1108 // changed to another value or a constant. If its a constant, don't simplify
1111 LICHandle && !isa<Constant>(LICHandle))
1149 Constant *Val,
1151 assert(!isa<Constant>(LIC) && "Why are we unswitching on a constant?");
1265 /// constant prop, dce, and fold control flow where possible. Note that this is