summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnders Magnusson <ragge@cvs.openbsd.org>2007-12-09 18:34:12 +0000
committerAnders Magnusson <ragge@cvs.openbsd.org>2007-12-09 18:34:12 +0000
commit6281d4a22a2fa48216a0fce7f1c769b967dc38f6 (patch)
treebb8bb7a3e6d86d60034b317f55cd48c0b143e544
parent2ef1e8ba442ab19291ace7ec92e336d795a5b0f9 (diff)
Updates from master repo:
- Clear edgehash after onlyperm also. - Avoid diagnostic that may fail for targets with reg arguments.
-rw-r--r--usr.bin/pcc/mip/regs.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/usr.bin/pcc/mip/regs.c b/usr.bin/pcc/mip/regs.c
index c79d7931a45..6fa3043eef8 100644
--- a/usr.bin/pcc/mip/regs.c
+++ b/usr.bin/pcc/mip/regs.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: regs.c,v 1.12 2007/11/17 12:46:03 otto Exp $ */
+/* $OpenBSD: regs.c,v 1.13 2007/12/09 18:34:11 ragge Exp $ */
/*
* Copyright (c) 2005 Anders Magnusson (ragge@ludd.luth.se).
* All rights reserved.
@@ -367,8 +367,9 @@ trivially_colorable_p(int c, int *n)
if (i < 0 || i > 1)
comperr("trivially_colorable_p");
#ifdef PCC_DEBUG
- if (rdebug)
- printf("trivially_colorable_p: n[1] %d n[2] %d n[3] %d n[4] %d for class %d, triv %d\n", n[1], n[2], n[3], n[4], c, i);
+ if (rdebug > 1)
+ printf("trivially_colorable_p: n[1] %d n[2] %d n[3] %d n[4] "
+ "%d for class %d, triv %d\n", n[1], n[2], n[3], n[4], c, i);
#endif
return i;
}
@@ -2002,7 +2003,8 @@ temparg(struct interpass *ipole, REGW *w)
if (ip->type == IP_ASM)
continue;
p = ip->ip_node;
-#ifdef PCC_DEBUG
+#ifdef notdef
+ /* register args may already have been put on stack */
if (p->n_op != ASSIGN || p->n_left->n_op != TEMP)
comperr("temparg");
#endif
@@ -2195,8 +2197,8 @@ ngenregs(struct interpass *ipole)
recalc:
- memset(edgehash, 0, sizeof(edgehash));
onlyperm: /* XXX - should not have to redo all */
+ memset(edgehash, 0, sizeof(edgehash));
if (tbits) {
memset(nblock+tempmin, 0, tbits * sizeof(REGW));