X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fir2tran.lisp;h=f4b8a79d7c459da9c25fb252d854ffb42ffa611d;hb=8be78b41ac1695e1c9b5d7f6c8bd41e3c7e6e6fc;hp=026dd5f461be97e214d339959b371e9e2ca6b619;hpb=ce6c2726bfb08211d6d281fdf070490110bdc374;p=sbcl.git diff --git a/src/compiler/ir2tran.lisp b/src/compiler/ir2tran.lisp index 026dd5f..f4b8a79 100644 --- a/src/compiler/ir2tran.lisp +++ b/src/compiler/ir2tran.lisp @@ -1833,6 +1833,13 @@ (if (template-p (basic-combination-info node)) (ir2-convert-template node block) (ir2-convert-full-call node block)))) + +;; just a fancy identity +(defoptimizer (%typep-wrapper ir2-convert) ((value variable type) node block) + (let* ((lvar (node-lvar node)) + (results (lvar-result-tns lvar (list (primitive-type-or-lose t))))) + (emit-move node block (lvar-tn node block value) (first results)) + (move-lvar-result node block results lvar))) ;;; Convert the code in a component into VOPs. (defun ir2-convert (component)