public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/44972]  New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
@ 2010-07-17 13:46 marc dot glisse at normalesup dot org
  2010-07-17 13:48 ` [Bug tree-optimization/44972] " marc dot glisse at normalesup dot org
                   ` (17 more replies)
  0 siblings, 18 replies; 19+ messages in thread
From: marc dot glisse at normalesup dot org @ 2010-07-17 13:46 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 876 bytes --]

(the choice of component is random)

When I compile this code (I am going to attach it immediatly) with g++ -O1 -c
test_api.cpp, I get:

test_api.cpp: In function ‘boost::optional<V>
construct_normal_offset_lines_isecC2()’:
test_api.cpp:129:15: internal compiler error: in
load_assign_lhs_subreplacements, at tree-sra.c:2475

Without -O1 the compiler is happy. g++-4.4 is happy as well.


-- 
           Summary: ICE: in load_assign_lhs_subreplacements, at tree-
                    sra.c:2475
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: marc dot glisse at normalesup dot org
  GCC host triplet: x86_64-unknown-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
@ 2010-07-17 13:48 ` marc dot glisse at normalesup dot org
  2010-07-17 18:07 ` [Bug tree-optimization/44972] [4.6 Regression] " hjl dot tools at gmail dot com
                   ` (16 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: marc dot glisse at normalesup dot org @ 2010-07-17 13:48 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from marc dot glisse at normalesup dot org  2010-07-17 13:48 -------
Created an attachment (id=21235)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21235&action=view)
testcase


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
  2010-07-17 13:48 ` [Bug tree-optimization/44972] " marc dot glisse at normalesup dot org
@ 2010-07-17 18:07 ` hjl dot tools at gmail dot com
  2010-07-17 18:49 ` marc dot glisse at normalesup dot org
                   ` (15 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-07-17 18:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from hjl dot tools at gmail dot com  2010-07-17 18:07 -------
It is caused by revision 161655:

http://gcc.gnu.org/ml/gcc-cvs/2010-07/msg00006.html


-- 

hjl dot tools at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rguenth at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2010-07-17 18:07:36
               date|                            |
            Summary|ICE: in                     |[4.6 Regression] ICE: in
                   |load_assign_lhs_subreplaceme|load_assign_lhs_subreplaceme
                   |nts, at tree-sra.c:2475     |nts, at tree-sra.c:2475
   Target Milestone|---                         |4.6.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
  2010-07-17 13:48 ` [Bug tree-optimization/44972] " marc dot glisse at normalesup dot org
  2010-07-17 18:07 ` [Bug tree-optimization/44972] [4.6 Regression] " hjl dot tools at gmail dot com
@ 2010-07-17 18:49 ` marc dot glisse at normalesup dot org
  2010-07-18 17:51 ` rguenth at gcc dot gnu dot org
                   ` (14 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: marc dot glisse at normalesup dot org @ 2010-07-17 18:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from marc dot glisse at normalesup dot org  2010-07-17 18:49 -------
In case it may help, let me mention that other test programs for our library
show:

internal compiler error: in refs_may_alias_p_1, at tree-ssa-alias.c:1023

or:

warning: '#'mem_ref' not supported by dump_expr#<expression error>' may be used
uninitialized in this function

(the tests are 1 million lines each, so I'll only try to reduce them if fixing
this one doesn't fix all of them)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (2 preceding siblings ...)
  2010-07-17 18:49 ` marc dot glisse at normalesup dot org
@ 2010-07-18 17:51 ` rguenth at gcc dot gnu dot org
  2010-07-18 20:57 ` rguenth at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-18 17:51 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from rguenth at gcc dot gnu dot org  2010-07-18 17:51 -------
Mine.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2010-07-17 18:07:36         |2010-07-18 17:51:47
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (3 preceding siblings ...)
  2010-07-18 17:51 ` rguenth at gcc dot gnu dot org
@ 2010-07-18 20:57 ` rguenth at gcc dot gnu dot org
  2010-07-18 21:11 ` rguenth at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-18 20:57 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from rguenth at gcc dot gnu dot org  2010-07-18 20:57 -------
Martin, can you have a look here?  All this build_ref_for_offset should
now be very easy.  But we need to have the original access tree that we
replace as well.  The built access should simply be

 fold_build2 (MEM_REF, type-of-the-access,
              address-of-the-base,
              build_int_cst (reference_alias_ptr_type (reference-to-replace),
                             constant-offset));

which is valid in all cases (doesn't need VIEW_CONVERT_EXPRs or anything
like that).

I think I tried to do that on the mem-ref branch but failed as
build_ref_for_offset is convoluted and the allow_ptr flag confuses me
(I think the IPA uses should be separated from the SRA ones).


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jamborm at gcc dot gnu dot
                   |                            |org
         AssignedTo|rguenth at gcc dot gnu dot  |jamborm at gcc dot gnu dot
                   |org                         |org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (4 preceding siblings ...)
  2010-07-18 20:57 ` rguenth at gcc dot gnu dot org
@ 2010-07-18 21:11 ` rguenth at gcc dot gnu dot org
  2010-07-18 21:22 ` rguenth at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-18 21:11 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from rguenth at gcc dot gnu dot org  2010-07-18 21:10 -------
Created an attachment (id=21246)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21246&action=view)
prototype

sth like this, with the FIXME resolved (it's not clear which is the reference
we are replacing at each site).


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (5 preceding siblings ...)
  2010-07-18 21:11 ` rguenth at gcc dot gnu dot org
@ 2010-07-18 21:22 ` rguenth at gcc dot gnu dot org
  2010-07-19 12:47 ` rguenth at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-18 21:22 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from rguenth at gcc dot gnu dot org  2010-07-18 21:22 -------
More like

  if (TREE_CODE (*expr) == MEM_REF
      && TREE_OPERAND (*expr, 0) != ADDR_EXPR)
    *expr = fold_build2 (MEM_REF, exp_type, 
                         TREE_OPERAND (*expr, 0),
                         int_const_binop (PLUS_EXPR, 
                                          build_int_cst (/* FIMXE
*/build_pointer_type (exp_type),
                                        offset), TREE_OPERAND (*expr, 1), 0));
  else
    *expr = fold_build2 (MEM_REF, exp_type, build_fold_addr_expr (*expr),
                         build_int_cst (/* FIMXE */build_pointer_type
(exp_type),
                                        offset));

with some cleanup, of course.  I'll take another look tomorrow.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|jamborm at gcc dot gnu dot  |rguenth at gcc dot gnu dot
                   |org                         |org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (6 preceding siblings ...)
  2010-07-18 21:22 ` rguenth at gcc dot gnu dot org
@ 2010-07-19 12:47 ` rguenth at gcc dot gnu dot org
  2010-07-19 12:49 ` rguenth at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-19 12:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from rguenth at gcc dot gnu dot org  2010-07-19 12:47 -------
Well, the list of problems is endless it seems - we are not consistent in
how we build accesses for

  declD.1.u1.a.align = 13;

vs.

  decl$u1$a$align_5 = BIT_FIELD_REF <MEM[(<unnamed-unsigned:24> *)&declD.2],
24, 0>;

(the former is a COMPONENT_REF with DECL_BIT_FIELD while the latter is a
BIT_FIELD_REF.  The first access will be [0, 24] while the later [0, 32].
This causes us to scalarize

  declD.2 = declD.1;

as

  declD.2 = declD.2;

because we cannot find a matching access in load_assign_lhs_subreplacements
and drop into the strange code for SRA_UDH_LEFT.

So eventually we should not drop bit-field-ref kind outer accesses in
favor of handling them as partial_ref or we should do the same for
DECL_BIT_FIELD component-refs.

I'm a bit lost and will attach the current WIP patch.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (7 preceding siblings ...)
  2010-07-19 12:47 ` rguenth at gcc dot gnu dot org
@ 2010-07-19 12:49 ` rguenth at gcc dot gnu dot org
  2010-07-22 18:29 ` jamborm at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-19 12:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from rguenth at gcc dot gnu dot org  2010-07-19 12:49 -------
Created an attachment (id=21249)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21249&action=view)
wip patch

Testcase that shows this behavior is gcc.dg/tree-ssa/vrp14.c which is
miscompiled.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (8 preceding siblings ...)
  2010-07-19 12:49 ` rguenth at gcc dot gnu dot org
@ 2010-07-22 18:29 ` jamborm at gcc dot gnu dot org
  2010-07-23 19:15 ` jamborm at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jamborm at gcc dot gnu dot org @ 2010-07-22 18:29 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from jamborm at gcc dot gnu dot org  2010-07-22 18:29 -------
OK, I have finally reached this one, I will have a look at it tomorrow. 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (9 preceding siblings ...)
  2010-07-22 18:29 ` jamborm at gcc dot gnu dot org
@ 2010-07-23 19:15 ` jamborm at gcc dot gnu dot org
  2010-08-08 18:31 ` jamborm at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jamborm at gcc dot gnu dot org @ 2010-07-23 19:15 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from jamborm at gcc dot gnu dot org  2010-07-23 19:14 -------
I'll take over.


-- 

jamborm at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|rguenth at gcc dot gnu dot  |jamborm at gcc dot gnu dot
                   |org                         |org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (10 preceding siblings ...)
  2010-07-23 19:15 ` jamborm at gcc dot gnu dot org
@ 2010-08-08 18:31 ` jamborm at gcc dot gnu dot org
  2010-08-08 18:39 ` jamborm at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jamborm at gcc dot gnu dot org @ 2010-08-08 18:31 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from jamborm at gcc dot gnu dot org  2010-08-08 18:31 -------
Created an attachment (id=21438)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21438&action=view)
My current WIP patch to fix this

This is my current WIP patch to fix this problem.  I will resume work
on this in September.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (11 preceding siblings ...)
  2010-08-08 18:31 ` jamborm at gcc dot gnu dot org
@ 2010-08-08 18:39 ` jamborm at gcc dot gnu dot org
  2010-09-02 10:57 ` rguenth at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jamborm at gcc dot gnu dot org @ 2010-08-08 18:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from jamborm at gcc dot gnu dot org  2010-08-08 18:39 -------
(In reply to comment #12)
> Created an attachment (id=21438)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21438&action=view) [edit]
> My current WIP patch to fix this
> 
> This is my current WIP patch to fix this problem.  I will resume work
> on this in September.
> 

BTW, this has to be applied on top of 

http://gcc.gnu.org/ml/gcc-patches/2010-08/msg00609.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (12 preceding siblings ...)
  2010-08-08 18:39 ` jamborm at gcc dot gnu dot org
@ 2010-09-02 10:57 ` rguenth at gcc dot gnu dot org
  2010-09-08 17:01 ` jamborm at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-09-02 10:57 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (13 preceding siblings ...)
  2010-09-02 10:57 ` rguenth at gcc dot gnu dot org
@ 2010-09-08 17:01 ` jamborm at gcc dot gnu dot org
  2010-09-09 23:28 ` jamborm at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jamborm at gcc dot gnu dot org @ 2010-09-08 17:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from jamborm at gcc dot gnu dot org  2010-09-08 17:01 -------
Patches submitted to the mailing list for approval/comments:
http://gcc.gnu.org/ml/gcc-patches/2010-09/msg00674.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (14 preceding siblings ...)
  2010-09-08 17:01 ` jamborm at gcc dot gnu dot org
@ 2010-09-09 23:28 ` jamborm at gcc dot gnu dot org
  2010-09-09 23:38 ` jamborm at gcc dot gnu dot org
  2010-09-09 23:41 ` jamborm at gcc dot gnu dot org
  17 siblings, 0 replies; 19+ messages in thread
From: jamborm at gcc dot gnu dot org @ 2010-09-09 23:28 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from jamborm at gcc dot gnu dot org  2010-09-09 23:28 -------
Subject: Bug 44972

Author: jamborm
Date: Thu Sep  9 23:28:27 2010
New Revision: 164135

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=164135
Log:
2010-09-10  Martin Jambor  <mjambor@suse.cz>

        PR tree-optimization/44972
        * ipa-prop.c (ipa_modify_call_arguments): Build MEM_REF instead of
        calling build_ref_for_offset.

        * testsuite/g++.dg/torture/pr34850.C: Remove expected warning.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/ipa-prop.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/torture/pr34850.C


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (15 preceding siblings ...)
  2010-09-09 23:28 ` jamborm at gcc dot gnu dot org
@ 2010-09-09 23:38 ` jamborm at gcc dot gnu dot org
  2010-09-09 23:41 ` jamborm at gcc dot gnu dot org
  17 siblings, 0 replies; 19+ messages in thread
From: jamborm at gcc dot gnu dot org @ 2010-09-09 23:38 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from jamborm at gcc dot gnu dot org  2010-09-09 23:38 -------
Subject: Bug 44972

Author: jamborm
Date: Thu Sep  9 23:38:23 2010
New Revision: 164136

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=164136
Log:
2010-09-10  Martin Jambor  <mjambor@suse.cz>

        PR tree-optimization/44972
        * tree-sra.c: Include toplev.h.
        (build_ref_for_offset): Entirely reimplemented.
        (build_ref_for_model): New function.
        (build_user_friendly_ref_for_offset): New function.
        (analyze_access_subtree): Removed build_ref_for_offset check.
        (propagate_subaccesses_across_link): Likewise.
        (create_artificial_child_access): Use
        build_user_friendly_ref_for_offset.
        (propagate_subaccesses_across_link): Likewise.
        (ref_expr_for_all_replacements_p): Removed.
        (generate_subtree_copies): Updated comment.  Use build_ref_for_model.
        (sra_modify_expr): Use build_ref_for_model.
        (load_assign_lhs_subreplacements): Likewise.
        (sra_modify_assign): Removed ref_expr_for_all_replacements_p checks,
        checks for return values of build_ref_for_offset.
        * ipa-cp.c (ipcp_lattice_from_jfunc): No need to check return value of
        build_ref_for_offset.
        * ipa-prop.h: Include gimple.h
        * ipa-prop.c (ipa_compute_jump_functions): Update to look for MEM_REFs.
        (ipa_analyze_indirect_call_uses): Update comment.
        * Makefile.in (tree-sra.o): Add $(GIMPLE_H) to dependencies.
        (IPA_PROP_H): Likewise.

        * testsuite/gcc.dg/ipa/ipa-sra-1.c: Adjust scanning expressions.
        * testsuite/gcc.dg/tree-ssa/pr45144.c: Likewise.
        * testsuite/gcc.dg/tree-ssa/forwprop-5.c: Likewise and scan optimzed
        dump instead.
        * testsuite/g++.dg/torture/pr44972.C: New test.


Added:
    trunk/gcc/testsuite/g++.dg/torture/pr44972.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/Makefile.in
    trunk/gcc/ipa-cp.c
    trunk/gcc/ipa-prop.c
    trunk/gcc/ipa-prop.h
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.dg/ipa/ipa-sra-1.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/forwprop-5.c
    trunk/gcc/testsuite/gcc.dg/tree-ssa/pr45144.c
    trunk/gcc/tree-sra.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

* [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475
  2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
                   ` (16 preceding siblings ...)
  2010-09-09 23:38 ` jamborm at gcc dot gnu dot org
@ 2010-09-09 23:41 ` jamborm at gcc dot gnu dot org
  17 siblings, 0 replies; 19+ messages in thread
From: jamborm at gcc dot gnu dot org @ 2010-09-09 23:41 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #17 from jamborm at gcc dot gnu dot org  2010-09-09 23:41 -------
Hopefully finally fixed.


-- 

jamborm at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972


^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2010-09-09 23:41 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-17 13:46 [Bug tree-optimization/44972] New: ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 marc dot glisse at normalesup dot org
2010-07-17 13:48 ` [Bug tree-optimization/44972] " marc dot glisse at normalesup dot org
2010-07-17 18:07 ` [Bug tree-optimization/44972] [4.6 Regression] " hjl dot tools at gmail dot com
2010-07-17 18:49 ` marc dot glisse at normalesup dot org
2010-07-18 17:51 ` rguenth at gcc dot gnu dot org
2010-07-18 20:57 ` rguenth at gcc dot gnu dot org
2010-07-18 21:11 ` rguenth at gcc dot gnu dot org
2010-07-18 21:22 ` rguenth at gcc dot gnu dot org
2010-07-19 12:47 ` rguenth at gcc dot gnu dot org
2010-07-19 12:49 ` rguenth at gcc dot gnu dot org
2010-07-22 18:29 ` jamborm at gcc dot gnu dot org
2010-07-23 19:15 ` jamborm at gcc dot gnu dot org
2010-08-08 18:31 ` jamborm at gcc dot gnu dot org
2010-08-08 18:39 ` jamborm at gcc dot gnu dot org
2010-09-02 10:57 ` rguenth at gcc dot gnu dot org
2010-09-08 17:01 ` jamborm at gcc dot gnu dot org
2010-09-09 23:28 ` jamborm at gcc dot gnu dot org
2010-09-09 23:38 ` jamborm at gcc dot gnu dot org
2010-09-09 23:41 ` jamborm at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).