Request for reviews (S): 8005544: Use 256bit YMM registers in arraycopy stubs on x86

Christian Thalinger christian.thalinger at oracle.com
Wed Jan 2 16:50:11 PST 2013


On Dec 27, 2012, at 5:15 PM, Vladimir Kozlov <vladimir.kozlov at oracle.com> wrote:

> On 12/27/12 2:33 PM, Vladimir Kozlov wrote:
>> http://cr.openjdk.java.net/~kvn/8005544/webrev/

src/cpu/x86/vm/stubGenerator_x86_32.cpp:

+         __ vmovdqu(xmm0,Address(from,  0));
+         __ vmovdqu(xmm1,Address(from, 32));

There is a space missing after the ",".

src/cpu/x86/vm/stubGenerator_x86_64.cpp:

In that file there are a couple as well.

Otherwise this looks good.

-- Chris

>> 
>> New x86 processors with AVX2 have wide memory bus and improved memory
>> operations with YMM registers. Use them to copy data in arraycopy stubs.
> 
> Also use them in array_fill code.
> 
>> 
>> Most changes in stubGenerator_x86_64.cpp are renaming of copy_32_bytes
>> to copy_bytes since now the code copies 64 or 32 bytes per iteration.
>> 
>> Ran compiler regression tests with 64- and 32-bit VM.
>> 
>> Thanks,
>> Vladimir
>> 



More information about the hotspot-compiler-dev mailing list