This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug ipa/68220] [5 Regression] Devirtualization ICE in record_target_from_binfo, at ipa-devirt.c:2389
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 18 Nov 2015 15:24:20 +0000
- Subject: [Bug ipa/68220] [5 Regression] Devirtualization ICE in record_target_from_binfo, at ipa-devirt.c:2389
- Auto-submitted: auto-generated
- References: <bug-68220-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68220
--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Wed Nov 18 15:23:48 2015
New Revision: 230550
URL: https://gcc.gnu.org/viewcvs?rev=230550&root=gcc&view=rev
Log:
2015-11-18 Richard Biener <rguenther@suse.de>
Backport from mainline
2015-11-07 Jan Hubicka <hubicka@ucw.cz>
PR ipa/68057
PR ipa/68220
* ipa-polymorphic-call.c
(ipa_polymorphic_call_context::restrict_to_inner_type): Fix ordering
issue when offset is out of range.
(contains_type_p): Fix out of range check, clear dynamic flag.
* g++.dg/torture/pr68220.C: New testcase.
* g++.dg/lto/pr68057_0.C: Likewise.
* g++.dg/lto/pr68057_1.C: Likewise.
2015-10-23 Jan Hubicka <hubicka@ucw.cz>
PR ipa/pr67600
* ipa-polymorphic-call.c
(ipa_polymorphic_call_context::get_dynamic_type): Do not confuse
instance offset with offset of outer type.
* g++.dg/torture/pr67600.C: New testcase.
2015-10-12 Richard Biener <rguenther@suse.de>
PR ipa/67783
* ipa-inline-analysis.c (estimate_function_body_sizes): Re-add
code that analyzes IVs on each stmt but in a cheaper way avoiding
quadratic behavior.
2015-10-11 Jan Hubicka <hubicka@ucw.cz>
PR ipa/67056
* ipa-polymorphic-call.c (possible_placement_new): If cur_offset
is negative we don't know the type.
(check_stmt_for_type_change): Skip constructors of non-polymorphic
types as those won't help devirutalization.
* g++.dg/ipa/pr67056.C: New testcase.
2015-08-11 Manuel LÃpez-IbÃÃez <manu@gcc.gnu.org>
PR c/66098
PR c/66711
* diagnostic.c (diagnostic_classify_diagnostic): Take -Werror into
account when deciding what was the command-line status.
* gcc.dg/pragma-diag-3.c: New test.
* gcc.dg/pragma-diag-4.c: New test.
Added:
branches/gcc-5-branch/gcc/testsuite/g++.dg/ipa/pr67056.C
branches/gcc-5-branch/gcc/testsuite/g++.dg/lto/pr68057_0.C
branches/gcc-5-branch/gcc/testsuite/g++.dg/lto/pr68057_1.C
branches/gcc-5-branch/gcc/testsuite/g++.dg/torture/pr67600.C
branches/gcc-5-branch/gcc/testsuite/g++.dg/torture/pr68220.C
branches/gcc-5-branch/gcc/testsuite/gcc.dg/pragma-diag-3.c
branches/gcc-5-branch/gcc/testsuite/gcc.dg/pragma-diag-4.c
Modified:
branches/gcc-5-branch/gcc/ChangeLog
branches/gcc-5-branch/gcc/diagnostic.c
branches/gcc-5-branch/gcc/ipa-inline-analysis.c
branches/gcc-5-branch/gcc/ipa-polymorphic-call.c
branches/gcc-5-branch/gcc/testsuite/ChangeLog