+2025-11-26 Jeff Law <jlaw@ventanamicro.com>
+
+ Revert:
+ 2025-10-14 Zhongyao Chen <chenzhongyao.hit@gmail.com>
+
+ * common/config/riscv/riscv-common.cc (riscv_subset_list::get_profile_name):
+ New function.
+ * config/riscv/riscv-c.cc (riscv_cpu_cpp_builtins): Define
+ profile macro if a profile is detected.
+ * config/riscv/riscv-subset.h (riscv_subset_list::get_profile_name): Declare.
+
+2025-11-26 Alejandro Colomar <alx@kernel.org>
+
+ * doc/extend.texi (Syntax Extensions): Document _Maxof & _Minof.
+
+2025-11-26 Tamar Christina <tamar.christina@arm.com>
+
+ * optabs.cc (emit_cmp_and_jump_insns): Check for non-single use.
+
+2025-11-26 Jeff Law <jlaw@ventanamicro.com>
+
+ PR rtl-optimization/122735
+ * simplify-rtx.cc (simplify_binary_operation_1): When moving a SUBREG
+ from an outer expression to an inner operand, make sure to avoid
+ trying to create invalid SUBREGs.
+
+2025-11-26 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/122867
+ * config/arm/arm.cc (arm_print_operand): Use %- to
+ emit LOCAL_LABEL_PREFIX.
+ (arm_print_operand_punct_valid_p): Allow %- for punct
+ and make %_ valid for all compilation variants.
+ * config/arm/thumb2.md (*thumb2_cbz): Handle very
+ large branch ranges that exceed the limit of b<cond>.
+ (*thumb2_cbnz): Likewise.
+
+2025-11-26 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/110571
+ * tree-vectorizer.h (vect_need_peeling_or_partial_vectors_p): Remove.
+ * tree-vect-loop.cc (vect_need_peeling_or_partial_vectors_p):
+ Fix when called on epilog loops. Make static.
+ * tree-vect-loop-manip.cc (vect_do_peeling): Do not
+ re-compute LOOP_VINFO_PEELING_FOR_NITER.
+
+2025-11-26 Tamar Christina <tamar.christina@arm.com>
+
+ PR tree-optimization/122861
+ * optabs.cc (emit_cmp_and_jump_insns): Check argument instead of result.
+
+2025-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ * doc/invoke.texi (gnu++17): Remove comment about the default.
+ (c++20): Remove note about experimental support, except add a note
+ that modules are still experimental and need to be enabled separately.
+ (gnu++20): Likewise. Move here comment about the default.
+ (fcoroutines): Mention it is enabled by default for C++20 and later.
+ * doc/standards.texi: Document that the default for C++ is
+ -std=gnu++20.
+
+2025-11-26 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-stmts.cc (vectorizable_simd_clone_call): Handle
+ AVX512 masking for loop masked SIMD clone call.
+
+2025-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/122835
+ * tree-eh.cc (replace_goto_queue_1): Handle GIMPLE_ASM.
+ (maybe_record_in_goto_queue): Likewise.
+ (lower_eh_constructs_2): Likewise.
+
+2025-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/119683
+ * gimple-match.h (gimple_match_ctx): New inline function.
+ * match.pd ((mult (plus:s (mult:s @0 @1) @2) @3)): Capture
+ PLUS, use get_range_query (cfun) instead of
+ get_global_range_query () and pass gimple_match_ctx (@5)
+ as 3rd argument to range_of_expr.
+ ((plus (mult:s (plus:s @0 @1) @2) @3)): Similarly for MULT,
+ with @4 instead of @5.
+ ((t * u) / u -> t): Similarly with @2 instead of @4.
+ ((t * u) / v -> t * (u / v)): Capture MULT, pass gimple_match_ctx (@3)
+ as 3rd argument to range_of_expr.
+ ((X + M*N) / N -> X / N + M): Pass gimple_match_ctx (@3) or
+ gimple_match_ctx (@4) as 3rd arg to some range_of_expr calls.
+ ((X - M*N) / N -> X / N - M): Likewise.
+ ((X + C) / N -> X / N + C / N): Similarly.
+ (((T)(A)) + CST -> (T)(A + CST)): Capture CONVERT, use
+ get_range_query (cfun) instead of get_global_range_query ()
+ and pass gimple_match_ctx (@2) as 3rd argument to range_of_expr.
+ (x_5 == cstN ? cst4 : cst3): Capture EQNE and pass
+ gimple_match_ctx (@4) as 3rd argument to range_of_expr.
+
+2025-11-26 Soumya AR <soumyaa@nvidia.com>
+
+ * config/aarch64/aarch64-json-tunings-parser.cc: Include
+ aarch64-json-tunings-parser-generated.inc.
+ * config/aarch64/aarch64-json-tunings-printer.cc: Include
+ aarch64-json-tunings-printer-generated.inc.
+ * config/aarch64/aarch64-opts.h (AARCH64_LDP_STP_POLICY): Use
+ aarch64-tuning-enums.def.
+ * config/aarch64/aarch64-protos.h (AARCH64_AUTOPREFETCH_MODE): Use
+ aarch64-tuning-enums.def.
+ * config/aarch64/t-aarch64: Invoke
+ aarch64-generate-json-tuning-routines.py if the schema is modified.
+ * config/aarch64/aarch64-generate-json-tuning-routines.py: New
+ maintenance script to generate JSON parser/printer routines.
+ * config/aarch64/aarch64-json-tunings-parser-generated.inc: New file.
+ * config/aarch64/aarch64-json-tunings-printer-generated.inc: New file.
+ * config/aarch64/aarch64-tuning-enums.def: New file.
+
+2025-11-26 Soumya AR <soumyaa@nvidia.com>
+
+ * config.gcc: Add aarch64-json-tunings-parser.o.
+ * config/aarch64/aarch64.cc (aarch64_override_options_internal): Invoke
+ aarch64_load_tuning_params_from_json if -muser-provided-CPU= is
+ (aarch64_json_tunings_tests): Extern aarch64_json_tunings_tests().
+ (aarch64_run_selftests): Add aarch64_json_tunings_tests().
+ * config/aarch64/aarch64.opt: New option.
+ * config/aarch64/t-aarch64 (aarch64-json-tunings-parser.o): New define.
+ * config/aarch64/aarch64-json-schema.h: New file.
+ * config/aarch64/aarch64-json-tunings-parser.cc: New file.
+ * config/aarch64/aarch64-json-tunings-parser.h: New file.
+
+2025-11-26 Soumya AR <soumyaa@nvidia.com>
+
+ * json.h (class object): Add get_map () method.
+ (is_a_helper<json::literal *>, is_a_helper<const json::literal *>):
+ New template specializations.
+
+2025-11-26 Soumya AR <soumyaa@nvidia.com>
+
+ * config.gcc: Add aarch64-json-tunings-printer.o.
+ * config/aarch64/aarch64.cc (aarch64_override_options_internal): Invoke
+ aarch64_print_tune_params if -fdump-tuning-model= is specified.
+ * config/aarch64/aarch64.opt: New option.
+ * config/aarch64/t-aarch64 (aarch64-json-tunings-printer.o): New define.
+ * config/aarch64/aarch64-json-tunings-printer.cc: New file.
+ * config/aarch64/aarch64-json-tunings-printer.h: New file.
+
+2025-11-26 Soumya AR <soumyaa@nvidia.com>
+
+ * config/aarch64/aarch64-protos.h
+ (struct scale_addr_mode_cost): Remove const from struct members.
+ (struct cpu_addrcost_table): Likewise.
+ (struct cpu_regmove_cost): Likewise.
+ (struct simd_vec_cost): Likewise.
+ (struct sve_vec_cost): Likewise.
+ (struct aarch64_base_vec_issue_info): Likewise.
+ (struct aarch64_simd_vec_issue_info): Likewise.
+ (struct aarch64_sve_vec_issue_info): Likewise.
+ (struct aarch64_vec_issue_info): Likewise.
+ (struct cpu_vector_cost): Likewise.
+ (struct cpu_branch_cost): Likewise.
+ (struct cpu_approx_modes): Likewise.
+ (struct cpu_prefetch_tune): Likewise.
+ * config/arm/aarch-common-protos.h
+ (struct alu_cost_table): Remove const from struct members.
+ (struct mult_cost_table): Likewise.
+ (struct mem_cost_table): Likewise.
+ (struct fp_cost_table): Likewise.
+ (struct vector_cost_table): Likewise.
+ (struct cpu_cost_table): Likewise.
+
+2025-11-26 Dhruv Chawla <dhruvc@nvidia.com>
+
+ PR middle-end/116815
+ * config/aarch64/aarch64.md
+ (*aarch64_plus_within_<optab><mode>3_<ovf_commutate>): New pattern.
+ (*aarch64_minus_within_<optab><mode>3): Likewise.
+ * config/aarch64/iterators.md (ovf_add_cmp): New code attribute.
+ (udf_sub_cmp): Likewise.
+ (UMAXMIN): New code iterator.
+ (ovf_commutate): New iterator.
+ (ovf_comm_opp): New int attribute.
+
+2025-11-26 Pan Li <pan2.li@intel.com>
+
+ * match.pd: Add pattern for SAT_MUL form 7 include
+ mul and widen_mul.
+
+2025-11-26 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ * tree-ssa-phiprop.cc (propagate_with_phi): Only
+ calculate on demand post dom info when the new store
+ might trap.
+
+2025-11-26 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ PR tree-optimization/122847
+ * tree-ssa-phiprop.cc (propagate_with_phi): Add type
+ check for reuse of the phi for the delayed statements.
+
2025-11-25 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (gcc_cv_header_zstd_h): Save, restore CXXFLAGS,
+2025-11-26 Alejandro Colomar <alx@kernel.org>
+
+ * c-common.cc (c_common_reswords): Add _Maxof & _Minof keywords.
+ (c_maxof_type, c_minof_type): New functions.
+ * c-common.def (MAXOF_EXPR, MINOF_EXPR): New trees.
+ * c-common.h (enum rid): Add RID_MAXOF & RID_MINOF constants.
+ (c_maxof_type, c_minof_type): New prototypes.
+
+2025-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ * c-opts.cc (c_common_init_options): Call set_std_cxx20 rather than
+ set_std_cxx17.
+ * c.opt (std=c++2a): Change description to deprecated option wording.
+ (std=c++20): Remove experimental support part.
+ (std=c++2b): Change description to deprecated option wording.
+ (std=gnu++2a): Likewise.
+ (std=gnu++20): Remove experimental support part.
+ (std=gnu++2b): Change description to deprecated option wording.
+
2025-11-25 Jason Merrill <jason@redhat.com>
* c.opt: Add --compile-std-module.
+2025-11-26 Alejandro Colomar <alx@kernel.org>
+
+ * c-parser.cc (c_parser_maxof_or_minof_expression): New func.
+ (c_parser_unary_expression): Add RID_MAXOF & RID_MINOF cases.
+ * c-tree.h (c_expr_maxof_type): New prototype.
+ (c_expr_minof_type): New prototype.
+ * c-typeck.cc (c_expr_maxof_type): New function.
+ (c_expr_minof_type): New function.
+
2025-11-22 Sandra Loosemore <sloosemore@baylibre.com>
Julian Brown <julian@codesourcery.com>
+2025-11-26 Marek Polacek <polacek@redhat.com>
+
+ PR c++/121325
+ * pt.cc (tsubst_tree_vec): New.
+ (tsubst_pack_index): Call it.
+
2025-11-25 Nathaniel Shead <nathanieloshead@gmail.com>
PR c++/122699
+2025-11-26 Tobias Burnus <tburnus@baylibre.com>
+
+ * dump-parse-tree.cc (show_attr): Handle OpenMP's 'local' clause
+ and the 'groupprivate' directive.
+ (show_omp_clauses): Handle dyn_groupprivate.
+ * frontend-passes.cc (gfc_code_walker): Walk dyn_groupprivate.
+ * gfortran.h (enum gfc_statement): Add ST_OMP_GROUPPRIVATE.
+ (enum gfc_omp_fallback, gfc_add_omp_groupprivate,
+ gfc_add_omp_declare_target_local): New.
+ * match.h (gfc_match_omp_groupprivate): New.
+ * module.cc (enum ab_attribute, mio_symbol_attribute, load_commons,
+ write_common_0): Handle 'groupprivate' + declare target's 'local'.
+ * openmp.cc (gfc_omp_directives): Add 'groupprivate'.
+ (gfc_free_omp_clauses): Free dyn_groupprivate.
+ (enum omp_mask2): Add OMP_CLAUSE_LOCAL and OMP_CLAUSE_DYN_GROUPPRIVATE.
+ (gfc_match_omp_clauses): Match them.
+ (OMP_TARGET_CLAUSES): Add OMP_CLAUSE_DYN_GROUPPRIVATE.
+ (OMP_DECLARE_TARGET_CLAUSES): Add OMP_CLAUSE_LOCAL.
+ (gfc_match_omp_declare_target): Handle groupprivate + fixes.
+ (gfc_match_omp_threadprivate): Code move to and calling now ...
+ (gfc_match_omp_thread_group_private): ... this new function.
+ Also handle groupprivate.
+ (gfc_match_omp_groupprivate): New.
+ (resolve_omp_clauses): Resolve dyn_groupprivate.
+ * parse.cc (decode_omp_directive): Match groupprivate.
+ (case_omp_decl, parse_spec, gfc_ascii_statement): Handle it.
+ * resolve.cc (resolve_symbol): Handle groupprivate.
+ * symbol.cc (gfc_check_conflict, gfc_copy_attr): Handle 'local'
+ and 'groupprivate'.
+ (gfc_add_omp_groupprivate, gfc_add_omp_declare_target_local): New.
+ * trans-common.cc (build_common_decl,
+ accumulate_equivalence_attributes): Print 'sorry' for
+ groupprivate and declare target's local.
+ * trans-decl.cc (add_attributes_to_decl): Likewise..
+ * trans-openmp.cc (gfc_trans_omp_clauses): Print 'sorry' for
+ dyn_groupprivate.
+ (fallback): Process declare target with link/local as
+ done for 'enter'.
+
+2025-11-26 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/104650
+ * decl.cc (gfc_get_pdt_instance): If the PDT template has
+ finalizers, make a new f2k_derived namespace for this intance
+ and copy the template namespace into it. Set the instance
+ template_sym field to point to the template.
+ * expr.cc (gfc_check_pointer_assign): Allow array value pointer
+ lvalues to point to scalar null expressions in initialization.
+ * gfortran.h : Add the template_sym field to gfc_symbol.
+ * resolve.cc (gfc_resolve_finalizers): For a pdt_type, copy the
+ final subroutines with the same type argument into the pdt_type
+ finalizer list. Prevent final subroutine type checking and
+ creation of the vtab for pdt_templates.
+ * symbol.cc (gfc_free_symbol): Do not call gfc_free_namespace
+ for pdt_type with finalizers. Instead, free the finalizers and
+ the namespace.
+
2025-11-24 Paul Thomas <pault@gcc.gnu.org>
PR fortran/122766
+2025-11-26 Jeff Law <jlaw@ventanamicro.com>
+
+ Revert:
+ 2025-11-26 Zhongyao Chen <chenzhongyao.hit@gmail.com>
+
+ * gcc.target/riscv/predef-profiles-1.c: New test for __riscv_rvi20u64.
+ * gcc.target/riscv/predef-profiles-2.c: New test for __riscv_rvi20u32.
+ * gcc.target/riscv/predef-profiles-3.c: New test for __riscv_rva20u64.
+ * gcc.target/riscv/predef-profiles-4.c: New test for __riscv_rva22u64.
+ * gcc.target/riscv/predef-profiles-5.c: New test for __riscv_rva23u64.
+ * gcc.target/riscv/predef-profiles-6.c: New test for __riscv_rva23s64.
+ * gcc.target/riscv/predef-profiles-7.c: New test for __riscv_rvb23u64.
+ * gcc.target/riscv/predef-profiles-8.c: New test for __riscv_rvb23s64.
+
+2025-11-26 Alejandro Colomar <alx@kernel.org>
+
+ * gcc.dg/maxof-bitint.c: New test.
+ * gcc.dg/maxof-bitint575.c: New test.
+ * gcc.dg/maxof-compile.c: New test.
+ * gcc.dg/maxof-pedantic-errors.c: New test.
+ * gcc.dg/maxof-pedantic.c: New test.
+
+2025-11-26 Jeff Law <jlaw@ventanamicro.com>
+
+ PR rtl-optimization/122735
+ * gcc.dg/torture/pr122735.c: New test.
+
+2025-11-26 Tobias Burnus <tburnus@baylibre.com>
+
+ * gfortran.dg/gomp/crayptr2.f90: Move dg-error line.
+ * gfortran.dg/gomp/declare-target-2.f90: Extend.
+ * gfortran.dg/gomp/declare-target-4.f90: Update comment,
+ enable one test.
+ * gfortran.dg/gomp/declare-target-5.f90: Update dg- wording,
+ add new test.
+ * gfortran.dg/gomp/declare-target-indirect-2.f90: Expect
+ 'device_type(any)' in scan-tree-dump.
+ * gfortran.dg/gomp/declare-target-6.f90: New test.
+ * gfortran.dg/gomp/dyn_groupprivate-1.f90: New test.
+ * gfortran.dg/gomp/dyn_groupprivate-2.f90: New test.
+ * gfortran.dg/gomp/groupprivate-1.f90: New test.
+ * gfortran.dg/gomp/groupprivate-2.f90: New test.
+ * gfortran.dg/gomp/groupprivate-3.f90: New test.
+ * gfortran.dg/gomp/groupprivate-4.f90: New test.
+ * gfortran.dg/gomp/groupprivate-5.f90: New test.
+ * gfortran.dg/gomp/groupprivate-6.f90: New test.
+
+2025-11-26 Marek Polacek <polacek@redhat.com>
+
+ PR c++/121325
+ * g++.dg/cpp26/pack-indexing18.C: New test.
+
+2025-11-26 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/122867
+ * gcc.target/arm/cbz-range.c: New test.
+
+2025-11-26 Tamar Christina <tamar.christina@arm.com>
+
+ PR tree-optimization/122861
+ * gcc.target/aarch64/sve/vect-early-break-cbranch_10.c: New test.
+ * gcc.target/aarch64/sve/vect-early-break-cbranch_11.c: New test.
+ * gcc.target/aarch64/sve/vect-early-break-cbranch_12.c: New test.
+ * gcc.target/aarch64/sve/vect-early-break-cbranch_13.c: New test.
+ * gcc.target/aarch64/sve/vect-early-break-cbranch_14.c: New test.
+ * gcc.target/aarch64/sve/vect-early-break-cbranch_15.c: New test.
+ * gcc.target/aarch64/sve/vect-early-break-cbranch_9.c: New test.
+ * gcc.target/aarch64/vect-early-break-cbranch_4.c: New test.
+ * gcc.target/aarch64/vect-early-break-cbranch_5.c: New test.
+
+2025-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ * lib/target-supports.exp: Set cxx_default to c++20 rather than
+ c++17.
+ * lib/g++-dg.exp (g++-std-flags): Reorder list to put 20 first
+ and 17 after 26.
+ * g++.dg/debug/pr80461.C (bar): Use v = v + 1; instead of ++v;.
+ * g++.dg/debug/pr94459.C: Add -std=gnu++17 to dg-options.
+ * g++.dg/diagnostic/virtual-constexpr.C: Remove dg-skip-if,
+ instead use { c++11 && c++17_down } effective target instead of
+ c++11.
+ * g++.dg/guality/pr67192.C: Add -std=gnu++17.
+ * g++.dg/torture/pr84961-1.C: Likewise.
+ * g++.dg/torture/pr84961-2.C: Likewise.
+ * g++.dg/torture/pr51482.C (anim_track_bez_wvect::tangent): Cast
+ key_class to int before multiplying it by float.
+ * g++.dg/torture/stackalign/unwind-4.C (foo): Use g_a = g_a + 1;
+ instead of g_a++;.
+ * g++.dg/tree-prof/partition1.C (bar): Use l = l + 1; return l;
+ instead of return ++l;.
+ * obj-c++.dg/exceptions-3.mm: Add -std=gnu++17.
+ * obj-c++.dg/exceptions-5.mm: Likewise.
+
+2025-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/122835
+ * gcc.dg/torture/pr122835.c: New test.
+
+2025-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/119683
+ * gcc.dg/tree-ssa/pr119683.c: New test.
+
+2025-11-26 Richard Biener <rguenther@suse.de>
+
+ * gcc.dg/vect/vect-simd-clone-22.c: Add -w.
+ * gcc.dg/vect/vect-simd-clone-23.c: Likewise.
+
+2025-11-26 Soumya AR <soumyaa@nvidia.com>
+
+ * gcc.target/aarch64/aarch64-json-tunings/aarch64-json-tunings.exp: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/boolean-1.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/boolean-1.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/boolean-2.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/boolean-2.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/empty-brackets.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/empty-brackets.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/empty.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/empty.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/enum-1.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/enum-1.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/enum-2.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/enum-2.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/integer-1.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/integer-1.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/integer-2.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/integer-2.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/integer-3.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/integer-3.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/string-1.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/string-1.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/string-2.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/string-2.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/test-all.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/test-all.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/unidentified-key.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/unidentified-key.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/unsigned-1.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/unsigned-1.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/unsigned-2.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/unsigned-2.json: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/unsigned-3.c: New test.
+ * gcc.target/aarch64/aarch64-json-tunings/unsigned-3.json: New test.
+
+2025-11-26 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/104650
+ * gfortran.dg/pdt_70.f03: New test.
+
+2025-11-26 Dhruv Chawla <dhruvc@nvidia.com>
+
+ PR middle-end/116815
+ * gcc.target/aarch64/pr116815-1.c: New test.
+ * gcc.target/aarch64/pr116815-2.c: Likewise.
+ * gcc.target/aarch64/pr116815-3.c: Likewise.
+
+2025-11-26 Pan Li <pan2.li@intel.com>
+
+ * gcc.target/riscv/sat/sat_arith.h: Add test helper macros.
+ * gcc.target/riscv/sat/sat_u_mul-8-u16-from-u128.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u16-from-u32.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u16-from-u64.rv32.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u16-from-u64.rv64.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u32-from-u128.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u32-from-u64.rv32.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u32-from-u64.rv64.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u64-from-u128.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u8-from-u128.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u8-from-u16.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u8-from-u32.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u8-from-u64.rv32.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-8-u8-from-u64.rv64.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-run-8-u16-from-u128.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-run-8-u16-from-u32.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-run-8-u16-from-u64.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-run-8-u32-from-u128.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-run-8-u32-from-u64.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-run-8-u64-from-u128.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-run-8-u8-from-u128.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-run-8-u8-from-u16.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-run-8-u8-from-u32.c: New test.
+ * gcc.target/riscv/sat/sat_u_mul-run-8-u8-from-u64.c: New test.
+
+2025-11-26 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ PR tree-optimization/122847
+ * gcc.dg/torture/pr122847-1.c: New test.
+
2025-11-25 Lúcio Boari Fleury <lucboari@gmail.com>
* rust/compile/macros/mbe/macro-issue3608.rs: New Test. The test skips an issue at line 11
+2025-11-26 Jakub Jelinek <jakub@redhat.com>
+
+ * testsuite/libgomp.c++/atomic-12.C (main): Add ()s around array
+ reference index.
+ * testsuite/libgomp.c++/atomic-13.C: Likewise.
+ * testsuite/libgomp.c++/atomic-8.C: Likewise.
+ * testsuite/libgomp.c++/atomic-9.C: Likewise.
+ * testsuite/libgomp.c++/loop-6.C: Use count = count + 1;
+ return count > 0; instead of return ++count > 0;.
+ * testsuite/libgomp.c++/pr38650.C: Add -std=gnu++17.
+ * testsuite/libgomp.c++/target-lambda-1.C (merge_data_func):
+ Use [=,this] instead of just [=] in lambda captures.
+ * testsuite/libgomp.c-c++-common/target-40.c (f1): Use v += 1;
+ instead of v++;.
+ * testsuite/libgomp.c-c++-common/depend-iterator-2.c: Use v = v + 1;
+ instead of v++.
+
2025-11-25 Frank Scheiner <frank.scheiner@web.de>
* affinity-fmt.c: Make char *q a pointer to a const char.
+2025-11-26 Tomasz Kamiński <tkaminsk@redhat.com>
+
+ PR libstdc++/122864
+ * include/std/chrono (chrono::__pack_ints): Replace `<=`
+ with `<<`.
+
+2025-11-26 Tomasz Kamiński <tkaminsk@redhat.com>
+
+ * include/std/ranges (__detail::__is_std_op_template)
+ (__detail::__is_std_op_wrapper, __func_handle::_Inplace)
+ (__func_handle::_InplaceMemPtr, __func_handle::_ViaPointer)
+ (__func_handle::_StaticCall, __detail::__func_handle_t): Define.
+ (transform_view::_Iterator, zip_transform_view::_Iterator)
+ (adjacent_tranform_view::_Iterator): Replace pointer to view
+ (_M_parent) with pointer to functor (_M_fun). Update constructors
+ to construct _M_fun from *__parent->_M_fun. Define operator* and
+ operator[] in terms of _M_call_deref and _M_call_subscript.
+ * testsuite/std/ranges/adaptors/adjacent_transform/1.cc: New tests.
+ * testsuite/std/ranges/adaptors/transform.cc: New tests.
+ * testsuite/std/ranges/zip_transform/1.cc: New tests.
+
+2025-11-26 Tomasz Kamiński <tkaminsk@redhat.com>
+
+ * include/bits/ranges_cmp.h (std::identity::operator()):
+ (ranges::equal_to:operator(), ranges::not_equal_to:operator())
+ (ranges::greater::operator(), ranges::greater_equal::operator())
+ (ranges::less::operator(), ranges::less_equal::operator()):
+ Declare as static.
+ * libsupc++/compare (std::compare_three_way::operator()):
+ Declare as static.
+
+2025-11-26 Tomasz Kamiński <tkaminsk@redhat.com>
+
+ * include/std/chrono (chrono::__hash): Rename __packed to
+ __res.
+
+2025-11-26 Tomasz Kamiński <tkaminsk@redhat.com>
+ Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
+
+ PR libstdc++/110357
+ * include/bits/version.def (chrono, chrono_cxx20): Bump values.
+ * include/bits/version.h: Regenerate.
+ * include/std/chrono (__is_nothrow_copy_hashable)
+ (chrono::__pack_ints, chrono::__as_int, chrono::__int_hash)
+ (chrono::__hash): Define.
+ (std::hash): Define partial specialization for duration, time_point,
+ and zoned_time, and full specializations for calendar types and
+ leap_second.
+ (std::__is_fast_hash): Define partial specializations for duration,
+ time_point, zoned_time.
+ * testsuite/std/time/hash.cc: New test.
+
2025-11-25 Jonathan Wakely <jwakely@redhat.com>
* acinclude.m4 (libtool_VERSION): Bump version.