RFR: Shared write barrier stub (x86 and aarch64)
Roman Kennke
rkennke at redhat.com
Fri Oct 21 15:31:36 UTC 2016
This change makes C1 and the interpreter use the assembly write-barrier
stub that was so far only used for C2. All 3 now use the same
MacroAssembler routine to generate the call to the stub (incl.
evacuation-in-progress-check), and all 3 now use that stub for the
write-barrier fast path, and all 3 now call into Shenandoah for slow
path using the same entry method.
Advantages:
- More efficient write barriers for interpreter and C1
- Smaller code
- Less duplicated code (easier to maintain...)
In order to do this, I added a 3rd stub generation phase, because we
need the heap to be initialized (happens after phase 1) and before
generating the interpreter (happens before phase 2).
http://cr.openjdk.java.net/~rkennke/sharedwbstubs/webrev.00/
Ok to go?
Roman
More information about the shenandoah-dev
mailing list