On Sat, Dec 7, 2013 at 12:45 AM, Cong Hou wrote:
> After further reviewing this patch, I found I don't have to change the
> code in tree-vect-stmts.c to allow further type conversion after
> widen-mult operation. Instead, I detect the following pattern in
> vect_recog_widen_mult_pattern():
>
> T1
After further reviewing this patch, I found I don't have to change the
code in tree-vect-stmts.c to allow further type conversion after
widen-mult operation. Instead, I detect the following pattern in
vect_recog_widen_mult_pattern():
T1 a, b;
ai = (T2) a;
bi = (T2) b;
c = ai * bi;
where T2 is mor
Hi
The current widen-mult pattern only considers two operands with the
same size. However, operands with different sizes can also benefit
from this pattern. The following loop shows such an example:
char a[N];
short b[N];
int c[N];
for (int i = 0; i < N; ++i)
c[i] = a[i] * b[i];
In this cas