/ 64
| 206 | { return npyv_load_till_s32(ptr, nlane, 0); } |
| 207 | //// 64 |
| 208 | NPY_FINLINE npyv_s64 npyv_load_till_s64(const npy_int64 *ptr, npy_uintp nlane, npy_int64 fill) |
| 209 | { |
| 210 | assert(nlane > 0); |
| 211 | if (nlane == 1) { |
| 212 | npyv_s64 a = vcombine_s64(vld1_s64((const int64_t*)ptr), vdup_n_s64(fill)); |
| 213 | #if NPY_SIMD_GUARD_PARTIAL_LOAD |
| 214 | volatile npyv_s64 workaround = a; |
| 215 | a = vorrq_s64(workaround, a); |
| 216 | #endif |
| 217 | return a; |
| 218 | } |
| 219 | return npyv_load_s64(ptr); |
| 220 | } |
| 221 | // fill zero to rest lanes |
| 222 | NPY_FINLINE npyv_s64 npyv_load_tillz_s64(const npy_int64 *ptr, npy_uintp nlane) |
| 223 | { return npyv_load_till_s64(ptr, nlane, 0); } |
no outgoing calls
no test coverage detected