This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "CMU Common Lisp".
The branch, master has been updated via 3832e020b43c1270e0710097381fb718271e61bf (commit) from eb7aef5b50c77b2ada5ec883b446b18e18348012 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit 3832e020b43c1270e0710097381fb718271e61bf Author: Raymond Toy toy.raymond@gmail.com Date: Tue Sep 25 21:09:46 2012 -0700
Fix ticket:63.
diff --git a/src/compiler/x86/system.lisp b/src/compiler/x86/system.lisp index edd4aad..bb32332 100644 --- a/src/compiler/x86/system.lisp +++ b/src/compiler/x86/system.lisp @@ -1,4 +1,4 @@ -;;; -*- Mode: LISP; Syntax: Common-Lisp; Base: 10; Package: x86 -*- +4;;; -*- Mode: LISP; Syntax: Common-Lisp; Base: 10; Package: x86 -*- ;;; ;;; ********************************************************************** ;;; This code was written as part of the CMU Common Lisp project at @@ -598,11 +598,21 @@ (:result-types unsigned-num unsigned-num) (:temporary (:sc unsigned-reg :offset eax-offset :target lo) eax) (:temporary (:sc unsigned-reg :offset edx-offset :target hi) edx) + ;; CPUID writes to eax, ebx, ecx, and edx. We need temporaries for + ;; ebx and ecx so we don't destroy any live uses of ebx and ecx. + (:temporary (:sc unsigned-reg :offset ebx-offset + :from (:eval 0) :to (:result 1)) + ebx) + (:temporary (:sc unsigned-reg :offset ecx-offset + :from (:eval 0) :to (:result 2)) + ecx) + (:ignore ebx ecx) (:generator 1 - (inst cpuid) - (inst rdtsc) - (move hi edx) - (move lo eax))) + (inst mov eax 0) + (inst cpuid) + (inst rdtsc) + (move hi edx) + (move lo eax)))
#+pentium (defun read-cycle-counter ()
-----------------------------------------------------------------------
Summary of changes: src/compiler/x86/system.lisp | 20 +++++++++++++++----- 1 files changed, 15 insertions(+), 5 deletions(-)
hooks/post-receive