http://gcc.gnu.org/bugzilla/show_bug.cgi?id=61108

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |congh at gcc dot gnu.org

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
__attribute__ ((noinline)) unsigned int
sum (const unsigned int *x)
{
  unsigned int r = 0;
  int i;
  for (i = 0; i < 8; i++)
    {
      unsigned int v = x[i];
      unsigned int q = (v * 613566757ULL) >> 32;
      unsigned int t = ((v + q) >> 1);
      r += t;
    }
  return r;
}

int
main (void)
{
  unsigned int x[8] = { 0, 7, 0, 0, 0, 0, 0, 0 };
  if (sum (x) != 4)
    __builtin_abort ();
  return 0;
}

So, I guess we want to backport PR60656 fix to 4.8 branch (both r209138 and
r209363), and add this new testcase to 4.8/4.9/trunk.

Reply via email to