⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 skl_rdtsc.h

📁 从FFMPEG转换而来的H264解码程序,VC下编译..
💻 H
字号:
/********************************************************
 * Some code. Copyright (C) 2003 by Pascal Massimino.   *
 * All Rights Reserved.      (http://skal.planet-d.net) *
 * For Educational/Academic use ONLY. See 'LICENSE.TXT'.*
 ********************************************************/
/*
 * skl_rdtsc.h
 *
 * time stamp (INTEL only)
 ********************************************************/

#ifndef _SKL_RDTSC_H_
#define _SKL_RDTSC_H_

#ifdef SKL_USE_ASM    // SKL_USE_RDTSC?!

//////////////////////////////////////////////////////////

extern "C" {

  extern SKL_INT32 Skl_RCount_[16];
  extern SKL_INT32 Skl_Cur_Count_;
  extern SKL_INT32 Skl_Tics_;
  extern SKL_INT32 Skl_EAX_In_;
  extern SKL_INT32 Skl_EBX_In_;
  extern SKL_INT32 Skl_ECX_In_;
  extern SKL_INT32 Skl_EDX_In_;
  extern SKL_INT32 Skl_EDI_In_;
  extern SKL_INT32 Skl_ESI_In_;
  extern SKL_INT32 Skl_EBP_In_;
  extern SKL_INT32 Skl_ESP_In_;
  extern SKL_INT32 Skl_EAX_Out_;
  extern SKL_INT32 Skl_EBX_Out_;
  extern SKL_INT32 Skl_ECX_Out_;
  extern SKL_INT32 Skl_EDX_Out_;
  extern SKL_INT32 Skl_EDI_Out_;
  extern SKL_INT32 Skl_ESI_Out_;
  extern SKL_INT32 Skl_EBP_Out_;
  extern SKL_INT32 Skl_ESP_Out_;
  extern float Skl_f_In_[8];
  extern float Skl_f_Out_[8];
  extern void SKL_RDTSC_0_ASM();
  extern void SKL_RDTSC_1_ASM();
  extern void SKL_RDTSC_2_ASM();
  extern void Skl_Print_Tics( SKL_INT32 Offset );
}

#define SKL_RDTSC_IN  \
  SKL_RDTSC_0_ASM(); \
  for(Skl_Cur_Count_=15;Skl_Cur_Count_>=0;--Skl_Cur_Count_) {\
    SKL_RDTSC_1_ASM()

#define SKL_RDTSC_OUT \
    SKL_RDTSC_2_ASM(); }  \
  Skl_Print_Tics(27)

//////////////////////////////////////////////////////////
#else
//////////////////////////////////////////////////////////

#include "skl_syst/skl_exception.h"
#define SKL_RDTSC_IN
#define SKL_RDTSC_OUT throw SKL_MSG_EXCEPTION( " No ASM timing available for RDTSC." )

//////////////////////////////////////////////////////////

#endif  /* SKL_USE_ASM  */
#endif  /* _SKL_RDTSC_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -