+2024-04-08 Uros Bizjak <ubizjak@gmail.com>
+
+ PR rtl-optimization/112560
+ * combine.cc (try_combine): Replace cc_use_loc with the entire
+ new RTX only in case cc_use_loc satisfies COMPARISON_P predicate.
+ Otherwise scan the entire cc_use_loc RTX for CC reg to be updated
+ with a new mode.
+ * config/i386/i386.md (@pushf<mode>2): Allow all CC modes for
+ operand 1.
+
+2024-04-08 Thomas Schwinge <tschwinge@baylibre.com>
+
+ * config/gcn/gcn.opt (--param=gcn-preferred-vectorization-factor):
+ New.
+ * config/gcn/gcn.cc (gcn_vectorize_preferred_simd_mode) Use it.
+ * doc/invoke.texi (Optimize Options): Document it.
+
+2024-04-08 Thomas Schwinge <tschwinge@baylibre.com>
+
+ * doc/sourcebuild.texi (Effective-Target Keywords): Document
+ 'asm_goto_with_outputs'. Add comment to 'lra'.
+
+2024-04-08 Martin Jambor <mjambor@suse.cz>
+
+ PR ipa/113359
+ * ipa-icf-gimple.h (func_checker): New members
+ safe_for_total_scalarization_p, m_total_scalarization_limit_known_p
+ and m_total_scalarization_limit.
+ (func_checker::func_checker): Initialize new member variables.
+ * ipa-icf-gimple.cc: Include tree-sra.h.
+ (func_checker::func_checker): Initialize new member variables.
+ (func_checker::safe_for_total_scalarization_p): New function.
+ (func_checker::compare_operand): Use the new function.
+ * tree-sra.h (sra_get_max_scalarization_size): Declare.
+ (sra_total_scalarization_would_copy_same_data_p): Likewise.
+ * tree-sra.cc (prepare_iteration_over_array_elts): New function.
+ (class sra_padding_collecting): New.
+ (sra_padding_collecting::record_padding): Likewise.
+ (scalarizable_type_p): Rename to totally_scalarizable_type_p. Add
+ ability to record padding when requested.
+ (totally_scalarize_subtree): Split out gathering information necessary
+ to iterate over array elements to prepare_iteration_over_array_elts.
+ Fix errornous early exit.
+ (analyze_all_variable_accesses): Adjust the call to
+ totally_scalarizable_type_p. Move determining of total scalariation
+ size limit...
+ (sra_get_max_scalarization_size): ...here.
+ (check_ts_and_push_padding_to_vec): New function.
+ (sra_total_scalarization_would_copy_same_data_p): Likewise.
+
+2024-04-08 Martin Jambor <mjambor@suse.cz>
+
+ PR ipa/113907
+ * ipa-prop.h (class ipa_vr): Declare new overload of a member function
+ equal_p.
+ (ipa_jump_functions_equivalent_p): Declare.
+ * ipa-prop.cc (ipa_vr::equal_p): New function.
+ (ipa_agg_pass_through_jf_equivalent_p): Likewise.
+ (ipa_agg_jump_functions_equivalent_p): Likewise.
+ (ipa_jump_functions_equivalent_p): Likewise.
+ * ipa-cp.h (values_equal_for_ipcp_p): Declare.
+ * ipa-cp.cc (values_equal_for_ipcp_p): Make function public.
+ * ipa-icf-gimple.cc: Include alloc-pool.h, symbol-summary.h, sreal.h,
+ ipa-cp.h and ipa-prop.h.
+ (func_checker::compare_gimple_call): Comapre jump functions.
+
+2024-04-08 Richard Sandiford <richard.sandiford@arm.com>
+
+ PR target/114607
+ * config/aarch64/aarch64-sve-builtins-base.cc
+ (svusdot_impl::expand): Fix botched attempt to swap the operands
+ for svsudot.
+
+2024-04-08 Tatsuyuki Ishi <ishitatsuyuki@gmail.com>
+
+ * config/riscv/riscv.opt: Add -mtls-dialect to configure TLS flavor.
+ * config.gcc: Add --with-tls configuration option to change the
+ default TLS flavor.
+ * config/riscv/riscv.h: Add TARGET_TLSDESC determined from
+ -mtls-dialect and with_tls defaults.
+ * config/riscv/riscv-opts.h: Define enum riscv_tls_type for the
+ two TLS flavors.
+ * config/riscv/riscv-protos.h: Define SYMBOL_TLSDESC symbol type.
+ * config/riscv/riscv.md: Add instruction sequence for TLSDESC.
+ * config/riscv/riscv.cc (riscv_symbol_insns): Add instruction
+ sequence length data for TLSDESC.
+ (riscv_legitimize_tls_address): Add lowering of TLSDESC.
+ * doc/install.texi: Document --with-tls for RISC-V.
+ * doc/invoke.texi: Document -mtls-dialect for RISC-V.
+
+2024-04-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/114605
+ * config/s390/s390.cc (s390_const_int_pool_entry_p): Punt
+ if mem doesn't have MODE_INT mode, or pool constant doesn't
+ have MODE_INT mode, or if pool constant mode is smaller than
+ mem mode. If mem mode is different from pool constant mode,
+ try to simplify subreg. If that doesn't work, punt, if it
+ does, use the simplified constant instead of the constant pool
+ constant.
+ * config/s390/s390.md (movdi from const pool peephole): If
+ either low or high 32-bit part is zero, just emit move insn
+ instead of move + ior.
+
2024-04-08 Richard Biener <rguenther@suse.de>
PR tree-optimization/114624
+2024-04-08 Joseph Myers <josmyers@redhat.com>
+
+ * fr.po: Update.
+
2024-04-03 Joseph Myers <josmyers@redhat.com>
* sv.po: Update.
+2024-04-08 Thomas Schwinge <tschwinge@baylibre.com>
+
+ * gcc.target/gcn/cond_fmaxnm_1.c: Specify
+ '--param=gcn-preferred-vectorization-factor=64'.
+ * gcc.target/gcn/cond_fmaxnm_2.c: Likewise.
+ * gcc.target/gcn/cond_fmaxnm_3.c: Likewise.
+ * gcc.target/gcn/cond_fmaxnm_4.c: Likewise.
+ * gcc.target/gcn/cond_fmaxnm_5.c: Likewise.
+ * gcc.target/gcn/cond_fmaxnm_6.c: Likewise.
+ * gcc.target/gcn/cond_fmaxnm_7.c: Likewise.
+ * gcc.target/gcn/cond_fmaxnm_8.c: Likewise.
+ * gcc.target/gcn/cond_fminnm_1.c: Likewise.
+ * gcc.target/gcn/cond_fminnm_2.c: Likewise.
+ * gcc.target/gcn/cond_fminnm_3.c: Likewise.
+ * gcc.target/gcn/cond_fminnm_4.c: Likewise.
+ * gcc.target/gcn/cond_fminnm_5.c: Likewise.
+ * gcc.target/gcn/cond_fminnm_6.c: Likewise.
+ * gcc.target/gcn/cond_fminnm_7.c: Likewise.
+ * gcc.target/gcn/cond_fminnm_8.c: Likewise.
+ * gcc.target/gcn/cond_shift_3.c: Likewise.
+ * gcc.target/gcn/cond_shift_4.c: Likewise.
+ * gcc.target/gcn/cond_shift_8.c: Likewise.
+ * gcc.target/gcn/cond_shift_9.c: Likewise.
+ * gcc.target/gcn/cond_smax_1.c: Likewise.
+ * gcc.target/gcn/cond_smin_1.c: Likewise.
+ * gcc.target/gcn/cond_umax_1.c: Likewise.
+ * gcc.target/gcn/cond_umin_1.c: Likewise.
+ * gcc.target/gcn/simd-math-1.c: Likewise.
+ * gcc.target/gcn/simd-math-5-char.c: Likewise.
+ * gcc.target/gcn/simd-math-5-long.c: Likewise.
+ * gcc.target/gcn/simd-math-5-short.c: Likewise.
+ * gcc.target/gcn/simd-math-5.c: Likewise.
+ * gcc.target/gcn/smax_1.c: Likewise.
+ * gcc.target/gcn/smin_1.c: Likewise.
+ * gcc.target/gcn/umax_1.c: Likewise.
+ * gcc.target/gcn/umin_1.c: Likewise.
+
+2024-04-08 Thomas Schwinge <tschwinge@baylibre.com>
+
+ * lib/target-supports.exp (check_effective_target_lra): Add
+ comment.
+ (check_effective_target_asm_goto_with_outputs): New.
+ * gcc.c-torture/compile/asmgoto-2.c: Use it.
+ * gcc.c-torture/compile/asmgoto-5.c: Likewise.
+ * gcc.c-torture/compile/asmgoto-6.c: Likewise.
+ * gcc.c-torture/compile/pr98096.c: Likewise.
+ * gcc.dg/pr100590.c: Likewise.
+ * gcc.dg/pr107385.c: Likewise.
+ * gcc.dg/pr108095.c: Likewise.
+ * gcc.dg/pr97954.c: Likewise.
+ * gcc.dg/torture/pr100329.c: Likewise.
+ * gcc.dg/torture/pr100398.c: Likewise.
+ * gcc.dg/torture/pr100519.c: Likewise.
+ * gcc.dg/torture/pr110422.c: Likewise.
+ * gcc.dg/pr110079.c: Special-case nvptx target.
+
+2024-04-08 Tobias Burnus <tburnus@baylibre.com>
+
+ PR libfortran/114304
+ * gfortran.dg/pr114304-2.f90: New test.
+
+2024-04-08 Martin Jambor <mjambor@suse.cz>
+
+ PR ipa/113359
+ * gcc.dg/lto/pr113359-1_0.c: New.
+ * gcc.dg/lto/pr113359-1_1.c: Likewise.
+ * gcc.dg/lto/pr113359-2_0.c: Likewise.
+ * gcc.dg/lto/pr113359-2_1.c: Likewise.
+ * gcc.dg/lto/pr113359-3_0.c: Likewise.
+ * gcc.dg/lto/pr113359-3_1.c: Likewise.
+ * gcc.dg/lto/pr113359-4_0.c: Likewise.
+ * gcc.dg/lto/pr113359-4_1.c: Likewise.
+ * gcc.dg/lto/pr113359-5_0.c: Likewise.
+ * gcc.dg/lto/pr113359-5_1.c: Likewise.
+
+2024-04-08 Martin Jambor <mjambor@suse.cz>
+
+ PR ipa/113907
+ * gcc.dg/lto/pr113907_0.c: New.
+ * gcc.dg/lto/pr113907_1.c: Likewise.
+ * gcc.dg/lto/pr113907_2.c: Likewise.
+
+2024-04-08 Richard Sandiford <richard.sandiford@arm.com>
+
+ PR target/114607
+ * gcc.target/aarch64/sve/acle/asm/sudot_s32.c: New test.
+
+2024-04-08 Tatsuyuki Ishi <ishitatsuyuki@gmail.com>
+
+ * gcc.target/riscv/tls_1.x: Add TLSDESC GD test case.
+ * gcc.target/riscv/tlsdesc.c: Same as above.
+
+2024-04-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/114605
+ * gcc.dg/pr114605.c: New test.
+
+2024-04-08 Swinney, Jonathan <jswinney@amazon.com>
+
+ * gcc.target/aarch64/advsimd-intrinsics/vld1x4.c: Exit with a nonzero
+ code if the test fails.
+
2024-04-08 Richard Biener <rguenther@suse.de>
PR tree-optimization/114624
+2024-04-08 Thomas Schwinge <tschwinge@baylibre.com>
+
+ * cuda/cuda.h (CUresult): Add 'CUDA_ERROR_NO_DEVICE'.
+
2024-02-29 Tom Tromey <tom@tromey.com>
* gcc-cp-interface.h (gcc_cp_fe_context_function): Update
+2024-04-08 Tobias Burnus <tburnus@baylibre.com>
+
+ PR libfortran/114304
+ * io/list_read.c (eat_separator): Accept tab as alternative to space.
+
2024-04-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/114304
+2024-04-08 Thomas Schwinge <tschwinge@baylibre.com>
+
+ * plugin/plugin-gcn.c (init_hsa_context): Add and handle
+ 'bool probe' parameter. Adjust all users; errors during device
+ probing are fatal.
+ * plugin/plugin-nvptx.c (nvptx_get_num_devices): Aside from
+ 'CUDA_ERROR_NO_DEVICE', errors during device probing are fatal.
+
2024-04-05 Thomas Schwinge <tschwinge@baylibre.com>
* testsuite/libgomp.c/reverse-offload-sm30.c: Set 'GCC_COLORS' to the empty string.
+2024-04-08 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/114519
+ * include/bits/unicode.h (_Utf8_view) [!__cpp_char8_t]: Define
+ using char instead of char8_t.
+ * testsuite/ext/unicode/view.cc: Use u8""sv literals to create
+ string views, instead of std::u8string_view.
+
+2024-04-08 Jonathan Wakely <jwakely@redhat.com>
+
+ * testsuite/20_util/integer_comparisons/equal_neg.cc: Use
+ no-opts selector for errors that depend on -fchar8_t.
+ * testsuite/20_util/integer_comparisons/greater_equal_neg.cc:
+ Likewise.
+ * testsuite/20_util/integer_comparisons/greater_neg.cc:
+ Likewise.
+ * testsuite/20_util/integer_comparisons/in_range_neg.cc:
+ Likewise.
+ * testsuite/20_util/integer_comparisons/less_equal_neg.cc:
+ Likewise.
+ * testsuite/20_util/integer_comparisons/less_neg.cc: Likewise.
+ * testsuite/20_util/integer_comparisons/not_equal_neg.cc:
+ Likewise.
+ * testsuite/21_strings/basic_string/hash/hash_char8_t.cc: Skip
+ if -fno-char8_t is used.
+ * testsuite/21_strings/headers/cuchar/functions_std_cxx20.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/char/deleted.cc:
+ Likewise.
+ * testsuite/27_io/basic_ostream/inserters_character/wchar_t/deleted.cc:
+ Likewise.
+ * testsuite/27_io/filesystem/path/factory/u8path-depr.cc: Use
+ char for u8 literal if char8_t is not available.
+ * testsuite/27_io/headers/iosfwd/synopsis.cc: Check
+ __cpp_char8_t.
+ * testsuite/29_atomics/atomic_integral/wait_notify.cc: Likewise.
+ * testsuite/29_atomics/headers/atomic/types_std_c++20_neg.cc:
+ Remove check for _GLIBCXX_USE_CHAR8_T.
+
+2024-04-08 Jonathan Wakely <jwakely@redhat.com>
+
+ * testsuite/20_util/from_chars/1_neg.cc: Add char8_t cases,
+ using a struct of that name if -fno-char8_t is active.
+ * testsuite/20_util/from_chars/1_c++20_neg.cc: Removed.
+
2024-04-03 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/104606