diff options
| author | Chris Lattner <sabre@nondot.org> | 2005-11-13 03:26:12 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2005-11-13 03:26:12 +0000 |
| commit | ee8cd4e66d13f0448967bcec6b412b1381104422 (patch) | |
| tree | 64cff606762b666571368e384e04eeef81ce8585 | |
| parent | 06b453b2dc99b920e44e23e3a6cb6d0b3823323f (diff) | |
| download | bcm5719-llvm-ee8cd4e66d13f0448967bcec6b412b1381104422.tar.gz bcm5719-llvm-ee8cd4e66d13f0448967bcec6b412b1381104422.zip | |
Shrink derived types by 8 bytes each by not having to have 2 vtables pointers
and other MI overhead.
llvm-svn: 24344
| -rw-r--r-- | llvm/include/llvm/DerivedTypes.h | 2 | ||||
| -rw-r--r-- | llvm/include/llvm/Type.h | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/llvm/include/llvm/DerivedTypes.h b/llvm/include/llvm/DerivedTypes.h index 179f44fbc07..e4b9136802a 100644 --- a/llvm/include/llvm/DerivedTypes.h +++ b/llvm/include/llvm/DerivedTypes.h @@ -31,7 +31,7 @@ class StructValType; class PointerValType; class PackedValType; -class DerivedType : public Type, public AbstractTypeUser { +class DerivedType : public Type { friend class Type; protected: diff --git a/llvm/include/llvm/Type.h b/llvm/include/llvm/Type.h index d69005865d2..68af106ffe4 100644 --- a/llvm/include/llvm/Type.h +++ b/llvm/include/llvm/Type.h @@ -51,7 +51,7 @@ class StructType; class PackedType; class TypeMapBase; -class Type { +class Type : public AbstractTypeUser { public: ///===-------------------------------------------------------------------===// /// Definitions of all of the base types for the Type system. Based on this @@ -341,6 +341,9 @@ private: /// their size is relatively uncommon, move this operation out of line. bool isSizedDerivedType() const; + virtual void refineAbstractType(const DerivedType *OldTy, const Type *NewTy); + virtual void typeBecameConcrete(const DerivedType *AbsTy); + protected: // PromoteAbstractToConcrete - This is an internal method used to calculate // change "Abstract" from true to false when types are refined. |

