Eliminate the need to do another iteration of the legalizer after inserting

a libcall.

llvm-svn: 25730
This commit is contained in:
Chris Lattner 2006-01-28 04:23:12 +00:00
parent b256104073
commit a593acfe66
1 changed files with 2 additions and 3 deletions

View File

@ -2208,7 +2208,7 @@ SDOperand SelectionDAGLegalize::LegalizeOp(SDOperand Op) {
// Floating point mod -> fmod libcall. // Floating point mod -> fmod libcall.
const char *FnName = Node->getValueType(0) == MVT::f32 ? "fmodf":"fmod"; const char *FnName = Node->getValueType(0) == MVT::f32 ? "fmodf":"fmod";
SDOperand Dummy; SDOperand Dummy;
Result = ExpandLibCall(FnName, Node, Dummy); Result = LegalizeOp(ExpandLibCall(FnName, Node, Dummy));
} }
break; break;
} }
@ -2624,7 +2624,7 @@ SDOperand SelectionDAGLegalize::LegalizeOp(SDOperand Op) {
default: assert(0 && "Unreachable!"); default: assert(0 && "Unreachable!");
} }
SDOperand Dummy; SDOperand Dummy;
Result = ExpandLibCall(FnName, Node, Dummy); Result = LegalizeOp(ExpandLibCall(FnName, Node, Dummy));
break; break;
} }
default: default:
@ -3711,7 +3711,6 @@ SDOperand SelectionDAGLegalize::ExpandLibCall(const char *Name, SDNode *Node,
} }
SpliceCallInto(CallInfo.second, OutChain); SpliceCallInto(CallInfo.second, OutChain);
NeedsAnotherIteration = true;
return Result; return Result;
} }