-
Enhancement
-
Resolution: Unresolved
-
P4
-
repo-valhalla
Because GC barriers are used in method entry points for the scalarized calling convention, we have to save all registers before calling into the runtime (see JDK-8242210 and JDK-8251398):
https://github.com/openjdk/valhalla/blob/8efeb68ef0594c2c7c20bc2e45c112d6ef623b2b/src/hotspot/cpu/x86/gc/g1/g1BarrierSetAssembler_x86.cpp#L206
https://github.com/openjdk/valhalla/blob/8efeb68ef0594c2c7c20bc2e45c112d6ef623b2b/src/hotspot/cpu/x86/gc/g1/g1BarrierSetAssembler_x86.cpp#L332
We should investigate if it is sufficient to only save the caller-save argument registers and only do so if the barrier is used in an entry point.
We should also check if increasing the buffer size (JDK-8271324) is still required.
See also JDK-8232094.
https://github.com/openjdk/valhalla/blob/8efeb68ef0594c2c7c20bc2e45c112d6ef623b2b/src/hotspot/cpu/x86/gc/g1/g1BarrierSetAssembler_x86.cpp#L206
https://github.com/openjdk/valhalla/blob/8efeb68ef0594c2c7c20bc2e45c112d6ef623b2b/src/hotspot/cpu/x86/gc/g1/g1BarrierSetAssembler_x86.cpp#L332
We should investigate if it is sufficient to only save the caller-save argument registers and only do so if the barrier is used in an entry point.
We should also check if increasing the buffer size (
See also JDK-8232094.
- relates to
-
JDK-8254218 [lworld] Calling Convention 2.0
-
- In Progress
-
-
JDK-8271324 [lworld] java/foreign/* tests fail with "guarantee(sect->end() <= tend) failed: sanity"
-
- Resolved
-