[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