X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fmips%2Fchar.lisp;h=b7d4e940e939f0b88844fbd5be14dc57b0dc2a61;hb=bbfff61cef2c6fe35929d46283f3e56fb0fe98b1;hp=8b8536a47efeb9728c3a7ccd8b30d427f4d03f67;hpb=495f7dfb9c4ce0ba965f3297a4c94f6c75691b70;p=sbcl.git diff --git a/src/compiler/mips/char.lisp b/src/compiler/mips/char.lisp index 8b8536a..b7d4e94 100644 --- a/src/compiler/mips/char.lisp +++ b/src/compiler/mips/char.lisp @@ -92,10 +92,18 @@ ;;; Comparison of characters. ;;; -(define-vop (character-compare pointer-compare) +(define-vop (character-compare) (:args (x :scs (character-reg)) (y :scs (character-reg))) - (:arg-types character character)) + (:arg-types character character) + (:temporary (:scs (non-descriptor-reg)) temp) + (:conditional) + (:info target not-p) + (:policy :fast-safe) + (:note "inline comparison") + (:variant-vars condition) + (:generator 3 + (three-way-comparison x y condition :unsigned not-p target temp))) (define-vop (fast-char=/character character-compare) (:translate char=)