12#include "../macros.hpp"
18#include <TargetConditionals.h>
21hi_export_module(hikogui.utility.architecture);
23hi_export
namespace hi::inline
v1 {
26#if (HI_COMPILER == HI_CC_GCC || HI_COMPILER == HI_CC_CLANG)
27#if (HI_PROCESSOR == HI_CPU_X86_64 || HI_PROCESSOR == HI_CPU_ARM64)
28#if (HI_STD_LIBRARY == HI_STL_GCC || HI_STD_LIBRARY == HI_STL_LLVM)
29#define HI_HAS_INT128 1
43#if HI_OPERATING_SYSTEM == HI_OS_WINDOWS
44using os_handle =
void *;
46using thread_id = uint32_t;
49#elif HI_OPERATING_SYSTEM == HI_OS_MACOS
52using thread_id = uint32_t;
53constexpr std::size_t maximum_num_cpus = CPU_SETSIZE;
55#elif HI_OPERATING_SYSTEM == HI_OS_LINUX
58using thread_id = uint32_t;
59constexpr std::size_t maximum_num_cpus = CPU_SETSIZE;
62#error "Not implemented."
72#if defined(__clang__) and defined(_CPPLIB_VER)
73inline void _Literal_zero_is_expected(
void)
DOXYGEN BUG.
Definition algorithm_misc.hpp:20
__int128 int128_t
Signed 128 bit integer.
Definition architecture.hpp:33
unsigned __int128 uint128_t
Unsigned 128 bit integer.
Definition architecture.hpp:37