media/libvpx/vp9/common/x86/vp9_postproc_x86.h

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/media/libvpx/vp9/common/x86/vp9_postproc_x86.h	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,64 @@
     1.4 +/*
     1.5 + *  Copyright (c) 2010 The WebM project authors. All Rights Reserved.
     1.6 + *
     1.7 + *  Use of this source code is governed by a BSD-style license
     1.8 + *  that can be found in the LICENSE file in the root of the source
     1.9 + *  tree. An additional intellectual property rights grant can be found
    1.10 + *  in the file PATENTS.  All contributing project authors may
    1.11 + *  be found in the AUTHORS file in the root of the source tree.
    1.12 + */
    1.13 +
    1.14 +
    1.15 +#ifndef VP9_COMMON_X86_VP9_POSTPROC_X86_H_
    1.16 +#define VP9_COMMON_X86_VP9_POSTPROC_X86_H_
    1.17 +
    1.18 +/* Note:
    1.19 + *
    1.20 + * This platform is commonly built for runtime CPU detection. If you modify
    1.21 + * any of the function mappings present in this file, be sure to also update
    1.22 + * them in the function pointer initialization code
    1.23 + */
    1.24 +
    1.25 +#if HAVE_MMX
    1.26 +extern prototype_postproc_inplace(vp9_mbpost_proc_down_mmx);
    1.27 +extern prototype_postproc(vp9_post_proc_down_and_across_mmx);
    1.28 +extern prototype_postproc_addnoise(vp9_plane_add_noise_mmx);
    1.29 +
    1.30 +#if !CONFIG_RUNTIME_CPU_DETECT
    1.31 +#undef  vp9_postproc_down
    1.32 +#define vp9_postproc_down vp9_mbpost_proc_down_mmx
    1.33 +
    1.34 +#undef  vp9_postproc_downacross
    1.35 +#define vp9_postproc_downacross vp9_post_proc_down_and_across_mmx
    1.36 +
    1.37 +#undef  vp9_postproc_addnoise
    1.38 +#define vp9_postproc_addnoise vp9_plane_add_noise_mmx
    1.39 +
    1.40 +#endif
    1.41 +#endif
    1.42 +
    1.43 +
    1.44 +#if HAVE_SSE2
    1.45 +extern prototype_postproc_inplace(vp9_mbpost_proc_down_xmm);
    1.46 +extern prototype_postproc_inplace(vp9_mbpost_proc_across_ip_xmm);
    1.47 +extern prototype_postproc(vp9_post_proc_down_and_across_xmm);
    1.48 +extern prototype_postproc_addnoise(vp9_plane_add_noise_wmt);
    1.49 +
    1.50 +#if !CONFIG_RUNTIME_CPU_DETECT
    1.51 +#undef  vp9_postproc_down
    1.52 +#define vp9_postproc_down vp9_mbpost_proc_down_xmm
    1.53 +
    1.54 +#undef  vp9_postproc_across
    1.55 +#define vp9_postproc_across vp9_mbpost_proc_across_ip_xmm
    1.56 +
    1.57 +#undef  vp9_postproc_downacross
    1.58 +#define vp9_postproc_downacross vp9_post_proc_down_and_across_xmm
    1.59 +
    1.60 +#undef  vp9_postproc_addnoise
    1.61 +#define vp9_postproc_addnoise vp9_plane_add_noise_wmt
    1.62 +
    1.63 +
    1.64 +#endif
    1.65 +#endif
    1.66 +
    1.67 +#endif  // VP9_COMMON_X86_VP9_POSTPROC_X86_H_

mercurial