X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fpack.lisp;h=b4c5a67f3863e656c041ddce9500368444af6263;hb=e01e7a01b67b98a47730a08dfa5d0d58518486ea;hp=e28b7672c884fc06a99be05742984c9eb689db83;hpb=bffa99d35c7d50ac46b9eb7dbe25d1ab1a0e6145;p=sbcl.git diff --git a/src/compiler/pack.lisp b/src/compiler/pack.lisp index e28b767..b4c5a67 100644 --- a/src/compiler/pack.lisp +++ b/src/compiler/pack.lisp @@ -280,23 +280,23 @@ (cond ((eq (sb-kind (sc-sb src-sc)) :non-packed) (unless (member src-sc (sc-constant-scs dest-sc)) (error "loading from an invalid constant SC?~@ - VM definition inconsistent, try recompiling.")) + VM definition inconsistent, try recompiling.")) (error "no load function defined to load SC ~S ~ - from its constant SC ~S" + from its constant SC ~S" dest-name src-name)) ((member src-sc (sc-alternate-scs dest-sc)) (error "no load function defined to load SC ~S from its ~ - alternate SC ~S" + alternate SC ~S" dest-name src-name)) ((member dest-sc (sc-alternate-scs src-sc)) (error "no load function defined to save SC ~S in its ~ - alternate SC ~S" + alternate SC ~S" src-name dest-name)) (t ;; FIXME: "VM definition is inconsistent" shouldn't be a ;; possibility in SBCL. (error "loading to/from SCs that aren't alternates?~@ - VM definition is inconsistent, try recompiling."))))) + VM definition is inconsistent, try recompiling."))))) ;;; Called when we failed to pack TN. If RESTRICTED is true, then we ;;; are restricted to pack TN in its SC. @@ -316,7 +316,7 @@ (ptype (aver (member (sc-number sc) (primitive-type-scs ptype))) (error "SC ~S doesn't have any :UNBOUNDED alternate SCs, but is~@ - a SC for primitive-type ~S." + a SC for primitive-type ~S." (sc-name sc) (primitive-type-name ptype))) (t (error "SC ~S doesn't have any :UNBOUNDED alternate SCs." @@ -388,13 +388,13 @@ (declare (ignore costs load-scs)) (aver (not more-p)) (error "unable to pack a Load-TN in SC ~{~A~#[~^~;, or ~:;,~]~} ~ - for the ~:R ~:[result~;argument~] to~@ - the ~S VOP,~@ - ~:[since all SC elements are in use:~:{~%~@?~}~%~;~ - ~:*but these SC elements are not in use:~% ~S~%Bug?~*~]~ - ~:[~;~@ - Current cost info inconsistent with that in effect at compile ~ - time. Recompile.~%Compilation order may be incorrect.~]" + for the ~:R ~:[result~;argument~] to~@ + the ~S VOP,~@ + ~:[since all SC elements are in use:~:{~%~@?~}~%~;~ + ~:*but these SC elements are not in use:~% ~S~%Bug?~*~]~ + ~:[~;~@ + Current cost info inconsistent with that in effect at compile ~ + time. Recompile.~%Compilation order may be incorrect.~]" (mapcar #'sc-name scs) n arg-p (vop-info-name (vop-info (tn-ref-vop op))) @@ -412,12 +412,12 @@ (declare (ignore costs)) (aver (not more-p)) (error "~S is not valid as the ~:R ~:[result~;argument~] to VOP:~ - ~% ~S,~@ - since the TN's primitive type ~S doesn't allow any of the SCs~@ - allowed by the operand restriction:~% ~S~ - ~:[~;~@ - Current cost info inconsistent with that in effect at compile ~ - time. Recompile.~%Compilation order may be incorrect.~]" + ~% ~S,~@ + since the TN's primitive type ~S doesn't allow any of the SCs~@ + allowed by the operand restriction:~% ~S~ + ~:[~;~@ + Current cost info inconsistent with that in effect at compile ~ + time. Recompile.~%Compilation order may be incorrect.~]" tn pos arg-p (template-name (vop-info (tn-ref-vop ref))) (primitive-type-name ptype) @@ -1417,7 +1417,7 @@ ;; For non-x86 ports the presence of a save-tn associated with a ;; tn is used to identify the old-fp and return-pc tns. It depends ;; on the old-fp and return-pc being passed in registers. - #!-x86 + #!-(or x86 x86-64) (when (and (not (eq (tn-kind tn) :specified-save)) (conflicts-in-sc original sc offset)) (error "~S is wired to a location that it conflicts with." tn)) @@ -1428,12 +1428,12 @@ (when (and (not (eq (tn-kind tn) :specified-save)) (conflicts-in-sc original sc offset)) (format t "~&* Pack-wired-tn possible conflict:~% ~ - tn: ~S; tn-kind: ~S~% ~ - sc: ~S~% ~ - sb: ~S; sb-name: ~S; sb-kind: ~S~% ~ - offset: ~S; end: ~S~% ~ - original ~S~% ~ - tn-save-tn: ~S; tn-kind of tn-save-tn: ~S~%" + tn: ~S; tn-kind: ~S~% ~ + sc: ~S~% ~ + sb: ~S; sb-name: ~S; sb-kind: ~S~% ~ + offset: ~S; end: ~S~% ~ + original ~S~% ~ + tn-save-tn: ~S; tn-kind of tn-save-tn: ~S~%" tn (tn-kind tn) sc sb (sb-name sb) (sb-kind sb) offset end @@ -1444,7 +1444,7 @@ ;; the stack so the above hack for the other ports does not always ;; work. Here the old-fp and return-pc tns are identified by being ;; on the stack in their standard save locations. - #!+x86 + #!+(or x86 x86-64) (when (and (not (eq (tn-kind tn) :specified-save)) (not (and (string= (sb-name sb) "STACK") (or (= offset 0)