X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fvop.lisp;h=9f7ace36579da8936a34ecc1df2f74779dd3b3fa;hb=dcd86042bba514f5dfc39246de9cdbb030648569;hp=cfcb0f4aa31659daa8888ad326de0025560f0d2a;hpb=d604a358d8e5eb5587989e0a4f1d31dbe6ac5ffe;p=sbcl.git diff --git a/src/compiler/vop.lisp b/src/compiler/vop.lisp index cfcb0f4..9f7ace3 100644 --- a/src/compiler/vop.lisp +++ b/src/compiler/vop.lisp @@ -239,10 +239,6 @@ ;; SC and OFFSET are already filled in. ;; ;; CONSTANT-TNs are non-packed TNs that represent constants. - ;; :CONSTANT TNs may eventually be converted to :CACHED-CONSTANT - ;; normal TNs. - ;; - ;; FIXME: What is :CACHED-CONSTANT? (normal-tns nil :type (or tn null)) (restricted-tns nil :type (or tn null)) (wired-tns nil :type (or tn null)) @@ -327,7 +323,9 @@ (arguments nil :type list) ;; a function type specifier representing the arguments and results ;; of this function - (type 'function :type (or list (member function)))) + (type 'function :type (or list (member function))) + ;; xref information for the XEP + (xref nil :type (or null simple-vector))) ;;; An IR2-PHYSENV is used to annotate non-LET LAMBDAs with their ;;; passing locations. It is stored in the PHYSENV-INFO. @@ -432,7 +430,7 @@ ;; ;; :STRANGE ;; A segment of a "strange loop" in a non-reducible flow graph. - (kind (required-argument) :type (member :outer :natural :strange)) + (kind (missing-arg) :type (member :outer :natural :strange)) ;; The first and last blocks in the loop. There may be more than one tail, ;; since there may be multiple back branches to the same head. (head nil :type (or cblock null)) @@ -448,7 +446,9 @@ (depth 0 :type fixnum) ;; The head of the list of blocks directly within this loop. We must recurse ;; on INFERIORS to find all the blocks. - (blocks nil :type (or null cblock))) + (blocks nil :type (or null cblock)) + ;; Backend saves the first emitted block of each loop here. + (info nil)) (defprinter (cloop :conc-name loop-) kind