| 358 | return npyv_loadn2_s32(ptr, stride); |
| 359 | } |
| 360 | NPY_FINLINE npyv_s32 npyv_loadn2_tillz_s32(const npy_int32 *ptr, npy_intp stride, npy_uintp nlane) |
| 361 | { |
| 362 | assert(nlane > 0); |
| 363 | if (nlane == 1) { |
| 364 | npyv_s32 r = (npyv_s32)npyv_set_s64(*(npy_int64*)ptr, 0); |
| 365 | #if NPY_SIMD_GUARD_PARTIAL_LOAD |
| 366 | volatile npyv_s32 workaround = r; |
| 367 | r = vec_or(workaround, r); |
| 368 | #endif |
| 369 | return r; |
| 370 | } |
| 371 | return npyv_loadn2_s32(ptr, stride); |
| 372 | } |
| 373 | |
| 374 | //// 128-bit load over 64-bit stride |
| 375 | NPY_FINLINE npyv_s64 npyv_loadn2_till_s64(const npy_int64 *ptr, npy_intp stride, npy_uintp nlane, |
nothing calls this directly
no test coverage detected