diff options
author | Ben Gamari <ben@smart-cactus.org> | 2021-09-24 16:46:56 -0400 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2021-10-12 01:40:29 -0400 |
commit | 2e0c13ab50b28d3e2ad5bfeed2b6651096921c9d (patch) | |
tree | 80e43098127fd0180f7e9ae99de8959002182619 | |
parent | 2c02ea8dc33fe008675b1c0629c0ffb0e8ca4482 (diff) | |
download | haskell-2e0c13ab50b28d3e2ad5bfeed2b6651096921c9d.tar.gz |
rts/nonmoving: Enable selector optimisation by default
-rw-r--r-- | rts/RtsFlags.c | 5 | ||||
-rw-r--r-- | rts/include/rts/Flags.h | 2 | ||||
-rw-r--r-- | rts/sm/NonMovingMark.c | 6 |
3 files changed, 1 insertions, 12 deletions
diff --git a/rts/RtsFlags.c b/rts/RtsFlags.c index 778f49c13b..a775e2986a 100644 --- a/rts/RtsFlags.c +++ b/rts/RtsFlags.c @@ -166,7 +166,6 @@ void initRtsFlagsDefaults(void) RtsFlags.GcFlags.oldGenFactor = 2; RtsFlags.GcFlags.returnDecayFactor = 4; RtsFlags.GcFlags.useNonmoving = false; - RtsFlags.GcFlags.nonmovingSelectorOpt = false; RtsFlags.GcFlags.generations = 2; RtsFlags.GcFlags.squeezeUpdFrames = true; RtsFlags.GcFlags.compact = false; @@ -1711,10 +1710,6 @@ error = true; OPTION_SAFE; RtsFlags.GcFlags.useNonmoving = true; unchecked_arg_start++; - if (rts_argv[arg][3] == 's') { - RtsFlags.GcFlags.nonmovingSelectorOpt = true; - unchecked_arg_start++; - } break; case 'c': /* Debugging tool: show current cost centre on diff --git a/rts/include/rts/Flags.h b/rts/include/rts/Flags.h index 11e7bfdaa7..e8298023de 100644 --- a/rts/include/rts/Flags.h +++ b/rts/include/rts/Flags.h @@ -54,8 +54,6 @@ typedef struct _GC_FLAGS { double pcFreeHeap; bool useNonmoving; // default = false - bool nonmovingSelectorOpt; // Do selector optimization in the - // non-moving heap, default = false uint32_t generations; bool squeezeUpdFrames; diff --git a/rts/sm/NonMovingMark.c b/rts/sm/NonMovingMark.c index 1fc292769d..2fd85dc4f0 100644 --- a/rts/sm/NonMovingMark.c +++ b/rts/sm/NonMovingMark.c @@ -1522,11 +1522,7 @@ mark_closure (MarkQueue *queue, const StgClosure *p0, StgClosure **origin) } case THUNK_SELECTOR: - if (RtsFlags.GcFlags.nonmovingSelectorOpt) { - nonmoving_eval_thunk_selector(queue, (StgSelector*)p, origin); - } else { - PUSH_FIELD((StgSelector *) p, selectee); - } + nonmoving_eval_thunk_selector(queue, (StgSelector*)p, origin); break; case AP_STACK: { |