[8u] RFR: aarch32: array copy stub copies wrong data count

Edward Nevill edward.nevill at gmail.com
Thu Mar 10 11:56:53 UTC 2016


Hi Anton,

This patch looks fine. Thanks for fixing it.

One small change I am going to suggest is that rather than

-    if(0 == wordSize/granularity) {

we write

+    if (granularity > wordSize) {

This reads more naturally to me.

All of this needs a thorough going over. I have just revamped the
aarch64 code to optimise the small code cases as benchmarking I did
shows > 95% of all copies were <= 64 bytes.

Here is the aarch64 patch

http://hg.openjdk.java.net/jdk9/hs-comp/hotspot/rev/9e7c906e3208

All the best,
Ed.


On Thu, 2016-03-10 at 08:36 +0000, Anton Kozlov wrote:
> Hi, All!
> 
> Current implementation of aarch32 array_copy_stub relies on word size to be 8 bytes, as it is on aarch64; it leads to less bytes copied than it should. Problem arises with copy of longs and copy of small number of elements. Test below demonstrates the issue:




More information about the aarch32-port-dev mailing list