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

Joshua Zhu Joshua.Zhu at arm.com
Sun Jun 17 03:35:58 UTC 2018


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