[Mesa-dev] [PATCH 2/3] swr/rast: don't use _mm256_fmsub_ps in AVX code

Tim Rowley timothy.o.rowley at intel.com
Thu Jul 6 16:26:23 UTC 2017


---
 src/gallium/drivers/swr/rasterizer/common/simdlib_256_avx.inl | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/swr/rasterizer/common/simdlib_256_avx.inl b/src/gallium/drivers/swr/rasterizer/common/simdlib_256_avx.inl
index aec79e3..16eb521 100644
--- a/src/gallium/drivers/swr/rasterizer/common/simdlib_256_avx.inl
+++ b/src/gallium/drivers/swr/rasterizer/common/simdlib_256_avx.inl
@@ -182,7 +182,11 @@ static SIMDINLINE Float SIMDCALL fmadd_ps(Float a, Float b, Float c) // return (
     return add_ps(mul_ps(a, b), c);
 }
 
-SIMD_WRAPPER_3(fmsub_ps);   // return (a * b) - c
+static SIMDINLINE Float SIMDCALL fmsub_ps(Float a, Float b, Float c) // return (a * b) - c
+{
+    return sub_ps(mul_ps(a, b), c);
+}
+
 SIMD_WRAPPER_2(max_ps);     // return (a > b) ? a : b
 SIMD_WRAPPER_2(min_ps);     // return (a < b) ? a : b
 SIMD_WRAPPER_2(mul_ps);     // return a * b
-- 
2.7.4



More information about the mesa-dev mailing list