summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2011-04-26 20:22:57 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2011-04-26 20:22:57 +0000
commit756c3e30f2fd31dd5495467ea6cdd2214f2f0fae (patch)
tree2fd390387be514e32f3cd38201933f74a127a8d4
parent9cb1af700c8988026fa8815f7062aaf78c2fbfb3 (diff)
Default gcc on alpha to -mfp-rounding-mode=d, to make code which assumes
the rounding mode is always controlled by fpsetround() happy. Noticed by and ok martynas@
-rw-r--r--gnu/usr.bin/gcc/gcc/config/alpha/alpha.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gnu/usr.bin/gcc/gcc/config/alpha/alpha.c b/gnu/usr.bin/gcc/gcc/config/alpha/alpha.c
index e4fa8386c32..1293b785e18 100644
--- a/gnu/usr.bin/gcc/gcc/config/alpha/alpha.c
+++ b/gnu/usr.bin/gcc/gcc/config/alpha/alpha.c
@@ -344,12 +344,19 @@ override_options ()
flag_pic = 0;
}
+#if defined(OPENBSD_NATIVE) || defined(OPENBSD_CROSS)
+ if (TARGET_FLOAT_VAX)
+ alpha_fprm = ALPHA_FPRM_NORM;
+ else
+ alpha_fprm = ALPHA_FPRM_DYN;
+#else
/* On Unicos/Mk, the native compiler consistenly generates /d suffices for
floating-point instructions. Make that the default for this target. */
if (TARGET_ABI_UNICOSMK)
alpha_fprm = ALPHA_FPRM_DYN;
else
alpha_fprm = ALPHA_FPRM_NORM;
+#endif
alpha_tp = ALPHA_TP_PROG;
alpha_fptm = ALPHA_FPTM_N;