[llvm] r206795 - Remove seemingly-unneeded artificial dependency

Hal Finkel hfinkel at anl.gov
Mon Apr 21 14:30:25 PDT 2014

Author: hfinkel
Date: Mon Apr 21 16:30:25 2014
New Revision: 206795

URL: http://llvm.org/viewvc/llvm-project?rev=206795&view=rev
Remove seemingly-unneeded artificial dependency

The rationale for this artificial dependency seems to have been lost to the
ravages of time, it is covered by no regression tests, and has no impact on
test-suite performance numbers on either x86 or PPC.

For the test suite, on both x86 and PPC, I ran the test suite 10 times (both as
a baseline and with this change), and found no statistically-significant
changes.  For PPC, I used a P7 box. For x86, I used an Intel Xeon E5430. Both
with -O3 -mcpu=native.

This was discussed on-list back in January, but I've not had a chance to run
the performance tests until today.


Modified: llvm/trunk/lib/CodeGen/ScheduleDAGInstrs.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/ScheduleDAGInstrs.cpp?rev=206795&r1=206794&r2=206795&view=diff
--- llvm/trunk/lib/CodeGen/ScheduleDAGInstrs.cpp (original)
+++ llvm/trunk/lib/CodeGen/ScheduleDAGInstrs.cpp Mon Apr 21 16:30:25 2014
@@ -986,11 +986,6 @@ void ScheduleDAGInstrs::buildSchedGraph(
       // we have lost all RejectMemNodes below barrier.
       if (BarrierChain)
         BarrierChain->addPred(SDep(SU, SDep::Barrier));
-      if (!ExitSU.isPred(SU))
-        // Push store's up a bit to avoid them getting in between cmp
-        // and branches.
-        ExitSU.addPred(SDep(SU, SDep::Artificial));
     } else if (MI->mayLoad()) {
       bool MayAlias = true;
       if (MI->isInvariantLoad(AA)) {

More information about the llvm-commits mailing list