src/os/windows/vm/os_windows.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hsx-rt.8007074 Cdiff src/os/windows/vm/os_windows.cpp
src/os/windows/vm/os_windows.cpp
Print this page
*** 3154,3164 ****
bool os::can_execute_large_page_memory() {
return true;
}
! char* os::reserve_memory_special(size_t bytes, char* addr, bool exec) {
const DWORD prot = exec ? PAGE_EXECUTE_READWRITE : PAGE_READWRITE;
const DWORD flags = MEM_RESERVE | MEM_COMMIT | MEM_LARGE_PAGES;
// with large pages, there are two cases where we need to use Individual Allocation
--- 3154,3169 ----
bool os::can_execute_large_page_memory() {
return true;
}
! char* os::reserve_memory_special(size_t bytes, size_t alignment, char* addr, bool exec) {
! assert(UseLargePages, "only for large pages");
!
! if (!is_size_aligned(bytes, os::large_page_size()) || alignment > os::large_page_size()) {
! return NULL; // Fallback to small pages.
! }
const DWORD prot = exec ? PAGE_EXECUTE_READWRITE : PAGE_READWRITE;
const DWORD flags = MEM_RESERVE | MEM_COMMIT | MEM_LARGE_PAGES;
// with large pages, there are two cases where we need to use Individual Allocation
*** 5636,5640 ****
--- 5641,5651 ----
_OpenProcessToken != NULL &&
_LookupPrivilegeValue != NULL;
}
#endif
+
+ #ifndef PRODUCT
+ void TestReserveMemorySpecial_test() {
+ // No tests available for this platform
+ }
+ #endif
src/os/windows/vm/os_windows.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File