X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fvop.lisp;h=4570b36c8a6eafd77673bd6275d73ddf2443964c;hb=8902b8b6bd2e9285749dd39d313b33b6c69c5213;hp=1d2c031ac90b2908a9de01ffef0bdb23b1a5783f;hpb=8375acd89ba695e2fc838fffd5211a5ddf9c3b0d;p=sbcl.git diff --git a/src/compiler/vop.lisp b/src/compiler/vop.lisp index 1d2c031..4570b36 100644 --- a/src/compiler/vop.lisp +++ b/src/compiler/vop.lisp @@ -214,7 +214,14 @@ ;; since type checking is the responsibility of the values receiver, ;; these TNs primitive type is only based on the proven type ;; information. - (locs nil :type list)) + (locs nil :type list) + #!+stack-grows-downward-not-upward + (stack-pointer nil :type (or tn null))) +;; For upward growing stack start of stack block and start of object +;; differ only by lowtag. +#!-stack-grows-downward-not-upward +(defmacro ir2-lvar-stack-pointer (2lvar) + `(first (ir2-lvar-locs ,2lvar))) (defprinter (ir2-lvar) kind