aboutsummaryrefslogtreecommitdiff
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r--gcc/ChangeLog363
1 files changed, 363 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 19c28f1..b2def9f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,366 @@
+2025-10-16 David Malcolm <dmalcolm@redhat.com>
+
+ * Makefile.in (OBJS-libcommon): Add
+ custom-sarif-properties/digraphs.o and
+ custom-sarif-properties/state-graphs.o. Remove
+ diagnostics/state-graphs.o.
+ * configure: Regenerate.
+ * configure.ac: Add custom-sarif-properties to subdir iteration.
+ * custom-sarif-properties/digraphs.cc: New file.
+ * custom-sarif-properties/digraphs.h: New file.
+ * custom-sarif-properties/state-graphs.cc: New file.
+ * custom-sarif-properties/state-graphs.h: New file.
+ * diagnostics/diagnostics-selftests.cc
+ (run_diagnostics_selftests): Drop call of state_graphs_cc_tests.
+ * diagnostics/diagnostics-selftests.h (state_graphs_cc_tests):
+ Delete decl.
+ * diagnostics/digraphs.cc: Include
+ "custom-sarif-properties/digraphs.h". Move include of
+ "selftest.h" to within CHECKING_P section.
+ (using digraph_object): New.
+ (namespace properties): New.
+ (diagnostics::digraphs::object::get_attr): Delete.
+ (diagnostics::digraphs::object::set_attr): Delete.
+ (diagnostics::digraphs::object::set_json_attr): Delete.
+ (digraph_object::get_property): New definitions, for various
+ property types.
+ (digraph_object::set_property): Likewise.
+ (digraph_object::maybe_get_property): New.
+ (digraph_object::get_property_as_tristate): New.
+ (digraph_object::ensure_property_bag): New.
+ (digraph::get_graph_kind): New.
+ (digraph::set_graph_kind): New.
+ Add include of "custom-sarif-properties/state-graphs.h".
+ (selftest::test_simple_graph): Rewrite to use json::property
+ instances rather than string attribute names.
+ (selftest::test_property_objects): New test.
+ (selftest::digraphs_cc_tests): Call it.
+ * diagnostics/digraphs.h: Include "tristate.h".
+ (object::get_attr): Delete.
+ (object::set_attr): Delete.
+ (object::get_property): New decls.
+ (object::set_property): New decls.
+ (object::maybe_get_property): New.
+ (object::get_property_as_tristate): New.
+ (object::set_json_attr): Delete.
+ (object::ensure_property_bag): New.
+ (graph::get_graph_kind): New.
+ (graph::set_graph_kind): New.
+ * diagnostics/html-sink.cc
+ (html_generation_options::html_generation_options): Update for
+ field renamings.
+ (html_generation_options::dump): Likewise.
+ (html_builder::maybe_make_state_diagram): Likewise.
+ (html_builder::add_graph): Show SARIF and .dot src inline, if
+ requested.
+ * diagnostics/html-sink.h
+ (html_generation_options::m_show_state_diagrams_sarif): Rename
+ to...
+ (html_generation_options::m_show_graph_sarif): ...this.
+ (html_generation_options::m_show_state_diagrams_dot_src): Rename
+ to...
+ (html_generation_options::m_show_graph_dot_src0): ...this.
+ * diagnostics/output-spec.cc
+ (html_scheme_handler::maybe_handle_kv): Rename keys.
+ (html_scheme_handler::get_keys): Likewise.
+ * diagnostics/state-graphs-to-dot.cc: : Reimplement throughout to
+ use json::property instances found within custom_sarif_properties
+ throughout, rather than types in diagnostics::state_graphs.
+ * diagnostics/state-graphs.cc: Deleted file.
+ * diagnostics/state-graphs.h: Delete almost all, except decl of
+ diagnostics::state_graphs::make_dot_graph.
+ * doc/invoke.texi: Update for changes to "experimental-html" sink
+ keys.
+ * json.cc (json::object::set_string): New.
+ (json::object::set_integer): New.
+ (json::object::set_bool): New.
+ (json::object::set_array_of_string): New.
+ * json.h: Include "label-text.h".
+ (struct json::property): New template.
+ (json::string_property): New.
+ (json::integer_property): New.
+ (json::bool_property): New.
+ (json::json_property): New.
+ (using json::array_of_string_property): New.
+ (struct json::enum_traits): New.
+ (enum_json::property): New.
+ (json::value::dyn_cast_array): New vfunc.
+ (json::value::dyn_cast_integer_number): New vfunc.
+ (json::value::set_string): New.
+ (json::value::set_integer): New.
+ (json::value::set_bool): New.
+ (json::value::set_array_of_string): New.
+ (json::value::maybe_get_enum): New.
+ (json::value::set_enum): New.
+ (json::array::dyn_cast_array): New.
+ (json::integer_number::dyn_cast_integer_number): New.
+ (object::maybe_get_enum): New.
+ (object::set_enum): New.
+
+2025-10-16 Ayappan Perumal <ayappap2@in.ibm.com>
+
+ * config/rs6000/aix.h (SUBTARGET_DRIVER_SELF_SPECS):
+ Error out when stack-protector option is used in AIX
+ as it is not supported on AIX
+ Approved By: Segher Boessenkool <segher@kernel.crashing.org>
+
+2025-10-16 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/122292
+ * tree-vect-loop.cc (vect_transform_reduction): Compute the
+ input vector type the same way the analysis phase does.
+
+2025-10-15 Andrew MacLeod <amacleod@redhat.com>
+
+ PR tree-optimization/121468
+ PR tree-optimization/121206
+ PR tree-optimization/122200
+ * value-range.cc (irange_bitmask::range_from_mask): New.
+ (irange::snap): Add explicit overflow flag.
+ (irange::snap_subranges): Use overflow flag.
+ (irange::set_range_from_bitmask): Use range_from_mask.
+ (test_irange_snap_bounds): Adjust for improved ranges.
+ * value-range.h (irange::range_from_mask): Add prototype.
+ (irange::snap): Adjust prototype.
+
+2025-10-15 Tobias Burnus <tburnus@baylibre.com>
+
+ * config/gcn/gcn-devices.def (gfx942, gfx950): Set generic name
+ to GFX9_4_GENERIC.
+ * config/gcn/t-omp-device: Include generic names for OpenMP's
+ ISA trait.
+
+2025-10-15 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ * print-tree.cc (print_node): Print out clique/base
+ for MEM_REF and TARGET_MEM_REF.
+
+2025-10-15 Richard Earnshaw <rearnsha@arm.com>
+
+ PR target/118460
+ * config/arm/arm.cc (arm_canonicalize_comparison): For floating-
+ point comparisons, swap the operand order if that will be more
+ likely to produce a comparison that can be used with VSEL.
+ (arm_validize_comparison): Make sure that HFmode comparisons
+ are compatible with VSEL.
+
+2025-10-15 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ PR tree-optimization/122037
+ * tree-ssa-dce.cc (eliminate_unnecessary_stmts): Remove
+ __builtin_stack_save when the lhs is unused.
+
+2025-10-15 Alice Carlotti <alice.carlotti@arm.com>
+
+ * config/aarch64/aarch64-sys-regs.def: Copy from Binutils.
+ * config/aarch64/aarch64.cc (F_ARCHEXT): Delete flag.
+ * config/aarch64/aarch64.h
+ (AARCH64_FL_AMU): Delete unused macro.
+ (AARCH64_FL_SCXTNUM): Ditto.
+ (AARCH64_FL_ID_PFR2): Ditto.
+ (AARCH64_FL_AIE): Ditto.
+ (AARCH64_FL_DEBUGv8p9): Ditto.
+ (AARCH64_FL_FGT2): Ditto.
+ (AARCH64_FL_PFAR): Ditto.
+ (AARCH64_FL_PMUv3_ICNTR): Ditto.
+ (AARCH64_FL_PMUv3_SS): Ditto.
+ (AARCH64_FL_PMUv3p9): Ditto.
+ (AARCH64_FL_S1PIE): Ditto.
+ (AARCH64_FL_S1POE): Ditto.
+ (AARCH64_FL_S2PIE): Ditto.
+ (AARCH64_FL_S2POE): Ditto.
+ (AARCH64_FL_SCTLR2): Ditto.
+ (AARCH64_FL_SEBEP): Ditto.
+ (AARCH64_FL_SPE_FDS): Ditto.
+ (AARCH64_FL_TCR2): Ditto.
+
+2025-10-15 Sebastian Pop <spop@nvidia.com>
+
+ * doc/invoke.texi (ftree-parallelize-loops): Update.
+ * common.opt (ftree-parallelize-loops): Add alias that maps to
+ special value INT_MAX for runtime thread detection.
+ * tree-parloops.cc (create_parallel_loop): Use INT_MAX for runtime
+ detection. Call gimple_build_omp_parallel without building a
+ OMP_CLAUSE_NUM_THREADS clause.
+ (gen_parallel_loop): For auto-detection, use a conservative
+ estimate of 2 threads.
+ (parallelize_loops): Same.
+
+2025-10-15 Christophe Lyon <christophe.lyon@linaro.org>
+
+ PR target/122189
+ * config/arm/iterators.md (VxCIQ_carry, VxCIQ_M_carry, VxCQ_carry)
+ (VxCQ_M_carry): New iterators.
+ * config/arm/mve.md (get_fpscr_nzcvqc, set_fpscr_nzcvqc): Use
+ unspec instead of unspec_volatile.
+ (vadciq, vadciq_m, vadcq, vadcq_m): Use vfpcc in operation. Use a
+ different unspec code for carry calcultation.
+ * config/arm/unspecs.md (VADCQ_U_carry, VADCQ_M_U_carry)
+ (VADCQ_S_carry, VADCQ_M_S_carry, VSBCIQ_U_carry ,VSBCIQ_S_carry
+ ,VSBCIQ_M_U_carry ,VSBCIQ_M_S_carry ,VSBCQ_U_carry ,VSBCQ_S_carry
+ ,VSBCQ_M_U_carry ,VSBCQ_M_S_carry ,VADCIQ_U_carry
+ ,VADCIQ_M_U_carry ,VADCIQ_S_carry ,VADCIQ_M_S_carry): New unspec
+ codes.
+
+2025-10-15 Roger Sayle <roger@nextmovesoftware.com>
+
+ PR rtl-optimization/122266
+ * combine.cc (struct reg_stat_type): Change types of sign_bit_copies
+ and last_set_sign_bit_copies to unsigned short, to avoid overflows
+ on TImode (and wider) values.
+
+2025-10-15 Jan Hubicka <hubicka@ucw.cz>
+
+ * auto-profile.cc (scale_bb_profile): Use
+ profile_count::max_prefer_initialized.
+ (afdo_adjust_guessed_profile): Likewise.
+ * bb-reorder.cc (edge_order): Do not use max.
+ * cfghooks.cc (merge_blocks): Likewise.
+ * ipa-fnsummary.cc (param_change_prob): Likewise.
+ * ipa-inline-transform.cc (inline_transform): Likewise.
+ * predict.cc (update_max_bb_count): Likewise.
+ (estimate_bb_frequencies): Likewise.
+ (rebuild_frequencies): Likewise.
+ * tree-ssa-loop-unswitch.cc (struct unswitch_predicate): Likewise.
+ * profile-count.h (profile_count::max): Rename to
+ (profile_count::max_prefer_initialized): this; update handling
+ of qualities.
+
+2025-10-15 Haochen Jiang <haochen.jiang@intel.com>
+
+ * common/config/i386/cpuinfo.h
+ (get_intel_cpu): Handle Wildcat Lake.
+ * common/config/i386/i386-common.cc (processor_name):
+ Add Wildcat Lake.
+ * doc/invoke.texi: Ditto.
+
+2025-10-15 Haochen Jiang <haochen.jiang@intel.com>
+
+ * config/i386/i386.h
+ (PTA_PANTHERLAKE): Remove PREFETCHI.
+ (PTA_DIAMONDRAPIDS): Remove USER_MSR.
+ * doc/invoke.texi: Correct documentation.
+
+2025-10-15 Pan Li <pan2.li@intel.com>
+
+ * config/riscv/autovec-opt.md: Take concrete op instead
+ of any_widen_binop for vwaddu/vwsubu wx combine.
+
+2025-10-14 Richard Biener <rguenther@suse.de>
+
+ * tree-vectorizer.h (REDUC_GROUP_FIRST_ELEMENT,
+ REDUC_GROUP_NEXT_ELEMENT, REDUC_GROUP_SIZE): Remove.
+ * tree-vect-slp.cc (REDUC_GROUP_FIRST_ELEMENT): Re-instantiate
+ here.
+
+2025-10-14 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-slp.cc (vect_analyze_slp_reduction): Move
+ reduction chain discovery ...
+ (vect_analyze_slp_reduc_chain): ... here.
+
+2025-10-14 Richard Biener <rguenther@suse.de>
+
+ * tree-vect-loop.cc (vect_create_epilog_for_reduction): Move
+ bitsize compute down to where it is used and consistently
+ use vectype1 for element extraction.
+
+2025-10-14 Tamar Christina <tamar.christina@arm.com>
+
+ PR tree-optimization/121949
+ * tree-vect-patterns.cc (vect_recog_vector_vector_shift_pattern): Remove
+ restriction on internal_def.
+
+2025-10-14 Robin Dapp <rdapp@ventanamicro.com>
+
+ * tree-vect-stmts.cc (get_load_store_type): Add load-permutation
+ checks and setting of slp_perm.
+ (vectorizable_store): Remove perm_ok argument.
+ (vectorizable_load): Ditto and replace slp_perm by ls.slp_perm.
+ * tree-vectorizer.h (struct vect_load_store_data): Add slp_perm.
+
+2025-10-14 Richard Biener <rguenther@suse.de>
+
+ * tree-vectorizer.h (vect_reduc_info_s::is_reduc_chain): New.
+ (_loop_vec_info::reduction_chains): Remove.
+ (LOOP_VINFO_REDUCTION_CHAINS): Likewise.
+ * tree-vect-patterns.cc (vect_reassociating_reduction_p):
+ Do not special-case reduction group stmts.
+ * tree-vect-loop.cc (vect_is_simple_reduction): Remove
+ reduction chain handling.
+ (vect_analyze_scalar_cycles_1): Remove slp parameter and adjust.
+ (vect_analyze_scalar_cycles): Likewise.
+ (vect_fixup_reduc_chain): Remove.
+ (vect_fixup_scalar_cycles_with_patterns): Likewise.
+ (vect_analyze_loop_2): Adjust.
+ (vect_create_epilog_for_reduction): Check the reduction info
+ for whether this is a reduction chain.
+ (vect_transform_cycle_phi): Likewise.
+ (vectorizable_reduction): Likewise. Simplify code for all-SLP.
+ * tree-vect-slp.cc (vect_analyze_slp_reduc_chain): Simplify.
+ (vect_analyze_slp_reduction): New function, perform reduction
+ chain discovery here.
+ (vect_analyze_slp): Remove reduction chain handling.
+ Use vect_analyze_slp_reduction for possible reduction chain
+ processing.
+
+2025-10-14 Haochen Jiang <haochen.jiang@intel.com>
+
+ * common/config/i386/cpuinfo.h
+ (get_available_features): Remove AMX-TRANSPOSE.
+ * common/config/i386/i386-common.cc
+ (OPTION_MASK_ISA2_AMX_TRANSPOSE_SET): Removed.
+ (OPTION_MASK_ISA2_AMX_TRANSPOSE_UNSET): Ditto.
+ (ix86_handle_option): Remove amx-transpose handle.
+ * common/config/i386/i386-cpuinfo.h
+ (enum processor_features): Remove FEATURE_AMX_TRANSPOSE.
+ Set FEATURE_AMX_MOVRS value.
+ * common/config/i386/i386-isas.h: Remove AMX-TRANSPOSE.
+ * config.gcc: Do not include amxtransposeintrin.h.
+ * config/i386/amxmovrsintrin.h: Remove AMX-TRANSPOSE intrins.
+ * config/i386/amxtransposeintrin.h: Ditto.
+ * config/i386/cpuid.h (bit_AMX_TRANSPOSE): Removed.
+ * config/i386/i386.h (PTA_DIAMONDRAPIDS): Remove AMX-TRANSPOSE.
+ * config/i386/i386-c.cc (ix86_target_macros_internal): Remove
+ AMX_TRANSPOSE.
+ * config/i386/i386-isa.def (AMX_TRANSPOSE): Removed.
+ * config/i386/i386-options.cc
+ (ix86_valid_target_attribute_inner_p): Remove AMX-TRANSPOSE.
+ * config/i386/i386.opt: Ditto.
+ * config/i386/i386.opt.urls: Ditto.
+ * config/i386/immintrin.h: Remove amxtransposeintrin.h.
+ * doc/extend.texi: Remove amx-transpose.
+ * doc/invoke.texi: Ditto.
+ * doc/sourcebuild.texi: Ditto.
+
+2025-10-14 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ * tree-ssa-phiopt.cc (pass_phiopt::execute): Disable
+ cselim-limited and factor out operations for -Og.
+
+2025-10-14 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ PR tree-optimization/122178
+ * tree-ssa-phiopt.cc (cond_if_else_store_replacement_1): Handle
+ clobber statements.
+
+2025-10-14 Andrew Pinski <andrew.pinski@oss.qualcomm.com>
+
+ PR tree-optimization/122182
+ * tree-ssa-dom.cc (cprop_operand): Don't check may_propagate_copy_into_asm.
+ * tree-ssa-propagate.cc (substitute_and_fold_engine::replace_uses_in): Don't
+ check may_propagate_copy_into_asm.
+ (may_propagate_copy_into_asm): Remove.
+ * tree-ssa-propagate.h (may_propagate_copy_into_asm): Remove.
+
+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-10-13 Shreya Munnangi <smunnangi1@ventanamicro.com>
PR target/120811