RFR (XS) 8024774: assert(_con < t->is_tuple()->cnt()) failed: ProjNode::_con must be in range
Vladimir Ivanov
vladimir.x.ivanov at oracle.com
Thu Oct 3 13:58:20 PDT 2013
Thank you, Vladimir.
Best regards,
Vladimir Ivanov
On 10/4/13 12:35 AM, Vladimir Kozlov wrote:
> Good.
>
> Thanks,
> Vladimir
>
> On 10/3/13 11:35 AM, Vladimir Ivanov wrote:
>> Thanks for catching that.
>>
>> How about that?
>> http://cr.openjdk.java.net/~vlivanov/8024774/webrev.02
>>
>> Best regards,
>> Vladimir Ivanov
>>
>> On 10/3/13 10:24 PM, Vladimir Kozlov wrote:
>>> You need to add cast (int)(j - lowval) since argument type is int. Some
>>> C++ compiler will complain if no cast.
>>>
>>> Thanks,
>>> Vladimir K
>>>
>>> On 10/3/13 11:04 AM, Vladimir Ivanov wrote:
>>>> Vladimir,
>>>>
>>>> I like the idea to convert j to int64. It looks much cleaner now.
>>>>
>>>> Here's updated webrev:
>>>> http://cr.openjdk.java.net/~vlivanov/8024774/webrev.01
>>>>
>>>> Best regards,
>>>> Vladimir Ivanov
>>>>
>>>> On 10/3/13 8:57 PM, Vladimir Kozlov wrote:
>>>>> I don't think it is right. You need to have check before the loop's
>>>>> body
>>>>> execution.
>>>>> Also what about case r->lo() == MIN_INT? (j - lowval) will underflow.
>>>>> I think we should use int64 type for these expressions as in other
>>>>> lines
>>>>> of this method.
>>>>>
>>>>> Thanks,
>>>>> Vladimir
>>>>>
>>>>> On 10/2/13 11:55 AM, Vladimir Ivanov wrote:
>>>>>> http://cr.openjdk.java.net/~vlivanov/8024774/webrev.00/
>>>>>> 7 lines changed: 4 ins; 0 del; 3 mod
>>>>>>
>>>>>> If hi->hi() == MAX_INT then, after (j == r->hi() && r == hi), j++
>>>>>> overflows and j <= r->hi() succeeds again (leading to
>>>>>> extra iterations and infinite loop in the product).
>>>>>>
>>>>>> The fix is to check whether upper limit is reached (j >= r->hi()) and
>>>>>> stop iterating, if necessary.
>>>>>>
>>>>>> Also, did a small cleanup: eliminated unused parameter from
>>>>>> SwitchRange::print.
>>>>>>
>>>>>> Testing: failing test case.
>>>>>>
>>>>>> Reviewed-by: iveresov, ?
>>>>>>
>>>>>> Best regards,
>>>>>> Vladimir Ivanov
More information about the hotspot-compiler-dev
mailing list