| Index: src/deoptimizer.cc
|
| diff --git a/src/deoptimizer.cc b/src/deoptimizer.cc
|
| index 50ee05c6fa9e604082a93f89c9192688dc0544e6..c979a534d89f0a4322fdf9a94d17f0935e3a2afd 100644
|
| --- a/src/deoptimizer.cc
|
| +++ b/src/deoptimizer.cc
|
| @@ -42,8 +42,14 @@ namespace internal {
|
|
|
| static MemoryChunk* AllocateCodeChunk(MemoryAllocator* allocator) {
|
| return allocator->AllocateChunk(Deoptimizer::GetMaxDeoptTableSize(),
|
| - VirtualMemory::GetPageSize(),
|
| - VirtualMemory::EXECUTABLE,
|
| + OS::CommitPageSize(),
|
| +#if defined(__native_client__)
|
| + // The Native Client port of V8 uses an interpreter,
|
| + // so code pages don't need PROT_EXEC.
|
| + NOT_EXECUTABLE,
|
| +#else
|
| + EXECUTABLE,
|
| +#endif
|
| NULL);
|
| }
|
|
|
| @@ -122,7 +128,7 @@ static const int kDeoptTableMaxEpilogueCodeSize = 2 * KB;
|
| size_t Deoptimizer::GetMaxDeoptTableSize() {
|
| int entries_size =
|
| Deoptimizer::kMaxNumberOfEntries * Deoptimizer::table_entry_size_;
|
| - int commit_page_size = static_cast<int>(VirtualMemory::GetPageSize());
|
| + int commit_page_size = static_cast<int>(OS::CommitPageSize());
|
| int page_count = ((kDeoptTableMaxEpilogueCodeSize + entries_size - 1) /
|
| commit_page_size) + 1;
|
| return static_cast<size_t>(commit_page_size * page_count);
|
|
|