diff options
author | Kai Backman <kaib@golang.org> | 2009-06-26 22:04:30 -0700 |
---|---|---|
committer | Kai Backman <kaib@golang.org> | 2009-06-26 22:04:30 -0700 |
commit | 0b5dd8859d5c65d294f470223ea15c0b7016ebf2 (patch) | |
tree | e5964bbadf220f4cdacca3ffb5f423730f098d35 /src/cmd/5g/list.c | |
parent | 00f5451227c170733a71fe334b8a540dc882e19d (diff) | |
download | golang-0b5dd8859d5c65d294f470223ea15c0b7016ebf2.tar.gz |
working on bgen
- removed smallint optimizations
- lifted raddr from 5c
- add back %R, was used in gc/* causing -g to crash
- changed naddr OREGISTER to emit D_REG instead of D_OREG
R=rsc
APPROVED=rsc
DELTA=74 (38 added, 28 deleted, 8 changed)
OCL=30799
CL=30822
Diffstat (limited to 'src/cmd/5g/list.c')
-rw-r--r-- | src/cmd/5g/list.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/cmd/5g/list.c b/src/cmd/5g/list.c index b46188a73..631015869 100644 --- a/src/cmd/5g/list.c +++ b/src/cmd/5g/list.c @@ -39,6 +39,7 @@ listinit(void) fmtinstall('P', Pconv); // Prog* fmtinstall('D', Dconv); // Addr* fmtinstall('Y', Yconv); // sconst + fmtinstall('R', Rconv); // register } int @@ -198,3 +199,14 @@ Yconv(Fmt *fp) *p = 0; return fmtstrcpy(fp, str); } + +int +Rconv(Fmt *fp) +{ + int r; + char str[30]; + + r = va_arg(fp->args, int); + snprint(str, sizeof(str), "R%d", r); + return fmtstrcpy(fp, str); +} |