-
Enhancement
-
Resolution: Fixed
-
P4
-
8-shenandoah, 11-shenandoah, 13
-
b15
-
x86_64, aarch64
-
generic
In some paths, we currently check GC state 3 times before enqueueing an oop in SATB buffer: 1. conc-mark in progress (global or local), 2. SATB active (global) 3. SATB active (local). This should be streamlined to only do one check, and consistently check conc-mark-in-progress only.
This can be taken even further for arraycopy pre-barriers and arraycopy-loops, where the check can be done once for the whole operation.
This can be taken even further for arraycopy pre-barriers and arraycopy-loops, where the check can be done once for the whole operation.