On 2014-07-22 04:03:02 -0700, Diego Biurrun wrote:
> ---
>
> Changed to also replace the need_memalign variable in configure, which
> essentially indicates the same thing.
>
> I've followed the git-blame path of STRIDE_ALIGN and an now confident
> this is the correct solution for a number of hacks that were cargo-culted
> around.
>
> configure | 6 +++---
> libavcodec/utils.c | 2 +-
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/configure b/configure
> index 1cc2265..6736f76 100755
> --- a/configure
> +++ b/configure
> @@ -1340,6 +1340,7 @@ ARCH_FEATURES="
> fast_cmov
> local_aligned_8
> local_aligned_16
> + simd_align_16
> "
>
> BUILTIN_LIST="
> @@ -1701,8 +1702,7 @@ 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"
> -
> -need_memalign="altivec neon sse"
> +simd_align_16_if_any="altivec neon sse"
>
> # system capabilities
> log2_deps="!libc_msvcrt"
> @@ -4430,7 +4430,7 @@ enabled_all dxva2 CoTaskMemFree &&
> enable dxva2_lib
>
> ! enabled_any memalign posix_memalign aligned_malloc &&
> - enabled_any $need_memalign && enable memalign_hack
> + enabled $simd_align_16 && enable memalign_hack
>
> map 'enabled $v && intrinsics=${v#intrinsics_}' $INTRINSICS_LIST
>
> diff --git a/libavcodec/utils.c b/libavcodec/utils.c
> index 2abc376..16c30c3 100644
> --- a/libavcodec/utils.c
> +++ b/libavcodec/utils.c
> @@ -189,7 +189,7 @@ int ff_side_data_update_matrix_encoding(AVFrame *frame,
> return 0;
> }
>
> -#if HAVE_NEON || ARCH_PPC || HAVE_MMX
> +#if HAVE_SIMD_ALIGN_16
> # define STRIDE_ALIGN 16
> #else
> # define STRIDE_ALIGN 8
the number in the define is a littly ugly but as long as we don't need
to increase it to 32 or 64 for avx2/avx512/... this is fine
patch ok
Janne
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel