summaryrefslogtreecommitdiff
path: root/src/cmd/6c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/6c')
-rw-r--r--src/cmd/6c/peep.c4
-rw-r--r--src/cmd/6c/txt.c6
2 files changed, 6 insertions, 4 deletions
diff --git a/src/cmd/6c/peep.c b/src/cmd/6c/peep.c
index 13fd25e73..8b82adbf5 100644
--- a/src/cmd/6c/peep.c
+++ b/src/cmd/6c/peep.c
@@ -797,7 +797,7 @@ copyu(Prog *p, Adr *v, Adr *s)
return 3;
case ACALL: /* funny */
- if(REGARG >= 0 && v->type == REGARG)
+ if(REGARG >= 0 && v->type == (uchar)REGARG)
return 2;
if(s != A) {
@@ -810,7 +810,7 @@ copyu(Prog *p, Adr *v, Adr *s)
return 3;
case ATEXT: /* funny */
- if(REGARG >= 0 && v->type == REGARG)
+ if(REGARG >= 0 && v->type == (uchar)REGARG)
return 3;
return 0;
}
diff --git a/src/cmd/6c/txt.c b/src/cmd/6c/txt.c
index a78ba227b..12fc5b498 100644
--- a/src/cmd/6c/txt.c
+++ b/src/cmd/6c/txt.c
@@ -436,8 +436,10 @@ regsalloc(Node *n, Node *nn)
void
regaalloc1(Node *n, Node *nn)
{
- if(REGARG < 0)
- diag(n, "regaalloc1 and REGARG<0");
+ if(REGARG < 0) {
+ fatal(n, "regaalloc1 and REGARG<0");
+ return;
+ }
nodreg(n, nn, REGARG);
reg[REGARG]++;
curarg = align(curarg, nn->type, Aarg1, nil);