ref: 91d703b2b21f40f27dceb57481a5bb92f5ece1d1
parent: a5e542e74b30cbc8cb98b7badc93d7614930a76a
parent: 3338af41092added3024a4ed4b9934262a578433
author: Jim Bankoski <jimbankoski@google.com>
date: Wed Nov 21 14:55:16 EST 2012
Merge "remove subpixel invoke functions" into experimental
--- a/vp9/common/generic/systemdependent.c
+++ b/vp9/common/generic/systemdependent.c
@@ -35,36 +35,6 @@
rtcd->idct.idct16x16 = vp9_short_idct16x16_c;
rtcd->idct.idct10_16x16 = vp9_short_idct10_16x16_c;
- rtcd->subpix.eighttap16x16 = vp9_eighttap_predict16x16_c;
- rtcd->subpix.eighttap8x8 = vp9_eighttap_predict8x8_c;
- rtcd->subpix.eighttap_avg16x16 = vp9_eighttap_predict_avg16x16_c;
- rtcd->subpix.eighttap_avg8x8 = vp9_eighttap_predict_avg8x8_c;
- rtcd->subpix.eighttap_avg4x4 = vp9_eighttap_predict_avg4x4_c;
- rtcd->subpix.eighttap8x4 = vp9_eighttap_predict8x4_c;
- rtcd->subpix.eighttap4x4 = vp9_eighttap_predict_c;
- rtcd->subpix.eighttap16x16_sharp = vp9_eighttap_predict16x16_sharp_c;
- rtcd->subpix.eighttap8x8_sharp = vp9_eighttap_predict8x8_sharp_c;
- rtcd->subpix.eighttap_avg16x16_sharp = vp9_eighttap_predict_avg16x16_sharp_c;
- rtcd->subpix.eighttap_avg8x8_sharp = vp9_eighttap_predict_avg8x8_sharp_c;
- rtcd->subpix.eighttap_avg4x4_sharp = vp9_eighttap_predict_avg4x4_sharp_c;
- rtcd->subpix.eighttap8x4_sharp = vp9_eighttap_predict8x4_sharp_c;
- rtcd->subpix.eighttap4x4_sharp = vp9_eighttap_predict_sharp_c;
-
- rtcd->subpix.sixtap16x16 = vp9_sixtap_predict16x16_c;
- rtcd->subpix.sixtap8x8 = vp9_sixtap_predict8x8_c;
- rtcd->subpix.sixtap_avg16x16 = vp9_sixtap_predict_avg16x16_c;
- rtcd->subpix.sixtap_avg8x8 = vp9_sixtap_predict_avg8x8_c;
- rtcd->subpix.sixtap8x4 = vp9_sixtap_predict8x4_c;
- rtcd->subpix.sixtap4x4 = vp9_sixtap_predict_c;
- rtcd->subpix.sixtap_avg4x4 = vp9_sixtap_predict_avg_c;
- rtcd->subpix.bilinear16x16 = vp9_bilinear_predict16x16_c;
- rtcd->subpix.bilinear8x8 = vp9_bilinear_predict8x8_c;
- rtcd->subpix.bilinear_avg16x16 = vp9_bilinear_predict_avg16x16_c;
- rtcd->subpix.bilinear_avg8x8 = vp9_bilinear_predict_avg8x8_c;
- rtcd->subpix.bilinear8x4 = vp9_bilinear_predict8x4_c;
- rtcd->subpix.bilinear4x4 = vp9_bilinear_predict4x4_c;
- rtcd->subpix.bilinear_avg4x4 = vp9_bilinear_predict_avg4x4_c;
-
#if CONFIG_POSTPROC || (CONFIG_VP9_ENCODER && CONFIG_INTERNAL_STATS)
rtcd->postproc.down = vp9_mbpost_proc_down_c;
rtcd->postproc.across = vp9_mbpost_proc_across_ip_c;
--- a/vp9/common/onyxc_int.h
+++ b/vp9/common/onyxc_int.h
@@ -149,7 +149,6 @@
typedef struct VP9_COMMON_RTCD {
#if CONFIG_RUNTIME_CPU_DETECT
vp9_idct_rtcd_vtable_t idct;
- vp9_subpix_rtcd_vtable_t subpix;
#if CONFIG_POSTPROC
vp9_postproc_rtcd_vtable_t postproc;
#endif
--- a/vp9/common/reconinter.c
+++ b/vp9/common/reconinter.c
@@ -11,7 +11,6 @@
#include "vpx_ports/config.h"
#include "vpx/vpx_integer.h"
-#include "subpixel.h"
#include "blockd.h"
#include "reconinter.h"
#include "vp9/common/reconintra.h"
@@ -23,66 +22,38 @@
INTERPOLATIONFILTERTYPE mcomp_filter_type,
VP9_COMMON *cm) {
if (mcomp_filter_type == SIXTAP) {
- xd->subpixel_predict = SUBPIX_INVOKE(
- &cm->rtcd.subpix, sixtap4x4);
- xd->subpixel_predict8x4 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, sixtap8x4);
- xd->subpixel_predict8x8 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, sixtap8x8);
- xd->subpixel_predict16x16 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, sixtap16x16);
- xd->subpixel_predict_avg = SUBPIX_INVOKE(
- &cm->rtcd.subpix, sixtap_avg4x4);
- xd->subpixel_predict_avg8x8 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, sixtap_avg8x8);
- xd->subpixel_predict_avg16x16 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, sixtap_avg16x16);
+ xd->subpixel_predict = vp9_sixtap_predict;
+ xd->subpixel_predict8x4 = vp9_sixtap_predict8x4;
+ xd->subpixel_predict8x8 = vp9_sixtap_predict8x8;
+ xd->subpixel_predict16x16 = vp9_sixtap_predict16x16;
+ xd->subpixel_predict_avg = vp9_sixtap_predict_avg;
+ xd->subpixel_predict_avg8x8 = vp9_sixtap_predict_avg8x8;
+ xd->subpixel_predict_avg16x16 = vp9_sixtap_predict_avg16x16;
} else if (mcomp_filter_type == EIGHTTAP || mcomp_filter_type == SWITCHABLE) {
- xd->subpixel_predict = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap4x4);
- xd->subpixel_predict8x4 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap8x4);
- xd->subpixel_predict8x8 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap8x8);
- xd->subpixel_predict16x16 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap16x16);
- xd->subpixel_predict_avg = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap_avg4x4);
- xd->subpixel_predict_avg8x8 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap_avg8x8);
- xd->subpixel_predict_avg16x16 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap_avg16x16);
+ xd->subpixel_predict = vp9_eighttap_predict;
+ xd->subpixel_predict8x4 = vp9_eighttap_predict8x4;
+ xd->subpixel_predict8x8 = vp9_eighttap_predict8x8;
+ xd->subpixel_predict16x16 = vp9_eighttap_predict16x16;
+ xd->subpixel_predict_avg = vp9_eighttap_predict_avg4x4;
+ xd->subpixel_predict_avg8x8 = vp9_eighttap_predict_avg8x8;
+ xd->subpixel_predict_avg16x16 = vp9_eighttap_predict_avg16x16;
} else if (mcomp_filter_type == EIGHTTAP_SHARP) {
- xd->subpixel_predict = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap4x4_sharp);
- xd->subpixel_predict8x4 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap8x4_sharp);
- xd->subpixel_predict8x8 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap8x8_sharp);
- xd->subpixel_predict16x16 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap16x16_sharp);
- xd->subpixel_predict_avg = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap_avg4x4_sharp);
- xd->subpixel_predict_avg8x8 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap_avg8x8_sharp);
- xd->subpixel_predict_avg16x16 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, eighttap_avg16x16_sharp);
+ xd->subpixel_predict = vp9_eighttap_predict_sharp;
+ xd->subpixel_predict8x4 = vp9_eighttap_predict8x4_sharp;
+ xd->subpixel_predict8x8 = vp9_eighttap_predict8x8_sharp;
+ xd->subpixel_predict16x16 = vp9_eighttap_predict16x16_sharp;
+ xd->subpixel_predict_avg = vp9_eighttap_predict_avg4x4_sharp;
+ xd->subpixel_predict_avg8x8 = vp9_eighttap_predict_avg8x8_sharp;
+ xd->subpixel_predict_avg16x16 = vp9_eighttap_predict_avg16x16_sharp_c;
}
else {
- xd->subpixel_predict = SUBPIX_INVOKE(
- &cm->rtcd.subpix, bilinear4x4);
- xd->subpixel_predict8x4 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, bilinear8x4);
- xd->subpixel_predict8x8 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, bilinear8x8);
- xd->subpixel_predict16x16 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, bilinear16x16);
- xd->subpixel_predict_avg = SUBPIX_INVOKE(
- &cm->rtcd.subpix, bilinear_avg4x4);
- xd->subpixel_predict_avg8x8 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, bilinear_avg8x8);
- xd->subpixel_predict_avg16x16 = SUBPIX_INVOKE(
- &cm->rtcd.subpix, bilinear_avg16x16);
+ xd->subpixel_predict = vp9_bilinear_predict4x4;
+ xd->subpixel_predict8x4 = vp9_bilinear_predict8x4;
+ xd->subpixel_predict8x8 = vp9_bilinear_predict8x8;
+ xd->subpixel_predict16x16 = vp9_bilinear_predict16x16;
+ xd->subpixel_predict_avg = vp9_bilinear_predict_avg4x4;
+ xd->subpixel_predict_avg8x8 = vp9_bilinear_predict_avg8x8;
+ xd->subpixel_predict_avg16x16 = vp9_bilinear_predict_avg16x16;
}
}
--- a/vp9/common/rtcd_defs.sh
+++ b/vp9/common/rtcd_defs.sh
@@ -227,6 +227,90 @@
prototype unsigned int vp9_sad3x16 "const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, int max_sad"
specialize vp9_sad3x16 sse2
+prototype void vp9_eighttap_predict16x16 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict16x16
+
+prototype void vp9_eighttap_predict8x8 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict8x8
+
+prototype void vp9_eighttap_predict_avg16x16 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict_avg16x16
+
+prototype void vp9_eighttap_predict_avg8x8 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict_avg8x8
+
+prototype void vp9_eighttap_predict_avg4x4 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict_avg4x4
+
+prototype void vp9_eighttap_predict8x4 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict8x4
+
+prototype void vp9_eighttap_predict "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict
+
+prototype void vp9_eighttap_predict16x16_sharp "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict16x16_sharp
+
+prototype void vp9_eighttap_predict8x8_sharp "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict8x8_sharp
+
+prototype void vp9_eighttap_predict_avg16x16_sharp "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict_avg16x16_sharp
+
+prototype void vp9_eighttap_predict_avg8x8_sharp "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict_avg8x8_sharp
+
+prototype void vp9_eighttap_predict_avg4x4_sharp "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict_avg4x4_sharp
+
+prototype void vp9_eighttap_predict8x4_sharp "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict8x4_sharp
+
+prototype void vp9_eighttap_predict_sharp "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_eighttap_predict_sharp
+
+prototype void vp9_sixtap_predict16x16 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_sixtap_predict16x16
+
+prototype void vp9_sixtap_predict8x8 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_sixtap_predict8x8
+
+prototype void vp9_sixtap_predict_avg16x16 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_sixtap_predict_avg16x16
+
+prototype void vp9_sixtap_predict_avg8x8 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_sixtap_predict_avg8x8
+
+prototype void vp9_sixtap_predict8x4 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_sixtap_predict8x4
+
+prototype void vp9_sixtap_predict "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_sixtap_predict
+
+prototype void vp9_sixtap_predict_avg "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_sixtap_predict_avg
+
+prototype void vp9_bilinear_predict16x16 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_bilinear_predict16x16 mmx sse2
+
+prototype void vp9_bilinear_predict8x8 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_bilinear_predict8x8 mmx sse2
+
+prototype void vp9_bilinear_predict_avg16x16 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_bilinear_predict_avg16x16
+
+prototype void vp9_bilinear_predict_avg8x8 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_bilinear_predict_avg8x8
+
+prototype void vp9_bilinear_predict8x4 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_bilinear_predict8x4 mmx
+
+prototype void vp9_bilinear_predict4x4 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_bilinear_predict4x4 mmx
+
+prototype void vp9_bilinear_predict_avg4x4 "unsigned char *src_ptr, int src_pixels_per_line, int xoffset, int yoffset, unsigned char *dst_ptr, int dst_pitch"
+specialize vp9_bilinear_predict_avg4x4
+
if [ "$CONFIG_SUPERBLOCKS" = "yes" ]; then
prototype unsigned int vp9_sad32x3 "const unsigned char *src_ptr, int src_stride, const unsigned char *ref_ptr, int ref_stride, int max_sad"
--- a/vp9/common/subpixel.h
+++ b/vp9/common/subpixel.h
@@ -16,189 +16,6 @@
void sym(unsigned char *src, int src_pitch, int xofst, int yofst, \
unsigned char *dst, int dst_pitch)
-#if ARCH_X86 || ARCH_X86_64
-#include "x86/subpixel_x86.h"
-#endif
-
-#if ARCH_ARM
-#include "arm/subpixel_arm.h"
-#endif
-
-#ifndef vp9_subpix_sixtap16x16
-#define vp9_subpix_sixtap16x16 vp9_sixtap_predict16x16_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_sixtap16x16);
-
-#ifndef vp9_subpix_sixtap8x8
-#define vp9_subpix_sixtap8x8 vp9_sixtap_predict8x8_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_sixtap8x8);
-
-#ifndef vp9_subpix_sixtap_avg16x16
-#define vp9_subpix_sixtap_avg16x16 vp9_sixtap_predict_avg16x16_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_sixtap_avg16x16);
-
-#ifndef vp9_subpix_sixtap_avg8x8
-#define vp9_subpix_sixtap_avg8x8 vp9_sixtap_predict_avg8x8_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_sixtap_avg8x8);
-#ifndef vp9_subpix_sixtap8x4
-#define vp9_subpix_sixtap8x4 vp9_sixtap_predict8x4_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_sixtap8x4);
-
-#ifndef vp9_subpix_sixtap4x4
-#define vp9_subpix_sixtap4x4 vp9_sixtap_predict_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_sixtap4x4);
-
-#ifndef vp9_subpix_sixtap_avg4x4
-#define vp9_subpix_sixtap_avg4x4 vp9_sixtap_predict_avg_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_sixtap_avg4x4);
-
-#ifndef vp9_subpix_eighttap16x16
-#define vp9_subpix_eighttap16x16 vp9_eighttap_predict16x16_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap16x16);
-
-#ifndef vp9_subpix_eighttap8x8
-#define vp9_subpix_eighttap8x8 vp9_eighttap_predict8x8_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap8x8);
-
-#ifndef vp9_subpix_eighttap_avg16x16
-#define vp9_subpix_eighttap_avg16x16 vp9_eighttap_predict_avg16x16_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap_avg16x16);
-
-#ifndef vp9_subpix_eighttap_avg8x8
-#define vp9_subpix_eighttap_avg8x8 vp9_eighttap_predict_avg8x8_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap_avg8x8);
-
-#ifndef vp9_subpix_eighttap8x4
-#define vp9_subpix_eighttap8x4 vp9_eighttap_predict8x4_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap8x4);
-
-#ifndef vp9_subpix_eighttap4x4
-#define vp9_subpix_eighttap4x4 vp9_eighttap_predict_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap4x4);
-
-#ifndef vp9_subpix_eighttap_avg4x4
-#define vp9_subpix_eighttap_avg4x4 vp9_eighttap_predict_avg4x4_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap_avg4x4);
-
-#ifndef vp9_subpix_eighttap16x16_sharp
-#define vp9_subpix_eighttap16x16_sharp vp9_eighttap_predict16x16_sharp_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap16x16_sharp);
-
-#ifndef vp9_subpix_eighttap8x8_sharp
-#define vp9_subpix_eighttap8x8_sharp vp9_eighttap_predict8x8_sharp_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap8x8_sharp);
-
-#ifndef vp9_subpix_eighttap_avg16x16_sharp
-#define vp9_subpix_eighttap_avg16x16_sharp vp9_eighttap_predict_avg16x16_sharp_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap_avg16x16_sharp);
-
-#ifndef vp9_subpix_eighttap_avg8x8_sharp
-#define vp9_subpix_eighttap_avg8x8_sharp vp9_eighttap_predict_avg8x8_sharp_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap_avg8x8_sharp);
-
-#ifndef vp9_subpix_eighttap8x4_sharp
-#define vp9_subpix_eighttap8x4_sharp vp9_eighttap_predict8x4_sharp_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap8x4_sharp);
-
-#ifndef vp9_subpix_eighttap4x4_sharp
-#define vp9_subpix_eighttap4x4_sharp vp9_eighttap_predict_sharp_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap4x4_sharp);
-
-#ifndef vp9_subpix_eighttap_avg4x4_sharp
-#define vp9_subpix_eighttap_avg4x4_sharp vp9_eighttap_predict_avg4x4_sharp_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_eighttap_avg4x4_sharp);
-
-#ifndef vp9_subpix_bilinear16x16
-#define vp9_subpix_bilinear16x16 vp9_bilinear_predict16x16_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_bilinear16x16);
-
-#ifndef vp9_subpix_bilinear8x8
-#define vp9_subpix_bilinear8x8 vp9_bilinear_predict8x8_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_bilinear8x8);
-
-#ifndef vp9_subpix_bilinear_avg16x16
-#define vp9_subpix_bilinear_avg16x16 vp9_bilinear_predict_avg16x16_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_bilinear_avg16x16);
-
-#ifndef vp9_subpix_bilinear_avg8x8
-#define vp9_subpix_bilinear_avg8x8 vp9_bilinear_predict_avg8x8_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_bilinear_avg8x8);
-
-#ifndef vp9_subpix_bilinear8x4
-#define vp9_subpix_bilinear8x4 vp9_bilinear_predict8x4_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_bilinear8x4);
-
-#ifndef vp9_subpix_bilinear4x4
-#define vp9_subpix_bilinear4x4 vp9_bilinear_predict4x4_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_bilinear4x4);
-
-#ifndef vp9_subpix_bilinear_avg4x4
-#define vp9_subpix_bilinear_avg4x4 vp9_bilinear_predict_avg4x4_c
-#endif
-extern prototype_subpixel_predict(vp9_subpix_bilinear_avg4x4);
-
typedef prototype_subpixel_predict((*vp9_subpix_fn_t));
-typedef struct {
- vp9_subpix_fn_t eighttap16x16;
- vp9_subpix_fn_t eighttap8x8;
- vp9_subpix_fn_t eighttap_avg16x16;
- vp9_subpix_fn_t eighttap_avg8x8;
- vp9_subpix_fn_t eighttap_avg4x4;
- vp9_subpix_fn_t eighttap8x4;
- vp9_subpix_fn_t eighttap4x4;
- vp9_subpix_fn_t eighttap16x16_sharp;
- vp9_subpix_fn_t eighttap8x8_sharp;
- vp9_subpix_fn_t eighttap_avg16x16_sharp;
- vp9_subpix_fn_t eighttap_avg8x8_sharp;
- vp9_subpix_fn_t eighttap_avg4x4_sharp;
- vp9_subpix_fn_t eighttap8x4_sharp;
- vp9_subpix_fn_t eighttap4x4_sharp;
- vp9_subpix_fn_t sixtap16x16;
- vp9_subpix_fn_t sixtap8x8;
- vp9_subpix_fn_t sixtap_avg16x16;
- vp9_subpix_fn_t sixtap_avg8x8;
- vp9_subpix_fn_t sixtap8x4;
- vp9_subpix_fn_t sixtap4x4;
- vp9_subpix_fn_t sixtap_avg4x4;
- vp9_subpix_fn_t bilinear16x16;
- vp9_subpix_fn_t bilinear8x8;
- vp9_subpix_fn_t bilinear_avg16x16;
- vp9_subpix_fn_t bilinear_avg8x8;
- vp9_subpix_fn_t bilinear8x4;
- vp9_subpix_fn_t bilinear4x4;
- vp9_subpix_fn_t bilinear_avg4x4;
-} vp9_subpix_rtcd_vtable_t;
-
-#if CONFIG_RUNTIME_CPU_DETECT
-#define SUBPIX_INVOKE(ctx,fn) (ctx)->fn
-#else
-#define SUBPIX_INVOKE(ctx,fn) vp9_subpix_##fn
-#endif
#endif
--- a/vp9/common/x86/x86_systemdependent.c
+++ b/vp9/common/x86/x86_systemdependent.c
@@ -10,7 +10,6 @@
#include "vpx_config.h"
#include "vpx_ports/x86.h"
-#include "vp9/common/subpixel.h"
#include "vp9/common/loopfilter.h"
#include "vp9/common/idct.h"
#include "vp9/common/pragmas.h"
@@ -38,17 +37,6 @@
// rtcd->idct.iwalsh16 = vp9_short_inv_walsh4x4_mmx;
// rtcd->idct.iwalsh1 = vp9_short_inv_walsh4x4_1_mmx;
- /* Disabled due to unsupported enhanced interpolation/high_prec mv
- rtcd->subpix.sixtap16x16 = vp9_sixtap_predict16x16_mmx;
- rtcd->subpix.sixtap8x8 = vp9_sixtap_predict8x8_mmx;
- rtcd->subpix.sixtap8x4 = vp9_sixtap_predict8x4_mmx;
- rtcd->subpix.sixtap4x4 = vp9_sixtap_predict4x4_mmx;
- */
- rtcd->subpix.bilinear16x16 = vp9_bilinear_predict16x16_mmx;
- rtcd->subpix.bilinear8x8 = vp9_bilinear_predict8x8_mmx;
- rtcd->subpix.bilinear8x4 = vp9_bilinear_predict8x4_mmx;
- rtcd->subpix.bilinear4x4 = vp9_bilinear_predict4x4_mmx;
-
#if CONFIG_POSTPROC
rtcd->postproc.down = vp9_mbpost_proc_down_mmx;
/*rtcd->postproc.across = vp9_mbpost_proc_across_ip_c;*/
@@ -65,14 +53,6 @@
// rtcd->idct.iwalsh16 = vp9_short_inv_walsh4x4_sse2;
- /* Disabled due to unsupported enhanced interpolation/high_prec mv
- rtcd->subpix.sixtap16x16 = vp9_sixtap_predict16x16_sse2;
- rtcd->subpix.sixtap8x8 = vp9_sixtap_predict8x8_sse2;
- rtcd->subpix.sixtap8x4 = vp9_sixtap_predict8x4_sse2;
- */
- rtcd->subpix.bilinear16x16 = vp9_bilinear_predict16x16_sse2;
- rtcd->subpix.bilinear8x8 = vp9_bilinear_predict8x8_sse2;
-
#if CONFIG_POSTPROC
rtcd->postproc.down = vp9_mbpost_proc_down_xmm;
rtcd->postproc.across = vp9_mbpost_proc_across_ip_xmm;
@@ -86,14 +66,6 @@
#if HAVE_SSSE3
if (flags & HAS_SSSE3) {
- /* Disabled due to unsupported enhanced interpolation/high_prec mv
- rtcd->subpix.sixtap16x16 = vp9_sixtap_predict16x16_ssse3;
- rtcd->subpix.sixtap8x8 = vp9_sixtap_predict8x8_ssse3;
- rtcd->subpix.sixtap8x4 = vp9_sixtap_predict8x4_ssse3;
- rtcd->subpix.sixtap4x4 = vp9_sixtap_predict4x4_ssse3;
- rtcd->subpix.bilinear16x16 = vp9_bilinear_predict16x16_ssse3;
- rtcd->subpix.bilinear8x8 = vp9_bilinear_predict8x8_ssse3;
- */
/* these are disable because of unsupported diagonal pred modes
rtcd->recon.build_intra_predictors_mbuv =
--- a/vp9/encoder/encodeframe.c
+++ b/vp9/encoder/encodeframe.c
@@ -33,7 +33,6 @@
#include <stdio.h>
#include <math.h>
#include <limits.h>
-#include "vp9/common/subpixel.h"
#include "vpx_ports/vpx_timer.h"
#include "vp9/common/pred_common.h"
#include "vp9/common/mvref_common.h"
--
⑨