nxt_port_mmap_t stored in arrays and it is unsafe to store
pointer to array element.
Shared memory structures and macros moved to separate header
file to be used by GO package.
Compiler built-ins used, where possible. Necessary configure checks added.
New macros:
nxt_atomic_or_fetch(ptr, val)
nxt_atomic_and_fetch(ptr, val)
Syntax and behaviour is similar to __sync_or_and_fetch and __sync_and_and_fetch
GCC build-ins.