public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug lto/45089]  New: -Os -g -fwhopr dwarf2out ICE
@ 2010-07-26 21:03 hubicka at gcc dot gnu dot org
  2010-07-26 21:04 ` [Bug lto/45089] " hubicka at gcc dot gnu dot org
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: hubicka at gcc dot gnu dot org @ 2010-07-26 21:03 UTC (permalink / raw)
  To: gcc-bugs

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

This is introduced by the new type merging code

jh@evans:~> /abuild/jh/trunk-install/bin/g++ -r -nostdlib -Os -g ~/d?.ii
-fwhopr
In file included from ../../../dist/include/nsThreadUtils.h:49:0,
                 from
/abuild/jh/mozilla-central/accessible/src/base/a11yGeneric.h:42,
                 from
/abuild/jh/mozilla-central/accessible/src/base/nsAccessNode.h:49,
                 from
/abuild/jh/mozilla-central/accessible/src/base/../atk/nsAccessNodeWrap.h:46,
                 from
/abuild/jh/mozilla-central/accessible/src/base/nsAccessible.h:42,
                 from
/abuild/jh/mozilla-central/accessible/src/base/../atk/nsAccessibleWrap.h:46,
                 from
/abuild/jh/mozilla-central/accessible/src/base/../html/nsHyperTextAccessible.h:48,
                 from
/abuild/jh/mozilla-central/accessible/src/base/../atk/nsHyperTextAccessibleWrap.h:42,
                 from
/abuild/jh/mozilla-central/accessible/src/base/nsARIAGridAccessible.h:44,
                 from
/abuild/jh/mozilla-central/accessible/src/base/nsARIAGridAccessible.cpp:39:
../../../dist/include/nsAutoPtr.h: In member function ‘void
nsAutoPtr<T>::assign(T*) [with T = AccGroupInfo]’:
../../../dist/include/nsAutoPtr.h:134:11:   instantiated from ‘nsAutoPtr<T>&
nsAutoPtr<T>::operator=(T*) [with T = AccGroupInfo]’
/abuild/jh/mozilla-central/accessible/src/base/nsAccessible.h:332:18:  
instantiated from here
../../../dist/include/nsAutoPtr.h:71:11: warning: possible problem detected in
invocation of delete operator: [enabled by default]
../../../dist/include/nsAutoPtr.h:69:14: warning: ‘oldPtr’ has incomplete type
[enabled by default]
/abuild/jh/mozilla-central/accessible/src/base/nsAccessible.h:55:7: warning:
forward declaration of ‘struct AccGroupInfo’ [enabled by default]
../../../dist/include/nsAutoPtr.h:71:11: note: neither the destructor nor the
class-specific operator delete will be called, even if they are declared when
the class is defined.
lto1: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
lto-wrapper: /abuild/jh/trunk-install/bin/g++ returned 1 exit status
collect2: lto-wrapper returned 1 exit status


-- 
           Summary: -Os -g -fwhopr dwarf2out ICE
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: lto
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: hubicka at gcc dot gnu dot org
 GCC build triplet: x86_64-linux
  GCC host triplet: x86_64-linux
GCC target triplet: x86_64-linux


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


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

* [Bug lto/45089] -Os -g -fwhopr dwarf2out ICE
  2010-07-26 21:03 [Bug lto/45089] New: -Os -g -fwhopr dwarf2out ICE hubicka at gcc dot gnu dot org
@ 2010-07-26 21:04 ` hubicka at gcc dot gnu dot org
  2010-07-27  9:18 ` rguenth at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: hubicka at gcc dot gnu dot org @ 2010-07-26 21:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from hubicka at gcc dot gnu dot org  2010-07-26 21:04 -------
Created an attachment (id=21321)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21321&action=view)
testcase


-- 


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


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

* [Bug lto/45089] -Os -g -fwhopr dwarf2out ICE
  2010-07-26 21:03 [Bug lto/45089] New: -Os -g -fwhopr dwarf2out ICE hubicka at gcc dot gnu dot org
  2010-07-26 21:04 ` [Bug lto/45089] " hubicka at gcc dot gnu dot org
@ 2010-07-27  9:18 ` rguenth at gcc dot gnu dot org
  2010-07-27  9:27 ` rguenth at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-27  9:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from rguenth at gcc dot gnu dot org  2010-07-27 09:17 -------
Trying to reduce ... it happens only with whopr.

Program received signal SIGSEGV, Segmentation fault.
0x00000000005d33ba in prune_unused_types_mark (die=0x0, dokids=1)
    at /space/rguenther/src/svn/trunk/gcc/dwarf2out.c:21729
21729     if (die->die_mark == 0)

#1  0x00000000005d3349 in prune_unused_types_walk_attribs (die=0x7ffff5a12d68)
    at /space/rguenther/src/svn/trunk/gcc/dwarf2out.c:21711
21711               prune_unused_types_mark (a->dw_attr_val.v.val_die_ref.die,
1);
(gdb) p a->dw_attr_val.v.val_die_ref
$1 = {die = 0x0, external = 0}

so we created a dw_val_class_die_ref attr with a null DIE.  Which we do
here:

#1  0x00000000005c9c14 in add_pure_or_virtual_attribute (die=0x7ffff5a12d68, 
    func_decl=0x7ffff55cd300)
    at /space/rguenther/src/svn/trunk/gcc/dwarf2out.c:17409
17407         if (debug_info_level > DINFO_LEVEL_TERSE
17408             && DECL_CONTEXT (func_decl))
17409           add_AT_die_ref (die, DW_AT_containing_type,
17410                           lookup_type_die (DECL_CONTEXT (func_decl)));

where DECL_CONTEXT is a RECORD_TYPE.

Supposedly the type is unused and thus doesn't get output.

Note that we're arriving here via

#5  0x0000000000c74a47 in expand_call_inline (bb=0x7ffff54782d8, 
    stmt=0x7ffff52c89b0, id=0x7fffffffd970)
    at /space/rguenther/src/svn/trunk/gcc/tree-inline.c:4024
4024      (*debug_hooks->outlining_inline_function) (cg_edge->callee->decl);


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2010-07-27 09:17:50
               date|                            |


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


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

* [Bug lto/45089] -Os -g -fwhopr dwarf2out ICE
  2010-07-26 21:03 [Bug lto/45089] New: -Os -g -fwhopr dwarf2out ICE hubicka at gcc dot gnu dot org
  2010-07-26 21:04 ` [Bug lto/45089] " hubicka at gcc dot gnu dot org
  2010-07-27  9:18 ` rguenth at gcc dot gnu dot org
@ 2010-07-27  9:27 ` rguenth at gcc dot gnu dot org
  2010-07-27  9:43 ` hubicka at ucw dot cz
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-27  9:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from rguenth at gcc dot gnu dot org  2010-07-27 09:26 -------
So the issue may be that the LTO FE doesn't announce any decls to the debug
machinery.

> grep debug_hooks cp/*.c
cp/decl.c:    debug_hooks->type_decl (tdecl, 0);
cp/decl.c:              /*debug_hooks->set_name (t, decl);*/
cp/name-lookup.c:    (*debug_hooks->global_decl) (alias);
cp/name-lookup.c:       (*debug_hooks->imported_module_or_decl) (name_space,
NULL_TREE,
cp/name-lookup.c:         (*debug_hooks->imported_module_or_decl) (t,
NULL_TREE, context, false);
cp/optimize.c:  (*debug_hooks->deferred_inline_function) (fn);


-- 


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


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

* [Bug lto/45089] -Os -g -fwhopr dwarf2out ICE
  2010-07-26 21:03 [Bug lto/45089] New: -Os -g -fwhopr dwarf2out ICE hubicka at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2010-07-27  9:27 ` rguenth at gcc dot gnu dot org
@ 2010-07-27  9:43 ` hubicka at ucw dot cz
  2010-07-27  9:46 ` rguenth at gcc dot gnu dot org
  2010-07-27 11:06 ` rguenth at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: hubicka at ucw dot cz @ 2010-07-27  9:43 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from hubicka at ucw dot cz  2010-07-27 09:43 -------
Subject: Re:  -Os -g -fwhopr dwarf2out ICE

> So the issue may be that the LTO FE doesn't announce any decls to the debug
> machinery.
Because they are already announced before streaming ;).  I am not at all
familiar with this, can we just announce every type streamed in? Or do we need
to stream whatever frontend did?  deferred_inline_function should be all fine.

Honza


-- 


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


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

* [Bug lto/45089] -Os -g -fwhopr dwarf2out ICE
  2010-07-26 21:03 [Bug lto/45089] New: -Os -g -fwhopr dwarf2out ICE hubicka at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2010-07-27  9:43 ` hubicka at ucw dot cz
@ 2010-07-27  9:46 ` rguenth at gcc dot gnu dot org
  2010-07-27 11:06 ` rguenth at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-27  9:46 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from rguenth at gcc dot gnu dot org  2010-07-27 09:46 -------
Well - I have no idea ;)  We can look at what the FE announces after I finished
testcase reduction.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|rguenther at suse dot de    |rguenth at gcc dot gnu dot
                   |                            |org


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


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

* [Bug lto/45089] -Os -g -fwhopr dwarf2out ICE
  2010-07-26 21:03 [Bug lto/45089] New: -Os -g -fwhopr dwarf2out ICE hubicka at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2010-07-27  9:46 ` rguenth at gcc dot gnu dot org
@ 2010-07-27 11:06 ` rguenth at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-07-27 11:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from rguenth at gcc dot gnu dot org  2010-07-27 11:06 -------
Created an attachment (id=21325)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21325&action=view)
testcase

> g++ -r -nostdlib -O[s23] -g -flto d2.3.3.C d3.3.3.C

The key is that nsAccessible are not merged because one instance has
a complete nsRoleMapEntry while the other one an incomplete one.


-- 


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


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

end of thread, other threads:[~2010-07-27 11:06 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-07-26 21:03 [Bug lto/45089] New: -Os -g -fwhopr dwarf2out ICE hubicka at gcc dot gnu dot org
2010-07-26 21:04 ` [Bug lto/45089] " hubicka at gcc dot gnu dot org
2010-07-27  9:18 ` rguenth at gcc dot gnu dot org
2010-07-27  9:27 ` rguenth at gcc dot gnu dot org
2010-07-27  9:43 ` hubicka at ucw dot cz
2010-07-27  9:46 ` rguenth at gcc dot gnu dot org
2010-07-27 11:06 ` rguenth 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).