summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2003-08-15 04:36:19 +0000
committerChris Lattner <sabre@nondot.org>2003-08-15 04:36:19 +0000
commiteb745be508f3eaf6299f136958bd24263b3fa29e (patch)
tree67d7228abb97c5e2af6a468115ab55155a4b6971 /llvm
parent572c69ea1e23bd72b945b2376b2f2bcf8d5dd980 (diff)
downloadbcm5719-llvm-eb745be508f3eaf6299f136958bd24263b3fa29e.tar.gz
bcm5719-llvm-eb745be508f3eaf6299f136958bd24263b3fa29e.zip
Ignore dummy register classes
llvm-svn: 7871
Diffstat (limited to 'llvm')
-rw-r--r--llvm/support/tools/TableGen/RegisterInfoEmitter.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/llvm/support/tools/TableGen/RegisterInfoEmitter.cpp b/llvm/support/tools/TableGen/RegisterInfoEmitter.cpp
index 9ef5f020a28..af3efe3a9c4 100644
--- a/llvm/support/tools/TableGen/RegisterInfoEmitter.cpp
+++ b/llvm/support/tools/TableGen/RegisterInfoEmitter.cpp
@@ -53,8 +53,11 @@ void RegisterInfoEmitter::runHeader(std::ostream &OS) {
OS << "namespace " << TargetName << " { // Register classes\n";
for (unsigned i = 0, e = RegisterClasses.size(); i != e; ++i) {
+ if (RegisterClasses[i]->getValueAsBit("isDummyClass"))
+ continue; // Ignore dummies
+
const std::string &Name = RegisterClasses[i]->getName();
- if (Name.size() < 9 || Name[9] != '.') // Ignore anonymous classes
+ if (Name.size() < 9 || Name[9] != '.') // Ignore anonymous classes
OS << " extern TargetRegisterClass *" << Name << "RegisterClass;\n";
}
OS << "} // end of namespace " << TargetName << "\n\n";
@@ -82,6 +85,8 @@ void RegisterInfoEmitter::run(std::ostream &OS) {
for (unsigned rc = 0, e = RegisterClasses.size(); rc != e; ++rc) {
Record *RC = RegisterClasses[rc];
+ if (RC->getValueAsBit("isDummyClass")) continue; // Ignore dummies
+
std::string Name = RC->getName();
if (Name.size() > 9 && Name[9] == '.') {
static unsigned AnonCounter = 0;
@@ -197,6 +202,9 @@ void RegisterInfoEmitter::run(std::ostream &OS) {
OS << "namespace " << Target.getName() << " { // Register classes\n";
for (unsigned i = 0, e = RegisterClasses.size(); i != e; ++i) {
+ if (RegisterClasses[i]->getValueAsBit("isDummyClass"))
+ continue; // Ignore dummies
+
const std::string &Name = RegisterClasses[i]->getName();
if (Name.size() < 9 || Name[9] != '.') // Ignore anonymous classes
OS << " TargetRegisterClass *" << Name << "RegisterClass = &"
OpenPOWER on IntegriCloud