On 05/23/2014 11:06 AM, Paul Sandoz wrote:
On May 22, 2014, at 1:34 AM, Vladimir Kozlov <vladimir.koz...@oracle.com> wrote:

http://cr.openjdk.java.net/~kvn/8035974/webrev
https://bugs.openjdk.java.net/browse/JDK-8035974

Contributed by James Cheng and modified by me.

Looks good to me.

Paul.

implCompressMultiBlock should be private thus don't need to be final.

Rémi


To use intrinsics to accelerate SHA operations on multiple blocks [1], it is 
needed to pull a loop out of DigestBase.engineUpdate() and make a new method 
implCompressMultiBlock() which contains only the loop and can be intrinsified.

On platforms which does not use intrinsic implCompressMultiBlock() method will 
be inlined by JIT and the same code will be generated as before. So no 
performance regression with the pure Java SUN provider is expected.

About arithmetic change. limit = ofs + len will not overflow integer because ofs 
<= b.length - len (there is check).

Tested with jdk jtreg tests and new hotspot jtreg test James wrote for 8035968.

Thanks,
Vladimir

[1] https://bugs.openjdk.java.net/browse/JDK-8035968

Reply via email to