MCPcopy Create free account
hub / github.com/numpy/numpy / count_zero_bytes_u16

Function count_zero_bytes_u16

numpy/core/src/multiarray/item_selection.c:2422–2436  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2420}
2421
2422NPY_FINLINE NPY_GCC_OPT_3 npyv_u16x2
2423count_zero_bytes_u16(const npy_uint8 **d, const npy_uint8 *end, npy_uint16 max_count)
2424{
2425 npyv_u16x2 vsum16;
2426 vsum16.val[0] = vsum16.val[1] = npyv_zero_u16();
2427 npy_intp lane_max = 0;
2428 while (*d < end && lane_max <= max_count - NPY_MAX_UINT8) {
2429 npyv_u8 vsum8 = count_zero_bytes_u8(d, end, NPY_MAX_UINT8);
2430 npyv_u16x2 part = npyv_expand_u16_u8(vsum8);
2431 vsum16.val[0] = npyv_add_u16(vsum16.val[0], part.val[0]);
2432 vsum16.val[1] = npyv_add_u16(vsum16.val[1], part.val[1]);
2433 lane_max += NPY_MAX_UINT8;
2434 }
2435 return vsum16;
2436}
2437#endif // NPY_SIMD
2438/*
2439 * Counts the number of non-zero values in a raw array.

Callers 1

count_nonzero_u8Function · 0.85

Calls 1

count_zero_bytes_u8Function · 0.85

Tested by

no test coverage detected