From 766ad7a37fad03d71fdcfa2f4a4857e970b557dc Mon Sep 17 00:00:00 2001
From: rtoy <rtoy>
Date: Fri, 23 May 2008 18:16:58 +0000
Subject: [PATCH] o Add OLD-VM as nickname. o Add hack for fused-multiply-add
 and fused-multiply-subtract.  Not   sure why this is needed, but without it,
 we can't cross-compile on   ppc.

---
 tools/cross-scripts/cross-ppc-ppc-darwin.lisp | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/tools/cross-scripts/cross-ppc-ppc-darwin.lisp b/tools/cross-scripts/cross-ppc-ppc-darwin.lisp
index 24593e8d7..3924ef453 100644
--- a/tools/cross-scripts/cross-ppc-ppc-darwin.lisp
+++ b/tools/cross-scripts/cross-ppc-ppc-darwin.lisp
@@ -2,7 +2,7 @@
 
 ;;; Rename the X86 package and backend so that new-backend does the
 ;;; right thing.
-(rename-package "PPC" "OLD-PPC")
+(rename-package "PPC" "OLD-PPC" '("OLD-VM"))
 (setf (c:backend-name c:*native-backend*) "OLD-PPC")
 
 (c::new-backend "PPC"
@@ -147,6 +147,11 @@
 (setf (fdefinition 'vm::ash-left-mod32) #'old-ppc::ash-left-mod32)
 (setf (fdefinition 'vm::lognot-mod32) #'old-ppc::lognot-mod32)
 
+;; Fused multiply hack.  Don't know why this is needed for a cross-compile
+(setf (fdefinition 'vm::fused-multiply-add) #'old-ppc::fused-multiply-add)
+(setf (fdefinition 'vm::fused-multiply-subtract) #'old-ppc::fused-multiply-subtract)
+;; end
+
 (let ((function (symbol-function 'kernel:error-number-or-lose)))
   (let ((*info-environment* (c:backend-info-environment c:*target-backend*)))
     (setf (symbol-function 'kernel:error-number-or-lose) function)
-- 
GitLab