RFR (XS): 8150436: Incorrect invocation mode when linkToInteface linker is eliminated
uschindler at apache.org
Fri Feb 26 08:57:24 UTC 2016
> Uwe, I verified that your test case works fine after the fix.
> Best regards,
> Vladimir Ivanov
> PS: thanks a lot for the minimized test case and detailed report! It
> saved me lots of time.
Hihi, it took me the whole night to figure out that you have to prevent inlining of the interface method :-)
> On 2/25/16 8:30 PM, Uwe Schindler wrote:
> > Hi Vladimir,
> > thanks for taking care so fast. To me the fix looks fine and this explains why
> we have seen that with Lucene! I hope my test case was fine, but it was
> quite clear under which circumstances this happened. As I am not able to
> build a full patched JDK on my own, but I hope you tried the fix with my test
> case (as attached to issue).
> > Many, many thanks!
> > Uwe
> > -----
> > Uwe Schindler
> > uschindler at apache.org
> > ASF Member, Apache Lucene PMC / Committer
> > Bremen, Germany
> > http://lucene.apache.org/
> >> -----Original Message-----
> >> From: hotspot-compiler-dev [mailto:hotspot-compiler-dev-
> >> bounces at openjdk.java.net] On Behalf Of Vladimir Ivanov
> >> Sent: Wednesday, February 24, 2016 5:14 PM
> >> To: hotspot compiler <hotspot-compiler-dev at openjdk.java.net>
> >> Subject:  RFR (XS): 8150436: Incorrect invocation mode when
> >> linkToInteface linker is eliminated
> >> http://cr.openjdk.java.net/~vlivanov/8150436/webrev.00/
> >> https://bugs.openjdk.java.net/browse/JDK-8150436
> >> When MH.linkToInterface is eliminated, but the target method is not
> >> inlined, either default or concrete method is attached to the call site.
> >> During call site resolution, invokeinterface invocation mode is used,
> >> but resolution fails when the target method is concrete.
> >> The fix is to adjust invocation mode to invokevirtual when concrete
> >> method is attached.
> >> Testing: failing test, JPRT.
> >> Thanks!
> >> Best regards,
> >> Vladimir Ivanov
More information about the hotspot-compiler-dev