From 88cf1342261ea1c3cf8c3982832b013220870b6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eduardo=20S=C3=A1nchez=20Mu=C3=B1oz?= Date: Mon, 16 Oct 2023 18:55:47 +0200 Subject: [PATCH] Extend _mm_mulhrs_epi16 test to check large values --- library/stdarch/crates/core_arch/src/x86/ssse3.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/library/stdarch/crates/core_arch/src/x86/ssse3.rs b/library/stdarch/crates/core_arch/src/x86/ssse3.rs index 8fe2390aa314..4957c2b1ea02 100644 --- a/library/stdarch/crates/core_arch/src/x86/ssse3.rs +++ b/library/stdarch/crates/core_arch/src/x86/ssse3.rs @@ -598,6 +598,13 @@ mod tests { let expected = _mm_setr_epi16(0, 0, 0, 0, 5, 0, -7, 0); let r = _mm_mulhrs_epi16(a, b); assert_eq_m128i(r, expected); + + // Test extreme values + let a = _mm_setr_epi16(i16::MAX, i16::MIN, i16::MIN, 0, 0, 0, 0, 0); + let b = _mm_setr_epi16(i16::MAX, i16::MIN, i16::MAX, 0, 0, 0, 0, 0); + let expected = _mm_setr_epi16(i16::MAX - 1, i16::MIN, -i16::MAX, 0, 0, 0, 0, 0); + let r = _mm_mulhrs_epi16(a, b); + assert_eq_m128i(r, expected); } #[simd_test(enable = "ssse3")]