Skip to content
Permalink
Browse files

rv32: initial, basic stuff (i)

Just the necessary for make-config.sh to work:

1. new architecture symbol :rv32
2. purport to support :cheneygc on it
3. empty src/runtime/ arch and arch/os files
  • Loading branch information...
csrhodes committed Aug 1, 2018
1 parent 7e374ec commit 20e4117b6361c9710109e4dfe21a05d9049d9674
@@ -721,6 +721,8 @@ elif [ "$sbcl_arch" = "ppc64" ]; then
# (Sufficiently new glibc uses the correct definition, which is the same as
# 2.3.1, so define our constant for that)
echo '#define GLIBC231_STYLE_UCONTEXT 1' > src/runtime/ppc-linux-mcontext.h
elif [ "$sbcl_arch" = "rv32" ]; then
printf ' :cheneygc' >> $ltf
elif [ "$sbcl_arch" = "sparc" ]; then
# Test the compiler in order to see if we are building on Sun
# toolchain as opposed to GNU binutils, and write the appropriate
@@ -249,7 +249,7 @@
":SB-THREAD not supported on selected architecture")
("(and gencgc cheneygc)"
":GENCGC and :CHENEYGC are incompatible")
("(and cheneygc (not (or alpha arm hppa mips ppc sparc)))"
("(and cheneygc (not (or alpha arm hppa mips ppc rv32 sparc)))"
":CHENEYGC not supported on selected architecture")
("(and gencgc (not (or sparc ppc ppc64 x86 x86-64 arm arm64)))"
":GENCGC not supported on selected architecture")
@@ -25,7 +25,7 @@
(defvar sb!xc:*features*)

(defun target-platform-keyword (&optional (features sb!xc:*features*))
(let ((arch (intersection '(:alpha :arm :arm64 :hppa :mips :ppc :ppc64 :sparc :x86 :x86-64)
(let ((arch (intersection '(:alpha :arm :arm64 :hppa :mips :ppc :ppc64 :rv32 :sparc :x86 :x86-64)
features)))
(cond ((not arch) (error "No architecture selected"))
((> (length arch) 1) (error "More than one architecture selected")))
No changes.
No changes.
No changes.
No changes.

0 comments on commit 20e4117

Please sign in to comment.
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.