Show
Ignore:
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
  • extras/contrib/src/Patches/ffmpeg-macosx-intel-mmx.patch

    rcfa6896 r32e2a1b  
    137137         "movapd  %1,     %%xmm6 \n\t" 
    138138@@ -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"\ 
    142142-        :"+&r"(i), "+&r"(j)\ 
    143143+        :"+&r"(i)\ 
     
    145145     ); 
    146146     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" 
    157151+                :: "m"(*ff_pd_1) ); 
    158152+            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 @@ 
    170157             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" 
    175160+                :: "m"(*ff_pd_1) ); 
    176161+            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"