diff options
| author | Chris Lattner <sabre@nondot.org> | 2001-08-27 15:49:16 +0000 | 
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2001-08-27 15:49:16 +0000 | 
| commit | ab759f00c3c9842c149e8c155e69331dd835a2d1 (patch) | |
| tree | 1fde31368177c671f6af5819b387bb33fa35cd1e /llvm | |
| parent | f93e63a189fa18d7ea74f53185379b393c02b3ae (diff) | |
| download | bcm5719-llvm-ab759f00c3c9842c149e8c155e69331dd835a2d1.tar.gz bcm5719-llvm-ab759f00c3c9842c149e8c155e69331dd835a2d1.zip | |
Remove target specific code, move to TargetData.cpp file
llvm-svn: 377
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/include/llvm/DerivedTypes.h | 51 | 
1 files changed, 1 insertions, 50 deletions
| diff --git a/llvm/include/llvm/DerivedTypes.h b/llvm/include/llvm/DerivedTypes.h index 6b3fd1fc48b..eae4b7357e6 100644 --- a/llvm/include/llvm/DerivedTypes.h +++ b/llvm/include/llvm/DerivedTypes.h @@ -12,12 +12,10 @@  #define LLVM_DERIVED_TYPES_H  #include "llvm/Type.h" -#include "llvm/CodeGen/TargetMachine.h"  #include <vector>  // Future derived types: SIMD packed format -  class MethodType : public Type {  public:    typedef vector<const Type*> ParamTypes; @@ -87,13 +85,7 @@ public:  private:    ElementTypes ETypes; -  struct StructSizeAndOffsetInfo { -    int storageSize;			// -1 until the value is computd -    vector<int> memberOffsets;		// -1 until values are computed  -    const TargetMachine* targetInfo; -  } *layoutCache; -   -private: +    StructType(const StructType &);                   // Do not implement    const StructType &operator=(const StructType &);  // Do not implement @@ -105,53 +97,12 @@ protected:    // Private ctor - Only can be created by a static member...    StructType(const vector<const Type*> &Types, const string &Name); -  // Reset cached info so it will be computed when first requested -  void ResetCachedInfo() const { -    layoutCache->storageSize = -1; -    layoutCache->memberOffsets.insert(layoutCache->memberOffsets.begin(), -				      ETypes.size(), -1); -    layoutCache->targetInfo = 0; -  } -    public:    inline const ElementTypes &getElementTypes() const { return ETypes; }    static const StructType *getStructType(const ElementTypes &Params);    static const StructType *get(const ElementTypes &Params) {      return getStructType(Params);    } - - -  unsigned int getStorageSize(const TargetMachine& tmi) const { -    if (layoutCache->targetInfo && layoutCache->targetInfo != &tmi) { -      // target machine has changed (hey it could happen). discard cached info. -      ResetCachedInfo(); -      layoutCache->targetInfo = &tmi; -    } -   -    if (layoutCache->storageSize < 0) { -      layoutCache->storageSize = tmi.findOptimalStorageSize(this); -      assert(layoutCache->storageSize >= 0); -    } -    return layoutCache->storageSize; -  } -  unsigned int getElementOffset(int i, const TargetMachine& tmi) const { -    // target machine has changed (hey it could happen). discard cached info. -    if (layoutCache->targetInfo && layoutCache->targetInfo != &tmi) -      ResetCachedInfo(); -   -    if (layoutCache->memberOffsets[i] < 0) { -      layoutCache->targetInfo = &tmi;  // remember which target was used -       -      unsigned int *offsetVec = tmi.findOptimalMemberOffsets(this); -      for (unsigned i=0, N=layoutCache->memberOffsets.size(); i < N; ++i) { -	layoutCache->memberOffsets[i] = offsetVec[i]; -	assert(layoutCache->memberOffsets[i] >= 0); -      } -      delete[] offsetVec;  -    } -     -    return layoutCache->memberOffsets[i]; -  }  }; | 

