X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=tests%2Fcompiler.pure.lisp;h=9376ba164b6126af1728d2c8dda9aa25415f19d3;hb=732ad8030a354ff38af83a84173bfc919a4d7f1c;hp=a8ce73d616994f80a91f76c9fc29d15ba41da36f;hpb=bf6bd9ff344569c983aad21c23e84fded79c26be;p=sbcl.git diff --git a/tests/compiler.pure.lisp b/tests/compiler.pure.lisp index a8ce73d..9376ba1 100644 --- a/tests/compiler.pure.lisp +++ b/tests/compiler.pure.lisp @@ -1905,4 +1905,13 @@ (1+ x)))) (assert (= count1 0))) +;;; Up to 0.9.8.22 x86-64 had broken return value handling in the +;;; %SET-SAP-REF-DOUBLE/SINGLE VOPs. +(with-test (:name :sap-ref-float) + (compile nil '(lambda (sap) + (let ((x (setf (sb-vm::sap-ref-double sap 0) 1d0))) + (1+ x)))) + (compile nil '(lambda (sap) + (let ((x (setf (sb-vm::sap-ref-single sap 0) 1d0))) + (1+ x)))))