LLVM
8.0.1
|
Keep track of frame indices allocated for statepoints as they could be used across basic block boundaries. More...
#include "llvm/CodeGen/FunctionLoweringInfo.h"
Public Types | |
using | SlotMapTy = DenseMap< const Value *, Optional< int > > |
Public Member Functions | |
SlotMapTy::const_iterator | find (const Value *V) const |
SlotMapTy::const_iterator | end () const |
Public Attributes | |
SlotMapTy | SlotMap |
Maps uniqued llvm IR values to the slots they were spilled in. More... | |
DenseMap< const Value *, const Value * > | DuplicateMap |
Maps llvm IR values to the values they were de-duplicated to. More... | |
Keep track of frame indices allocated for statepoints as they could be used across basic block boundaries.
This struct is more complex than a simple map because the stateopint lowering code de-duplicates gc pointers based on their SDValue (so p and (bitcast p to T) will get the same slot), and we track that here.
Definition at line 141 of file FunctionLoweringInfo.h.
using llvm::FunctionLoweringInfo::StatepointSpillMap::SlotMapTy = DenseMap<const Value *, Optional<int> > |
Definition at line 142 of file FunctionLoweringInfo.h.
|
inline |
Definition at line 159 of file FunctionLoweringInfo.h.
References llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end().
|
inline |
Definition at line 152 of file FunctionLoweringInfo.h.
References llvm::DenseMapBase< DenseMap< KeyT, ValueT, KeyInfoT, BucketT >, KeyT, ValueT, KeyInfoT, BucketT >::end(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find(), and llvm::DenseMapBase< DenseMap< KeyT, ValueT, KeyInfoT, BucketT >, KeyT, ValueT, KeyInfoT, BucketT >::find().
Maps llvm IR values to the values they were de-duplicated to.
Definition at line 150 of file FunctionLoweringInfo.h.
Referenced by removeDuplicateGCPtrs().
SlotMapTy llvm::FunctionLoweringInfo::StatepointSpillMap::SlotMap |
Maps uniqued llvm IR values to the slots they were spilled in.
If a value is mapped to None it means we visited the value but didn't spill it (because it was a constant, for instance).
Definition at line 147 of file FunctionLoweringInfo.h.