0.9.6.23:
[sbcl.git] / src / compiler / x86-64 / float.lisp
index 728079d..9f97d65 100644 (file)
          (unless (location= imag r-imag)
            (inst movss r-imag imag))))
       (complex-single-stack
-       (inst movss (ea-for-csf-real-stack r) real)
+       (unless (location= real r)
+         (inst movss (ea-for-csf-real-stack r) real))
        (inst movss (ea-for-csf-imag-stack r) imag)))))
 
 (define-vop (make-complex-double-float)
          (unless (location= imag r-imag)
            (inst movsd r-imag imag))))
       (complex-double-stack
-       (inst movsd (ea-for-cdf-real-stack r) real)
+       (unless (location= real r)
+         (inst movsd (ea-for-cdf-real-stack r) real))
        (inst movsd (ea-for-cdf-imag-stack r) imag)))))
 
 (define-vop (complex-float-value)