From: sater Date: Mon, 21 May 1984 11:29:48 +0000 (+0000) Subject: Added output of mes ms_gto X-Git-Tag: release-5-5~6260 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=0dc5d2c3109f69255fd8c998d8833f5f0eb9ec6d;p=ack.git Added output of mes ms_gto Fixed bug: The frontend generated a mes ms_reg for the local temp where the stackpointer was kept in destination procedures for a non local goto. This was wrong. --- diff --git a/lang/pc/pem/pem.p b/lang/pc/pem/pem.p index df7c87cf5..ccd399a4f 100644 --- a/lang/pc/pem/pem.p +++ b/lang/pc/pem/pem.p @@ -1207,7 +1207,7 @@ end end; procedure temporary(fsp:sp;r:integer); begin inita(fsp,negaddr(fsp)); - genreg(sizeof(fsp,wordmult),a.pos.ad,r) + if r>=0 then genreg(sizeof(fsp,wordmult),a.pos.ad,r) end; procedure genhol; @@ -2780,7 +2780,8 @@ begin with b do begin begin if not spset then begin spset:=true; - temporary(nilptr,reg_pointer); ssp:=a.pos.ad; + gencst(ps_mes,ms_gto); argend; + temporary(nilptr,-1); ssp:=a.pos.ad; gencst(op_lor,1); store end; argdlb(llp^.labdlb); lino:=lino+1; genop(ps_rom);