Changeset View
Changeset View
Standalone View
Standalone View
lib/Headers/intrin.h
Show First 20 Lines • Show All 859 Lines • ▼ Show 20 Lines | |||||
} | } | ||||
static __inline__ void __DEFAULT_FN_ATTRS | static __inline__ void __DEFAULT_FN_ATTRS | ||||
__nop(void) { | __nop(void) { | ||||
__asm__ volatile ("nop"); | __asm__ volatile ("nop"); | ||||
} | } | ||||
#endif | #endif | ||||
/*----------------------------------------------------------------------------*\ | /*----------------------------------------------------------------------------*\ | ||||
|* MS AArch64 specific | |||||
\*----------------------------------------------------------------------------*/ | |||||
#if defined(__aarch64__) | |||||
unsigned __int64 __getReg(int); | |||||
#endif | |||||
/*----------------------------------------------------------------------------*\ | |||||
|* Privileged intrinsics | |* Privileged intrinsics | ||||
\*----------------------------------------------------------------------------*/ | \*----------------------------------------------------------------------------*/ | ||||
#if defined(__i386__) || defined(__x86_64__) | #if defined(__i386__) || defined(__x86_64__) | ||||
static __inline__ unsigned __int64 __DEFAULT_FN_ATTRS | static __inline__ unsigned __int64 __DEFAULT_FN_ATTRS | ||||
__readmsr(unsigned long __register) { | __readmsr(unsigned long __register) { | ||||
// Loads the contents of a 64-bit model specific register (MSR) specified in | // Loads the contents of a 64-bit model specific register (MSR) specified in | ||||
// the ECX register into registers EDX:EAX. The EDX register is loaded with | // the ECX register into registers EDX:EAX. The EDX register is loaded with | ||||
// the high-order 32 bits of the MSR and the EAX register is loaded with the | // the high-order 32 bits of the MSR and the EAX register is loaded with the | ||||
Show All 30 Lines |