From 7a773ec053f3deaf28d59c84670f5d0456c8d6c8 Mon Sep 17 00:00:00 2001 From: Andrew Trick Date: Fri, 27 Apr 2012 22:55:59 +0000 Subject: Temporarily revert r155668: Fix the SD scheduler to avoid gluing. This definitely caused regression with ARM -mno-thumb. llvm-svn: 155743 --- llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'llvm/lib/CodeGen/SelectionDAG') diff --git a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp index 8ec1ae8620f..52c47767caa 100644 --- a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp @@ -139,10 +139,8 @@ static void AddGlue(SDNode *N, SDValue Glue, bool AddGlue, SelectionDAG *DAG) { if (GlueDestNode == N) return; // Don't add glue to something that already has it, either as a use or value. - if (N->getOperand(N->getNumOperands()-1).getValueType() == MVT::Glue || - N->getValueType(N->getNumValues() - 1) == MVT::Glue) { - return; - } + if (N->getValueType(N->getNumValues() - 1) == MVT::Glue) return; + for (unsigned I = 0, E = N->getNumValues(); I != E; ++I) VTs.push_back(N->getValueType(I)); -- cgit v1.2.3