RFR: 8153713 : aarch64: improve short array clearing using store pair
Felix Yang
felix.yang at linaro.org
Tue Apr 12 10:49:33 UTC 2016
Done. New webrev: http://cr.openjdk.java.net/~fyang/8153713/webrev.01
Tested with JTreg hotspot, langtools and jdk.
Thanks,
Felix
On 7 April 2016 at 23:35, Andrew Haley <aph at redhat.com> wrote:
> On 04/07/2016 04:01 PM, Felix Yang wrote:
> > Please review webrev:
> http://cr.openjdk.java.net/~fyang/8153713/webrev.00/
> > JIRA Issue: https://bugs.openjdk.java.net/browse/JDK-8153713
> >
> > Currently, C2 compiler generate independent stores to clear
> > short arrays whose size is no bigger than parameter
> > InitArrayShortSize (refer to ClearArrayNode::Ideal function).
> > For the aarch64 port, we have store pair instruction which can
> > zero two memory words at a time and this will be good for code
> > size and maybe performance for some micro-archs.
> >
> > For Spark Terasort, an extra of 550 stp (xzr, xzr) instructions
> > are generated with the patch, which mean about 2KB reduction in
> > codesize.
> >
> > Tested with JTreg hotspot, langtools and jdk. Is it OK?
>
> It looks reasonable. It's rather a big slab of code for aarch64.ad,
> and I think that it should be in MacroAssembler. Long Chen created
> MacroAssembler::zero_words, and you should create an overload of
> zero_words which takes a constant int as an argument.
>
> Andrew.
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20160412/34e108ca/attachment.html>
More information about the hotspot-compiler-dev
mailing list