Flat Array null check issue - Re: RFR(L) Valhalla support for AArch64 v.05
Dmitry Samersoff
dms at samersoff.net
Wed Jul 10 10:16:19 UTC 2019
Roland,
> Masking is handled by platform independent code in C2. x86 used to
> take care of the masking in the ad file but it no longer does.
> Why doesn't aarch64 follow the x86 implementation?
I updated aarch64 code to follow x86 implementation (I'll publish
updated webrev shortly) so the immediate problem of falling test is solved.
But I have more general question:
Masking and storage property check is implemented three times - in
interpreter, in C1 and in C2. Therefore, if we can re-use the code from
macroAssembler_xxx.cpp in C1 and C2 it will simplify further maintenance.
-Dmitry
On 10.07.19 12:26, Roland Westrelin wrote:
>
> Hi Dmitry,
>
>>> I will take a closer look at that issue. Do you reproduce it with:
>>>
>>> http://cr.openjdk.java.net/~dsamersoff/valhalla_lworld_aarch64/webrev.05/
>>
>> Thank you!
>>
>> Yes, you can reproduce it with this webrev.
>>
>> Also, I think you can reproduce the issue on x86 by adding
>>
>> andl($dst$$Register, oopDesc::compressed_klass_mask());
>>
>> to instruct loadNKlass(rRegN dst, memory mem)
>> inside x86_64.ad
>
> Masking is handled by platform independent code in C2. x86 used to take
> care of the masking in the ad file but it no longer does. Why doesn't
> aarch64 follow the x86 implementation?
>
> Roland.
>
More information about the valhalla-dev
mailing list