From 2a812183d676b5b19fa9a4ad0520681e11c9d016 Mon Sep 17 00:00:00 2001 From: Segher Boessenkool Date: Fri, 8 May 2015 16:34:11 +0200 Subject: [PATCH] rs6000.md: Require operand inequality in one of the peepholes. * config/rs6000/rs6000.md: Require operand inequality in one of the peepholes. From-SVN: r222912 --- gcc/ChangeLog | 5 +++++ gcc/config/rs6000/rs6000.md | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e85dc316d12..5f1575504f9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2015-05-08 Segher Boessenkool + + * config/rs6000/rs6000.md: Require operand inequality in one + of the peepholes. + 2015-05-08 Richard Sandiford Franz Sirl diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 09099861266..acf890cbdf4 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -12051,7 +12051,8 @@ (match_operand 7 "" "") (match_operand 8 "" "")))] "peep2_reg_dead_p (3, operands[0]) - && peep2_reg_dead_p (4, operands[4])" + && peep2_reg_dead_p (4, operands[4]) + && REGNO (operands[0]) != REGNO (operands[5])" [(set (match_dup 0) (xor:SI (match_dup 5) (match_dup 9))) (set (match_dup 4) (compare:CC (match_dup 0) (match_dup 10))) (set (pc) (if_then_else (match_dup 6) (match_dup 7) (match_dup 8)))]