xref: /OK3568_Linux_fs/buildroot/package/x265/0002-arm-asm-primitives.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunFixes "arm assembly fail to compile on 1.8"
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunDownloaded from upstream bug report:
4*4882a593Smuzhiyunhttps://bitbucket.org/multicoreware/x265/issues/406
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunSigned-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
7*4882a593Smuzhiyun
8*4882a593Smuzhiyun--- ./source/common/arm/asm-primitives.cpp.orig	2018-05-21 02:33:10.000000000 -0600
9*4882a593Smuzhiyun+++ ./source/common/arm/asm-primitives.cpp	2018-05-28 20:38:37.302378303 -0600
10*4882a593Smuzhiyun@@ -48,77 +48,77 @@ void setupAssemblyPrimitives(EncoderPrim
11*4882a593Smuzhiyun         p.ssim_4x4x2_core = PFX(ssim_4x4x2_core_neon);
12*4882a593Smuzhiyun
13*4882a593Smuzhiyun         // addAvg
14*4882a593Smuzhiyun-         p.pu[LUMA_4x4].addAvg   = PFX(addAvg_4x4_neon);
15*4882a593Smuzhiyun-         p.pu[LUMA_4x8].addAvg   = PFX(addAvg_4x8_neon);
16*4882a593Smuzhiyun-         p.pu[LUMA_4x16].addAvg  = PFX(addAvg_4x16_neon);
17*4882a593Smuzhiyun-         p.pu[LUMA_8x4].addAvg   = PFX(addAvg_8x4_neon);
18*4882a593Smuzhiyun-         p.pu[LUMA_8x8].addAvg   = PFX(addAvg_8x8_neon);
19*4882a593Smuzhiyun-         p.pu[LUMA_8x16].addAvg  = PFX(addAvg_8x16_neon);
20*4882a593Smuzhiyun-         p.pu[LUMA_8x32].addAvg  = PFX(addAvg_8x32_neon);
21*4882a593Smuzhiyun-         p.pu[LUMA_12x16].addAvg = PFX(addAvg_12x16_neon);
22*4882a593Smuzhiyun-         p.pu[LUMA_16x4].addAvg  = PFX(addAvg_16x4_neon);
23*4882a593Smuzhiyun-         p.pu[LUMA_16x8].addAvg  = PFX(addAvg_16x8_neon);
24*4882a593Smuzhiyun-         p.pu[LUMA_16x12].addAvg = PFX(addAvg_16x12_neon);
25*4882a593Smuzhiyun-         p.pu[LUMA_16x16].addAvg = PFX(addAvg_16x16_neon);
26*4882a593Smuzhiyun-         p.pu[LUMA_16x32].addAvg = PFX(addAvg_16x32_neon);
27*4882a593Smuzhiyun-         p.pu[LUMA_16x64].addAvg = PFX(addAvg_16x64_neon);
28*4882a593Smuzhiyun-         p.pu[LUMA_24x32].addAvg = PFX(addAvg_24x32_neon);
29*4882a593Smuzhiyun-         p.pu[LUMA_32x8].addAvg  = PFX(addAvg_32x8_neon);
30*4882a593Smuzhiyun-         p.pu[LUMA_32x16].addAvg = PFX(addAvg_32x16_neon);
31*4882a593Smuzhiyun-         p.pu[LUMA_32x24].addAvg = PFX(addAvg_32x24_neon);
32*4882a593Smuzhiyun-         p.pu[LUMA_32x32].addAvg = PFX(addAvg_32x32_neon);
33*4882a593Smuzhiyun-         p.pu[LUMA_32x64].addAvg = PFX(addAvg_32x64_neon);
34*4882a593Smuzhiyun-         p.pu[LUMA_48x64].addAvg = PFX(addAvg_48x64_neon);
35*4882a593Smuzhiyun-         p.pu[LUMA_64x16].addAvg = PFX(addAvg_64x16_neon);
36*4882a593Smuzhiyun-         p.pu[LUMA_64x32].addAvg = PFX(addAvg_64x32_neon);
37*4882a593Smuzhiyun-         p.pu[LUMA_64x48].addAvg = PFX(addAvg_64x48_neon);
38*4882a593Smuzhiyun-         p.pu[LUMA_64x64].addAvg = PFX(addAvg_64x64_neon);
39*4882a593Smuzhiyun+         p.pu[LUMA_4x4].addAvg[ALIGNED]   = PFX(addAvg_4x4_neon);
40*4882a593Smuzhiyun+         p.pu[LUMA_4x8].addAvg[ALIGNED]   = PFX(addAvg_4x8_neon);
41*4882a593Smuzhiyun+         p.pu[LUMA_4x16].addAvg[ALIGNED]  = PFX(addAvg_4x16_neon);
42*4882a593Smuzhiyun+         p.pu[LUMA_8x4].addAvg[ALIGNED]   = PFX(addAvg_8x4_neon);
43*4882a593Smuzhiyun+         p.pu[LUMA_8x8].addAvg[ALIGNED]   = PFX(addAvg_8x8_neon);
44*4882a593Smuzhiyun+         p.pu[LUMA_8x16].addAvg[ALIGNED]  = PFX(addAvg_8x16_neon);
45*4882a593Smuzhiyun+         p.pu[LUMA_8x32].addAvg[ALIGNED]  = PFX(addAvg_8x32_neon);
46*4882a593Smuzhiyun+         p.pu[LUMA_12x16].addAvg[ALIGNED] = PFX(addAvg_12x16_neon);
47*4882a593Smuzhiyun+         p.pu[LUMA_16x4].addAvg[ALIGNED]  = PFX(addAvg_16x4_neon);
48*4882a593Smuzhiyun+         p.pu[LUMA_16x8].addAvg[ALIGNED]  = PFX(addAvg_16x8_neon);
49*4882a593Smuzhiyun+         p.pu[LUMA_16x12].addAvg[ALIGNED] = PFX(addAvg_16x12_neon);
50*4882a593Smuzhiyun+         p.pu[LUMA_16x16].addAvg[ALIGNED] = PFX(addAvg_16x16_neon);
51*4882a593Smuzhiyun+         p.pu[LUMA_16x32].addAvg[ALIGNED] = PFX(addAvg_16x32_neon);
52*4882a593Smuzhiyun+         p.pu[LUMA_16x64].addAvg[ALIGNED] = PFX(addAvg_16x64_neon);
53*4882a593Smuzhiyun+         p.pu[LUMA_24x32].addAvg[ALIGNED] = PFX(addAvg_24x32_neon);
54*4882a593Smuzhiyun+         p.pu[LUMA_32x8].addAvg[ALIGNED]  = PFX(addAvg_32x8_neon);
55*4882a593Smuzhiyun+         p.pu[LUMA_32x16].addAvg[ALIGNED] = PFX(addAvg_32x16_neon);
56*4882a593Smuzhiyun+         p.pu[LUMA_32x24].addAvg[ALIGNED] = PFX(addAvg_32x24_neon);
57*4882a593Smuzhiyun+         p.pu[LUMA_32x32].addAvg[ALIGNED] = PFX(addAvg_32x32_neon);
58*4882a593Smuzhiyun+         p.pu[LUMA_32x64].addAvg[ALIGNED] = PFX(addAvg_32x64_neon);
59*4882a593Smuzhiyun+         p.pu[LUMA_48x64].addAvg[ALIGNED] = PFX(addAvg_48x64_neon);
60*4882a593Smuzhiyun+         p.pu[LUMA_64x16].addAvg[ALIGNED] = PFX(addAvg_64x16_neon);
61*4882a593Smuzhiyun+         p.pu[LUMA_64x32].addAvg[ALIGNED] = PFX(addAvg_64x32_neon);
62*4882a593Smuzhiyun+         p.pu[LUMA_64x48].addAvg[ALIGNED] = PFX(addAvg_64x48_neon);
63*4882a593Smuzhiyun+         p.pu[LUMA_64x64].addAvg[ALIGNED] = PFX(addAvg_64x64_neon);
64*4882a593Smuzhiyun
65*4882a593Smuzhiyun         // chroma addAvg
66*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_4x2].addAvg   = PFX(addAvg_4x2_neon);
67*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_4x4].addAvg   = PFX(addAvg_4x4_neon);
68*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_4x8].addAvg   = PFX(addAvg_4x8_neon);
69*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_4x16].addAvg  = PFX(addAvg_4x16_neon);
70*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_6x8].addAvg   = PFX(addAvg_6x8_neon);
71*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x2].addAvg   = PFX(addAvg_8x2_neon);
72*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x4].addAvg   = PFX(addAvg_8x4_neon);
73*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x6].addAvg   = PFX(addAvg_8x6_neon);
74*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x8].addAvg   = PFX(addAvg_8x8_neon);
75*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x16].addAvg  = PFX(addAvg_8x16_neon);
76*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x32].addAvg  = PFX(addAvg_8x32_neon);
77*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_12x16].addAvg = PFX(addAvg_12x16_neon);
78*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_16x4].addAvg  = PFX(addAvg_16x4_neon);
79*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_16x8].addAvg  = PFX(addAvg_16x8_neon);
80*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_16x12].addAvg = PFX(addAvg_16x12_neon);
81*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_16x16].addAvg = PFX(addAvg_16x16_neon);
82*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_16x32].addAvg = PFX(addAvg_16x32_neon);
83*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_24x32].addAvg = PFX(addAvg_24x32_neon);
84*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_32x8].addAvg  = PFX(addAvg_32x8_neon);
85*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_32x16].addAvg = PFX(addAvg_32x16_neon);
86*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_32x24].addAvg = PFX(addAvg_32x24_neon);
87*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].pu[CHROMA_420_32x32].addAvg = PFX(addAvg_32x32_neon);
88*4882a593Smuzhiyun-
89*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_4x8].addAvg   = PFX(addAvg_4x8_neon);
90*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_4x16].addAvg  = PFX(addAvg_4x16_neon);
91*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_4x32].addAvg  = PFX(addAvg_4x32_neon);
92*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_6x16].addAvg  = PFX(addAvg_6x16_neon);
93*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x4].addAvg   = PFX(addAvg_8x4_neon);
94*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x8].addAvg   = PFX(addAvg_8x8_neon);
95*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x12].addAvg  = PFX(addAvg_8x12_neon);
96*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x16].addAvg  = PFX(addAvg_8x16_neon);
97*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x32].addAvg  = PFX(addAvg_8x32_neon);
98*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x64].addAvg  = PFX(addAvg_8x64_neon);
99*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_12x32].addAvg = PFX(addAvg_12x32_neon);
100*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_16x8].addAvg  = PFX(addAvg_16x8_neon);
101*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_16x16].addAvg = PFX(addAvg_16x16_neon);
102*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_16x24].addAvg = PFX(addAvg_16x24_neon);
103*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_16x32].addAvg = PFX(addAvg_16x32_neon);
104*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_16x64].addAvg = PFX(addAvg_16x64_neon);
105*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_24x64].addAvg = PFX(addAvg_24x64_neon);
106*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_32x16].addAvg = PFX(addAvg_32x16_neon);
107*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_32x32].addAvg = PFX(addAvg_32x32_neon);
108*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_32x48].addAvg = PFX(addAvg_32x48_neon);
109*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].pu[CHROMA_422_32x64].addAvg = PFX(addAvg_32x64_neon);
110*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_4x2].addAvg[ALIGNED]   = PFX(addAvg_4x2_neon);
111*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_4x4].addAvg[ALIGNED]   = PFX(addAvg_4x4_neon);
112*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_4x8].addAvg[ALIGNED]   = PFX(addAvg_4x8_neon);
113*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_4x16].addAvg[ALIGNED]  = PFX(addAvg_4x16_neon);
114*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_6x8].addAvg[ALIGNED]   = PFX(addAvg_6x8_neon);
115*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x2].addAvg[ALIGNED]   = PFX(addAvg_8x2_neon);
116*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x4].addAvg[ALIGNED]   = PFX(addAvg_8x4_neon);
117*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x6].addAvg[ALIGNED]   = PFX(addAvg_8x6_neon);
118*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x8].addAvg[ALIGNED]   = PFX(addAvg_8x8_neon);
119*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x16].addAvg[ALIGNED]  = PFX(addAvg_8x16_neon);
120*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_8x32].addAvg[ALIGNED]  = PFX(addAvg_8x32_neon);
121*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_12x16].addAvg[ALIGNED] = PFX(addAvg_12x16_neon);
122*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_16x4].addAvg[ALIGNED]  = PFX(addAvg_16x4_neon);
123*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_16x8].addAvg[ALIGNED]  = PFX(addAvg_16x8_neon);
124*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_16x12].addAvg[ALIGNED] = PFX(addAvg_16x12_neon);
125*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_16x16].addAvg[ALIGNED] = PFX(addAvg_16x16_neon);
126*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_16x32].addAvg[ALIGNED] = PFX(addAvg_16x32_neon);
127*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_24x32].addAvg[ALIGNED] = PFX(addAvg_24x32_neon);
128*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_32x8].addAvg[ALIGNED]  = PFX(addAvg_32x8_neon);
129*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_32x16].addAvg[ALIGNED] = PFX(addAvg_32x16_neon);
130*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_32x24].addAvg[ALIGNED] = PFX(addAvg_32x24_neon);
131*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].pu[CHROMA_420_32x32].addAvg[ALIGNED] = PFX(addAvg_32x32_neon);
132*4882a593Smuzhiyun+
133*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_4x8].addAvg[ALIGNED]   = PFX(addAvg_4x8_neon);
134*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_4x16].addAvg[ALIGNED]  = PFX(addAvg_4x16_neon);
135*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_4x32].addAvg[ALIGNED]  = PFX(addAvg_4x32_neon);
136*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_6x16].addAvg[ALIGNED]  = PFX(addAvg_6x16_neon);
137*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x4].addAvg[ALIGNED]   = PFX(addAvg_8x4_neon);
138*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x8].addAvg[ALIGNED]   = PFX(addAvg_8x8_neon);
139*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x12].addAvg[ALIGNED]  = PFX(addAvg_8x12_neon);
140*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x16].addAvg[ALIGNED]  = PFX(addAvg_8x16_neon);
141*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x32].addAvg[ALIGNED]  = PFX(addAvg_8x32_neon);
142*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_8x64].addAvg[ALIGNED]  = PFX(addAvg_8x64_neon);
143*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_12x32].addAvg[ALIGNED] = PFX(addAvg_12x32_neon);
144*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_16x8].addAvg[ALIGNED]  = PFX(addAvg_16x8_neon);
145*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_16x16].addAvg[ALIGNED] = PFX(addAvg_16x16_neon);
146*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_16x24].addAvg[ALIGNED] = PFX(addAvg_16x24_neon);
147*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_16x32].addAvg[ALIGNED] = PFX(addAvg_16x32_neon);
148*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_16x64].addAvg[ALIGNED] = PFX(addAvg_16x64_neon);
149*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_24x64].addAvg[ALIGNED] = PFX(addAvg_24x64_neon);
150*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_32x16].addAvg[ALIGNED] = PFX(addAvg_32x16_neon);
151*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_32x32].addAvg[ALIGNED] = PFX(addAvg_32x32_neon);
152*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_32x48].addAvg[ALIGNED] = PFX(addAvg_32x48_neon);
153*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].pu[CHROMA_422_32x64].addAvg[ALIGNED] = PFX(addAvg_32x64_neon);
154*4882a593Smuzhiyun
155*4882a593Smuzhiyun         // quant
156*4882a593Smuzhiyun          p.quant = PFX(quant_neon);
157*4882a593Smuzhiyun@@ -402,7 +402,7 @@ void setupAssemblyPrimitives(EncoderPrim
158*4882a593Smuzhiyun         p.scale2D_64to32  = PFX(scale2D_64to32_neon);
159*4882a593Smuzhiyun
160*4882a593Smuzhiyun         // scale1D_128to64
161*4882a593Smuzhiyun-        p.scale1D_128to64 = PFX(scale1D_128to64_neon);
162*4882a593Smuzhiyun+        p.scale1D_128to64[ALIGNED] = PFX(scale1D_128to64_neon);
163*4882a593Smuzhiyun
164*4882a593Smuzhiyun         // copy_count
165*4882a593Smuzhiyun         p.cu[BLOCK_4x4].copy_cnt     = PFX(copy_cnt_4_neon);
166*4882a593Smuzhiyun@@ -411,37 +411,37 @@ void setupAssemblyPrimitives(EncoderPrim
167*4882a593Smuzhiyun         p.cu[BLOCK_32x32].copy_cnt   = PFX(copy_cnt_32_neon);
168*4882a593Smuzhiyun
169*4882a593Smuzhiyun         // filterPixelToShort
170*4882a593Smuzhiyun-        p.pu[LUMA_4x4].convert_p2s   = PFX(filterPixelToShort_4x4_neon);
171*4882a593Smuzhiyun-        p.pu[LUMA_4x8].convert_p2s   = PFX(filterPixelToShort_4x8_neon);
172*4882a593Smuzhiyun-        p.pu[LUMA_4x16].convert_p2s  = PFX(filterPixelToShort_4x16_neon);
173*4882a593Smuzhiyun-        p.pu[LUMA_8x4].convert_p2s   = PFX(filterPixelToShort_8x4_neon);
174*4882a593Smuzhiyun-        p.pu[LUMA_8x8].convert_p2s   = PFX(filterPixelToShort_8x8_neon);
175*4882a593Smuzhiyun-        p.pu[LUMA_8x16].convert_p2s  = PFX(filterPixelToShort_8x16_neon);
176*4882a593Smuzhiyun-        p.pu[LUMA_8x32].convert_p2s  = PFX(filterPixelToShort_8x32_neon);
177*4882a593Smuzhiyun-        p.pu[LUMA_12x16].convert_p2s = PFX(filterPixelToShort_12x16_neon);
178*4882a593Smuzhiyun-        p.pu[LUMA_16x4].convert_p2s  = PFX(filterPixelToShort_16x4_neon);
179*4882a593Smuzhiyun-        p.pu[LUMA_16x8].convert_p2s  = PFX(filterPixelToShort_16x8_neon);
180*4882a593Smuzhiyun-        p.pu[LUMA_16x12].convert_p2s = PFX(filterPixelToShort_16x12_neon);
181*4882a593Smuzhiyun-        p.pu[LUMA_16x16].convert_p2s = PFX(filterPixelToShort_16x16_neon);
182*4882a593Smuzhiyun-        p.pu[LUMA_16x32].convert_p2s = PFX(filterPixelToShort_16x32_neon);
183*4882a593Smuzhiyun-        p.pu[LUMA_16x64].convert_p2s = PFX(filterPixelToShort_16x64_neon);
184*4882a593Smuzhiyun-        p.pu[LUMA_24x32].convert_p2s = PFX(filterPixelToShort_24x32_neon);
185*4882a593Smuzhiyun-        p.pu[LUMA_32x8].convert_p2s  = PFX(filterPixelToShort_32x8_neon);
186*4882a593Smuzhiyun-        p.pu[LUMA_32x16].convert_p2s = PFX(filterPixelToShort_32x16_neon);
187*4882a593Smuzhiyun-        p.pu[LUMA_32x24].convert_p2s = PFX(filterPixelToShort_32x24_neon);
188*4882a593Smuzhiyun-        p.pu[LUMA_32x32].convert_p2s = PFX(filterPixelToShort_32x32_neon);
189*4882a593Smuzhiyun-        p.pu[LUMA_32x64].convert_p2s = PFX(filterPixelToShort_32x64_neon);
190*4882a593Smuzhiyun-        p.pu[LUMA_48x64].convert_p2s = PFX(filterPixelToShort_48x64_neon);
191*4882a593Smuzhiyun-        p.pu[LUMA_64x16].convert_p2s = PFX(filterPixelToShort_64x16_neon);
192*4882a593Smuzhiyun-        p.pu[LUMA_64x32].convert_p2s = PFX(filterPixelToShort_64x32_neon);
193*4882a593Smuzhiyun-        p.pu[LUMA_64x48].convert_p2s = PFX(filterPixelToShort_64x48_neon);
194*4882a593Smuzhiyun-        p.pu[LUMA_64x64].convert_p2s = PFX(filterPixelToShort_64x64_neon);
195*4882a593Smuzhiyun+        p.pu[LUMA_4x4].convert_p2s[ALIGNED]   = PFX(filterPixelToShort_4x4_neon);
196*4882a593Smuzhiyun+        p.pu[LUMA_4x8].convert_p2s[ALIGNED]   = PFX(filterPixelToShort_4x8_neon);
197*4882a593Smuzhiyun+        p.pu[LUMA_4x16].convert_p2s[ALIGNED]  = PFX(filterPixelToShort_4x16_neon);
198*4882a593Smuzhiyun+        p.pu[LUMA_8x4].convert_p2s[ALIGNED]   = PFX(filterPixelToShort_8x4_neon);
199*4882a593Smuzhiyun+        p.pu[LUMA_8x8].convert_p2s[ALIGNED]   = PFX(filterPixelToShort_8x8_neon);
200*4882a593Smuzhiyun+        p.pu[LUMA_8x16].convert_p2s[ALIGNED]  = PFX(filterPixelToShort_8x16_neon);
201*4882a593Smuzhiyun+        p.pu[LUMA_8x32].convert_p2s[ALIGNED]  = PFX(filterPixelToShort_8x32_neon);
202*4882a593Smuzhiyun+        p.pu[LUMA_12x16].convert_p2s[ALIGNED] = PFX(filterPixelToShort_12x16_neon);
203*4882a593Smuzhiyun+        p.pu[LUMA_16x4].convert_p2s[ALIGNED]  = PFX(filterPixelToShort_16x4_neon);
204*4882a593Smuzhiyun+        p.pu[LUMA_16x8].convert_p2s[ALIGNED]  = PFX(filterPixelToShort_16x8_neon);
205*4882a593Smuzhiyun+        p.pu[LUMA_16x12].convert_p2s[ALIGNED] = PFX(filterPixelToShort_16x12_neon);
206*4882a593Smuzhiyun+        p.pu[LUMA_16x16].convert_p2s[ALIGNED] = PFX(filterPixelToShort_16x16_neon);
207*4882a593Smuzhiyun+        p.pu[LUMA_16x32].convert_p2s[ALIGNED] = PFX(filterPixelToShort_16x32_neon);
208*4882a593Smuzhiyun+        p.pu[LUMA_16x64].convert_p2s[ALIGNED] = PFX(filterPixelToShort_16x64_neon);
209*4882a593Smuzhiyun+        p.pu[LUMA_24x32].convert_p2s[ALIGNED] = PFX(filterPixelToShort_24x32_neon);
210*4882a593Smuzhiyun+        p.pu[LUMA_32x8].convert_p2s[ALIGNED]  = PFX(filterPixelToShort_32x8_neon);
211*4882a593Smuzhiyun+        p.pu[LUMA_32x16].convert_p2s[ALIGNED] = PFX(filterPixelToShort_32x16_neon);
212*4882a593Smuzhiyun+        p.pu[LUMA_32x24].convert_p2s[ALIGNED] = PFX(filterPixelToShort_32x24_neon);
213*4882a593Smuzhiyun+        p.pu[LUMA_32x32].convert_p2s[ALIGNED] = PFX(filterPixelToShort_32x32_neon);
214*4882a593Smuzhiyun+        p.pu[LUMA_32x64].convert_p2s[ALIGNED] = PFX(filterPixelToShort_32x64_neon);
215*4882a593Smuzhiyun+        p.pu[LUMA_48x64].convert_p2s[ALIGNED] = PFX(filterPixelToShort_48x64_neon);
216*4882a593Smuzhiyun+        p.pu[LUMA_64x16].convert_p2s[ALIGNED] = PFX(filterPixelToShort_64x16_neon);
217*4882a593Smuzhiyun+        p.pu[LUMA_64x32].convert_p2s[ALIGNED] = PFX(filterPixelToShort_64x32_neon);
218*4882a593Smuzhiyun+        p.pu[LUMA_64x48].convert_p2s[ALIGNED] = PFX(filterPixelToShort_64x48_neon);
219*4882a593Smuzhiyun+        p.pu[LUMA_64x64].convert_p2s[ALIGNED] = PFX(filterPixelToShort_64x64_neon);
220*4882a593Smuzhiyun
221*4882a593Smuzhiyun         // Block_fill
222*4882a593Smuzhiyun-        p.cu[BLOCK_4x4].blockfill_s   = PFX(blockfill_s_4x4_neon);
223*4882a593Smuzhiyun-        p.cu[BLOCK_8x8].blockfill_s   = PFX(blockfill_s_8x8_neon);
224*4882a593Smuzhiyun-        p.cu[BLOCK_16x16].blockfill_s = PFX(blockfill_s_16x16_neon);
225*4882a593Smuzhiyun-        p.cu[BLOCK_32x32].blockfill_s = PFX(blockfill_s_32x32_neon);
226*4882a593Smuzhiyun+        p.cu[BLOCK_4x4].blockfill_s[ALIGNED]   = PFX(blockfill_s_4x4_neon);
227*4882a593Smuzhiyun+        p.cu[BLOCK_8x8].blockfill_s[ALIGNED]   = PFX(blockfill_s_8x8_neon);
228*4882a593Smuzhiyun+        p.cu[BLOCK_16x16].blockfill_s[ALIGNED] = PFX(blockfill_s_16x16_neon);
229*4882a593Smuzhiyun+        p.cu[BLOCK_32x32].blockfill_s[ALIGNED] = PFX(blockfill_s_32x32_neon);
230*4882a593Smuzhiyun
231*4882a593Smuzhiyun         // Blockcopy_ss
232*4882a593Smuzhiyun         p.cu[BLOCK_4x4].copy_ss   = PFX(blockcopy_ss_4x4_neon);
233*4882a593Smuzhiyun@@ -495,21 +495,21 @@ void setupAssemblyPrimitives(EncoderPrim
234*4882a593Smuzhiyun         p.chroma[X265_CSP_I422].cu[BLOCK_422_32x64].copy_sp = PFX(blockcopy_sp_32x64_neon);
235*4882a593Smuzhiyun
236*4882a593Smuzhiyun         // pixel_add_ps
237*4882a593Smuzhiyun-        p.cu[BLOCK_4x4].add_ps   = PFX(pixel_add_ps_4x4_neon);
238*4882a593Smuzhiyun-        p.cu[BLOCK_8x8].add_ps   = PFX(pixel_add_ps_8x8_neon);
239*4882a593Smuzhiyun-        p.cu[BLOCK_16x16].add_ps = PFX(pixel_add_ps_16x16_neon);
240*4882a593Smuzhiyun-        p.cu[BLOCK_32x32].add_ps = PFX(pixel_add_ps_32x32_neon);
241*4882a593Smuzhiyun-        p.cu[BLOCK_64x64].add_ps = PFX(pixel_add_ps_64x64_neon);
242*4882a593Smuzhiyun+        p.cu[BLOCK_4x4].add_ps[ALIGNED]   = PFX(pixel_add_ps_4x4_neon);
243*4882a593Smuzhiyun+        p.cu[BLOCK_8x8].add_ps[ALIGNED]   = PFX(pixel_add_ps_8x8_neon);
244*4882a593Smuzhiyun+        p.cu[BLOCK_16x16].add_ps[ALIGNED] = PFX(pixel_add_ps_16x16_neon);
245*4882a593Smuzhiyun+        p.cu[BLOCK_32x32].add_ps[ALIGNED] = PFX(pixel_add_ps_32x32_neon);
246*4882a593Smuzhiyun+        p.cu[BLOCK_64x64].add_ps[ALIGNED] = PFX(pixel_add_ps_64x64_neon);
247*4882a593Smuzhiyun
248*4882a593Smuzhiyun         // chroma add_ps
249*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].cu[BLOCK_420_4x4].add_ps   = PFX(pixel_add_ps_4x4_neon);
250*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].cu[BLOCK_420_8x8].add_ps   = PFX(pixel_add_ps_8x8_neon);
251*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].cu[BLOCK_420_16x16].add_ps = PFX(pixel_add_ps_16x16_neon);
252*4882a593Smuzhiyun-        p.chroma[X265_CSP_I420].cu[BLOCK_420_32x32].add_ps = PFX(pixel_add_ps_32x32_neon);
253*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].cu[BLOCK_422_4x8].add_ps   = PFX(pixel_add_ps_4x8_neon);
254*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].cu[BLOCK_422_8x16].add_ps  = PFX(pixel_add_ps_8x16_neon);
255*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].cu[BLOCK_422_16x32].add_ps = PFX(pixel_add_ps_16x32_neon);
256*4882a593Smuzhiyun-        p.chroma[X265_CSP_I422].cu[BLOCK_422_32x64].add_ps = PFX(pixel_add_ps_32x64_neon);
257*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].cu[BLOCK_420_4x4].add_ps[ALIGNED]   = PFX(pixel_add_ps_4x4_neon);
258*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].cu[BLOCK_420_8x8].add_ps[ALIGNED]   = PFX(pixel_add_ps_8x8_neon);
259*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].cu[BLOCK_420_16x16].add_ps[ALIGNED] = PFX(pixel_add_ps_16x16_neon);
260*4882a593Smuzhiyun+        p.chroma[X265_CSP_I420].cu[BLOCK_420_32x32].add_ps[ALIGNED] = PFX(pixel_add_ps_32x32_neon);
261*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].cu[BLOCK_422_4x8].add_ps[ALIGNED]   = PFX(pixel_add_ps_4x8_neon);
262*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].cu[BLOCK_422_8x16].add_ps[ALIGNED]  = PFX(pixel_add_ps_8x16_neon);
263*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].cu[BLOCK_422_16x32].add_ps[ALIGNED] = PFX(pixel_add_ps_16x32_neon);
264*4882a593Smuzhiyun+        p.chroma[X265_CSP_I422].cu[BLOCK_422_32x64].add_ps[ALIGNED] = PFX(pixel_add_ps_32x64_neon);
265*4882a593Smuzhiyun
266*4882a593Smuzhiyun         // cpy2Dto1D_shr
267*4882a593Smuzhiyun         p.cu[BLOCK_4x4].cpy2Dto1D_shr   = PFX(cpy2Dto1D_shr_4x4_neon);
268*4882a593Smuzhiyun@@ -518,10 +518,10 @@ void setupAssemblyPrimitives(EncoderPrim
269*4882a593Smuzhiyun         p.cu[BLOCK_32x32].cpy2Dto1D_shr = PFX(cpy2Dto1D_shr_32x32_neon);
270*4882a593Smuzhiyun
271*4882a593Smuzhiyun         // ssd_s
272*4882a593Smuzhiyun-        p.cu[BLOCK_4x4].ssd_s   = PFX(pixel_ssd_s_4x4_neon);
273*4882a593Smuzhiyun-        p.cu[BLOCK_8x8].ssd_s   = PFX(pixel_ssd_s_8x8_neon);
274*4882a593Smuzhiyun-        p.cu[BLOCK_16x16].ssd_s = PFX(pixel_ssd_s_16x16_neon);
275*4882a593Smuzhiyun-        p.cu[BLOCK_32x32].ssd_s = PFX(pixel_ssd_s_32x32_neon);
276*4882a593Smuzhiyun+        p.cu[BLOCK_4x4].ssd_s[ALIGNED]   = PFX(pixel_ssd_s_4x4_neon);
277*4882a593Smuzhiyun+        p.cu[BLOCK_8x8].ssd_s[ALIGNED]   = PFX(pixel_ssd_s_8x8_neon);
278*4882a593Smuzhiyun+        p.cu[BLOCK_16x16].ssd_s[ALIGNED] = PFX(pixel_ssd_s_16x16_neon);
279*4882a593Smuzhiyun+        p.cu[BLOCK_32x32].ssd_s[ALIGNED] = PFX(pixel_ssd_s_32x32_neon);
280*4882a593Smuzhiyun
281*4882a593Smuzhiyun         // sse_ss
282*4882a593Smuzhiyun         p.cu[BLOCK_4x4].sse_ss   = PFX(pixel_sse_ss_4x4_neon);
283*4882a593Smuzhiyun@@ -548,10 +548,10 @@ void setupAssemblyPrimitives(EncoderPrim
284*4882a593Smuzhiyun         p.chroma[X265_CSP_I422].cu[BLOCK_422_32x64].sub_ps = PFX(pixel_sub_ps_32x64_neon);
285*4882a593Smuzhiyun
286*4882a593Smuzhiyun         // calc_Residual
287*4882a593Smuzhiyun-        p.cu[BLOCK_4x4].calcresidual   = PFX(getResidual4_neon);
288*4882a593Smuzhiyun-        p.cu[BLOCK_8x8].calcresidual   = PFX(getResidual8_neon);
289*4882a593Smuzhiyun-        p.cu[BLOCK_16x16].calcresidual = PFX(getResidual16_neon);
290*4882a593Smuzhiyun-        p.cu[BLOCK_32x32].calcresidual = PFX(getResidual32_neon);
291*4882a593Smuzhiyun+        p.cu[BLOCK_4x4].calcresidual[ALIGNED]   = PFX(getResidual4_neon);
292*4882a593Smuzhiyun+        p.cu[BLOCK_8x8].calcresidual[ALIGNED]   = PFX(getResidual8_neon);
293*4882a593Smuzhiyun+        p.cu[BLOCK_16x16].calcresidual[ALIGNED] = PFX(getResidual16_neon);
294*4882a593Smuzhiyun+        p.cu[BLOCK_32x32].calcresidual[ALIGNED] = PFX(getResidual32_neon);
295*4882a593Smuzhiyun
296*4882a593Smuzhiyun         // sse_pp
297*4882a593Smuzhiyun         p.cu[BLOCK_4x4].sse_pp   = PFX(pixel_sse_pp_4x4_neon);
298*4882a593Smuzhiyun@@ -722,31 +722,31 @@ void setupAssemblyPrimitives(EncoderPrim
299*4882a593Smuzhiyun         p.pu[LUMA_64x64].sad_x4 = PFX(sad_x4_64x64_neon);
300*4882a593Smuzhiyun
301*4882a593Smuzhiyun         // pixel_avg_pp
302*4882a593Smuzhiyun-        p.pu[LUMA_4x4].pixelavg_pp   = PFX(pixel_avg_pp_4x4_neon);
303*4882a593Smuzhiyun-        p.pu[LUMA_4x8].pixelavg_pp   = PFX(pixel_avg_pp_4x8_neon);
304*4882a593Smuzhiyun-        p.pu[LUMA_4x16].pixelavg_pp  = PFX(pixel_avg_pp_4x16_neon);
305*4882a593Smuzhiyun-        p.pu[LUMA_8x4].pixelavg_pp   = PFX(pixel_avg_pp_8x4_neon);
306*4882a593Smuzhiyun-        p.pu[LUMA_8x8].pixelavg_pp   = PFX(pixel_avg_pp_8x8_neon);
307*4882a593Smuzhiyun-        p.pu[LUMA_8x16].pixelavg_pp  = PFX(pixel_avg_pp_8x16_neon);
308*4882a593Smuzhiyun-        p.pu[LUMA_8x32].pixelavg_pp  = PFX(pixel_avg_pp_8x32_neon);
309*4882a593Smuzhiyun-        p.pu[LUMA_12x16].pixelavg_pp = PFX(pixel_avg_pp_12x16_neon);
310*4882a593Smuzhiyun-        p.pu[LUMA_16x4].pixelavg_pp  = PFX(pixel_avg_pp_16x4_neon);
311*4882a593Smuzhiyun-        p.pu[LUMA_16x8].pixelavg_pp  = PFX(pixel_avg_pp_16x8_neon);
312*4882a593Smuzhiyun-        p.pu[LUMA_16x12].pixelavg_pp = PFX(pixel_avg_pp_16x12_neon);
313*4882a593Smuzhiyun-        p.pu[LUMA_16x16].pixelavg_pp = PFX(pixel_avg_pp_16x16_neon);
314*4882a593Smuzhiyun-        p.pu[LUMA_16x32].pixelavg_pp = PFX(pixel_avg_pp_16x32_neon);
315*4882a593Smuzhiyun-        p.pu[LUMA_16x64].pixelavg_pp = PFX(pixel_avg_pp_16x64_neon);
316*4882a593Smuzhiyun-        p.pu[LUMA_24x32].pixelavg_pp = PFX(pixel_avg_pp_24x32_neon);
317*4882a593Smuzhiyun-        p.pu[LUMA_32x8].pixelavg_pp  = PFX(pixel_avg_pp_32x8_neon);
318*4882a593Smuzhiyun-        p.pu[LUMA_32x16].pixelavg_pp = PFX(pixel_avg_pp_32x16_neon);
319*4882a593Smuzhiyun-        p.pu[LUMA_32x24].pixelavg_pp = PFX(pixel_avg_pp_32x24_neon);
320*4882a593Smuzhiyun-        p.pu[LUMA_32x32].pixelavg_pp = PFX(pixel_avg_pp_32x32_neon);
321*4882a593Smuzhiyun-        p.pu[LUMA_32x64].pixelavg_pp = PFX(pixel_avg_pp_32x64_neon);
322*4882a593Smuzhiyun-        p.pu[LUMA_48x64].pixelavg_pp = PFX(pixel_avg_pp_48x64_neon);
323*4882a593Smuzhiyun-        p.pu[LUMA_64x16].pixelavg_pp = PFX(pixel_avg_pp_64x16_neon);
324*4882a593Smuzhiyun-        p.pu[LUMA_64x32].pixelavg_pp = PFX(pixel_avg_pp_64x32_neon);
325*4882a593Smuzhiyun-        p.pu[LUMA_64x48].pixelavg_pp = PFX(pixel_avg_pp_64x48_neon);
326*4882a593Smuzhiyun-        p.pu[LUMA_64x64].pixelavg_pp = PFX(pixel_avg_pp_64x64_neon);
327*4882a593Smuzhiyun+        p.pu[LUMA_4x4].pixelavg_pp[ALIGNED]   = PFX(pixel_avg_pp_4x4_neon);
328*4882a593Smuzhiyun+        p.pu[LUMA_4x8].pixelavg_pp[ALIGNED]   = PFX(pixel_avg_pp_4x8_neon);
329*4882a593Smuzhiyun+        p.pu[LUMA_4x16].pixelavg_pp[ALIGNED]  = PFX(pixel_avg_pp_4x16_neon);
330*4882a593Smuzhiyun+        p.pu[LUMA_8x4].pixelavg_pp[ALIGNED]   = PFX(pixel_avg_pp_8x4_neon);
331*4882a593Smuzhiyun+        p.pu[LUMA_8x8].pixelavg_pp[ALIGNED]   = PFX(pixel_avg_pp_8x8_neon);
332*4882a593Smuzhiyun+        p.pu[LUMA_8x16].pixelavg_pp[ALIGNED]  = PFX(pixel_avg_pp_8x16_neon);
333*4882a593Smuzhiyun+        p.pu[LUMA_8x32].pixelavg_pp[ALIGNED]  = PFX(pixel_avg_pp_8x32_neon);
334*4882a593Smuzhiyun+        p.pu[LUMA_12x16].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_12x16_neon);
335*4882a593Smuzhiyun+        p.pu[LUMA_16x4].pixelavg_pp[ALIGNED]  = PFX(pixel_avg_pp_16x4_neon);
336*4882a593Smuzhiyun+        p.pu[LUMA_16x8].pixelavg_pp[ALIGNED]  = PFX(pixel_avg_pp_16x8_neon);
337*4882a593Smuzhiyun+        p.pu[LUMA_16x12].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_16x12_neon);
338*4882a593Smuzhiyun+        p.pu[LUMA_16x16].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_16x16_neon);
339*4882a593Smuzhiyun+        p.pu[LUMA_16x32].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_16x32_neon);
340*4882a593Smuzhiyun+        p.pu[LUMA_16x64].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_16x64_neon);
341*4882a593Smuzhiyun+        p.pu[LUMA_24x32].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_24x32_neon);
342*4882a593Smuzhiyun+        p.pu[LUMA_32x8].pixelavg_pp[ALIGNED]  = PFX(pixel_avg_pp_32x8_neon);
343*4882a593Smuzhiyun+        p.pu[LUMA_32x16].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_32x16_neon);
344*4882a593Smuzhiyun+        p.pu[LUMA_32x24].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_32x24_neon);
345*4882a593Smuzhiyun+        p.pu[LUMA_32x32].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_32x32_neon);
346*4882a593Smuzhiyun+        p.pu[LUMA_32x64].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_32x64_neon);
347*4882a593Smuzhiyun+        p.pu[LUMA_48x64].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_48x64_neon);
348*4882a593Smuzhiyun+        p.pu[LUMA_64x16].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_64x16_neon);
349*4882a593Smuzhiyun+        p.pu[LUMA_64x32].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_64x32_neon);
350*4882a593Smuzhiyun+        p.pu[LUMA_64x48].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_64x48_neon);
351*4882a593Smuzhiyun+        p.pu[LUMA_64x64].pixelavg_pp[ALIGNED] = PFX(pixel_avg_pp_64x64_neon);
352*4882a593Smuzhiyun
353*4882a593Smuzhiyun         // planecopy
354*4882a593Smuzhiyun         p.planecopy_cp = PFX(pixel_planecopy_cp_neon);
355