msr.h

来自「基于组件方式开发操作系统的OSKIT源代码」· C头文件 代码 · 共 31 行

H
31
字号
/* * Access to machine-specific registers (available on 586 and better only) * Note: the rd* operations modify the parameters directly (without using * pointer indirection), this allows gcc to optimize better */#define rdmsr(msr,val1,val2) \       __asm__ __volatile__("rdmsr" \			    : "=a" (val1), "=d" (val2) \			    : "c" (msr))#define wrmsr(msr,val1,val2) \     __asm__ __volatile__("wrmsr" \			  : /* no outputs */ \			  : "c" (msr), "a" (val1), "d" (val2))#define rdtsc(low,high) \     __asm__ __volatile__("rdtsc" : "=a" (low), "=d" (high))#define rdtscl(low) \     __asm__ __volatile__ ("rdtsc" : "=a" (low) : : "edx")#define rdtscll(val) \     __asm__ __volatile__ ("rdtsc" : "=A" (val))#define rdpmc(counter,low,high) \     __asm__ __volatile__("rdpmc" \			  : "=a" (low), "=d" (high) \			  : "c" (counter))

⌨️ 快捷键说明

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