gecko-dev/mozglue/misc
Markus Stange b75080bb8b Bug 1876415 - Make timestamp formats consistent between Jitdump and the marker file. r=glandium
On Linux and Android, both jitdump and the marker file will keep using
`CLOCK_MONOTONIC` nanoseconds, as before.

On macOS, both jitdump and the marker file will now be using
`TimeStamp::RawMachAbsoluteTimeNanoseconds()` , i.e. "nanoseconds since
mach_absolute_time origin".
This value has the advantage that it is also relatively easy to obtain
in other browser engines, because their internal timestamp value is stored
in milliseconds or nanoseconds rather than in `mach_absolute_time` ticks.
In the past, on macOS, Firefox was using `CLOCK_MONOTONIC` nanoseconds for
jitdump and `TimeStamp::RawMachAbsoluteTimeValue()` for the marker file.
This inconsistency is now fixed.
I will update samply to change how it treats jitdump timestamps on macOS.
There are no other consumers of jitdump files on macOS that I know of.

On Windows, we will keep using raw QPC values for the marker file - this
matches what's in the ETW events. Jitdump on Windows is mostly unused but
I'm updating it to match.

Furthermore, this fixes the order in mozglue/misc/moz.build to make sure
we always use the TimeStamp_darwin implementation on Darwin (and not just
due to a broken configure check, see bug 1681445), and it fixes the #ifdef
in TimeStamp.h to match the Darwin check.

Differential Revision: https://phabricator.services.mozilla.com/D199592
2024-01-26 03:38:54 +00:00
..
decimal Bug 1845441 - get rid of global constructors in dom/html/HTMLInputElement.cpp r=mstange,dom-core,mccr8 2023-08-23 07:51:44 +00:00
AutoProfilerLabel.cpp Bug 1856795 - ride along: use = default; on some recently modified files r=emilio 2023-10-15 15:29:03 +00:00
AutoProfilerLabel.h
AwakeTimeStamp.cpp
AwakeTimeStamp.h
ConditionVariable_noop.cpp
ConditionVariable_posix.cpp Bug 1830530 - Set CV_USE_CLOCK_API if Android API is 21+. r=glandium 2023-05-10 12:56:57 +00:00
ConditionVariable_windows.cpp
Debug.cpp Bug 1790873 - Move printf_stderr() to mozglue so it can be used within js/src r=glandium,nika 2024-01-11 02:09:30 +00:00
Debug.h Bug 1790873 - Move printf_stderr() to mozglue so it can be used within js/src r=glandium,nika 2024-01-11 02:09:30 +00:00
DynamicallyLinkedFunctionPtr.h
GetKnownFolderPath.cpp
GetKnownFolderPath.h
ImportDir.h
IntegerPrintfMacros.h
MmapFaultHandler.cpp
MmapFaultHandler.h Bug 1849518 - Add null after call to FileLocation::GetBaseFile r=jesup 2023-09-11 07:57:04 +00:00
MutexPlatformData_noop.h
MutexPlatformData_posix.h
MutexPlatformData_windows.h
Mutex_noop.cpp
Mutex_posix.cpp Bug 1845144 Part 2: Remove macOS available and builtin_available directives for always-supported versions of macOS. r=mac-reviewers,mstange,keeler,padenot 2023-08-02 02:26:14 +00:00
Mutex_windows.cpp
NativeNt.h Bug 1869497 - Introduce MOZ_NAKED to centralize all attributes we expect from naked r=glandium,win-reviewers,mhowell 2023-12-15 09:26:48 +00:00
PlatformConditionVariable.h
PlatformMutex.h
PlatformRWLock.h
PreXULSkeletonUI.cpp Bug 1855134 - Move existing MOZ_TRY macros to a dedicated header file; r=glandium 2023-09-28 20:46:07 +00:00
PreXULSkeletonUI.h Bug 1844908 - Remove pre-Win10-specific codepath from mozglue/. r=glandium 2023-07-26 08:52:52 +00:00
Printf.cpp Bug 1850569 - Make it easier for the compiler to analyze mozilla::PrintfTarget::fill_n r=emilio 2023-08-29 19:33:46 +00:00
Printf.h
ProcessType.cpp
ProcessType.h
RWLock_posix.cpp
RWLock_windows.cpp
RuntimeExceptionModule.cpp Bug 1849068 - Change how the missing pieces are setup for mingw. r=bobowen 2023-08-17 19:26:07 +00:00
RuntimeExceptionModule.h
SIMD.cpp
SIMD.h
SIMD_avx2.cpp
SSE.cpp Bug 1868949 - Add support for AVX VNNI in cpu detection and IntegerGemm r=marco 2023-12-19 13:04:19 +00:00
SSE.h Bug 1868949 - Add support for AVX VNNI in cpu detection and IntegerGemm r=marco 2023-12-19 13:04:19 +00:00
Sprintf.h
StackWalk.cpp Bug 1855079 - On 32-bit ARM, ignore the least significant bit of the address in the comparison in ShouldSkipPC. r=mstange 2024-01-21 00:56:50 +00:00
StackWalk.h
StackWalkThread.h
StackWalk_windows.h Bug 1836225 - Prevent stack walking deadlock on Windows aarch64. r=handyman,florian 2023-09-13 14:32:50 +00:00
TimeStamp.cpp Bug 1862511 - Removed extra semicolons. r=glandium 2023-11-29 06:53:59 +00:00
TimeStamp.h Bug 1876415 - Make timestamp formats consistent between Jitdump and the marker file. r=glandium 2024-01-26 03:38:54 +00:00
TimeStamp_darwin.cpp Bug 1876415 - Make timestamp formats consistent between Jitdump and the marker file. r=glandium 2024-01-26 03:38:54 +00:00
TimeStamp_posix.cpp Bug 1847928 - Add missing semicolon. r=fix CLOSED TREE 2023-08-09 12:36:14 +00:00
TimeStamp_windows.cpp Bug 1841352: Added (compile-time) unit tests for TimeStamp and TimeStampValue r=florian 2023-07-12 14:56:20 +00:00
TimeStamp_windows.h Bug 1519636 - Reformat recent changes to the Google coding style r=emilio,media-playback-reviewers,padenot 2023-12-04 10:09:36 +00:00
Uptime.cpp
Uptime.h
WinUtils.h
WindowsDllMain.cpp
WindowsDpiAwareness.h Bug 1852806 - Remove macros for older Windows SDK from mozglue/. r=glandium 2023-09-15 03:19:27 +00:00
WindowsDpiInitialization.cpp Bug 1844908 - Remove pre-Win10-specific codepath from mozglue/. r=glandium 2023-07-26 08:52:52 +00:00
WindowsDpiInitialization.h Bug 1844908 - Remove pre-Win10-specific codepath from mozglue/. r=glandium 2023-07-26 08:52:52 +00:00
WindowsEnumProcessModules.h
WindowsMapRemoteView.cpp
WindowsMapRemoteView.h
WindowsProcessMitigations.cpp Bug 1852806 - Remove macros for older Windows SDK from mozglue/. r=glandium 2023-09-15 03:19:27 +00:00
WindowsProcessMitigations.h Bug 1803334 - Skip execution of MovPushRet and PushRet in TestDllInterceptor if Intel CET is active. r=handyman 2023-09-12 08:27:19 +00:00
WindowsStackCookie.h
WindowsUnicode.cpp
WindowsUnicode.h
WindowsUnwindInfo.h
moz.build Bug 1876415 - Make timestamp formats consistent between Jitdump and the marker file. r=glandium 2024-01-26 03:38:54 +00:00