@zigc/lib 0.16.0-test.1 → 0.17.0-dev.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/LICENSE +19 -0
  2. package/c/math.zig +135 -35
  3. package/c/stropts.zig +17 -0
  4. package/c.zig +1 -0
  5. package/compiler/aro/aro/Attribute/names.zig +604 -589
  6. package/compiler/aro/aro/Attribute.zig +202 -116
  7. package/compiler/aro/aro/Builtins/common.zig +874 -863
  8. package/compiler/aro/aro/Builtins/eval.zig +15 -7
  9. package/compiler/aro/aro/Builtins.zig +0 -1
  10. package/compiler/aro/aro/CodeGen.zig +3 -1
  11. package/compiler/aro/aro/Compilation.zig +120 -97
  12. package/compiler/aro/aro/Diagnostics.zig +21 -17
  13. package/compiler/aro/aro/Driver/GCCDetector.zig +635 -0
  14. package/compiler/aro/aro/Driver.zig +124 -50
  15. package/compiler/aro/aro/LangOpts.zig +12 -2
  16. package/compiler/aro/aro/Parser/Diagnostic.zig +79 -19
  17. package/compiler/aro/aro/Parser.zig +336 -142
  18. package/compiler/aro/aro/Preprocessor/Diagnostic.zig +21 -0
  19. package/compiler/aro/aro/Preprocessor.zig +127 -56
  20. package/compiler/aro/aro/Target.zig +17 -12
  21. package/compiler/aro/aro/Tokenizer.zig +31 -14
  22. package/compiler/aro/aro/Toolchain.zig +4 -7
  23. package/compiler/aro/aro/Tree.zig +178 -148
  24. package/compiler/aro/aro/TypeStore.zig +82 -24
  25. package/compiler/aro/aro/Value.zig +13 -17
  26. package/compiler/aro/aro/features.zig +1 -0
  27. package/compiler/aro/aro/pragmas/once.zig +0 -1
  28. package/compiler/aro/aro/record_layout.zig +3 -3
  29. package/compiler/aro/assembly_backend/x86_64.zig +3 -4
  30. package/compiler/aro/backend/Assembly.zig +1 -2
  31. package/compiler/aro/backend/Interner.zig +2 -2
  32. package/compiler/aro/backend/Ir.zig +100 -92
  33. package/compiler/aro/include/ptrcheck.h +49 -0
  34. package/compiler/aro/main.zig +26 -10
  35. package/compiler/build_runner.zig +1 -0
  36. package/compiler/objdump.zig +93 -0
  37. package/compiler/reduce.zig +5 -1
  38. package/compiler/resinator/compile.zig +2 -2
  39. package/compiler/resinator/main.zig +7 -1
  40. package/compiler/resinator/preprocess.zig +1 -3
  41. package/compiler/std-docs.zig +8 -1
  42. package/compiler/test_runner.zig +193 -61
  43. package/compiler/translate-c/MacroTranslator.zig +80 -11
  44. package/compiler/translate-c/PatternList.zig +1 -9
  45. package/compiler/translate-c/Scope.zig +43 -6
  46. package/compiler/translate-c/Translator.zig +364 -126
  47. package/compiler/translate-c/ast.zig +19 -11
  48. package/compiler/translate-c/main.zig +75 -16
  49. package/compiler_rt/cos.zig +141 -52
  50. package/compiler_rt/limb64.zig +266 -0
  51. package/compiler_rt/long_double.zig +37 -0
  52. package/compiler_rt/mulo.zig +6 -1
  53. package/compiler_rt/rem_pio2l.zig +173 -0
  54. package/compiler_rt/sin.zig +140 -55
  55. package/compiler_rt/sincos.zig +279 -72
  56. package/compiler_rt/tan.zig +118 -47
  57. package/compiler_rt/trig.zig +256 -6
  58. package/compiler_rt.zig +2 -0
  59. package/fuzzer.zig +855 -307
  60. package/libc/musl/src/math/pow.c +343 -0
  61. package/package.json +1 -1
  62. package/std/Build/Fuzz.zig +6 -19
  63. package/std/Build/Module.zig +1 -1
  64. package/std/Build/Step/CheckObject.zig +3 -3
  65. package/std/Build/Step/Compile.zig +18 -0
  66. package/std/Build/Step/ConfigHeader.zig +49 -33
  67. package/std/Build/Step/InstallArtifact.zig +18 -0
  68. package/std/Build/Step/Run.zig +536 -87
  69. package/std/Build/Step/TranslateC.zig +0 -6
  70. package/std/Build/Step.zig +8 -15
  71. package/std/Build/WebServer.zig +29 -17
  72. package/std/Build/abi.zig +47 -11
  73. package/std/Build.zig +17 -14
  74. package/std/Io/Dispatch.zig +2 -0
  75. package/std/Io/File/Reader.zig +3 -1
  76. package/std/Io/File.zig +1 -0
  77. package/std/Io/Kqueue.zig +2 -2
  78. package/std/Io/Threaded.zig +181 -143
  79. package/std/Io/Uring.zig +2 -1
  80. package/std/Io.zig +970 -2
  81. package/std/Target.zig +3 -2
  82. package/std/Thread.zig +8 -3
  83. package/std/array_hash_map.zig +96 -555
  84. package/std/array_list.zig +22 -31
  85. package/std/bit_set.zig +22 -6
  86. package/std/builtin/assembly.zig +68 -0
  87. package/std/c.zig +17 -17
  88. package/std/compress/flate/Compress.zig +3 -3
  89. package/std/crypto/Certificate/Bundle.zig +15 -1
  90. package/std/crypto/codecs/asn1.zig +33 -18
  91. package/std/crypto/codecs/base64_hex_ct.zig +14 -4
  92. package/std/debug/Dwarf.zig +29 -9
  93. package/std/debug/Info.zig +4 -0
  94. package/std/debug/MachOFile.zig +46 -8
  95. package/std/debug/Pdb.zig +539 -36
  96. package/std/debug/SelfInfo/Elf.zig +19 -18
  97. package/std/debug/SelfInfo/MachO.zig +18 -7
  98. package/std/debug/SelfInfo/Windows.zig +138 -36
  99. package/std/debug.zig +179 -65
  100. package/std/enums.zig +25 -19
  101. package/std/heap/ArenaAllocator.zig +145 -154
  102. package/std/heap/debug_allocator.zig +7 -7
  103. package/std/http/Client.zig +10 -6
  104. package/std/http.zig +11 -9
  105. package/std/json/Stringify.zig +3 -3
  106. package/std/json/dynamic.zig +4 -4
  107. package/std/math/big/int.zig +16 -17
  108. package/std/mem/Allocator.zig +4 -5
  109. package/std/mem.zig +48 -0
  110. package/std/os/emscripten.zig +2 -18
  111. package/std/os/linux/arc.zig +144 -0
  112. package/std/os/linux.zig +21 -4
  113. package/std/os/windows.zig +2 -2
  114. package/std/pdb.zig +143 -4
  115. package/std/posix.zig +6 -12
  116. package/std/priority_dequeue.zig +13 -12
  117. package/std/priority_queue.zig +5 -4
  118. package/std/process/Child.zig +1 -1
  119. package/std/process/Environ.zig +1 -1
  120. package/std/start.zig +17 -4
  121. package/std/std.zig +19 -6
  122. package/std/testing/FailingAllocator.zig +4 -4
  123. package/std/testing/Smith.zig +37 -2
  124. package/std/zig/Ast/Render.zig +186 -458
  125. package/std/zig/Ast.zig +0 -4
  126. package/std/zig/AstGen.zig +44 -7
  127. package/std/zig/AstSmith.zig +2602 -0
  128. package/std/zig/Client.zig +8 -3
  129. package/std/zig/Parse.zig +83 -74
  130. package/std/zig/Server.zig +26 -0
  131. package/std/zig/Zir.zig +17 -0
  132. package/std/zig/c_translation/helpers.zig +14 -9
  133. package/std/zig/llvm/Builder.zig +107 -48
  134. package/std/zig/system.zig +20 -4
  135. package/std/zig/tokenizer.zig +2 -1
  136. package/std/zig.zig +6 -0
  137. package/compiler/aro/aro/Driver/Filesystem.zig +0 -241
  138. package/libc/mingw/complex/cabs.c +0 -48
  139. package/libc/mingw/complex/cabsf.c +0 -48
  140. package/libc/mingw/complex/cacos.c +0 -50
  141. package/libc/mingw/complex/cacosf.c +0 -50
  142. package/libc/mingw/complex/carg.c +0 -48
  143. package/libc/mingw/complex/cargf.c +0 -48
  144. package/libc/mingw/complex/casin.c +0 -50
  145. package/libc/mingw/complex/casinf.c +0 -50
  146. package/libc/mingw/complex/catan.c +0 -50
  147. package/libc/mingw/complex/catanf.c +0 -50
  148. package/libc/mingw/complex/ccos.c +0 -50
  149. package/libc/mingw/complex/ccosf.c +0 -50
  150. package/libc/mingw/complex/cexp.c +0 -48
  151. package/libc/mingw/complex/cexpf.c +0 -48
  152. package/libc/mingw/complex/cimag.c +0 -48
  153. package/libc/mingw/complex/cimagf.c +0 -48
  154. package/libc/mingw/complex/clog.c +0 -48
  155. package/libc/mingw/complex/clog10.c +0 -49
  156. package/libc/mingw/complex/clog10f.c +0 -49
  157. package/libc/mingw/complex/clogf.c +0 -48
  158. package/libc/mingw/complex/conj.c +0 -48
  159. package/libc/mingw/complex/conjf.c +0 -48
  160. package/libc/mingw/complex/cpow.c +0 -48
  161. package/libc/mingw/complex/cpowf.c +0 -48
  162. package/libc/mingw/complex/cproj.c +0 -48
  163. package/libc/mingw/complex/cprojf.c +0 -48
  164. package/libc/mingw/complex/creal.c +0 -48
  165. package/libc/mingw/complex/crealf.c +0 -48
  166. package/libc/mingw/complex/csin.c +0 -50
  167. package/libc/mingw/complex/csinf.c +0 -50
  168. package/libc/mingw/complex/csqrt.c +0 -48
  169. package/libc/mingw/complex/csqrtf.c +0 -48
  170. package/libc/mingw/complex/ctan.c +0 -50
  171. package/libc/mingw/complex/ctanf.c +0 -50
  172. package/libc/mingw/math/arm/s_rint.c +0 -86
  173. package/libc/mingw/math/arm/s_rintf.c +0 -51
  174. package/libc/mingw/math/arm/sincos.S +0 -30
  175. package/libc/mingw/math/arm-common/sincosl.c +0 -13
  176. package/libc/mingw/math/arm64/rint.c +0 -12
  177. package/libc/mingw/math/arm64/rintf.c +0 -12
  178. package/libc/mingw/math/arm64/sincos.S +0 -32
  179. package/libc/mingw/math/bsd_private_base.h +0 -148
  180. package/libc/mingw/math/frexpf.c +0 -13
  181. package/libc/mingw/math/frexpl.c +0 -71
  182. package/libc/mingw/math/x86/acosf.c +0 -29
  183. package/libc/mingw/math/x86/atanf.c +0 -23
  184. package/libc/mingw/math/x86/atanl.c +0 -18
  185. package/libc/mingw/math/x86/cos.def.h +0 -65
  186. package/libc/mingw/math/x86/cosl.c +0 -46
  187. package/libc/mingw/math/x86/cosl_internal.S +0 -55
  188. package/libc/mingw/math/x86/ldexp.c +0 -23
  189. package/libc/mingw/math/x86/scalbn.S +0 -41
  190. package/libc/mingw/math/x86/scalbnf.S +0 -40
  191. package/libc/mingw/math/x86/sin.def.h +0 -65
  192. package/libc/mingw/math/x86/sinl.c +0 -46
  193. package/libc/mingw/math/x86/sinl_internal.S +0 -58
  194. package/libc/mingw/math/x86/tanl.S +0 -62
  195. package/libc/mingw/misc/btowc.c +0 -28
  196. package/libc/mingw/misc/wcstof.c +0 -66
  197. package/libc/mingw/misc/wcstoimax.c +0 -132
  198. package/libc/mingw/misc/wcstoumax.c +0 -126
  199. package/libc/mingw/misc/wctob.c +0 -29
  200. package/libc/mingw/misc/winbs_uint64.c +0 -6
  201. package/libc/mingw/misc/winbs_ulong.c +0 -6
  202. package/libc/mingw/misc/winbs_ushort.c +0 -6
  203. package/libc/mingw/stdio/_Exit.c +0 -10
  204. package/libc/mingw/stdio/_findfirst64i32.c +0 -21
  205. package/libc/mingw/stdio/_findnext64i32.c +0 -21
  206. package/libc/mingw/stdio/_fstat64i32.c +0 -37
  207. package/libc/mingw/stdio/_stat64i32.c +0 -37
  208. package/libc/mingw/stdio/_wfindfirst64i32.c +0 -21
  209. package/libc/mingw/stdio/_wfindnext64i32.c +0 -21
  210. package/libc/mingw/stdio/_wstat64i32.c +0 -37
  211. package/libc/musl/src/legacy/isastream.c +0 -7
  212. package/libc/musl/src/legacy/valloc.c +0 -8
  213. package/libc/musl/src/math/__cosl.c +0 -96
  214. package/libc/musl/src/math/__sinl.c +0 -78
  215. package/libc/musl/src/math/__tanl.c +0 -143
  216. package/libc/musl/src/math/aarch64/lrint.c +0 -10
  217. package/libc/musl/src/math/aarch64/lrintf.c +0 -10
  218. package/libc/musl/src/math/aarch64/rintf.c +0 -7
  219. package/libc/musl/src/math/cosl.c +0 -39
  220. package/libc/musl/src/math/fdim.c +0 -10
  221. package/libc/musl/src/math/finite.c +0 -7
  222. package/libc/musl/src/math/finitef.c +0 -7
  223. package/libc/musl/src/math/frexp.c +0 -23
  224. package/libc/musl/src/math/frexpf.c +0 -23
  225. package/libc/musl/src/math/frexpl.c +0 -29
  226. package/libc/musl/src/math/i386/lrint.c +0 -8
  227. package/libc/musl/src/math/i386/lrintf.c +0 -8
  228. package/libc/musl/src/math/i386/rintf.c +0 -7
  229. package/libc/musl/src/math/lrint.c +0 -72
  230. package/libc/musl/src/math/lrintf.c +0 -8
  231. package/libc/musl/src/math/powerpc64/lrint.c +0 -16
  232. package/libc/musl/src/math/powerpc64/lrintf.c +0 -16
  233. package/libc/musl/src/math/rintf.c +0 -30
  234. package/libc/musl/src/math/s390x/rintf.c +0 -15
  235. package/libc/musl/src/math/sincosl.c +0 -60
  236. package/libc/musl/src/math/sinl.c +0 -41
  237. package/libc/musl/src/math/tanl.c +0 -29
  238. package/libc/musl/src/math/x32/lrint.s +0 -5
  239. package/libc/musl/src/math/x32/lrintf.s +0 -5
  240. package/libc/musl/src/math/x86_64/lrint.c +0 -8
  241. package/libc/musl/src/math/x86_64/lrintf.c +0 -8
  242. package/libc/wasi/libc-bottom-half/sources/reallocarray.c +0 -14
@@ -1,16 +0,0 @@
1
- #include <math.h>
2
-
3
- #ifdef _ARCH_PWR5X
4
-
5
- long lrint(double x)
6
- {
7
- long n;
8
- __asm__ ("fctid %0, %1" : "=d"(n) : "d"(x));
9
- return n;
10
- }
11
-
12
- #else
13
-
14
- #include "../lrint.c"
15
-
16
- #endif
@@ -1,16 +0,0 @@
1
- #include <math.h>
2
-
3
- #ifdef _ARCH_PWR5X
4
-
5
- long lrintf(float x)
6
- {
7
- long n;
8
- __asm__ ("fctid %0, %1" : "=d"(n) : "f"(x));
9
- return n;
10
- }
11
-
12
- #else
13
-
14
- #include "../lrintf.c"
15
-
16
- #endif
@@ -1,30 +0,0 @@
1
- #include <float.h>
2
- #include <math.h>
3
- #include <stdint.h>
4
-
5
- #if FLT_EVAL_METHOD==0
6
- #define EPS FLT_EPSILON
7
- #elif FLT_EVAL_METHOD==1
8
- #define EPS DBL_EPSILON
9
- #elif FLT_EVAL_METHOD==2
10
- #define EPS LDBL_EPSILON
11
- #endif
12
- static const float_t toint = 1/EPS;
13
-
14
- float rintf(float x)
15
- {
16
- union {float f; uint32_t i;} u = {x};
17
- int e = u.i>>23 & 0xff;
18
- int s = u.i>>31;
19
- float_t y;
20
-
21
- if (e >= 0x7f+23)
22
- return x;
23
- if (s)
24
- y = x - toint + toint;
25
- else
26
- y = x + toint - toint;
27
- if (y == 0)
28
- return s ? -0.0f : 0.0f;
29
- return y;
30
- }
@@ -1,15 +0,0 @@
1
- #include <math.h>
2
-
3
- #if defined(__HTM__) || __ARCH__ >= 9
4
-
5
- float rintf(float x)
6
- {
7
- __asm__ ("fiebr %0, 0, %1" : "=f"(x) : "f"(x));
8
- return x;
9
- }
10
-
11
- #else
12
-
13
- #include "../rintf.c"
14
-
15
- #endif
@@ -1,60 +0,0 @@
1
- #define _GNU_SOURCE
2
- #include "libm.h"
3
-
4
- #if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
5
- void sincosl(long double x, long double *sin, long double *cos)
6
- {
7
- double sind, cosd;
8
- sincos(x, &sind, &cosd);
9
- *sin = sind;
10
- *cos = cosd;
11
- }
12
- #elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
13
- void sincosl(long double x, long double *sin, long double *cos)
14
- {
15
- union ldshape u = {x};
16
- unsigned n;
17
- long double y[2], s, c;
18
-
19
- u.i.se &= 0x7fff;
20
- if (u.i.se == 0x7fff) {
21
- *sin = *cos = x - x;
22
- return;
23
- }
24
- if (u.f < M_PI_4) {
25
- if (u.i.se < 0x3fff - LDBL_MANT_DIG) {
26
- /* raise underflow if subnormal */
27
- if (u.i.se == 0) FORCE_EVAL(x*0x1p-120f);
28
- *sin = x;
29
- /* raise inexact if x!=0 */
30
- *cos = 1.0 + x;
31
- return;
32
- }
33
- *sin = __sinl(x, 0, 0);
34
- *cos = __cosl(x, 0);
35
- return;
36
- }
37
- n = __rem_pio2l(x, y);
38
- s = __sinl(y[0], y[1], 1);
39
- c = __cosl(y[0], y[1]);
40
- switch (n & 3) {
41
- case 0:
42
- *sin = s;
43
- *cos = c;
44
- break;
45
- case 1:
46
- *sin = c;
47
- *cos = -s;
48
- break;
49
- case 2:
50
- *sin = -s;
51
- *cos = -c;
52
- break;
53
- case 3:
54
- default:
55
- *sin = -c;
56
- *cos = s;
57
- break;
58
- }
59
- }
60
- #endif
@@ -1,41 +0,0 @@
1
- #include "libm.h"
2
-
3
- #if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
4
- long double sinl(long double x)
5
- {
6
- return sin(x);
7
- }
8
- #elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
9
- long double sinl(long double x)
10
- {
11
- union ldshape u = {x};
12
- unsigned n;
13
- long double y[2], hi, lo;
14
-
15
- u.i.se &= 0x7fff;
16
- if (u.i.se == 0x7fff)
17
- return x - x;
18
- if (u.f < M_PI_4) {
19
- if (u.i.se < 0x3fff - LDBL_MANT_DIG/2) {
20
- /* raise inexact if x!=0 and underflow if subnormal */
21
- FORCE_EVAL(u.i.se == 0 ? x*0x1p-120f : x+0x1p120f);
22
- return x;
23
- }
24
- return __sinl(x, 0.0, 0);
25
- }
26
- n = __rem_pio2l(x, y);
27
- hi = y[0];
28
- lo = y[1];
29
- switch (n & 3) {
30
- case 0:
31
- return __sinl(hi, lo, 1);
32
- case 1:
33
- return __cosl(hi, lo);
34
- case 2:
35
- return -__sinl(hi, lo, 1);
36
- case 3:
37
- default:
38
- return -__cosl(hi, lo);
39
- }
40
- }
41
- #endif
@@ -1,29 +0,0 @@
1
- #include "libm.h"
2
-
3
- #if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
4
- long double tanl(long double x)
5
- {
6
- return tan(x);
7
- }
8
- #elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
9
- long double tanl(long double x)
10
- {
11
- union ldshape u = {x};
12
- long double y[2];
13
- unsigned n;
14
-
15
- u.i.se &= 0x7fff;
16
- if (u.i.se == 0x7fff)
17
- return x - x;
18
- if (u.f < M_PI_4) {
19
- if (u.i.se < 0x3fff - LDBL_MANT_DIG/2) {
20
- /* raise inexact if x!=0 and underflow if subnormal */
21
- FORCE_EVAL(u.i.se == 0 ? x*0x1p-120f : x+0x1p120f);
22
- return x;
23
- }
24
- return __tanl(x, 0, 0);
25
- }
26
- n = __rem_pio2l(x, y);
27
- return __tanl(y[0], y[1], n&1);
28
- }
29
- #endif
@@ -1,5 +0,0 @@
1
- .global lrint
2
- .type lrint,@function
3
- lrint:
4
- cvtsd2si %xmm0,%rax
5
- ret
@@ -1,5 +0,0 @@
1
- .global lrintf
2
- .type lrintf,@function
3
- lrintf:
4
- cvtss2si %xmm0,%rax
5
- ret
@@ -1,8 +0,0 @@
1
- #include <math.h>
2
-
3
- long lrint(double x)
4
- {
5
- long r;
6
- __asm__ ("cvtsd2si %1, %0" : "=r"(r) : "x"(x));
7
- return r;
8
- }
@@ -1,8 +0,0 @@
1
- #include <math.h>
2
-
3
- long lrintf(float x)
4
- {
5
- long r;
6
- __asm__ ("cvtss2si %1, %0" : "=r"(r) : "x"(x));
7
- return r;
8
- }
@@ -1,14 +0,0 @@
1
- #include <stdlib.h>
2
- #include <errno.h>
3
-
4
- void *__reallocarray(void *ptr, size_t nmemb, size_t size) {
5
- size_t bytes;
6
- if (__builtin_umull_overflow(nmemb, size, &bytes)) {
7
- errno = ENOMEM;
8
- return NULL;
9
- }
10
- return realloc(ptr, bytes);
11
- }
12
-
13
- void *reallocarray(void *ptr, size_t nmemb, size_t size)
14
- __attribute__((__weak__, __alias__("__reallocarray")));