diff --git a/mps/code/range.c b/mps/code/range.c index f535fed85f7..a9627e39077 100644 --- a/mps/code/range.c +++ b/mps/code/range.c @@ -107,6 +107,20 @@ Addr (RangeLimit)(Range range) return RangeLimit(range); } +void (RangeSetBase)(Range range, Addr addr) +{ + AVERT(Range, range); + AVER(addr >= RangeBase(range)); + RangeSetBase(range, addr); +} + +void (RangeSetLimit)(Range range, Addr addr) +{ + AVERT(Range, range); + AVER(addr <= RangeLimit(range)); + RangeSetLimit(range, addr); +} + Size (RangeSize)(Range range) { AVERT(Range, range); diff --git a/mps/code/range.h b/mps/code/range.h index 5ef6371ad8f..1275f1fa3d2 100644 --- a/mps/code/range.h +++ b/mps/code/range.h @@ -35,6 +35,8 @@ extern Bool RangesNest(Range outer, Range inner); extern Bool RangesEqual(Range range1, Range range2); extern Addr (RangeBase)(Range range); extern Addr (RangeLimit)(Range range); +extern void (RangeSetBase)(Range range, Addr addr); +extern void (RangeSetLimit)(Range range, Addr addr); extern Size (RangeSize)(Range range); extern void RangeCopy(Range to, Range from);