summaryrefslogtreecommitdiff
path: root/hints/unicos.sh
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2002-05-22 16:20:38 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2002-05-22 16:20:38 +0000
commitfdf4829643c900179386b7b25f562008c3612a69 (patch)
treed9d26dbe7a6719127fa6f3479ed7ca8aa163f75d /hints/unicos.sh
parentb4afddf1559146bd1ed52fefdddcb56b58ce09a0 (diff)
downloadperl-fdf4829643c900179386b7b25f562008c3612a69.tar.gz
UNICOS: using uname -m is wrong since what matters
is what CPUs (FPUs) we have. p4raw-id: //depot/perl@16736
Diffstat (limited to 'hints/unicos.sh')
-rw-r--r--hints/unicos.sh12
1 files changed, 8 insertions, 4 deletions
diff --git a/hints/unicos.sh b/hints/unicos.sh
index 8648dce3ae..bff3b22f5d 100644
--- a/hints/unicos.sh
+++ b/hints/unicos.sh
@@ -9,11 +9,15 @@ esac
# The default is to die in runtime on math overflows.
# Let's not do that. --jhi
ccflags="$ccflags -h matherror=errno"
-# Give int((2/3)*3) a chance to be 2, not 1. --jhi
-case "`uname -m`" in
-"CRAY TS") ;; # -h rounddiv not available here
-*) ccflags="$ccflags -h rounddiv" ;;
+
+# Cray floating point (cfp) CPUs need -h rounddiv
+# (It gives int((2/3)*3) a chance to be 2, not 1. --jhi)
+# (but IEEE CPUs, IEEE/ieee/CPE1 CPUs should not have -h rounddiv,
+# since the compiler on those CPUs doesn't even support the option.)
+case "`/etc/cpu -i|grep cfp`" in
+*"cfp") ccflags="$ccflags -h rounddiv" ;;
esac
+
# Avoid an optimizer bug where a volatile variables
# isn't correctly saved and restored --Mark P. Lutz
pp_ctl_cflags='ccflags="$ccflags -h scalar0 -h vector0"'