aboutsummaryrefslogtreecommitdiff
path: root/config/target.in
diff options
context:
space:
mode:
Diffstat (limited to 'config/target.in')
-rw-r--r--config/target.in126
1 files changed, 126 insertions, 0 deletions
diff --git a/config/target.in b/config/target.in
index 21302622..ed415394 100644
--- a/config/target.in
+++ b/config/target.in
@@ -434,6 +434,132 @@ config ARCH_FLOAT_SW
endchoice
+#--------------------------------------
+
+config ARCH_SUPPORTS_WITH_FLOATING_PRECISION
+ bool
+
+config ARCH_SUPPORTS_PRECISION_AUTO
+ bool
+
+config ARCH_SUPPORTS_PRECISION_SINGLE_ONLY
+ bool
+
+config ARCH_SUPPORTS_PRECISION_DOUBLE_ONLY
+ bool
+
+config ARCH_SUPPORTS_PRECISION_BOTH
+ bool
+
+config ARCH_SUPPORTS_PRECISION_SINGLE_WITH_DOUBLE
+ bool
+
+config ARCH_SUPPORTS_PRECISION_DOUBLE_WITH_SINGLE
+ bool
+
+config ARCH_SUPPORTS_PRECISION_UNSPECIFIED
+ bool
+
+config ARCH_DEFAULT_PRECISION_AUTO
+ bool
+
+config ARCH_DEFAULT_PRECISION_SINGLE_ONLY
+ bool
+
+config ARCH_DEFAULT_PRECISION_DOUBLE_ONLY
+ bool
+
+config ARCH_DEFAULT_PRECISION_BOTH
+ bool
+
+config ARCH_DEFAULT_PRECISION_SINGLE_WITH_DOUBLE
+ bool
+
+config ARCH_DEFAULT_PRECISION_DOUBLE_WITH_SINGLE
+ bool
+
+config ARCH_DEFAULT_PRECISION_UNSPECIFIED
+ bool
+
+choice
+ bool
+ prompt "Floating point precision:"
+ depends on ARCH_SUPPORTS_WITH_FLOATING_PRECISION
+ default ARCH_FLOATING_PRECISION_AUTO if ARCH_DEFAULT_PRECISION_AUTO
+ default ARCH_FLOATING_PRECISION_SINGLE_ONLY if ARCH_DEFAULT_PRECISION_SINGLE_ONLY
+ default ARCH_FLOATING_PRECISION_DOUBLE_ONLY if ARCH_DEFAULT_PRECISION_DOUBLE_ONLY
+ default ARCH_FLOATING_PRECISION_BOTH if ARCH_DEFAULT_PRECISION_BOTH
+ default ARCH_FLOATING_PRECISION_SINGLE_WITH_DOUBLE if ARCH_DEFAULT_PRECISION_SINGLE_WITH_DOUBLE
+ default ARCH_FLOATING_PRECISION_DOUBLE_WITH_SINGLE if ARCH_DEFAULT_PRECISION_DOUBLE_WITH_SINGLE
+ default ARCH_FLOATING_PRECISION_UNSPECIFIED if ARCH_DEFAULT_PRECISION_UNSPECIFIED
+
+config ARCH_FLOATING_PRECISION_AUTO
+ bool
+ prompt "auto (let gcc decide)"
+ depends on ARCH_SUPPORTS_PRECISION_AUTO
+ help
+ Instead of explicitly passing a float precision option, don't
+ pass any float precision options and let gcc figure it out.
+
+config ARCH_FLOATING_PRECISION_SINGLE_ONLY
+ bool
+ prompt "single (32-bit)"
+ depends on ARCH_SUPPORTS_PRECISION_SINGLE_ONLY
+ help
+ Use single precision floating point operations.
+
+config ARCH_FLOATING_PRECISION_DOUBLE_ONLY
+ bool
+ prompt "double (64-bit)"
+ depends on ARCH_SUPPORTS_PRECISION_DOUBLE_ONLY
+ help
+ Use double precision floating point operations.
+
+config ARCH_FLOATING_PRECISION_BOTH
+ bool
+ prompt "single and double (32-bit and 64-bit)"
+ depends on ARCH_SUPPORTS_PRECISION_BOTH
+ help
+ Use both single and double precision floating point operations.
+
+config ARCH_FLOATING_PRECISION_SINGLE_WITH_DOUBLE
+ bool
+ prompt "single with double (32-bit with 64-bit)"
+ depends on ARCH_SUPPORTS_PRECISION_SINGLE_WITH_DOUBLE
+ help
+ Use single precision floating point operations, but allow double
+ precision floating point operations when needed.
+
+config ARCH_FLOATING_PRECISION_DOUBLE_WITH_SINGLE
+ bool
+ prompt "double with single (64-bit with 32-bit)"
+ depends on ARCH_SUPPORTS_PRECISION_DOUBLE_WITH_SINGLE
+ help
+ Use double precision floating point operations, but allow single
+ precision floating point operations when needed.
+
+config ARCH_FLOATING_PRECISION_UNSPECIFIED
+ bool
+ prompt "default (leave unspecified)"
+ depends on ARCH_SUPPORTS_PRECISION_UNSPECIFIED
+ help
+ Use the default floating point precision for the architecture.
+
+endchoice
+
+config ARCH_FLOATING_PRECISION
+ string
+ depends on ARCH_SUPPORTS_WITH_FLOATING_PRECISION
+ default "auto" if ARCH_FLOATING_PRECISION_AUTO
+ default "single" if ARCH_FLOATING_PRECISION_SINGLE_ONLY
+ default "double" if ARCH_FLOATING_PRECISION_DOUBLE_ONLY
+ default "both" if ARCH_FLOATING_PRECISION_BOTH
+ default "single,double" if ARCH_FLOATING_PRECISION_SINGLE_WITH_DOUBLE
+ default "double,single" if ARCH_FLOATING_PRECISION_DOUBLE_WITH_SINGLE
+ default "" if ARCH_FLOATING_PRECISION_UNSPECIFIED
+
+#--------------------------------------
+
config TARGET_CFLAGS
string
prompt "Target CFLAGS"