+2025-04-29 Jan Hubicka <hubicka@ucw.cz>
+
+ * ipa-cp.cc (cs_interesting_for_ipcp_p): Fix handling of uninitialized
+ counts and 0 IPA cost wrt flag_profile_partial_training.
+
+2025-04-29 Pengfei Li <Pengfei.Li2@arm.com>
+
+ * simplify-rtx.cc (non_paradoxical_subreg_not_p): New function
+ for pattern match of (subreg (not X)).
+ (simplify_with_subreg_not): New function for simplification.
+
+2025-04-29 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/111657
+ * config/i386/i386-expand.cc (alg_usable_p): For Pmode != word_mode
+ reject rep_prefix_{1,4,8}_byte algorithms with src_as in the
+ non-default address space.
+ * config/i386/i386-protos.h (ix86_check_movs): New prototype.
+ * config/i386/i386.cc (ix86_check_movs): New function.
+ (ix86_print_operand) [case '^']: Remove excess check for TARGET_64BIT.
+ * config/i386/i386.md (strmov): For Pmode != word_mode expand with
+ gen_strmov_single only when operands[3] (source) is in the default
+ address space.
+ (*strmovdi_rex_1) Use ix86_check_movs. Remove %^ from asm template.
+ (*strmovsi_1): Ditto.
+ (*strmovhi_1): DItto.
+ (*strmovqi_1): Ditto.
+ (*rep_movdi_rex64): Ditto.
+ (*rep_movsi): Ditto.
+ (*rep_movqi): Ditto.
+
+2025-04-29 Zhijin Zeng <zengzhijin@linux.spacemit.com>
+
+ * config/riscv/riscv.cc (riscv_register_move_cost): Use
+ reg_class_subset_p to check the reg class.
+
+2025-04-29 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/119997
+ * vec.h (vec<T, A, vl_embed>::last): Provide const overload.
+ (vec<T, va_heap, vl_ptr>::last): Likewise.
+ * tree-ssa-sccvn.h (vn_pp_nary_for_addr): Declare.
+ * tree-ssa-sccvn.cc (vn_pp_nary_for_addr): Split out from ...
+ (vn_reference_lookup): ... here.
+ (vn_reference_insert): ... and duplicate here. Do not handle
+ zero offset as POINTER_PLUS_EXPR.
+ * tree-ssa-pre.cc (compute_avail): Implement
+ ADDR_EXPR-as-POINTER_PLUS_EXPR special casing.
+
+2025-04-29 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/111657
+ * config/i386/i386-expand.cc (alg_usable_p): Remove have_as bool
+ argument and add dst_as and src_as address space arguments. Reject
+ libcall algorithm with dst_as and src_as in the non-default address
+ spaces. Reject rep_prefix_{1,4,8}_byte algorithms with dst_as in
+ the non-default address space.
+ (decide_alg): Remove have_as bool argument and add dst_as and src_as
+ address space arguments. Update calls to alg_usable_p.
+ (ix86_expand_set_or_cpymem): Update call to decide_alg.
+ * config/i386/i386.md (strmov): Do not fail if operand[3] (source)
+ is in the non-default address space. Expand with gen_strmov_singleop
+ only when operand[1] (destination) is in the default address space.
+ (*strmovdi_rex_1): Determine memory operands from insn pattern.
+ Allow only when destination is in the default address space.
+ Rewrite asm template to use explicit operands.
+ (*strmovsi_1): Ditto.
+ (*strmovhi_1): DItto.
+ (*strmovqi_1): Ditto.
+ (*rep_movdi_rex64): Ditto.
+ (*rep_movsi): Ditto.
+ (*rep_movqi): Ditto.
+ (*strsetdi_rex_1): Determine memory operands from insn pattern.
+ Allow only when destination is in the default address space.
+ (*strsetsi_1): Ditto.
+ (*strsethi_1): Ditto.
+ (*strsetqi_1): Ditto.
+ (*rep_stosdi_rex64): Ditto.
+ (*rep_stossi): Ditto.
+ (*rep_stosqi): Ditto.
+
+2025-04-29 H.J. Lu <hjl.tools@gmail.com>
+
+ PR target/119985
+ * target.def: Remove TARGET_PROMOTE_FUNCTION_RETURN reference.
+ * doc/tm.texi: Regenerated.
+
+2025-04-29 hongtao.liu <hongtao.liu@intel.com>
+
+ PR gcov-profile/118581
+ * auto-profile.cc (autofdo_source_profile::get_count_info):
+ Overload the function with parameter gimple location instead
+ of stmt.
+ (afdo_set_bb_count): For !has_annotated BB, Check single
+ successors PHIs corresponding to the block and use those
+ count.
+
+2025-04-29 Richard Biener <rguenther@suse.de>
+
+ PR debug/78685
+ * doc/invoke.texi (-Og): Reword.
+
+2025-04-29 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.cc (ix86_update_stack_alignment): Skip sub-RTXes
+ of the memory operand if stack access register is not mentioned in
+ the operand.
+
+2025-04-29 H.J. Lu <hjl.tools@gmail.com>
+
+ PR target/92080
+ PR target/117839
+ * config/i386/i386-features.cc (ix86_place_single_vector_set):
+ New function.
+ (remove_partial_avx_dependency): Use it.
+ (ix86_get_vector_load_mode): New function.
+ (replace_vector_const): Likewise.
+ (remove_redundant_vector_load): Likewise.
+ (pass_data_remove_redundant_vector_load): Likewise.
+ (pass_remove_redundant_vector_load): Likewise.
+ (make_pass_remove_redundant_vector_load): Likewise.
+ * config/i386/i386-passes.def: Add
+ pass_remove_redundant_vector_load after
+ pass_remove_partial_avx_dependency.
+ * config/i386/i386-protos.h
+ (make_pass_remove_redundant_vector_load): New.
+ * config/i386/i386.cc (ix86_modes_tieable_p): Return true for
+ narrower non-scalar-integer modes in SSE registers.
+
+2025-04-29 H.J. Lu <hjl.tools@gmail.com>
+
+ PR target/117547
+ * config/i386/i386-expand.cc (ix86_expand_unsigned_small_int_cst_argument):
+ New function.
+ (ix86_expand_args_builtin): Call
+ ix86_expand_unsigned_small_int_cst_argument to expand the argument
+ before calling fixup_modeless_constant.
+ (ix86_expand_round_builtin): Likewise.
+ (ix86_expand_special_args_builtin): Likewise.
+ (ix86_expand_builtin): Likewise.
+
+2025-04-29 liuhongt <hongtao.liu@intel.com>
+
+ * config/i386/x86-tune.def (X86_TUNE_DEST_FALSE_DEP_FOR_GLC):
+ Remove other processor except for GLC since this one is only
+ for GLC.
+
2025-04-28 David Malcolm <dmalcolm@redhat.com>
PR analyzer/97111
+2025-04-29 Marc Poulhiès <dkm@kataplop.net>
+
+ * exploded-graph.h (set_status): Rename parameter.
+ * constraint-manager.cc (bound::ensure_closed): Likewise.
+ (range::add_bound): Likewise.
+
2025-04-28 David Malcolm <dmalcolm@redhat.com>
PR analyzer/111536
+2025-04-29 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ PR d/103044
+ * d-tree.h (build_clear_padding_call): New prototype.
+ * d-codegen.cc (build_clear_padding_call): New function.
+ (build_memset_call): Remove generated call to __builtin_memcpy.
+ (build_address): Replace generated call to __builtin_memset with
+ __builtin_clear_padding.
+ (build_array_from_exprs): Likewise.
+ * expr.cc (ExprVisitor::visit (AssignExp *)): Remove generated call to
+ __builtin_memset.
+ (ExprVisitor::visit (ArrayLiteralExp *)): Likewise. Insert call to
+ __builtin_clear_padding after copying array into GC memory.
+ (ExprVisitor::visit (StructLiteralExp *)): Remove generated call to
+ __builtin_memset.
+ * toir.cc (IRVisitor::visit (ReturnStatement *)): Likewise.
+
2025-04-17 Iain Buclaw <ibuclaw@gdcproject.org>
* dmd/MERGE: Merge upstream dmd 956e73d64e.
+2025-04-29 Pengfei Li <Pengfei.Li2@arm.com>
+
+ * gcc.target/aarch64/simd/bic_orn_1.c: New file.
+
+2025-04-29 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/111657
+ * gcc.target/i386/pr111657-1.c: Check that segment override is not
+ generated for "rep movsq" for x32 target.
+
+2025-04-29 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/119997
+ * gcc.dg/tree-ssa/ssa-pre-35.c: New testcase.
+
+2025-04-29 Uros Bizjak <ubizjak@gmail.com>
+
+ PR target/111657
+ * gcc.target/i386/pr111657-1.c: New test.
+
+2025-04-29 H.J. Lu <hjl.tools@gmail.com>
+
+ PR target/92080
+ PR target/117839
+ * gcc.target/i386/pr117839-1a.c: New test.
+ * gcc.target/i386/pr117839-1b.c: Likewise.
+ * gcc.target/i386/pr117839-2.c: Likewise.
+ * gcc.target/i386/pr92080-1.c: Likewise.
+ * gcc.target/i386/pr92080-2.c: Likewise.
+ * gcc.target/i386/pr92080-3.c: Likewise.
+
2025-04-28 David Malcolm <dmalcolm@redhat.com>
PR analyzer/111536
+2025-04-29 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/version.def (make_obj_using_allocator): Use
+ no_stdname.
+ * include/bits/version.h: Regenerate.
+
+2025-04-29 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/regex_compiler.h: Replace _GLIBCXX17_CONSTEXPR
+ with constexpr and disable diagnostics with pragmas.
+ (_AnyMatcher::operator()): Use constexpr-if instead of tag
+ dispatching. Postpone calls to _M_translate until after checking
+ result of earlier calls.
+ (_AnyMatcher::_M_apply): Remove both overloads.
+ (_BracketMatcher::operator(), _BracketMatcher::_M_ready):
+ Replace tag dispatching with 'if constexpr'.
+ (_BracketMatcher::_M_apply(_CharT, true_type)): Remove.
+ (_BracketMatcher::_M_apply(_CharT, false_type)): Remove second
+ parameter.
+ (_BracketMatcher::_M_make_cache): Remove both overloads.
+ * include/bits/regex_compiler.tcc (_BracketMatcher::_M_apply):
+ Remove second parameter.
+ * include/bits/regex_executor.tcc: Replace _GLIBCXX17_CONSTEXPR
+ with constexpr and disable diagnostics with pragmas.
+ (_Executor::_M_handle_backref): Replace __glibcxx_assert with
+ static_assert.
+ (_Executor::_M_handle_accept): Mark _S_opcode_backref case as
+ unreachable for non-DFS mode and do not instantiate
+ _M_handle_backref for that case.
+
+2025-04-29 Barnabás Pőcze <pobrn@protonmail.com>
+
+ PR libstdc++/112934
+ * include/bits/stl_map.h (map::erase): Use _M_erase_unique.
+ * include/bits/stl_set.h (set::erase): Likewise.
+ * include/bits/stl_tree.h (_Rb_tree::_M_erase_unique): Add.
+
+2025-04-29 Patrick Palka <ppalka@redhat.com>
+
+ PR libstdc++/119427
+ * include/std/flat_map (_Flat_map_impl::erase_if): Replace
+ this hidden friend with ...
+ (_Flat_map_impl::_M_erase_if): ... this member function.
+ (flat_map): Export _Flat_map_impl::_M_erase_if.
+ (erase_if(flat_map)): Define.
+ (flat_multimap): Export _Flat_map_impl::_M_erase_if.
+ (erase_if(flat_multimap)): Define.
+ * include/std/flat_set (_Flat_set_impl::erase_if): Replace
+ with ...
+ (_Flat_set_impl::_M_erase_if): ... this member function.
+ (flat_set): Export _Flat_set_impl::_M_erase_if.
+ (erase_if(flat_set)): Define.
+ (flat_multiset): Export _Flat_set_impl::_M_erase_if.
+ (erase_if(flat_multiset)): Define.
+ * testsuite/23_containers/flat_map/1.cc (test07): New test.
+ * testsuite/23_containers/flat_multimap/1.cc (test07): New test.
+ * testsuite/23_containers/flat_multiset/1.cc (test09): New test.
+ * testsuite/23_containers/flat_set/1.cc (test09): New test.
+
+2025-04-29 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/char_traits.h (char_traits::assign): Use
+ constexpr-if unconditionally for C++11 and C++14.
+ * include/bits/locale_conv.h (__do_str_codecvt): Likewise.
+ * include/bits/ostream.h (basic_ostream::_S_cast_flt): Likewise.
+ * include/bits/random.tcc (shuffle_order_engine::operator())
+ (seed_seq::seed_seq(Iter, Iter)): Likewise.
+ * include/bits/shared_ptr_base.h (_Sp_counted_base::_M_release):
+ Likewise.
+ * include/bits/stl_tree.h (_Rb_tree::_M_move_data): Likewise.
+ * include/bits/uniform_int_dist.h
+ (uniform_int_distribution::operator()): Likewise.
+ * include/bits/valarray_array.h (__valarray_default_construct)
+ (__valarray_fill_construct, __valarray_copy_construct)
+ (__valarray_copy_construct, __valarray_destroy_elements):
+ Likewise.
+ * include/experimental/numeric (lcm): Likewise.
+ * include/std/bit (__rotl, __rotr, __countl_zero, __countr_zero)
+ (__popcount, __bit_ceil) Likewise.:
+ * include/std/bitset (operator>>): Likewise.
+ * include/std/charconv (__to_chars_8, __to_chars_i)
+ (__from_chars_alnum_to_val, from_chars): Likewise.
+ * include/tr2/dynamic_bitset (__dynamic_bitset_base): Likewise.
+ * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
+ line number.
+
+2025-04-29 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/std_function.h (_Target_handler): Remove.
+ (function::target): Use constexpr-if for C++11 and
+ C++14, with diagnostic pragmas to suppress warnings.
+
+2025-04-29 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/stl_vector.h (_S_do_relocate): Remove.
+ (_S_relocate): Remove tag dispatching path.
+ * include/bits/vector.tcc (reserve, _M_realloc_insert)
+ (_M_realloc_append, _M_default_append): Add diagnostic pragmas
+ and use 'if constexpr' in C++11 and C++14. Call
+ std::__relocate_a directly instead of _S_relocate.
+
+2025-04-29 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/basic_string.h (operator+(string&&, string&&)):
+ Do not assume that COW strings have equal allocators. Use
+ constexpr-if unconditionally.
+ * testsuite/21_strings/basic_string/allocator/char/operator_plus.cc:
+ Remove cxx11_abi effective-target check.
+ * testsuite/21_strings/basic_string/allocator/wchar_t/operator_plus.cc:
+ Likewise.
+
2025-04-28 Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* testsuite/20_util/shared_ptr/requirements/1.cc: Test both