From 79712f514ae633363f6100f927b60597875b718b Mon Sep 17 00:00:00 2001
From: cwang <cwang>
Date: Mon, 24 May 2004 22:52:35 +0000
Subject: [PATCH] amd64 changes

---
 compiler/aliencomp.lisp |  6 +++---
 compiler/globaldb.lisp  | 14 +++++++-------
 compiler/pack.lisp      |  6 +++---
 compiler/saptran.lisp   |  4 ++--
 4 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/compiler/aliencomp.lisp b/compiler/aliencomp.lisp
index 6699f6c3b..9cb21e6ad 100644
--- a/compiler/aliencomp.lisp
+++ b/compiler/aliencomp.lisp
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/aliencomp.lisp,v 1.27 2002/02/08 16:14:35 toy Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/aliencomp.lisp,v 1.28 2004/05/24 22:52:34 cwang Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -365,7 +365,7 @@
     (unless bits
       (abort-transform "Unknown size: ~S" (unparse-alien-type alien-type)))
     (if (local-alien-info-force-to-memory-p info)
-	(if (backend-featurep :x86)
+	(if (or (backend-featurep :x86) (backend-featurep :amd64))
 	    `(truly-the system-area-pointer
 			(%primitive alloc-alien-stack-space
 				    ,(ceiling (alien-type-bits alien-type)
@@ -446,7 +446,7 @@
   (let* ((info (continuation-value info))
 	 (alien-type (local-alien-info-type info)))
     (if (local-alien-info-force-to-memory-p info)
-	(if (backend-featurep :x86)
+	(if (or (backend-featurep :x86)	(backend-featurep :amd64))
 	    `(%primitive dealloc-alien-stack-space
 			 ,(ceiling (alien-type-bits alien-type)
 				   vm:byte-bits))
diff --git a/compiler/globaldb.lisp b/compiler/globaldb.lisp
index 15fb6c2f9..1c7faab47 100644
--- a/compiler/globaldb.lisp
+++ b/compiler/globaldb.lisp
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/globaldb.lisp,v 1.49 2004/05/17 17:22:30 rtoy Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/globaldb.lisp,v 1.50 2004/05/24 22:52:34 cwang Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -289,8 +289,8 @@
 (defun info-hash (x)
   (cond
    ((symbolp x)
-    #-(or gengc x86 sparc) (%sxhash-simple-string (symbol-name x))
-    #+(or gengc x86 sparc) (sxhash x))
+    #-(or gengc x86 amd64 sparc) (%sxhash-simple-string (symbol-name x))
+    #+(or gengc x86 amd64 sparc) (sxhash x))
    ((and (listp x)
 	 (eq (car x) 'setf)
 	 (let ((next (cdr x)))
@@ -299,8 +299,8 @@
 	       (when (and (symbolp name) (null (cdr next)))
 		 (let ((sym name))
 		   (declare (symbol sym))
-		   (logxor #-(or gengc x86 sparc) (%sxhash-simple-string (symbol-name sym))
-			   #+(or gengc x86 sparc) (sxhash sym)
+		   (logxor #-(or gengc x86 amd64 sparc) (%sxhash-simple-string (symbol-name sym))
+			   #+(or gengc x86 amd64 sparc) (sxhash sym)
 			   110680597))))))))
    (t
     (sxhash x))))
@@ -494,11 +494,11 @@
 ;;; Not needed with the gengc system, because we use an address independent
 ;;; hashing.
 ;;; 
-#-(or gengc x86)
+#-(or gengc x86 amd64)
 (defun info-cache-gc-hook ()
   (setq *cached-info-environment* nil))
 ;;;
-#-(or gengc x86)
+#-(or gengc x86 amd64)
 (pushnew 'info-cache-gc-hook *after-gc-hooks*)
 
 
diff --git a/compiler/pack.lisp b/compiler/pack.lisp
index 7f993a62e..706bfe02c 100644
--- a/compiler/pack.lisp
+++ b/compiler/pack.lisp
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/pack.lisp,v 1.58 2002/12/07 18:19:34 toy Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/pack.lisp,v 1.59 2004/05/24 22:52:35 cwang Rel $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -1567,7 +1567,7 @@
     ;; For non x86 ports the presence of a save-tn associated with a
     ;; tn is used to identify the old-fp and return-pc tns. It depends
     ;; on the old-fp and return-pc being passed in registers.
-    (unless (backend-featurep :x86)
+    (unless (or (backend-featurep :x86) (backend-featurep :amd64))
       (when (and (not (eq (tn-kind tn) :specified-save))
 		 (conflicts-in-sc original sc offset))
 	    (error "~S wired to a location that it conflicts with." tn)))
@@ -1590,7 +1590,7 @@
 		  original 
 		  (tn-save-tn tn) (tn-kind (tn-save-tn tn))))
     
-    (when (backend-featurep :x86)
+    (when (or (backend-featurep :x86) (backend-featurep :amd64))
        ;; On the x86 ports the old-fp and return-pc are often passed
        ;; on the stack so the above hack for the other ports does not
        ;; always work.  Here the old-fp and return-pc tns are
diff --git a/compiler/saptran.lisp b/compiler/saptran.lisp
index 818c14ebe..4f122122b 100644
--- a/compiler/saptran.lisp
+++ b/compiler/saptran.lisp
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/saptran.lisp,v 1.16 2003/10/15 13:16:37 toy Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/saptran.lisp,v 1.17 2004/05/24 22:52:35 cwang Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -141,7 +141,7 @@
   (flushable))
 (defknown sap-ref-double (system-area-pointer fixnum) double-float
   (flushable))
-#+(or x86 long-float)
+#+(or x86 amd64 long-float)
 (defknown sap-ref-long (system-area-pointer fixnum) long-float
   (flushable))
 
-- 
GitLab