authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-12-02 11:09:56+01:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-12-03 12:07:34+01:00
logf058b147d3269b41f43279eca07e54a81ffc96c2
tree3233836ef27b90f936aa26553d02a5dc3f510604
parent084ec9781183c072eeb69e76ae12ee4fdb4bad5c
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

zig.h: Introduce operating system macros.


1 files changed, 42 insertions(+), 6 deletions(-)

lib/zig.h+42-6
...@@ -81,15 +81,51 @@...@@ -81,15 +81,51 @@
81#define zig_big_endian 181#define zig_big_endian 1
82#endif82#endif
8383
84#if defined(_WIN32)84#if defined(_AIX)
85#define zig_aix
86#elif defined(__MACH__)
87#define zig_darwin
88#elif defined(__DragonFly__)
89#define zig_dragonfly
90#define zig_bsd
91#elif defined(__EMSCRIPTEN__)
92#define zig_emscripten
93#elif defined(__FreeBSD__)
94#define zig_freebsd
95#define zig_bsd
96#elif defined(__Fuchsia__)
97#define zig_fuchsia
98#elif defined(__HAIKU__)
99#define zig_haiku
100#elif defined(__gnu_hurd__)
101#define zig_hurd
102#elif defined(__linux__)
103#define zig_linux
104#elif defined(__NetBSD__)
105#define zig_netbsd
106#define zig_bsd
107#elif defined(__OpenBSD__)
108#define zig_openbsd
109#define zig_bsd
110#elif defined(__SVR4)
111#define zig_solaris
112#elif defined(__wasi__)
113#define zig_wasi
114#elif defined(_WIN32)
115#define zig_windows
116#elif defined(__MVS__)
117#define zig_zos
118#endif
119
120#if defined(zig_windows)
85#define zig_coff121#define zig_coff
86#elif defined(__ELF__)122#elif defined(__ELF__)
87#define zig_elf123#define zig_elf
88#elif defined(__MVS__)124#elif defined(zig_zos)
89#define zig_goff125#define zig_goff
90#elif defined(__MACH__)126#elif defined(zig_darwin)
91#define zig_macho127#define zig_macho
92#elif defined(_AIX)128#elif defined(zig_aix)
93#define zig_xcoff129#define zig_xcoff
94#endif130#endif
95131
...@@ -3163,7 +3199,7 @@ typedef uint16_t zig_f16;...@@ -3163,7 +3199,7 @@ typedef uint16_t zig_f16;
3163#undef zig_init_special_f163199#undef zig_init_special_f16
3164#define zig_init_special_f16(sign, name, arg, repr) repr3200#define zig_init_special_f16(sign, name, arg, repr) repr
3165#endif3201#endif
3166#if defined(__APPLE__) && defined(zig_x86)3202#if defined(zig_darwin) && defined(zig_x86)
3167typedef uint16_t zig_compiler_rt_f16;3203typedef uint16_t zig_compiler_rt_f16;
3168#else3204#else
3169typedef zig_f16 zig_compiler_rt_f16;3205typedef zig_f16 zig_compiler_rt_f16;
...@@ -3302,7 +3338,7 @@ typedef __float128 zig_f128;...@@ -3302,7 +3338,7 @@ typedef __float128 zig_f128;
3302#define zig_has_f128 03338#define zig_has_f128 0
3303#undef zig_make_special_f1283339#undef zig_make_special_f128
3304#undef zig_init_special_f1283340#undef zig_init_special_f128
3305#if __APPLE__ || defined(zig_aarch64)3341#if defined(zig_darwin) || defined(zig_aarch64)
3306typedef __attribute__((__vector_size__(2 * sizeof(uint64_t)))) uint64_t zig_v2u64;3342typedef __attribute__((__vector_size__(2 * sizeof(uint64_t)))) uint64_t zig_v2u64;
3307zig_basic_operator(zig_v2u64, xor_v2u64, ^)3343zig_basic_operator(zig_v2u64, xor_v2u64, ^)
3308#define zig_repr_f128 v2u643344#define zig_repr_f128 v2u64