X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fx86-64%2Fvm.lisp;h=258ccb76aa850f19d74e85b5f0dfaa58de079e9f;hb=1af3faa2b79125b774c2182cab841ed7ee555bed;hp=44a68b1b177c3d7dc7112a0c962f5094fc253ac7;hpb=a2ff6543c79752bfe42578f794bda1c28167fd10;p=sbcl.git diff --git a/src/compiler/x86-64/vm.lisp b/src/compiler/x86-64/vm.lisp index 44a68b1..258ccb7 100644 --- a/src/compiler/x86-64/vm.lisp +++ b/src/compiler/x86-64/vm.lisp @@ -112,8 +112,12 @@ (defreg r13 26 :qword) (defreg r14 28 :qword) (defreg r15 30 :qword) + ;; for no good reason at the time, r12 and r13 were missed from the + ;; list of qword registers. However + ;; r13 is already used as temporary [#lisp irc 2005/01/30] + ;; and we're now going to use r12 for the struct thread* (defregset *qword-regs* rax rcx rdx rbx rsi rdi - r8 r9 r10 r11 #+nil r12 #+nil r13 r14 r15) + r8 r9 r10 r11 r14 r15) ;; floating point registers (defreg float0 0 :float) @@ -393,6 +397,9 @@ (symbol-value (symbolicate register-arg-name "-TN"))) *register-arg-names*)) +(defparameter thread-base-tn + (make-random-tn :kind :normal :sc (sc-or-lose 'unsigned-reg ) + :offset r12-offset)) (defparameter fp-single-zero-tn (make-random-tn :kind :normal