X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2FSDCCcflow.c;h=e3befba85b65249664df21bdf03121b9aa48e650;hb=717cf743781d6240414f10bc16b532bf54c9efd1;hp=95bce8b09e3d6e42a3cbedfd8deb57cf127e14bf;hpb=4d406d0af5861a351d089724c5f3e6d1ee8f70d4;p=fw%2Fsdcc diff --git a/src/SDCCcflow.c b/src/SDCCcflow.c index 95bce8b0..e3befba8 100644 --- a/src/SDCCcflow.c +++ b/src/SDCCcflow.c @@ -133,13 +133,8 @@ eBBSuccessors (eBBlock ** ebbs, int count) } else { - int j=i; - while (j--) { - if (ebbs[j]->ech && ebbs[j]->ech->op==IFX && - (isSymbolEqual(IC_TRUE(ebbs[j]->ech), ebbs[i]->entryLabel) || - isSymbolEqual(IC_FALSE(ebbs[j]->ech), ebbs[i]->entryLabel))) { - ebbs[i]->hasConditionalExit=1; - } + if (i && ebbs[i-1]->ech && ebbs[i-1]->ech->op==IFX) { + ebbs[i]->isConditionalExitFrom=ebbs[i-1]; } } } /* no instructions in the block */