[prev in list] [next in list] [prev in thread] [next in thread] 

List:       sbcl-commits
Subject:    [Sbcl-commits] master: Fix sparc and riscv builds
From:       Douglas Katzman via Sbcl-commits <sbcl-commits () lists ! sourceforge ! net>
Date:       2021-01-14 3:51:35
Message-ID: 1610596295.346333.4826 () sfp-scm-1 ! v30 ! lw ! sourceforge ! com
[Download RAW message or body]

The branch "master" has been updated in SBCL:
       via  e17969ced6198fe98853ab6fc6afd2b651440280 (commit)
      from  4f5a507772f2a3490a585e0cc44375c9ed5aae36 (commit)

- Log -----------------------------------------------------------------
commit e17969ced6198fe98853ab6fc6afd2b651440280
Author: Douglas Katzman <dougk@google.com>
Date:   Wed Jan 13 22:48:26 2021 -0500

    Fix sparc and riscv builds
---
 src/code/primordial-extensions.lisp  |  3 ++-
 src/compiler/riscv/c-call.lisp       | 19 +++++++++----------
 src/compiler/riscv/target-insts.lisp | 18 ++++++++----------
 src/compiler/sparc/insts.lisp        |  6 +++---
 4 files changed, 22 insertions(+), 24 deletions(-)

diff --git a/src/code/primordial-extensions.lisp b/src/code/primordial-extensions.lisp
index 646386d1d..d808390b5 100644
--- a/src/code/primordial-extensions.lisp
+++ b/src/code/primordial-extensions.lisp
@@ -332,7 +332,8 @@
   (sb-xc:defmacro defconstant-eqx (symbol expr eqx &optional doc)
     (unless (constantp expr)
       ;; Using an allowlist ensure that nothing too crazy occurs.
-      (unless (memq symbol '(sb-vm::+common-static-symbols+
+      (unless (memq symbol '(sb-vm::+static-symbols+
+                             sb-vm::+common-static-symbols+
                              sb-c::+no-costs+
                              sb-c::+no-loads+
                              sb-format::!illegal-inside-justification
diff --git a/src/compiler/riscv/c-call.lisp b/src/compiler/riscv/c-call.lisp
index e22f83e60..91e974fd9 100644
--- a/src/compiler/riscv/c-call.lisp
+++ b/src/compiler/riscv/c-call.lisp
@@ -13,25 +13,24 @@
 
 
 (defconstant-eqx c-saved-registers
-    (list* lip-offset
-           8 9 (loop for i from 18 to 27 collect i))
+    '#.`(,lip-offset 8 9 ,@(loop for i from 18 to 27 collect i))
   #'equal)
 
 (defconstant-eqx c-unsaved-registers
-    (append (list lip-offset)
-            (loop for i from 5 to 7 collect i)
-            (loop for i from 10 to 17 collect i)
-            (loop for i from 28 to 31 collect i))
+    '#.`(,lip-offset
+         ,@(loop for i from 5 to 7 collect i)
+         ,@(loop for i from 10 to 17 collect i)
+         ,@(loop for i from 28 to 31 collect i))
   #'equal)
 
 (defconstant-eqx c-saved-float-registers
-    (list* 8 9 (loop for i from 18 to 27 collect i))
+    '#.`(8 9 ,@(loop for i from 18 to 27 collect i))
   #'equal)
 
 (defconstant-eqx c-unsaved-float-registers
-    (append (loop for i from 0 to 7 collect i)
-            (loop for i from 10 to 17 collect i)
-            (loop for i from 28 to 31 collect i))
+    '#.`(,@(loop for i from 0 to 7 collect i)
+         ,@(loop for i from 10 to 17 collect i)
+         ,@(loop for i from 28 to 31 collect i))
   #'equal)
 
 (defun make-reg-tn (offset &optional (sc 'any-reg))
diff --git a/src/compiler/riscv/target-insts.lisp b/src/compiler/riscv/target-insts.lisp
index 71b0b92ca..078b3ed3e 100644
--- a/src/compiler/riscv/target-insts.lisp
+++ b/src/compiler/riscv/target-insts.lisp
@@ -33,16 +33,15 @@ used in a u-type instruction.  This is used to make annotations about
 function addresses and register values.")
 
 (defconstant-eqx lisp-reg-symbols
-  (map 'vector
-       (lambda (name)
-         (and name (make-symbol (concatenate 'string "$" name))))
-       sb-vm::*register-names*)
+  #.(map 'vector
+         (lambda (name)
+           (and name (make-symbol (concatenate 'string "$" name))))
+         sb-vm::*register-names*)
   #'equalp)
 
 (defconstant-eqx riscv-reg-symbols
-  (coerce
-   (loop for n from 0 to 31 collect (make-symbol (format nil "x~d" n)))
-   'vector)
+  #.(coerce (loop for n from 0 to 31 collect (make-symbol (format nil "x~d" n)))
+            'vector)
   #'equalp)
 
 (defun print-reg (value stream dstate)
@@ -75,9 +74,8 @@ function addresses and register values.")
                                    (coerce-signed u-imm 12))))
 
 (defconstant-eqx float-reg-symbols
-  (coerce
-   (loop for n from 0 to 31 collect (make-symbol (format nil "ft~d" n)))
-   'vector)
+  #.(coerce (loop for n from 0 to 31 collect (make-symbol (format nil "ft~d" n)))
+            'vector)
   #'equalp)
 
 (defun print-fp-reg (value stream dstate)
diff --git a/src/compiler/sparc/insts.lisp b/src/compiler/sparc/insts.lisp
index 316bc1964..89adebfed 100644
--- a/src/compiler/sparc/insts.lisp
+++ b/src/compiler/sparc/insts.lisp
@@ -245,7 +245,7 @@ about function addresses and register values.")
   #'equalp)
 
 (defconstant-eqx integer-cond-reg-name-vec
-  (coerce integer-condition-registers 'vector)
+  #.(coerce integer-condition-registers 'vector)
   #'equalp)
 
 (deftype integer-condition-register ()
@@ -308,7 +308,7 @@ about function addresses and register values.")
   #'equalp)
 
 (defconstant-eqx fp-cond-reg-name-vec
-  (coerce fp-condition-registers 'vector)
+  #.(coerce fp-condition-registers 'vector)
   #'equalp)
 
 (defparameter fp-condition-reg-symbols
@@ -485,7 +485,7 @@ about function addresses and register values.")
   #'equalp)
 
 (defconstant-eqx cond-move-cond-reg-name-vec
-  (coerce cond-move-condition-registers 'vector)
+  #.(coerce cond-move-condition-registers 'vector)
   #'equalp)
 
 (deftype cond-move-condition-register ()

-----------------------------------------------------------------------


hooks/post-receive
-- 
SBCL


_______________________________________________
Sbcl-commits mailing list
Sbcl-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sbcl-commits
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic