Am 22.07.2014 19:49 schrieb "Janne Grunau" <[email protected]>:
>
> 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

But don't you need to do that eventually?

Not sure Libav has any avx/2 yet that would need it, but iirc FFmpeg does
and bumped this variable to 32 conditionally on HAVE_AVX.
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to