summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xconfigure6
-rw-r--r--libavcodec/utils.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/configure b/configure
index 80aa09ea4b..9f836b7d38 100755
--- a/configure
+++ b/configure
@@ -1469,7 +1469,9 @@ ARCH_FEATURES="
local_aligned_8
local_aligned_16
local_aligned_32
+ simd_align
simd_align_16
+ simd_align_32
"
BUILTIN_LIST="
@@ -1880,7 +1882,9 @@ aligned_stack_if_any="aarch64 ppc x86"
fast_64bit_if_any="aarch64 alpha ia64 mips64 parisc64 ppc64 sparc64 x86_64"
fast_clz_if_any="aarch64 alpha avr32 mips ppc x86"
fast_unaligned_if_any="aarch64 ppc x86"
+simd_align_if_any="simd_align_16 simd_align_32"
simd_align_16_if_any="altivec neon sse"
+simd_align_32_if_any="avx"
# system capabilities
symver_if_any="symver_asm_label symver_gnu_asm"
@@ -5032,7 +5036,7 @@ enabled_all dxva2 CoTaskMemFree &&
enable dxva2_lib
! enabled_any memalign posix_memalign aligned_malloc &&
- enabled simd_align_16 && enable memalign_hack
+ enabled simd_align && enable memalign_hack
map 'enabled $v && intrinsics=${v#intrinsics_}' $INTRINSICS_LIST
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 4184b95e63..ce86bfa2a7 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -178,7 +178,9 @@ int ff_side_data_update_matrix_encoding(AVFrame *frame,
return 0;
}
-#if HAVE_SIMD_ALIGN_16
+#if HAVE_SIMD_ALIGN_32
+# define STRIDE_ALIGN 32
+#elif HAVE_SIMD_ALIGN_16
# define STRIDE_ALIGN 16
#else
# define STRIDE_ALIGN 8