RFR: 8268276: Base64 Decoding optimization for x86 using AVX-512 [v3]

Scott Gibbons github.com+6704669+asgibbons at openjdk.java.net
Tue Jun 8 13:28:17 UTC 2021


On Tue, 8 Jun 2021 01:56:42 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

>> Scott Gibbons has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Fixing review comments.  Adding notes about isMIME parameter for other architectures; clarifying decodeBlock comments.
>
> src/hotspot/cpu/x86/stubGenerator_x86_64.cpp line 6239:
> 
>> 6237: 
>> 6238:       __ align(32);
>> 6239:       __ BIND(L_bruteForce);
> 
> Is this alignment needed ? Given that brute force loop is already aligned.

I must be missing something.  How is the brute force loop aligned if not by this directive?  I don't see an alignment anywhere else that could force it.  After the entry(), there are pushes and length comparisons followed by the conditional on VBMI.  The only thing I can guess would be that the jmp aligns, but I see no indication that that occurs.

-------------

PR: https://git.openjdk.java.net/jdk/pull/4368


More information about the core-libs-dev mailing list