RFR JDK-8159720 C2 failures should not prevent C1 from compiling a method

Christian Thalinger cthalinger at twitter.com
Fri Jun 17 00:57:23 UTC 2016


> On Jun 16, 2016, at 1:37 PM, Chuck Rasbold <rasbold at google.com> wrote:
> 
> Igor is correct.  The offending code is from the days when C2-only tiered compilation was the goal.

Excellent archeology!  The change looks good to me then.

> 
> On Thu, Jun 16, 2016 at 1:11 PM, Igor Veresov <igor.veresov at oracle.com <mailto:igor.veresov at oracle.com>> wrote:
> This could be from the times when there was an attempt to implement tiered compilation using C2-only.
> 
> igor
> 
> 
>> On Jun 16, 2016, at 12:20 PM, dean.long at oracle.com <mailto:dean.long at oracle.com> wrote:
>> 
>> On 6/16/16 11:55 AM, Christian Thalinger wrote:
>>> 
>>>> On Jun 16, 2016, at 10:51 AM, Carsten Varming <varming at gmail.com <mailto:varming at gmail.com>> wrote:
>>>> 
>>>> Dear compiler list,
>>>> 
>>>> I ran into a few methods that C2 failed to compile due to their number of arguments. To my surprise C2's failure caused the methods to be executed in the interpreter; although they had previously been compiled with C1. It turns out that a few C2 failures marks a method as not compilable on all tiers. I went through all possible failures with this behavior and I don't see reasons for preventing C1 from compiling a method after C2 failed. Perhaps some of you know the reasons behind this. I wrote a small patch to prevent C2 failures from marking a method as not compilable on all tiers when tiered compilation is on.
>>> 
>>> I briefly looked at the history of that code and it’s there since the initial load into Mercurial.  Does anyone have more history on this or is this just an oversight from early-stage planning?
>>> 
>> The _all_tiers part seems to come from https://bugs.openjdk.java.net/browse/JDK-4939496 <https://bugs.openjdk.java.net/browse/JDK-4939496>.
>> 
>> dl
>> 
>>>> 
>>>> I filed a bug: JDK-8159720
>>>> and created a webrev:  <http://cr.openjdk.java.net/%7Ecvarming/c2_failure_prevents_all_tiers/0/>http://cr.openjdk.java.net/~cvarming/c2_failure_prevents_all_tiers/0/ <http://cr.openjdk.java.net/~cvarming/c2_failure_prevents_all_tiers/0/>
>>>> 
>>>> Carsten
>>> 
>> 
> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20160616/f473524f/attachment-0001.html>


More information about the hotspot-compiler-dev mailing list