RFR: 8209459: TestSHA512MultiBlockIntrinsics failed on AArch64

Joshua Zhu Joshua.Zhu at arm.com
Wed Aug 15 09:37:09 UTC 2018


Vladimir, Thanks for your review.
Could you please help push this change?

Best Regards,
Joshua

> -----Original Message-----
> From: Vladimir Kozlov
> Sent: Wednesday, August 15, 2018 1:03 AM
> 
> Looks good.
> 
> Thanks,
> Vladimir
> 
> On 8/14/18 12:35 AM, Joshua Zhu wrote:
> > Hi,
> >
> > Please help review the following change.
> > Bug: https://bugs.openjdk.java.net/browse/JDK-8209459
> > Webrev: http://cr.openjdk.java.net/~zyao/8209459/webrev.00
> > It has passed "compiler/intrinsics/sha" jtreg testing for Graal and C2.
> >
> > The jtreg TestSHA512MultiBlockIntrinsics failed on aarch64 since commit
> http://hg.openjdk.java.net/jdk/jdk/rev/2a12ff1fff68
> > The failed case expected "<intrinsic id='_digestBase_implCompressMB'" not
> to appear in compilation logs with "+XX:+LogCompilation"
> > because "-XX:+UseSHA512Intrinsics" is not supported on aarch64.
> >
> http://hg.openjdk.java.net/jdk/jdk/file/e810abb27deb/src/hotspot/cpu/aarc
> h64/vm_version_aarch64.cpp#l354
> >
> > But _digestBase_implCompressMB intrinsic has three stub routines.
> >
> http://hg.openjdk.java.net/jdk/jdk/file/e810abb27deb/src/hotspot/share/op
> to/library_call.cpp#l6190
> > Generation of any one among three stub routines will cause "<intrinsic
> id='_digestBase_implCompressMB'" printed in log.
> >
> http://hg.openjdk.java.net/jdk/jdk/file/e810abb27deb/src/hotspot/share/op
> to/library_call.cpp#l406
> >
> > Which ones are generated for intrinsic _digestBase_implCompressMB is
> related with:
> >      jvm option (e.g. UseSHA512Intrinsics)
> >      cpu feature
> >      loaded class (e.g. if SHA5.class is not loaded, no need to generate the
> corresponding stub routine: sha512_implCompressMB)
> >
> http://hg.openjdk.java.net/jdk/jdk/file/e810abb27deb/src/hotspot/share/op
> to/library_call.cpp#l6326
> >      speculative type (if object has speculative type, only stub routine for the
> speculative type will be generated as fast path)
> >
> http://hg.openjdk.java.net/jdk/jdk/file/e810abb27deb/src/hotspot/share/op
> to/library_call.cpp#l6334
> >
> > The pseudo code is:
> > if (digestBaseObj instanceof SHA/SHA2/SHA5)
> >      do_intrinsic
> > else
> >      do_javapath
> >
> > The commit http://hg.openjdk.java.net/jdk/jdk/rev/2a12ff1fff68 caused
> load of all three SHA, SHA2 and SHA5 classes.
> >
> > Best Regards,
> > Joshua
> >


More information about the hotspot-compiler-dev mailing list