------- Comment #14 from rguenth at gcc dot gnu dot org 2008-11-05 12:18 ------- Subject: Bug 37742
Author: rguenth Date: Wed Nov 5 12:17:10 2008 New Revision: 141606 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=141606 Log: 2008-11-05 Richard Guenther <[EMAIL PROTECTED]> PR middle-end/37742 * tree-ssa.c (useless_type_conversion_p_1): Check different restrict qualified pointer conversion before stripping qualifiers. * gimplify.c (create_tmp_from_val): Use correctly qualified type. * tree-flow.h (may_propagate_address_into_dereference): Declare. * tree-ssa-ccp.c (may_propagate_address_into_dereference): New function. (ccp_fold): Use it. * tree-ssa-forwprop.c (rhs_to_tree): Remove useless conversions, properly canonicalize binary ops. (forward_propagate_addr_expr_1): Use may_propagate_address_into_dereference. cp/ * decl.c (start_preparsed_function): Use the correct type for building the RESULT_DECL. * gcc.c-torture/compile/pr37742.c: New testcase. * g++.dg/pr37742.C: Likewise. * gcc.dg/tree-ssa/forwprop-7.c: Check for two volatile loads. Added: trunk/gcc/testsuite/g++.dg/pr37742.C trunk/gcc/testsuite/gcc.c-torture/compile/pr37742.c Modified: trunk/gcc/ChangeLog trunk/gcc/cp/ChangeLog trunk/gcc/cp/decl.c trunk/gcc/gimplify.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/tree-ssa/forwprop-7.c trunk/gcc/tree-flow.h trunk/gcc/tree-ssa-ccp.c trunk/gcc/tree-ssa-forwprop.c trunk/gcc/tree-ssa.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37742