From: Alan Modra Date: Thu, 27 Aug 2015 13:56:39 +0000 (+0930) Subject: [RS6000] Correct constraints for ior_mask X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=353e462df7eea26f1df8343d8b8f92dfe97757dc;p=gcc.git [RS6000] Correct constraints for ior_mask ior_mask always splits to rtl matching rotl3_insert. The latter requires one of its input operands match the output, so let reload/lra know the equivalent operand match must also occur for ior_mask. PR target/67356 * config/rs6000/rs6000.md (ior_mask): Use constraint "0" for operand 1. From-SVN: r227260 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0934bff5435..367a289b68a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-08-27 Alan Modra + + PR target/67356 + * config/rs6000/rs6000.md (ior_mask): Use constraint "0" + for operand 1. + 2015-08-27 Richard Biener * passes.c (rest_of_decl_compilation): Guard early_global_decl diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 48abc266349..cfdb286a2cb 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -3683,7 +3683,7 @@ ; an insert instruction, in many cases. (define_insn_and_split "*ior_mask" [(set (match_operand:GPR 0 "gpc_reg_operand" "=r") - (ior:GPR (match_operand:GPR 1 "gpc_reg_operand" "r") + (ior:GPR (match_operand:GPR 1 "gpc_reg_operand" "0") (match_operand:GPR 2 "const_int_operand" "n"))) (clobber (match_scratch:GPR 3 "=r"))] "!logical_const_operand (operands[2], mode)