RFR: Workaround traversal+C2 bug with individual loads/stores
Roman Kennke
rkennke at redhat.com
Fri Jun 15 14:36:58 UTC 2018
Am 15.06.2018 um 16:30 schrieb Aleksey Shipilev:
> diff -r ddd140c92018 src/hotspot/share/gc/shenandoah/heuristics/shenandoahTraversalHeuristics.cpp
> --- a/src/hotspot/share/gc/shenandoah/heuristics/shenandoahTraversalHeuristics.cpp Fri Jun 15
> 15:35:25 2018 +0200
> +++ b/src/hotspot/share/gc/shenandoah/heuristics/shenandoahTraversalHeuristics.cpp Fri Jun 15
> 16:30:14 2018 +0200
> @@ -43,6 +43,11 @@
> if (ClassUnloadingWithConcurrentMark) {
> SHENANDOAH_ERGO_OVERRIDE_DEFAULT(ShenandoahUnloadClassesFrequency, 1);
> }
> +
> + // TODO: Disable this optimization for now, as it also requires the enqueue barriers there.
> +#ifdef COMPILER2
> + FLAG_SET_DEFAULT(ArrayCopyLoadStoreMaxElem, 0);
> +#endif
> }
>
> bool ShenandoahTraversalHeuristics::should_start_normal_gc() const {
>
>
> Thanks,
> -Aleksey
>
Yes. Strictly you could rip out the same from
ShenandoahPartialHeuristics as it would inherit this from traversal. If
you do, no need for additional review.
Thanks,
Roman
More information about the shenandoah-dev
mailing list