summaryrefslogtreecommitdiffstats
path: root/vlc/build/ffmpeg_x86_64_asm.patch
diff options
context:
space:
mode:
author Eric Hameleers <alien@slackware.com>2009-07-29 21:53:56 +0000
committer Eric Hameleers <alien@slackware.com>2009-07-29 21:53:56 +0000
commitd3aa58163d3ec55d0aaf7cf43eead38804f73f21 (patch)
treead6171c5f8e1066f05891931f8d822cd9c2abd13 /vlc/build/ffmpeg_x86_64_asm.patch
parentb0c41f2a1c4578e2f3e81377e207fb0232c8abc8 (diff)
downloadasb-d3aa58163d3ec55d0aaf7cf43eead38804f73f21.tar.gz
asb-d3aa58163d3ec55d0aaf7cf43eead38804f73f21.tar.xz
Initial revision
Diffstat (limited to '')
-rw-r--r--vlc/build/ffmpeg_x86_64_asm.patch109
1 files changed, 109 insertions, 0 deletions
diff --git a/vlc/build/ffmpeg_x86_64_asm.patch b/vlc/build/ffmpeg_x86_64_asm.patch
new file mode 100644
index 00000000..36fdfe1c
--- /dev/null
+++ b/vlc/build/ffmpeg_x86_64_asm.patch
@@ -0,0 +1,109 @@
+diff -uar ffmpeg-0.5.orig/libavcodec/x86/dsputil_mmx.c ffmpeg-0.5/libavcodec/x86/dsputil_mmx.c
+--- ffmpeg-0.5.orig/libavcodec/x86/dsputil_mmx.c 2009-02-13 01:02:33.000000000 +0100
++++ ffmpeg-0.5/libavcodec/x86/dsputil_mmx.c 2009-07-29 23:48:33.000000000 +0200
+@@ -47,29 +47,29 @@
+ DECLARE_ALIGNED_16(const uint64_t, ff_pdw_80000000[2]) =
+ {0x8000000080000000ULL, 0x8000000080000000ULL};
+
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pw_3 ) = 0x0003000300030003ULL;
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pw_4 ) = 0x0004000400040004ULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pw_3 ) = 0x0003000300030003ULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pw_4 ) = 0x0004000400040004ULL;
+ DECLARE_ALIGNED_16(const xmm_reg, ff_pw_5 ) = {0x0005000500050005ULL, 0x0005000500050005ULL};
+ DECLARE_ALIGNED_16(const xmm_reg, ff_pw_8 ) = {0x0008000800080008ULL, 0x0008000800080008ULL};
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pw_15 ) = 0x000F000F000F000FULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pw_15 ) = 0x000F000F000F000FULL;
+ DECLARE_ALIGNED_16(const xmm_reg, ff_pw_16 ) = {0x0010001000100010ULL, 0x0010001000100010ULL};
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pw_20 ) = 0x0014001400140014ULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pw_20 ) = 0x0014001400140014ULL;
+ DECLARE_ALIGNED_16(const xmm_reg, ff_pw_28 ) = {0x001C001C001C001CULL, 0x001C001C001C001CULL};
+ DECLARE_ALIGNED_16(const xmm_reg, ff_pw_32 ) = {0x0020002000200020ULL, 0x0020002000200020ULL};
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pw_42 ) = 0x002A002A002A002AULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pw_42 ) = 0x002A002A002A002AULL;
+ DECLARE_ALIGNED_16(const xmm_reg, ff_pw_64 ) = {0x0040004000400040ULL, 0x0040004000400040ULL};
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pw_96 ) = 0x0060006000600060ULL;
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pw_128) = 0x0080008000800080ULL;
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pw_255) = 0x00ff00ff00ff00ffULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pw_96 ) = 0x0060006000600060ULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pw_128) = 0x0080008000800080ULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pw_255) = 0x00ff00ff00ff00ffULL;
+
+ DECLARE_ALIGNED_8 (const uint64_t, ff_pb_1 ) = 0x0101010101010101ULL;
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pb_3 ) = 0x0303030303030303ULL;
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pb_7 ) = 0x0707070707070707ULL;
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pb_1F ) = 0x1F1F1F1F1F1F1F1FULL;
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pb_3F ) = 0x3F3F3F3F3F3F3F3FULL;
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pb_81 ) = 0x8181818181818181ULL;
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pb_A1 ) = 0xA1A1A1A1A1A1A1A1ULL;
+-DECLARE_ALIGNED_8 (const uint64_t, ff_pb_FC ) = 0xFCFCFCFCFCFCFCFCULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pb_3 ) = 0x0303030303030303ULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pb_7 ) = 0x0707070707070707ULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pb_1F ) = 0x1F1F1F1F1F1F1F1FULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pb_3F ) = 0x3F3F3F3F3F3F3F3FULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pb_81 ) = 0x8181818181818181ULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pb_A1 ) = 0xA1A1A1A1A1A1A1A1ULL;
++DECLARE_ALIGNED_8 (const uint64_t __attribute__(( visibility ("protected") )), ff_pb_FC ) = 0xFCFCFCFCFCFCFCFCULL;
+
+ DECLARE_ALIGNED_16(const double, ff_pd_1[2]) = { 1.0, 1.0 };
+ DECLARE_ALIGNED_16(const double, ff_pd_2[2]) = { 2.0, 2.0 };
+diff -uar ffmpeg-0.5.orig/libavcodec/x86/vc1dsp_mmx.c ffmpeg-0.5/libavcodec/x86/vc1dsp_mmx.c
+--- ffmpeg-0.5.orig/libavcodec/x86/vc1dsp_mmx.c 2008-10-16 15:34:09.000000000 +0200
++++ ffmpeg-0.5/libavcodec/x86/vc1dsp_mmx.c 2009-07-29 23:49:45.000000000 +0200
+@@ -67,7 +67,7 @@
+ "movq %%mm"#R1", "#OFF"(%1) \n\t" \
+ "add %2, %0 \n\t"
+
+-DECLARE_ALIGNED_16(const uint64_t, ff_pw_9) = 0x0009000900090009ULL;
++DECLARE_ALIGNED_16(const uint64_t __attribute__(( visibility ("protected") )), ff_pw_9) = 0x0009000900090009ULL;
+
+ /** Sacrifying mm6 allows to pipeline loads from src */
+ static void vc1_put_ver_16b_shift2_mmx(int16_t *dst,
+@@ -203,8 +203,8 @@
+ * Filter coefficients made global to allow access by all 1 or 3 quarter shift
+ * interpolation functions.
+ */
+-DECLARE_ASM_CONST(16, uint64_t, ff_pw_53) = 0x0035003500350035ULL;
+-DECLARE_ASM_CONST(16, uint64_t, ff_pw_18) = 0x0012001200120012ULL;
++DECLARE_ASM_CONST(16, uint64_t __attribute__(( visibility ("protected") )), ff_pw_53) = 0x0035003500350035ULL;
++DECLARE_ASM_CONST(16, uint64_t __attribute__(( visibility ("protected") )), ff_pw_18) = 0x0012001200120012ULL;
+
+ /**
+ * Core of the 1/4 and 3/4 shift bicubic interpolation.
+diff -uar ffmpeg-0.5.orig/libswscale/swscale.c ffmpeg-0.5/libswscale/swscale.c
+--- ffmpeg-0.5.orig/libswscale/swscale.c 2009-02-28 09:01:52.000000000 +0100
++++ ffmpeg-0.5/libswscale/swscale.c 2009-07-29 23:53:03.000000000 +0200
+@@ -227,22 +227,22 @@
+ DECLARE_ASM_CONST(8, uint64_t, g15Mask)= 0x03E003E003E003E0LL;
+ DECLARE_ASM_CONST(8, uint64_t, r15Mask)= 0x7C007C007C007C00LL;
+
+-DECLARE_ALIGNED(8, const uint64_t, ff_M24A) = 0x00FF0000FF0000FFLL;
+-DECLARE_ALIGNED(8, const uint64_t, ff_M24B) = 0xFF0000FF0000FF00LL;
+-DECLARE_ALIGNED(8, const uint64_t, ff_M24C) = 0x0000FF0000FF0000LL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_M24A) = 0x00FF0000FF0000FFLL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_M24B) = 0xFF0000FF0000FF00LL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_M24C) = 0x0000FF0000FF0000LL;
+
+ #ifdef FAST_BGR2YV12
+-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YCoeff) = 0x000000210041000DULL;
+-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UCoeff) = 0x0000FFEEFFDC0038ULL;
+-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2VCoeff) = 0x00000038FFD2FFF8ULL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_bgr2YCoeff) = 0x000000210041000DULL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_bgr2UCoeff) = 0x0000FFEEFFDC0038ULL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_bgr2VCoeff) = 0x00000038FFD2FFF8ULL;
+ #else
+-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YCoeff) = 0x000020E540830C8BULL;
+-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UCoeff) = 0x0000ED0FDAC23831ULL;
+-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2VCoeff) = 0x00003831D0E6F6EAULL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_bgr2YCoeff) = 0x000020E540830C8BULL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_bgr2UCoeff) = 0x0000ED0FDAC23831ULL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_bgr2VCoeff) = 0x00003831D0E6F6EAULL;
+ #endif /* FAST_BGR2YV12 */
+-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2YOffset) = 0x1010101010101010ULL;
+-DECLARE_ALIGNED(8, const uint64_t, ff_bgr2UVOffset) = 0x8080808080808080ULL;
+-DECLARE_ALIGNED(8, const uint64_t, ff_w1111) = 0x0001000100010001ULL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_bgr2YOffset) = 0x1010101010101010ULL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_bgr2UVOffset) = 0x8080808080808080ULL;
++DECLARE_ALIGNED(8, const uint64_t __attribute__(( visibility ("protected") )), ff_w1111) = 0x0001000100010001ULL;
+
+ DECLARE_ASM_CONST(8, uint64_t, ff_bgr24toY1Coeff) = 0x0C88000040870C88ULL;
+ DECLARE_ASM_CONST(8, uint64_t, ff_bgr24toY2Coeff) = 0x20DE4087000020DEULL;