Date: Mon, 5 Jul 2010 01:11:41 +0000 (UTC) From: Nathan Whitehorn <nwhitehorn@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r209706 - user/nwhitehorn/ps3/powerpc/ps3 Message-ID: <201007050111.o651Bfpo099533@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: nwhitehorn Date: Mon Jul 5 01:11:41 2010 New Revision: 209706 URL: http://svn.freebsd.org/changeset/base/209706 Log: Missed some slots in the parameter save area, which caused hypercall stubs to trample over memory when given more than 8 arguments. While here, remove the comment pass-through for the ASM file. It caused problems, and isn't necessary. Modified: user/nwhitehorn/ps3/powerpc/ps3/ps3-hv-asm.awk Modified: user/nwhitehorn/ps3/powerpc/ps3/ps3-hv-asm.awk ============================================================================== --- user/nwhitehorn/ps3/powerpc/ps3/ps3-hv-asm.awk Mon Jul 5 01:09:59 2010 (r209705) +++ user/nwhitehorn/ps3/powerpc/ps3/ps3-hv-asm.awk Mon Jul 5 01:11:41 2010 (r209706) @@ -13,10 +13,6 @@ BEGIN { printf("#define hc .long 0x44000022\n\n"); } -/[ \/]\*.*/ { - print($0); -} - /HVCALL.*/ { code = $2; ins = split($4, a, ",") @@ -33,7 +29,7 @@ BEGIN { # Save output reg addresses to the stack for (i = 0; i < outs; i++) { if (ins+i >= 8) { - printf("\tld %%r11,%d(%%r1)\n", 48+8*outs + 48 + 8*i); + printf("\tld %%r11,%d(%%r1)\n", 48+8*outs + 48 + 8*(i+ins)); printf("\tstd %%r11,%d(%%r1)\n", 48+8*i); } else { printf("\tstd %%r%d,%d(%%r1)\n", 3+ins+i, 48+8*i);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201007050111.o651Bfpo099533>