summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2005-10-01 23:06:26 +0000
committerChris Lattner <sabre@nondot.org>2005-10-01 23:06:26 +0000
commit5ab9d42bb4e6aa8ac2da9dbd9ce47f9dc05fa3ac (patch)
tree0175240c5a552bf41be330b742042894b6d22c4a /llvm/lib/CodeGen/LiveIntervalAnalysis.cpp
parent6f4dc51d6fcd3c7f7d795dae6e8bc988177b07ae (diff)
downloadbcm5719-llvm-5ab9d42bb4e6aa8ac2da9dbd9ce47f9dc05fa3ac.tar.gz
bcm5719-llvm-5ab9d42bb4e6aa8ac2da9dbd9ce47f9dc05fa3ac.zip
Minor tweak to the branch selector. When emitting a two-way branch, and if
we're in a single-mbb loop, make sure to emit the backwards branch as the conditional branch instead of the uncond branch. For example, emit this: LBBl29_z__44: stw r9, 0(r15) stw r9, 4(r15) stw r9, 8(r15) stw r9, 12(r15) addi r15, r15, 16 addi r8, r8, 1 cmpw cr0, r8, r28 ble cr0, LBBl29_z__44 b LBBl29_z__48 *** NOT PART OF LOOP Instead of: LBBl29_z__44: stw r9, 0(r15) stw r9, 4(r15) stw r9, 8(r15) stw r9, 12(r15) addi r15, r15, 16 addi r8, r8, 1 cmpw cr0, r8, r28 bgt cr0, LBBl29_z__48 *** PART OF LOOP! b LBBl29_z__44 The former sequence has one fewer dispatch group for the loop body. llvm-svn: 23582
Diffstat (limited to 'llvm/lib/CodeGen/LiveIntervalAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud