diff options
| author | Nazar Mokrynskyi <[email protected]> | 2025-08-12 14:05:37 +0300 |
|---|---|---|
| committer | Jack O'Connor <[email protected]> | 2025-08-12 18:33:35 -0700 |
| commit | 89537d968225007ee1490059c894fc89ab9b4863 (patch) | |
| tree | 6ca463bceb4bad49ed41cf2f0173f352f46cc93a /src/rust_avx2.rs | |
| parent | c7f0d216e6fc834b742456b39546c9835baa1277 (diff) | |
Fix prefetch pointer addition that resulted in UB
Diffstat (limited to 'src/rust_avx2.rs')
| -rw-r--r-- | src/rust_avx2.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/rust_avx2.rs b/src/rust_avx2.rs index a37a4ca..7fe69e6 100644 --- a/src/rust_avx2.rs +++ b/src/rust_avx2.rs @@ -262,7 +262,10 @@ unsafe fn transpose_msg_vecs(inputs: &[*const u8; DEGREE], block_offset: usize) loadu(inputs[7].add(block_offset + 1 * 4 * DEGREE)), ]; for i in 0..DEGREE { - _mm_prefetch(inputs[i].add(block_offset + 256) as *const i8, _MM_HINT_T0); + _mm_prefetch( + inputs[i].wrapping_add(block_offset + 256) as *const i8, + _MM_HINT_T0, + ); } let squares = mut_array_refs!(&mut vecs, DEGREE, DEGREE); transpose_vecs(squares.0); |
