From b11eaa9ee4365abb37df214cf5c46f02407b02c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20H=C3=BCbinette=20=28Hubbe=29?= <hubbe@hubbe.net> Date: Sun, 20 Jul 1997 09:27:59 -0700 Subject: [PATCH] bugfix Rev: src/peep.c:1.13 --- src/peep.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/peep.c b/src/peep.c index fe70d6329a..3bc7a8c954 100644 --- a/src/peep.c +++ b/src/peep.c @@ -157,7 +157,6 @@ void assemble(void) max_label = c->arg; - labels=(INT32 *)xalloc(sizeof(INT32) * (max_label+1)); jumps=(INT32 *)xalloc(sizeof(INT32) * (max_label+1)); uses=(INT32 *)xalloc(sizeof(INT32) * (max_label+1)); @@ -182,9 +181,12 @@ void assemble(void) int tmp,tmp2; tmp=labels[c[e].arg]; - while(c[tmp].opcode == F_LABEL || - c[tmp].opcode == F_NOP) tmp++; + while(tmp<length && + (c[tmp].opcode == F_LABEL || + c[tmp].opcode == F_NOP)) tmp++; + if(tmp>=length) break; + if(c[tmp].opcode==F_BRANCH) { c[e].arg=c[tmp].arg; -- GitLab