bug fixed: last instruction of first block in block fusion optimization
can be a conditional branch. (bug detected by Ceriel).
This commit is contained in:
parent
53f6b51cde
commit
a18c5dd9c4
1 changed files with 3 additions and 1 deletions
|
@ -192,7 +192,9 @@ STATIC mv_code(b1,b2)
|
||||||
l = last_code(b2->b_start,TRUE);
|
l = last_code(b2->b_start,TRUE);
|
||||||
DLINK(l,b1->b_start);
|
DLINK(l,b1->b_start);
|
||||||
x = l->l_next;
|
x = l->l_next;
|
||||||
if (INSTR(l) == op_bra) {
|
if (TYPE(l) == OPINSTRLAB) {
|
||||||
|
assert(INSTR(x) == op_lab);
|
||||||
|
assert(INSTRLAB(l) == INSTRLAB(x));
|
||||||
rm_line(l,b2);
|
rm_line(l,b2);
|
||||||
}
|
}
|
||||||
if (INSTR(x) == op_lab) {
|
if (INSTR(x) == op_lab) {
|
||||||
|
|
Loading…
Add table
Reference in a new issue