@zigc/lib 0.17.0-dev.27 → 0.17.0-dev.296
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.
- package/c/fcntl.zig +6 -1
- package/c/inttypes.zig +0 -10
- package/c/math.zig +52 -112
- package/c/pthread.zig +57 -0
- package/c/search.zig +1 -27
- package/c/stdlib/drand48.zig +0 -57
- package/c/stdlib.zig +31 -121
- package/c/string.zig +20 -7
- package/c/strings.zig +0 -38
- package/c/unistd.zig +27 -26
- package/c/wchar.zig +10 -0
- package/c.zig +2 -2
- package/compiler/aro/aro/CodeGen.zig +7 -8
- package/compiler/aro/aro/Compilation.zig +17 -17
- package/compiler/aro/aro/Driver.zig +14 -13
- package/compiler/aro/aro/Parser.zig +20 -15
- package/compiler/aro/aro/Pragma.zig +3 -2
- package/compiler/aro/aro/Preprocessor.zig +9 -6
- package/compiler/aro/aro/pragmas/message.zig +3 -2
- package/compiler/aro/aro/text_literal.zig +3 -2
- package/compiler/aro/assembly_backend/x86_64.zig +4 -4
- package/compiler/build_runner.zig +2 -4
- package/compiler/reduce/Walk.zig +8 -13
- package/compiler/resinator/compile.zig +1 -1
- package/compiler/resinator/cvtres.zig +4 -4
- package/compiler/resinator/errors.zig +7 -7
- package/compiler/resinator/ico.zig +4 -4
- package/compiler/resinator/parse.zig +2 -2
- package/compiler/resinator/res.zig +1 -1
- package/compiler/std-docs.zig +1 -1
- package/compiler/test_runner.zig +1 -1
- package/compiler/translate-c/MacroTranslator.zig +1 -1
- package/compiler/translate-c/Translator.zig +6 -2
- package/compiler/translate-c/ast.zig +16 -23
- package/compiler/translate-c/main.zig +1 -1
- package/compiler_rt/addf3.zig +1 -1
- package/compiler_rt/arm.zig +3 -3
- package/compiler_rt/atomics.zig +1 -1
- package/compiler_rt/comparef.zig +3 -3
- package/compiler_rt/cos.zig +1 -3
- package/compiler_rt/count0bits.zig +1 -1
- package/compiler_rt/divdf3.zig +2 -2
- package/compiler_rt/divsf3.zig +1 -1
- package/compiler_rt/divtf3.zig +1 -1
- package/compiler_rt/divxf3.zig +1 -1
- package/compiler_rt/exp.zig +0 -2
- package/compiler_rt/exp2.zig +0 -2
- package/compiler_rt/extendf.zig +5 -5
- package/compiler_rt/fabs.zig +1 -3
- package/compiler_rt/float_from_int.zig +3 -4
- package/compiler_rt/fma.zig +0 -2
- package/compiler_rt/fmax.zig +1 -3
- package/compiler_rt/fmin.zig +1 -3
- package/compiler_rt/fmod.zig +2 -4
- package/compiler_rt/limb64.zig +3 -2
- package/compiler_rt/log.zig +0 -2
- package/compiler_rt/log10.zig +0 -2
- package/compiler_rt/log2.zig +0 -2
- package/compiler_rt/mulf3.zig +2 -2
- package/compiler_rt/rem_pio2l.zig +1 -1
- package/compiler_rt/round.zig +0 -2
- package/compiler_rt/sin.zig +1 -3
- package/compiler_rt/sincos.zig +1 -3
- package/compiler_rt/sqrt.zig +0 -2
- package/compiler_rt/ssp.zig +2 -2
- package/compiler_rt/tan.zig +1 -3
- package/compiler_rt/trunc.zig +0 -2
- package/compiler_rt/truncf.zig +3 -3
- package/compiler_rt/trunctfhf2.zig +3 -0
- package/compiler_rt.zig +5 -26
- package/docs/wasm/Walk.zig +1 -3
- package/docs/wasm/html_render.zig +1 -2
- package/docs/wasm/markdown/Parser.zig +16 -20
- package/fuzzer.zig +2 -0
- package/include/__clang_spirv_builtins.h +12 -12
- package/include/__float_float.h +176 -0
- package/include/__float_header_macro.h +12 -0
- package/include/__float_infinity_nan.h +20 -0
- package/include/amo.h +131 -0
- package/include/amxavx512intrin.h +215 -1
- package/include/amxintrin.h +0 -2
- package/include/arm_acle.h +37 -27
- package/include/arm_neon.h +218 -82
- package/include/arm_sme.h +8 -8
- package/include/arm_sve.h +4162 -3782
- package/include/avx10_2_512bf16intrin.h +19 -12
- package/include/avx10_2_512convertintrin.h +1 -1
- package/include/avx10_2_512niintrin.h +31 -31
- package/include/avx10_2_512satcvtdsintrin.h +1 -1
- package/include/avx10_2bf16intrin.h +54 -45
- package/include/avx10_2convertintrin.h +2 -2
- package/include/avx10_2copyintrin.h +1 -1
- package/include/avx10_2niintrin.h +14 -14
- package/include/avx10_2satcvtdsintrin.h +2 -2
- package/include/avx2intrin.h +275 -377
- package/include/avx512bf16intrin.h +25 -16
- package/include/avx512bitalgintrin.h +19 -30
- package/include/avx512bwintrin.h +386 -505
- package/include/avx512cdintrin.h +42 -55
- package/include/avx512dqintrin.h +132 -161
- package/include/avx512fintrin.h +1015 -1424
- package/include/avx512fp16intrin.h +112 -110
- package/include/avx512ifmaintrin.h +32 -34
- package/include/avx512ifmavlintrin.h +73 -46
- package/include/avx512vbmi2intrin.h +43 -32
- package/include/avx512vbmiintrin.h +19 -27
- package/include/avx512vbmivlintrin.h +35 -49
- package/include/avx512vlbf16intrin.h +32 -22
- package/include/avx512vlbitalgintrin.h +37 -53
- package/include/avx512vlbwintrin.h +470 -573
- package/include/avx512vlcdintrin.h +74 -102
- package/include/avx512vldqintrin.h +110 -127
- package/include/avx512vlfp16intrin.h +130 -111
- package/include/avx512vlintrin.h +945 -1299
- package/include/avx512vlvbmi2intrin.h +78 -63
- package/include/avx512vlvnniintrin.h +21 -18
- package/include/avx512vlvp2intersectintrin.h +2 -2
- package/include/avx512vnniintrin.h +10 -10
- package/include/avx512vp2intersectintrin.h +1 -2
- package/include/avx512vpopcntdqintrin.h +8 -10
- package/include/avx512vpopcntdqvlintrin.h +17 -15
- package/include/avxifmaintrin.h +16 -0
- package/include/avxintrin.h +165 -241
- package/include/avxvnniint16intrin.h +118 -99
- package/include/avxvnniint8intrin.h +56 -32
- package/include/avxvnniintrin.h +16 -8
- package/include/cpuid.h +101 -4
- package/include/emmintrin.h +168 -168
- package/include/f16cintrin.h +23 -9
- package/include/float.h +16 -155
- package/include/fma4intrin.h +98 -96
- package/include/fmaintrin.h +96 -66
- package/include/gfniintrin.h +21 -16
- package/include/hexagon_types.h +23 -20
- package/include/hvx_hexagon_protos.h +649 -860
- package/include/immintrin.h +0 -12
- package/include/intrin.h +4 -0
- package/include/lasxintrin.h +113 -0
- package/include/llvm_libc_wrappers/assert.h +3 -5
- package/include/llvm_libc_wrappers/ctype.h +3 -115
- package/include/llvm_libc_wrappers/inttypes.h +3 -5
- package/include/llvm_libc_wrappers/stdio.h +10 -38
- package/include/llvm_libc_wrappers/stdlib.h +3 -24
- package/include/llvm_libc_wrappers/string.h +2 -70
- package/include/llvm_libc_wrappers/time.h +4 -10
- package/include/mmintrin.h +188 -257
- package/include/module.modulemap +23 -4
- package/include/movrs_avx10_2_512intrin.h +2 -2
- package/include/movrs_avx10_2intrin.h +4 -4
- package/include/pmmintrin.h +12 -24
- package/include/ptrauth.h +16 -2
- package/include/riscv_mips.h +34 -0
- package/include/riscv_nds.h +89 -0
- package/include/sifive_vector.h +58 -2
- package/include/sm4evexintrin.h +2 -2
- package/include/smmintrin.h +77 -59
- package/include/spirvintrin.h +194 -0
- package/include/stddefer.h +19 -0
- package/include/tmmintrin.h +116 -147
- package/include/vaesintrin.h +1 -2
- package/include/xmmintrin.h +44 -70
- package/include/xopintrin.h +20 -10
- package/libc/include/aarch64-linux-any/asm/hwcap.h +1 -0
- package/libc/include/aarch64-linux-any/asm/unistd_64.h +1 -0
- package/libc/include/any-linux-any/asm-generic/errno.h +2 -0
- package/libc/include/any-linux-any/asm-generic/unistd.h +4 -1
- package/libc/include/any-linux-any/drm/amdgpu_drm.h +20 -6
- package/libc/include/any-linux-any/drm/amdxdna_accel.h +8 -0
- package/libc/include/any-linux-any/drm/drm_fourcc.h +6 -6
- package/libc/include/any-linux-any/drm/panfrost_drm.h +75 -1
- package/libc/include/any-linux-any/drm/panthor_drm.h +154 -3
- package/libc/include/any-linux-any/drm/rocket_accel.h +74 -24
- package/libc/include/any-linux-any/drm/xe_drm.h +89 -6
- package/libc/include/any-linux-any/linux/android/binder.h +1 -1
- package/libc/include/any-linux-any/linux/bpf.h +28 -0
- package/libc/include/any-linux-any/linux/btrfs.h +1 -0
- package/libc/include/any-linux-any/linux/btrfs_tree.h +32 -2
- package/libc/include/any-linux-any/linux/dma-buf.h +1 -0
- package/libc/include/any-linux-any/linux/dpll.h +1 -0
- package/libc/include/any-linux-any/linux/elf.h +2 -0
- package/libc/include/any-linux-any/linux/ethtool.h +21 -5
- package/libc/include/any-linux-any/linux/fs.h +1 -0
- package/libc/include/any-linux-any/linux/hyperv.h +1 -1
- package/libc/include/any-linux-any/linux/idxd.h +134 -134
- package/libc/include/any-linux-any/linux/if_alg.h +1 -1
- package/libc/include/any-linux-any/linux/if_link.h +1 -0
- package/libc/include/any-linux-any/linux/input-event-codes.h +4 -0
- package/libc/include/any-linux-any/linux/io_uring/bpf_filter.h +68 -0
- package/libc/include/any-linux-any/linux/io_uring/query.h +5 -1
- package/libc/include/any-linux-any/linux/io_uring.h +33 -2
- package/libc/include/any-linux-any/linux/iommufd.h +39 -0
- package/libc/include/any-linux-any/linux/kfd_ioctl.h +13 -3
- package/libc/include/any-linux-any/linux/kfd_sysfs.h +2 -1
- package/libc/include/any-linux-any/linux/kvm.h +30 -6
- package/libc/include/any-linux-any/linux/landlock.h +22 -8
- package/libc/include/any-linux-any/linux/magic.h +1 -0
- package/libc/include/any-linux-any/linux/mempolicy.h +3 -0
- package/libc/include/any-linux-any/linux/mount.h +11 -2
- package/libc/include/any-linux-any/linux/mptcp_pm.h +1 -1
- package/libc/include/any-linux-any/linux/mshv.h +2 -0
- package/libc/include/any-linux-any/linux/netfilter_bridge.h +5 -4
- package/libc/include/any-linux-any/linux/netfilter_ipv4.h +4 -5
- package/libc/include/any-linux-any/linux/netfilter_ipv6.h +3 -4
- package/libc/include/any-linux-any/linux/nfs.h +1 -1
- package/libc/include/any-linux-any/linux/nfsd_netlink.h +1 -0
- package/libc/include/any-linux-any/linux/nilfs2_api.h +2 -2
- package/libc/include/any-linux-any/linux/nilfs2_ondisk.h +97 -66
- package/libc/include/any-linux-any/linux/nl80211.h +104 -3
- package/libc/include/any-linux-any/linux/pci.h +7 -0
- package/libc/include/any-linux-any/linux/pci_regs.h +65 -6
- package/libc/include/any-linux-any/linux/pcitest.h +1 -0
- package/libc/include/any-linux-any/linux/perf_event.h +24 -3
- package/libc/include/any-linux-any/linux/pkt_sched.h +1 -0
- package/libc/include/any-linux-any/linux/prctl.h +30 -0
- package/libc/include/any-linux-any/linux/rseq.h +62 -5
- package/libc/include/any-linux-any/linux/shm.h +0 -1
- package/libc/include/any-linux-any/linux/stddef.h +4 -0
- package/libc/include/any-linux-any/linux/sysctl.h +1 -2
- package/libc/include/any-linux-any/linux/taskstats.h +12 -1
- package/libc/include/any-linux-any/linux/tcp.h +23 -3
- package/libc/include/any-linux-any/linux/typelimits.h +8 -0
- package/libc/include/any-linux-any/linux/ublk_cmd.h +120 -1
- package/libc/include/any-linux-any/linux/v4l2-controls.h +63 -0
- package/libc/include/any-linux-any/linux/vbox_vmmdev_types.h +2 -2
- package/libc/include/any-linux-any/linux/vduse.h +80 -5
- package/libc/include/any-linux-any/linux/version.h +3 -3
- package/libc/include/any-linux-any/linux/vfio.h +4 -0
- package/libc/include/any-linux-any/linux/videodev2.h +3 -0
- package/libc/include/any-linux-any/linux/virtio_ring.h +1 -2
- package/libc/include/any-linux-any/linux/vmclock-abi.h +20 -0
- package/libc/include/any-linux-any/rdma/bnxt_re-abi.h +16 -0
- package/libc/include/any-linux-any/rdma/ib_user_ioctl_cmds.h +16 -0
- package/libc/include/any-linux-any/rdma/mana-abi.h +3 -0
- package/libc/include/any-linux-any/scsi/scsi_bsg_ufs.h +8 -9
- package/libc/include/any-linux-any/sound/sof/tokens.h +6 -0
- package/libc/include/arc-linux-any/asm/swab.h +0 -63
- package/libc/include/arc-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/arm-linux-any/asm/ptrace.h +0 -9
- package/libc/include/arm-linux-any/asm/unistd-eabi.h +1 -0
- package/libc/include/arm-linux-any/asm/unistd-oabi.h +1 -0
- package/libc/include/csky-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/hexagon-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/loongarch-linux-any/asm/hwcap.h +1 -0
- package/libc/include/loongarch-linux-any/asm/kvm.h +1 -0
- package/libc/include/loongarch-linux-any/asm/kvm_para.h +1 -0
- package/libc/include/loongarch-linux-any/asm/unistd_32.h +2 -0
- package/libc/include/loongarch-linux-any/asm/unistd_64.h +2 -0
- package/libc/include/m68k-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/mips-linux-any/asm/errno.h +2 -0
- package/libc/include/mips-linux-any/asm/unistd_n32.h +1 -0
- package/libc/include/mips-linux-any/asm/unistd_n64.h +1 -0
- package/libc/include/mips-linux-any/asm/unistd_o32.h +1 -0
- package/libc/include/powerpc-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/powerpc-linux-any/asm/unistd_64.h +1 -0
- package/libc/include/riscv-linux-any/asm/hwprobe.h +4 -0
- package/libc/include/riscv-linux-any/asm/kvm.h +3 -0
- package/libc/include/riscv-linux-any/asm/ptrace.h +37 -0
- package/libc/include/riscv-linux-any/asm/sigcontext.h +1 -0
- package/libc/include/riscv-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/riscv-linux-any/asm/unistd_64.h +1 -0
- package/libc/include/s390x-linux-any/asm/unistd_64.h +1 -0
- package/libc/include/sparc-linux-any/asm/errno.h +2 -0
- package/libc/include/sparc-linux-any/asm/ioctls.h +4 -4
- package/libc/include/sparc-linux-any/asm/unistd_32.h +2 -0
- package/libc/include/sparc-linux-any/asm/unistd_64.h +2 -0
- package/libc/include/x86-linux-any/asm/auxvec.h +0 -4
- package/libc/include/x86-linux-any/asm/kvm.h +13 -8
- package/libc/include/x86-linux-any/asm/svm.h +16 -16
- package/libc/include/x86-linux-any/asm/unistd_32.h +1 -0
- package/libc/include/x86-linux-any/asm/unistd_64.h +1 -0
- package/libc/include/x86-linux-any/asm/unistd_x32.h +1 -0
- package/libc/include/xtensa-linux-any/asm/unistd_32.h +1 -0
- package/libc/musl/arch/mipsn32/syscall_arch.h +35 -32
- package/libcxx/include/__algorithm/all_of.h +11 -5
- package/libcxx/include/__algorithm/comp.h +4 -0
- package/libcxx/include/__algorithm/copy.h +28 -147
- package/libcxx/include/__algorithm/copy_backward.h +9 -24
- package/libcxx/include/__algorithm/copy_n.h +50 -16
- package/libcxx/include/__algorithm/count.h +2 -2
- package/libcxx/include/__algorithm/equal.h +43 -55
- package/libcxx/include/__algorithm/fill.h +26 -8
- package/libcxx/include/__algorithm/fill_n.h +32 -46
- package/libcxx/include/__algorithm/find.h +96 -39
- package/libcxx/include/__algorithm/find_end.h +105 -0
- package/libcxx/include/__algorithm/for_each.h +18 -24
- package/libcxx/include/__algorithm/for_each_n.h +20 -47
- package/libcxx/include/__algorithm/for_each_n_segment.h +1 -1
- package/libcxx/include/__algorithm/for_each_segment.h +26 -0
- package/libcxx/include/__algorithm/generate.h +4 -2
- package/libcxx/include/__algorithm/generate_n.h +19 -6
- package/libcxx/include/__algorithm/is_permutation.h +4 -4
- package/libcxx/include/__algorithm/iterator_operations.h +3 -0
- package/libcxx/include/__algorithm/lexicographical_compare.h +2 -2
- package/libcxx/include/__algorithm/lexicographical_compare_three_way.h +6 -6
- package/libcxx/include/__algorithm/make_heap.h +16 -4
- package/libcxx/include/__algorithm/mismatch.h +2 -2
- package/libcxx/include/__algorithm/move.h +8 -19
- package/libcxx/include/__algorithm/move_backward.h +9 -24
- package/libcxx/include/__algorithm/none_of.h +4 -4
- package/libcxx/include/__algorithm/partial_sort.h +1 -1
- package/libcxx/include/__algorithm/partial_sort_copy.h +1 -1
- package/libcxx/include/__algorithm/pstl.h +9 -9
- package/libcxx/include/__algorithm/radix_sort.h +27 -25
- package/libcxx/include/__algorithm/ranges_copy_n.h +3 -26
- package/libcxx/include/__algorithm/ranges_equal.h +17 -26
- package/libcxx/include/__algorithm/ranges_fill.h +7 -6
- package/libcxx/include/__algorithm/ranges_for_each.h +9 -1
- package/libcxx/include/__algorithm/ranges_generate_n.h +2 -6
- package/libcxx/include/__algorithm/ranges_search_n.h +2 -2
- package/libcxx/include/__algorithm/rotate.h +27 -44
- package/libcxx/include/__algorithm/search_n.h +49 -37
- package/libcxx/include/__algorithm/sift_down.h +19 -18
- package/libcxx/include/__algorithm/simd_utils.h +33 -4
- package/libcxx/include/__algorithm/specialized_algorithms.h +54 -0
- package/libcxx/include/__algorithm/stable_sort.h +1 -1
- package/libcxx/include/__assertion_handler +31 -4
- package/libcxx/include/__atomic/atomic.h +36 -60
- package/libcxx/include/__atomic/atomic_flag.h +19 -37
- package/libcxx/include/__atomic/atomic_ref.h +29 -12
- package/libcxx/include/__atomic/atomic_sync.h +127 -55
- package/libcxx/include/__atomic/atomic_sync_timed.h +144 -0
- package/libcxx/include/__atomic/atomic_waitable_traits.h +103 -0
- package/libcxx/include/__atomic/contention_t.h +27 -3
- package/libcxx/include/__atomic/floating_point_helper.h +55 -0
- package/libcxx/include/__bit/countl.h +1 -2
- package/libcxx/include/__bit/countr.h +1 -2
- package/libcxx/include/__bit/has_single_bit.h +1 -1
- package/libcxx/include/__bit/popcount.h +0 -1
- package/libcxx/include/__bit/rotate.h +15 -26
- package/libcxx/include/__bit_reference +207 -18
- package/libcxx/include/__charconv/from_chars_integral.h +1 -1
- package/libcxx/include/__charconv/from_chars_result.h +1 -1
- package/libcxx/include/__charconv/to_chars_integral.h +1 -0
- package/libcxx/include/__charconv/to_chars_result.h +1 -1
- package/libcxx/include/__charconv/traits.h +3 -24
- package/libcxx/include/__chrono/day.h +11 -0
- package/libcxx/include/__chrono/duration.h +58 -33
- package/libcxx/include/__chrono/file_clock.h +4 -2
- package/libcxx/include/__chrono/is_clock.h +72 -0
- package/libcxx/include/__chrono/leap_second.h +13 -0
- package/libcxx/include/__chrono/month.h +13 -0
- package/libcxx/include/__chrono/month_weekday.h +22 -0
- package/libcxx/include/__chrono/monthday.h +20 -0
- package/libcxx/include/__chrono/steady_clock.h +1 -1
- package/libcxx/include/__chrono/system_clock.h +3 -3
- package/libcxx/include/__chrono/time_point.h +37 -13
- package/libcxx/include/__chrono/weekday.h +25 -0
- package/libcxx/include/__chrono/year.h +11 -0
- package/libcxx/include/__chrono/year_month.h +13 -0
- package/libcxx/include/__chrono/year_month_day.h +23 -0
- package/libcxx/include/__chrono/year_month_weekday.h +26 -0
- package/libcxx/include/__chrono/zoned_time.h +16 -0
- package/libcxx/include/__compare/is_eq.h +6 -6
- package/libcxx/include/__compare/strong_order.h +12 -30
- package/libcxx/include/__compare/three_way_comparable.h +2 -2
- package/libcxx/include/__concepts/comparison_common_type.h +40 -0
- package/libcxx/include/__concepts/equality_comparable.h +2 -1
- package/libcxx/include/__condition_variable/condition_variable.h +1 -1
- package/libcxx/include/__config +63 -280
- package/libcxx/include/__configuration/abi.h +14 -24
- package/libcxx/include/__configuration/availability.h +65 -118
- package/libcxx/include/__configuration/compiler.h +6 -6
- package/libcxx/include/__configuration/experimental.h +38 -0
- package/libcxx/include/__configuration/hardening.h +215 -0
- package/libcxx/include/__configuration/language.h +3 -0
- package/libcxx/include/__configuration/platform.h +9 -16
- package/libcxx/include/__coroutine/coroutine_handle.h +9 -9
- package/libcxx/include/__coroutine/noop_coroutine_handle.h +11 -13
- package/libcxx/include/__debug_utils/strict_weak_ordering_check.h +1 -1
- package/libcxx/include/__exception/exception.h +6 -4
- package/libcxx/include/__exception/exception_ptr.h +27 -5
- package/libcxx/include/__exception/nested_exception.h +2 -2
- package/libcxx/include/__exception/operations.h +5 -5
- package/libcxx/include/__expected/bad_expected_access.h +8 -6
- package/libcxx/include/__expected/expected.h +62 -64
- package/libcxx/include/__expected/unexpected.h +4 -4
- package/libcxx/include/__filesystem/copy_options.h +4 -4
- package/libcxx/include/__filesystem/directory_entry.h +37 -33
- package/libcxx/include/__filesystem/directory_iterator.h +9 -11
- package/libcxx/include/__filesystem/directory_options.h +7 -4
- package/libcxx/include/__filesystem/file_status.h +3 -3
- package/libcxx/include/__filesystem/filesystem_error.h +9 -10
- package/libcxx/include/__filesystem/operations.h +97 -66
- package/libcxx/include/__filesystem/path.h +68 -64
- package/libcxx/include/__filesystem/path_iterator.h +1 -3
- package/libcxx/include/__filesystem/perm_options.h +4 -4
- package/libcxx/include/__filesystem/perms.h +4 -4
- package/libcxx/include/__filesystem/recursive_directory_iterator.h +9 -14
- package/libcxx/include/__filesystem/space_info.h +1 -1
- package/libcxx/include/__filesystem/u8path.h +12 -14
- package/libcxx/include/__flat_map/flat_map.h +88 -71
- package/libcxx/include/__flat_map/flat_multimap.h +251 -172
- package/libcxx/include/__flat_map/key_value_iterator.h +0 -1
- package/libcxx/include/__flat_map/utils.h +1 -0
- package/libcxx/include/__flat_set/flat_multiset.h +211 -143
- package/libcxx/include/__flat_set/flat_set.h +86 -68
- package/libcxx/include/__format/concepts.h +0 -14
- package/libcxx/include/__format/extended_grapheme_cluster_table.h +3 -2
- package/libcxx/include/__format/fmt_pair_like.h +42 -0
- package/libcxx/include/__format/format_arg.h +7 -10
- package/libcxx/include/__format/format_args.h +1 -1
- package/libcxx/include/__format/format_context.h +5 -5
- package/libcxx/include/__format/format_parse_context.h +2 -2
- package/libcxx/include/__format/formatter_output.h +30 -34
- package/libcxx/include/__format/indic_conjunct_break_table.h +3 -2
- package/libcxx/include/__format/range_default_formatter.h +2 -41
- package/libcxx/include/__format/range_format.h +71 -0
- package/libcxx/include/__format/range_formatter.h +1 -0
- package/libcxx/include/__format/width_estimation_table.h +4 -2
- package/libcxx/include/__functional/bind.h +10 -15
- package/libcxx/include/__functional/bind_back.h +1 -1
- package/libcxx/include/__functional/bind_front.h +1 -1
- package/libcxx/include/__functional/function.h +57 -75
- package/libcxx/include/__functional/hash.h +1 -10
- package/libcxx/include/__functional/identity.h +1 -1
- package/libcxx/include/__functional/is_transparent.h +8 -0
- package/libcxx/include/__functional/mem_fn.h +2 -1
- package/libcxx/include/__functional/operations.h +18 -0
- package/libcxx/include/__functional/ranges_operations.h +7 -0
- package/libcxx/include/__functional/reference_wrapper.h +7 -5
- package/libcxx/include/__functional/weak_result_type.h +14 -28
- package/libcxx/include/__fwd/ios.h +1 -1
- package/libcxx/include/__fwd/tuple.h +14 -0
- package/libcxx/include/__hash_table +371 -357
- package/libcxx/include/__ios/fpos.h +4 -4
- package/libcxx/include/__iterator/back_insert_iterator.h +1 -7
- package/libcxx/include/__iterator/bounded_iter.h +7 -8
- package/libcxx/include/__iterator/concepts.h +6 -9
- package/libcxx/include/__iterator/cpp17_iterator_concepts.h +13 -12
- package/libcxx/include/__iterator/distance.h +40 -18
- package/libcxx/include/__iterator/front_insert_iterator.h +1 -7
- package/libcxx/include/__iterator/insert_iterator.h +1 -7
- package/libcxx/include/__iterator/istream_iterator.h +6 -7
- package/libcxx/include/__iterator/istreambuf_iterator.h +6 -7
- package/libcxx/include/__iterator/iter_move.h +1 -1
- package/libcxx/include/__iterator/iterator.h +13 -0
- package/libcxx/include/__iterator/iterator_traits.h +13 -14
- package/libcxx/include/__iterator/ostream_iterator.h +1 -7
- package/libcxx/include/__iterator/ostreambuf_iterator.h +1 -7
- package/libcxx/include/__iterator/reverse_iterator.h +8 -13
- package/libcxx/include/__iterator/segmented_iterator.h +3 -8
- package/libcxx/include/__iterator/static_bounded_iter.h +3 -3
- package/libcxx/include/__iterator/wrap_iter.h +8 -6
- package/libcxx/include/__locale +3 -10
- package/libcxx/include/__locale_dir/locale_base_api/bsd_locale_fallbacks.h +0 -10
- package/libcxx/include/__locale_dir/locale_base_api.h +5 -28
- package/libcxx/include/__locale_dir/messages.h +1 -1
- package/libcxx/include/__locale_dir/money.h +2 -2
- package/libcxx/include/__locale_dir/num.h +190 -243
- package/libcxx/include/__locale_dir/pad_and_output.h +5 -6
- package/libcxx/include/__locale_dir/support/bsd_like.h +0 -20
- package/libcxx/include/__locale_dir/support/fuchsia.h +0 -7
- package/libcxx/include/__locale_dir/support/linux.h +0 -37
- package/libcxx/include/__locale_dir/support/netbsd.h +0 -2
- package/libcxx/include/__locale_dir/support/newlib.h +243 -0
- package/libcxx/include/__locale_dir/support/no_locale/characters.h +0 -4
- package/libcxx/include/__locale_dir/support/no_locale/strtonum.h +0 -9
- package/libcxx/include/__locale_dir/support/windows.h +0 -29
- package/libcxx/include/__locale_dir/time.h +3 -7
- package/libcxx/include/__math/hypot.h +1 -1
- package/libcxx/include/__math/logarithms.h +1 -1
- package/libcxx/include/__math/traits.h +80 -11
- package/libcxx/include/__mdspan/extents.h +7 -4
- package/libcxx/include/__mdspan/layout_stride.h +4 -5
- package/libcxx/include/__mdspan/mdspan.h +29 -23
- package/libcxx/include/__memory/addressof.h +7 -5
- package/libcxx/include/__memory/align.h +18 -1
- package/libcxx/include/__memory/allocate_at_least.h +15 -10
- package/libcxx/include/__memory/allocator.h +14 -26
- package/libcxx/include/__memory/allocator_traits.h +6 -4
- package/libcxx/include/__memory/compressed_pair.h +15 -9
- package/libcxx/include/__memory/construct_at.h +12 -23
- package/libcxx/include/__memory/inout_ptr.h +1 -1
- package/libcxx/include/__memory/is_sufficiently_aligned.h +1 -1
- package/libcxx/include/__memory/out_ptr.h +1 -1
- package/libcxx/include/__memory/pointer_traits.h +1 -1
- package/libcxx/include/__memory/raw_storage_iterator.h +3 -9
- package/libcxx/include/__memory/shared_count.h +9 -30
- package/libcxx/include/__memory/shared_ptr.h +100 -145
- package/libcxx/include/__memory/temp_value.h +1 -2
- package/libcxx/include/__memory/uninitialized_algorithms.h +44 -115
- package/libcxx/include/__memory/unique_ptr.h +14 -16
- package/libcxx/include/__memory/uses_allocator_construction.h +1 -0
- package/libcxx/include/__memory_resource/memory_resource.h +4 -2
- package/libcxx/include/__memory_resource/monotonic_buffer_resource.h +1 -1
- package/libcxx/include/__memory_resource/polymorphic_allocator.h +13 -8
- package/libcxx/include/__memory_resource/pool_options.h +1 -1
- package/libcxx/include/__memory_resource/synchronized_pool_resource.h +4 -2
- package/libcxx/include/__memory_resource/unsynchronized_pool_resource.h +1 -1
- package/libcxx/include/__mutex/mutex.h +2 -2
- package/libcxx/include/__mutex/once_flag.h +14 -11
- package/libcxx/include/__mutex/tag_types.h +3 -3
- package/libcxx/include/__mutex/unique_lock.h +8 -7
- package/libcxx/include/__new/align_val_t.h +6 -0
- package/libcxx/include/__new/allocate.h +1 -2
- package/libcxx/include/__new/exceptions.h +8 -2
- package/libcxx/include/__new/global_new_delete.h +4 -11
- package/libcxx/include/__new/interference_size.h +0 -4
- package/libcxx/include/__new/launder.h +3 -5
- package/libcxx/include/__new/nothrow_t.h +1 -1
- package/libcxx/include/__numeric/gcd_lcm.h +24 -34
- package/libcxx/include/__numeric/midpoint.h +9 -14
- package/libcxx/include/__numeric/pstl.h +2 -2
- package/libcxx/include/__numeric/saturation_arithmetic.h +13 -5
- package/libcxx/include/__ostream/basic_ostream.h +8 -8
- package/libcxx/include/__pstl/backends/default.h +14 -14
- package/libcxx/include/__pstl/backends/libdispatch.h +2 -2
- package/libcxx/include/__pstl/cpu_algos/find_if.h +1 -1
- package/libcxx/include/__pstl/cpu_algos/transform.h +5 -6
- package/libcxx/include/__pstl/cpu_algos/transform_reduce.h +5 -4
- package/libcxx/include/__random/binomial_distribution.h +10 -4
- package/libcxx/include/__random/mersenne_twister_engine.h +50 -154
- package/libcxx/include/__random/piecewise_constant_distribution.h +3 -2
- package/libcxx/include/__random/piecewise_linear_distribution.h +3 -2
- package/libcxx/include/__ranges/adjacent_transform_view.h +406 -0
- package/libcxx/include/__ranges/adjacent_view.h +419 -0
- package/libcxx/include/__ranges/as_rvalue_view.h +9 -9
- package/libcxx/include/__ranges/chunk_by_view.h +6 -6
- package/libcxx/include/__ranges/common_view.h +7 -7
- package/libcxx/include/__ranges/drop_view.h +8 -8
- package/libcxx/include/__ranges/drop_while_view.h +5 -5
- package/libcxx/include/__ranges/elements_of.h +49 -0
- package/libcxx/include/__ranges/empty_view.h +5 -5
- package/libcxx/include/__ranges/filter_view.h +10 -10
- package/libcxx/include/__ranges/iota_view.h +41 -22
- package/libcxx/include/__ranges/owning_view.h +15 -15
- package/libcxx/include/__ranges/ref_view.h +6 -6
- package/libcxx/include/__ranges/repeat_view.h +17 -10
- package/libcxx/include/__ranges/single_view.h +8 -8
- package/libcxx/include/__ranges/take_view.h +9 -9
- package/libcxx/include/__ranges/transform_view.h +1 -2
- package/libcxx/include/__ranges/view_interface.h +10 -10
- package/libcxx/include/__ranges/zip_transform_view.h +357 -0
- package/libcxx/include/__ranges/zip_view.h +20 -20
- package/libcxx/include/__split_buffer +612 -240
- package/libcxx/include/__stop_token/atomic_unique_lock.h +1 -1
- package/libcxx/include/__stop_token/stop_callback.h +2 -2
- package/libcxx/include/__stop_token/stop_source.h +1 -1
- package/libcxx/include/__stop_token/stop_state.h +4 -4
- package/libcxx/include/__stop_token/stop_token.h +1 -1
- package/libcxx/include/__string/char_traits.h +51 -31
- package/libcxx/include/__string/constexpr_c_functions.h +5 -5
- package/libcxx/include/__support/xlocale/__strtonum_fallback.h +0 -8
- package/libcxx/include/__system_error/error_category.h +8 -8
- package/libcxx/include/__system_error/error_code.h +5 -5
- package/libcxx/include/__system_error/error_condition.h +4 -4
- package/libcxx/include/__system_error/system_error.h +1 -1
- package/libcxx/include/__thread/id.h +1 -1
- package/libcxx/include/__thread/jthread.h +1 -1
- package/libcxx/include/__thread/poll_with_backoff.h +27 -8
- package/libcxx/include/__thread/support/c11.h +8 -8
- package/libcxx/include/__thread/support/pthread.h +8 -8
- package/libcxx/include/__thread/support/windows.h +8 -8
- package/libcxx/include/__thread/thread.h +13 -8
- package/libcxx/include/__thread/timed_backoff_policy.h +3 -2
- package/libcxx/include/__tree +849 -701
- package/libcxx/include/__tuple/sfinae_helpers.h +1 -44
- package/libcxx/include/__tuple/tuple_element.h +0 -12
- package/libcxx/include/__tuple/tuple_size.h +0 -4
- package/libcxx/include/__tuple/tuple_transform.h +45 -0
- package/libcxx/include/__type_traits/aligned_storage.h +13 -40
- package/libcxx/include/__type_traits/desugars_to.h +4 -0
- package/libcxx/include/__type_traits/invoke.h +8 -0
- package/libcxx/include/__type_traits/is_allocator.h +6 -7
- package/libcxx/include/__type_traits/is_array.h +26 -0
- package/libcxx/include/__type_traits/is_equality_comparable.h +16 -21
- package/libcxx/include/__type_traits/is_final.h +1 -1
- package/libcxx/include/__type_traits/is_floating_point.h +7 -6
- package/libcxx/include/__type_traits/is_generic_transparent_comparator.h +30 -0
- package/libcxx/include/__type_traits/is_specialization.h +2 -6
- package/libcxx/include/__type_traits/is_within_lifetime.h +29 -0
- package/libcxx/include/__type_traits/make_transparent.h +52 -0
- package/libcxx/include/__type_traits/reference_constructs_from_temporary.h +1 -7
- package/libcxx/include/__type_traits/reference_converts_from_temporary.h +1 -1
- package/libcxx/include/__utility/cmp.h +19 -7
- package/libcxx/include/__utility/default_three_way_comparator.h +70 -0
- package/libcxx/include/__utility/in_place.h +1 -1
- package/libcxx/include/__utility/integer_sequence.h +56 -41
- package/libcxx/include/__utility/lazy_synth_three_way_comparator.h +120 -0
- package/libcxx/include/__utility/pair.h +22 -25
- package/libcxx/include/__utility/scope_guard.h +2 -0
- package/libcxx/include/__utility/try_key_extraction.h +114 -0
- package/libcxx/include/__vector/vector.h +187 -160
- package/libcxx/include/__vector/vector_bool.h +76 -83
- package/libcxx/include/any +118 -155
- package/libcxx/include/array +88 -56
- package/libcxx/include/atomic +2 -0
- package/libcxx/include/barrier +20 -24
- package/libcxx/include/bitset +49 -30
- package/libcxx/include/ccomplex +3 -11
- package/libcxx/include/chrono +47 -0
- package/libcxx/include/ciso646 +3 -6
- package/libcxx/include/complex +77 -65
- package/libcxx/include/complex.h +10 -10
- package/libcxx/include/condition_variable +3 -3
- package/libcxx/include/cstdalign +3 -10
- package/libcxx/include/cstdbool +3 -10
- package/libcxx/include/ctgmath +2 -11
- package/libcxx/include/ctype.h +24 -24
- package/libcxx/include/cwchar +2 -2
- package/libcxx/include/deque +109 -225
- package/libcxx/include/errno.h +269 -269
- package/libcxx/include/exception +4 -1
- package/libcxx/include/ext/hash_map +7 -48
- package/libcxx/include/ext/hash_set +2 -8
- package/libcxx/include/fenv.h +43 -43
- package/libcxx/include/flat_map +663 -11
- package/libcxx/include/flat_set +543 -8
- package/libcxx/include/float.h +16 -16
- package/libcxx/include/forward_list +33 -53
- package/libcxx/include/fstream +57 -42
- package/libcxx/include/future +41 -51
- package/libcxx/include/initializer_list +9 -3
- package/libcxx/include/inttypes.h +16 -16
- package/libcxx/include/ios +28 -28
- package/libcxx/include/istream +19 -13
- package/libcxx/include/iterator +10 -0
- package/libcxx/include/latch +7 -5
- package/libcxx/include/limits +4 -4
- package/libcxx/include/list +61 -79
- package/libcxx/include/map +386 -274
- package/libcxx/include/math.h +19 -0
- package/libcxx/include/mdspan +1 -5
- package/libcxx/include/mutex +29 -19
- package/libcxx/include/optional +644 -149
- package/libcxx/include/print +9 -5
- package/libcxx/include/queue +39 -37
- package/libcxx/include/ranges +48 -0
- package/libcxx/include/regex +33 -31
- package/libcxx/include/scoped_allocator +16 -11
- package/libcxx/include/semaphore +15 -18
- package/libcxx/include/set +220 -192
- package/libcxx/include/shared_mutex +3 -8
- package/libcxx/include/span +53 -37
- package/libcxx/include/sstream +34 -28
- package/libcxx/include/stack +13 -15
- package/libcxx/include/stddef.h +10 -10
- package/libcxx/include/stdexcept +2 -2
- package/libcxx/include/stdio.h +20 -21
- package/libcxx/include/streambuf +59 -19
- package/libcxx/include/string +574 -573
- package/libcxx/include/string_view +113 -89
- package/libcxx/include/strstream +10 -10
- package/libcxx/include/syncstream +4 -4
- package/libcxx/include/tgmath.h +12 -12
- package/libcxx/include/tuple +242 -212
- package/libcxx/include/type_traits +8 -2
- package/libcxx/include/typeindex +5 -3
- package/libcxx/include/typeinfo +92 -89
- package/libcxx/include/unordered_map +179 -304
- package/libcxx/include/unordered_set +168 -195
- package/libcxx/include/utility +12 -0
- package/libcxx/include/valarray +106 -161
- package/libcxx/include/variant +25 -33
- package/libcxx/include/version +41 -24
- package/libcxx/include/wctype.h +29 -29
- package/libcxx/libc/hdr/errno_macros.h +3 -1
- package/libcxx/libc/hdr/stdint_proxy.h +18 -0
- package/libcxx/libc/hdr/types/wchar_t.h +23 -0
- package/libcxx/libc/hdr/wchar_overlay.h +69 -0
- package/libcxx/libc/include/llvm-libc-macros/cfloat128-macros.h +41 -0
- package/libcxx/libc/include/llvm-libc-macros/cfloat16-macros.h +20 -0
- package/libcxx/libc/include/llvm-libc-macros/wchar-macros.h +18 -0
- package/libcxx/libc/include/llvm-libc-types/cfloat128.h +11 -28
- package/libcxx/libc/include/llvm-libc-types/cfloat16.h +4 -7
- package/libcxx/libc/include/llvm-libc-types/wint_t.h +14 -0
- package/libcxx/libc/shared/libc_common.h +5 -0
- package/libcxx/libc/src/__support/CPP/bit.h +50 -12
- package/libcxx/libc/src/__support/CPP/type_traits/is_complex.h +7 -0
- package/libcxx/libc/src/__support/CPP/type_traits/is_destructible.h +2 -1
- package/libcxx/libc/src/__support/CPP/type_traits/is_unsigned.h +6 -0
- package/libcxx/libc/src/__support/CPP/utility/integer_sequence.h +10 -0
- package/libcxx/libc/src/__support/FPUtil/FPBits.h +6 -7
- package/libcxx/libc/src/__support/FPUtil/rounding_mode.h +50 -4
- package/libcxx/libc/src/__support/big_int.h +14 -14
- package/libcxx/libc/src/__support/common.h +3 -2
- package/libcxx/libc/src/__support/ctype_utils.h +19 -12
- package/libcxx/libc/src/__support/detailed_powers_of_ten.h +1 -2
- package/libcxx/libc/src/__support/high_precision_decimal.h +33 -14
- package/libcxx/libc/src/__support/libc_assert.h +2 -0
- package/libcxx/libc/src/__support/macros/attributes.h +44 -1
- package/libcxx/libc/src/__support/macros/config.h +23 -0
- package/libcxx/libc/src/__support/macros/null_check.h +1 -2
- package/libcxx/libc/src/__support/macros/optimization.h +3 -0
- package/libcxx/libc/src/__support/macros/properties/architectures.h +5 -1
- package/libcxx/libc/src/__support/macros/properties/compiler.h +8 -3
- package/libcxx/libc/src/__support/macros/properties/cpu_features.h +17 -1
- package/libcxx/libc/src/__support/macros/properties/types.h +2 -3
- package/libcxx/libc/src/__support/macros/sanitizer.h +0 -10
- package/libcxx/libc/src/__support/math_extras.h +20 -4
- package/libcxx/libc/src/__support/str_to_float.h +98 -125
- package/libcxx/libc/src/__support/str_to_integer.h +39 -27
- package/libcxx/libc/src/__support/wctype_utils.h +588 -0
- package/libcxx/src/any.cpp +4 -0
- package/libcxx/src/atomic.cpp +365 -80
- package/libcxx/src/barrier.cpp +4 -3
- package/libcxx/src/charconv.cpp +6 -3
- package/libcxx/src/condition_variable_destructor.cpp +1 -1
- package/libcxx/src/error_category.cpp +3 -1
- package/libcxx/src/exception.cpp +2 -10
- package/libcxx/src/experimental/time_zone.cpp +1 -1
- package/libcxx/src/experimental/tzdb.cpp +4 -1
- package/libcxx/src/filesystem/error.h +4 -22
- package/libcxx/src/filesystem/format_string.h +9 -18
- package/libcxx/src/filesystem/int128_builtins.cpp +2 -0
- package/libcxx/src/filesystem/operations.cpp +2 -9
- package/libcxx/src/filesystem/path.cpp +3 -1
- package/libcxx/src/include/aligned_alloc.h +65 -0
- package/libcxx/src/include/config_elast.h +1 -1
- package/libcxx/src/include/from_chars_floating_point.h +11 -7
- package/libcxx/src/include/overridable_function.h +8 -10
- package/libcxx/src/iostream.cpp +56 -37
- package/libcxx/src/locale.cpp +213 -196
- package/libcxx/src/memory.cpp +12 -14
- package/libcxx/src/mutex_destructor.cpp +1 -1
- package/libcxx/src/new.cpp +5 -5
- package/libcxx/src/optional.cpp +4 -0
- package/libcxx/src/print.cpp +9 -1
- package/libcxx/src/random.cpp +0 -26
- package/libcxx/src/string.cpp +10 -25
- package/libcxx/src/support/runtime/exception_fallback.ipp +2 -0
- package/libcxx/src/support/runtime/exception_glibcxx.ipp +3 -0
- package/libcxx/src/support/runtime/exception_libcxxabi.ipp +6 -2
- package/libcxx/src/support/runtime/exception_libcxxrt.ipp +2 -0
- package/libcxx/src/support/runtime/exception_msvc.ipp +2 -0
- package/libcxx/src/support/runtime/exception_pointer_cxxabi.ipp +9 -10
- package/libcxx/src/support/runtime/exception_pointer_glibcxx.ipp +2 -0
- package/libcxx/src/support/runtime/exception_pointer_msvc.ipp +1 -0
- package/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp +1 -0
- package/libcxx/src/support/win32/locale_win32.cpp +1 -1
- package/libcxx/src/system_error.cpp +2 -0
- package/libcxx/src/thread.cpp +1 -3
- package/libcxx/src/valarray.cpp +1 -2
- package/libcxx/src/vector.cpp +2 -2
- package/libcxxabi/include/__cxxabi_config.h +42 -23
- package/libcxxabi/src/cxa_exception.cpp +4 -2
- package/libcxxabi/src/cxa_exception.h +16 -14
- package/libcxxabi/src/cxa_personality.cpp +126 -9
- package/libcxxabi/src/cxa_thread_atexit.cpp +2 -1
- package/libcxxabi/src/demangle/DemangleConfig.h +4 -0
- package/libcxxabi/src/demangle/ItaniumDemangle.h +9 -6
- package/libcxxabi/src/demangle/Utility.h +21 -7
- package/libcxxabi/src/fallback_malloc.cpp +1 -1
- package/libcxxabi/src/private_typeinfo.cpp +6 -0
- package/libcxxabi/src/stdlib_new_delete.cpp +5 -5
- package/libtsan/LICENSE.TXT +311 -0
- package/libtsan/builtins/assembly.h +41 -8
- package/libtsan/interception/interception_win.cpp +4 -0
- package/libtsan/sanitizer_common/sanitizer_allocator_primary32.h +1 -0
- package/libtsan/sanitizer_common/sanitizer_allocator_primary64.h +18 -0
- package/libtsan/sanitizer_common/sanitizer_common.h +15 -2
- package/libtsan/sanitizer_common/sanitizer_common_interceptors.inc +30 -4
- package/libtsan/sanitizer_common/sanitizer_common_interceptors_ioctl.inc +4 -0
- package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_aarch64.inc.S +2 -1
- package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_i386.inc.S +2 -0
- package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_x86_64.inc.S +2 -0
- package/libtsan/sanitizer_common/sanitizer_common_syscalls.inc +18 -0
- package/libtsan/sanitizer_common/sanitizer_file.cpp +40 -12
- package/libtsan/sanitizer_common/sanitizer_file.h +3 -0
- package/libtsan/sanitizer_common/sanitizer_flags.inc +7 -0
- package/libtsan/sanitizer_common/sanitizer_fuchsia.cpp +30 -3
- package/libtsan/sanitizer_common/sanitizer_haiku.cpp +2 -2
- package/libtsan/sanitizer_common/sanitizer_internal_defs.h +1 -1
- package/libtsan/sanitizer_common/sanitizer_libc.cpp +8 -0
- package/libtsan/sanitizer_common/sanitizer_libc.h +1 -0
- package/libtsan/sanitizer_common/sanitizer_linux.cpp +15 -7
- package/libtsan/sanitizer_common/sanitizer_linux.h +3 -3
- package/libtsan/sanitizer_common/sanitizer_linux_libcdep.cpp +1 -0
- package/libtsan/sanitizer_common/sanitizer_mac.cpp +255 -104
- package/libtsan/sanitizer_common/sanitizer_mac.h +5 -0
- package/libtsan/sanitizer_common/sanitizer_netbsd.cpp +2 -2
- package/libtsan/sanitizer_common/sanitizer_platform.h +27 -1
- package/libtsan/sanitizer_common/sanitizer_platform_interceptors.h +5 -4
- package/libtsan/sanitizer_common/sanitizer_platform_limits_posix.cpp +15 -17
- package/libtsan/sanitizer_common/sanitizer_platform_limits_posix.h +32 -6
- package/libtsan/sanitizer_common/sanitizer_posix.cpp +3 -12
- package/libtsan/sanitizer_common/sanitizer_posix.h +2 -1
- package/libtsan/sanitizer_common/sanitizer_posix_libcdep.cpp +19 -0
- package/libtsan/sanitizer_common/sanitizer_procmaps_mac.cpp +102 -37
- package/libtsan/sanitizer_common/sanitizer_redefine_builtins.h +1 -1
- package/libtsan/sanitizer_common/sanitizer_signal_interceptors.inc +40 -2
- package/libtsan/sanitizer_common/sanitizer_stoptheworld.h +1 -1
- package/libtsan/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp +83 -12
- package/libtsan/sanitizer_common/sanitizer_stoptheworld_mac.cpp +3 -3
- package/libtsan/sanitizer_common/sanitizer_stoptheworld_netbsd_libcdep.cpp +7 -7
- package/libtsan/sanitizer_common/sanitizer_stoptheworld_win.cpp +2 -2
- package/libtsan/sanitizer_common/sanitizer_symbolizer_internal.h +5 -1
- package/libtsan/sanitizer_common/sanitizer_symbolizer_libcdep.cpp +11 -1
- package/libtsan/sanitizer_common/sanitizer_symbolizer_mac.cpp +86 -29
- package/libtsan/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp +27 -16
- package/libtsan/sanitizer_common/sanitizer_thread_registry.cpp +5 -4
- package/libtsan/sanitizer_common/sanitizer_thread_registry.h +4 -4
- package/libtsan/sanitizer_common/sanitizer_win.cpp +1 -3
- package/libtsan/tsan_debugging.cpp +2 -2
- package/libtsan/tsan_flags.cpp +37 -0
- package/libtsan/tsan_flags.h +8 -0
- package/libtsan/tsan_flags.inc +12 -0
- package/libtsan/tsan_interceptors.h +9 -1
- package/libtsan/tsan_interceptors_mac.cpp +19 -0
- package/libtsan/tsan_interceptors_posix.cpp +78 -32
- package/libtsan/tsan_interface.h +3 -3
- package/libtsan/tsan_interface_ann.cpp +23 -9
- package/libtsan/tsan_mman.cpp +18 -4
- package/libtsan/tsan_platform.h +44 -7
- package/libtsan/tsan_platform_linux.cpp +42 -14
- package/libtsan/tsan_platform_mac.cpp +16 -3
- package/libtsan/tsan_report.h +14 -1
- package/libtsan/tsan_rtl.cpp +14 -0
- package/libtsan/tsan_rtl.h +7 -2
- package/libtsan/tsan_rtl_aarch64.S +3 -5
- package/libtsan/tsan_rtl_access.cpp +8 -3
- package/libtsan/tsan_rtl_amd64.S +2 -0
- package/libtsan/tsan_rtl_mutex.cpp +94 -49
- package/libtsan/tsan_rtl_report.cpp +132 -65
- package/libtsan/tsan_rtl_thread.cpp +31 -9
- package/libtsan/tsan_symbolize.cpp +1 -1
- package/libtsan/tsan_symbolize.h +1 -1
- package/libtsan/tsan_trace.h +1 -1
- package/libunwind/include/__libunwind_config.h +11 -2
- package/libunwind/include/libunwind.h +117 -11
- package/libunwind/include/unwind_arm_ehabi.h +4 -1
- package/libunwind/src/AddressSpace.hpp +42 -20
- package/libunwind/src/CompactUnwinder.hpp +16 -5
- package/libunwind/src/DwarfInstructions.hpp +24 -13
- package/libunwind/src/DwarfParser.hpp +62 -23
- package/libunwind/src/EHHeaderParser.hpp +7 -4
- package/libunwind/src/Registers.hpp +226 -22
- package/libunwind/src/Unwind-seh.cpp +6 -7
- package/libunwind/src/Unwind-wasm.c +7 -7
- package/libunwind/src/UnwindCursor.hpp +167 -49
- package/libunwind/src/UnwindLevel1.c +46 -17
- package/libunwind/src/UnwindRegistersRestore.S +46 -5
- package/libunwind/src/UnwindRegistersSave.S +86 -2
- package/libunwind/src/assembly.h +5 -1
- package/libunwind/src/config.h +9 -0
- package/libunwind/src/gcc_personality_v0.c +79 -6
- package/libunwind/src/libunwind.cpp +104 -4
- package/libunwind/src/libunwind_ext.h +7 -1
- package/libunwind/src/shadow_stack_unwind.h +2 -2
- package/lldb/pretty_printers.py +948 -0
- package/package.json +1 -1
- package/std/Build/Cache/Path.zig +1 -1
- package/std/Build/Cache.zig +6 -6
- package/std/Build/Step/Compile.zig +18 -20
- package/std/Build/Step/ConfigHeader.zig +1 -1
- package/std/Build/Step/Run.zig +15 -8
- package/std/Build/Step.zig +3 -7
- package/std/Build/Watch/FsEvents.zig +1 -1
- package/std/Build/WebServer.zig +2 -2
- package/std/Build/abi.zig +1 -1
- package/std/Build.zig +0 -3
- package/std/Io/Dir.zig +9 -4
- package/std/Io/Dispatch.zig +8 -18
- package/std/Io/File/Writer.zig +8 -6
- package/std/Io/File.zig +0 -9
- package/std/Io/Kqueue.zig +3 -3
- package/std/Io/Reader.zig +8 -14
- package/std/Io/Semaphore.zig +112 -17
- package/std/Io/Terminal.zig +1 -1
- package/std/Io/Threaded.zig +183 -46
- package/std/Io/Uring.zig +18 -20
- package/std/Io/Writer.zig +10 -7
- package/std/Io/net/HostName.zig +11 -6
- package/std/Io/net.zig +11 -11
- package/std/Io.zig +104 -38
- package/std/Random/ChaCha.zig +2 -2
- package/std/Random/benchmark.zig +2 -2
- package/std/Random.zig +6 -6
- package/std/SemanticVersion.zig +1 -1
- package/std/Target/Query.zig +2 -2
- package/std/Target/aarch64.zig +620 -77
- package/std/Target/amdgcn.zig +421 -21
- package/std/Target/arm.zig +40 -6
- package/std/Target/bpf.zig +6 -0
- package/std/Target/hexagon.zig +41 -6
- package/std/Target/loongarch.zig +18 -0
- package/std/Target/mips.zig +6 -0
- package/std/Target/nvptx.zig +58 -35
- package/std/Target/powerpc.zig +27 -19
- package/std/Target/riscv.zig +415 -177
- package/std/Target/sparc.zig +17 -0
- package/std/Target/wasm.zig +7 -0
- package/std/Target/x86.zig +200 -31
- package/std/Target/xtensa.zig +65 -0
- package/std/Target.zig +67 -14
- package/std/Thread.zig +5 -2
- package/std/array_hash_map.zig +103 -57
- package/std/array_list.zig +10 -31
- package/std/base64.zig +5 -5
- package/std/bit_set.zig +86 -69
- package/std/c/haiku.zig +3 -0
- package/std/c/serenity.zig +1 -6
- package/std/c.zig +123 -32
- package/std/compress/flate/Decompress.zig +3 -4
- package/std/compress/zstd/Decompress.zig +7 -9
- package/std/crypto/25519/curve25519.zig +2 -2
- package/std/crypto/25519/edwards25519.zig +3 -3
- package/std/crypto/25519/ristretto255.zig +2 -2
- package/std/crypto/25519/scalar.zig +6 -6
- package/std/crypto/25519/x25519.zig +1 -1
- package/std/crypto/Certificate.zig +14 -2
- package/std/crypto/Sha1.zig +1 -1
- package/std/crypto/aegis.zig +45 -39
- package/std/crypto/aes_ccm.zig +22 -22
- package/std/crypto/aes_gcm.zig +10 -12
- package/std/crypto/aes_ocb.zig +9 -9
- package/std/crypto/argon2.zig +15 -15
- package/std/crypto/ascon.zig +75 -33
- package/std/crypto/bcrypt.zig +20 -10
- package/std/crypto/benchmark.zig +7 -7
- package/std/crypto/blake2.zig +100 -64
- package/std/crypto/cbc_mac.zig +1 -1
- package/std/crypto/chacha20.zig +10 -10
- package/std/crypto/cmac.zig +3 -3
- package/std/crypto/codecs/asn1/Oid.zig +12 -1
- package/std/crypto/codecs/asn1/der/Encoder.zig +1 -1
- package/std/crypto/codecs/asn1.zig +1 -1
- package/std/crypto/codecs/base64_hex_ct.zig +3 -5
- package/std/crypto/ecdsa.zig +9 -9
- package/std/crypto/ff.zig +4 -5
- package/std/crypto/ghash_polyval.zig +4 -4
- package/std/crypto/hkdf.zig +1 -1
- package/std/crypto/isap.zig +3 -3
- package/std/crypto/kangarootwelve.zig +1 -1
- package/std/crypto/keccak_p.zig +8 -8
- package/std/crypto/md5.zig +1 -1
- package/std/crypto/ml_dsa.zig +39 -39
- package/std/crypto/ml_kem.zig +12 -34
- package/std/crypto/modes.zig +2 -2
- package/std/crypto/pbkdf2.zig +1 -1
- package/std/crypto/pcurves/common.zig +4 -5
- package/std/crypto/pcurves/p256/scalar.zig +3 -3
- package/std/crypto/pcurves/p384/scalar.zig +2 -2
- package/std/crypto/pcurves/secp256k1/scalar.zig +3 -3
- package/std/crypto/pcurves/tests/p256.zig +5 -5
- package/std/crypto/pcurves/tests/p384.zig +5 -5
- package/std/crypto/pcurves/tests/secp256k1.zig +3 -3
- package/std/crypto/salsa20.zig +8 -8
- package/std/crypto/sha2.zig +2 -2
- package/std/crypto/sha3.zig +2 -2
- package/std/crypto/siphash.zig +1 -1
- package/std/crypto/timing_safe.zig +10 -9
- package/std/crypto/tls/Client.zig +89 -13
- package/std/crypto/tls.zig +1 -1
- package/std/crypto.zig +4 -3
- package/std/debug/Dwarf.zig +15 -12
- package/std/debug/Pdb.zig +25 -17
- package/std/debug.zig +14 -8
- package/std/deque.zig +1 -1
- package/std/elf.zig +1 -1
- package/std/enums.zig +8 -8
- package/std/fmt/parse_float/decimal.zig +1 -1
- package/std/fmt/parse_float.zig +1 -1
- package/std/fmt.zig +14 -10
- package/std/fs/path.zig +7 -5
- package/std/hash/Adler32.zig +3 -3
- package/std/hash/benchmark.zig +2 -2
- package/std/hash/wyhash.zig +2 -2
- package/std/hash/xxhash.zig +0 -6
- package/std/hash_map.zig +20 -1
- package/std/heap/BufferFirstAllocator.zig +165 -0
- package/std/heap/debug_allocator.zig +2 -2
- package/std/heap/memory_pool.zig +34 -197
- package/std/heap.zig +2 -133
- package/std/http/Client.zig +21 -24
- package/std/http.zig +4 -5
- package/std/json/Scanner.zig +2 -2
- package/std/json/static.zig +2 -2
- package/std/{builtin.zig → lang.zig} +5 -1
- package/std/leb128.zig +2 -2
- package/std/math/big/int.zig +5 -5
- package/std/math/big.zig +4 -4
- package/std/math/copysign.zig +1 -1
- package/std/math/float.zig +62 -0
- package/std/math/frexp.zig +4 -4
- package/std/math/ilogb.zig +1 -1
- package/std/math/isfinite.zig +1 -1
- package/std/math/isinf.zig +1 -1
- package/std/math/isnan.zig +1 -2
- package/std/math/isnormal.zig +2 -2
- package/std/math/iszero.zig +2 -2
- package/std/math/ldexp.zig +2 -2
- package/std/math/log10.zig +0 -2
- package/std/math/modf.zig +1 -2
- package/std/math/nextafter.zig +3 -4
- package/std/math/pow.zig +1 -1
- package/std/math/powi.zig +2 -3
- package/std/math/signbit.zig +0 -1
- package/std/math.zig +21 -26
- package/std/mem/Allocator.zig +0 -6
- package/std/mem.zig +31 -31
- package/std/meta/trailer_flags.zig +1 -1
- package/std/meta.zig +4 -36
- package/std/multi_array_list.zig +24 -0
- package/std/os/emscripten.zig +7 -6
- package/std/os/linux/IoUring.zig +2 -0
- package/std/os/linux/aarch64.zig +41 -12
- package/std/os/linux/arc.zig +41 -12
- package/std/os/linux/arm.zig +41 -12
- package/std/os/linux/bpf.zig +6 -0
- package/std/os/linux/hexagon.zig +33 -11
- package/std/os/linux/ioctl.zig +2 -2
- package/std/os/linux/loongarch32.zig +41 -13
- package/std/os/linux/loongarch64.zig +41 -12
- package/std/os/linux/m68k.zig +41 -13
- package/std/os/linux/mips.zig +67 -36
- package/std/os/linux/mips64.zig +60 -29
- package/std/os/linux/mipsn32.zig +60 -29
- package/std/os/linux/or1k.zig +41 -12
- package/std/os/linux/powerpc.zig +41 -12
- package/std/os/linux/powerpc64.zig +41 -12
- package/std/os/linux/riscv32.zig +41 -12
- package/std/os/linux/riscv64.zig +41 -12
- package/std/os/linux/s390x.zig +44 -7
- package/std/os/linux/sparc64.zig +83 -52
- package/std/os/linux/syscalls.zig +26 -1
- package/std/os/linux/thumb.zig +52 -36
- package/std/os/linux/x32.zig +41 -12
- package/std/os/linux/x86.zig +44 -15
- package/std/os/linux/x86_64.zig +41 -12
- package/std/os/linux.zig +416 -450
- package/std/os/plan9.zig +1 -1
- package/std/os/uefi/hii.zig +1 -1
- package/std/os/uefi/tables/boot_services.zig +9 -8
- package/std/os/uefi/tables/runtime_services.zig +1 -1
- package/std/os/windows.zig +130 -1
- package/std/os.zig +41 -0
- package/std/posix.zig +1 -1
- package/std/process/Environ.zig +1 -1
- package/std/process.zig +5 -4
- package/std/simd.zig +4 -21
- package/std/sort.zig +3 -3
- package/std/start.zig +17 -4
- package/std/std.zig +8 -1
- package/std/tar/Writer.zig +39 -33
- package/std/tar.zig +8 -4
- package/std/testing.zig +2 -2
- package/std/unicode.zig +13 -8
- package/std/zig/Ast/Render.zig +6 -30
- package/std/zig/Ast.zig +12 -37
- package/std/zig/AstGen.zig +175 -332
- package/std/zig/AstRlAnnotate.zig +1 -22
- package/std/zig/AstSmith.zig +5 -11
- package/std/zig/BuiltinFn.zig +0 -32
- package/std/zig/ErrorBundle.zig +6 -2
- package/std/zig/LibCDirs.zig +15 -6
- package/std/zig/LibCInstallation.zig +34 -12
- package/std/zig/Parse.zig +11 -76
- package/std/zig/TokenSmith.zig +0 -6
- package/std/zig/WindowsSdk.zig +18 -18
- package/std/zig/Zir.zig +65 -132
- package/std/zig/ZonGen.zig +19 -27
- package/std/zig/llvm/Builder.zig +39 -33
- package/std/zig/llvm/bitcode_writer.zig +3 -3
- package/std/zig/llvm/ir.zig +8 -8
- package/std/zig/system/arm.zig +56 -2
- package/std/zig/system/windows.zig +34 -1
- package/std/zig/system/x86.zig +60 -16
- package/std/zig/system.zig +0 -10
- package/std/zig/target.zig +1 -4
- package/std/zig/tokenizer.zig +4 -43
- package/std/zig.zig +3 -14
- package/std/zip.zig +5 -5
- package/std/zon/parse.zig +1 -1
- package/zig.h +340 -1
- package/compiler_rt/long_double.zig +0 -37
- package/include/amxbf16transposeintrin.h +0 -94
- package/include/amxcomplextransposeintrin.h +0 -303
- package/include/amxfp16transposeintrin.h +0 -94
- package/include/amxmovrstransposeintrin.h +0 -200
- package/include/amxtf32transposeintrin.h +0 -105
- package/include/amxtransposeintrin.h +0 -248
- package/libc/include/hexagon-linux-any/asm/signal.h +0 -29
- package/libc/include/s390x-linux-any/asm/tape390.h +0 -103
- package/libc/mingw/math/lrintl.c +0 -18
- package/libc/mingw/math/rintl.c +0 -16
- package/libc/mingw/winpthreads/spinlock.c +0 -82
- package/libc/musl/src/linux/tee.c +0 -8
- package/libc/musl/src/math/i386/lrintl.c +0 -8
- package/libc/musl/src/math/i386/rintl.c +0 -7
- package/libc/musl/src/math/lrintl.c +0 -36
- package/libc/musl/src/math/rintl.c +0 -29
- package/libc/musl/src/math/s390x/rintl.c +0 -15
- package/libc/musl/src/math/x32/lrintl.s +0 -7
- package/libc/musl/src/math/x32/rintl.s +0 -6
- package/libc/musl/src/math/x86_64/lrintl.c +0 -8
- package/libc/musl/src/math/x86_64/rintl.c +0 -7
- package/libc/musl/src/string/strdup.c +0 -10
- package/libc/musl/src/string/strndup.c +0 -12
- package/libc/musl/src/string/wcsdup.c +0 -10
- package/libc/musl/src/thread/pthread_spin_destroy.c +0 -6
- package/libc/musl/src/thread/pthread_spin_init.c +0 -6
- package/libc/musl/src/thread/pthread_spin_lock.c +0 -8
- package/libc/musl/src/thread/pthread_spin_trylock.c +0 -7
- package/libc/musl/src/thread/pthread_spin_unlock.c +0 -7
- package/libc/musl/src/unistd/dup2.c +0 -20
- package/libc/musl/src/unistd/dup3.c +0 -26
- package/libc/wasi/thread-stub/pthread_spin_lock.c +0 -8
- package/libc/wasi/thread-stub/pthread_spin_trylock.c +0 -8
- package/libc/wasi/thread-stub/pthread_spin_unlock.c +0 -7
- package/libtsan/sanitizer_common/sanitizer_coverage_interface.inc +0 -43
- package/std/Build/Step/CheckObject.zig +0 -2764
- /package/std/{builtin → lang}/assembly.zig +0 -0
|
@@ -144,6 +144,16 @@ enum drm_panthor_ioctl_id {
|
|
|
144
144
|
* pgoff_t size.
|
|
145
145
|
*/
|
|
146
146
|
DRM_PANTHOR_SET_USER_MMIO_OFFSET,
|
|
147
|
+
|
|
148
|
+
/** @DRM_PANTHOR_BO_SYNC: Sync BO data to/from the device */
|
|
149
|
+
DRM_PANTHOR_BO_SYNC,
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
* @DRM_PANTHOR_BO_QUERY_INFO: Query information about a BO.
|
|
153
|
+
*
|
|
154
|
+
* This is useful for imported BOs.
|
|
155
|
+
*/
|
|
156
|
+
DRM_PANTHOR_BO_QUERY_INFO,
|
|
147
157
|
};
|
|
148
158
|
|
|
149
159
|
/**
|
|
@@ -245,6 +255,26 @@ enum drm_panthor_dev_query_type {
|
|
|
245
255
|
DRM_PANTHOR_DEV_QUERY_GROUP_PRIORITIES_INFO,
|
|
246
256
|
};
|
|
247
257
|
|
|
258
|
+
/**
|
|
259
|
+
* enum drm_panthor_gpu_coherency: Type of GPU coherency
|
|
260
|
+
*/
|
|
261
|
+
enum drm_panthor_gpu_coherency {
|
|
262
|
+
/**
|
|
263
|
+
* @DRM_PANTHOR_GPU_COHERENCY_ACE_LITE: ACE Lite coherency.
|
|
264
|
+
*/
|
|
265
|
+
DRM_PANTHOR_GPU_COHERENCY_ACE_LITE = 0,
|
|
266
|
+
|
|
267
|
+
/**
|
|
268
|
+
* @DRM_PANTHOR_GPU_COHERENCY_ACE: ACE coherency.
|
|
269
|
+
*/
|
|
270
|
+
DRM_PANTHOR_GPU_COHERENCY_ACE = 1,
|
|
271
|
+
|
|
272
|
+
/**
|
|
273
|
+
* @DRM_PANTHOR_GPU_COHERENCY_NONE: No coherency.
|
|
274
|
+
*/
|
|
275
|
+
DRM_PANTHOR_GPU_COHERENCY_NONE = 31,
|
|
276
|
+
};
|
|
277
|
+
|
|
248
278
|
/**
|
|
249
279
|
* struct drm_panthor_gpu_info - GPU information
|
|
250
280
|
*
|
|
@@ -301,7 +331,16 @@ struct drm_panthor_gpu_info {
|
|
|
301
331
|
*/
|
|
302
332
|
__u32 thread_max_barrier_size;
|
|
303
333
|
|
|
304
|
-
/**
|
|
334
|
+
/**
|
|
335
|
+
* @coherency_features: Coherency features.
|
|
336
|
+
*
|
|
337
|
+
* Combination of drm_panthor_gpu_coherency flags.
|
|
338
|
+
*
|
|
339
|
+
* Note that this is just what the coherency protocols supported by the
|
|
340
|
+
* GPU, but the actual coherency in place depends on the SoC
|
|
341
|
+
* integration and is reflected by
|
|
342
|
+
* drm_panthor_gpu_info::selected_coherency.
|
|
343
|
+
*/
|
|
305
344
|
__u32 coherency_features;
|
|
306
345
|
|
|
307
346
|
/** @texture_features: Texture features. */
|
|
@@ -310,8 +349,12 @@ struct drm_panthor_gpu_info {
|
|
|
310
349
|
/** @as_present: Bitmask encoding the number of address-space exposed by the MMU. */
|
|
311
350
|
__u32 as_present;
|
|
312
351
|
|
|
313
|
-
/**
|
|
314
|
-
|
|
352
|
+
/**
|
|
353
|
+
* @selected_coherency: Coherency selected for this device.
|
|
354
|
+
*
|
|
355
|
+
* One of drm_panthor_gpu_coherency.
|
|
356
|
+
*/
|
|
357
|
+
__u32 selected_coherency;
|
|
315
358
|
|
|
316
359
|
/** @shader_present: Bitmask encoding the shader cores exposed by the GPU. */
|
|
317
360
|
__u64 shader_present;
|
|
@@ -638,6 +681,15 @@ struct drm_panthor_vm_get_state {
|
|
|
638
681
|
enum drm_panthor_bo_flags {
|
|
639
682
|
/** @DRM_PANTHOR_BO_NO_MMAP: The buffer object will never be CPU-mapped in userspace. */
|
|
640
683
|
DRM_PANTHOR_BO_NO_MMAP = (1 << 0),
|
|
684
|
+
|
|
685
|
+
/**
|
|
686
|
+
* @DRM_PANTHOR_BO_WB_MMAP: Force "Write-Back Cacheable" CPU mapping.
|
|
687
|
+
*
|
|
688
|
+
* CPU map the buffer object in userspace by forcing the "Write-Back
|
|
689
|
+
* Cacheable" cacheability attribute. The mapping otherwise uses the
|
|
690
|
+
* "Non-Cacheable" attribute if the GPU is not IO coherent.
|
|
691
|
+
*/
|
|
692
|
+
DRM_PANTHOR_BO_WB_MMAP = (1 << 1),
|
|
641
693
|
};
|
|
642
694
|
|
|
643
695
|
/**
|
|
@@ -1040,6 +1092,101 @@ struct drm_panthor_set_user_mmio_offset {
|
|
|
1040
1092
|
__u64 offset;
|
|
1041
1093
|
};
|
|
1042
1094
|
|
|
1095
|
+
/**
|
|
1096
|
+
* enum drm_panthor_bo_sync_op_type - BO sync type
|
|
1097
|
+
*/
|
|
1098
|
+
enum drm_panthor_bo_sync_op_type {
|
|
1099
|
+
/** @DRM_PANTHOR_BO_SYNC_CPU_CACHE_FLUSH: Flush CPU caches. */
|
|
1100
|
+
DRM_PANTHOR_BO_SYNC_CPU_CACHE_FLUSH = 0,
|
|
1101
|
+
|
|
1102
|
+
/** @DRM_PANTHOR_BO_SYNC_CPU_CACHE_FLUSH_AND_INVALIDATE: Flush and invalidate CPU caches. */
|
|
1103
|
+
DRM_PANTHOR_BO_SYNC_CPU_CACHE_FLUSH_AND_INVALIDATE = 1,
|
|
1104
|
+
};
|
|
1105
|
+
|
|
1106
|
+
/**
|
|
1107
|
+
* struct drm_panthor_bo_sync_op - BO map sync op
|
|
1108
|
+
*/
|
|
1109
|
+
struct drm_panthor_bo_sync_op {
|
|
1110
|
+
/** @handle: Handle of the buffer object to sync. */
|
|
1111
|
+
__u32 handle;
|
|
1112
|
+
|
|
1113
|
+
/** @type: Type of operation. */
|
|
1114
|
+
__u32 type;
|
|
1115
|
+
|
|
1116
|
+
/**
|
|
1117
|
+
* @offset: Offset into the BO at which the sync range starts.
|
|
1118
|
+
*
|
|
1119
|
+
* This will be rounded down to the nearest cache line as needed.
|
|
1120
|
+
*/
|
|
1121
|
+
__u64 offset;
|
|
1122
|
+
|
|
1123
|
+
/**
|
|
1124
|
+
* @size: Size of the range to sync
|
|
1125
|
+
*
|
|
1126
|
+
* @size + @offset will be rounded up to the nearest cache line as
|
|
1127
|
+
* needed.
|
|
1128
|
+
*/
|
|
1129
|
+
__u64 size;
|
|
1130
|
+
};
|
|
1131
|
+
|
|
1132
|
+
/**
|
|
1133
|
+
* struct drm_panthor_bo_sync - BO map sync request
|
|
1134
|
+
*/
|
|
1135
|
+
struct drm_panthor_bo_sync {
|
|
1136
|
+
/**
|
|
1137
|
+
* @ops: Array of struct drm_panthor_bo_sync_op sync operations.
|
|
1138
|
+
*/
|
|
1139
|
+
struct drm_panthor_obj_array ops;
|
|
1140
|
+
};
|
|
1141
|
+
|
|
1142
|
+
/**
|
|
1143
|
+
* enum drm_panthor_bo_extra_flags - Set of flags returned on a BO_QUERY_INFO request
|
|
1144
|
+
*
|
|
1145
|
+
* Those are flags reflecting BO properties that are not directly coming from the flags
|
|
1146
|
+
* passed are creation time, or information on BOs that were imported from other drivers.
|
|
1147
|
+
*/
|
|
1148
|
+
enum drm_panthor_bo_extra_flags {
|
|
1149
|
+
/**
|
|
1150
|
+
* @DRM_PANTHOR_BO_IS_IMPORTED: BO has been imported from an external driver.
|
|
1151
|
+
*
|
|
1152
|
+
* Note that imported dma-buf handles are not flagged as imported if they
|
|
1153
|
+
* where exported by panthor. Only buffers that are coming from other drivers
|
|
1154
|
+
* (dma heaps, other GPUs, display controllers, V4L, ...).
|
|
1155
|
+
*
|
|
1156
|
+
* It's also important to note that all imported BOs are mapped cached and can't
|
|
1157
|
+
* be considered IO-coherent even if the GPU is. This means they require explicit
|
|
1158
|
+
* syncs that must go through the DRM_PANTHOR_BO_SYNC ioctl (userland cache
|
|
1159
|
+
* maintenance is not allowed in that case, because extra operations might be
|
|
1160
|
+
* needed to make changes visible to the CPU/device, like buffer migration when the
|
|
1161
|
+
* exporter is a GPU with its own VRAM).
|
|
1162
|
+
*/
|
|
1163
|
+
DRM_PANTHOR_BO_IS_IMPORTED = (1 << 0),
|
|
1164
|
+
};
|
|
1165
|
+
|
|
1166
|
+
/**
|
|
1167
|
+
* struct drm_panthor_bo_query_info - Query BO info
|
|
1168
|
+
*/
|
|
1169
|
+
struct drm_panthor_bo_query_info {
|
|
1170
|
+
/** @handle: Handle of the buffer object to query flags on. */
|
|
1171
|
+
__u32 handle;
|
|
1172
|
+
|
|
1173
|
+
/**
|
|
1174
|
+
* @extra_flags: Combination of enum drm_panthor_bo_extra_flags flags.
|
|
1175
|
+
*/
|
|
1176
|
+
__u32 extra_flags;
|
|
1177
|
+
|
|
1178
|
+
/**
|
|
1179
|
+
* @create_flags: Flags passed at creation time.
|
|
1180
|
+
*
|
|
1181
|
+
* Combination of enum drm_panthor_bo_flags flags.
|
|
1182
|
+
* Will be zero if the buffer comes from a different driver.
|
|
1183
|
+
*/
|
|
1184
|
+
__u32 create_flags;
|
|
1185
|
+
|
|
1186
|
+
/** @pad: Will be zero on return. */
|
|
1187
|
+
__u32 pad;
|
|
1188
|
+
};
|
|
1189
|
+
|
|
1043
1190
|
/**
|
|
1044
1191
|
* DRM_IOCTL_PANTHOR() - Build a Panthor IOCTL number
|
|
1045
1192
|
* @__access: Access type. Must be R, W or RW.
|
|
@@ -1086,6 +1233,10 @@ enum {
|
|
|
1086
1233
|
DRM_IOCTL_PANTHOR(WR, BO_SET_LABEL, bo_set_label),
|
|
1087
1234
|
DRM_IOCTL_PANTHOR_SET_USER_MMIO_OFFSET =
|
|
1088
1235
|
DRM_IOCTL_PANTHOR(WR, SET_USER_MMIO_OFFSET, set_user_mmio_offset),
|
|
1236
|
+
DRM_IOCTL_PANTHOR_BO_SYNC =
|
|
1237
|
+
DRM_IOCTL_PANTHOR(WR, BO_SYNC, bo_sync),
|
|
1238
|
+
DRM_IOCTL_PANTHOR_BO_QUERY_INFO =
|
|
1239
|
+
DRM_IOCTL_PANTHOR(WR, BO_QUERY_INFO, bo_query_info),
|
|
1089
1240
|
};
|
|
1090
1241
|
|
|
1091
1242
|
#if defined(__cplusplus)
|
|
@@ -26,20 +26,27 @@ extern "C" {
|
|
|
26
26
|
*
|
|
27
27
|
*/
|
|
28
28
|
struct drm_rocket_create_bo {
|
|
29
|
-
/**
|
|
29
|
+
/**
|
|
30
|
+
* @size: Input: Size of the requested BO.
|
|
31
|
+
*/
|
|
30
32
|
__u32 size;
|
|
31
33
|
|
|
32
|
-
/**
|
|
34
|
+
/**
|
|
35
|
+
* @handle: Output: GEM handle for the BO.
|
|
36
|
+
*/
|
|
33
37
|
__u32 handle;
|
|
34
38
|
|
|
35
39
|
/**
|
|
36
|
-
* Output: DMA address for the BO in the NPU address
|
|
37
|
-
* is private to the DRM fd and is valid for
|
|
38
|
-
* handle.
|
|
40
|
+
* @dma_address: Output: DMA address for the BO in the NPU address
|
|
41
|
+
* space. This address is private to the DRM fd and is valid for
|
|
42
|
+
* the lifetime of the GEM handle.
|
|
39
43
|
*/
|
|
40
44
|
__u64 dma_address;
|
|
41
45
|
|
|
42
|
-
/**
|
|
46
|
+
/**
|
|
47
|
+
* @offset: Output: Offset into the drm node to use for subsequent
|
|
48
|
+
* mmap call.
|
|
49
|
+
*/
|
|
43
50
|
__u64 offset;
|
|
44
51
|
};
|
|
45
52
|
|
|
@@ -50,13 +57,19 @@ struct drm_rocket_create_bo {
|
|
|
50
57
|
* synchronization.
|
|
51
58
|
*/
|
|
52
59
|
struct drm_rocket_prep_bo {
|
|
53
|
-
/**
|
|
60
|
+
/**
|
|
61
|
+
* @handle: Input: GEM handle of the buffer object.
|
|
62
|
+
*/
|
|
54
63
|
__u32 handle;
|
|
55
64
|
|
|
56
|
-
/**
|
|
65
|
+
/**
|
|
66
|
+
* @reserved: Reserved, must be zero.
|
|
67
|
+
*/
|
|
57
68
|
__u32 reserved;
|
|
58
69
|
|
|
59
|
-
/**
|
|
70
|
+
/**
|
|
71
|
+
* @timeout_ns: Input: Amount of time to wait for NPU jobs.
|
|
72
|
+
*/
|
|
60
73
|
__s64 timeout_ns;
|
|
61
74
|
};
|
|
62
75
|
|
|
@@ -66,10 +79,14 @@ struct drm_rocket_prep_bo {
|
|
|
66
79
|
* Synchronize caches for NPU access.
|
|
67
80
|
*/
|
|
68
81
|
struct drm_rocket_fini_bo {
|
|
69
|
-
/**
|
|
82
|
+
/**
|
|
83
|
+
* @handle: Input: GEM handle of the buffer object.
|
|
84
|
+
*/
|
|
70
85
|
__u32 handle;
|
|
71
86
|
|
|
72
|
-
/**
|
|
87
|
+
/**
|
|
88
|
+
* @reserved: Reserved, must be zero.
|
|
89
|
+
*/
|
|
73
90
|
__u32 reserved;
|
|
74
91
|
};
|
|
75
92
|
|
|
@@ -79,10 +96,15 @@ struct drm_rocket_fini_bo {
|
|
|
79
96
|
* A task is the smallest unit of work that can be run on the NPU.
|
|
80
97
|
*/
|
|
81
98
|
struct drm_rocket_task {
|
|
82
|
-
/**
|
|
99
|
+
/**
|
|
100
|
+
* @regcmd: Input: DMA address to NPU mapping of register command buffer
|
|
101
|
+
*/
|
|
83
102
|
__u32 regcmd;
|
|
84
103
|
|
|
85
|
-
/**
|
|
104
|
+
/**
|
|
105
|
+
* @regcmd_count: Input: Number of commands in the register command
|
|
106
|
+
* buffer
|
|
107
|
+
*/
|
|
86
108
|
__u32 regcmd_count;
|
|
87
109
|
};
|
|
88
110
|
|
|
@@ -94,25 +116,44 @@ struct drm_rocket_task {
|
|
|
94
116
|
* sequentially on the same core, to benefit from memory residency in SRAM.
|
|
95
117
|
*/
|
|
96
118
|
struct drm_rocket_job {
|
|
97
|
-
/**
|
|
119
|
+
/**
|
|
120
|
+
* @tasks: Input: Pointer to an array of struct drm_rocket_task.
|
|
121
|
+
*/
|
|
98
122
|
__u64 tasks;
|
|
99
123
|
|
|
100
|
-
/**
|
|
124
|
+
/**
|
|
125
|
+
* @in_bo_handles: Input: Pointer to a u32 array of the BOs that
|
|
126
|
+
* are read by the job.
|
|
127
|
+
*/
|
|
101
128
|
__u64 in_bo_handles;
|
|
102
129
|
|
|
103
|
-
/**
|
|
130
|
+
/**
|
|
131
|
+
* @out_bo_handles: Input: Pointer to a u32 array of the BOs that
|
|
132
|
+
* are written to by the job.
|
|
133
|
+
*/
|
|
104
134
|
__u64 out_bo_handles;
|
|
105
135
|
|
|
106
|
-
/**
|
|
136
|
+
/**
|
|
137
|
+
* @task_count: Input: Number of tasks passed in.
|
|
138
|
+
*/
|
|
107
139
|
__u32 task_count;
|
|
108
140
|
|
|
109
|
-
/**
|
|
141
|
+
/**
|
|
142
|
+
* @task_struct_size: Input: Size in bytes of the structs in the
|
|
143
|
+
* @tasks field.
|
|
144
|
+
*/
|
|
110
145
|
__u32 task_struct_size;
|
|
111
146
|
|
|
112
|
-
/**
|
|
147
|
+
/**
|
|
148
|
+
* @in_bo_handle_count: Input: Number of input BO handles passed in
|
|
149
|
+
* (size is that times 4).
|
|
150
|
+
*/
|
|
113
151
|
__u32 in_bo_handle_count;
|
|
114
152
|
|
|
115
|
-
/**
|
|
153
|
+
/**
|
|
154
|
+
* @out_bo_handle_count: Input: Number of output BO handles passed in
|
|
155
|
+
* (size is that times 4).
|
|
156
|
+
*/
|
|
116
157
|
__u32 out_bo_handle_count;
|
|
117
158
|
};
|
|
118
159
|
|
|
@@ -122,16 +163,25 @@ struct drm_rocket_job {
|
|
|
122
163
|
* The kernel will schedule the execution of these jobs in dependency order.
|
|
123
164
|
*/
|
|
124
165
|
struct drm_rocket_submit {
|
|
125
|
-
/**
|
|
166
|
+
/**
|
|
167
|
+
* @jobs: Input: Pointer to an array of struct drm_rocket_job.
|
|
168
|
+
*/
|
|
126
169
|
__u64 jobs;
|
|
127
170
|
|
|
128
|
-
/**
|
|
171
|
+
/**
|
|
172
|
+
* @job_count: Input: Number of jobs passed in.
|
|
173
|
+
*/
|
|
129
174
|
__u32 job_count;
|
|
130
175
|
|
|
131
|
-
/**
|
|
176
|
+
/**
|
|
177
|
+
* @job_struct_size: Input: Size in bytes of the structs in the
|
|
178
|
+
* @jobs field.
|
|
179
|
+
*/
|
|
132
180
|
__u32 job_struct_size;
|
|
133
181
|
|
|
134
|
-
/**
|
|
182
|
+
/**
|
|
183
|
+
* @reserved: Reserved, must be zero.
|
|
184
|
+
*/
|
|
135
185
|
__u64 reserved;
|
|
136
186
|
};
|
|
137
187
|
|
|
@@ -106,6 +106,7 @@ extern "C" {
|
|
|
106
106
|
#define DRM_XE_OBSERVATION 0x0b
|
|
107
107
|
#define DRM_XE_MADVISE 0x0c
|
|
108
108
|
#define DRM_XE_VM_QUERY_MEM_RANGE_ATTRS 0x0d
|
|
109
|
+
#define DRM_XE_EXEC_QUEUE_SET_PROPERTY 0x0e
|
|
109
110
|
|
|
110
111
|
/* Must be kept compact -- no holes */
|
|
111
112
|
|
|
@@ -123,6 +124,7 @@ extern "C" {
|
|
|
123
124
|
#define DRM_IOCTL_XE_OBSERVATION DRM_IOW(DRM_COMMAND_BASE + DRM_XE_OBSERVATION, struct drm_xe_observation_param)
|
|
124
125
|
#define DRM_IOCTL_XE_MADVISE DRM_IOW(DRM_COMMAND_BASE + DRM_XE_MADVISE, struct drm_xe_madvise)
|
|
125
126
|
#define DRM_IOCTL_XE_VM_QUERY_MEM_RANGE_ATTRS DRM_IOWR(DRM_COMMAND_BASE + DRM_XE_VM_QUERY_MEM_RANGE_ATTRS, struct drm_xe_vm_query_mem_range_attr)
|
|
127
|
+
#define DRM_IOCTL_XE_EXEC_QUEUE_SET_PROPERTY DRM_IOW(DRM_COMMAND_BASE + DRM_XE_EXEC_QUEUE_SET_PROPERTY, struct drm_xe_exec_queue_set_property)
|
|
126
128
|
|
|
127
129
|
/**
|
|
128
130
|
* DOC: Xe IOCTL Extensions
|
|
@@ -210,8 +212,12 @@ struct drm_xe_ext_set_property {
|
|
|
210
212
|
/** @pad: MBZ */
|
|
211
213
|
__u32 pad;
|
|
212
214
|
|
|
213
|
-
|
|
214
|
-
|
|
215
|
+
union {
|
|
216
|
+
/** @value: property value */
|
|
217
|
+
__u64 value;
|
|
218
|
+
/** @ptr: pointer to user value */
|
|
219
|
+
__u64 ptr;
|
|
220
|
+
};
|
|
215
221
|
|
|
216
222
|
/** @reserved: Reserved */
|
|
217
223
|
__u64 reserved[2];
|
|
@@ -403,6 +409,9 @@ struct drm_xe_query_mem_regions {
|
|
|
403
409
|
* has low latency hint support
|
|
404
410
|
* - %DRM_XE_QUERY_CONFIG_FLAG_HAS_CPU_ADDR_MIRROR - Flag is set if the
|
|
405
411
|
* device has CPU address mirroring support
|
|
412
|
+
* - %DRM_XE_QUERY_CONFIG_FLAG_HAS_NO_COMPRESSION_HINT - Flag is set if the
|
|
413
|
+
* device supports the userspace hint %DRM_XE_GEM_CREATE_FLAG_NO_COMPRESSION.
|
|
414
|
+
* This is exposed only on Xe2+.
|
|
406
415
|
* - %DRM_XE_QUERY_CONFIG_MIN_ALIGNMENT - Minimal memory alignment
|
|
407
416
|
* required by this device, typically SZ_4K or SZ_64K
|
|
408
417
|
* - %DRM_XE_QUERY_CONFIG_VA_BITS - Maximum bits of a virtual address
|
|
@@ -421,6 +430,7 @@ struct drm_xe_query_config {
|
|
|
421
430
|
#define DRM_XE_QUERY_CONFIG_FLAG_HAS_VRAM (1 << 0)
|
|
422
431
|
#define DRM_XE_QUERY_CONFIG_FLAG_HAS_LOW_LATENCY (1 << 1)
|
|
423
432
|
#define DRM_XE_QUERY_CONFIG_FLAG_HAS_CPU_ADDR_MIRROR (1 << 2)
|
|
433
|
+
#define DRM_XE_QUERY_CONFIG_FLAG_HAS_NO_COMPRESSION_HINT (1 << 3)
|
|
424
434
|
#define DRM_XE_QUERY_CONFIG_MIN_ALIGNMENT 2
|
|
425
435
|
#define DRM_XE_QUERY_CONFIG_VA_BITS 3
|
|
426
436
|
#define DRM_XE_QUERY_CONFIG_MAX_EXEC_QUEUE_PRIORITY 4
|
|
@@ -791,6 +801,17 @@ struct drm_xe_device_query {
|
|
|
791
801
|
* need to use VRAM for display surfaces, therefore the kernel requires
|
|
792
802
|
* setting this flag for such objects, otherwise an error is thrown on
|
|
793
803
|
* small-bar systems.
|
|
804
|
+
* - %DRM_XE_GEM_CREATE_FLAG_NO_COMPRESSION - Allows userspace to
|
|
805
|
+
* hint that compression (CCS) should be disabled for the buffer being
|
|
806
|
+
* created. This can avoid unnecessary memory operations and CCS state
|
|
807
|
+
* management.
|
|
808
|
+
* On pre-Xe2 platforms, this flag is currently rejected as compression
|
|
809
|
+
* control is not supported via PAT index. On Xe2+ platforms, compression
|
|
810
|
+
* is controlled via PAT entries. If this flag is set, the driver will reject
|
|
811
|
+
* any VM bind that requests a PAT index enabling compression for this BO.
|
|
812
|
+
* Note: On dGPU platforms, there is currently no change in behavior with
|
|
813
|
+
* this flag, but future improvements may leverage it. The current benefit is
|
|
814
|
+
* primarily applicable to iGPU platforms.
|
|
794
815
|
*
|
|
795
816
|
* @cpu_caching supports the following values:
|
|
796
817
|
* - %DRM_XE_GEM_CPU_CACHING_WB - Allocate the pages with write-back
|
|
@@ -837,6 +858,7 @@ struct drm_xe_gem_create {
|
|
|
837
858
|
#define DRM_XE_GEM_CREATE_FLAG_DEFER_BACKING (1 << 0)
|
|
838
859
|
#define DRM_XE_GEM_CREATE_FLAG_SCANOUT (1 << 1)
|
|
839
860
|
#define DRM_XE_GEM_CREATE_FLAG_NEEDS_VISIBLE_VRAM (1 << 2)
|
|
861
|
+
#define DRM_XE_GEM_CREATE_FLAG_NO_COMPRESSION (1 << 3)
|
|
840
862
|
/**
|
|
841
863
|
* @flags: Flags, currently a mask of memory instances of where BO can
|
|
842
864
|
* be placed
|
|
@@ -1252,6 +1274,17 @@ struct drm_xe_vm_bind {
|
|
|
1252
1274
|
* Given that going into a power-saving state kills PXP HWDRM sessions,
|
|
1253
1275
|
* runtime PM will be blocked while queues of this type are alive.
|
|
1254
1276
|
* All PXP queues will be killed if a PXP invalidation event occurs.
|
|
1277
|
+
* - %DRM_XE_EXEC_QUEUE_SET_PROPERTY_MULTI_GROUP - Create a multi-queue group
|
|
1278
|
+
* or add secondary queues to a multi-queue group.
|
|
1279
|
+
* If the extension's 'value' field has %DRM_XE_MULTI_GROUP_CREATE flag set,
|
|
1280
|
+
* then a new multi-queue group is created with this queue as the primary queue
|
|
1281
|
+
* (Q0). Otherwise, the queue gets added to the multi-queue group whose primary
|
|
1282
|
+
* queue's exec_queue_id is specified in the lower 32 bits of the 'value' field.
|
|
1283
|
+
* All the other non-relevant bits of extension's 'value' field while adding the
|
|
1284
|
+
* primary or the secondary queues of the group must be set to 0.
|
|
1285
|
+
* - %DRM_XE_EXEC_QUEUE_SET_PROPERTY_MULTI_QUEUE_PRIORITY - Set the queue
|
|
1286
|
+
* priority within the multi-queue group. Current valid priority values are 0–2
|
|
1287
|
+
* (default is 1), with higher values indicating higher priority.
|
|
1255
1288
|
*
|
|
1256
1289
|
* The example below shows how to use @drm_xe_exec_queue_create to create
|
|
1257
1290
|
* a simple exec_queue (no parallel submission) of class
|
|
@@ -1292,6 +1325,10 @@ struct drm_xe_exec_queue_create {
|
|
|
1292
1325
|
#define DRM_XE_EXEC_QUEUE_SET_PROPERTY_PRIORITY 0
|
|
1293
1326
|
#define DRM_XE_EXEC_QUEUE_SET_PROPERTY_TIMESLICE 1
|
|
1294
1327
|
#define DRM_XE_EXEC_QUEUE_SET_PROPERTY_PXP_TYPE 2
|
|
1328
|
+
#define DRM_XE_EXEC_QUEUE_SET_HANG_REPLAY_STATE 3
|
|
1329
|
+
#define DRM_XE_EXEC_QUEUE_SET_PROPERTY_MULTI_GROUP 4
|
|
1330
|
+
#define DRM_XE_MULTI_GROUP_CREATE (1ull << 63)
|
|
1331
|
+
#define DRM_XE_EXEC_QUEUE_SET_PROPERTY_MULTI_QUEUE_PRIORITY 5
|
|
1295
1332
|
/** @extensions: Pointer to the first extension struct, if any */
|
|
1296
1333
|
__u64 extensions;
|
|
1297
1334
|
|
|
@@ -1655,6 +1692,9 @@ enum drm_xe_oa_unit_type {
|
|
|
1655
1692
|
|
|
1656
1693
|
/** @DRM_XE_OA_UNIT_TYPE_OAM_SAG: OAM_SAG OA unit */
|
|
1657
1694
|
DRM_XE_OA_UNIT_TYPE_OAM_SAG,
|
|
1695
|
+
|
|
1696
|
+
/** @DRM_XE_OA_UNIT_TYPE_MERT: MERT OA unit */
|
|
1697
|
+
DRM_XE_OA_UNIT_TYPE_MERT,
|
|
1658
1698
|
};
|
|
1659
1699
|
|
|
1660
1700
|
/**
|
|
@@ -1677,12 +1717,19 @@ struct drm_xe_oa_unit {
|
|
|
1677
1717
|
#define DRM_XE_OA_CAPS_OA_BUFFER_SIZE (1 << 2)
|
|
1678
1718
|
#define DRM_XE_OA_CAPS_WAIT_NUM_REPORTS (1 << 3)
|
|
1679
1719
|
#define DRM_XE_OA_CAPS_OAM (1 << 4)
|
|
1720
|
+
#define DRM_XE_OA_CAPS_OA_UNIT_GT_ID (1 << 5)
|
|
1680
1721
|
|
|
1681
1722
|
/** @oa_timestamp_freq: OA timestamp freq */
|
|
1682
1723
|
__u64 oa_timestamp_freq;
|
|
1683
1724
|
|
|
1725
|
+
/** @gt_id: gt id for this OA unit */
|
|
1726
|
+
__u16 gt_id;
|
|
1727
|
+
|
|
1728
|
+
/** @reserved1: MBZ */
|
|
1729
|
+
__u16 reserved1[3];
|
|
1730
|
+
|
|
1684
1731
|
/** @reserved: MBZ */
|
|
1685
|
-
__u64 reserved[
|
|
1732
|
+
__u64 reserved[3];
|
|
1686
1733
|
|
|
1687
1734
|
/** @num_engines: number of engines in @eci array */
|
|
1688
1735
|
__u64 num_engines;
|
|
@@ -2072,7 +2119,13 @@ struct drm_xe_madvise {
|
|
|
2072
2119
|
struct {
|
|
2073
2120
|
#define DRM_XE_PREFERRED_LOC_DEFAULT_DEVICE 0
|
|
2074
2121
|
#define DRM_XE_PREFERRED_LOC_DEFAULT_SYSTEM -1
|
|
2075
|
-
/**
|
|
2122
|
+
/**
|
|
2123
|
+
* @preferred_mem_loc.devmem_fd:
|
|
2124
|
+
* Device file-descriptor of the device where the
|
|
2125
|
+
* preferred memory is located, or one of the
|
|
2126
|
+
* above special values. Please also see
|
|
2127
|
+
* @preferred_mem_loc.region_instance below.
|
|
2128
|
+
*/
|
|
2076
2129
|
__u32 devmem_fd;
|
|
2077
2130
|
|
|
2078
2131
|
#define DRM_XE_MIGRATE_ALL_PAGES 0
|
|
@@ -2080,8 +2133,14 @@ struct drm_xe_madvise {
|
|
|
2080
2133
|
/** @preferred_mem_loc.migration_policy: Page migration policy */
|
|
2081
2134
|
__u16 migration_policy;
|
|
2082
2135
|
|
|
2083
|
-
/**
|
|
2084
|
-
|
|
2136
|
+
/**
|
|
2137
|
+
* @preferred_mem_loc.region_instance : Region instance.
|
|
2138
|
+
* MBZ if @devmem_fd <= &DRM_XE_PREFERRED_LOC_DEFAULT_DEVICE.
|
|
2139
|
+
* Otherwise should point to the desired device
|
|
2140
|
+
* VRAM instance of the device indicated by
|
|
2141
|
+
* @preferred_mem_loc.devmem_fd.
|
|
2142
|
+
*/
|
|
2143
|
+
__u16 region_instance;
|
|
2085
2144
|
|
|
2086
2145
|
/** @preferred_mem_loc.reserved : Reserved */
|
|
2087
2146
|
__u64 reserved;
|
|
@@ -2274,6 +2333,30 @@ struct drm_xe_vm_query_mem_range_attr {
|
|
|
2274
2333
|
|
|
2275
2334
|
};
|
|
2276
2335
|
|
|
2336
|
+
/**
|
|
2337
|
+
* struct drm_xe_exec_queue_set_property - exec queue set property
|
|
2338
|
+
*
|
|
2339
|
+
* Sets execution queue properties dynamically.
|
|
2340
|
+
* Currently only %DRM_XE_EXEC_QUEUE_SET_PROPERTY_MULTI_QUEUE_PRIORITY
|
|
2341
|
+
* property can be dynamically set.
|
|
2342
|
+
*/
|
|
2343
|
+
struct drm_xe_exec_queue_set_property {
|
|
2344
|
+
/** @extensions: Pointer to the first extension struct, if any */
|
|
2345
|
+
__u64 extensions;
|
|
2346
|
+
|
|
2347
|
+
/** @exec_queue_id: Exec queue ID */
|
|
2348
|
+
__u32 exec_queue_id;
|
|
2349
|
+
|
|
2350
|
+
/** @property: property to set */
|
|
2351
|
+
__u32 property;
|
|
2352
|
+
|
|
2353
|
+
/** @value: property value */
|
|
2354
|
+
__u64 value;
|
|
2355
|
+
|
|
2356
|
+
/** @reserved: Reserved */
|
|
2357
|
+
__u64 reserved[2];
|
|
2358
|
+
};
|
|
2359
|
+
|
|
2277
2360
|
#if defined(__cplusplus)
|
|
2278
2361
|
}
|
|
2279
2362
|
#endif
|
|
@@ -278,7 +278,7 @@ enum {
|
|
|
278
278
|
* NOTE: Two special error codes you should check for when calling
|
|
279
279
|
* in to the driver are:
|
|
280
280
|
*
|
|
281
|
-
* EINTR -- The operation has been
|
|
281
|
+
* EINTR -- The operation has been interrupted. This should be
|
|
282
282
|
* handled by retrying the ioctl() until a different error code
|
|
283
283
|
* is returned.
|
|
284
284
|
*
|
|
@@ -119,6 +119,14 @@ enum bpf_cgroup_iter_order {
|
|
|
119
119
|
BPF_CGROUP_ITER_DESCENDANTS_PRE, /* walk descendants in pre-order. */
|
|
120
120
|
BPF_CGROUP_ITER_DESCENDANTS_POST, /* walk descendants in post-order. */
|
|
121
121
|
BPF_CGROUP_ITER_ANCESTORS_UP, /* walk ancestors upward. */
|
|
122
|
+
/*
|
|
123
|
+
* Walks the immediate children of the specified parent
|
|
124
|
+
* cgroup_subsys_state. Unlike BPF_CGROUP_ITER_DESCENDANTS_PRE,
|
|
125
|
+
* BPF_CGROUP_ITER_DESCENDANTS_POST, and BPF_CGROUP_ITER_ANCESTORS_UP
|
|
126
|
+
* the iterator does not include the specified parent as one of the
|
|
127
|
+
* returned iterator elements.
|
|
128
|
+
*/
|
|
129
|
+
BPF_CGROUP_ITER_CHILDREN,
|
|
122
130
|
};
|
|
123
131
|
|
|
124
132
|
union bpf_iter_link_info {
|
|
@@ -918,6 +926,16 @@ union bpf_iter_link_info {
|
|
|
918
926
|
* Number of bytes read from the stream on success, or -1 if an
|
|
919
927
|
* error occurred (in which case, *errno* is set appropriately).
|
|
920
928
|
*
|
|
929
|
+
* BPF_PROG_ASSOC_STRUCT_OPS
|
|
930
|
+
* Description
|
|
931
|
+
* Associate a BPF program with a struct_ops map. The struct_ops
|
|
932
|
+
* map is identified by *map_fd* and the BPF program is
|
|
933
|
+
* identified by *prog_fd*.
|
|
934
|
+
*
|
|
935
|
+
* Return
|
|
936
|
+
* 0 on success or -1 if an error occurred (in which case,
|
|
937
|
+
* *errno* is set appropriately).
|
|
938
|
+
*
|
|
921
939
|
* NOTES
|
|
922
940
|
* eBPF objects (maps and programs) can be shared between processes.
|
|
923
941
|
*
|
|
@@ -974,6 +992,7 @@ enum bpf_cmd {
|
|
|
974
992
|
BPF_PROG_BIND_MAP,
|
|
975
993
|
BPF_TOKEN_CREATE,
|
|
976
994
|
BPF_PROG_STREAM_READ_BY_FD,
|
|
995
|
+
BPF_PROG_ASSOC_STRUCT_OPS,
|
|
977
996
|
__MAX_BPF_CMD,
|
|
978
997
|
};
|
|
979
998
|
|
|
@@ -1134,6 +1153,7 @@ enum bpf_attach_type {
|
|
|
1134
1153
|
BPF_NETKIT_PEER,
|
|
1135
1154
|
BPF_TRACE_KPROBE_SESSION,
|
|
1136
1155
|
BPF_TRACE_UPROBE_SESSION,
|
|
1156
|
+
BPF_TRACE_FSESSION,
|
|
1137
1157
|
__MAX_BPF_ATTACH_TYPE
|
|
1138
1158
|
};
|
|
1139
1159
|
|
|
@@ -1373,6 +1393,8 @@ enum {
|
|
|
1373
1393
|
BPF_NOEXIST = 1, /* create new element if it didn't exist */
|
|
1374
1394
|
BPF_EXIST = 2, /* update existing element */
|
|
1375
1395
|
BPF_F_LOCK = 4, /* spin_lock-ed map_lookup/map_update */
|
|
1396
|
+
BPF_F_CPU = 8, /* cpu flag for percpu maps, upper 32-bit of flags is a cpu number */
|
|
1397
|
+
BPF_F_ALL_CPUS = 16, /* update value across all CPUs for percpu maps */
|
|
1376
1398
|
};
|
|
1377
1399
|
|
|
1378
1400
|
/* flags for BPF_MAP_CREATE command */
|
|
@@ -1894,6 +1916,12 @@ union bpf_attr {
|
|
|
1894
1916
|
__u32 prog_fd;
|
|
1895
1917
|
} prog_stream_read;
|
|
1896
1918
|
|
|
1919
|
+
struct {
|
|
1920
|
+
__u32 map_fd;
|
|
1921
|
+
__u32 prog_fd;
|
|
1922
|
+
__u32 flags;
|
|
1923
|
+
} prog_assoc_struct_ops;
|
|
1924
|
+
|
|
1897
1925
|
} __attribute__((aligned(8)));
|
|
1898
1926
|
|
|
1899
1927
|
/* The description below is an attempt at providing documentation to eBPF
|
|
@@ -334,6 +334,7 @@ struct btrfs_ioctl_fs_info_args {
|
|
|
334
334
|
#define BTRFS_FEATURE_INCOMPAT_EXTENT_TREE_V2 (1ULL << 13)
|
|
335
335
|
#define BTRFS_FEATURE_INCOMPAT_RAID_STRIPE_TREE (1ULL << 14)
|
|
336
336
|
#define BTRFS_FEATURE_INCOMPAT_SIMPLE_QUOTA (1ULL << 16)
|
|
337
|
+
#define BTRFS_FEATURE_INCOMPAT_REMAP_TREE (1ULL << 17)
|
|
337
338
|
|
|
338
339
|
struct btrfs_ioctl_feature_flags {
|
|
339
340
|
__u64 compat_flags;
|