preserve Solaris binary hardware capabilities

This commit is contained in:
Igor Sysoev 2009-05-08 09:41:43 +00:00
parent 09dd00879f
commit a3e783a0de
3 changed files with 8 additions and 20 deletions

View File

@ -45,21 +45,6 @@ fi
case "$NGX_MACHINE" in
i86pc)
ngx_feature="PAUSE hardware capability bug"
ngx_feature_name=
ngx_feature_run=bug
ngx_feature_incs=
ngx_feature_path=
ngx_feature_libs=
ngx_feature_test='__asm ("pause")'
. auto/feature
if [ $ngx_found = yes ]; then
# disable [ PAUSE ] hwcap for Sun Studio 11
CORE_LINK="$CORE_LINK -Msrc/os/unix/ngx_sunpro_x86.map"
fi
NGX_AUX=" src/os/unix/ngx_sunpro_x86.il"
;;

View File

@ -5,7 +5,7 @@
/ ngx_atomic_uint_t ngx_atomic_cmp_set(ngx_atomic_t *lock,
/ ngx_atomic_uint_t old, ngx_atomic_uint_t set);
/
/ the arguments are passed on the stack (%esp), 4(%esp), 8(%esp)
/ the arguments are passed on stack (%esp), 4(%esp), 8(%esp)
.inline ngx_atomic_cmp_set,0
movl (%esp), %ecx
@ -21,7 +21,7 @@
/ ngx_atomic_int_t ngx_atomic_fetch_add(ngx_atomic_t *value,
/ ngx_atomic_int_t add);
/
/ the arguments are passed on the stack (%esp), 4(%esp)
/ the arguments are passed on stack (%esp), 4(%esp)
.inline ngx_atomic_fetch_add,0
movl (%esp), %ecx
@ -32,7 +32,12 @@
/ ngx_cpu_pause()
/
/ the "rep; nop" is used instead of "pause" to avoid the "[ PAUSE ]" hardware
/ capability added by linker because Solaris/i386 does not know about it:
/
/ ld.so.1: nginx: fatal: hardware capability unsupported: 0x2000 [ PAUSE ]
.inline ngx_cpu_pause,0
pause
rep; nop
.end

View File

@ -1,2 +0,0 @@
# disable { PAUSE ] hwcap for Sun Studio 11
hwcap_1 = OVERRIDE;