diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 94b60693e6d10829cd686e08bd2d63aa8b5b2bbb..6557d42babdd9f44b676cb6417c5f3f57752122c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,252 @@ +2024-07-17 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/115929 + * rtl-ssa/movement.h (canonicalize_move_range): Check for null prev + and next insns and create an invalid move range for them. + +2024-07-17 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/115928 + * rtl-ssa/accesses.h (clobber_group): Add a new constructor that + takes the first, last and root clobbers. + * rtl-ssa/internals.inl (clobber_group::clobber_group): Define it. + * rtl-ssa/accesses.cc (function_info::split_clobber_group): Use it. + Allocate a new group for both sides and invalidate the previous group. + (function_info::add_def): After calling split_clobber_group, + remove the old group from the splay tree. + +2024-07-17 Richard Sandiford <richard.sandiford@arm.com> + + * genattrtab.cc (attr_desc::cxx_type): New field. + (write_attr_get, write_attr_value): Use it. + (gen_attr, find_attr, make_internal_attr): Initialize it, + dropping enum tags. + +2024-07-17 Eikansh Gupta <quic_eikagupt@quicinc.com> + + PR tree-optimization/111150 + * match.pd (`(a ? x : y) eq/ne (b ? x : y)`): New pattern. + (`(a ? x : y) eq/ne (b ? y : x)`): New pattern. + +2024-07-17 Andrew Pinski <quic_apinski@quicinc.com> + + * dbgcnt.def (ext_dce): New debug counter. + * ext-dce.cc (ext_dce_try_optimize_insn): Reject the insn + if the debug counter says so. + (ext_dce): Rename to ... + (ext_dce_execute): This. + (pass_ext_dce::execute): Update for the name of ext_dce. + +2024-07-17 Uros Bizjak <ubizjak@gmail.com> + + PR target/115526 + * config/alpha/alpha.md (movdi_er_high_g): Add cannot_copy attribute. + (movdi_er_tlsgd): Ditto. + (movdi_er_tlsldm): Ditto. + (call_value_osf_<tls>): Ditto. + +2024-07-17 Georg-Johann Lay <avr@gjlay.de> + + PR target/90616 + * config/avr/predicates.md (const_0mod256_operand): New predicate. + * config/avr/constraints.md (Cp8): New constraint. + * config/avr/avr.md (*aligned_add_symbol): New insn. + * config/avr/avr.cc (avr_out_plus_symbol) [HImode]: + When op2 is a multiple of 256, there is no need to add / subtract + the lo8 part. + (avr_rtx_costs_1) [PLUS && HImode]: Return expected costs for + new insn *aligned_add_symbol as it applies. + +2024-07-17 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/115887 + * gimple-lower-bitint.cc (gimple_lower_bitint): Use gsi_insert_on_edge + instead of gsi_insert_on_edge_immediate and set edge_insertions to + true. + +2024-07-17 Jakub Jelinek <jakub@redhat.com> + + * varasm.cc (default_elf_asm_output_ascii): Use ASM_OUTPUT_SKIP instead + of 2 or more default_elf_asm_output_limited_string (f, "") calls and + adjust base64 heuristics correspondingly. + +2024-07-17 Tamar Christina <tamar.christina@arm.com> + + PR tree-optimization/115936 + * tree-scalar-evolution.cc (simple_iv_with_niters): Use sizetype for + pointers. + +2024-07-17 Feng Xue <fxue@os.amperecomputing.com> + + PR tree-optimization/114440 + * tree-vectorizer.h (struct _stmt_vec_info): Add a new field + reduc_result_pos. + * tree-vect-loop.cc (vect_transform_reduction): Generate lane-reducing + statements in an optimized order. + +2024-07-17 Feng Xue <fxue@os.amperecomputing.com> + + PR tree-optimization/114440 + * tree-vectorizer.h (vectorizable_lane_reducing): New function + declaration. + * tree-vect-stmts.cc (vect_analyze_stmt): Call new function + vectorizable_lane_reducing to analyze lane-reducing operation. + * tree-vect-loop.cc (vect_model_reduction_cost): Remove cost computation + code related to emulated_mixed_dot_prod. + (vectorizable_lane_reducing): New function. + (vectorizable_reduction): Allow multiple lane-reducing operations in + loop reduction. Move some original lane-reducing related code to + vectorizable_lane_reducing. + (vect_transform_reduction): Adjust comments with updated example. + +2024-07-17 Feng Xue <fxue@os.amperecomputing.com> + + * tree-vect-loop.cc (vect_reduction_update_partial_vector_usage): + Calculate effective vector stmts number with generic + vect_get_num_copies. + (vect_transform_reduction): Insert copies for lane-reducing so as to + fix over-estimated vector stmts number. + (vect_transform_cycle_phi): Calculate vector PHI number only based on + output vectype. + * tree-vect-slp.cc (vect_slp_analyze_node_operations_1): Remove + adjustment on vector stmts number specific to slp reduction. + +2024-07-17 Feng Xue <fxue@os.amperecomputing.com> + + * tree-vectorizer.h (vect_get_num_copies): New overload function. + * tree-vect-slp.cc (vect_slp_analyze_node_operations_1): Calculate + number of vector stmts for slp node with vect_get_num_copies. + (vect_slp_analyze_node_operations): Calculate number of vector elements + for constant/external slp node with vect_get_num_copies. + +2024-07-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/115959 + * tree-vect-loop.cc (vect_create_epilog_for_reduction): + Get at the REDUC_IDX child in a safer way for COND_EXPR + nodes. + +2024-07-17 Jakub Jelinek <jakub@redhat.com> + + PR other/115958 + * varasm.cc (default_elf_asm_output_ascii): Cast t - s to unsigned + to avoid -Wsign-compare warnings. + +2024-07-17 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/115527 + * gimple-fold.cc (clear_padding_flush): Introduce endsize + variable and use it instead of wordsize when comparing it against + nonzero_last. + (clear_padding_type): Increment off by sz. + +2024-07-17 Haochen Gui <guihaoc@gcc.gnu.org> + + * config/rs6000/rs6000.md (mov<mode>cc, *mov<mode>cc_p10, + *mov<mode>cc_invert_p10, *fpmask<mode>, *xxsel<mode>, + @ieee_128bit_vsx_abs<mode>2, *ieee_128bit_vsx_nabs<mode>2, + add<mode>3, sub<mode>3, mul<mode>3, div<mode>3, sqrt<mode>2, + copysign<mode>3, copysign<mode>3_hard, copysign<mode>3_soft, + @neg<mode>2_hw, @abs<mode>2_hw, *nabs<mode>2_hw, fma<mode>4_hw, + *fms<mode>4_hw, *nfma<mode>4_hw, *nfms<mode>4_hw, + extend<SFDF:mode><IEEE128:mode>2_hw, trunc<mode>df2_hw, + trunc<mode>sf2_hw, fix<uns>_<IEEE128:mode><SDI:mode>2_hw, + fix<uns>_trunc<IEEE128:mode><QHI:mode>2, + *fix<uns>_trunc<IEEE128:mode><QHSI:mode>2_mem, + float_<mode>di2_hw, float_<mode>si2_hw, + float<QHI:mode><IEEE128:mode>2, floatuns_<mode>di2_hw, + floatuns_<mode>si2_hw, floatuns<QHI:mode><IEEE128:mode>2, + floor<mode>2, ceil<mode>2, btrunc<mode>2, round<mode>2, + add<mode>3_odd, sub<mode>3_odd, mul<mode>3_odd, div<mode>3_odd, + sqrt<mode>2_odd, fma<mode>4_odd, *fms<mode>4_odd, *nfma<mode>4_odd, + *nfms<mode>4_odd, trunc<mode>df2_odd, *cmp<mode>_hw for IEEE128): + Remove guard FLOAT128_IEEE_P. + (@extenddf<mode>2_fprs, @extenddf<mode>2_vsx, + trunc<mode>df2_internal1, trunc<mode>df2_internal2, + fix_trunc_helper<mode>, neg<mode>2, *cmp<mode>_internal1, + *cmp<IBM128:mode>_internal2 for IBM128): Remove guard FLOAT128_IBM_P. + +2024-07-17 Kewen Lin <linkw@linux.ibm.com> + + * config/rs6000/rs6000.cc (init_float128_ieee): Use trunc_optab rather + than sext_optab for converting FLOAT128_IBM_P mode to FLOAT128_IEEE_P + mode, and use sext_optab rather than trunc_optab for converting + FLOAT128_IEEE_P mode to FLOAT128_IBM_P mode. + (rs6000_expand_float128_convert): Likewise. + +2024-07-17 Kewen Lin <linkw@linux.ibm.com> + + PR target/112993 + * tree.cc (build_common_tree_nodes): Drop the workaround for rs6000 + KFmode precision adjustment. + +2024-07-17 Kewen Lin <linkw@linux.ibm.com> + + PR target/112993 + * value-range.h (range_compatible_p): Remove the workaround on + different type precision between _Float128 and long double. + +2024-07-17 Kewen Lin <linkw@linux.ibm.com> + + PR target/112993 + * config/rs6000/rs6000-modes.def (IFmode, KFmode, TFmode): Define + with FLOAT_MODE instead of FRACTIONAL_FLOAT_MODE, don't use special + precisions any more. + (rs6000-modes.h): Remove include. + * config/rs6000/rs6000-modes.h: Remove. + * config/rs6000/rs6000.h (rs6000-modes.h): Remove include. + * config/rs6000/t-rs6000: Remove rs6000-modes.h include. + * config/rs6000/rs6000.cc (rs6000_option_override_internal): Replace + all uses of FLOAT_PRECISION_TFmode with 128. + (rs6000_c_mode_for_floating_type): Likewise. + * config/rs6000/rs6000.md (define_expand extendiftf2): Remove. + (define_expand extendifkf2): Remove. + (define_expand extendtfkf2): Remove. + (define_expand trunckftf2): Remove. + (define_expand trunctfif2): Remove. + (define_expand extendtfif2): Add new assertion. + (define_expand expandkftf2): New. + (define_expand trunciftf2): Add new assertion. + (define_expand trunctfkf2): New. + (define_expand truncifkf2): Change with gcc_unreachable. + (define_expand expandkfif2): New. + (define_insn_and_split extendkftf2): Rename to ... + (define_insn_and_split *extendkftf2): ... this. + (define_insn_and_split trunctfkf2): Rename to ... + (define_insn_and_split *extendtfkf2): ... this. + +2024-07-17 Kewen Lin <linkw@linux.ibm.com> + + PR target/112993 + * expr.cc (convert_mode_scalar): Allow same precision conversion + between scalar floating point modes if whose underlying format is + ibm_extended_format or ieee_quad_format, and refactor assertion + with new lambda function acceptable_same_precision_modes. Use + trunc_optab rather than sext_optab for ibm128 to ieee128 conversion. + * optabs-libfuncs.cc (gen_trunc_conv_libfunc): Use trunc_optab rather + than sext_optab for ibm128 to ieee128 conversion. + +2024-07-17 Peter Bergner <bergner@linux.ibm.com> + + PR target/114759 + * config/rs6000/rs6000.cc (rs6000_option_override_internal): Disallow + CPUs and ABIs that do no support the ROP protection insns. + * config/rs6000/rs6000-logue.cc (rs6000_stack_info): Remove now + unneeded tests. + (rs6000_emit_prologue): Likewise. + Remove unneeded gcc_assert. + (rs6000_emit_epilogue): Likewise. + * config/rs6000/rs6000.md: Likewise. + +2024-07-17 Peter Bergner <bergner@linux.ibm.com> + + PR target/114759 + * config/rs6000/rs6000-logue.cc (rs6000_stack_info): Use TARGET_POWER8. + (rs6000_emit_prologue): Likewise. + * config/rs6000/rs6000.md (hashchk): Likewise. + (hashst): Likewise. + Fix whitespace. + 2024-07-16 Andrew MacLeod <amacleod@redhat.com> PR tree-optimization/115951 diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP index 5961a7c72a1945fb488bbfcaf38fe4a66409df7c..1d16bb88567c5462f579bda4fd5b0eb1baafc553 100644 --- a/gcc/DATESTAMP +++ b/gcc/DATESTAMP @@ -1 +1 @@ -20240717 +20240718 diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index c09feb4b7b70ebd4752e7af1a7755352314f6999..0de28ef5042c406e433541f90d6014ee7dc81497 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,7 @@ +2024-07-17 Mark Wielaard <mark@klomp.org> + + * c.opt.urls: Regenerate. + 2024-07-14 Alejandro Colomar <alx@kernel.org> PR c/115185 diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index af628e080345d788644a1a43b758d6746a94611b..e9994ff6285287182ca73130c60bea97daf9afb1 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,21 @@ +2024-07-17 Marek Polacek <polacek@redhat.com> + + PR c++/115900 + * constexpr.cc (cxx_eval_call_expression): Set new_obj to NULL_TREE + if cxx_fold_indirect_ref set empty_base to true. + +2024-07-17 Patrick Palka <ppalka@redhat.com> + + PR c++/111890 + * pt.cc (maybe_new_partial_specialization): Propagate TYPE_CONTEXT + to the newly created partial specialization. + +2024-07-17 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/99242 + * name-lookup.cc (append_imported_binding_slot): Propagate dups + flags. + 2024-07-16 Nina Ranns <dinka.ranns@gmail.com> PR c++/110159 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 475c15501d4ff3c0a820c78db25735bab45c4437..9012240902019f60f967ad3c5e58836c89384b8e 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2024-07-17 Kewen Lin <linkw@linux.ibm.com> + + PR target/112993 + * trans-types.cc (get_real_kind_from_node): Consider the case where + more than one modes have the same precision. + 2024-07-16 Paul Thomas <pault@gcc.gnu.org> PR fortran/84868 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 50ccfd38dfb0ddc5f896f974be5fdb34d862ba9e..7d3222fb41ffb40085038f2ae72a6f0cf8322a43 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,107 @@ +2024-07-17 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/111150 + * gcc.dg/tree-ssa/pr111150.c: Add -Wno-psabi to dg-options. + * g++.dg/tree-ssa/pr111150.C: Likewise. + +2024-07-17 Jørgen Kvalsvik <j@lambda.is> + + * lib/gcov.exp: Use foreach, not lmap, for tcl <= 8.5 compat. + +2024-07-17 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/115929 + * gcc.dg/torture/pr115929-2.c: New test. + +2024-07-17 Richard Sandiford <richard.sandiford@arm.com> + + PR rtl-optimization/115928 + * gcc.dg/torture/pr115928.c: New test. + +2024-07-17 Marek Polacek <polacek@redhat.com> + + PR c++/115900 + * g++.dg/cpp2a/constexpr-init23.C: New test. + +2024-07-17 Edwin Lu <ewlu@rivosinc.com> + + * gcc.target/riscv/target-attr-16.c: Update expected assembly + +2024-07-17 Eikansh Gupta <quic_eikagupt@quicinc.com> + + PR tree-optimization/111150 + * gcc.dg/tree-ssa/pr111150.c: New test. + * gcc.dg/tree-ssa/pr111150-1.c: New test. + * g++.dg/tree-ssa/pr111150.C: New test. + +2024-07-17 Uros Bizjak <ubizjak@gmail.com> + + PR target/115526 + * gcc.target/alpha/pr115526.c: New test. + +2024-07-17 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/115887 + * gcc.dg/bitint-108.c: New test. + +2024-07-17 Patrick Palka <ppalka@redhat.com> + + PR c++/111890 + * g++.dg/cpp2a/concepts-partial-spec15.C: New test. + +2024-07-17 Feng Xue <fxue@os.amperecomputing.com> + + PR tree-optimization/114440 + * gcc.dg/vect/vect-reduc-chain-1.c + * gcc.dg/vect/vect-reduc-chain-2.c + * gcc.dg/vect/vect-reduc-chain-3.c + * gcc.dg/vect/vect-reduc-chain-dot-slp-1.c + * gcc.dg/vect/vect-reduc-chain-dot-slp-2.c + * gcc.dg/vect/vect-reduc-chain-dot-slp-3.c + * gcc.dg/vect/vect-reduc-chain-dot-slp-4.c + * gcc.dg/vect/vect-reduc-dot-slp-1.c + +2024-07-17 Richard Biener <rguenther@suse.de> + + PR tree-optimization/115959 + * gcc.dg/vect/pr115959.c: New testcase. + +2024-07-17 Jakub Jelinek <jakub@redhat.com> + + * c-c++-common/torture/builtin-convertvector-1.c: Add dg-do run + directive. + +2024-07-17 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/115527 + * c-c++-common/torture/builtin-clear-padding-1.c: Add dg-do run + directive. + * c-c++-common/torture/builtin-clear-padding-2.c: Likewise. + * c-c++-common/torture/builtin-clear-padding-3.c: Likewise. + * c-c++-common/torture/builtin-clear-padding-4.c: Likewise. + * c-c++-common/torture/builtin-clear-padding-5.c: Likewise. + * c-c++-common/torture/builtin-clear-padding-6.c: New test. + +2024-07-17 Peter Bergner <bergner@linux.ibm.com> + + PR target/114759 + * gcc.target/powerpc/pr114759-3.c: New test. + +2024-07-17 Peter Bergner <bergner@linux.ibm.com> + + PR target/114759 + * gcc.target/powerpc/pr114759-2.c: New test. + * lib/target-supports.exp (rop_ok): Use + check_effective_target_has_arch_pwr8. + +2024-07-17 Nathaniel Shead <nathanieloshead@gmail.com> + + PR c++/99242 + * g++.dg/modules/pr99242_a.H: New test. + * g++.dg/modules/pr99242_b.H: New test. + * g++.dg/modules/pr99242_c.H: New test. + * g++.dg/modules/pr99242_d.C: New test. + 2024-07-16 Nina Ranns <dinka.ranns@gmail.com> PR c++/110159 diff --git a/libbacktrace/ChangeLog b/libbacktrace/ChangeLog index 618bfc045ed03d3e7738cd862cc92f2f0d581288..9dc901ffc5c8e2eae9ee815f93395bea4ca25c6c 100644 --- a/libbacktrace/ChangeLog +++ b/libbacktrace/ChangeLog @@ -1,3 +1,23 @@ +2024-07-18 Ian Lance Taylor <iant@golang.org> + + * README: Add notes about dl_iterate_phdr. + +2024-07-17 Ian Lance Taylor <iant@golang.org> + + * xcoff.c (struct xcoff_fileline_data): Change base_address field + to struct libbacktrace_base_address. + (xcoff_initialize_syminfo): Change base_address to struct + libbacktrace_base_address. Use libbacktrace_add_base. + (xcoff_initialize_fileline): Likewise. + (xcoff_lookup_pc): Use libbacktrace_add_base. + (xcoff_add): Change base_address to struct + libbacktrace_base_address. + (xcoff_armem_add, xcoff_add_shared_libs): Likewise. + (backtrace_initialize): Likewise. + * Makefile.am (xcoff.lo): Remove unused target. + (xcoff_32.lo, xcoff_64.lo): New targets. + * Makefile.in: Regenerate. + 2024-07-16 Ian Lance Taylor <iant@golang.org> * internal.h: If FDPIC, #include <link.h> and/or <sys/link.h>.