diff options
-rw-r--r-- | libavcodec/dct-test.c | 1 | ||||
-rw-r--r-- | libavcodec/i386/dsputil_mmx.c | 1 | ||||
-rw-r--r-- | libavcodec/i386/mmx.h | 18 | ||||
-rw-r--r-- | libavcodec/i386/motion_est_mmx.c | 2 | ||||
-rw-r--r-- | libavcodec/i386/mpegvideo_mmx.c | 2 | ||||
-rw-r--r-- | libavcodec/i386/snowdsp_mmx.c | 2 | ||||
-rw-r--r-- | libavutil/x86_cpu.h | 38 |
7 files changed, 42 insertions, 22 deletions
diff --git a/libavcodec/dct-test.c b/libavcodec/dct-test.c index 232278c..874d573 100644 --- a/libavcodec/dct-test.c +++ b/libavcodec/dct-test.c @@ -12,7 +12,6 @@ #include "dsputil.h" -#include "i386/mmx.h" #include "simple_idct.h" #include "faandct.h" diff --git a/libavcodec/i386/dsputil_mmx.c b/libavcodec/i386/dsputil_mmx.c index 2bef197..f7f1b2b 100644 --- a/libavcodec/i386/dsputil_mmx.c +++ b/libavcodec/i386/dsputil_mmx.c @@ -23,6 +23,7 @@ #include "../dsputil.h" #include "../simple_idct.h" #include "../mpegvideo.h" +#include "x86_cpu.h" #include "mmx.h" //#undef NDEBUG diff --git a/libavcodec/i386/mmx.h b/libavcodec/i386/mmx.h index df17918..eab0513 100644 --- a/libavcodec/i386/mmx.h +++ b/libavcodec/i386/mmx.h @@ -5,24 +5,6 @@ #ifndef AVCODEC_I386MMX_H #define AVCODEC_I386MMX_H -#ifdef ARCH_X86_64 -# define REG_a "rax" -# define REG_b "rbx" -# define REG_c "rcx" -# define REG_d "rdx" -# define REG_D "rdi" -# define REG_S "rsi" -# define PTR_SIZE "8" -#else -# define REG_a "eax" -# define REG_b "ebx" -# define REG_c "ecx" -# define REG_d "edx" -# define REG_D "edi" -# define REG_S "esi" -# define PTR_SIZE "4" -#endif - /* * The type of an value that fits in an MMX register (note that long * long constant values MUST be suffixed by LL and unsigned long long diff --git a/libavcodec/i386/motion_est_mmx.c b/libavcodec/i386/motion_est_mmx.c index c14b793..edcabcf 100644 --- a/libavcodec/i386/motion_est_mmx.c +++ b/libavcodec/i386/motion_est_mmx.c @@ -20,7 +20,7 @@ * mostly by Michael Niedermayer <michaelni@gmx.at> */ #include "../dsputil.h" -#include "mmx.h" +#include "x86_cpu.h" static const __attribute__ ((aligned(8))) uint64_t round_tab[3]={ 0x0000000000000000ULL, diff --git a/libavcodec/i386/mpegvideo_mmx.c b/libavcodec/i386/mpegvideo_mmx.c index ad03629..c00a602 100644 --- a/libavcodec/i386/mpegvideo_mmx.c +++ b/libavcodec/i386/mpegvideo_mmx.c @@ -23,7 +23,7 @@ #include "../dsputil.h" #include "../mpegvideo.h" #include "../avcodec.h" -#include "mmx.h" +#include "x86_cpu.h" extern uint8_t zigzag_direct_noperm[64]; extern uint16_t inv_zigzag_direct16[64]; diff --git a/libavcodec/i386/snowdsp_mmx.c b/libavcodec/i386/snowdsp_mmx.c index 5f17e35..9fb3677 100644 --- a/libavcodec/i386/snowdsp_mmx.c +++ b/libavcodec/i386/snowdsp_mmx.c @@ -19,7 +19,7 @@ #include "../avcodec.h" #include "../snow.h" -#include "mmx.h" +#include "x86_cpu.h" void ff_snow_horizontal_compose97i_sse2(DWTELEM *b, int width){ const int w2= (width+1)>>1; diff --git a/libavutil/x86_cpu.h b/libavutil/x86_cpu.h new file mode 100644 index 0000000..8fd5f86 --- /dev/null +++ b/libavutil/x86_cpu.h @@ -0,0 +1,38 @@ +#ifndef AVUTIL_X86CPU_H +#define AVUTIL_X86CPU_H + +#ifdef ARCH_X86_64 +# define REG_a "rax" +# define REG_b "rbx" +# define REG_c "rcx" +# define REG_d "rdx" +# define REG_D "rdi" +# define REG_S "rsi" +# define PTR_SIZE "8" + +# define REG_SP "rsp" +# define REG_BP "rbp" +# define REGBP rbp +# define REGa rax +# define REGb rbx +# define REGSP rsp + +#else + +# define REG_a "eax" +# define REG_b "ebx" +# define REG_c "ecx" +# define REG_d "edx" +# define REG_D "edi" +# define REG_S "esi" +# define PTR_SIZE "4" + +# define REG_SP "esp" +# define REG_BP "ebp" +# define REGBP ebp +# define REGa eax +# define REGb ebx +# define REGSP esp +#endif + +#endif /* AVUTIL_X86CPU_H */ |