vm: take a page from code_heap for safepoints
parent
a8c481bee3
commit
4c8dec1e98
|
@ -9,12 +9,13 @@ code_heap::code_heap(cell size)
|
|||
seg = new segment(align_page(size),true);
|
||||
if(!seg) fatal_error("Out of memory in code_heap constructor",size);
|
||||
|
||||
cell start = seg->start + seh_area_size;
|
||||
cell start = seg->start + getpagesize() + seh_area_size;
|
||||
|
||||
allocator = new free_list_allocator<code_block>(seg->end - start,start);
|
||||
|
||||
/* See os-windows-x86.64.cpp for seh_area usage */
|
||||
seh_area = (char *)seg->start;
|
||||
safepoint_page = (void *)seg->start;
|
||||
seh_area = (char *)seg->start + getpagesize();
|
||||
}
|
||||
|
||||
code_heap::~code_heap()
|
||||
|
|
|
@ -11,6 +11,9 @@ struct code_heap {
|
|||
/* The actual memory area */
|
||||
segment *seg;
|
||||
|
||||
/* Memory area reserved for safepoint guard page */
|
||||
void *safepoint_page;
|
||||
|
||||
/* Memory area reserved for SEH. Only used on Windows */
|
||||
char *seh_area;
|
||||
|
||||
|
|
Loading…
Reference in New Issue