Mercurial > hg > nginx-vendor-current
annotate src/os/unix/ngx_sunpro_x86.il @ 342:4276c2f1f434 NGINX_0_6_15
nginx 0.6.15
*) Feature: cygwin compatibility.
Thanks to Vladimir Kutakov.
*) Feature: the "merge_slashes" directive.
*) Feature: the "gzip_vary" directive.
*) Feature: the "server_tokens" directive.
*) Bugfix: nginx did not unescape URI in the "include" SSI command.
*) Bugfix: the segmentation fault was occurred on start or while
reconfiguration if variable was used in the "charset" or
"source_charset" directives.
*) Bugfix: nginx returned the 400 response on requests like
"GET http://www.domain.com HTTP/1.0".
Thanks to James Oakley.
*) Bugfix: if request with request body was redirected using the
"error_page" directive, then nginx tried to read the request body
again; bug appeared in 0.6.7.
*) Bugfix: a segmentation fault occurred in worker process if no
server_name was explicitly defined for server processing request;
bug appeared in 0.6.7.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 22 Oct 2007 00:00:00 +0400 |
parents | 95183808f549 |
children | 829f9a66a659 |
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 / | |
8 / the arguments are passed on the stack (%esp), 4(%esp), 8(%esp) | |
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 / | |
24 / the arguments are passed on the stack (%esp), 4(%esp) | |
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() | |
35 | |
36 .inline ngx_cpu_pause,0 | |
37 pause | |
38 .end |