diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2012-02-09 12:35:37 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2012-02-09 12:35:37 +0000 |
commit | 2c6ae095b8a944c8355377498b9ad11bb94af2d5 (patch) | |
tree | 4be438a1a3d237e012f309771ef894a9196480f7 /include/llvm/Target | |
parent | 133f9d989485376ce8ad0d6c61ba12e913fa6366 (diff) | |
download | external_llvm-2c6ae095b8a944c8355377498b9ad11bb94af2d5.zip external_llvm-2c6ae095b8a944c8355377498b9ad11bb94af2d5.tar.gz external_llvm-2c6ae095b8a944c8355377498b9ad11bb94af2d5.tar.bz2 |
Store just the SimpleValueType in the generated VT tables for each register class, eliminating static ctors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150173 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Target')
-rw-r--r-- | include/llvm/Target/TargetRegisterInfo.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/include/llvm/Target/TargetRegisterInfo.h b/include/llvm/Target/TargetRegisterInfo.h index 449f3d1..18f6fc3 100644 --- a/include/llvm/Target/TargetRegisterInfo.h +++ b/include/llvm/Target/TargetRegisterInfo.h @@ -36,7 +36,7 @@ class TargetRegisterClass { public: typedef const unsigned* iterator; typedef const unsigned* const_iterator; - typedef const EVT* vt_iterator; + typedef const MVT::SimpleValueType* vt_iterator; typedef const TargetRegisterClass* const * sc_iterator; private: virtual void anchor(); @@ -46,7 +46,8 @@ private: const sc_iterator SuperClasses; const sc_iterator SuperRegClasses; public: - TargetRegisterClass(const MCRegisterClass *MC, const EVT *vts, + TargetRegisterClass(const MCRegisterClass *MC, + const MVT::SimpleValueType *vts, const unsigned *subcm, const TargetRegisterClass * const *supcs, const TargetRegisterClass * const *superregcs) @@ -110,7 +111,7 @@ public: /// bool hasType(EVT vt) const { for(int i = 0; VTs[i] != MVT::Other; ++i) - if (VTs[i] == vt) + if (EVT(VTs[i]) == vt) return true; return false; } |