diff --git a/sys/src/cmd/6l/pass.c b/sys/src/cmd/6l/pass.c index e21171bfb..2062eed5c 100644 --- a/sys/src/cmd/6l/pass.c +++ b/sys/src/cmd/6l/pass.c @@ -507,8 +507,10 @@ dostkoff(void) if(p->as == ATEXT) { curtext = p; autoffset = p->to.offset; - if(autoffset < 0) + if(autoffset < 0) { autoffset = 0; + p->to.offset = 0; + } if(autoffset) { p = appendp(p); p->as = AADJSP; diff --git a/sys/src/cmd/8l/pass.c b/sys/src/cmd/8l/pass.c index 6de027aff..26cbe30c6 100644 --- a/sys/src/cmd/8l/pass.c +++ b/sys/src/cmd/8l/pass.c @@ -492,8 +492,10 @@ dostkoff(void) if(p->as == ATEXT) { curtext = p; autoffset = p->to.offset; - if(autoffset < 0) + if(autoffset < 0) { autoffset = 0; + p->to.offset = 0; + } if(autoffset) { p = appendp(p); p->as = AADJSP;