This class represents lattice values for constants.
Synopsis
Declared in <llvm/Analysis/ValueLattice.h>
class ValueLatticeElement;
Description
FIXME: This is basically just for bringup, this can be made a lot more rich in the future.
Types
Name |
Description |
Struct to control some aspects related to merging constant ranges. |
Member Functions
Name |
Description |
|
Constructors |
|
Destroy the lattice element and any owned range. |
Assignment operators |
|
Return this value as a constant integer if it is one. |
|
|
|
Compare this symbolic value with |
|
Return the known constant value. |
|
Return the constant range for this value. |
|
Return the constant this value is known not to equal. |
|
Return the number of constant‐range extensions performed. |
|
Combine two sets of facts about the same value into one. |
|
Return true if this lattice element is a specific constant. |
|
Return true if this value is a constant range. |
|
Return true if this is a constant range that may also be undef. |
|
Return true if this lattice element is a not‐constant value. |
|
Return true if this lattice element is overdefined. |
|
Return true if this lattice element is undef. |
|
Return true if this lattice element is unknown. |
|
Return true if this lattice element is unknown or undef. |
|
Mark this lattice element as constant |
|
Mark this lattice element as constant range |
|
Mark this lattice element as not equal to constant |
|
Mark this lattice element as overdefined. |
|
Mark this lattice element as undef. |
|
Return whether this constant may have different provenance. |
|
Updates this object to approximate both this object and RHS. Returns true if this object has been changed. |
|
Set whether this constant may have different provenance. |
|
Set the number of constant‐range extensions. |
Static Member Functions
Name |
Description |
Create a lattice element for constant |
|
Create a lattice element for a value known not equal to |
|
Create an overdefined lattice element. |
|
Create a lattice element for constant range |