summaryrefslogtreecommitdiffstats
path: root/win/tclWinTime.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge 8.6jan.nijtmans2020-03-221-3/+3
|\
| * Even more uppercase HEX representations in source-codejan.nijtmans2020-03-221-3/+3
| |
* | TIP 569 - remove lint commentsdgp2020-03-171-1/+0
| |
* | TCL_UNUSED for win sources.dgp2020-03-091-12/+5
| |
* | Merge 8.7jan.nijtmans2019-09-191-2/+2
|\ \
| * \ Merge 8.6jan.nijtmans2019-09-191-2/+2
| |\ \ | | |/
| | * Some more *A() -> *W() Win32 API changes, making Unicode calls Explicit.jan.nijtmans2019-09-191-2/+2
| | |
* | | Merge 8.7jan.nijtmans2019-09-141-6/+19
|\ \ \ | |/ /
| * | Merge 8.6. Remove 3 duplicate build-entries in .travis.ymljan.nijtmans2019-09-071-6/+19
| |\ \ | | |/
| | * Don't let Tcl compilation depend on USE_32BIT_TIME_T any more: Microsoft ↵jan.nijtmans2019-09-071-6/+19
| | |\ | | | | | | | | | | | | | | | | could discontinue this macro any moment, then we are prepared .... As a bonus: time_t is now allowed to be 64-bit internally, without effect on the C API (like stub-enabled extensions)
| | | * Don't let Tcl depend on USE_32BIT_TIME_T any more: If your compiler supports ↵jan.nijtmans2019-09-061-6/+19
| | | | | | | | | | | | | | | | | | | | it, time_t will be 64-bit internally. But at API-level, time_t will still be restricted to 32-bit on Win32 (Not on Win64). This keeps Tcl_StatBuf the same (unless USE_64BIT_TIME_T is defined), so 64-bit times still cannot be used everywhere.
* | | | Mark more function paramaters as unused. Now Tcl compiles fully (on UNIX and ↵jan.nijtmans2019-09-051-3/+10
|\ \ \ \ | |/ / / | | | | | | | | Windows) without -Wunused-parameters warnings
* | | | Merge tip-548jan.nijtmans2019-08-291-1/+1
|\ \ \ \ | |/ / /
| * | | Merge 8.6jan.nijtmans2019-08-231-1/+1
| |\ \ \ | | |/ / | | | | | | | | Update effective_tld_names.txt.gz to the latest version. Adapt .gitattributes and .fossil-settings/binary-glob to handle *.gz file transparently in fossil/git
| | * | Fix [8566dc22f9]: various spelling fixes in commentsjan.nijtmans2019-08-221-1/+1
| | |\ \ | | | |/
| | | * Fix [8566dc22f9]: various spelling fixes in commentsjan.nijtmans2019-08-221-1/+1
| | | |
| * | | Merge 8.6jan.nijtmans2019-08-021-1/+1
| |\ \ \ | | |/ /
| | * | Add one more knownMsvcBug marker, for a test-case which sometimes fails in ↵jan.nijtmans2019-08-021-1/+1
| | | | | | | | | | | | | | | | | | | | Travis. Fix a struct initializer, add two typecasts and a "const", which can generate gcc warnings with some compiler options.
* | | | Merge 8.7. Continue implementation for win32jan.nijtmans2019-08-021-2/+2
|/ / /
* | | Merge 8.6. Remove unneeded code from init.tcljan.nijtmans2019-03-071-11/+11
|\ \ \ | |/ /
| * | Fix some gcc/MSVC (harmless) compiler warnings. Remove some unnecessary ↵jan.nijtmans2019-03-071-11/+11
| | | | | | | | | | | | end-of-line spacing
* | | merge 8.6 (TIP#527, New measurement facilities in TCL: New command timerate, ↵sebres2019-03-051-83/+345
|\ \ \ | |/ / | | | | | | performance test suite)
| * | merge 8-5-timerate (?max-count?, break possibility, diverse fixes) + windows ↵sebres2019-02-131-51/+120
| |\ \ | | |/ | | | | | | time-calibration cycle optimization [f6637d3dd8] (clock ticks never backwards, more precise and smooth drifting)
| | * merge 8.5 (note: to avoid too many conflicts, merged using `fossil merge ↵sergey.brester2019-02-121-0/+9
| | |\ | | | | | | | | | | | | --baseline 0055a16a8b core-8-5-branch`)
| | * | [win32] optimized calibration cycle (makes Tcl for windows "RTS" resp. ↵sebres2017-05-231-53/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NRT-capable): - the clock ticks never backwards (avoid it by negative drifts using comparison of times before and after calibration); - more precise, smooth/soft drifting (avoids too large drifts, already after 10 iterations the drift gets fewer as 0.1 microseconds); - because of more accurate drifting (aspire to the smallest difference), we can prolong calibration interval (up to 10 seconds by small tdiff-value); Closes ticket [b7b707a310ea42e9f1b29954ee8ca13ae91ccabe] "[win32] NRT-only - NativeGetTime backwards time-drifts bug"
| | * | back-ported branch sebres-8-6-timerate (new command "timerate" for 8.5)sebres2017-05-161-39/+232
| | |\ \
| * | \ \ merge 8.6(.9), conflicts resolvedsergey.brester2019-02-071-0/+9
| |\ \ \ \ | | |_|/ / | |/| | |
* | | | | Merge 8.6jan.nijtmans2019-01-031-0/+1
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Fix conflict with timezone() function in some MSVC versionsjan.nijtmans2019-01-031-0/+1
| |\ \ \ \ | | | |_|/ | | |/| |
| | * | | Fix conflict with timezone() function in some MSVC versionsjan.nijtmans2019-01-031-0/+1
| | | | |
* | | | | Fix [3cf3a939d32707e100e06e23806e13569856286a|3cf3a939d3]: timezone ↵jan.nijtmans2018-12-301-0/+8
|\ \ \ \ \ | |/ / / / | | | | | | | | | | deprecated in vc2017
| * | | | Fix [3cf3a939d32707e100e06e23806e13569856286a|3cf3a939d3]: timezone ↵jan.nijtmans2018-12-301-0/+8
| |\ \ \ \ | | |/ / / | | | | | | | | | | | | | | | deprecated in vc2017. Also remove unix/config.status.lineno, which was -apparently - checked-in by accident in previous commit
| | * | | Fix [3cf3a939d32707e100e06e23806e13569856286a|3cf3a939d3]: timezone ↵jan.nijtmans2018-12-301-0/+8
| | | |/ | | |/| | | | | | | | | deprecated in vc2017
* | | | Merge core-8-6-branch. This removes the work currently being done in ↵jan.nijtmans2017-06-021-232/+39
|\ \ \ \ | |/ / / | | | | | | | | | | | | "sebres-8-6-clock-speedup-cr1" branch, but that will be merged again as soon as the work is done. All other changes in "trunk" since then (e.g. the INST_STR_CONCAT1 performance improvement, and the removal of SunOS-4) are retained.
* | | | merge core-8-6-branch (except: the "timerate" command and the clock ↵jan.nijtmans2017-05-311-4/+4
|\ \ \ \ | | | | | | | | | | | | | | | performance-tests are kept)
| * | | | More code review, e.g. use Tcl_SetObjResult in stead of Tcl_SetResult, ↵jan.nijtmans2017-05-311-4/+4
| | |_|/ | |/| | | | | | | | | | preventing a (char *) type case. No functional changes.
| * | | back-ported branch sebres_trunk_timerate (new command "timerate" for 8.6)sebres2017-05-091-39/+232
| |\ \ \ | | |/ / | |/| |
| * | | Merge bug_b87ad7e914sebres2017-01-091-21/+39
| |\ \ \ | | | |/ | | |/|
* | | | merge trunk (to sebres-trunk-timerate)sebres2017-05-111-0/+8
|\ \ \ \ | |_|_|/ |/| | |
| * | | If compiled with TCL_NO_DEPRECATED, the functions ↵jan.nijtmans2017-04-061-0/+8
| | | | | | | | | | | | | | | | TclpGetDate/TclpLocaltime/TclpGmtime can be removed: They are internal and not used for anything any more.
* | | | [win] accomplished winTime module using very fast wide clicks, with ↵sebres2017-02-091-7/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | denominator scale to/from microseconds, and therefore more precise "timerate" results under windows (using similar mechanisms as by Mac OSX). Especially multi-threaded, because it works without lock opposite to microseconds (that use crictical section, because of the calibration thread). The reason for usage of wide clicks instead microseconds explains following example (shows 20% performance deference): % timerate -calibrate {} % timerate {clock microseconds} 5000 0.297037 µs/# 14465901 # 3366585 #/sec 4296.906 nett-ms % timerate {clock clicks} 5000 0.247797 µs/# 16869084 # 4035554 #/sec 4180.116 nett-ms
* | | | [timerate] bug fix: missing scale conversion by Mac OSX on platform where ↵sebres2017-02-091-33/+133
|/ / / | | | | | | | | | | | | | | | | | | high resolution clicks are not microseconds based; [win] use high resolution timer for the wide clicks and microseconds directly, prevent several forwards/backwards conversions; [win, unix, mac-osx] normalize some functions for common usage in different time units (clicks, micro- and nanoseconds)
* | | Merge bug_b87ad7e914sebres2017-01-091-21/+39
|\ \ \ | | |/ | |/|
| * | Fix for [b87ad7e9146832d505f9a430d779c5313c440256|b87ad7e914], rebased to ↵jan.nijtmans2017-01-091-21/+39
| |\ \ | | | | | | | | | | | | | | | | core-8-5-branch (who said fossil doesn't have 'rebase'...), and moved the definition of "struct _timeb t" to the top of the function. This branch is ready to be merged to core-8-5-branch, it looks good to me. Thanks to sebres (Dipl. Ing. Sergey G. Brester)
| | * | [win] bug fix in NativeGetTime: each call of it blurs current performance ↵sebres2017-01-021-17/+37
| |/ / |/| | | | | | | | | | | | | | | | | | | | counters actualized in calibration thread in UpdateTimeEachSecond; This entails that sometimes sporadically time-drifts resp. jump-esque time-shifts occurred, what for example produces very confusing results during time measurement. [unix] wrong cast fixed in TclpGetWideClicks: multiplication with 1000000 in long int may cause overflow See ticket b87ad7e9146832d505f9a430d779c5313c440256
* | | more internal use of size_t (in stead of int)jan.nijtmans2016-11-291-1/+1
| | |
* | | Fix harmless gcc warning message: using "unsigned" doesn't serve any ↵jan.nijtmans2016-11-111-1/+1
| | | | | | | | | | | | purpose, actually.
* | | Simplify use of "struct" keyword in many places.jan.nijtmans2016-06-301-2/+2
| |/ |/|
* | Fix for FreeBSD, and remove support for older FreeBSD versions. Patch by ↵jan.nijtmans2013-05-191-2/+2
|\ \ | |/ | | | | Pietro Cerutti
| * Fix for FreeBSD, and remove support for older FreeBSD versions. Patch by ↵jan.nijtmans2013-05-191-2/+2
| |\ | | | | | | | | | Pietro Cerutti