aboutsummaryrefslogtreecommitdiff
path: root/config/arch
diff options
context:
space:
mode:
Diffstat (limited to 'config/arch')
-rw-r--r--config/arch/bpf.in4
-rw-r--r--config/arch/lm32.in10
-rw-r--r--config/arch/m68k.in1
-rw-r--r--config/arch/nios2.in4
-rw-r--r--config/arch/openrisc.in13
-rw-r--r--config/arch/parisc.in13
-rw-r--r--config/arch/powerpc.in7
-rw-r--r--config/arch/riscv.in1
-rw-r--r--config/arch/rx.in11
-rw-r--r--config/arch/sh.in41
-rw-r--r--config/arch/tricore.in10
11 files changed, 103 insertions, 12 deletions
diff --git a/config/arch/bpf.in b/config/arch/bpf.in
index 9d0d7373..75cae2af 100644
--- a/config/arch/bpf.in
+++ b/config/arch/bpf.in
@@ -3,7 +3,7 @@
## no-package
## select ARCH_SUPPORTS_EITHER_ENDIAN
## select ARCH_DEFAULT_LE
-## select GCC_VERY_NEW
-## select BINUTILS_VERY_NEW
+## select GCC_REQUIRE_12_or_later
+## select BINUTILS_REQUIRE_2_41_or_later
##
## help The BPF architecture.
diff --git a/config/arch/lm32.in b/config/arch/lm32.in
new file mode 100644
index 00000000..a2ae3b2d
--- /dev/null
+++ b/config/arch/lm32.in
@@ -0,0 +1,10 @@
+# LatticeMico32 soft-core architecture
+
+## no-package
+## select ARCH_SUPPORTS_32
+## select ARCH_DEFAULT_32
+## select ARCH_DEFAULT_BE
+## depends on EXPERIMENTAL
+
+## help The LatticeMico32 soft-core architecture:
+## help https://www.latticesemi.com/en/Products/DesignSoftwareAndIP/IntellectualProperty/IPCore/IPCores02/LatticeMico32.aspx
diff --git a/config/arch/m68k.in b/config/arch/m68k.in
index d21de008..3105712a 100644
--- a/config/arch/m68k.in
+++ b/config/arch/m68k.in
@@ -4,6 +4,7 @@
## select ARCH_SUPPORTS_32
## select ARCH_DEFAULT_32
## select ARCH_DEFAULT_BE
+## select ARCH_USE_MMU
## select ARCH_SUPPORTS_FLAT_FORMAT
## select ARCH_SUPPORTS_WITH_CPU
##
diff --git a/config/arch/nios2.in b/config/arch/nios2.in
index de28246f..b5ebedb5 100644
--- a/config/arch/nios2.in
+++ b/config/arch/nios2.in
@@ -7,6 +7,10 @@
## select ARCH_DEFAULT_LE
## select ARCH_SUPPORTS_WITH_ARCH
## select ARCH_SUPPORTS_FLAT_FORMAT
+## select GCC_REQUIRE_older_than_15
+## select GDB_REQUIRE_older_than_16 if DEBUG_GDB
+## select GLIBC_REQUIRE_older_than_2_41 if LIBC_GLIBC
+## select BINUTILS_REQUIRE_older_than_2_44
##
## help The NIOS2 architecture, as defined by:
## help http://www.altera.com
diff --git a/config/arch/openrisc.in b/config/arch/openrisc.in
new file mode 100644
index 00000000..d4623ed1
--- /dev/null
+++ b/config/arch/openrisc.in
@@ -0,0 +1,13 @@
+# OpenRISC specific configuration file
+
+## no-package
+## select ARCH_SUPPORTS_32
+## select ARCH_DEFAULT_32
+## select ARCH_SUPPORTS_BOTH_MMU
+## select ARCH_DEFAULT_BE
+## select ARCH_SUPPORTS_WITH_ARCH
+## select ARCH_SUPPORTS_FLAT_FORMAT
+## depends on EXPERIMENTAL
+##
+## help The OpenRISC architecture
+## help https://openrisc.io/
diff --git a/config/arch/parisc.in b/config/arch/parisc.in
new file mode 100644
index 00000000..79fa2e8e
--- /dev/null
+++ b/config/arch/parisc.in
@@ -0,0 +1,13 @@
+# HP PA-RISC specific configuration file
+
+## no-package
+## depends on EXPERIMENTAL
+##
+## select ARCH_SUPPORTS_32
+## select ARCH_SUPPORTS_64
+## select ARCH_DEFAULT_32
+## select ARCH_DEFAULT_BE
+## select ARCH_USE_MMU
+## select ARCH_SUPPORTS_FLAT_FORMAT
+##
+## help The parisc architecture
diff --git a/config/arch/powerpc.in b/config/arch/powerpc.in
index 26954c88..dddd73a6 100644
--- a/config/arch/powerpc.in
+++ b/config/arch/powerpc.in
@@ -19,9 +19,10 @@
config ARCH_powerpc_ABI
string
- default "" if ARCH_powerpc_ABI_DEFAULT
- default "eabi" if ARCH_powerpc_ABI_EABI
- default "spe" if ARCH_powerpc_ABI_SPE
+ default "" if ARCH_powerpc_ABI_DEFAULT
+ default "eabi" if ARCH_powerpc_ABI_EABI
+ default "spe" if ARCH_powerpc_ABI_SPE
+ default "elfv2" if ARCH_64 && LIBC_MUSL
choice
bool
diff --git a/config/arch/riscv.in b/config/arch/riscv.in
index 3e6ffbfb..e7a54dd1 100644
--- a/config/arch/riscv.in
+++ b/config/arch/riscv.in
@@ -1,7 +1,6 @@
# RISC-V specific config options
## no-package
-## depends on EXPERIMENTAL
##
## select ARCH_SUPPORTS_32
## select ARCH_SUPPORTS_64
diff --git a/config/arch/rx.in b/config/arch/rx.in
new file mode 100644
index 00000000..6e58d628
--- /dev/null
+++ b/config/arch/rx.in
@@ -0,0 +1,11 @@
+## no-package
+## select ARCH_SUPPORTS_32
+## select ARCH_DEFAULT_32
+## select ARCH_SUPPORTS_FLAT_FORMAT
+## select ARCH_SUPPORTS_EITHER_ENDIAN
+## select ARCH_DEFAULT_LE
+## select ARCH_REQUIRES_MULTILIB
+## select ARCH_SUPPORTS_WITH_ENDIAN
+
+## help The RX architecture, as defined by:
+## help https://www.renesas.com/en/products/microcontrollers-microprocessors/rx-32-bit-performance-efficiency-mcus
diff --git a/config/arch/sh.in b/config/arch/sh.in
index ff2ec142..8ebdd744 100644
--- a/config/arch/sh.in
+++ b/config/arch/sh.in
@@ -3,8 +3,6 @@
## no-package
## select ARCH_SUPPORTS_32
## select ARCH_DEFAULT_32
-## select ARCH_SUPPORTS_BOTH_MMU
-## select ARCH_DEFAULT_HAS_MMU
## select ARCH_SUPPORTS_FLAT_FORMAT
## select ARCH_SUPPORTS_EITHER_ENDIAN
## select ARCH_DEFAULT_LE
@@ -21,6 +19,8 @@ choice
# GCC supports both endiannesses even if a specific CPU is selected (so long
# as that CPU can be both BE/LE), but the binutils (or specifically, ld)
# configures for both endiannesses only if sh-*-linux target is selected.
+# --with-cpu can be used to set the mmu and precision options,
+# so dont include the options aswell
config ARCH_SH_SH
bool
prompt "unspecified"
@@ -62,16 +62,45 @@ config ARCH_SH_SH4A
bool
prompt "sh4a"
+config ARCH_SH_SH4AL
+ bool
+ prompt "sh4al"
+
endchoice
config ARCH_SH_VARIANT
string
- default "sh" if ARCH_SH_SH
+ default "sh" if ARCH_SH_SH
default "sh1" if ARCH_SH_SH1
default "sh2" if ARCH_SH_SH2
- default "sh2e" if ARCH_SH_SH2E
- default "sh2a" if ARCH_SH_SH2A
+ default "sh2e" if ARCH_SH_SH2E
+ default "sh2a" if ARCH_SH_SH2A
default "sh3" if ARCH_SH_SH3
- default "sh3e" if ARCH_SH_SH3E
+ default "sh3e" if ARCH_SH_SH3E
default "sh4" if ARCH_SH_SH4
default "sh4a" if ARCH_SH_SH4A
+ default "sh4al" if ARCH_SH_SH4AL
+
+config ARCH_SH_ENABLE_FPU_OPTIONS
+ bool
+ default y if ARCH_SH_SH2A
+ default y if ARCH_SH_SH4
+ default y if ARCH_SH_SH4A
+ select ARCH_SUPPORTS_BOTH_MMU
+ select ARCH_DEFAULT_HAS_MMU
+
+config ARCH_SH_ENABLE_PRECISION_OPTIONS
+ bool
+ default y if ARCH_USE_MMU
+ select ARCH_SUPPORTS_WITH_FLOATING_PRECISION
+ select ARCH_SUPPORTS_PRECISION_UNSPECIFIED
+ select ARCH_SUPPORTS_PRECISION_SINGLE_ONLY
+ select ARCH_SUPPORTS_PRECISION_SINGLE_WITH_DOUBLE
+ select ARCH_DEFAULT_PRECISION_UNSPECIFIED
+
+config ARCH_SH_FLOAT_SUFFIX
+ string
+ default "" if !ARCH_SH_ENABLE_FPU_OPTIONS
+ default "_nofpu" if !ARCH_USE_MMU
+ default "_single" if ARCH_FLOATING_PRECISION_SINGLE_WITH_DOUBLE
+ default "_single_only" if ARCH_FLOATING_PRECISION_SINGLE_ONLY
diff --git a/config/arch/tricore.in b/config/arch/tricore.in
new file mode 100644
index 00000000..cff8ca63
--- /dev/null
+++ b/config/arch/tricore.in
@@ -0,0 +1,10 @@
+# tricore specific configuration file
+
+## no-package
+## depends on EXPERIMENTAL
+##
+## select ARCH_SUPPORTS_32
+## select ARCH_SUPPORTS_BOTH_ENDIAN
+## select ARCH_DEFAULT_LE
+## select ARCH_SUPPORTS_FLAT_FORMAT
+