[git] CMU Common Lisp branch master updated. snapshot-2014-06-97-g6635ef2

Raymond Toy rtoy at common-lisp.net
Tue Aug 5 15:45:42 UTC 2014

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  6635ef21befd5126c23140d4be12db874577e24c (commit)
      from  4b8c616db3f31214542a2793fa7365e464990f74 (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 6635ef21befd5126c23140d4be12db874577e24c
Author: Raymond Toy <toy.raymond at gmail.com>
Date:   Tue Aug 5 08:42:36 2014 -0700

    Simplify SSE2-FLOATING-POINT-MODES vop by removing an unneeded
    temp. The setter is also simplified slightly by possibly removing an
    unnecessary move.

diff --git a/src/compiler/x86/float-sse2.lisp b/src/compiler/x86/float-sse2.lisp
index e7b1b86..76bcc31 100644
--- a/src/compiler/x86/float-sse2.lisp
+++ b/src/compiler/x86/float-sse2.lisp
@@ -1331,17 +1331,15 @@
 ;; Returns exactly the mxcsr register, except the masks are flipped
 ;; because we want exception enable flags, not masks.
 (define-vop (sse2-floating-point-modes)
-  (:results (res :scs (unsigned-reg)))
+  (:results (result :scs (unsigned-reg)))
   (:result-types unsigned-num)
   (:translate sse2-floating-point-modes)
   (:policy :fast-safe)
-  (:temporary (:sc unsigned-stack) cw-stack)
-  (:temporary (:sc unsigned-reg) temp)
-  (:generator 8
-    (inst stmxcsr cw-stack)
-    (inst mov temp cw-stack)
-    (inst xor temp (ash #x3f 7))
-    (inst mov res temp)))
+  (:temporary (:sc unsigned-stack) temp)
+  (:generator 3
+    (inst stmxcsr temp)
+    (inst mov result temp)
+    (inst xor result (ash #x3f 7))))
 ;; Set mxcsr exactly to whatever is given, except we invert the
 ;; exception enable flags to make them match the exception mask flags.
@@ -1362,7 +1360,7 @@
     (inst xor temp (ash #x3f 7))	; Convert enables to masks
     (inst mov cw-stack temp)
     (inst ldmxcsr cw-stack)
-    (inst mov res new)))
+    (move res new)))
 ;; For the record here is the format of the x87 control and status
 ;; words:


Summary of changes:
 src/compiler/x86/float-sse2.lisp |   16 +++++++---------
 1 file changed, 7 insertions(+), 9 deletions(-)

CMU Common Lisp

More information about the cmucl-cvs mailing list