sbcl: fix build on hosts without avx2.
Patch picked from upstream. Return to using ccl for bootstrapping.
This commit is contained in:
parent
df7ebc36a9
commit
04e8462089
3 changed files with 27 additions and 38 deletions
|
@ -1,36 +0,0 @@
|
||||||
#2020/01/30 Patch has not yet been accepted upstream
|
|
||||||
From f4de7a2a21acf1a205b725b4bb5596e1475bad26 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Eric Timmons <etimmons@mit.edu>
|
|
||||||
Date: Sun, 8 Dec 2019 14:00:01 -0500
|
|
||||||
Subject: [PATCH] Fix ARM build using ECL host
|
|
||||||
|
|
||||||
ECL appears to not like ~T nested in ~<, even when it's the first argument. So
|
|
||||||
replace the ~9T that gets triggered during build with spaces.
|
|
||||||
---
|
|
||||||
src/compiler/checkgen.lisp | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/compiler/checkgen.lisp b/src/compiler/checkgen.lisp
|
|
||||||
index a49a0a1fc..026782327 100644
|
|
||||||
--- src/compiler/checkgen.lisp
|
|
||||||
+++ src/compiler/checkgen.lisp
|
|
||||||
@@ -518,14 +518,14 @@ (defun cast-check-uses (cast)
|
|
||||||
(cond ((and (ref-p use) (constant-p (ref-leaf use)))
|
|
||||||
(warn condition
|
|
||||||
:format-control "~:[This~;~:*~A~] is not a ~
|
|
||||||
- ~<~%~9T~:;~/sb-impl:print-type/:~>~% ~S"
|
|
||||||
+ ~<~% ~:;~/sb-impl:print-type/:~>~% ~S"
|
|
||||||
:format-arguments
|
|
||||||
(list what atype (constant-value (ref-leaf use)))))
|
|
||||||
(t
|
|
||||||
(warn condition
|
|
||||||
:format-control
|
|
||||||
"~:[Result~;~:*~A~] is a ~/sb-impl:print-type/, ~
|
|
||||||
- ~<~%~9T~:;not a ~/sb-impl:print-type/.~>"
|
|
||||||
+ ~<~% ~:;not a ~/sb-impl:print-type/.~>"
|
|
||||||
:format-arguments (list what dtype atype)))))))
|
|
||||||
(values))
|
|
||||||
|
|
||||||
--
|
|
||||||
2.24.0
|
|
||||||
|
|
25
srcpkgs/sbcl/patches/fix-avx2.patch
Normal file
25
srcpkgs/sbcl/patches/fix-avx2.patch
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
From d0243a9f9961f0afdc09b555821b88edb2488be9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Stas Boukarev <stassats@gmail.com>
|
||||||
|
Date: Wed, 30 Sep 2020 02:46:31 +0300
|
||||||
|
Subject: [PATCH] Fix CPUID checking.
|
||||||
|
|
||||||
|
cpu-has- is an index, not a mask. Have popcnt and no avx => bad time.
|
||||||
|
---
|
||||||
|
src/compiler/x86-64/parms.lisp | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/compiler/x86-64/parms.lisp b/src/compiler/x86-64/parms.lisp
|
||||||
|
index 5aeddff47c..a9d2bef01e 100644
|
||||||
|
--- src/compiler/x86-64/parms.lisp
|
||||||
|
+++ src/compiler/x86-64/parms.lisp
|
||||||
|
@@ -178,8 +178,8 @@
|
||||||
|
(defvar *binding-stack-pointer*)
|
||||||
|
|
||||||
|
;;; Bit indices into *CPU-FEATURE-BITS*
|
||||||
|
-(defconstant cpu-has-ymm-registers 1)
|
||||||
|
-(defconstant cpu-has-popcnt 2)
|
||||||
|
+(defconstant cpu-has-ymm-registers 0)
|
||||||
|
+(defconstant cpu-has-popcnt 1)
|
||||||
|
|
||||||
|
(defconstant-eqx +static-symbols+
|
||||||
|
`#(,@+common-static-symbols+
|
|
@ -35,8 +35,8 @@ aarch64)
|
||||||
checksum+=" 494829f8e3ea7eb1c308b343cc390daf94a6215030a5f2b9ee0cded67511e918"
|
checksum+=" 494829f8e3ea7eb1c308b343cc390daf94a6215030a5f2b9ee0cded67511e918"
|
||||||
;;
|
;;
|
||||||
*-musl)
|
*-musl)
|
||||||
makedepends+=" ecl"
|
makedepends+=" ccl"
|
||||||
_bootstrap_lisp="ecl"
|
_bootstrap_lisp="ccl --batch --quiet --no-init"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue