X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fx86%2Fpred.lisp;h=da77d6fe0cab9cb2db8a0c39453a86d44622c86a;hb=37d3828773e2f847bb1ed7522b0af4fb8e736fc8;hp=f7bb241939d1fe5d3327dd2fcd9d04783655fc15;hpb=0408e5d19ea46776d7bdad4a46f643e5e9c27bfe;p=sbcl.git diff --git a/src/compiler/x86/pred.lisp b/src/compiler/x86/pred.lisp index f7bb241..da77d6f 100644 --- a/src/compiler/x86/pred.lisp +++ b/src/compiler/x86/pred.lisp @@ -65,6 +65,10 @@ ((unsigned-byte-32 unsigned-byte-31) unsigned-reg move-if/unsigned) (signed-byte-32 signed-reg move-if/signed) + ;; FIXME: Can't use CMOV with byte registers, and characters live + ;; in such outside of unicode builds. A better solution then just + ;; disabling MOVE-IF/CHAR should be possible, though. + #!+sb-unicode (character character-reg move-if/char) ((single-float complex-single-float @@ -151,6 +155,8 @@ (def-move-if move-if/fx tagged-num any-reg control-stack) (def-move-if move-if/unsigned unsigned-num unsigned-reg unsigned-stack) (def-move-if move-if/signed signed-num signed-reg signed-stack) + ;; FIXME: See *CMOV-PTYPE-REPRESENTATION-VOP* above. + #!+sb-unicode (def-move-if move-if/char character character-reg character-stack) (def-move-if move-if/sap system-area-pointer sap-reg sap-stack))