On Fri, Jul 1, 2022 at 12:17 PM Roger Sayle <ro...@nextmovesoftware.com> wrote:
>
>
> Many thanks to Uros for spotting that I'd forgotten to add constraints
> to the new define_insn_and_split *andn<dwi>_doubleword_bmi when moving it
> from pre-reload to post-reload.  I've pushed this obvious fix after a
> make bootstrap on x86_64-pc-linux-gnu.  Sorry for the inconvenience to
> anyone building the tree with a non-default architecture that enables
> BMI.
>
>
> 2022-07-01  Roger Sayle  <ro...@nextmovesoftware.com>
>             Uroš Bizjak  <ubiz...@gmail.com>
>
> gcc/ChangeLog
>         * config/i386/i386.md (*andn<mode>3_doubleword_bmi): Add constraints
>         to post-reload define_insn_and_split.

-  (not:<DWI> (match_operand:<DWI> 1 "register_operand"))
-  (match_operand:<DWI> 2 "nonimmediate_operand")))
+  (not:<DWI> (match_operand:<DWI> 1 "register_operand" "0"))

This constraint can be "r", ANDN is not destructive.

+  (match_operand:<DWI> 2 "nonimmediate_operand" "ro")))

Uros.

Reply via email to