On Tue, 8 Jun 2021 13:25:00 GMT, Scott Gibbons <github.com+6704669+asgibb...@openjdk.org> wrote:
>> 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. > > Perhaps what you missed was that L_forceLoop is aligned (line 6288). This is > not the same label as L_bruteForce, which is a jump target from within the > VBMI conditional (which should be aligned)? Otherwise, I don't see how > L_bruteForce could possibly already be aligned. Yes, I meant force loop already has alignment so earlier one can be removed. ------------- PR: https://git.openjdk.java.net/jdk/pull/4368