RFR: 8169529: AArch64: Revert old JDK-8167595 changes after JDK-8159035 fix is pushed
Andrew Dinn
adinn at redhat.com
Thu Nov 17 12:44:09 UTC 2016
On 17/11/16 11:57, Tobias Hartmann wrote:
> this looks good to me. Here are the changes for JDK-8159035 (should have been reviewed in the open):
> http://hg.openjdk.java.net/jdk9/hs/jdk/rev/0e98c765ce9b
Thanks, Tobias.
I understand that a zero check is no longer needed but I am not sure it
is correct to revert the AArch64 change. For example, at line 2820+ the
following change is being backed out
- __ subw(len_reg, len_reg, 16);
- __ cbnzw(len_reg, L_aes_loop);
+ __ sub(len_reg, len_reg, 16);
+ __ cbnz(len_reg, L_aes_loop);
I think the use of subw and cbnzw was one of Andrew's mods to the
originally proposed patch. It ensures that the contents of len_reg are
correctly treated as a 32-bit int. Similarly, the proposed removal of
the zero test at line 2759 once again risks treating the 32 bit length
as a 64 bit quantity
- __ subsw(rscratch2, len_reg, zr);
- __ br(Assembler::LE, _L_finish);
+ __ mov(rscratch2, len_reg);
I think that should revert to a movw (of course this still makes the
change to add label L_finish redundant).
So, rather than completely /revert/ the change I think it needs
/correcting/ just to remove the zero check.
regards,
Andrew Dinn
-----------
Senior Principal Software Engineer
Red Hat UK Ltd
Registered in England and Wales under Company Registration No. 03798903
Directors: Michael Cunningham, Michael ("Mike") O'Neill, Eric Shander
More information about the hotspot-compiler-dev
mailing list