diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2018-09-10 12:32:06 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2018-09-10 12:32:06 +0000 |
commit | 28559a2605c40def49aee8c2c2f8515a25541bdf (patch) | |
tree | 974bd5bafaf52fa747d90647cc04ae430fe42301 /llvm/lib/Target | |
parent | 8967e18c4a7c2bc9dd88c40a68368da68b452062 (diff) | |
download | bcm5719-llvm-28559a2605c40def49aee8c2c2f8515a25541bdf.tar.gz bcm5719-llvm-28559a2605c40def49aee8c2c2f8515a25541bdf.zip |
Don't create a temporary vector of loop blocks just to iterate over them.
Loop's getBlocks returns an ArrayRef.
llvm-svn: 341821
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r-- | llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp b/llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp index 0e33976a58a..239cf49ca8a 100644 --- a/llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp +++ b/llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp @@ -1011,10 +1011,9 @@ bool HexagonHardwareLoops::isInvalidLoopOperation(const MachineInstr *MI, /// the use of the hardware loop instruction. bool HexagonHardwareLoops::containsInvalidInstruction(MachineLoop *L, bool IsInnerHWLoop) const { - const std::vector<MachineBasicBlock *> &Blocks = L->getBlocks(); - LLVM_DEBUG(dbgs() << "\nhw_loop head, " << printMBBReference(*Blocks[0])); - for (unsigned i = 0, e = Blocks.size(); i != e; ++i) { - MachineBasicBlock *MBB = Blocks[i]; + LLVM_DEBUG(dbgs() << "\nhw_loop head, " + << printMBBReference(**L->block_begin())); + for (MachineBasicBlock *MBB : L->getBlocks()) { for (MachineBasicBlock::iterator MII = MBB->begin(), E = MBB->end(); MII != E; ++MII) { const MachineInstr *MI = &*MII; @@ -1368,11 +1367,10 @@ bool HexagonHardwareLoops::isLoopFeeder(MachineLoop *L, MachineBasicBlock *A, const MachineOperand *MO, LoopFeederMap &LoopFeederPhi) const { if (LoopFeederPhi.find(MO->getReg()) == LoopFeederPhi.end()) { - const std::vector<MachineBasicBlock *> &Blocks = L->getBlocks(); - LLVM_DEBUG(dbgs() << "\nhw_loop head, " << printMBBReference(*Blocks[0])); + LLVM_DEBUG(dbgs() << "\nhw_loop head, " + << printMBBReference(**L->block_begin())); // Ignore all BBs that form Loop. - for (unsigned i = 0, e = Blocks.size(); i != e; ++i) { - MachineBasicBlock *MBB = Blocks[i]; + for (MachineBasicBlock *MBB : L->getBlocks()) { if (A == MBB) return false; } |