summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabor Drescher <gabor.drescher@cs.fau.de>2016-07-05 10:04:43 +0200
committerManuel Mohr <manuel.mohr@kit.edu>2016-07-05 10:06:55 +0200
commit9b95700986798e2d0d077bd09cffd3490dc06269 (patch)
tree4deb41775220e64e0ad67bc862e7e7e0adb94bc2
parent30d1652a492a3a3817761a894481185d0056e418 (diff)
Fix assert in mark.c for non-heap regionsHEADoctopos
-rw-r--r--mark.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/mark.c b/mark.c
index 406c06c..6650380 100644
--- a/mark.c
+++ b/mark.c
@@ -647,7 +647,9 @@ GC_INNER mse * GC_mark_from(mse *mark_stack_top, mse *mark_stack,
/* Process part of the range to avoid pushing too much on the */
/* stack. */
GC_ASSERT(descr < (word)GC_greatest_plausible_heap_addr
- - (word)GC_least_plausible_heap_addr);
+ - (word)GC_least_plausible_heap_addr
+ || current_p + descr <= (word)GC_least_plausible_heap_addr
+ || current_p >= (word)GC_greatest_plausible_heap_addr);
# ifdef ENABLE_TRACE
if ((word)GC_trace_addr >= (word)current_p
&& (word)GC_trace_addr < (word)(current_p + descr)) {