X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fx86-64%2Finsts.lisp;h=15efc7dc901be37a464e10a1e75cfd4c92ec7264;hb=0c0d240960138dbea32ff6e3e65e6f16b1f2f7da;hp=b447952a577475deb246382b1d1bdc1ccc58605f;hpb=2357d3e46506c7ecbe324ea6378b9957d92ea1ac;p=sbcl.git diff --git a/src/compiler/x86-64/insts.lisp b/src/compiler/x86-64/insts.lisp index b447952..15efc7d 100644 --- a/src/compiler/x86-64/insts.lisp +++ b/src/compiler/x86-64/insts.lisp @@ -1799,7 +1799,7 @@ (:emitter (aver (or (dword-reg-p dst) (qword-reg-p dst))) (maybe-emit-rex-for-ea segment src dst - :operand-size :qword) + :operand-size (if (dword-reg-p dst) :dword :qword)) (emit-byte segment #b10001101) (emit-ea segment src (reg-tn-encoding dst)))) @@ -3494,9 +3494,9 @@ (values label (make-ea size :disp (make-fixup nil :code-object label))))) -(defun emit-constant-segment-header (constants optimize) +(defun emit-constant-segment-header (segment constants optimize) (declare (ignore constants)) - (loop repeat (if optimize 64 16) do (inst byte #x90))) + (emit-long-nop segment (if optimize 64 16))) (defun size-nbyte (size) (ecase size