equal
deleted
inserted
replaced
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 |