]> granicus.if.org Git - libvpx/commitdiff
Revert "Implement highbd_d63_predictor using Neon"
authorJames Zern <jzern@google.com>
Wed, 1 Mar 2023 20:14:51 +0000 (12:14 -0800)
committerJames Zern <jzern@google.com>
Wed, 1 Mar 2023 20:17:00 +0000 (12:17 -0800)
This reverts commit 7cdf139e3d6237386e0f93bdb0bdc1b459c663bf.

This causes failures in the VP9/ExternalFrameBufferMD5Test and
VP9/TestVectorTest.MD5Match tests in both armv7 and aarch64 builds.

Change-Id: I7ac4ba0ddc70e7e7860df9f962e6658defe1cdd5

test/test_intra_pred_speed.cc
test/vp9_intrapred_test.cc
vpx_dsp/arm/highbd_intrapred_neon.c
vpx_dsp/vpx_dsp_rtcd_defs.pl

index e721a459ad2f6d0394bb37b5ccdf915bf40b9a96..24af471eaad23fb81840803d2e5614b65511de48 100644 (file)
@@ -566,16 +566,14 @@ HIGHBD_INTRA_PRED_TEST(
     vpx_highbd_dc_128_predictor_4x4_neon, vpx_highbd_v_predictor_4x4_neon,
     vpx_highbd_h_predictor_4x4_neon, vpx_highbd_d45_predictor_4x4_neon,
     vpx_highbd_d135_predictor_4x4_neon, vpx_highbd_d117_predictor_4x4_neon,
-    nullptr, nullptr, vpx_highbd_d63_predictor_4x4_neon,
-    vpx_highbd_tm_predictor_4x4_neon)
+    nullptr, nullptr, nullptr, vpx_highbd_tm_predictor_4x4_neon)
 HIGHBD_INTRA_PRED_TEST(
     NEON, TestHighbdIntraPred8, vpx_highbd_dc_predictor_8x8_neon,
     vpx_highbd_dc_left_predictor_8x8_neon, vpx_highbd_dc_top_predictor_8x8_neon,
     vpx_highbd_dc_128_predictor_8x8_neon, vpx_highbd_v_predictor_8x8_neon,
     vpx_highbd_h_predictor_8x8_neon, vpx_highbd_d45_predictor_8x8_neon,
     vpx_highbd_d135_predictor_8x8_neon, vpx_highbd_d117_predictor_8x8_neon,
-    nullptr, nullptr, vpx_highbd_d63_predictor_8x8_neon,
-    vpx_highbd_tm_predictor_8x8_neon)
+    nullptr, nullptr, nullptr, vpx_highbd_tm_predictor_8x8_neon)
 HIGHBD_INTRA_PRED_TEST(
     NEON, TestHighbdIntraPred16, vpx_highbd_dc_predictor_16x16_neon,
     vpx_highbd_dc_left_predictor_16x16_neon,
@@ -583,8 +581,7 @@ HIGHBD_INTRA_PRED_TEST(
     vpx_highbd_dc_128_predictor_16x16_neon, vpx_highbd_v_predictor_16x16_neon,
     vpx_highbd_h_predictor_16x16_neon, vpx_highbd_d45_predictor_16x16_neon,
     vpx_highbd_d135_predictor_16x16_neon, vpx_highbd_d117_predictor_16x16_neon,
-    nullptr, nullptr, vpx_highbd_d63_predictor_16x16_neon,
-    vpx_highbd_tm_predictor_16x16_neon)
+    nullptr, nullptr, nullptr, vpx_highbd_tm_predictor_16x16_neon)
 HIGHBD_INTRA_PRED_TEST(
     NEON, TestHighbdIntraPred32, vpx_highbd_dc_predictor_32x32_neon,
     vpx_highbd_dc_left_predictor_32x32_neon,
@@ -592,8 +589,7 @@ HIGHBD_INTRA_PRED_TEST(
     vpx_highbd_dc_128_predictor_32x32_neon, vpx_highbd_v_predictor_32x32_neon,
     vpx_highbd_h_predictor_32x32_neon, vpx_highbd_d45_predictor_32x32_neon,
     vpx_highbd_d135_predictor_32x32_neon, vpx_highbd_d117_predictor_32x32_neon,
-    nullptr, nullptr, vpx_highbd_d63_predictor_32x32_neon,
-    vpx_highbd_tm_predictor_32x32_neon)
+    nullptr, nullptr, nullptr, vpx_highbd_tm_predictor_32x32_neon)
 #endif  // HAVE_NEON
 
 #endif  // CONFIG_VP9_HIGHBITDEPTH
index c4e0e78ac5fac9d08b0120ca29371e9fa39f0f50..83e371df6e275300169181503f068711a9b77183 100644 (file)
@@ -848,14 +848,6 @@ INSTANTIATE_TEST_SUITE_P(
                              &vpx_highbd_d45_predictor_16x16_c, 16, 8),
         HighbdIntraPredParam(&vpx_highbd_d45_predictor_32x32_neon,
                              &vpx_highbd_d45_predictor_32x32_c, 32, 8),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_4x4_neon,
-                             &vpx_highbd_d63_predictor_4x4_c, 4, 8),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_8x8_neon,
-                             &vpx_highbd_d63_predictor_8x8_c, 8, 8),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_16x16_neon,
-                             &vpx_highbd_d63_predictor_16x16_c, 16, 8),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_32x32_neon,
-                             &vpx_highbd_d63_predictor_32x32_c, 32, 8),
         HighbdIntraPredParam(&vpx_highbd_d117_predictor_4x4_neon,
                              &vpx_highbd_d117_predictor_4x4_c, 4, 8),
         HighbdIntraPredParam(&vpx_highbd_d117_predictor_8x8_neon,
@@ -940,14 +932,6 @@ INSTANTIATE_TEST_SUITE_P(
                              &vpx_highbd_d45_predictor_16x16_c, 16, 10),
         HighbdIntraPredParam(&vpx_highbd_d45_predictor_32x32_neon,
                              &vpx_highbd_d45_predictor_32x32_c, 32, 10),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_4x4_neon,
-                             &vpx_highbd_d63_predictor_4x4_c, 4, 10),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_8x8_neon,
-                             &vpx_highbd_d63_predictor_8x8_c, 8, 10),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_16x16_neon,
-                             &vpx_highbd_d63_predictor_16x16_c, 16, 10),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_32x32_neon,
-                             &vpx_highbd_d63_predictor_32x32_c, 32, 10),
         HighbdIntraPredParam(&vpx_highbd_d117_predictor_4x4_neon,
                              &vpx_highbd_d117_predictor_4x4_c, 4, 10),
         HighbdIntraPredParam(&vpx_highbd_d117_predictor_8x8_neon,
@@ -1032,14 +1016,6 @@ INSTANTIATE_TEST_SUITE_P(
                              &vpx_highbd_d45_predictor_16x16_c, 16, 12),
         HighbdIntraPredParam(&vpx_highbd_d45_predictor_32x32_neon,
                              &vpx_highbd_d45_predictor_32x32_c, 32, 12),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_4x4_neon,
-                             &vpx_highbd_d63_predictor_4x4_c, 4, 12),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_8x8_neon,
-                             &vpx_highbd_d63_predictor_8x8_c, 8, 12),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_16x16_neon,
-                             &vpx_highbd_d63_predictor_16x16_c, 16, 12),
-        HighbdIntraPredParam(&vpx_highbd_d63_predictor_32x32_neon,
-                             &vpx_highbd_d63_predictor_32x32_c, 32, 12),
         HighbdIntraPredParam(&vpx_highbd_d117_predictor_4x4_neon,
                              &vpx_highbd_d117_predictor_4x4_c, 4, 10),
         HighbdIntraPredParam(&vpx_highbd_d117_predictor_8x8_neon,
index 424bf5f4bcaa0c0eaa582b593e9870636872d050..d1e335c263874e987f79a5c84894bb56b60b5dbc 100644 (file)
@@ -453,284 +453,6 @@ void vpx_highbd_d45_predictor_32x32_neon(uint16_t *dst, ptrdiff_t stride,
 
 // -----------------------------------------------------------------------------
 
-void vpx_highbd_d63_predictor_4x4_neon(uint16_t *dst, ptrdiff_t stride,
-                                       const uint16_t *above,
-                                       const uint16_t *left, int bd) {
-  uint16x4_t a0, a1, a2, a3, d0, d1;
-  (void)left;
-  (void)bd;
-
-  a0 = vld1_u16(above + 0);
-  a1 = vld1_u16(above + 1);
-  a2 = vld1_u16(above + 2);
-  a3 = vld1_dup_u16(above + 3);
-
-  d0 = vrhadd_u16(a0, a1);
-  d1 = vrhadd_u16(vhadd_u16(a0, a2), a1);
-
-  vst1_u16(dst + 0 * stride, d0);
-  vst1_u16(dst + 1 * stride, d1);
-  vst1_u16(dst + 2 * stride, vext_u16(d0, a3, 1));
-  vst1_u16(dst + 3 * stride, vext_u16(d1, a3, 1));
-}
-
-void vpx_highbd_d63_predictor_8x8_neon(uint16_t *dst, ptrdiff_t stride,
-                                       const uint16_t *above,
-                                       const uint16_t *left, int bd) {
-  uint16x8_t a0, a1, a2, a7, d0, d1;
-  (void)left;
-  (void)bd;
-
-  a0 = vld1q_u16(above + 0);
-  a1 = vld1q_u16(above + 1);
-  a2 = vld1q_u16(above + 2);
-  a7 = vld1q_dup_u16(above + 7);
-
-  d0 = vrhaddq_u16(a0, a1);
-  d1 = vrhaddq_u16(vhaddq_u16(a0, a2), a1);
-
-  vst1q_u16(dst + 0 * stride, d0);
-  vst1q_u16(dst + 1 * stride, d1);
-  vst1q_u16(dst + 2 * stride, vextq_u16(d0, a7, 1));
-  vst1q_u16(dst + 3 * stride, vextq_u16(d1, a7, 1));
-  vst1q_u16(dst + 4 * stride, vextq_u16(d0, a7, 2));
-  vst1q_u16(dst + 5 * stride, vextq_u16(d1, a7, 2));
-  vst1q_u16(dst + 6 * stride, vextq_u16(d0, a7, 3));
-  vst1q_u16(dst + 7 * stride, vextq_u16(d1, a7, 3));
-}
-
-void vpx_highbd_d63_predictor_16x16_neon(uint16_t *dst, ptrdiff_t stride,
-                                         const uint16_t *above,
-                                         const uint16_t *left, int bd) {
-  uint16x8_t a0, a1, a2, a8, a9, a10, a15, d0_lo, d0_hi, d1_lo, d1_hi;
-  (void)left;
-  (void)bd;
-
-  a0 = vld1q_u16(above + 0);
-  a1 = vld1q_u16(above + 1);
-  a2 = vld1q_u16(above + 2);
-  a8 = vld1q_u16(above + 8);
-  a9 = vld1q_u16(above + 9);
-  a10 = vld1q_u16(above + 10);
-  a15 = vld1q_dup_u16(above + 15);
-
-  d0_lo = vrhaddq_u16(a0, a1);
-  d0_hi = vrhaddq_u16(a8, a9);
-  d1_lo = vrhaddq_u16(vhaddq_u16(a0, a2), a1);
-  d1_hi = vrhaddq_u16(vhaddq_u16(a8, a10), a9);
-
-  vst1q_u16(dst + 0 * stride + 0, d0_lo);
-  vst1q_u16(dst + 0 * stride + 8, d0_hi);
-  vst1q_u16(dst + 1 * stride + 0, d1_lo);
-  vst1q_u16(dst + 1 * stride + 8, d1_hi);
-  vst1q_u16(dst + 2 * stride + 0, vextq_u16(d0_lo, d0_hi, 1));
-  vst1q_u16(dst + 2 * stride + 8, vextq_u16(d0_hi, a15, 1));
-  vst1q_u16(dst + 3 * stride + 0, vextq_u16(d1_lo, d1_hi, 1));
-  vst1q_u16(dst + 3 * stride + 8, vextq_u16(d1_hi, a15, 1));
-  vst1q_u16(dst + 4 * stride + 0, vextq_u16(d0_lo, d0_hi, 2));
-  vst1q_u16(dst + 4 * stride + 8, vextq_u16(d0_hi, a15, 2));
-  vst1q_u16(dst + 5 * stride + 0, vextq_u16(d1_lo, d1_hi, 2));
-  vst1q_u16(dst + 5 * stride + 8, vextq_u16(d1_hi, a15, 2));
-  vst1q_u16(dst + 6 * stride + 0, vextq_u16(d0_lo, d0_hi, 3));
-  vst1q_u16(dst + 6 * stride + 8, vextq_u16(d0_hi, a15, 3));
-  vst1q_u16(dst + 7 * stride + 0, vextq_u16(d1_lo, d1_hi, 3));
-  vst1q_u16(dst + 7 * stride + 8, vextq_u16(d1_hi, a15, 3));
-  vst1q_u16(dst + 8 * stride + 0, vextq_u16(d0_lo, d0_hi, 4));
-  vst1q_u16(dst + 8 * stride + 8, vextq_u16(d0_hi, a15, 4));
-  vst1q_u16(dst + 9 * stride + 0, vextq_u16(d1_lo, d1_hi, 4));
-  vst1q_u16(dst + 9 * stride + 8, vextq_u16(d1_hi, a15, 4));
-  vst1q_u16(dst + 10 * stride + 0, vextq_u16(d0_lo, d0_hi, 5));
-  vst1q_u16(dst + 10 * stride + 8, vextq_u16(d0_hi, a15, 5));
-  vst1q_u16(dst + 11 * stride + 0, vextq_u16(d1_lo, d1_hi, 5));
-  vst1q_u16(dst + 11 * stride + 8, vextq_u16(d1_hi, a15, 5));
-  vst1q_u16(dst + 12 * stride + 0, vextq_u16(d0_lo, d0_hi, 6));
-  vst1q_u16(dst + 12 * stride + 8, vextq_u16(d0_hi, a15, 6));
-  vst1q_u16(dst + 13 * stride + 0, vextq_u16(d1_lo, d1_hi, 6));
-  vst1q_u16(dst + 13 * stride + 8, vextq_u16(d1_hi, a15, 6));
-  vst1q_u16(dst + 14 * stride + 0, vextq_u16(d0_lo, d0_hi, 7));
-  vst1q_u16(dst + 14 * stride + 8, vextq_u16(d0_hi, a15, 7));
-  vst1q_u16(dst + 15 * stride + 0, vextq_u16(d1_lo, d1_hi, 7));
-  vst1q_u16(dst + 15 * stride + 8, vextq_u16(d1_hi, a15, 7));
-}
-
-void vpx_highbd_d63_predictor_32x32_neon(uint16_t *dst, ptrdiff_t stride,
-                                         const uint16_t *above,
-                                         const uint16_t *left, int bd) {
-  uint16x8_t a0, a1, a2, a8, a9, a10, a16, a17, a18, a24, a25, a26, a31, d0[4],
-      d1[4];
-  (void)left;
-  (void)bd;
-
-  a0 = vld1q_u16(above + 0);
-  a1 = vld1q_u16(above + 1);
-  a2 = vld1q_u16(above + 2);
-  a8 = vld1q_u16(above + 8);
-  a9 = vld1q_u16(above + 9);
-  a10 = vld1q_u16(above + 10);
-  a16 = vld1q_u16(above + 16);
-  a17 = vld1q_u16(above + 17);
-  a18 = vld1q_u16(above + 18);
-  a24 = vld1q_u16(above + 24);
-  a25 = vld1q_u16(above + 25);
-  a26 = vld1q_u16(above + 26);
-  a31 = vld1q_dup_u16(above + 31);
-
-  d0[0] = vrhaddq_u16(a0, a1);
-  d0[1] = vrhaddq_u16(a8, a9);
-  d0[2] = vrhaddq_u16(a16, a17);
-  d0[3] = vrhaddq_u16(a24, a25);
-  d1[0] = vrhaddq_u16(vhaddq_u16(a0, a2), a1);
-  d1[1] = vrhaddq_u16(vhaddq_u16(a8, a10), a9);
-  d1[2] = vrhaddq_u16(vhaddq_u16(a16, a18), a17);
-  d1[3] = vrhaddq_u16(vhaddq_u16(a24, a26), a25);
-
-  vst1q_u16(dst + 0 * stride + 0, d0[0]);
-  vst1q_u16(dst + 0 * stride + 8, d0[1]);
-  vst1q_u16(dst + 0 * stride + 16, d0[2]);
-  vst1q_u16(dst + 0 * stride + 24, d0[3]);
-  vst1q_u16(dst + 1 * stride + 0, d1[0]);
-  vst1q_u16(dst + 1 * stride + 8, d1[1]);
-  vst1q_u16(dst + 1 * stride + 16, d1[2]);
-  vst1q_u16(dst + 1 * stride + 24, d1[3]);
-
-  vst1q_u16(dst + 2 * stride + 0, vextq_u16(d0[0], d0[1], 1));
-  vst1q_u16(dst + 2 * stride + 8, vextq_u16(d0[1], d0[2], 1));
-  vst1q_u16(dst + 2 * stride + 16, vextq_u16(d0[2], d0[3], 1));
-  vst1q_u16(dst + 2 * stride + 24, vextq_u16(d0[3], a31, 1));
-  vst1q_u16(dst + 3 * stride + 0, vextq_u16(d1[0], d1[1], 1));
-  vst1q_u16(dst + 3 * stride + 8, vextq_u16(d1[1], d1[2], 1));
-  vst1q_u16(dst + 3 * stride + 16, vextq_u16(d1[2], d1[3], 1));
-  vst1q_u16(dst + 3 * stride + 24, vextq_u16(d1[3], a31, 1));
-
-  vst1q_u16(dst + 4 * stride + 0, vextq_u16(d0[0], d0[1], 2));
-  vst1q_u16(dst + 4 * stride + 8, vextq_u16(d0[1], d0[2], 2));
-  vst1q_u16(dst + 4 * stride + 16, vextq_u16(d0[2], d0[3], 2));
-  vst1q_u16(dst + 4 * stride + 24, vextq_u16(d0[3], a31, 2));
-  vst1q_u16(dst + 5 * stride + 0, vextq_u16(d1[0], d1[1], 2));
-  vst1q_u16(dst + 5 * stride + 8, vextq_u16(d1[1], d1[2], 2));
-  vst1q_u16(dst + 5 * stride + 16, vextq_u16(d1[2], d1[3], 2));
-  vst1q_u16(dst + 5 * stride + 24, vextq_u16(d1[3], a31, 2));
-
-  vst1q_u16(dst + 6 * stride + 0, vextq_u16(d0[0], d0[1], 3));
-  vst1q_u16(dst + 6 * stride + 8, vextq_u16(d0[1], d0[2], 3));
-  vst1q_u16(dst + 6 * stride + 16, vextq_u16(d0[2], d0[3], 3));
-  vst1q_u16(dst + 6 * stride + 24, vextq_u16(d0[3], a31, 3));
-  vst1q_u16(dst + 7 * stride + 0, vextq_u16(d1[0], d1[1], 3));
-  vst1q_u16(dst + 7 * stride + 8, vextq_u16(d1[1], d1[2], 3));
-  vst1q_u16(dst + 7 * stride + 16, vextq_u16(d1[2], d1[3], 3));
-  vst1q_u16(dst + 7 * stride + 24, vextq_u16(d1[3], a31, 3));
-
-  vst1q_u16(dst + 8 * stride + 0, vextq_u16(d0[0], d0[1], 4));
-  vst1q_u16(dst + 8 * stride + 8, vextq_u16(d0[1], d0[2], 4));
-  vst1q_u16(dst + 8 * stride + 16, vextq_u16(d0[2], d0[3], 4));
-  vst1q_u16(dst + 8 * stride + 24, vextq_u16(d0[3], a31, 4));
-  vst1q_u16(dst + 9 * stride + 0, vextq_u16(d1[0], d1[1], 4));
-  vst1q_u16(dst + 9 * stride + 8, vextq_u16(d1[1], d1[2], 4));
-  vst1q_u16(dst + 9 * stride + 16, vextq_u16(d1[2], d1[3], 4));
-  vst1q_u16(dst + 9 * stride + 24, vextq_u16(d1[3], a31, 4));
-
-  vst1q_u16(dst + 10 * stride + 0, vextq_u16(d0[0], d0[1], 5));
-  vst1q_u16(dst + 10 * stride + 8, vextq_u16(d0[1], d0[2], 5));
-  vst1q_u16(dst + 10 * stride + 16, vextq_u16(d0[2], d0[3], 5));
-  vst1q_u16(dst + 10 * stride + 24, vextq_u16(d0[3], a31, 5));
-  vst1q_u16(dst + 11 * stride + 0, vextq_u16(d1[0], d1[1], 5));
-  vst1q_u16(dst + 11 * stride + 8, vextq_u16(d1[1], d1[2], 5));
-  vst1q_u16(dst + 11 * stride + 16, vextq_u16(d1[2], d1[3], 5));
-  vst1q_u16(dst + 11 * stride + 24, vextq_u16(d1[3], a31, 5));
-
-  vst1q_u16(dst + 12 * stride + 0, vextq_u16(d0[0], d0[1], 6));
-  vst1q_u16(dst + 12 * stride + 8, vextq_u16(d0[1], d0[2], 6));
-  vst1q_u16(dst + 12 * stride + 16, vextq_u16(d0[2], d0[3], 6));
-  vst1q_u16(dst + 12 * stride + 24, vextq_u16(d0[3], a31, 6));
-  vst1q_u16(dst + 13 * stride + 0, vextq_u16(d1[0], d1[1], 6));
-  vst1q_u16(dst + 13 * stride + 8, vextq_u16(d1[1], d1[2], 6));
-  vst1q_u16(dst + 13 * stride + 16, vextq_u16(d1[2], d1[3], 6));
-  vst1q_u16(dst + 13 * stride + 24, vextq_u16(d1[3], a31, 6));
-
-  vst1q_u16(dst + 14 * stride + 0, vextq_u16(d0[0], d0[1], 7));
-  vst1q_u16(dst + 14 * stride + 8, vextq_u16(d0[1], d0[2], 7));
-  vst1q_u16(dst + 14 * stride + 16, vextq_u16(d0[2], d0[3], 7));
-  vst1q_u16(dst + 14 * stride + 24, vextq_u16(d0[3], a31, 7));
-  vst1q_u16(dst + 15 * stride + 0, vextq_u16(d1[0], d1[1], 7));
-  vst1q_u16(dst + 15 * stride + 8, vextq_u16(d1[1], d1[2], 7));
-  vst1q_u16(dst + 15 * stride + 16, vextq_u16(d1[2], d1[3], 7));
-  vst1q_u16(dst + 15 * stride + 24, vextq_u16(d1[3], a31, 7));
-
-  vst1q_u16(dst + 16 * stride + 0, d0[1]);
-  vst1q_u16(dst + 16 * stride + 8, d0[2]);
-  vst1q_u16(dst + 16 * stride + 16, d0[3]);
-  vst1q_u16(dst + 16 * stride + 24, a31);
-  vst1q_u16(dst + 17 * stride + 0, d1[1]);
-  vst1q_u16(dst + 17 * stride + 8, d1[2]);
-  vst1q_u16(dst + 17 * stride + 16, d1[3]);
-  vst1q_u16(dst + 17 * stride + 24, a31);
-
-  vst1q_u16(dst + 18 * stride + 0, vextq_u16(d0[1], d0[2], 1));
-  vst1q_u16(dst + 18 * stride + 8, vextq_u16(d0[2], d0[3], 1));
-  vst1q_u16(dst + 18 * stride + 16, vextq_u16(d0[3], a31, 1));
-  vst1q_u16(dst + 18 * stride + 24, a31);
-  vst1q_u16(dst + 19 * stride + 0, vextq_u16(d1[1], d1[2], 1));
-  vst1q_u16(dst + 19 * stride + 8, vextq_u16(d1[2], d1[3], 1));
-  vst1q_u16(dst + 19 * stride + 16, vextq_u16(d1[3], a31, 1));
-  vst1q_u16(dst + 19 * stride + 24, a31);
-
-  vst1q_u16(dst + 20 * stride + 0, vextq_u16(d0[1], d0[2], 2));
-  vst1q_u16(dst + 20 * stride + 8, vextq_u16(d0[2], d0[3], 2));
-  vst1q_u16(dst + 20 * stride + 16, vextq_u16(d0[3], a31, 2));
-  vst1q_u16(dst + 20 * stride + 24, a31);
-  vst1q_u16(dst + 21 * stride + 0, vextq_u16(d1[1], d1[2], 2));
-  vst1q_u16(dst + 21 * stride + 8, vextq_u16(d1[2], d1[3], 2));
-  vst1q_u16(dst + 21 * stride + 16, vextq_u16(d1[3], a31, 2));
-  vst1q_u16(dst + 21 * stride + 24, a31);
-
-  vst1q_u16(dst + 22 * stride + 0, vextq_u16(d0[1], d0[2], 3));
-  vst1q_u16(dst + 22 * stride + 8, vextq_u16(d0[2], d0[3], 3));
-  vst1q_u16(dst + 22 * stride + 16, vextq_u16(d0[3], a31, 3));
-  vst1q_u16(dst + 22 * stride + 24, a31);
-  vst1q_u16(dst + 23 * stride + 0, vextq_u16(d1[1], d1[2], 3));
-  vst1q_u16(dst + 23 * stride + 8, vextq_u16(d1[2], d1[3], 3));
-  vst1q_u16(dst + 23 * stride + 16, vextq_u16(d1[3], a31, 3));
-  vst1q_u16(dst + 23 * stride + 24, a31);
-
-  vst1q_u16(dst + 24 * stride + 0, vextq_u16(d0[1], d0[2], 4));
-  vst1q_u16(dst + 24 * stride + 8, vextq_u16(d0[2], d0[3], 4));
-  vst1q_u16(dst + 24 * stride + 16, vextq_u16(d0[3], a31, 4));
-  vst1q_u16(dst + 24 * stride + 24, a31);
-  vst1q_u16(dst + 25 * stride + 0, vextq_u16(d1[1], d1[2], 4));
-  vst1q_u16(dst + 25 * stride + 8, vextq_u16(d1[2], d1[3], 4));
-  vst1q_u16(dst + 25 * stride + 16, vextq_u16(d1[3], a31, 4));
-  vst1q_u16(dst + 25 * stride + 24, a31);
-
-  vst1q_u16(dst + 26 * stride + 0, vextq_u16(d0[1], d0[2], 5));
-  vst1q_u16(dst + 26 * stride + 8, vextq_u16(d0[2], d0[3], 5));
-  vst1q_u16(dst + 26 * stride + 16, vextq_u16(d0[3], a31, 5));
-  vst1q_u16(dst + 26 * stride + 24, a31);
-  vst1q_u16(dst + 27 * stride + 0, vextq_u16(d1[1], d1[2], 5));
-  vst1q_u16(dst + 27 * stride + 8, vextq_u16(d1[2], d1[3], 5));
-  vst1q_u16(dst + 27 * stride + 16, vextq_u16(d1[3], a31, 5));
-  vst1q_u16(dst + 27 * stride + 24, a31);
-
-  vst1q_u16(dst + 28 * stride + 0, vextq_u16(d0[1], d0[2], 6));
-  vst1q_u16(dst + 28 * stride + 8, vextq_u16(d0[2], d0[3], 6));
-  vst1q_u16(dst + 28 * stride + 16, vextq_u16(d0[3], a31, 6));
-  vst1q_u16(dst + 28 * stride + 24, a31);
-  vst1q_u16(dst + 29 * stride + 0, vextq_u16(d1[1], d1[2], 6));
-  vst1q_u16(dst + 29 * stride + 8, vextq_u16(d1[2], d1[3], 6));
-  vst1q_u16(dst + 29 * stride + 16, vextq_u16(d1[3], a31, 6));
-  vst1q_u16(dst + 29 * stride + 24, a31);
-
-  vst1q_u16(dst + 30 * stride + 0, vextq_u16(d0[1], d0[2], 7));
-  vst1q_u16(dst + 30 * stride + 8, vextq_u16(d0[2], d0[3], 7));
-  vst1q_u16(dst + 30 * stride + 16, vextq_u16(d0[3], a31, 7));
-  vst1q_u16(dst + 30 * stride + 24, a31);
-  vst1q_u16(dst + 31 * stride + 0, vextq_u16(d1[1], d1[2], 7));
-  vst1q_u16(dst + 31 * stride + 8, vextq_u16(d1[2], d1[3], 7));
-  vst1q_u16(dst + 31 * stride + 16, vextq_u16(d1[3], a31, 7));
-  vst1q_u16(dst + 31 * stride + 24, a31);
-}
-
-// -----------------------------------------------------------------------------
-
 void vpx_highbd_d117_predictor_4x4_neon(uint16_t *dst, ptrdiff_t stride,
                                         const uint16_t *above,
                                         const uint16_t *left, int bd) {
index b6f5d4a099f137d2db8a5ec0450a8a1859877101..072b10d3d1c65123629eb866328d853bbd523221 100644 (file)
@@ -221,7 +221,7 @@ if (vpx_config("CONFIG_VP9_HIGHBITDEPTH") eq "yes") {
   specialize qw/vpx_highbd_d45_predictor_4x4 neon ssse3/;
 
   add_proto qw/void vpx_highbd_d63_predictor_4x4/, "uint16_t *dst, ptrdiff_t stride, const uint16_t *above, const uint16_t *left, int bd";
-  specialize qw/vpx_highbd_d63_predictor_4x4 neon sse2/;
+  specialize qw/vpx_highbd_d63_predictor_4x4 sse2/;
 
   add_proto qw/void vpx_highbd_h_predictor_4x4/, "uint16_t *dst, ptrdiff_t stride, const uint16_t *above, const uint16_t *left, int bd";
   specialize qw/vpx_highbd_h_predictor_4x4 neon sse2/;
@@ -260,7 +260,7 @@ if (vpx_config("CONFIG_VP9_HIGHBITDEPTH") eq "yes") {
   specialize qw/vpx_highbd_d45_predictor_8x8 neon ssse3/;
 
   add_proto qw/void vpx_highbd_d63_predictor_8x8/, "uint16_t *dst, ptrdiff_t stride, const uint16_t *above, const uint16_t *left, int bd";
-  specialize qw/vpx_highbd_d63_predictor_8x8 neon ssse3/;
+  specialize qw/vpx_highbd_d63_predictor_8x8 ssse3/;
 
   add_proto qw/void vpx_highbd_h_predictor_8x8/, "uint16_t *dst, ptrdiff_t stride, const uint16_t *above, const uint16_t *left, int bd";
   specialize qw/vpx_highbd_h_predictor_8x8 neon sse2/;
@@ -299,7 +299,7 @@ if (vpx_config("CONFIG_VP9_HIGHBITDEPTH") eq "yes") {
   specialize qw/vpx_highbd_d45_predictor_16x16 neon ssse3/;
 
   add_proto qw/void vpx_highbd_d63_predictor_16x16/, "uint16_t *dst, ptrdiff_t stride, const uint16_t *above, const uint16_t *left, int bd";
-  specialize qw/vpx_highbd_d63_predictor_16x16 neon ssse3/;
+  specialize qw/vpx_highbd_d63_predictor_16x16 ssse3/;
 
   add_proto qw/void vpx_highbd_h_predictor_16x16/, "uint16_t *dst, ptrdiff_t stride, const uint16_t *above, const uint16_t *left, int bd";
   specialize qw/vpx_highbd_h_predictor_16x16 neon sse2/;
@@ -338,7 +338,7 @@ if (vpx_config("CONFIG_VP9_HIGHBITDEPTH") eq "yes") {
   specialize qw/vpx_highbd_d45_predictor_32x32 neon ssse3/;
 
   add_proto qw/void vpx_highbd_d63_predictor_32x32/, "uint16_t *dst, ptrdiff_t stride, const uint16_t *above, const uint16_t *left, int bd";
-  specialize qw/vpx_highbd_d63_predictor_32x32 neon ssse3/;
+  specialize qw/vpx_highbd_d63_predictor_32x32 ssse3/;
 
   add_proto qw/void vpx_highbd_h_predictor_32x32/, "uint16_t *dst, ptrdiff_t stride, const uint16_t *above, const uint16_t *left, int bd";
   specialize qw/vpx_highbd_h_predictor_32x32 neon sse2/;