Fix OPEN when :if-exists/:if-does-not-exist are both NIL or :ERROR.
[sbcl.git] / src / compiler / alpha / move.lisp
index bfdb4fe..ce7fd88 100644 (file)
   (:results (y :scs (signed-reg unsigned-reg)))
   (:note "constant load")
   (:generator 1
-    (inst li (tn-value x) y)))
+    (cond ((sb!c::tn-leaf x)
+           (inst li (tn-value x) y))
+          (t
+           (loadw y code-tn (tn-offset x) other-pointer-lowtag)
+           (inst sra y n-fixnum-tag-bits y)))))
 (define-move-vop move-to-word-c :move
   (constant) (signed-reg unsigned-reg))