| Index: patched-ffmpeg-mt/libavcodec/x86/mathops.h
|
| ===================================================================
|
| --- patched-ffmpeg-mt/libavcodec/x86/mathops.h (revision 41250)
|
| +++ patched-ffmpeg-mt/libavcodec/x86/mathops.h (working copy)
|
| @@ -78,4 +78,23 @@
|
| );
|
| #endif
|
|
|
| +// avoid +32 for shift optimization (gcc should do that ...)
|
| +#define NEG_SSR32 NEG_SSR32
|
| +static inline int32_t NEG_SSR32( int32_t a, int8_t s){
|
| + __asm__ ("sarl %1, %0\n\t"
|
| + : "+r" (a)
|
| + : "ic" ((uint8_t)(-s))
|
| + );
|
| + return a;
|
| +}
|
| +
|
| +#define NEG_USR32 NEG_USR32
|
| +static inline uint32_t NEG_USR32(uint32_t a, int8_t s){
|
| + __asm__ ("shrl %1, %0\n\t"
|
| + : "+r" (a)
|
| + : "ic" ((uint8_t)(-s))
|
| + );
|
| + return a;
|
| +}
|
| +
|
| #endif /* AVCODEC_X86_MATHOPS_H */
|
|
|