mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-25 16:24:23 +00:00
Add a new InvalidateStructLayoutInfo method and some comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25303 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -113,7 +113,16 @@ public:
|
|||||||
uint64_t getIndexedOffset(const Type *Ty,
|
uint64_t getIndexedOffset(const Type *Ty,
|
||||||
const std::vector<Value*> &Indices) const;
|
const std::vector<Value*> &Indices) const;
|
||||||
|
|
||||||
|
/// getStructLayout - Return a StructLayout object, indicating the alignment
|
||||||
|
/// of the struct, its size, and the offsets of its fields. Note that this
|
||||||
|
/// information is lazily cached.
|
||||||
const StructLayout *getStructLayout(const StructType *Ty) const;
|
const StructLayout *getStructLayout(const StructType *Ty) const;
|
||||||
|
|
||||||
|
/// InvalidateStructLayoutInfo - TargetData speculatively caches StructLayout
|
||||||
|
/// objects. If a TargetData object is alive when types are being refined and
|
||||||
|
/// removed, this method must be called whenever a StructType is removed to
|
||||||
|
/// avoid a dangling pointer in this cache.
|
||||||
|
void InvalidateStructLayoutInfo(const StructType *Ty) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
/// StructLayout - used to lazily calculate structure layout information for a
|
/// StructLayout - used to lazily calculate structure layout information for a
|
||||||
|
Reference in New Issue
Block a user