[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-26 Thread paolo dot carlini at oracle dot com


--- Comment #9 from paolo dot carlini at oracle dot com  2009-12-26 11:03 
---
I understand can be closed as fixed now.


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


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



[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-11 Thread hjl at gcc dot gnu dot org


--- Comment #8 from hjl at gcc dot gnu dot org  2009-12-11 23:38 ---
Subject: Bug 42317

Author: hjl
Date: Fri Dec 11 23:36:24 2009
New Revision: 155184

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=155184
Log:
Backport testcases from trunk.

2009-12-11  H.J. Lu  hongjiu...@intel.com

Backport from mainline:
2009-12-11  Dodji Seketeli  do...@redhat.com

PR c++/42225
* g++.dg/template/typedef24.C: New test.
* g++.dg/template/typedef25.C: New test.

2009-12-11  Dodji Seketeli  do...@redhat.com

PR c++/42251
* g++.dg/template/const3.C: New test.

2009-12-10  Jakub Jelinek  ja...@redhat.com

PR c++/42317
* g++.dg/opt/dtor2.C: New test.
* g++.dg/opt/dtor2.h: New file.
* g++.dg/opt/dtor2-aux.cc: New file.

2009-12-10  Jan Hubicka  j...@suse.cz

PR middle-end/42110
* g++.dg/torture/pr42110.C: new file.

2009-12-07  Jakub Jelinek  ja...@redhat.com

PR debug/42244
* gcc.dg/debug/pr42244.c: New test.

2009-12-04  David Daney  dda...@caviumnetworks.com

PR rtl-optimization/42164
* gcc.c-torture/compile/pr42164.c: New test.

2009-12-03  Jason Merrill  ja...@redhat.com

PR c++/41611
* g++.dg/abi/guard2.C: New.

2009-12-03  Dodji Seketeli  do...@redhat.com

PR c++/42217
* g++.dg/other/bitfield4.C: New test.

2009-12-03  Jakub Jelinek  ja...@redhat.com

PR c++/42256
* g++.dg/inherit/thunk11.C: New test.
* g++.dg/inherit/thunk11.h: New file.
* g++.dg/inherit/thunk11-aux.cc: New file.

2009-12-01  Martin Jambor  mjam...@suse.cz

PR tree-optimization/42237
* gcc.c-torture/compile/pr42237.c: New test.

2009-12-01  Paolo Carlini  paolo.carl...@oracle.com

PR c++/42057
* g++.dg/parse/crash54.C: New.

2009-11-30  Martin Jambor  mjam...@suse.cz

PR middle-end/42196
* gcc.c-torture/compile/pr42196-1.c: New test.
* gcc.c-torture/compile/pr42196-2.c: New test.
* gcc.c-torture/compile/pr42196-3.c: New test.

2009-11-30  Dodji Seketeli  do...@redhat.com

PR c++/42069
* g++.dg/template/typedef23.C: New test.

2009-11-29  H.J. Lu  hongjiu...@intel.com

PR tree-optimization/41961
* g++.dg/tree-ssa/pr41961.C: New.

2009-11-29  Ira Rosen  i...@il.ibm.com

PR tree-optimization/42193
* gcc.dg/vect/pr42193.c: New test.

2009-11-28  Richard Guenther  rguent...@suse.de

PR tree-optimization/42183
* g++.dg/torture/pr42183.C: New testcase.

2009-11-27  Martin Jambor  mjam...@suse.cz

PR middle-end/42006
* gcc.c-torture/execute/pr42006.c: New test.

2009-11-27  Michael Matz  m...@suse.de

PR rtl-optimization/42084
* gcc.dg/pr42084.c: New test.

2009-11-27  Michael Matz  m...@suse.de

PR c++/41906
* g++.dg/tree-ssa/pr41906.C: New testcase.

2009-11-26  Michael Matz  m...@suse.de

PR tree-optimization/41905
* g++.dg/tree-ssa/pr41905.C: New testcase.

2009-11-24  Richard Guenther  rguent...@suse.de

PR tree-optimization/42142
* gcc.c-torture/execute/pr42142.c: New testcase.

2009-11-24  Martin Jambor  mjam...@suse.cz

PR tree-optimization/42154
* gcc.c-torture/execute/pr42154.c: New test.

2009-11-21  Martin Jambor  mjam...@suse.cz

PR middle-end/42025
* gcc.c-torture/compile/pr42025-1.c: New test.
* gcc.c-torture/compile/pr42025-2.c: New test.

2009-11-21  Jakub Jelinek  ja...@redhat.com

PR tree-optimization/42078
* gcc.dg/pr42078.c: New test.

Added:
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/abi/guard2.C
  - copied unchanged from r155170, trunk/gcc/testsuite/g++.dg/abi/guard2.C
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/inherit/thunk11-aux.cc
  - copied unchanged from r155170,
trunk/gcc/testsuite/g++.dg/inherit/thunk11-aux.cc
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/inherit/thunk11.C
  - copied unchanged from r155170,
trunk/gcc/testsuite/g++.dg/inherit/thunk11.C
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/inherit/thunk11.h
  - copied unchanged from r155170,
trunk/gcc/testsuite/g++.dg/inherit/thunk11.h
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/opt/dtor2-aux.cc
  - copied unchanged from r155170,
trunk/gcc/testsuite/g++.dg/opt/dtor2-aux.cc
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/opt/dtor2.C
  - copied unchanged from r155170, trunk/gcc/testsuite/g++.dg/opt/dtor2.C
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/opt/dtor2.h
  - copied unchanged from r155170, trunk/gcc/testsuite/g++.dg/opt/dtor2.h
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/other/bitfield4.C
  - copied unchanged from r155170,

[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-10 Thread jakub at gcc dot gnu dot org


--- Comment #7 from jakub at gcc dot gnu dot org  2009-12-10 21:59 ---
Subject: Bug 42317

Author: jakub
Date: Thu Dec 10 21:58:49 2009
New Revision: 155143

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=155143
Log:
PR c++/42317
* cgraph.h (struct cgraph_node): Add same_comdat_group field.
* cgraph.c (cgraph_remove_node): Unchain node from same_comdat_group
circular list.
(cgraph_node_can_be_local_p): Return false for DECL_COMDAT with
node-same_comdat_group.
* ipa.c (cgraph_remove_unreachable_nodes): For any reachable node
mark all its same_comdat_group nodes as also reachable.
(cgraph_externally_visible_p): Return true even if any of
same_comdat_group nodes has address taken.
* lto-cgraph.c (lto_output_node): Stream out same_comdat_group.
(output_cgraph): Ensure other same_comdat_group nodes are also
included.
(input_node): Stream in same_comdat_group.
(input_cgraph_1): Fix up same_comdat_group fields from references
to pointers.
* cgraphunit.c (cgraph_analyze_functions): Mark all other
same_comdat_group nodes as reachable.
(cgraph_mark_functions_to_output): For each node-process process
also other same_comdat_group nodes.
* ipa-inline.c (cgraph_clone_inlined_nodes): Don't reuse nodes
with same_comdat_group non-NULL.
(cgraph_mark_inline_edge): Likewise.

* decl2.c (cp_write_global_declarations): Clear DECL_EXTERNAL
also on all other functions in the same comdat group.
* optimize.c (maybe_clone_body): Also optimize virtual implicit
dtors.  For virtual comdat dtors tell cgraph that base and deleting
dtor are in the same comdat group.

* config/abi/pre/gnu.ver: Don't export certain base dtors that
weren't previously exported.

* g++.dg/opt/dtor2.C: New test.
* g++.dg/opt/dtor2.h: New file.
* g++.dg/opt/dtor2-aux.cc: New file.

Added:
trunk/gcc/testsuite/g++.dg/opt/dtor2-aux.cc
trunk/gcc/testsuite/g++.dg/opt/dtor2.C
trunk/gcc/testsuite/g++.dg/opt/dtor2.h
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cgraph.c
trunk/gcc/cgraph.h
trunk/gcc/cgraphunit.c
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/decl2.c
trunk/gcc/cp/optimize.c
trunk/gcc/ipa-inline.c
trunk/gcc/ipa.c
trunk/gcc/lto-cgraph.c
trunk/gcc/testsuite/ChangeLog
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/config/abi/pre/gnu.ver


-- 


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



[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-08 Thread debian-gcc at lists dot debian dot org


--- Comment #2 from debian-gcc at lists dot debian dot org  2009-12-08 
08:56 ---
with the proposed patch applied, the build fails now with:

virtual __gnu_cxx::stdio_sync_filebufwchar_t::~stdio_sync_filebuf()/243(191)
@0x4093abd0 availability:available 22 time, 11 benefit (
24 after inlining) 4 size, 2 benefit (6 after inlining) reachable body
externally_visible finalized inlinable
  called by: 
  calls: void operator delete(void*)/317 (1.00 per call)
__gnu_cxx::stdio_sync_filebufwchar_t::~stdio_sync_filebuf()/113 (inlined) (1
.00 per call) 
../../../../src/libstdc++-v3/src/ios_init.cc:199:1: internal compiler error:
failed to reclaim unneeded function
Please submit a full bug report,
with preprocessed source if appropriate.

the file ios_init.ii builds with -O0, but not with -O1 or higher

  Matthias


-- 

debian-gcc at lists dot debian dot org changed:

   What|Removed |Added

 CC||debian-gcc at lists dot
   ||debian dot org


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



[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-08 Thread debian-gcc at lists dot debian dot org


--- Comment #3 from debian-gcc at lists dot debian dot org  2009-12-08 
08:58 ---
Created an attachment (id=19256)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=19256action=view)
preprocessed source


-- 


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



[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-08 Thread jakub at gcc dot gnu dot org


--- Comment #4 from jakub at gcc dot gnu dot org  2009-12-08 09:03 ---
You were testing the patch attached here (i.e. version before
bootstrap/regtest) instead of the one posted to gcc-patches (tested), right?
http://gcc.gnu.org/ml/gcc-patches/2009-12/msg00385.html


-- 


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



[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-08 Thread doko at ubuntu dot com


--- Comment #5 from doko at ubuntu dot com  2009-12-08 12:36 ---
yes, re-testing with the version from the ML. currently passed the libstdc++
build.


-- 


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



[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-08 Thread debian-gcc at lists dot debian dot org


--- Comment #6 from debian-gcc at lists dot debian dot org  2009-12-08 
12:37 ---
*** Bug 42323 has been marked as a duplicate of this bug. ***


-- 


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



[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-07 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1
   Target Milestone|--- |4.5.0


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



[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-07 Thread jakub at gcc dot gnu dot org


--- Comment #1 from jakub at gcc dot gnu dot org  2009-12-07 12:55 ---
Created an attachment (id=19248)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=19248action=view)
gcc45-pr42317.patch

Untested patch to implement the (admittedly ugly) cgraph changes to force
D0 to be output together with D[12] aliases in D5 comdat groups and accepts
some limited bloat in rare cases (in exchange of often saving space because
more dtors can be same body optimized).


-- 


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



[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-07 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||hubicka at gcc dot gnu dot
   ||org
   Priority|P1  |P3
   Target Milestone|4.5.0   |---


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



[Bug c++/42317] [4.5 Regression] Issues with comdat virtual dtors

2009-12-07 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Priority|P3  |P1
   Target Milestone|--- |4.5.0


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