X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcompiler%2Fppc%2Fchar.lisp;h=a7400ab1ef67a2acb653079ba0f58eec587bdaaa;hb=69e6aef5e6fb3bd682c7a2cbf774034d2ea58ee8;hp=92ea7b3e84c52af8cecf1904f740cabce2081c8f;hpb=7deecae2d959173eda6a153d490c752c32050a9e;p=sbcl.git diff --git a/src/compiler/ppc/char.lisp b/src/compiler/ppc/char.lisp index 92ea7b3..a7400ab 100644 --- a/src/compiler/ppc/char.lisp +++ b/src/compiler/ppc/char.lisp @@ -121,7 +121,17 @@ (define-vop (character-compare/c) (:args (x :scs (character-reg))) - (:arg-types character (:constant character)) + (:arg-types character + ;; KLUDGE: having a SATISFIES type here is too hairy for + ;; the cross-compiler (running on an arbitrary CL host) + ;; to cope with. Since we know we only have standard + ;; characters in the build anyway, we can restrict the + ;; cross-compiler's arg type to standard char, and all + ;; is well. + #+sb-xc-host + (:constant standard-char) + #-sb-xc-host + (:constant (satisfies inlinable-character-constant-p))) (:conditional) (:info target not-p y) (:policy :fast-safe)