Temporarily revert r155668: Fix the SD scheduler to avoid gluing.
This definitely caused regression with ARM -mno-thumb.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155743 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp b/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
index 8ec1ae8..52c4776 100644
--- a/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
+++ b/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
@@ -139,10 +139,8 @@
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));