summaryrefslogtreecommitdiff
path: root/vp8/encoder/arm/variance_arm.h
diff options
context:
space:
mode:
authorTero Rintaluoma <teror@google.com>2011-02-09 09:34:56 -0500
committerJohann <johannkoenig@google.com>2011-02-09 10:23:43 -0500
commitcb14764fab88b5b28ba09fa9490bd72c017cb7c2 (patch)
treeb698d8c6703a0f46ca9b2846231e907b8522b494 /vp8/encoder/arm/variance_arm.h
parente5aaac24bb9f06ccd44505b0af6116b9ca3bd73f (diff)
downloadlibvpx-cb14764fab88b5b28ba09fa9490bd72c017cb7c2.tar
libvpx-cb14764fab88b5b28ba09fa9490bd72c017cb7c2.tar.gz
libvpx-cb14764fab88b5b28ba09fa9490bd72c017cb7c2.tar.bz2
libvpx-cb14764fab88b5b28ba09fa9490bd72c017cb7c2.zip
Adds armv6 optimized variance calculation
Adds vp8_sub_pixel_variance16x16_armv6 function to encoder. Integrates ARMv6 optimized bilinear interpolations from vp8/common/arm/armv6 and adds new assembly file for variance16x16 calculation. - vp8_filter_block2d_bil_first_pass_armv6 (integrated) - vp8_filter_block2d_bil_second_pass_armv6 (integrated) - vp8_variance16x16_armv6 (new) - bilinearfilter_arm.h (new) Change-Id: I18a8331ce7d031ceedd6cd415ecacb0c8f3392db
Diffstat (limited to 'vp8/encoder/arm/variance_arm.h')
-rw-r--r--vp8/encoder/arm/variance_arm.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/vp8/encoder/arm/variance_arm.h b/vp8/encoder/arm/variance_arm.h
index 3cbacfac3..06d72873e 100644
--- a/vp8/encoder/arm/variance_arm.h
+++ b/vp8/encoder/arm/variance_arm.h
@@ -12,6 +12,23 @@
#ifndef VARIANCE_ARM_H
#define VARIANCE_ARM_H
+#if HAVE_ARMV6
+
+extern prototype_variance(vp8_variance16x16_armv6);
+extern prototype_subpixvariance(vp8_sub_pixel_variance16x16_armv6);
+
+#if !CONFIG_RUNTIME_CPU_DETECT
+
+#undef vp8_variance_subpixvar16x16
+#define vp8_variance_subpixvar16x16 vp8_sub_pixel_variance16x16_armv6
+
+#undef vp8_variance_var16x16
+#define vp8_variance_var16x16 vp8_variance16x16_armv6
+
+#endif /* !CONFIG_RUNTIME_CPU_DETECT */
+
+#endif /* HAVE_ARMV6 */
+
#if HAVE_ARMV7
extern prototype_sad(vp8_sad4x4_neon);
extern prototype_sad(vp8_sad8x8_neon);