mirror of
https://github.com/Ed94/Odin.git
synced 2026-07-27 18:00:05 +00:00
Fix timing on macos
This commit is contained in:
+25
-3
@@ -29,7 +29,23 @@ u64 win32_time_stamp__freq(void) {
|
|||||||
return win32_perf_count_freq.QuadPart;
|
return win32_perf_count_freq.QuadPart;
|
||||||
}
|
}
|
||||||
|
|
||||||
#elif defined(GB_SYSTEM_OSX) || defined(GB_SYSTEM_UNIX)
|
#elif defined(GB_SYSTEM_OSX)
|
||||||
|
|
||||||
|
#include <mach/mach_time.h>
|
||||||
|
|
||||||
|
u64 osx_time_stamp_time_now(void) {
|
||||||
|
return mach_absolute_time();
|
||||||
|
}
|
||||||
|
|
||||||
|
u64 osx_time_stamp__freq(void) {
|
||||||
|
mach_timebase_info_data_t data;
|
||||||
|
data.numer = 0;
|
||||||
|
data.denom = 0;
|
||||||
|
mach_timebase_info(&data);
|
||||||
|
return (data.numer / data.denom) * 1000000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#elif defined(GB_SYSTEM_UNIX)
|
||||||
|
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
|
|
||||||
@@ -52,6 +68,8 @@ u64 unix_time_stamp__freq(void) {
|
|||||||
return freq;
|
return freq;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#else
|
#else
|
||||||
#error Implement system
|
#error Implement system
|
||||||
#endif
|
#endif
|
||||||
@@ -59,7 +77,9 @@ u64 unix_time_stamp__freq(void) {
|
|||||||
u64 time_stamp_time_now(void) {
|
u64 time_stamp_time_now(void) {
|
||||||
#if defined(GB_SYSTEM_WINDOWS)
|
#if defined(GB_SYSTEM_WINDOWS)
|
||||||
return win32_time_stamp_time_now();
|
return win32_time_stamp_time_now();
|
||||||
#elif defined(GB_SYSTEM_OSX) || defined(GB_SYSTEM_UNIX)
|
#elif defined(GB_SYSTEM_OSX)
|
||||||
|
return osx_time_stamp_time_now();
|
||||||
|
#elif defined(GB_SYSTEM_UNIX)
|
||||||
return unix_time_stamp_time_now();
|
return unix_time_stamp_time_now();
|
||||||
#else
|
#else
|
||||||
#error time_stamp_time_now
|
#error time_stamp_time_now
|
||||||
@@ -69,7 +89,9 @@ u64 time_stamp_time_now(void) {
|
|||||||
u64 time_stamp__freq(void) {
|
u64 time_stamp__freq(void) {
|
||||||
#if defined(GB_SYSTEM_WINDOWS)
|
#if defined(GB_SYSTEM_WINDOWS)
|
||||||
return win32_time_stamp__freq();
|
return win32_time_stamp__freq();
|
||||||
#elif defined(GB_SYSTEM_OSX) || defined(GB_SYSTEM_UNIX)
|
#elif defined(GB_SYSTEM_OSX)
|
||||||
|
return osx_time_stamp__freq();
|
||||||
|
#elif defined(GB_SYSTEM_UNIX)
|
||||||
return unix_time_stamp__freq();
|
return unix_time_stamp__freq();
|
||||||
#else
|
#else
|
||||||
#error time_stamp__freq
|
#error time_stamp__freq
|
||||||
|
|||||||
Reference in New Issue
Block a user