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

--- Comment #1 from Drea Pinski <pinskia at gcc dot gnu.org> ---
Note GCC does vectorize:
```

#include <stdlib.h>
#include <stdint.h>

size_t hd (const uint8_t *restrict a,
           const uint8_t *restrict b,
           size_t l) {
  unsigned char r = 0;
  size_t x;
  for (x = 0; x < l; x++)
    r += __builtin_popcount (a[x] ^ b[x]);

  return r;
}

```

Just not widening of the addition from popcount it seems.

Reply via email to