Sha256: 06cc29bea8d00b4d215f1368e18826d19a76abf798e12411a1a7b0078982e51a
Contents?: true
Size: 1.07 KB
Versions: 2
Compression:
Stored size: 1.07 KB
Contents
/ / Copyright (C) Igor Sysoev / Copyright (C) Nginx, Inc. / / 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 stack (%esp), 4(%esp), 8(%esp) .inline ngx_atomic_cmp_set,0 movl (%esp), %ecx movl 4(%esp), %eax movl 8(%esp), %edx lock cmpxchgl %edx, (%ecx) setz %al movzbl %al, %eax .end / ngx_atomic_int_t ngx_atomic_fetch_add(ngx_atomic_t *value, / ngx_atomic_int_t add); / / the arguments are passed on stack (%esp), 4(%esp) .inline ngx_atomic_fetch_add,0 movl (%esp), %ecx movl 4(%esp), %eax lock xaddl %eax, (%ecx) .end / 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 rep; nop .end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
nginxtra-1.10.1.13 | vendor/nginx/src/os/unix/ngx_sunpro_x86.il |
nginxtra-1.10.1.12 | vendor/nginx/src/os/unix/ngx_sunpro_x86.il |