Magellan Linux

Contents of /trunk/mplayer/patches/mplayer-1.0_pre7-gcc4.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 153 - (show annotations) (download)
Tue May 8 20:52:56 2007 UTC (17 years ago) by niro
File size: 6312 byte(s)
-import

1 diff -bBur MPlayer-20050413-orig/configure MPlayer-20050413/configure
2 --- MPlayer-20050413-orig/configure 2005-04-06 14:57:08.000000000 +0300
3 +++ MPlayer-20050413/configure 2005-04-14 16:20:41.000000000 +0300
4 @@ -604,7 +604,7 @@
5 cc_version="v. ?.??, bad"
6 cc_verc_fail=yes
7 ;;
8 - 2.95.[2-9]|2.95.[2-9][-.]*|3.[0-9]|3.[0-9].[0-9])
9 + 2.95.[2-9]|2.95.[2-9][-.]*|3.[0-9]|3.[0-9].[0-9]|4.*)
10 _cc_major=`echo $cc_version | cut -d '.' -f 1`
11 _cc_minor=`echo $cc_version | cut -d '.' -f 2`
12 _cc_mini=`echo $cc_version | cut -d '.' -f 3`
13 diff -bBur MPlayer-20050413-orig/liba52/imdct.c MPlayer-20050413/liba52/imdct.c
14 --- MPlayer-20050413-orig/liba52/imdct.c 2005-03-23 01:27:18.000000000 +0200
15 +++ MPlayer-20050413/liba52/imdct.c 2005-04-14 16:48:54.000000000 +0300
16 @@ -937,7 +937,8 @@
17 /* 4-7. iterations */
18 for (m=3; m < 7; m++) {
19 two_m = (1 << m);
20 - two_m_plus_one = two_m<<1;
21 + int two_m_plus_four=two_m<<4;
22 + complex_t* buf_plus_128=buf+128;
23 asm volatile(
24 "movl %0, %%esi \n\t"
25 ".balign 16 \n\t"
26 @@ -963,7 +964,7 @@
27 "addl %2, %%esi \n\t"
28 "cmpl %1, %%esi \n\t"
29 " jb 1b \n\t"
30 - :: "g" (buf), "m" (buf+128), "m" (two_m_plus_one<<3), "r" (two_m<<3),
31 + :: "g" (buf), "m" (buf_plus_128), "m" (two_m_plus_four), "r" (two_m<<3),
32 "r" (sseW[m])
33 : "%esi", "%edi", "%edx"
34 );
35 diff -bBur MPlayer-20050413-orig/libavcodec/libpostproc/postprocess_template.c MPlayer-20050413/libavcodec/libpostproc/postprocess_template.c
36 --- MPlayer-20050413-orig/libavcodec/libpostproc/postprocess_template.c 2005-02-27 10:56:26.000000000 +0200
37 +++ MPlayer-20050413/libavcodec/libpostproc/postprocess_template.c 2005-04-14 16:35:07.000000000 +0300
38 @@ -2648,6 +2648,8 @@
39 static always_inline void RENAME(do_a_deblock)(uint8_t *src, int step, int stride, PPContext *c){
40 int64_t dc_mask, eq_mask;
41 int64_t sums[10*8*2];
42 + int64_t dc_and_eq_mask;
43 +
44 src+= step*3; // src points to begin of the 8x8 Block
45 //START_TIMER
46 asm volatile(
47 @@ -2754,8 +2756,9 @@
48 : "r" (src), "r" ((long)step), "m" (c->pQPb), "m"(c->ppMode.flatnessThreshold)
49 : "%"REG_a
50 );
51 + dc_and_eq_mask=dc_mask & eq_mask;
52
53 - if(dc_mask & eq_mask){
54 + if(dc_and_eq_mask){
55 long offset= -8*step;
56 int64_t *temp_sums= sums;
57
58 @@ -2930,7 +2933,7 @@
59 " js 1b \n\t"
60
61 : "+r"(offset), "+r"(temp_sums)
62 - : "r" ((long)step), "r"(src - offset), "m"(dc_mask & eq_mask)
63 + : "r" ((long)step), "r"(src - offset), "m"(dc_and_eq_mask)
64 );
65 }else
66 src+= step; // src points to begin of the 8x8 Block
67 diff -bBur MPlayer-20050413-orig/libmpdemux/frequencies.h MPlayer-20050413/libmpdemux/frequencies.h
68 --- MPlayer-20050413-orig/libmpdemux/frequencies.h 2001-11-17 00:06:48.000000000 +0200
69 +++ MPlayer-20050413/libmpdemux/frequencies.h 2005-04-14 16:36:51.000000000 +0300
70 @@ -104,7 +104,7 @@
71 /* --------------------------------------------------------------------- */
72
73 extern struct CHANLISTS chanlists[];
74 -extern struct STRTAB chanlist_names[];
75 +/* extern struct STRTAB chanlist_names[]; */
76
77 extern int chantab;
78 extern struct CHANLIST *chanlist;
79 diff -bBur MPlayer-20050413-orig/mmx.h MPlayer-20050413/mmx.h
80 --- MPlayer-20050413-orig/mmx.h 2001-10-28 13:47:21.000000000 +0200
81 +++ MPlayer-20050413/mmx.h 2005-04-14 16:22:54.000000000 +0300
82 @@ -353,11 +353,11 @@
83 #define mmx_m2r(op, mem, reg) \
84 __asm__ __volatile__ (#op " %0, %%" #reg \
85 : /* nothing */ \
86 - : "X" (mem))
87 + : "m" (mem))
88
89 #define mmx_r2m(op, reg, mem) \
90 __asm__ __volatile__ (#op " %%" #reg ", %0" \
91 - : "=X" (mem) \
92 + : "=m" (mem) \
93 : /* nothing */ )
94
95 #define mmx_r2r(op, regs, regd) \
96 @@ -367,8 +367,8 @@
97 __asm__ __volatile__ ("movq %0, %%mm0\n\t" \
98 #op " %1, %%mm0\n\t" \
99 "movq %%mm0, %0" \
100 - : "=X" (memd) \
101 - : "X" (mems))
102 + : "=m" (memd) \
103 + : "m" (mems))
104
105 #endif
106
107 diff -bBur MPlayer-20050413-orig/postproc/swscale_template.c MPlayer-20050413/postproc/swscale_template.c
108 --- MPlayer-20050413-orig/postproc/swscale_template.c 2005-02-17 01:47:00.000000000 +0200
109 +++ MPlayer-20050413/postproc/swscale_template.c 2005-04-14 16:46:12.000000000 +0300
110 @@ -2136,6 +2136,7 @@
111 else
112 {
113 long counter= -2*dstW;
114 + uint8_t* ptr=src+filterSize;
115 // filter-= counter*filterSize/2;
116 filterPos-= counter/2;
117 dst-= counter/2;
118 @@ -2177,7 +2178,7 @@
119 " jnc 1b \n\t"
120
121 : "+r" (counter), "+r" (filter)
122 - : "m" (filterPos), "m" (dst), "m"(src+filterSize),
123 + : "m" (filterPos), "m" (dst), "m"(ptr),
124 "m" (src), "r" ((long)filterSize*2)
125 : "%"REG_b, "%"REG_a, "%"REG_c
126 );
127 @@ -2320,6 +2321,8 @@
128 {
129 #endif
130 //NO MMX just normal asm ...
131 + int xInc_hi=xInc>>16;
132 + int xInc_lo=xInc&0xffff;
133 asm volatile(
134 "xor %%"REG_a", %%"REG_a" \n\t" // i
135 "xor %%"REG_b", %%"REG_b" \n\t" // xx
136 @@ -2356,7 +2359,7 @@
137 " jb 1b \n\t"
138
139
140 - :: "r" (src), "m" (dst), "m" (dstWidth), "m" (xInc>>16), "m" (xInc&0xFFFF)
141 + :: "r" (src), "m" (dst), "m" (dstWidth), "m" (xInc_hi), "m" (xInc_lo)
142 : "%"REG_a, "%"REG_b, "%ecx", "%"REG_D, "%esi"
143 );
144 #ifdef HAVE_MMX2
145 @@ -2515,6 +2518,8 @@
146 else
147 {
148 #endif
149 + int xInc_hi=xInc>>16;
150 + int xInc_lo=xInc&0xffff;
151 asm volatile(
152 "xor %%"REG_a", %%"REG_a" \n\t" // i
153 "xor %%"REG_b", %%"REG_b" \n\t" // xx
154 @@ -2548,7 +2553,7 @@
155 "cmp %2, %%"REG_a" \n\t"
156 " jb 1b \n\t"
157
158 - :: "m" (src1), "m" (dst), "m" ((long)dstWidth), "m" ((long)(xInc>>16)), "m" ((xInc&0xFFFF)),
159 + :: "m" (src1), "m" (dst), "m" ((long)dstWidth), "m" ((long)(xInc_hi)), "m" ((xInc_lo)),
160 "r" (src2)
161 : "%"REG_a, "%"REG_b, "%ecx", "%"REG_D, "%esi"
162 );
163
164 --- MPlayer-1.0pre7/libvo/aclib_template.c 2005-04-25 08:26:11.000000000 +0000
165 +++ MPlayer-1.0pre7.az/libvo/aclib_template.c 2005-04-25 08:26:17.000000000 +0000
166 @@ -249,8 +249,8 @@
167 MOVNTQ" %%mm6, 48(%1)\n"
168 MOVNTQ" %%mm7, 56(%1)\n"
169 :: "r" (from), "r" (to) : "memory");
170 - ((const unsigned char *)from)+=64;
171 - ((unsigned char *)to)+=64;
172 + from+=64;
173 + to+=64;
174 }
175
176 // printf(" %d %d\n", (int)from&1023, (int)to&1023);
177 @@ -338,8 +338,8 @@
178 MOVNTQ" %%mm6, 48(%1)\n"
179 MOVNTQ" %%mm7, 56(%1)\n"
180 :: "r" (from), "r" (to) : "memory");
181 - ((const unsigned char *)from)+=64;
182 - ((unsigned char *)to)+=64;
183 + from+=64;
184 + to+=64;
185 }
186
187 #endif /* Have SSE */