summaryrefslogtreecommitdiffstats
path: root/llvm/utils/TableGen/CodeGenRegisters.h
diff options
context:
space:
mode:
authorNate Begeman <natebegeman@mac.com>2005-12-01 04:51:06 +0000
committerNate Begeman <natebegeman@mac.com>2005-12-01 04:51:06 +0000
commit006bb04f3ab11fabf0d7f01149ce687fb508125a (patch)
tree13e8f62ec30ed542e68ffa4a23ce28b5f2ce6ad1 /llvm/utils/TableGen/CodeGenRegisters.h
parentaa5f8f2a262857da781e23fe919e374e98a0151a (diff)
downloadbcm5719-llvm-006bb04f3ab11fabf0d7f01149ce687fb508125a.tar.gz
bcm5719-llvm-006bb04f3ab11fabf0d7f01149ce687fb508125a.zip
Support multiple ValueTypes per RegisterClass, needed for upcoming vector
work. This change has no effect on generated code. llvm-svn: 24563
Diffstat (limited to 'llvm/utils/TableGen/CodeGenRegisters.h')
-rw-r--r--llvm/utils/TableGen/CodeGenRegisters.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/llvm/utils/TableGen/CodeGenRegisters.h b/llvm/utils/TableGen/CodeGenRegisters.h
index 6a9b7907bd8..d719d89d625 100644
--- a/llvm/utils/TableGen/CodeGenRegisters.h
+++ b/llvm/utils/TableGen/CodeGenRegisters.h
@@ -35,13 +35,20 @@ namespace llvm {
Record *TheDef;
std::string Namespace;
std::vector<Record*> Elements;
+ std::vector<MVT::ValueType> VTs;
unsigned SpillSize;
unsigned SpillAlignment;
- MVT::ValueType VT;
std::string MethodProtos, MethodBodies;
const std::string &getName() const;
+ const MVT::ValueType getValueTypeNum(unsigned VTNum) const {
+ if (VTNum < VTs.size())
+ return VTs[VTNum];
+ assert(0 && "VTNum greater than number of ValueTypes in RegClass!");
+ abort();
+ }
+
CodeGenRegisterClass(Record *R);
};
}
OpenPOWER on IntegriCloud