From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20069 invoked by alias); 18 Apr 2007 11:45:50 -0000 Received: (qmail 19655 invoked by alias); 18 Apr 2007 11:45:29 -0000 Date: Wed, 18 Apr 2007 11:45:00 -0000 Message-ID: <20070418114529.19654.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug tree-optimization/19431] missed optimization with ifs and deferencing In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "rguenth at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2007-04/txt/msg01368.txt.bz2 ------- Comment #18 from rguenth at gcc dot gnu dot org 2007-04-18 12:45 ------- Subject: Bug 19431 Author: rguenth Date: Wed Apr 18 12:45:09 2007 New Revision: 123946 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=123946 Log: 2007-04-18 Richard Guenther PR tree-optimization/19431 PR tree-optimization/21463 * tree-pass.h (pass_phiprop): Declare. * passes.c (init_optimization_passes): New phiprop pass. * tree-ssa-forwprop.c (struct phiprop_d): New structure. (phivn_valid_p): New helper function. (phiprop_insert_phi): Likewise. (propagate_with_phi): Likewise. (tree_ssa_phiprop): New propagator propagating loads through phi nodes if profitable. * gcc.c-torture/execute/20070212-1.c: New testcase. * gcc.c-torture/execute/20070212-2.c: Likewise. * gcc.c-torture/execute/20070212-3.c: Likewise. * gcc.dg/tree-ssa/pr19431.c: Likewise. * gcc.dg/tree-ssa/pr21463.c: Likewise. * g++.dg/tree-ssa/pr21463.C: Likewise. * g++.dg/tree-ssa/pr30738.C: Likewise. Added: trunk/gcc/testsuite/g++.dg/tree-ssa/pr21463.C trunk/gcc/testsuite/g++.dg/tree-ssa/pr30738.C trunk/gcc/testsuite/gcc.c-torture/execute/20070212-1.c trunk/gcc/testsuite/gcc.c-torture/execute/20070212-2.c trunk/gcc/testsuite/gcc.c-torture/execute/20070212-3.c trunk/gcc/testsuite/gcc.dg/tree-ssa/pr19431.c trunk/gcc/testsuite/gcc.dg/tree-ssa/pr21463.c Modified: trunk/gcc/ChangeLog trunk/gcc/passes.c trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-pass.h trunk/gcc/tree-ssa-forwprop.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19431