PERFORCE change 206954 for review
Oleksandr Tymoshenko
gonzo at FreeBSD.org
Mon Feb 27 02:32:30 UTC 2012
http://p4web.freebsd.org/@@206954?ac=10
Change 206954 by gonzo at gonzo_thinkpad on 2012/02/27 02:31:46
Extend number of argument registers to 8 for N32 and N64 ABIs
Affected files ...
.. //depot/projects/dtrace-mips/sys/mips/mips/backtrace.c#2 edit
Differences ...
==== //depot/projects/dtrace-mips/sys/mips/mips/backtrace.c#2 (text+ko) ====
@@ -76,6 +76,7 @@
unsigned int frames = 0;
int more, stksize;
register_t ra = 0;
+ int arg;
/*
* Invalidate arguments values
@@ -220,23 +221,18 @@
mask |= (1 << i.IType.rt);
switch (i.IType.rt) {
case 4:/* a0 */
- args[0] = kdbpeekd((int *)(*sp + (short)i.IType.imm));
- valid_args[0] = 1;
- break;
-
case 5:/* a1 */
- args[1] = kdbpeekd((int *)(*sp + (short)i.IType.imm));
- valid_args[1] = 1;
- break;
-
case 6:/* a2 */
- args[2] = kdbpeekd((int *)(*sp + (short)i.IType.imm));
- valid_args[2] = 1;
- break;
-
case 7:/* a3 */
- args[3] = kdbpeekd((int *)(*sp + (short)i.IType.imm));
- valid_args[3] = 1;
+#if defined(__mips_n64) || defined(__mips_n32)
+ case 8:/* a4 */
+ case 9:/* a5 */
+ case 10:/* a6 */
+ case 11:/* a7 */
+#endif
+ arg = i.IType.rt - 4;
+ args[arg] = kdbpeekd((int *)(*sp + (short)i.IType.imm));
+ valid_args[arg] = 1;
break;
case 31: /* ra */
More information about the p4-projects
mailing list