aboutsummaryrefslogtreecommitdiff
path: root/llvm/utils/TableGen/CodeGenTarget.cpp
diff options
context:
space:
mode:
authorDavid Blaikie <dblaikie@gmail.com>2014-12-03 19:58:41 +0000
committerDavid Blaikie <dblaikie@gmail.com>2014-12-03 19:58:41 +0000
commitc0bb5cab0fb46f3ea12c09c9f062016e9b36ab63 (patch)
treed184052fab70892ef3d6340d767bcb3d9f074791 /llvm/utils/TableGen/CodeGenTarget.cpp
parent38303a329f9334ad961351724bdd38c2c80d4157 (diff)
downloadllvm-c0bb5cab0fb46f3ea12c09c9f062016e9b36ab63.zip
llvm-c0bb5cab0fb46f3ea12c09c9f062016e9b36ab63.tar.gz
llvm-c0bb5cab0fb46f3ea12c09c9f062016e9b36ab63.tar.bz2
Range-for some stuff related to RegClasses, and comment cases where range-for isn't suitable.
llvm-svn: 223260
Diffstat (limited to 'llvm/utils/TableGen/CodeGenTarget.cpp')
-rw-r--r--llvm/utils/TableGen/CodeGenTarget.cpp15
1 files changed, 6 insertions, 9 deletions
diff --git a/llvm/utils/TableGen/CodeGenTarget.cpp b/llvm/utils/TableGen/CodeGenTarget.cpp
index 5b301d7..ccf9f8a 100644
--- a/llvm/utils/TableGen/CodeGenTarget.cpp
+++ b/llvm/utils/TableGen/CodeGenTarget.cpp
@@ -232,11 +232,9 @@ std::vector<MVT::SimpleValueType> CodeGenTarget::
getRegisterVTs(Record *R) const {
const CodeGenRegister *Reg = getRegBank().getReg(R);
std::vector<MVT::SimpleValueType> Result;
- ArrayRef<CodeGenRegisterClass*> RCs = getRegBank().getRegClasses();
- for (unsigned i = 0, e = RCs.size(); i != e; ++i) {
- const CodeGenRegisterClass &RC = *RCs[i];
- if (RC.contains(Reg)) {
- ArrayRef<MVT::SimpleValueType> InVTs = RC.getValueTypes();
+ for (const auto &RC : getRegBank().getRegClasses()) {
+ if (RC->contains(Reg)) {
+ ArrayRef<MVT::SimpleValueType> InVTs = RC->getValueTypes();
Result.insert(Result.end(), InVTs.begin(), InVTs.end());
}
}
@@ -249,10 +247,9 @@ getRegisterVTs(Record *R) const {
void CodeGenTarget::ReadLegalValueTypes() const {
- ArrayRef<CodeGenRegisterClass*> RCs = getRegBank().getRegClasses();
- for (unsigned i = 0, e = RCs.size(); i != e; ++i)
- for (unsigned ri = 0, re = RCs[i]->VTs.size(); ri != re; ++ri)
- LegalValueTypes.push_back(RCs[i]->VTs[ri]);
+ for (const auto *RC : getRegBank().getRegClasses())
+ for (unsigned ri = 0, re = RC->VTs.size(); ri != re; ++ri)
+ LegalValueTypes.push_back(RC->VTs[ri]);
// Remove duplicates.
std::sort(LegalValueTypes.begin(), LegalValueTypes.end());