Annotations are now passed around as const objects

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@435 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2001-09-07 16:28:25 +00:00
parent 368216420a
commit 5f30d24175

View File

@ -30,7 +30,7 @@ class TargetData {
unsigned char PointerAlignment; // Defaults to 8 bytes unsigned char PointerAlignment; // Defaults to 8 bytes
AnnotationID AID; // AID for structure layout annotation AnnotationID AID; // AID for structure layout annotation
static Annotation *TypeAnFactory(AnnotationID, Annotable *, void *); static Annotation *TypeAnFactory(AnnotationID, const Annotable *, void *);
public: public:
TargetData(const string &TargetName, unsigned char PtrSize = 8, TargetData(const string &TargetName, unsigned char PtrSize = 8,
unsigned char PtrAl = 8, unsigned char DoubleAl = 8, unsigned char PtrAl = 8, unsigned char DoubleAl = 8,
@ -65,7 +65,7 @@ public:
const vector<ConstPoolVal*> &Indices) const; const vector<ConstPoolVal*> &Indices) const;
inline const StructLayout *getStructLayout(const StructType *Ty) const { inline const StructLayout *getStructLayout(const StructType *Ty) const {
return (const StructLayout*)((Value*)Ty)->getOrCreateAnnotation(AID); return (const StructLayout*)((const Type*)Ty)->getOrCreateAnnotation(AID);
} }
}; };