runtime: Do not reserve huge amount of swap on 32 bit architectures.
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 15 Feb 2013 18:55:09 +0000 (18:55 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 15 Feb 2013 18:55:09 +0000 (18:55 +0000)
commitcec17acdcfa2d37110835686b803a64dadbe5ed9
tree69367e678dd8ce0bf0495ccdf1a1712913949390
parente26fddfae4537b20a6a755c6e911f431d11212df
runtime: Do not reserve huge amount of swap on 32 bit architectures.

The mmap() call which reserves the arena should have MAP_NORESERVE
flag as in typical cases this memory will never be (fully) needed.
This matters in environments which do not do Linux style memory
overcommit, such as OpenIndiana/OpenSolaris/Solaris.

The MAP_NORESERVE flag does not exist on all operating systems
(for example FreeBSD). Therefore we define it to zero value in
case it does not exist.

Fixes issue 21.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@196088 138bc75d-0d04-0410-961f-82ee72b054a4
libgo/runtime/mem.c