https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98365
Andrew Pinski changed:
What|Removed |Added
Target Milestone|--- |12.0
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98365
Hongtao.liu changed:
What|Removed |Added
Resolution|--- |FIXED
Status|NEW
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98365
--- Comment #7 from CVS Commits ---
The master branch has been updated by hongtao Liu :
https://gcc.gnu.org/g:28daadc98094501175c9dfe4a985871fa6aa4f94
commit r12-1138-g28daadc98094501175c9dfe4a985871fa6aa4f94
Author: liuhongt
Date: Wed Jan 6
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98365
--- Comment #6 from Hongtao.liu ---
Created attachment 49897
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49897&action=edit
Bootstrapped and regtested on x86_64-linux-gnu{-m32,}
Waiting for GCC12 stage1.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98365
--- Comment #5 from Hongtao.liu ---
>
> And successully vectorized.
>
Also vectorized loop with cnt defined as signed short.
.i.e
int foo (short a[64], short c[64])
{
int i;
short cnt=0;
for (int i = 0;i != 64; i++)
if (a[i] == c[i])
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98365
--- Comment #4 from Hongtao.liu ---
> I hope vectorizer reduction can handle the upper sequence.
After hacked in ifcvt, got
.165.cvt
[local count: 1057206201]:
# cnt_21 = PHI
# i_22 = PHI
# ivtmp_19 = PHI
_1 = (sizetype) i_22
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98365
Richard Biener changed:
What|Removed |Added
Last reconfirmed||2021-01-05
Blocks|
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98365
--- Comment #2 from Hongtao.liu ---
> cnt.1_7 = (unsigned char) cnt_21;
> _8 = cnt.1_7 + 1;
> cnt_16 = (char) _8;
> cnt_9 = _3 == _6 ? cnt_16 : cnt_21;
>
In tree_if_conversion, there's is_cond_scalar_reduction, i'm think to extend
the
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98365
--- Comment #1 from Hongtao.liu ---
> Shouldn't cnt_21 = PHI , stmt relevant?
>
for stmt: cnt.1_7 = (unsigned char) cnt_21, the operand is defined by a
previous iteration of the loop which is assumed to be handled in
induction/reduction.
But