From 2413835a30685e89fc992df4b37c62276457695a Mon Sep 17 00:00:00 2001
From: dtc <dtc>
Date: Thu, 11 Nov 1999 16:09:49 +0000
Subject: [PATCH] Add the FFREEP instruction which is documented for the AMD
 Athlon and for which it provides a faster stack pop.

---
 compiler/x86/insts.lisp | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/compiler/x86/insts.lisp b/compiler/x86/insts.lisp
index fa54a39b4..758d1a3e5 100644
--- a/compiler/x86/insts.lisp
+++ b/compiler/x86/insts.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/insts.lisp,v 1.17 1999/09/28 16:07:50 dtc Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/x86/insts.lisp,v 1.18 1999/11/11 16:09:49 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -2500,6 +2500,14 @@
   (:emitter
    (emit-byte segment #b11011101)
    (emit-fp-op segment dest #b000)))
+;;;
+;;; Free fp register and pop the stack.
+;;;
+(define-instruction ffreep (segment dest)
+  (:printer floating-point-fp ((op '(#b111 #b000))))
+  (:emitter 
+   (emit-byte segment #b11011111)
+   (emit-fp-op segment dest #b000)))
 
 (define-instruction fabs (segment)
   (:printer floating-point-no ((op #b00001)))
-- 
GitLab