RFR (S): 8022494: Make compilation IDs sequential
Albert Noll
albert.noll at oracle.com
Mon Jan 6 00:07:19 PST 2014
Hi Vladimir,
thanks for your explanation. I agree with your suggestion. The new
version has the
corresponding check inside
*CompileBroker::assign_compile_id()*
>Also why you return only in such case and not for normal native wrappers?
Thanks for catching this bug. I fixed it in the new version.
Here is the link to the new webrev:
http://cr.openjdk.java.net/~anoll/8022494/webrev.05/
Best,
Albert
On 12/21/2013 08:46 PM, Vladimir Kozlov wrote:
> We have to generate method_handle_intrinsic so we can't simple show
> warning and continue execution - we can't do that.
> I suggested to generate compile_id always in such case and convert
> your warning to assert (since it could only happens in debug VM).
> Also why you return only in such case and not for normal native wrappers?
>
> + if (method->is_method_handle_intrinsic()) {
> + warning("Must generate wrapper for method handle intrinsic");
> + return;
> + }
> ---
> + assert(!method->is_method_handle_intrinsic()), "Must generate
> wrapper for method handle intrinsic");
> + return;
>
> Thanks,
> Vladimir
>
> On 12/18/13 10:18 PM, Albert Noll wrote:
>> Christian, Vladimir, thanks for the review.
>>
>> @Christian: Thanks for catching the typo
>>
>> @Vladimir: I am not sure if I understand your suggestion correctly.
>> Could you please clarify what you
>> mean by "The warning above will be assert after that."
>>
>> Best,
>> Albert
>>
>>
>> On 10/28/2013 07:59 PM, Vladimir Kozlov wrote:
>>> Albert,
>>>
>>> The warning is not correct solution since we HAVE to generate method
>>> handle intrinsics if your comment is correct:
>>>
>>> + // must be generated for method handle intrinsics (8026407),
>>> print out a warning.
>>> + if (method->is_method_handle_intrinsic()) {
>>> + warning("Must generate wrapper for method handle intrinsic");
>>> + return;
>>> + }
>>>
>>> I think assign_compile_id() should generate id in such case
>>> regardless CIStart and CIStop values. The warning above
>>> will be assert after that.
>>>
>>> And, please, file RFE (starter task) to cleanup type of compile_id.
>>> In some places it declared as 'int' and in an
>>> other as 'uint'.
>>>
>>> Thanks,
>>> Vladimir
>>>
>>> On 10/24/13 1:56 AM, Albert Noll wrote:
>>>> Here is the updated webrev:
>>>>
>>>> http://cr.openjdk.java.net/~anoll/8022494/webrev.04/
>>>> <http://cr.openjdk.java.net/%7Eanoll/8022494/webrev.04/>
>>>>
>>>> Best,
>>>> Albert
>>>>
>>>> On 24.10.2013 10:21, Albert Noll wrote:
>>>>> Hi Aleksey,
>>>>>
>>>>> thanks for looking at this.
>>>>>
>>>>> On 24.10.2013 10:15, Aleksey Shipilev wrote:
>>>>>> On 10/24/2013 12:01 PM, Albert Noll wrote:
>>>>>>> Here is the updated webrev:
>>>>>>> http://cr.openjdk.java.net/~anoll/8022494/webrev.03/
>>>>>> Nice to see the locking gone.
>>>>>>
>>>>>> compileBroker.cpp:
>>>>>> * Is that considered correct that OSR and normal compilations are
>>>>>> marked differently when running in debug mode, but not in release? I
>>>>>> understand the comment before assign_compile_id, so this is more
>>>>>> of the
>>>>>> philosophical question.
>>>>> Compilation IDs are only different if -XX:CICountOSR is set, which is
>>>>> defaulted to false.
>>>>>> sharedRuntime.cpp:
>>>>>> * Why do you need "2653 return;" in the method tail?
>>>>> Thanks for spotting this. I missed it during the cleanup.
>>>>>
>>>>> Best,
>>>>> Albert
>>>>>> Thanks,
>>>>>> -Aleksey.
>>>>>
>>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20140106/06ea5021/attachment-0001.html
More information about the hotspot-compiler-dev
mailing list