From 26b2fb160670314200c6a5792b40ee21b585cf8f Mon Sep 17 00:00:00 2001 From: Ivan Maidanski Date: Wed, 19 Jan 2022 21:35:42 +0300 Subject: Enable prefetch loop in GC_mark_from on E2K Issue #411 (bdwgc). * mark.c [!SMALL_CONFIG && !USE_PTR_HWTAG] (GC_mark_from): Perform prefetching loop (even for E2K); remove TODO item. --- mark.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'mark.c') diff --git a/mark.c b/mark.c index 861c06e0..d1015813 100644 --- a/mark.c +++ b/mark.c @@ -800,8 +800,7 @@ GC_INNER mse * GC_mark_from(mse *mark_stack_top, mse *mark_stack, { # define PREF_DIST 4 -# if !defined(SMALL_CONFIG) && !defined(E2K) - /* TODO: enable prefetching for E2K? */ +# if !defined(SMALL_CONFIG) && !defined(USE_PTR_HWTAG) word deferred; /* Try to prefetch the next pointer to be examined ASAP. */ @@ -857,7 +856,7 @@ GC_INNER mse * GC_mark_from(mse *mark_stack_top, mse *mark_stack, } } -# if !defined(SMALL_CONFIG) && !defined(E2K) +# if !defined(SMALL_CONFIG) && !defined(USE_PTR_HWTAG) /* We still need to mark the entry we previously prefetched. */ /* We already know that it passes the preliminary pointer */ /* validity test. */ -- cgit v1.2.1