This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/80539] [5/6/7/8 Regression] gcc ICE at -O2 and above on valid code on x86_64-linux-gnu in "chrec_fold_plus_poly_poly"
- 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: Thu, 27 Apr 2017 08:55:09 +0000
- Subject: [Bug middle-end/80539] [5/6/7/8 Regression] gcc ICE at -O2 and above on valid code on x86_64-linux-gnu in "chrec_fold_plus_poly_poly"
- Auto-submitted: auto-generated
- References: <bug-80539-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80539
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Hmm, SCEV analysis relies on loop-closed SSA form to handle expressions in
outer loops that use inner loop final values. Otherwise we miss to do the
required compute_overall_effects_of_inner_loop which is triggered by exit
PHIs being present.
That means effectively everyone doing niter analysis needs loop-closed SSA
form :/
Or we make SCEV analysis more resistant, in this case instead of asserting
return chrec_dont_know.
Testing patch.