mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-07-21 18:29:45 +00:00
Machine model: rewrite a tablegen loop to avoid comparing record pointers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180160 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
efa1458ef3
commit
6982bdd119
@ -797,7 +797,6 @@ void SubtargetEmitter::ExpandProcResources(RecVec &PRVec,
|
|||||||
RecVec SubResources;
|
RecVec SubResources;
|
||||||
if (PRVec[i]->isSubClassOf("ProcResGroup")) {
|
if (PRVec[i]->isSubClassOf("ProcResGroup")) {
|
||||||
SubResources = PRVec[i]->getValueAsListOfDefs("Resources");
|
SubResources = PRVec[i]->getValueAsListOfDefs("Resources");
|
||||||
std::sort(SubResources.begin(), SubResources.end(), LessRecord());
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
SubResources.push_back(PRVec[i]);
|
SubResources.push_back(PRVec[i]);
|
||||||
@ -808,15 +807,12 @@ void SubtargetEmitter::ExpandProcResources(RecVec &PRVec,
|
|||||||
if (*PRI == PRVec[i] || !(*PRI)->isSubClassOf("ProcResGroup"))
|
if (*PRI == PRVec[i] || !(*PRI)->isSubClassOf("ProcResGroup"))
|
||||||
continue;
|
continue;
|
||||||
RecVec SuperResources = (*PRI)->getValueAsListOfDefs("Resources");
|
RecVec SuperResources = (*PRI)->getValueAsListOfDefs("Resources");
|
||||||
std::sort(SuperResources.begin(), SuperResources.end(), LessRecord());
|
|
||||||
RecIter SubI = SubResources.begin(), SubE = SubResources.end();
|
RecIter SubI = SubResources.begin(), SubE = SubResources.end();
|
||||||
RecIter SuperI = SuperResources.begin(), SuperE = SuperResources.end();
|
for( ; SubI != SubE; ++SubI) {
|
||||||
for ( ; SubI != SubE && SuperI != SuperE; ++SuperI) {
|
if (std::find(SuperResources.begin(), SuperResources.end(), *SubI)
|
||||||
if (*SubI < *SuperI)
|
== SuperResources.end()) {
|
||||||
break;
|
break;
|
||||||
else if (*SuperI < *SubI)
|
}
|
||||||
continue;
|
|
||||||
++SubI;
|
|
||||||
}
|
}
|
||||||
if (SubI == SubE) {
|
if (SubI == SubE) {
|
||||||
PRVec.push_back(*PRI);
|
PRVec.push_back(*PRI);
|
||||||
|
Loading…
Reference in New Issue
Block a user