summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
Diffstat (limited to 'sys')
-rw-r--r--sys/src/cmd/1c/list.c16
-rw-r--r--sys/src/cmd/2c/list.c16
-rw-r--r--sys/src/cmd/5c/list.c33
-rw-r--r--sys/src/cmd/6c/list.c31
-rw-r--r--sys/src/cmd/8c/list.c16
-rw-r--r--sys/src/cmd/kc/list.c16
-rw-r--r--sys/src/cmd/qc/list.c16
-rw-r--r--sys/src/cmd/vc/list.c16
8 files changed, 50 insertions, 110 deletions
diff --git a/sys/src/cmd/1c/list.c b/sys/src/cmd/1c/list.c
index ef2edb00b..17d4ca780 100644
--- a/sys/src/cmd/1c/list.c
+++ b/sys/src/cmd/1c/list.c
@@ -16,25 +16,19 @@ listinit(void)
int
Bconv(Fmt *fp)
{
- char str[STRINGSZ], ss[STRINGSZ], *s;
Bits bits;
int i;
- memset(str, 0, sizeof str);
bits = va_arg(fp->args, Bits);
while(bany(&bits)) {
i = bnum(bits);
- if(str[0])
- strncat(str, " ", sizeof str - 1);
- if(var[i].sym == S) {
- snprint(ss, sizeof ss, "$%ld", var[i].offset);
- s = ss;
- } else
- s = var[i].sym->name;
- strncat(str, s, sizeof str - 1);
bits.b[i/32] &= ~(1L << (i%32));
+ if(var[i].sym == S)
+ fmtprint(fp, "$%ld ", var[i].offset);
+ else
+ fmtprint(fp, "%s ", var[i].sym->name);
}
- return fmtstrcpy(fp, str);
+ return 0;
}
int
diff --git a/sys/src/cmd/2c/list.c b/sys/src/cmd/2c/list.c
index 8a11546a2..cae53e7f1 100644
--- a/sys/src/cmd/2c/list.c
+++ b/sys/src/cmd/2c/list.c
@@ -27,25 +27,19 @@ indexv(int i, int j)
int
Bconv(Fmt *fp)
{
- char str[STRINGSZ], ss[STRINGSZ], *s;
Bits bits;
int i;
- memset(str, 0, sizeof str);
bits = va_arg(fp->args, Bits);
while(bany(&bits)) {
i = bnum(bits);
- if(str[0])
- strncat(str, " ", sizeof str - 1);
- if(var[i].sym == S) {
- snprint(ss, sizeof ss, "$%ld", var[i].offset);
- s = ss;
- } else
- s = var[i].sym->name;
- strncat(str, s, sizeof str - 1);
bits.b[i/32] &= ~(1L << (i%32));
+ if(var[i].sym == S)
+ fmtprint(fp, "$%ld ", var[i].offset);
+ else
+ fmtprint(fp, "%s ", var[i].sym->name);
}
- return fmtstrcpy(fp, str);
+ return 0;
}
int
diff --git a/sys/src/cmd/5c/list.c b/sys/src/cmd/5c/list.c
index 66094c851..738315df8 100644
--- a/sys/src/cmd/5c/list.c
+++ b/sys/src/cmd/5c/list.c
@@ -17,25 +17,19 @@ listinit(void)
int
Bconv(Fmt *fp)
{
- char str[STRINGSZ], ss[STRINGSZ], *s;
Bits bits;
int i;
- memset(str, 0, sizeof str);
bits = va_arg(fp->args, Bits);
while(bany(&bits)) {
i = bnum(bits);
- if(str[0])
- strncat(str, " ", sizeof str - 1);
- if(var[i].sym == S) {
- snprint(ss, sizeof ss, "$%ld", var[i].offset);
- s = ss;
- } else
- s = var[i].sym->name;
- strncat(str, s, sizeof str - 1);
bits.b[i/32] &= ~(1L << (i%32));
+ if(var[i].sym == S)
+ fmtprint(fp, "$%ld ", var[i].offset);
+ else
+ fmtprint(fp, "%s ", var[i].sym->name);
}
- return fmtstrcpy(fp, str);
+ return 0;
}
char *extra [] = {
@@ -195,12 +189,10 @@ Dconv(Fmt *fp)
int
Rconv(Fmt *fp)
{
- char str[STRINGSZ];
Adr *a;
int i, v;
a = va_arg(fp->args, Adr*);
- snprint(str, sizeof str, "GOK-reglist");
switch(a->type) {
case D_CONST:
if(a->reg != NREG)
@@ -208,19 +200,14 @@ Rconv(Fmt *fp)
if(a->sym != S)
break;
v = a->offset;
- memset(str, 0, sizeof str);
+ fmtprint(fp, "[");
for(i=0; i<NREG; i++) {
- if(v & (1<<i)) {
- if(str[0] == 0)
- strncat(str, "[R", sizeof str - 1);
- else
- strncat(str, ",R", sizeof str - 1);
- snprint(str+strlen(str), sizeof(str)-strlen(str), "%d", i);
- }
+ if(v & (1<<i))
+ fmtprint(fp, "R%d,", i);
}
- strncat(str, "]", sizeof str - 1);
+ fmtprint(fp, "]");
}
- return fmtstrcpy(fp, str);
+ return 0;
}
int
diff --git a/sys/src/cmd/6c/list.c b/sys/src/cmd/6c/list.c
index b93707862..5110132d0 100644
--- a/sys/src/cmd/6c/list.c
+++ b/sys/src/cmd/6c/list.c
@@ -16,44 +16,36 @@ listinit(void)
int
Bconv(Fmt *fp)
{
- char str[STRINGSZ], ss[STRINGSZ], *s;
Bits bits;
int i;
- memset(str, 0, sizeof str);
bits = va_arg(fp->args, Bits);
while(bany(&bits)) {
i = bnum(bits);
- if(str[0])
- strncat(str, " ", sizeof str - 1);
- if(var[i].sym == S) {
- snprint(ss, sizeof ss, "$%lld", var[i].offset);
- s = ss;
- } else
- s = var[i].sym->name;
- strncat(str, s, sizeof str - 1);
bits.b[i/32] &= ~(1L << (i%32));
+ if(var[i].sym == S)
+ fmtprint(fp, "$%lld ", var[i].offset);
+ else
+ fmtprint(fp, "%s ", var[i].sym->name);
}
- return fmtstrcpy(fp, str);
+ return 0;
}
int
Pconv(Fmt *fp)
{
- char str[STRINGSZ];
Prog *p;
p = va_arg(fp->args, Prog*);
if(p->as == ADATA)
- snprint(str, sizeof str, " %A %D/%d,%D",
+ return fmtprint(fp, " %A %D/%d,%D",
p->as, &p->from, p->from.scale, &p->to);
else if(p->as == ATEXT)
- snprint(str, sizeof str, " %A %D,%d,%D",
+ return fmtprint(fp, " %A %D,%d,%D",
p->as, &p->from, p->from.scale, &p->to);
else
- snprint(str, sizeof str, " %A %D,%D",
+ return fmtprint(fp, " %A %D,%D",
p->as, &p->from, &p->to);
- return fmtstrcpy(fp, str);
}
int
@@ -274,16 +266,13 @@ char* regstr[] =
int
Rconv(Fmt *fp)
{
- char str[20];
int r;
r = va_arg(fp->args, int);
if(r >= D_AL && r <= D_NONE)
- snprint(str, sizeof str, "%s", regstr[r-D_AL]);
+ return fmtprint(fp, "%s", regstr[r-D_AL]);
else
- snprint(str, sizeof str, "gok(%d)", r);
-
- return fmtstrcpy(fp, str);
+ return fmtprint(fp, "gok(%d)", r);
}
int
diff --git a/sys/src/cmd/8c/list.c b/sys/src/cmd/8c/list.c
index c321d54a3..e23c1ff43 100644
--- a/sys/src/cmd/8c/list.c
+++ b/sys/src/cmd/8c/list.c
@@ -16,25 +16,19 @@ listinit(void)
int
Bconv(Fmt *fp)
{
- char str[STRINGSZ], ss[STRINGSZ], *s;
Bits bits;
int i;
- memset(str, 0, sizeof str);
bits = va_arg(fp->args, Bits);
while(bany(&bits)) {
i = bnum(bits);
- if(str[0])
- strncat(str, " ", sizeof str - 1);
- if(var[i].sym == S) {
- snprint(ss, sizeof(ss), "$%ld", var[i].offset);
- s = ss;
- } else
- s = var[i].sym->name;
- strncat(str, s, sizeof str - 1);
bits.b[i/32] &= ~(1L << (i%32));
+ if(var[i].sym == S)
+ fmtprint(fp, "$%ld ", var[i].offset);
+ else
+ fmtprint(fp, "%s ", var[i].sym->name);
}
- return fmtstrcpy(fp, str);
+ return 0;
}
int
diff --git a/sys/src/cmd/kc/list.c b/sys/src/cmd/kc/list.c
index 7e5c5dd72..6ca460446 100644
--- a/sys/src/cmd/kc/list.c
+++ b/sys/src/cmd/kc/list.c
@@ -16,25 +16,19 @@ listinit(void)
int
Bconv(Fmt *fp)
{
- char str[STRINGSZ], ss[STRINGSZ], *s;
Bits bits;
int i;
- memset(str, 0, sizeof str);
bits = va_arg(fp->args, Bits);
while(bany(&bits)) {
i = bnum(bits);
- if(str[0])
- strncat(str, " ", sizeof str - 1);
- if(var[i].sym == S) {
- snprint(ss, sizeof ss, "$%ld", var[i].offset);
- s = ss;
- } else
- s = var[i].sym->name;
- strncat(str, s, sizeof str - 1);
bits.b[i/32] &= ~(1L << (i%32));
+ if(var[i].sym == S)
+ fmtprint(fp, "$%ld ", var[i].offset);
+ else
+ fmtprint(fp, "%s ", var[i].sym->name);
}
- return fmtstrcpy(fp, str);
+ return 0;
}
int
diff --git a/sys/src/cmd/qc/list.c b/sys/src/cmd/qc/list.c
index 5ff999fea..8af1e3c7d 100644
--- a/sys/src/cmd/qc/list.c
+++ b/sys/src/cmd/qc/list.c
@@ -16,25 +16,19 @@ listinit(void)
int
Bconv(Fmt *fp)
{
- char str[STRINGSZ], ss[STRINGSZ], *s;
Bits bits;
int i;
- memset(str, 0, sizeof str);
bits = va_arg(fp->args, Bits);
while(bany(&bits)) {
i = bnum(bits);
- if(str[0])
- strncat(str, " ", sizeof str - 1);
- if(var[i].sym == S) {
- snprint(ss, sizeof ss, "$%ld", var[i].offset);
- s = ss;
- } else
- s = var[i].sym->name;
- strncat(str, s, sizeof str - 1);
bits.b[i/32] &= ~(1L << (i%32));
+ if(var[i].sym == S)
+ fmtprint(fp, "$%ld ", var[i].offset);
+ else
+ fmtprint(fp, "%s ", var[i].sym->name);
}
- return fmtstrcpy(fp, str);
+ return 0;
}
int
diff --git a/sys/src/cmd/vc/list.c b/sys/src/cmd/vc/list.c
index 8e9c85064..78e790d84 100644
--- a/sys/src/cmd/vc/list.c
+++ b/sys/src/cmd/vc/list.c
@@ -15,25 +15,19 @@ listinit(void)
int
Bconv(Fmt *fp)
{
- char str[STRINGSZ], ss[STRINGSZ], *s;
Bits bits;
int i;
- memset(str, 0, sizeof str);
bits = va_arg(fp->args, Bits);
while(bany(&bits)) {
i = bnum(bits);
- if(str[0])
- strncat(str, " ", sizeof str - 1);
- if(var[i].sym == S) {
- snprint(ss, sizeof ss, "$%ld", var[i].offset);
- s = ss;
- } else
- s = var[i].sym->name;
- strncat(str, s, sizeof str - 1);
bits.b[i/32] &= ~(1L << (i%32));
+ if(var[i].sym == S)
+ fmtprint(fp, "$%ld ", var[i].offset);
+ else
+ fmtprint(fp, "%s ", var[i].sym->name);
}
- return fmtstrcpy(fp, str);
+ return 0;
}
int