PERFORCE change 29968 for review
Juli Mallett
jmallett at FreeBSD.org
Mon Apr 28 13:40:43 PDT 2003
http://perforce.freebsd.org/chv.cgi?CH=29968
Change 29968 by jmallett at jmallett_dalek on 2003/04/28 13:40:25
MFNetBSD, new ABI register definitions. Hmm, I wonder if
the compiler is defaulting to the right one though :)
Affected files ...
.. //depot/projects/mips/sys/mips/include/regdef.h#2 edit
Differences ...
==== //depot/projects/mips/sys/mips/include/regdef.h#2 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $NetBSD: regdef.h,v 1.7 1999/03/30 14:22:58 soda Exp $ */
+/* $NetBSD: regdef.h,v 1.10 2002/11/04 03:38:32 thorpej Exp $ */
/*
* Copyright (c) 1992, 1993
@@ -50,14 +50,14 @@
#define a1 $5
#define a2 $6
#define a3 $7
-#define t0 $8 /* temp registers (not saved across subroutine calls) */
-#define t1 $9
-#define t2 $10
-#define t3 $11
-#define t4 $12
-#define t5 $13
-#define t6 $14
-#define t7 $15
+#define a4 $8
+#define a5 $9
+#define a6 $10
+#define a7 $11
+#define t0 $12 /* temp registers (not saved across subroutine calls) */
+#define t1 $13
+#define t2 $14
+#define t3 $15
#define s0 $16 /* saved across subroutine calls (callee saved) */
#define s1 $17
#define s2 $18
@@ -75,4 +75,17 @@
#define s8 $30 /* one more callee saved */
#define ra $31 /* return address */
+/*
+ * These are temp registers whose names can be used in either the old
+ * or new ABI, although they map to different physical registers. In
+ * the old ABI, they map to t4-t7, and in the new ABI, they map to a4-a7.
+ *
+ * Because they overlap with the last 4 arg regs in the new ABI, ta0-ta3
+ * should be used only when we need more than t0-t3.
+ */
+#define ta0 $8
+#define ta1 $9
+#define ta2 $10
+#define ta3 $11
+
#endif /* _MIPS_REGDEF_H */
More information about the p4-projects
mailing list