|
LLVM
4.0.0
|
A grouping of pointers. More...
#include <LoopAccessAnalysis.h>
Public Member Functions | |
| CheckingPtrGroup (unsigned Index, RuntimePointerChecking &RtCheck) | |
Create a new pointer checking group containing a single pointer, with index Index in RtCheck. More... | |
| bool | addPointer (unsigned Index) |
Tries to add the pointer recorded in RtCheck at index Index to this pointer checking group. More... | |
Public Attributes | |
| RuntimePointerChecking & | RtCheck |
| Constitutes the context of this pointer checking group. More... | |
| const SCEV * | High |
| The SCEV expression which represents the upper bound of all the pointers in this group. More... | |
| const SCEV * | Low |
| The SCEV expression which represents the lower bound of all the pointers in this group. More... | |
| SmallVector< unsigned, 2 > | Members |
| Indices of all the pointers that constitute this grouping. More... | |
A grouping of pointers.
A single memcheck is required between two groups.
Definition at line 386 of file LoopAccessAnalysis.h.
|
inline |
Create a new pointer checking group containing a single pointer, with index Index in RtCheck.
Definition at line 389 of file LoopAccessAnalysis.h.
References Members, and llvm::SmallVectorTemplateBase< T, isPodLike >::push_back().
Tries to add the pointer recorded in RtCheck at index Index to this pointer checking group.
We can only add a pointer to a checking group if we will still be able to get the upper and lower bounds of the check. Returns true in case of success, false otherwise.
Definition at line 300 of file LoopAccessAnalysis.cpp.
References llvm::WebAssembly::End, getMinFromExprs(), High, Low, Members, llvm::RuntimePointerChecking::Pointers, llvm::SmallVectorTemplateBase< T, isPodLike >::push_back(), and RtCheck.
The SCEV expression which represents the upper bound of all the pointers in this group.
Definition at line 408 of file LoopAccessAnalysis.h.
Referenced by addPointer(), and expandBounds().
The SCEV expression which represents the lower bound of all the pointers in this group.
Definition at line 411 of file LoopAccessAnalysis.h.
Referenced by addPointer(), and expandBounds().
| SmallVector<unsigned, 2> llvm::RuntimePointerChecking::CheckingPtrGroup::Members |
Indices of all the pointers that constitute this grouping.
Definition at line 413 of file LoopAccessAnalysis.h.
Referenced by addPointer(), CheckingPtrGroup(), expandBounds(), and llvm::RuntimePointerChecking::needsChecking().
| RuntimePointerChecking& llvm::RuntimePointerChecking::CheckingPtrGroup::RtCheck |
Constitutes the context of this pointer checking group.
For each pointer that is a member of this group we will retain the index at which it appears in RtCheck.
Definition at line 405 of file LoopAccessAnalysis.h.
Referenced by addPointer().
1.8.6