From 9d0862bf58535670c144a264d3c567f74cbf1565 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 10 Jul 2015 07:53:06 +0000 Subject: [PATCH] re PR tree-optimization/66823 (-ftree-loop-if-convert-stores miscompiles gfortran.dg/elemental_optional_args_3.f90) 2015-07-10 Richard Biener PR tree-optimization/66823 * tree-if-conv.c (memrefs_read_or_written_unconditionally): Fix inverted predicate. * gcc.dg/vect/pr61194.c: Remove -ftree-loop-if-convert-stores which should not be necessary. XFAIL. From-SVN: r225652 --- gcc/ChangeLog | 6 ++++++ gcc/testsuite/ChangeLog | 6 ++++++ gcc/testsuite/gcc.dg/vect/pr61194.c | 3 +-- gcc/tree-if-conv.c | 2 +- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 43687fe4423..3eabd3c4ab5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-07-10 Richard Biener + + PR tree-optimization/66823 + * tree-if-conv.c (memrefs_read_or_written_unconditionally): Fix + inverted predicate. + 2015-07-09 Steve Ellcey * config/mips/mti-linux.h (MIPS_SYSVERSION_SPEC): Update diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index abdf8177898..30717ceaf05 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2015-07-10 Richard Biener + + PR tree-optimization/66823 + * gcc.dg/vect/pr61194.c: Remove -ftree-loop-if-convert-stores + which should not be necessary. XFAIL. + 2015-07-09 Paolo Carlini PR c++/64848 diff --git a/gcc/testsuite/gcc.dg/vect/pr61194.c b/gcc/testsuite/gcc.dg/vect/pr61194.c index 2ec2200c8b1..8d74e009694 100644 --- a/gcc/testsuite/gcc.dg/vect/pr61194.c +++ b/gcc/testsuite/gcc.dg/vect/pr61194.c @@ -1,5 +1,4 @@ /* { dg-require-effective-target vect_cond_mixed } */ -/* { dg-additional-options "-ftree-loop-if-convert-stores" } */ #include "tree-vect.h" @@ -39,4 +38,4 @@ int main() return 0; } -/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { xfail *-*-* } } } */ diff --git a/gcc/tree-if-conv.c b/gcc/tree-if-conv.c index 93d30ef8a09..ef2612c959c 100644 --- a/gcc/tree-if-conv.c +++ b/gcc/tree-if-conv.c @@ -642,7 +642,7 @@ memrefs_read_or_written_unconditionally (gimple stmt, || TREE_CODE (ref_base_b) == REALPART_EXPR) ref_base_b = TREE_OPERAND (ref_base_b, 0); - if (!operand_equal_p (ref_base_a, ref_base_b, 0)) + if (operand_equal_p (ref_base_a, ref_base_b, 0)) { tree cb = bb_predicate (gimple_bb (DR_STMT (b))); -- 2.30.2