[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2018-03-07 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #19 from Martin Liška  ---
Should be fixed on all active branches.

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2018-03-07 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #18 from Martin Liška  ---
Author: marxin
Date: Wed Mar  7 09:45:44 2018
New Revision: 258323

URL: https://gcc.gnu.org/viewcvs?rev=258323&root=gcc&view=rev
Log:
Backport r257490

2018-03-07  Martin Liska  

Backport from mainline
2018-02-08  Jan Hubicka  

PR ipa/81360
* cgraph.h (symtab_node::output_to_lto_symbol_table_p): Declare
* symtab.c: Include builtins.h
(symtab_node::output_to_lto_symbol_table_p): Move here
from lto-streamer-out.c:output_symbol_p.
* lto-streamer-out.c (write_symbol): Turn early exit to assert.
(output_symbol_p): Move all logic to symtab.c
(produce_symtab): Update.
2018-03-07  Martin Liska  

Backport from mainline
2018-02-08  Jan Hubicka  

PR ipa/81360
* lto.c (unify_scc): Register prevailing trees, not trees to be freed.
(read_cgraph_and_symbols): Use
symtab_node::output_to_lto_symbol_table_p.

Modified:
branches/gcc-6-branch/gcc/ChangeLog
branches/gcc-6-branch/gcc/cgraph.h
branches/gcc-6-branch/gcc/lto-streamer-out.c
branches/gcc-6-branch/gcc/lto/ChangeLog
branches/gcc-6-branch/gcc/lto/lto.c
branches/gcc-6-branch/gcc/symtab.c
branches/gcc-6-branch/gcc/tree.c

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2018-03-06 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #17 from Martin Liška  ---
Author: marxin
Date: Tue Mar  6 20:04:20 2018
New Revision: 258289

URL: https://gcc.gnu.org/viewcvs?rev=258289&root=gcc&view=rev
Log:
Backport r257490

2018-03-06  Martin Liska  

Backport from mainline
2018-02-08  Jan Hubicka  

PR ipa/81360
* cgraph.h (symtab_node::output_to_lto_symbol_table_p): Declare
* symtab.c: Include builtins.h
(symtab_node::output_to_lto_symbol_table_p): Move here
from lto-streamer-out.c:output_symbol_p.
* lto-streamer-out.c (write_symbol): Turn early exit to assert.
(output_symbol_p): Move all logic to symtab.c
(produce_symtab): Update.
2018-03-06  Martin Liska  

Backport from mainline
2018-02-08  Jan Hubicka  

PR ipa/81360
* lto.c (unify_scc): Register prevailing trees, not trees to be freed.
(read_cgraph_and_symbols): Use
symtab_node::output_to_lto_symbol_table_p.

Modified:
branches/gcc-7-branch/gcc/ChangeLog
branches/gcc-7-branch/gcc/cgraph.h
branches/gcc-7-branch/gcc/lto-streamer-out.c
branches/gcc-7-branch/gcc/lto/ChangeLog
branches/gcc-7-branch/gcc/lto/lto.c
branches/gcc-7-branch/gcc/symtab.c
branches/gcc-7-branch/gcc/tree.c

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2018-02-08 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #16 from Jan Hubicka  ---
Author: hubicka
Date: Thu Feb  8 14:51:51 2018
New Revision: 257490

URL: https://gcc.gnu.org/viewcvs?rev=257490&root=gcc&view=rev
Log:
PR ipa/81360
* cgraph.h (symtab_node::output_to_lto_symbol_table_p): Declare
* symtab.c: Include builtins.h
(symtab_node::output_to_lto_symbol_table_p): Move here
from lto-streamer-out.c:output_symbol_p.
* lto-streamer-out.c (write_symbol): Turn early exit to assert.
(output_symbol_p): Move all logic to symtab.c
(produce_symtab): Update.

* lto.c (unify_scc): Register prevailing trees, not trees to be freed.
(read_cgraph_and_symbols): Use
symtab_node::output_to_lto_symbol_table_p.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/cgraph.h
trunk/gcc/lto-streamer-out.c
trunk/gcc/lto/ChangeLog
trunk/gcc/lto/lto.c
trunk/gcc/symtab.c
trunk/gcc/tree.c

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2018-02-05 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #15 from Martin Liška  ---
Should(In reply to Christophe Lyon from comment #14)
> The new test fails on arm and aarch64:
> FAIL: g++.dg/torture/pr81360.C   -O2 -flto -fuse-linker-plugin
> -fno-fat-lto-objects   scan-ipa-dump icf "Equal symbols: 0"

Should be fixed in r257230.

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2018-01-31 Thread clyon at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

Christophe Lyon  changed:

   What|Removed |Added

 CC||clyon at gcc dot gnu.org

--- Comment #14 from Christophe Lyon  ---
The new test fails on arm and aarch64:
FAIL: g++.dg/torture/pr81360.C   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects   scan-ipa-dump icf "Equal symbols: 0"

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2018-01-30 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

Jan Hubicka  changed:

   What|Removed |Added

 Status|REOPENED|RESOLVED
 Resolution|--- |FIXED

--- Comment #13 from Jan Hubicka  ---
Fixed.

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2018-01-30 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #12 from Jan Hubicka  ---
Author: hubicka
Date: Tue Jan 30 13:23:39 2018
New Revision: 257184

URL: https://gcc.gnu.org/viewcvs?rev=257184&root=gcc&view=rev
Log:

PR ipa/81360
* ipa-inline.c (can_inline_edge_p): Break out late tests to...
(can_inline_edge_by_limits_p): ... here.
(can_early_inline_edge_p, check_callers,
update_caller_keys, update_callee_keys, recursive_inlining,
add_new_edges_to_heap, speculation_useful_p,
inline_small_functions,
inline_small_functions, flatten_function,
inline_to_all_callers_1): Update.

* g++.dg/torture/pr81360.C: New testcase

Added:
trunk/gcc/testsuite/g++.dg/torture/pr81360.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ipa-inline.c
trunk/gcc/testsuite/ChangeLog

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2018-01-22 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #11 from Jan Hubicka  ---
Hmm, this is different issue introduced by Richard's change to reorder can
inline and want inline.

2018-01-14  Richard Sandiford 

* ipa-inline.c (want_inline_small_function_p): Return false if  
inlining has already failed with CIF_FINAL_ERROR.   
(update_caller_keys): Call want_inline_small_function_p before  
can_inline_edge_p.  
(update_callee_keys): Likewise. 


We want the very basic tests to come first i guess

Honza

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2018-01-22 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

Martin Liška  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|FIXED   |---

--- Comment #10 from Martin Liška  ---
I have smaller test-case:

$ ./xgcc -B.  /home/marxin/Programming/gcc/gcc/testsuite/g++.dg/ipa/pr63595.C
-fno-early-inlining -O2
during IPA pass: inline
/home/marxin/Programming/gcc/gcc/testsuite/g++.dg/ipa/pr63595.C:77:1: internal
compiler error: in estimate_edge_growth, at ipa-inline.h:85
 }
 ^
0x1e34c94 estimate_edge_growth
../../gcc/ipa-inline.h:84
0x1e36de7 want_inline_small_function_p
../../gcc/ipa-inline.c:747
0x1e38e86 update_caller_keys
../../gcc/ipa-inline.c:1320
0x1e3af13 inline_small_functions
../../gcc/ipa-inline.c:2022
0x1e3c65c ipa_inline
../../gcc/ipa-inline.c:2455
0x1e3d35a execute
../../gcc/ipa-inline.c:2861

Honza can you please take a look?

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2018-01-17 Thread dcb314 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #9 from David Binderman  ---
Created attachment 43163
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=43163&action=edit
gzipped C source code

The original code now seems to have broken between date 20180112 and
today, 20180117.

$ ~/gcc/results/bin/gcc -c -w -O2 bug366.c
during IPA pass: inline
che_heuristics.c:534: internal compiler error: in estimate_edge_growth, at
ipa-inline.h:85
0x1786d40 estimate_edge_growth
../../trunk/gcc/ipa-inline.h:84
0x178ac8f want_inline_small_function_p
../../trunk/gcc/ipa-inline.c:747
0x178b542 update_caller_keys
../../trunk/gcc/ipa-inline.c:1320
0x178cece inline_small_functions
../../trunk/gcc/ipa-inline.c:2022

Reduced code seems fine, however.

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2017-11-24 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

Jan Hubicka  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #8 from Jan Hubicka  ---
Fixed.

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2017-11-19 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #7 from Jan Hubicka  ---
Author: hubicka
Date: Sun Nov 19 19:58:12 2017
New Revision: 254937

URL: https://gcc.gnu.org/viewcvs?rev=254937&root=gcc&view=rev
Log:
PR ipa/81360
* ipa-inline.c (can_inline_edge_p): Also check that caller is optimized
* gcc.c-torture/compile/pr81360.c: New testcase.

Added:
trunk/gcc/testsuite/gcc.c-torture/compile/pr81360.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ipa-inline.c
trunk/gcc/testsuite/ChangeLog

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2017-11-19 Thread hubicka at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

Jan Hubicka  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |hubicka at gcc dot 
gnu.org

--- Comment #6 from Jan Hubicka  ---
Will take a look

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2017-10-21 Thread hunter at openrobotics dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

Hunter L. Allen  changed:

   What|Removed |Added

 CC||hunter at openrobotics dot org

--- Comment #5 from Hunter L. Allen  ---
I'm also affected.

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2017-09-21 Thread dcb314 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #4 from David Binderman  ---
(In reply to David Binderman from comment #3)
> (In reply to Martin Liška from comment #2)
> > Confirmed, started with r250048.
> 
> Still going wrong, nearly a month later.

Still broken another month later.

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2017-08-14 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #4 from Martin Liška  ---
*** Bug 81465 has been marked as a duplicate of this bug. ***

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2017-08-09 Thread dcb314 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

--- Comment #3 from David Binderman  ---
(In reply to Martin Liška from comment #2)
> Confirmed, started with r250048.

Still going wrong, nearly a month later.

Revision 250983 seems to demonstrate the problem.

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2017-07-17 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

Richard Biener  changed:

   What|Removed |Added

   Priority|P3  |P1

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2017-07-10 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2017-07-10
 Ever confirmed|0   |1

--- Comment #2 from Martin Liška  ---
Confirmed, started with r250048.

[Bug ipa/81360] [8 Regression] ice in estimate_edge_growth, at ipa-inline.h:86

2017-07-08 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81360

Andrew Pinski  changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
 CC||marxin at gcc dot gnu.org
  Component|c   |ipa
Version|7.0 |8.0
   Target Milestone|--- |8.0
Summary|ice in  |[8 Regression] ice in
   |estimate_edge_growth, at|estimate_edge_growth, at
   |ipa-inline.h:86 |ipa-inline.h:86