unsafe fn my512_mulhi_epu32(a: __m512i, b: __m512i) -> __m512iExamples found in repository?
crates/competitive/src/num/mint/montgomery.rs (line 336)
330 pub unsafe fn montgomery_mul_512(
331 a: __m512i,
332 b: __m512i,
333 r_vec: __m512i,
334 mod_vec: __m512i,
335 ) -> __m512i {
336 let hi = my512_mulhi_epu32(a, b);
337 let lo = my512_mullo_epu32(a, b);
338 let lo = my512_mullo_epu32(lo, r_vec);
339 let lo = my512_mulhi_epu32(lo, mod_vec);
340 _mm512_sub_epi32(_mm512_add_epi32(hi, mod_vec), lo)
341 }