From: Cyrus H. <ch...@bo...> - 2005-11-04 17:29:39
|
Here's an updated patch that uses the preferred SBCL idiom. Thanks, Cyrus --- c-call.lisp 19 Oct 2005 00:31:17 -0700 1.12 +++ c-call.lisp 04 Nov 2005 08:10:39 -0800 @@ -460,7 +460,9 @@ (args-size (* 3 n-word-bytes)) ;; FIXME: n-frame-bytes? (frame-size - (+ n-foreign-linkage-area-bytes n-return-area- bytes args-size))) + (logandc2 (+ (+ n-foreign-linkage-area-bytes n- return-area-bytes args-size) + +stack-alignment-bytes+) + +stack-alignment-bytes+))) (destructuring-bind (sp r0 arg1 arg2 arg3 arg4) (mapcar #'make-gpr '(1 0 3 4 5 6)) (flet ((load-address-into (reg addr) On Oct 25, 2005, at 1:15 AM, Christophe Rhodes wrote: > Cyrus Harmon <ch...@bo...> writes: > >> Great! So making sure that the callback stack is aligned on a 16-byte >> boundary should be sufficient. Here's a patch to do just that: > >> + (round-up-16 (n) (* 16 (ceiling n 16)))) > > I think the 'standard' sbcl idiom for doing this is > (logandc2 (+ n 15) 15) > which may or may not be microefficient, but in any case is vaguely > consistently used over the codebase. > > Cheers, > > Christophe > > > ------------------------------------------------------- > This SF.Net email is sponsored by the JBoss Inc. > Get Certified Today * Register for a JBoss Training Course > Free Certification Exam for All Training Attendees Through End of 2005 > Visit http://www.jboss.com/services/certification for more information > _______________________________________________ > Sbcl-devel mailing list > Sbc...@li... > https://lists.sourceforge.net/lists/listinfo/sbcl-devel |