1.0.24.34: IR2: additional representation for predicates, conditional moves
[sbcl.git] / src / compiler / x86-64 / values.lisp
index 0c3f4e7..05b00d6 100644 (file)
@@ -38,6 +38,7 @@
     (inst movs :qword)
     (inst cmp rsp-tn rsi)
     (inst jmp :be LOOP)
+    (inst cld)
     DONE
     (inst lea rsp-tn (make-ea :qword :base rdi :disp n-word-bytes))
     (inst sub rdi rsi)
@@ -92,7 +93,7 @@
     (inst and al-tn lowtag-mask)
     (inst cmp al-tn list-pointer-lowtag)
     (inst jmp :e LOOP)
-    (error-call vop bogus-arg-to-values-list-error list)
+    (error-call vop 'bogus-arg-to-values-list-error list)
 
     DONE
     (inst mov count start)              ; start is high address
 
     (move loop-index count)
     (inst mov start rsp-tn)
-    (inst jecxz DONE)  ; check for 0 count?
+    (inst jrcxz DONE)  ; check for 0 count?
 
     (inst sub rsp-tn count)
     (inst sub src count)