class ConstraintSystem
Declaration
class ConstraintSystem { /* full declaration omitted */ };
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:20
Member Variables
- private SmallVector<SmallVector<int64_t, 8>, 4> Constraints
- Current linear constraints in the system. An entry of the form c0, c1, ... cn represents the following constraint: c0 >= v0 * c1 + .... + v{n-1} * cn
- private uint32_t GCD = 1
- Current greatest common divisor for all coefficients in the system.
Method Overview
- public bool addVariableRow(ArrayRef<int64_t> R)
- public bool addVariableRowFill(ArrayRef<int64_t> R)
- private void dump() const
- public void dump(ArrayRef<std::string> Names) const
- private bool eliminateUsingFM()
- public ArrayRef<int64_t> getLastConstraint()
- public bool isConditionImplied(SmallVector<int64_t, 8> R) const
- public bool mayHaveSolution()
- private bool mayHaveSolutionImpl()
- public static SmallVector<int64_t, 8> negate(SmallVector<int64_t, 8> R)
- public void popLastConstraint()
- public void popLastNVariables(unsigned int N)
- public unsigned int size() const
Methods
¶bool addVariableRow(ArrayRef<int64_t> R)
bool addVariableRow(ArrayRef<int64_t> R)
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:39
Parameters
- ArrayRef<int64_t> R
¶bool addVariableRowFill(ArrayRef<int64_t> R)
bool addVariableRowFill(ArrayRef<int64_t> R)
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:55
Parameters
- ArrayRef<int64_t> R
¶void dump() const
void dump() const
Description
Print the constraints in the system, using x0...xn as variable names.
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:33
¶void dump(ArrayRef<std::string> Names) const
void dump(ArrayRef<std::string> Names) const
Description
Print the constraints in the system, using \p Names as variable names.
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:95
Parameters
- ArrayRef<std::string> Names
¶bool eliminateUsingFM()
bool eliminateUsingFM()
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:30
¶ArrayRef<int64_t> getLastConstraint()
ArrayRef<int64_t> getLastConstraint()
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:82
¶bool isConditionImplied(
SmallVector<int64_t, 8> R) const
bool isConditionImplied(
SmallVector<int64_t, 8> R) const
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:80
Parameters
- SmallVector<int64_t, 8> R
¶bool mayHaveSolution()
bool mayHaveSolution()
Description
Returns true if there may be a solution for the constraints in the system.
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:69
¶bool mayHaveSolutionImpl()
bool mayHaveSolutionImpl()
Description
Returns true if there may be a solution for the constraints in the system.
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:36
¶static SmallVector<int64_t, 8> negate(
SmallVector<int64_t, 8> R)
static SmallVector<int64_t, 8> negate(
SmallVector<int64_t, 8> R)
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:71
Parameters
- SmallVector<int64_t, 8> R
¶void popLastConstraint()
void popLastConstraint()
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:83
¶void popLastNVariables(unsigned int N)
void popLastNVariables(unsigned int N)
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:84
Parameters
- unsigned int N
¶unsigned int size() const
unsigned int size() const
Description
Returns the number of rows in the constraint system.
Declared at: llvm/include/llvm/Analysis/ConstraintSystem.h:92