summaryrefslogtreecommitdiff
path: root/multimedia/libmpeg3/patches/patch-ah
diff options
context:
space:
mode:
Diffstat (limited to 'multimedia/libmpeg3/patches/patch-ah')
-rw-r--r--multimedia/libmpeg3/patches/patch-ah310
1 files changed, 0 insertions, 310 deletions
diff --git a/multimedia/libmpeg3/patches/patch-ah b/multimedia/libmpeg3/patches/patch-ah
deleted file mode 100644
index 12035bb0083..00000000000
--- a/multimedia/libmpeg3/patches/patch-ah
+++ /dev/null
@@ -1,310 +0,0 @@
-$NetBSD: patch-ah,v 1.1 2004/06/26 18:00:21 grant Exp $
-
---- video/output.c.orig 2001-05-20 13:05:26.000000000 +1000
-+++ video/output.c 2003-07-29 00:53:45.000000000 +1000
-@@ -207,50 +207,50 @@
- );
- }
-
--static unsigned long long mpeg3_MMX_U_80 = 0x0000008000800000;
--static unsigned long long mpeg3_MMX_V_80 = 0x0000000000800080;
--static long long mpeg3_MMX_U_COEF = 0x00000058ffd30000;
--static long long mpeg3_MMX_V_COEF = 0x00000000ffea006f;
--static long long mpeg3_MMX_601_Y_COEF = 0x0000004800480048;
--static long long mpeg3_MMX_601_Y_DIFF = 0x0000000000000010;
-+static unsigned long long mpeg3_MMX_U_80 = 0x0000008000800000LL;
-+static unsigned long long mpeg3_MMX_V_80 = 0x0000000000800080LL;
-+static long long mpeg3_MMX_U_COEF = 0x00000058ffd30000LL;
-+static long long mpeg3_MMX_V_COEF = 0x00000000ffea006fLL;
-+static long long mpeg3_MMX_601_Y_COEF = 0x0000004800480048LL;
-+static long long mpeg3_MMX_601_Y_DIFF = 0x0000000000000010LL;
-
- inline void mpeg3_bgra32_mmx(unsigned long y,
- unsigned long u,
- unsigned long v,
- unsigned long *output)
- {
--asm("
--/* Output will be 0x00rrggbb with the 00 trailing so this can also be used */
--/* for bgr24. */
-- movd (%0), %%mm0; /* Load y 0x00000000000000yy */
-- movd (%1), %%mm1; /* Load u 0x00000000000000cr */
-- movq %%mm0, %%mm3; /* Copy y to temp */
-- psllq $16, %%mm1; /* Shift u 0x0000000000cr0000 */
-- movd (%2), %%mm2; /* Load v 0x00000000000000cb */
-- psllq $16, %%mm3; /* Shift y */
-- movq %%mm1, %%mm4; /* Copy u to temp */
-- por %%mm3, %%mm0; /* Overlay new y byte 0x0000000000yy00yy */
-- psllq $16, %%mm4; /* Shift u */
-- movq %%mm2, %%mm5; /* Copy v to temp */
-- psllq $16, %%mm3; /* Shift y */
-- por %%mm4, %%mm1; /* Overlay new u byte 0x000000cr00cr0000 */
-- psllq $16, %%mm5; /* Shift v */
-- por %%mm3, %%mm0; /* Overlay new y byte 0x000000yy00yy00yy */
-- por %%mm5, %%mm2; /* Overlay new v byte 0x0000000000cb00cb */
--
--/* mm0: 0x000000yy00yy00yy mm1: 0x000000uu00uu0000 mm2: 0x0000000000vv00vv */
-- psubw mpeg3_MMX_U_80, %%mm1; /* Subtract 128 from u 0x000000uu00uu0000 */
-- pmullw mpeg3_MMX_U_COEF, %%mm1; /* Multiply u coeffs 0x0000uuuuuuuu0000 */
-- psllw $6, %%mm0; /* Shift y coeffs 0x0000yyy0yyy0yyy0 */
-- psubw mpeg3_MMX_V_80, %%mm2; /* Subtract 128 from v 0x0000000000cb00cb */
-- pmullw mpeg3_MMX_V_COEF, %%mm2; /* Multiply v coeffs 0x0000crcrcrcrcrcr */
--
--/* mm0: 0x000000yy00yy00yy mm1: 0x0000uuuuuuuu0000 mm2: 0x00000000vvvvvvvv */
-- paddsw %%mm1, %%mm0; /* Add u to result */
-- paddsw %%mm2, %%mm0; /* Add v to result 0x0000rrrrggggbbbb */
-- psraw $6, %%mm0; /* Demote precision */
-- packuswb %%mm0, %%mm0; /* Pack into ARGB 0x0000000000rrggbb */
-- movd %%mm0, (%3); /* Store output */
-+asm("\n\
-+/* Output will be 0x00rrggbb with the 00 trailing so this can also be used */\n\
-+/* for bgr24. */\n\
-+ movd (%0), %%mm0; /* Load y 0x00000000000000yy */\n\
-+ movd (%1), %%mm1; /* Load u 0x00000000000000cr */\n\
-+ movq %%mm0, %%mm3; /* Copy y to temp */\n\
-+ psllq $16, %%mm1; /* Shift u 0x0000000000cr0000 */\n\
-+ movd (%2), %%mm2; /* Load v 0x00000000000000cb */\n\
-+ psllq $16, %%mm3; /* Shift y */\n\
-+ movq %%mm1, %%mm4; /* Copy u to temp */\n\
-+ por %%mm3, %%mm0; /* Overlay new y byte 0x0000000000yy00yy */\n\
-+ psllq $16, %%mm4; /* Shift u */\n\
-+ movq %%mm2, %%mm5; /* Copy v to temp */\n\
-+ psllq $16, %%mm3; /* Shift y */\n\
-+ por %%mm4, %%mm1; /* Overlay new u byte 0x000000cr00cr0000 */\n\
-+ psllq $16, %%mm5; /* Shift v */\n\
-+ por %%mm3, %%mm0; /* Overlay new y byte 0x000000yy00yy00yy */\n\
-+ por %%mm5, %%mm2; /* Overlay new v byte 0x0000000000cb00cb */\n\
-+\n\
-+/* mm0: 0x000000yy00yy00yy mm1: 0x000000uu00uu0000 mm2: 0x0000000000vv00vv */\n\
-+ psubw mpeg3_MMX_U_80, %%mm1; /* Subtract 128 from u 0x000000uu00uu0000 */\n\
-+ pmullw mpeg3_MMX_U_COEF, %%mm1; /* Multiply u coeffs 0x0000uuuuuuuu0000 */\n\
-+ psllw $6, %%mm0; /* Shift y coeffs 0x0000yyy0yyy0yyy0 */\n\
-+ psubw mpeg3_MMX_V_80, %%mm2; /* Subtract 128 from v 0x0000000000cb00cb */\n\
-+ pmullw mpeg3_MMX_V_COEF, %%mm2; /* Multiply v coeffs 0x0000crcrcrcrcrcr */\n\
-+\n\
-+/* mm0: 0x000000yy00yy00yy mm1: 0x0000uuuuuuuu0000 mm2: 0x00000000vvvvvvvv */\n\
-+ paddsw %%mm1, %%mm0; /* Add u to result */\n\
-+ paddsw %%mm2, %%mm0; /* Add v to result 0x0000rrrrggggbbbb */\n\
-+ psraw $6, %%mm0; /* Demote precision */\n\
-+ packuswb %%mm0, %%mm0; /* Pack into ARGB 0x0000000000rrggbb */\n\
-+ movd %%mm0, (%3); /* Store output */\n\
- "
- :
- : "r" (&y), "r" (&u), "r" (&v), "r" (output));
-@@ -261,39 +261,39 @@
- unsigned long v,
- unsigned long *output)
- {
--asm("
--/* Output will be 0x00rrggbb with the 00 trailing so this can also be used */
--/* for bgr24. */
-- movd (%0), %%mm0; /* Load y 0x00000000000000yy */
-- psubsw mpeg3_MMX_601_Y_DIFF, %%mm0; /* Subtract 16 from y */
-- movd (%1), %%mm1; /* Load u 0x00000000000000cr */
-- movq %%mm0, %%mm3; /* Copy y to temp */
-- psllq $16, %%mm1; /* Shift u 0x0000000000cr0000 */
-- movd (%2), %%mm2; /* Load v 0x00000000000000cb */
-- psllq $16, %%mm3; /* Shift y */
-- movq %%mm1, %%mm4; /* Copy u to temp */
-- por %%mm3, %%mm0; /* Overlay new y byte 0x0000000000yy00yy */
-- psllq $16, %%mm4; /* Shift u */
-- movq %%mm2, %%mm5; /* Copy v to temp */
-- psllq $16, %%mm3; /* Shift y */
-- por %%mm4, %%mm1; /* Overlay new u byte 0x000000cr00cr0000 */
-- psllq $16, %%mm5; /* Shift v */
-- por %%mm3, %%mm0; /* Overlay new y byte 0x000000yy00yy00yy */
-- por %%mm5, %%mm2; /* Overlay new v byte 0x0000000000cb00cb */
--
--/* mm0: 0x000000yy00yy00yy mm1: 0x000000uu00uu0000 mm2: 0x0000000000vv00vv */
-- pmullw mpeg3_MMX_601_Y_COEF, %%mm0; /* Scale and shift y coeffs */
-- psubw mpeg3_MMX_U_80, %%mm1; /* Subtract 128 from u 0x000000uu00uu0000 */
-- pmullw mpeg3_MMX_U_COEF, %%mm1; /* Multiply u coeffs 0x0000uuuuuuuu0000 */
-- psubw mpeg3_MMX_V_80, %%mm2; /* Subtract 128 from v 0x0000000000cb00cb */
-- pmullw mpeg3_MMX_V_COEF, %%mm2; /* Multiply v coeffs 0x0000crcrcrcrcrcr */
--
--/* mm0: 0x000000yy00yy00yy mm1: 0x0000uuuuuuuu0000 mm2: 0x00000000vvvvvvvv */
-- paddsw %%mm1, %%mm0; /* Add u to result */
-- paddsw %%mm2, %%mm0; /* Add v to result 0x0000rrrrggggbbbb */
-- psraw $6, %%mm0; /* Demote precision */
-- packuswb %%mm0, %%mm0; /* Pack into ARGB 0x0000000000rrggbb */
-- movd %%mm0, (%3); /* Store output */
-+asm("\n\
-+/* Output will be 0x00rrggbb with the 00 trailing so this can also be used */\n\
-+/* for bgr24. */\n\
-+ movd (%0), %%mm0; /* Load y 0x00000000000000yy */\n\
-+ psubsw mpeg3_MMX_601_Y_DIFF, %%mm0; /* Subtract 16 from y */\n\
-+ movd (%1), %%mm1; /* Load u 0x00000000000000cr */\n\
-+ movq %%mm0, %%mm3; /* Copy y to temp */\n\
-+ psllq $16, %%mm1; /* Shift u 0x0000000000cr0000 */\n\
-+ movd (%2), %%mm2; /* Load v 0x00000000000000cb */\n\
-+ psllq $16, %%mm3; /* Shift y */\n\
-+ movq %%mm1, %%mm4; /* Copy u to temp */\n\
-+ por %%mm3, %%mm0; /* Overlay new y byte 0x0000000000yy00yy */\n\
-+ psllq $16, %%mm4; /* Shift u */\n\
-+ movq %%mm2, %%mm5; /* Copy v to temp */\n\
-+ psllq $16, %%mm3; /* Shift y */\n\
-+ por %%mm4, %%mm1; /* Overlay new u byte 0x000000cr00cr0000 */\n\
-+ psllq $16, %%mm5; /* Shift v */\n\
-+ por %%mm3, %%mm0; /* Overlay new y byte 0x000000yy00yy00yy */\n\
-+ por %%mm5, %%mm2; /* Overlay new v byte 0x0000000000cb00cb */\n\
-+\n\
-+/* mm0: 0x000000yy00yy00yy mm1: 0x000000uu00uu0000 mm2: 0x0000000000vv00vv */\n\
-+ pmullw mpeg3_MMX_601_Y_COEF, %%mm0; /* Scale and shift y coeffs */\n\
-+ psubw mpeg3_MMX_U_80, %%mm1; /* Subtract 128 from u 0x000000uu00uu0000 */\n\
-+ pmullw mpeg3_MMX_U_COEF, %%mm1; /* Multiply u coeffs 0x0000uuuuuuuu0000 */\n\
-+ psubw mpeg3_MMX_V_80, %%mm2; /* Subtract 128 from v 0x0000000000cb00cb */\n\
-+ pmullw mpeg3_MMX_V_COEF, %%mm2; /* Multiply v coeffs 0x0000crcrcrcrcrcr */\n\
-+\n\
-+/* mm0: 0x000000yy00yy00yy mm1: 0x0000uuuuuuuu0000 mm2: 0x00000000vvvvvvvv */\n\
-+ paddsw %%mm1, %%mm0; /* Add u to result */\n\
-+ paddsw %%mm2, %%mm0; /* Add v to result 0x0000rrrrggggbbbb */\n\
-+ psraw $6, %%mm0; /* Demote precision */\n\
-+ packuswb %%mm0, %%mm0; /* Pack into ARGB 0x0000000000rrggbb */\n\
-+ movd %%mm0, (%3); /* Store output */\n\
- "
- :
- : "r" (&y), "r" (&u), "r" (&v), "r" (output));
-@@ -309,38 +309,38 @@
- unsigned long v,
- unsigned long *output)
- {
--asm("
--/* Output will be 0x00bbggrr with the 00 trailing so this can also be used */
--/* for rgb24. */
-- movd (%0), %%mm0; /* Load y 0x00000000000000yy */
-- movd (%1), %%mm1; /* Load v 0x00000000000000vv */
-- movq %%mm0, %%mm3; /* Copy y to temp */
-- psllq $16, %%mm1; /* Shift v 0x0000000000vv0000 */
-- movd (%2), %%mm2; /* Load u 0x00000000000000uu */
-- psllq $16, %%mm3; /* Shift y */
-- movq %%mm1, %%mm4; /* Copy v to temp */
-- por %%mm3, %%mm0; /* Overlay new y byte 0x0000000000yy00yy */
-- psllq $16, %%mm4; /* Shift v */
-- movq %%mm2, %%mm5; /* Copy u to temp */
-- psllq $16, %%mm3; /* Shift y */
-- por %%mm4, %%mm1; /* Overlay new v byte 0x000000vv00vv0000 */
-- psllq $16, %%mm5; /* Shift u */
-- por %%mm3, %%mm0; /* Overlay new y byte 0x000000yy00yy00yy */
-- por %%mm5, %%mm2; /* Overlay new u byte 0x0000000000uu00uu */
--
--/* mm0: 0x000000yy00yy00yy mm1: 0x000000vv00vv0000 mm2: 0x0000000000uu00uu */
-- psubw mpeg3_MMX_V_80_RGB, %%mm1; /* Subtract 128 from v 0x000000vv00vv0000 */
-- pmullw mpeg3_MMX_V_COEF_RGB, %%mm1; /* Multiply v coeffs 0x0000vvvvvvvv0000 */
-- psllw $6, %%mm0; /* Shift y coeffs 0x0000yyy0yyy0yyy0 */
-- psubw mpeg3_MMX_U_80_RGB, %%mm2; /* Subtract 128 from u 0x0000000000uu00uu */
-- pmullw mpeg3_MMX_U_COEF_RGB, %%mm2; /* Multiply u coeffs 0x0000uuuuuuuuuuuu */
--
--/* mm0: 0x000000yy00yy00yy mm1: 0x0000vvvvvvvv0000 mm2: 0x00000000uuuuuuuu */
-- paddsw %%mm1, %%mm0; /* Add v to result */
-- paddsw %%mm2, %%mm0; /* Add u to result 0x0000bbbbggggrrrr */
-- psraw $6, %%mm0; /* Demote precision */
-- packuswb %%mm0, %%mm0; /* Pack into RGBA 0x0000000000bbggrr */
-- movd %%mm0, (%3); /* Store output */
-+asm("\n\
-+/* Output will be 0x00bbggrr with the 00 trailing so this can also be used */\n\
-+/* for rgb24. */\n\
-+ movd (%0), %%mm0; /* Load y 0x00000000000000yy */\n\
-+ movd (%1), %%mm1; /* Load v 0x00000000000000vv */\n\
-+ movq %%mm0, %%mm3; /* Copy y to temp */\n\
-+ psllq $16, %%mm1; /* Shift v 0x0000000000vv0000 */\n\
-+ movd (%2), %%mm2; /* Load u 0x00000000000000uu */\n\
-+ psllq $16, %%mm3; /* Shift y */\n\
-+ movq %%mm1, %%mm4; /* Copy v to temp */\n\
-+ por %%mm3, %%mm0; /* Overlay new y byte 0x0000000000yy00yy */\n\
-+ psllq $16, %%mm4; /* Shift v */\n\
-+ movq %%mm2, %%mm5; /* Copy u to temp */\n\
-+ psllq $16, %%mm3; /* Shift y */\n\
-+ por %%mm4, %%mm1; /* Overlay new v byte 0x000000vv00vv0000 */\n\
-+ psllq $16, %%mm5; /* Shift u */\n\
-+ por %%mm3, %%mm0; /* Overlay new y byte 0x000000yy00yy00yy */\n\
-+ por %%mm5, %%mm2; /* Overlay new u byte 0x0000000000uu00uu */\n\
-+\n\
-+/* mm0: 0x000000yy00yy00yy mm1: 0x000000vv00vv0000 mm2: 0x0000000000uu00uu */\n\
-+ psubw mpeg3_MMX_V_80_RGB, %%mm1; /* Subtract 128 from v 0x000000vv00vv0000 */\n\
-+ pmullw mpeg3_MMX_V_COEF_RGB, %%mm1; /* Multiply v coeffs 0x0000vvvvvvvv0000 */\n\
-+ psllw $6, %%mm0; /* Shift y coeffs 0x0000yyy0yyy0yyy0 */\n\
-+ psubw mpeg3_MMX_U_80_RGB, %%mm2; /* Subtract 128 from u 0x0000000000uu00uu */\n\
-+ pmullw mpeg3_MMX_U_COEF_RGB, %%mm2; /* Multiply u coeffs 0x0000uuuuuuuuuuuu */\n\
-+\n\
-+/* mm0: 0x000000yy00yy00yy mm1: 0x0000vvvvvvvv0000 mm2: 0x00000000uuuuuuuu */\n\
-+ paddsw %%mm1, %%mm0; /* Add v to result */\n\
-+ paddsw %%mm2, %%mm0; /* Add u to result 0x0000bbbbggggrrrr */\n\
-+ psraw $6, %%mm0; /* Demote precision */\n\
-+ packuswb %%mm0, %%mm0; /* Pack into RGBA 0x0000000000bbggrr */\n\
-+ movd %%mm0, (%3); /* Store output */\n\
- "
- :
- : "r" (&y), "r" (&v), "r" (&u), "r" (output));
-@@ -351,39 +351,39 @@
- unsigned long v,
- unsigned long *output)
- {
--asm("
--/* Output will be 0x00bbggrr with the 00 trailing so this can also be used */
--/* for rgb24. */
-- movd (%0), %%mm0; /* Load y 0x00000000000000yy */
-- psubsw mpeg3_MMX_601_Y_DIFF, %%mm0; /* Subtract 16 from y */
-- movd (%1), %%mm1; /* Load v 0x00000000000000vv */
-- movq %%mm0, %%mm3; /* Copy y to temp */
-- psllq $16, %%mm1; /* Shift v 0x0000000000vv0000 */
-- movd (%2), %%mm2; /* Load u 0x00000000000000uu */
-- psllq $16, %%mm3; /* Shift y */
-- movq %%mm1, %%mm4; /* Copy v to temp */
-- por %%mm3, %%mm0; /* Overlay new y byte 0x0000000000yy00yy */
-- psllq $16, %%mm4; /* Shift v */
-- movq %%mm2, %%mm5; /* Copy u to temp */
-- psllq $16, %%mm3; /* Shift y */
-- por %%mm4, %%mm1; /* Overlay new v byte 0x000000vv00vv0000 */
-- psllq $16, %%mm5; /* Shift u */
-- por %%mm3, %%mm0; /* Overlay new y byte 0x000000yy00yy00yy */
-- por %%mm5, %%mm2; /* Overlay new u byte 0x0000000000uu00uu */
--
--/* mm0: 0x000000yy00yy00yy mm1: 0x000000vv00vv0000 mm2: 0x0000000000uu00uu */
-- pmullw mpeg3_MMX_601_Y_COEF, %%mm0; /* Scale y coeffs */
-- psubw mpeg3_MMX_V_80_RGB, %%mm1; /* Subtract 128 from v 0x000000vv00vv0000 */
-- pmullw mpeg3_MMX_V_COEF_RGB, %%mm1; /* Multiply v coeffs 0x0000vvvvvvvv0000 */
-- psubw mpeg3_MMX_U_80_RGB, %%mm2; /* Subtract 128 from u 0x0000000000uu00uu */
-- pmullw mpeg3_MMX_U_COEF_RGB, %%mm2; /* Multiply u coeffs 0x0000uuuuuuuuuuuu */
--
--/* mm0: 0x000000yy00yy00yy mm1: 0x0000vvvvvvvv0000 mm2: 0x00000000uuuuuuuu */
-- paddsw %%mm1, %%mm0; /* Add v to result */
-- paddsw %%mm2, %%mm0; /* Add u to result 0x0000bbbbggggrrrr */
-- psraw $6, %%mm0; /* Demote precision */
-- packuswb %%mm0, %%mm0; /* Pack into RGBA 0x0000000000bbggrr */
-- movd %%mm0, (%3); /* Store output */
-+asm("\n\
-+/* Output will be 0x00bbggrr with the 00 trailing so this can also be used */\n\
-+/* for rgb24. */\n\
-+ movd (%0), %%mm0; /* Load y 0x00000000000000yy */\n\
-+ psubsw mpeg3_MMX_601_Y_DIFF, %%mm0; /* Subtract 16 from y */\n\
-+ movd (%1), %%mm1; /* Load v 0x00000000000000vv */\n\
-+ movq %%mm0, %%mm3; /* Copy y to temp */\n\
-+ psllq $16, %%mm1; /* Shift v 0x0000000000vv0000 */\n\
-+ movd (%2), %%mm2; /* Load u 0x00000000000000uu */\n\
-+ psllq $16, %%mm3; /* Shift y */\n\
-+ movq %%mm1, %%mm4; /* Copy v to temp */\n\
-+ por %%mm3, %%mm0; /* Overlay new y byte 0x0000000000yy00yy */\n\
-+ psllq $16, %%mm4; /* Shift v */\n\
-+ movq %%mm2, %%mm5; /* Copy u to temp */\n\
-+ psllq $16, %%mm3; /* Shift y */\n\
-+ por %%mm4, %%mm1; /* Overlay new v byte 0x000000vv00vv0000 */\n\
-+ psllq $16, %%mm5; /* Shift u */\n\
-+ por %%mm3, %%mm0; /* Overlay new y byte 0x000000yy00yy00yy */\n\
-+ por %%mm5, %%mm2; /* Overlay new u byte 0x0000000000uu00uu */\n\
-+\n\
-+/* mm0: 0x000000yy00yy00yy mm1: 0x000000vv00vv0000 mm2: 0x0000000000uu00uu */\n\
-+ pmullw mpeg3_MMX_601_Y_COEF, %%mm0; /* Scale y coeffs */\n\
-+ psubw mpeg3_MMX_V_80_RGB, %%mm1; /* Subtract 128 from v 0x000000vv00vv0000 */\n\
-+ pmullw mpeg3_MMX_V_COEF_RGB, %%mm1; /* Multiply v coeffs 0x0000vvvvvvvv0000 */\n\
-+ psubw mpeg3_MMX_U_80_RGB, %%mm2; /* Subtract 128 from u 0x0000000000uu00uu */\n\
-+ pmullw mpeg3_MMX_U_COEF_RGB, %%mm2; /* Multiply u coeffs 0x0000uuuuuuuuuuuu */\n\
-+\n\
-+/* mm0: 0x000000yy00yy00yy mm1: 0x0000vvvvvvvv0000 mm2: 0x00000000uuuuuuuu */\n\
-+ paddsw %%mm1, %%mm0; /* Add v to result */\n\
-+ paddsw %%mm2, %%mm0; /* Add u to result 0x0000bbbbggggrrrr */\n\
-+ psraw $6, %%mm0; /* Demote precision */\n\
-+ packuswb %%mm0, %%mm0; /* Pack into RGBA 0x0000000000bbggrr */\n\
-+ movd %%mm0, (%3); /* Store output */\n\
- "
- :
- : "r" (&y), "r" (&v), "r" (&u), "r" (output));