[Openmcl-cvs-notifications] r7991 - /trunk/ccl/level-0/X86/x86-array.lisp
rme at clozure.com
rme at clozure.com
Wed Jan 2 20:30:15 MST 2008
Author: rme
Date: Wed Jan 2 22:30:14 2008
New Revision: 7991
Log:
Update %aset2, %aref3, and %aset3 to take account of the return
address on the stack.
It's not easy for these functions to get called, but they shouldn't
just sit around being wrong.
Modified:
trunk/ccl/level-0/X86/x86-array.lisp
Modified: trunk/ccl/level-0/X86/x86-array.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/ccl/level-0/X86/x86-array.lisp (original)
+++ trunk/ccl/level-0/X86/x86-array.lisp Wed Jan 2 22:30:14 2008
@@ -216,28 +216,28 @@
(check-nargs 3)
(jmp-subprim .SParef2))
=
-(defx86lapfunction %aref3 ((array 0) (i arg_x) (j arg_y) (k arg_z))
+(defx86lapfunction %aref3 ((array 8) #|(ra 0)|# (i arg_x) (j arg_y) (k arg=
_z))
(check-nargs 4)
+ (pop (% ra0))
(pop (% temp0))
(discard-reserved-frame)
+ (push (% ra0))
(jmp-subprim .SParef3))
=
-(defx86lapfunction %aset2 ((array 0) (i arg_x) (j arg_y) (newval arg_z))
+(defx86lapfunction %aset2 ((array 8) #|(ra 0)|# (i arg_x) (j arg_y) (newva=
l arg_z))
(check-nargs 4)
+ (pop (% ra0))
(pop (% temp0))
(discard-reserved-frame)
+ (push (% ra0))
(jmp-subprim .SPaset2))
=
-(defx86lapfunction %aset3 ((array 8) (i 0) (j arg_x) (k arg_y) (newval arg=
_z))
+(defx86lapfunction %aset3 ((array 16) (i 8) #|(ra 0)|# (j arg_x) (k arg_y)=
(newval arg_z))
(check-nargs 5)
+ (pop (% ra0))
(pop (% temp0))
(pop (% temp1))
(discard-reserved-frame)
+ (push (% ra0))
(jmp-subprim .SPaset3))
=
-
-
-
-
- =
-
More information about the Openmcl-cvs-notifications
mailing list