| ... | ... | @@ -695,6 +695,22 @@ are additionally supported by Zig, but not part of C standard. Alphabetically so |
| 695 | 695 | | ✓ | truncq | f128 | ∅ | f128 | .. PPC | |
| 696 | 696 | | ✓ | truncl |long double| ∅ |long double| .. | |
| 697 | 697 | |
| 698 | Arbitrary Precision Big Integer (BigInt) library routines |
| 699 | |
| 700 | TODO brief description |
| 701 | |
| 702 | | Done | Name | result| a | b | size| ret | Comment | |
| 703 | | ---- | ------- | ----- | ----- | ----- | --- | ----- |---------------------- | |
| 704 | | | | | | | | |**BigInt Bit Operation**| |
| 705 | | | | | | | | |**BigInt Comparison** | |
| 706 | | | | | | | | |**BigInt Arithmetic** | |
| 707 | |✓|__udivei4 |[*c]u32|[*c]u32|[*c]u32|usize|void | `a / b` | |
| 708 | |✓|__umodei4 |[*c]u32|[*c]u32|[*c]u32|usize|void | `a % b` | |
| 709 | |✗|__divei4 |[*c]u32|[*c]u32|[*c]u32|usize|void | `a / b` | |
| 710 | |✗|__modei4 |[*c]u32|[*c]u32|[*c]u32|usize|void | `a % b` | |
| 711 | | | | | | | | |**BigInt Arithmetic with Trapping Overflow**| |
| 712 | | | | | | | | |**BigInt Arithmetic which Return on Overflow**[^noptr_faster]| |
| 713 | |
| 698 | 714 | Further content (conditionally) exported with C abi: |
| 699 | 715 | - aarch64 outline atomics |
| 700 | 716 | - arm routines (memory routines + memclr [setting to 0], divmod routines and stubs for unwind_cpp) |
| ... | ... | @@ -706,6 +722,3 @@ Further content (conditionally) exported with C abi: |
| 706 | 722 | - objective-c __isPlatformVersionAtLeast check |
| 707 | 723 | - stack probe routines |
| 708 | 724 | - tls emulation |
| 709 | | |
| 710 | | Future work: |
| 711 | | - Arbitrary length integer library routines |