https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66233
Richard Biener rguenth at gcc dot gnu.org changed:
What|Removed |Added
CC||doko at gcc
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66233
--- Comment #6 from Jakub Jelinek jakub at gcc dot gnu.org ---
Author: jakub
Date: Fri May 22 08:12:08 2015
New Revision: 223522
URL: https://gcc.gnu.org/viewcvs?rev=223522root=gccview=rev
Log:
Backported from mainline
2015-05-21
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66233
--- Comment #2 from Jakub Jelinek jakub at gcc dot gnu.org ---
Sounds like gimple folding issue.
We have:
vect__4.9_31 = (vector(4) float) { 0, 1, 2, 3 };
vect__5.10_32 = (vector(4) unsigned int) vect__4.9_31;
where the first stmt's rhs_code is
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66233
Jakub Jelinek jakub at gcc dot gnu.org changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66233
--- Comment #3 from Jakub Jelinek jakub at gcc dot gnu.org ---
Seems this is the
/* Handle cases of two conversions in a row. */
patterns in match.pd that are causing this.
I'd say the bug is that those simplifications are just handling
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66233
--- Comment #4 from Jakub Jelinek jakub at gcc dot gnu.org ---
Indeed, in 4.9 this is in tree-ssa-forwprop.c (combine_conversions) and in
fold-const.c (fold_unary_loc).
Perhaps we need {inter,inside,final}_vec_{int,float,unsignedp} variables too
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66233
--- Comment #5 from Jakub Jelinek jakub at gcc dot gnu.org ---
Author: jakub
Date: Thu May 21 19:17:28 2015
New Revision: 223500
URL: https://gcc.gnu.org/viewcvs?rev=223500root=gccview=rev
Log:
PR tree-optimization/66233
*