[Bug middle-end/37742] [4.4 Regression] ICE in vectorizer with restrict pointer
rguenth at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Wed Nov 5 12:19:00 GMT 2008
------- 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 <rguenther@suse.de>
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
More information about the Gcc-bugs
mailing list