From ff92d10a0485717149b6cebc7122a3d545d48fd3 Mon Sep 17 00:00:00 2001 From: Vas Crabb Date: Mon, 13 Jan 2025 05:43:09 +1100 Subject: osd: Added helper for getting CPU cache line size. --- src/osd/modules/lib/osdlib_macosx.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/osd/modules/lib/osdlib_macosx.cpp') diff --git a/src/osd/modules/lib/osdlib_macosx.cpp b/src/osd/modules/lib/osdlib_macosx.cpp index 9d13f118ff2..54836f9ec69 100644 --- a/src/osd/modules/lib/osdlib_macosx.cpp +++ b/src/osd/modules/lib/osdlib_macosx.cpp @@ -56,6 +56,7 @@ void osd_process_kill() kill(getpid(), SIGKILL); } + //============================================================ // osd_break_into_debugger //============================================================ @@ -81,6 +82,22 @@ void osd_break_into_debugger(const char *message) } +//============================================================ +// osd_get_cache_line_size +//============================================================ + +std::pair osd_get_cache_line_size() noexcept +{ + size_t result = 0; + size_t resultsize = sizeof(result); + int const err = sysctlbyname("hw.cachelinesize", &result, &resultsize, 0, 0); + if (!err) + return std::make_pair(std::error_condition(), unsigned(result)); + else + return std::make_pair(std::error_condition(err, std::generic_category()), 0U); +} + + //============================================================ // osd_get_clipboard_text //============================================================ -- cgit v1.2.3-70-g09d2