Should make strict compilers happy.
Also, make AV_COPY128 use integer operations while at it.

Signed-off-by: James Almer <jamr...@gmail.com>
---
 libavutil/x86/intreadwrite.h | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/libavutil/x86/intreadwrite.h b/libavutil/x86/intreadwrite.h
index d916410e14..65cc6b39a1 100644
--- a/libavutil/x86/intreadwrite.h
+++ b/libavutil/x86/intreadwrite.h
@@ -23,32 +23,25 @@
 
 #include <stdint.h>
 #include "config.h"
-#if HAVE_INTRINSICS_SSE && defined(__SSE__)
-#include <immintrin.h>
-#endif
 #if HAVE_INTRINSICS_SSE2 && defined(__SSE2__)
 #include <emmintrin.h>
 #endif
 #include "libavutil/attributes.h"
 
-#if HAVE_INTRINSICS_SSE && defined(__SSE__)
+#if HAVE_INTRINSICS_SSE2 && defined(__SSE2__)
 
 #define AV_COPY128 AV_COPY128
 static av_always_inline void AV_COPY128(void *d, const void *s)
 {
-    __m128 tmp = _mm_load_ps(s);
-    _mm_store_ps(d, tmp);
+    __m128i tmp = _mm_load_si128((const __m128i *)s);
+    _mm_store_si128((__m128i *)d, tmp);
 }
 
-#endif /* HAVE_INTRINSICS_SSE && defined(__SSE__) */
-
-#if HAVE_INTRINSICS_SSE2 && defined(__SSE2__)
-
 #define AV_ZERO128 AV_ZERO128
 static av_always_inline void AV_ZERO128(void *d)
 {
     __m128i zero = _mm_setzero_si128();
-    _mm_store_si128(d, zero);
+    _mm_store_si128((__m128i *)d, zero);
 }
 
 #endif /* HAVE_INTRINSICS_SSE2 && defined(__SSE2__) */
-- 
2.45.2

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to