diff options
Diffstat (limited to 'libavcodec/common.h')
-rw-r--r-- | libavcodec/common.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libavcodec/common.h b/libavcodec/common.h index 20978ae..4d72d88 100644 --- a/libavcodec/common.h +++ b/libavcodec/common.h @@ -457,6 +457,16 @@ if((y)<(x)){\ #endif #if defined(ARCH_X86) || defined(ARCH_X86_64) +#if defined(ARCH_X86_64) +static inline uint64_t rdtsc(void) +{ + uint64_t a, d; + asm volatile( "rdtsc\n\t" + : "=a" (a), "=d" (d) + ); + return (d << 32) | (a & 0xffffffff); +} +#else static inline long long rdtsc(void) { long long l; @@ -465,6 +475,7 @@ static inline long long rdtsc(void) ); return l; } +#endif #define START_TIMER \ uint64_t tend;\ |