[FFmpeg-cvslog] Revert "avutil/mem: limit alignment to maximum simd align"

Timo Rothenpieler git at videolan.org
Fri Feb 9 21:21:06 EET 2024


ffmpeg | branch: master | Timo Rothenpieler <timo at rothenpieler.org> | Fri Feb  9 20:20:03 2024 +0100| [4618b5ebb95dbef95877ea49c175b1c573ca6b36] | committer: Timo Rothenpieler

Revert "avutil/mem: limit alignment to maximum simd align"

Patch was not intended to be part of the set it got pushed with.

This reverts commit 6154137b186734961726ae538ab5cbe287bab163.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4618b5ebb95dbef95877ea49c175b1c573ca6b36
---

 libavutil/mem.c          |  8 +-------
 libavutil/mem_internal.h | 14 ++++++--------
 2 files changed, 7 insertions(+), 15 deletions(-)

diff --git a/libavutil/mem.c b/libavutil/mem.c
index b5bcaab164..36b8940a0c 100644
--- a/libavutil/mem.c
+++ b/libavutil/mem.c
@@ -62,13 +62,7 @@ void  free(void *ptr);
 
 #endif /* MALLOC_PREFIX */
 
-#if defined(_MSC_VER)
-/* MSVC does not support conditionally limiting alignment.
-   Set minimum value here to maximum used throughout the codebase. */
-#define ALIGN (HAVE_SIMD_ALIGN_64 ? 64 : 32)
-#else
-#define ALIGN (HAVE_SIMD_ALIGN_64 ? 64 : (HAVE_SIMD_ALIGN_32 ? 32 : 16))
-#endif
+#define ALIGN (HAVE_AVX512 ? 64 : (HAVE_AVX ? 32 : 16))
 
 /* NOTE: if you want to override these functions with your own
  * implementations (not recommended) you have to link libav* as
diff --git a/libavutil/mem_internal.h b/libavutil/mem_internal.h
index e2911b5610..2448c606f1 100644
--- a/libavutil/mem_internal.h
+++ b/libavutil/mem_internal.h
@@ -75,20 +75,18 @@
  * @param v Name of the variable
  */
 
-#define MAX_ALIGNMENT (HAVE_SIMD_ALIGN_64 ? 64 : (HAVE_SIMD_ALIGN_32 ? 32 : 16))
-
 #if defined(__INTEL_COMPILER) && __INTEL_COMPILER < 1110 || defined(__SUNPRO_C)
-    #define DECLARE_ALIGNED(n,t,v)      t __attribute__ ((aligned (FFMIN(n, MAX_ALIGNMENT)))) v
-    #define DECLARE_ASM_ALIGNED(n,t,v)  t __attribute__ ((aligned (FFMIN(n, MAX_ALIGNMENT)))) v
-    #define DECLARE_ASM_CONST(n,t,v)    const t __attribute__ ((aligned (FFMIN(n, MAX_ALIGNMENT)))) v
+    #define DECLARE_ALIGNED(n,t,v)      t __attribute__ ((aligned (n))) v
+    #define DECLARE_ASM_ALIGNED(n,t,v)  t __attribute__ ((aligned (n))) v
+    #define DECLARE_ASM_CONST(n,t,v)    const t __attribute__ ((aligned (n))) v
 #elif defined(__DJGPP__)
     #define DECLARE_ALIGNED(n,t,v)      t __attribute__ ((aligned (FFMIN(n, 16)))) v
     #define DECLARE_ASM_ALIGNED(n,t,v)  t av_used __attribute__ ((aligned (FFMIN(n, 16)))) v
     #define DECLARE_ASM_CONST(n,t,v)    static const t av_used __attribute__ ((aligned (FFMIN(n, 16)))) v
 #elif defined(__GNUC__) || defined(__clang__)
-    #define DECLARE_ALIGNED(n,t,v)      t __attribute__ ((aligned (FFMIN(n, MAX_ALIGNMENT)))) v
-    #define DECLARE_ASM_ALIGNED(n,t,v)  t av_used __attribute__ ((aligned (FFMIN(n, MAX_ALIGNMENT)))) v
-    #define DECLARE_ASM_CONST(n,t,v)    static const t av_used __attribute__ ((aligned (FFMIN(n, MAX_ALIGNMENT)))) v
+    #define DECLARE_ALIGNED(n,t,v)      t __attribute__ ((aligned (n))) v
+    #define DECLARE_ASM_ALIGNED(n,t,v)  t av_used __attribute__ ((aligned (n))) v
+    #define DECLARE_ASM_CONST(n,t,v)    static const t av_used __attribute__ ((aligned (n))) v
 #elif defined(_MSC_VER)
     #define DECLARE_ALIGNED(n,t,v)      __declspec(align(n)) t v
     #define DECLARE_ASM_ALIGNED(n,t,v)  __declspec(align(n)) t v



More information about the ffmpeg-cvslog mailing list