Mercurial > hg > truffle
comparison src/share/vm/runtime/os.hpp @ 697:922aedc96ef5
Merge
author | ysr |
---|---|
date | Fri, 03 Apr 2009 15:59:19 -0700 |
parents | 956304450e80 |
children | 8e7adf982378 |
comparison
equal
deleted
inserted
replaced
696:f18338cf04b0 | 697:922aedc96ef5 |
---|---|
200 static char* reserve_memory(size_t bytes, char* addr = 0, | 200 static char* reserve_memory(size_t bytes, char* addr = 0, |
201 size_t alignment_hint = 0); | 201 size_t alignment_hint = 0); |
202 static char* attempt_reserve_memory_at(size_t bytes, char* addr); | 202 static char* attempt_reserve_memory_at(size_t bytes, char* addr); |
203 static void split_reserved_memory(char *base, size_t size, | 203 static void split_reserved_memory(char *base, size_t size, |
204 size_t split, bool realloc); | 204 size_t split, bool realloc); |
205 static bool commit_memory(char* addr, size_t bytes); | 205 static bool commit_memory(char* addr, size_t bytes, |
206 static bool commit_memory(char* addr, size_t size, size_t alignment_hint); | 206 bool executable = false); |
207 static bool commit_memory(char* addr, size_t size, size_t alignment_hint, | |
208 bool executable = false); | |
207 static bool uncommit_memory(char* addr, size_t bytes); | 209 static bool uncommit_memory(char* addr, size_t bytes); |
208 static bool release_memory(char* addr, size_t bytes); | 210 static bool release_memory(char* addr, size_t bytes); |
209 | 211 |
210 enum ProtType { MEM_PROT_NONE, MEM_PROT_READ, MEM_PROT_RW, MEM_PROT_RWX }; | 212 enum ProtType { MEM_PROT_NONE, MEM_PROT_READ, MEM_PROT_RW, MEM_PROT_RWX }; |
211 static bool protect_memory(char* addr, size_t bytes, ProtType prot, | 213 static bool protect_memory(char* addr, size_t bytes, ProtType prot, |
241 static bool get_page_info(char *start, page_info* info); | 243 static bool get_page_info(char *start, page_info* info); |
242 static char* scan_pages(char *start, char* end, page_info* page_expected, page_info* page_found); | 244 static char* scan_pages(char *start, char* end, page_info* page_expected, page_info* page_found); |
243 | 245 |
244 static char* non_memory_address_word(); | 246 static char* non_memory_address_word(); |
245 // reserve, commit and pin the entire memory region | 247 // reserve, commit and pin the entire memory region |
246 static char* reserve_memory_special(size_t size, char* addr = NULL); | 248 static char* reserve_memory_special(size_t size, char* addr = NULL, |
249 bool executable = false); | |
247 static bool release_memory_special(char* addr, size_t bytes); | 250 static bool release_memory_special(char* addr, size_t bytes); |
248 static bool large_page_init(); | 251 static bool large_page_init(); |
249 static size_t large_page_size(); | 252 static size_t large_page_size(); |
250 static bool can_commit_large_page_memory(); | 253 static bool can_commit_large_page_memory(); |
251 static bool can_execute_large_page_memory(); | 254 static bool can_execute_large_page_memory(); |
602 const char* home, | 605 const char* home, |
603 int home_len, | 606 int home_len, |
604 char fileSep, | 607 char fileSep, |
605 char pathSep); | 608 char pathSep); |
606 static bool set_boot_path(char fileSep, char pathSep); | 609 static bool set_boot_path(char fileSep, char pathSep); |
610 static char** split_path(const char* path, int* n); | |
607 }; | 611 }; |
608 | 612 |
609 // Note that "PAUSE" is almost always used with synchronization | 613 // Note that "PAUSE" is almost always used with synchronization |
610 // so arguably we should provide Atomic::SpinPause() instead | 614 // so arguably we should provide Atomic::SpinPause() instead |
611 // of the global SpinPause() with C linkage. | 615 // of the global SpinPause() with C linkage. |