src/os_timer.cpp
changeset 6171 fb9997933c24
parent 5584 1111b4d36e35
child 6247 7d81e3a5d803
equal deleted inserted replaced
6170:abff1cff6903 6171:fb9997933c24
     5 #undef RDTSC_AVAILABLE
     5 #undef RDTSC_AVAILABLE
     6 
     6 
     7 /* rdtsc for MSC_VER, uses simple inline assembly, or _rdtsc
     7 /* rdtsc for MSC_VER, uses simple inline assembly, or _rdtsc
     8  * from external win64.asm because VS2005 does not support inline assembly */
     8  * from external win64.asm because VS2005 does not support inline assembly */
     9 #if defined(_MSC_VER) && !defined(RDTSC_AVAILABLE)
     9 #if defined(_MSC_VER) && !defined(RDTSC_AVAILABLE)
    10 # if defined (_M_AMD64)
    10 # if _MSC_VER >= 1400
    11 extern uint64 _rdtsc(void);
    11 #include <intrin.h>
       
    12 uint64 _rdtsc(void)
       
    13 {
       
    14 	return __rdtsc();
       
    15 }
    12 #	else
    16 #	else
    13 uint64 _declspec(naked) _rdtsc(void)
    17 uint64 _declspec(naked) _rdtsc(void)
    14 {
    18 {
    15 	_asm {
    19 	_asm {
    16 		rdtsc
    20 		rdtsc