Changeset 32e2a1b44afa08f7c4997f5a6884742a944c516f
- Timestamp:
- 07/04/08 21:05:13
(2 months ago)
- Author:
- Felix Paul Kühne <fkuehne@videolan.org>
- git-committer:
- Felix Paul Kühne <fkuehne@videolan.org> 1215198313 +0200
- git-parent:
[b6a82807304d3c3644e26f84d25dc1d2a3dc118c]
- git-author:
- Felix Paul Kühne <fkuehne@videolan.org> 1215198313 +0200
- Message:
Fix the ffmpeg-mmx-patch. Thanks to David E. Still
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
| rcfa6896 |
r32e2a1b |
|
| 137 | 137 | "movapd %1, %%xmm6 \n\t" |
|---|
| 138 | 138 | @@ -54,7 +53,7 @@ |
|---|
| 139 | | "sub $8, %1 \n\t"\ |
|---|
| 140 | | "add $8, %0 \n\t"\ |
|---|
| 141 | | "jl 1b \n\t"\ |
|---|
| | 139 | "sub $8, %1 \n\t"\ |
|---|
| | 140 | "add $8, %0 \n\t"\ |
|---|
| | 141 | "jl 1b \n\t"\ |
|---|
| 142 | 142 | - :"+&r"(i), "+&r"(j)\ |
|---|
| 143 | 143 | + :"+&r"(i)\ |
|---|
| … | … | |
| 145 | 145 | ); |
|---|
| 146 | 146 | if(len&1) |
|---|
| 147 | | @@ -84,9 +83,11 @@ |
|---|
| 148 | | x86_reg i = -len*sizeof(double); |
|---|
| 149 | | if(j == lag-2) { |
|---|
| 150 | | asm volatile( |
|---|
| 151 | | - "movsd %6, %%xmm0 \n\t" |
|---|
| 152 | | - "movsd %6, %%xmm1 \n\t" |
|---|
| 153 | | - "movsd %6, %%xmm2 \n\t" |
|---|
| 154 | | + "movsd %0, %%xmm0 \n\t" |
|---|
| 155 | | + "movsd %0, %%xmm1 \n\t" |
|---|
| 156 | | + "movsd %0, %%xmm2 \n\t" |
|---|
| | 147 | @@ -84,6 +83,8 @@ |
|---|
| | 148 | "movsd "MANGLE(ff_pd_1)", %%xmm0 \n\t" |
|---|
| | 149 | "movsd "MANGLE(ff_pd_1)", %%xmm1 \n\t" |
|---|
| | 150 | "movsd "MANGLE(ff_pd_1)", %%xmm2 \n\t" |
|---|
| 157 | 151 | + :: "m"(*ff_pd_1) ); |
|---|
| 158 | 152 | + asm volatile( |
|---|
| 159 | | "1: \n\t" |
|---|
| 160 | | "movapd (%4,%0), %%xmm3 \n\t" |
|---|
| 161 | | "movupd -8(%5,%0), %%xmm4 \n\t" |
|---|
| 162 | | @@ -109,12 +110,14 @@ |
|---|
| 163 | | "movsd %%xmm1, %2 \n\t" |
|---|
| 164 | | "movsd %%xmm2, %3 \n\t" |
|---|
| 165 | | :"+&r"(i), "=m"(autoc[j]), "=m"(autoc[j+1]), "=m"(autoc[j+2]) |
|---|
| 166 | | - :"r"(data1+len), "r"(data1+len-j), "m"(*ff_pd_1) |
|---|
| 167 | | + :"r"(data1+len), "r"(data1+len-j) |
|---|
| 168 | | ); |
|---|
| 169 | | } else { |
|---|
| | 153 | "1: \n\t" |
|---|
| | 154 | "movapd (%4,%0), %%xmm3 \n\t" |
|---|
| | 155 | "movupd -8(%5,%0), %%xmm4 \n\t" |
|---|
| | 156 | @@ -115,6 +116,8 @@ |
|---|
| 170 | 157 | asm volatile( |
|---|
| 171 | | - "movsd %5, %%xmm0 \n\t" |
|---|
| 172 | | - "movsd %5, %%xmm1 \n\t" |
|---|
| 173 | | + "movsd %0, %%xmm0 \n\t" |
|---|
| 174 | | + "movsd %0, %%xmm1 \n\t" |
|---|
| | 158 | "movsd "MANGLE(ff_pd_1)", %%xmm0 \n\t" |
|---|
| | 159 | "movsd "MANGLE(ff_pd_1)", %%xmm1 \n\t" |
|---|
| 175 | 160 | + :: "m"(*ff_pd_1) ); |
|---|
| 176 | 161 | + asm volatile( |
|---|
| 177 | | "1: \n\t" |
|---|
| 178 | | "movapd (%3,%0), %%xmm3 \n\t" |
|---|
| 179 | | "movupd -8(%4,%0), %%xmm4 \n\t" |
|---|
| 180 | | @@ -131,7 +134,7 @@ |
|---|
| 181 | | "movsd %%xmm0, %1 \n\t" |
|---|
| 182 | | "movsd %%xmm1, %2 \n\t" |
|---|
| 183 | | :"+&r"(i), "=m"(autoc[j]), "=m"(autoc[j+1]) |
|---|
| 184 | | - :"r"(data1+len), "r"(data1+len-j), "m"(*ff_pd_1) |
|---|
| 185 | | + :"r"(data1+len), "r"(data1+len-j) |
|---|
| 186 | | ); |
|---|
| 187 | | } |
|---|
| 188 | | } |
|---|
| | 162 | "1: \n\t" |
|---|
| | 163 | "movapd (%3,%0), %%xmm3 \n\t" |
|---|
| | 164 | "movupd -8(%4,%0), %%xmm4 \n\t" |
|---|