Mercurial > hg > truffle
comparison src/os/windows/vm/os_windows.cpp @ 3433:7c948af3e651
Merge
author | asaha |
---|---|
date | Tue, 24 May 2011 11:09:39 -0700 |
parents | 089aee76df10 188c9a5d6a6d |
children | be4ca325525a |
comparison
equal
deleted
inserted
replaced
3432:66c17ec20ee2 | 3433:7c948af3e651 |
---|---|
2647 _hProcess = NULL; | 2647 _hProcess = NULL; |
2648 if (_hToken) CloseHandle(_hToken); | 2648 if (_hToken) CloseHandle(_hToken); |
2649 _hToken = NULL; | 2649 _hToken = NULL; |
2650 } | 2650 } |
2651 | 2651 |
2652 bool os::large_page_init() { | 2652 void os::large_page_init() { |
2653 if (!UseLargePages) return false; | 2653 if (!UseLargePages) return; |
2654 | 2654 |
2655 // print a warning if any large page related flag is specified on command line | 2655 // print a warning if any large page related flag is specified on command line |
2656 bool warn_on_failure = !FLAG_IS_DEFAULT(UseLargePages) || | 2656 bool warn_on_failure = !FLAG_IS_DEFAULT(UseLargePages) || |
2657 !FLAG_IS_DEFAULT(LargePageSizeInBytes); | 2657 !FLAG_IS_DEFAULT(LargePageSizeInBytes); |
2658 bool success = false; | 2658 bool success = false; |
2693 _page_sizes[1] = default_page_size; | 2693 _page_sizes[1] = default_page_size; |
2694 _page_sizes[2] = 0; | 2694 _page_sizes[2] = 0; |
2695 } | 2695 } |
2696 | 2696 |
2697 cleanup_after_large_page_init(); | 2697 cleanup_after_large_page_init(); |
2698 return success; | 2698 UseLargePages = success; |
2699 } | 2699 } |
2700 | 2700 |
2701 // On win32, one cannot release just a part of reserved memory, it's an | 2701 // On win32, one cannot release just a part of reserved memory, it's an |
2702 // all or nothing deal. When we split a reservation, we must break the | 2702 // all or nothing deal. When we split a reservation, we must break the |
2703 // reservation into two reservations. | 2703 // reservation into two reservations. |
3476 if(Verbose && PrintMiscellaneous) | 3476 if(Verbose && PrintMiscellaneous) |
3477 tty->print("[Memory Serialize Page address: " INTPTR_FORMAT "]\n", (intptr_t)mem_serialize_page); | 3477 tty->print("[Memory Serialize Page address: " INTPTR_FORMAT "]\n", (intptr_t)mem_serialize_page); |
3478 #endif | 3478 #endif |
3479 } | 3479 } |
3480 | 3480 |
3481 FLAG_SET_DEFAULT(UseLargePages, os::large_page_init()); | 3481 os::large_page_init(); |
3482 | 3482 |
3483 // Setup Windows Exceptions | 3483 // Setup Windows Exceptions |
3484 | 3484 |
3485 // On Itanium systems, Structured Exception Handling does not | 3485 // On Itanium systems, Structured Exception Handling does not |
3486 // work since stack frames must be walkable by the OS. Since | 3486 // work since stack frames must be walkable by the OS. Since |