In visitUREM, arrange for the temporary UDIV node to be

revisited, consistent with the code in visitSREM.

llvm-svn: 55923
This commit is contained in:
Dan Gohman 2008-09-08 16:59:01 +00:00
parent ddd9b2aeb0
commit c9fdcfb189

View File

@ -1423,6 +1423,7 @@ SDValue DAGCombiner::visitUREM(SDNode *N) {
// X%C to the equivalent of X-X/C*C.
if (N1C && !N1C->isNullValue()) {
SDValue Div = DAG.getNode(ISD::UDIV, VT, N0, N1);
AddToWorkList(Div.getNode());
SDValue OptimizedDiv = combine(Div.getNode());
if (OptimizedDiv.getNode() && OptimizedDiv.getNode() != Div.getNode()) {
SDValue Mul = DAG.getNode(ISD::MUL, VT, OptimizedDiv, N1);