diff options
| author | Chris Lattner <sabre@nondot.org> | 2005-10-28 22:59:53 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2005-10-28 22:59:53 +0000 |
| commit | 742606ad30f06bca67e27e22a624f8172c7ba2aa (patch) | |
| tree | 36d48b8e0e97811aa6751b5b563eebccadd9309f /llvm/utils/TableGen/RegisterInfoEmitter.cpp | |
| parent | 7ca53a5783636dc29b11fc0695aa97f58e3e75e5 (diff) | |
| download | bcm5719-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.cpp | 19 |
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); } } |

