public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug bootstrap/53042] New: AIX bootstrap: cgraph symbol table error
@ 2012-04-19 13:32 dje at gcc dot gnu.org
  2012-04-19 13:48 ` [Bug bootstrap/53042] [4.8 Regression] " rguenth at gcc dot gnu.org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: dje at gcc dot gnu.org @ 2012-04-19 13:32 UTC (permalink / raw)
  To: gcc-bugs

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

             Bug #: 53042
           Summary: AIX bootstrap: cgraph symbol table error
    Classification: Unclassified
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: bootstrap
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: dje@gcc.gnu.org


AIX bootstrap is broken and apparently caused by your symbol table patches.

I now see errors:

/farm/dje/src/src/libstdc++-v3/src/c++98/strstream.cc:418:1: error:
non-DECL_ONE_ONLY node in a same_comdat_group list
 } // namespace
 ^
_ZTCSt10istrstream0_Si/337 (int (* std::istrstream::_ZTCSt10istrstream0_Si
[10])(...)) @70c3df78
  Type: variable
  Visibility: public weak comdat virtual artificial
  Same comdat group as: _ZTVSt10istrstream/335
  References: _ZTISi/486 (addr)_ZNSiD1Ev/311 (addr)_ZNSiD0Ev/312
(addr)_ZTISi/486 (addr)_ZTv0_n12_NSiD1Ev/487 (addr)_ZTv0_n12_NSiD0Ev/488 (addr)
  Referring: _ZTTSt10istrstream/336 (addr)_ZTTSt10istrstream/336 (addr)
  Availability: not-ready
  Varpool flags: initialized needed analyzed finalized
/farm/dje/src/src/libstdc++-v3/src/c++98/strstream.cc:418:1: internal compiler
error: verify_symtab_node failed
 } // namespace

and

/farm/dje/src/src/libstdc++-v3/src/c++11/fstream-inst.cc:49:1: error:
non-DECL_ONE_ONLY node in a same_comdat_group list
 } // namespace
 ^
_ZTCSt14basic_ifstreamIcSt11char_traitsIcEE0_Si/803 (int (*
std::basic_ifstream<char>::_ZTCSt14basic_ifstreamIcSt11char_traitsIcEE0_Si
[10])(...)) @700c6708
  Type: variable
  Visibility: public weak
comdat/farm/dje/src/src/libstdc++-v3/src/c++11/fstream-inst.cc:49:1: internal
compiler error: tree check: expected identifier_node, have string_cst in
dump_symtab_base, at symtab.c:405
 } // namespace


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

* [Bug bootstrap/53042] [4.8 Regression] AIX bootstrap: cgraph symbol table error
  2012-04-19 13:32 [Bug bootstrap/53042] New: AIX bootstrap: cgraph symbol table error dje at gcc dot gnu.org
@ 2012-04-19 13:48 ` rguenth at gcc dot gnu.org
  2012-04-19 13:53 ` [Bug bootstrap/53042] " dje at gcc dot gnu.org
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-04-19 13:48 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Guenther <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |powerpc-ibm-aix5.3
            Version|4.7.0                       |4.8.0
   Target Milestone|---                         |4.8.0
            Summary|AIX bootstrap: cgraph       |[4.8 Regression] AIX
                   |symbol table error          |bootstrap: cgraph symbol
                   |                            |table error


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

* [Bug bootstrap/53042] AIX bootstrap: cgraph symbol table error
  2012-04-19 13:32 [Bug bootstrap/53042] New: AIX bootstrap: cgraph symbol table error dje at gcc dot gnu.org
  2012-04-19 13:48 ` [Bug bootstrap/53042] [4.8 Regression] " rguenth at gcc dot gnu.org
@ 2012-04-19 13:53 ` dje at gcc dot gnu.org
  2012-04-19 14:11 ` [Bug bootstrap/53042] [4.8 Regression] " rguenth at gcc dot gnu.org
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: dje at gcc dot gnu.org @ 2012-04-19 13:53 UTC (permalink / raw)
  To: gcc-bugs

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

David Edelsohn <dje at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2012-04-19
                 CC|                            |hubicka at gcc dot gnu.org
     Ever Confirmed|0                           |1

--- Comment #1 from David Edelsohn <dje at gcc dot gnu.org> 2012-04-19 13:44:04 UTC ---
/farm/dje/src/src/libstdc++-v3/src/c++98/iostream-inst.cc:49:1: error:
non-DECL_ONE_ONLY node in a same_comdat_group list
 } // namespace
 ^
_ZTCSd8_So/272 (int (* std::basic_iostream<char>::_ZTCSd8_So [10])(...))
@708fad38
  Type: variable
  Visibility: public weak comdat section_name:_ZTCSd8_So virtual artificial
  Same comdat group as: _ZTVSd/269
  References: _ZTISo/413 (addr)_ZNSoD1Ev/230 (addr)_ZNSoD0Ev/231
(addr)_ZTISo/413 (addr)_ZTv0_n12_NSoD1Ev/414 (addr)_ZTv0_n12_NSoD0Ev/415 (addr)
  Referring: _ZTTSd/270 (addr)_ZTTSd/270 (addr)
  Availability: not-ready
  Varpool flags: initialized needed analyzed finalized
/farm/dje/src/src/libstdc++-v3/src/c++98/iostream-inst.cc:49:1: internal
compiler error: verify_symtab_node failed
 } // namespace

/farm/dje/src/src/libstdc++-v3/src/c++98/istream-inst.cc:96:1: error:
non-DECL_ONE_ONLY node in a same_comdat_group list
 } // namespace
 ^
_ZTTSi/622 (const void* std::basic_istream<char>::_ZTTSi [2]) @70a90e10
  Type: variable
  Visibility: public weak comdat section_name:_ZTTSi virtual artificial
  Same comdat group as: _ZTVSi/621
  References: _ZTVSi/621 (addr)_ZTVSi/621 (addr)
  Referring: 
  Availability: not-ready
  Varpool flags: initialized needed analyzed finalized
/farm/dje/src/src/libstdc++-v3/src/c++98/istream-inst.cc:96:1: internal
compiler error: verify_symtab_node failed
 } // namespace


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

* [Bug bootstrap/53042] [4.8 Regression] AIX bootstrap: cgraph symbol table error
  2012-04-19 13:32 [Bug bootstrap/53042] New: AIX bootstrap: cgraph symbol table error dje at gcc dot gnu.org
  2012-04-19 13:48 ` [Bug bootstrap/53042] [4.8 Regression] " rguenth at gcc dot gnu.org
  2012-04-19 13:53 ` [Bug bootstrap/53042] " dje at gcc dot gnu.org
@ 2012-04-19 14:11 ` rguenth at gcc dot gnu.org
  2012-04-19 16:06 ` hubicka at ucw dot cz
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-04-19 14:11 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-04-19 14:09:20 UTC ---
Patch:

Index: gcc/symtab.c
===================================================================
--- gcc/symtab.c        (revision 186594)
+++ gcc/symtab.c        (working copy)
@@ -537,10 +537,23 @@ verify_symtab_base (symtab_node node)
     {
       symtab_node n = node->symbol.same_comdat_group;

-      if (!DECL_ONE_ONLY (n->symbol.decl))
+      if (SUPPORTS_ONE_ONLY)
        {
-         error ("non-DECL_ONE_ONLY node in a same_comdat_group list");
-         error_found = true;
+         if (!DECL_ONE_ONLY (n->symbol.decl))
+           {
+             error ("non-DECL_ONE_ONLY node in a same_comdat_group list");
+             error_found = true;
+           }
+       }
+      else
+       {
+         if (!DECL_COMMON (n->symbol.decl)
+             && !DECL_WEAK (n->symbol.decl))
+           {
+             error ("non-DECL_COMMON / DECL_WEAK node in a same_comdat_group "
+                    "list");
+             error_found = true;
+           }
        }
       if (n->symbol.type != node->symbol.type)
        {


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

* [Bug bootstrap/53042] [4.8 Regression] AIX bootstrap: cgraph symbol table error
  2012-04-19 13:32 [Bug bootstrap/53042] New: AIX bootstrap: cgraph symbol table error dje at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2012-04-19 14:11 ` [Bug bootstrap/53042] [4.8 Regression] " rguenth at gcc dot gnu.org
@ 2012-04-19 16:06 ` hubicka at ucw dot cz
  2012-04-19 18:58 ` dje at gcc dot gnu.org
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: hubicka at ucw dot cz @ 2012-04-19 16:06 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Jan Hubicka <hubicka at ucw dot cz> 2012-04-19 16:03:09 UTC ---
Thanks for working on this.  The patch is pre-approved if it passes testing.

The new symtab verifier is just old cgraph verifier and only change is that
we now do same testing for variables, too.  I do not see why COMDAT_GROUP gets
right on functions and not on variables.  It seems like latent issue here:

Index: decl2.c
===================================================================
--- decl2.c    (revision 186576)
+++ decl2.c    (working copy)
@@ -1894,7 +1894,7 @@ maybe_emit_vtables (tree ctype)
      actually marking the variable as written.  */
       if (flag_syntax_only)
     TREE_ASM_WRITTEN (vtbl) = 1;
-      else if (DECL_COMDAT (vtbl))
+      else if (DECL_ONE_ONLY (vtbl))
     {
       current = varpool_node (vtbl);
       if (last)

At least the corresponding callgraph code is using this test.  David, does this
passes the original testing?

Honza


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

* [Bug bootstrap/53042] [4.8 Regression] AIX bootstrap: cgraph symbol table error
  2012-04-19 13:32 [Bug bootstrap/53042] New: AIX bootstrap: cgraph symbol table error dje at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2012-04-19 16:06 ` hubicka at ucw dot cz
@ 2012-04-19 18:58 ` dje at gcc dot gnu.org
  2012-04-20 15:00 ` hubicka at gcc dot gnu.org
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: dje at gcc dot gnu.org @ 2012-04-19 18:58 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from David Edelsohn <dje at gcc dot gnu.org> 2012-04-19 18:57:38 UTC ---
Both Richi and Honza's patches independently progress past the failure point.


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

* [Bug bootstrap/53042] [4.8 Regression] AIX bootstrap: cgraph symbol table error
  2012-04-19 13:32 [Bug bootstrap/53042] New: AIX bootstrap: cgraph symbol table error dje at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2012-04-19 18:58 ` dje at gcc dot gnu.org
@ 2012-04-20 15:00 ` hubicka at gcc dot gnu.org
  2012-04-20 15:19 ` hubicka at gcc dot gnu.org
  2012-04-20 15:28 ` hubicka at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: hubicka at gcc dot gnu.org @ 2012-04-20 15:00 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-04-20 14:59:20 UTC ---
I am testing my variant of patch on x86_64-linux and intend to commit it if it
passes.


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

* [Bug bootstrap/53042] [4.8 Regression] AIX bootstrap: cgraph symbol table error
  2012-04-19 13:32 [Bug bootstrap/53042] New: AIX bootstrap: cgraph symbol table error dje at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2012-04-20 15:00 ` hubicka at gcc dot gnu.org
@ 2012-04-20 15:19 ` hubicka at gcc dot gnu.org
  2012-04-20 15:28 ` hubicka at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: hubicka at gcc dot gnu.org @ 2012-04-20 15:19 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-04-20 15:18:45 UTC ---
Author: hubicka
Date: Fri Apr 20 15:18:39 2012
New Revision: 186627

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=186627
Log:
    PR target/53042
    * decl2.c (maybe_emit_vtables): Do not initialize same_comdat_group
    list when target has no support for it.

Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/decl2.c


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

* [Bug bootstrap/53042] [4.8 Regression] AIX bootstrap: cgraph symbol table error
  2012-04-19 13:32 [Bug bootstrap/53042] New: AIX bootstrap: cgraph symbol table error dje at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2012-04-20 15:19 ` hubicka at gcc dot gnu.org
@ 2012-04-20 15:28 ` hubicka at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: hubicka at gcc dot gnu.org @ 2012-04-20 15:28 UTC (permalink / raw)
  To: gcc-bugs

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

Jan Hubicka <hubicka at gcc dot gnu.org> changed:

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

--- Comment #7 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-04-20 15:27:53 UTC ---
Hopefully fixed by my patch.
After some more reading of the code, I do not think verifier update is needed. 
Verifier checks that only DECL_ONE_ONLY decls are in the comdat group lists and
only targets supporting them will set the DECL_ONE_ONLY flag. So we are also
effectively checking that targets not supporting them has empty comdat group
lists.

Honza


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

end of thread, other threads:[~2012-04-20 15:28 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-19 13:32 [Bug bootstrap/53042] New: AIX bootstrap: cgraph symbol table error dje at gcc dot gnu.org
2012-04-19 13:48 ` [Bug bootstrap/53042] [4.8 Regression] " rguenth at gcc dot gnu.org
2012-04-19 13:53 ` [Bug bootstrap/53042] " dje at gcc dot gnu.org
2012-04-19 14:11 ` [Bug bootstrap/53042] [4.8 Regression] " rguenth at gcc dot gnu.org
2012-04-19 16:06 ` hubicka at ucw dot cz
2012-04-19 18:58 ` dje at gcc dot gnu.org
2012-04-20 15:00 ` hubicka at gcc dot gnu.org
2012-04-20 15:19 ` hubicka at gcc dot gnu.org
2012-04-20 15:28 ` hubicka at gcc dot gnu.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).