X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Falpha%2Fsubprim.lisp;h=d81cf12eb795249444aa774408acdf6e5a5b960e;hb=cf607a404d7518e8a18c9e362913f370eb9a5e38;hp=82ddcf1a4fec685d859fef0c56c2cb2c55e2d085;hpb=dfa55a883f94470267b626dae77ce7e7dfac3df6;p=sbcl.git diff --git a/src/compiler/alpha/subprim.lisp b/src/compiler/alpha/subprim.lisp index 82ddcf1..d81cf12 100644 --- a/src/compiler/alpha/subprim.lisp +++ b/src/compiler/alpha/subprim.lisp @@ -1,24 +1,17 @@ -;;; -*- Package: ALPHA; Log: C.Log -*- -;;; -;;; ********************************************************************** -;;; This code was written as part of the CMU Common Lisp project at -;;; Carnegie Mellon University, and has been placed in the public domain. -;;; - -;;; -;;; ********************************************************************** -;;; -;;; Linkage information for standard static functions, and random vops. -;;; -;;; Written by William Lott. -;;; Converted by Sean Hallgren. -;;; -(in-package "SB!VM") - +;;;; linkage information for standard static functions, and random vops +;;;; 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") -;;;; Length +;;;; LENGTH (define-vop (length/list) (:translate length) @@ -42,10 +35,10 @@ (inst bne temp done) (inst and ptr lowtag-mask temp) - (inst xor temp list-pointer-type temp) + (inst xor temp list-pointer-lowtag temp) (inst bne temp not-list) - (loadw ptr ptr cons-cdr-slot list-pointer-type) + (loadw ptr ptr cons-cdr-slot list-pointer-lowtag) (inst addq count (fixnumize 1) count) (inst br zero-tn loop) @@ -55,8 +48,4 @@ DONE (move count result))) - -(define-static-function length (object) :translate length) - - - +(define-static-fun length (object) :translate length)