X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcompiler%2Fppc%2Fc-call.lisp;h=286988398e4ebb30d1d237b471ddfb853d3d4e6c;hb=ac97b7229f874d5d3ad5000411168af2a31834ec;hp=52db97f1720a8a02be0c24b62c97556507ee6897;hpb=25fe91bf63fd473d9316675b0e0ca9be0079e9eb;p=sbcl.git diff --git a/src/compiler/ppc/c-call.lisp b/src/compiler/ppc/c-call.lisp index 52db97f..2869883 100644 --- a/src/compiler/ppc/c-call.lisp +++ b/src/compiler/ppc/c-call.lisp @@ -265,12 +265,6 @@ (new-arg-types (parse-alien-type '(unsigned 32) (sb!kernel:make-null-lexenv)))) - ((alien-integer-type-p type) - (if (< gprs 8) - (incf gprs 1) - (incf stack 1)) - (new-args arg) - (new-arg-types type)) ((alien-single-float-type-p type) (if (< fprs 8) (incf fprs) @@ -285,7 +279,10 @@ (incf stack 2))) ; the stack. (new-args arg) (new-arg-types type)) - (t + (t ;; integer or SAP + (if (< gprs 8) + (incf gprs 1) + (incf stack 1)) (new-args arg) (new-arg-types type))))) (cond ((and (alien-integer-type-p result-type) @@ -428,6 +425,7 @@ (define-vop (alloc-number-stack-space) (:info amount) (:results (result :scs (sap-reg any-reg))) + (:result-types system-area-pointer) (:temporary (:scs (unsigned-reg) :to (:result 0)) temp) (:generator 0 (unless (zerop amount)