Mercurial > hg > nginx-vendor-current
annotate src/os/unix/ngx_sunpro_x86.il @ 626:a7a5fa2e395b NGINX_1_0_3
nginx 1.0.3
*) Feature: the "auth_basic_user_file" directive supports "$apr1",
"{PLAIN}", and "{SSHA}" password encryption methods.
Thanks to Maxim Dounin.
*) Feature: the "geoip_org" directive and $geoip_org variable.
Thanks to Alexander Uskov, Arnaud Granal, and Denis F. Latypoff.
*) Feature: ngx_http_geo_module and ngx_http_geoip_module support IPv4
addresses mapped to IPv6 addresses.
*) Bugfix: a segmentation fault occurred in a worker process during
testing IPv4 address mapped to IPv6 address, if access or deny rules
were defined only for IPv6; the bug had appeared in 0.8.22.
*) Bugfix: a cached reponse may be broken if proxy/fastcgi/scgi/
uwsgi_cache_bypass and proxy/fastcgi/scgi/uwsgi_no_cache directive
values were different; the bug had appeared in 0.8.46.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Wed, 25 May 2011 00:00:00 +0400 |
parents | 829f9a66a659 |
children | d0f7a625f27c |
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 |