public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/27826]  New: ICE in copy_to_mode_reg
@ 2006-05-30 16:07 sander at mi dot fu-berlin dot de
  2006-05-30 16:13 ` [Bug middle-end/27826] " sander at mi dot fu-berlin dot de
                   ` (28 more replies)
  0 siblings, 29 replies; 30+ messages in thread
From: sander at mi dot fu-berlin dot de @ 2006-05-30 16:07 UTC (permalink / raw)
  To: gcc-bugs

I am getting an ICE when compiling a c++ source with optimization turned one.
My compiler version is

sander@haile:~/tmp$ g++-4.1 -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v
--enable-languages=c,c++,java,fortran,objc,obj-c++,ada,treelang --prefix=/usr
--enable-shared --with-system-zlib --libexecdir=/usr/lib
--without-included-gettext --enable-threads=posix --enable-nls
--program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu
--enable-libstdcxx-debug --enable-java-awt=gtk --enable-gtk-cairo
--with-java-home=/usr/lib/jvm/java-1.4.2-gcj-4.1-1.4.2.0/jre --enable-mpfr
--with-tune=i686 --enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.1 20060511 (prerelease) (Debian 4.1.0-4)

The command line that triggers the bug is

g++-4.1 -c grid.i -O

The output produces is

grid.i: In member function 'int Dune::ALU3dGrid<dim, dimworld,
elType>::size(int, int) const [with int dim = 3, int dimworld = 3,
Dune::ALU3dGridElementType elType = tetra]':
grid.i:52998: internal compiler error: in copy_to_mode_reg, at explow.c:577
Please submit a full bug report,

When compiled without the -O the ICE does not occur.


-- 
           Summary: ICE in copy_to_mode_reg
           Product: gcc
           Version: 4.1.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: sander at mi dot fu-berlin dot de


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


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

* [Bug middle-end/27826] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
@ 2006-05-30 16:13 ` sander at mi dot fu-berlin dot de
  2006-05-30 16:23 ` [Bug middle-end/27826] [4.1 Regression] " pinskia at gcc dot gnu dot org
                   ` (27 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: sander at mi dot fu-berlin dot de @ 2006-05-30 16:13 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from sander at mi dot fu-berlin dot de  2006-05-30 16:12 -------
The testcase was too large to be attached directly, even after an attempt at
delta reduction.  You can download it at

http://page.mi.fu-berlin.de/~sander/grid.i


-- 


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


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

* [Bug middle-end/27826] [4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
  2006-05-30 16:13 ` [Bug middle-end/27826] " sander at mi dot fu-berlin dot de
@ 2006-05-30 16:23 ` pinskia at gcc dot gnu dot org
  2006-05-30 16:25 ` pinskia at gcc dot gnu dot org
                   ` (26 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-30 16:23 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 GCC target triplet|                            |i686-pc-linux-gnu
            Summary|ICE in copy_to_mode_reg     |[4.1 Regression] ICE in
                   |                            |copy_to_mode_reg
   Target Milestone|---                         |4.1.2


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


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

* [Bug middle-end/27826] [4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
  2006-05-30 16:13 ` [Bug middle-end/27826] " sander at mi dot fu-berlin dot de
  2006-05-30 16:23 ` [Bug middle-end/27826] [4.1 Regression] " pinskia at gcc dot gnu dot org
@ 2006-05-30 16:25 ` pinskia at gcc dot gnu dot org
  2006-05-31  4:14 ` pinskia at gcc dot gnu dot org
                   ` (25 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-30 16:25 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pinskia at gcc dot gnu dot org  2006-05-30 16:24 -------
Reducing.


-- 


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


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

* [Bug middle-end/27826] [4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (2 preceding siblings ...)
  2006-05-30 16:25 ` pinskia at gcc dot gnu dot org
@ 2006-05-31  4:14 ` pinskia at gcc dot gnu dot org
  2006-06-01  3:39 ` [Bug c++/27826] " pinskia at gcc dot gnu dot org
                   ` (24 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-05-31  4:14 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from pinskia at gcc dot gnu dot org  2006-05-31 04:14 -------
This is still reducing, it is taking a longer time than I had expected.


-- 


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


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

* [Bug c++/27826] [4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (3 preceding siblings ...)
  2006-05-31  4:14 ` pinskia at gcc dot gnu dot org
@ 2006-06-01  3:39 ` pinskia at gcc dot gnu dot org
  2006-06-01  4:27 ` [Bug c++/27826] [4.0/4.1 " pinskia at gcc dot gnu dot org
                   ` (23 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-06-01  3:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from pinskia at gcc dot gnu dot org  2006-06-01 03:39 -------
Reduced testcase:
struct GeometryType
{
 int basicType_:16;
 bool operator==(const GeometryType& other) const {
   return basicType_==other.basicType_;
 }
};
struct Geometry {
  GeometryType type () const{};
};
void f(void);
const Geometry &geometry ();
int countLevelEntities(int level)
{
  GeometryType type;
  if(geometry().type() == type)
    f();
}

--------
I want to say Mark's bitfield patch fixes this for 4.2.0.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |NEW
          Component|middle-end                  |c++
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2006-06-01 03:39:35
               date|                            |


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (4 preceding siblings ...)
  2006-06-01  3:39 ` [Bug c++/27826] " pinskia at gcc dot gnu dot org
@ 2006-06-01  4:27 ` pinskia at gcc dot gnu dot org
  2006-06-01  4:33 ` pinskia at gcc dot gnu dot org
                   ` (22 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-06-01  4:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from pinskia at gcc dot gnu dot org  2006-06-01 04:27 -------
My reduced testcase also fails with 4.0.2 which I was somewhat expecting.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|                            |4.0.2 4.1.0
      Known to work|                            |3.4.6 4.2.0
            Summary|[4.1 Regression] ICE in     |[4.0/4.1 Regression] ICE in
                   |copy_to_mode_reg            |copy_to_mode_reg
   Target Milestone|4.1.2                       |4.0.4


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (5 preceding siblings ...)
  2006-06-01  4:27 ` [Bug c++/27826] [4.0/4.1 " pinskia at gcc dot gnu dot org
@ 2006-06-01  4:33 ` pinskia at gcc dot gnu dot org
  2006-06-03  9:27 ` christophpfister at bluemail dot ch
                   ` (21 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-06-01  4:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from pinskia at gcc dot gnu dot org  2006-06-01 04:33 -------
  if (type$basicType_ == SR.5) goto <L1>; else goto <L2>;
...
  short int type$basicType_;
  int SR.5;


-- 


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (6 preceding siblings ...)
  2006-06-01  4:33 ` pinskia at gcc dot gnu dot org
@ 2006-06-03  9:27 ` christophpfister at bluemail dot ch
  2006-06-07 22:13 ` bangerth at dealii dot org
                   ` (20 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: christophpfister at bluemail dot ch @ 2006-06-03  9:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from christophpfister at bluemail dot ch  2006-06-03 09:27 -------
Further reduced testcase:
---
struct Geometry
{
        int type:16;
};
struct Geometry get() {};
int f()
{
        struct Geometry test;
        return get().type == test.type;
}
---
ICE occurs only with g++, gcc doesn't.


-- 


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (7 preceding siblings ...)
  2006-06-03  9:27 ` christophpfister at bluemail dot ch
@ 2006-06-07 22:13 ` bangerth at dealii dot org
  2006-06-07 22:28 ` pinskia at gcc dot gnu dot org
                   ` (19 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: bangerth at dealii dot org @ 2006-06-07 22:13 UTC (permalink / raw)
  To: gcc-bugs



-- 

bangerth at dealii dot org changed:

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


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (8 preceding siblings ...)
  2006-06-07 22:13 ` bangerth at dealii dot org
@ 2006-06-07 22:28 ` pinskia at gcc dot gnu dot org
  2006-06-07 22:29 ` bangerth at math dot tamu dot edu
                   ` (18 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-06-07 22:28 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from pinskia at gcc dot gnu dot org  2006-06-07 22:12 -------
Bangerth, why did you change the Priority?  That is the job of the Release
manager.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bangerth at dealii dot org
           Priority|P1                          |P3


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (9 preceding siblings ...)
  2006-06-07 22:28 ` pinskia at gcc dot gnu dot org
@ 2006-06-07 22:29 ` bangerth at math dot tamu dot edu
  2006-06-08  0:33 ` pinskia at gcc dot gnu dot org
                   ` (17 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: bangerth at math dot tamu dot edu @ 2006-06-07 22:29 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from bangerth at math dot tamu dot edu  2006-06-07 22:28 -------
Subject: Re:  [4.0/4.1 Regression] ICE in copy_to_mode_reg


> Bangerth, why did you change the Priority?  That is the job of the Release
> manager.

Fair enough -- I'll defer to his judgment if he would like to change my 
judgment.

However, this is an ice-on-valid regression, and the code doesn't look 
particularly uncommon. Since it is a new bug I was under the impression 
that the priority had never been set and that the bug might therefore 
slip through the cracks.

W.


-- 


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (10 preceding siblings ...)
  2006-06-07 22:29 ` bangerth at math dot tamu dot edu
@ 2006-06-08  0:33 ` pinskia at gcc dot gnu dot org
  2006-06-08 17:47 ` bangerth at dealii dot org
                   ` (16 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-06-08  0:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from pinskia at gcc dot gnu dot org  2006-06-08 00:26 -------
Janis could you do a regression hunt on this bug?


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |janis at gcc dot gnu dot org


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (11 preceding siblings ...)
  2006-06-08  0:33 ` pinskia at gcc dot gnu dot org
@ 2006-06-08 17:47 ` bangerth at dealii dot org
  2006-06-09 18:18 ` janis at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: bangerth at dealii dot org @ 2006-06-08 17:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from bangerth at dealii dot org  2006-06-08 17:26 -------
(In reply to comment #8)
> Bangerth, why did you change the Priority?  That is the job of the Release
> manager.

Actually, as a remark, I believe this isn't true. Bugmasters have always
adjusted initial priorities of PRs to alert the RM to new bugs that warrant
his attention. Looking at the activity trail of this bug, I didn't see any
priority activity before my change. I certainly wouldn't have upgraded the
PR if anyone had downgraded it before.

That said, I don't care either way. I don't have much time for GCC work these
days so am happy to defer policy decisions to others.

W.


-- 

bangerth at dealii dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mmitchel at gcc dot gnu dot
                   |                            |org


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (12 preceding siblings ...)
  2006-06-08 17:47 ` bangerth at dealii dot org
@ 2006-06-09 18:18 ` janis at gcc dot gnu dot org
  2006-06-09 19:04 ` janis at gcc dot gnu dot org
                   ` (14 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: janis at gcc dot gnu dot org @ 2006-06-09 18:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from janis at gcc dot gnu dot org  2006-06-09 18:10 -------
The reduced testcase from comment #7 doesn't fail with my i686 cross compilers
on powerpc-linux, so I did a regression hunt using the testcase from comment
#4.  It identified this patch as the fix on mainline:

   http://gcc.gnu.org/viewcvs?view=rev&rev=113199

   r113199 | mmitchel | 2006-04-23 18:04:33 +0000 (Sun, 23 Apr 2006)

This is indeed Mark's bitfield patch, Andrew guessed correctly.

I've got another regression hunt running to find the break; it's currently
between revisions 83668 and 83876 in late May 2004; there are broken builds in
there so it might take awhile to keep the hunt progressing. 


-- 


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (13 preceding siblings ...)
  2006-06-09 18:18 ` janis at gcc dot gnu dot org
@ 2006-06-09 19:04 ` janis at gcc dot gnu dot org
  2006-11-01 18:04 ` mmitchel at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: janis at gcc dot gnu dot org @ 2006-06-09 19:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from janis at gcc dot gnu dot org  2006-06-09 18:44 -------
The test starts failing on mainline with this patch:

    http://gcc.gnu.org/viewcvs?view=rev&rev=83858

    r83858 | rth | 2004-06-29 16:25:28 +0000 (Tue, 29 Jun 2004)


-- 


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (14 preceding siblings ...)
  2006-06-09 19:04 ` janis at gcc dot gnu dot org
@ 2006-11-01 18:04 ` mmitchel at gcc dot gnu dot org
  2006-11-14 17:30 ` mmitchel at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2006-11-01 18:04 UTC (permalink / raw)
  To: gcc-bugs



-- 

mmitchel at gcc dot gnu dot org changed:

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


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (15 preceding siblings ...)
  2006-11-01 18:04 ` mmitchel at gcc dot gnu dot org
@ 2006-11-14 17:30 ` mmitchel at gcc dot gnu dot org
  2006-11-14 17:44 ` rguenth at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2006-11-14 17:30 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from mmitchel at gcc dot gnu dot org  2006-11-14 17:30 -------
I cannot getting this to fail with current GCC 4.1.2 sources.  Can others still
reproduce this problem?


-- 


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (16 preceding siblings ...)
  2006-11-14 17:30 ` mmitchel at gcc dot gnu dot org
@ 2006-11-14 17:44 ` rguenth at gcc dot gnu dot org
  2007-01-05 13:01 ` rguenth at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-11-14 17:44 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from rguenth at gcc dot gnu dot org  2006-11-14 17:44 -------
Yes:

gcc41-g/gcc> ./cc1plus -quiet t.C -O3
t.C: In function 'int f()':
t.C:6: internal compiler error: in copy_to_mode_reg, at explow.c:577
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 GCC target triplet|i686-pc-linux-gnu           |i?86-*-* x86_64-*-*


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (17 preceding siblings ...)
  2006-11-14 17:44 ` rguenth at gcc dot gnu dot org
@ 2007-01-05 13:01 ` rguenth at gcc dot gnu dot org
  2007-01-05 13:07 ` rguenth at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-01-05 13:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from rguenth at gcc dot gnu dot org  2007-01-05 13:01 -------
Reconfirmed.  The problem still exists.

#1  0x0844d296 in copy_to_mode_reg (mode=SImode, x=0xb7c8b1a0)
    at /home/richard/src/gcc-4_1-branch/gcc/explow.c:577
577       gcc_assert (GET_MODE (x) == mode || GET_MODE (x) == VOIDmode);
(gdb) call debug_rtx (x)
(reg:HI 59 [ test$type ])

#1  0x0844d296 in copy_to_mode_reg (mode=SImode, x=0xb7c8b1a0)
    at /home/richard/src/gcc-4_1-branch/gcc/explow.c:577
#2  0x086464b7 in prepare_operand (icode=928, x=0xb7c8b1a0, opnum=1,
    mode=SImode, wider_mode=SImode, unsignedp=0)
    at /home/richard/src/gcc-4_1-branch/gcc/optabs.c:3576
#3  0x0864672d in emit_cmp_and_jump_insn_1 (x=0xb7c8b190, y=0xb7c8b1a0,
    mode=SImode, comparison=EQ, unsignedp=0, label=0x0)
    at /home/richard/src/gcc-4_1-branch/gcc/optabs.c:3632
#4  0x086468a6 in emit_cmp_and_jump_insns (x=0xb7c8b190, y=0xb7c8b1a0,
    comparison=EQ, size=0x0, mode=SImode, unsignedp=0, label=0x0)
    at /home/richard/src/gcc-4_1-branch/gcc/optabs.c:3696
#5  0x086468ea in emit_cmp_insn (x=0xb7c8b190, y=0xb7c8b1a0, comparison=EQ,
    size=0x0, mode=SImode, unsignedp=0)
    at /home/richard/src/gcc-4_1-branch/gcc/optabs.c:3705
#6  0x08413b00 in compare_from_rtx (op0=0xb7c8b190, op1=0xb7c8b1a0, code=EQ,
    unsignedp=0, mode=SImode, size=0x0)
    at /home/richard/src/gcc-4_1-branch/gcc/dojump.c:824
#7  0x0846185b in emit_store_flag (target=0xb7c8b210, code=EQ, op0=0xb7c8b190,
    op1=0xb7c8b1a0, mode=SImode, unsignedp=0, normalizep=1)
    at /home/richard/src/gcc-4_1-branch/gcc/expmed.c:5302
#8  0x08490ceb in do_store_flag (exp=0xb7be2168, target=0xb7c8b210,
    mode=SImode, only_cheap=0)
    at /home/richard/src/gcc-4_1-branch/gcc/expr.c:8943
#9  0x0848a2da in expand_expr_real_1 (exp=0xb7be2168, target=0xb7c8b210,
    tmode=SImode, modifier=EXPAND_NORMAL, alt_rtl=0x0)
    at /home/richard/src/gcc-4_1-branch/gcc/expr.c:8227
(gdb) call debug_tree (exp)
 <eq_expr 0xb7be2168
    type <integer_type 0xb7bec284 int sizes-gimplified public SI
        size <integer_cst 0xb7bda3f0 constant invariant 32>
        unit size <integer_cst 0xb7bda180 constant invariant 4>
        align 32 symtab 0 alias set -1 precision 32 min <integer_cst 0xb7bda3a8
-2147483648> max <integer_cst 0xb7bda3c0 2147483647>
        pointer_to_this <pointer_type 0xb7becc38>>

    arg 0 <var_decl 0xb7c8a5d8 SR.40 type <integer_type 0xb7bec284 int>
        used ignored SI file t.i line 9 size <integer_cst 0xb7bda3f0 32> unit
size <integer_cst 0xb7bda180 4>
        align 32 context <function_decl 0xb7c7ee80 f>
        (reg:SI 58 [ SR.40 ])>
    arg 1 <var_decl 0xb7c8a528 test$type
        type <integer_type 0xb7bec1cc short int HI
            size <integer_cst 0xb7bda300 constant invariant 16>
            unit size <integer_cst 0xb7bda318 constant invariant 2>
            align 16 symtab 0 alias set -1 precision 16 min <integer_cst
0xb7bda2a0 -32768> max <integer_cst 0xb7bda2d0 32767>>
        used HI file t.i line 8 size <integer_cst 0xb7bda300 16> unit size
<integer_cst 0xb7bda318 2>
        align 16 context <function_decl 0xb7c7ee80 f>
        (reg:HI 59 [ test$type ])>>

so we have wrong types on the tree we expand

(gdb) call debug_generic_expr (exp)
SR.40D.1791 == test$typeD.1789


out-of-ssa / TER introduce this mismatch.  After .t92.uncprop we have

int f() ()
{
  intD.2 SR.40D.1798;
  short intD.12 SR.39D.1797;
  short intD.12 test$typeD.1796;
  struct GeometryD.1732 testD.1740;
  short intD.12 D.1745;
  short intD.12 D.1744;
  struct GeometryD.1732 D.1743;
  struct GeometryD.1732 D.1741;
  intD.2 D.1742;

<bb 0>:
  D.1744_10 = SR.40D.1798_9;
  D.1742_7 = D.1744_10 == test$typeD.1796_11;
  return D.1742_7;

}

while .t93.optimized contains

Analyzing Edge Insertions.
int f() ()
{
  intD.2 SR.40D.1798;
  short intD.12 SR.39D.1797;
  short intD.12 test$typeD.1796;
  struct GeometryD.1732 testD.1740;
  short intD.12 D.1745;
  short intD.12 D.1744;
  struct GeometryD.1732 D.1743;
  struct GeometryD.1732 D.1741;
  intD.2 D.1742;

<bb 0>:
  return SR.40D.1798 == test$typeD.1796;

}


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |amacleod at redhat dot com
   Last reconfirmed|2006-10-21 21:32:50         |2007-01-05 13:01:17
               date|                            |


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (18 preceding siblings ...)
  2007-01-05 13:01 ` rguenth at gcc dot gnu dot org
@ 2007-01-05 13:07 ` rguenth at gcc dot gnu dot org
  2007-01-05 13:45 ` rguenth at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-01-05 13:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #17 from rguenth at gcc dot gnu dot org  2007-01-05 13:06 -------
But of course at least after SRA we miss a NOP_EXPR on the initialization:

  intD.2 SR.40D.1798;
  short intD.12 SR.39D.1797;
  short intD.12 test$typeD.1796;
  short intD.12 D.1745;
  short intD.12 D.1744;

  SR.39D.1797_10 = SR.40D.1798_9;
  D.1744_4 = SR.39D.1797_10;
  D.1745_6 = test$typeD.1796_11;


-- 


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (19 preceding siblings ...)
  2007-01-05 13:07 ` rguenth at gcc dot gnu dot org
@ 2007-01-05 13:45 ` rguenth at gcc dot gnu dot org
  2007-01-05 13:46 ` rguenth at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-01-05 13:45 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #18 from rguenth at gcc dot gnu dot org  2007-01-05 13:45 -------
And we get that because for the COMPONENT_REF

  D.1741.typeD.1734

we have

 <component_ref 0xb7c3d168
    type <integer_type 0xb7c401cc short int HI
        size <integer_cst 0xb7c2e300 constant invariant 16>
        unit size <integer_cst 0xb7c2e318 constant invariant 2>
        align 16 symtab 0 alias set -1 precision 16 min <integer_cst 0xb7c2e2a0
-32768> max <integer_cst 0xb7c2e2d0 32767>>

    arg 0 <var_decl 0xb7c3b2c0 D.1741
            ....>
    arg 1 <field_decl 0xb7cd38a0 type
        type <integer_type 0xb7c40284 int sizes-gimplified public SI size
<integer_cst 0xb7c2e3f0 32> unit size <integer_cst 0xb7c2e180 4>
            align 32 symtab 0 alias set -1 precision 32 min <integer_cst
0xb7c2e3a8 -2147483648> max <integer_cst 0xb7c2e3c0 2147483647>
            pointer_to_this <pointer_type 0xb7c40c38>>
           .....>

also mismatched types (it should have int type).  Which we get starting
from tree.c:get_narrower () via

#0  0x08707d25 in get_narrower (op=0xb7c3f118, unsignedp_ptr=0xbfa90828)
    at /home/richard/src/gcc-4_1-branch/gcc/tree.c:5488
#1  0x08232cff in shorten_compare (op0_ptr=0xbfa90a40, op1_ptr=0xbfa90a3c,
    restype_ptr=0xbfa90a38, rescode_ptr=0xbfa90a34)
    at /home/richard/src/gcc-4_1-branch/gcc/c-common.c:1956
#2  0x0818b5ba in build_binary_op (code=EQ_EXPR, orig_op0=0xb7c3f118,
    orig_op1=0xb7c3f140, convert_p=1)
    at /home/richard/src/gcc-4_1-branch/gcc/cp/typeck.c:3435

5483              && (first || uns == DECL_UNSIGNED (TREE_OPERAND (op, 1)))
5484              && type != 0)
5485            {
5486              if (first)
5487                uns = DECL_UNSIGNED (TREE_OPERAND (op, 1));
5488              win = build3 (COMPONENT_REF, type, TREE_OPERAND (op, 0),
5489                            TREE_OPERAND (op, 1), NULL_TREE);
5490              TREE_SIDE_EFFECTS (win) = TREE_SIDE_EFFECTS (op);
5491              TREE_THIS_VOLATILE (win) = TREE_THIS_VOLATILE (op);
5492            }

using fold_convert here results in identical code and we generate the following
gimple:

int f() ()
{
  int D.1742;
  struct Geometry D.1741;
  struct Geometry D.1743;
  short int D.1744;
  int D.1745;
  short int D.1746;
  short int D.1747;
  struct Geometry test;

  D.1743 = get ();
  D.1741 = D.1743;
  D.1744 = D.1741.type;
  D.1745 = (int) D.1744;
  D.1746 = (short int) D.1745;
  D.1747 = test.type;
  D.1742 = D.1746 == D.1747;
  return D.1742;
}

and optimized:

int f() ()
{
  int SR.40;
  short int SR.39;
  short int test$type;
  struct Geometry test;
  short int D.1747;
  short int D.1746;
  int D.1745;
  short int D.1744;
  struct Geometry D.1743;
  struct Geometry D.1741;
  int D.1742;

<bb 0>:
  return (short int) SR.40 == test$type;

}

Recent mainline does gimple:

int f() ()
{
  int D.2084;
  struct Geometry D.2083;
  short int D.2085;
  short int D.2086;
  struct Geometry test;

  D.2083 = get () [return slot optimization];
  D.2085 = D.2083.type;
  D.2086 = test.type;
  D.2084 = D.2085 == D.2086;
  return D.2084;
}

and optimized:

Analyzing Edge Insertions.
int f() ()
{
  short int SR.35;
  short int test$type;

<bb 2>:
  return SR.35 == test$type;

}


-- 


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (20 preceding siblings ...)
  2007-01-05 13:45 ` rguenth at gcc dot gnu dot org
@ 2007-01-05 13:46 ` rguenth at gcc dot gnu dot org
  2007-01-05 14:30 ` rguenth at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-01-05 13:46 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #19 from rguenth at gcc dot gnu dot org  2007-01-05 13:46 -------
So the proposed patch (for all branches) is:

Index: tree.c
===================================================================
*** tree.c      (revision 120477)
--- tree.c      (working copy)
*************** get_narrower (tree op, int *unsignedp_pt
*** 5485,5494 ****
        {
          if (first)
            uns = DECL_UNSIGNED (TREE_OPERAND (op, 1));
!         win = build3 (COMPONENT_REF, type, TREE_OPERAND (op, 0),
!                       TREE_OPERAND (op, 1), NULL_TREE);
!         TREE_SIDE_EFFECTS (win) = TREE_SIDE_EFFECTS (op);
!         TREE_THIS_VOLATILE (win) = TREE_THIS_VOLATILE (op);
        }
      }
    *unsignedp_ptr = uns;
--- 5485,5491 ----
        {
          if (first)
            uns = DECL_UNSIGNED (TREE_OPERAND (op, 1));
!         win = fold_convert (type, op);
        }
      }
    *unsignedp_ptr = uns;


-- 


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (21 preceding siblings ...)
  2007-01-05 13:46 ` rguenth at gcc dot gnu dot org
@ 2007-01-05 14:30 ` rguenth at gcc dot gnu dot org
  2007-01-05 20:59 ` rguenth at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-01-05 14:30 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #20 from rguenth at gcc dot gnu dot org  2007-01-05 14:30 -------
Mine (patch posted).


-- 

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|2007-01-05 13:01:17         |2007-01-05 14:30:08
               date|                            |


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (22 preceding siblings ...)
  2007-01-05 14:30 ` rguenth at gcc dot gnu dot org
@ 2007-01-05 20:59 ` rguenth at gcc dot gnu dot org
  2007-01-05 21:04 ` rguenth at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-01-05 20:59 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #21 from rguenth at gcc dot gnu dot org  2007-01-05 20:59 -------
Subject: Bug 27826

Author: rguenth
Date: Fri Jan  5 20:59:15 2007
New Revision: 120497

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120497
Log:
2007-01-05  Richard Guenther  <rguenther@suse.de>

        PR middle-end/27826
        * tree.c (get_narrower): Do not construct COMPONENT_REFs
        with mismatched types.  Instead explicitly build a
        conversion NOP_EXPR.

        * g++.dg/opt/pr27826.C: New testcase.

Added:
    branches/gcc-4_1-branch/gcc/testsuite/g++.dg/opt/pr27826.C
Modified:
    branches/gcc-4_1-branch/gcc/ChangeLog
    branches/gcc-4_1-branch/gcc/testsuite/ChangeLog
    branches/gcc-4_1-branch/gcc/tree.c


-- 


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (23 preceding siblings ...)
  2007-01-05 20:59 ` rguenth at gcc dot gnu dot org
@ 2007-01-05 21:04 ` rguenth at gcc dot gnu dot org
  2007-01-05 21:09 ` rguenth at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-01-05 21:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #22 from rguenth at gcc dot gnu dot org  2007-01-05 21:04 -------
Subject: Bug 27826

Author: rguenth
Date: Fri Jan  5 21:04:23 2007
New Revision: 120498

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120498
Log:
2007-01-05  Richard Guenther  <rguenther@suse.de>

        PR middle-end/27826
        * tree.c (get_narrower): Do not construct COMPONENT_REFs
        with mismatched types.  Instead explicitly build a
        conversion NOP_EXPR.

        * g++.dg/opt/pr27826.C: New testcase.

Added:
    trunk/gcc/testsuite/g++.dg/opt/pr27826.C
      - copied unchanged from r120497,
branches/gcc-4_1-branch/gcc/testsuite/g++.dg/opt/pr27826.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree.c


-- 


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


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

* [Bug c++/27826] [4.0/4.1 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (24 preceding siblings ...)
  2007-01-05 21:04 ` rguenth at gcc dot gnu dot org
@ 2007-01-05 21:09 ` rguenth at gcc dot gnu dot org
  2007-01-05 21:10 ` [Bug c++/27826] [4.0 " rguenth at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-01-05 21:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #23 from rguenth at gcc dot gnu dot org  2007-01-05 21:09 -------
Subject: Bug 27826

Author: rguenth
Date: Fri Jan  5 21:08:47 2007
New Revision: 120499

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120499
Log:
2007-01-05  Richard Guenther  <rguenther@suse.de>

        PR middle-end/27826
        * g++.dg/opt/pr27826.C: New testcase.

Added:
    branches/gcc-4_2-branch/gcc/testsuite/g++.dg/opt/pr27826.C
      - copied unchanged from r120497,
branches/gcc-4_1-branch/gcc/testsuite/g++.dg/opt/pr27826.C
Modified:
    branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug c++/27826] [4.0 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (25 preceding siblings ...)
  2007-01-05 21:09 ` rguenth at gcc dot gnu dot org
@ 2007-01-05 21:10 ` rguenth at gcc dot gnu dot org
  2007-01-06 10:59 ` rguenth at gcc dot gnu dot org
  2007-02-03 17:30 ` gdr at gcc dot gnu dot org
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-01-05 21:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #24 from rguenth at gcc dot gnu dot org  2007-01-05 21:10 -------
Fixed on the 4.1 branch.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|rguenth at gcc dot gnu dot  |unassigned at gcc dot gnu
                   |org                         |dot org
             Status|ASSIGNED                    |NEW
      Known to fail|4.0.2 4.1.0 4.1.1 4.1.2     |4.0.2 4.1.0 4.1.1
      Known to work|3.4.6 4.2.0                 |3.4.6 4.2.0 4.1.2
            Summary|[4.0/4.1 Regression] ICE in |[4.0 Regression] ICE in
                   |copy_to_mode_reg            |copy_to_mode_reg


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


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

* [Bug c++/27826] [4.0 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (26 preceding siblings ...)
  2007-01-05 21:10 ` [Bug c++/27826] [4.0 " rguenth at gcc dot gnu dot org
@ 2007-01-06 10:59 ` rguenth at gcc dot gnu dot org
  2007-02-03 17:30 ` gdr at gcc dot gnu dot org
  28 siblings, 0 replies; 30+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-01-06 10:59 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #25 from rguenth at gcc dot gnu dot org  2007-01-06 10:59 -------
Subject: Bug 27826

Author: rguenth
Date: Sat Jan  6 10:59:34 2007
New Revision: 120523

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120523
Log:
2007-01-05  Richard Guenther  <rguenther@suse.de>

        PR middle-end/27826
        * tree.c (get_narrower): Do not construct COMPONENT_REFs
        with mismatched types.  Instead explicitly build a
        conversion NOP_EXPR.

Modified:
    branches/gcc-4_2-branch/gcc/ChangeLog
    branches/gcc-4_2-branch/gcc/tree.c


-- 


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


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

* [Bug c++/27826] [4.0 Regression] ICE in copy_to_mode_reg
  2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
                   ` (27 preceding siblings ...)
  2007-01-06 10:59 ` rguenth at gcc dot gnu dot org
@ 2007-02-03 17:30 ` gdr at gcc dot gnu dot org
  28 siblings, 0 replies; 30+ messages in thread
From: gdr at gcc dot gnu dot org @ 2007-02-03 17:30 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #26 from gdr at gcc dot gnu dot org  2007-02-03 17:30 -------
Fixed in GCC-4.1.2.


-- 

gdr at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|4.0.4                       |4.1.2


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


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

end of thread, other threads:[~2007-02-03 17:30 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-05-30 16:07 [Bug tree-optimization/27826] New: ICE in copy_to_mode_reg sander at mi dot fu-berlin dot de
2006-05-30 16:13 ` [Bug middle-end/27826] " sander at mi dot fu-berlin dot de
2006-05-30 16:23 ` [Bug middle-end/27826] [4.1 Regression] " pinskia at gcc dot gnu dot org
2006-05-30 16:25 ` pinskia at gcc dot gnu dot org
2006-05-31  4:14 ` pinskia at gcc dot gnu dot org
2006-06-01  3:39 ` [Bug c++/27826] " pinskia at gcc dot gnu dot org
2006-06-01  4:27 ` [Bug c++/27826] [4.0/4.1 " pinskia at gcc dot gnu dot org
2006-06-01  4:33 ` pinskia at gcc dot gnu dot org
2006-06-03  9:27 ` christophpfister at bluemail dot ch
2006-06-07 22:13 ` bangerth at dealii dot org
2006-06-07 22:28 ` pinskia at gcc dot gnu dot org
2006-06-07 22:29 ` bangerth at math dot tamu dot edu
2006-06-08  0:33 ` pinskia at gcc dot gnu dot org
2006-06-08 17:47 ` bangerth at dealii dot org
2006-06-09 18:18 ` janis at gcc dot gnu dot org
2006-06-09 19:04 ` janis at gcc dot gnu dot org
2006-11-01 18:04 ` mmitchel at gcc dot gnu dot org
2006-11-14 17:30 ` mmitchel at gcc dot gnu dot org
2006-11-14 17:44 ` rguenth at gcc dot gnu dot org
2007-01-05 13:01 ` rguenth at gcc dot gnu dot org
2007-01-05 13:07 ` rguenth at gcc dot gnu dot org
2007-01-05 13:45 ` rguenth at gcc dot gnu dot org
2007-01-05 13:46 ` rguenth at gcc dot gnu dot org
2007-01-05 14:30 ` rguenth at gcc dot gnu dot org
2007-01-05 20:59 ` rguenth at gcc dot gnu dot org
2007-01-05 21:04 ` rguenth at gcc dot gnu dot org
2007-01-05 21:09 ` rguenth at gcc dot gnu dot org
2007-01-05 21:10 ` [Bug c++/27826] [4.0 " rguenth at gcc dot gnu dot org
2007-01-06 10:59 ` rguenth at gcc dot gnu dot org
2007-02-03 17:30 ` gdr 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).