windows-arm.patch 1.2 KB

12345678910111213141516171819202122232425262728
  1. diff --git a/quill/include/quill/core/Rdtsc.h b/quill/include/quill/core/Rdtsc.h
  2. index 2a5203b..17b92b7 100644
  3. --- a/quill/include/quill/core/Rdtsc.h
  4. +++ b/quill/include/quill/core/Rdtsc.h
  5. @@ -45,7 +45,7 @@ QUILL_NODISCARD QUILL_ATTRIBUTE_HOT inline uint64_t rdtsc() noexcept
  6. __asm__ volatile("mrs %0, cntvct_el0" : "=r"(virtual_timer_value));
  7. return static_cast<uint64_t>(virtual_timer_value);
  8. }
  9. -#elif defined(__ARM_ARCH)
  10. +#elif (defined(__ARM_ARCH) && !defined(_MSC_VER))
  11. QUILL_NODISCARD QUILL_ATTRIBUTE_HOT inline uint64_t rdtsc() noexcept
  12. {
  13. #if (__ARM_ARCH >= 6)
  14. @@ -69,13 +69,7 @@ QUILL_NODISCARD QUILL_ATTRIBUTE_HOT inline uint64_t rdtsc() noexcept
  15. // soft failover
  16. return static_cast<uint64_t>(std::chrono::system_clock::now().time_since_epoch().count());
  17. }
  18. -#elif (defined(_M_ARM) || defined(_M_ARM64))
  19. -QUILL_NODISCARD QUILL_ATTRIBUTE_HOT inline uint64_t rdtsc() noexcept
  20. -{
  21. - // soft failover
  22. - return static_cast<uint64_t>(std::chrono::system_clock::now().time_since_epoch().count());
  23. -}
  24. -#elif (defined(__PPC64__))
  25. +#elif (defined(_M_ARM) || defined(_M_ARM64) || defined(__PPC64__))
  26. QUILL_NODISCARD QUILL_ATTRIBUTE_HOT inline uint64_t rdtsc() noexcept
  27. {
  28. // soft failover