From: Russ Cox Date: Thu, 5 Feb 2015 10:23:26 +0000 (+0000) Subject: Revert "liblink, cmd/5a: fix reglist parsing/printing after changing REG_R0 to 32" X-Git-Tag: go1.5beta1~2129 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=cb4b28e013f06bf4d5b61a3d43d1bf55618dcc11;p=gostls13.git Revert "liblink, cmd/5a: fix reglist parsing/printing after changing REG_R0 to 32" This reverts commit da4abda2a1718c74b39134764ae6f694041a25e4. Change-Id: Ifd09b3dae0af0c7cef5fbbc332c63e78dc90d6b1 Reviewed-on: https://go-review.googlesource.com/3960 Reviewed-by: Russ Cox --- diff --git a/src/cmd/5a/a.y b/src/cmd/5a/a.y index fbf583def4..429f7437c6 100644 --- a/src/cmd/5a/a.y +++ b/src/cmd/5a/a.y @@ -38,7 +38,7 @@ %union { Sym *sym; - int64 lval; + int32 lval; double dval; char sval[8]; Addr addr; @@ -460,20 +460,20 @@ fcon: reglist: spreg { - $$ = 1ULL << $1; + $$ = 1 << $1; } | spreg '-' spreg { int i; $$=0; for(i=$1; i<=$3; i++) - $$ |= 1ULL<pc), p->from.sym->na switch(o->type) { case 38: /* movm $con,oreg -> stm */ o1 = (0x4 << 25); - o1 |= (p->from.offset >> REG_R0) & 0xffff; + o1 |= p->from.offset & 0xffff; o1 |= (p->to.reg&15) << 16; aclass(ctxt, &p->to); break; case 39: /* movm oreg,$con -> ldm */ o1 = (0x4 << 25) | (1 << 20); - o1 |= (p->to.offset >> REG_R0) & 0xffff; + o1 |= p->to.offset & 0xffff; o1 |= (p->from.reg&15) << 16; aclass(ctxt, &p->from); break; diff --git a/src/liblink/list5.c b/src/liblink/list5.c index bce13c24fb..3d3e8e7d12 100644 --- a/src/liblink/list5.c +++ b/src/liblink/list5.c @@ -222,8 +222,7 @@ RAconv(Fmt *fp) { char str[STRINGSZ]; Addr *a; - int i; - vlong v; + int i, v; a = va_arg(fp->args, Addr*); sprint(str, "GOK-reglist"); @@ -233,7 +232,7 @@ RAconv(Fmt *fp) break; if(a->sym != nil) break; - v = a->offset >> REG_R0; + v = a->offset; strcpy(str, ""); for(i=0; i