aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2023-04-12 18:09:27 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2023-04-12 18:09:27 +0000
commit1ca12bd927d76f5a1b9aad2c72f673a3b01919c0 (patch)
tree2a32358c333dfdf6272c0bd903275a5f1ae0c74f
parent29e3a06510823edbb91667d21f530d3ec778116d (diff)
downloadsrc-1ca12bd927d76f5a1b9aad2c72f673a3b01919c0.tar.gz
src-1ca12bd927d76f5a1b9aad2c72f673a3b01919c0.zip
Remove the riscv64sf architecture.
Reviewed by: jrtc27, arichardson, br, kp, imp, emaste Differential Revision: https://reviews.freebsd.org/D39496
-rw-r--r--Makefile2
-rw-r--r--Makefile.inc13
-rw-r--r--share/man/man7/arch.79
-rw-r--r--share/mk/local.meta.sys.mk2
-rw-r--r--share/mk/sys.mk2
-rw-r--r--sys/conf/kern.mk1
-rw-r--r--sys/riscv/include/param.h8
-rwxr-xr-xtools/boot/universe.sh2
8 files changed, 8 insertions, 21 deletions
diff --git a/Makefile b/Makefile
index 4e474ad04e61..8232041e0a35 100644
--- a/Makefile
+++ b/Makefile
@@ -525,7 +525,7 @@ _UNIVERSE_TARGETS= ${TARGETS}
TARGET_ARCHES_arm?= armv6 armv7
TARGET_ARCHES_arm64?= aarch64
TARGET_ARCHES_powerpc?= powerpc powerpc64 powerpc64le ${EXTRA_ARCHES_powerpc}
-TARGET_ARCHES_riscv?= riscv64 riscv64sf
+TARGET_ARCHES_riscv?= riscv64
.for target in ${TARGETS}
TARGET_ARCHES_${target}?= ${target}
.endfor
diff --git a/Makefile.inc1 b/Makefile.inc1
index 471267b3435f..e131cc463bc8 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -148,8 +148,7 @@ KNOWN_ARCHES?= aarch64/arm64 \
powerpc64/powerpc \
powerpc64le/powerpc \
powerpcspe/powerpc \
- riscv64/riscv \
- riscv64sf/riscv
+ riscv64/riscv
.if ${TARGET} == ${TARGET_ARCH}
_t= ${TARGET}
diff --git a/share/man/man7/arch.7 b/share/man/man7/arch.7
index e8d43d185a08..cd341fcd217b 100644
--- a/share/man/man7/arch.7
+++ b/share/man/man7/arch.7
@@ -97,7 +97,6 @@ release to support each architecture.
.It powerpc64 Ta 9.0
.It powerpc64le Ta 13.0
.It riscv64 Ta 12.0
-.It riscv64sf Ta 12.0
.El
.Pp
Discontinued architectures are shown in the following table.
@@ -117,6 +116,7 @@ Discontinued architectures are shown in the following table.
.It mips64elhf Ta 12.0 Ta 13.x
.It mips64hf Ta 12.0 Ta 13.x
.It pc98 Ta 2.2 Ta 11.4
+.It riscv64sf Ta 12.0 Ta 13.x
.It sparc64 Ta 5.0 Ta 12.x
.El
.Ss Type sizes
@@ -205,7 +205,6 @@ Machine-dependent type sizes:
.It powerpc64 Ta 8 Ta 8 Ta 8
.It powerpc64le Ta 8 Ta 8 Ta 8
.It riscv64 Ta 8 Ta 16 Ta 8
-.It riscv64sf Ta 8 Ta 16 Ta 8
.El
.Pp
.Sy time_t
@@ -223,7 +222,6 @@ is 8 bytes on all supported architectures except i386.
.It powerpc64 Ta big Ta unsigned
.It powerpc64le Ta little Ta unsigned
.It riscv64 Ta little Ta signed
-.It riscv64sf Ta little Ta signed
.El
.Ss Page Size
.Bl -column -offset indent "Architecture" "Page Sizes"
@@ -238,7 +236,6 @@ is 8 bytes on all supported architectures except i386.
.It powerpc64 Ta 4K
.It powerpc64le Ta 4K
.It riscv64 Ta 4K, 2M, 1G
-.It riscv64sf Ta 4K, 2M, 1G
.El
.Ss Floating Point
.Bl -column -offset indent "Architecture" "float, double" "long double"
@@ -253,7 +250,6 @@ is 8 bytes on all supported architectures except i386.
.It powerpc64 Ta hard Ta hard, double precision
.It powerpc64le Ta hard Ta hard, double precision
.It riscv64 Ta hard Ta hard, quad precision
-.It riscv64sf Ta soft Ta soft, quad precision
.El
.Ss Default Tool Chain
.Fx
@@ -285,7 +281,7 @@ or similar things like boot sequences.
.It arm Ta arm Ta armv6, armv7
.It i386 Ta i386 Ta i386
.It powerpc Ta powerpc Ta powerpc, powerpcspe, powerpc64, powerpc64le
-.It riscv Ta riscv Ta riscv64, riscv64sf
+.It riscv Ta riscv Ta riscv64
.El
.Ss Predefined Macros
The compiler provides a number of predefined macros.
@@ -322,7 +318,6 @@ Architecture-specific macros:
.It powerpc64 Ta Dv __powerpc__ , Dv __powerpc64__
.It powerpc64le Ta Dv __powerpc__ , Dv __powerpc64__
.It riscv64 Ta Dv __riscv , Dv __riscv_xlen == 64
-.It riscv64sf Ta Dv __riscv , Dv __riscv_xlen == 64 , Dv __riscv_float_abi_soft
.El
.Pp
Compilers may define additional variants of architecture-specific macros.
diff --git a/share/mk/local.meta.sys.mk b/share/mk/local.meta.sys.mk
index fc28b83d82cc..5e477885e1e2 100644
--- a/share/mk/local.meta.sys.mk
+++ b/share/mk/local.meta.sys.mk
@@ -17,7 +17,7 @@ MK_INSTALL_AS_USER= yes
TARGET_ARCHES_arm?= arm armv6 armv7
TARGET_ARCHES_arm64?= aarch64
TARGET_ARCHES_powerpc?= powerpc powerpc64 powerpc64le powerpcspe
-TARGET_ARCHES_riscv?= riscv64 riscv64sf
+TARGET_ARCHES_riscv?= riscv64
# some corner cases
BOOT_MACHINE_DIR.amd64 = boot/i386
diff --git a/share/mk/sys.mk b/share/mk/sys.mk
index cddbb0da584c..1ab0022ddc21 100644
--- a/share/mk/sys.mk
+++ b/share/mk/sys.mk
@@ -13,7 +13,7 @@ unix ?= We run FreeBSD, not UNIX.
# and/or endian. This is called MACHINE_CPU in NetBSD, but that's used
# for something different in FreeBSD.
#
-__TO_CPUARCH=C/arm(v[67])?/arm/:C/powerpc(64|64le|spe)/powerpc/:C/riscv64(sf)?/riscv/
+__TO_CPUARCH=C/arm(v[67])?/arm/:C/powerpc(64|64le|spe)/powerpc/:C/riscv64/riscv/
MACHINE_CPUARCH=${MACHINE_ARCH:${__TO_CPUARCH}}
.endif
diff --git a/sys/conf/kern.mk b/sys/conf/kern.mk
index b7f89c78d19d..9040fced6cba 100644
--- a/sys/conf/kern.mk
+++ b/sys/conf/kern.mk
@@ -331,5 +331,4 @@ LD_EMULATION_powerpcspe= elf32ppc_fbsd
LD_EMULATION_powerpc64= elf64ppc_fbsd
LD_EMULATION_powerpc64le= elf64lppc_fbsd
LD_EMULATION_riscv64= elf64lriscv
-LD_EMULATION_riscv64sf= elf64lriscv
LD_EMULATION=${LD_EMULATION_${MACHINE_ARCH}}
diff --git a/sys/riscv/include/param.h b/sys/riscv/include/param.h
index 70f8ecde971b..56fe9530b76d 100644
--- a/sys/riscv/include/param.h
+++ b/sys/riscv/include/param.h
@@ -48,16 +48,10 @@
#define MACHINE "riscv"
#endif
#ifndef MACHINE_ARCH
-
-/* Always use the hard-float arch for the kernel. */
-#if !defined(_KERNEL) && defined(__riscv_float_abi_soft)
-#define MACHINE_ARCH "riscv64sf"
-#else
#define MACHINE_ARCH "riscv64"
#endif
-#endif
#ifdef _KERNEL
-#define MACHINE_ARCHES "riscv64 riscv64sf"
+#define MACHINE_ARCHES "riscv64"
#endif
#ifdef SMP
diff --git a/tools/boot/universe.sh b/tools/boot/universe.sh
index 20b89fb5dfe4..359c9d88d5df 100755
--- a/tools/boot/universe.sh
+++ b/tools/boot/universe.sh
@@ -5,7 +5,7 @@
#
# Full list of all arches we don't build.
#
-# powerpc/powerpcspe riscv/riscv64sf arm/armv6
+# powerpc/powerpcspe arm/armv6
#
# This script is expected to be run in stand (though you could run it anywhere
# in the tree). It does a full clean build. For stand you can do all the archs in