RFR: 8164508: unexpected profiling mismatch in c1 generated code

Vladimir Kozlov vladimir.kozlov at oracle.com
Tue Sep 6 16:08:45 UTC 2016


Good.

thanks,
Vladimir

On 9/5/16 12:53 AM, Jamsheed C m wrote:
> Hi,
>
> webrev: http://cr.openjdk.java.net/~jcm/8164508/webrev.00/
>
> bug id: https://bugs.openjdk.java.net/browse/JDK-8164508
>
>
> we were skipping profiling of  first argument(recv)  for virtual call
> sites to static callee.  this was not done for non-inline case in c1.
> (see linked case for ref: https://bugs.openjdk.java.net/browse/JDK-8027631)
>
> - bool has_receiver = x->inlined() && !x->callee()->is_static() &&
> !Bytecodes::has_receiver(bc);
> + bool has_receiver = x->callee()->is_loaded() &&
> !x->callee()->is_static() && !Bytecodes::has_receiver(bc); above change
> is not absolutely necessary as this can happen only for
> _linkToVirtual,_linkToInterface sites inlining at present, and linker
> elimination and callee inlining always happen together in c1. Please
> review, Best Regards, Jamsheed
>
>
>


More information about the hotspot-compiler-dev mailing list