X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Falpha%2Fdebug.lisp;h=204cb778e79795b811e7dbe618438b3a54d549d8;hb=4eb1a6d3ad2b7dcc19ac0ec979a1eb1eb049659a;hp=f820a758b02c911ab538d60ebb40d747de83b33a;hpb=dfa55a883f94470267b626dae77ce7e7dfac3df6;p=sbcl.git diff --git a/src/compiler/alpha/debug.lisp b/src/compiler/alpha/debug.lisp index f820a75..204cb77 100644 --- a/src/compiler/alpha/debug.lisp +++ b/src/compiler/alpha/debug.lisp @@ -1,21 +1,15 @@ -;;; -*- 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. -;;; - -;;; -;;; ********************************************************************** -;;; -;;; Compiler support for the new whizzy debugger. -;;; -;;; Written by William Lott. -;;; Converted by Sean Hallgren. -;;; -(in-package "SB!VM") +;;;; Alpha compiler support for the new whizzy debugger +;;;; 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 (debug-cur-sp) (:translate current-sp) @@ -55,7 +49,7 @@ (:results (result :scs (descriptor-reg))) (:result-types *) (:generator 4 - (inst ldl result (* offset word-bytes) object))) + (inst ldl result (* offset n-word-bytes) object))) (define-vop (write-control-stack) (:translate %set-stack-ref) @@ -82,7 +76,7 @@ (:results (result :scs (descriptor-reg))) (:result-types *) (:generator 1 - (inst stl value (* offset word-bytes) sap) + (inst stl value (* offset n-word-bytes) sap) (move value result))) @@ -96,11 +90,11 @@ (let ((bogus (gen-label)) (done (gen-label))) (loadw temp thing 0 lowtag) - (inst srl temp sb!vm:type-bits temp) + (inst srl temp sb!vm:n-widetag-bits temp) (inst beq temp bogus) - (inst sll temp (1- (integer-length sb!vm:word-bytes)) temp) - (unless (= lowtag sb!vm:other-pointer-type) - (inst subq temp (- sb!vm:other-pointer-type lowtag) temp)) + (inst sll temp (1- (integer-length sb!vm:n-word-bytes)) temp) + (unless (= lowtag sb!vm:other-pointer-lowtag) + (inst subq temp (- sb!vm:other-pointer-lowtag lowtag) temp)) (inst subq thing temp code) (emit-label done) (assemble (*elsewhere*) @@ -110,11 +104,11 @@ (define-vop (code-from-lra code-from-mumble) (:translate lra-code-header) - (:variant sb!vm:other-pointer-type)) + (:variant sb!vm:other-pointer-lowtag)) (define-vop (code-from-function code-from-mumble) - (:translate function-code-header) - (:variant sb!vm:function-pointer-type)) + (:translate fun-code-header) + (:variant sb!vm:fun-pointer-lowtag)) (define-vop (make-lisp-obj) (:policy :fast-safe) @@ -134,18 +128,15 @@ (:generator 1 (move thing result))) -(define-vop (function-word-offset) +(define-vop (fun-word-offset) (:policy :fast-safe) - (:translate function-word-offset) + (:translate fun-word-offset) (:args (fun :scs (descriptor-reg))) (:results (res :scs (unsigned-reg))) (:result-types positive-fixnum) (:generator 5 - (loadw res fun 0 function-pointer-type) - (inst srl res sb!vm:type-bits res))) - - - + (loadw res fun 0 fun-pointer-lowtag) + (inst srl res sb!vm:n-widetag-bits res))) (defknown make-number-stack-pointer ((unsigned-byte 32)) system-area-pointer (movable foldable flushable))