1440 1441 // return initial part of line that fits in buf. 1442 // If we reached EOF, it will be returned on next call. 1443 1444 return (int) i; 1445 } 1446 1447 bool os::create_stack_guard_pages(char* addr, size_t bytes) { 1448 return os::pd_create_stack_guard_pages(addr, bytes); 1449 } 1450 1451 1452 char* os::reserve_memory(size_t bytes, char* addr, size_t alignment_hint) { 1453 char* result = pd_reserve_memory(bytes, addr, alignment_hint); 1454 if (result != NULL) { 1455 MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC); 1456 } 1457 1458 return result; 1459 } 1460 char* os::attempt_reserve_memory_at(size_t bytes, char* addr) { 1461 char* result = pd_attempt_reserve_memory_at(bytes, addr); 1462 if (result != NULL) { 1463 MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC); 1464 } 1465 return result; 1466 } 1467 1468 void os::split_reserved_memory(char *base, size_t size, 1469 size_t split, bool realloc) { 1470 pd_split_reserved_memory(base, size, split, realloc); 1471 } 1472 1473 bool os::commit_memory(char* addr, size_t bytes, bool executable) { 1474 bool res = pd_commit_memory(addr, bytes, executable); 1475 if (res) { 1476 MemTracker::record_virtual_memory_commit((address)addr, bytes, CALLER_PC); 1477 } 1478 return res; 1479 } | 1440 1441 // return initial part of line that fits in buf. 1442 // If we reached EOF, it will be returned on next call. 1443 1444 return (int) i; 1445 } 1446 1447 bool os::create_stack_guard_pages(char* addr, size_t bytes) { 1448 return os::pd_create_stack_guard_pages(addr, bytes); 1449 } 1450 1451 1452 char* os::reserve_memory(size_t bytes, char* addr, size_t alignment_hint) { 1453 char* result = pd_reserve_memory(bytes, addr, alignment_hint); 1454 if (result != NULL) { 1455 MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC); 1456 } 1457 1458 return result; 1459 } 1460 1461 char* os::reserve_memory(size_t bytes, char* addr, size_t alignment_hint, 1462 MEMFLAGS flags) { 1463 char* result = pd_reserve_memory(bytes, addr, alignment_hint); 1464 if (result != NULL) { 1465 MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC); 1466 MemTracker::record_virtual_memory_type((address)result, flags); 1467 } 1468 1469 return result; 1470 } 1471 1472 char* os::attempt_reserve_memory_at(size_t bytes, char* addr) { 1473 char* result = pd_attempt_reserve_memory_at(bytes, addr); 1474 if (result != NULL) { 1475 MemTracker::record_virtual_memory_reserve((address)result, bytes, CALLER_PC); 1476 } 1477 return result; 1478 } 1479 1480 void os::split_reserved_memory(char *base, size_t size, 1481 size_t split, bool realloc) { 1482 pd_split_reserved_memory(base, size, split, realloc); 1483 } 1484 1485 bool os::commit_memory(char* addr, size_t bytes, bool executable) { 1486 bool res = pd_commit_memory(addr, bytes, executable); 1487 if (res) { 1488 MemTracker::record_virtual_memory_commit((address)addr, bytes, CALLER_PC); 1489 } 1490 return res; 1491 } |