X-Git-Url: https://git.gag.com/?a=blobdiff_plain;ds=sidebyside;f=src%2FSDCCdflow.c;h=8fa4f0c10df2233ec1de4217d352a14b5fcf6df1;hb=3ce766b71ad2b6d9f192e0e6c5d3a5f129804812;hp=a4cee93d8045a0cbe12848067cc4880da8218ebf;hpb=400a10f587fa3d37986233200e77ce1f3e21fd74;p=fw%2Fsdcc diff --git a/src/SDCCdflow.c b/src/SDCCdflow.c index a4cee93d..8fa4f0c1 100644 --- a/src/SDCCdflow.c +++ b/src/SDCCdflow.c @@ -193,15 +193,14 @@ computeDataFlow (eBBlock ** ebbs, int count) /* get blocks that can come to this block */ pred = edgesTo (ebbs[i]); - /* make a copy of the outExpressions or outDefs : to be */ + /* make a copy of the outExpressions and outDefs : to be */ /* used for iteration */ if (optimize.global_cse) { oldOutExprs = setFromSet (ebbs[i]->outExprs); oldKilledExprs = setFromSet (ebbs[i]->killedExprs); } - else - oldOutDefs = bitVectCopy (ebbs[i]->outDefs); + oldOutDefs = bitVectCopy (ebbs[i]->outDefs); setToNull ((void *) &ebbs[i]->inDefs); /* indefitions are easy just merge them by union */ @@ -248,8 +247,7 @@ computeDataFlow (eBBlock ** ebbs, int count) change += !isSetsEqualWith (ebbs[i]->outExprs, oldOutExprs, isCseDefEqual); change += !isSetsEqualWith (ebbs[i]->killedExprs, oldKilledExprs, isCseDefEqual); } - else - change += !bitVectEqual (ebbs[i]->outDefs, oldOutDefs); + change += !bitVectEqual (ebbs[i]->outDefs, oldOutDefs); } if (!change) /* iterate till no change */