X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fppc%2Fstatic-fn.lisp;h=c5adcdf7d5e69bf1703a3dfe9fd671b07cf71209;hb=ad5cd2538240a4283cb4498b21ff7ab23adcde92;hp=faf19e660396fca9dba4576df7f9a6d3ab07962e;hpb=cab2c71bb1bb8a575d9eebdae335e731daa64183;p=sbcl.git diff --git a/src/compiler/ppc/static-fn.lisp b/src/compiler/ppc/static-fn.lisp index faf19e6..c5adcdf 100644 --- a/src/compiler/ppc/static-fn.lisp +++ b/src/compiler/ppc/static-fn.lisp @@ -1,8 +1,15 @@ -;;; Written by William Lott. -;;; -(in-package "SB!VM") +;;;; VOPs and macro magic for calling static functions +;;;; This software is part of the SBCL system. See the README file for +;;;; more information. +;;;; +;;;; This software is derived from the CMU CL system, which was +;;;; written at Carnegie Mellon University and released into the +;;;; public domain. The software is in the public domain and is +;;;; provided with absolutely no warranty. See the COPYING and CREDITS +;;;; files for more information. +(in-package "SB!VM") (define-vop (static-fun-template) (:save-p t) @@ -13,7 +20,6 @@ (:temporary (:scs (descriptor-reg)) move-temp) (:temporary (:sc descriptor-reg :offset lra-offset) lra) (:temporary (:sc interior-reg :offset lip-offset) entry-point) - (:temporary (:scs (descriptor-reg)) func) (:temporary (:sc any-reg :offset nargs-offset) nargs) (:temporary (:sc any-reg :offset ocfp-offset) old-fp) (:temporary (:sc control-stack :offset nfp-save-offset) nfp-save)) @@ -105,8 +111,7 @@ ,@(moves (result-names) (temp-names)))))))) -) ; eval-when (:compile-toplevel :load-toplevel :execute) - +) ; EVAL-WHEN (macrolet ((frob (num-args num-res) (static-fun-template-vop (eval num-args) (eval num-res)))) @@ -117,7 +122,6 @@ (frob 4 1) #|(frob 5 1)|#) - (defmacro define-static-fun (name args &key (results '(x)) translate policy cost arg-types result-types) `(define-vop (,name