[GHC] #14233: Remove old GetTickCount() code path for Windows

#14233: Remove old GetTickCount() code path for Windows ----------------------------------------+--------------------------------- Reporter: nh2 | Owner: (none) Type: task | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.3 Keywords: | Operating System: Windows Architecture: Unknown/Multiple | Type of failure: None/Unknown Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: ----------------------------------------+--------------------------------- Windows XP support was dropped since GHC 8.0 as per https://ghc.haskell.org/trac/ghc/wiki/WindowsGhc In `HsWord64 getMonotonicNSec()` on Windows we still fall back to the 32-bit `GetTickCount()` if `QueryPerformanceFrequency()` is not supported: [https://github.com/ghc/ghc/blob/ghc-8.2.1-release/rts/win32/GetTime.c#L69 Code] But [https://msdn.microsoft.com/en- us/library/windows/desktop/ms644905(v=vs.85).aspx Microsoft's documentation] says that `QueryPerformanceFrequency()` is guaranteed to be supported on Windows >= XP:
On systems that run Windows XP or later, the function will always succeed and will thus never return zero.
Thus we can remove the `if (!qpc_supported)` check and all `if (!qpc_frequency.QuadPart)` code paths, and replace it with an assertion or a `./configure` check. We can also add a comment that `getMonotonicNSec()` will indeed always make use of the whole 64-bit domain. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14233 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#14233: Remove old GetTickCount() code path for Windows
---------------------------------+----------------------------------------
Reporter: nh2 | Owner: (none)
Type: task | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 8.3
Resolution: | Keywords:
Operating System: Windows | Architecture: Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
---------------------------------+----------------------------------------
Comment (by Ben Gamari
participants (1)
-
GHC