X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=tests%2Finterface.pure.lisp;h=411c8b59abbea84f7cd6e82bdb5fb63d74bf0f66;hb=7254da92a1ba1bf8bc5a2e78a29d993f272d526e;hp=7c600c6d41fd10bdc9155394c8c711ce25af42a0;hpb=4c81c652cdc32faefee1bccb84c3c9a7854e3edd;p=sbcl.git diff --git a/tests/interface.pure.lisp b/tests/interface.pure.lisp index 7c600c6..411c8b5 100644 --- a/tests/interface.pure.lisp +++ b/tests/interface.pure.lisp @@ -116,3 +116,14 @@ (loop repeat 2 do (compile nil '(lambda (x) x)) do (sb-ext:gc :full t)) + +;;; On x86-64, the instruction definitions for CMP*[PS][SD] were broken +;;; so that the disassembler threw an error when they were used with +;;; one operand in memory. +(with-test (:name :bug-814702) + (disassemble (lambda (x) + (= #C(2.0f0 3.0f0) + (the (complex single-float) x)))) + (disassemble (lambda (x y) + (= (the (complex single-float) x) + (the (complex single-float) y)))))