summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-08-10 19:08:50 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-08-10 19:08:50 +0000
commit26454f794cdaa7583af0d1f840b5a815365ac67b (patch)
treea78dfebc06ef3753bddda0006c4fde3e4ad29bd5
parent0afe2cc09746700f468f5f48c0d161d8958d70b3 (diff)
downloadbcm5719-llvm-26454f794cdaa7583af0d1f840b5a815365ac67b.tar.gz
bcm5719-llvm-26454f794cdaa7583af0d1f840b5a815365ac67b.zip
llvm-mc/AsmMatcher: Remove some code which has been obsoleted by move to
explicit parser match classes. llvm-svn: 78588
-rw-r--r--llvm/utils/TableGen/AsmMatcherEmitter.cpp28
1 files changed, 4 insertions, 24 deletions
diff --git a/llvm/utils/TableGen/AsmMatcherEmitter.cpp b/llvm/utils/TableGen/AsmMatcherEmitter.cpp
index 0356cb8363b..0f3f9ed97f6 100644
--- a/llvm/utils/TableGen/AsmMatcherEmitter.cpp
+++ b/llvm/utils/TableGen/AsmMatcherEmitter.cpp
@@ -293,9 +293,6 @@ struct ClassInfo {
/// N) for the Nth user defined class.
unsigned Kind;
- /// SuperClassKind - The super class kind for user classes.
- unsigned SuperClassKind;
-
/// SuperClass - The super class, or 0.
ClassInfo *SuperClass;
@@ -525,6 +522,7 @@ ClassInfo *AsmMatcherInfo::getTokenClass(const StringRef &Token) {
if (!Entry) {
Entry = new ClassInfo();
Entry->Kind = ClassInfo::Token;
+ Entry->SuperClass = 0;
Entry->ClassName = "Token";
Entry->Name = "MCK_" + getEnumNameForToken(Token);
Entry->ValueName = Token;
@@ -562,7 +560,7 @@ void AsmMatcherInfo::BuildInfo(CodeGenTarget &Target) {
// FIXME: This needs to dice up the RegisterClass instances.
ClassInfo *RegClass = TheRegisterClass = new ClassInfo();
RegClass->Kind = ClassInfo::Register;
- RegClass->SuperClassKind = ClassInfo::Invalid;
+ RegClass->SuperClass = 0;
RegClass->ClassName = "Reg";
RegClass->Name = "MCK_Reg";
RegClass->ValueName = "<register class>";
@@ -661,24 +659,6 @@ void AsmMatcherInfo::BuildInfo(CodeGenTarget &Target) {
Instructions.push_back(II.take());
}
- // Bind user super classes.
- std::map<unsigned, ClassInfo*> UserClasses;
- for (unsigned i = 0, e = Classes.size(); i != e; ++i) {
- ClassInfo &CI = *Classes[i];
- if (CI.isUserClass())
- UserClasses[CI.Kind] = &CI;
- }
-
- for (unsigned i = 0, e = Classes.size(); i != e; ++i) {
- ClassInfo &CI = *Classes[i];
- if (CI.isUserClass() && CI.SuperClassKind != ClassInfo::Invalid) {
- CI.SuperClass = UserClasses[CI.SuperClassKind];
- assert(CI.SuperClass && "Missing super class definition!");
- } else {
- CI.SuperClass = 0;
- }
- }
-
// Reorder classes so that classes preceed super classes.
std::sort(Classes.begin(), Classes.end(), less_ptr<ClassInfo>());
}
@@ -863,8 +843,8 @@ static void EmitClassifyOperand(CodeGenTarget &Target,
OS << " assert(Operand." << CI.SuperClass->PredicateMethod
<< "() && \"Invalid class relationship!\");\n";
- OS << " return " << CI.Name << ";\n\n";
- OS << " }";
+ OS << " return " << CI.Name << ";\n";
+ OS << " }\n\n";
}
}
OS << " return InvalidMatchClass;\n";
OpenPOWER on IntegriCloud