mirror of
https://github.com/nginx/nginx.git
synced 2024-11-26 02:40:46 -06:00
Lower optimization level for Sun Studio before 12.1.
At least Sun Studio 12 has problems with bit-fields exposed by nginx code (caught by test suite). They seems to be fixed in Sun Studio 12.1. As a workaround use "-fast -xalias_level=any" for older versions, it resolves the problem.
This commit is contained in:
parent
b4d9ee220c
commit
950b668076
22
auto/cc/sunc
22
auto/cc/sunc
@ -6,6 +6,8 @@
|
|||||||
# Sun C 5.8 2005/10/13 Sun Studio 11
|
# Sun C 5.8 2005/10/13 Sun Studio 11
|
||||||
# Sun C 5.9 SunOS_i386 2007/05/03 Sun Studio 12
|
# Sun C 5.9 SunOS_i386 2007/05/03 Sun Studio 12
|
||||||
# Sun C 5.9 SunOS_sparc 2007/05/03
|
# Sun C 5.9 SunOS_sparc 2007/05/03
|
||||||
|
# Sun C 5.10 SunOS_i386 2009/06/03 Sun Studio 12.1
|
||||||
|
# Sun C 5.11 SunOS_i386 2010/08/13 Sun Studio 12.2
|
||||||
|
|
||||||
NGX_SUNC_VER=`$CC -V 2>&1 | grep 'Sun C' 2>&1 \
|
NGX_SUNC_VER=`$CC -V 2>&1 | grep 'Sun C' 2>&1 \
|
||||||
| sed -e 's/^.* Sun C \(.*\)/\1/'`
|
| sed -e 's/^.* Sun C \(.*\)/\1/'`
|
||||||
@ -57,9 +59,19 @@ esac
|
|||||||
|
|
||||||
# optimizations
|
# optimizations
|
||||||
|
|
||||||
|
# 20736 == 0x5100, Sun Studio 12.1
|
||||||
|
|
||||||
|
if [ "$ngx_sunc_ver" -ge 20736 ]; then
|
||||||
|
ngx_fast="-fast"
|
||||||
|
|
||||||
|
else
|
||||||
|
# older versions had problems with bit-fields
|
||||||
|
ngx_fast="-fast -xalias_level=any"
|
||||||
|
fi
|
||||||
|
|
||||||
IPO=-xipo
|
IPO=-xipo
|
||||||
CFLAGS="$CFLAGS -fast $IPO"
|
CFLAGS="$CFLAGS $ngx_fast $IPO"
|
||||||
CORE_LINK="$CORE_LINK -fast $IPO"
|
CORE_LINK="$CORE_LINK $ngx_fast $IPO"
|
||||||
|
|
||||||
|
|
||||||
case $CPU in
|
case $CPU in
|
||||||
@ -126,15 +138,15 @@ CFLAGS="$CFLAGS $CPU_OPT"
|
|||||||
|
|
||||||
|
|
||||||
if [ ".$PCRE_OPT" = "." ]; then
|
if [ ".$PCRE_OPT" = "." ]; then
|
||||||
PCRE_OPT="-fast $IPO $CPU_OPT"
|
PCRE_OPT="$ngx_fast $IPO $CPU_OPT"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ".$MD5_OPT" = "." ]; then
|
if [ ".$MD5_OPT" = "." ]; then
|
||||||
MD5_OPT="-fast $IPO $CPU_OPT"
|
MD5_OPT="$ngx_fast $IPO $CPU_OPT"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ".$ZLIB_OPT" = "." ]; then
|
if [ ".$ZLIB_OPT" = "." ]; then
|
||||||
ZLIB_OPT="-fast $IPO $CPU_OPT"
|
ZLIB_OPT="$ngx_fast $IPO $CPU_OPT"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user