summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorBenjamin Kramer <benny.kra@googlemail.com>2018-09-10 12:32:06 +0000
committerBenjamin Kramer <benny.kra@googlemail.com>2018-09-10 12:32:06 +0000
commit28559a2605c40def49aee8c2c2f8515a25541bdf (patch)
tree974bd5bafaf52fa747d90647cc04ae430fe42301 /llvm/lib/Target
parent8967e18c4a7c2bc9dd88c40a68368da68b452062 (diff)
downloadbcm5719-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.cpp14
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;
}
OpenPOWER on IntegriCloud