|
LLVM 24.0.0git
|
Simple state for a set. More...
#include "llvm/Transforms/IPO/Attributor.h"
Classes | |
| struct | SetContents |
| A wrapper around a set that has semantics for handling unions and intersections with a "universal" set that contains all elements. More... | |
Public Member Functions | |
| SetState () | |
| SetState (const DenseSet< BaseTy > &Known) | |
| Initializes the known state with an initial set and initializes the assumed state as universal. | |
| bool | isValidState () const override |
| Return if this abstract state is in a valid state. | |
| bool | isAtFixpoint () const override |
| Return if this abstract state is fixed, thus does not need to be updated if information changes as it cannot change itself. | |
| ChangeStatus | indicateOptimisticFixpoint () override |
| Indicate that the abstract state should converge to the optimistic state. | |
| ChangeStatus | indicatePessimisticFixpoint () override |
| Indicate that the abstract state should converge to the pessimistic state. | |
| const SetContents & | getKnown () const |
| Return the known state encoding. | |
| const SetContents & | getAssumed () const |
| Return the assumed state encoding. | |
| bool | setContains (const BaseTy &Elem) const |
| Returns if the set state contains the element. | |
| bool | getIntersection (const SetContents &RHS) |
Performs the set intersection between this set and RHS. | |
| bool | getUnion (const SetContents &RHS) |
Performs the set union between this set and RHS. | |
| Public Member Functions inherited from llvm::AbstractState | |
| virtual | ~AbstractState ()=default |
Simple state for a set.
This represents a state containing a set of values. The interface supports modelling sets that contain all possible elements. The state's internal value is modified using union or intersection operations.
Definition at line 3019 of file Attributor.h.
|
inline |
Definition at line 3081 of file Attributor.h.
|
inline |
Initializes the known state with an initial set and initializes the assumed state as universal.
Definition at line 3085 of file Attributor.h.
|
inline |
Return the assumed state encoding.
Definition at line 3108 of file Attributor.h.
|
inline |
Performs the set intersection between this set and RHS.
Returns true if changes were made.
Definition at line 3117 of file Attributor.h.
References RHS.
|
inline |
Return the known state encoding.
Definition at line 3105 of file Attributor.h.
|
inline |
Performs the set union between this set and RHS.
Returns true if changes were made.
Definition at line 3132 of file Attributor.h.
References RHS.
|
inlineoverridevirtual |
Indicate that the abstract state should converge to the optimistic state.
This will usually make the optimistically assumed state the known to be true state.
Implements llvm::AbstractState.
Definition at line 3092 of file Attributor.h.
References llvm::UNCHANGED.
|
inlineoverridevirtual |
Indicate that the abstract state should converge to the pessimistic state.
This will usually revert the optimistically assumed state to the known to be true state.
Implements llvm::AbstractState.
Definition at line 3098 of file Attributor.h.
References llvm::CHANGED.
|
inlineoverridevirtual |
Return if this abstract state is fixed, thus does not need to be updated if information changes as it cannot change itself.
Implements llvm::AbstractState.
Definition at line 3090 of file Attributor.h.
|
inlineoverridevirtual |
Return if this abstract state is in a valid state.
If false, no information provided should be used.
Implements llvm::AbstractState.
Definition at line 3088 of file Attributor.h.
|
inline |
Returns if the set state contains the element.
Definition at line 3111 of file Attributor.h.