dsputil: x86: Convert mpeg4 qpel and dsputil avg to yasm

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
vdpau: add missing pixel format for H.264

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
hwaccel: do not offer unsupported pixel formats

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
dsputil: add missing HAVE_YASM guard

Fix compile error under
"--disable-optimizations --disable-yasm --disable-inline-asm"

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
dsputil: x86: Correct the number of registers used in put_no_rnd_pixels16_l2

put_no_rnd_pixels16_l2 allocated 5 instead of 6 registers.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
arm: vp8: Fix the plain-armv6 version of vp8_luma_dc_wht

This makes the plain-armv6 version use the same registers as the
armv6t2 version above.

This fixes fate-vp8 on plain-armv6 devices.

Signed-off-by: Martin Storsjö <martin@martin.st>
swscale: GBRP output support

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
hpel: split off halfpel MC from dsputil into new DSP context.

This allows objects to use just halfpel MC without depending on all
of dsputil. E.g. indeo3, interplayvideo and svq1dec become dsputil-
independent. The fine-grained HAVE_HPEL_* flags allow only compiling
a subset of the HPEL functions if a codec only uses a subset of them.

TODO: use original C code in original commit, then rewrite C code in
      separate commit
TODO: HAVE_HPEL_* flags cleanup
TODO: alpha, sparc needs testing

C code, no_rnd hpel timings (MMX dsp 100% disabled):

post 8px/iter, 32bit
1913 decicycles in copy, 32348596 runs, 1205836 skips
2079 decicycles in y2, 8304698 runs, 83910 skips
2010 decicycles in x2, 8326972 runs, 61636 skips
5515 decicycles in xy2, 16771767 runs, 5449 skips
1248 decicycles in 0, 33210386 runs, 344046 skips
1536 decicycles in copy, 32683138 runs, 871294 skips
2005 decicycles in y2, 8282438 runs, 106170 skips
1942 decicycles in x2, 8310731 runs, 77877 skips
5325 decicycles in xy2, 16768841 runs, 8375 skips
1309 decicycles in 0, 33106336 runs, 448096 skips
1488 decicycles in copy, 32743201 runs, 811231 skips
1984 decicycles in y2, 8278963 runs, 109645 skips
1923 decicycles in x2, 8309052 runs, 79556 skips
5280 decicycles in xy2, 16767911 runs, 9305 skips
1313 decicycles in 0, 33091111 runs, 463321 skips
1492 decicycles in copy, 32741415 runs, 813017 skips
1988 decicycles in y2, 8276899 runs, 111709 skips
1922 decicycles in x2, 8306368 runs, 82240 skips
5290 decicycles in xy2, 16767970 runs, 9246 skips
1315 decicycles in 0, 33089037 runs, 465395 skips

post 4px/iter, 32bit
2127 decicycles in y2, 8282974 runs, 105634 skips
2000 decicycles in x2, 8309413 runs, 79195 skips
8712 decicycles in copy, 33544776 runs, 9656 skips
3879 decicycles in xy2, 16738093 runs, 39123 skips
1661 decicycles in 0, 32999537 runs, 554895 skips
2045 decicycles in y2, 8262262 runs, 126346 skips
1908 decicycles in x2, 8290548 runs, 98060 skips
7864 decicycles in copy, 33544118 runs, 10314 skips
3529 decicycles in xy2, 16695174 runs, 82042 skips
1728 decicycles in 0, 32850645 runs, 703787 skips
2055 decicycles in y2, 8263804 runs, 124804 skips
1905 decicycles in x2, 8292473 runs, 96135 skips
7805 decicycles in copy, 33545161 runs, 9271 skips
3546 decicycles in xy2, 16699728 runs, 77488 skips
1731 decicycles in 0, 32860561 runs, 693871 skips
2058 decicycles in y2, 8262011 runs, 126597 skips
1911 decicycles in x2, 8289931 runs, 98677 skips
7835 decicycles in copy, 33542898 runs, 11534 skips
3554 decicycles in xy2, 16698074 runs, 79142 skips
1730 decicycles in 0, 32849318 runs, 705114 skips

pre, 32bit
2233 decicycles in y2, 8282643 runs, 105965 skips
2016 decicycles in x2, 8309916 runs, 78692 skips
7365 decicycles in copy, 33544943 runs, 9489 skips
3887 decicycles in xy2, 16737947 runs, 39269 skips
1671 decicycles in 0, 32997042 runs, 557390 skips
2157 decicycles in y2, 8263760 runs, 124848 skips
1891 decicycles in x2, 8293128 runs, 95480 skips
6548 decicycles in copy, 33527483 runs, 26949 skips
3541 decicycles in xy2, 16697936 runs, 79280 skips
1731 decicycles in 0, 32864155 runs, 690277 skips
2156 decicycles in y2, 8262876 runs, 125732 skips
1895 decicycles in x2, 8294654 runs, 93954 skips
9131 decicycles in copy, 33544004 runs, 10428 skips
3533 decicycles in xy2, 16695705 runs, 81511 skips
1727 decicycles in 0, 32862977 runs, 691455 skips
2158 decicycles in y2, 8266684 runs, 121924 skips
1898 decicycles in x2, 8295607 runs, 93001 skips
7814 decicycles in copy, 33545024 runs, 9408 skips
3536 decicycles in xy2, 16698633 runs, 78583 skips
1727 decicycles in 0, 32869184 runs, 685248 skips

--

post 8px/iter, 64bit
3608 decicycles in copy, 33351652 runs, 202780 skips
1230 decicycles in x2, 8385071 runs, 3537 skips
1901 decicycles in xy2, 16730971 runs, 46245 skips
1171 decicycles in y2, 16768530 runs, 8686 skips
798 decicycles in 0, 33524993 runs, 29439 skips
4026 decicycles in copy, 33420352 runs, 134080 skips
1177 decicycles in x2, 8384588 runs, 4020 skips
1775 decicycles in xy2, 16736335 runs, 40881 skips
1130 decicycles in y2, 16766997 runs, 10219 skips
820 decicycles in 0, 33510732 runs, 43700 skips
4013 decicycles in copy, 33421427 runs, 133005 skips
1179 decicycles in x2, 8384850 runs, 3758 skips
1765 decicycles in xy2, 16737700 runs, 39516 skips
1129 decicycles in y2, 16766612 runs, 10604 skips
816 decicycles in 0, 33511170 runs, 43262 skips
4056 decicycles in copy, 33416603 runs, 137829 skips
1184 decicycles in x2, 8384796 runs, 3812 skips
1781 decicycles in xy2, 16736099 runs, 41117 skips
1127 decicycles in y2, 16766534 runs, 10682 skips
819 decicycles in 0, 33509775 runs, 44657 skips

post 4px/iter, 64bit
3442 decicycles in copy, 33245353 runs, 309079 skips
1612 decicycles in x2, 8382873 runs, 5735 skips
2560 decicycles in xy2, 16738814 runs, 38402 skips
1582 decicycles in y2, 16762300 runs, 14916 skips
881 decicycles in 0, 33508648 runs, 45784 skips
3433 decicycles in copy, 33265341 runs, 289091 skips
1626 decicycles in x2, 8382147 runs, 6461 skips
2571 decicycles in xy2, 16741174 runs, 36042 skips
1590 decicycles in y2, 16761938 runs, 15278 skips
886 decicycles in 0, 33508171 runs, 46261 skips
3433 decicycles in copy, 33262240 runs, 292192 skips
1612 decicycles in x2, 8382332 runs, 6276 skips
2558 decicycles in xy2, 16739059 runs, 38157 skips
1582 decicycles in y2, 16761906 runs, 15310 skips
886 decicycles in 0, 33507711 runs, 46721 skips
3423 decicycles in copy, 33255127 runs, 299305 skips
1613 decicycles in x2, 8382437 runs, 6171 skips
2550 decicycles in xy2, 16738518 runs, 38698 skips
1584 decicycles in y2, 16761276 runs, 15940 skips
886 decicycles in 0, 33507340 runs, 47092 skips

pre, 64bit
3443 decicycles in copy, 33341409 runs, 213023 skips
1779 decicycles in x2, 8382213 runs, 6395 skips
2937 decicycles in xy2, 16748930 runs, 28286 skips
1859 decicycles in y2, 16766021 runs, 11195 skips
929 decicycles in 0, 33516035 runs, 38397 skips
3490 decicycles in copy, 33273828 runs, 280604 skips
1694 decicycles in x2, 8381725 runs, 6883 skips
2759 decicycles in xy2, 16736922 runs, 40294 skips
1762 decicycles in y2, 16761719 runs, 15497 skips
898 decicycles in 0, 33507947 runs, 46485 skips
3480 decicycles in copy, 33281288 runs, 273144 skips
1715 decicycles in x2, 8381696 runs, 6912 skips
2763 decicycles in xy2, 16737373 runs, 39843 skips
1759 decicycles in y2, 16762593 runs, 14623 skips
894 decicycles in 0, 33508124 runs, 46308 skips
3493 decicycles in copy, 33302814 runs, 251618 skips
1693 decicycles in x2, 8382288 runs, 6320 skips
2762 decicycles in xy2, 16736906 runs, 40310 skips
1755 decicycles in y2, 16762467 runs, 14749 skips
895 decicycles in 0, 33508932 runs, 45500 skips