[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