diff options
author | Chris Lattner <sabre@nondot.org> | 2002-12-15 18:40:01 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2002-12-15 18:40:01 +0000 |
commit | aa8dad5561f148d4706612549808d024f5bc43cb (patch) | |
tree | 8c96fd91633617e919e3618409afe181e936291b /include | |
parent | dd444f9242df810c36a98663904b9ecdcb36284d (diff) | |
download | external_llvm-aa8dad5561f148d4706612549808d024f5bc43cb.zip external_llvm-aa8dad5561f148d4706612549808d024f5bc43cb.tar.gz external_llvm-aa8dad5561f148d4706612549808d024f5bc43cb.tar.bz2 |
* Rename const_regclass_begin/end to just regclass_begin/end
* Regclass iterators need an extra level of pointerness to work right
* Pull inverse mapping code out of target description files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5046 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Target/MRegisterInfo.h | 26 |
1 files changed, 3 insertions, 23 deletions
diff --git a/include/llvm/Target/MRegisterInfo.h b/include/llvm/Target/MRegisterInfo.h index 577d59c..b7613c4 100644 --- a/include/llvm/Target/MRegisterInfo.h +++ b/include/llvm/Target/MRegisterInfo.h @@ -10,7 +10,6 @@ #define LLVM_TARGET_MREGISTERINFO_H #include "llvm/CodeGen/MachineBasicBlock.h" -#include <map> #include <assert.h> class Type; @@ -61,15 +60,6 @@ public: virtual unsigned getDataSize() const { return 0; } - void - buildReg2RegClassMap(std::map<unsigned,const TargetRegisterClass*>& - Reg2RegClassMap) const - { - for (unsigned i=0; i < getNumRegs(); ++i) { - Reg2RegClassMap[getRegister(i)] = this; - } - } - //const std::vector<unsigned> &getRegsInClass(void) { return Regs; } //void getAliases(void); }; @@ -156,23 +146,13 @@ public: virtual unsigned getStackPointer() const = 0; /// Register class iterators - typedef const TargetRegisterClass* const_iterator; + typedef const TargetRegisterClass** const_iterator; - virtual const_iterator const_regclass_begin() const = 0; - virtual const_iterator const_regclass_end() const = 0; + virtual const_iterator regclass_begin() const = 0; + virtual const_iterator regclass_end() const = 0; virtual unsigned getNumRegClasses() const = 0; virtual const TargetRegisterClass* getRegClassForType(const Type* Ty) const=0; - - virtual void - buildReg2RegClassMap(std::map<unsigned,const TargetRegisterClass*>& - Reg2RegClassMap) const { - for (MRegisterInfo::const_iterator I = const_regclass_begin(), - E = const_regclass_end(); I != E; ++I) { - I->buildReg2RegClassMap(Reg2RegClassMap); - } - } - }; #endif |