[aarch64-port-dev ] RFR: JDK-8205004: AArch64: fix failures in jtreg ArraysEqCmpTest

Joshua Zhu Joshua.Zhu at arm.com
Tue Jun 19 10:27:21 UTC 2018


Thanks Dmitrij!
I update webrev at
http://cr.openjdk.java.net/~zyao/8205004/webrev.02/
with LEN_IS_ZERO removal.

Hi,

you're right. cbz(cnt1, SAME); is enough and LEN_IS_ZERO can be removed then.



(just in case, I'm not a reviewer)

Thanks,

Dmitrij

On 17.06.2018 06:35, Joshua Zhu wrote:

Hi Dmitrij,



>> and label LEN_IS_ZERO and its path can also be deleted like below:
>>      bind(SHORT);
>>      cmp(cnt2, cnt1);
>>      br(NE, DONE);
>>      cbz(cnt1, SAME);

>regarding LEN_IS_ZERO removal: we must keep it. Otherwise it'll compare
>garbage memory later, because loaded data is shifted by lslv(tmp5, tmp4,
>tmp5); to remove extra data. In case of 0 length, shift will be 0, so, a
>memory after this particular array will be compared.
It will not execute the instruction you mentioned, because my added instruction cbz(cnt1, SAME); will directly goto SAME path when cnt1 is zero. (no need to goto LEN_IS_ZERO to execute another compare and branch)

Best Regards,
Joshua



More information about the aarch64-port-dev mailing list