https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96481
--- Comment #6 from Richard Biener ---
double a[2];
typedef double v2df __attribute__((vector_size(16)));
void foo (v2df x, v2df y, v2df z, v2df w)
{
double a0, a1;
a0 = x[0] < y[0] ? z[0] : w[0];
a1 = x[1] < y[1] ? z[1] : w[1];
a[0] = a0
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96481
--- Comment #5 from Richard Biener ---
so one interesting speciality of this testcase is that the ifs switch between
two scalar values and overall there's no control flow effect. That is, for the
issue of splitting the dataref groups which we cu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96481
Andrew Pinski changed:
What|Removed |Added
Severity|normal |enhancement
Last reconfirmed|2020-08-0
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96481
Martin Liška changed:
What|Removed |Added
Assignee|unassigned at gcc dot gnu.org |marxin at gcc dot
gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96481
--- Comment #3 from Richard Biener ---
(In reply to Richard Biener from comment #2)
> So in theory we could record basic-block boundaries as DR group_id instead
Note for outer loop vect we need the BB restriction which means we'd need to
compute
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96481
Richard Biener changed:
What|Removed |Added
CC||marxin at gcc dot gnu.org
--- Comment #
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96481
Richard Biener changed:
What|Removed |Added
Keywords||missed-optimization
Last reconfirmed|