summaryrefslogtreecommitdiffstats
path: root/llvm/utils/TableGen/RegisterInfoEmitter.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2005-10-28 22:59:53 +0000
committerChris Lattner <sabre@nondot.org>2005-10-28 22:59:53 +0000
commit742606ad30f06bca67e27e22a624f8172c7ba2aa (patch)
tree36d48b8e0e97811aa6751b5b563eebccadd9309f /llvm/utils/TableGen/RegisterInfoEmitter.cpp
parent7ca53a5783636dc29b11fc0695aa97f58e3e75e5 (diff)
downloadbcm5719-llvm-742606ad30f06bca67e27e22a624f8172c7ba2aa.tar.gz
bcm5719-llvm-742606ad30f06bca67e27e22a624f8172c7ba2aa.zip
Switch more code over to using getValueAsListOfDefs. Look at all the -'s. :)
llvm-svn: 24074
Diffstat (limited to 'llvm/utils/TableGen/RegisterInfoEmitter.cpp')
-rw-r--r--llvm/utils/TableGen/RegisterInfoEmitter.cpp19
1 files changed, 9 insertions, 10 deletions
diff --git a/llvm/utils/TableGen/RegisterInfoEmitter.cpp b/llvm/utils/TableGen/RegisterInfoEmitter.cpp
index af53dbac25b..5c3cb8db808 100644
--- a/llvm/utils/TableGen/RegisterInfoEmitter.cpp
+++ b/llvm/utils/TableGen/RegisterInfoEmitter.cpp
@@ -163,23 +163,22 @@ void RegisterInfoEmitter::run(std::ostream &OS) {
for (unsigned i = 0, e = Regs.size(); i != e; ++i) {
Record *R = Regs[i].TheDef;
- ListInit *LI = Regs[i].TheDef->getValueAsListInit("Aliases");
+ std::vector<Record*> LI = Regs[i].TheDef->getValueAsListOfDefs("Aliases");
// Add information that R aliases all of the elements in the list... and
// that everything in the list aliases R.
- for (unsigned j = 0, e = LI->getSize(); j != e; ++j) {
- DefInit *Reg = dynamic_cast<DefInit*>(LI->getElement(j));
- if (!Reg) throw "ERROR: Alias list element is not a def!";
- if (RegisterAliases[R].count(Reg->getDef()))
+ for (unsigned j = 0, e = LI.size(); j != e; ++j) {
+ Record *Reg = LI[j];
+ if (RegisterAliases[R].count(Reg))
std::cerr << "Warning: register alias between " << getQualifiedName(R)
- << " and " << getQualifiedName(Reg->getDef())
+ << " and " << getQualifiedName(Reg)
<< " specified multiple times!\n";
- RegisterAliases[R].insert(Reg->getDef());
+ RegisterAliases[R].insert(Reg);
- if (RegisterAliases[Reg->getDef()].count(R))
+ if (RegisterAliases[Reg].count(R))
std::cerr << "Warning: register alias between " << getQualifiedName(R)
- << " and " << getQualifiedName(Reg->getDef())
+ << " and " << getQualifiedName(Reg)
<< " specified multiple times!\n";
- RegisterAliases[Reg->getDef()].insert(R);
+ RegisterAliases[Reg].insert(R);
}
}
OpenPOWER on IntegriCloud