CMakeLists.txt | 9 +- build.zig | 11 +- ci/azure/macos_script | 2 +- ci/azure/pipelines.yml | 2 +- ci/drone/drone.yml | 18 +- ci/srht/freebsd_script | 2 +- ci/zinc/drone.yml | 14 +- cmake/Findclang.cmake | 8 +- cmake/Findlld.cmake | 32 +- cmake/Findllvm.cmake | 21 +- lib/c.zig | 8 +- lib/compiler_rt/common.zig | 9 +- lib/include/__clang_cuda_intrinsics.h | 12 +- lib/include/__wmmintrin_pclmul.h | 20 +- lib/include/altivec.h | 735 +- lib/include/amxintrin.h | 2 - lib/include/arm_sve.h | 126 +- lib/include/avx2intrin.h | 16 +- lib/include/avx512bwintrin.h | 24 +- lib/include/avx512fintrin.h | 149 +- lib/include/avx512vlbf16intrin.h | 2 +- lib/include/avx512vlbwintrin.h | 16 +- lib/include/avx512vlintrin.h | 176 +- lib/include/avx512vlvnniintrin.h | 32 +- lib/include/avxintrin.h | 95 +- lib/include/avxvnniintrin.h | 32 +- lib/include/bmiintrin.h | 8 +- lib/include/cetintrin.h | 18 +- lib/include/cpuid.h | 1 + lib/include/emmintrin.h | 1318 +- lib/include/f16cintrin.h | 6 +- lib/include/hlsl.h | 15 + lib/include/hlsl_basic_types.h | 64 + lib/include/hlsl_intrinsics.h | 15 + lib/include/hresetintrin.h | 4 +- lib/include/ia32intrin.h | 22 +- lib/include/immintrin.h | 30 +- lib/include/intrin.h | 33 +- lib/include/keylockerintrin.h | 44 +- lib/include/mm_malloc.h | 6 +- lib/include/opencl-c-base.h | 10 + lib/include/opencl-c.h | 13814 +++-- lib/include/pmmintrin.h | 2 +- lib/include/ppc_wrappers/bmi2intrin.h | 134 + lib/include/ppc_wrappers/bmiintrin.h | 165 + lib/include/ppc_wrappers/emmintrin.h | 2925 +- lib/include/ppc_wrappers/immintrin.h | 27 + lib/include/ppc_wrappers/mm_malloc.h | 29 +- lib/include/ppc_wrappers/mmintrin.h | 776 +- lib/include/ppc_wrappers/pmmintrin.h | 154 +- lib/include/ppc_wrappers/smmintrin.h | 587 +- lib/include/ppc_wrappers/tmmintrin.h | 649 +- lib/include/ppc_wrappers/x86gprintrin.h | 17 + lib/include/ppc_wrappers/x86intrin.h | 28 + lib/include/ppc_wrappers/xmmintrin.h | 2071 +- lib/include/rdpruintrin.h | 57 + lib/include/rdseedintrin.h | 6 +- lib/include/riscv_vector.h | 95319 +------------------------------- lib/include/rtmintrin.h | 2 +- lib/include/smmintrin.h | 491 +- lib/include/stdatomic.h | 7 +- lib/include/stdbool.h | 15 +- lib/include/stddef.h | 2 +- lib/include/stdnoreturn.h | 13 + lib/include/uintrintrin.h | 16 +- lib/include/unwind.h | 13 +- lib/include/velintrin.h | 71 + lib/include/velintrin_approx.h | 120 + lib/include/velintrin_gen.h | 1257 + lib/include/wasm_simd128.h | 4 +- lib/include/x86gprintrin.h | 28 +- lib/include/x86intrin.h | 4 + lib/include/xmmintrin.h | 12 +- lib/libcxx/include/__algorithm/adjacent_find.h | 34 +- lib/libcxx/include/__algorithm/all_of.h | 2 +- lib/libcxx/include/__algorithm/any_of.h | 2 +- lib/libcxx/include/__algorithm/binary_search.h | 24 +- lib/libcxx/include/__algorithm/clamp.h | 8 +- lib/libcxx/include/__algorithm/comp.h | 2 +- lib/libcxx/include/__algorithm/comp_ref_type.h | 23 +- lib/libcxx/include/__algorithm/copy.h | 109 +- lib/libcxx/include/__algorithm/copy_backward.h | 78 +- lib/libcxx/include/__algorithm/copy_if.h | 2 +- lib/libcxx/include/__algorithm/copy_n.h | 2 +- lib/libcxx/include/__algorithm/count.h | 6 +- lib/libcxx/include/__algorithm/count_if.h | 2 +- lib/libcxx/include/__algorithm/equal.h | 2 +- lib/libcxx/include/__algorithm/equal_range.h | 96 +- lib/libcxx/include/__algorithm/fill.h | 16 +- lib/libcxx/include/__algorithm/fill_n.h | 12 +- lib/libcxx/include/__algorithm/find.h | 6 +- lib/libcxx/include/__algorithm/find_end.h | 183 +- lib/libcxx/include/__algorithm/find_first_of.h | 5 +- lib/libcxx/include/__algorithm/find_if.h | 2 +- lib/libcxx/include/__algorithm/find_if_not.h | 2 +- lib/libcxx/include/__algorithm/for_each.h | 2 +- lib/libcxx/include/__algorithm/for_each_n.h | 2 +- lib/libcxx/include/__algorithm/generate.h | 2 +- lib/libcxx/include/__algorithm/generate_n.h | 2 +- lib/libcxx/include/__algorithm/half_positive.h | 2 +- lib/libcxx/include/__algorithm/in_found_result.h | 49 + lib/libcxx/include/__algorithm/in_fun_result.h | 49 + lib/libcxx/include/__algorithm/in_in_out_result.h | 30 +- lib/libcxx/include/__algorithm/in_in_result.h | 26 +- lib/libcxx/include/__algorithm/in_out_out_result.h | 54 + lib/libcxx/include/__algorithm/in_out_result.h | 27 +- lib/libcxx/include/__algorithm/includes.h | 69 +- lib/libcxx/include/__algorithm/inplace_merge.h | 131 +- lib/libcxx/include/__algorithm/is_heap.h | 4 +- lib/libcxx/include/__algorithm/is_heap_until.h | 6 +- lib/libcxx/include/__algorithm/is_partitioned.h | 2 +- lib/libcxx/include/__algorithm/is_permutation.h | 261 +- lib/libcxx/include/__algorithm/is_sorted.h | 2 +- lib/libcxx/include/__algorithm/is_sorted_until.h | 2 +- lib/libcxx/include/__algorithm/iter_swap.h | 2 +- lib/libcxx/include/__algorithm/iterator_operations.h | 172 + lib/libcxx/include/__algorithm/lexicographical_compare.h | 2 +- lib/libcxx/include/__algorithm/lower_bound.h | 70 +- lib/libcxx/include/__algorithm/make_heap.h | 48 +- lib/libcxx/include/__algorithm/make_projected.h | 126 + lib/libcxx/include/__algorithm/max.h | 2 +- lib/libcxx/include/__algorithm/max_element.h | 2 +- lib/libcxx/include/__algorithm/merge.h | 2 +- lib/libcxx/include/__algorithm/min.h | 2 +- lib/libcxx/include/__algorithm/min_element.h | 46 +- lib/libcxx/include/__algorithm/min_max_result.h | 56 + lib/libcxx/include/__algorithm/minmax.h | 52 +- lib/libcxx/include/__algorithm/minmax_element.h | 122 +- lib/libcxx/include/__algorithm/mismatch.h | 4 +- lib/libcxx/include/__algorithm/move.h | 123 +- lib/libcxx/include/__algorithm/move_backward.h | 42 +- lib/libcxx/include/__algorithm/next_permutation.h | 38 +- lib/libcxx/include/__algorithm/none_of.h | 2 +- lib/libcxx/include/__algorithm/nth_element.h | 73 +- lib/libcxx/include/__algorithm/partial_sort.h | 79 +- lib/libcxx/include/__algorithm/partial_sort_copy.h | 44 +- lib/libcxx/include/__algorithm/partition.h | 51 +- lib/libcxx/include/__algorithm/partition_copy.h | 4 +- lib/libcxx/include/__algorithm/partition_point.h | 6 +- lib/libcxx/include/__algorithm/pop_heap.h | 63 +- lib/libcxx/include/__algorithm/prev_permutation.h | 38 +- lib/libcxx/include/__algorithm/push_heap.h | 80 +- lib/libcxx/include/__algorithm/ranges_adjacent_find.h | 78 + lib/libcxx/include/__algorithm/ranges_all_of.h | 68 + lib/libcxx/include/__algorithm/ranges_any_of.h | 68 + lib/libcxx/include/__algorithm/ranges_binary_search.h | 63 + lib/libcxx/include/__algorithm/ranges_clamp.h | 65 + lib/libcxx/include/__algorithm/ranges_copy.h | 65 + lib/libcxx/include/__algorithm/ranges_copy_backward.h | 66 + lib/libcxx/include/__algorithm/ranges_copy_if.h | 81 + lib/libcxx/include/__algorithm/ranges_copy_n.h | 76 + lib/libcxx/include/__algorithm/ranges_count.h | 62 + lib/libcxx/include/__algorithm/ranges_count_if.h | 72 + lib/libcxx/include/__algorithm/ranges_equal.h | 115 + lib/libcxx/include/__algorithm/ranges_equal_range.h | 77 + lib/libcxx/include/__algorithm/ranges_fill.h | 59 + lib/libcxx/include/__algorithm/ranges_fill_n.h | 48 + lib/libcxx/include/__algorithm/ranges_find.h | 63 + lib/libcxx/include/__algorithm/ranges_find_end.h | 97 + lib/libcxx/include/__algorithm/ranges_find_first_of.h | 101 + lib/libcxx/include/__algorithm/ranges_find_if.h | 71 + lib/libcxx/include/__algorithm/ranges_find_if_not.h | 63 + lib/libcxx/include/__algorithm/ranges_for_each.h | 78 + lib/libcxx/include/__algorithm/ranges_for_each_n.h | 66 + lib/libcxx/include/__algorithm/ranges_generate.h | 73 + lib/libcxx/include/__algorithm/ranges_generate_n.h | 62 + lib/libcxx/include/__algorithm/ranges_includes.h | 95 + lib/libcxx/include/__algorithm/ranges_inplace_merge.h | 85 + lib/libcxx/include/__algorithm/ranges_is_heap.h | 74 + lib/libcxx/include/__algorithm/ranges_is_heap_until.h | 75 + lib/libcxx/include/__algorithm/ranges_is_partitioned.h | 81 + lib/libcxx/include/__algorithm/ranges_is_permutation.h | 89 + lib/libcxx/include/__algorithm/ranges_is_sorted.h | 61 + lib/libcxx/include/__algorithm/ranges_is_sorted_until.h | 76 + lib/libcxx/include/__algorithm/ranges_iterator_concept.h | 51 + lib/libcxx/include/__algorithm/ranges_lexicographical_compare.h | 98 + lib/libcxx/include/__algorithm/ranges_lower_bound.h | 66 + lib/libcxx/include/__algorithm/ranges_make_heap.h | 80 + lib/libcxx/include/__algorithm/ranges_max.h | 93 + lib/libcxx/include/__algorithm/ranges_max_element.h | 61 + lib/libcxx/include/__algorithm/ranges_merge.h | 142 + lib/libcxx/include/__algorithm/ranges_min.h | 89 + lib/libcxx/include/__algorithm/ranges_min_element.h | 74 + lib/libcxx/include/__algorithm/ranges_minmax.h | 133 + lib/libcxx/include/__algorithm/ranges_minmax_element.h | 72 + lib/libcxx/include/__algorithm/ranges_mismatch.h | 85 + lib/libcxx/include/__algorithm/ranges_move.h | 72 + lib/libcxx/include/__algorithm/ranges_move_backward.h | 76 + lib/libcxx/include/__algorithm/ranges_next_permutation.h | 72 + lib/libcxx/include/__algorithm/ranges_none_of.h | 68 + lib/libcxx/include/__algorithm/ranges_nth_element.h | 80 + lib/libcxx/include/__algorithm/ranges_partial_sort.h | 77 + lib/libcxx/include/__algorithm/ranges_partial_sort_copy.h | 91 + lib/libcxx/include/__algorithm/ranges_partition.h | 82 + lib/libcxx/include/__algorithm/ranges_partition_copy.h | 98 + lib/libcxx/include/__algorithm/ranges_partition_point.h | 88 + lib/libcxx/include/__algorithm/ranges_pop_heap.h | 81 + lib/libcxx/include/__algorithm/ranges_prev_permutation.h | 76 + lib/libcxx/include/__algorithm/ranges_push_heap.h | 80 + lib/libcxx/include/__algorithm/ranges_remove.h | 64 + lib/libcxx/include/__algorithm/ranges_remove_copy.h | 76 + lib/libcxx/include/__algorithm/ranges_remove_copy_if.h | 90 + lib/libcxx/include/__algorithm/ranges_remove_if.h | 85 + lib/libcxx/include/__algorithm/ranges_replace.h | 74 + lib/libcxx/include/__algorithm/ranges_replace_copy.h | 91 + lib/libcxx/include/__algorithm/ranges_replace_copy_if.h | 93 + lib/libcxx/include/__algorithm/ranges_replace_if.h | 77 + lib/libcxx/include/__algorithm/ranges_reverse.h | 83 + lib/libcxx/include/__algorithm/ranges_reverse_copy.h | 67 + lib/libcxx/include/__algorithm/ranges_rotate.h | 71 + lib/libcxx/include/__algorithm/ranges_rotate_copy.h | 68 + lib/libcxx/include/__algorithm/ranges_sample.h | 74 + lib/libcxx/include/__algorithm/ranges_search.h | 134 + lib/libcxx/include/__algorithm/ranges_search_n.h | 120 + lib/libcxx/include/__algorithm/ranges_set_difference.h | 104 + lib/libcxx/include/__algorithm/ranges_set_intersection.h | 117 + lib/libcxx/include/__algorithm/ranges_set_symmetric_difference.h | 116 + lib/libcxx/include/__algorithm/ranges_set_union.h | 120 + lib/libcxx/include/__algorithm/ranges_shuffle.h | 71 + lib/libcxx/include/__algorithm/ranges_sort.h | 79 + lib/libcxx/include/__algorithm/ranges_sort_heap.h | 80 + lib/libcxx/include/__algorithm/ranges_stable_partition.h | 88 + lib/libcxx/include/__algorithm/ranges_stable_sort.h | 79 + lib/libcxx/include/__algorithm/ranges_swap_ranges.h | 68 + lib/libcxx/include/__algorithm/ranges_transform.h | 170 + lib/libcxx/include/__algorithm/ranges_unique.h | 78 + lib/libcxx/include/__algorithm/ranges_unique_copy.h | 115 + lib/libcxx/include/__algorithm/ranges_upper_bound.h | 75 + lib/libcxx/include/__algorithm/remove.h | 8 +- lib/libcxx/include/__algorithm/remove_copy.h | 6 +- lib/libcxx/include/__algorithm/remove_copy_if.h | 2 +- lib/libcxx/include/__algorithm/remove_if.h | 4 +- lib/libcxx/include/__algorithm/replace.h | 2 +- lib/libcxx/include/__algorithm/replace_copy.h | 2 +- lib/libcxx/include/__algorithm/replace_copy_if.h | 2 +- lib/libcxx/include/__algorithm/replace_if.h | 2 +- lib/libcxx/include/__algorithm/reverse.h | 25 +- lib/libcxx/include/__algorithm/reverse_copy.h | 2 +- lib/libcxx/include/__algorithm/rotate.h | 115 +- lib/libcxx/include/__algorithm/rotate_copy.h | 2 +- lib/libcxx/include/__algorithm/sample.h | 56 +- lib/libcxx/include/__algorithm/search.h | 180 +- lib/libcxx/include/__algorithm/search_n.h | 161 +- lib/libcxx/include/__algorithm/set_difference.h | 83 +- lib/libcxx/include/__algorithm/set_intersection.h | 103 +- lib/libcxx/include/__algorithm/set_symmetric_difference.h | 113 +- lib/libcxx/include/__algorithm/set_union.h | 104 +- lib/libcxx/include/__algorithm/shift_left.h | 2 +- lib/libcxx/include/__algorithm/shift_right.h | 2 +- lib/libcxx/include/__algorithm/shuffle.h | 28 +- lib/libcxx/include/__algorithm/sift_down.h | 46 +- lib/libcxx/include/__algorithm/sort.h | 1047 +- lib/libcxx/include/__algorithm/sort_heap.h | 43 +- lib/libcxx/include/__algorithm/stable_partition.h | 105 +- lib/libcxx/include/__algorithm/stable_sort.h | 120 +- lib/libcxx/include/__algorithm/swap_ranges.h | 40 +- lib/libcxx/include/__algorithm/transform.h | 2 +- lib/libcxx/include/__algorithm/uniform_random_bit_generator_adaptor.h | 62 + lib/libcxx/include/__algorithm/unique.h | 50 +- lib/libcxx/include/__algorithm/unique_copy.h | 150 +- lib/libcxx/include/__algorithm/unwrap_iter.h | 74 +- lib/libcxx/include/__algorithm/unwrap_range.h | 97 + lib/libcxx/include/__algorithm/upper_bound.h | 70 +- lib/libcxx/include/__assert | 59 + lib/libcxx/include/__availability | 78 +- lib/libcxx/include/__bit/bit_cast.h | 16 +- lib/libcxx/include/__bit/byteswap.h | 4 +- lib/libcxx/include/__bit_reference | 289 +- lib/libcxx/include/__bits | 19 +- lib/libcxx/include/__bsd_locale_defaults.h | 8 +- lib/libcxx/include/__bsd_locale_fallbacks.h | 8 +- lib/libcxx/include/__charconv/chars_format.h | 2 +- lib/libcxx/include/__charconv/from_chars_result.h | 2 +- lib/libcxx/include/__charconv/tables.h | 180 + lib/libcxx/include/__charconv/to_chars_base_10.h | 185 + lib/libcxx/include/__charconv/to_chars_result.h | 2 +- lib/libcxx/include/__chrono/calendar.h | 1236 +- lib/libcxx/include/__chrono/convert_to_timespec.h | 2 +- lib/libcxx/include/__chrono/day.h | 84 + lib/libcxx/include/__chrono/duration.h | 10 +- lib/libcxx/include/__chrono/file_clock.h | 2 +- lib/libcxx/include/__chrono/hh_mm_ss.h | 112 + lib/libcxx/include/__chrono/high_resolution_clock.h | 2 +- lib/libcxx/include/__chrono/literals.h | 49 + lib/libcxx/include/__chrono/month.h | 118 + lib/libcxx/include/__chrono/month_weekday.h | 106 + lib/libcxx/include/__chrono/monthday.h | 160 + lib/libcxx/include/__chrono/steady_clock.h | 2 +- lib/libcxx/include/__chrono/system_clock.h | 2 +- lib/libcxx/include/__chrono/time_point.h | 6 +- lib/libcxx/include/__chrono/weekday.h | 185 + lib/libcxx/include/__chrono/year.h | 117 + lib/libcxx/include/__chrono/year_month.h | 114 + lib/libcxx/include/__chrono/year_month_day.h | 323 + lib/libcxx/include/__chrono/year_month_weekday.h | 255 + lib/libcxx/include/__compare/common_comparison_category.h | 2 +- lib/libcxx/include/__compare/compare_partial_order_fallback.h | 6 +- lib/libcxx/include/__compare/compare_strong_order_fallback.h | 6 +- lib/libcxx/include/__compare/compare_three_way.h | 6 +- lib/libcxx/include/__compare/compare_three_way_result.h | 2 +- lib/libcxx/include/__compare/compare_weak_order_fallback.h | 6 +- lib/libcxx/include/__compare/is_eq.h | 2 +- lib/libcxx/include/__compare/ordering.h | 2 +- lib/libcxx/include/__compare/partial_order.h | 6 +- lib/libcxx/include/__compare/strong_order.h | 6 +- lib/libcxx/include/__compare/synth_three_way.h | 8 +- lib/libcxx/include/__compare/three_way_comparable.h | 6 +- lib/libcxx/include/__compare/weak_order.h | 6 +- lib/libcxx/include/__concepts/arithmetic.h | 8 +- lib/libcxx/include/__concepts/assignable.h | 6 +- lib/libcxx/include/__concepts/boolean_testable.h | 6 +- lib/libcxx/include/__concepts/class_or_enum.h | 7 +- lib/libcxx/include/__concepts/common_reference_with.h | 6 +- lib/libcxx/include/__concepts/common_with.h | 6 +- lib/libcxx/include/__concepts/constructible.h | 6 +- lib/libcxx/include/__concepts/convertible_to.h | 6 +- lib/libcxx/include/__concepts/copyable.h | 6 +- lib/libcxx/include/__concepts/derived_from.h | 6 +- lib/libcxx/include/__concepts/destructible.h | 6 +- lib/libcxx/include/__concepts/different_from.h | 6 +- lib/libcxx/include/__concepts/equality_comparable.h | 6 +- lib/libcxx/include/__concepts/invocable.h | 6 +- lib/libcxx/include/__concepts/movable.h | 6 +- lib/libcxx/include/__concepts/predicate.h | 6 +- lib/libcxx/include/__concepts/regular.h | 6 +- lib/libcxx/include/__concepts/relation.h | 6 +- lib/libcxx/include/__concepts/same_as.h | 6 +- lib/libcxx/include/__concepts/semiregular.h | 6 +- lib/libcxx/include/__concepts/swappable.h | 6 +- lib/libcxx/include/__concepts/totally_ordered.h | 6 +- lib/libcxx/include/__config | 1955 +- lib/libcxx/include/__coroutine/coroutine_handle.h | 4 +- lib/libcxx/include/__coroutine/coroutine_traits.h | 2 +- lib/libcxx/include/__coroutine/noop_coroutine_handle.h | 4 +- lib/libcxx/include/__coroutine/trivial_awaitables.h | 2 +- lib/libcxx/include/__debug | 143 +- lib/libcxx/include/__debug_utils/randomize_range.h | 43 + lib/libcxx/include/__errc | 2 +- lib/libcxx/include/__filesystem/copy_options.h | 38 +- lib/libcxx/include/__filesystem/directory_entry.h | 21 +- lib/libcxx/include/__filesystem/directory_iterator.h | 39 +- lib/libcxx/include/__filesystem/directory_options.h | 50 +- lib/libcxx/include/__filesystem/file_status.h | 4 + lib/libcxx/include/__filesystem/file_time_type.h | 7 +- lib/libcxx/include/__filesystem/file_type.h | 4 + lib/libcxx/include/__filesystem/filesystem_error.h | 4 + lib/libcxx/include/__filesystem/operations.h | 220 +- lib/libcxx/include/__filesystem/path.h | 228 +- lib/libcxx/include/__filesystem/path_iterator.h | 6 +- lib/libcxx/include/__filesystem/perm_options.h | 38 +- lib/libcxx/include/__filesystem/perms.h | 32 +- lib/libcxx/include/__filesystem/recursive_directory_iterator.h | 8 +- lib/libcxx/include/__filesystem/space_info.h | 4 + lib/libcxx/include/__filesystem/u8path.h | 12 + lib/libcxx/include/__format/buffer.h | 369 + lib/libcxx/include/__format/concepts.h | 53 + lib/libcxx/include/__format/enable_insertable.h | 35 + lib/libcxx/include/__format/extended_grapheme_cluster_table.h | 332 + lib/libcxx/include/__format/format_arg.h | 324 +- lib/libcxx/include/__format/format_arg_store.h | 253 + lib/libcxx/include/__format/format_args.h | 58 +- lib/libcxx/include/__format/format_context.h | 34 +- lib/libcxx/include/__format/format_error.h | 2 +- lib/libcxx/include/__format/format_fwd.h | 25 +- lib/libcxx/include/__format/format_parse_context.h | 10 +- lib/libcxx/include/__format/format_string.h | 12 +- lib/libcxx/include/__format/format_to_n_result.h | 7 - lib/libcxx/include/__format/formatter.h | 240 +- lib/libcxx/include/__format/formatter_bool.h | 135 +- lib/libcxx/include/__format/formatter_char.h | 100 +- lib/libcxx/include/__format/formatter_floating_point.h | 428 +- lib/libcxx/include/__format/formatter_integer.h | 171 +- lib/libcxx/include/__format/formatter_integral.h | 609 +- lib/libcxx/include/__format/formatter_output.h | 308 + lib/libcxx/include/__format/formatter_pointer.h | 62 +- lib/libcxx/include/__format/formatter_string.h | 119 +- lib/libcxx/include/__format/parser_std_format_spec.h | 1846 +- lib/libcxx/include/__format/unicode.h | 339 + lib/libcxx/include/__functional/binary_function.h | 27 +- lib/libcxx/include/__functional/binary_negate.h | 8 +- lib/libcxx/include/__functional/bind.h | 15 +- lib/libcxx/include/__functional/bind_back.h | 13 +- lib/libcxx/include/__functional/bind_front.h | 4 +- lib/libcxx/include/__functional/binder1st.h | 5 +- lib/libcxx/include/__functional/binder2nd.h | 5 +- lib/libcxx/include/__functional/boyer_moore_searcher.h | 313 + lib/libcxx/include/__functional/compose.h | 2 +- lib/libcxx/include/__functional/default_searcher.h | 12 +- lib/libcxx/include/__functional/function.h | 25 +- lib/libcxx/include/__functional/hash.h | 231 +- lib/libcxx/include/__functional/identity.h | 13 +- lib/libcxx/include/__functional/invoke.h | 532 +- lib/libcxx/include/__functional/is_transparent.h | 2 +- lib/libcxx/include/__functional/mem_fn.h | 114 +- lib/libcxx/include/__functional/mem_fun_ref.h | 18 +- lib/libcxx/include/__functional/not_fn.h | 5 +- lib/libcxx/include/__functional/operations.h | 208 +- lib/libcxx/include/__functional/perfect_forward.h | 105 +- lib/libcxx/include/__functional/pointer_to_binary_function.h | 4 +- lib/libcxx/include/__functional/pointer_to_unary_function.h | 4 +- lib/libcxx/include/__functional/ranges_operations.h | 9 +- lib/libcxx/include/__functional/reference_wrapper.h | 116 +- lib/libcxx/include/__functional/unary_function.h | 26 +- lib/libcxx/include/__functional/unary_negate.h | 4 +- lib/libcxx/include/__functional/unwrap_ref.h | 2 +- lib/libcxx/include/__functional/weak_result_type.h | 304 +- lib/libcxx/include/__functional_base | 32 - lib/libcxx/include/__fwd/span.h | 37 + lib/libcxx/include/__fwd/string_view.h | 37 + lib/libcxx/include/__hash_table | 263 +- lib/libcxx/include/__ios/fpos.h | 79 + lib/libcxx/include/__iterator/access.h | 2 +- lib/libcxx/include/__iterator/advance.h | 54 +- lib/libcxx/include/__iterator/back_insert_iterator.h | 12 +- lib/libcxx/include/__iterator/bounded_iter.h | 229 + lib/libcxx/include/__iterator/common_iterator.h | 39 +- lib/libcxx/include/__iterator/concepts.h | 24 +- lib/libcxx/include/__iterator/counted_iterator.h | 10 +- lib/libcxx/include/__iterator/data.h | 2 +- lib/libcxx/include/__iterator/default_sentinel.h | 6 +- lib/libcxx/include/__iterator/distance.h | 6 +- lib/libcxx/include/__iterator/empty.h | 2 +- lib/libcxx/include/__iterator/erase_if_container.h | 2 +- lib/libcxx/include/__iterator/front_insert_iterator.h | 10 +- lib/libcxx/include/__iterator/incrementable_traits.h | 8 +- lib/libcxx/include/__iterator/indirectly_comparable.h | 8 +- lib/libcxx/include/__iterator/insert_iterator.h | 12 +- lib/libcxx/include/__iterator/istream_iterator.h | 15 +- lib/libcxx/include/__iterator/istreambuf_iterator.h | 18 +- lib/libcxx/include/__iterator/iter_move.h | 74 +- lib/libcxx/include/__iterator/iter_swap.h | 6 +- lib/libcxx/include/__iterator/iterator.h | 2 +- lib/libcxx/include/__iterator/iterator_traits.h | 92 +- lib/libcxx/include/__iterator/mergeable.h | 41 + lib/libcxx/include/__iterator/move_iterator.h | 175 +- lib/libcxx/include/__iterator/move_sentinel.h | 57 + lib/libcxx/include/__iterator/next.h | 18 +- lib/libcxx/include/__iterator/ostream_iterator.h | 7 +- lib/libcxx/include/__iterator/ostreambuf_iterator.h | 3 +- lib/libcxx/include/__iterator/permutable.h | 35 + lib/libcxx/include/__iterator/prev.h | 13 +- lib/libcxx/include/__iterator/projected.h | 6 +- lib/libcxx/include/__iterator/readable_traits.h | 6 +- lib/libcxx/include/__iterator/reverse_access.h | 8 +- lib/libcxx/include/__iterator/reverse_iterator.h | 339 +- lib/libcxx/include/__iterator/size.h | 7 +- lib/libcxx/include/__iterator/sortable.h | 37 + lib/libcxx/include/__iterator/unreachable_sentinel.h | 6 +- lib/libcxx/include/__iterator/wrap_iter.h | 16 +- lib/libcxx/include/__libcpp_version | 1 - lib/libcxx/include/__locale | 34 +- lib/libcxx/include/__mbstate_t.h | 2 +- lib/libcxx/include/__memory/addressof.h | 2 +- lib/libcxx/include/__memory/allocate_at_least.h | 61 + lib/libcxx/include/__memory/allocation_guard.h | 4 +- lib/libcxx/include/__memory/allocator.h | 25 +- lib/libcxx/include/__memory/allocator_arg_t.h | 4 +- lib/libcxx/include/__memory/allocator_traits.h | 2 +- lib/libcxx/include/__memory/assume_aligned.h | 46 + lib/libcxx/include/__memory/auto_ptr.h | 7 +- lib/libcxx/include/__memory/compressed_pair.h | 157 +- lib/libcxx/include/__memory/concepts.h | 6 +- lib/libcxx/include/__memory/construct_at.h | 31 +- lib/libcxx/include/__memory/pointer_traits.h | 37 +- lib/libcxx/include/__memory/ranges_construct_at.h | 6 +- lib/libcxx/include/__memory/ranges_uninitialized_algorithms.h | 6 +- lib/libcxx/include/__memory/raw_storage_iterator.h | 7 +- lib/libcxx/include/__memory/shared_ptr.h | 277 +- lib/libcxx/include/__memory/swap_allocator.h | 53 + lib/libcxx/include/__memory/temporary_buffer.h | 11 +- lib/libcxx/include/__memory/uninitialized_algorithms.h | 298 +- lib/libcxx/include/__memory/unique_ptr.h | 27 +- lib/libcxx/include/__memory/uses_allocator.h | 9 +- lib/libcxx/include/__mutex_base | 19 +- lib/libcxx/include/__node_handle | 4 +- lib/libcxx/include/__nullptr | 61 - lib/libcxx/include/__numeric/accumulate.h | 2 +- lib/libcxx/include/__numeric/gcd_lcm.h | 2 +- lib/libcxx/include/__numeric/inner_product.h | 2 +- lib/libcxx/include/__numeric/iota.h | 6 +- lib/libcxx/include/__random/bernoulli_distribution.h | 4 +- lib/libcxx/include/__random/binomial_distribution.h | 5 +- lib/libcxx/include/__random/cauchy_distribution.h | 4 +- lib/libcxx/include/__random/chi_squared_distribution.h | 2 +- lib/libcxx/include/__random/clamp_to_integral.h | 2 +- lib/libcxx/include/__random/default_random_engine.h | 2 +- lib/libcxx/include/__random/discard_block_engine.h | 2 +- lib/libcxx/include/__random/discrete_distribution.h | 5 +- lib/libcxx/include/__random/exponential_distribution.h | 4 +- lib/libcxx/include/__random/extreme_value_distribution.h | 4 +- lib/libcxx/include/__random/fisher_f_distribution.h | 4 +- lib/libcxx/include/__random/gamma_distribution.h | 4 +- lib/libcxx/include/__random/generate_canonical.h | 2 +- lib/libcxx/include/__random/geometric_distribution.h | 4 +- lib/libcxx/include/__random/independent_bits_engine.h | 2 +- lib/libcxx/include/__random/is_seed_sequence.h | 2 +- lib/libcxx/include/__random/is_valid.h | 61 + lib/libcxx/include/__random/knuth_b.h | 2 +- lib/libcxx/include/__random/linear_congruential_engine.h | 6 +- lib/libcxx/include/__random/log2.h | 2 +- lib/libcxx/include/__random/lognormal_distribution.h | 2 +- lib/libcxx/include/__random/mersenne_twister_engine.h | 2 +- lib/libcxx/include/__random/negative_binomial_distribution.h | 11 +- lib/libcxx/include/__random/normal_distribution.h | 4 +- lib/libcxx/include/__random/piecewise_constant_distribution.h | 24 +- lib/libcxx/include/__random/piecewise_linear_distribution.h | 24 +- lib/libcxx/include/__random/poisson_distribution.h | 5 +- lib/libcxx/include/__random/random_device.h | 12 +- lib/libcxx/include/__random/ranlux.h | 2 +- lib/libcxx/include/__random/seed_seq.h | 76 +- lib/libcxx/include/__random/shuffle_order_engine.h | 2 +- lib/libcxx/include/__random/student_t_distribution.h | 4 +- lib/libcxx/include/__random/subtract_with_carry_engine.h | 2 +- lib/libcxx/include/__random/uniform_int_distribution.h | 7 +- lib/libcxx/include/__random/uniform_random_bit_generator.h | 6 +- lib/libcxx/include/__random/uniform_real_distribution.h | 4 +- lib/libcxx/include/__random/weibull_distribution.h | 2 +- lib/libcxx/include/__ranges/access.h | 17 +- lib/libcxx/include/__ranges/all.h | 25 +- lib/libcxx/include/__ranges/common_view.h | 22 +- lib/libcxx/include/__ranges/concepts.h | 6 +- lib/libcxx/include/__ranges/copyable_box.h | 36 +- lib/libcxx/include/__ranges/counted.h | 22 +- lib/libcxx/include/__ranges/dangling.h | 6 +- lib/libcxx/include/__ranges/data.h | 10 +- lib/libcxx/include/__ranges/drop_view.h | 201 +- lib/libcxx/include/__ranges/empty.h | 6 +- lib/libcxx/include/__ranges/empty_view.h | 13 +- lib/libcxx/include/__ranges/enable_borrowed_range.h | 6 +- lib/libcxx/include/__ranges/enable_view.h | 6 +- lib/libcxx/include/__ranges/filter_view.h | 259 + lib/libcxx/include/__ranges/iota_view.h | 116 +- lib/libcxx/include/__ranges/join_view.h | 60 +- lib/libcxx/include/__ranges/lazy_split_view.h | 465 + lib/libcxx/include/__ranges/non_propagating_cache.h | 12 +- lib/libcxx/include/__ranges/owning_view.h | 12 +- lib/libcxx/include/__ranges/range_adaptor.h | 12 +- lib/libcxx/include/__ranges/rbegin.h | 130 + lib/libcxx/include/__ranges/ref_view.h | 8 +- lib/libcxx/include/__ranges/rend.h | 134 + lib/libcxx/include/__ranges/reverse_view.h | 48 +- lib/libcxx/include/__ranges/single_view.h | 34 +- lib/libcxx/include/__ranges/size.h | 162 +- lib/libcxx/include/__ranges/subrange.h | 37 +- lib/libcxx/include/__ranges/take_view.h | 396 +- lib/libcxx/include/__ranges/transform_view.h | 42 +- lib/libcxx/include/__ranges/view_interface.h | 45 +- lib/libcxx/include/__ranges/zip_view.h | 511 + lib/libcxx/include/__split_buffer | 195 +- lib/libcxx/include/__std_stream | 2 +- lib/libcxx/include/__string | 1175 - lib/libcxx/include/__string/char_traits.h | 927 + lib/libcxx/include/__string/extern_template_lists.h | 131 + lib/libcxx/include/__support/android/locale_bionic.h | 20 +- lib/libcxx/include/__support/ibm/gettod_zos.h | 3 +- lib/libcxx/include/__support/ibm/limits.h | 98 - lib/libcxx/include/__support/ibm/support.h | 53 - lib/libcxx/include/__support/ibm/xlocale.h | 56 +- lib/libcxx/include/__support/musl/xlocale.h | 31 +- lib/libcxx/include/__support/openbsd/xlocale.h | 8 +- lib/libcxx/include/__support/solaris/xlocale.h | 55 +- lib/libcxx/include/__support/win32/locale_win32.h | 62 +- lib/libcxx/include/__support/xlocale/__nop_locale_mgmt.h | 13 +- lib/libcxx/include/__support/xlocale/__posix_l_fallback.h | 144 +- lib/libcxx/include/__support/xlocale/__strtonum_fallback.h | 48 +- lib/libcxx/include/__thread/poll_with_backoff.h | 8 +- lib/libcxx/include/__thread/timed_backoff_policy.h | 6 +- lib/libcxx/include/__threading_support | 33 +- lib/libcxx/include/__tree | 77 +- lib/libcxx/include/__tuple | 13 +- lib/libcxx/include/__type_traits/add_const.h | 30 + lib/libcxx/include/__type_traits/add_cv.h | 30 + lib/libcxx/include/__type_traits/add_lvalue_reference.h | 33 + lib/libcxx/include/__type_traits/add_pointer.h | 41 + lib/libcxx/include/__type_traits/add_rvalue_reference.h | 33 + lib/libcxx/include/__type_traits/add_volatile.h | 30 + lib/libcxx/include/__type_traits/aligned_storage.h | 142 + lib/libcxx/include/__type_traits/aligned_union.h | 55 + lib/libcxx/include/__type_traits/alignment_of.h | 32 + lib/libcxx/include/__type_traits/apply_cv.h | 76 + lib/libcxx/include/__type_traits/common_reference.h | 188 + lib/libcxx/include/__type_traits/common_type.h | 138 + lib/libcxx/include/__type_traits/conditional.h | 53 + lib/libcxx/include/__type_traits/conjunction.h | 57 + lib/libcxx/include/__type_traits/copy_cv.h | 54 + lib/libcxx/include/__type_traits/copy_cvref.h | 46 + lib/libcxx/include/__type_traits/decay.h | 65 + lib/libcxx/include/__type_traits/disjunction.h | 53 + lib/libcxx/include/__type_traits/enable_if.h | 31 + lib/libcxx/include/__type_traits/extent.h | 55 + lib/libcxx/include/__type_traits/has_unique_object_representation.h | 36 + lib/libcxx/include/__type_traits/has_virtual_destructor.h | 40 + lib/libcxx/include/__type_traits/integral_constant.h | 50 + lib/libcxx/include/__type_traits/is_abstract.h | 31 + lib/libcxx/include/__type_traits/is_aggregate.h | 33 + lib/libcxx/include/__type_traits/is_arithmetic.h | 34 + lib/libcxx/include/__type_traits/is_array.h | 52 + lib/libcxx/include/__type_traits/is_assignable.h | 66 + lib/libcxx/include/__type_traits/is_base_of.h | 32 + lib/libcxx/include/__type_traits/is_bounded_array.h | 38 + lib/libcxx/include/__type_traits/is_callable.h | 32 + lib/libcxx/include/__type_traits/is_class.h | 33 + lib/libcxx/include/__type_traits/is_compound.h | 46 + lib/libcxx/include/__type_traits/is_const.h | 45 + lib/libcxx/include/__type_traits/is_constant_evaluated.h | 32 + lib/libcxx/include/__type_traits/is_constructible.h | 33 + lib/libcxx/include/__type_traits/is_convertible.h | 108 + lib/libcxx/include/__type_traits/is_copy_assignable.h | 35 + lib/libcxx/include/__type_traits/is_copy_constructible.h | 36 + lib/libcxx/include/__type_traits/is_core_convertible.h | 36 + lib/libcxx/include/__type_traits/is_default_constructible.h | 34 + lib/libcxx/include/__type_traits/is_destructible.h | 102 + lib/libcxx/include/__type_traits/is_empty.h | 32 + lib/libcxx/include/__type_traits/is_enum.h | 32 + lib/libcxx/include/__type_traits/is_final.h | 36 + lib/libcxx/include/__type_traits/is_floating_point.h | 37 + lib/libcxx/include/__type_traits/is_function.h | 43 + lib/libcxx/include/__type_traits/is_fundamental.h | 49 + lib/libcxx/include/__type_traits/is_integral.h | 72 + lib/libcxx/include/__type_traits/is_literal_type.h | 34 + lib/libcxx/include/__type_traits/is_member_function_pointer.h | 64 + lib/libcxx/include/__type_traits/is_member_object_pointer.h | 46 + lib/libcxx/include/__type_traits/is_member_pointer.h | 45 + lib/libcxx/include/__type_traits/is_move_assignable.h | 36 + lib/libcxx/include/__type_traits/is_move_constructible.h | 35 + lib/libcxx/include/__type_traits/is_nothrow_assignable.h | 59 + lib/libcxx/include/__type_traits/is_nothrow_constructible.h | 75 + lib/libcxx/include/__type_traits/is_nothrow_convertible.h | 53 + lib/libcxx/include/__type_traits/is_nothrow_copy_assignable.h | 35 + lib/libcxx/include/__type_traits/is_nothrow_copy_constructible.h | 35 + lib/libcxx/include/__type_traits/is_nothrow_default_constructible.h | 33 + lib/libcxx/include/__type_traits/is_nothrow_destructible.h | 90 + lib/libcxx/include/__type_traits/is_nothrow_move_assignable.h | 36 + lib/libcxx/include/__type_traits/is_nothrow_move_constructible.h | 34 + lib/libcxx/include/__type_traits/is_null_pointer.h | 41 + lib/libcxx/include/__type_traits/is_object.h | 52 + lib/libcxx/include/__type_traits/is_pod.h | 43 + lib/libcxx/include/__type_traits/is_pointer.h | 57 + lib/libcxx/include/__type_traits/is_polymorphic.h | 32 + lib/libcxx/include/__type_traits/is_primary_template.h | 34 + lib/libcxx/include/__type_traits/is_reference.h | 70 + lib/libcxx/include/__type_traits/is_reference_wrapper.h | 31 + lib/libcxx/include/__type_traits/is_referenceable.h | 33 + lib/libcxx/include/__type_traits/is_same.h | 44 + lib/libcxx/include/__type_traits/is_scalar.h | 61 + lib/libcxx/include/__type_traits/is_scoped_enum.h | 42 + lib/libcxx/include/__type_traits/is_signed.h | 55 + lib/libcxx/include/__type_traits/is_signed_integer.h | 33 + lib/libcxx/include/__type_traits/is_standard_layout.h | 36 + lib/libcxx/include/__type_traits/is_trivial.h | 37 + lib/libcxx/include/__type_traits/is_trivially_assignable.h | 33 + lib/libcxx/include/__type_traits/is_trivially_constructible.h | 34 + lib/libcxx/include/__type_traits/is_trivially_copy_assignable.h | 35 + lib/libcxx/include/__type_traits/is_trivially_copy_constructible.h | 34 + lib/libcxx/include/__type_traits/is_trivially_copyable.h | 32 + lib/libcxx/include/__type_traits/is_trivially_default_constructible.h | 33 + lib/libcxx/include/__type_traits/is_trivially_destructible.h | 52 + lib/libcxx/include/__type_traits/is_trivially_move_assignable.h | 36 + lib/libcxx/include/__type_traits/is_trivially_move_constructible.h | 34 + lib/libcxx/include/__type_traits/is_unbounded_array.h | 37 + lib/libcxx/include/__type_traits/is_union.h | 32 + lib/libcxx/include/__type_traits/is_unsigned.h | 58 + lib/libcxx/include/__type_traits/is_unsigned_integer.h | 33 + lib/libcxx/include/__type_traits/is_valid_expansion.h | 31 + lib/libcxx/include/__type_traits/is_void.h | 45 + lib/libcxx/include/__type_traits/is_volatile.h | 45 + lib/libcxx/include/__type_traits/lazy.h | 25 + lib/libcxx/include/__type_traits/make_32_64_or_128_bit.h | 48 + lib/libcxx/include/__type_traits/make_signed.h | 76 + lib/libcxx/include/__type_traits/make_unsigned.h | 89 + lib/libcxx/include/__type_traits/nat.h | 32 + lib/libcxx/include/__type_traits/negation.h | 33 + lib/libcxx/include/__type_traits/promote.h | 95 + lib/libcxx/include/__type_traits/rank.h | 36 + lib/libcxx/include/__type_traits/remove_all_extents.h | 34 + lib/libcxx/include/__type_traits/remove_const.h | 28 + lib/libcxx/include/__type_traits/remove_cv.h | 30 + lib/libcxx/include/__type_traits/remove_cvref.h | 41 + lib/libcxx/include/__type_traits/remove_extent.h | 34 + lib/libcxx/include/__type_traits/remove_pointer.h | 32 + lib/libcxx/include/__type_traits/remove_reference.h | 31 + lib/libcxx/include/__type_traits/remove_volatile.h | 28 + lib/libcxx/include/__type_traits/type_identity.h | 33 + lib/libcxx/include/__type_traits/type_list.h | 44 + lib/libcxx/include/__type_traits/underlying_type.h | 41 + lib/libcxx/include/__type_traits/void_t.h | 29 + lib/libcxx/include/__undef_macros | 21 +- lib/libcxx/include/__utility/as_const.h | 2 +- lib/libcxx/include/__utility/auto_cast.h | 2 +- lib/libcxx/include/__utility/cmp.h | 11 +- lib/libcxx/include/__utility/declval.h | 2 +- lib/libcxx/include/__utility/exchange.h | 2 +- lib/libcxx/include/__utility/forward.h | 5 +- lib/libcxx/include/__utility/in_place.h | 2 +- lib/libcxx/include/__utility/integer_sequence.h | 2 +- lib/libcxx/include/__utility/move.h | 7 +- lib/libcxx/include/__utility/pair.h | 26 +- lib/libcxx/include/__utility/piecewise_construct.h | 2 +- lib/libcxx/include/__utility/priority_tag.h | 2 +- lib/libcxx/include/__utility/rel_ops.h | 2 +- lib/libcxx/include/__utility/swap.h | 2 +- lib/libcxx/include/__utility/to_underlying.h | 2 +- lib/libcxx/include/__utility/transaction.h | 7 +- lib/libcxx/include/__utility/unreachable.h | 38 + lib/libcxx/include/__variant/monostate.h | 2 +- lib/libcxx/include/__verbose_abort | 51 + lib/libcxx/include/algorithm | 1169 +- lib/libcxx/include/any | 16 +- lib/libcxx/include/array | 60 +- lib/libcxx/include/atomic | 40 +- lib/libcxx/include/barrier | 56 +- lib/libcxx/include/bit | 305 +- lib/libcxx/include/bitset | 26 +- lib/libcxx/include/cassert | 3 +- lib/libcxx/include/ccomplex | 5 +- lib/libcxx/include/cctype | 3 +- lib/libcxx/include/cerrno | 3 +- lib/libcxx/include/cfenv | 3 +- lib/libcxx/include/cfloat | 3 +- lib/libcxx/include/charconv | 434 +- lib/libcxx/include/chrono | 26 +- lib/libcxx/include/cinttypes | 3 +- lib/libcxx/include/ciso646 | 3 +- lib/libcxx/include/climits | 3 +- lib/libcxx/include/clocale | 3 +- lib/libcxx/include/cmath | 9 +- lib/libcxx/include/codecvt | 129 +- lib/libcxx/include/compare | 3 +- lib/libcxx/include/complex | 3 +- lib/libcxx/include/complex.h | 2 +- lib/libcxx/include/concepts | 3 +- lib/libcxx/include/condition_variable | 5 +- lib/libcxx/include/coroutine | 10 +- lib/libcxx/include/csetjmp | 3 +- lib/libcxx/include/csignal | 8 +- lib/libcxx/include/cstdarg | 3 +- lib/libcxx/include/cstdbool | 3 +- lib/libcxx/include/cstddef | 49 +- lib/libcxx/include/cstdint | 3 +- lib/libcxx/include/cstdio | 3 +- lib/libcxx/include/cstdlib | 15 +- lib/libcxx/include/cstring | 3 +- lib/libcxx/include/ctgmath | 3 +- lib/libcxx/include/ctime | 21 +- lib/libcxx/include/ctype.h | 2 +- lib/libcxx/include/cuchar | 61 + lib/libcxx/include/cwchar | 3 +- lib/libcxx/include/cwctype | 3 +- lib/libcxx/include/deque | 77 +- lib/libcxx/include/errno.h | 2 +- lib/libcxx/include/exception | 23 +- lib/libcxx/include/execution | 3 +- lib/libcxx/include/experimental/__config | 15 +- lib/libcxx/include/experimental/__memory | 3 +- lib/libcxx/include/experimental/algorithm | 3 +- lib/libcxx/include/experimental/coroutine | 15 +- lib/libcxx/include/experimental/deque | 4 +- lib/libcxx/include/experimental/filesystem | 256 - lib/libcxx/include/experimental/forward_list | 4 +- lib/libcxx/include/experimental/functional | 81 +- lib/libcxx/include/experimental/iterator | 4 +- lib/libcxx/include/experimental/list | 4 +- lib/libcxx/include/experimental/map | 4 +- lib/libcxx/include/experimental/memory_resource | 6 +- lib/libcxx/include/experimental/propagate_const | 10 +- lib/libcxx/include/experimental/regex | 4 +- lib/libcxx/include/experimental/set | 4 +- lib/libcxx/include/experimental/simd | 28 +- lib/libcxx/include/experimental/string | 4 +- lib/libcxx/include/experimental/type_traits | 3 +- lib/libcxx/include/experimental/unordered_map | 12 +- lib/libcxx/include/experimental/unordered_set | 4 +- lib/libcxx/include/experimental/utility | 3 +- lib/libcxx/include/experimental/vector | 4 +- lib/libcxx/include/ext/__hash | 26 +- lib/libcxx/include/ext/hash_map | 32 +- lib/libcxx/include/ext/hash_set | 32 +- lib/libcxx/include/fenv.h | 2 +- lib/libcxx/include/filesystem | 10 +- lib/libcxx/include/float.h | 2 +- lib/libcxx/include/format | 543 +- lib/libcxx/include/forward_list | 83 +- lib/libcxx/include/fstream | 44 +- lib/libcxx/include/functional | 19 +- lib/libcxx/include/future | 68 +- lib/libcxx/include/initializer_list | 3 +- lib/libcxx/include/inttypes.h | 2 +- lib/libcxx/include/iomanip | 175 +- lib/libcxx/include/ios | 18 +- lib/libcxx/include/iosfwd | 5 +- lib/libcxx/include/iostream | 7 +- lib/libcxx/include/istream | 12 +- lib/libcxx/include/iterator | 161 +- lib/libcxx/include/latch | 11 +- lib/libcxx/include/limits | 20 +- lib/libcxx/include/limits.h | 2 +- lib/libcxx/include/list | 245 +- lib/libcxx/include/locale | 140 +- lib/libcxx/include/locale.h | 4 +- lib/libcxx/include/map | 129 +- lib/libcxx/include/math.h | 89 +- lib/libcxx/include/memory | 205 +- lib/libcxx/include/module.modulemap | 1092 - lib/libcxx/include/mutex | 8 +- lib/libcxx/include/new | 14 +- lib/libcxx/include/numbers | 7 +- lib/libcxx/include/numeric | 10 +- lib/libcxx/include/optional | 61 +- lib/libcxx/include/ostream | 96 +- lib/libcxx/include/queue | 18 +- lib/libcxx/include/random | 13 +- lib/libcxx/include/ranges | 81 +- lib/libcxx/include/ratio | 15 +- lib/libcxx/include/regex | 66 +- lib/libcxx/include/scoped_allocator | 21 +- lib/libcxx/include/semaphore | 7 +- lib/libcxx/include/set | 37 +- lib/libcxx/include/setjmp.h | 2 +- lib/libcxx/include/shared_mutex | 13 +- lib/libcxx/include/span | 259 +- lib/libcxx/include/sstream | 12 +- lib/libcxx/include/stack | 11 +- lib/libcxx/include/stdatomic.h | 235 + lib/libcxx/include/stdbool.h | 3 +- lib/libcxx/include/stddef.h | 11 +- lib/libcxx/include/stdexcept | 3 +- lib/libcxx/include/stdint.h | 2 +- lib/libcxx/include/stdio.h | 4 +- lib/libcxx/include/stdlib.h | 4 +- lib/libcxx/include/streambuf | 11 +- lib/libcxx/include/string | 2087 +- lib/libcxx/include/string.h | 2 +- lib/libcxx/include/string_view | 85 +- lib/libcxx/include/strstream | 9 +- lib/libcxx/include/system_error | 24 +- lib/libcxx/include/tgmath.h | 2 +- lib/libcxx/include/thread | 30 +- lib/libcxx/include/tuple | 488 +- lib/libcxx/include/type_traits | 3609 +- lib/libcxx/include/typeindex | 16 +- lib/libcxx/include/typeinfo | 3 +- lib/libcxx/include/uchar.h | 52 + lib/libcxx/include/unordered_map | 117 +- lib/libcxx/include/unordered_set | 165 +- lib/libcxx/include/utility | 20 +- lib/libcxx/include/valarray | 122 +- lib/libcxx/include/variant | 51 +- lib/libcxx/include/vector | 971 +- lib/libcxx/include/version | 74 +- lib/libcxx/include/wchar.h | 12 +- lib/libcxx/include/wctype.h | 2 +- lib/libcxx/src/algorithm.cpp | 4 +- lib/libcxx/src/any.cpp | 2 +- lib/libcxx/src/barrier.cpp | 2 +- lib/libcxx/src/bind.cpp | 2 +- lib/libcxx/src/charconv.cpp | 128 +- lib/libcxx/src/chrono.cpp | 6 +- lib/libcxx/src/condition_variable.cpp | 16 +- lib/libcxx/src/condition_variable_destructor.cpp | 4 +- lib/libcxx/src/debug.cpp | 45 +- lib/libcxx/src/exception.cpp | 6 +- lib/libcxx/src/experimental/memory_resource.cpp | 18 +- lib/libcxx/src/experimental/memory_resource_init_helper.h | 2 +- lib/libcxx/src/filesystem/directory_iterator.cpp | 25 +- lib/libcxx/src/filesystem/filesystem_common.h | 50 +- lib/libcxx/src/filesystem/int128_builtins.cpp | 4 +- lib/libcxx/src/filesystem/operations.cpp | 78 +- lib/libcxx/src/filesystem/posix_compat.h | 3 +- lib/libcxx/src/format.cpp | 2 +- lib/libcxx/src/functional.cpp | 2 +- lib/libcxx/src/future.cpp | 22 +- lib/libcxx/src/hash.cpp | 14 +- lib/libcxx/src/include/atomic_support.h | 4 +- lib/libcxx/src/include/config_elast.h | 2 + lib/libcxx/src/include/ryu/common.h | 1 + lib/libcxx/src/include/ryu/d2fixed.h | 4 +- lib/libcxx/src/include/ryu/d2fixed_full_table.h | 2 +- lib/libcxx/src/include/ryu/d2s.h | 2 +- lib/libcxx/src/include/ryu/d2s_full_table.h | 2 +- lib/libcxx/src/include/ryu/d2s_intrinsics.h | 5 +- lib/libcxx/src/include/ryu/digit_table.h | 25 +- lib/libcxx/src/include/ryu/f2s.h | 2 +- lib/libcxx/src/include/ryu/ryu.h | 27 +- lib/libcxx/src/include/sso_allocator.h | 5 + lib/libcxx/src/include/to_chars_floating_point.h | 23 +- lib/libcxx/src/ios.cpp | 24 +- lib/libcxx/src/ios.instantiations.cpp | 15 +- lib/libcxx/src/iostream.cpp | 8 +- lib/libcxx/src/legacy_debug_handler.cpp | 54 + lib/libcxx/src/legacy_pointer_safety.cpp | 2 +- lib/libcxx/src/locale.cpp | 78 +- lib/libcxx/src/memory.cpp | 52 +- lib/libcxx/src/mutex.cpp | 25 +- lib/libcxx/src/mutex_destructor.cpp | 10 +- lib/libcxx/src/new.cpp | 2 +- lib/libcxx/src/optional.cpp | 4 +- lib/libcxx/src/random.cpp | 6 +- lib/libcxx/src/random_shuffle.cpp | 15 +- lib/libcxx/src/regex.cpp | 6 +- lib/libcxx/src/ryu/d2fixed.cpp | 9 +- lib/libcxx/src/ryu/d2s.cpp | 5 +- lib/libcxx/src/ryu/f2s.cpp | 5 +- lib/libcxx/src/shared_mutex.cpp | 7 +- lib/libcxx/src/stdexcept.cpp | 9 +- lib/libcxx/src/string.cpp | 310 +- lib/libcxx/src/strstream.cpp | 21 +- lib/libcxx/src/support/ibm/xlocale_zos.cpp | 17 +- lib/libcxx/src/support/runtime/exception_fallback.ipp | 6 +- lib/libcxx/src/support/runtime/new_handler_fallback.ipp | 2 +- lib/libcxx/src/support/win32/locale_win32.cpp | 6 +- lib/libcxx/src/support/win32/support.cpp | 12 +- lib/libcxx/src/system_error.cpp | 23 +- lib/libcxx/src/thread.cpp | 22 +- lib/libcxx/src/typeinfo.cpp | 3 +- lib/libcxx/src/utility.cpp | 2 +- lib/libcxx/src/valarray.cpp | 2 +- lib/libcxx/src/variant.cpp | 2 +- lib/libcxx/src/vector.cpp | 2 +- lib/libcxx/src/verbose_abort.cpp | 77 + lib/libcxxabi/include/__cxxabi_config.h | 8 +- lib/libcxxabi/include/cxxabi.h | 4 +- lib/libcxxabi/src/aix_state_tab_eh.inc | 684 + lib/libcxxabi/src/cxa_default_handlers.cpp | 115 +- lib/libcxxabi/src/cxa_demangle.cpp | 44 + lib/libcxxabi/src/cxa_exception.cpp | 31 +- lib/libcxxabi/src/cxa_exception.h | 10 +- lib/libcxxabi/src/cxa_guard_impl.h | 2 +- lib/libcxxabi/src/cxa_personality.cpp | 25 +- lib/libcxxabi/src/demangle/ItaniumDemangle.h | 2289 +- lib/libcxxabi/src/demangle/ItaniumNodes.def | 95 + lib/libcxxabi/src/demangle/Utility.h | 114 +- lib/libcxxabi/src/fallback_malloc.cpp | 5 +- lib/libunwind/include/__libunwind_config.h | 11 +- lib/libunwind/include/libunwind.h | 47 +- lib/libunwind/include/unwind.h | 2 +- lib/libunwind/src/AddressSpace.hpp | 23 +- lib/libunwind/src/DwarfInstructions.hpp | 28 +- lib/libunwind/src/EHHeaderParser.hpp | 3 +- lib/libunwind/src/Registers.hpp | 348 +- lib/libunwind/src/Unwind-EHABI.cpp | 9 +- lib/libunwind/src/Unwind-seh.cpp | 6 +- lib/libunwind/src/UnwindCursor.hpp | 733 +- lib/libunwind/src/UnwindLevel1-gcc-ext.c | 7 +- lib/libunwind/src/UnwindLevel1.c | 8 +- lib/libunwind/src/UnwindRegistersRestore.S | 199 +- lib/libunwind/src/UnwindRegistersSave.S | 56 +- lib/libunwind/src/Unwind_AIXExtras.cpp | 63 + lib/libunwind/src/assembly.h | 49 +- lib/libunwind/src/cet_unwind.h | 2 +- lib/libunwind/src/config.h | 15 +- lib/libunwind/src/libunwind.cpp | 12 + lib/libunwind/src/libunwind_ext.h | 4 + lib/std/target.zig | 58 +- lib/std/target/aarch64.zig | 52 +- lib/std/target/amdgpu.zig | 308 +- lib/std/target/arm.zig | 46 + lib/std/target/avr.zig | 184 +- lib/std/target/csky.zig | 3049 + lib/std/target/powerpc.zig | 15 + lib/std/target/riscv.zig | 70 +- lib/std/target/s390x.zig | 46 + lib/std/target/wasm.zig | 6 + lib/std/target/x86.zig | 113 +- lib/std/zig.zig | 1 + lib/std/zig/CrossTarget.zig | 6 + src/Compilation.zig | 11 + src/clang.zig | 23 +- src/clang_options_data.zig | 295 +- src/codegen/llvm.zig | 674 +- src/codegen/llvm/bindings.zig | 56 +- src/libcxx.zig | 31 +- src/libunwind.zig | 29 +- src/link.zig | 3 + src/link/Elf.zig | 2 +- src/link/Wasm.zig | 2 +- src/stage1/all_types.hpp | 2 + src/stage1/analyze.cpp | 4 +- src/stage1/codegen.cpp | 911 +- src/stage1/stage1.h | 3 + src/stage1/target.cpp | 57 +- src/stage1/zig0.cpp | 6 + src/target.zig | 24 + src/type.zig | 8 + src/zig_clang.cpp | 46 +- src/zig_clang.h | 55 +- src/zig_clang_cc1_main.cpp | 14 +- src/zig_clang_cc1as_main.cpp | 28 +- src/zig_clang_driver.cpp | 66 +- src/zig_llvm-ar.cpp | 327 +- src/zig_llvm.cpp | 17 +- src/zig_llvm.h | 47 +- test/behavior/basic.zig | 6 + test/behavior/bugs/12486.zig | 2 + test/behavior/generics.zig | 2 + test/behavior/vector.zig | 7 + test/run_translated_c.zig | 3 +- test/standalone.zig | 2 +- test/translate_c.zig | 4 +- tools/update_clang_options.zig | 16 +- tools/update_cpu_features.zig | 21 +- 1000 files changed, 61870 insertions(+), 130993 deletions(-)