aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/swr
diff options
context:
space:
mode:
authorTim Rowley <[email protected]>2017-07-06 10:29:38 -0500
committerTim Rowley <[email protected]>2017-07-06 15:00:48 -0500
commitd50ef7332c956785934336d757815196c48ac1d6 (patch)
tree16257a44f4dc1bb2c017e03fb09620e740baf734 /src/gallium/drivers/swr
parentf0a22956be4802e01f2b4f3244f011212626f12d (diff)
swr/rast: don't use _mm256_fmsub_ps in AVX code
Reviewed-by: Bruce Cherniak <[email protected]>
Diffstat (limited to 'src/gallium/drivers/swr')
-rw-r--r--src/gallium/drivers/swr/rasterizer/common/simdlib_256_avx.inl6
1 files changed, 5 insertions, 1 deletions
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 aec79e31590..16eb5217cba 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