i386: Use int_nonimmediate_operand more
authorUros Bizjak <ubizjak@gmail.com>
Tue, 5 May 2020 09:31:52 +0000 (11:31 +0200)
committerUros Bizjak <ubizjak@gmail.com>
Tue, 5 May 2020 09:33:55 +0000 (11:33 +0200)
commit59e4474a22cbf23b777f244d2a28d1ee4b54d3ce
tree1fbb2f4c1efc85b5995599e8f7f0065b0894c1ed
parentcfbbceed1dad352e5be9e2af7b665ae7d9d2537e
i386: Use int_nonimmediate_operand more

Pattern explosing and manual mode checks can be avoided by using
int_nonimmediate_operand special predicate.

While there, rewrite *x86_mov<SWI48:mode>cc_0_m1_neg_leu<SWI:mode>
to a combine pass splitter.

* config/i386/i386.md (*testqi_ext_3): Use
int_nonimmediate_operand instead of manual mode checks.
(*x86_mov<SWI48:mode>cc_0_m1_neg_leu<SWI:mode>):
Use int_nonimmediate_operand predicate.  Rewrite
define_insn_and_split pattern to a combine pass splitter.
gcc/ChangeLog
gcc/config/i386/i386.md