VM: Refactor segments.hpp to Factor style
parent
b2929acff6
commit
b1ccfa2194
|
@ -1,35 +1,26 @@
|
|||
namespace factor
|
||||
{
|
||||
namespace factor {
|
||||
|
||||
inline cell align_page(cell a)
|
||||
{
|
||||
return align(a,getpagesize());
|
||||
}
|
||||
inline cell align_page(cell a) { return align(a, getpagesize()); }
|
||||
|
||||
/* segments set up guard pages to check for under/overflow.
|
||||
size must be a multiple of the page size */
|
||||
struct segment {
|
||||
cell start;
|
||||
cell size;
|
||||
cell end;
|
||||
cell start;
|
||||
cell size;
|
||||
cell end;
|
||||
|
||||
explicit segment(cell size, bool executable_p);
|
||||
~segment();
|
||||
explicit segment(cell size, bool executable_p);
|
||||
~segment();
|
||||
|
||||
bool underflow_p(cell addr)
|
||||
{
|
||||
return (addr >= start - getpagesize() && addr < start);
|
||||
}
|
||||
bool underflow_p(cell addr) {
|
||||
return (addr >= start - getpagesize() && addr < start);
|
||||
}
|
||||
|
||||
bool overflow_p(cell addr)
|
||||
{
|
||||
return (addr >= end && addr < end + getpagesize());
|
||||
}
|
||||
bool overflow_p(cell addr) {
|
||||
return (addr >= end && addr < end + getpagesize());
|
||||
}
|
||||
|
||||
bool in_segment_p(cell addr)
|
||||
{
|
||||
return (addr >= start && addr < end);
|
||||
}
|
||||
bool in_segment_p(cell addr) { return (addr >= start && addr < end); }
|
||||
};
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue