-// TargetData Hack: Eventually we will have annotations given to us by the
-// backend so that we know stuff about type size and alignments. For now
-// though, just use this, because it happens to match the model that GCC uses.
-//
-const TargetData TD("LevelRaise: Should be GCC though!");
-
-
-static const Type *getStructOffsetStep(const StructType *STy, unsigned &Offset,
- std::vector<Value*> &Indices) {
+static const Type *getStructOffsetStep(const StructType *STy, uint64_t &Offset,
+ std::vector<Value*> &Indices,
+ const TargetData &TD) {