public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/30509]  New: ice for legal code with -O3
@ 2007-01-19 13:52 dcb314 at hotmail dot com
  2007-01-19 13:54 ` [Bug c++/30509] " dcb314 at hotmail dot com
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: dcb314 at hotmail dot com @ 2007-01-19 13:52 UTC (permalink / raw)
  To: gcc-bugs

I just tried to compile Suse Linux package hydrogen-0.9.3-41
with the GNU C++ compiler version 4.3 snapshot 20070112.

The compiler said

src/lib/Object.cpp:306: internal compiler error: in calc_dfs_tree, at
dominance.c:374
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

Preprocessed source code attached. Flag -O3 required.


-- 
           Summary: ice for legal code with -O3
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dcb314 at hotmail dot com
  GCC host triplet: x86_64-suse-linux


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


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

* [Bug c++/30509] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
@ 2007-01-19 13:54 ` dcb314 at hotmail dot com
  2007-01-22  1:07 ` pinskia at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: dcb314 at hotmail dot com @ 2007-01-19 13:54 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from dcb314 at hotmail dot com  2007-01-19 13:54 -------
Created an attachment (id=12923)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12923&action=view)
C++ source code


-- 


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


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

* [Bug c++/30509] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
  2007-01-19 13:54 ` [Bug c++/30509] " dcb314 at hotmail dot com
@ 2007-01-22  1:07 ` pinskia at gcc dot gnu dot org
  2007-01-22  2:01 ` [Bug c++/30509] [4.3 Regression] " pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-01-22  1:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pinskia at gcc dot gnu dot org  2007-01-22 01:07 -------
Reducing.


-- 


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


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

* [Bug c++/30509] [4.3 Regression] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
  2007-01-19 13:54 ` [Bug c++/30509] " dcb314 at hotmail dot com
  2007-01-22  1:07 ` pinskia at gcc dot gnu dot org
@ 2007-01-22  2:01 ` pinskia at gcc dot gnu dot org
  2007-01-22  2:17 ` [Bug middle-end/30509] " pinskia at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-01-22  2:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from pinskia at gcc dot gnu dot org  2007-01-22 02:01 -------
Reduced testcase:
struct all{ };
struct g {  
 g(const all& __a){ }  
};
template<typename _Tp>   
  struct vector: protected g
{  
  vector(const all& __a = all())   : g(__a) { }     
};
void f() throw();
struct Logger { 
  bool m_bUseFile; 
  vector<int> m_msgQueue;  
  Logger();
};
Logger* getInstance() {
 return new Logger();
}
void useVerboseLog( bool bUse ) 
{
 getInstance()->m_bUseFile = bUse;
}
Logger::Logger()  { f(); }

-----
I need to test a newer version of the trunk still.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-on-valid-code
            Summary|ice for legal code with -O3 |[4.3 Regression] ice for
                   |                            |legal code with -O3
   Target Milestone|---                         |4.3.0


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


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

* [Bug middle-end/30509] [4.3 Regression] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
                   ` (2 preceding siblings ...)
  2007-01-22  2:01 ` [Bug c++/30509] [4.3 Regression] " pinskia at gcc dot gnu dot org
@ 2007-01-22  2:17 ` pinskia at gcc dot gnu dot org
  2007-01-22  2:21 ` pinskia at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-01-22  2:17 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from pinskia at gcc dot gnu dot org  2007-01-22 02:17 -------
Still ICEs as of today.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
          Component|c++                         |middle-end
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2007-01-22 02:17:10
               date|                            |


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


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

* [Bug middle-end/30509] [4.3 Regression] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
                   ` (3 preceding siblings ...)
  2007-01-22  2:17 ` [Bug middle-end/30509] " pinskia at gcc dot gnu dot org
@ 2007-01-22  2:21 ` pinskia at gcc dot gnu dot org
  2007-02-24 22:58 ` hubicka at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-01-22  2:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from pinskia at gcc dot gnu dot org  2007-01-22 02:21 -------
This is caused by exceptions and inlining:
#1  0x084ebd68 in calc_dfs_tree (di=0xbfe06ef4, reverse=CDI_DOMINATORS)
    at /src/gcc/local/gcc/gcc/dominance.c:374
#2  0x084ec6ef in calculate_dominance_info (dir=CDI_DOMINATORS)
    at /src/gcc/local/gcc/gcc/dominance.c:632
#3  0x08379211 in update_ssa (update_flags=512) at
/src/gcc/local/gcc/gcc/tree-into-ssa.c:3155
#4  0x082ea499 in tree_function_versioning (old_decl=0xb7d4ac40,
new_decl=0xb7d504d0,
    tree_map=0x0, update_clones=1 '\001') at
/src/gcc/local/gcc/gcc/tree-inline.c:3308
#5  0x08903a9e in save_inline_function_body (node=0xb7c97580)
    at /src/gcc/local/gcc/gcc/cgraphunit.c:1533
#6  0x08908266 in apply_inline () at /src/gcc/local/gcc/gcc/ipa-inline.c:1417


-- 

pinskia at gcc dot gnu dot org changed:

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


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


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

* [Bug middle-end/30509] [4.3 Regression] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
                   ` (4 preceding siblings ...)
  2007-01-22  2:21 ` pinskia at gcc dot gnu dot org
@ 2007-02-24 22:58 ` hubicka at gcc dot gnu dot org
  2007-02-25 17:39 ` pinskia at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: hubicka at gcc dot gnu dot org @ 2007-02-24 22:58 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from hubicka at gcc dot gnu dot org  2007-02-24 22:58 -------
I am testing a fix:
Index: tree-inline.c
===================================================================
*** tree-inline.c       (revision 122292)
--- tree-inline.c       (working copy)
*************** copy_bb (copy_body_data *id, basic_block
*** 873,879 ****
              gcc_assert (lookup_stmt_eh_region_fn (id->src_cfun, orig_stmt)
                          != 0);

!             if (tree_could_throw_p (stmt))
                {
                  int region = lookup_stmt_eh_region_fn (id->src_cfun,
orig_stmt);
                  /* Add an entry for the copied tree in the EH hashtable.
--- 873,892 ----
              gcc_assert (lookup_stmt_eh_region_fn (id->src_cfun, orig_stmt)
                          != 0);

!             if (tree_could_throw_p (stmt)
!                 /* When we are cloning for inlining, we are supposed to
!                    construct a clone that calls precisely the same functions
!                    as original.  However IPA optimizers might've proved
!                    earlier some function calls as non-trapping that might
!                    render some basic blocks dead that might become
!                    unreachable.
! 
!                    We can't update SSA with unreachable blocks in CFG and
thus
!                    we prevent the scenario by preserving even the "dead" eh
!                    edges until the point they are later removed by
!                    fixup_cfg pass.  */
!                 || (id->transform_call_graph_edges == CB_CGE_MOVE
!                     && lookup_stmt_eh_region_fn (id->src_cfun, orig_stmt) >
0))
                {
                  int region = lookup_stmt_eh_region_fn (id->src_cfun,
orig_stmt);
                  /* Add an entry for the copied tree in the EH hashtable.


-- 

hubicka at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |hubicka at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2007-01-22 02:17:10         |2007-02-24 22:58:13
               date|                            |


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


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

* [Bug middle-end/30509] [4.3 Regression] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
                   ` (6 preceding siblings ...)
  2007-02-25 17:39 ` pinskia at gcc dot gnu dot org
@ 2007-02-25 17:39 ` pinskia at gcc dot gnu dot org
  2007-02-25 17:43 ` pinskia at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-02-25 17:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from pinskia at gcc dot gnu dot org  2007-02-25 17:39 -------
*** Bug 30866 has been marked as a duplicate of this bug. ***


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |martin at mpa-garching dot
                   |                            |mpg dot de


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


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

* [Bug middle-end/30509] [4.3 Regression] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
                   ` (5 preceding siblings ...)
  2007-02-24 22:58 ` hubicka at gcc dot gnu dot org
@ 2007-02-25 17:39 ` pinskia at gcc dot gnu dot org
  2007-02-25 17:39 ` pinskia at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-02-25 17:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from pinskia at gcc dot gnu dot org  2007-02-25 17:39 -------
There is a slight error in the patch here, CB_CGE_MOVE should really be
CB_CGE_MOVE_CLONES.


-- 


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


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

* [Bug middle-end/30509] [4.3 Regression] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
                   ` (7 preceding siblings ...)
  2007-02-25 17:39 ` pinskia at gcc dot gnu dot org
@ 2007-02-25 17:43 ` pinskia at gcc dot gnu dot org
  2007-02-25 18:11 ` hubicka at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-02-25 17:43 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from pinskia at gcc dot gnu dot org  2007-02-25 17:42 -------
*** Bug 30768 has been marked as a duplicate of this bug. ***


-- 

pinskia at gcc dot gnu dot org changed:

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


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


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

* [Bug middle-end/30509] [4.3 Regression] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
                   ` (8 preceding siblings ...)
  2007-02-25 17:43 ` pinskia at gcc dot gnu dot org
@ 2007-02-25 18:11 ` hubicka at gcc dot gnu dot org
  2007-02-26  6:28 ` pinskia at gcc dot gnu dot org
  2007-02-26  6:29 ` pinskia at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: hubicka at gcc dot gnu dot org @ 2007-02-25 18:11 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from hubicka at gcc dot gnu dot org  2007-02-25 18:11 -------
Subject: Bug 30509

Author: hubicka
Date: Sun Feb 25 18:11:20 2007
New Revision: 122314

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=122314
Log:
        PR middle-end/30509
        * tree-inline.c (copy_bb): Produce exact copy of EH info when copying
for inlining.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/tree-inline.c


-- 


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


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

* [Bug middle-end/30509] [4.3 Regression] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
                   ` (9 preceding siblings ...)
  2007-02-25 18:11 ` hubicka at gcc dot gnu dot org
@ 2007-02-26  6:28 ` pinskia at gcc dot gnu dot org
  2007-02-26  6:29 ` pinskia at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-02-26  6:28 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from pinskia at gcc dot gnu dot org  2007-02-26 06:28 -------
Fixed.


-- 


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


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

* [Bug middle-end/30509] [4.3 Regression] ice for legal code with -O3
  2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
                   ` (10 preceding siblings ...)
  2007-02-26  6:28 ` pinskia at gcc dot gnu dot org
@ 2007-02-26  6:29 ` pinskia at gcc dot gnu dot org
  11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-02-26  6:29 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from pinskia at gcc dot gnu dot org  2007-02-26 06:28 -------
Fixed I say.


-- 

pinskia at gcc dot gnu dot org changed:

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


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


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

end of thread, other threads:[~2007-02-26  6:29 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-01-19 13:52 [Bug c++/30509] New: ice for legal code with -O3 dcb314 at hotmail dot com
2007-01-19 13:54 ` [Bug c++/30509] " dcb314 at hotmail dot com
2007-01-22  1:07 ` pinskia at gcc dot gnu dot org
2007-01-22  2:01 ` [Bug c++/30509] [4.3 Regression] " pinskia at gcc dot gnu dot org
2007-01-22  2:17 ` [Bug middle-end/30509] " pinskia at gcc dot gnu dot org
2007-01-22  2:21 ` pinskia at gcc dot gnu dot org
2007-02-24 22:58 ` hubicka at gcc dot gnu dot org
2007-02-25 17:39 ` pinskia at gcc dot gnu dot org
2007-02-25 17:39 ` pinskia at gcc dot gnu dot org
2007-02-25 17:43 ` pinskia at gcc dot gnu dot org
2007-02-25 18:11 ` hubicka at gcc dot gnu dot org
2007-02-26  6:28 ` pinskia at gcc dot gnu dot org
2007-02-26  6:29 ` pinskia 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).