aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-01-28 04:23:12 +0000
committerChris Lattner <sabre@nondot.org>2006-01-28 04:23:12 +0000
commit0e8ea71a4f45b070aecfe9a896bbe402c8b175d6 (patch)
treeb8c4738def15fe2323f8f41b50c90cfa87f10636 /lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
parent7e871b28a208b497f31ec7b162586f57e4d38d58 (diff)
Eliminate the need to do another iteration of the legalizer after inserting
a libcall. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25730 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/LegalizeDAG.cpp')
-rw-r--r--lib/CodeGen/SelectionDAG/LegalizeDAG.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
index 5bd17d53c3..2ee5dd5400 100644
--- a/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
+++ b/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
@@ -2208,7 +2208,7 @@ SDOperand SelectionDAGLegalize::LegalizeOp(SDOperand Op) {
// Floating point mod -> fmod libcall.
const char *FnName = Node->getValueType(0) == MVT::f32 ? "fmodf":"fmod";
SDOperand Dummy;
- Result = ExpandLibCall(FnName, Node, Dummy);
+ Result = LegalizeOp(ExpandLibCall(FnName, Node, Dummy));
}
break;
}
@@ -2624,7 +2624,7 @@ SDOperand SelectionDAGLegalize::LegalizeOp(SDOperand Op) {
default: assert(0 && "Unreachable!");
}
SDOperand Dummy;
- Result = ExpandLibCall(FnName, Node, Dummy);
+ Result = LegalizeOp(ExpandLibCall(FnName, Node, Dummy));
break;
}
default:
@@ -3711,7 +3711,6 @@ SDOperand SelectionDAGLegalize::ExpandLibCall(const char *Name, SDNode *Node,
}
SpliceCallInto(CallInfo.second, OutChain);
- NeedsAnotherIteration = true;
return Result;
}