diff --git a/absl/base/internal/unscaledcycleclock.cc b/absl/base/internal/unscaledcycleclock.cc index 9e931808412..28fe66e0fdd 100644 --- a/absl/base/internal/unscaledcycleclock.cc +++ b/absl/base/internal/unscaledcycleclock.cc @@ -99,9 +99,12 @@ double UnscaledCycleClock::Frequency() { static once_flag init_timebase_frequency_once; static double timebase_frequency = 0.0; base_internal::LowLevelCallOnce(&init_timebase_frequency_once, [&]() { - size_t length = sizeof(timebase_frequency); - sysctlbyname("kern.timecounter.tc.timebase.frequency", &timebase_frequency, - &length, nullptr, 0); + uint64_t freq = 0; + size_t length = sizeof(freq); + if (sysctlbyname("kern.timecounter.tc.timebase.frequency", &freq, &length, + nullptr, 0) == 0) { + timebase_frequency = static_cast(freq); + } }); return timebase_frequency; #else diff --git a/absl/debugging/internal/stacktrace_powerpc-inl.inc b/absl/debugging/internal/stacktrace_powerpc-inl.inc index f23c29cb0a0..b2082157017 100644 --- a/absl/debugging/internal/stacktrace_powerpc-inl.inc +++ b/absl/debugging/internal/stacktrace_powerpc-inl.inc @@ -51,11 +51,10 @@ static inline void **StacktracePowerPCGetLRPtr(void **sp) { return (sp + 2); #elif defined(_CALL_SYSV) return (sp + 1); -#elif defined(__APPLE__) || defined(__FreeBSD__) || \ - (defined(__linux__) && defined(__PPC64__)) +#elif defined(__APPLE__) || defined(__PPC64__) // This check is in case the compiler doesn't define _CALL_AIX/etc. return (sp + 2); -#elif defined(__linux) +#elif defined(__linux) || defined(__FreeBSD__) // This check is in case the compiler doesn't define _CALL_SYSV. return (sp + 1); #else