X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=inline;f=src%2Fcompiler%2Falpha%2Fstatic-fn.lisp;h=f5197ae5531589c424bef552b349e3bed83daf72;hb=986ce2596822cc0871b609346aaf592348aca596;hp=6a32c4272e38aa382a85063aa0666624328d98ee;hpb=dfa55a883f94470267b626dae77ce7e7dfac3df6;p=sbcl.git diff --git a/src/compiler/alpha/static-fn.lisp b/src/compiler/alpha/static-fn.lisp index 6a32c42..f5197ae 100644 --- a/src/compiler/alpha/static-fn.lisp +++ b/src/compiler/alpha/static-fn.lisp @@ -1,23 +1,15 @@ -;;; -*- Package: ALPHA -*- -;;; -;;; ********************************************************************** -;;; This code was written as part of the CMU Common Lisp project at -;;; Carnegie Mellon University, and has been placed in the public domain. -;;; - -;;; -;;; ********************************************************************** -;;; -;;; This file contains the VOPs and macro magic necessary to call static -;;; functions. -;;; -;;; Written by William Lott. -;;; Converted by Sean Hallgren. -;;; -(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-function-template) (:save-p t) @@ -32,15 +24,12 @@ (:temporary (:sc any-reg :offset ocfp-offset) ocfp) (:temporary (:sc control-stack :offset nfp-save-offset) nfp-save)) - (eval-when (:compile-toplevel :load-toplevel :execute) - (defun static-function-template-name (num-args num-results) (intern (format nil "~:@(~R-arg-~R-result-static-function~)" num-args num-results))) - (defun moves (src dst) (collect ((moves)) (do ((dst dst (cdr dst)) @@ -116,9 +105,7 @@ (maybe-load-stack-nfp-tn cur-nfp nfp-save temp)) ,@(moves (temp-names) (result-names)))))))) - -) ; eval-when (compile load eval) - +) ; EVAL-WHEN (expand (collect ((templates (list 'progn))) @@ -126,7 +113,6 @@ (templates (static-function-template-vop i 1))) (templates))) - (defmacro define-static-function (name args &key (results '(x)) translate policy cost arg-types result-types) `(define-vop (,name