[Bug tree-optimization/24665] [4.0/4.1 Regression] internal compiler error: get_indirect_ref_operands
--- Comment #7 from rth at gcc dot gnu dot org 2005-11-20 19:04 --- Subject: Bug 24665 Author: rth Date: Sun Nov 20 19:03:53 2005 New Revision: 107259 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=107259 Log: PR tree-opt/24665 * tree-gimple.c (is_gimple_id): Export. * tree-gimple.h (is_gimple_id): Declare. * tree-ssa-ccp.c (ccp_decl_initial_min_invariant): New. (get_default_value): Use it. (maybe_fold_stmt_indirect): Likewise. Added: branches/gcc-4_0-branch/gcc/testsuite/g++.dg/opt/pr24665.C - copied unchanged from r107245, trunk/gcc/testsuite/g++.dg/opt/pr24665.C Modified: branches/gcc-4_0-branch/gcc/ChangeLog branches/gcc-4_0-branch/gcc/tree-gimple.c branches/gcc-4_0-branch/gcc/tree-gimple.h branches/gcc-4_0-branch/gcc/tree-ssa-ccp.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24665
[Bug tree-optimization/24665] [4.0/4.1 Regression] internal compiler error: get_indirect_ref_operands
--- Comment #8 from rth at gcc dot gnu dot org 2005-11-20 19:05 --- Subject: Bug 24665 Author: rth Date: Sun Nov 20 19:05:43 2005 New Revision: 107260 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=107260 Log: PR tree-opt/24665 * tree-gimple.c (is_gimple_id): Export. * tree-gimple.h (is_gimple_id): Declare. * tree-ssa-ccp.c (ccp_decl_initial_min_invariant): New. (get_default_value): Use it. (maybe_fold_stmt_indirect): Likewise. Added: branches/gcc-4_1-branch/gcc/testsuite/g++.dg/opt/pr24665.C - copied unchanged from r107244, trunk/gcc/testsuite/g++.dg/opt/pr24665.C Modified: branches/gcc-4_1-branch/gcc/ChangeLog branches/gcc-4_1-branch/gcc/tree-gimple.c branches/gcc-4_1-branch/gcc/tree-gimple.h branches/gcc-4_1-branch/gcc/tree-ssa-ccp.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24665
[Bug tree-optimization/24665] [4.0/4.1 Regression] internal compiler error: get_indirect_ref_operands
--- Comment #9 from rth at gcc dot gnu dot org 2005-11-20 19:06 --- Fixed. -- rth at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24665
[Bug tree-optimization/24665] [4.0/4.1 Regression] internal compiler error: get_indirect_ref_operands
-- rth at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |rth at gcc dot gnu dot org |dot org | Status|NEW |ASSIGNED Last reconfirmed|2005-11-04 05:06:42 |2005-11-19 22:05:55 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24665
[Bug tree-optimization/24665] [4.0/4.1 Regression] internal compiler error: get_indirect_ref_operands
--- Comment #6 from rth at gcc dot gnu dot org 2005-11-20 05:37 --- Subject: Bug 24665 Author: rth Date: Sun Nov 20 05:37:08 2005 New Revision: 107244 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=107244 Log: PR tree-opt/24665 * tree-gimple.c (is_gimple_id): Export. * tree-gimple.h (is_gimple_id): Declare. * tree-ssa-ccp.c (ccp_decl_initial_min_invariant): New. (get_default_value): Use it. (maybe_fold_stmt_indirect): Likewise. Added: trunk/gcc/testsuite/g++.dg/opt/pr24665.C Modified: trunk/gcc/ChangeLog trunk/gcc/tree-gimple.c trunk/gcc/tree-gimple.h trunk/gcc/tree-ssa-ccp.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24665
[Bug tree-optimization/24665] [4.0/4.1 Regression] internal compiler error: get_indirect_ref_operands
--- Comment #5 from mmitchel at gcc dot gnu dot org 2005-11-19 01:39 --- Showstopper. -- mmitchel at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24665
[Bug tree-optimization/24665] [4.0/4.1 Regression] internal compiler error: get_indirect_ref_operands
--- Comment #3 from pinskia at gcc dot gnu dot org 2005-11-05 20:30 --- Something is not gimplifing an expression: *(struct RegisterLayoutD.2065 *) (charD.3 *) SimulatedRegistersD.2082 -- # SimulatedRegistersD.2082_6 = V_MAY_DEF SimulatedRegistersD.2082_5; ((struct RegisterLayoutD.2065 *) (charD.3 *) SimulatedRegistersD.2082)-intmaskD.2067 = 0 CCP it looks like. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24665
[Bug tree-optimization/24665] [4.0/4.1 Regression] internal compiler error: get_indirect_ref_operands
--- Comment #4 from pinskia at gcc dot gnu dot org 2005-11-05 20:34 --- Lattice value changed to CONSTANT ((struct RegisterLayout *) (char *) SimulatedRegisters)-intmask. Adding SSA edges to worklist. Substituing values and folding statements Folded statement: mpMaskRegister.0_4 = mpMaskRegister; into: mpMaskRegister.0_4 = ((struct RegisterLayout *) (char *) SimulatedRegisters)-intmask; -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24665
[Bug tree-optimization/24665] [4.0/4.1 Regression] internal compiler error: get_indirect_ref_operands
--- Comment #2 from janis at gcc dot gnu dot org 2005-11-04 20:19 --- A regression hunt identified the following patch: http://gcc.gnu.org/viewcvs?view=revrev=89280 r89280 | rth | 2004-10-19 17:24:46 + (Tue, 19 Oct 2004) | 4 lines PR middle-end/17885 * tree.c (recompute_tree_invarant_for_addr_expr): Always poll address of INDIRECT_REF. -- janis at gcc dot gnu dot org changed: What|Removed |Added CC||rth at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24665
[Bug tree-optimization/24665] [4.0/4.1 Regression] internal compiler error: get_indirect_ref_operands
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added GCC host triplet|CYGWIN_NT-5.0 | GCC target triplet|powerpc-603e-eabi |*-*-* Keywords||ice-on-valid-code Summary|internal compiler error:|[4.0/4.1 Regression] |get_indirect_ref_operands |internal compiler error: ||get_indirect_ref_operands Target Milestone|--- |4.0.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24665
[Bug tree-optimization/24665] [4.0/4.1 Regression] internal compiler error: get_indirect_ref_operands
--- Comment #1 from pinskia at gcc dot gnu dot org 2005-11-04 05:06 --- Confirmed, reduced testcase as far as I can get it (and is willing to try at this point): typedef unsigned long uint32_t; typedef volatile uint32_t* const hwreg_t; struct RegisterLayout { uint32_t intmask; }; struct Controller_t { Controller_t(); inline void disableInterrupt() { *mpMaskRegister = 0; }; static hwreg_t mpMaskRegister; }; extern char SimulatedRegisters[]; hwreg_t Controller_t::mpMaskRegister = (reinterpret_castvolatile RegisterLayout*(SimulatedRegisters))-intmask; Controller_t::Controller_t() { disableInterrupt(); } -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Known to fail|4.0.3 4.1.0 |4.0.3 4.1.0 4.0.0 Last reconfirmed|-00-00 00:00:00 |2005-11-04 05:06:42 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24665