[Bug ipa/78365] [7 Regression] ICE in determine_value_range, at tree-ssa-loo p-niter.c:413

2017-01-16 Thread jamborm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78365

--- Comment #13 from Martin Jambor  ---
(In reply to Andrew Pinski from comment #11)
> Looks like a GC issue as I was reducing the code but removing the comments
> and empty lines caused the testcase to no longer crash.  Adding --param
> ggc-min-expand=1 --param ggc-min-heapsize=1 allowed it to ICE now.

Oops, I forgot that struct ipa_node_params is not a GTYed structure.  Will do
that first thing tomorrow.

[Bug ipa/78365] [7 Regression] ICE in determine_value_range, at tree-ssa-loo p-niter.c:413

2017-01-16 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78365

--- Comment #12 from Andrew Pinski  ---
(In reply to Andrew Pinski from comment #11)
> (In reply to Andrew Senkevich from comment #10)
> > This commit breaks 5 SPEC CPU 2006 benchmarks (416.gamess, 454.calculix,
> > 459.GemsFDTD, 465.tonto, 481.wrf) with ICE on x86_64 (and looks like on
> > aarch64 the same - https://gcc.gnu.org/ml/gcc/2017-01/msg00126.html).
> 
> Looks like a GC issue as I was reducing the code but removing the comments
> and empty lines caused the testcase to no longer crash.  Adding --param
> ggc-min-expand=1 --param ggc-min-heapsize=1 allowed it to ICE now.

Filed the reduced testcase as PR 79108.

[Bug ipa/78365] [7 Regression] ICE in determine_value_range, at tree-ssa-loo p-niter.c:413

2017-01-16 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78365

--- Comment #11 from Andrew Pinski  ---
(In reply to Andrew Senkevich from comment #10)
> This commit breaks 5 SPEC CPU 2006 benchmarks (416.gamess, 454.calculix,
> 459.GemsFDTD, 465.tonto, 481.wrf) with ICE on x86_64 (and looks like on
> aarch64 the same - https://gcc.gnu.org/ml/gcc/2017-01/msg00126.html).

Looks like a GC issue as I was reducing the code but removing the comments and
empty lines caused the testcase to no longer crash.  Adding --param
ggc-min-expand=1 --param ggc-min-heapsize=1 allowed it to ICE now.

[Bug ipa/78365] [7 Regression] ICE in determine_value_range, at tree-ssa-loo p-niter.c:413

2017-01-16 Thread andrew.n.senkevich at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78365

Andrew Senkevich  changed:

   What|Removed |Added

 CC||andrew.n.senkevich at gmail 
dot co
   ||m, pinskia at gmail dot com

--- Comment #10 from Andrew Senkevich  ---
This commit breaks 5 SPEC CPU 2006 benchmarks (416.gamess, 454.calculix,
459.GemsFDTD, 465.tonto, 481.wrf) with ICE on x86_64 (and looks like on aarch64
the same - https://gcc.gnu.org/ml/gcc/2017-01/msg00126.html).

commit 72b16d90bd23d9c5758c165f8258522871c755ff
Author: jamborm 
Date:   Mon Jan 9 18:26:37 2017 +

[PR 78365] Prudent type handling in IPA VR-prop

[Bug ipa/78365] [7 Regression] ICE in determine_value_range, at tree-ssa-loo p-niter.c:413

2017-01-09 Thread jamborm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78365

Martin Jambor  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #9 from Martin Jambor  ---
Fixed.

[Bug ipa/78365] [7 Regression] ICE in determine_value_range, at tree-ssa-loo p-niter.c:413

2017-01-09 Thread jamborm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78365

--- Comment #8 from Martin Jambor  ---
Author: jamborm
Date: Mon Jan  9 18:26:37 2017
New Revision: 244232

URL: https://gcc.gnu.org/viewcvs?rev=244232=gcc=rev
Log:
[PR 78365] Prudent type handling in IPA VR-prop

2017-01-09  Martin Jambor  

PR ipa/78365
PR ipa/78599
* ipa-prop.h (ipa_jump_func): Swap positions of vr_known and m_vr.
* ipa-cp.c (ipa_vr_operation_and_type_effects): New function.
(propagate_vr_accross_jump_function): Use the above function for all
value range computations for pass-through jump functions and type
converasion from explicit value range values.
(ipcp_propagate_stage): Do not attempt to deduce types of formal
parameters from TYPE_ARG_TYPES.
* ipa-prop.c (ipa_write_jump_function): Remove trailing whitespace.
(ipa_write_node_info): Stream type of the actual argument.
(ipa_read_node_info): Likewise. Also remove trailing whitespace.

testsuite/
* gcc.dg/torture/pr78365.c: New test.



Added:
trunk/gcc/testsuite/gcc.dg/torture/pr78365.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ipa-cp.c
trunk/gcc/ipa-prop.c
trunk/gcc/ipa-prop.h
trunk/gcc/testsuite/ChangeLog