RFR: 8277324: C2 compilation fails with "bad AD file" on x86-32 after JDK-8276162 due to missing match rule [v2]

Tobias Hartmann thartmann at openjdk.java.net
Wed Nov 17 12:41:13 UTC 2021


On Wed, 17 Nov 2021 11:12:10 GMT, Christian Hagedorn <chagedorn at openjdk.org> wrote:

>> Tobias Hartmann has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Use expand
>
> src/hotspot/cpu/x86/x86_32.ad line 13160:
> 
>> 13158:   opcode(0x0F,0x40);
>> 13159:   ins_encode( enc_cmov(cmp), RegReg( dst, src ) );
>> 13160:   ins_pipe( pipe_cmov_reg );
> 
> Since this code is shared with `cmovII_reg_LTGE`, we could directly use it with `expand`:
> 
>   expand %{
>     cmovII_reg_LTGE(cmp, flags, dst, src);
>   %}
> 
> Could also be done for the other cases.

Thanks Christian, that's a good suggestion. I thought expand does not work because the argument types differ but it does. I updated the patch.

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

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


More information about the hotspot-compiler-dev mailing list