https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63679

--- Comment #33 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to alalaw01 from comment #32)
> and the optimized tree is:
> 
> foo ()
> {
>   int vect_sum_9.6;
>   int stmp_sum_9.5;
>   vector(4) int vect_sum_9.4;
>   const vector(4) int vect__8.3;
>   const int a[8];
> 
>   <bb 2>:
>   MEM[(int[8] *)&a] = { 0, 1, 2, 3 };
>   MEM[(int[8] *)&a + 16B] = { 4, 5, 6, 7 };
>   vect__8.3_20 = MEM[(int *)&a];
>   vect__8.3_18 = MEM[(int *)&a + 16B];

So a missing constant prop here.


>   vect_sum_9.4_23 = vect__8.3_18 + vect__8.3_20;

Also most likely we don't have much constant folding for this.

>   stmp_sum_9.5_25 = [reduc_plus_expr] vect_sum_9.4_23;

Or even this.

But once those are resolved, this whole function will resolve itself :).

Reply via email to