Mercurial > hg > nginx-vendor-1-0
annotate src/os/unix/ngx_sunpro_x86.il @ 604:428c6e58046a NGINX_0_9_0
nginx 0.9.0
*) Feature: the "keepalive_disable" directive.
*) Feature: the "map" directive supports variables as value of a
defined variable.
*) Feature: the "map" directive supports empty strings as value of the
first parameter.
*) Feature: the "map" directive supports expressions as the first
parameter.
*) Feature: nginx(8) manual page.
Thanks to Sergey Osokin.
*) Feature: Linux accept4() support.
Thanks to Simon Liu.
*) Workaround: elimination of Linux linker warning about "sys_errlist"
and "sys_nerr"; the warning had appeared in 0.8.35.
*) Bugfix: a segmentation fault might occur in a worker process, if the
"auth_basic" directive was used.
Thanks to Michail Laletin.
*) Bugfix: compatibility with ngx_http_eval_module; the bug had
appeared in 0.8.42.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 29 Nov 2010 00:00:00 +0300 |
parents | 829f9a66a659 |
children | ad25218fd14b |
rev | line source |
---|---|
110 | 1 / |
2 / Copyright (C) Igor Sysoev | |
3 / | |
4 | |
5 / ngx_atomic_uint_t ngx_atomic_cmp_set(ngx_atomic_t *lock, | |
6 / ngx_atomic_uint_t old, ngx_atomic_uint_t set); | |
7 / | |
488 | 8 / the arguments are passed on stack (%esp), 4(%esp), 8(%esp) |
110 | 9 |
10 .inline ngx_atomic_cmp_set,0 | |
11 movl (%esp), %ecx | |
12 movl 4(%esp), %eax | |
13 movl 8(%esp), %edx | |
14 lock | |
15 cmpxchgl %edx, (%ecx) | |
16 setz %al | |
17 movzbl %al, %eax | |
18 .end | |
19 | |
20 | |
21 / ngx_atomic_int_t ngx_atomic_fetch_add(ngx_atomic_t *value, | |
22 / ngx_atomic_int_t add); | |
23 / | |
488 | 24 / the arguments are passed on stack (%esp), 4(%esp) |
110 | 25 |
26 .inline ngx_atomic_fetch_add,0 | |
27 movl (%esp), %ecx | |
28 movl 4(%esp), %eax | |
29 lock | |
30 xaddl %eax, (%ecx) | |
31 .end | |
320 | 32 |
33 | |
34 / ngx_cpu_pause() | |
488 | 35 / |
36 / the "rep; nop" is used instead of "pause" to avoid the "[ PAUSE ]" hardware | |
37 / capability added by linker because Solaris/i386 does not know about it: | |
38 / | |
39 / ld.so.1: nginx: fatal: hardware capability unsupported: 0x2000 [ PAUSE ] | |
320 | 40 |
41 .inline ngx_cpu_pause,0 | |
488 | 42 rep; nop |
320 | 43 .end |