Mercurial > hg > nginx
annotate src/os/unix/ngx_sunpro_sparc64.il @ 4354:cdb2e95bd3d0 stable-1.0
Merge of r4231, r4300, r4303, r4304:
Configure/build changes and fixes:
*) Revamped "configure --help" text.
*) FreeBSD 10-current has recently gotten POSIX_FADV_* macros.
A fix for the broken build applied.
*) AIX 7 defines sys_nerr in errno.h, therefore <errno.h> included
in the sys_nerr test.
When sys_nerr and _sys_nerr are missed on a particular platform
and our euristic for a maximum errno detection applied always
print the maximum errno number we reached instead of printing void.
This makes possible to build nginx on AIX 7.1.
*) Made it possible to build/install from the SVN checkout.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Wed, 14 Dec 2011 13:34:16 +0000 |
parents | 4d9ea73a627a |
children | d620f497c50f |
rev | line source |
---|---|
561 | 1 / |
2 / Copyright (C) Igor Sysoev | |
3 / | |
4 | |
5 | |
6 / "casa [%o2] 0x80, %o1, %o0" and | |
7 / "casxa [%o2] 0x80, %o1, %o0" do the following: | |
577 | 8 / |
561 | 9 / if ([%o2] == %o1) { |
10 / swap(%o0, [%o2]); | |
11 / } else { | |
12 / %o0 = [%o2]; | |
13 / } | |
14 | |
15 | |
16 / ngx_atomic_uint_t ngx_casa(ngx_atomic_uint_t set, ngx_atomic_uint_t old, | |
17 / ngx_atomic_t *lock); | |
18 / | |
19 / the arguments are passed in the %o0, %o1, %o2 | |
20 / the result is returned in the %o0 | |
21 | |
22 .inline ngx_casa,0 | |
23 casa [%o2] 0x80, %o1, %o0 | |
24 .end | |
25 | |
26 | |
27 / ngx_atomic_uint_t ngx_casxa(ngx_atomic_uint_t set, ngx_atomic_uint_t old, | |
28 / ngx_atomic_t *lock); | |
29 / | |
30 / the arguments are passed in the %o0, %o1, %o2 | |
31 / the result is returned in the %o0 | |
32 | |
33 .inline ngx_casxa,0 | |
34 casxa [%o2] 0x80, %o1, %o0 | |
35 .end |