9#if (HI_COMPILER == HI_CC_GCC || HI_COMPILER == HI_CC_CLANG) && (HI_PROCESSOR == HI_CPU_X64 || HI_PROCESSOR == HI_CPU_ARM64)
10#define HI_HAS_INT128 1
13#if !defined(HI_HAS_INT128)
36namespace hi::inline
v1 {
38#if defined(HI_HAS_INT128)
39using int128_t = __int128_t;
40using uint128_t =
unsigned __int128_t;
42using int128_t = bigint<uintreg_t, 128 / (
sizeof(uintreg_t) * CHAR_BIT),
true>;
43using uint128_t = bigint<uintreg_t, 128 / (
sizeof(uintreg_t) * CHAR_BIT),
false>;
46#if HI_PROCESSOR == HI_CPU_X86
47using longreg_t = int64_t;
48using ulongreg_t = uint64_t;
49#elif HI_PROCESSOR == HI_CPU_X64
50using longreg_t = int128_t;
51using ulongreg_t = uint128_t;
52#elif HI_PROCESS = HI_CPU_ARM
53using longreg_t = int64_t;
54using ulongreg_t = uint64_t;
55#elif HI_PROCESS = HI_CPU_ARM64
56using longreg_t = int128_t;
57using ulongreg_t = uint128_t;
59#error "register_int missing implementation"
Functions and macros for handling architectural difference between compilers, CPUs and operating syst...
DOXYGEN BUG.
Definition algorithm.hpp:15