| OLD | NEW |
| 1 sub vp8_common_forward_decls() { | 1 sub vp8_common_forward_decls() { |
| 2 print <<EOF | 2 print <<EOF |
| 3 /* | 3 /* |
| 4 * VP8 | 4 * VP8 |
| 5 */ | 5 */ |
| 6 | 6 |
| 7 struct blockd; | 7 struct blockd; |
| 8 struct macroblockd; | 8 struct macroblockd; |
| 9 struct loop_filter_info; | 9 struct loop_filter_info; |
| 10 | 10 |
| (...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 208 specialize qw/vp8_sixtap_predict8x8 mmx sse2 ssse3 media neon dspr2/; | 208 specialize qw/vp8_sixtap_predict8x8 mmx sse2 ssse3 media neon dspr2/; |
| 209 $vp8_sixtap_predict8x8_media=vp8_sixtap_predict8x8_armv6; | 209 $vp8_sixtap_predict8x8_media=vp8_sixtap_predict8x8_armv6; |
| 210 $vp8_sixtap_predict8x8_dspr2=vp8_sixtap_predict8x8_dspr2; | 210 $vp8_sixtap_predict8x8_dspr2=vp8_sixtap_predict8x8_dspr2; |
| 211 | 211 |
| 212 add_proto qw/void vp8_sixtap_predict8x4/, "unsigned char *src, int src_pitch, in
t xofst, int yofst, unsigned char *dst, int dst_pitch"; | 212 add_proto qw/void vp8_sixtap_predict8x4/, "unsigned char *src, int src_pitch, in
t xofst, int yofst, unsigned char *dst, int dst_pitch"; |
| 213 specialize qw/vp8_sixtap_predict8x4 mmx sse2 ssse3 media neon dspr2/; | 213 specialize qw/vp8_sixtap_predict8x4 mmx sse2 ssse3 media neon dspr2/; |
| 214 $vp8_sixtap_predict8x4_media=vp8_sixtap_predict8x4_armv6; | 214 $vp8_sixtap_predict8x4_media=vp8_sixtap_predict8x4_armv6; |
| 215 $vp8_sixtap_predict8x4_dspr2=vp8_sixtap_predict8x4_dspr2; | 215 $vp8_sixtap_predict8x4_dspr2=vp8_sixtap_predict8x4_dspr2; |
| 216 | 216 |
| 217 add_proto qw/void vp8_sixtap_predict4x4/, "unsigned char *src, int src_pitch, in
t xofst, int yofst, unsigned char *dst, int dst_pitch"; | 217 add_proto qw/void vp8_sixtap_predict4x4/, "unsigned char *src, int src_pitch, in
t xofst, int yofst, unsigned char *dst, int dst_pitch"; |
| 218 # Disable neon while investigating https://code.google.com/p/webm/issues/detail?
id=817 | 218 #TODO(johannkoenig): fix the neon version https://code.google.com/p/webm/issues/
detail?id=817 |
| 219 specialize qw/vp8_sixtap_predict4x4 mmx ssse3 media dspr2/; | 219 specialize qw/vp8_sixtap_predict4x4 mmx ssse3 media dspr2/; |
| 220 $vp8_sixtap_predict4x4_media=vp8_sixtap_predict4x4_armv6; | 220 $vp8_sixtap_predict4x4_media=vp8_sixtap_predict4x4_armv6; |
| 221 $vp8_sixtap_predict4x4_dspr2=vp8_sixtap_predict4x4_dspr2; | 221 $vp8_sixtap_predict4x4_dspr2=vp8_sixtap_predict4x4_dspr2; |
| 222 | 222 |
| 223 add_proto qw/void vp8_bilinear_predict16x16/, "unsigned char *src, int src_pitch
, int xofst, int yofst, unsigned char *dst, int dst_pitch"; | 223 add_proto qw/void vp8_bilinear_predict16x16/, "unsigned char *src, int src_pitch
, int xofst, int yofst, unsigned char *dst, int dst_pitch"; |
| 224 specialize qw/vp8_bilinear_predict16x16 mmx sse2 ssse3 media neon/; | 224 specialize qw/vp8_bilinear_predict16x16 mmx sse2 ssse3 media neon/; |
| 225 $vp8_bilinear_predict16x16_media=vp8_bilinear_predict16x16_armv6; | 225 $vp8_bilinear_predict16x16_media=vp8_bilinear_predict16x16_armv6; |
| 226 | 226 |
| 227 add_proto qw/void vp8_bilinear_predict8x8/, "unsigned char *src, int src_pitch,
int xofst, int yofst, unsigned char *dst, int dst_pitch"; | 227 add_proto qw/void vp8_bilinear_predict8x8/, "unsigned char *src, int src_pitch,
int xofst, int yofst, unsigned char *dst, int dst_pitch"; |
| 228 specialize qw/vp8_bilinear_predict8x8 mmx sse2 ssse3 media neon/; | 228 specialize qw/vp8_bilinear_predict8x8 mmx sse2 ssse3 media neon/; |
| 229 $vp8_bilinear_predict8x8_media=vp8_bilinear_predict8x8_armv6; | 229 $vp8_bilinear_predict8x8_media=vp8_bilinear_predict8x8_armv6; |
| 230 | 230 |
| 231 add_proto qw/void vp8_bilinear_predict8x4/, "unsigned char *src, int src_pitch,
int xofst, int yofst, unsigned char *dst, int dst_pitch"; | 231 add_proto qw/void vp8_bilinear_predict8x4/, "unsigned char *src, int src_pitch,
int xofst, int yofst, unsigned char *dst, int dst_pitch"; |
| 232 specialize qw/vp8_bilinear_predict8x4 mmx media neon/; | 232 specialize qw/vp8_bilinear_predict8x4 mmx media neon/; |
| 233 $vp8_bilinear_predict8x4_media=vp8_bilinear_predict8x4_armv6; | 233 $vp8_bilinear_predict8x4_media=vp8_bilinear_predict8x4_armv6; |
| 234 | 234 |
| 235 add_proto qw/void vp8_bilinear_predict4x4/, "unsigned char *src, int src_pitch,
int xofst, int yofst, unsigned char *dst, int dst_pitch"; | 235 add_proto qw/void vp8_bilinear_predict4x4/, "unsigned char *src, int src_pitch,
int xofst, int yofst, unsigned char *dst, int dst_pitch"; |
| 236 specialize qw/vp8_bilinear_predict4x4 mmx media neon/; | 236 #TODO(johannkoenig): fix the neon version https://code.google.com/p/webm/issues/
detail?id=892 |
| 237 specialize qw/vp8_bilinear_predict4x4 mmx media/; |
| 237 $vp8_bilinear_predict4x4_media=vp8_bilinear_predict4x4_armv6; | 238 $vp8_bilinear_predict4x4_media=vp8_bilinear_predict4x4_armv6; |
| 238 | 239 |
| 239 # | 240 # |
| 240 # Sub-pixel Variance | 241 # Sub-pixel Variance |
| 241 # | 242 # |
| 242 add_proto qw/unsigned int vp8_sub_pixel_variance4x4/, "const unsigned char *src
_ptr, int source_stride, int xoffset, int yoffset, const unsigned char *ref_p
tr, int Refstride, unsigned int *sse"; | 243 add_proto qw/unsigned int vp8_sub_pixel_variance4x4/, "const unsigned char *src
_ptr, int source_stride, int xoffset, int yoffset, const unsigned char *ref_p
tr, int Refstride, unsigned int *sse"; |
| 243 specialize qw/vp8_sub_pixel_variance4x4 mmx sse2/; | 244 specialize qw/vp8_sub_pixel_variance4x4 mmx sse2/; |
| 244 $vp8_sub_pixel_variance4x4_sse2=vp8_sub_pixel_variance4x4_wmt; | 245 $vp8_sub_pixel_variance4x4_sse2=vp8_sub_pixel_variance4x4_wmt; |
| 245 | 246 |
| 246 add_proto qw/unsigned int vp8_sub_pixel_variance8x8/, "const unsigned char *src
_ptr, int source_stride, int xoffset, int yoffset, const unsigned char *ref_p
tr, int Refstride, unsigned int *sse"; | 247 add_proto qw/unsigned int vp8_sub_pixel_variance8x8/, "const unsigned char *src
_ptr, int source_stride, int xoffset, int yoffset, const unsigned char *ref_p
tr, int Refstride, unsigned int *sse"; |
| 247 specialize qw/vp8_sub_pixel_variance8x8 mmx sse2 media neon_asm/; | 248 specialize qw/vp8_sub_pixel_variance8x8 mmx sse2 media/; |
| 248 $vp8_sub_pixel_variance8x8_sse2=vp8_sub_pixel_variance8x8_wmt; | 249 $vp8_sub_pixel_variance8x8_sse2=vp8_sub_pixel_variance8x8_wmt; |
| 249 $vp8_sub_pixel_variance8x8_media=vp8_sub_pixel_variance8x8_armv6; | 250 $vp8_sub_pixel_variance8x8_media=vp8_sub_pixel_variance8x8_armv6; |
| 250 $vp8_sub_pixel_variance8x8_neon_asm=vp8_sub_pixel_variance8x8_neon; | |
| 251 | 251 |
| 252 add_proto qw/unsigned int vp8_sub_pixel_variance8x16/, "const unsigned char *sr
c_ptr, int source_stride, int xoffset, int yoffset, const unsigned char *ref_
ptr, int Refstride, unsigned int *sse"; | 252 add_proto qw/unsigned int vp8_sub_pixel_variance8x16/, "const unsigned char *sr
c_ptr, int source_stride, int xoffset, int yoffset, const unsigned char *ref_
ptr, int Refstride, unsigned int *sse"; |
| 253 specialize qw/vp8_sub_pixel_variance8x16 mmx sse2/; | 253 specialize qw/vp8_sub_pixel_variance8x16 mmx sse2/; |
| 254 $vp8_sub_pixel_variance8x16_sse2=vp8_sub_pixel_variance8x16_wmt; | 254 $vp8_sub_pixel_variance8x16_sse2=vp8_sub_pixel_variance8x16_wmt; |
| 255 | 255 |
| 256 add_proto qw/unsigned int vp8_sub_pixel_variance16x8/, "const unsigned char *sr
c_ptr, int source_stride, int xoffset, int yoffset, const unsigned char *ref_
ptr, int Refstride, unsigned int *sse"; | 256 add_proto qw/unsigned int vp8_sub_pixel_variance16x8/, "const unsigned char *sr
c_ptr, int source_stride, int xoffset, int yoffset, const unsigned char *ref_
ptr, int Refstride, unsigned int *sse"; |
| 257 specialize qw/vp8_sub_pixel_variance16x8 mmx sse2 ssse3/; | 257 specialize qw/vp8_sub_pixel_variance16x8 mmx sse2 ssse3/; |
| 258 $vp8_sub_pixel_variance16x8_sse2=vp8_sub_pixel_variance16x8_wmt; | 258 $vp8_sub_pixel_variance16x8_sse2=vp8_sub_pixel_variance16x8_wmt; |
| 259 | 259 |
| 260 add_proto qw/unsigned int vp8_sub_pixel_variance16x16/, "const unsigned char *s
rc_ptr, int source_stride, int xoffset, int yoffset, const unsigned char *ref
_ptr, int Refstride, unsigned int *sse"; | 260 add_proto qw/unsigned int vp8_sub_pixel_variance16x16/, "const unsigned char *s
rc_ptr, int source_stride, int xoffset, int yoffset, const unsigned char *ref
_ptr, int Refstride, unsigned int *sse"; |
| (...skipping 16 matching lines...) Expand all Loading... |
| 277 specialize qw/vp8_variance_halfpixvar16x16_hv mmx sse2 media neon/; | 277 specialize qw/vp8_variance_halfpixvar16x16_hv mmx sse2 media neon/; |
| 278 $vp8_variance_halfpixvar16x16_hv_sse2=vp8_variance_halfpixvar16x16_hv_wmt; | 278 $vp8_variance_halfpixvar16x16_hv_sse2=vp8_variance_halfpixvar16x16_hv_wmt; |
| 279 $vp8_variance_halfpixvar16x16_hv_media=vp8_variance_halfpixvar16x16_hv_armv6; | 279 $vp8_variance_halfpixvar16x16_hv_media=vp8_variance_halfpixvar16x16_hv_armv6; |
| 280 | 280 |
| 281 # | 281 # |
| 282 # Encoder functions below this point. | 282 # Encoder functions below this point. |
| 283 # | 283 # |
| 284 if (vpx_config("CONFIG_VP8_ENCODER") eq "yes") { | 284 if (vpx_config("CONFIG_VP8_ENCODER") eq "yes") { |
| 285 | 285 |
| 286 # | 286 # |
| 287 # SSE (Sum Squared Error) | |
| 288 # | |
| 289 add_proto qw/unsigned int vp8_sub_pixel_mse16x16/, "const unsigned char *src_pt
r, int source_stride, int xoffset, int yoffset, const unsigned char *ref_ptr,
int Refstride, unsigned int *sse"; | |
| 290 specialize qw/vp8_sub_pixel_mse16x16 mmx sse2/; | |
| 291 $vp8_sub_pixel_mse16x16_sse2=vp8_sub_pixel_mse16x16_wmt; | |
| 292 | |
| 293 # | |
| 294 # Block copy | 287 # Block copy |
| 295 # | 288 # |
| 296 if ($opts{arch} =~ /x86/) { | 289 if ($opts{arch} =~ /x86/) { |
| 297 add_proto qw/void vp8_copy32xn/, "const unsigned char *src_ptr, int source_s
tride, unsigned char *dst_ptr, int dst_stride, int n"; | 290 add_proto qw/void vp8_copy32xn/, "const unsigned char *src_ptr, int source_s
tride, unsigned char *dst_ptr, int dst_stride, int n"; |
| 298 specialize qw/vp8_copy32xn sse2 sse3/; | 291 specialize qw/vp8_copy32xn sse2 sse3/; |
| 299 } | 292 } |
| 300 | 293 |
| 301 # | 294 # |
| 302 # Structured Similarity (SSIM) | 295 # Structured Similarity (SSIM) |
| 303 # | 296 # |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 388 if (vpx_config("CONFIG_TEMPORAL_DENOISING") eq "yes") { | 381 if (vpx_config("CONFIG_TEMPORAL_DENOISING") eq "yes") { |
| 389 add_proto qw/int vp8_denoiser_filter/, "unsigned char *mc_running_avg_y, int
mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char
*sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising"; | 382 add_proto qw/int vp8_denoiser_filter/, "unsigned char *mc_running_avg_y, int
mc_avg_y_stride, unsigned char *running_avg_y, int avg_y_stride, unsigned char
*sig, int sig_stride, unsigned int motion_magnitude, int increase_denoising"; |
| 390 specialize qw/vp8_denoiser_filter sse2 neon/; | 383 specialize qw/vp8_denoiser_filter sse2 neon/; |
| 391 add_proto qw/int vp8_denoiser_filter_uv/, "unsigned char *mc_running_avg, in
t mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig,
int sig_stride, unsigned int motion_magnitude, int increase_denoising"; | 384 add_proto qw/int vp8_denoiser_filter_uv/, "unsigned char *mc_running_avg, in
t mc_avg_stride, unsigned char *running_avg, int avg_stride, unsigned char *sig,
int sig_stride, unsigned int motion_magnitude, int increase_denoising"; |
| 392 specialize qw/vp8_denoiser_filter_uv sse2 neon/; | 385 specialize qw/vp8_denoiser_filter_uv sse2 neon/; |
| 393 } | 386 } |
| 394 | 387 |
| 395 # End of encoder only functions | 388 # End of encoder only functions |
| 396 } | 389 } |
| 397 1; | 390 1; |
| OLD | NEW |