|
LLVM 23.0.0git
|
Represent one information held inside an operand bundle of an llvm.assume. More...
#include "llvm/Analysis/AssumeBundleQueries.h"
Public Member Functions | |
| RetainedKnowledge (Attribute::AttrKind AttrKind=Attribute::None, uint64_t ArgValue=0, Value *WasOn=nullptr) | |
| bool | operator== (RetainedKnowledge Other) const |
| bool | operator!= (RetainedKnowledge Other) const |
| bool | operator< (RetainedKnowledge Other) const |
| This is only intended for use in std::min/stdmax between attribute that only differ in ArgValue. | |
| operator bool () const | |
Static Public Member Functions | |
| static RetainedKnowledge | none () |
Public Attributes | |
| Attribute::AttrKind | AttrKind = Attribute::None |
| uint64_t | ArgValue = 0 |
| Value * | IRArgValue = nullptr |
| Value * | WasOn = nullptr |
Represent one information held inside an operand bundle of an llvm.assume.
AttrKind is the property that holds. WasOn if not null is that Value for which AttrKind holds. ArgValue is optionally an argument of the attribute. For example if we know that P has an alignment of at least four:
Definition at line 77 of file AssumeBundleQueries.h.
|
inline |
Definition at line 82 of file AssumeBundleQueries.h.
References ArgValue, AttrKind, llvm::Attribute::None, and WasOn.
Referenced by none(), operator!=(), operator<(), and operator==().
|
inlinestatic |
Definition at line 100 of file AssumeBundleQueries.h.
References RetainedKnowledge().
Referenced by llvm::getKnowledgeForValue(), and llvm::getKnowledgeFromUse().
|
inline |
Definition at line 99 of file AssumeBundleQueries.h.
References AttrKind, and llvm::Attribute::None.
|
inline |
Definition at line 89 of file AssumeBundleQueries.h.
References llvm::Other, and RetainedKnowledge().
|
inline |
This is only intended for use in std::min/stdmax between attribute that only differ in ArgValue.
Definition at line 92 of file AssumeBundleQueries.h.
References ArgValue, assert(), AttrKind, llvm::Attribute::None, llvm::Other, RetainedKnowledge(), and WasOn.
|
inline |
Definition at line 85 of file AssumeBundleQueries.h.
References ArgValue, AttrKind, IRArgValue, llvm::Other, RetainedKnowledge(), and WasOn.
| uint64_t llvm::RetainedKnowledge::ArgValue = 0 |
Definition at line 79 of file AssumeBundleQueries.h.
Referenced by isDereferenceableAndAlignedPointer(), isDereferenceableAndAlignedPointerViaAssumption(), operator<(), operator==(), and RetainedKnowledge().
| Attribute::AttrKind llvm::RetainedKnowledge::AttrKind = Attribute::None |
Definition at line 78 of file AssumeBundleQueries.h.
Referenced by llvm::getKnowledgeFromUse(), isDereferenceableAndAlignedPointerViaAssumption(), operator bool(), operator<(), operator==(), and RetainedKnowledge().
| Value* llvm::RetainedKnowledge::IRArgValue = nullptr |
Definition at line 80 of file AssumeBundleQueries.h.
Referenced by evaluatePtrAddRecAtMaxBTCWillNotWrap(), llvm::isDereferenceableAndAlignedInLoop(), and operator==().
| Value* llvm::RetainedKnowledge::WasOn = nullptr |
Definition at line 81 of file AssumeBundleQueries.h.
Referenced by operator<(), operator==(), and RetainedKnowledge().