RFR: 8154495: SHA256 AVX2 intrinsic (when no supports_sha() available)
vladimir.kozlov at oracle.com
Tue Apr 19 00:09:10 UTC 2016
The patch was generated on Windows and have ^M at the end of lines so I
can't apply it to our sources.
I don't see usage of new [v]movdqa(), vpsrldq(), vpslldq(), instructions.
Please, move new code in macroAssembler_x86_sha.cpp to the end of file.
_k256_W is the same as _k256 with repeated 4 values. I would suggest
to generated it dynamically in stubGenerator_x86_64.cpp based on _k256:
StubRoutines::x86::_k256_W_adr = generate_k256_W();
What testing was done? Did you ran with fastdebug build? I am concern
about size of new stub and current code_size2 is enough.
On 4/18/16 2:44 PM, Civlin, Jan wrote:
> == Correction in the subject line ===
> We would like to contribute the SHA256 AVX2 intrinsic.
> This intrinsic is for x86 AVX2 architecture when no supports_sha() is available. It is L64 code only.
> The patch delivers x2 performance gain for the latency and throughput - both are measured on an average message.
> Contributor: Jan Civlin.
> bug: https://bugs.openjdk.java.net/browse/JDK-8154495
> webrev: http://cr.openjdk.java.net/~vdeshpande/8154495/webrev.00/
More information about the hotspot-compiler-dev