From: Dale Johannesen Date: Wed, 25 Mar 2009 17:36:08 +0000 (+0000) Subject: When optimizing with debug info, don't keep the X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=beaec4cbf6cfd756084eff1ee2ad18ee17c33284;p=oota-llvm.git When optimizing with debug info, don't keep the stoppoint nodes around until Legalize; doing this imposed an ordering on a sequence of loads that came from different lines, interfering with scheduling. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67692 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGBuild.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGBuild.cpp index 8457bc35f50..a5d4caf824e 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGBuild.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGBuild.cpp @@ -3895,10 +3895,11 @@ SelectionDAGLowering::visitIntrinsicCall(CallInst &I, unsigned Intrinsic) { DbgStopPointInst &SPI = cast(I); if (DW && DW->ValidDebugInfo(SPI.getContext())) { MachineFunction &MF = DAG.getMachineFunction(); - DAG.setRoot(DAG.getDbgStopPoint(getRoot(), - SPI.getLine(), - SPI.getColumn(), - SPI.getContext())); + if (Fast) + DAG.setRoot(DAG.getDbgStopPoint(getRoot(), + SPI.getLine(), + SPI.getColumn(), + SPI.getContext())); DICompileUnit CU(cast(SPI.getContext())); std::string Dir, FN; unsigned SrcFile = DW->getOrCreateSourceID(CU.getDirectory(Dir),