https://gcc.gnu.org/g:5d69161a7c36a2da8565967eb0cc2df1322a05a3
commit r16-6186-g5d69161a7c36a2da8565967eb0cc2df1322a05a3 Author: GCC Administrator <[email protected]> Date: Wed Dec 17 00:16:30 2025 +0000 Daily bump. Diff: --- gcc/ChangeLog | 199 +++++++++++++++++++++++++++++++++++++++++++ gcc/DATESTAMP | 2 +- gcc/algol68/ChangeLog | 40 +++++++++ gcc/analyzer/ChangeLog | 39 +++++++++ gcc/testsuite/ChangeLog | 93 ++++++++++++++++++++ libga68/ChangeLog | 5 ++ libstdc++-v3/ChangeLog | 86 +++++++++++++++++++ maintainer-scripts/ChangeLog | 4 + 8 files changed, 467 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bbbe3933db42..0957357ed11a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,202 @@ +2025-12-16 Iain Sandoe <[email protected]> + + * config/aarch64/aarch64.cc + (aarch64_function_abi): Use checking assert. + (aarch64_fndecl_abi): Test for the availability of the + machine content before trying to look up the cached PCS. + Use a checking assert. + +2025-12-16 Jose E. Marchesi <[email protected]> + + * common.opt.urls: Regenerate. + +2025-12-16 Takayuki 'January June' Suwa <[email protected]> + + * config/xtensa/xtensa.cc (xtensa_expand_scc_SALT): + New sub-function that emits the SALT/SALTU instructions. + (xtensa_expand_scc): Change the part related to the SALT/SALTU + instructions to a call to the above sub-function. + +2025-12-16 Takayuki 'January June' Suwa <[email protected]> + + * config/xtensa/xtensa.cc + (xtensa_expand_block_set_libcall, + xtensa_expand_block_set_unrolled_loop, + xtensa_expand_block_set_small_loop, xtensa_call_tls_desc): + Change the return statement to pass the return value of + end_sequence() directly without going through a variable, and + remove the definition of that variable. + +2025-12-16 Claudiu Zissulescu <[email protected]> + Indu Bhagat <[email protected]> + + * config/aarch64/aarch64.md (addg): Update pattern to use + addg/subg instructions. + (stg): Update pattern. + (st2g): New pattern. + (tag_memory): Likewise. + (compose_tag): Likewise. + (irq): Update pattern to accept xzr register. + (gmi): Likewise. + (UNSPECV_TAG_SPACE): Define. + * config/aarch64/aarch64.cc (AARCH64_MEMTAG_GRANULE_SIZE): + Define. + (AARCH64_MEMTAG_TAG_BITSIZE): Likewise. + (aarch64_override_options_internal): Error out if MTE instructions + are not available. + (aarch64_post_cfi_startproc): Emit .cfi_mte_tagged_frame. + (aarch64_can_tag_addresses): Add MEMTAG specific handling. + (aarch64_memtag_tag_bitsize): New function + (aarch64_memtag_granule_size): Likewise. + (aarch64_memtag_insert_random_tag): Likwise. + (aarch64_memtag_add_tag): Likewise. + (aarch64_memtag_extract_tag): Likewise. + (aarch64_granule16_memory_address_p): Likewise. + (aarch64_emit_stxg_insn): Likewise. + (aarch64_memtag_tag_memory_via_loop): New definition. + (aarch64_expand_tag_memory): Likewise. + (aarch64_check_memtag_ops): Likewise. + (TARGET_MEMTAG_TAG_BITSIZE): Likewise. + (TARGET_MEMTAG_GRANULE_SIZE): Likewise. + (TARGET_MEMTAG_INSERT_RANDOM_TAG): Likewise. + (TARGET_MEMTAG_ADD_TAG): Likewise. + (TARGET_MEMTAG_EXTRACT_TAG): Likewise. + * config/aarch64/aarch64-builtins.cc + (aarch64_expand_builtin_memtag): Update set tag builtin logic. + * config/aarch64/aarch64-linux.h: Pass memtag-stack sanitizer + specific options to the linker. + * config/aarch64/aarch64-protos.h + (aarch64_granule16_memory_address_p): New prototype. + (aarch64_check_memtag_ops): Likewise. + (aarch64_expand_tag_memory): Likewise. + * config/aarch64/constraints.md (Umg): New memory constraint. + (Uag): New constraint. + (Ung): Likewise. + * config/aarch64/predicates.md (aarch64_memtag_tag_offset): + Refactor it. + (aarch64_granule16_imm6): Rename from aarch64_granule16_uimm6 and + refactor it. + (aarch64_granule16_memory_operand): New constraint. + * config/aarch64/iterators.md (MTE_PP): New code iterator to be + used for mte instructions. + (stg_ops): New code attributes. + (st2g_ops): Likewise. + (mte_name): Likewise. + * config/aarch64/aarch64.opt (aarch64-tag-memory-loop-threshold): + New parameter. + * doc/invoke.texi: Update documentation. + +2025-12-16 Claudiu Zissulescu <[email protected]> + Indu Bhagat <[email protected]> + + * asan.cc (handle_builtin_stack_restore): Accommodate MEMTAG + sanitizer. + (handle_builtin_alloca): Expand differently if MEMTAG sanitizer. + (get_mem_refs_of_builtin_call): Include MEMTAG along with + HWASAN. + (memtag_sanitize_stack_p): New definition. + (memtag_sanitize_allocas_p): Likewise. + (memtag_memintrin): Likewise. + (hwassist_sanitize_p): Likewise. + (hwassist_sanitize_stack_p): Likewise. + (report_error_func): Include MEMTAG along with HWASAN. + (build_check_stmt): Likewise. + (instrument_derefs): MEMTAG too does not deal with globals yet. + (instrument_builtin_call): Include MEMTAG along with HWASAN. + (maybe_instrument_call): Likewise. + (asan_expand_mark_ifn): Likewise. + (asan_expand_check_ifn): Likewise. + (asan_expand_poison_ifn): Expand differently if MEMTAG sanitizer. + (asan_instrument): Include MEMTAG along with HWASAN. + (hwasan_emit_prologue): Expand differently if MEMTAG sanitizer. + (hwasan_emit_untag_frame): Likewise. + * asan.h (memtag_sanitize_stack_p): New declaration. + (memtag_sanitize_allocas_p): Likewise. + (hwassist_sanitize_p): Likewise. + (hwassist_sanitize_stack_p): Likewise. + (asan_sanitize_use_after_scope): Include MEMTAG along with + HWASAN. + * cfgexpand.cc (align_local_variable): Likewise. + (expand_one_stack_var_at): Likewise. + (expand_stack_vars): Likewise. + (expand_one_stack_var_1): Likewise. + (init_vars_expansion): Likewise. + (expand_used_vars): Likewise. + (pass_expand::execute): Likewise. + * gimplify.cc (asan_poison_variable): Likewise. + * internal-fn.cc (expand_HWASAN_ALLOCA_POISON): New definition. + (expand_HWASAN_ALLOCA_UNPOISON): Expand differently if MEMTAG + sanitizer. + (expand_HWASAN_MARK): Likewise. + * internal-fn.def (HWASAN_ALLOCA_POISON): Define new. + * params.opt: Document new param. + * sanopt.cc (pass_sanopt::execute): Include MEMTAG along with + HWASAN. + * gcc.cc (sanitize_spec_function): Add check for memtag-stack. + * doc/tm.texi: Regenerate. + * target.def (extract_tag): Update documentation. + (add_tag): Likewise. + (insert_random_tag): Likewise. + +2025-12-16 Indu Bhagat <[email protected]> + Claudiu Zissulescu <[email protected]> + + * builtins.def: Adjust the macro to include the new + SANTIZIE_MEMTAG_STACK. + * flag-types.h (enum sanitize_code): Add new enumerator for + SANITIZE_MEMTAG and SANITIZE_MEMTAG_STACK. + * opts.cc (finish_options): memtag-stack sanitizer conflicts with + hwaddress and address sanitizers. + (sanitizer_opts): Add new memtag-stack sanitizer. + (parse_sanitizer_options): memtag-stack sanitizer cannot recover. + * params.opt: Add new params for memtag-stack sanitizer. + * doc/invoke.texi: Update documentation. + +2025-12-16 Claudiu Zissulescu <[email protected]> + + * target-insns.def (compose_tag): New target instruction. + * doc/md.texi (compose_tag): Add documentation. + +2025-12-16 Claudiu Zissulescu <[email protected]> + + * target-insns.def (tag_memory): New target instruction. + * doc/md.texi (tag_memory): Add documentation. + +2025-12-16 Jennifer Schmitz <[email protected]> + + * config/aarch64/aarch64.md: Include olympus.md. + * config/aarch64/olympus.md: New file. + * config/aarch64/tuning_models/olympus.h: Add dispatch + constraints and enable dispatch scheduling. + +2025-12-16 Maxim Kuvyrkov <[email protected]> + + * haifa-sched.cc (choose_ready): Don't require dfa_lookahead <= 0 + to schedule SCHED_GROUP_P insns first. + +2025-12-16 Richard Biener <[email protected]> + + PR ipa/122456 + * cgraph.cc (cgraph_edge::resolve_speculation): Handle + a NULL symtab_node::get (callee_decl). + +2025-12-16 Andrew Pinski <[email protected]> + + PR tree-optimization/123110 + * tree-cfgcleanup.cc (maybe_remove_forwarder_block): Add back + check for eh landing pad or non-local dest on the dest. + +2025-12-16 Andrew Pinski <[email protected]> + + PR tree-optimization/123111 + * tree-cfg.cc (ifconvertable_edge): New function. + (make_forwarders_with_degenerate_phis): Add skip_ifcvtable argument, + check ifconvertable_edge if skip_ifcvtable is true. + * tree-cfg.h (make_forwarders_with_degenerate_phis): New argument + with default of false. + * tree-cfgcleanup.cc (execute_cleanup_cfg_post_optimizing): Update + argument to make_forwarders_with_degenerate_phis. + 2025-12-15 Martin Jambor <[email protected]> PR ipa/107666 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index dc4c16cb4cb8..f9e8e911bab6 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20251216 +20251217 diff --git a/gcc/algol68/ChangeLog b/gcc/algol68/ChangeLog index 4444b1219a1f..b7640b9e702d 100644 --- a/gcc/algol68/ChangeLog +++ b/gcc/algol68/ChangeLog @@ -1,3 +1,43 @@ +2025-12-16 Jose E. Marchesi <[email protected]> + + * a68-parser-bottom-up.cc (reduce_prelude_packet): Do not support + multiple module definitions per packet. + +2025-12-16 Jose E. Marchesi <[email protected]> + + * lang.opt.urls: Regenerate. + +2025-12-16 Jose E. Marchesi <[email protected]> + + * lang.opt (-fmodules-map): New option. + (-fmodules-map-file): Likewise. + * a68.h: Add prototype for a68_process_module_map. + * a68-imports.cc (SKIP_WHITESPACES): Define. + (PARSE_BASENAME): Likewise. + (PARSE_INDICANT): Likewise. + (a68_process_module_map): New function. + * a68-lang.cc: (a68_init): Move initialization of + A68_MODULE_FILES from there... + (a68_init_options): to here. + (a68_handle_option): Handle OPT_fmodules_map and + OPT_fmodules_map_. + * a68-parser-pragmat.cc (handle_access_in_pragmat): Normalize + module indicants to upper case. + * ga68.texi (Module search options): New section. + +2025-12-16 Jose E. Marchesi <[email protected]> + + * a68.h: Prototypes for a68_get_file_size and a68_file_read. + * a68-parser-scanner.cc (a68_file_size): New function. + (a68_file_read): Renamed from io_read. + (get_source_size): Deleted function. + (include_files): Use a68_file_size and a68_file_read. + +2025-12-16 Mohammad-Reza Nabipoor <[email protected]> + + * a68-imports.cc (dump_encoded_mode): Replace "basic" with + "string". + 2025-12-15 Mohammad-Reza Nabipoor <[email protected]> * ga68-exports.pk (ga68_text_reloc_64): Renamed and diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index 08d73549f8e9..ceaebdcf0184 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,42 @@ +2025-12-16 David Malcolm <[email protected]> + + PR analyzer/123136 + * engine.cc + (strongly_connected_components::strongly_connected_components): + Consistently use size_t. + (strongly_connected_components::dump): Likewise. + (strongly_connected_components::to_json): Likewise. + (exploded_graph::print_bar_charts): Likewise. + (exploded_path::feasible_p): Remove unused locals. + (exploded_graph_annotator::exploded_graph_annotator): Use size_t + for iterator var. + (impl_run_checkers): Drop logger param of engine ctor. + * ops.cc (phis_for_edge_op::maybe_make): Drop unused param of + phis_for_edge_op ctor. + (phis_for_edge_op::phis_for_edge_op): Likewise. + * ops.h (operation::~operation): Make virtual. + (control_flow_op::dyn_cast_control_flow_op): Add "final override". + (phis_for_edge_op::phis_for_edge_op): Drop unused param. + (phis_for_edge_op::m_cfg_in_edge): Drop unused field. + * region-model.cc (engine::engine): Drop unused "logger" param. + * region-model.h (engine::engine): Likewise. + * supergraph-fixup-locations.cc (location_fixer::location_fixer): + Drop m_sg field. + (location_fixer::m_sg): Drop unused field. + (location_fixer::m_purge_map): Drop unused field. + * supergraph-sorting.cc (class sorting_worklist): Drop unused + m_worklist field. + +2025-12-16 David Malcolm <[email protected]> + + * supergraph.cc (supernode::dump_dot): Escape filename. + +2025-12-16 David Malcolm <[email protected]> + + PR analyzer/122003 + * checker-event.cc (return_event::get_program_state): New. + * checker-event.h (return_event::get_program_state): New decl. + 2025-12-15 David Malcolm <[email protected]> PR analyzer/123085 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 8dd96a70dfdb..4dd919bdc240 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,96 @@ +2025-12-16 Jose E. Marchesi <[email protected]> + + PR algol68/123131 + * algol68/compile/modules/compile.exp: Pass module include path + via extra_flags to algol68-dg-runtest. + * algol68/execute/modules/execute.exp: Pass module include path + via algol68_compile_args. + * lib/algol68-dg.exp (MODULES_OPTIONS): Delete. + (algol68-dg-runtest): Do not use MODULE_OPTIONS. + * lib/algol68-torture.exp (BUILT_MODULES_DIR): Delete. + (algol68-torture-execute): Do not use BUILT_MODULES_DIR. + +2025-12-16 David Malcolm <[email protected]> + + PR diagnostics/123142 + * gcc.dg/plugin/diagnostic-test-graphs-html.c: Add + dg-require-dot directive. + +2025-12-16 Jose E. Marchesi <[email protected]> + + * algol68/compile/error-compile-unknown-tag-1.a68: Use a single + module per packet. + * algol68/compile/error-module-coercions-1.a68: Likewise. + * algol68/compile/error-module-ranges-1.a68: Likewise. + * algol68/compile/module-2.a68: Likewise. + * algol68/compile/module-pub-mangling-1.a68: Likewise. + * algol68/compile/module-pub-mangling-2.a68: Likewise. + * algol68/compile/module-pub-mangling-3.a68: Likewise. + * algol68/compile/module-pub-mangling-4.a68: Likewise. + * algol68/compile/module-pub-mangling-5.a68: Likewise. + * algol68/compile/module-pub-mangling-6.a68: Likewise. + * algol68/compile/warning-module-hidding-1.a68: Likewise. + +2025-12-16 Jose E. Marchesi <[email protected]> + + * algol68/execute/modules/Modules20.map: New file. + * algol68/execute/modules/module-bar.a68: New file. + * algol68/execute/modules/module-foo.a68: New file. + * algol68/execute/modules/program-19.a68: New file. + * algol68/execute/modules/program-20.a68: New file. + +2025-12-16 Richard Biener <[email protected]> + + PR testsuite/123137 + * g++.dg/vect/pr64410.cc: Add -mfpmath=sse -msse on x86. + +2025-12-16 Rainer Orth <[email protected]> + + * gcc.target/i386/shift-gf2p8affine-2.c: Skip on Solaris + without gas. + +2025-12-16 Claudiu Zissulescu <[email protected]> + Indu Bhagat <[email protected]> + + * gcc.target/aarch64/memtag/alloca-1.c: New test. + * gcc.target/aarch64/memtag/alloca-2.c: New test. + * gcc.target/aarch64/memtag/alloca-3.c: New test. + * gcc.target/aarch64/memtag/arguments-1.c: New test. + * gcc.target/aarch64/memtag/arguments-2.c: New test. + * gcc.target/aarch64/memtag/arguments-3.c: New test. + * gcc.target/aarch64/memtag/arguments-4.c: New test. + * gcc.target/aarch64/memtag/arguments.c: New test. + * gcc.target/aarch64/memtag/basic-1.c: New test. + * gcc.target/aarch64/memtag/basic-3.c: New test. + * gcc.target/aarch64/memtag/basic-struct.c: New test. + * gcc.target/aarch64/memtag/large-array.c: New test. + * gcc.target/aarch64/memtag/local-no-escape.c: New test. + * gcc.target/aarch64/memtag/memtag.exp: New file. + * gcc.target/aarch64/memtag/no-sanitize-attribute.c: New test. + * gcc.target/aarch64/memtag/value-init.c: New test. + * gcc.target/aarch64/memtag/vararray-gimple.c: New test. + * gcc.target/aarch64/memtag/vararray.c: New test. + * gcc.target/aarch64/memtag/zero-init.c: New test. + * gcc.target/aarch64/memtag/texec-1.c: New test. + * gcc.target/aarch64/memtag/texec-2.c: New test. + * gcc.target/aarch64/memtag/texec-3.c: New test. + * gcc.target/aarch64/memtag/vla-1.c: New test. + * gcc.target/aarch64/memtag/vla-2.c: New test. + * lib/target-supports.exp (check_effective_target_aarch64_mte): + New function. + * gcc.target/aarch64/memtag/cfi-mte-memtag-frame-1.c: New file. + * gcc.target/aarch64/memtag/mte-sig.h: New file. + +2025-12-16 Claudiu Zissulescu <[email protected]> + Indu Bhagat <[email protected]> + + * gcc.target/aarch64/acle/memtag_1.c: Update test. + +2025-12-16 Andrew Pinski <[email protected]> + + PR tree-optimization/123110 + * gcc.dg/pr123110-1.c: New test. + 2025-12-15 Martin Jambor <[email protected]> * gcc.dg/lto/fnptr-from-rec-1_0.c: New test. diff --git a/libga68/ChangeLog b/libga68/ChangeLog index b1fd5d6a487a..129bbeb1943a 100644 --- a/libga68/ChangeLog +++ b/libga68/ChangeLog @@ -1,3 +1,8 @@ +2025-12-16 Pietro Monteiro <[email protected]> + + * ga68-unistr.c (_libga68_u32_cmp): Add `static' specifier. + * ga68.h (_libga68_u32_cmp): Remove prototype. + 2025-11-30 Jose E. Marchesi <[email protected]> * Makefile.am: New file. diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 9d123c647a5e..504345dd38c2 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,89 @@ +2025-12-16 Jonathan Wakely <[email protected]> + + * include/std/type_traits (_Integer_kind): New enum type. + (__is_integral_helper::_S_kind): New static data member in + primary template and each explicit specialization. + (__is_signed_integer, __is_unsigned_integer): Use _S_kind + instead of O(n) disjunction with is_same. + +2025-12-16 Jonathan Wakely <[email protected]> + + PR libstdc++/122907 + * include/bits/cpp_type_traits.h (__memcpyable_integer<bool>): + Define as false. + * testsuite/25_algorithms/copy/122907.cc: New test. + +2025-12-16 Jonathan Wakely <[email protected]> + + * testsuite/lib/libstdc++.exp (dg-v3-runtest) Set default_std to + 20. + +2025-12-16 Jonathan Wakely <[email protected]> + + * include/std/chrono (chrono::__detail::__get_leap_second_info): + Update expiry date for leap seconds list. + * src/c++20/tzdb.cc (tzdb_list::_Node::_S_read_leap_seconds): + Likewise. + * src/c++20/tzdata.zi: Import new file from 2025c release. + +2025-12-16 Nathan Myers <[email protected]> + + PR libstdc++/119739 + * include/bits/random.tcc: Add generate_canonical impl for C++26. + * testsuite/26_numerics/random/uniform_real_distribution/operators/64351.cc: + Adapt test for both pre- and post- C++26. + * testsuite/26_numerics/random/uniform_real_distribution/operators/gencanon.cc: + Test for float and double from 32-bit RNG, including 1.0 do-over. + +2025-12-16 Patrick Palka <[email protected]> + + PR libstdc++/113299 + * include/bits/deque.tcc (__copy_move_a1): Constrain with + __is_any_random_access_iter instead of __is_random_access_iter. + (__copy_move_backward_a1): Likewise. + (__equal_aux1): Likewise. + * include/bits/stl_algo.h (__search_n): Use + __iter_concept_or_category instead of __iterator_category + or iterator_traits::iterator_category. + (find_end): Likewise. + (__is_permutation): Likewise. + (for_each_n): Likewise. + (unique_copy): Likewise, for constant iterators. + (sample): Likewise, for constant iterators. + * include/bits/stl_algobase.h (__copy_move_a1): Adjust + deque-based forward declaration accordingly. + (__copy_move_backward_a1): Likewise. + (__equal_aux1): Likewise. + (__lexicographical_compare_impl): Use + __iter_concept_or_category instead of __iterator_category or + iterator_traits::iterator_category. + (__equal4): Likewise. + * include/bits/stl_iterator_base_funcs.h + (__iter_concept_or_category): New. + (__is_any_random_access_iter): New. + (_GLIBCXX_ITER_MOVE): New. + * include/bits/stl_uninitialized.h (uninitialized_copy_n): + Use __iterator_concept_or_category instead of + __iterator_category for the constant iterator __first. + (__uninitialized_copy_n_pair): Likewise. + * include/bits/version.def (algorithm_iterator_requirements): + Define. + * include/bits/version.h: Regenerate. + * include/std/algorithm: Provide the FTM + __cpp_lib_algorithm_iterator_requirements. + * include/std/memory: Likewise. + * include/std/numeric: Likewise. Include + <bits/stl_iterator_base_funcs.h>. + (reduce): Use __is_any_random_access_iter instead of + __is_random_access_iter. + (transform_reduce): Likewise. + (inclusive_scan): Use _GLIBCXX_ITER_MOVE instead of std::move. + * testsuite/25_algorithms/find_end/c++20_iter.cc: New test. + * testsuite/25_algorithms/sample/c++20_iter.cc: New test. + * testsuite/25_algorithms/search_n/c++20_iter.cc: New test. + * testsuite/25_algorithms/unique_copy/c++20_iter.cc: New test. + * testsuite/26_numerics/inclusive_scan/c++20_iter.cc: New test. + 2025-12-12 Luc Grosheintz <[email protected]> * include/std/mdspan (submdspan): Fix missing '::template'. diff --git a/maintainer-scripts/ChangeLog b/maintainer-scripts/ChangeLog index dbbe1db5c14d..a6ee65436be7 100644 --- a/maintainer-scripts/ChangeLog +++ b/maintainer-scripts/ChangeLog @@ -1,3 +1,7 @@ +2025-12-16 Pietro Monteiro <[email protected]> + + * update_web_docs_git (MANUALS): Add ga68 and ga68-internals. + 2025-09-01 Gerald Pfeifer <[email protected]> * update_web_docs_libstdcxx_git: Copy our "inner" documentation
