Browse code

Replace #ifdef PIC checks with the more appropriate HAVE_EBX_AVAILABLE/HAVE_7REGS.

Originally committed as revision 19676 to svn://svn.ffmpeg.org/ffmpeg/trunk

Reimar Döffinger authored on 2009/08/21 18:54:28
Showing 2 changed files
... ...
@@ -637,7 +637,7 @@ static int av_unused get_cabac_bypass(CABACContext *c){
637 637
 
638 638
 
639 639
 static av_always_inline int get_cabac_bypass_sign(CABACContext *c, int val){
640
-#if ARCH_X86 && !(defined(PIC) && defined(__GNUC__))
640
+#if ARCH_X86 && HAVE_EBX_AVAILABLE
641 641
     __asm__ volatile(
642 642
         "movl "RANGE    "(%1), %%ebx            \n\t"
643 643
         "movl "LOW      "(%1), %%eax            \n\t"
... ...
@@ -31,6 +31,7 @@
31 31
 #include "dsputil.h"
32 32
 #include "mpegvideo.h"
33 33
 #include "msmpeg4.h"
34
+#include "libavutil/x86_cpu.h"
34 35
 
35 36
 /*
36 37
  * You can also call this codec : MPEG4 with a twist !
... ...
@@ -647,7 +648,7 @@ static inline int msmpeg4_pred_dc(MpegEncContext * s, int n,
647 647
        necessitate to modify mpegvideo.c. The problem comes from the
648 648
        fact they decided to store the quantized DC (which would lead
649 649
        to problems if Q could vary !) */
650
-#if ARCH_X86 && !defined PIC
650
+#if ARCH_X86 && HAVE_7REGS && HAVE_EBX_AVAILABLE
651 651
     __asm__ volatile(
652 652
         "movl %3, %%eax         \n\t"
653 653
         "shrl $1, %%eax         \n\t"