RFR: 8310190: C2 SuperWord: AlignVector is broken, generates misaligned packs [v4]
Emanuel Peter
epeter at openjdk.org
Thu Oct 12 08:54:15 UTC 2023
On Fri, 6 Oct 2023 23:29:53 GMT, Vladimir Kozlov <kvn at openjdk.org> wrote:
>> Emanuel Peter has updated the pull request incrementally with three additional commits since the last revision:
>>
>> - replace ifdef with Matcher::has_match_rule
>> - fix whitespace
>> - Disable VerifyAlignVector with warning if AlignVector is disabled
>
> src/hotspot/cpu/x86/x86.ad line 8974:
>
>> 8972:
>> 8973: #ifdef _LP64
>> 8974: instruct verify_alignment(rRegP r, rRegL mask, rRegP tmp) %{
>
> this should be also under #ifdef ASSERT
@vnkozlov it seems that if I wrap it into `#ifdef ASSERT`, then it is no longer available for `Matcher::has_match_rule(Op_VerifyAlignment)`, both for slowdebug and debug. That's quite confusing. Is it somehow not correctly parsed by whatever processes the AD files?
> src/hotspot/share/opto/compile.cpp line 3670:
>
>> 3668: case Op_StoreVector:
>> 3669: #ifdef ASSERT
>> 3670: #ifdef AMD64
>
> Instead of #ifdef AMD64 you can check `Matcher::has_match_rule(Op_VerifyAlignmen)`
Done
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14785#discussion_r1356494282
PR Review Comment: https://git.openjdk.org/jdk/pull/14785#discussion_r1356494713
More information about the hotspot-compiler-dev
mailing list