LLVM: llvm::objcarc::PtrState Class Reference (original) (raw)
This class summarizes several per-pointer runtime properties which are propagated through the flow graph. More...
#include "[Transforms/ObjCARC/PtrState.h](PtrState%5F8h%5Fsource.html)"
| Protected Member Functions |
|
| Protected Attributes |
|
| bool |
KnownPositiveRefCount = false |
|
True if the reference count is known to be incremented. |
| bool |
Partial = false |
|
True if we've seen an opportunity for partial RR elimination, such as pushing calls into a CFG triangle or into one side of a CFG diamond. |
| unsigned char |
Seq: 8 |
|
The current position in the sequence. |
| RRInfo |
RRI |
|
Unidirectional information about the current sequence. |
This class summarizes several per-pointer runtime properties which are propagated through the flow graph.
Definition at line 100 of file PtrState.h.
| llvm::objcarc::PtrState::PtrState ( ) |
inlineprotected |
◆ ClearKnownPositiveRefCount()
| void PtrState::ClearKnownPositiveRefCount |
( |
) |
◆ ClearReverseInsertPts()
| void llvm::objcarc::PtrState::ClearReverseInsertPts ( ) |
inline |
◆ ClearSequenceProgress()
| void llvm::objcarc::PtrState::ClearSequenceProgress ( ) |
inline |
| const MDNode * llvm::objcarc::PtrState::GetReleaseMetadata ( ) const |
inline |
◆ GetRRInfo()
| const RRInfo & llvm::objcarc::PtrState::GetRRInfo ( ) const |
inline |
◆ GetSeq()
| Sequence llvm::objcarc::PtrState::GetSeq ( ) const |
inline |
◆ HasKnownPositiveRefCount()
| bool llvm::objcarc::PtrState::HasKnownPositiveRefCount ( ) const |
inline |
◆ HasReverseInsertPts()
| bool llvm::objcarc::PtrState::HasReverseInsertPts ( ) const |
inline |
◆ InsertCall()
| void llvm::objcarc::PtrState::InsertCall ( Instruction * I) |
inline |
◆ InsertReverseInsertPt()
| void llvm::objcarc::PtrState::InsertReverseInsertPt ( Instruction * I) |
inline |
◆ IsCFGHazardAfflicted()
| bool llvm::objcarc::PtrState::IsCFGHazardAfflicted ( ) const |
inline |
◆ IsKnownSafe()
| bool llvm::objcarc::PtrState::IsKnownSafe ( ) const |
inline |
◆ IsTailCallRelease()
| bool llvm::objcarc::PtrState::IsTailCallRelease ( ) const |
inline |
◆ IsTrackingImpreciseReleases()
| bool llvm::objcarc::PtrState::IsTrackingImpreciseReleases ( ) const |
inline |
◆ Merge()
◆ ResetSequenceProgress()
| void PtrState::ResetSequenceProgress |
( |
Sequence |
NewSeq |
) |
◆ SetCFGHazardAfflicted()
| void llvm::objcarc::PtrState::SetCFGHazardAfflicted ( const bool NewValue) |
inline |
◆ SetKnownPositiveRefCount()
| void PtrState::SetKnownPositiveRefCount |
( |
) |
◆ SetKnownSafe()
| void llvm::objcarc::PtrState::SetKnownSafe ( const bool NewValue) |
inline |
| void llvm::objcarc::PtrState::SetReleaseMetadata ( MDNode * NewValue) |
inline |
◆ SetSeq()
| void PtrState::SetSeq |
( |
Sequence |
NewSeq |
) |
◆ SetTailCallRelease()
| void llvm::objcarc::PtrState::SetTailCallRelease ( const bool NewValue) |
inline |
◆ KnownPositiveRefCount
| bool llvm::objcarc::PtrState::KnownPositiveRefCount = false |
protected |
◆ Partial
| bool llvm::objcarc::PtrState::Partial = false |
protected |
True if we've seen an opportunity for partial RR elimination, such as pushing calls into a CFG triangle or into one side of a CFG diamond.
Definition at line 107 of file PtrState.h.
Referenced by Merge(), and ResetSequenceProgress().
◆ RRI
| RRInfo llvm::objcarc::PtrState::RRI |
protected |
Unidirectional information about the current sequence.
Definition at line 113 of file PtrState.h.
Referenced by ClearReverseInsertPts(), GetReleaseMetadata(), GetRRInfo(), HasReverseInsertPts(), InsertCall(), InsertReverseInsertPt(), IsCFGHazardAfflicted(), IsKnownSafe(), IsTailCallRelease(), IsTrackingImpreciseReleases(), Merge(), ResetSequenceProgress(), SetCFGHazardAfflicted(), SetKnownSafe(), SetReleaseMetadata(), and SetTailCallRelease().
◆ Seq
The documentation for this class was generated from the following files: