Refactor and cleanup VirtualMemory.
authorbmeurer@chromium.org <bmeurer@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 11 Sep 2013 08:47:02 +0000 (08:47 +0000)
committerbmeurer@chromium.org <bmeurer@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 11 Sep 2013 08:47:02 +0000 (08:47 +0000)
commita797a3597558b715b7610dd8d0ec87754fcae9d9
tree6c36d1f7b351d3febbf45aaa932a3d7ffa5e5613
parent9a8344b1e779641973c49790d974c162446d8f5c
Refactor and cleanup VirtualMemory.

Remove a lot of platform duplication, and simplify the virtual
memory implementation. Also improve readability by avoiding bool
parameters for executability (use a dedicated Executability type
instead).

Get rid of the Isolate::UncheckedCurrent() call in the platform
code, as part of the Isolate TLS cleanup.

Use a dedicated random number generator for the address
randomization, instead of messing with the per-isolate random
number generators.

TEST=cctest/test-virtual-memory
R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/23641009

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16637 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
36 files changed:
include/v8config.h
src/arm/codegen-arm.cc
src/deoptimizer.cc
src/heap-inl.h
src/heap.cc
src/ia32/codegen-ia32.cc
src/incremental-marking.cc
src/mips/codegen-mips.cc
src/platform-cygwin.cc
src/platform-freebsd.cc
src/platform-linux.cc
src/platform-macos.cc
src/platform-openbsd.cc
src/platform-posix.cc
src/platform-solaris.cc
src/platform-win32.cc
src/platform.h
src/platform/virtual-memory.cc [new file with mode: 0644]
src/platform/virtual-memory.h [new file with mode: 0644]
src/spaces-inl.h
src/spaces.cc
src/spaces.h
src/store-buffer.cc
src/v8globals.h
src/x64/codegen-x64.cc
test/cctest/cctest.gyp
test/cctest/test-assembler-x64.cc
test/cctest/test-code-stubs-arm.cc
test/cctest/test-code-stubs-ia32.cc
test/cctest/test-code-stubs-x64.cc
test/cctest/test-macro-assembler-x64.cc
test/cctest/test-platform-linux.cc
test/cctest/test-platform-win32.cc
test/cctest/test-spaces.cc
test/cctest/test-virtual-memory.cc [new file with mode: 0644]
tools/gyp/v8.gyp