1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 20:23:11 +01:00

Fix HexagonGenExtract return status

Differential Revision: https://reviews.llvm.org/D83460
This commit is contained in:
serge-sans-paille 2020-07-09 09:56:26 +02:00
parent 084b730605
commit 568fbc4c30

View File

@ -221,15 +221,16 @@ bool HexagonGenExtract::convert(Instruction *In) {
} }
bool HexagonGenExtract::visitBlock(BasicBlock *B) { bool HexagonGenExtract::visitBlock(BasicBlock *B) {
bool Changed = false;
// Depth-first, bottom-up traversal. // Depth-first, bottom-up traversal.
for (auto *DTN : children<DomTreeNode*>(DT->getNode(B))) for (auto *DTN : children<DomTreeNode*>(DT->getNode(B)))
visitBlock(DTN->getBlock()); Changed |= visitBlock(DTN->getBlock());
// Allow limiting the number of generated extracts for debugging purposes. // Allow limiting the number of generated extracts for debugging purposes.
bool HasCutoff = ExtractCutoff.getPosition(); bool HasCutoff = ExtractCutoff.getPosition();
unsigned Cutoff = ExtractCutoff; unsigned Cutoff = ExtractCutoff;
bool Changed = false;
BasicBlock::iterator I = std::prev(B->end()), NextI, Begin = B->begin(); BasicBlock::iterator I = std::prev(B->end()), NextI, Begin = B->begin();
while (true) { while (true) {
if (HasCutoff && (ExtractCount >= Cutoff)) if (HasCutoff && (ExtractCount >= Cutoff))