RFR(S): 8217990: C2 UseOptoBiasInlining: load of markword optimized to 0 if running with -XX:-EliminateLocks
Reingruber, Richard
richard.reingruber at sap.com
Thu Feb 7 16:39:45 UTC 2019
Hi Roland,
> Why would that be a problem? If the allocation is non escaping then it
> wouldn't be used in a non inlined call.
I thought bl bulk revocation could be a problem, but as long as the load of the
prototype header cannot be scheduled before a safepoint, this does not seem to
be an issue.
> I suspect it's not but I went with the most conservative fix.
That's good.
Thanks, Richard.
-----Original Message-----
From: Roland Westrelin <rwestrel at redhat.com>
Sent: Donnerstag, 7. Februar 2019 17:01
To: Reingruber, Richard <richard.reingruber at sap.com>; hotspot-compiler-dev at openjdk.java.net
Cc: Doerr, Martin <martin.doerr at sap.com>; Tobias Hartmann <tobias.hartmann at oracle.com>
Subject: RE: RFR(S): 8217990: C2 UseOptoBiasInlining: load of markword optimized to 0 if running with -XX:-EliminateLocks
Hi Richard,
> I noticed that the markword load is still pinned. Is this necessary?
I suspect it's not but I went with the most conservative fix.
> I guess so, because without pinning it could possibly be scheduled
> before a safepoint as it loads from a known instance which does not
> interfere memory wise with the safepoint. Or in other words: if the
> safepoint is a call, the load does not depend on the memory state
> produced by the call, because it refers to a known instance which is
> not passed as parameter.
Why would that be a problem? If the allocation is non escaping then it
wouldn't be used in a non inlined call.
Roland.
More information about the hotspot-compiler-dev
mailing list