RFR: 8310190: C2 SuperWord: AlignVector is broken, generates misaligned packs [v8]

Tobias Hartmann thartmann at openjdk.org
Thu Oct 12 13:14:58 UTC 2023


On Thu, 12 Oct 2023 08:45:59 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>> 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?

Parsing of preprocessor statements in adlc is quite limited. Maybe that's the issue:
https://github.com/openjdk/jdk/blob/aba89f20bfce4de5ef034fed30b3b461fc715ba5/src/hotspot/share/adlc/adlparse.cpp#L5152-L5169

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

PR Review Comment: https://git.openjdk.org/jdk/pull/14785#discussion_r1356710933


More information about the hotspot-compiler-dev mailing list