https://gcc.gnu.org/g:ea7fa6bf4876ad0b66a7cb92324f6f8f9b646038
commit r16-4347-gea7fa6bf4876ad0b66a7cb92324f6f8f9b646038 Author: GCC Administrator <[email protected]> Date: Fri Oct 10 00:21:51 2025 +0000 Daily bump. Diff: --- ChangeLog | 12 ++ gcc/ChangeLog | 423 ++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/analyzer/ChangeLog | 118 +++++++++++ gcc/c-family/ChangeLog | 24 +++ gcc/cp/ChangeLog | 41 ++++ gcc/fortran/ChangeLog | 10 + gcc/testsuite/ChangeLog | 164 +++++++++++++++ include/ChangeLog | 14 ++ libatomic/ChangeLog | 11 + libcc1/ChangeLog | 4 + libgcc/config/avr/libf7/ChangeLog | 28 +++ libstdc++-v3/ChangeLog | 18 ++ 13 files changed, 868 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 53ae63bc9d9f..805299d1e39f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2025-10-09 Prathamesh Kulkarni <[email protected]> + Matthew Malcolmson <[email protected]> + + PR driver/81358 + * Makefile.def: Add no_atomic=true for libraries that don't depend on + libatomic. + * Makefile.tpl: Export TARGET_CONFIGDIRS and create rule to + add dependencies for libatomic. + * configure.ac: Add libatomic to bootstrap_target_libs. + * Makefile.in: Regenerate. + * configure: Regenerate. + 2025-10-02 H.J. Lu <[email protected]> * Makefile.in: Regenerated. diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 19a17a393597..96e5a1fbc01b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,426 @@ +2025-10-10 YunQiang Su <[email protected]> + + Revert: + 2025-09-27 Jie Mei <[email protected]> + + * config/mips/mips.cc(mips_option_override):Add conditions + for use of the -mmips16e2 and -mips16 option. + +2025-10-09 David Faust <[email protected]> + + * doc/extend.texi (Common Function Attributes) + (Common Variable Attributes): Document btf_decl_tag attribute. + (Common Type Attributes): Document btf_type_tag attribute. + +2025-10-09 David Faust <[email protected]> + + * btfout.cc (get_btf_kind): Handle DECL_TAG and TYPE_TAG kinds. + (btf_calc_num_vbytes): Likewise. + (btf_asm_type): Likewise. + (output_asm_btf_vlen_bytes): Likewise. + (output_btf_tags): New. + (btf_output): Call it here. + (btf_add_used_type): Replace with simple wrapper around... + (btf_add_used_type_1): ...the implementation. Handle + BTF_KIND_DECL_TAG and BTF_KIND_TYPE_TAG. + (btf_add_vars): Update btf_add_used_type call. + (btf_assign_tag_ids): New. + (btf_mark_type_used): Update btf_add_used_type call. + (btf_collect_pruned_types): Likewise. Handle type and decl tags. + (btf_finish): Call btf_assign_tag_ids. + +2025-10-09 David Faust <[email protected]> + + * ctfc.cc (ctf_dtu_d_union_selector): Handle CTF_K_DECL_TAG and + CTF_K_TYPE_TAG. + (ctf_add_type_tag, ctf_add_decl_tag): New. + (ctf_add_variable): Return the new ctf_dvdef_ref rather than zero. + (new_ctf_container): Initialize new members. + (ctfc_delete_container): Deallocate new members. + * ctfc.h (ctf_dvdef, ctf_dvdef_t, ctf_dvdef_ref): Move forward + declarations earlier in file. + (ctf_decl_tag_t): New typedef. + (ctf_dtdef): Add ctf_decl_tag_t member to dtd_u union. + (ctf_dtu_d_union_enum): Add new CTF_DTU_D_TAG enumerator. + (ctf_container): Add ctfc_tags vector and ctfc_type_tags_map hash_map + members. + (ctf_add_type_tag, ctf_add_decl_tag): New function protos. + (ctf_add_variable): Change prototype return type to ctf_dvdef_ref. + * dwarf2ctf.cc (gen_ctf_type_tags, gen_ctf_decl_tags) + (gen_ctf_decl_tags_for_var): New static functions. + (gen_ctf_pointer_type): Handle type tags. + (gen_ctf_sou_type): Handle decl tags. + (gen_ctf_function_type): Likewise. + (gen_ctf_variable): Likewise. + (gen_ctf_function): Likewise. + (gen_ctf_type): Handle TAG_GNU_annotation DIEs. + +2025-10-09 David Faust <[email protected]> + + * dwarf2out.cc (struct annotation_node, struct annotation_node_hasher) + (btf_tag_htab): New ancillary structures and hash table. + (annotation_node_hasher::hash, annotation_node_hasher::equal): New. + (hash_btf_tag, gen_btf_tag_dies, maybe_gen_btf_type_tag_dies) + (maybe_gen_btf_decl_tag_dies): New functions. + (modified_type_die): Add new argument to pass type attributes. + Handle btf_type_tag, and update recursive calls. + (base_type_for_mode): Add new arg for modified_type_die call. + (add_type_attribute): Likewise. + (gen_array_type_die): Call maybe_gen_btf_type_tag_dies for the type. + (gen_formal_parameter_die): Call maybe_gen_btf_decl_tag_dies for the + parameter. + (override_type_for_decl_p): Add new arg for modified_type_die call. + (force_type_die): Likewise. + (gen_tagged_type_die): Call maybe_gen_btf_type_tag_dies for the type. + (gen_decl_die): Call maybe_gen_btf_decl_tag_dies for the decl. + (dwarf2out_finish): Empty btf_tag_htab. + (dwarf2out_cc_finalize): Delete btf_tag_htab hash table. + +2025-10-09 Jakub Jelinek <[email protected]> + + * ginclude/stdarg.h (va_start): Use __builtin_c23_va_start + also for C++26. + (__STDC_VERSION_STDARG_H__): Also define for C++26. + +2025-10-09 David Malcolm <[email protected]> + + * diagnostic-global-context.cc: Define INCLUDE_VECTOR. + * diagnostics/buffering.cc: Likewise. + * diagnostics/context.cc (context::finish): Call + finalize_extensions on each sink. + (sink::dump): Dump any extensions. + (sink::finalize_extensions): New. + * diagnostics/macro-unwinding.cc: Define INCLUDE_VECTOR. + * diagnostics/selftest-context.cc: Likewise. + * diagnostics/sink.h (class sink::extension): New. + (sink::add_extension): New. + (sink::finalize_extensions): New decl. + (sink::m_extensions): New member. + * gcc.cc: Define INCLUDE_VECTOR. + * langhooks.cc: Likewise. + * opts.cc: Likewise. + * tree-diagnostic-client-data-hooks.cc: Likewise. + * tree-diagnostic.cc: Likewise. + +2025-10-09 Filip Kastl <[email protected]> + + * Makefile.in: Add gimple-ssa-pta-constraints.cc. + * tree-ssa-structalias.cc (determine_global_memory_access): + External linkage, move to namespace pointer_analysis. + (fndecl_maybe_in_other_partition): External linkage, move to + namespace pointer_analysis. + (new_var_info): External linkage, move to namespace + pointer_analysis. + (create_variable_info_for): Move to + gimple-ssa-pta-constraints.cc. + (lookup_vi_for_tree): External linkage, move to namespace + pointer_analysis, move to gimple-ssa-pta-constraints.cc. + (type_can_have_subvars): Move to gimple-ssa-pta-constraints.cc. + (make_param_constraints): Move to gimple-ssa-pta-constraints.cc. + (get_call_vi): Move to gimple-ssa-pta-constraints.cc. + (lookup_call_use_vi): External linkage, move to namespace + pointer_analysis, move to gimple-ssa-pta-constraints.cc. + (lookup_call_clobber_vi): External linkage, move to namespace + pointer_analysis, move to gimple-ssa-pta-constraints.cc. + (get_call_use_vi): Move to gimple-ssa-pta-constraints.cc. + (get_call_clobber_vi): Move to gimple-ssa-pta-constraints.cc. + (get_constraint_for_1): Move to gimple-ssa-pta-constraints.cc. + (get_constraint_for): Move to gimple-ssa-pta-constraints.cc. + (get_constraint_for_rhs): Move to gimple-ssa-pta-constraints.cc. + (do_deref): Move to gimple-ssa-pta-constraints.cc. + (constraint_pool): Move to gimple-ssa-pta-constraints.cc. + (new_constraint): Move to gimple-ssa-pta-constraints.cc. + (insert_vi_for_tree): Move to gimple-ssa-pta-constraints.cc. + (alias_get_name): Move to gimple-ssa-pta-constraints.cc. + (get_vi_for_tree): Move to gimple-ssa-pta-constraints.cc. + (new_scalar_tmp_constraint_exp): Move to + gimple-ssa-pta-constraints.cc. + (get_constraint_for_ssa_var): Move to + gimple-ssa-pta-constraints.cc. + (process_constraint): Move to gimple-ssa-pta-constraints.cc. + (bitpos_of_field): Move to gimple-ssa-pta-constraints.cc. + (get_constraint_for_ptr_offset): Move to + gimple-ssa-pta-constraints.cc. + (get_constraint_for_component_ref): Move to + gimple-ssa-pta-constraints.cc. + (get_constraint_for_address_of): Move to + gimple-ssa-pta-constraints.cc. + (process_all_all_constraints): Move to + gimple-ssa-pta-constraints.cc. + (do_structure_copy): Move to gimple-ssa-pta-constraints.cc. + (make_constraints_to): Move to gimple-ssa-pta-constraints.cc. + (make_constraint_to): Move to gimple-ssa-pta-constraints.cc. + (make_constraint_from): Move to gimple-ssa-pta-constraints.cc. + (make_copy_constraint): Move to gimple-ssa-pta-constraints.cc. + (make_escape_constraint): Move to gimple-ssa-pta-constraints.cc. + (make_indirect_escape_constraint): Move to + gimple-ssa-pta-constraints.cc. + (make_transitive_closure_constraints): Move to + gimple-ssa-pta-constraints.cc. + (make_any_offset_constraints): Move to + gimple-ssa-pta-constraints.cc. + (struct obstack fake_var_decl_obstack): Move to + gimple-ssa-pta-constraints.cc. + (build_fake_var_decl): Move to gimple-ssa-pta-constraints.cc. + (make_heapvar): Move to gimple-ssa-pta-constraints.cc. + (make_constraint_from_restrict): Move to + gimple-ssa-pta-constraints.cc. + (make_constraint_from_global_restrict): Move to + gimple-ssa-pta-constraints.cc. + (get_function_part_constraint): Move to + gimple-ssa-pta-constraints.cc. + (handle_call_arg): Move to gimple-ssa-pta-constraints.cc. + (handle_rhs_call): Move to gimple-ssa-pta-constraints.cc. + (handle_lhs_call): Move to gimple-ssa-pta-constraints.cc. + (get_fi_for_callee): Move to gimple-ssa-pta-constraints.cc. + (find_func_aliases_for_call_arg): Move to + gimple-ssa-pta-constraints.cc. + (find_func_aliases_for_builtin_call): Move to + gimple-ssa-pta-constraints.cc. + (find_func_aliases_for_call): Move to + gimple-ssa-pta-constraints.cc. + (find_func_aliases): Move to gimple-ssa-pta-constraints.cc. + (process_ipa_clobber): Move to gimple-ssa-pta-constraints.cc. + (find_func_clobbers): Move to gimple-ssa-pta-constraints.cc. + (struct fieldoff): Move to gimple-ssa-pta-constraints.cc. + (fieldoff_compare): Move to gimple-ssa-pta-constraints.cc. + (sort_fieldstack): Move to gimple-ssa-pta-constraints.cc. + (var_can_have_subvars): Move to gimple-ssa-pta-constraints.cc. + (type_must_have_pointers): Move to + gimple-ssa-pta-constraints.cc. + (field_must_have_pointers): Move to + gimple-ssa-pta-constraints.cc. + (push_fields_onto_fieldstack): Move to + gimple-ssa-pta-constraints.cc. + (count_num_arguments): Move to gimple-ssa-pta-constraints.cc. + (create_function_info_for): Move to + gimple-ssa-pta-constraints.cc. + (check_for_overlaps): Move to gimple-ssa-pta-constraints.cc. + (create_variable_info_for_1): Move to + gimple-ssa-pta-constraints.cc. + (intra_create_variable_infos): Move to + gimple-ssa-pta-constraints.cc. + (init_base_vars): Move to gimple-ssa-pta-constraints.cc. + (init_constraint_builder): Move to + gimple-ssa-pta-constraints.cc. + (delete_constraint_builder): Move to + gimple-ssa-pta-constraints.cc. + (intra_build_constraints): Move to + gimple-ssa-pta-constraints.cc. + (delete_points_to_sets): Move to gimple-ssa-pta-constraints.cc. + (associate_varinfo_to_alias): Move to + gimple-ssa-pta-constraints.cc + (refered_from_nonlocal_fn): Move to + gimple-ssa-pta-constraints.cc + (refered_from_nonlocal_var): Move to + gimple-ssa-pta-constraints.cc + (ipa_create_function_infos): Move to + gimple-ssa-pta-constraints.cc + (ipa_create_global_variable_infos): Move to + gimple-ssa-pta-constraints.cc + (ipa_build_constraints): Move to gimple-ssa-pta-constraints.cc + * tree-ssa-structalias.h (struct constraint_stats): + (determine_global_memory_access): External linkage, move to + namespace pointer_analysis. + (fndecl_maybe_in_other_partition): External linkage, move to + namespace pointer_analysis. + (new_var_info): External linkage, move to namespace + pointer_analysis. + * gimple-ssa-pta-constraints.cc: New file. + * gimple-ssa-pta-constraints.h: New file. + +2025-10-09 Filip Kastl <[email protected]> + + * tree-ssa-structalias.cc (init_constraint_builder): New + function. + (delete_constraint_builder): New function. + (compute_points_to_sets): Put constraint building into + intra_build_constraints and call it. + (intra_build_constraints): New function. + (delete_points_to_sets): Put cleanup of constraint builder + global vars into delete_constraint_builder and call it. + (ipa_pta_execute): Put constraint building into + ipa_build_constraints and call it. + (ipa_create_function_infos): New function. + (ipa_create_global_variable_infos): New function. + (ipa_build_constraints): New function. + +2025-10-09 Takayuki 'January June' Suwa <[email protected]> + + * config/xtensa/xtensa-protos.h (xtensa_constantsynth): Remove. + * config/xtensa/xtensa.cc + (#include): Remove "context.h" and "pass_manager.h". + (machine_function): Remove "litpool_usage" member. + (xtensa_constantsynth_2insn, xtensa_constantsynth_rtx_SLLI, + xtensa_constantsynth_rtx_ADDSUBX, xtensa_constantsynth): Remove. + (constantsynth_method_lshr_m1, split_hwi_to_MOVI_ADDMI, + constantsynth_method_16bits, constantsynth_method_32bits, + constantsynth_method_square): New worker function related to + constant synthesis methods. + (constantsynth_method_info, constantsynth_methods): + New structure representing the list of all constant synthesis + methods. + (constantsynth_info): New structure that stores internal + information for "constantsynth". + (constantsynth_pass1, verify_synth_seq, constantsynth_pass2): + New functions that are the core of "constantsynth". + (do_largeconst): Add a call to constantsynth_pass1() to the insn + enumeration loop, and add a call to constantsynth_pass2() to the + end of this function. + * config/xtensa/xtensa.md (SHI): Remove. + (The two auxiliary define_splits for mov[sh]i_internal): Remove. + (The two auxiliary define_splits for movsf_internal): Remove. + +2025-10-09 Takayuki 'January June' Suwa <[email protected]> + + * config/xtensa/xtensa-protos.h + (xtensa_split_DI_reg_imm): Remove. + * config/xtensa/xtensa.cc (xtensa_split_DI_reg_imm): Remove. + (split_DI_SF_DF_const): New worker function. + (do_largeconst): Add a call to split_DI_SF_DF_const() to the insn + enumeration loop. + * config/xtensa/xtensa.md (movdi): Remove split code when the + source is constant. + (movdi_internal): Add a new constraint pair (a, Y) to the second + of the existing constraint alternatives. + (The auxiliary define_split for movdi_internal): Remove. + +2025-10-09 Takayuki 'January June' Suwa <[email protected]> + + * config/xtensa/xtensa.cc (xt_full_rtx_costs): + New struct, derived from full_rtx_costs. + (FPreg_neg_scaled_simm12b_1, FPreg_neg_scaled_simm12b): + New worker functions. + (do_largeconst): Add a call to FPreg_neg_scaled_simm12b() to the + insn enumeration loop. + +2025-10-09 Takayuki 'January June' Suwa <[email protected]> + + * config/xtensa/constraints.md (Y): + Change to reference xtensa_postreload_completed_p() instead of + xtensa_split1_finished_p(). + * config/xtensa/predicates.md (move_operand): Ditto. + * config/xtensa/t-xtensa (PASSES_EXTRA): + Add xtensa-passes.def as target-specific pass description. + * config/xtensa/xtensa-passes.def: + New definition file that inserts pass_xtensa_largeconst after + pass_postreload_cse. + * config/xtensa/xtensa-protos.h (xtensa_split1_finished_p): Remove. + (xtensa_postreload_completed_p, make_pass_xtensa_largeconst): + New function prototypes. + * config/xtensa/xtensa.cc (machine_function): + Add a new member "postreload_completed". + (xtensa_emit_move_sequence): + Change to reference xtensa_postreload_completed_p() instead of + can_create_pseudo_p(). + (xtensa_split1_finished_p): Remove. + (xtensa_postreload_completed_p): New function. + (xtensa_legitimate_constant_p): Change to also consider + xtensa_postreload_completed_p(). + (litpool_set_src_1, litpool_set_src, do_largeconst, + rest_of_handle_largeconst): + New sub-functions for pass_xtensa_largeconst. + (pass_data_xtensa_largeconst, pass_xtensa_largeconst): + New target-specific pass definition. + (make_pass_xtensa_largeconst): + New function called by the pass manager. + * config/xtensa/xtensa.md + (The auxiliary define_split for movdi_internal): + Change to reference xtensa_postreload_completed_p() instead of + xtensa_split1_finished_p(). + (The first of three auxiliary define_splits for mov[sh]i_internal): + Remove. + +2025-10-09 Takayuki 'January June' Suwa <[email protected]> + + * config/xtensa/xtensa.cc + (TARGET_MD_ASM_ADJUST): New macro definition. + (xtensa_md_asm_adjust): New function prototype and definition, that + prepends all 'g'-constraints in the "constraints" vector with 'n', + if neither TARGET_CONST16 nor TARGET_AUTO_LITPOOLS is enabled. + +2025-10-09 Richard Biener <[email protected]> + + PR tree-optimization/122212 + * tree-ssa-forwprop.cc (simplify_count_zeroes): Apply + bias for CLZ after dealing with the zero special value. + +2025-10-09 Kito Cheng <[email protected]> + + * config/riscv/riscv-protos.h (vls_mode_valid_p): New argument + allow_up_to_lmul_8. + * config/riscv/riscv-v.cc (autovectorize_vector_modes): Set + allow_up_to_lmul_8 to false. + (vls_mode_valid_p): Add new argument allow_up_to_lmul_8, and use + it to determine whether to allow LMUL 8. + +2025-10-09 Prathamesh Kulkarni <[email protected]> + Matthew Malcolmson <[email protected]> + + PR driver/81358 + * common.opt: New option -flink-libatomic. + * gcc.cc (LINK_LIBATOMIC_SPEC): New macro. + * config/alpha/linux.h (LINK_GCC_C_SEQUENCE_SPEC): Use LINK_LIBATOMIC_SPEC. + * config/arm/uclinux-elf.h: Likewise. + * config/arm/unknown-elf.h: Likewise. + * config/avr/avrlibc.h: Likewise. + * config/bfin/linux.h: Likewise. + * config/darwin.h: Likewise. + * config/gnu-user.h: Likewise. + * config/lm32/uclinux-elf.h: Likewise. + * config/rs6000/linux64.h: Likewise. + * config/rs6000/rtems.h: Likewise. + * config/sparc/sparc.h: Likewise. + * doc/invoke.texi: Document -flink-libatomic. + * configure.ac: Define TARGET_PROVIDES_LIBATOMIC. + * configure: Regenerate. + * config.in: Regenerate. + * common.opt.urls: Regenerate. + +2025-10-09 Robin Dapp <[email protected]> + + * config/aarch64/aarch64.cc (aarch64_builtin_support_vector_misalignment): + Remove type. + * config/arm/arm.cc (arm_builtin_support_vector_misalignment): + Ditto. + * config/epiphany/epiphany.cc (epiphany_support_vector_misalignment): + Ditto. + * config/gcn/gcn.cc (gcn_vectorize_support_vector_misalignment): + Ditto. + * config/loongarch/loongarch.cc (loongarch_builtin_support_vector_misalignment): + Ditto. + * config/riscv/riscv.cc (riscv_support_vector_misalignment): + Ditto. + * config/rs6000/rs6000.cc (rs6000_builtin_support_vector_misalignment): + Ditto. + * config/s390/s390.cc (s390_support_vector_misalignment): + Ditto. + * doc/tm.texi: Adjust vector misalignment docs. + * target.def: Ditto. + * targhooks.cc (default_builtin_support_vector_misalignment): + Remove type. + * targhooks.h (default_builtin_support_vector_misalignment): + Ditto. + * tree-vect-data-refs.cc (vect_can_force_dr_alignment_p): + Set misalignment for gather/scatter and remove type. + (vect_supportable_dr_alignment): Ditto. + +2025-10-09 Sam James <[email protected]> + + PR c++/117219 + * doc/invoke.texi (-fstrict-aliasing): Explain that type-punning + through a union in C++ is supported as a GNU extension. + +2025-10-09 Sam James <[email protected]> + + * doc/invoke.texi: Add missing full stop. + +2025-10-09 Sam James <[email protected]> + + PR tree-optimization/18501 + * doc/invoke.texi (-Wmaybe-uninitialized): Mention interaction with + CCP. + 2025-10-08 Antoni Boucher <[email protected]> * configure: Regenerate. diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 80c58c12bccf..4f7062df3d1c 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20251009 +20251010 diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index d435387a4ded..a613dc563a31 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,121 @@ +2025-10-09 David Malcolm <[email protected]> + + * access-diagram.cc: Update for renaming of fields of binding_key. + * ana-state-to-diagnostic-state.cc: Likewise. + * bounds-checking.cc: Likewise. Add store_manager param. + * call-summary.cc: Likewise. + * diagnostic-manager.cc: Drop includes of "basic-block.h" and + "gimple.h". + * engine.cc: Likewise. + * infinite-recursion.cc: Update for renaming of fields of + binding_key. + * kf.cc: Pass store_manager to mark_as_escaped. + * program-state.cc: Update for renaming of fields of binding_key. + * region-model-asm.cc: Pass store manager to + get_or_create_cluster. + * region-model-reachability.cc: Likewise. Update for renaming of + fields of binding_key. + * region-model.cc: Likewise. + (struct bad_pointer_finder): Drop. + (region_model::poison_any_pointers_to_descendents): Implement + iteration directly, rather than using store::for_each_binding. + Drop return value. + (selftest::test_struct): Set field in order y then x. Verify + that iteration yields bindings in order x then y. + * region-model.h + (region_model::poison_any_pointers_to_descendents): Drop return + value. + * region.cc: Pass store manager to get_or_create_cluster. + * store.cc (binding_map::const_iterator::operator==): New. + (binding_map::const_iterator::operator++): New. + (binding_map::const_iterator::operator*): New. + (binding_map::iterator::operator==): New. + (binding_map::iterator::operator++): New. + (binding_map::iterator::operator*): New. + (binding_map::binding_map): Reimplement. + (binding_map::operator=): Reimplement. + (binding_map::operator==): Reimplement. + (binding_map::hash): Reimplement. + (binding_map::get): Reimplement. + (binding_map::put): Reimplement. + (binding_map::overwrite): New. + (binding_map::remove): New. + (binding_map::begin): New. + (binding_map::end): New. + (binding_map::elements): New. + (binding_map::dump_to_pp): Reimplement. + (binding_map::to_json): Iterate over *this directly; drop sort. + (binding_map::add_to_tree_widget): Likewise. + (binding_map::cmp): Reimplement. + (binding_map::get_overlapping_bindings): Update for field + renamings. + (binding_cluster::binding_cluster): Add store_mgr param. + (binding_cluster::validate): Update for field renamings. + (binding_cluster::bind_compound_sval): Likewise. + (binding_cluster::purge_state_involving): Likewise. + (binding_cluster::maybe_get_compound_binding): Likewise. Add + store_mgr param. + (binding_cluster::can_merge_p): Likewise. Update for new + implementation. + (binding_cluster::make_unknown_relative_to): Likewise. + (binding_cluster::on_unknown_fncall): Likewise. + (binding_cluster::on_asm): Likewise. + (binding_cluster::get_representative_path_vars): Likewise. + (store::set_value): Likewise. + (store::on_maybe_live_values): Pass around store_manager. + (store::fill_region): Likewise. + (store::mark_region_as_unknown): Likewise. + (store::get_or_create_cluster): Likewise. + (store::can_merge_p): Likewise. + (store::mark_as_escaped): Likewise. + (store::canonicalize): Update for field renamings. + (store::loop_replay_fixup): Likewise. Pass around store_manager. + (store::replay_call_summary_cluster): Likewise. + (selftest::test_binding_map_ops): New. + (selftest::analyzer_store_cc_tests): Call it. + * store.h (class binding_map): Reimplement. + (binding_map::map_t): Drop. + (struct binding_map::symbolic_binding): New. + (binding_map::concrete_bindings_t): New. + (binding_map::symbolic_bindings_t): New. + (struct binding_map::bindings_pair): New. + (class binding_map::const_iterator): New. + (class binding_map::iterator): New. + (binding_map::get): Reimplement. + (binding_map::overwrite): New decl. + (binding_map::remove): Reimplement. + (binding_map::clear): Reimplement. + (binding_map::put): Reimplement. + (binding_map::empty_p): Reimplement. + (binding_map::begin): Reimplement. + (binding_map::end): Reimplement. + (binding_map::elements): Reimplement. + (binding_map::m_map): Drop field. + (binding_map::m_store_mgr): New field. + (binding_map::m_concrete): New field. + (binding_map::m_symbolic): New field. + (BindingVisitor): Drop. + (binding_cluster::map_t): Drop. + (binding_cluster::iterator_t): Reimplement. + (binding_cluster::const_iterator_t): New. + (binding_cluster::binding_cluster): Add store_mgr param. + (binding_cluster::for_each_value): Reimplement. + (binding_cluster::empty_p): Reimplement. + (binding_cluster::for_each_binding): Drop. + (binding_cluster::begin): Split into const/non-const overloads. + (binding_cluster::get_map): Add non-const overload. + (store::get_or_create_cluster): Add store_mgr param. + (store::mark_as_escaped): Likewise. + (store::for_each_binding): Drop. + (store::on_maybe_live_values): Add store_mgr param. + * svalue.cc (compound_svalue::compound_svalue): Reimplement. + (compound_svalue::accept): Likewise. + (compound_svalue::calc_complexity): Likewise. + (compound_svalue::maybe_fold_bits_within): Likewise. + * svalue.h (compound_svalue::const_iterator_t): New. + (compound_svalue::begin): Split into const/non-const overloads. + (compound_svalue::end): Likewise. + 2025-10-03 David Malcolm <[email protected]> Revert: diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index 1142d0640640..feffdf143949 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,27 @@ +2025-10-09 David Faust <[email protected]> + + * c-attribs.cc (c_common_attribute_table): Add btf_decl_tag and + btf_type_tag attributes. + (handle_btf_decl_tag_attribute): New handler for btf_decl_tag. + (hanlde_btf_type_tag_attribute): New handler for btf_type_tag. + (btf_tag_args_ok): Helper for new attribute handlers. + +2025-10-09 Jakub Jelinek <[email protected]> + + * c-common.h (D_CXX26): Define. + * c-common.cc (c_common_resword): Add D_CXX26 to + __builtin_c23_va_start flags, mention D_CXX26 in comment. + +2025-10-09 Jakub Jelinek <[email protected]> + + PR c/122188 + * c-gimplify.cc (c_gimplify_expr): Also gimplify the second operand + before the COND_EXPR and use in COND_EXPR result of gimplification. + +2025-10-09 David Malcolm <[email protected]> + + * c-opts.cc: Define INCLUDE_VECTOR. + 2025-10-08 Jakub Jelinek <[email protected]> PR c/122188 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 5099caab06d1..d23e8656f0fe 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,44 @@ +2025-10-09 Jakub Jelinek <[email protected]> + + * cp-tree.h (cp_build_function_type): Declare. + * lex.cc: Implement va_start changes from P3348R4 - C++26 should + refer to C23 not C17 paper. + (init_reswords): Set D_CXX26 in mask for C++23 and older. + * parser.cc (cp_parser_primary_expression): Handle RID_C23_VA_START. + (cp_parser_builtin_c23_va_start): New function. + * cp-objcp-common.cc (names_builtin_p): Likewise. + * decl.cc (grokfndecl, check_function_type): Pass + TYPE_NO_NAMED_ARGS_STDARG_P as last arg to build_function_type. + (grokdeclarator, static_fn_type): Use cp_build_function_type instead + of build_function_type. + * typeck.cc (merge_types): Likewise. + (structural_comptypes): Return false for TYPE_NO_NAMED_ARGS_STDARG_P + differences. + * lambda.cc (maybe_add_lambda_conv_op): Use cp_build_function_type + instead of build_function_type. + * tree.cc (cp_build_function_type): New function. + (strip_typedefs): Pass TYPE_NO_NAMED_ARGS_STDARG_P as last arg to + build_function_type. + * name-lookup.cc (push_local_extern_decl_alias): Likewise. + * module.cc (trees_in::tree_node): Use cp_build_function_type instead + of build_function_type. + * pt.cc (copy_default_args_to_explicit_spec, + rebuild_function_or_method_type, build_deduction_guide): Likewise. + (alias_ctad_tweaks): Pass TYPE_NO_NAMED_ARGS_STDARG_P as last arg to + build_function_type. + * decl2.cc (change_return_type, cp_reconstruct_complex_type): + Likewise. + +2025-10-09 Egas Ribeiro <[email protected]> + + PR c++/116477 + * semantics.cc (finish_call_expr): Move concept_check_p diagnostic + before processing_template_decl check to catch errors earlier. + +2025-10-09 David Malcolm <[email protected]> + + * error.cc: Define INCLUDE_VECTOR. + 2025-10-08 Jason Merrill <[email protected]> * init.cc (build_new_1): Also clobber for non-placement new. diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 08bc1b3d8bf0..de3aef8846f1 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,13 @@ +2025-10-09 Harald Anlauf <[email protected]> + + PR fortran/122206 + * trans-types.cc (gfc_get_function_type): Do not clobber an + existing procedure interface. + +2025-10-09 David Malcolm <[email protected]> + + * error.cc: Define INCLUDE_VECTOR. + 2025-10-08 Harald Anlauf <[email protected]> PR fortran/49111 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3b6a2744e0b4..22bdae369425 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,167 @@ +2025-10-10 YunQiang Su <[email protected]> + + Revert: + 2025-10-10 Jie Mei <[email protected]> + + * gcc.target/mips/mips16e2-cache.c: Use isa_rev>=2 instead of + -mips32r2 and remove -mips16 option. + * gcc.target/mips/mips16e2-cmov.c: Add isa_rev>=2 and remove + -mips16 option. + * gcc.target/mips/mips16e2-gp.c: Same as above. + * gcc.target/mips/mips16e2.c: Same as above. + +2025-10-10 YunQiang Su <[email protected]> + + Revert: + 2025-09-27 YunQiang Su <[email protected]> + + * gcc.target/mips/mips16e2.c: Use isa_rev=2 instead of >=2. + * gcc.target/mips/mips16e2-cache.c: Ditto. + * gcc.target/mips/mips16e2-cmov.c: Ditto. + * gcc.target/mips/mips16e2-gp.c: Ditto. + +2025-10-09 David Faust <[email protected]> + + * gcc.target/bpf/core-btf-tag-1.c: New test. + * gcc.target/bpf/core-btf-tag-2.c: New test. + +2025-10-09 David Faust <[email protected]> + + * gcc.dg/debug/btf/btf-decl-tag-1.c: New test. + * gcc.dg/debug/btf/btf-decl-tag-2.c: New test. + * gcc.dg/debug/btf/btf-decl-tag-3.c: New test. + * gcc.dg/debug/btf/btf-decl-tag-4.c: New test. + * gcc.dg/debug/btf/btf-type-tag-1.c: New test. + * gcc.dg/debug/btf/btf-type-tag-2.c: New test. + * gcc.dg/debug/btf/btf-type-tag-3.c: New test. + * gcc.dg/debug/btf/btf-type-tag-4.c: New test. + * gcc.dg/debug/btf/btf-type-tag-c2x-1.c: New test. + +2025-10-09 David Faust <[email protected]> + + * gcc.dg/debug/ctf/ctf-decl-tag-1.c: New test. + * gcc.dg/debug/ctf/ctf-type-tag-1.c: New test. + +2025-10-09 David Faust <[email protected]> + + * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-1.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-2.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-decl-tag-3.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-1.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-2.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-3.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-4.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-5.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-6.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-7.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-8.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-9.c: New test. + * gcc.dg/debug/dwarf2/dwarf-btf-type-tag-10.c: New test. + +2025-10-09 David Faust <[email protected]> + + * gcc.dg/attr-btf-decl-tag-1.c: New test. + * gcc.dg/attr-btf-decl-tag-2.c: New test. + * gcc.dg/attr-btf-type-tag-1.c: New test. + * gcc.dg/attr-btf-type-tag-2.c: New test. + * gcc.dg/attr-btf-type-tag-3.c: New test. + +2025-10-09 Jakub Jelinek <[email protected]> + + * c-c++-common/cpp/has-builtin-4.c: Expect + __has_builtin (__builtin_c23_va_start) == 1 also for C++26. + * c-c++-common/Wvarargs.c (foo3): Don't expect undefined behavior + warning for C++26. + * g++.dg/cpp26/stdarg1.C: New test. + * g++.dg/cpp26/stdarg2.C: New test. + * g++.dg/cpp26/stdarg3.C: New test. + * g++.dg/cpp26/stdarg4.C: New test. + * g++.dg/cpp26/stdarg5.C: New test. + * g++.dg/cpp26/stdarg6.C: New test. + * g++.dg/cpp26/stdarg7.C: New test. + * g++.dg/cpp26/stdarg8.C: New test. + * g++.dg/cpp26/stdarg9.C: New test. + * g++.dg/opt/pr60849.C (foo): Add explicit cast. + +2025-10-09 Egas Ribeiro <[email protected]> + + PR c++/116477 + * g++.dg/cpp2a/concepts-pr116477.C: New test. + +2025-10-09 Georg-Johann Lay <[email protected]> + + PR target/122222 + * gcc.target/avr/pr122222-sitod.c: New test. + +2025-10-09 Georg-Johann Lay <[email protected]> + + PR target/122220 + * gcc.target/avr/pr122220.c: New test. + +2025-10-09 David Malcolm <[email protected]> + + * gcc.dg/plugin/analyzer_cpython_plugin.cc: Replace INCLUDE_ + defines with include of include "analyzer/common.h". Update + for changes to binding_pair. + * gcc.dg/plugin/analyzer_kernel_plugin.cc: Likewise. + * gcc.dg/plugin/analyzer_known_fns_plugin.cc: Likewise. + +2025-10-09 Dimitar Dimitrov <[email protected]> + + * gcc.dg/tree-ssa/cselim-2.c: Pass -ftree-cselim option. + +2025-10-09 Harald Anlauf <[email protected]> + + PR fortran/122206 + * gfortran.dg/interface_abstract_6.f90: New test. + +2025-10-09 Jakub Jelinek <[email protected]> + + PR c/122188 + * gcc.dg/torture/pr122188.c: New test. + +2025-10-09 David Malcolm <[email protected]> + + * gcc.dg/plugin/diagnostic_group_plugin.cc: Define INCLUDE_VECTOR. + * gcc.dg/plugin/diagnostic_plugin_test_show_locus.cc: Likewise. + * gcc.dg/plugin/location_overflow_plugin.cc: Likewise. + +2025-10-09 Takayuki 'January June' Suwa <[email protected]> + + * gcc.target/xtensa/constsynth_2insns.c, + gcc.target/xtensa/constsynth_3insns.c, + gcc.target/xtensa/constsynth_double.c: Remove due to outdated. + * gcc.target/xtensa/constsynthV2_O2_costs0.c, + gcc.target/xtensa/constsynthV2_O2_costs5.c, + gcc.target/xtensa/constsynthV2_Os.c: New. + +2025-10-09 Takayuki 'January June' Suwa <[email protected]> + + * gcc.target/xtensa/BGEUI-BLTUI-32k-64k.c: + Disable optimizations and modify to also verify RTL dump in the + "expand" pass. + +2025-10-09 Richard Biener <[email protected]> + + PR tree-optimization/122212 + * gcc.dg/torture/pr122212.c: New testcase. + +2025-10-09 Georg-Johann Lay <[email protected]> + + PR target/122210 + * gcc.target/avr/dtofx.c: New test. + +2025-10-09 Georg-Johann Lay <[email protected]> + + PR target/122210 + * gcc.target/avr/fxtod.c: New test. + +2025-10-09 Kito Cheng <[email protected]> + + * gcc.target/riscv/rvv/vls-type-rvv-max-lmul.c: New test. + * gcc.target/riscv/rvv/vls-type-rvv-max-lmul-autovec.c: New + test. + 2025-10-08 Joseph Myers <[email protected]> * gcc.dg/c11-generic-4.c, gcc.dg/c23-generic-5.c, diff --git a/include/ChangeLog b/include/ChangeLog index 113bd11725ab..4a60236a756e 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,17 @@ +2025-10-09 David Faust <[email protected]> + + * btf.h (BTF_KIND_DECL_TAG, BTF_KIND_TYPE_TAG) New defines. + (struct btf_decl_tag): New. + +2025-10-09 David Faust <[email protected]> + + * ctf.h (CTF_K_DECL_TAG, CTF_K_TYPE_TAG): New defines. + +2025-10-09 David Faust <[email protected]> + + * dwarf2.def (DW_TAG_GNU_annotation): New DWARF extension. + (DW_AT_GNU_annotation): Likewise. + 2025-08-17 Nathaniel Shead <[email protected]> PR c++/120503 diff --git a/libatomic/ChangeLog b/libatomic/ChangeLog index 1cc0e86c0452..d15479525c06 100644 --- a/libatomic/ChangeLog +++ b/libatomic/ChangeLog @@ -1,3 +1,14 @@ +2025-10-09 Prathamesh Kulkarni <[email protected]> + Matthew Malcolmson <[email protected]> + + PR driver/81358 + * Makefile.am: Pass -fno-link-libatomic. + New rule all-local. + * configure.ac: Assert that CFLAGS is set and pass -fno-link-libatomic. + Use __libatomic_save_CFLAGS__ instead of save_CFLAGS. + * Makefile.in: Regenerate. + * configure: Regenerate. + 2025-10-05 Sam James <[email protected]> * Makefile.in: Regenerate. diff --git a/libcc1/ChangeLog b/libcc1/ChangeLog index b82fc530cacb..dff34a459f68 100644 --- a/libcc1/ChangeLog +++ b/libcc1/ChangeLog @@ -1,3 +1,7 @@ +2025-10-09 David Malcolm <[email protected]> + + * context.cc: Define INCLUDE_VECTOR. + 2025-10-05 Sam James <[email protected]> * Makefile.in: Regenerate. diff --git a/libgcc/config/avr/libf7/ChangeLog b/libgcc/config/avr/libf7/ChangeLog index 561a7536957b..c6e9cc647c88 100644 --- a/libgcc/config/avr/libf7/ChangeLog +++ b/libgcc/config/avr/libf7/ChangeLog @@ -1,3 +1,31 @@ +2025-10-09 Georg-Johann Lay <[email protected]> + + PR target/122222 + * libf7-asm.sx (D_floatsidf, D_floatunsidf): New modules. + * libf7-common.mk (F7_ASM_PARTS): Add D_floatsidf, D_floatunsidf. + (F7F, g_dx): Remove floatunsidf, floatsidf. + * libf7.c (f7_set_s32): Don't alias to f7_floatsidf. + (f7_set_u32): Don't alias to f7_floatunsidf. + * f7-renames.h: Rebuild + * f7-wraps.h: Rebuild. + +2025-10-09 Georg-Johann Lay <[email protected]> + + PR target/122220 + * libf7-asm.sx (to_integer): Return 0x80... on negative overflow. + +2025-10-09 Georg-Johann Lay <[email protected]> + + PR target/122210 + * libf7-common.mk (F7_ASM_PARTS): Add D2<fx> modules. + * libf7-asm.sx: Implement the D2<fx> modules. + +2025-10-09 Georg-Johann Lay <[email protected]> + + PR target/122210 + * libf7-common.mk (F7_ASM_PARTS): Add <fx>2D modules. + * libf7-asm.sx: Implement the <fx>2D modules. + 2025-10-06 Georg-Johann Lay <[email protected]> * libf7-common.mk (F7_ASM_PARTS): Add D_sincos. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 5eeb4cffdc22..456006aac3fc 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,21 @@ +2025-10-09 Jonathan Wakely <[email protected]> + + * include/bits/hashtable.h (_Hashtable::_S_nothrow_move): Use + diagnostic pragmas to allow constexpr if in C++14. Use value + member instead of operator(). + +2025-10-09 Jonathan Wakely <[email protected]> + + * include/bits/version.tpl: Fix comment on #endif. Tweak + description of when macros are defined. + * include/bits/version.h: Regenerate. + +2025-10-09 Tomasz KamiĆski <[email protected]> + + * testsuite/std/time/year_month_day_last/io.cc: New formatting tests. + * testsuite/std/time/year_month_weekday/io.cc: Likewise. + * testsuite/std/time/year_month_weekday_last/io.cc: Likewise. + 2025-10-08 Jonathan Wakely <[email protected]> * doc/xml/manual/status_cxx2017.xml: Replace broken link to PSTL
