summaryrefslogtreecommitdiff
path: root/utils/TableGen/RegisterInfoEmitter.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-01-05 22:25:12 +0000
committerChris Lattner <sabre@nondot.org>2008-01-05 22:25:12 +0000
commit6cefb77a7073057fecd721ae141140d75ce76512 (patch)
treebe85f322799be552a691ad6f696f429049fd512f /utils/TableGen/RegisterInfoEmitter.cpp
parent219f67f0a5f07032f06e36c71fdb84188cc29fdb (diff)
downloadllvm-6cefb77a7073057fecd721ae141140d75ce76512.tar.gz
llvm-6cefb77a7073057fecd721ae141140d75ce76512.tar.bz2
llvm-6cefb77a7073057fecd721ae141140d75ce76512.tar.xz
change getQualifiedName to be a global function.
Split the pattern parsing code out from the dag isel emitter into it's own file. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45632 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/RegisterInfoEmitter.cpp')
-rw-r--r--utils/TableGen/RegisterInfoEmitter.cpp18
1 files changed, 8 insertions, 10 deletions
diff --git a/utils/TableGen/RegisterInfoEmitter.cpp b/utils/TableGen/RegisterInfoEmitter.cpp
index 836259e63b..ca5c6351c9 100644
--- a/utils/TableGen/RegisterInfoEmitter.cpp
+++ b/utils/TableGen/RegisterInfoEmitter.cpp
@@ -113,11 +113,10 @@ bool isSubRegisterClass(const CodeGenRegisterClass &RC,
static void addSuperReg(Record *R, Record *S,
std::map<Record*, std::set<Record*> > &SubRegs,
std::map<Record*, std::set<Record*> > &SuperRegs,
- std::map<Record*, std::set<Record*> > &Aliases,
- RegisterInfoEmitter &RIE) {
+ std::map<Record*, std::set<Record*> > &Aliases) {
if (R == S) {
cerr << "Error: recursive sub-register relationship between"
- << " register " << RIE.getQualifiedName(R)
+ << " register " << getQualifiedName(R)
<< " and its sub-registers?\n";
abort();
}
@@ -129,30 +128,29 @@ static void addSuperReg(Record *R, Record *S,
if (SuperRegs.count(S))
for (std::set<Record*>::iterator I = SuperRegs[S].begin(),
E = SuperRegs[S].end(); I != E; ++I)
- addSuperReg(R, *I, SubRegs, SuperRegs, Aliases, RIE);
+ addSuperReg(R, *I, SubRegs, SuperRegs, Aliases);
}
static void addSubSuperReg(Record *R, Record *S,
std::map<Record*, std::set<Record*> > &SubRegs,
std::map<Record*, std::set<Record*> > &SuperRegs,
- std::map<Record*, std::set<Record*> > &Aliases,
- RegisterInfoEmitter &RIE) {
+ std::map<Record*, std::set<Record*> > &Aliases) {
if (R == S) {
cerr << "Error: recursive sub-register relationship between"
- << " register " << RIE.getQualifiedName(R)
+ << " register " << getQualifiedName(R)
<< " and its sub-registers?\n";
abort();
}
if (!SubRegs[R].insert(S).second)
return;
- addSuperReg(S, R, SubRegs, SuperRegs, Aliases, RIE);
+ addSuperReg(S, R, SubRegs, SuperRegs, Aliases);
Aliases[R].insert(S);
Aliases[S].insert(R);
if (SubRegs.count(S))
for (std::set<Record*>::iterator I = SubRegs[S].begin(),
E = SubRegs[S].end(); I != E; ++I)
- addSubSuperReg(R, *I, SubRegs, SuperRegs, Aliases, RIE);
+ addSubSuperReg(R, *I, SubRegs, SuperRegs, Aliases);
}
// RegisterInfoEmitter::run - Main register file description emitter.
@@ -446,7 +444,7 @@ void RegisterInfoEmitter::run(std::ostream &OS) {
<< " multiple times!\n";
RegisterImmSubRegs[R].insert(SubReg);
addSubSuperReg(R, SubReg, RegisterSubRegs, RegisterSuperRegs,
- RegisterAliases, *this);
+ RegisterAliases);
}
}