LLVM: llvm::ConstraintSystem Class Reference (original) (raw)

#include "[llvm/Analysis/ConstraintSystem.h](ConstraintSystem%5F8h%5Fsource.html)"

Public Member Functions
ConstraintSystem ()=default
ConstraintSystem (ArrayRef< Value * > FunctionArgs)
ConstraintSystem (const DenseMap< Value *, unsigned > &Value2Index)
bool addVariableRow (ArrayRef< int64_t > R)
DenseMap< Value *, unsigned > & getValue2Index ()
const DenseMap< Value *, unsigned > & getValue2Index () const
bool addVariableRowFill (ArrayRef< int64_t > R)
LLVM_ABI bool mayHaveSolution ()
Returns true if there may be a solution for the constraints in the system.
LLVM_ABI bool isConditionImplied (SmallVector< int64_t, 8 > R) const
SmallVector< int64_t > getLastConstraint () const
void popLastConstraint ()
void popLastNVariables (unsigned N)
unsigned size () const
Returns the number of rows in the constraint system.
LLVM_ABI void dump () const
Print the constraints in the system.
Static Public Member Functions
static SmallVector< int64_t, 8 > negate (SmallVector< int64_t, 8 > R)
static SmallVector< int64_t, 8 > negateOrEqual (SmallVector< int64_t, 8 > R)
Multiplies each coefficient in the given vector by -1.
static SmallVector< int64_t, 8 > toStrictLessThan (SmallVector< int64_t, 8 > R)
Converts the given vector to form a strict less than inequality.

Definition at line 23 of file ConstraintSystem.h.

llvm::ConstraintSystem::ConstraintSystem ( ) default

ConstraintSystem() [2/3]

llvm::ConstraintSystem::ConstraintSystem ( ArrayRef< Value * > FunctionArgs) inline

ConstraintSystem() [3/3]

addVariableRow()

bool llvm::ConstraintSystem::addVariableRow ( ArrayRef< int64_t > R) inline

addVariableRowFill()

bool llvm::ConstraintSystem::addVariableRowFill ( ArrayRef< int64_t > R) inline

dump()

void ConstraintSystem::dump ( ) const

getLastConstraint()

SmallVector< int64_t > llvm::ConstraintSystem::getLastConstraint ( ) const inline

getValue2Index() [1/2]

getValue2Index() [2/2]

isConditionImplied()

bool ConstraintSystem::isConditionImplied ( SmallVector< int64_t, 8 > R ) const

mayHaveSolution()

bool ConstraintSystem::mayHaveSolution ( )

negate()

negateOrEqual()

popLastConstraint()

void llvm::ConstraintSystem::popLastConstraint ( ) inline

popLastNVariables()

void llvm::ConstraintSystem::popLastNVariables ( unsigned N) inline

size()

unsigned llvm::ConstraintSystem::size ( ) const inline

toStrictLessThan()

SmallVector< int64_t, 8 > llvm::ConstraintSystem::toStrictLessThan ( SmallVector< int64_t, 8 > R) inlinestatic

Converts the given vector to form a strict less than inequality.

Does not modify the original vector.

Parameters

R The vector of coefficients to be converted.

Definition at line 139 of file ConstraintSystem.h.

References llvm::SubOverflow().


The documentation for this class was generated from the following files: