* [FFmpeg-devel] [PATCH] x86/intreadwrite: add missing casts to pointer arguments
@ 2024-07-11 16:54 James Almer
2024-07-11 21:02 ` Martin Storsjö
0 siblings, 1 reply; 2+ messages in thread
From: James Almer @ 2024-07-11 16:54 UTC (permalink / raw)
To: ffmpeg-devel
Should make strict compilers happy.
Also, make AV_COPY128 use integer operations while at it.
Signed-off-by: James Almer <jamrial@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-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [FFmpeg-devel] [PATCH] x86/intreadwrite: add missing casts to pointer arguments
2024-07-11 16:54 [FFmpeg-devel] [PATCH] x86/intreadwrite: add missing casts to pointer arguments James Almer
@ 2024-07-11 21:02 ` Martin Storsjö
0 siblings, 0 replies; 2+ messages in thread
From: Martin Storsjö @ 2024-07-11 21:02 UTC (permalink / raw)
To: FFmpeg development discussions and patches
On Thu, 11 Jul 2024, James Almer wrote:
> Should make strict compilers happy.
> Also, make AV_COPY128 use integer operations while at it.
>
> Signed-off-by: James Almer <jamrial@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 we no longer use HAVE_INTRINSICS_SSE, should we remove the
corresponding check in configure too?
Thanks, this patch seems to avoid the issue discussed in the other thread.
(I'm not familiar enough with these intrinsics to be able to comment
meaningfully on the patch itself though.)
// Martin
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-07-11 21:02 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-07-11 16:54 [FFmpeg-devel] [PATCH] x86/intreadwrite: add missing casts to pointer arguments James Almer
2024-07-11 21:02 ` Martin Storsjö
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git