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

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Without the uninitialized variable:
```
int zoom_x3_weights_0, zoom_x3_j, zoom_x3_pixel2;

void zoom_x3(char *__restrict s, char *__restrict zoom_x3_tmp) {
  int pixel0 = 0, pixel1 = 0;
  for (; zoom_x3_j; zoom_x3_j--) {
    pixel0 += *s++ * zoom_x3_weights_0;
    pixel1 += *s++ * zoom_x3_weights_0;
    zoom_x3_pixel2 += *s++ * zoom_x3_weights_0;
  }
  *zoom_x3_tmp++ = pixel0 < 0 ? 0 : pixel0 > 255 ? 255 : pixel0;
  *zoom_x3_tmp = pixel1 < 0 ? 0 : pixel1 > 255 ? 255 : pixel1;
}
```

I am going to see what my reduction comes up with though.

Reply via email to