https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
Jakub Jelinek changed:
What|Removed |Added
Target Milestone|4.9.1 |4.9.2
--- Comment #16 from Jakub Jelinek
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #15 from Marc Glisse ---
Seems related to PR 57328.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #14 from vincenzo Innocente ---
provided that future patches will make the code in comment 1 and 2 (and bar) go
vectorize is fine with me.
if it ends up to vectorize also with "bool" instead of "int" even better.
(I am not sure that
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #13 from vincenzo Innocente ---
I confirm that with last patch the regression is gone also in a more complex
actual application I had.
The regression concerns only comment 2 and 3.
all the other cases in comment 1 were various attem
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #12 from Richard Biener ---
void bar2() {
for (int i=0; i<1024; ++i) {
k[i] = x[i]>0; j[i] = w[i]<0;
z[i] = ( k[i] & j[i]) ? z[i] : y[i];
}
}
has similar issues (non-single-uses due to CSE and propagating from the
conversi
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #11 from Richard Biener ---
(In reply to Richard Biener from comment #10)
> Created attachment 32805 [details]
> patch fixing the regression
>
> This would fix the regression (also without the previous patch?)
It does, on the 4.9 br
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #10 from Richard Biener ---
Created attachment 32805
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=32805&action=edit
patch fixing the regression
This would fix the regression (also without the previous patch?)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #9 from Richard Biener ---
Author: rguenth
Date: Fri May 16 11:21:11 2014
New Revision: 210514
URL: http://gcc.gnu.org/viewcvs?rev=210514&root=gcc&view=rev
Log:
2014-05-16 Richard Biener
PR tree-optimization/61194
* tree-
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #8 from rguenther at suse dot de ---
On Fri, 16 May 2014, vincenzo.innocente at cern dot ch wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
>
> --- Comment #7 from vincenzo Innocente ---
> great!
>
> the original versi
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #7 from vincenzo Innocente ---
great!
the original version (that vectorized in 4.8.1)
void barX() {
for (int i=0; i<1024; ++i) {
k[i] = (x[i]>0) & (w[i]0) & (w[i]0.5f);
z[i] = c ? y[i] : z[i];
}
}
vectorized
if (c) z[i] =
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #6 from Richard Biener ---
Created attachment 32803
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=32803&action=edit
patch
Like this.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #5 from vincenzo Innocente ---
of course if you can make
z[i] = ( (x[i]>0) & (w[i]<0)) ? z[i] : y[i];
to vectorize would be even better!
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
--- Comment #4 from Richard Biener ---
Actually the vectorizer punts on the comparisons itself. The pattern
recognizer handles some of them as
patt_10 = _4 > 0.0 ? 1 : 0;
but not those feeding the BIT expressions which would need to be widen
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61194
Richard Biener changed:
What|Removed |Added
Status|UNCONFIRMED |ASSIGNED
Last reconfirmed|
14 matches
Mail list logo