RFR: 8160748: Inconsistent types for ideal_reg
Vladimir Kozlov
vladimir.kozlov at oracle.com
Wed Apr 12 02:41:27 UTC 2017
On 4/11/17 6:03 PM, Kim Barrett wrote:
>> On Apr 10, 2017, at 9:53 PM, Vladimir Kozlov <vladimir.kozlov at oracle.com> wrote:
>>
>> On 4/10/17 6:00 PM, Kim Barrett wrote:
>>>> On Apr 10, 2017, at 3:43 PM, Vladimir Kozlov <vladimir.kozlov at oracle.com> wrote:
>>>>
>>>> Hi, Kim
>>>>
>>>> Please, also correct vector registers (need to fix *.ad files too):
>>>>
>>>> // Vector ideal reg
>>>> static const int vector_ideal_reg(int len);
>>>> static const int vector_shift_count_ideal_reg(int len);
>>>
>>> Oops, I missed those. Testing that change. I’ll put out a new webrev when that’s done.
>>>
>>>> Can you do the same for OptoReg::reg2stack()? Or file separate RFE for it.
>>>
>>> I’m not sure what it is you are asking for here.
>>
>> There are useless conversions there too. For example:
>>
>> static unsigned int reg2stack( OptoReg::Name r) {
>>
>> int stack_slot = reg2stack(n);
>>
>> But it is a lot more changes since stack2reg(int idx) and others have singed argument. And I don't remember if negative values are used in such case. That is why I said may be to do it in separate RFE.
>
> At a high level, I think this is covered by JDK-8135181, and would be part of the JDK-8177482 subtask.
Good. We will take care about this when work on 8177482.
> If you want something more specific than that right now, it might be better for you or some other person
> with better understanding of the compiler than I have to put a sensible RFE together. About all I could
> say is that reg2stack returns uint but many callers treat the result as an int. But maybe that’s all you are
> asking for?
I did not know about 8177482 before. It should cover the issue I mentioned.
Thanks,
Vladimir
>
>
More information about the hotspot-compiler-dev
mailing list