summaryrefslogtreecommitdiffstats
path: root/win/tclWinTime.c
diff options
context:
space:
mode:
Diffstat (limited to 'win/tclWinTime.c')
-rw-r--r--win/tclWinTime.c78
1 files changed, 38 insertions, 40 deletions
diff --git a/win/tclWinTime.c b/win/tclWinTime.c
index ee3995b..6bc7b10 100644
--- a/win/tclWinTime.c
+++ b/win/tclWinTime.c
@@ -9,7 +9,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclWinTime.c,v 1.14.2.1 2003/04/12 20:11:34 kennykb Exp $
+ * RCS: @(#) $Id: tclWinTime.c,v 1.14.2.2 2003/04/15 21:06:36 kennykb Exp $
*/
#include "tclWinInt.h"
@@ -89,9 +89,9 @@ typedef struct TimeInfo {
* Data used in developing the estimate of performance counter
* frequency
*/
- ULONGLONG fileTimeSample[SAMPLES];
+ Tcl_WideUInt fileTimeSample[SAMPLES];
/* Last 64 samples of system time */
- LONGLONG perfCounterSample[SAMPLES];
+ Tcl_WideInt perfCounterSample[SAMPLES];
/* Last 64 samples of performance counter */
int sampleNo; /* Current sample number */
@@ -106,20 +106,18 @@ static TimeInfo timeInfo = {
(HANDLE) NULL,
(HANDLE) NULL,
#ifdef HAVE_CAST_TO_UNION
+ (LARGE_INTEGER) (Tcl_WideInt) 0,
(ULARGE_INTEGER) (DWORDLONG) 0,
- (LARGE_INTEGER) (LONGLONG) 0,
- (LARGE_INTEGER) (LONGLONG) 0,
+ (LARGE_INTEGER) (Tcl_WideInt) 0,
+ (LARGE_INTEGER) (Tcl_WideInt) 0,
#else
0,
0,
0,
-#endif
- 0,
- 0,
0,
+#endif
{ 0 },
{ 0 },
- 0,
0
};
@@ -134,13 +132,13 @@ static void StopCalibration _ANSI_ARGS_(( ClientData ));
static DWORD WINAPI CalibrationThread _ANSI_ARGS_(( LPVOID arg ));
static void UpdateTimeEachSecond _ANSI_ARGS_(( void ));
static void ResetCounterSamples _ANSI_ARGS_((
- ULONGLONG fileTime,
- LONGLONG perfCounter,
- LONGLONG perfFreq
+ Tcl_WideUInt fileTime,
+ Tcl_WideInt perfCounter,
+ Tcl_WideInt perfFreq
));
-static LONGLONG AccumulateSample _ANSI_ARGS_((
- LONGLONG perfCounter,
- ULONGLONG fileTime
+static Tcl_WideInt AccumulateSample _ANSI_ARGS_((
+ Tcl_WideInt perfCounter,
+ Tcl_WideUInt fileTime
));
/*
@@ -309,10 +307,10 @@ Tcl_GetTime(timePtr)
if ( timeInfo.perfCounterAvailable
/* The following lines would do an exact match on
* crystal frequency:
- * && timeInfo.nominalFreq.QuadPart != (LONGLONG) 1193182
- * && timeInfo.nominalFreq.QuadPart != (LONGLONG) 3579545
+ * && timeInfo.nominalFreq.QuadPart != (Tcl_WideInt) 1193182
+ * && timeInfo.nominalFreq.QuadPart != (Tcl_WideInt) 3579545
*/
- && timeInfo.nominalFreq.QuadPart > (LONGLONG) 15000000 ) {
+ && timeInfo.nominalFreq.QuadPart > (Tcl_WideInt) 15000000 ) {
timeInfo.perfCounterAvailable = FALSE;
}
@@ -360,7 +358,7 @@ Tcl_GetTime(timePtr)
LARGE_INTEGER curCounter;
/* Current performance counter */
- LONGLONG curFileTime;
+ Tcl_WideInt curFileTime;
/* Current estimated time, expressed
* as 100-ns ticks since the Windows epoch */
@@ -368,7 +366,7 @@ Tcl_GetTime(timePtr)
/* Posix epoch expressed as 100-ns ticks
* since the windows epoch */
- LONGLONG usecSincePosixEpoch;
+ Tcl_WideInt usecSincePosixEpoch;
/* Current microseconds since Posix epoch */
posixEpoch.LowPart = 0xD53E8000;
@@ -834,15 +832,15 @@ UpdateTimeEachSecond()
LARGE_INTEGER curFileTime; /* File time at the time this callback
* was scheduled. */
- LONGLONG estFreq; /* Estimated perf counter frequency */
+ Tcl_WideInt estFreq; /* Estimated perf counter frequency */
- LONGLONG vt0; /* Tcl time right now */
- LONGLONG vt1; /* Tcl time one second from now */
+ Tcl_WideInt vt0; /* Tcl time right now */
+ Tcl_WideInt vt1; /* Tcl time one second from now */
- LONGLONG tdiff; /* Difference between system clock and
+ Tcl_WideInt tdiff; /* Difference between system clock and
* Tcl time. */
- LONGLONG driftFreq; /* Frequency needed to drift virtual time
+ Tcl_WideInt driftFreq; /* Frequency needed to drift virtual time
* into step over 1 second */
/*
@@ -875,7 +873,7 @@ UpdateTimeEachSecond()
*/
estFreq = AccumulateSample( curPerfCounter.QuadPart,
- curFileTime.QuadPart );
+ (Tcl_WideUInt) curFileTime.QuadPart );
/*
* We want to adjust things so that time appears to be continuous.
@@ -949,11 +947,11 @@ UpdateTimeEachSecond()
*/
static void
-ResetCounterSamples( ULONGLONG fileTime,
+ResetCounterSamples( Tcl_WideUInt fileTime,
/* Current file time */
- LONGLONG perfCounter,
+ Tcl_WideInt perfCounter,
/* Current performance counter */
- LONGLONG perfFreq )
+ Tcl_WideInt perfFreq )
/* Target performance frequency */
{
int i;
@@ -993,26 +991,26 @@ ResetCounterSamples( ULONGLONG fileTime,
* probably run slow in the first case).
*/
-static LONGLONG
-AccumulateSample( LONGLONG perfCounter,
- ULONGLONG fileTime )
+static Tcl_WideInt
+AccumulateSample( Tcl_WideInt perfCounter,
+ Tcl_WideUInt fileTime )
{
- ULONGLONG workFTSample; /* File time sample being removed
+ Tcl_WideUInt workFTSample; /* File time sample being removed
* from or added to the circular buffer */
- LONGLONG workPCSample; /* Performance counter sample being
+ Tcl_WideInt workPCSample; /* Performance counter sample being
* removed from or added to the circular
* buffer */
- ULONGLONG lastFTSample; /* Last file time sample recorded */
+ Tcl_WideUInt lastFTSample; /* Last file time sample recorded */
- LONGLONG lastPCSample; /* Last performance counter sample recorded */
+ Tcl_WideInt lastPCSample; /* Last performance counter sample recorded */
- LONGLONG FTdiff; /* Difference between last FT and current */
+ Tcl_WideInt FTdiff; /* Difference between last FT and current */
- LONGLONG PCdiff; /* Difference between last PC and current */
+ Tcl_WideInt PCdiff; /* Difference between last PC and current */
- LONGLONG estFreq; /* Estimated performance counter frequency */
+ Tcl_WideInt estFreq; /* Estimated performance counter frequency */
/* Test for jumps and reset the samples if we have one. */
@@ -1044,7 +1042,7 @@ AccumulateSample( LONGLONG perfCounter,
estFreq = 10000000 * ( perfCounter - workPCSample )
/ ( fileTime - workFTSample );
timeInfo.perfCounterSample[ timeInfo.sampleNo ] = perfCounter;
- timeInfo.fileTimeSample[ timeInfo.sampleNo ] = (LONGLONG) fileTime;
+ timeInfo.fileTimeSample[ timeInfo.sampleNo ] = (Tcl_WideInt) fileTime;
/* Advance the sample number */