summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorAndrew Trick <atrick@apple.com>2012-07-28 01:48:15 +0000
committerAndrew Trick <atrick@apple.com>2012-07-28 01:48:15 +0000
commit940534371b2f266c8979503293558ef5d582f6d3 (patch)
tree93cc54b83b595639f8c48ae50b7d0831b22a4aa4 /llvm/lib/CodeGen
parent584745a692da7e40006d2dc155b9b2a70eeb6422 (diff)
downloadbcm5719-llvm-940534371b2f266c8979503293558ef5d582f6d3.tar.gz
bcm5719-llvm-940534371b2f266c8979503293558ef5d582f6d3.zip
Reenable a basic SSA DAG builder optimization.
Jakob fixed ProcessImplicifDefs in r159149. llvm-svn: 160910
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r--llvm/lib/CodeGen/ScheduleDAGInstrs.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp b/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
index 110f478f48e..5b40cb4a7e2 100644
--- a/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
+++ b/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
@@ -411,12 +411,11 @@ void ScheduleDAGInstrs::addVRegDefDeps(SUnit *SU, unsigned OperIdx) {
const MachineInstr *MI = SU->getInstr();
unsigned Reg = MI->getOperand(OperIdx).getReg();
- // SSA defs do not have output/anti dependencies.
+ // Singly defined vregs do not have output/anti dependencies.
// The current operand is a def, so we have at least one.
- //
- // FIXME: This optimization is disabled pending PR13112.
- //if (llvm::next(MRI.def_begin(Reg)) == MRI.def_end())
- // return;
+ // Check here if there are any others...
+ if (llvm::next(MRI.def_begin(Reg)) == MRI.def_end())
+ return;
// Add output dependence to the next nearest def of this vreg.
//
OpenPOWER on IntegriCloud