随笔分类 -  asm

摘要:相信大家在移植ffmpeg代码到vc中都会遇到很多汇编指令,是VC不支持的。那是因为AT&T汇编和intel汇编格式不兼容引起的。今天给大家介绍一下libavutil\x86\internal.h 中emms_c函数的移植吧。函数原型:static av_always_inline void emms_c(void) { if(av_get_cpu_flags() & AV_CPU_FLAG_MMX) __asm__ volatile ("emms" ::: "memory"); }因为VC asm提供了emms,直接调用就可以了。因此修 阅读全文
posted @ 2012-05-22 18:53 移动应用开发 阅读(746) 评论(0) 推荐(0)
摘要:相信大家在移植ffmpeg代码到vc中都会遇到很多汇编指令,是VC不支持的。那是因为AT&T汇编和intel汇编格式不兼容引起的。今天给大家介绍一下libavutil\x86\timer.h 中read_time函数的移植吧。函数原型:static inline uint64_t read_time(void) { uint32_t a, d; __asm__ volatile("rdtsc" : "=a" (a), "=d" (d)); return ((uint64_t)d << 32) + a; }因为int 阅读全文
posted @ 2012-05-07 20:05 移动应用开发 阅读(205) 评论(0) 推荐(0)