* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
@ 2010-10-07 13:56 ` rguenth at gcc dot gnu.org
2010-10-07 13:58 ` rguenth at gcc dot gnu.org
` (10 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: rguenth at gcc dot gnu.org @ 2010-10-07 13:56 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2010.10.07 13:55:56
CC| |hubicka at gcc dot gnu.org,
| |jamborm at gcc dot gnu.org
Target Milestone|--- |4.6.0
Ever Confirmed|0 |1
--- Comment #2 from Richard Guenther <rguenth at gcc dot gnu.org> 2010-10-07 13:55:56 UTC ---
Confirmed.
This is another de-virtualization issue.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
2010-10-07 13:56 ` [Bug tree-optimization/45934] " rguenth at gcc dot gnu.org
@ 2010-10-07 13:58 ` rguenth at gcc dot gnu.org
2010-10-07 16:17 ` jason at gcc dot gnu.org
` (9 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: rguenth at gcc dot gnu.org @ 2010-10-07 13:58 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jason at gcc dot gnu.org
--- Comment #3 from Richard Guenther <rguenth at gcc dot gnu.org> 2010-10-07 13:58:12 UTC ---
It is in the end similar to PR45734 as the object gets piecewise destructed,
changing its effective type. Jason?
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
2010-10-07 13:56 ` [Bug tree-optimization/45934] " rguenth at gcc dot gnu.org
2010-10-07 13:58 ` rguenth at gcc dot gnu.org
@ 2010-10-07 16:17 ` jason at gcc dot gnu.org
2010-10-26 4:03 ` jakub at gcc dot gnu.org
` (8 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jason at gcc dot gnu.org @ 2010-10-07 16:17 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
--- Comment #4 from Jason Merrill <jason at gcc dot gnu.org> 2010-10-07 16:16:42 UTC ---
This testcase is valid. The effective type of an object for virtual dispatch
changes during the construction/destruction process; see 12.7 in the standard.
So in addition to the static type of the object, the devirtualizer needs to
know when a subobject is under construction or destruction.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
` (2 preceding siblings ...)
2010-10-07 16:17 ` jason at gcc dot gnu.org
@ 2010-10-26 4:03 ` jakub at gcc dot gnu.org
2010-11-12 18:23 ` jamborm at gcc dot gnu.org
` (7 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jakub at gcc dot gnu.org @ 2010-10-26 4:03 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P1
CC| |jakub at gcc dot gnu.org
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
` (3 preceding siblings ...)
2010-10-26 4:03 ` jakub at gcc dot gnu.org
@ 2010-11-12 18:23 ` jamborm at gcc dot gnu.org
2010-11-22 22:43 ` jamborm at gcc dot gnu.org
` (6 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jamborm at gcc dot gnu.org @ 2010-11-12 18:23 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
Martin Jambor <jamborm at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
AssignedTo|unassigned at gcc dot |jamborm at gcc dot gnu.org
|gnu.org |
--- Comment #5 from Martin Jambor <jamborm at gcc dot gnu.org> 2010-11-12 18:17:37 UTC ---
Mine.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
` (4 preceding siblings ...)
2010-11-12 18:23 ` jamborm at gcc dot gnu.org
@ 2010-11-22 22:43 ` jamborm at gcc dot gnu.org
2010-12-16 15:30 ` jamborm at gcc dot gnu.org
` (5 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jamborm at gcc dot gnu.org @ 2010-11-22 22:43 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
--- Comment #6 from Martin Jambor <jamborm at gcc dot gnu.org> 2010-11-22 22:07:17 UTC ---
Patch posted to the mailing list:
http://gcc.gnu.org/ml/gcc-patches/2010-11/msg02296.html
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
` (5 preceding siblings ...)
2010-11-22 22:43 ` jamborm at gcc dot gnu.org
@ 2010-12-16 15:30 ` jamborm at gcc dot gnu.org
2010-12-22 12:57 ` jamborm at gcc dot gnu.org
` (4 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jamborm at gcc dot gnu.org @ 2010-12-16 15:30 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
--- Comment #7 from Martin Jambor <jamborm at gcc dot gnu.org> 2010-12-16 15:30:06 UTC ---
I have re-posted the patch series to address this:
http://gcc.gnu.org/ml/gcc-patches/2010-12/msg01213.html
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
` (6 preceding siblings ...)
2010-12-16 15:30 ` jamborm at gcc dot gnu.org
@ 2010-12-22 12:57 ` jamborm at gcc dot gnu.org
2010-12-29 8:45 ` jamborm at gcc dot gnu.org
` (3 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jamborm at gcc dot gnu.org @ 2010-12-22 12:57 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
--- Comment #8 from Martin Jambor <jamborm at gcc dot gnu.org> 2010-12-22 12:57:00 UTC ---
Author: jamborm
Date: Wed Dec 22 12:56:54 2010
New Revision: 168168
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=168168
Log:
2010-12-22 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/45934
PR tree-optimization/46302
PR tree-optimization/46987
* gimple-fold.c (get_base_binfo_for_type): Removed.
(gimple_get_relevant_ref_binfo): Likewise.
(gimple_fold_obj_type_ref_call): Dumb down to 4.5 functionality,
removed parameter inplace, updated the caller.
* gimple.h (gimple_get_relevant_ref_binfo): Remove declaration.
* ipa-cp.c (ipcp_propagate_types): Do not derive types from constants.
(ipcp_discover_new_direct_edges): Do not do devirtualization based on
constants.
* ipa-prop.c (compute_known_type_jump_func): Use
get_ref_base_and_extent and get_binfo_at_offset instead of
gimple_get_relevant_ref_binfo.
(compute_known_type_jump_func): Likewise.
(update_jump_functions_after_inlining): Do not derive types from
constants.
(try_make_edge_direct_virtual_call): Likewise.
* tree.c (get_binfo_at_offset): Get type from non-artificial fields.
* testsuite/g++.dg/ipa/ipcp-ivi-1.C: Removed.
* testsuite/g++.dg/ipa/ivinline-6.C: Likewise.
* testsuite/g++.dg/otr-fold-1.C: Likewise.
* testsuite/g++.dg/otr-fold-2.C: Likewise.
* testsuite/g++.dg/tree-ssa/pr43411.C: Xfail dump scan.
* testsuite/g++.dg/tree-ssa/pr45605.C: Likewise.
* testsuite/g++.dg/tree-ssa/pr46987.C: New test.
Added:
trunk/gcc/testsuite/g++.dg/tree-ssa/pr46987.C
Removed:
trunk/gcc/testsuite/g++.dg/ipa/ipcp-ivi-1.C
trunk/gcc/testsuite/g++.dg/ipa/ivinline-6.C
trunk/gcc/testsuite/g++.dg/otr-fold-1.C
trunk/gcc/testsuite/g++.dg/otr-fold-2.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/gimple-fold.c
trunk/gcc/gimple.h
trunk/gcc/ipa-cp.c
trunk/gcc/ipa-prop.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.dg/tree-ssa/pr43411.C
trunk/gcc/testsuite/g++.dg/tree-ssa/pr45605.C
trunk/gcc/tree.c
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
` (7 preceding siblings ...)
2010-12-22 12:57 ` jamborm at gcc dot gnu.org
@ 2010-12-29 8:45 ` jamborm at gcc dot gnu.org
2011-01-14 23:54 ` jamborm at gcc dot gnu.org
` (2 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jamborm at gcc dot gnu.org @ 2010-12-29 8:45 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
--- Comment #9 from Martin Jambor <jamborm at gcc dot gnu.org> 2010-12-29 08:45:34 UTC ---
This still needs at least the following patch in the series
(http://gcc.gnu.org/ml/gcc-patches/2010-12/msg01215.html) in order to
be considered fixed.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
` (8 preceding siblings ...)
2010-12-29 8:45 ` jamborm at gcc dot gnu.org
@ 2011-01-14 23:54 ` jamborm at gcc dot gnu.org
2011-01-15 16:51 ` hubicka at gcc dot gnu.org
2011-01-17 14:50 ` jamborm at gcc dot gnu.org
11 siblings, 0 replies; 13+ messages in thread
From: jamborm at gcc dot gnu.org @ 2011-01-14 23:54 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
--- Comment #10 from Martin Jambor <jamborm at gcc dot gnu.org> 2011-01-14 23:01:02 UTC ---
Author: jamborm
Date: Fri Jan 14 23:00:59 2011
New Revision: 168825
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=168825
Log:
2011-01-14 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/45934
PR tree-optimization/46302
* ipa-prop.c (type_change_info): New type.
(stmt_may_be_vtbl_ptr_store): New function.
(check_stmt_for_type_change): Likewise.
(detect_type_change): Likewise.
(detect_type_change_ssa): Likewise.
(compute_complex_assign_jump_func): Check for dynamic type change.
(compute_complex_ancestor_jump_func): Likewise.
(compute_known_type_jump_func): Likewise.
(compute_scalar_jump_functions): Likewise.
(ipa_analyze_virtual_call_uses): Likewise.
(ipa_analyze_node): Push and pop cfun, set current_function_decl.
* testsuite/g++.dg/ipa/devirt-c-1.C: New test.
* testsuite/g++.dg/ipa/devirt-c-2.C: Likewise.
* testsuite/g++.dg/ipa/devirt-c-3.C: Likewise.
* testsuite/g++.dg/ipa/devirt-c-4.C: Likewise.
* testsuite/g++.dg/ipa/devirt-c-5.C: Likewise.
* testsuite/g++.dg/ipa/devirt-c-6.C: Likewise.
* testsuite/g++.dg/ipa/devirt-6.C: Likewise.
* testsuite/g++.dg/ipa/devirt-d-1.C: Likewise.
* testsuite/g++.dg/torture/pr45934.C: Likewise.
Added:
trunk/gcc/testsuite/g++.dg/ipa/devirt-6.C
trunk/gcc/testsuite/g++.dg/ipa/devirt-c-1.C
trunk/gcc/testsuite/g++.dg/ipa/devirt-c-2.C
trunk/gcc/testsuite/g++.dg/ipa/devirt-c-3.C
trunk/gcc/testsuite/g++.dg/ipa/devirt-c-4.C
trunk/gcc/testsuite/g++.dg/ipa/devirt-c-5.C
trunk/gcc/testsuite/g++.dg/ipa/devirt-c-6.C
trunk/gcc/testsuite/g++.dg/ipa/devirt-d-1.C
trunk/gcc/testsuite/g++.dg/torture/pr45934.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ipa-prop.c
trunk/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
` (9 preceding siblings ...)
2011-01-14 23:54 ` jamborm at gcc dot gnu.org
@ 2011-01-15 16:51 ` hubicka at gcc dot gnu.org
2011-01-17 14:50 ` jamborm at gcc dot gnu.org
11 siblings, 0 replies; 13+ messages in thread
From: hubicka at gcc dot gnu.org @ 2011-01-15 16:51 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
--- Comment #11 from Jan Hubicka <hubicka at gcc dot gnu.org> 2011-01-15 16:37:37 UTC ---
Fixed now?
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45934] [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions
2010-10-07 13:22 [Bug tree-optimization/45934] New: [4.6 Regression] g++.old-deja/g++.other/dtor5.C FAILs with -finline-small-functions zsojka at seznam dot cz
` (10 preceding siblings ...)
2011-01-15 16:51 ` hubicka at gcc dot gnu.org
@ 2011-01-17 14:50 ` jamborm at gcc dot gnu.org
11 siblings, 0 replies; 13+ messages in thread
From: jamborm at gcc dot gnu.org @ 2011-01-17 14:50 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45934
Martin Jambor <jamborm at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
--- Comment #12 from Martin Jambor <jamborm at gcc dot gnu.org> 2011-01-17 14:45:13 UTC ---
It is.
^ permalink raw reply [flat|nested] 13+ messages in thread