Originally committed as revision 12275 to svn://svn.ffmpeg.org/ffmpeg/trunk
| ... | ... |
@@ -327,7 +327,7 @@ static inline void renorm_cabac_decoder_once(CABACContext *c){
|
| 327 | 327 |
//P3:665 athlon:517 |
| 328 | 328 |
asm( |
| 329 | 329 |
"lea -0x100(%0), %%eax \n\t" |
| 330 |
- "cdq \n\t" |
|
| 330 |
+ "cltd \n\t" |
|
| 331 | 331 |
"mov %0, %%eax \n\t" |
| 332 | 332 |
"and %%edx, %0 \n\t" |
| 333 | 333 |
"and %1, %%edx \n\t" |
| ... | ... |
@@ -599,7 +599,7 @@ static int get_cabac_bypass(CABACContext *c){
|
| 599 | 599 |
"shl $17, %%ebx \n\t" |
| 600 | 600 |
"add %%eax, %%eax \n\t" |
| 601 | 601 |
"sub %%ebx, %%eax \n\t" |
| 602 |
- "cdq \n\t" |
|
| 602 |
+ "cltd \n\t" |
|
| 603 | 603 |
"and %%edx, %%ebx \n\t" |
| 604 | 604 |
"add %%ebx, %%eax \n\t" |
| 605 | 605 |
"test %%ax, %%ax \n\t" |
| ... | ... |
@@ -646,7 +646,7 @@ static av_always_inline int get_cabac_bypass_sign(CABACContext *c, int val){
|
| 646 | 646 |
"shl $17, %%ebx \n\t" |
| 647 | 647 |
"add %%eax, %%eax \n\t" |
| 648 | 648 |
"sub %%ebx, %%eax \n\t" |
| 649 |
- "cdq \n\t" |
|
| 649 |
+ "cltd \n\t" |
|
| 650 | 650 |
"and %%edx, %%ebx \n\t" |
| 651 | 651 |
"add %%ebx, %%eax \n\t" |
| 652 | 652 |
"xor %%edx, %%ecx \n\t" |
| ... | ... |
@@ -205,7 +205,7 @@ static inline unsigned int ff_sqrt(unsigned int a) |
| 205 | 205 |
#if defined(ARCH_X86) |
| 206 | 206 |
#define MASK_ABS(mask, level)\ |
| 207 | 207 |
asm volatile(\ |
| 208 |
- "cdq \n\t"\ |
|
| 208 |
+ "cltd \n\t"\ |
|
| 209 | 209 |
"xorl %1, %0 \n\t"\ |
| 210 | 210 |
"subl %1, %0 \n\t"\ |
| 211 | 211 |
: "+a" (level), "=&d" (mask)\ |