diff options
author | Uros Bizjak <ubizjak@gmail.com> | 2016-05-06 16:34:58 +0200 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2016-05-06 16:34:58 +0200 |
commit | 9c5e57dfb7524eaa0cc65efd5b71bf4b48b010a1 (patch) | |
tree | 2245ccbb9e9f4ab2a2b58a1e6e5ba1fb99745571 | |
parent | 734c152691823eb7a12855783b67d738bd1cf701 (diff) | |
download | gcc-9c5e57dfb7524eaa0cc65efd5b71bf4b48b010a1.zip gcc-9c5e57dfb7524eaa0cc65efd5b71bf4b48b010a1.tar.gz gcc-9c5e57dfb7524eaa0cc65efd5b71bf4b48b010a1.tar.bz2 |
i386.md (int cmove peephole2s): Use general_reg_operand instead of register_and_not_any_fp_reg_operand as...
* config/i386/i386.md (int cmove peephole2s): Use general_reg_operand
instead of register_and_not_any_fp_reg_operand as operand 0 predicate.
* config/i386/predicates.md (register_and_not_any_fp_reg_operand):
Remove unused predicate.
(register_and_not_fp_reg_operand): Ditto.
From-SVN: r235975
-rw-r--r-- | gcc/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/config/i386/i386.md | 6 |
2 files changed, 12 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6593023..4e40912 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2016-05-06 Uros Bizjak <ubizjak@gmail.com> + + * config/i386/i386.md (int cmove peephole2s): Use general_reg_operand + instead of register_and_not_any_fp_reg_operand as operand 0 predicate. + * config/i386/predicates.md (register_and_not_any_fp_reg_operand): + Remove unused predicate. + (register_and_not_fp_reg_operand): Ditto. + 2016-05-06 Martin Liska <mliska@suse.cz> * tree-if-conv.c (ifcvt_split_critical_edges): Use auto_vec @@ -2756,6 +2764,7 @@ (avx512f_<castmode><avxsizesuffix>_<castmode>): Ditto. (avx512f_<castmode><avxsizesuffix>_256<castmode>): Ditto. (*sse4_1_extractps): Use lowpart_subreg. + * config/i386/i386.md (x87 floatsplitter): Use gen_lowpart. 2016-04-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index 0bf01ab..8bebba7 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -5272,7 +5272,7 @@ emit_insn (gen_vec_interleave_lowv4si (operands[3], operands[3], operands[4])); - operands[3] = gen_rtx_REG (DImode, REGNO (operands[3])); + operands[3] = gen_lowpart (DImode, operands[3]); }) (define_split @@ -17211,7 +17211,7 @@ (set_attr "mode" "DF,DF,DI,DI,DI,DI")]) (define_split - [(set (match_operand:DF 0 "register_and_not_any_fp_reg_operand") + [(set (match_operand:DF 0 "general_reg_operand") (if_then_else:DF (match_operator 1 "fcmov_comparison_operator" [(reg FLAGS_REG) (const_int 0)]) (match_operand:DF 2 "nonimmediate_operand") @@ -17267,7 +17267,7 @@ ;; Don't do conditional moves with memory inputs (define_peephole2 [(match_scratch:MODEF 4 "r") - (set (match_operand:MODEF 0 "register_and_not_any_fp_reg_operand") + (set (match_operand:MODEF 0 "general_reg_operand") (if_then_else:MODEF (match_operator 1 "fcmov_comparison_operator" [(reg FLAGS_REG) (const_int 0)]) (match_operand:MODEF 2 "nonimmediate_operand") |