set limit on optimization passes to prevent loop
in optimizer in case of bad table.
This commit is contained in:
parent
1939e147a4
commit
af1c3f29a8
@ -609,7 +609,9 @@ basicblock(alpp) line_p *alpp; {
|
||||
register byte *bp;
|
||||
int i;
|
||||
short index;
|
||||
int npasses;
|
||||
|
||||
npasses = 0;
|
||||
do { /* make pass over basicblock */
|
||||
lpp = alpp; madeopt = FALSE;
|
||||
while ((*lpp) != (line_p) 0 && ((*lpp)->l_instr&BMASK) != op_lab) {
|
||||
@ -648,5 +650,6 @@ basicblock(alpp) line_p *alpp; {
|
||||
}
|
||||
lpp = next;
|
||||
}
|
||||
} while(madeopt); /* as long as there is progress */
|
||||
} while(madeopt && ++npasses<5000); /* as long as there is progress */
|
||||
assert(!madeopt);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user