summaryrefslogtreecommitdiff
path: root/hints/hpux.sh
diff options
context:
space:
mode:
Diffstat (limited to 'hints/hpux.sh')
-rw-r--r--hints/hpux.sh17
1 files changed, 15 insertions, 2 deletions
diff --git a/hints/hpux.sh b/hints/hpux.sh
index be6c1fddb8..64de1bde0e 100644
--- a/hints/hpux.sh
+++ b/hints/hpux.sh
@@ -157,7 +157,7 @@ case `$cc -v 2>&1`"" in
done
[ -z "$cc_found" ] && cc_found=`which cc`
what $cc_found >&4
- ccversion=`what $cc_found | awk '/Compiler/{print $2}/Itanium/{print $6,$7}/for Integrity/{print $6}'`
+ ccversion=`what $cc_found | awk '/Compiler/{print $2}/Itanium/{print $6,$7}/for Integrity/{print $6,$7}'`
case "$ccflags" in
"-Ae "*) ;;
*) ccflags="-Ae $cc_cppflags"
@@ -414,7 +414,7 @@ case "$ccisgcc" in
fi
;;
- *) # HP's compiler cannot combine -g and -O
+ *)
case "$optimize" in
"") optimize="+O2 +Onolimit" ;;
*O[3456789]*) optimize=`echo "$optimize" | sed -e 's/O[3-9]/O2/'` ;;
@@ -436,6 +436,19 @@ case "$ccisgcc" in
# maint (5.8.8+) and blead (5.9.3+)
# -O1/+O1 passed all tests (m)'05 [ 10 Jan 2005 ]
optimize="$opt" ;;
+ B3910B*A.06.15)
+ # > cc --version
+ # cc: HP C/aC++ B3910B A.06.15 [May 16 2007]
+ # Has optimizing problems with +O2 for blead (5.15.4),
+ # see https://rt.perl.org:443/rt3/Ticket/Display.html?id=103668.
+ #
+ # +O2 +Onolimit +Onoprocelim +Ostore_ordering \
+ # +Onolibcalls=strcmp
+ # passes all tests (with/without -DDEBUGGING) [Nov 17 2011]
+ case "$optimize" in
+ *O2*) optimize="$optimize +Onoprocelim +Ostore_ordering +Onolibcalls=strcmp" ;;
+ esac
+ ;;
*) doop_cflags="optimize=\"$opt\""
op_cflags="optimize=\"$opt\"" ;;
esac